使用鱼眼镜头进行物体检测

时间:2015-07-16 17:06:25

标签: opencv detection

我正在尝试在openCV中使用生猪探测器,通过鱼眼从视频输入中检测3种类型的物体。类型是:

  1. 书籍(由某人持有)
  2. 椅子
  3. 我看到的视频快照看起来就是this website - enter image description here中的这张图片:

    我使用默认的人物检测器设置了hog分类器并尝试先检测人员。我注意到当人们的尺寸与非鱼眼镜头一样(你会用标准的35mm镜头得到的东西),它们会被检测到。如果不是,人们就不会被发现。这似乎是合乎逻辑的,因为分类器会期望人们成为标准尺寸。

    我想知道如何修改分类器来检测穿透鱼眼镜头的人。我看到的选项是这些:

    1. 不会破坏鱼眼效果并运行分类器 - 我不喜欢这样做,因为目前我无法校准相机并获得失真系数
    2. 将人物图像数据集中的人物图像扭曲到我通过视频获得的失真周围并重新训练分类器 - 我认为这会起作用,但我想要理解这不起作用,因为我觉得它有效。
    3. 我的问题是:

      1. 这个问题的有效方法是什么?我的选项#2将适用于所有3种类型的对象(人物,书籍和椅子)。
      2. 什么是好的分类器,可以训练识别3种类型的对象(级联或生猪或其他任何东西 - 请建议一个库)?我的#2扭曲和训练方法是否是一个好的解决方案?

1 个答案:

答案 0 :(得分:1)

将HOG级联重新训练到OpenCV中包含的级联的性能级别将是一个非常复杂的过程。您还必须模拟特定镜头的失真以修改训练数据。

对于最快的解决方案,我建议您首先选择扭曲图像。如果您愿意花时间和资源来重新训练分类器(根据您如何检测椅子和书籍,您可能需要这样做),那么有一些公共可用的行人数据集将非常有用。

1)http://www.vision.caltech.edu/Image_Datasets/CaltechPedestrians/

2)http://pascal.inrialpes.fr/data/human/

由于椅子设计的可变性,您不太可能找到椅子级联。我建议你在你想要检测的特定椅子上训练你自己的级联。我不知道任何现有的书籍级联和快速谷歌搜索没有产生任何有希望的结果。如果您打算培训自己的书籍级联,那么这是一个很好的数据资源是ImageNet。