Go to the documentation of this file.
56 inPlaceFilter(output);
69 throw InvalidField(
"ShadowDataPointsFilter, Error: cannot find normals in descriptors");
73 const int featDim(cloud.
features.cols());
78 for(
int i=0; i < featDim; ++i)
80 const Vector normal = normals.col(i).normalized();
83 const T value =
anyabs(normal.dot(point));
PM::DataPointsFilter DataPointsFilter
bool descriptorExists(const std::string &name) const
Look if a descriptor with a given name exist.
Parametrizable::Parameters Parameters
Functions and classes that are dependant on scalar type are defined in this templatized class.
An exception thrown when one tries to access features or descriptors unexisting or of wrong dimension...
ShadowDataPointsFilter(const Parameters ¶ms=Parameters())
Constructor, uses parameter interface.
PointMatcher< T >::Vector Vector
virtual void inPlaceFilter(DataPoints &cloud)
Apply these filters to a point cloud without copying.
Matrix descriptors
descriptors of points in the cloud, might be empty
Matrix features
features of points in the 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)
void conservativeResize(Index pointCount)
Resize the cloud to pointCount points, conserving existing ones.
virtual DataPoints filter(const DataPoints &input)
Apply filters to input point cloud. This is the non-destructive version and returns a copy.
static T anyabs(const T &v)
Functions and classes that are not dependant on scalar type are defined in this namespace.
Shadow filter, remove ghost points appearing on edges.
ConstView getDescriptorViewByName(const std::string &name) const
Get a const view on a descriptor by name, throw an exception if it does not exist.