Hough变换:在负累积器矩阵中放置负rhos的位置

时间:2016-12-01 06:01:29

标签: algorithm hough-transform

我正在尝试实施Hough transform算法。

我在图片的左上角设置了cartesian plane的原点。

theta的范围(rho和X轴之间的角度) 1..180 ,步长 1 度。 rho 的最大大小是图像对角线的大小。 我想计算累加器矩阵。鉴于上面的信息,其大小应为 Y :rho, X :180( theta )。

算法对我来说似乎很简单,但 rho 存在问题。它会有负值。对于从 0 PI / 2 的theta,rho将只是正数,因为 sin cos 是正数。然而对于从 PI / 2 PI 的theta,因为 cos 在这里是负的,而 sin 是正的,取决于点的x,y坐标,rho可能具有负值。

我的问题是:在计算累加器矩阵时,我应该如何处理 rho 的负值?我应该把它们放在哪里?

1 个答案:

答案 0 :(得分:0)

在rho-theta空格线L1 = (rho, theta)L2 = (rho, theta + 180)是相同的,因为线没有选定的方向。

所以只需将theta(你是怎么得到的?)更改为theta + 180