是否可以使用霍夫变换在自动驾驶汽车中检测和跟踪道路?如果是这样,是否有任何算法已经实现了这一点?很想有一个链接,因为我真的找不到任何不在我脑海中的东西。
特别是,我正在寻找使用两条直线的消失点来确定车辆航向的算法。但是,如果还有其他更简单的算法可以完成这项工作,我也愿意看看它们。
是否可以使用霍夫变换在自动驾驶汽车中检测和跟踪道路?如果是这样,是否有任何算法已经实现了这一点?很想有一个链接,因为我真的找不到任何不在我脑海中的东西。
特别是,我正在寻找使用两条直线的消失点来确定车辆航向的算法。但是,如果还有其他更简单的算法可以完成这项工作,我也愿意看看它们。
是的,你可以这样做,但如果你只做这件事,它可能无法达到你想要的质量。任务并不简单,没有“简单”的算法只根据图像进行“道路”或“航向”检测。此外,还有多种语言的现有实现,这里是 C++ 中的一种。
您应该考虑的一件事是道路并不总是笔直的,因此消失点可能在道路的转弯处......
斯坦福 DARPA 大挑战赛和 DARPA 城市挑战赛车辆使用基于颜色的检测来检测可行驶的表面(例如道路),然后使用某种边缘检测和线条形成算法(不清楚它是否基于霍夫变换)来定义“前向寻找”道路方向的估计。我确实相信他们使用了某种系统来检测消失点,而且他们肯定会考虑到道路的转弯。
我想你真正需要检测的是道路边缘,将它们变成线(不一定是直线),然后找到收敛点。这假设可以解决许多其他艰巨的任务:(1)您的图像质量合适;(2) 你可以检测到道路,或者至少可以检测到它的边缘;(3) 您可以足够快地处理图像以跟上车辆的运动。
如果您所做的只是分析一些现有的视频,我将从一个非常基本的方法开始:
您实际上可能会考虑针对这个问题研究Graph-cuts和 Gaussian Mixture Models。它可能对你很有效。OpenCV 实现了这两种算法。以下是这两种算法在分割中的应用示例。