我是对象检测的新手,正在尝试重新训练TensorFlow中的对象检测API以在照片中识别特定车型。在准备自己的训练数据以重新训练模型时,除了绘制边界框等操作之外,我的疑问是,是否还需要在训练数据中准备负面示例(即不是我感兴趣的车型的汽车)以达到良好的性能?
我已经阅读了一些教程,这些教程通常给出检测一种对象的示例,并且他们准备的训练数据只标记了那种类型的标签。我在想,既然模型首先会提出一些感兴趣的区域,然后尝试对这些区域进行分类,如果我想从照片中检测非常具体的东西,是否也应该准备负面示例。
我正在重新训练基于faster_rcnn的模型。感谢您的帮助。
回答:
是的,为了获得更好的性能,您也需要负面示例。看起来您在考虑使用迁移学习来训练一个预训练的faster_rcnn模型,以添加一个新的类别来识别您的定制车型。您应该从相同数量的正面和负面示例(带有标记边界框的图像)开始。除了您目标车型之外,您还需要准备几种负面类别的示例(例如,负面车型1,负面车型2,负面车型3)。
您可以在我的GitHub仓库的数据文件夹中查看用于迁移学习的训练数据示例,这些示例包括一个正面类别和多个负面类别:PSV Detector Github