|
Point Cloud Library (PCL) 1.15.1
|
Abstract detector class for AGAST corner point detectors. More...
#include <pcl/keypoints/agast_2d.h>
Classes | |
| struct | ScoreIndex |
| Structure holding an index and the associated keypoint score. More... | |
| struct | CompareScoreIndex |
| Score index comparator. More... | |
Public Types | |
| using | Ptr = shared_ptr<AbstractAgastDetector> |
| using | ConstPtr = shared_ptr<const AbstractAgastDetector> |
Public Member Functions | |
| AbstractAgastDetector (const std::size_t width, const std::size_t height, const double threshold, const double bmax) | |
| Constructor. | |
| virtual | ~AbstractAgastDetector ()=default |
| Destructor. | |
| void | detectKeypoints (const std::vector< unsigned char > &intensity_data, pcl::PointCloud< pcl::PointUV > &output) const |
| Detects corner points. | |
| void | detectKeypoints (const std::vector< float > &intensity_data, pcl::PointCloud< pcl::PointUV > &output) const |
| Detects corner points. | |
| void | applyNonMaxSuppression (const std::vector< unsigned char > &intensity_data, const pcl::PointCloud< pcl::PointUV > &input, pcl::PointCloud< pcl::PointUV > &output) |
| Applies non-max-suppression. | |
| void | applyNonMaxSuppression (const std::vector< float > &intensity_data, const pcl::PointCloud< pcl::PointUV > &input, pcl::PointCloud< pcl::PointUV > &output) |
| Applies non-max-suppression. | |
| virtual int | computeCornerScore (const unsigned char *im) const =0 |
| Computes corner score. | |
| virtual int | computeCornerScore (const float *im) const =0 |
| Computes corner score. | |
| void | setThreshold (const double threshold) |
| Sets the threshold for corner detection. | |
| double | getThreshold () |
| Get the threshold for corner detection, as set by the user. | |
| void | setMaxKeypoints (const unsigned int nr_max_keypoints) |
| Sets the maximum number of keypoints to return. | |
| unsigned int | getMaxKeypoints () |
| Get the maximum number of keypoints to return, as set by the user. | |
| virtual void | detect (const unsigned char *im, std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &corners_all) const =0 |
| Detects points of interest (i.e., keypoints) in the given image. | |
| virtual void | detect (const float *im, std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &) const =0 |
| Detects points of interest (i.e., keypoints) in the given image. | |
Protected Member Functions | |
| virtual void | initPattern ()=0 |
| Initializes the sample pattern. | |
| void | applyNonMaxSuppression (const pcl::PointCloud< pcl::PointUV > &input, const std::vector< ScoreIndex > &scores, pcl::PointCloud< pcl::PointUV > &output) |
| Non-max-suppression helper method. | |
| void | computeCornerScores (const unsigned char *im, const std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &corners_all, std::vector< ScoreIndex > &scores) const |
| Computes corner scores for the specified points. | |
| void | computeCornerScores (const float *im, const std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &corners_all, std::vector< ScoreIndex > &scores) const |
| Computes corner scores for the specified points. | |
Protected Attributes | |
| std::size_t | width_ |
| Width of the image to process. | |
| std::size_t | height_ |
| Height of the image to process. | |
| double | threshold_ |
| Threshold for corner detection. | |
| unsigned int | nr_max_keypoints_ |
| The maximum number of keypoints to return. | |
| double | bmax_ |
| Max image value. | |
Abstract detector class for AGAST corner point detectors.
Adapted from the C++ implementation of Elmar Mair (http://www6.in.tum.de/Main/ResearchAgast).
Definition at line 64 of file agast_2d.h.
| using pcl::keypoints::agast::AbstractAgastDetector::ConstPtr = shared_ptr<const AbstractAgastDetector> |
Definition at line 68 of file agast_2d.h.
| using pcl::keypoints::agast::AbstractAgastDetector::Ptr = shared_ptr<AbstractAgastDetector> |
Definition at line 67 of file agast_2d.h.
|
inline |
Constructor.
| [in] | width | the width of the image to process |
| [in] | height | the height of the image to process |
| [in] | threshold | the corner detection threshold |
| [in] | bmax | the max image value (default: 255) |
Definition at line 76 of file agast_2d.h.
References bmax_, height_, nr_max_keypoints_, threshold_, and width_.
Referenced by pcl::keypoints::agast::AgastDetector5_8::AgastDetector5_8(), pcl::keypoints::agast::AgastDetector7_12s::AgastDetector7_12s(), and pcl::keypoints::agast::OastDetector9_16::OastDetector9_16().
|
virtualdefault |
Destructor.
|
protected |
Non-max-suppression helper method.
| [in] | input | the keypoint positions |
| [in] | scores | the keypoint scores computed on the image data |
| [out] | output | the resultant keypoints after non-max-suppression |
| void pcl::keypoints::agast::AbstractAgastDetector::applyNonMaxSuppression | ( | const std::vector< float > & | intensity_data, |
| const pcl::PointCloud< pcl::PointUV > & | input, | ||
| pcl::PointCloud< pcl::PointUV > & | output ) |
Applies non-max-suppression.
| [in] | intensity_data | the image data |
| [in] | input | the keypoint positions |
| [out] | output | the resultant keypoints after non-max-suppression |
| void pcl::keypoints::agast::AbstractAgastDetector::applyNonMaxSuppression | ( | const std::vector< unsigned char > & | intensity_data, |
| const pcl::PointCloud< pcl::PointUV > & | input, | ||
| pcl::PointCloud< pcl::PointUV > & | output ) |
Applies non-max-suppression.
| [in] | intensity_data | the image data |
| [in] | input | the keypoint positions |
| [out] | output | the resultant keypoints after non-max-suppression |
|
pure virtual |
Computes corner score.
| [in] | im | the pixels to compute the score at |
Implemented in pcl::keypoints::agast::AgastDetector5_8, pcl::keypoints::agast::AgastDetector7_12s, and pcl::keypoints::agast::OastDetector9_16.
|
pure virtual |
Computes corner score.
| [in] | im | the pixels to compute the score at |
Implemented in pcl::keypoints::agast::AgastDetector5_8, pcl::keypoints::agast::AgastDetector7_12s, and pcl::keypoints::agast::OastDetector9_16.
|
protected |
Computes corner scores for the specified points.
| im | |
| corners_all | |
| scores |
|
protected |
Computes corner scores for the specified points.
| im | |
| corners_all | |
| scores |
|
pure virtual |
Detects points of interest (i.e., keypoints) in the given image.
| [in] | im | the image to detect keypoints in |
Implemented in pcl::keypoints::agast::AgastDetector5_8, pcl::keypoints::agast::AgastDetector7_12s, and pcl::keypoints::agast::OastDetector9_16.
|
pure virtual |
Detects points of interest (i.e., keypoints) in the given image.
| [in] | im | the image to detect keypoints in |
| [out] | corners_all | the resultant set of keypoints detected |
Implemented in pcl::keypoints::agast::AgastDetector5_8, pcl::keypoints::agast::AgastDetector7_12s, and pcl::keypoints::agast::OastDetector9_16.
| void pcl::keypoints::agast::AbstractAgastDetector::detectKeypoints | ( | const std::vector< float > & | intensity_data, |
| pcl::PointCloud< pcl::PointUV > & | output ) const |
Detects corner points.
| intensity_data | |
| output |
| void pcl::keypoints::agast::AbstractAgastDetector::detectKeypoints | ( | const std::vector< unsigned char > & | intensity_data, |
| pcl::PointCloud< pcl::PointUV > & | output ) const |
Detects corner points.
| intensity_data | |
| output |
|
inline |
Get the maximum number of keypoints to return, as set by the user.
Definition at line 166 of file agast_2d.h.
References nr_max_keypoints_.
|
inline |
Get the threshold for corner detection, as set by the user.
Definition at line 149 of file agast_2d.h.
References threshold_.
|
protectedpure virtual |
Initializes the sample pattern.
Implemented in pcl::keypoints::agast::AgastDetector5_8, pcl::keypoints::agast::AgastDetector7_12s, and pcl::keypoints::agast::OastDetector9_16.
|
inline |
Sets the maximum number of keypoints to return.
The estimated keypoints are sorted by their internal score.
| [in] | nr_max_keypoints | set the maximum number of keypoints to return |
Definition at line 159 of file agast_2d.h.
References nr_max_keypoints_.
|
inline |
Sets the threshold for corner detection.
| [in] | threshold | the threshold used for corner detection. |
Definition at line 142 of file agast_2d.h.
References threshold_.
|
protected |
|
protected |
Height of the image to process.
Definition at line 246 of file agast_2d.h.
Referenced by AbstractAgastDetector().
|
protected |
The maximum number of keypoints to return.
Definition at line 252 of file agast_2d.h.
Referenced by AbstractAgastDetector(), getMaxKeypoints(), and setMaxKeypoints().
|
protected |
Threshold for corner detection.
Definition at line 249 of file agast_2d.h.
Referenced by AbstractAgastDetector(), getThreshold(), and setThreshold().
|
protected |
Width of the image to process.
Definition at line 244 of file agast_2d.h.
Referenced by AbstractAgastDetector().