改进Opencv HoughLinesP的线提取

时间:2015-03-04 15:14:06

标签: opencv image-processing grayscale hough-transform

我正在使用HoughLinesP从灰度图像中提取线条。

以下是我的psudo代码。

threshold(img_tmp,bin_img,30,255,cv::THRESH_BINARY);
Canny(bin_img, canny_img, 50, 255, 3);
vector<Vec4i> tmp_lines;
HoughLinesP(canny_img,tmp_lines, 1, CV_PI/360,10, 10, 1);

在缩放图像中可以看到单边(即图像中的单行)返回多行。 16,22和0,28和10,11和23,18,24行对应单行。

如何获得单边的单行,任何建议?

输入图片:

enter image description here

提取的行 enter image description here

问题

enter image description here

感谢。

1 个答案:

答案 0 :(得分:0)

同样,canny或任何边缘检测算法都不适合这种输入,因为这些线基本上是边缘。尝试在输入上应用某种非最大值抑制,然后在没有任何边缘检测的情况下应用Hough线。