基于改进YOLOX的光电装备识别技术

(整期优先)网络出版时间:2022-10-19
/ 2

基于改进YOLOX的光电装备识别技术

杨柯1 ,张振岭2 ,王超3

海装武汉局驻郑州地区代表室 河南郑州 450015

           2郑州机电工程研究所 河南郑州 450015

摘要:针对受到海上复杂天气情况如海雾、海面日照反射、鱼鳞光和海面杂波等因素的影响,高效、高精度的对海小目标的检测和识别很难保证高精度的问题。本文采用基于改进的YOLOX算法,首先,使用 K-means 匹配新的锚点坐标,增加多个检测尺度提升检测精度;其次,将注意力机制模块融入特征提取网络 Darknet-53 中获得重要特征;然后,利用 Ghost 模块的轻量化技术优势,引入由 Ghost 模块构成的 Ghost-BottleNeck 代替YOLOX中的 Neck 模块,大幅度降低网络模型的参数与计算量;最后,将 IOU_nms 修改为 DIOU_nms 以优化损失函数,经试验验证,该算法在精度和实时性都有所提高。

  1. 引言

基于深度学习的目标检测算法则主要派生出两类方法:其一是基于区域采样的深度卷积目标识别算法,此类算法主要采用区域采样→目标分类→目标位置修正等模块构成;其二是基于回归的深度卷积目标识别算法,将目标检测与识别问题直接建模为目标位置与类别的回归问题。张玉莲等人[1]提出了一种改进 YOLOv3 模型的舰船目标检测识别算法。针对舰船目标检测中目标尺寸小、尺度变化大的特点,针对舰船目标在图像中姿态变化大的特点,采用多图像混合数据增强方法和舰船目标角度均衡分布方法对模型进一步优化,有效地提高了舰船目标检测的精度。马啸等人[2]提出基于改进Mask R-CNN的舰船目标检测方法,在Mask R-CNN网络的基础上通过增加判别模块、类别预测分支和语义分割分支对视觉系统采集的可见光图像中的舰船目标进行目标定位和类别预测,该方法在保持较高检出率和运行效率的同时误检率较低,舰船目标的平均检测精度较高,具有良好的目标检测性能。姜文志[3]提出了一种基于改进YOLOv3的舰船目标检测算法,优化改进YOLOv3的损失函数,提高模型的整体性能。岳瞳等人[4]提出基于深度学习方法的可见光图像舰船目标检测与识别,总结了适用的可见光图像舰船数据集与针对舰船目标的网络优化方法,效果很明显。针对Faster R-CNN 算法中对于红外舰船目标特征提取不充分、容易出现重复检测的问题,顾佼佼等人[5]提出了一种基于改进Faster R-CNN 的红外舰船目标检测算法,优化改进后Faster R-CNN 的损失函数,提高检测算法的整体性能。

本文在YOLOX的基础上,结合空洞卷积对其网络结构进行改进,加入空洞空间金字塔池化模型,称为CG-YOLOX模型,以此增大感受野,聚合多尺度上下文信息,同时利用迁移学习训练网络,大大提高了海上目标的检测精度。

  1. YOLOX网络结构

在目标检测算法中,YOLO 系列占据了重要的地位,目前使用最广泛的是YOLO-v3、YOLO-v4、YOLO-v5。为了追求更高的识别速度和识别的准确率,北京旷视科技有限公司于 2021 年开发了YOLOX算法,Yolox 将Anchor free 的方式引入到Yolo系列中,使用anchor free方法有如下好处:(1) 降低了计算量,不涉及IoU计算,另外产生的预测框数量也更少;(2) 缓解了正负样本不平衡问题;(3) 避免了anchor的调参。

将YOLOX网络分为四个部分:输入端、骨干网络(Backbone)、颈部(Neck)和预测层(Prediction)。

(1)输入端:YOLOX主要采用两种数据增强方法,即Mosaic和Mixup。Mosaic是YOLO

-v3推出的一种非常有效的增强策略,通过随机缩放、随机剪裁和随机排列的拼接可以显著提高小目标的检测效果,而Mixup是一种基于Mosaic的附加增强策略。通过这两种数据增强方法,直接将YOLO-v3 baseline提高了2. 4个百分点。

(2)骨干网络(Backbone):YOLOX的Backbone骨干网络与YOLO-v3 baseline的骨干网相同。两者均采用Darknet53的网络结构,该网络由一系列1×1和3×3卷积层组成。由于该网络有53个卷积层,因此被称为Darknet53。

(3)颈部(Neck):与YOLO-v3 baseline相比,YOLOX并没有改善Neck结构,而是采用同样的FPN结构进行融合。FPN能够通过上采样,从上到下传递和融合金字塔的高层特征信息,提高了对小目标的检测能力,在模型的性能方面也有显著的优化效果。

(4)预测层(Prediction):在YOLOX的预测层,使用了三个解耦头(Decoupled Head)。此外,预测层还包含了标签分配策略Sim OTA(Simplified Optimal Transport Assignment)、Anchor-free检测器、Loss 计算。

  1. 改进的YOLOX

虽然YOLOX致力于海上目标检测,但在复杂海洋环境中,许多目标区域信息容易丢失,不利于海上目标的检测。为了提高检测精度,提出CG-YOLOX网络模型如图1所示。本文

对于该模型的主要改进为:将注意力机制CBAM、Ghost-Bottle Neck与Dark Net-53 融合组成新的特征提取网络CGDark Net-53;使用K-means匹配新的锚点坐标,将YOLOX检测尺度扩展为4个,提高海上目标检测精度。本文采用CGDark Net-53作为CG-YOLOX的主干网络,与YOLOX相比,CG-YOLOX仅有一种CSP_X结构,可将梯度变化完整的集成到特征图中,加强网络特征融合能力,从而保证准确率。CG-YOLOX增加一个新的检测尺度用于提升目标检测精度,即网络层15 输出得到的Yolo head1。

 

图1  CG-YOLOX网络模型

  1. 结果与分析

4.1试验平台

试验基于Ubuntu18.05、Python3.7.8和Py Torch1.7.0搭建的深度学习框架,试验相关硬件配置和模型参数自主可调。CG-YOLOv5可以自适应图片缩放,选取640×640大小的图像作为输入,可获得等比例大小的特征图作为检测尺度。通过多次试验得出,学习率选取0.01

可以较快达到局部收敛,批量大小为32时训练速度较快。

4.2试验数据

本文都是在湖边采集的数据集,数据集以蛙人模型为主,其图像分辨率为1920×1080 像素,经过挑选选出1000张图片,其中以9∶1 比例随机划分训练集和测试集,抽样后再次统计标注信息、类别比例和大小分布,使训练集与验证集分布相似,达到划分目的。为了满足试验所需要求,首先,把数据集转变成VOC2007格式;然后,借助Lableimg软件对转换的数据集进行标注。此外,为体现算法鲁棒性,即可在复杂水下环境中进行珍品的检测抓捕,数据集中图像为原始图像,没有进行任何清晰化等预处理。

4.3实验对比分析

在阴雨光线不好的条件下进行目标检测识别,CG-YOLOX网络模型加的有注意力机制模块,图像增加更佳。其中对于目标大的时候,YOLOX和CG-YOLOX识别效果区别不大,置信度分别为0.85和0.86,如图2(a)、(b)所示。但是对于小目标检测时,YOLOX网络模型由于光线采集不好,对蛙人识别置信度为0.81,并且出现误识别的情况,将石头也识别成蛙人,置信度为0.75;而CG-YOLOX网络模型有比较好的图像增加效果,对蛙人识别置信度为0.85,并且没有出现误识别的情况,如图3(a)、(b)所示。

模糊22     清晰2

   图 2(a)  YOLOX大目标识别       图 2(b)  CG-YOLOX大目标识别

模糊11     清晰1

        图 3(a)  YOLOX小目标识别         图 3(b)  CG-YOLOX小目标识别

5.结论

CG-YOLOX网络模型在检测精度和实时性相比传统的YOLOX网络模型有很大提高,尤其在海上遇到恶劣天气,图像质量不是很高的情况下,CG-YOLOX将会表现更为突出的优势。本文采集的数据集中的负样本比较少,算法的抗干扰性没有得到充分验证,所以下一步工作将采集更多易混淆的负样本进行训练,验证该算法的抗干扰性。

参考文献

[1]  张玉莲. 光学图像海面舰船目标智能检测与识别方法研究[J].兵工学报,2021,42(12):2675-2683.

[2]  马啸,邵利民,金鑫. 基于改进Mask R-CNN的舰船目标检测方法[J].北京大学理工学报,2021,7(41):1001-0045.

[3]  姜文志,李炳臻,顾佼佼,刘克. 基于改进YOLOv3的舰船目标检测算法[J].电光与控制,2021,6(28):1671-637. 

[4]  岳瞳,杨宇. 基于深度学习方法的可见光图像舰船目标检测与识别[J].舰船电子对抗,2021,4(44):32-1413.

[5]   顾佼佼, 李炳臻, 刘克, 姜文志. 基于改进Faster R-CNN 的红外舰船目标检测算法[J].红外技术,2021,2(43):1001-8891.