我可以使用哪些操作从此图像中提取硬边/线

时间:2017-03-12 05:18:13

标签: opencv computer-vision image-morphology

我能够使用形态渐变很好地检测图像中的主要硬边缘 - 见下图。如何处理此图像以仅提取最硬/最白的边缘?阈值处理会导致图像非常嘈杂或硬边缘缺乏细节/过度腐蚀。

enter image description here

我的阈值结果: enter image description here

我的目标是这样的: enter image description here

*注意:我正在尝试使用Morphological Gradient操作作为轻量级方法来检测图像中的硬/主边缘。 OpenCV代码将在一个覆盆子pi机器人上运行,所以我试图使用我的资源非常有效 - 因此我使用Morphological Gradient而不是Canny等。

原始图片: enter image description here

1 个答案:

答案 0 :(得分:0)

我最初说高斯差异,但你已经有了更好的门槛图像。

所以我将第一张图像作为输入并执行 Otsu Threshold 。我使用从函数cv2.threshold(img, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)获得的图像来检测线条。

使用cv2.HoughLinesP()

检测到线条

我的(不太好)结果:

enter image description here

您可以选择在原始图像上绘制线条。