在张量流模型中使用 faster-RCNN 进行小物体检测
small object detection with faster-RCNN in tensorflow-models
我正在尝试训练用于小数字检测的 faster-rccn 模型。我正在使用动物园新发布的 tensorflow object detection API and so far have been fine tuning a pre-trained faster_rcnn_resnet101_coco。我所有的训练尝试都产生了高精度但召回率低的模型。在每张图像的约 120 个对象(数字)中,仅检测到约 20 个对象,但检测到时分类是准确的。 (此外,我能够在我裁剪后的图像上以高精度从头开始训练一个简单的卷积神经网络,因此问题出在模型的检测方面。)原始图像中的每个数字平均为 60x30(可能约为该大小的一半在图像被输入模型之前调整大小后。)这是一个示例图像,其中包含我所看到的检测框:
令我感到奇怪的是它如何能够正确检测到相邻的数字,但完全错过了像素尺寸方面非常相似的其余数字。
我已经尝试调整锚框生成和 first_stage_max_proposals
周围的超参数,但到目前为止没有任何改进结果。这是一个示例 config file I have used. What other hyperparameters should I try adjusting? Any other suggestions on how to diagnose the problem? Should I be looking into other architectures 还是我的任务看起来可以使用 faster-rccn and/or SSD?
最后,直接的问题是我没有正确使用可视化工具。通过更新 Johnathan 在评论中描述的 visualize_boxes_and_labels_on_image_array
的参数,我能够看到我至少检测到比我想象的更多的盒子。
我检查了你的配置文件,你正在将图像的分辨率降低到 1024。你的数字区域不会包含很多像素,你正在丢失一些信息。我的建议是用另一个数据集(较小的图像)训练模型。例如,您可以在 4 个四个区域中裁剪图像。
如果你有一个好的 GPU 增加 image_resizer 中的最大尺寸,但我猜你会 运行 内存不足
我正在尝试训练用于小数字检测的 faster-rccn 模型。我正在使用动物园新发布的 tensorflow object detection API and so far have been fine tuning a pre-trained faster_rcnn_resnet101_coco。我所有的训练尝试都产生了高精度但召回率低的模型。在每张图像的约 120 个对象(数字)中,仅检测到约 20 个对象,但检测到时分类是准确的。 (此外,我能够在我裁剪后的图像上以高精度从头开始训练一个简单的卷积神经网络,因此问题出在模型的检测方面。)原始图像中的每个数字平均为 60x30(可能约为该大小的一半在图像被输入模型之前调整大小后。)这是一个示例图像,其中包含我所看到的检测框:
令我感到奇怪的是它如何能够正确检测到相邻的数字,但完全错过了像素尺寸方面非常相似的其余数字。
我已经尝试调整锚框生成和 first_stage_max_proposals
周围的超参数,但到目前为止没有任何改进结果。这是一个示例 config file I have used. What other hyperparameters should I try adjusting? Any other suggestions on how to diagnose the problem? Should I be looking into other architectures 还是我的任务看起来可以使用 faster-rccn and/or SSD?
最后,直接的问题是我没有正确使用可视化工具。通过更新 Johnathan 在评论中描述的 visualize_boxes_and_labels_on_image_array
的参数,我能够看到我至少检测到比我想象的更多的盒子。
我检查了你的配置文件,你正在将图像的分辨率降低到 1024。你的数字区域不会包含很多像素,你正在丢失一些信息。我的建议是用另一个数据集(较小的图像)训练模型。例如,您可以在 4 个四个区域中裁剪图像。
如果你有一个好的 GPU 增加 image_resizer 中的最大尺寸,但我猜你会 运行 内存不足