水下目标检测之数据集和数据增强方法
水下目标检测之数据集和数据增强方法
通过之前对yolov5的简单学习,发现yolov5的训练和调试都比较方便,因此希望将其运用到水下目标检测的任务中。那么首要任务就是寻找比较合适的数据集作为训练样本,考虑到就少的可怜,此处列举3个针对水下目标检测的数据集。
Real-world Underwater Image Enhancement(RUIE)
大连理工大学的自制数据集,论文,数据集。该数据集的UTTS文件夹有海胆和海参的水下图像共计300张图片(有一张不可用),并配有XML文件省去了标注的过程。
左上为类别分布,由于扇贝类只有2个样本,因此忽略不计;右上为所有box大小的可视化;左下为box中心点的位置分布;右下为box的宽高比例分布。
Aquarium(海生物数据集)
该数据集为roboflow开源数据集,采用的是但需要科学上网,共计640张图片包括了7种海洋生物,此外数据集有做过了旋转和翻转等增强后的版本,增强后共计4670张图片,配备了yolo格式的box文件。
湛江水下目标检测大赛数据集(鹏城汇智)
数据增强方法
YOLO自身搭载了masoic和mixup以及copy_paste这三种数据增强的方法,而对于水下图像还需要对图像进行除雾、明暗调整、色彩还原等操作,使得图片包含的信息更加准确。
-
defog除雾算法 何恺明的暗通道先验方法,论文,网络上的博客总结很多,具体原理在这里不再赘述,总之暗通道算法实现的效果极佳,但计算速度相对较慢。 clahe限制对比度自适应直方图均衡化 通常应用在医学领域,但本质上是解决亮部和暗部信息不足的问题,因此也适用于水下环境,且集成在了opencv中在YOLO的源码中也很容易被调用,位置在增强工具下的hist_equalize方法。论文。 Retinex图像增强算法 物体的颜色是由物体对长波(红色)、中波(绿色)、短波(蓝色)光线的反射能力来决定的,而不是由反射光强度的绝对值来决定的,物体的色彩不受光照非均匀性的影响,具有一致性,即retinex是以色感一致性(颜色恒常性)为基础的,具体理论可以参考。 GAN对抗神经网络 对于水下色彩还原分为两种方法,第一种是基于传统光学原理获取环境信息,通过数学计算还原出原本应有的色彩和图像,而第二种是基于对抗神经网络生成正确色彩的图像。具体可以参考,由于基于GAN的图像增强算法是一个独立领域,在此篇不做深入展开。
还有许多对水下图像处理的方法,可以应用在数据集上进行实验,此处我只使用了前面两种,可能后面会单独补充GAN方法,增强后的效果如下:
代码可以参考