编辑丨AI约读社

水下目标检测旨在对水下场景中的物体进行定位和识别。这项研究由于在海洋学、水下导航等领域的广泛应用而引起了持续的关注。但是,由于复杂的水下环境和光照条件,这仍然是一项艰巨的任务。因此近年来有多个赛事与水下目标检测相关,如近期正在进行的2021全国水下机器人大赛,接下来我们将介绍在水下目标检测领域的深度学习方法概述。

01

水下目标检测的关键问题

1.1 水下图片模糊

在水下场景中,由于光照影响大大降低了水下图像的质量,从而导致了可见度损失,弱对比度和纹理失真,颜色变化等问题(如下图所示),并且在水下场景中环境复杂,这导致水下目标检测更加困难。

1.2 小目标检测

水下环境中的目标物体通常很小,如:海胆,扇贝,海参等,而当前基于深度学习的目标检测器通常无法有效地检测小物体,或者对小目标物体的检测性能较差。

        

02

水下目标检测的深度学习方法

缓解水下图片模糊主要是通过对水下图片进行增强,去噪,复原等方法,对于小目标检测的问题可以通过数据扩增和改进网络的方式来缓解,接下来我们将介绍近年来解决水下目标检测问题的深度学习方法。

Underwater object detection using Invert Multi-Class Adaboost with deep learning

 

论文链接:https://arxiv.org/pdf/2005.11552.pdf

代码链接:https://github.com/LongChenCV/SWIPENet

主要方法:文中提出了一种用于水下目标小样本检测的SWIPENet,网络中提出了一种样本重加权算法IMA(Invert Multi-Class Adaboost),IMA会减少missed objects(丢失对象)的权重,以减少这些“干扰”样本的影响。并且在SWIPENet中引入了具有RELU的空洞卷积层(dilated conv)它们可以在不牺牲特征图分辨率的情况下获得大的接受区域。

IMA算法:首先顺序训练多个基本分类器,并根据其错误率Em分配权重值α。然后,将由前面的分类器分类错误的样本分配较高的权重,从而使后面的分类器专注于学习这些样本。最后,将所有弱基础分类器组合在一起,形成具有相应权重的整体分类器。IMA还训练了M次SWIPENet,然后将它们整合为一个统一模型。不同的是,在每次训练迭代中,IMA都会减少丢失对象的权重,以减少这些“干扰”样本的影响。

实验结果:达到URPC 2017的冠军结果,45.0map,冠军为45.1map。

SWIPENet的网络结构图:

RoIMix: Proposal-Fusion among Multiple Images for Underwater Object Detection

论文链接:https://arxiv.org/abs/1911.03029

主要方法:URPC 2019水下目标检测竞赛冠军方案:多图像融合增强,针对水下场景重叠和遮挡(水下生物喜欢聚在一起)、模糊(水中沉淀物导致)的问题,提出一种基于候选框融合的图像增强方法,以生成模拟重叠、遮挡、模糊的训练样本,从而提高模型的mAP和鲁棒性。RoIMix算法使用RPN产生ROI,并以随机的比例混合它们。该比例是根据Beta分布产生的,然后,使用混合样本来训练模型。

下图中:  
即为用RoIMix图像增强方法生成的模拟遮挡+模糊的训练样本

RoIMix的网络结构图:

实验结果:达到URPC 2019的冠军方案,ROIMIX和BaseLine之间的最大性能差异为9.05%个mAP值。

An Underwater Image Enhancement Benchmark Dataset and Beyond

论文链接:https://arxiv.org/abs/1901.05495v1

代码链接:https://github.com/Li-Chongyi/Water-Net_Code

主要方法:文中提出了一个新的具有950张水下图片的数据集UIEBD,包含各个水下场景,以及水下各种特征退化(光线不足、雾)的情况,用数据集UIEBD对12种现阶段主流的水下图片增强算法进行评测和验证。并且提出基于fusion的水下图片增强模型DuwieNet。

12种水下数据扩增方法比较:

DUIENet:

基于所构建的UIEBD数据集,作者提出了一种用于水下图像增强的CNN模型,称为DuwieNet。DuwieNet是—种门控融合网络,它将输入与预测的置信度图融合以获得增强的结果。首先通过FTUs将输入转换为精确的输入,然后预测置信度图。最后,将改进后的输入与相应的置信度图进行融合,得到增强后的结果。其结构图如下所示:

实验结果

03

水下目标检测比赛的开源方案

在去年的2020年全国水下机器人(湛江)大赛水下目标检测比赛众多,部分选手公开了他们的参赛方案,他们在比赛中的经验这对我们研究水下目标检测具有很大的参考价值,下面我根据使用的检测框架进行分类,简单介绍其中的几个开源方案

3.1 mmdection

和鲸社区Kesci 水下目标检测算法赛(光学图像赛项)三等奖 单模方案

代码链接https://github.com/milleniums/underwater-object-detection-mmdetection

方法简述:

  1. 使用两阶段检测框架,保证精度要求;

  2. 使用FPN,增强小目标的检测效果;

  3. 使用Mixup、旋转等无损的数据增强技术,减轻网络过拟合,并提升模型泛化能力;

  4. 使用多尺度训练与预测,适应图片分辨率差异,可以让参与训练的目标大小分布更加均衡,使模型对目标大小具有一定的鲁棒性;

  5. 参考ResNet论文,使用Global Context ROI为每个候选框添加上下文信息,充分利用数据分布特点,提升了检测精度。

消融实验:

和鲸社区Kesci 水下目标检测算法赛(光学图像赛项)30(A榜) / 31(B榜)

代码链接:https://github.com/Wakinguup/Underwater_detection

方法简述:

1、数据增强:

采用Mixup、实例平衡增强、模糊(Median Blur和 Motion Blur)、Retinex、泊松融合、标签平滑。

2、模型框架:

mmdetection代码库中的Cascade R-CNN模型,其中backbone是ResNeXt101-64x4d (64是基数Cardinality,X101的一个block的group数量。而4d是指bottleneck的宽度)。模型同时也搭配了FPN[3],增强模型对小目标的检测能力。

3.2 EfficientDet

EfficientDet训练水下目标检测数据集

代码链接:https://github.com/DataXujing/EfficientDet_pytorch

方法简述:

这个使用EfficientDet进行水下目标检测,仅是baseline无任何tricks,Step by Step演示如何训练最近开源的相对SOTA的Pytorch版的EfficientDet的训练,评估,推断的过程。像paper中提到的一样,我们并没有使用任何数据增强或模型融合等后处理的trick来提高模型的精度,如果你想增加数据增强的策略可以在efficientdet/dataset.py中实现;

3.3 YOLOV5

我们团队这次也参加了2021年全国水下机器人(湛江)大赛,为大家开源了YOLOV5检测的baseline,大家可以这篇文章水下目标检测算法比赛  Baseline分享 -- 提交成绩:0.500 [124/678]获取代码

04

总结

水下目标检测目前任然还是一个具有挑战的领域, 相比于传统图像处理方法分多个步骤和环节处理检测任务, 基于深度学习的方法将其统一为端到端的特征提取和分类。虽然水下目标检测技术已经不断地从学术研究走向成熟的工业应用, 但是依然有一些需要解决的问题。

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、orb-slam3等视频课程)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

一文梳理水下检测方法相关推荐

  1. 一文梳理缺陷检测方法

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 近年来,随着深度学习的快速发展,基于卷积神经网络(CNN)的计算机视觉技术在工业领域得到了广泛的应用. ...

  2. 一文梳理水下目标检测方法

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨南山 来源丨AI约读社 AI博士笔记系列推荐 周志华<机器学习>手推笔记正式开源!可打印版本 ...

  3. 文献阅读——时空域联合的水下未知线谱目标检测方法

    时空域联合的水下未知线谱目标检测方法(DOI: 10.11999/JEIT180796) 参 考 文 献 [1]WITTEKIND D K. A simple model for the underw ...

  4. 一文览尽LiDAR点云目标检测方法

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 转载于 :计算机视觉之路,作者:山涧一壶酒 / 导读 / 自动驾驶中的激光雷达点云如何做特征表达,将基 ...

  5. 一文览尽基于激光雷达点云(lidar)的目标检测方法

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文来源:计算机视觉之路,作者:山涧一壶酒,编辑:智车科技 / 导读 / 上周文章:自动驾驶中的激光雷 ...

  6. 异常检测方法梳理,看这篇就够了!

    本文收集整理了网络上一些常见的异常检测方法(附资料来源和代码),可以说是非常全面了,内容有点长,不着急,先收藏起来,每天学习一点点就是领先的开始. 一.基于分布的方法 1. 3sigma 基于正态分布 ...

  7. 计算机视觉-深度学习图像检测方法梳理

    计算机视觉-深度学习图像检测方法梳理 由于之后要转方向啦,趁这段时间整理手中硕士研究方向的一些阅读笔记,这是一篇关于计算机视觉的基础知识梳理 先搞清一些小知识点 首先我们要弄清楚图像分类.目标定位.语 ...

  8. 从数据集到2D和3D方法,一文概览目标检测领域进展

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:深度学习这件小事 目标检测一直是计算机视觉领域中一大难题 ...

  9. 基于视角特征提取的3D检测方法汇总

    作者丨柒柒@知乎 来源丨https://zhuanlan.zhihu.com/p/458068647 编辑丨3D视觉工坊 这篇文章主要是梳理一下近期3D Detection的进展,分类列举出一些我认为 ...

最新文章

  1. 返乡置业?多数人将掉入陷阱
  2. SAP TABLECONTROL 搜索帮助相关设置
  3. 关于Delphi中TRttiContext.FindType失效的问题
  4. VS2010MFC - TeeChart经验总结(零基础入门到动态创建)
  5. html为什么未响应,Word2010总是未响应怎么办?
  6. linux stoping redis,redis的cluster集群模式shell一键启动/停止/重启/清缓存脚本
  7. System学习笔记003---Windows把内存变成快速虚拟硬盘
  8. Android 自己主动化測试之------ Monkey工具
  9. 华三 h3c ppp配置
  10. win10 安装SQL Server 2005--以及---安装SQL2005之后卸载,重新安装时提示“安装默认报表服务器的必备组件检查失败”的方法
  11. python控制浏览器最小化_如何在最小化浏览器的情况下使用selenium webdriver执行测试...
  12. lede 内核 单 编_openwrt详细设置教程,lede固件设置中文
  13. QQ空间自动删除说说的js脚本(亲测有效)
  14. Android Behavior之ViewPager+Fragment+RecyclerView实现吸顶效果
  15. MySQL常用操作指令大全
  16. Android图片的裁剪
  17. Java语言中 (游戏:彩票)修改程序清单3-8,产生三位整数的彩票。程序提示用户输入一个三位整数,依照以下规则判定用户是否赢得奖金:
  18. QQ邮箱不显示图片解决方案
  19. c 全国计算机二级考试真题及答案,全国计算机二级考试《C语言》真题练习及答案...
  20. Bea公司和sun公司介绍

热门文章

  1. TNS-12518 Linux Error:32:Broken pipe
  2. angularjs-ngModel 控制页面的宽度
  3. 编译php时错误make ***[libphp5.la] Error 1
  4. VS2010去掉每次全部编译
  5. Route 66地图安装的一个简单方法,在N70上验证过
  6. Java基础篇:多线程
  7. leangoo敏捷工具卡片关联上线
  8. Leangoo看板工具做敏捷故事地图看板示例
  9. 阻塞、非阻塞、多路复用、同步、异步、BIO、NIO、AIO 一锅端
  10. IDEA跟Eclipse险些打一架。Maven:都住手,我来一统天下