Go to the documentation of this file.
23 inPlaceFilter(output);
33 for(std::size_t i = 0; i < descriptorDimension; ++i)
35 matrix.row(i) *= descriptorValues[i];
50 throw std::runtime_error(
"Can't overwrite existing descriptor " + descriptorName +
" with dimension " +
52 " by a new descriptor with dimension " +
53 std::to_string(descriptorDimension) +
".");
bool descriptorExists(const std::string &name) const
Look if a descriptor with a given name exist.
virtual void inPlaceFilter(DataPoints &cloud)
Apply these filters to a point cloud without copying.
void addDescriptor(const std::string &name, const Matrix &newDescriptor)
Add a descriptor by name, remove first if already exists.
Functions and classes that are dependant on scalar type are defined in this templatized class.
Add new descriptor to an existing point cloud.
A data filter takes a point cloud as input, transforms it, and produces another point cloud as output...
unsigned getNbPoints() const
Return the number of points contained in the point cloud.
The superclass of classes that are constructed using generic parameters. This class provides the para...
const M::mapped_type & get(const M &m, const typename M::key_type &k)
unsigned getDescriptorDimension(const std::string &name) const
Return the dimension of a descriptor with a given name. Return 0 if the name is not found.
const std::vector< T > descriptorValues
virtual DataPoints filter(const DataPoints &input)
Apply filters to input point cloud. This is the non-destructive version and returns a copy.
AddDescriptorDataPointsFilter(const Parameters ¶ms=Parameters())
ConstView getDescriptorViewByName(const std::string &name) const
Get a const view on a descriptor by name, throw an exception if it does not exist.
Parametrizable::Parameters Parameters
PointMatcher< T >::Matrix Matrix
const std::size_t descriptorDimension