进行“AI识虫”数据增广时,遇到这样一个问题。模型训练完成后,查看标注的图片,发现有些角度的虫子无法识别。所以添加了ImageEnhance自带的旋转90,180,270度处理,提高了MAP。而添加了自由旋转处理后发现验证集的MAP并未有明显提高,而且验证集的loss开始剧烈震荡。仔细观察测试集图片,发现有些虫子图片是换了90度复制的。所以添加旋转90度的处理能提高MAP,而任意角度的旋转处理反而效果不好。但在实际的项目中,任意角度的旋转还是有效的。是这样吗?据说google推出的一个新数据集特意收集了特殊角度的图片,使一些在传统数据集上表现很好的模型的准确率大幅下降。我的问题是,在本次练习赛的数据集里任意角度旋转性能不佳,而实际上这只是验证集数据分布的问题。在实际应用中任意角度旋转以及仿射变换还是能够增加识别模型的鲁棒性的。
收藏
点赞
0
个赞
TOP
切换版块
今天在一个大佬的项目里找到了一段代码,这就试试。他也是用三角函数算的角度。
嗯,做増广也得考虑合理性。
对于任意角度旋转,会有一个问题,光旋转的话边角会有填充,你看看放大填满试试看
一般有的数据集是不合适旋转的,比如人的照片,倒立的人一般是不会出现的
见过可参考的项目?
可以借鉴一下别人项目咋实现的
这些比较容易都做了,就是任意角度旋转,不好一起旋转标注框。
图像亮度、对比度、色度上的增广
我还是没太明白“灰度值上的増广”是什么意思。舍弃两个通道以节省资源?还是说灰度化后有利于做任意角度旋转后标注框的旋转?
说的是将图片灰度化吧。这个我试过了。将三个通道全部取原图片的像素值得平均。
那就做灰度值上的增广也是可以的
后来发现一些图像数据増广的库能处理标注框。
我都考虑用边缘检测的卷积核来算旋转后的标注框尺寸了。
其他90度,180度,270度旋转很好处理。任意角度旋转后标注框的宽高不好处理。
因为标注框内的目标形状不规则,直接旋转标注框会导致被标注部分出框、部分空隙过大
自己写标注框任意角度旋转比较难
检查一下增广后的,数据标注有没有正确增广
可能我的标注框旋转处理的不好,导致反而准确率下降。
可以吧
这个数据集上确实如此。应该是能增加泛化能力的吧。