我正在尝试通过OpenCV中的HoughLinesP
函数检测图像中的水平线和垂直线。最初,我已将rho = 1
,theta = CV_PI / 2
和minLineLength
设置为最小预期行长。
但是事实证明,我的行可能会占据图像上像素的多于一行:有时由于图像中的一些噪点,它们可能会来回移动一个像素(这在附件中进行了说明)。在这种情况下,线会分成许多较短的段,因此无法检测到。
我试图设置rho = 2
来降低累加器分辨率,但是并不能解决问题。看来解决方案应该很简单,但是我还没有弄清楚。你能建议点什么吗?
最佳答案
您看过线段检测器吗?
http://www.ipol.im/pub/art/2012/gjmr-lsd/
关于opencv - HoughLinesP在OpenCV中的线条略有变形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26468806/