OpenCV  4.10.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 object>

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

参数
try_use_gpu是否尝试使用 GPU
match_conf匹配距离比值阈值
num_matches_thresh1内点分类步骤中使用的 2D 投影变换估计所需的最小匹配数
num_matches_thresh2内点上 2D 投影变换重新估计所需的最小匹配数
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

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