本文介绍了Opencv可重复性结果没有意义吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试通过重复性标准评估SIFT和SURF检测器。

i'm trying to evaluate SIFT and SURF Detectors by Repeatability criteria.

我发现以下方法可以找到重复性,SIFT和SURF的对应关系

i find out that below method can find Repeatability ,Correspondence of SIFT and SURF

 cv::evaluateFeatureDetector(img_1c, img_2c, h12, &key_points_1, &key_points_2, repeatability, corrCounter);

下面列出了一些结果:

Number  Repeatibility   Correspond  Keypoint 1st    Keypoint 2th
1to2    0.7777778            140        224              180
1to3    0.7125               114        224              161
1to4    0.704918              86        224              123
1to5    0.6853933             61        224               89
1to6    0.6521739             45        224               69

第一行可重复性可计算为 - - >(correnspond)/ min(keypoint1st,keypoint2th)=(140/180)= 0.7777778
但是对于其他行,它的值与我用上面的公式计算的值不同。

for first row repeatibility can compute as --> (correnspond)/min(keypoint1st,keypoint2th) = (140/180) = 0.7777778but for other rows it's value is different from what i compute with above formula.

有人可以告诉为什么会发生这种情况吗?

can somebody tell why is that happening?

问候。

推荐答案

我想我可能在这里找到了问题。

I think I may have found the problem here.

重复率是重复次数考虑提取的关键点总数,两个图像之间的点。
为了测量重复点的数量,必须考虑到观察到的场景由于其成像条件的改变而相互不同(在Mikolajczyk数据集的情况下,视点,旋转+比例,模糊等)。

The repeatability rate is the number of repeated points between two images considering the total number of keypoints extracted.For measuring the number of repeated points it has to be taken into account that the observed scenes differ from each other due to their changed imaging condition (viewpoint, rotation + scale, blur, etc in the case of Mikolajczyk dataset).

正在发生的是您正在考虑检测到的所有关键点在第二张用于计算重复性的图像中,实际上只应使用单应性中的关键点

What is happening is that you're considering all the keypoints detected in the second image for the calculation of repeatability and actually only the keypoints within the homography should be used.

希望这会有所帮助。

这篇关于Opencv可重复性结果没有意义吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-04 22:53