【发布时间】:2019-04-28 20:12:04
【问题描述】:
我有一张图片:
在此图像中,OpenCV Hough 变换无法使用 -45 度大线检测
minLineLength = 150
maxLineGap = 5
line_thr = 150
linesP = cv.HoughLinesP(dst, 1, np.pi / 180, line_thr, None, minLineLength, maxLineGap)
找到的唯一行是:
我也尝试过使用各种阈值,但我在这里找不到这条线。
如果我像这样手动裁剪图像:
然后我可以清楚地看到 OpenCV Hough 变换找到了正确的线:
我想在非裁剪版本中找到同一行。对非裁剪版本有什么建议吗?
还可能存在根本没有线或线没有一直延伸到 X 轴长度的情况。 例子
【问题讨论】:
-
如果你知道直线是 45 度角,为什么还要使用霍夫变换?您可以保持简单,只查找 45 度角的线。
-
Cris Luengo,任何想法如何实现,一些代码将不胜感激。我正在寻找大于某些单位的线长度,并且在某些噪声(黑点)之间可能存在。
-
您可以使用过滤器并定义一个内核,该内核将平滑任何非 45 度方向的内容。这可以通过 Kirsch 算子或 Sobel 算子来完成。很可能有很多方法可以实现这一目标。检查stackoverflow.com/questions/8547127/…
标签: image opencv image-processing opencv3.0 hough-transform