39 #include <pcl/keypoints/keypoint.h>
48 template <
typename Po
intInT,
typename Po
intOutT,
typename NormalT = pcl::Normal>
52 using Ptr = shared_ptr<HarrisKeypoint6D<PointInT, PointOutT, NormalT> >;
53 using ConstPtr = shared_ptr<const HarrisKeypoint6D<PointInT, PointOutT, NormalT> >;
76 : threshold_ (threshold)
81 name_ =
"HarrisKeypoint6D";
132 unsigned int threads_{0};
138 #include <pcl/keypoints/impl/harris_6d.hpp>
Keypoint detector for detecting corners in 3D (XYZ), 2D (intensity) AND mixed versions of these.
typename Keypoint< PointInT, PointOutT >::PointCloudIn PointCloudIn
void setNonMaxSupression(bool=false)
whether non maxima suppression should be applied or the response for each point should be returned
shared_ptr< const HarrisKeypoint6D< PointInT, PointOutT, NormalT > > ConstPtr
void setThreshold(float threshold)
set the threshold value for detecting corners.
void setRefine(bool do_refine)
whether the detected key points should be refined or not.
void setRadius(float radius)
set the radius for normal estimation and non maxima suppression.
void responseTomasi(PointCloudOut &output) const
void setNumberOfThreads(unsigned int nr_threads=0)
Initialize the scheduler and set the number of threads to use.
typename PointCloudIn::ConstPtr PointCloudInConstPtr
void detectKeypoints(PointCloudOut &output)
typename Keypoint< PointInT, PointOutT >::PointCloudOut PointCloudOut
void refineCorners(PointCloudOut &corners) const
typename Keypoint< PointInT, PointOutT >::KdTree KdTree
shared_ptr< HarrisKeypoint6D< PointInT, PointOutT, NormalT > > Ptr
virtual ~HarrisKeypoint6D()=default
Empty destructor.
HarrisKeypoint6D(float radius=0.01, float threshold=0.0)
Constructor.
virtual void setSearchSurface(const PointCloudInConstPtr &cloud)
void calculateCombinedCovar(const pcl::Indices &neighbors, float *coefficients) const
Keypoint represents the base class for key points.
std::string name_
The key point detection method's name.
PointCloudInConstPtr surface_
An input point cloud describing the surface that is to be used for nearest neighbors estimation.
double search_radius_
The nearest neighbors search radius for each point.
void clear()
Removes all points in a cloud and sets the width and height to 0.
shared_ptr< PointCloud< PointT > > Ptr
IndicesAllocator<> Indices
Type used for indices in PCL.
A point structure representing the intensity gradient of an XYZI point cloud.
A point structure representing normal coordinates and the surface curvature estimate.