Point Cloud Library (PCL)
1.10.1
|
38 #include <pcl/keypoints/keypoint.h>
83 template <
typename Po
intInT,
typename Po
intOutT,
typename NormalT = pcl::Normal>
125 name_ =
"ISSKeypoint3D";
273 #include <pcl/keypoints/impl/iss_3d.hpp>
double non_max_radius_
The non maxima suppression radius.
This file defines compatibility wrappers for low level I/O functions.
shared_ptr< ISSKeypoint3D< PointInT, PointOutT, NormalT > > Ptr
A point structure representing normal coordinates and the surface curvature estimate.
typename OctreeSearchIn::Ptr OctreeSearchInPtr
typename PointCloudN::ConstPtr PointCloudNConstPtr
void setNumberOfThreads(unsigned int nr_threads=0)
Initialize the scheduler and set the number of threads to use.
void detectKeypoints(PointCloudOut &output) override
Detect the keypoints by performing the EVD of the scatter matrix.
bool * getBoundaryPoints(PointCloudIn &input, double border_radius, float angle_threshold)
Compute the boundary points for the given input cloud.
void setThreshold32(double gamma_32)
Set the upper bound on the ratio between the third and the second eigenvalue.
double normal_radius_
The radius used to compute the normals of the input cloud.
int min_neighbors_
Minimum number of neighbors that has to be found while applying the non maxima suppression algorithm.
bool initCompute() override
Perform the initial checks before computing the keypoints.
double gamma_21_
The upper bound on the ratio between the second and the first eigenvalue returned by the EVD.
ISSKeypoint3D(double salient_radius=0.0001)
Constructor.
void getScatterMatrix(const int ¤t_index, Eigen::Matrix3d &cov_m)
Compute the scatter matrix for a point index.
ISSKeypoint3D detects the Intrinsic Shape Signatures keypoints for a given point cloud.
float angle_threshold_
The decision boundary (angle threshold) that marks points as boundary or regular.
~ISSKeypoint3D()
Destructor.
shared_ptr< OctreePointCloudSearch< PointT, LeafContainerT, BranchContainerT > > Ptr
void setNormals(const PointCloudNConstPtr &normals)
Set the normals if pre-calculated normals are available.
PointCloudNConstPtr normals_
The cloud of normals related to the input surface.
shared_ptr< const ISSKeypoint3D< PointInT, PointOutT, NormalT > > ConstPtr
std::string name_
The key point detection method's name.
typename Keypoint< PointInT, PointOutT >::PointCloudIn PointCloudIn
void setNormalRadius(double normal_radius)
Set the radius used for the estimation of the surface normals of the input cloud.
void setThreshold21(double gamma_21)
Set the upper bound on the ratio between the second and the first eigenvalue.
shared_ptr< PointCloud< NormalT > > Ptr
void setAngleThreshold(float angle)
Set the decision boundary (angle threshold) that marks points as boundary or regular.
double * third_eigen_value_
Store the third eigen value associated to each point in the input cloud.
bool * edge_points_
Store the information about the boundary points of the input cloud.
typename Keypoint< PointInT, PointOutT >::PointCloudOut PointCloudOut
unsigned int threads_
The number of threads that has to be used by the scheduler.
double gamma_32_
The upper bound on the ratio between the third and the second eigenvalue returned by the EVD.
shared_ptr< const PointCloud< NormalT > > ConstPtr
double search_radius_
The nearest neighbors search radius for each point.
Keypoint represents the base class for key points.
void setNonMaxRadius(double non_max_radius)
Set the radius for the application of the non maxima supression algorithm.
double border_radius_
The radius used to compute the boundary points of the input cloud.
Octree pointcloud search class
double salient_radius_
The radius of the spherical neighborhood used to compute the scatter matrix.
void setBorderRadius(double border_radius)
Set the radius used for the estimation of the boundary points.
void setSalientRadius(double salient_radius)
Set the radius of the spherical neighborhood used to compute the scatter matrix.
typename PointCloudN::Ptr PointCloudNPtr
void setMinNeighbors(int min_neighbors)
Set the minimum number of neighbors that has to be found while applying the non maxima suppression al...
boost::shared_ptr< T > shared_ptr
Alias for boost::shared_ptr.