69 (boost::format(
"DistanceLimitDataPointsFilter: Error, filtering on dimension number %1%, larger than authorized axis id %2%") %
dim % (cloud.
features.rows() - 2)).str());
72 const int nbPointsIn = cloud.
features.cols();
73 const int nbRows = cloud.
features.rows();
79 for(
int i = 0; i < nbPointsIn; ++i)
83 if(cloud.
features.col(i).head(nbRows-1).norm() > absMaxDist)
91 if(cloud.
features.col(i).head(nbRows-1).norm() < absMaxDist)
101 for(
int i = 0; i < nbPointsIn; ++i)
Subsampling. Filter points based on distance measured on a specific axis.
Parametrizable::Parameters Parameters
virtual DataPoints filter(const DataPoints &input)
Apply filters to input point cloud. This is the non-destructive version and returns a copy...
void setColFrom(Index thisCol, const DataPoints &that, Index thatCol)
Set column thisCol equal to column thatCol of that, copy features and descriptors if any...
DistanceLimitDataPointsFilter(const Parameters ¶ms=Parameters())
Constructor, uses parameter interface.
Functions and classes that are not dependant on scalar type are defined in this namespace.
Functions and classes that are dependant on scalar type are defined in this templatized class...
const M::mapped_type & get(const M &m, const typename M::key_type &k)
The superclass of classes that are constructed using generic parameters. This class provides the para...
void conservativeResize(Index pointCount)
Resize the cloud to pointCount points, conserving existing ones.
Matrix features
features of points in the cloud
Parametrizable::InvalidParameter InvalidParameter
PM::DataPointsFilter DataPointsFilter
virtual void inPlaceFilter(DataPoints &cloud)
Apply these filters to a point cloud without copying.
static T anyabs(const T &v)