OpenCV: cv::Feature2D Class Reference

| OpenCV 3.4.2 Open Source Computer Vision

Public Member Functions | List of all members
cv::Feature2D Class Reference
2D Features Framework

Abstract base class for 2D image feature detectors and descriptor extractors. More...

`#include "features2d.hpp"`

Inheritance diagram for cv::Feature2D:

## Public Member Functions
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 (const Ptr< FileStorage > &fs, const String &name=String()) 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 (const Ptr< FileStorage > &fs, const String &name=String()) const
| simplified API for language bindings This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...

## Additional Inherited Members
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...
Protected Member Functions inherited from cv::Algorithm
void | writeFormat (FileStorage &fs) const

## Detailed Description

Abstract base class for 2D image feature detectors and descriptor extractors.

## Constructor & Destructor Documentation

## ◆ ~Feature2D()

virtual cv::Feature2D::~Feature2D | ( |  | ) |
| virtual

## Member Function Documentation

## ◆ compute() [1/2]

virtual void cv::Feature2D::compute | ( | InputArray | image,
|  | std::vector< KeyPoint > & | keypoints,
|  | OutputArray | descriptors
| ) |  |
| virtual

Computes the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant).

Parameters

  image | Image.
  keypoints | Input collection of keypoints. Keypoints for which a descriptor cannot be computed are removed. Sometimes new keypoints can be added, for example: SIFT duplicates keypoint with several dominant orientations (for each orientation).
  descriptors | Computed descriptors. In the second variant of the method descriptors[i] are descriptors computed for a keypoints[i]. Row j is the keypoints (or keypoints[i]) is the descriptor for keypoint j-th keypoint.

## ◆ compute() [2/2]

virtual void cv::Feature2D::compute | ( | InputArrayOfArrays | images,
|  | std::vector< std::vector< KeyPoint > > & | keypoints,
|  | OutputArrayOfArrays | descriptors
| ) |  |
| virtual

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters

  images | Image set.
  keypoints | Input collection of keypoints. Keypoints for which a descriptor cannot be computed are removed. Sometimes new keypoints can be added, for example: SIFT duplicates keypoint with several dominant orientations (for each orientation).
  descriptors | Computed descriptors. In the second variant of the method descriptors[i] are descriptors computed for a keypoints[i]. Row j is the keypoints (or keypoints[i]) is the descriptor for keypoint j-th keypoint.

## ◆ defaultNorm()

virtual int cv::Feature2D::defaultNorm | ( |  | ) | const
| virtual

## ◆ descriptorSize()

virtual int cv::Feature2D::descriptorSize | ( |  | ) | const
| virtual

## ◆ descriptorType()

virtual int cv::Feature2D::descriptorType | ( |  | ) | const
| virtual

## ◆ detect() [1/2]

virtual void cv::Feature2D::detect | ( | InputArray | image,
|  | std::vector< KeyPoint > & | keypoints,
|  | InputArray | mask = `noArray()`
| ) |  |
| virtual

Detects keypoints in an image (first variant) or image set (second variant).

Parameters

  image | Image.
  keypoints | The detected keypoints. In the second variant of the method keypoints[i] is a set of keypoints detected in images[i] .
  mask | Mask specifying where to look for keypoints (optional). It must be a 8-bit integer matrix with non-zero values in the region of interest.

## ◆ detect() [2/2]

virtual void cv::Feature2D::detect | ( | InputArrayOfArrays | images,
|  | std::vector< std::vector< KeyPoint > > & | keypoints,
|  | InputArrayOfArrays | masks = `noArray()`
| ) |  |
| virtual

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters

  images | Image set.
  keypoints | The detected keypoints. In the second variant of the method keypoints[i] is a set of keypoints detected in images[i] .
  masks | Masks for each input image specifying where to look for keypoints (optional). masks[i] is a mask for images[i].

## ◆ detectAndCompute()

virtual void cv::Feature2D::detectAndCompute | ( | InputArray | image,
|  | InputArray | mask,
|  | std::vector< KeyPoint > & | keypoints,
|  | OutputArray | descriptors,
|  | bool | useProvidedKeypoints = `false`
| ) |  |
| virtual

Detects keypoints and computes the descriptors

## ◆ empty()

virtual bool cv::Feature2D::empty | ( |  | ) | const
| virtual

Return true if detector object is empty.

Reimplemented from cv::Algorithm.

## ◆ getDefaultName()

virtual String cv::Feature2D::getDefaultName | ( |  | ) | const
| virtual

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

Reimplemented in cv::AKAZE, cv::KAZE, cv::SimpleBlobDetector, cv::GFTTDetector, cv::AgastFeatureDetector, cv::FastFeatureDetector, cv::MSER, cv::ORB, and cv::BRISK.

## ◆ read() [1/2]

void cv::Feature2D::read | ( | const String & | fileName | ) |

## ◆ read() [2/2]

virtual void cv::Feature2D::read | ( | const FileNode & | fn | ) |
| virtual

Reads algorithm parameters from a file storage.

Reimplemented from cv::Algorithm.

## ◆ write() [1/3]

void cv::Feature2D::write | ( | const String & | fileName | ) | const

## ◆ write() [2/3]

virtual void cv::Feature2D::write | ( | FileStorage & | fs | ) | const
| virtual

Stores algorithm parameters in a file storage.

Reimplemented from cv::Algorithm.

## ◆ write() [3/3]

void cv::Feature2D::write | ( | const Ptr< FileStorage > & | fs,
|  | const String & | name = `String()`
| ) |  | const
| inline

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

- features2d/include/opencv2/features2d.hpp