【问题标题】:Detect signs on roads检测道路上的标志
【发布时间】:2012-01-27 21:04:01
【问题描述】:

我有一段视频,道路上有左转、右转等标记。 我必须检测这些迹象。我将继续进行模板匹配,在其中我匹配边缘检测到的输出,但我没有得到令人满意的结果,还有其他方法可以检测到它吗?请帮忙。

【问题讨论】:

    标签: c image image-processing opencv computer-vision


    【解决方案1】:

    如果您想要一个不太复杂但比模板匹配更强大的解决方案,我建议您对 SIFT 描述符进行 Hough 投票。该方法对各种问题提供了一定程度的鲁棒性,包括标志的部分遮挡、照明变化和标志的变形。特别是该方法对模板对象的旋转和均匀缩放完全不变。

    算法的基本思想如下:

    a) 从模板中提取 SIFT 特征并查询图像。

    b) 在模板图像中设置任意参考点,并为模板图像中的每个关键点计算从关键点到参考点的向量。

    c) 将模板图像中的关键点与查询图像匹配。

    d) 为查询图像中与该关键点一致的所有对象位置的每个匹配关键点投票。您可以使用在步骤 (b) 中计算的向量以及查询图像中匹配关键点的位置、比例和方向。

    e) 如果对象确实位于图像中,则投票地图应该在其位置具有很强的局部最大值。

    f) 或者,您可以使用模板匹配来验证检测。

    您可以在 Wikipedia here 或原始论文(作者 D. Lowe)here 中阅读有关该方法的更多信息。

    【讨论】:

    • 你的 D 点能更准确吗?我正在使用 OpenCV 实现,但没有类似的东西,只有带有 Homography 的 RANSAC。我想使用霍夫投票,但我没有清楚地得到“对于查询图像中该关键点同意的所有对象位置”,仅给出 1 个匹配项,这是关键点同意的所有位置?
    • 我将解释为关键点投票意味着什么:您创建一个与查询图像具有相同维度的图像,初始化为全零。这是投票地图。现在,对于每个匹配的关键点,您在关键点的图像坐标处向投票地图添加一些正值。将所有关键点的投票加起来后,您就可以准备好投票地图,现在在其中寻找强大的最大值。请注意,您不会在关键点周围的投票地图上仅向一个像素添加值,而是添加一个以它的坐标为中心的 2D 高斯,以考虑关键点的位置不确定性
    【解决方案2】:

    您可以尝试提取特征并训练分类器(线性判别、神经网络、朴素贝叶斯等)。您可以尝试许多候选功能,但我认为您不需要任何太复杂的东西,即使边缘检测很差,假设标志的隔离很好。需要考虑的一些特性是:水平和垂直投影(行和列总计)和边缘像素的简单统计(均值、标准差、偏度等)。有关更多特性想法,请参阅以下任何书籍:

    “形状分类与分析:理论与实践”,作者:Costa 和 Cesar

    “图像处理和计算机视觉算法”,作者 J. R. Parker

    “数字图像处理”,Gonzalez 和 Woods 着

    【讨论】:

    • 如果没有大量的额外研究(选择哪些特征?选择哪个分类器?特征和分类器的具体组合将如何?一起做?需要多少正例和负例来训练分类器?如何处理可变光照、姿势、杂波、遮挡、噪声、模糊等?)。
    【解决方案3】:

    使用 SIFT 或 SURF。您可以通过训练获得不变的描述符,您可以确定表示道路标记(左转、右转或停止)的向量是否与视频中的新匹配。

    【讨论】:

      猜你喜欢
      • 2018-12-07
      • 1970-01-01
      • 2012-02-13
      • 2016-04-07
      • 2019-10-11
      • 1970-01-01
      • 2012-08-01
      • 1970-01-01
      • 2011-02-12
      相关资源
      最近更新 更多