OpenCV  3.4.19
Open Source Computer Vision
Public Types | Static Public Member Functions | List of all members
cv::xfeatures2d::FREAK Class Reference

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

#include <opencv2/xfeatures2d.hpp>

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

Public Types

enum  {
  NB_SCALES = 64,
  NB_PAIRS = 512,
  NB_ORIENPAIRS = 45
}
 

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...
 

Additional Inherited Members

- 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...
 
virtual String getDefaultName () const CV_OVERRIDE
 
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
 
- 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 [7] .

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 Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
NB_SCALES 
NB_PAIRS 
NB_ORIENPAIRS 

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,

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