【问题标题】:Object Detection using OpenCV in C++在 C++ 中使用 OpenCV 进行对象检测
【发布时间】:2012-06-27 00:02:25
【问题描述】:

我目前正在为我正在建造的无人机开发视觉系统。该系统的目标是在视频流中找到定义相当明确(见下文)的目标对象,该视频流将是地面的二维飞越视图。到目前为止,我已经尝试过训练并使用基于 Haar 特征的级联(la Viola Jones)来进行检测。我正在使用 5000 多张不同角度(透视变化)和范围(框架中的大小)的目标图像对其进行训练,但只有 1900 张“背景”图像。这根本不会产生好的结果,因为我无法找到合适数量的级联级联来平衡少量误报和少量误报。

我正在寻求任何在这方面有经验的人的建议,关于我是否应该:1)放弃级联,转而使用更适合由其轮廓和颜色定义的对象(我已阅读VJ 级联不是)。 2)改进我的级联训练集,或者通过添加正面、背景帧、更好地组织/拍摄它们等。 3)我目前无法理解的其他一些方法。

目标描述:

  • 主要形状:三角形、正方形、圆形、椭圆形等。
  • 独特、纯色、原色(或接近)颜色。
  • 最小的尺寸在 2 到 8 英尺之间(大到足以从几百英尺的 AGL 上轻松看到
  • 对象中心有一个大的单个字母数字,具有自己独特的、纯色、原色或几乎原色。

我的目标是使用非常快速的东西,例如 VJ 级联,找到可能的对象及其关联的边界框,然后将它们传递给更精细的处理例程以确定属性(对象的颜色和 AN,值AN、实际形状和 GPS 位置)。您可以为我完成此目标提供的任何建议将不胜感激。我目前拥有的源代码在这里发布有点长,但如果您想查看它以供参考,可以免费获得。提前致谢!

-JB

【问题讨论】:

    标签: opencv computer-vision object-detection


    【解决方案1】:

    我建议放弃 Haar 分类,因为您对自己的对象了解很多。在这些情况下,您应该首先检查您可以使用哪些功能:

    1)如您所说,头顶飞行意味着您基本上可以将这些视为二维平面上的固定形状。会有缩放、旋转和一些小的仿射变换,这在很大程度上取决于你的相机的广角。如果它不是特别广角,那部分可能可以忽略不计。此外,您可能知道您的高度,通过它您可能还可以很好地假设目标大小(缩放)。

    2) 你知道颜色,这也让你很容易找到对象。如果这些非常定义为原色,那么您可以根据颜色过滤图像并找到这些轮廓。如果你想做一些更高级的事情(虽然对我来说似乎没有必要......)你可以做一个backprojection,根据我的经验,这是非常有效和快速的。请注意,如果您正在创建对象,最好使用红绿色和蓝色而不是原色(红绿色和黄色)。然后你可以简单地将图像split 放入其各自的通道并使用非常高的阈值。

    3) 你知道几何形状。我自己从来没有这样做过,但据我所知,选项是使用moments 或使用霍夫变换(虽然openCV只有直线和圆的霍夫算法,所以你必须为其他形状编写自己的...)。不过,如果没有这一步,您可能已经获得了足够好的结果...

    如果您想要更具体的建议,上传几张示例图片会非常有用。 :)

    【讨论】:

    • 非常感谢 lifesayko 的精彩提示!这是我的快速回复:我不是在制作这些,这是比赛的一部分,主持人将制作这些目标并将其“隐藏”在搜索区域中。我们事先也不知道颜色,只知道它们将与周围的棕色/绿色土地形成鲜明对比。一旦我知道如何在此处上传,我将很乐意上传几张示例图片。
    • meta.stackexchange.com/questions/28525/… :)。如果比赛有网站等,链接也足够了。
    • 是的,2) 中的点实际上对您来说应该绰绰有余。您可以通过不同的方式来处理它(过滤掉已知背景,主动搜索对象颜色等)。除非您需要区分目标的类型,否则我怀疑您甚至需要在 3) 中进行形状匹配,无论如何,如果您决定这样做,我会花些时间。
    【解决方案2】:

    可能已解决,但我最近看到一篇论文,其中包含使用归一化梯度特征进行通用对象检测的开源许可证:http://mmcheng.net/bing/comment-page-9/

    关于光照、旋转和缩放的算法性能细节可能需要一点挖掘。我不记得原始论文在哪里。

    【讨论】:

      猜你喜欢
      • 2010-12-03
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 2021-08-29
      • 2013-05-05
      • 2016-03-24
      • 2011-08-21
      • 1970-01-01
      相关资源
      最近更新 更多