如何为自定义图像重新训练Mobilenet模型

时间:2019-02-18 05:14:40

标签: python tensorflow model training-data

我已经按照tensorflow for poets教程学习,并且对如何为自定义对象重新训练模型有基本的了解。在本教程中,我针对不同种类的花朵重新训练了模型,然后使用了新生成的图形并获得了正确的结果。

现在,我想重新训练模型,在这里,我有500多张engineers(人)在建筑工地上工作的照片。由于某种原因,该模型无法提供正确的精度,因为它只能检测2个人,而框架中只有4个人。我想到对照片进行再培训,然后再次使用。这里我有几个问题:

  1. 我需要标记照片中的所有人吗?
  2. 照片还包含卡车之类的车辆,所以我也应该标记这些车辆并创建另一个要训练的数据集。
  3. 如何标记图像。我使用了这个label image,它生成了xml file,但我认为我们需要像tensorflow for poets
  4. 中所述给照片重新训练模型

任何人都可以帮助我理解为任何自定义对象重新训练模型的这些概念。请帮忙。谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用转移学习来训练模型。也就是说,您可以使用一些经过预先训练的移动网络模型来初始化模型的权重,然后从那里开始进行训练。

关于您的问题:

  1. 是的,由于网络需要检测框架中的每个人,因此应该在图像中标记所有具有相同类别的人(让我们说工人)。如果您不标记所有人,则可能会混淆需要检测的内容,因为标记人和未标记人没有任何区别属性。
  2. 如果您只想检测人,则无需在图像中标记卡车/火车/车辆。
  3. 您可以使用xml文件或json文件为图像添加标签。但是您删除图像的方法应该很熟悉,因为您需要将这些数据发送到网络。人们经常使用xml格式,因为每个xml都对应于每个图像,并且每个xml内的每个标签都定义了位于该图像内部的对象,并带有各自的坐标和类。

希望这会有所帮助:)