Lightweight Underwater Target Detection Algorithm Based on YOLOv8
-
摘要:
针对复杂水下环境导致水下目标检测时出现误检、漏检以及检测效率低等问题,提出了一种改进YOLOv8模型的轻量化水下目标检测算法。首先,为了改善颈部网络特征融合不足的问题,将YOLOv8的颈部网络融合(Bidirectional Feature Pyramid Network,BiFPN)双向特征金字塔结构,提高小目标层的检测效果;其次,针对网络中卷积模块参数量大和计算复杂度高的问题,设计了一种自适应注意力下采样(Adaptive-Attention Down-Sampling,AADS)模块,将主干网络中的卷积模块替换为AADS模块,降低模型参数量和计算量;最后,引入大可分离核注意力机制(Large Separable Kernel Attention,LSKA),强化特征提取能力,使模型能够更精确地关注重要信息,提高目标检测精度。将改进的网络在水下目标检测数据集中进行实验,改进后的算法与YOLOv8相比,平均检测精度提升了1.4%,模型计算复杂度降低了15.9%,模型参数量减少了43.3%,使检测精度和检测速度之间达到了很好的平衡。
-
关键词:
- YOLOv8 /
- 水下目标检测 /
- 大可分离核注意力机制 /
- 轻量化 /
- 多尺度特征融合
Abstract:To address the problems of misdetection, omission detection, and low detection efficiency when detecting underwater targets due to the complex underwater environment, a lightweight underwater target detection algorithm with an improved YOLOv8 model is proposed. First, to ameliorate the problem of insufficient feature fusion in the neck network, the neck network of YOLOv8 is fused with a BiFPN bidirectional feature pyramid structure to improve the detection of the small target layer. Second, to address the problem of the large number of parameters of the convolution module in the network and high computational complexity, an Adaptive-Attention Down-Sampling(AADS) module is designed to replace the convolution module in the backbone network to reduce the number of model parameters and amount of computation. Finally, Large Separable Kernel Attention (LSKA) is introduced to strengthen the feature extraction capability such that the model can focus on important information more accurately and improve target detection accuracy. The experimental results show that in the underwater target detection dataset, the improved algorithm improves the average detection accuracy by 1.4%, reduces the number of model parameters by 43.3%, and reduces the computational complexity of the model by 15.9% when compared with YOLOv8. This realizes a good balance between detection accuracy and detection speed.
-
0. 引言
根据世界卫生组织的统计,2016年道路交通伤害导致140万人死亡,已经是全球第八大死亡原因[1],道路交通安全已经成为人类不可忽视的安全威胁之一。为减少道路交通对人类造成的伤害,目前已经有多种传感器系统被应用于汽车辅助驾驶,以期在危险情况中及时对驾驶者做出提醒,如雷达、激光测距雷达、超声波和摄像机等技术。其中雷达、激光测距雷达和超声波等属于主动测量方案,在复杂环境下易受干扰;而基于摄像机的测量方案属于被动测量方法,抗干扰能力更强,在辅助驾驶和自动驾驶领域具有广阔的应用前景,已经成为计算机视觉领域的热门研究方向。
在夜间、雾霾等低可见度天气条件下,由于驾驶员的视线受阻,更易发生交通事故。红外线由于波长较长,具有穿透雾霾的能力,且所有温度高于绝对零度的物体都会产生红外辐射[2],故对红外线成像的红外相机具有全天候工作能力,特别在夜间、雾霾等对可见光相机成像具有严重干扰的天气条件下具有明显优势。因此,利用红外成像设备作为辅助观测手段以提高行车安全性的方法,得到了广大相关研究人员和国内各大汽车制造厂商的关注[3]。
目前,基于红外相机的车载辅助驾驶系统主要利用红外相机的全天候工作特性,帮助驾驶员在恶劣条件下观察路面情况,技术手段主要集中在行人检测与跟踪领域。如文献[3]-[4]介绍了车载夜视技术以及红外行人检测算法的发展现状,文献[5]介绍了一种基于YOLO模型的远红外车载图像快速行人检测方法,文献[6]提出了一种相关滤波框架下的红外图像行人跟踪方法,行人的位置估计需依靠驾驶员的经验判断。文献[7]使用激光雷达成像与红外成像融合的方式获取可视图像及深度信息,但成本较高。
基于立体视觉原理获取深度信息,仅需两个相机采集双目图像,然后利用双目视差原理计算目标深度,成本较低。但是在红外图像中,由于纹理细节较少,在可见光立体视觉中使用广泛的BM(Block Matching)和SGBM(Semi Global Block Matching)等传统稠密立体匹配算法不能很好地完成红外图像立体匹配。因此,本文结合道路场景的特点,设计了一种基于红外立体视觉的路况行人感知方法,该方法可以生成感兴趣目标处稠密的全局半稠密深度图。经实验验证,该方法在道路环境下可以有效地提供车前行人等目标的深度信息。
1. 双目测距模型
1.1 三角测量模型
本文双目测距模型如图 1所示,两相机光心O1、O2存在x、z方向明显位移dx、dz。考虑到实际系统的安装误差因素,两相机坐标系间同时存在y方向位移dy和绕x、y、z三轴的相对旋转α、β、γ。dx、dy、dz和α、β、γ共同构成相机的外部参数,可通过双目相机标定获得。
通过标定获得相机内部及外部参数后,本文采用线性三角测量法对空间点进行解算,如图 1,空间点N分别投影到两相机像平面π1、π2的n1、n2点处,投影关系可由式(1)表示,其中n1、n2用π1、π2像面坐标系下的齐次坐标表示,N用世界坐标系下的齐次坐标表示,P1、P2分别表示空间点N到像面π1、π2的投影关系,为3×4矩阵,由相机内、外部参数计算得到:
$$ {n_1} = {\mathit{\boldsymbol{P}}_1}N,\quad {n_2} = {\mathit{\boldsymbol{P}}_2}N $$ (1) 通过π1、π2像面上的一对匹配点n1↔n2,可根据式(2)[8]计算得到N点在世界坐标系下的齐次坐标。其中,xi、yi分别表示πi像面上N的像点ni的横、纵坐标,pij表示Pi矩阵的第j行(i=1, 2,j=1, 2, 3)。
$$\left[ {\begin{array}{*{20}{c}} {{x_1}p_1^3 - p_1^1} \\ {{y_1}p_1^3 - p_1^2} \\ {{x_2}p_2^3 - p_2^1} \\ {{y_2}p_2^3 - p_2^2} \end{array}} \right]N = 0$$ (2) 1.2 极线约束
极线约束是指双目图像中某一图像上的点必然对应于另一图像上的一条线,如图 1,直线O1N上任一点都成像于π1像面上的n1点处,而其在像面π2上的像位于直线e2n2上,即e2n2为n1的对极线,e2为光心O1在像面π2上的投影点,其数学关系可用式(3)表示:
$${\mathit{\boldsymbol{I}}_{{e_2}{n_2}}} = \mathit{\boldsymbol{I}}{n_1}$$ (3) 式中:${\mathit{\boldsymbol{I}}_{{e_2}{n_2}}}$表示直线e2n2;F为基本矩阵,可通过相机内、外部参数获得。
由于n2是N在像面π2的像点,故n2在直线${I_{{e_2}{n_2}}}$上,即$n_2^{\rm{T}}{I_{{e_2}{n_2}}} = 0$,所以一对匹配点n1↔n2满足式(4)关系。
$$n_2^{\rm{T}}\mathit{\boldsymbol{F}}{n_1} = 0$$ (4) 因此,可利用式(4)对初始匹配结果进行筛选,去除误匹配点。
2. 系统设计与搭建
2.1 系统方案设计
驾驶员在驾驶车辆时,一般需要观察车辆正前方和两侧路面情况以确保行车安全。因此,为了满足实际道路应用条件,本文设计了一种大视场红外双目立体视觉环境感知单元,有效视场角约为120°。由于目前红外相机成像单元分辨率普遍不高,以及红外相机镜头视场角等因素的制约,本文提出了一种双红外双目测量方案。方案设计如图 2所示,即使用两对双目相机分别覆盖左右两侧,组成等效120°测量视场。图 2中4只相机分别组成左视、右视双目相机组,两相机组的基线长度均设计为75 cm,两组双目相机测量视场构成120°等效测量视场。该方案将4只红外相机安装在同一直线上,将系统尺寸限制在100 cm×10 cm×10 cm内,有利于在不改变车辆结构的条件下安装使用。
2.2 实验系统平台
依据2.1节所述方案,搭建实验平台,如图 3所示,该平台由4只长波红外相机及广角镜头、嵌入式处理单元、外围电路、刚性载体和外壳组成。
2.3 红外棋盘格标定板
由于三角测量模型需要已知的相机内参和双目相机外参解算匹配点坐标,因此需对相机进行标定。目前应用最广泛的相机标定算法为张正友标定法[9],该方法需要单平面棋盘格作为标定板。由于红外辐射量和物体温度有关,物体温度越高,红外辐射越强,红外图像体现的是物体温度差异。根据红外成像原理,本文设计了一种红外棋盘格标定板(下称标定板),如图 4所示。
图 4(a)为该标定板的可见光图像,图 4(b)为红外图像。棋盘格白格为良导热材料制成,背层贴有电热片,黑格为隔热材料制成,背层无电热片,通电后白格区域电热片发热使其温度升高,黑格区域的隔热材质使其保持相对较低的温度,从而使棋盘格的红外图像具有与可见光图像相似的图像特征。本文设计的棋盘格可用于红外相机标定,可见光相机标定和红外、可见光相机联合标定。
3. 深度图生成方法
本文的路况行人感知问题研究定位于道路使用者中的行人和骑行者等目标。由于人体具有较为明显的温度、边缘特征,因此可以此为依据在双目相机左、右图像中寻找感兴趣区域,并在感兴趣区域中进行特征点提取、配准并最终生成可视化半稠密深度图。
3.1 图像幂次变换
图像幂次变换是指通过对图像灰度值的k次幂变换,使灰度值较大的位置得到增强,而灰度值较小的位置得到抑制。图像幂次变换可用式(5)表示:
$${i_{{\rm{new}}}} = M{\left( {\frac{{{i_{{\rm{old}}}}}}{{{i_{\max }}}}} \right)^k}$$ (5) 式中:iold、inew为图像上任一点转换前、后灰度值;imax为原图像的最大灰度值;M为处理后的图像最大灰度值,指数k越大,图像增强效果越明显,本文应用场景中k值的取值范围为1.6~2.0。
由于红外图像是对红外热辐射的成像,温度高的物体成像位置灰度值大,温度低的物体成像位置灰度值小。一般红外场景中的人体温度较高,背景温度较低,对应红外图像中,行人目标位置灰度值较大,背景位置灰度值较小,通过图像幂次变换,可有效增强行人目标,抑制背景。如图 5(b),相对原图(图 5(a)),其背景得到明显抑制,行人目标得到增强。
3.2 感兴趣区域提取
由于行人、骑行者的竖向边缘较多[10],因此可以使用Sobel边缘检测算法检测图像中的竖向边缘,如图 5(c)(为了便于观察,图像有亮度增强)所示,图中实线框内为行人目标,虚线框内为无效目标,利用目标灰度约束可以剔除大部分无用边缘信息,如图 5(d)所示,图像中剩余的轮廓信息主要集中在行人位置处。由于轮廓位置所占图像面积较小,仅将该位置作为特征提取区域不利于提取到足够多的特征点,因此使用图像膨胀算法对图 5(d)所示基于灰度约束的边缘提取图像进行处理,得到图 5(e)所示感兴趣区域(Region of interest, ROI),通过在左右图像ROI区域内提取和匹配特征点,可有效减少特征点提取和匹配数量,减少误匹配数量,提高算法运行效率。
3.3 特征点检测与匹配
由于红外图像缺乏一般可见光图像中丰富的纹理细节特征,仅在目标轮廓边缘等梯度变化较大的地方存在明显图像特征,因此本文采用SURF(Speeded-Up Robust Features)算法[11]在ROI区域对图像进行特征提取。SURF算法基于图像边缘检测特征点,且运行速度快,经实验验证,其在长波红外图像上具有良好的特征点提取效果。利用SURF算法在ROI区域进行特征点检测和匹配的效果如图 6(a)所示,图中线段的端点为特征点位置,其两端为一对初始匹配点,可以看出其中存在明显错误匹配点。利用式(4)对匹配点进行筛选,结果如图 6(b)所示,图中线段连接的匹配点为筛选后的匹配点,可见图 6(a)中的明显错误匹配点被有效剔除。
3.4 半稠密深度图估计
获取筛选后匹配点后,利用三角测量模型可以解算匹配点对应的空间点坐标,获取原始稀疏深度图(如图 7(a))。由于原始深度图是稀疏的,因此其直接用于显示效果较差。本文采用种子填充法(Seed-Filling)标记图 5(e)中不同连通域,在各连通域中选取原始深度图对应区域中的所有有效深度值的中值作为该区域的代表深度值,得到半稠密深度图,如图 7(b)。
由于ROI图像中不同连通域表示场景中的不同目标,同一目标的不同位置的深度值是相近的,因此使用代表深度值估计整个目标的深度是可行的,且代表深度值的中值选取策略可以有效避免少量错误匹配点产生的异常深度值对目标深度估计的影响。
3.5 深度图显示
为便于观察,本文采用从浅到深的渐变颜色表示0~30 m内的距离远近。距离越远,颜色越深;距离越近,颜色越浅。图 8给出了6组夜间路面测试结果,对照图和显示图依次对应。其中对照图经过幂次变换对背景进行了抑制,显示图在对照图的基础上引入了渐变颜色表示图像中目标的深度信息,并在图像右侧给出了颜色图例。图 8中6组显示图中包含不同距离的行人、跑步者、骑行者等目标。可以看出,行人、跑步者、骑行者等目标均得到较好的颜色标记,参考颜色图例可以判断目标的相对远近,从而为驾驶员在夜间驾驶提供良好的辅助观测信息。
4. 测距精度实验
为验证系统测距精度,本文在夜间室外环境下,采用合作目标对左、右视双目相机分别进行精度实验,合作目标为一个2×2红外棋盘格,如图 9所示。以左视双目相机为例,合作目标参考位置如图 10所示,取3个方向,每个方向5~30 m范围内的18个点(图中未全部画出)验证系统测距精度。合作靶标的位置约定真值由精度为2+2 ppm的全站仪间接测得,以左相机为基准点,利用全站仪分别测量左相机和合作靶标的中心角点坐标,通过计算得到合作靶标中心距左相机基准点的距离约定真值。将系统测距结果和约定真值作比较,图 11给出了系统测距误差,系统测距结果在30 m范围内绝对误差均小于1 m,相对误差小于3%;15 m范围内绝对误差小于0.5 m,相对误差小于1.5%。考虑到本文的路况行人感知方法的主要应用场景为向驾驶者提供辅助观测信息,系统的测距精度满足实用需求。
5. 结论
本文设计了一种基于红外立体视觉的路况行人感知方法。针对红外图像纹理细节少,传统稠密双目立体匹配算法效果差的问题。本文首先提取图像ROI,然后在其中提取特征点并匹配以生成原始稀疏深度图,最后结合ROI和原始稀疏深度图估计ROI内稠密的全局半稠密深度图。并设计了实验系统对该方法进行实验验证。实验结果表明,该方法具有良好的行人等目标的检测效果,在系统约120°观测视场角内,目标深度感知相对误差在15 m范围内优于1.5%,30 m范围内优于3%,满足实际应用场景。
-
表 1 不同注意力机制对比实验
Table 1 Comparison experiment of different attention mechanisms
Algorithms mAP50/% mAP50-95/% Params/MB GFLOPs/G YOLOv8n 81.7 47.4 3.0 8.2 YOLOv8n+SE 82.7 48.9 3.0 8.2 YOLOv8n+MLCA 82.5 48.3 3.0 8.2 YOLOv8n+EMA 82.4 48.7 3.0 8.2 YOLOv8n+simAM 82.1 48.4 3.0 8.2 YOLOv8n+LSKA 83.3 49.2 3.1 8.2 表 2 AADS不同位置对比结果
Table 2 Comparison results of AADS at different positions
Algorithms mAP50/% mAP50-95/% Params/MB GFLOPs/G YOLOv8n 81.7 47.4 3.0 8.2 AADS-all 82.7 48.5 2.7 7.9 AADS-
backbone82.7 48.9 2.7 7.9 AADS-neck 82.2 48.4 3.0 8.1 表 3 消融实验结果
Table 3 Results of ablation experiment
Models BiFPN AADS LSKA mAP50/% mAP50-95/% Params/MB GFLOPs/G FPS/(f/s) 1 81.7 47.4 3.0 8.2 108 2 √ 83.0 49.0 2.0 7.1 112 3 √ 82.7 48.9 2.7 7.9 110 4 √ 83.3 49.2 3.1 8.2 104 5 √ √ 82.8 48.1 1.7 6.9 117 6 √ √ 82.9 48.7 2.0 7.1 112 7 √ √ 82.3 48.6 2.7 8.0 109 8 √ √ √ 83.1 48.8 1.7 6.9 114 表 4 不同算法对比结果
Table 4 Comparison results of different algorithms
Algorithms mAP50/% Params/MB GFLOPs/G FPS/(f/s) SSD 74.4 26.3 62.8 26 Faster-RCNN 71.2 137 370 12 RetinaNet 58.4 38 170.1 23 YOLOv3 73.0 61.9 66.2 25 YOLOv4-tiny 63.6 6.1 7.0 56 YOLOv5s 82.7 7.1 16.1 63 Ref. [28] 80.9 4.5 8.5 68 YOLOv7-tiny 81.6 6.0 13.2 70 Ours 83.1 1.7 6.9 114 -
[1] SHEN Linghao, XIA Haisheng, ZHANG Xun, et al. U2PNet: an unsupervised underwater image-restoration network using polarization[J]. IEEE Transactions on Cybernetics, 2024: 1-14. Doi: 10.1109/TCYB. 2024.3365693.
[2] Yeh C H, LIN C H, KANG L W, et al. Lightweight deep neural network for joint learning of underwater object detection and color conversion[J]. IEEE Transactions on Neural Networks and Learning Systems, 2021, 33(11): 6129-6143.
[3] 周辉奎, 章立, 胡素娟. 改进直方图匹配和自适应均衡的水下图像增强[J]. 红外技术, 2024, 46(5): 532-538. http://hwjs.nvir.cn/article/id/6348ba90-16a9-4a8c-b7c8-7f9671176662 ZHOU Huikui, ZHANG Li, HU Sujuan. Underwater image enhancement based on improved histogram matching and adaptive equalization[J]. Infrared Technology, 2024, 46(5): 532-538. http://hwjs.nvir.cn/article/id/6348ba90-16a9-4a8c-b7c8-7f9671176662
[4] SHEN L, Reda M, ZHANG X, et al. Polarization-driven solution for mitigating scattering and uneven illumination in underwater imagery[J]. IEEE Transactions on Geoscience and Remote Sensing, 2024, 62: 4202615.
[5] XU S, ZHANG M, SONG W, et al. A systematic review and analysis of deep learning-based underwater object detection[J]. Neurocomputing, 2023, 527: 204-232. DOI: 10.1016/j.neucom.2023.01.056
[6] REN S, HE K, 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, 2016, 39(6): 1137-1149.
[7] LIU W, Anguelov D, Erhan D, et al. SSD: single shot multibox detector[C]//Computer Vision–ECCV, 2016: 21-37.
[8] WANG C Y, Bochkovskiy A, LIAO H Y M. YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2023: 7464-7475.
[9] ZENG L, SUN B, ZHU D. Underwater target detection based on Faster R-CNN and adversarial occlusion network[J]. Engineering Applications of Artificial Intelligence, 2021, 100: 104190. DOI: 10.1016/j.engappai.2021.104190
[10] SONG P, LI P, DAI L, et al. Boosting R-CNN: reweighting R-CNN samples by RPN's error for underwater object detection[J]. Neurocomputing, 2023, 530: 150-164. DOI: 10.1016/j.neucom.2023.01.088
[11] YU G, CAI R, SU J, et al. U-YOLOv7: a network for underwater organism detection[J]. Ecological Informatics, 2023, 75: 102108. DOI: 10.1016/j.ecoinf.2023.102108
[12] HUA X, CUI X, XU X, et al. Underwater object detection algorithm based on feature enhancement and progressive dynamic aggregation strategy[J]. Pattern Recognition, 2023, 139: 109511. DOI: 10.1016/j.patcog.2023.109511
[13] XU X, LIU Y, LYU L, et al. MAD-YOLO: a quantitative detection algorithm for dense small-scale marine benthos[J]. Ecological Informatics, 2023, 75: 102022. DOI: 10.1016/j.ecoinf.2023.102022
[14] Terven J, Cordova-Esparza D. A comprehensive review of YOLO: from YOLOv1 to YOLOv8 and beyond[J]. arxiv preprint arxiv: 2304.00501, 2023.
[15] Al Muksit A, Hasan F, Emon M F H B, et al. YOLO-Fish: a robust fish detection model to detect fish in realistic underwater environment[J]. Ecological Informatics, 2022, 72: 101847. DOI: 10.1016/j.ecoinf.2022.101847
[16] CHEN L, ZHENG M, DUAN S, et al. Underwater target recognition based on improved YOLOv4 neural network[J]. Electronics, 2021, 10(14): 1634. DOI: 10.3390/electronics10141634
[17] LIU P, QIAN W, WANG Y. YWnet: A convolutional block attention-based fusion deep learning method for complex underwater small target detection[J]. Ecological Informatics, 2024, 79: 102401. DOI: 10.1016/j.ecoinf.2023.102401
[18] YU G, CAI R, SU J, et al. U-YOLOv7: a network for underwater organism detection[J]. Ecological Informatics, 2023, 75: 102108. DOI: 10.1016/j.ecoinf.2023.102108
[19] Fayaz S, Parah S A, Qureshi G J, et al. Intelligent underwater object detection and image restoration for autonomous underwater vehicles[J]. IEEE Transactions on Vehicular Technology, 2024, 73(2): 1726-1735. DOI: 10.1109/TVT.2023.3318629
[20] Talaat F M, Zain Eldin H. An improved fire detection approach based on YOLO-v8 for smart cities[J]. Neural Computing and Applications, 2023, 35(28): 20939-20954. DOI: 10.1007/s00521-023-08809-1
[21] ZHENG Z, WANG P, LIU W, et al. Distance-IoU loss: faster and better learning for bounding box regression[C]//Proceedings of the AAAI Conference on Artificial Intelligence, 2020, 34(7): 12993-13000.
[22] LI X, WANG W, WU L, et al. Generalized focal loss: Learning qualified and distributed bounding boxes for dense object detection[J]. Advances in Neural Information Processing Systems, 2020, 33: 21002-21012.
[23] LIN T Y, Dollár P, Girshick R, et al. Feature pyramid networks for object detection[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017: 2117-2125.
[24] LIU S, QI L, QIN H, et al. Path aggregation network for instance segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018: 8759-8768.
[25] ZHANG X, LIU C, YANG D, et al. Rfaconv: Innovating spatital attention and standard convolutional operation[J]. arxiv preprint arxiv: 2304.03198, 2023.
[26] Ioannou Y, Robertson D, Cipolla R, et al. Deep roots: improving CNN efficiency with hierarchical filter groups[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017: 1231-1240.
[27] GUO M H, LU C Z, LIU Z N, et al. Visual attention network[J]. Computational Visual Media, 2023, 9(4): 733-752. DOI: 10.1007/s41095-023-0364-2
[28] SUN Y, ZHENG W, DU X, et al. Underwater small target detection based on YOLOX combined with MobileViT and double coordinate attention[J]. Journal of Marine Science and Engineering, 2023, 11(6): 1178. DOI: 10.3390/jmse11061178