我运行了预训练模型(ssd_mobilenet_v1_coco_2018_01_28)以检测数据集上的边界框,但是该训练模型的性能不佳,因为我检测到的主要对象不在训练模型中。我想保留我的自定义类别为加法类别的预训练模型。
我在管道配置文件中将num_classes
从90设置为91。然后将coco_2017数据集和我的自定义数据集结合在一起,并创建tfrecord文件。然后,我使用model_train.py
进行重新训练。最终损失约为10。我测试了训练好的模型,但是无论在coco数据集还是自定义数据集中,它都无法检测到任何对象。
更奇怪的是,我仅使用coco_2017数据集重新训练了预训练模型。结果也无法检测到任何对象。但是如果使用预先训练的模型,它会很好用。
我还尝试仅使用自定义数据集重新训练模型,并将num_classes
设置为1。label_map.pbtxt中只有一项。经过训练的模型可以很好地检测到我的物体。
对我来说很奇怪。我不知道这些问题。有什么建议吗?
谢谢。