class mp2p_icp_filters::FilterDecimateVoxelsQuadratic
Overview
Builds a new layer with a decimated version of an input layer, with a non-linear spatial lattice with wider voxels near the origin.
This builds a voxel grid from the input point cloud, and then takes either, the mean of the points in the voxel, or one of the points picked at random, depending on the parameter use_voxel_average
.
If the given output pointcloud layer already exists, new points will be appended, without clearing the former contents.
Not compatible with calling from different threads simultaneously for different input point clouds. Use independent instances for each thread if needed.
#include <FilterDecimateVoxelsQuadratic.h> class FilterDecimateVoxelsQuadratic: public mp2p_icp_filters::FilterBase { public: // structs struct Parameters; // fields Parameters params_; // methods virtual void initialize(const mrpt::containers::yaml& cfg_block); virtual void filter(mp2p_icp::metric_map_t& inOut) const; float real2grid(float x) const; float grid2real(float y) const; };
Inherited Members
public: // methods virtual void initialize(const mrpt::containers::yaml& cfg_block) = 0; virtual void filter(mp2p_icp::metric_map_t& inOut) const = 0;
Fields
Parameters params_
Algorithm parameters
Methods
virtual void initialize(const mrpt::containers::yaml& cfg_block)
Loads, from a YAML configuration block, all the common, and implementation-specific parameters.
virtual void filter(mp2p_icp::metric_map_t& inOut) const
See docs above for FilterBase.