Go to the documentation of this file.
39 #include <yaml-cpp/yaml.h>
78 for(YAML::const_iterator moduleIt = doc.begin(); moduleIt != doc.end(); ++moduleIt)
80 const YAML::Node& module(*moduleIt);
110 const int nbPointsBeforeFilters(cloud.
features.cols());
111 LOG_INFO_STREAM(
"Applying " << this->size() <<
" DataPoints filters - " << nbPointsBeforeFilters <<
" points in");
114 const int nbPointsIn(cloud.
features.cols());
115 if (nbPointsIn == 0) {
119 (*it)->inPlaceFilter(cloud);
122 const int nbPointsOut(cloud.
features.cols());
123 LOG_INFO_STREAM(
"* " << (*it)->className <<
" - " << nbPointsOut <<
" points out (-" << (100 -
double(nbPointsOut*100.)/nbPointsIn) <<
"%)");
126 const int nbPointsAfterFilters(cloud.
features.cols());
127 LOG_INFO_STREAM(
"Applied " << this->size() <<
" filters - " << nbPointsAfterFilters <<
" points out (-" << (100 -
double(nbPointsAfterFilters*100.)/nbPointsBeforeFilters) <<
"%)");
DataPointsFilters()
Construct an empty chain.
DataPointsFilters::iterator DataPointsFiltersIt
alias
void init()
Init the chain.
void assertDescriptorConsistency() const
Assert if descriptors are not consistent with features.
#define LOG_INFO_STREAM(args)
Functions and classes that are dependant on scalar type are defined in this templatized class.
Point matcher did not converge.
A chain of DataPointsFilter.
std::vector< ParameterDoc > ParametersDoc
The documentation of all parameters.
DataPointsFilter()
Construct without parameter.
A data filter takes a point cloud as input, transforms it, and produces another point cloud as output...
virtual ~DataPointsFilter()
virtual destructor
Matrix features
features of points in the cloud
virtual void init()
Init this filter.
The superclass of classes that are constructed using generic parameters. This class provides the para...
static const PointMatcher & get()
Return instances.
void apply(DataPoints &cloud)
Apply this chain to cloud, mutates cloud.
std::map< std::string, Parameter > Parameters
Parameters stored as a map of string->string.