OpenCV  4.2.0
Open Source Computer Vision
Public Types | Public Member Functions | Static Public Member Functions | List of all members
cv::xfeatures2d::DAISY Class Referenceabstract

Class implementing DAISY descriptor, described in [226]. More...

#include <opencv2/xfeatures2d.hpp>

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

Public Types

enum  NormalizationType {
  NRM_NONE = 100,
  NRM_PARTIAL = 101,
  NRM_FULL = 102,
  NRM_SIFT = 103
}
 

Public Member Functions

virtual void compute (InputArray image, std::vector< KeyPoint > &keypoints, OutputArray descriptors) CV_OVERRIDE=0
 
virtual void compute (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, OutputArrayOfArrays descriptors) CV_OVERRIDE
 
virtual void compute (InputArray image, Rect roi, OutputArray descriptors)=0
 
virtual void compute (InputArray image, OutputArray descriptors)=0
 
virtual void GetDescriptor (double y, double x, int orientation, float *descriptor) const =0
 
virtual bool GetDescriptor (double y, double x, int orientation, float *descriptor, double *H) const =0
 
virtual void GetUnnormalizedDescriptor (double y, double x, int orientation, float *descriptor) const =0
 
virtual bool GetUnnormalizedDescriptor (double y, double x, int orientation, float *descriptor, double *H) const =0
 
- Public Member Functions inherited from cv::Feature2D
virtual ~Feature2D ()
 
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...
 

Static Public Member Functions

static Ptr< DAISYcreate (float radius=15, int q_radius=3, int q_theta=8, int q_hist=8, DAISY::NormalizationType norm=DAISY::NRM_NONE, InputArray H=noArray(), bool interpolation=true, bool use_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 DAISY descriptor, described in [226].

Parameters
radiusradius of the descriptor at the initial scale
q_radiusamount of radial range division quantity
q_thetaamount of angular range division quantity
q_histamount of gradient orientations range division quantity
normchoose descriptors normalization type, where DAISY::NRM_NONE will not do any normalization (default), DAISY::NRM_PARTIAL mean that histograms are normalized independently for L2 norm equal to 1.0, DAISY::NRM_FULL mean that descriptors are normalized for L2 norm equal to 1.0, DAISY::NRM_SIFT mean that descriptors are normalized for L2 norm equal to 1.0 but no individual one is bigger than 0.154 as in SIFT
Hoptional 3x3 homography matrix used to warp the grid of daisy but sampling keypoints remains unwarped on image
interpolationswitch to disable interpolation for speed improvement at minor quality loss
use_orientationsample patterns using keypoints orientation, disabled by default.

Member Enumeration Documentation

◆ NormalizationType

Enumerator
NRM_NONE 
NRM_PARTIAL 
NRM_FULL 
NRM_SIFT 

Member Function Documentation

◆ compute() [1/4]

virtual void cv::xfeatures2d::DAISY::compute ( InputArray  image,
std::vector< KeyPoint > &  keypoints,
OutputArray  descriptors 
)
pure virtual

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

Parameters
imageimage to extract descriptors
keypointsof interest within image
descriptorsresulted descriptors array

Reimplemented from cv::Feature2D.

◆ compute() [2/4]

virtual void cv::xfeatures2d::DAISY::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
imagesImage set.
keypointsInput 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).
descriptorsComputed 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.

Reimplemented from cv::Feature2D.

◆ compute() [3/4]

virtual void cv::xfeatures2d::DAISY::compute ( InputArray  image,
Rect  roi,
OutputArray  descriptors 
)
pure virtual

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

Parameters
imageimage to extract descriptors
roiregion of interest within image
descriptorsresulted descriptors array for roi image pixels

◆ compute() [4/4]

virtual void cv::xfeatures2d::DAISY::compute ( InputArray  image,
OutputArray  descriptors 
)
pure virtual

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

Parameters
imageimage to extract descriptors
descriptorsresulted descriptors array for all image pixels

◆ create()

static Ptr<DAISY> cv::xfeatures2d::DAISY::create ( float  radius = 15,
int  q_radius = 3,
int  q_theta = 8,
int  q_hist = 8,
DAISY::NormalizationType  norm = DAISY::NRM_NONE,
InputArray  H = noArray(),
bool  interpolation = true,
bool  use_orientation = false 
)
static
Python:
retval=cv.xfeatures2d.DAISY_create([, radius[, q_radius[, q_theta[, q_hist[, norm[, H[, interpolation[, use_orientation]]]]]]]])

◆ GetDescriptor() [1/2]

virtual void cv::xfeatures2d::DAISY::GetDescriptor ( double  y,
double  x,
int  orientation,
float *  descriptor 
) const
pure virtual
Parameters
yposition y on image
xposition x on image
orientationorientation on image (0->360)
descriptorsupplied array for descriptor storage

◆ GetDescriptor() [2/2]

virtual bool cv::xfeatures2d::DAISY::GetDescriptor ( double  y,
double  x,
int  orientation,
float *  descriptor,
double *  H 
) const
pure virtual
Parameters
yposition y on image
xposition x on image
orientationorientation on image (0->360)
descriptorsupplied array for descriptor storage
Hhomography matrix for warped grid

◆ GetUnnormalizedDescriptor() [1/2]

virtual void cv::xfeatures2d::DAISY::GetUnnormalizedDescriptor ( double  y,
double  x,
int  orientation,
float *  descriptor 
) const
pure virtual
Parameters
yposition y on image
xposition x on image
orientationorientation on image (0->360)
descriptorsupplied array for descriptor storage

◆ GetUnnormalizedDescriptor() [2/2]

virtual bool cv::xfeatures2d::DAISY::GetUnnormalizedDescriptor ( double  y,
double  x,
int  orientation,
float *  descriptor,
double *  H 
) const
pure virtual
Parameters
yposition y on image
xposition x on image
orientationorientation on image (0->360)
descriptorsupplied array for descriptor storage
Hhomography matrix for warped grid

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