2D Features Framework

Overview

// typedefs

typedef Feature2D cv::DescriptorExtractor;
typedef Feature2D cv::FeatureDetector;

// structs

template <typename T>
struct cv::Accumulator;

template <>
struct cv::Accumulator<unsigned short>;

template <>
struct cv::Accumulator<short>;

template <>
struct cv::Accumulator<unsigned char>;

template <>
struct cv::Accumulator<char>;

template <class T>
struct cv::L1;

template <class T>
struct cv::L2;

template <class T>
struct cv::SL2;

// classes

class cv::Feature2D;
class cv::KeyPointsFilter;

// global functions

void
cv::computeRecallPrecisionCurve(
    const std::vector<std::vector<DMatch>>& matches1to2,
    const std::vector<std::vector<uchar>>& correctMatches1to2Mask,
    std::vector<Point2f>& recallPrecisionCurve
    );

void
cv::evaluateFeatureDetector(
    const Mat& img1,
    const Mat& img2,
    const Mat& H1to2,
    std::vector<KeyPoint>* keypoints1,
    std::vector<KeyPoint>* keypoints2,
    float& repeatability,
    int& correspCount,
    const Ptr<FeatureDetector>& fdetector = Ptr<FeatureDetector>()
    );

int
cv::getNearestPoint(
    const std::vector<Point2f>& recallPrecisionCurve,
    float l_precision
    );

float
cv::getRecall(
    const std::vector<Point2f>& recallPrecisionCurve,
    float l_precision
    );

Detailed Documentation

Typedefs

typedef Feature2D cv::DescriptorExtractor

Extractors of keypoint descriptors in OpenCV have wrappers with a common interface that enables you to easily switch between different algorithms solving the same problem. This section is devoted to computing descriptors represented as vectors in a multidimensional space. All objects that implement the vector descriptor extractors inherit the DescriptorExtractor interface.

typedef Feature2D cv::FeatureDetector

Feature detectors in OpenCV have wrappers with a common interface that enables you to easily switch between different algorithms solving the same problem. All objects that implement keypoint detectors inherit the FeatureDetector interface.