我正在训练一个模型以检测夜空图片中的流星,并且我有一个非常小的数据集,其中包含约85张图像,并且每张图像都带有一个边框。我正在使用从ssd_mobilenet_v1_coco_11_06_2017检查点和Tensorflow 1.4开始的转移学习技术。我正在训练期间将图像调整为600x600像素。我在流水线配置中使用数据增强功能,可水平,垂直地随机翻转图像并旋转90度。在经过5000步之后,该模型收敛到大约0.3的损失,并将检测到流星,但是流星在图像中的位置似乎很重要。我是否必须通过给出每个可能位置的示例来训练模型?我已附加了一个检测运行的样本,在该样本中,我在整个图像上平铺了一颗流星,并获得了各种检测级别(过滤为50%)。我该如何改善呢?detected meteors in image example

最佳答案

很有可能是您的数据,我认为您正在通过提高数据集的异构性来谨慎行事,但也可能是您选择的模型。

值得注意的是,相对于TensorFlow对象检测API model zoo中的其他模型,ssd_mobilenet_v1_coco的COCO mAP最低。您并不是要检测COCO对象,但是对于通用模型的准确性,mAP编号是合理的替代。

在最高级别上,模型的选择主要是在速度/准确性之间进行权衡。您选择的模型ssd_mobilenet_v1_coco偏向于速度而非准确性。因此,我建议您先尝试使用Faster RCNN模型之一(例如,faster_rcnn_inception_v2_coco),然后再花费大量时间对图像进行预处理。

关于tensorflow - Tensorflow对象检测:为什么使用ssd mobilnet v1时图像中的位置会影响检测精度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50045274/

10-12 17:14
查看更多