我正在使用HoughLinesP
从灰度图像中提取线条。
下面是我的伪代码。
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线对应于单条线。
我如何才能获得单边单线,任何建议?
输入图像:
提取的行
问题
谢谢。
最佳答案
同样,Canny或任何边缘检测算法都不适合此类输入,因为这些线基本上是边缘。尝试在输入上应用某种非最大值抑制,然后在没有任何类型的边缘检测的情况下对霍夫线进行抑制。