【问题标题】:Thick horizontal line detection粗水平线检测
【发布时间】:2010-06-30 03:02:12
【问题描述】:

请建议我一些在图像中检测粗水平线的方法。 请提供任何论文、图书馆等。

【问题讨论】:

  • 您能否提供一些示例图像/示例场景/等,因为该方法高度依赖于存在的干扰类型。这只是霍夫变换可以工作的简单线条。
  • 我想通过检测盘子边界部分的粗线来检测图像上的盘子(盘子)。它们很厚。

标签: line computer-vision detection


【解决方案1】:

对图像进行二进制阈值化,然后使用形态学操作的组合来检测“比 N1 厚但比 N2 薄的边界”以生成多个图像并将它们组合(逻辑与)以选择性地检测特定预期厚度的边界。

【讨论】:

  • 你的意思是开闭操作吗?
  • 您能否解释一下“使用形态学操作的组合来检测“比 N1 厚但比 N2 薄的边界”以生成多个图像并将它们组合(逻辑与)为你在上面回答了吗?基本上,我正在尝试设计一种形态模式来检测此image 中的粗线,但不是这三个连接的符号。我怎样才能绕过它们?谢谢
【解决方案2】:

OpenCV 是一个很好的库。您可以使用Hough transform 来检测线条。

请注意,答案可能取决于图片的质量,有些方法可能比其他方法更有效。

【讨论】:

    【解决方案3】:

    如果线条图像真的很容易检测(假设您可以在 10 码外找到线条),只需将图像从 (width, height) 缩放到 (1, height) 并找到最暗的 y 坐标像素。调整大小时使用 CV_INTER_AREA。

    【讨论】:

    • 这个想法非常好,调整图像大小以使线条不再粗,但是您在谈论一些不同的事情。为什么要调整大小直到 (1, height) ?图像中可能有很多粗线。
    • Resize to (1, height) 相当于在零度处计算 Hough 变换的单个切片,以检测严格的水平线。霍夫变换应与精心选择的角度集合/角度范围一起用于略微偏离的水平线。
    • 看到erjik 的新评论,我意识到我的回答完全无关紧要。请忽略。我提出了一个新的答案。
    猜你喜欢
    • 2020-09-05
    • 2011-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-12
    • 1970-01-01
    • 2022-01-25
    • 1970-01-01
    相关资源
    最近更新 更多