APP下载

改进YOLOv4的铁路沿线遥感影像地物检测方法

2022-10-09王阳萍韩淑梅杨景玉党建武张占平

光谱学与光谱分析 2022年10期
关键词:特征提取精度模块

王阳萍,韩淑梅,杨景玉,党建武,张占平

1.兰州交通大学电子与信息工程学院,甘肃 兰州 730070 2.甘肃省人工智能与图形图像处理工程研究中心,甘肃 兰州 730070

引 言

我国高速铁路的大规模建设方便了人们出行的同时在铁路运维方面提出了新的挑战,及时检测铁路沿线的地物目标已成为当前铁路维护人员需要解决的重要问题之一。而快速发展的高分辨率遥感技术[1]以其覆盖范围大、地物纹理信息丰富、成像光谱波段多、成本低等优点为及时检测铁路沿线地物提供了一种快速、便捷、高效的解决方法。近年来基于卷积神经网络CNN(convolutional neural networks)的算法以其鲁棒性强、检测精度高,且能满足复杂背景下多尺度目标需求等特点,被广泛应用于遥感影像目标检测[2]。Wang等[3]提出用于大规模遥感影像中多类目标检测FM-SSD方法,该方法能够在多个尺度上获得丰富的上下文信息,但对同一特征图中的小目标识别效果较差且计算量大。Xu[4]等针对遥感目标的特点,提出一种轻量级特征增强网络FE-YOLO,该方法的检测速度大幅度提高,但其特征提取能力弱,无法达到检测精度要求。Li等[5]将Faster R-CNN,YOLOv3和SSD用于遥感影像农业温室地物检测研究中,并从检测精度和速度方面进行对比,得到YOLO算法在检测速度方面优于其他两者。但YOLOv3对局部小块温室大棚检测效果较差。2020年,Alexey Bochkovskiy等[6]基于CSPNet骨干网络、Mosaic数据增强、Mish激活、SPP和GIOU损失提出YOLOv4,能够得到更快更精确的检测结果。YOLOv4因其效率高在普通图像检测中得到更广泛的应用,但当其用于遥感影像时存在小目标漏检和大尺度检测效率低的问题。为了更好地对铁路沿线地物进行检测,我们对YOLOv4进一步改进,采用DCBM模块改进DenseNet用于YOLOv4特征提取以实现特征重用,增强小目标特征提取能力。同时在骨干网中CSP单元的每个残差单元之后连接一个SE模块,使其在提高地物检测精度的同时降低模型参数量。为提高网络对铁路目标的检测效率,提出一种改进的通道空间注意力模块ICBAM,并在网络预测结果输出之前引入该模块,进一步提高网络性能。实验结果表明,所提方法提高了地物目标的检测精度,有效降低了模型大小和参数量,具有实际的应用价值。

1 YOLOv4目标检测算法

YOLOv4网络将输入图像调整为固定大小,并划分为S×S的网格单元作为输入,基于回归获得边界框的位置及其所属类别,从而实现端到端的目标检测。其在输入端使用Mosaic数据增强方法大大丰富检测数据集,提高网络的鲁棒性。在骨干网方面,采用CSPDarknet53网络结构增强CNN的学习能力,使得在轻量化的同时保持准确性,减少了计算量,降低了内存成本。在Neck方面,采用特征金字塔SPP模块的最大池化方式进行不同尺度的特征融合并采用FPN和PAN相结合的方式对不同主干层中不同的检测层进行特征聚合。在损失函数方面,采用CIOU损失和DIOU损失相结合的方法同时考虑边界框宽高比的尺度信息、重叠面积和中心点距离信息,更好地实现目标边界框回归,得到更加准确的预测结果。

与YOLOv3算法相比,YOLOv4算法在目前的公开数据集上mAP和FPS都有所提高,在检测速度、模型性能、训练时间和硬件要求方面优于其他算法,但仍然存在边界框定位不够精确、难以检测小目标物体、灵活性与检测速度等方面的不足。其主干网CSPDarkNet53主要由CSP单元组成,而CSP单元包含了一些ResNet和CBM模块,但这些ResNet包含了大量的参数计算,负责YOLOv4网络的主要特征提取。将其用于铁路沿线遥感影像地物目标检测中,存在部分地物目标信息丢失及模型参数空间大的问题。因此,本工作针对铁路沿线遥感影像地物检测对其进行改进。

2 基于改进DenseNet网络的特征提取

遥感影像铁路沿线的地物目标具有小而密集分布的特点,其在YOLOv4模型中经过进一步压缩后,小目标地物容易出现细节特征信息丢失的现象,产生小目标漏检问题。DenseNet考虑到深层次的网络导致梯度消失且残差网络不能充分利用网络提取的特征问题,通过连接所有特征图并进行通道合并,实现多特征图的融合和特征重用,从而提高准确度。使用DenseNet能使网络梯度的反向传播得到增强,可以更好地利用已提取的地物特征信息,提高层间信息的透光率,间接降低模型参数。其每一层都可以接收到前面层的所有特征图,Xl与前面的特征图关系可由式(1)表示

Xl=Hl[X0,X1, …,Xl-1]

(1)

本文设计出由卷积、批量归一化BN和Mish激活组成的CBM模块,而两个CBM模块级联成一个双CBM(double CBM)模块,本文使用DCBM模块作为DenseNet的传输层,由Conv(1×1×32)-BN-Mish-Conv(3×3×64)-BN-Mish和Conv(1×1×64)-BN-Mish-Conv(3×3×128)-BN-Mish组成。考虑到使用大量DenseNet网络会增加网络层数从而导致特征冗余、降低检测速度,因此为前两个CSP模块设置了4层,为第三个CSP模块设置了2层。改进DenseNet的网络结构如图1所示。

图1 改进的DenseNet网络模型

其中,模块DENSE 1st中相邻层特征图增量为96,模块DENSE 2nd中各相邻层特征图增量为192,模块DENSE 3rd中相邻层特征图增量为256。本模块的设计不但能减少网络对残差单元的依赖,而且使用改进的DenseNet网络作为特征提取网络的部分低分辨率层(CSP单元中的部分残差单元层),能有效解决深层网络传递时的特征消失问题,增加各层之间的特征传递,防止地物目标的细节特征信息丢失,一定程度上能够减少网络的参数量。

为保证网络其他层与DenseNet模块参数的正常传递,设置DenseNet模块输入输出特征图与原始ResNet模块的输入输出尺度相同。将改进DenseNet用于YOLOv4特征提取,结构如图2所示。

图2 改进DenseNet的YOLOv4特征提取网络

3 改进注意力机制

注意力机制有着即插即用的特点,被广泛用于目标检测领域[7]。其参数量本身不高,但在卷积神经网络目标检测中,往往被多次调用,这将对网络造成一定负担[8],如何优化其结构,减少模块调用次数,对目标予以聚焦和关注,更快更准地获取注意力信息,将其用于铁路沿线地物目标检测有着重要作用。本工作提出一种改进的注意力机制用于YOLOv4进行地物检测。首先,融合通道注意SE模块和跨阶段局部单元CSP提出SE-CSP模块,降低模型大小,解决因注意力模块多次执行导致参数量大的问题,再用ICBAM注意模块聚焦原始特征信息,解决将CBAM直接用于YOLOv4导致对铁路目标提取能力差的问题。

3.1 融合通道注意模块跨阶段局部单元的SE-CSP模块

将YOLOv4模型用于铁路沿线遥感影像地物检测过程中,存在特征提取网络性能较差和模型参数量较大问题,无法提取到地物特征图通道之间的相关信息,从而降低了残差块对地物特征的提取能力。为增强通道特征之间的相关性以提高网络的特征提取能力,将SE模块嵌入到ResNet网络中,通过SE模块学习不同通道之间的相关性,并且筛选出针对通道的注意力,以达到较好的特征提取效果。

由于YOLOv4的骨干网CSPDarknet53每训练一次都需要执行23次残差块,且每次都需要通过使用SE模块显式地建立通道间的相互依赖关系,自适应地重新校准通道特征响应,这将增加网络的计算量,同时影响网络的检测速度。为此,提出一种SE-CSP模块,通过分离残差块中的Res Unit与SE模块,并将SE模块拼接到Res Unit之后,保证SE模块建立通道依赖关系的同时将SE模块的执行次数减少至5次,从而保证在不降低网络提取特征能力的同时减少网络的计算量和SE模块的重复调用次数。本文提出的SE-CSP模块如图3所示。

图3 本文提出的SE-CSP模块

3.2 改进CBAM注意力机制

铁路路基具有路线长、与周边环境接触面广、排列不规则等特点,导致对其提取困难。文献[9]为解决大尺度目标检测困难问题,在网络的输出端直接使用CBAM注意力模块,该方法在增强大尺度目标特征的同时削弱了对中小尺度目标的提取能力。为此,本工作提出一种改进的CBAM注意力机制ICBAM。ICBAM能够在保留原特征信息的同时增强对铁路目标的特征提取。所提ICBAM由CBM模块、通道注意模块和空间注意模块三部分组成,其结构如4所示。

图4 ICBAM模块

给定输入特征图F∈RC×H×W,CBAM依次推导出1D通道注意图Mc∈RC×1×1和2D空间注意图Ms∈R1×H×W。由此,ICBAM注意力模块对特征图的整体处理过程为

F′=δ(δ(F))⊗Mc(δ(F))

(2)

F″=δ(F′)⊗Ms(F′)

(3)

F‴=δ(δ(δ(F))F⊕F″)

(4)

其中,Mc(F)和Ms(F′)分别表示在通道注意和空间注意上获取的权重,⊗表示逐元素乘法,⊕表示连接操作,δ表示对输入特征图进行CBM操作,F′是F在通道上的加权结果,F″是F′在空间上的加权结果,F‴为ICBAM的最终输出结果。

通道注意Mc(F)的具体计算公式为

Mc(F)=σ(MLP(AvgPool(F))+MLP(MaxPool(F)))

(5)

式(5)中,“+”表示逐元素求和,“σ”表示sigmoid激活,MLP是带有一个隐藏层的多层感知器,由其组成共享网络。MLP权重由W0和W1输入共享。其中W0∈RC/r×C,W1∈RC×C/r。

空间注意Ms(F)的具体计算公式为

Ms(F)=σ(f7×7([AvgPool(F); MaxPool(F)]))

(6)

式(6)中,σ表示激活函数,f7×7表示一个7×7卷积。

3.3 改进后的YOLOv4总体结构

为使YOLOv4用于铁路沿线遥感影像地物检测时能满足精度与实时性的要求,对其做了相应改进。在骨干网方面,通过改进DensNet,增强了特征重用,减少了小目标地物的细节特征丢失现象。在改进注意力方面包括改进通道注意SE模块和改进通道空间注意CBAM模块两方面。在SE方面,通过在每个CSP单元中的ResUnit之后连接一个SE模块,与CBM模块共同组成SE-CSPX模块,减少了CSP单元中残差块的重复调用次数,在减少模型大小的同时提高了地物检测精度。在CBAM方面,通过采用CBM模块、通道注意和空间注意模块组成ICBAM模块,并在每个尺度预测结果输出之前引入ICBAM,在保留原始地物特征信息的同时,降低了大尺度铁路目标的漏检率。引入改进注意力机制后的YOLOv4整体结构模型如图5所示。其中,SE-CSPX模块中的X表示该模块重复使用的次数。本改进方法能够在降低模型参数的同时提升模型检测精度和模型训练效率,具有高效可行性。

图5 改进的YOLOv4网络模型

4 结果与讨论

4.1 数据集

考虑到现有公开数据集无法满足铁路沿线地物检测需求,本文采集Worldview Ⅰ,Worldview Ⅱ和QuickBird卫星遥感影像数据,采用2 048张铁路沿线数据制作地物检测数据集,并用数据增强方法实现数据集扩充。数据包括铁路(Rail)、房屋(House)、楼宇建筑(Building)、农田(Farmland)和水池(Pool)五种地物目标。其中铁路764张,房屋130张,楼宇建筑220张,农田562张,水池372张。通过旋转、镜像、改变亮度、高斯滤波、平移和缩放将数据集扩充为原来的3倍,扩充后共包含地物目标图像6 144张。使用数据集的70%作为训练集,10%作为验证集,20%作为测试集。

算法运行环境:操作系统Windows 10,平台Keras,语言Python,CPUIntel(R)Xeon(R)2.40 GHz,显卡16 G的NVIDIA Quadro P5000,运行内存128 GB。

4.2 参数设置

实验中设置批量训练数据样本数量(Batch_size)为8,图像大小(Image_size)为608×608,整个数据集训练次数(Epochs)为100,动量(Momentun)为0.9,初始学习率(Initial_learning_rate)为0.001。为使训练模型达到较高精度,使用迁移学习策略在公开数据集DOTA上训练生成权重,然后通过共享权重方式在本数据集上进行训练。训练过程分两阶段,第一阶段冻结原始网络前192层训练得到模型权重,然后在此基础上解冻网络并调整Batch_size为8,完成第二阶段训练。为防止固定学习率对训练精度的影响,当训练5次后模型精度不再发生变化时,使用余弦退火算法改变学习率,以得到最优模型。

4.3 消融实验结果

为分别验证改进DenseNet模块、SE-CSP模块、ICBAM模块对检测效果的影响,进行消融实验,部分实验结果如图6所示。其中,图6(a)为遥感影像原图,图6(b)为YOLOv4算法检测结果,图6(c)为改进DenseNet用于原YOLOv4特征提取检测结果,图6(d)为改进DenseNet和SE模块用于原YOLOv4检测结果,图6(e)为改进DenseNet、SE模块和CBAM用于原YOLOv4检测结果。检测结果中红、深蓝、黄、淡蓝和粉色框分别代表铁路、水池、房屋、农田和高楼建筑物的预测框。

图6 消融实验测试结果

可以看出,通过使用改进DenseNet用于YOLOv4特征提取,对部分图像中铁路的检测精度有所提高,对少部分图像中房屋和楼宇建筑的漏检率明显降低;通过在骨干网中CSP单元的每个ResUnit后连接SE模块,对大部分图像中的铁路检测效果明显,通过在输出网络之前引入ICBAM注意力机制,对大多数图像中铁路的检测精度进一步提高,对少部分图像中农田楼宇和建筑的漏检率进一步降低。

通过客观评价分析,不同模块的改进过程中检测准确度、召回率、平均精度、模型大小和总时间对比分析结果见表1。

表1 消融实验结果分析

经分析可知,通过使用DenseNet改进YOLOv4特征提取网络,模型参数量相比于原YOLOv4减少了7.81%,模型大小降低了6.89%,平均精度mAP提高了0.72%。通过使用SE-CSP模块,参数量减少了9.38%,模型大小进一步降低了0.66%,mAP进一步提高了1.39%。通过在输出网络之前引入ICBAM注意力模块,检测速度没有明显降低,但对大尺度铁路目标的检测能力有所增强,而对其他目标精度损失的代价仅为0.48%,每幅图像的平均检测时间为0.052 s。结果表明这些改进效果可行,适当组合效果更好。

4.4 多种检测方法对比实验结果

为验证整体改进方法的有效性,将其与YOLOv3,YOLO-UAV[10],YOLO-Ship[11]以及YOLOv4算法进行比较,更直观的部分实验检测结果如图7所示。其中图7(a)为遥感影像原图,图7(b)为YOLOv3算法检测结果、图7(c)为YOLOv3-UAV算法-文献[10]检测结果、图7(d)为YOLOv3-Ship算法-文献[11]检测结果、图7(e)为YOLOv4算法检测结果、图7(f)为本改进方法的检测结果。更加具体的客观评价分析如表2所示。

图7 不同目标检测算法与改进算法实验结果

表2 不同目标检测算法对比

表2表明,改进方法在准确率(Precision)、召回率(Recall)和F1得分方面优于其他算法。模型大小较原YOLOv4减少了8.53%,平均检测精度mAP相对YOLOv4提高了2.11%。对多目标、模糊目标和小目标的误检率降低。能够达到较高的精度和速度,能够有效检测复杂背景下的遥感影像地物目标。

5 结 论

提出改进YOLOv4的铁路沿线地物检测方法,与原YOLOv4算法相比,该方法检测精度更高、速度更快。针对小目标地物容易出现细节信息丢失现象产生的漏检问题,使用改进DenseNet增强对小目标检测能力;为解决SE-ResNet嵌入YOLOv4模型导致参数量较大问题,提出一种SE-CSP模块,使其在提高检测精度的同时减少模型大小,从而提高检测速度;针对铁路目标特征提取困难问题,提出一种ICBAM注意力机制,提高对铁路目标的检测效率。通过实验验证,得出改进方法在检测精度和速度方面都有所提高。但对于铁路目标,数据样本中只标记了水平和垂直方向的铁路。未来,可进一步开展对具有旋转角度的目标检测方法和性能提升的研究工作。

猜你喜欢

特征提取精度模块
基于不同快速星历的GAMIT解算精度分析
同步定位与建图特征提取和匹配算法研究
数字化无模铸造五轴精密成形机精度检验项目分析与研究
28通道收发处理模块设计
“选修3—3”模块的复习备考
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
基于曲率局部二值模式的深度图像手势特征提取
必修模块相关知识过关训练
以工匠精神凸显“中国精度”
浅谈ProENGINEER精度设置及应用