The Keypoint Class. More...
#include <features2d.hpp>
Public Member Functions | |
CV_WRAP | KeyPoint () |
the default constructor More... | |
KeyPoint (Point2f _pt, float _size, float _angle=-1, float _response=0, int _octave=0, int _class_id=-1) | |
the full constructor More... | |
CV_WRAP | KeyPoint (float x, float y, float _size, float _angle=-1, float _response=0, int _octave=0, int _class_id=-1) |
another form of the full constructor More... | |
size_t | hash () const |
Static Public Member Functions | |
static void | convert (const vector< KeyPoint > &keypoints, CV_OUT vector< Point2f > &points2f, const vector< int > &keypointIndexes=vector< int >()) |
converts vector of keypoints to vector of points More... | |
static void | convert (const vector< Point2f > &points2f, CV_OUT vector< KeyPoint > &keypoints, float size=1, float response=1, int octave=0, int class_id=-1) |
converts vector of points to the vector of keypoints, where each keypoint is assigned the same size and the same orientation More... | |
static float | overlap (const KeyPoint &kp1, const KeyPoint &kp2) |
Public Attributes | |
CV_PROP_RW Point2f | pt |
coordinates of the keypoints More... | |
CV_PROP_RW float | size |
diameter of the meaningful keypoint neighborhood More... | |
CV_PROP_RW float | angle |
CV_PROP_RW float | response |
the response by which the most strong keypoints have been selected. More... | |
CV_PROP_RW int | octave |
octave (pyramid layer) from which the keypoint has been extracted More... | |
CV_PROP_RW int | class_id |
object class (if the keypoints need to be clustered by an object they belong to) More... | |
The Keypoint Class.
The class instance stores a keypoint, i.e. a point feature found by one of many available keypoint detectors, such as Harris corner detector, cv::FAST, cv::StarDetector, cv::SURF, cv::SIFT, cv::LDetector etc.
The keypoint is characterized by the 2D position, scale (proportional to the diameter of the neighborhood that needs to be taken into account), orientation and some other parameters. The keypoint neighborhood is then analyzed by another algorithm that builds a descriptor (usually represented as a feature vector). The keypoints representing the same object in different images can then be matched using cv::KDTree or another method.
CV_WRAP cv::KeyPoint::KeyPoint | ( | ) |
the default constructor
cv::KeyPoint::KeyPoint | ( | Point2f | _pt, |
float | _size, | ||
float | _angle = -1 , |
||
float | _response = 0 , |
||
int | _octave = 0 , |
||
int | _class_id = -1 |
||
) |
the full constructor
CV_WRAP cv::KeyPoint::KeyPoint | ( | float | x, |
float | y, | ||
float | _size, | ||
float | _angle = -1 , |
||
float | _response = 0 , |
||
int | _octave = 0 , |
||
int | _class_id = -1 |
||
) |
another form of the full constructor
size_t cv::KeyPoint::hash | ( | ) | const |
|
static |
converts vector of keypoints to vector of points
|
static |
converts vector of points to the vector of keypoints, where each keypoint is assigned the same size and the same orientation
computes overlap for pair of keypoints; overlap is a ratio between area of keypoint regions intersection and area of keypoint regions union (now keypoint region is circle)
CV_PROP_RW Point2f cv::KeyPoint::pt |
coordinates of the keypoints
CV_PROP_RW float cv::KeyPoint::size |
diameter of the meaningful keypoint neighborhood
CV_PROP_RW float cv::KeyPoint::angle |
computed orientation of the keypoint (-1 if not applicable); it's in [0,360) degrees and measured relative to image coordinate system, ie in clockwise.
CV_PROP_RW float cv::KeyPoint::response |
the response by which the most strong keypoints have been selected.
Can be used for the further sorting or subsampling
CV_PROP_RW int cv::KeyPoint::octave |
octave (pyramid layer) from which the keypoint has been extracted
CV_PROP_RW int cv::KeyPoint::class_id |
object class (if the keypoints need to be clustered by an object they belong to)