【问题标题】:More accurate houghline OpenCV更准确的 houghline OpenCV
【发布时间】:2014-01-14 18:56:21
【问题描述】:

我一直在 OpenCV 中使用 houghlines,但我似乎无法获得更准确的线条读数,有时会有两条重复的线条重叠在一起。我看过 opencv 网站上的教程,但它给出了类似的结果。

【问题讨论】:

  • 写检查线/点的斜率/接近度。我有类似的问题,但一个简单的检查解决了它。不过,请确保您不会丢失信息。
  • 会试试谢谢,只是想知道它是否可以读取 houghlines 上的曲线?
  • HoughLines 将检测 。如果图像中的 曲线 可以由一组线条表示,则 HL 将输出该集合。你如何解释它取决于你。
  • OpenCV 中的 Hough 实现确实有点过时了。自过去十年以来,有更好的 Hough 实现,希望它们能在未来的 GSoC 会议中在 OpenCV 中实现。

标签: c++ opencv edge-detection


【解决方案1】:

要删除那些重复的行,有两件事可以帮助您:

  1. 可能会出现可能导致重复线条的双边。一系列模糊/膨胀输入图像将解决这些问题。
  2. 可以通过对霍夫线方法的theta 参数使用较低的角度分辨率来移除具有几乎相同斜率的闭合线。例如,使用π/180 将导致查找斜率仅相差一度的线。您可以使用5*π/180 查找分辨率为 5 度的线条。

例如,使用原始图像和 1 度分辨率检测以下行:

经过一些模糊处理并使用 3 度分辨率后,您可以获得如下结果:

通过更改阈值,您可以获得更多或更少的线条。
关于您在 cmets 部分中指出的拟合曲线,是的,您可以拟合曲线,但不能使用霍夫线法。您需要找到该形状的参数定义,并尝试自己在霍夫变换中运行投票程序。 opencv 可以帮助您找到的唯一其他形状是圆形。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-27
    • 2015-03-09
    • 1970-01-01
    • 2023-04-05
    • 2020-03-10
    • 2014-11-24
    • 2016-04-02
    相关资源
    最近更新 更多