I'm using Hough Lines to do corner detection for this image. i plan to find the intersection of the lines as the corner.
This is the image.
Unfortunately, Hough return lots of lines for each line I expect
如何调整霍夫线,以便只有四条线,每条线对应于图像上的实际线?
OpenCV 霍夫变换确实可以使用一些更好的非极大值抑制。如果没有它,就会出现重复行的现象。不幸的是,除了重新实现您自己的霍夫变换之外,我知道没有简单的方法来调整它。 (这是一个有效的选项。霍夫变换相当简单)
幸运的是,在后期处理中很容易修复:
对于非概率霍夫变换,OpenCv 将按置信度顺序返回线,最强的线首先返回。因此,只需取 rho 或 theta 方面差异很大的前四行即可。
- 因此,将 HoughLines 找到的第一行添加到新列表中:强线
- for each line found by HoughLines:
- 测试是否为 rhoandtheta 接近任何强线(例如,rho 位于另一条线的 50 像素以内,theta 位于另一条线的 10° 以内)
- 如果没有,则将其放入列表中强线
- 如果你找到了 4 个强线, break
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)