基于深度学习的水下目标检测与图像增强系统的设计与实现

1.数据集的获取与处理

本文使用的数据集包含水下垃圾和海洋生物。水下垃圾来源于此链接。其中具体的类型如下表所示。

英文标签 (Label) 中文翻译 (Chinese) 备注说明
bio 海洋生物 指鱼类、水草、海星等自然生物(非垃圾)。
rov ROV / 水下机器人 指拍摄画面的机器人自身的部件(如机械臂、线缆),防止被误检为垃圾。
trash_etc 其他垃圾 无法归类到下列具体材质的杂项垃圾。
trash_fabric 布料/织物垃圾 如废弃衣物、帆布、毛巾等。
trash_fishing_gear 废弃渔具 海洋中极具危害的垃圾,如渔网、钓鱼线、浮漂等。
trash_metal 金属垃圾 如易拉罐、铁桶、废弃零件等。
trash_paper 纸类垃圾 如纸板、硬纸盒(虽然水下少见,但存在)。
trash_plastic 塑料垃圾 最常见的垃圾,如塑料袋、饮料瓶、包装袋。
trash_rubber 橡胶垃圾 如废旧轮胎、橡胶手套等。
trash_wood 木质垃圾 指加工过的木材碎片(非自然树枝),如木板、板条箱。

但由于本项目是想检测出具体的海洋生物名称,而不是仅仅显示海洋生物这一个标签的,所有我删除了此数据集中的所有bio相关的图片和标签。寻找了特别的海洋生物数据集来源于此链接。其中具体的类型如下表所示。

英文标签 (Label) 中文翻译 (Chinese) 备注
fish 统称,指普通鱼类
jellyfish 水母
penguin 企鹅 (注意:这是水族馆数据集常见类别)
puffin 海鹦 一种会潜水的海鸟,常在北极圈附近
shark 鲨鱼
starfish 海星
stingray 魟鱼 / 刺鳐 俗称魔鬼鱼那一类的扁平鱼

最后写一个和并程序,将这两个数据集和并到一起。

2 训练过程和结果分析

本文采用yolov8n模型训练数据集,训练的过程的损失函数的收敛曲线如下所示。训练过程良好,未发生过拟合和欠拟合的状态。
在这里插入图片描述

训练的混淆矩阵如下所示。混淆矩阵效果基本满足实际需求,基本上是沿着对角线分别的。

在这里插入图片描述

3.图像增强算法对比

针对水下光线吸收导致的“蓝绿偏色”和“雾化模糊”,本系统实现了双重增强管线:

  • 动态白平衡 (Gray World Assumption):自动修正色温,还原物体真实色彩。
  • CLAHE (限制对比度自适应直方图均衡化):有效去除水下雾气,增强局部纹理细节,极大提升了 YOLO 模型的检测召回率。

增强前后对比如下图所示,第一张是增强后的,第二章原始的图片。

在这里插入图片描述
在这里插入图片描述

4.基于pyside6的可视化界面

可视化界面如下图所示。

在这里插入图片描述

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐