仅在1个类上使用tensorflow对象检测

时间:2017-12-21 02:56:25

标签: opencv tensorflow object-detection

我在我自己的数据集(无人机识别)上使用tensorflow(物体检测),也只有1个名为“无人机”的类,经过约30000步训练后,我的结果模型可以检测到非常高的无人机准确性,但我遇到了问题,我在模型动物园上使用了ssd_inception_v2_coco模型及其fine_tune_checkpoint,现在有时候在我的实时检测中,它检测到人脸是无人机(两个物体之间的差异非常大),我认为因为老检查站。 如何防止检测到与我的无人机对象有很大不同的对象,比如人类,狗,猫...或者有人能为我描述这里有什么问题? 抱歉我的英文不好

1 个答案:

答案 0 :(得分:2)

即使您为一个类训练SSD,它也会自动创建另一个名为background的类。使用未标记为所需类别的训练图像区域(在您的情况下为无人机)训练背景。

一个简单的方法是在同一场景中添加训练样本,其中包括具有无人机的图像和您不想识别为无人机的内容。这样做然后增加时期数应该可以提高精度。

如果您正在进行一些频繁出现无人机物体的应用程序,那么另一种可能性就是为这些事情实际训练网络。这会增加您的培训工作量,但会提高准确性。

SSD的某些实现具有对数据进行硬性负挖掘的选项,因此验证期间出现的错误专门用于培训。如果您熟悉代码,可能需要检查它是否可用。