Point Cloud Library (PCL)  1.14.0-dev
List of all members | Public Types | Public Member Functions | Protected Member Functions
pcl::keypoints::agast::AgastDetector5_8 Class Reference

Detector class for AGAST corner point detector (5_8). More...

#include <pcl/keypoints/agast_2d.h>

+ Inheritance diagram for pcl::keypoints::agast::AgastDetector5_8:
+ Collaboration diagram for pcl::keypoints::agast::AgastDetector5_8:

Public Types

using Ptr = shared_ptr< AgastDetector5_8 >
 
using ConstPtr = shared_ptr< const AgastDetector5_8 >
 
- Public Types inherited from pcl::keypoints::agast::AbstractAgastDetector
using Ptr = shared_ptr< AbstractAgastDetector >
 
using ConstPtr = shared_ptr< const AbstractAgastDetector >
 

Public Member Functions

 AgastDetector5_8 (const std::size_t width, const std::size_t height, const double threshold, const double bmax=255)
 Constructor. More...
 
 ~AgastDetector5_8 () override=default
 Destructor. More...
 
int computeCornerScore (const unsigned char *im) const override
 Computes corner score. More...
 
int computeCornerScore (const float *im) const override
 Computes corner score. More...
 
void detect (const unsigned char *im, std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &corners_all) const override
 Detects points of interest (i.e., keypoints) in the given image. More...
 
void detect (const float *im, std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &corners_all) const override
 Detects points of interest (i.e., keypoints) in the given image. More...
 
- Public Member Functions inherited from pcl::keypoints::agast::AbstractAgastDetector
 AbstractAgastDetector (const std::size_t width, const std::size_t height, const double threshold, const double bmax)
 Constructor. More...
 
virtual ~AbstractAgastDetector ()=default
 Destructor. More...
 
void detectKeypoints (const std::vector< unsigned char > &intensity_data, pcl::PointCloud< pcl::PointUV > &output) const
 Detects corner points. More...
 
void detectKeypoints (const std::vector< float > &intensity_data, pcl::PointCloud< pcl::PointUV > &output) const
 Detects corner points. More...
 
void applyNonMaxSuppression (const std::vector< unsigned char > &intensity_data, const pcl::PointCloud< pcl::PointUV > &input, pcl::PointCloud< pcl::PointUV > &output)
 Applies non-max-suppression. More...
 
void applyNonMaxSuppression (const std::vector< float > &intensity_data, const pcl::PointCloud< pcl::PointUV > &input, pcl::PointCloud< pcl::PointUV > &output)
 Applies non-max-suppression. More...
 
void setThreshold (const double threshold)
 Sets the threshold for corner detection. More...
 
double getThreshold ()
 Get the threshold for corner detection, as set by the user. More...
 
void setMaxKeypoints (const unsigned int nr_max_keypoints)
 Sets the maximum number of keypoints to return. More...
 
unsigned int getMaxKeypoints ()
 Get the maximum number of keypoints to return, as set by the user. More...
 

Protected Member Functions

void initPattern () override
 Initializes the sample pattern. More...
 
- Protected Member Functions inherited from pcl::keypoints::agast::AbstractAgastDetector
void applyNonMaxSuppression (const pcl::PointCloud< pcl::PointUV > &input, const std::vector< ScoreIndex > &scores, pcl::PointCloud< pcl::PointUV > &output)
 Non-max-suppression helper method. More...
 
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. More...
 
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. More...
 

Additional Inherited Members

- Protected Attributes inherited from pcl::keypoints::agast::AbstractAgastDetector
std::size_t width_
 Width of the image to process. More...
 
std::size_t height_
 Height of the image to process. More...
 
double threshold_
 Threshold for corner detection. More...
 
unsigned int nr_max_keypoints_
 The maximum number of keypoints to return. More...
 
double bmax_
 Max image value. More...
 

Detailed Description

Detector class for AGAST corner point detector (5_8).

Adapted from the C++ implementation of Elmar Mair (http://www6.in.tum.de/Main/ResearchAgast).

Author
Stefan Holzer

Definition at line 337 of file agast_2d.h.

Member Typedef Documentation

◆ ConstPtr

Definition at line 341 of file agast_2d.h.

◆ Ptr

Definition at line 340 of file agast_2d.h.

Constructor & Destructor Documentation

◆ AgastDetector5_8()

pcl::keypoints::agast::AgastDetector5_8::AgastDetector5_8 ( const std::size_t  width,
const std::size_t  height,
const double  threshold,
const double  bmax = 255 
)
inline

Constructor.

Parameters
[in]widththe width of the image to process
[in]heightthe height of the image to process
[in]thresholdthe corner detection threshold
[in]bmaxthe max image value (default: 255)

Definition at line 349 of file agast_2d.h.

◆ ~AgastDetector5_8()

pcl::keypoints::agast::AgastDetector5_8::~AgastDetector5_8 ( )
overridedefault

Destructor.

Member Function Documentation

◆ computeCornerScore() [1/2]

int pcl::keypoints::agast::AgastDetector5_8::computeCornerScore ( const float *  im) const
overridevirtual

Computes corner score.

Parameters
im

Implements pcl::keypoints::agast::AbstractAgastDetector.

◆ computeCornerScore() [2/2]

int pcl::keypoints::agast::AgastDetector5_8::computeCornerScore ( const unsigned char *  im) const
overridevirtual

Computes corner score.

Parameters
im

Implements pcl::keypoints::agast::AbstractAgastDetector.

◆ detect() [1/2]

void pcl::keypoints::agast::AgastDetector5_8::detect ( const float *  im,
std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &  corners_all 
) const
overridevirtual

Detects points of interest (i.e., keypoints) in the given image.

Parameters
[in]imthe image to detect keypoints in
[out]corners_allthe resultant set of keypoints detected

Implements pcl::keypoints::agast::AbstractAgastDetector.

◆ detect() [2/2]

void pcl::keypoints::agast::AgastDetector5_8::detect ( const unsigned char *  im,
std::vector< pcl::PointUV, Eigen::aligned_allocator< pcl::PointUV > > &  corners_all 
) const
overridevirtual

Detects points of interest (i.e., keypoints) in the given image.

Parameters
[in]imthe image to detect keypoints in
[out]corners_allthe resultant set of keypoints detected

Implements pcl::keypoints::agast::AbstractAgastDetector.

◆ initPattern()

void pcl::keypoints::agast::AgastDetector5_8::initPattern ( )
overrideprotectedvirtual

Initializes the sample pattern.

Implements pcl::keypoints::agast::AbstractAgastDetector.


The documentation for this class was generated from the following file: