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>
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)
Abstract key point detection method.
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)
Provide a pointer to the input dataset that we need to estimate features at every point for.
void calculateCombinedCovar(const pcl::Indices &neighbors, float *coefficients) const
pcl::PointCloud< PointInT > PointCloudIn
pcl::PointIndicesPtr keypoints_indices_
pcl::PointCloud< PointOutT > PointCloudOut
PointCloudInConstPtr surface_
pcl::search::Search< PointInT > KdTree
PointCloudConstPtr input_
PointCloud represents the base class in PCL for storing collections of 3D points.
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.