水下目标检测之数据集和数据增强方法

水下目标检测之数据集和数据增强方法

通过之前对yolov5的简单学习,发现yolov5的训练和调试都比较方便,因此希望将其运用到水下目标检测的任务中。那么首要任务就是寻找比较合适的数据集作为训练样本,考虑到水下图像数据集就少的可怜,此处列举3个针对水下目标检测的数据集。

Real-world Underwater Image Enhancement(RUIE)

大连理工大学的自制数据集,论文https://arxiv.org/abs/1901.05320,数据集https://github.com/dlut-dimt/Realworld-Underwater-Image-Enhancement-RUIE-Benchmark。该数据集的UTTS文件夹有海胆和海参的水下图像共计300张图片(有一张不可用),并配有XML文件省去了标注的过程。

RUIE数据分布左上为类别分布,由于扇贝类只有2个样本,因此忽略不计;右上为所有box大小的可视化;左下为box中心点的位置分布;右下为box的宽高比例分布。

Aquarium(海生物数据集)

该数据集为roboflow开源数据集,采用的是但需要科学上网https://universe.roboflow.com/brad-dwyer/aquarium-combined/3,共计640张图片包括了7种海洋生物,此外数据集有做过了旋转和翻转等增强后的版本,增强后共计4670张图片,配备了yolo格式的box文件。
Aquarium数据分布

湛江水下目标检测大赛数据集(鹏城汇智)

2020水下目标检测算法赛https://code.ihub.org.cn/projects/1372 ,比赛结果https://www.pcl.ac.cn/html/897/2020-05-06/content-2950.html。数据集和RUIE的图片类似,但共有4类目标物体(海参、海胆、扇贝和海星)共计5544张图片,并配有xml文件但缺少了图片的size信息。数据集相对比较完整,有需要的同学可以私信我,或可以选择CSDN下载库
湛江大赛数据分布

数据增强方法

YOLO自身搭载了masoic和mixup以及copy_paste这三种数据增强的方法,而对于水下图像还需要对图像进行除雾、明暗调整、色彩还原等操作,使得图片包含的信息更加准确。

  • defog除雾算法
    何恺明的暗通道先验方法,论文http://kaiminghe.com/publications/cvpr09.pdf,网络上的博客总结很多,具体原理在这里不再赘述,总之暗通道算法实现的效果极佳,但计算速度相对较慢。

  • clahe限制对比度自适应直方图均衡化
    CLAHE 限制对比度自适应直方图均衡化通常应用在医学领域,但本质上是解决亮部和暗部信息不足的问题,因此也适用于水下环境,且集成在了opencv中在YOLO的源码中也很容易被调用,位置在增强工具下的hist_equalize方法。论文https://www.cs.unc.edu/techreports/90-035.pdf

  • Retinex图像增强算法
    物体的颜色是由物体对长波(红色)、中波(绿色)、短波(蓝色)光线的反射能力来决定的,而不是由反射光强度的绝对值来决定的,物体的色彩不受光照非均匀性的影响,具有一致性,即retinex是以色感一致性(颜色恒常性)为基础的,具体理论可以参考这篇博客

  • GAN对抗神经网络
    对于水下色彩还原分为两种方法,第一种是基于传统光学原理获取环境信息,通过数学计算还原出原本应有的色彩和图像,而第二种是基于对抗神经网络生成正确色彩的图像。具体可以参考这篇博客,由于基于GAN的图像增强算法是一个独立领域,在此篇不做深入展开。

还有许多对水下图像处理的方法,可以应用在数据集上进行实验,此处我只使用了前面两种,可能后面会单独补充GAN方法,增强后的效果如下:
原图

原图

除雾

defog

直方图均衡

CLAHE

MSRCR

MSRCR

代码可以参考https://blog.csdn.net/Pariya_Official/article/details/128424008?spm=1001.2014.3001.5502

  • 33
    点赞
  • 261
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 36
    评论
Matlab是一种功能强大的数值计算和仿真软件,可以用于模拟和分析各种类型的信道,包括水下信道。 水下信道是指在水下传输数据的通信路径。由于水下环境的特殊性,信号在水中传播受到许多因素的影响,例如水质、水深、湍流等。仿真水下信道可以帮助我们理解信号在水中的传播过程,并优化通信系统的设计。 Matlab提供了许多工具和函数,可以用于建立水下信道模型并进行仿真。首先,我们可以使用Matlab中的统计工具来分析和建模水下传播环境的参数。根据水下环境的特性,我们可以选择合适的传播模型,例如光传播模型或声波传播模型。 然后,我们可以使用Matlab的信号处理和通信工具箱来模拟和分析数据传输过程。我们可以生成水下信道中的信号,并将其传输到接收端。接收端可以模拟各种接收策略,例如使用均衡器或解码算法来恢复传输的数据。 通过使用Matlab进行水下信道仿真,我们可以实现以下目标: 1. 评估不同传输参数对信号质量和传输速率的影响。例如,我们可以分析水深、湍流强度等因素对信号损失和传输延迟的影响。 2. 比较不同调制和编码方案在水下环境中的性能。通过模拟各种调制方案,我们可以找到适合水下信道的最佳方案。 3. 优化通信系统的设计。通过使用Matlab仿真水下信道,我们可以优化传输参数和算法,以提高数据传输的可靠性和速度。 综上所述,Matlab可以通过提供各种工具和函数来支持水下信道的仿真,从而帮助我们研究和优化水下通信系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 36
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帕里亚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值