当前位置: 首页 > 知识库问答 >
问题:

Opencv HoughLinesθ?

宁弘亮
2023-03-14

我有一个关于HoughLines的opencv图书馆的问题。格式如下官网链接:

C:void HoughLines(输入阵列图像、输出阵列线、双菱形、双θ、整数阈值、双srn=0、双stn=0)

以及线的输出数组参数的说明,它表示:

线-线的输出矢量。每条线都由一个双元素向量表示:rho和θ。对于垂直线,θ是0,对于水平线,θ/2(辐射度)。

谁能告诉我线输出θ的规律性是什么?

非常感谢!

共有3个答案

公羊奇
2023-03-14

Rho是所有传入Rho的“存储桶”或累加器数组的大小,或与原点的距离。图像中可能的最长距离是从左上角到右下角,因此为了获得最大精度,请将该值插入houghlines rho。θ是所有传入θ的桶的大小。要获得最大精度,您需要180的值。要仅检测偶数角度,θ应为90。要仅检测可被30整除的角度,θ应为6

孟树
2023-03-14

这是我所理解的。我认为你的控制台应该显示的角度是橙色的(大约-0.72拉德)。但似乎OpenCV使用正角为所有平行线到你的线。我的意思是紫色的角度,这是你的控制台显示(约2.5拉德)。所以你的线有这个θ和rho(到线的距离)是负值。这是因为你的线位于原点的右侧。(我画了画在油漆,对不起,如果它不漂亮)

濮阳君浩
2023-03-14

OpenCV的文档、这个问题的另一个答案以及维基百科(在撰写这个答案时)都是错误的。这是我有生以来第一次在维基百科上发现技术错误。

cv2。HoughLines为您提供映射到直线的对(r,θ)。θ是(图像的)x轴与直线之间的逆时针角。它在零和π之间。Rho是图像左上角到直线的“距离”。正如OP所指出的,rho通常为负值,因此不是一个合适的距离。以下是OpenCV的作者的意思:

如果θ

如果θ

 类似资料:

相关问答

相关文章

相关阅读