Keypoint detector for detecting corners in 3D (XYZ), 2D (intensity) AND mixed versions of these. More...
#include <harris_6d.h>
Public Types | |
typedef boost::shared_ptr < const HarrisKeypoint6D < PointInT, PointOutT, NormalT > > | ConstPtr |
typedef Keypoint< PointInT, PointOutT >::KdTree | KdTree |
typedef Keypoint< PointInT, PointOutT >::PointCloudIn | PointCloudIn |
typedef PointCloudIn::ConstPtr | PointCloudInConstPtr |
typedef Keypoint< PointInT, PointOutT >::PointCloudOut | PointCloudOut |
typedef boost::shared_ptr < HarrisKeypoint6D< PointInT, PointOutT, NormalT > > | Ptr |
Public Member Functions | |
HarrisKeypoint6D (float radius=0.01, float threshold=0.0) | |
Constructor. | |
void | setNonMaxSupression (bool=false) |
whether non maxima suppression should be applied or the response for each point should be returned | |
void | setNumberOfThreads (unsigned int nr_threads=0) |
Initialize the scheduler and set the number of threads to use. | |
void | setRadius (float radius) |
set the radius for normal estimation and non maxima supression. | |
void | setRefine (bool do_refine) |
whether the detected key points should be refined or not. If turned of, the key points are a subset of the original point cloud. Otherwise the key points may be arbitrary. | |
virtual void | setSearchSurface (const PointCloudInConstPtr &cloud) |
void | setThreshold (float threshold) |
set the threshold value for detecting corners. This is only evaluated if non maxima suppression is turned on. | |
virtual | ~HarrisKeypoint6D () |
Empty destructor. | |
Protected Member Functions | |
void | calculateCombinedCovar (const std::vector< int > &neighbors, float *coefficients) const |
void | detectKeypoints (PointCloudOut &output) |
Abstract key point detection method. | |
void | refineCorners (PointCloudOut &corners) const |
void | responseTomasi (PointCloudOut &output) const |
Private Attributes | |
boost::shared_ptr < pcl::PointCloud < pcl::IntensityGradient > > | intensity_gradients_ |
bool | nonmax_ |
boost::shared_ptr < pcl::PointCloud< NormalT > > | normals_ |
bool | refine_ |
unsigned int | threads_ |
float | threshold_ |
Keypoint detector for detecting corners in 3D (XYZ), 2D (intensity) AND mixed versions of these.
Definition at line 50 of file harris_6d.h.
typedef boost::shared_ptr<const HarrisKeypoint6D<PointInT, PointOutT, NormalT> > pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::ConstPtr |
Reimplemented from pcl::Keypoint< PointInT, PointOutT >.
Definition at line 54 of file harris_6d.h.
typedef Keypoint<PointInT, PointOutT>::KdTree pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::KdTree |
Reimplemented from pcl::Keypoint< PointInT, PointOutT >.
Definition at line 58 of file harris_6d.h.
typedef Keypoint<PointInT, PointOutT>::PointCloudIn pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::PointCloudIn |
Reimplemented from pcl::Keypoint< PointInT, PointOutT >.
Definition at line 56 of file harris_6d.h.
typedef PointCloudIn::ConstPtr pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::PointCloudInConstPtr |
Reimplemented from pcl::Keypoint< PointInT, PointOutT >.
Definition at line 59 of file harris_6d.h.
typedef Keypoint<PointInT, PointOutT>::PointCloudOut pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::PointCloudOut |
Reimplemented from pcl::Keypoint< PointInT, PointOutT >.
Definition at line 57 of file harris_6d.h.
typedef boost::shared_ptr<HarrisKeypoint6D<PointInT, PointOutT, NormalT> > pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::Ptr |
Reimplemented from pcl::Keypoint< PointInT, PointOutT >.
Definition at line 53 of file harris_6d.h.
pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::HarrisKeypoint6D | ( | float | radius = 0.01 , |
float | threshold = 0.0 |
||
) | [inline] |
Constructor.
method | the method to be used to determine the corner responses |
radius | the radius for normal estimation as well as for non maxima suppression |
threshold | the threshold to filter out weak corners |
Definition at line 76 of file harris_6d.h.
virtual pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::~HarrisKeypoint6D | ( | ) | [inline, virtual] |
Empty destructor.
Definition at line 89 of file harris_6d.h.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::calculateCombinedCovar | ( | const std::vector< int > & | neighbors, |
float * | coefficients | ||
) | const [protected] |
Definition at line 76 of file harris_6d.hpp.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::detectKeypoints | ( | PointCloudOut & | output | ) | [protected, virtual] |
Abstract key point detection method.
Implements pcl::Keypoint< PointInT, PointOutT >.
Definition at line 143 of file harris_6d.hpp.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::refineCorners | ( | PointCloudOut & | corners | ) | const [protected] |
Definition at line 358 of file harris_6d.hpp.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::responseTomasi | ( | PointCloudOut & | output | ) | const [protected] |
Definition at line 267 of file harris_6d.hpp.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::setNonMaxSupression | ( | bool | nonmax = false | ) |
whether non maxima suppression should be applied or the response for each point should be returned
nonmax | default is false |
Definition at line 69 of file harris_6d.hpp.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::setNumberOfThreads | ( | unsigned int | nr_threads = 0 | ) | [inline] |
Initialize the scheduler and set the number of threads to use.
nr_threads | the number of hardware threads to use (0 sets the value back to automatic) |
Definition at line 125 of file harris_6d.h.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::setRadius | ( | float | radius | ) |
set the radius for normal estimation and non maxima supression.
radius |
Definition at line 57 of file harris_6d.hpp.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::setRefine | ( | bool | do_refine | ) |
whether the detected key points should be refined or not. If turned of, the key points are a subset of the original point cloud. Otherwise the key points may be arbitrary.
note non maxima supression needs to be on in order to use this feature.
do_refine |
Definition at line 63 of file harris_6d.hpp.
virtual void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::setSearchSurface | ( | const PointCloudInConstPtr & | cloud | ) | [inline, virtual] |
Definition at line 119 of file harris_6d.h.
void pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::setThreshold | ( | float | threshold | ) |
set the threshold value for detecting corners. This is only evaluated if non maxima suppression is turned on.
note non maxima suppression needs to be activated in order to use this feature.
threshold |
Definition at line 51 of file harris_6d.hpp.
boost::shared_ptr<pcl::PointCloud<pcl::IntensityGradient> > pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::intensity_gradients_ [private] |
Definition at line 137 of file harris_6d.h.
bool pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::nonmax_ [private] |
Definition at line 134 of file harris_6d.h.
boost::shared_ptr<pcl::PointCloud<NormalT> > pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::normals_ [private] |
Definition at line 136 of file harris_6d.h.
bool pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::refine_ [private] |
Definition at line 133 of file harris_6d.h.
unsigned int pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::threads_ [private] |
Definition at line 135 of file harris_6d.h.
float pcl::HarrisKeypoint6D< PointInT, PointOutT, NormalT >::threshold_ [private] |
Definition at line 132 of file harris_6d.h.