opencv2/features.hpp#

#include <opencv2/opencv_modules.hpp>
#include <opencv2/core.hpp>

Include dependency graph for features.hpp:

opencv2/features.hpp Node1 opencv2/features.hpp Node2 opencv2/opencv_modules.hpp Node1->Node2 Node3 opencv2/core.hpp Node1->Node3 Node4 opencv2/core/cvdef.h Node3->Node4 Node11 opencv2/core/base.hpp Node3->Node11 Node14 opencv2/core/cvstd.hpp Node3->Node14 Node30 opencv2/core/traits.hpp Node3->Node30 Node31 opencv2/core/matx.hpp Node3->Node31 Node36 opencv2/core/types.hpp Node3->Node36 Node39 opencv2/core/mat.hpp Node3->Node39 Node43 opencv2/core/persistence.hpp Node3->Node43 Node44 opencv2/core/operations.hpp Node3->Node44 Node47 opencv2/core/cvstd.inl.hpp Node3->Node47 Node48 opencv2/core/utility.hpp Node3->Node48 Node51 opencv2/core/optim.hpp Node3->Node51 Node5 opencv2/core/version.hpp Node4->Node5 Node6 limits Node4->Node6 Node7 opencv2/core/hal/interface.h Node4->Node7 Node9 cstdint Node4->Node9 Node10 cv_cpu_dispatch.h Node4->Node10 Node8 cstddef Node7->Node8 Node7->Node9 Node11->Node2 Node11->Node4 Node12 climits Node11->Node12 Node13 algorithm Node11->Node13 Node11->Node14 Node24 opencv2/core/fwddecl.hpp Node11->Node24 Node25 opencv2/core/neon_utils.hpp Node11->Node25 Node26 opencv2/core/vsx_utils.hpp Node11->Node26 Node28 opencv2/core/exception.hpp Node11->Node28 Node29 opencv2/core/check.hpp Node11->Node29 Node14->Node4 Node14->Node8 Node14->Node13 Node15 cstring Node14->Node15 Node16 cctype Node14->Node16 Node17 string Node14->Node17 Node18 utility Node14->Node18 Node19 cstdlib Node14->Node19 Node20 cmath Node14->Node20 Node21 cvstd_wrapper.hpp Node14->Node21 Node21->Node4 Node21->Node17 Node22 memory Node21->Node22 Node23 type_traits Node21->Node23 Node24->Node4 Node25->Node4 Node26->Node4 Node27 assert.h Node26->Node27 Node28->Node4 Node28->Node14 Node29->Node4 Node29->Node14 Node29->Node24 Node30->Node4 Node31->Node4 Node31->Node11 Node31->Node30 Node32 opencv2/core/saturate.hpp Node31->Node32 Node34 initializer_list Node31->Node34 Node35 opencv2/core/matx.inl.hpp Node31->Node35 Node32->Node4 Node32->Node12 Node33 opencv2/core/fast_math.hpp Node32->Node33 Node33->Node4 Node33->Node20 Node36->Node4 Node36->Node6 Node36->Node12 Node36->Node14 Node36->Node31 Node37 cfloat Node36->Node37 Node38 vector Node36->Node38 Node39->Node23 Node39->Node31 Node39->Node36 Node40 opencv2/core/bufferpool.hpp Node39->Node40 Node41 array Node39->Node41 Node42 opencv2/core/mat.inl.hpp Node39->Node42 Node43->Node36 Node43->Node39 Node45 cstdio Node44->Node45 Node46 ostream Node44->Node46 Node48->Node3 Node48->Node46 Node49 functional Node48->Node49 Node50 mutex Node48->Node50 Node51->Node3

opencv2/features.hpp Node1 opencv2/features.hpp Node2 opencv2/opencv_modules.hpp Node1->Node2 Node3 opencv2/core.hpp Node1->Node3 Node4 opencv2/core/cvdef.h Node3->Node4 Node11 opencv2/core/base.hpp Node3->Node11 Node14 opencv2/core/cvstd.hpp Node3->Node14 Node30 opencv2/core/traits.hpp Node3->Node30 Node31 opencv2/core/matx.hpp Node3->Node31 Node36 opencv2/core/types.hpp Node3->Node36 Node39 opencv2/core/mat.hpp Node3->Node39 Node43 opencv2/core/persistence.hpp Node3->Node43 Node44 opencv2/core/operations.hpp Node3->Node44 Node47 opencv2/core/cvstd.inl.hpp Node3->Node47 Node48 opencv2/core/utility.hpp Node3->Node48 Node51 opencv2/core/optim.hpp Node3->Node51 Node5 opencv2/core/version.hpp Node4->Node5 Node6 limits Node4->Node6 Node7 opencv2/core/hal/interface.h Node4->Node7 Node9 cstdint Node4->Node9 Node10 cv_cpu_dispatch.h Node4->Node10 Node8 cstddef Node7->Node8 Node7->Node9 Node11->Node2 Node11->Node4 Node12 climits Node11->Node12 Node13 algorithm Node11->Node13 Node11->Node14 Node24 opencv2/core/fwddecl.hpp Node11->Node24 Node25 opencv2/core/neon_utils.hpp Node11->Node25 Node26 opencv2/core/vsx_utils.hpp Node11->Node26 Node28 opencv2/core/exception.hpp Node11->Node28 Node29 opencv2/core/check.hpp Node11->Node29 Node14->Node4 Node14->Node8 Node14->Node13 Node15 cstring Node14->Node15 Node16 cctype Node14->Node16 Node17 string Node14->Node17 Node18 utility Node14->Node18 Node19 cstdlib Node14->Node19 Node20 cmath Node14->Node20 Node21 cvstd_wrapper.hpp Node14->Node21 Node21->Node4 Node21->Node17 Node22 memory Node21->Node22 Node23 type_traits Node21->Node23 Node24->Node4 Node25->Node4 Node26->Node4 Node27 assert.h Node26->Node27 Node28->Node4 Node28->Node14 Node29->Node4 Node29->Node14 Node29->Node24 Node30->Node4 Node31->Node4 Node31->Node11 Node31->Node30 Node32 opencv2/core/saturate.hpp Node31->Node32 Node34 initializer_list Node31->Node34 Node35 opencv2/core/matx.inl.hpp Node31->Node35 Node32->Node4 Node32->Node12 Node33 opencv2/core/fast_math.hpp Node32->Node33 Node33->Node4 Node33->Node20 Node36->Node4 Node36->Node6 Node36->Node12 Node36->Node14 Node36->Node31 Node37 cfloat Node36->Node37 Node38 vector Node36->Node38 Node39->Node23 Node39->Node31 Node39->Node36 Node40 opencv2/core/bufferpool.hpp Node39->Node40 Node41 array Node39->Node41 Node42 opencv2/core/mat.inl.hpp Node39->Node42 Node43->Node36 Node43->Node39 Node45 cstdio Node44->Node45 Node46 ostream Node44->Node46 Node48->Node3 Node48->Node46 Node49 functional Node48->Node49 Node50 mutex Node48->Node50 Node51->Node3

This graph shows which files directly or indirectly include features.hpp:

incby n1e08e5eaea opencv2/stitching/detail/autocalib.hpp nbf8189240d opencv2/stitching/detail/matchers.hpp n1e08e5eaea->nbf8189240d n6cf1db538e opencv2/ccalib.hpp n32cef8a794 opencv2/features.hpp n6cf1db538e->n32cef8a794 nceaaa509d4 opencv2/gapi/core.hpp n464494eb6e opencv2/gapi/imgproc.hpp nceaaa509d4->n464494eb6e n464494eb6e->n32cef8a794 nffc3a208cb opencv2/cudafeatures2d.hpp nffc3a208cb->n32cef8a794 nb2413277a2 opencv2/cvv/cvv.hpp n84f280358a opencv2/cvv.hpp nb2413277a2->n84f280358a n52f4ed0c41 opencv2/cvv/dmatch.hpp n84f280358a->n52f4ed0c41 n52f4ed0c41->n32cef8a794 n89cceadfa4 opencv2/features2d.hpp n89cceadfa4->n32cef8a794 na1c93e22b7 opencv2/features/features.hpp na1c93e22b7->n32cef8a794 n3bf02cb20b opencv2/videostab/global_motion.hpp n3bf02cb20b->n32cef8a794 nbf8189240d->n32cef8a794 n7cf9a25202 opencv2/stitching/detail/motion_estimators.hpp n7cf9a25202->nbf8189240d n65ccfdf1ad opencv2/videostab/motion_stabilizing.hpp n65ccfdf1ad->n3bf02cb20b n7a8ad14552 opencv2/ccalib/multicalib.hpp n0c1cc1d65f opencv2/ccalib/randpattern.hpp n7a8ad14552->n0c1cc1d65f n583d3a85e0 opencv2/xfeatures2d/nonfree.hpp n583d3a85e0->n32cef8a794 n7a016e8e07 opencv2/objdetect/objdetect.hpp n1c1d26ca69 opencv2/objdetect.hpp n7a016e8e07->n1c1d26ca69 n1c1d26ca69->n32cef8a794 n0c1cc1d65f->n32cef8a794 nbabc937714 opencv2/xfeatures2d.hpp n0c1cc1d65f->nbabc937714 n7b61e7ed2d opencv2/videostab/stabilizer.hpp n7b61e7ed2d->n3bf02cb20b n7b61e7ed2d->n65ccfdf1ad n63bd64977b opencv2/videostab/inpainting.hpp n7b61e7ed2d->n63bd64977b n057e611636 opencv2/videostab/wobble_suppression.hpp n7b61e7ed2d->n057e611636 nd6d46979a7 opencv2/stitching.hpp nd6d46979a7->n32cef8a794 nd6d46979a7->nbf8189240d nd6d46979a7->n7cf9a25202 n63bd64977b->n3bf02cb20b nf3eedceea8 opencv2/videostab.hpp nf3eedceea8->n7b61e7ed2d n057e611636->n3bf02cb20b nbabc937714->n32cef8a794 nbabc937714->n583d3a85e0

incby n1e08e5eaea opencv2/stitching/detail/autocalib.hpp nbf8189240d opencv2/stitching/detail/matchers.hpp n1e08e5eaea->nbf8189240d n6cf1db538e opencv2/ccalib.hpp n32cef8a794 opencv2/features.hpp n6cf1db538e->n32cef8a794 nceaaa509d4 opencv2/gapi/core.hpp n464494eb6e opencv2/gapi/imgproc.hpp nceaaa509d4->n464494eb6e n464494eb6e->n32cef8a794 nffc3a208cb opencv2/cudafeatures2d.hpp nffc3a208cb->n32cef8a794 nb2413277a2 opencv2/cvv/cvv.hpp n84f280358a opencv2/cvv.hpp nb2413277a2->n84f280358a n52f4ed0c41 opencv2/cvv/dmatch.hpp n84f280358a->n52f4ed0c41 n52f4ed0c41->n32cef8a794 n89cceadfa4 opencv2/features2d.hpp n89cceadfa4->n32cef8a794 na1c93e22b7 opencv2/features/features.hpp na1c93e22b7->n32cef8a794 n3bf02cb20b opencv2/videostab/global_motion.hpp n3bf02cb20b->n32cef8a794 nbf8189240d->n32cef8a794 n7cf9a25202 opencv2/stitching/detail/motion_estimators.hpp n7cf9a25202->nbf8189240d n65ccfdf1ad opencv2/videostab/motion_stabilizing.hpp n65ccfdf1ad->n3bf02cb20b n7a8ad14552 opencv2/ccalib/multicalib.hpp n0c1cc1d65f opencv2/ccalib/randpattern.hpp n7a8ad14552->n0c1cc1d65f n583d3a85e0 opencv2/xfeatures2d/nonfree.hpp n583d3a85e0->n32cef8a794 n7a016e8e07 opencv2/objdetect/objdetect.hpp n1c1d26ca69 opencv2/objdetect.hpp n7a016e8e07->n1c1d26ca69 n1c1d26ca69->n32cef8a794 n0c1cc1d65f->n32cef8a794 nbabc937714 opencv2/xfeatures2d.hpp n0c1cc1d65f->nbabc937714 n7b61e7ed2d opencv2/videostab/stabilizer.hpp n7b61e7ed2d->n3bf02cb20b n7b61e7ed2d->n65ccfdf1ad n63bd64977b opencv2/videostab/inpainting.hpp n7b61e7ed2d->n63bd64977b n057e611636 opencv2/videostab/wobble_suppression.hpp n7b61e7ed2d->n057e611636 nd6d46979a7 opencv2/stitching.hpp nd6d46979a7->n32cef8a794 nd6d46979a7->nbf8189240d nd6d46979a7->n7cf9a25202 n63bd64977b->n3bf02cb20b nf3eedceea8 opencv2/videostab.hpp nf3eedceea8->n7b61e7ed2d n057e611636->n3bf02cb20b nbabc937714->n32cef8a794 nbabc937714->n583d3a85e0

Classes#

struct cv::Accumulator
struct cv::Accumulator< char >
struct cv::Accumulator< short >
struct cv::Accumulator< unsigned char >
struct cv::Accumulator< unsigned short >
class cv::AffineFeature

Class for implementing the wrapper which makes detectors and extractors to be affine invariant, described as ASIFT in [349] . More…

class cv::ALIKED

ALIKED feature detector and descriptor extractor. More…

class cv::ANNIndex
class cv::BFMatcher

Brute-force descriptor matcher. More…

class cv::DescriptorMatcher::DescriptorCollection
class cv::DescriptorMatcher

Abstract base class for matching keypoint descriptors. More…

class cv::DISK

DISK feature detector and descriptor, based on a DNN model. More…

class cv::FastFeatureDetector

Wrapping class for feature detection using the FAST method. More…

class cv::Feature2D

Abstract base class for 2D image feature detectors and descriptor extractors. More…

class cv::FlannBasedMatcher

Flann-based descriptor matcher. More…

class cv::GFTTDetector

Wrapping class for feature detection using the goodFeaturesToTrack function. : More…

class cv::KeyPointsFilter

A class filters a vector of keypoints. More…

struct cv::L1
struct cv::L2
class cv::LightGlueMatcher

LightGlue feature matcher. More…

class cv::MSER

Maximally stable extremal region extractor. More…

class cv::ORB

Class implementing the ORB (oriented BRIEF) keypoint detector and descriptor extractor. More…

struct cv::SimpleBlobDetector::Params
struct cv::ALIKED::Params
class cv::SIFT

Class for extracting keypoints and computing descriptors using the Scale Invariant Feature Transform (SIFT) algorithm by D. Lowe [194] . More…

class cv::SimpleBlobDetector

Class for extracting blobs from an image. : More…

struct cv::SL2

Namespaces#

namespace cv

Enumerations#

enum cv::DrawMatchesFlags {
DEFAULT = 0,
DRAW_OVER_OUTIMG = 1,
NOT_DRAW_SINGLE_POINTS = 2,
DRAW_RICH_KEYPOINTS = 4
}

Functions#

void cv::drawKeypoints (InputArray image, const std::vector< KeyPoint > &keypoints, InputOutputArray outImage, const Scalar &color=Scalar::all(-1), DrawMatchesFlags flags=DrawMatchesFlags::DEFAULT)

Draws keypoints.

void cv::drawMatches (InputArray img1, const std::vector< KeyPoint > &keypoints1, InputArray img2, const std::vector< KeyPoint > &keypoints2, const std::vector< DMatch > &matches1to2, InputOutputArray outImg, const int matchesThickness, const Scalar &matchColor=Scalar::all(-1), const Scalar &singlePointColor=Scalar::all(-1), const std::vector< char > &matchesMask=std::vector< char >(), DrawMatchesFlags flags=DrawMatchesFlags::DEFAULT)
void cv::drawMatches (InputArray img1, const std::vector< KeyPoint > &keypoints1, InputArray img2, const std::vector< KeyPoint > &keypoints2, const std::vector< DMatch > &matches1to2, InputOutputArray outImg, const Scalar &matchColor=Scalar::all(-1), const Scalar &singlePointColor=Scalar::all(-1), const std::vector< char > &matchesMask=std::vector< char >(), DrawMatchesFlags flags=DrawMatchesFlags::DEFAULT)

Draws the found matches of keypoints from two images.

void cv::drawMatches (InputArray img1, const std::vector< KeyPoint > &keypoints1, InputArray img2, const std::vector< KeyPoint > &keypoints2, const std::vector< std::vector< DMatch > > &matches1to2, InputOutputArray outImg, const Scalar &matchColor=Scalar::all(-1), const Scalar &singlePointColor=Scalar::all(-1), const std::vector< std::vector< char > > &matchesMask=std::vector< std::vector< char > >(), DrawMatchesFlags flags=DrawMatchesFlags::DEFAULT)
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 >())
void cv::FAST (InputArray image, std::vector< KeyPoint > &keypoints, int threshold, bool nonmaxSuppression=true, FastFeatureDetector::DetectorType type=FastFeatureDetector::TYPE_9_16)

Detects corners using the FAST algorithm.

int cv::getNearestPoint (const std::vector< Point2f > &recallPrecisionCurve, float l_precision)
float cv::getRecall (const std::vector< Point2f > &recallPrecisionCurve, float l_precision)
void cv::goodFeaturesToTrack (InputArray image, OutputArray corners, int maxCorners, double qualityLevel, double minDistance, InputArray mask, int blockSize, int gradientSize, bool useHarrisDetector=false, double k=0.04)
void cv::goodFeaturesToTrack (InputArray image, OutputArray corners, int maxCorners, double qualityLevel, double minDistance, InputArray mask, OutputArray cornersQuality, int blockSize=3, int gradientSize=3, bool useHarrisDetector=false, double k=0.04)

Same as above, but returns also quality measure of the detected corners.

void cv::goodFeaturesToTrack (InputArray image, OutputArray corners, int maxCorners, double qualityLevel, double minDistance, InputArray mask=noArray(), int blockSize=3, bool useHarrisDetector=false, double k=0.04)

Determines strong corners on an image.