Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
cv::DescriptorMatcher Class Referenceabstract

#include <features2d.hpp>

Inherits cv::Algorithm.

Inherited by cv::BFMatcher, and cv::FlannBasedMatcher.

Classes

class  DescriptorCollection
 

Public Types

typedef Algorithm *(* Constructor )(void)
 
typedef int(Algorithm::* Getter )() const
 
typedef void(Algorithm::* Setter )(int)
 

Public Member Functions

virtual ~DescriptorMatcher ()
 
virtual CV_WRAP void add (const vector< Mat > &descriptors)
 
CV_WRAP const vector< Mat > & getTrainDescriptors () const
 
virtual CV_WRAP void clear ()
 
virtual CV_WRAP bool empty () const
 
virtual CV_WRAP bool isMaskSupported () const =0
 
virtual CV_WRAP void train ()
 
CV_WRAP void match (const Mat &queryDescriptors, const Mat &trainDescriptors, CV_OUT vector< DMatch > &matches, const Mat &mask=Mat()) const
 
CV_WRAP void knnMatch (const Mat &queryDescriptors, const Mat &trainDescriptors, CV_OUT vector< vector< DMatch > > &matches, int k, const Mat &mask=Mat(), bool compactResult=false) const
 
void radiusMatch (const Mat &queryDescriptors, const Mat &trainDescriptors, vector< vector< DMatch > > &matches, float maxDistance, const Mat &mask=Mat(), bool compactResult=false) const
 
CV_WRAP void match (const Mat &queryDescriptors, CV_OUT vector< DMatch > &matches, const vector< Mat > &masks=vector< Mat >())
 
CV_WRAP void knnMatch (const Mat &queryDescriptors, CV_OUT vector< vector< DMatch > > &matches, int k, const vector< Mat > &masks=vector< Mat >(), bool compactResult=false)
 
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 write (FileStorage &) const
 
virtual Ptr< DescriptorMatcherclone (bool emptyTrainData=false) const =0
 
string name () const
 
template<typename _Tp >
ParamType< _Tp >::member_type get (const string &name) const
 
template<typename _Tp >
ParamType< _Tp >::member_type get (const char *name) const
 
CV_WRAP int getInt (const string &name) const
 
CV_WRAP double getDouble (const string &name) const
 
CV_WRAP bool getBool (const string &name) const
 
CV_WRAP string getString (const string &name) const
 
CV_WRAP Mat getMat (const string &name) const
 
CV_WRAP vector< MatgetMatVector (const string &name) const
 
CV_WRAP Ptr< AlgorithmgetAlgorithm (const string &name) const
 
void set (const string &name, int value)
 
void set (const string &name, double value)
 
void set (const string &name, bool value)
 
void set (const string &name, const string &value)
 
void set (const string &name, const Mat &value)
 
void set (const string &name, const vector< Mat > &value)
 
void set (const string &name, const Ptr< Algorithm > &value)
 
template<typename _Tp >
void set (const string &name, const Ptr< _Tp > &value)
 
void set (const char *name, int value)
 
void set (const char *name, double value)
 
void set (const char *name, bool value)
 
void set (const char *name, const string &value)
 
void set (const char *name, const Mat &value)
 
void set (const char *name, const vector< Mat > &value)
 
void set (const char *name, const Ptr< Algorithm > &value)
 
template<typename _Tp >
void set (const char *name, const Ptr< _Tp > &value)
 
CV_WRAP void setInt (const string &name, int value)
 
void setInt (const char *name, int value)
 
CV_WRAP void setDouble (const string &name, double value)
 
void setDouble (const char *name, double value)
 
CV_WRAP void setBool (const string &name, bool value)
 
void setBool (const char *name, bool value)
 
CV_WRAP void setString (const string &name, const string &value)
 
void setString (const char *name, const string &value)
 
CV_WRAP void setMat (const string &name, const Mat &value)
 
void setMat (const char *name, const Mat &value)
 
CV_WRAP void setMatVector (const string &name, const vector< Mat > &value)
 
void setMatVector (const char *name, const vector< Mat > &value)
 
CV_WRAP void setAlgorithm (const string &name, const Ptr< Algorithm > &value)
 
template<typename _Tp >
void setAlgorithm (const string &name, const Ptr< _Tp > &value)
 
void setAlgorithm (const char *name, const Ptr< Algorithm > &value)
 
template<typename _Tp >
void setAlgorithm (const char *name, const Ptr< _Tp > &value)
 
CV_WRAP string paramHelp (const string &name) const
 
int paramType (const char *name) const
 
CV_WRAP int paramType (const string &name) const
 
CV_WRAP void getParams (CV_OUT vector< string > &names) const
 
virtual AlgorithmInfoinfo () const
 

Static Public Member Functions

static CV_WRAP Ptr
< DescriptorMatcher
create (const string &descriptorMatcherType)
 
static CV_WRAP void getList (CV_OUT vector< string > &algorithms)
 
static CV_WRAP Ptr< Algorithm_create (const string &name)
 

Protected Member Functions

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
 
void checkMasks (const vector< Mat > &masks, int queryDescriptorsCount) const
 

Static Protected Member Functions

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

Protected Attributes

vector< MattrainDescCollection
 

Member Typedef Documentation

typedef Algorithm*(* cv::Algorithm::Constructor)(void)
inherited
typedef int(Algorithm::* cv::Algorithm::Getter)() const
inherited
typedef void(Algorithm::* cv::Algorithm::Setter)(int)
inherited

Constructor & Destructor Documentation

virtual cv::DescriptorMatcher::~DescriptorMatcher ( )
virtual

Member Function Documentation

virtual CV_WRAP void cv::DescriptorMatcher::add ( const vector< Mat > &  descriptors)
virtual

Reimplemented in cv::FlannBasedMatcher.

CV_WRAP const vector<Mat>& cv::DescriptorMatcher::getTrainDescriptors ( ) const
virtual CV_WRAP void cv::DescriptorMatcher::clear ( )
virtual

Reimplemented in cv::FlannBasedMatcher.

virtual CV_WRAP bool cv::DescriptorMatcher::empty ( ) const
virtual
virtual CV_WRAP bool cv::DescriptorMatcher::isMaskSupported ( ) const
pure virtual

Implemented in cv::FlannBasedMatcher, and cv::BFMatcher.

virtual CV_WRAP void cv::DescriptorMatcher::train ( )
virtual

Reimplemented in cv::FlannBasedMatcher.

CV_WRAP void cv::DescriptorMatcher::match ( const Mat queryDescriptors,
const Mat trainDescriptors,
CV_OUT vector< DMatch > &  matches,
const Mat mask = Mat() 
) const
CV_WRAP void cv::DescriptorMatcher::knnMatch ( const Mat queryDescriptors,
const Mat trainDescriptors,
CV_OUT vector< vector< DMatch > > &  matches,
int  k,
const Mat mask = Mat(),
bool  compactResult = false 
) const
void cv::DescriptorMatcher::radiusMatch ( const Mat queryDescriptors,
const Mat trainDescriptors,
vector< vector< DMatch > > &  matches,
float  maxDistance,
const Mat mask = Mat(),
bool  compactResult = false 
) const
CV_WRAP void cv::DescriptorMatcher::match ( const Mat queryDescriptors,
CV_OUT vector< DMatch > &  matches,
const vector< Mat > &  masks = vector< Mat >() 
)
CV_WRAP void cv::DescriptorMatcher::knnMatch ( const Mat queryDescriptors,
CV_OUT vector< vector< DMatch > > &  matches,
int  k,
const vector< Mat > &  masks = vector< Mat >(),
bool  compactResult = false 
)
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::read ( const FileNode )
virtual

Reimplemented from cv::Algorithm.

Reimplemented in cv::FlannBasedMatcher.

virtual void cv::DescriptorMatcher::write ( FileStorage ) const
virtual

Reimplemented from cv::Algorithm.

Reimplemented in cv::FlannBasedMatcher.

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

Implemented in cv::FlannBasedMatcher, and cv::BFMatcher.

static CV_WRAP Ptr<DescriptorMatcher> cv::DescriptorMatcher::create ( const string descriptorMatcherType)
static
virtual void cv::DescriptorMatcher::knnMatchImpl ( const Mat queryDescriptors,
vector< vector< DMatch > > &  matches,
int  k,
const vector< Mat > &  masks = vector< Mat >(),
bool  compactResult = false 
)
protectedpure virtual

Implemented in cv::FlannBasedMatcher, and cv::BFMatcher.

virtual void cv::DescriptorMatcher::radiusMatchImpl ( const Mat queryDescriptors,
vector< vector< DMatch > > &  matches,
float  maxDistance,
const vector< Mat > &  masks = vector< Mat >(),
bool  compactResult = false 
)
protectedpure virtual

Implemented in cv::FlannBasedMatcher, and cv::BFMatcher.

static bool cv::DescriptorMatcher::isPossibleMatch ( const Mat mask,
int  queryIdx,
int  trainIdx 
)
staticprotected
static bool cv::DescriptorMatcher::isMaskedOut ( const vector< Mat > &  masks,
int  queryIdx 
)
staticprotected
static Mat cv::DescriptorMatcher::clone_op ( Mat  m)
staticprotected
void cv::DescriptorMatcher::checkMasks ( const vector< Mat > &  masks,
int  queryDescriptorsCount 
) const
protected
string cv::Algorithm::name ( ) const
inherited
template<typename _Tp >
ParamType< _Tp >::member_type cv::Algorithm::get ( const string name) const
inherited
template<typename _Tp >
ParamType< _Tp >::member_type cv::Algorithm::get ( const char *  name) const
inherited
CV_WRAP int cv::Algorithm::getInt ( const string name) const
inherited
CV_WRAP double cv::Algorithm::getDouble ( const string name) const
inherited
CV_WRAP bool cv::Algorithm::getBool ( const string name) const
inherited
CV_WRAP string cv::Algorithm::getString ( const string name) const
inherited
CV_WRAP Mat cv::Algorithm::getMat ( const string name) const
inherited
CV_WRAP vector<Mat> cv::Algorithm::getMatVector ( const string name) const
inherited
CV_WRAP Ptr<Algorithm> cv::Algorithm::getAlgorithm ( const string name) const
inherited
void cv::Algorithm::set ( const string name,
int  value 
)
inherited
void cv::Algorithm::set ( const string name,
double  value 
)
inherited
void cv::Algorithm::set ( const string name,
bool  value 
)
inherited
void cv::Algorithm::set ( const string name,
const string value 
)
inherited
void cv::Algorithm::set ( const string name,
const Mat value 
)
inherited
void cv::Algorithm::set ( const string name,
const vector< Mat > &  value 
)
inherited
void cv::Algorithm::set ( const string name,
const Ptr< Algorithm > &  value 
)
inherited
template<typename _Tp >
void cv::Algorithm::set ( const string name,
const Ptr< _Tp > &  value 
)
inherited
void cv::Algorithm::set ( const char *  name,
int  value 
)
inherited
void cv::Algorithm::set ( const char *  name,
double  value 
)
inherited
void cv::Algorithm::set ( const char *  name,
bool  value 
)
inherited
void cv::Algorithm::set ( const char *  name,
const string value 
)
inherited
void cv::Algorithm::set ( const char *  name,
const Mat value 
)
inherited
void cv::Algorithm::set ( const char *  name,
const vector< Mat > &  value 
)
inherited
void cv::Algorithm::set ( const char *  name,
const Ptr< Algorithm > &  value 
)
inherited
template<typename _Tp >
void cv::Algorithm::set ( const char *  name,
const Ptr< _Tp > &  value 
)
inherited
CV_WRAP void cv::Algorithm::setInt ( const string name,
int  value 
)
inherited
void cv::Algorithm::setInt ( const char *  name,
int  value 
)
inherited
CV_WRAP void cv::Algorithm::setDouble ( const string name,
double  value 
)
inherited
void cv::Algorithm::setDouble ( const char *  name,
double  value 
)
inherited
CV_WRAP void cv::Algorithm::setBool ( const string name,
bool  value 
)
inherited
void cv::Algorithm::setBool ( const char *  name,
bool  value 
)
inherited
CV_WRAP void cv::Algorithm::setString ( const string name,
const string value 
)
inherited
void cv::Algorithm::setString ( const char *  name,
const string value 
)
inherited
CV_WRAP void cv::Algorithm::setMat ( const string name,
const Mat value 
)
inherited
void cv::Algorithm::setMat ( const char *  name,
const Mat value 
)
inherited
CV_WRAP void cv::Algorithm::setMatVector ( const string name,
const vector< Mat > &  value 
)
inherited
void cv::Algorithm::setMatVector ( const char *  name,
const vector< Mat > &  value 
)
inherited
CV_WRAP void cv::Algorithm::setAlgorithm ( const string name,
const Ptr< Algorithm > &  value 
)
inherited
template<typename _Tp >
void cv::Algorithm::setAlgorithm ( const string name,
const Ptr< _Tp > &  value 
)
inherited
void cv::Algorithm::setAlgorithm ( const char *  name,
const Ptr< Algorithm > &  value 
)
inherited
template<typename _Tp >
void cv::Algorithm::setAlgorithm ( const char *  name,
const Ptr< _Tp > &  value 
)
inherited
CV_WRAP string cv::Algorithm::paramHelp ( const string name) const
inherited
int cv::Algorithm::paramType ( const char *  name) const
inherited
CV_WRAP int cv::Algorithm::paramType ( const string name) const
inherited
CV_WRAP void cv::Algorithm::getParams ( CV_OUT vector< string > &  names) const
inherited
static CV_WRAP void cv::Algorithm::getList ( CV_OUT vector< string > &  algorithms)
staticinherited
static CV_WRAP Ptr<Algorithm> cv::Algorithm::_create ( const string name)
staticinherited
virtual AlgorithmInfo* cv::Algorithm::info ( ) const
virtualinherited

Member Data Documentation

vector<Mat> cv::DescriptorMatcher::trainDescCollection
protected

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