2. 深海技术科学太湖实验室 江苏 无锡 214082
2. Taihu Laboratory of Deepsea Technological Science, Wuxi 214082, China
水下目标检测在海洋军事应用、水下救援、水产养殖等领域中发挥着愈加重要的作用[1]。但由于水下环境复杂、光线昏暗且模糊多噪声,水下光学图像色域偏移和图像失真等问题较为严重,这非常不利于检测网络进行推理,通用的目标检测方法很难保证在视觉退化的水下环境中高精度实时鲁棒地检测水下多尺度目标。此外,水下目标检测算法常搭载水下机器人一起使用,在嵌入式移植的过程中对算法的实时性提出了更高要求。因此,研究一种检测水下目标的理论和方法,以实现高精度实时检测,并增强其在复杂水下环境中的检测鲁棒性,对于在视觉退化的水下环境中,推动水下多尺度目标的有效识别及探测具有非常深远的影响。
目标检测算法中,对水下目标的检测研究方法一般可分为传统的水下目标检测算法和基于深度学习的水下目标检测算法两大类。传统的水下目标检测算法通常采用人工设计的特征提取方法[2-3]提取图像特征,然后使用支持向量机[4](Support Vector Machine,SVM)等分类器实现目标的分类和检测。Fabic等[5]设计了基于形状分类的算法,利用斑点计数法和形状分析法对水下视频序列中的鱼类进行分类,虽针对鱼类的检测精度较高,但其通用性差,无法迁移至其他水下场景。Olivern等[6]利用黑森检测器检测水下目标,但当水体光照不均匀时算法的性能会迅速衰减,难以保证对于水下目标的检测鲁棒性。丰子灏等[7]设计了一种水下清晰度评估算子,并构建相应的参数估计算法以检测水下图像中感兴趣的区域。姚润璐等[8]制定水下图像各区域的匹配规则从而提取关联度更高的水下区域进行目标检测,但其提取过程过于复杂,不利于大量数据的分析。上述传统水下目标算法存在如下问题:首先是特征提取无法进行自适应提取,且提取的效果高度取决于设计者的经验水准;其次是计算特别复杂,而且泛化性差,更换其他场景后效果不好。对比之下,以深度学习为基础的目标检测算法可解决上述问题,也可自适应提取特征且检测速度和精度都较高,在水下目标检测领域有着很大的应用前景。基于深度学习的轨道入侵异物检测方法可分为两阶段算法[9-11]和单阶段算法[12-16]。其中,两阶段检测方法分为两步,先生成候选区域,再进行目标定位和检测。王璐等[17]加深了Faster-RCNN[11]主干特征提取网络的深度,并结合数据增强算法旨在提升对于水下目标的检测精度。高岳等[18]将Faster-RCNN候选区中的特征图进行同尺寸映射,并采用柔性非极大值抑制算法降低水下目标的漏检率。上述两阶段算法的检测精度较高,但其过于复杂的计算量导致算法无法满足在水下环境中实时目标的实际检测需求。单阶段检测方法将分类问题视为回归问题,直接对图像中的目标进行预测。刘腾等[19]对水下图像进行色彩恢复后,再使用YOLOv3(You Only Look Once, YOLO)[15]进行水下目标检测,虽检测精度有所提高但其检测速度较慢,无法满足实际应用需求。强伟等[20]使用Resnet和深度可分离卷积对SSD(Single-Shot MultiBox Detector, SSD)[12]进行改进,旨在降低计算量,提升算法的检测速度,但该算法的检测精度提升空间较大且在视觉退化等复杂水下环境中的检测鲁棒性仍有待验证。刘萍等[21]基于GAN[22]提出一种改进YOLOv3网络的海洋生物识别算法,提升了训练数据集所包含场景的丰富性,但过于复杂的图像生成手段导致算法的检测速度偏低,无法实时检测水下目标。综上所述,水下目标检测算法中的重点问题是,实现高精度实时检测水下目标且在复杂环境中保持算法的检测鲁棒性。
针对上述问题,本文对YOLOv5进行改进,得到一种应用于水下目标的端到端多尺度检测网络(UW-Net),保证了在复杂的水下环境中可精准高效的检测水下目标,可以提高水下目标检测速度和检测鲁棒性,同时保证算法的实时性。该网络通过构建高精度轻量型特征提取结构(High precision Lightweight Feature Extraction Module, HLM),在降低算法计算量的同时获取更为丰富的特征信息,使用多尺度特征融合网络ASFF[23]和注意力增强机制(Lightweight Channel Attention Mechanism, LSM)实现不同尺度水下目标特征的自适应融合及权值优化,通过聚类算法生成更为精准的锚框对水下目标预测的精准度。本文所提出的模型在棉绳、钢管、浮筒组成的水下数据集上的平均检测精度和检测速度分别为95.06%和139FPS,比YOLOv5s提升了2.87%和14FPS,能够满足实际复杂水下环境中高精度实时鲁棒地检测水下目标的实际应用需求。
1 模型设计 1.1 网络总体设计本文所提的多尺度目标检测网络借鉴了YOLO系列目标检测算法,仅需一次前向卷积运算即可得到目标类别和位置的思想,按端到端来训练模型。图1为高精度实时水下目标检测网络模型(UW-Net)的总体结构。首先,输入图像通过该网络进行缩放得到固定分辨率的图像(如640×640),并使用稳定底层特征提取模块和CSP-Net构建高精度轻量型特征提取结构,采用多分支多感受野特征信息提取和整合等方式,在保证算法实时性的同时提取更为丰富的特征信息;其次,模型的多尺度检测能力由多特征融合和自适应学习不同尺度信息的特征权重来提高;然后,设计轻量型通道注意力机制在基本不增加计算负荷的前提下优化不同通道的权值分配,进一步提升多尺度目标检测精度。最后,使用K-means[24]聚类针对水下数据集数据分布生成最优锚框,进而提升模型水下目标位置预测的精准度。
高精度轻量型特征提取结构由稳定底层特征提取模块(Conv_1+Conv_2)和CSP-Net特征提取网络(Conv_3+Conv_5)构成,图2为稳定底层特征提取模块的结构示意图。在视觉退化的水下环境中,水下目标的底层纹理、轮廓等特征对后续识别尤为重要,而卷积核在计算的过程中,随着特征图分辨率的不断减小,图像底层特征易被破坏。为了在不丢失特征信息的情况下实现图像降采样,本文设计了一个稳定采样模块来降低输入图像的分辨率并扩大特征维度。在Conv_2中,使用多分支网络得到不同感受野的特征提取结果,通过缩减左分支通道数使得网络更加轻量,使用融合操作对分支网络提取出的特征进行合并后到更为丰富的底层特征信息,最后特征整合由1×1卷积实现。与传统的低层特征提取方法相比,该模块在不增加计算负荷的情况下,实现了稳定的降采样。将该模块添加到特征提取网络的前端,可在不增加额外计算量甚至降低计算负荷的情况下,有效提高模型的底层特征表达能力。
在稳定底层特征提取模块之后,本文设计了CSP-Net特征提取网络进行更为轻量的特征提取,如图3所示。以Conv_3为例,使用2个不同的通道对输入特征图进行特征提取,上通道采用先对输入特征图降维再使用残差连接进行前向传播后,使用1×1卷积整合特征,旨在降低计算量的同时提升模型的特征提取能力;下通道直接使用3×3卷积提取特征,目的是防止与上通道学习重复的梯度信息。最后,先拼接两通道的特征,然后进行下采样,由步长为2的3×3卷积实现,这样可以提升模型的特征提取能力且减少计算量。
一般来说,受拍摄距离及拍摄角度的影响,水下场景中的待识别目标在实际成像中会不可避免地发生尺寸大小上的变化,这种变化一般可通过设计图像特征金字塔来解决,进而可突破特征融合的限制。据此,提出一种基于ASFF融合策略的模型,在特征融合模块预测层中加入可以自适应感受视野的融合结构。通过学习不同感受视野下的分支融合权重来降低目标尺度变化造成的定位分类损失,进而增强模型的特征表示能力,提高模型对于多尺度水下目标的检测精度和检测鲁棒性。图4为融合模型结构图,首先调整其他层次的特征尺度,然后进行特征融合并对其进行训练,获得融合权重,进而更好地学习不同特征尺度对于预测特征图的贡献,以实现某一层特征的融合。
在多分支检测中,不同分支层级的特征具有不同的分辨率和通道数。在尺度调整中,为更好地保留图像空间信息,采用1×1卷积进行通道数压缩,同时节省了部分算力;采用插值方法调整的尺度分辨率,降低网络学习难度。针对多倍下采样,采用卷积和池化的方法。采用3×3卷积(步长设置为2)调整通道数和分辨率,实现2倍下采样;采用在卷积前添加步长为2的maxpooling,实现4倍下采样。
对于模型预测,ASFF-3由多个不同尺度的特征进行融合得到,其包含的3个尺度特征分别来自于Level 1、Level 2和Level 3。
假设来自Level 1部分的为
$ y_{ij}^l = \alpha _{ij}^l \cdot X_{ij}^{1 \to l} + \beta _{ij}^l \cdot X_{ij}^{2 \to l} + \gamma _{ij}^l \cdot X_{ij}^{3 \to l} 。$ | (1) |
式中:
$ \alpha _{ij}^l = \frac{{{e^{\lambda _{{\alpha _{ij}}}^l}}}}{{{e^{\lambda _{{a_{ij}}}^l}} + {e^{\lambda _{{\beta _{ij}}}^l}} + {e^{\lambda _{{\gamma _{ij}}}^l}}}} 。$ | (2) |
受限于水下环境复杂多变,网络模型极易在进行水下光学图像特征提取和目标框的回归任务时出现性能下降情况,并最终表现为漏检和错检。为在保证算法实时性的同时,进一步提升算法对于水下多尺度目标的检测精度,本文设计了一种轻量型注意力机制LAM,如图5所示。
该注意力机制采用2个分支的思路将模型输入通道进行均分,上部分支一的特征提取采用
$ {s_1} = g\left( F \right) ,$ | (3) |
$ {s_2} = {ReLU} \left( {{W_1}{s_1}} \right),$ | (4) |
$ {s_3} = H - {\rm{Sigmoid}}\left( {{W_2}{s_2}} \right) ,$ | (5) |
$ F = {s_3}F。$ | (6) |
其中:
在模型预测之前,根据自身数据集数据分布特点,使用K-means聚类方法重新生成锚框值。在候选框种类组合的更高吻合度问题上,基于式(7)采用不断进行质心迭代的方式进行,使候选框宽高维度对于目标轮廓形状所拥有先验信息更有代表性,使回归计算中水下目标区域位置预测精度更高,从而增加模型检测精度。改进后的锚框具体尺寸和分布如表1所示。
$ d\left( {box,centroid} \right){\text{ }} = {\text{ }}1 - IOU\left( {box,centroid} \right) 。$ | (7) |
式中:
为了评估该目标检测模型的有效性,将平均精度mAP与检测帧率FPS分别作为精度与速度的评价指标,采用含有棉绳,钢管和浮筒3类水下目标数据集开展实验,随后在复杂水下环境下完成测试。训练用服务器使用Intel® CoreTM i7-6950X CPU处理器,配备4块NVIDIA GeForce GTX 1080TI显卡,每个显卡内存为11G。基于Ubuntu18.04操作系统的Pytorch1.8.0和Python3.7深度学习框架,使用GPU(GTX1080Ti)对其进行训练与测试。
2.1 数据采集为测试UW-Net在复杂水下环境中对目标性能的检测能力,构建一个专用数据集。数据集由从真实场景中采集得到的视频及图像组成,含有不同的光照强度、对比度不一和视觉退化的画面。为确保数据集数据量,利用视频抽帧方法生成9955张水下目标图像,对棉绳、钢管、浮筒3类水下目标进行标注。在实验阶段,使用该数据集80%的图像用来进行训练和验证,20%图像用于测试。
2.2 实验结果分析使用随机梯度下降法,并将学习率逐渐减小以优化模型,在该模型中,先将初始学习率定为0.01,并使学习率随迭代次数增加而减少,最大迭代次数300轮、动量参数0.937、权重衰减设置为0.0005、批量大小32,输入分辨率640×640的图片,非极大值抑制值域0.6,目标检测置信度值域0.45。
为验证UW-Net在复杂水下环境中的检测效果,证明该模型优良的高精度实时检测能力及检测鲁棒性,本文使用所提出方法与SSD、YOLO系列算法进行比较,使用平均精度mAP和检测速度FPS综合评估模型的有效性,并突出显示最优结果,实验结果如表2所示。
实验结果表明,MS-Net在水下数据集上取得了95.06%的检测精度和139FPS的检测速度,实时性较好,且对于水下目标各个类别的检测精度明显优于其他模型,能够实现在复杂的实际水下场景中高精度实时鲁棒地检测水下目标。SSD的检测精度和检测速度与MS-Net存在很大差距。YOLOv3-tiny与YOLOv4-tiny以检测精度为代价,在检测速度上取得很大优势,但其检测精度过低,无法保证在实际复杂的水下场景中高精度检测水下目标。相比之下,YOLOv3和YOLOv4则相反,其检测精度有所提升,但复杂的计算过程导致算法实时性较差,无法满足水下场景的实时检测需求。YOLOv5s对检测速度和精度做出了较好折中,但MS-Net展现出了更优良的水下目标检测性能,其检测速度和精度分别比YOLOv5s高2.87%和14FPS,能够在复杂的水下环境中高精度实时鲁棒地检测水下目标,更符合实际水下场景的现场应用。
基于同一水下目标数据集,将上述所有模型进行训练与测试,并将本文所提出的方法与不同模型所检测的对比结果如图6所示。图6中从左至右每一列依次为原始图像、YOLOv4-tiny检测结果、YOLOv5s检测结果以及本文所提出UW-Net的检测结果。第1行为单目标出现的场景,目标所呈现的视觉特征良好,3类模型都能较为准确预测除目标的位置及类别,但UW-Net展现出了更为优越的检测能力,其检测置信度明显高于YOLOv4-tiny和YOLOv5s。第2行为多目标水下场景且存在部分遮挡,YOLOv4-tiny和YOLOv5s无法检测出浮筒类目标,而UW-Net能够识别所有水下目标,在多尺度目标检测和位置回归方面具有更好优势。第3行为视觉特征退化的水下光学图像,该场景中的目标特征纹理较为模糊,YOLOv4-tiny对右上方的棉绳漏检,虽然YOLOv5s的检测置信度较YOLOv4-tiny有所提升,但仍无法有效避免漏检现象,而UW-Net可以在视觉退化的水下场景下鲁棒地检测多尺度目标,特别是纹理特征较为模糊的水下目标。总之,UW-Net对于水下目标的位置与类别均能实现高精度检测,即便是在视觉退化的复杂水下场景也有较好的检测效果,能够满足高精度实时鲁棒检测水下目标的实际应用需求。
证明本文提出的各个结构具有有效性,设计几组消融实验,采用YOLOv5s作为基准测试模型,测量几种结构的检测性能,表3为测量结果,表中消融实验的所有模型均使用K-means均值聚类得出的最优锚框。其中,M-Net分为注意力机制和多尺度特征融合两模块,证明高精度、轻量化特征提取模块提高了检测速度;L-Net分为轻量级的特征提取和注意力机制两模块,证明多尺度特征融合模块提高了检测精度;H-Net分为高精度轻量级特征提取和多尺度特征融合两模块,证明注意力机制模块提高了目标检测的精度。
使用本文设计的UW-Net特征提取结构,UW-Net的检测精度和检测速度比M-Net分别提升了1.04%和31FPS。结果表明,UW-Net特征提取结构不仅提高了水下环境多尺度目标的检测精度,而且大幅度提高了检测速度。然后,将L-Net中的特征融合模块替换为本文所设计的多尺度融合网络,检测精度对比L-Net提升了2.71%。结果表明,该模块采用分享权重的方式自适应融合各个尺度的特征方式大幅度提高了模型的检测精度,能够鲁棒精准地检测水下目标。最后,将轻量型通道注意力机制加入至H-Net,在牺牲极少检测速度的前提下,使得平均检测精度0.85%。结果表明,在基本不增加计算机计算量的条件下,注意力机制模块对于各个通道的权值进行更合理地分配,使得最需要的特征信息更容易被检测出来,进而提高了检测精度。
针对不同的3种水下目标,UW-Net的检测效果均优于M-Net与L-Net,不仅能够实时高精度地检测不同尺度的水下目标,而且提高了模型在复杂水下环境下的检测鲁棒性。
2.4 不同场景的鲁棒性检验为进一步验证所提出模型UW-Net对于复杂水下环境目标的检测鲁棒性,选取不同复杂水下环境进行了实验,检测结果如图7所示。图7 (a)水下目标纹理特征较弱且视觉退化较为严重,而UW-Net仍可以很好的检测出棉绳目标且精度较高,在图7 (b)中光线极差的昏暗水下环境中也保持着优良的目标检测能力,即使在存在噪声干扰的图7 (c)中也能鲁棒地识别目标。实验结果表明,UW-Net能够在水下环境中识别出目标的种类,检测出目标的位置,在有干扰噪声的复杂水下环境中仍具有较高的鲁棒性,满足了实时、高精度的现场检测要求。
水下环境具有复杂多变、噪声种类多样的特点,导致视觉退化严重,针对水下环境中的目标,现有的水下目标检测算法检测鲁棒性较低,不能实现实时高精度检测。本文提出一种端到端的轻量型高精度水下目标检测模型,为在复杂水下环境中精准高效地检测多尺度目标提供理论与技术支撑。在特征提取部分设计高精度轻量型特征提取结构,降低模型计算量的同时提取更为丰富的特征信息。在特征融合部分和检测部分,将多尺度特征融合网络和轻量型注意力机制相结合,并使用K-means重新生成更具代表性的锚框,实现了自适应融合不同尺度的特征信息及不同通道特征图的权值优化。在基本不增加计算负荷的前提下提升了模型的检测性能,尤其是在复杂水下环境中的多尺度目标检测能力。实验结果表明,该网络在NVIDIA GTX 1080Ti实验平台上对于水下数据集实现了95.06%的检测精度和139FPS的检测速度,分别比YOLOv5s高2.87%和14FPS,实现了对复杂水下环境中的目标进行实时、高精度的检测,具有广泛的应用前景。
[1] |
CHANG R, WANG Y, HOU J, et al. Underwater object detection with efficient shadow removal for side scan sonar images[C]//Oceans, 2016: 1–5.
|
[2] |
LOWE D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004, 60(2): 91-110. DOI:10.1023/B:VISI.0000029664.99615.94 |
[3] |
BAY H, TUYTELAARS T, GOOL L V. SURF: Speeded up robustfeatures[J]. Computer Vision & Image Understanding, 2006, 110(3): 404-417. |
[4] |
FREUND Y, SCHAPIRE R E. Experiments with a new boosting algorithm[C]//Proceedings of Thirteenth International Conference on International Conference on Machine Learning, 1996: 148–156.
|
[5] |
FABIC J N, TURLA I E, CAPACILLO J A, et al. Fish population estimation and species classification from underwater video sequences using blob counting and shape analysis[C]//Underwater Technology Symposium, 2013: 1–6
|
[6] |
OLIVER K, HOU W. Image feature detection and matching in underwater conditions[C]//Proceeding of Society of Photo-Optical Instrumentation Engineers, 2010.
|
[7] |
丰子灏. 水下图像的兴趣目标检测[D]. 上海: 上海交通大学, 2015.
|
[8] |
姚润璐, 桂詠雯, 黄秋桂. 基于机器视觉的淡水鱼品种识别[J]. 微型机与应用, 2017, 36(24): 37-39. |
[9] |
GIRSHICK, R. et al. Rich feature hierarchies for accurate object detection and semantic segmentation[J]. IEEE Conference on Computer Vision and Pattern Recognition, 2014: 580–587.
|
[10] |
GIRSHICK, R. Fast R-CNN, Proceedings of the IEEE International Conference on Computer Vision, 2015: 1440–1448.
|
[11] |
REN S HE H, GIRSHICK R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017(5): 137–1149.
|
[12] |
LIU W, ANGUELOV D, ERHAN D, et al. Ssd: Single shot multibox detector[J], in Proc. ECCV, Springer, Berlin, Germany, 2016, 21–37.
|
[13] |
REDMON J, et al. You only look once: unified, real-time object detection[J]. Conference on Computer Vision and Pattern Recognition, 2015: 779–788.
|
[14] |
REDMON J, FARHADI A. YOLO9000: Better, faster, stronger[J]. IEEE Conference on Computer Vision &Pattern Recognition, 2017: 6517–6525.
|
[15] |
REDMON J, FARHADI A. YOLOv3: An incremental improvement[J]. Conference on Computer Vision and Pattern Recognition, 2018.
|
[16] |
BOCHKOVSKIY A, WANG C -Y LIAO H Y M. YOLOv4: Optimal speed and accuracy of object detection[EB/OL]. Available: http://arxiv.org/abs/2004,10934.
|
[17] |
王璐, 王雷欧, 王东辉. 基于Faster-rcnn的水下目标检测算法研究[J]. 网络新媒体技术, 2021, 10(5): 43-51. |
[18] |
高岳. 融合GAN的Faster R-CNN水下遮挡目标检测方法研究与实现[D]. 银川: 宁夏大学, 2021.
|
[19] |
刘腾, 徐成, 刘宏哲. 基于YOLOv3改进的水下目标检测[C]//中国计算机用户协会网络应用分会2021年第二十五届网络新技术与应用年会论文集. , 2021: 159–162.
|
[20] |
强伟, 贺昱曜, 郭玉锦, 等. 基于改进SSD的水下目标检测算法研究[J]. 西北工业大学学报, 2020, 38(4): 8. DOI:10.3969/j.issn.1000-2758.2020.04.008 |
[21] |
刘萍, 杨鸿波, 宋阳. 改进YOLOv3网络的海洋生物识别算法[J]. 计算机应用研究, 2020, 37(S1): 394-397. |
[22] |
FABBRI C, ISLAM M J, SATTAR J. Enhancing underwater imagery using generative adversarial networks[C]// Proceeding of IEEE International Conference on Robotics and Automation. Piscataway, NJ: IEEE Press, 2018: 7159–7165.
|
[23] |
LIU S, HUANG D, WANG Y. Learning spatial fusion for single-shot object detection[J]. Beijing: Beihang University, 2019.
|
[24] |
WANG Q, DU W, MA C, et al. Gradient color leaf Image segmentation algorithm based on meanshift and K-means[C]// 2021 IEEE 5th Advanced Information Technology, Electronic and Automation Control Conference (IAEAC), IEEE, 2021.
|