Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 关键点描述符匹配:如何计算每个模板的拟合优度?_Python_Opencv_Keypoint_Ransac_Goodness Of Fit - Fatal编程技术网

Python 关键点描述符匹配:如何计算每个模板的拟合优度?

Python 关键点描述符匹配:如何计算每个模板的拟合优度?,python,opencv,keypoint,ransac,goodness-of-fit,Python,Opencv,Keypoint,Ransac,Goodness Of Fit,我不确定这是属于stackoverflow还是其他stackexchange站点-这里非常欢迎输入 我使用PythonOpenCV将目标图像的快速关键点描述符依次匹配到三个不同的模板 什么是一种实用的、可靠的、统计上可靠的方法来决定哪种模板最适合 现在,我计算由cv2.findHomography返回的cv2.RANSAC内联线的数量(顺便说一句,它没有返回拟合优度统计数据),并获取数量最高的模板 我看过描述符距离的直方图,它似乎总是以大约105(单位?)为高斯中心(奇怪) 看起来很有用 非常感

我不确定这是属于stackoverflow还是其他stackexchange站点-这里非常欢迎输入

我使用PythonOpenCV将目标图像的快速关键点描述符依次匹配到三个不同的模板

什么是一种实用的、可靠的、统计上可靠的方法来决定哪种模板最适合

现在,我计算由
cv2.findHomography
返回的
cv2.RANSAC
内联线的数量(顺便说一句,它没有返回拟合优度统计数据),并获取数量最高的模板

我看过描述符距离的直方图,它似乎总是以大约105(单位?)为高斯中心(奇怪)

看起来很有用


非常感谢您的指导-谢谢

这开始只是一个评论,但有点太长了

实际上,OpenCV在内部计算重投影错误,并且不返回它。但是一旦你得到了单应性,你也可以自己做同样的事情,不是吗? 事实上,该算法使所有点上的重投影误差之和最小化。有关该过程的完整描述,请参见

因为您有匹配项(因此源点和模板点的图像坐标)。您可以计算每个模板的平均重投影错误,可能仅使用被视为内联线的点,并选择最低的一个

从另一个站点:

computed_pt = H * source_pt
error_pt = sqrt( (computed_pt.x - dst_pt.x)*(computed_pt.x - dst_pt.x) + (computed_pt.y - dst_pt.y)*(computed_pt.y - dst_pt.y) )

计算两点之间的欧几里德距离。

你能再解释一下为什么你不喜欢选择具有最高内部百分比的模板吗?@Demplo谢谢你的提问。我有贝叶斯的背景,所以我觉得这有点特别。理想情况下,我希望能够进行模型选择,即根据概率量化拟合优度的差异,而更高的百分比不会给出这一点。我想知道重投影错误,
H
矩阵的条件等-
findHomography
必须在内部计算一个可能性,但不返回它。非常感谢您的明确解释。几个问题:(i)例如,
cv2.com
(或其他?)是否等同于第一行(并不是说您的行不够简单)?(ii)既然你已经计算了剩余平方和,我可以把它和一个chisq联系起来,然后计算一个用于模型选择的增量chisq,对吗?(但是噪声西格玛的用途是什么?)如果
findHomography
在每次迭代中都输出了可能性,我会喜欢它,因为这样至少我可以探索表面的形状。。。但这可能太过分了。再次感谢(
cv2.perspectiveTransform()
相反)(i)看起来
cv2.perspectiveTransform
完全符合您的期望。(ii)不幸的是,我不是chisq分销的专家,因此无法提供帮助。我所能补充的是,也许(?)sigma应该是特征提取的标准开发工具,尽管它依赖于提取器本身,但根据经验法则,您可以假设~0.5像素,虽然我不确定这是否有帮助……没问题——非常感谢您的回答和信息——我将测试代码,然后希望能够接受答案:)