Hough Line Transform
Hough Line Transform
数学原理
类似极坐标(但不是极坐标),在直角坐标系中,用表示直角坐标系的
用表示原点到直线的垂直距离,用表示距离这条垂线与轴正半轴的夹角
因此,
化简得到
对于固定的一点,带入得到 ,在坐标系中,就是一条曲线。因此
在(x,y)坐标系一点为坐标系一条曲线。
相应的,对于(x,y)坐标系一条直线,由于 固定,所以在坐标系中是一个点。
设定阈值进行投票
在用Canny检测器检测出边缘后,得到很多点。这些点对应 坐标系的曲线。如果很多条曲线都交于同一点,那么有理由怀疑在坐标系这些点连接而成构成一条直线。通过交点对应的曲线数目进行计算投票(字典计数),设定一个最低的阈值,高于阈值的即为直线。
实际上
我们遍历θ的值,从0-180°,并且同时代入(x,y)的值,求得对应的ρ。
找到0-180°中,哪个度数下的ρ值相同的数量最多。这反向说明了,在一个ρ和θ组成的函数中,符合的点数最多。