我使用的是从Tensorflow物体检测API的更快R-CNN盗RESNET V2模式培养了CNN的安全标志的检测。因为我没有真正的图像数据集,我写这创建了一个包含计算机的人工数据集drawed签署从公开的数据集(GTSDB,KITTI等),图像和真实世界的背景图像的代码。虽然训练模型上看不见的人工图像的伟大工程,它不能很好地对我采取了与我的iPhone 5SE真实世界的测试图像的工作。
我从imgaug(https://imgaug.readthedocs.io/en/latest/index.html)已经各种数据增强技术和搜索互联网寻找一个解决方案,但没有现实世界图像的任何成功。
还调整测试图像的大小接近训练图像的大小,将它们转换为.png格式并没有任何影响。
我的一个人造的图片,这是我使用的训练(尺寸:640×480,格式为:.PNG):
与真实世界的测试图像,这应该被用来检验模型的一个(尺寸:3024x4032,格式:.JPG):
我的想法是,我的图像没有足够接近真实世界的图像,因此,后者的分类不起作用。另一个想法是,我的数据集没有包括足够的“正常”(没有大量增强图像,还没有被增加了很多高斯噪声,旋转,缩放等)训练图像。任何想法如何,我可以让我的训练图像更真实?任何其他输入也是欢迎的。
我们做了我们公司的类似的东西。一般来说,这是一个坏主意,只有当得到这样的数据,没有其他的办法是应尽可能使用。事实上,一个星期花费上标注现实世界的数据会给你更好的结果。
但是,如果你想采用这种做法,这里有我们认为有用的提示:
这些仅仅是对过度拟合的建议。
另外,我可以看到列车组和测试组的决议显着不同。调整测试图像输送到你的模型之前手动设置。