# cv::DescriptorMatcher Class Reference

`#include <features2d.hpp>`

Inheritance diagram for cv::DescriptorMatcher:

List of all members.

## Classes

class | DescriptorCollection

## Public Member Functions

virtual void | add (const vector< Mat > &descriptors)
virtual void | clear ()
virtual Ptr< DescriptorMatcher > | clone (bool emptyTrainData=false) const =0
bool | empty () const
const vector< Mat > & | getTrainDescriptors () const
virtual bool | isMaskSupported () const =0
void | knnMatch (const Mat &queryDescriptors, const Mat &trainDescriptors, vector< vector< DMatch > > &matches, int k, const Mat &mask=Mat(), bool compactResult=false) const
void | knnMatch (const Mat &queryDescriptors, vector< vector< DMatch > > &matches, int k, const vector< Mat > &masks=vector< Mat >(), bool compactResult=false)
void | match (const Mat &queryDescriptors, const Mat &trainDescriptors, vector< DMatch > &matches, const Mat &mask=Mat()) const
void | match (const Mat &queryDescriptors, vector< DMatch > &matches, const vector< Mat > &masks=vector< Mat >())
void | radiusMatch (const Mat &queryDescriptors, const Mat &trainDescriptors, vector< vector< DMatch > > &matches, float maxDistance, const Mat &mask=Mat(), bool compactResult=false) const
void | radiusMatch (const Mat &queryDescriptors, vector< vector< DMatch > > &matches, float maxDistance, const vector< Mat > &masks=vector< Mat >(), bool compactResult=false)
virtual void | read (const FileNode &)
virtual void | train ()
virtual void | write (FileStorage &) const
virtual | ~DescriptorMatcher ()

## Static Public Member Functions

static Ptr< DescriptorMatcher > | create (const string &descriptorMatcherType)

## Protected Member Functions

void | checkMasks (const vector< Mat > &masks, int queryDescriptorsCount) const
virtual void | knnMatchImpl (const Mat &queryDescriptors, vector< vector< DMatch > > &matches, int k, const vector< Mat > &masks=vector< Mat >(), bool compactResult=false)=0
virtual void | radiusMatchImpl (const Mat &queryDescriptors, vector< vector< DMatch > > &matches, float maxDistance, const vector< Mat > &masks=vector< Mat >(), bool compactResult=false)=0

## Static Protected Member Functions

static Mat | clone_op (Mat m)
static bool | isMaskedOut (const vector< Mat > &masks, int queryIdx)
static bool | isPossibleMatch (const Mat &mask, int queryIdx, int trainIdx)

## Protected Attributes

vector< Mat > | trainDescCollection

## Constructor & Destructor Documentation

virtual cv::DescriptorMatcher::~DescriptorMatcher | ( | ) | `[virtual]`

## Member Function Documentation

virtual void cv::DescriptorMatcher::add | ( | const vector< Mat > & | descriptors ) | `[virtual]`

Reimplemented in cv::FlannBasedMatcher.

void cv::DescriptorMatcher::checkMasks | ( | const vector< Mat > & | masks,
|  | int | queryDescriptorsCount
| ) |  | const`[protected]`

virtual void cv::DescriptorMatcher::clear | ( | ) | `[virtual]`

Reimplemented in cv::FlannBasedMatcher.

virtual Ptr<DescriptorMatcher> cv::DescriptorMatcher::clone | ( | bool | emptyTrainData = `false` ) | const`[pure virtual]`

Implemented in cv::BruteForceMatcher< Distance >, and cv::FlannBasedMatcher.

static Mat cv::DescriptorMatcher::clone_op | ( | Mat | m ) | `[inline, static, protected]`

static Ptr<DescriptorMatcher> cv::DescriptorMatcher::create | ( | const string & | descriptorMatcherType ) | `[static]`

bool cv::DescriptorMatcher::empty | ( | ) | const

const vector<Mat>& cv::DescriptorMatcher::getTrainDescriptors | ( | ) | const

static bool cv::DescriptorMatcher::isMaskedOut | ( | const vector< Mat > & | masks,
|  | int | queryIdx
| ) |  | `[static, protected]`

virtual bool cv::DescriptorMatcher::isMaskSupported | ( | ) | const`[pure virtual]`

Implemented in cv::BruteForceMatcher< Distance >, and cv::FlannBasedMatcher.

static bool cv::DescriptorMatcher::isPossibleMatch | ( | const Mat & | mask,
|  | int | queryIdx,
|  | int | trainIdx
| ) |  | `[static, protected]`

void cv::DescriptorMatcher::knnMatch | ( | const Mat & | queryDescriptors,
|  | const Mat & | trainDescriptors,
|  | vector< vector< DMatch > > & | matches,
|  | int | k,
|  | const Mat & | mask = `Mat()`,
|  | bool | compactResult = `false`
| ) |  | const

void cv::DescriptorMatcher::knnMatch | ( | const Mat & | queryDescriptors,
|  | vector< vector< DMatch > > & | matches,
|  | int | k,
|  | const vector< Mat > & | masks = `vector< Mat >()`,
|  | bool | compactResult = `false`
| ) |  |

virtual void cv::DescriptorMatcher::knnMatchImpl | ( | const Mat & | queryDescriptors,
|  | vector< vector< DMatch > > & | matches,
|  | int | k,
|  | const vector< Mat > & | masks = `vector< Mat >()`,
|  | bool | compactResult = `false`
| ) |  | `[protected, pure virtual]`

Implemented in cv::BruteForceMatcher< Distance >, cv::FlannBasedMatcher, and cv::BruteForceMatcher< Distance >.

void cv::DescriptorMatcher::match | ( | const Mat & | queryDescriptors,
|  | const Mat & | trainDescriptors,
|  | vector< DMatch > & | matches,
|  | const Mat & | mask = `Mat()`
| ) |  | const

void cv::DescriptorMatcher::match | ( | const Mat & | queryDescriptors,
|  | vector< DMatch > & | matches,
|  | const vector< Mat > & | masks = `vector< Mat >()`
| ) |  |

void cv::DescriptorMatcher::radiusMatch | ( | const Mat & | queryDescriptors,
|  | const Mat & | trainDescriptors,
|  | vector< vector< DMatch > > & | matches,
|  | float | maxDistance,
|  | const Mat & | mask = `Mat()`,
|  | bool | compactResult = `false`
| ) |  | const

void cv::DescriptorMatcher::radiusMatch | ( | const Mat & | queryDescriptors,
|  | vector< vector< DMatch > > & | matches,
|  | float | maxDistance,
|  | const vector< Mat > & | masks = `vector< Mat >()`,
|  | bool | compactResult = `false`
| ) |  |

virtual void cv::DescriptorMatcher::radiusMatchImpl | ( | const Mat & | queryDescriptors,
|  | vector< vector< DMatch > > & | matches,
|  | float | maxDistance,
|  | const vector< Mat > & | masks = `vector< Mat >()`,
|  | bool | compactResult = `false`
| ) |  | `[protected, pure virtual]`

Implemented in cv::BruteForceMatcher< Distance >, cv::FlannBasedMatcher, and cv::BruteForceMatcher< Distance >.

virtual void cv::DescriptorMatcher::read | ( | const FileNode & | ) | `[virtual]`

virtual void cv::DescriptorMatcher::train | ( | ) | `[virtual]`

Reimplemented in cv::FlannBasedMatcher.

virtual void cv::DescriptorMatcher::write | ( | FileStorage & | ) | const`[virtual]`

## Member Data Documentation

vector<Mat> cv::DescriptorMatcher::trainDescCollection`[protected]`

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

- /usr/obj/OpenCV-2.2.0/OpenCV-2.2.0/modules/features2d/include/opencv2/features2d/features2d.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines