2

我正在尝试使用 OpenCV 中的 Haar 级联检测图像中的特定对象。

假设我对检测风景图像中的停车标志感兴趣。在为我的训练集定义正图像样本时,哪种图像是最好的:(a)我的对象的完整图像,(b)中等裁剪或(c)紧凑裁剪?

停止标志

同样,什么最适合负面图像?这会影响过拟合吗?我也会感谢有经验的人提供的任何其他一般提示。谢谢。

图片参考: http: //kaitou-ace.deviantart.com/art/Stop-sign-on-a-country-road-Michigan-271990933

4

2 回答 2

3

您只需要想要在阳性样本中检测到的特征。所以 C 图像对于正样本是正确的。

至于负样本,你想要其他一切。尽管如果您在特定环境中使用检测器显然是不现实的,但训练以将其检测为阴性是正确的方法。即很多风景图片等(那些没有停车标志的)

于 2015-11-16T09:59:52.203 回答
2

最好的选择是 (c),因为 (a) 和 (b) 包含太多的特征,遍布标志的边界,这对你来说并不有趣。
它们不仅没有用,而且会严重影响算法的性能。
在情况 (c) 中,它的目的是识别当前窗口中存在您正在寻找的特征的情况。但是(b)和(c)呢?
在这些情况下,算法必须在窗口的一角检测有趣的特征(不幸的是,这个角可能无处不在),同时与该角周围可能发生的所有无限可能性保持一致。
您将需要大量的样本,而且无论如何,即使您最终设法获得可接受的命中率,分离正负样本的工作也非常困难,以至于运行时间会非常长。

至于底片收集,理想情况下,您应该选择能够重现您认为是最终检测器将运行的图像的图像。
例如,如果您认为室内图像对此不感兴趣,请丢弃它们。如果您认为某种景观是您的检测器将运行的景观,请保留其中的大部分。
但这只是理论上的,我觉得改进可以忽略不计。尽可能多地收集图像,不同图像的数量,这真的很重要。

于 2015-11-16T12:44:59.853 回答