ImFusion SDK 4.3
ORBFeatureDetector Class Reference

#include <ImFusion/Vision/FeatureDetection.h>

Implementation of the ORB feature detection and description algorithm. More...

+ Inheritance diagram for ORBFeatureDetector:

Detailed Description

Implementation of the ORB feature detection and description algorithm.

Classes

struct  ORBKeyPointIterator
 Iterator for ORB keypoints, supports multi-level traversal. More...
 

Public Member Functions

 ORBFeatureDetector ()
 Default constructor.
 
 ~ORBFeatureDetector ()
 Destructor.
 
std::string name () const override
 Return name of detector.
 
std::vector< Keypointdetect (SharedImage &img) override
 Detect ORB keypoints in image.
 
bool setMaxFeatures (int v) override
 Set maximum number of features.
 
int maxFeatures () const override
 Get maximum number of features.
 
void setThreshold (double threshold) override
 Set FAST threshold.
 
double threshold () const override
 Get FAST threshold.
 
std::unique_ptr< KeyPointIteratorinitKeypointIterator (const std::vector< Keypoint > &keypoints) override
 Initialize ORB keypoint iterator.
 
- Public Member Functions inherited from FeatureDetectorWithAdaptiveThreshold
 FeatureDetectorWithAdaptiveThreshold ()
 Default constructor.
 
std::vector< KeypointdetectAdaptive (SharedImage &img)
 Runs the detection by iteratively adapting a max number of features and a threshold.
 
void configure (const Properties *p) override
 Configure parameters from properties.
 
- Public Member Functions inherited from Configurable
virtual void configuration (Properties *p) const
 Serialize the current object configuration into the given Properties object.
 
virtual void configureDefaults ()
 Retrieve the properties of this object, replaces values with their defaults and sets it again.
 
void registerParameter (ParameterBase *param)
 Register the given Parameter or SubProperty, so that it will be configured during configure()/configuration().
 
void unregisterParameter (const ParameterBase *param)
 Remove the given Parameter or SubProperty from the list of registered parameters.
 
 Configurable (const Configurable &rhs)
 
 Configurable (Configurable &&rhs) noexcept
 
Configurableoperator= (const Configurable &)
 
Configurableoperator= (Configurable &&) noexcept
 

Public Attributes

Parameter< int > p_fastThreshold = {"FAST threshold", 0, this}
 FAST threshold parameter.
 
Parameter< int > p_edgeThreshold = {"Edge threshold", 0, this}
 Edge threshold parameter.
 
Parameter< int > p_firstLevel = {"First level", 0, this}
 First pyramid level.
 
Parameter< int > p_maxFeatures = {"Max features", 0, this}
 Maximum number of features.
 
Parameter< int > p_nLevels = {"N levels", 0, this}
 Number of pyramid levels.
 
Parameter< int > p_patchSize = {"Patch size", 0, this}
 Patch size for descriptor.
 
Parameter< double > p_scaleFactor = {"Scale factor", 0, this}
 Pyramid scale factor.
 
Parameter< int > p_scoreType = {"Score type", 0, this}
 Score type parameter.
 
Parameter< int > p_wtak = {"WTA K", 0, this}
 WTA_K parameter.
 
- Public Attributes inherited from FeatureDetectorWithAdaptiveThreshold
Parameter< bool > p_adaptThreshold = {"Iteratively adapt threshold", false, this}
 Enable adaptive threshold.
 
Parameter< int > p_cellSize = {"Grid cell size", 100, this}
 Size of grid cell for adaptive threshold.
 
Parameter< double > p_minThreshold = {"Minimum threshold", 0.0, this}
 Minimum threshold value.
 
Parameter< double > p_thresholdStep = {"Threshold step", 0.0, this}
 Step size for threshold adaptation.
 
- Public Attributes inherited from Configurable
Signal signalParametersChanged
 Emitted whenever one of the registered Parameters' or SubPropertys' signalValueChanged signal was emitted.
 

Additional Inherited Members

- Protected Attributes inherited from Configurable
std::vector< Paramm_params
 List of all registered Parameter and SubProperty instances.
 

Member Function Documentation

◆ name()

std::string name ( ) const
inlineoverridevirtual

Return name of detector.

Implements FeatureDetector.

◆ detect()

std::vector< Keypoint > detect ( SharedImage & img)
overridevirtual

Detect ORB keypoints in image.

Parameters
imgSharedImage to detect features in.
Returns
Vector of detected keypoints.

Implements FeatureDetector.

◆ setMaxFeatures()

bool setMaxFeatures ( int v)
inlineoverridevirtual

Set maximum number of features.

Parameters
vMaximum number of features.
Returns
Always true.

Implements FeatureDetectorWithAdaptiveThreshold.

◆ maxFeatures()

int maxFeatures ( ) const
inlineoverridevirtual

Get maximum number of features.

Implements FeatureDetectorWithAdaptiveThreshold.

◆ setThreshold()

void setThreshold ( double threshold)
inlineoverridevirtual

Set FAST threshold.

Parameters
thresholdFAST threshold value.

Implements FeatureDetectorWithAdaptiveThreshold.

◆ threshold()

double threshold ( ) const
inlineoverridevirtual

Get FAST threshold.

Implements FeatureDetectorWithAdaptiveThreshold.

◆ initKeypointIterator()

std::unique_ptr< KeyPointIterator > initKeypointIterator ( const std::vector< Keypoint > & keypoints)
inlineoverridevirtual

Initialize ORB keypoint iterator.

Parameters
keypointsKeypoints to iterate over.
Returns
Unique pointer to ORBKeyPointIterator.

Reimplemented from FeatureDetectorWithAdaptiveThreshold.


The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close