【发布时间】:2011-05-14 00:23:45
【问题描述】:
我正在编写一个可以在驾驶模拟器中检测车道的应用。环境比较简单,多车道道路多为笔直,几乎没有曲率。目前,我可以使用(经典)霍夫变换成功检测线,但问题是 HT 自然也能检测到不是车道的线。
我怎样才能更有选择性?我还没有画水平线,但仍然有一些线在蔓延。理想情况下,我想检测车辆正在行驶的车道边界。以下是环境的典型图像
这是我目前正在做的事情:
-
1. 因为无论我在哪里开车,环境或多或少都是一样的,所以我将感兴趣区域 (RoI) 设置为排除地平线及其上方的任何东西。
- 2。对图像进行阈值处理(稍后我会解释设置阈值的原因)
- 3。 Canny 边缘检测
- 4。应用霍夫变换
- 5。绘制除梯度为 0.0 或接近 0.0 的检测线
成像阈值的原因如下。如果您查看上面链接的环境照片,您会看到一条与道路平行的灰线。因为它是一条连续的线 - 与车道标记不同 - HT 最终会检测到它。我不能根据梯度排除它,因为它与车道标记具有相同的梯度。通过阈值处理,我可以删除它,因此只检测作为实际车道标记的线。
这是上述操作的结果
我知道这个问题有很多解决方案,我已经阅读了无数关于这个问题的论文,但它们似乎都在处理比这复杂得多的环境和/或简直超出了我的想象。就其价值而言,就在一个多月前,我还没有计算机视觉方面的背景,所以所有这些对我来说都是非常新的。
更新 1:
我想用更好的术语来说,我正在寻找一种对车道建模的方法,以便不包括不适合模型的线。不幸的是,我不知道从哪里开始使用模型。有什么建议吗?
对于它的价值,我已经设法识别出车辆正在行驶的车道,并且可以排除不属于“活动”车道的额外线路,可以这么说。希望这张照片会有所帮助
它并不完美,但我猜是这样。在建模之后,我的最终目标是生成车辆的航向/位置。但我只想首先获得相对稳健的车道检测。我希望有一种相对简单的技术可以帮助实现这一目标(不依赖于系统参数,例如视野焦距)。
【问题讨论】:
标签: computer-vision hough-transform