OpenCV  4.9.0
Open Source Computer Vision
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
cv::xfeatures2d::FREAK Class Referenceabstract

Class implementing the FREAK (Fast Retina Keypoint) keypoint descriptor, described in [8] . More...

#include <opencv2/xfeatures2d.hpp>

Inheritance diagram for cv::xfeatures2d::FREAK:
cv::Feature2D cv::Algorithm

Public Member Functions

String getDefaultName () const CV_OVERRIDE
 
virtual int getNOctaves () const =0
 
virtual bool getOrientationNormalized () const =0
 
virtual double getPatternScale () const =0
 
virtual bool getScaleNormalized () const =0
 
virtual void setNOctaves (int nOctaves)=0
 
virtual void setOrientationNormalized (bool orientationNormalized)=0
 
virtual void setPatternScale (double patternScale)=0
 
virtual void setScaleNormalized (bool scaleNormalized)=0
 
- Public Member Functions inherited from cv::Feature2D
virtual ~Feature2D ()
 
virtual void compute (InputArray image, std::vector< KeyPoint > &keypoints, OutputArray descriptors)
 Computes the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant). More...
 
virtual void compute (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, OutputArrayOfArrays descriptors)
 
virtual int defaultNorm () const
 
virtual int descriptorSize () const
 
virtual int descriptorType () const
 
virtual void detect (InputArray image, std::vector< KeyPoint > &keypoints, InputArray mask=noArray())
 Detects keypoints in an image (first variant) or image set (second variant). More...
 
virtual void detect (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, InputArrayOfArrays masks=noArray())
 
virtual void detectAndCompute (InputArray image, InputArray mask, std::vector< KeyPoint > &keypoints, OutputArray descriptors, bool useProvidedKeypoints=false)
 
virtual bool empty () const CV_OVERRIDE
 Return true if detector object is empty. More...
 
void read (const String &fileName)
 
virtual void read (const FileNode &) CV_OVERRIDE
 Reads algorithm parameters from a file storage. More...
 
void write (const String &fileName) const
 
virtual void write (FileStorage &) const CV_OVERRIDE
 Stores algorithm parameters in a file storage. More...
 
void write (FileStorage &fs, const String &name) const
 
void write (const Ptr< FileStorage > &fs, const String &name) const
 
- Public Member Functions inherited from cv::Algorithm
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 Clears the algorithm state. More...
 
virtual void save (const String &filename) const
 
void write (FileStorage &fs, const String &name) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 

Static Public Member Functions

static Ptr< FREAKcreate (bool orientationNormalized=true, bool scaleNormalized=true, float patternScale=22.0f, int nOctaves=4, const std::vector< int > &selectedPairs=std::vector< int >())
 
- Static Public Member Functions inherited from cv::Algorithm
template<typename _Tp >
static Ptr< _Tp > load (const String &filename, const String &objname=String())
 Loads algorithm from the file. More...
 
template<typename _Tp >
static Ptr< _Tp > loadFromString (const String &strModel, const String &objname=String())
 Loads algorithm from a String. More...
 
template<typename _Tp >
static Ptr< _Tp > read (const FileNode &fn)
 Reads algorithm from the file node. More...
 

Static Public Attributes

static const int NB_ORIENPAIRS = 45
 
static const int NB_PAIRS = 512
 
static const int NB_SCALES = 64
 

Additional Inherited Members

- Protected Member Functions inherited from cv::Algorithm
void writeFormat (FileStorage &fs) const
 

Detailed Description

Class implementing the FREAK (Fast Retina Keypoint) keypoint descriptor, described in [8] .

The algorithm propose a novel keypoint descriptor inspired by the human visual system and more precisely the retina, coined Fast Retina Key- point (FREAK). A cascade of binary strings is computed by efficiently comparing image intensities over a retinal sampling pattern. FREAKs are in general faster to compute with lower memory load and also more robust than SIFT, SURF or BRISK. They are competitive alternatives to existing keypoints in particular for embedded applications.

Note
  • An example on how to use the FREAK descriptor can be found at opencv_source_code/samples/cpp/freak_demo.cpp

Member Function Documentation

◆ create()

static Ptr<FREAK> cv::xfeatures2d::FREAK::create ( bool  orientationNormalized = true,
bool  scaleNormalized = true,
float  patternScale = 22.0f,
int  nOctaves = 4,
const std::vector< int > &  selectedPairs = std::vector< int >() 
)
static
Python:
cv.xfeatures2d.FREAK.create([, orientationNormalized[, scaleNormalized[, patternScale[, nOctaves[, selectedPairs]]]]]) -> retval
cv.xfeatures2d.FREAK_create([, orientationNormalized[, scaleNormalized[, patternScale[, nOctaves[, selectedPairs]]]]]) -> retval
Parameters
orientationNormalizedEnable orientation normalization.
scaleNormalizedEnable scale normalization.
patternScaleScaling of the description pattern.
nOctavesNumber of octaves covered by the detected keypoints.
selectedPairs(Optional) user defined selected pairs indexes,

◆ getDefaultName()

String cv::xfeatures2d::FREAK::getDefaultName ( ) const
virtual
Python:
cv.xfeatures2d.FREAK.getDefaultName() -> retval

Returns the algorithm string identifier. This string is used as top level xml/yml node tag when the object is saved to a file or string.

Reimplemented from cv::Feature2D.

◆ getNOctaves()

virtual int cv::xfeatures2d::FREAK::getNOctaves ( ) const
pure virtual
Python:
cv.xfeatures2d.FREAK.getNOctaves() -> retval

◆ getOrientationNormalized()

virtual bool cv::xfeatures2d::FREAK::getOrientationNormalized ( ) const
pure virtual
Python:
cv.xfeatures2d.FREAK.getOrientationNormalized() -> retval

◆ getPatternScale()

virtual double cv::xfeatures2d::FREAK::getPatternScale ( ) const
pure virtual
Python:
cv.xfeatures2d.FREAK.getPatternScale() -> retval

◆ getScaleNormalized()

virtual bool cv::xfeatures2d::FREAK::getScaleNormalized ( ) const
pure virtual
Python:
cv.xfeatures2d.FREAK.getScaleNormalized() -> retval

◆ setNOctaves()

virtual void cv::xfeatures2d::FREAK::setNOctaves ( int  nOctaves)
pure virtual
Python:
cv.xfeatures2d.FREAK.setNOctaves(nOctaves) -> None

◆ setOrientationNormalized()

virtual void cv::xfeatures2d::FREAK::setOrientationNormalized ( bool  orientationNormalized)
pure virtual
Python:
cv.xfeatures2d.FREAK.setOrientationNormalized(orientationNormalized) -> None

◆ setPatternScale()

virtual void cv::xfeatures2d::FREAK::setPatternScale ( double  patternScale)
pure virtual
Python:
cv.xfeatures2d.FREAK.setPatternScale(patternScale) -> None

◆ setScaleNormalized()

virtual void cv::xfeatures2d::FREAK::setScaleNormalized ( bool  scaleNormalized)
pure virtual
Python:
cv.xfeatures2d.FREAK.setScaleNormalized(scaleNormalized) -> None

Member Data Documentation

◆ NB_ORIENPAIRS

const int cv::xfeatures2d::FREAK::NB_ORIENPAIRS = 45
static

◆ NB_PAIRS

const int cv::xfeatures2d::FREAK::NB_PAIRS = 512
static

◆ NB_SCALES

const int cv::xfeatures2d::FREAK::NB_SCALES = 64
static

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