OpenCV  3.4.18
Open Source Computer Vision
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cv::detail::FeaturesMatcher Class Referenceabstract

Feature matchers base class. More...

#include <opencv2/stitching/detail/matchers.hpp>

Inheritance diagram for cv::detail::FeaturesMatcher:
cv::detail::BestOf2NearestMatcher cv::detail::AffineBestOf2NearestMatcher cv::detail::BestOf2NearestRangeMatcher

Public Member Functions

virtual ~FeaturesMatcher ()
 
virtual void collectGarbage ()
 Frees unused memory allocated before if there is any. More...
 
bool isThreadSafe () const
 
void operator() (const ImageFeatures &features1, const ImageFeatures &features2, MatchesInfo &matches_info)
 
void operator() (const std::vector< ImageFeatures > &features, std::vector< MatchesInfo > &pairwise_matches, const cv::UMat &mask=cv::UMat())
 Performs images matching. More...
 

Protected Member Functions

 FeaturesMatcher (bool is_thread_safe=false)
 
virtual void match (const ImageFeatures &features1, const ImageFeatures &features2, MatchesInfo &matches_info)=0
 This method must implement matching logic in order to make the wrappers detail::FeaturesMatcher::operator()_ work. More...
 

Protected Attributes

bool is_thread_safe_
 

Detailed Description

Feature matchers base class.

Constructor & Destructor Documentation

◆ ~FeaturesMatcher()

virtual cv::detail::FeaturesMatcher::~FeaturesMatcher ( )
inlinevirtual

◆ FeaturesMatcher()

cv::detail::FeaturesMatcher::FeaturesMatcher ( bool  is_thread_safe = false)
inlineprotected

Member Function Documentation

◆ collectGarbage()

virtual void cv::detail::FeaturesMatcher::collectGarbage ( )
inlinevirtual

Frees unused memory allocated before if there is any.

Reimplemented in cv::detail::BestOf2NearestMatcher.

Examples:
samples/cpp/stitching_detailed.cpp.

◆ isThreadSafe()

bool cv::detail::FeaturesMatcher::isThreadSafe ( ) const
inline
Returns
True, if it's possible to use the same matcher instance in parallel, false otherwise

◆ match()

virtual void cv::detail::FeaturesMatcher::match ( const ImageFeatures features1,
const ImageFeatures features2,
MatchesInfo matches_info 
)
protectedpure virtual

This method must implement matching logic in order to make the wrappers detail::FeaturesMatcher::operator()_ work.

Parameters
features1first image features
features2second image features
matches_infofound matches

Implemented in cv::detail::AffineBestOf2NearestMatcher, and cv::detail::BestOf2NearestMatcher.

◆ operator()() [1/2]

void cv::detail::FeaturesMatcher::operator() ( const ImageFeatures features1,
const ImageFeatures features2,
MatchesInfo matches_info 
)
inline

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

Parameters
features1First image features
features2Second image features
matches_infoFound matches

◆ operator()() [2/2]

void cv::detail::FeaturesMatcher::operator() ( const std::vector< ImageFeatures > &  features,
std::vector< MatchesInfo > &  pairwise_matches,
const cv::UMat mask = cv::UMat() 
)

Performs images matching.

Parameters
featuresFeatures of the source images
pairwise_matchesFound pairwise matches
maskMask indicating which image pairs must be matched

The function is parallelized with the TBB library.

See also
detail::MatchesInfo

Member Data Documentation

◆ is_thread_safe_

bool cv::detail::FeaturesMatcher::is_thread_safe_
protected

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