Go to the documentation of this file.
56 inPlaceFilter(output);
68 throw InvalidParameter((boost::format(
"MinDistDataPointsFilter: Error, filtering on dimension number %1%, larger than feature dimensionality %2%") %
dim % (cloud.
features.rows() - 2)).str());
70 const int nbPointsIn = cloud.
features.cols();
71 const int nbRows = cloud.
features.rows();
76 const T absMinDist =
anyabs(minDist);
77 for (
int i = 0; i < nbPointsIn; ++i)
79 if (cloud.
features.col(i).head(nbRows-1).norm() > absMinDist)
88 for (
int i = 0; i < nbPointsIn; ++i)
PM::DataPointsFilter DataPointsFilter
Subsampling. Filter points before a minimum distance measured on a specific axis.
Functions and classes that are dependant on scalar type are defined in this templatized class.
void setColFrom(Index thisCol, const DataPoints &that, Index thatCol)
Set column thisCol equal to column thatCol of that, copy features and descriptors if any....
Parametrizable::InvalidParameter InvalidParameter
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)
Parametrizable::Parameters Parameters
void conservativeResize(Index pointCount)
Resize the cloud to pointCount points, conserving existing ones.
static T anyabs(const T &v)
MinDistDataPointsFilter(const Parameters ¶ms=Parameters())
Constructor, uses parameter interface.
Functions and classes that are not dependant on scalar type are defined in this namespace.
virtual void inPlaceFilter(DataPoints &cloud)
Apply these filters to a point cloud without copying.
virtual DataPoints filter(const DataPoints &input)
Apply filters to input point cloud. This is the non-destructive version and returns a copy.