OpenCV  4.8.0-dev
Open Source Computer Vision
Public Member Functions | Static Public Member Functions | List of all members
cv::xfeatures2d::MSDDetector Class Referenceabstract

Class implementing the MSD (Maximal Self-Dissimilarity) keypoint detector, described in [266]. More...

#include <opencv2/xfeatures2d.hpp>

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

Public Member Functions

virtual bool getComputeOrientation () const =0
String getDefaultName () const CV_OVERRIDE
virtual int getKNN () const =0
virtual int getNmsRadius () const =0
virtual int getNmsScaleRadius () const =0
virtual int getNScales () const =0
virtual int getPatchRadius () const =0
virtual float getScaleFactor () const =0
virtual int getSearchAreaRadius () const =0
virtual float getThSaliency () const =0
virtual void setComputeOrientation (bool compute_orientation)=0
virtual void setKNN (int kNN)=0
virtual void setNmsRadius (int nms_radius)=0
virtual void setNmsScaleRadius (int nms_scale_radius)=0
virtual void setNScales (int use_orientation)=0
virtual void setPatchRadius (int patch_radius)=0
virtual void setScaleFactor (float scale_factor)=0
virtual void setSearchAreaRadius (int use_orientation)=0
virtual void setThSaliency (float th_saliency)=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< MSDDetectorcreate (int m_patch_radius=3, int m_search_area_radius=5, int m_nms_radius=5, int m_nms_scale_radius=0, float m_th_saliency=250.0f, int m_kNN=4, float m_scale_factor=1.25f, int m_n_scales=-1, bool m_compute_orientation=false)
- 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

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

Detailed Description

Class implementing the MSD (Maximal Self-Dissimilarity) keypoint detector, described in [266].

The algorithm implements a novel interest point detector stemming from the intuition that image patches which are highly dissimilar over a relatively large extent of their surroundings hold the property of being repeatable and distinctive. This concept of "contextual self-dissimilarity" reverses the key paradigm of recent successful techniques such as the Local Self-Similarity descriptor and the Non-Local Means filter, which build upon the presence of similar - rather than dissimilar - patches. Moreover, it extends to contextual information the local self-dissimilarity notion embedded in established detectors of corner-like interest points, thereby achieving enhanced repeatability, distinctiveness and localization accuracy.

Member Function Documentation

◆ create()

static Ptr<MSDDetector> cv::xfeatures2d::MSDDetector::create ( int  m_patch_radius = 3,
int  m_search_area_radius = 5,
int  m_nms_radius = 5,
int  m_nms_scale_radius = 0,
float  m_th_saliency = 250.0f,
int  m_kNN = 4,
float  m_scale_factor = 1.25f,
int  m_n_scales = -1,
bool  m_compute_orientation = false 
cv.xfeatures2d.MSDDetector.create([, m_patch_radius[, m_search_area_radius[, m_nms_radius[, m_nms_scale_radius[, m_th_saliency[, m_kNN[, m_scale_factor[, m_n_scales[, m_compute_orientation]]]]]]]]]) -> retval
cv.xfeatures2d.MSDDetector_create([, m_patch_radius[, m_search_area_radius[, m_nms_radius[, m_nms_scale_radius[, m_th_saliency[, m_kNN[, m_scale_factor[, m_n_scales[, m_compute_orientation]]]]]]]]]) -> retval

◆ getComputeOrientation()

virtual bool cv::xfeatures2d::MSDDetector::getComputeOrientation ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getComputeOrientation() -> retval

◆ getDefaultName()

String cv::xfeatures2d::MSDDetector::getDefaultName ( ) const
cv.xfeatures2d.MSDDetector.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.

◆ getKNN()

virtual int cv::xfeatures2d::MSDDetector::getKNN ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getKNN() -> retval

◆ getNmsRadius()

virtual int cv::xfeatures2d::MSDDetector::getNmsRadius ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getNmsRadius() -> retval

◆ getNmsScaleRadius()

virtual int cv::xfeatures2d::MSDDetector::getNmsScaleRadius ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getNmsScaleRadius() -> retval

◆ getNScales()

virtual int cv::xfeatures2d::MSDDetector::getNScales ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getNScales() -> retval

◆ getPatchRadius()

virtual int cv::xfeatures2d::MSDDetector::getPatchRadius ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getPatchRadius() -> retval

◆ getScaleFactor()

virtual float cv::xfeatures2d::MSDDetector::getScaleFactor ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getScaleFactor() -> retval

◆ getSearchAreaRadius()

virtual int cv::xfeatures2d::MSDDetector::getSearchAreaRadius ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getSearchAreaRadius() -> retval

◆ getThSaliency()

virtual float cv::xfeatures2d::MSDDetector::getThSaliency ( ) const
pure virtual
cv.xfeatures2d.MSDDetector.getThSaliency() -> retval

◆ setComputeOrientation()

virtual void cv::xfeatures2d::MSDDetector::setComputeOrientation ( bool  compute_orientation)
pure virtual
cv.xfeatures2d.MSDDetector.setComputeOrientation(compute_orientation) -> None

◆ setKNN()

virtual void cv::xfeatures2d::MSDDetector::setKNN ( int  kNN)
pure virtual
cv.xfeatures2d.MSDDetector.setKNN(kNN) -> None

◆ setNmsRadius()

virtual void cv::xfeatures2d::MSDDetector::setNmsRadius ( int  nms_radius)
pure virtual
cv.xfeatures2d.MSDDetector.setNmsRadius(nms_radius) -> None

◆ setNmsScaleRadius()

virtual void cv::xfeatures2d::MSDDetector::setNmsScaleRadius ( int  nms_scale_radius)
pure virtual
cv.xfeatures2d.MSDDetector.setNmsScaleRadius(nms_scale_radius) -> None

◆ setNScales()

virtual void cv::xfeatures2d::MSDDetector::setNScales ( int  use_orientation)
pure virtual
cv.xfeatures2d.MSDDetector.setNScales(use_orientation) -> None

◆ setPatchRadius()

virtual void cv::xfeatures2d::MSDDetector::setPatchRadius ( int  patch_radius)
pure virtual
cv.xfeatures2d.MSDDetector.setPatchRadius(patch_radius) -> None

◆ setScaleFactor()

virtual void cv::xfeatures2d::MSDDetector::setScaleFactor ( float  scale_factor)
pure virtual
cv.xfeatures2d.MSDDetector.setScaleFactor(scale_factor) -> None

◆ setSearchAreaRadius()

virtual void cv::xfeatures2d::MSDDetector::setSearchAreaRadius ( int  use_orientation)
pure virtual
cv.xfeatures2d.MSDDetector.setSearchAreaRadius(use_orientation) -> None

◆ setThSaliency()

virtual void cv::xfeatures2d::MSDDetector::setThSaliency ( float  th_saliency)
pure virtual
cv.xfeatures2d.MSDDetector.setThSaliency(th_saliency) -> None

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