OpenCV 4.11.0
开源计算机视觉
加载中…
搜索中…
无匹配项
cv::detail::BestOf2NearestMatcher 类参考

特征匹配器,为每个特征找到两个最佳匹配项,并且只有当描述符距离之间的比率大于阈值 match_conf 时才保留最佳匹配项。更多…

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

cv::detail::BestOf2NearestMatcher 协作图

公共成员函数

 BestOf2NearestMatcher (bool try_use_gpu=false, float match_conf=0.3f, int num_matches_thresh1=6, int num_matches_thresh2=6, double matches_confindece_thresh=3.)
 构造“最佳两个最近邻”匹配器。
 
void collectGarbage () CV_OVERRIDE
 如果存在任何之前分配的未使用的内存,则释放它。
 
- 从 cv::detail::FeaturesMatcher 继承的公共成员函数
virtual ~FeaturesMatcher ()
 
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())
 执行图像匹配。
 

静态公共成员函数

static Ptr< BestOf2NearestMatchercreate (bool try_use_gpu=false, float match_conf=0.3f, int num_matches_thresh1=6, int num_matches_thresh2=6, double matches_confindece_thresh=3.)
 

保护成员函数

void match (const ImageFeatures &features1, const ImageFeatures &features2, MatchesInfo &matches_info) CV_OVERRIDE
 此方法必须实现匹配逻辑才能使包装器 detail::FeaturesMatcher::operator()_ 工作。
 
- 从 cv::detail::FeaturesMatcher 继承的保护成员函数
 FeaturesMatcher (bool is_thread_safe=false)
 
virtual void match (const std::vector< ImageFeatures > &features, std::vector< MatchesInfo > &pairwise_matches, const cv::UMat &mask=cv::UMat())
 此方法实现匹配任意数量特征之间的特征的逻辑。默认情况下,这会检查输入中的每一对输入,但子类可以更改此行为。
 

保护属性

Ptr< FeaturesMatcherimpl_
 
double matches_confindece_thresh_
 
int num_matches_thresh1_
 
int num_matches_thresh2_
 
- 从 cv::detail::FeaturesMatcher 继承的保护属性
bool is_thread_safe_
 

详细描述

特征匹配器,为每个特征找到两个最佳匹配项,并且只有当描述符距离之间的比率大于阈值 match_conf 时才保留最佳匹配项。

另请参见
detail::FeaturesMatcher

构造函数和析构函数文档

◆ BestOf2NearestMatcher()

cv::detail::BestOf2NearestMatcher::BestOf2NearestMatcher ( bool try_use_gpu = false,
float match_conf = 0.3f,
int num_matches_thresh1 = 6,
int num_matches_thresh2 = 6,
double matches_confindece_thresh = 3. )
Python
cv.detail.BestOf2NearestMatcher([, try_use_gpu[, match_conf[, num_matches_thresh1[, num_matches_thresh2[, matches_confindece_thresh]]]]]) -> <detail_BestOf2NearestMatcher 对象>

构造“最佳两个最近邻”匹配器。

参数
try_use_gpu是否尝试使用GPU
match_conf匹配距离比率阈值
num_matches_thresh1在内点分类步骤中使用的二维投影变换估计所需的最小匹配数
num_matches_thresh2在内点上重新估计二维投影变换所需的最小匹配数
matches_confindece_thresh要考虑匹配的匹配置信度阈值。该阈值是通过实验确定的,默认为 3。

成员函数文档

◆ collectGarbage()

void cv::detail::BestOf2NearestMatcher::collectGarbage ( )
virtual
Python
cv.detail.BestOf2NearestMatcher.collectGarbage() -> None

如果存在任何之前分配的未使用的内存,则释放它。

cv::detail::FeaturesMatcher 重实现。

◆ create()

static Ptr< BestOf2NearestMatcher > cv::detail::BestOf2NearestMatcher::create ( bool try_use_gpu = false,
float match_conf = 0.3f,
int num_matches_thresh1 = 6,
int num_matches_thresh2 = 6,
double matches_confindece_thresh = 3. )
static
Python
cv.detail.BestOf2NearestMatcher.create([, try_use_gpu[, match_conf[, num_matches_thresh1[, num_matches_thresh2[, matches_confindece_thresh]]]]]) -> retval
cv.detail.BestOf2NearestMatcher_create([, try_use_gpu[, match_conf[, num_matches_thresh1[, num_matches_thresh2[, matches_confindece_thresh]]]]]) -> retval

◆ match()

void cv::detail::BestOf2NearestMatcher::match ( const ImageFeatures & features1,
const ImageFeatures & features2,
MatchesInfo & matches_info )
protectedvirtual

此方法必须实现匹配逻辑才能使包装器 detail::FeaturesMatcher::operator()_ 工作。

参数
features1第一幅图像特征
features2第二幅图像特征
matches_info匹配结果

实现 cv::detail::FeaturesMatcher.

cv::detail::BestOf2NearestRangeMatcher 中重新实现。

成员数据文档

◆ impl_

Ptr<FeaturesMatcher> cv::detail::BestOf2NearestMatcher::impl_
protected

◆ matches_confindece_thresh_

double cv::detail::BestOf2NearestMatcher::matches_confindece_thresh_
protected

◆ num_matches_thresh1_

int cv::detail::BestOf2NearestMatcher::num_matches_thresh1_
protected

◆ num_matches_thresh2_

int cv::detail::BestOf2NearestMatcher::num_matches_thresh2_
protected

此类的文档是从以下文件生成的: