【发布时间】:2019-02-09 20:31:19
【问题描述】:
我正在使用来自 Tensorflow 对象检测 API 的 Faster R-CNN Inception ResNet v2 模型来训练 CNN 进行安全标志检测。由于我没有真实的图像数据集,因此我编写了一个代码,该代码创建了一个人工数据集,该数据集由计算机绘制的标志图像和来自公开数据集(GTSDB、KITTI 等)的真实世界背景图像组成。虽然经过训练的模型在看不见的人造图像上效果很好,但它在我用 iPhone 5SE 拍摄的真实世界测试图像上效果不佳。
我已经从 imgaug (https://imgaug.readthedocs.io/en/latest/index.html) 获得了各种数据增强技术,并在互联网上搜索了解决方案,但对于真实世界的图像没有任何成功。
此外,将测试图像的大小调整为接近训练图像的大小并将它们转换为 .png 没有任何效果。
我用于训练的人造图像之一(尺寸:640x480,格式:.png):
还有一张真实世界的测试图片,用于测试模型(尺寸:3024x4032,格式:.JPG):
我的想法是我的图像与真实世界的图像不够接近,因此后者的分类不起作用。另一个想法是,我的数据集没有包含足够的“正常”(不是大量增强的图像,没有用大量的 gaussianNoise、旋转、缩放等进行增强)训练图像。 有什么想法可以让我的训练图像更真实吗?也欢迎任何其他意见。
【问题讨论】:
标签: python image opencv dataset object-detection-api