41 #include <pcl/features/feature.h>
42 #include <pcl/filters/voxel_grid.h>
71 template <
typename Po
intInT,
typename Po
intNT,
typename Po
intOutT>
131 double min_radius_plane = 0.100,
132 double max_radius_noise = 0.015,
133 double min_radius_cylinder = 0.175,
134 double max_min_radius_diff = 0.050);
149 bool additive_ =
true;
155 int rsd_nr_subdiv_ = 0;
158 double rsd_plane_radius_ = 0.0;
161 Eigen::MatrixXi relative_coordinates_all_;
167 #ifdef PCL_NO_PRECOMPILE
168 #include <pcl/features/impl/grsd.hpp>
Feature represents the base feature class.
typename PointCloudIn::Ptr PointCloudInPtr
double search_radius_
The nearest neighbors search radius for each point.
std::string feature_name_
The feature name.
GRSDEstimation estimates the Global Radius-based Surface Descriptor (GRSD) for a given point cloud da...
static int getSimpleType(float min_radius, float max_radius, double min_radius_plane=0.100, double max_radius_noise=0.015, double min_radius_cylinder=0.175, double max_min_radius_diff=0.050)
Get the type of the local surface based on the min and max radius computed.
void computeFeature(PointCloudOut &output) override
Estimate the Global Radius-based Surface Descriptor (GRSD) for a set of points given by <setInputClou...
void setPlaneRadius(double plane_radius)
Set the maximum radius, above which everything can be considered planar.
void setRadiusSearch(double radius)
Set the sphere radius that is to be used for determining the nearest neighbors used for the feature e...
double getRadiusSearch() const
Get the sphere radius used for determining the neighbors.
void setNrSubdivisions(int nr_subdiv)
Set the number of subdivisions for the considered distance interval.
typename Feature< PointInT, PointOutT >::PointCloudOut PointCloudOut
GRSDEstimation()
Constructor.
Eigen::MatrixXi getAllNeighborCellIndices()
Get the relative cell indices of all the 26 neighbors.