1、2023 08 10计算机应用,Journal of Computer Applications2023,43(8):2611-2618ISSN 10019081CODEN JYIIDUhttp:/基于改进YOLOv3的列车运行环境图像小目标检测算法梁美佳1*,刘昕武2,胡晓鹏1,3(1.西南交通大学 计算机与人工智能学院,成都 611756;2.株洲中车时代电气股份有限公司 数据与智能技术中心,湖南 株洲 412001;3.西南交通大学 唐山研究院,河北 唐山 063010)(通信作者电子邮箱)摘要:列车辅助驾驶离不开对列车运行环境的实时检测,而列车运行环境图像存在丰富的小目标。与大中型目标
2、相比,目标占原图比例小于1%的小目标由于分辨率低而存在误检率高、检测精度较差的问题,因此提出一种基于改进YOLOv3的列车运行环境目标检测算法YOLOv3-TOEI(YOLOv3-Train Operating Environment Image)。首先,利用k-means聚类算法优化anchor,从而提高网络的收敛速度;然后,在DarkNet-53中嵌入空洞卷积以增大感受野,并引入稠密卷积网络(DenseNet)获取更丰富的图像底层细节信息;最后,将原始YOLOv3的单向特征融合结构改进为双向自适应特征融合结构,从而实现深浅层特征的有效结合,并提高网络对多尺度目标(特别是小目标)的检测效果。
3、实验结果表明,与原YOLOv3算法相比,YOLOv3-TOEI算法的平均精度均值(mAP)0.5达到84.5%,提升了12.2%,每秒传输帧数(FPS)为83,拥有更好的列车运行环境图像小目标检测能力。关键词:列车辅助驾驶;小目标检测;空洞卷积;稠密卷积网络;特征融合;通道注意力机制中图分类号:TP391.41 文献标志码:ASmall target detection algorithm for train operating environment image based on improved YOLOv3LIANG Meijia1*,LIU Xinwu2,HU Xiaopeng1,3(
4、1.School of Computing and Artificial Intelligence,Southwest Jiaotong University,Chengdu Sichuan 611756,China;2.Data and Intelligence Technology Center,Zhuzhou CRRC Times Electric Company Limited,Zhuzhou Hunan 412001,China;3.Tangshan Institute,Southwest Jiaotong University,Tangshan Hebei 063010,China
5、)Abstract:Train assisted driving depends on the real-time detection of train operating environment.There are abundant small targets in the images of train operating environment.Compared with large and medium targets,small targets with the proportion of less than 1%of original image have problems of
6、high missed detection and poor detection accuracy due to low resolution.Therefore,a target detection algorithm based on improved YOLOv3 in train operating environment was proposed,namely YOLOv3-TOEI(YOLOv3-Train Operating Environment Image).Firstly,k-means clustering algorithm was used to optimize t
7、he anchor to speed up the convergence of the network.Then,dilated convolution was embedded in DarkNet-53 to expand the receptive field,and Dense convolutional Network(DenseNet)was introduced to obtain richer low-level details of the image.Finally,the unidirectional feature fusion structure of origin
8、al YOLOv3 was improved to bidirectional and adaptive feature fusion structure,which realized the effective combination of deep and shallow features and improved the detection effect of the network on multi-scale targets(especially small targets).Experimental results show that compared with original
9、YOLOv3 algorithm,YOLOv3-TOEI algorithm has the mean Average Precision(mAP)0.5 reached 84.5%,which increased by 12.2%,and the Frames Per Second(FPS)of 83,verifying that this algorithm has better detection ability of small targets in images of train operating environment.Key words:train assisted drivi
10、ng;small target detection;dilated convolution;Dense convolutional Network(DenseNet);feature fusion;channel attention mechanism0 引言 随着中国城镇化从快速发展转向高质量发展,国民生活品质不断提高,人们对交通运输的智能化、节能化需求越来越强烈。近年来,以高速铁路为代表的轨道交通在我国快速发展,列车的行车安全变得日益重要。列车辅助驾驶系统可通过前置车载摄像头和雷达实现对周围环境的自动感知,对提高列车行驶的安全性具有重要意义。目标检测任务作为计算机视觉领域的研究热点、难点之
11、一,已经提出许多基于深度学习的目标检测算法。根据算法是否存在显式的区域建议将目标检测算法分为two-stage目标检测算法和one-stage目标检测算法1。two-stage目标检测算法通过显式的区域建议将检测问题转化为对生成建议区域内局部图片的分类问题,如 RCNN(Region Convolutional Neural 文章编号:1001-9081(2023)08-2611-08DOI:10.11772/j.issn.1001-9081.2022091343收稿日期:20220915;修回日期:20221220;录用日期:20230105。基金项目:河北省自然科学基金资助项目(F2022
12、105033)。作者简介:梁美佳(1998),女,四川达州人,硕士研究生,主要研究方向:图像处理;刘昕武(1989),男,湖南株洲人,助理工程师,硕士,主要研究方向:大数据分析;胡晓鹏(1972),男,陕西汉中人,副教授,硕士,主要研究方向:图像处理、智能系统。第 43 卷计算机应用Network)系列2-4等。one-stage目标检测算法将检测任务看作对整张图片的回归任务,如 YOLO(You Only Look Once)系列5-6、SSD(Single Shot multibox Detector)7等。将深度学习应用于轨道交通领域的研究8也在不断地开展中。文献 9 中改进 YOLOv
13、4 算法以检测机车信号灯及行人,引入 ROI(Region-Of-Interest)结构提高危险区域的行人检测精度,实验结 果 表 明,文 献9算 法 在 自 制 的 DLSLRP(Detection of Locomotive Signal Lights and Railway Pedestrians)数据集上能快速、准确地检测机车信号灯和轨道上的行人。文献 10 中针对铁路信号灯实时精准检测的需求,提出一种改进的MobileNet-SSD铁路信号灯检测算法,但结合了深度可分离卷积的主干网络特征提取能力较弱,检测精度有待提升。文献11 中针对铁路钢轨扣件尺寸过小的问题,提出一种改进的YOLO
14、v3轨道扣件检测算法,优化了原YOLOv3算法的特征融合方式,将均方差(Mean Square Error,MSE)损失函数替换为广义交并比(Generalized Intersection over Union,GIoU)损失函数并引入 Focal Loss 平衡难易样本数,最终检测精度高达93.51%,较原 YOLOv3 提升 10.64%。文献 12 中提出 FR-Net(Feature fusion Refine neural Network)算法解决调车模式下铁路交通目标(列车、行人、轨道及安全帽)检测问题,但对实际场景下小目标的检测精度还有提升的空间。文献 13 中利用Faster
15、 RCNN检测机车信号灯及轨道旁标识牌,但检测耗时过长。文献 14 中提出DFF-Net(Differential Feature Fusion convolutional neural Network)算法实现铁路场景下目标的实时检测,该算法结构复杂,训练难度大。列车运行环境实时检测是实现列车辅助驾驶的重要前提。列车运行环境图像由列车前置车载摄像头拍摄所得,包含汽车、信号灯、卡车、标识牌、行人及其他入侵障碍物等目标,如图1所示。列车运行环境图像常包含一些小目标类别,精准检测出这些小目标对于保障列车安全行驶具有重要意义。例如,信号灯可保证机车车辆安全有序地行车与调车作业;标识牌具备列车限速、列
16、车鸣笛等其他指示功能。在目标检测领域,目前常用的小目标定义方式有两种:一种是相对尺寸的定义,若目标尺寸的长宽占原图像尺寸的0.1,则认为是小目标;另一种定义方式认为分辨率小于3232像素的目标是小目标15。通常,小目标包含的特征信息少,特征提取以及检测难度较大。现有的深度学习方法在小目标检测任务中已取得了一些成果,但由于目前缺乏大量公开铁路场景相关数据集,大部分目标检测算法对列车运行环境图像小目标检测普遍存在精度不高的问题。针对铁路场景中的信号灯、标识牌、远处行人及其他入侵障碍物(工人遗留在现场的工具箱、安全帽)这四种小目标检测识别困难的问题,本文采用具有实时检测效果的one-stage目标检
17、测算法 YOLOv3作为主网络,提出一种改进的YOLOv3-TOEI(YOLOv3-Train Operating Environment Image)目标检测算法,主要工作如下:1)采用k-means聚类算法优化anchor,增大anchor与真实框(gt-box)的匹配程度,提高模型的收敛速度及检测精度。2)在YOLOv3的基础特征提取网络中引入空洞卷积和稠密神经网络(Dense convolutional Network,DenseNet)16,提高网络在复杂铁路环境背景下小目标的特征提取能力。3)将YOLOv3的特征金字塔网络(Feature Pyramid Network,FPN)1
18、7 改 为 双 向 特 征 金 字 塔 网 络(BIdirectional Feature Pyramid Network,BIFPN)18,并借鉴通道注意力机制 SENet(Squeeze-and-Excitation Network)19 的设计思想,在预测前将经过BIFPN的特征通过SE(Squeeze-and-Excitation)模块,自动学习通道维度上各层特征的相关性与重要性,最终实现不同特征之间的自适应融合,提高YOLOv3对小目标特征的敏感程度。4)在列车运行环境数据集上相较于 YOLOv3 算法,YOLOv3-TOEI对小目标的检测能力有明显提高。1 YOLOv3模型结构YO
19、LOv35是一种由特征提取网络 DarkNet-53和 FPN 组成的one-stage目标检测算法,相较于two-stage目标检测算法具有检测速度快但精度较低的特点,YOLOv3的整体网络结构如图2所示。首先DarkNet-53主干网络提取512512像素的输入图像的基础特征,DarkNet-53包括1个DBL模块和5个残差模块 res(Residual Block)20,共有 53个卷积层。DBL是YOLOv3中最小的组件,DBL将特征进行卷积(Conv)操作后增加批归一化(Batch Normalization,BN)处理,并利用激活函数 Leaky ReLU(Leaky Rectif
20、ied Linear Unit)缓解过拟合的问题。每个res由1个DBL和n个残差单元(res unit)组成,DBL利用Conv(33/2)完成下采样,每个res unit利用连续的Conv(11)和Conv(33)实现跳跃连接有效缓解了由于网络深度增加而导致的梯度消失问题;DarkNet-53中最后3个残差模块的输出作为3种不同尺度的特征输入FPN结构进行特征融合并重构;最终经由FPN结构特征融合后的3个特征图再经过YOLO Head模块进行Conv操作,输出1616、3232和6464三种尺度的预测结果。图1列车运行环境图像Fig.1Train operating environment
21、 image图2YOLOv3的结构Fig.2Structure of YOLOv32612第 8 期梁美佳等:基于改进YOLOv3的列车运行环境图像小目标检测算法2 改进的YOLOv3算法 YOLOv3虽然通过FPN结构输出3个尺度的特征图,兼顾了小目标预测,但在本文所使用的列车运行环境图像数据集中,大量图片中待检测目标较多,目标间的尺寸和数量相差悬殊,且有超过一半的目标为小目标。检测特定环境下的小目标是富有挑战的研究工作,需要对YOLOv3算法作出相应改进。考虑到上下文信息对小尺度目标的检测至关重要,在DarkNet-53中增加空洞卷积模块,既可保证特征图分辨率不损失又扩大浅层特征图的感受野
22、。此外,为缓解DarkNet-53的网络性能退化及梯度消失等问题,并进行特征重用,在DarkNet-53中加入稠密模块DenseNet,在特征前向传播过程中最大化利用不同层的特征信息,增强了小目标特征信息的提取能力。目标检测任务需要完成对目标的定位和分类,这就要求用于预测目标的特征图同时具备丰富的细节和语义特征。YOLOv3只采用自顶向下的特征融合方式,忽略了浅层特征的重要性。浅层特征图感受野小、分辨率更高且细节丰富,更有利于目标的定位。因此改进的双向加自适应特征融合结构在YOLOv3的基础上引入自底向上和自适应特征融合结构,充分利用主干网络提取的特征信息,可有效提高网络的特征表示能力,改善目
23、标检测效果。2.1anchor优化关于 YOLOv3 模型中的 anchor 参数,文献5中采用k-means聚类算法得到9组与COCO数据集中目标宽高匹配的anchor。COCO数据集中共有80类目标,产生的9组anchor尺寸分布较为均匀。这9组anchor值分别是(10,13)、(16,30)、(33,23)、(30,61)、(62,45)、(59,119)、(116,90)、(156,198)、(373,326)。经分析,列车运行环境图像中常存在着小目标类别,如图3所示。默认的anchor尺寸设计对列车运行环境下的目标缺乏针对性。为了使边框回归获得更准确的检测结果,重新对列车运行环境图
24、像数据集进行k-means聚类分析,获取更为合适的anchor尺寸。采用IAIoU作为anchors的评价标准,如式(1)所示。IAIoU值越高,anchors越能更好地匹配真实框。IAIoU=1ni=1n maxj 0,m)(IoU(bboxi,anchorj)(1)其 中:IAIoU表 示 所 有 目 标 bbox 与 anchor 最 大 交 并 比(Intersection over Union,IoU)的均值;n表示样本总数;m表示anchor的总数(即k-means聚类算法中的簇数);bboxi表示第i个 目 标 真 实 框;anchorj表 示 聚 类 生 成 的 第 j 个 a
25、nchor;IoU(bboxi,anchorj)表示第 i 个目标真实框和第 j 个 anchor 的IoU值。标准k-means聚类算法关于数据距离的定义采用欧氏距离,会导致尺寸较大的边界框,产生更大的误差,故本文采用边界框间的交并比作为新的距离公式:D(A,B)=1-IoU(A,B)(2)其中:IoU是矩形框A、B之间的交并比数值;式(2)将D(A,B)与IoU(A,B)转变成负相关函数,当A、B之间的交集更大,说明A、B间的距离更小。2.2主干网络优化2.2.1空洞卷积深层神经网络结构利用下采样的方式增大感受野,但通过多次下采样减小特征图大小,会降低图像分辨率、丢失细节信息。为了解决这个
26、问题,空洞卷积向卷积层引入一个“扩张率d(dilation rate)”作为新参数,即在卷积核中间添加d-1个间隔行/列,让原本相同大小的卷积核在同样的参数量下拥有更大的感受野21。如图4所示,标准卷积核大小均为3时,它的感受野分别为33、55和77。假设空洞卷积的卷积核大小为k,扩张率为d,则该空洞卷积的真实卷积核大小k的计算公式如下:k=k+(k-1)(d-1)(3)2.2.2稠密网络YOLOv3算法的主干网络 DarkNet53采用残差结构降低网络过深而导致的网络性能退化、梯度消失或爆炸等问题,但随着网络结构的加深,采用元素级求和方式(element-wise addition)进行特征
27、合并不能充分保证网络各层之间信息流动22。DenseNet的核心思想是每一层与它前面所有层采用通道维度拼接方式(channel-wise concatenation)实现特征复用,相比残差网络拥有更少的网络参数,不用学习冗余的特征。稠密模块(Dense Block)和过渡层(Transition)共同构成DenseNet,如图5所示。Dense Block中每一层包含k个尺寸一致的特征图,每一层的输入xl是它前面所有层的输出,如式(4),xl解决了过度依赖最后一层xl-1网络提取抽象特征的问题,提高了各层之间的信息传递效率22。图3数据集样例Fig.3Sample of dataset图4不同
28、扩张率下的空洞卷积Fig.4Dilated convolutions with different dilation rates图5DenseNet的结构Fig.5Structure of DenseNet2613第 43 卷计算机应用xl=Hl(x0,x1,xl-1)(4)其中:x0,x1,xl-1表示前l-1层输出特征作通道合并操作,xl表示第l层的输出特征;非线性组合函数Hl的定义为BN-ReLU-Conv(11)-BN-ReLU-Conv(33)。Conv(11)被作为瓶颈层(BottLeneck Layer)引入,以减少输入特征向量的维度,提高 计 算 效 率。过 渡 层 的 定 义
29、 为 BN-ReLU-Conv(11)-AvgPooling(22),在过渡层中通过引入步长为2的平均池化操作实现下采样,将网络划分为多个密集连接的Dense Block。相较于普通卷积,空洞卷积可在不增加模型参数量和不损失图像分辨率的前提下,增大网络感受野。同时 Dense Block保证了每一层都与原始输入层相连,它和Transition的结合使DenseNet变得更加紧密,模型参数得到最大限度的利用,可提高整个网络的收敛速度并减少过拟合的情况。YOLOv3-TOEI 算 法 选 择 将 YOLOv3 主 干 网 络 的 第 2 个Residual Block替换为1个11的普通卷积和3个
30、33且扩张率分别为1、2、3的空洞卷积,并加入短路式连接以捕获更丰富的上下文信息,进一步提升对小尺度目标的检测效果;然后采用Dense Block替换DarkNet53中的Residual Block。为了有针对性地提高网络对小目标的特征提取能力,避免全部替换导致参数量过大、模型训练困难的问题,仅将YOLOv3主干网络中第 3、4 个 Residual Block 替换为 Dense Block,第 1 个Dense Block 和第 2个 Dense Block 中 Dense Block Unit 每次增加的通道数(k)分别取值256、512。改进YOLOv3主干网络后的网络(YOLOv3
31、-dia-dense)结构如图6所示。2.3特征融合结构优化神经网络的深层特征图具有丰富的语义信息,感受野比较大,但图像分辨率低,底层边缘细节信息损失严重,适合检测大目标;相反浅层特征图中几何细节特征表征能力强,但缺乏语义信息,适合检测小目标。多尺度融合结构可以增大网络的宽度,交换不同通道间的信息。为了提高网络对于多尺度目标的识别能力,YOLOv3采用FPN特征融合结构,如图7所示。其中:pi代表主干网络的第i层特征图;piout代表Neck模块的输出特征图,i越大表示分辨率越低,语义信息越强。但FPN只能实现高层特征信息向底层特征信息的流动,是一种单向特征融合。继FPN之后,PANet(Pa
32、th Aggregation Network)23、NAS-FPN(Neural Architecture Search-FPN)24、BIFPN18等多种具有双向特征融合的结构被提出。PANet首次验证了双向特征融合的有效性。BIFPN在PANet的基础上增加了同一尺度特征间的计算结构,在不增加计算量的同时融合了更多特征信息,如图8所示。其中pitd代表Neck模块的中间级特征图。将YOLOv3中的FPN结构替换为BIFPN结构,并为了进一步提高模型检测目标的精度,借鉴通道注意力机制SENet思想,使网络更加关注与目标相关的通道特征而抑制无关的通道特征。SENet由Squeeze和Excit
33、ation两个关键操作构成:Squeeze操作在空间维度上利用全局平均池化得到一个11c的压缩特征向量,用于缓解因卷积核接受域过小而无法获取特征图全局描述信息的现象;Excitation操作通过两个全连接层自动学习各个通道间的重要程度。YOLOv3采用将主干网络中最后3个残差模块作为FPN结构输入。为了进一步提高YOLOv3对较小目标的关注度,将具有丰富图像底层细节信息的128128128大小特征图也作为双向特征融合结构的输入。输入到双向特征融合结构的特征必须拥有相同通道数,故将大小分别为 128128128、2566464、5123232、10241616 的 特 征 向 量 通 过Conv
34、(11),将通道数压缩/扩张为512后再进行特征融合。在最终预测前,为了进一步融合其他层的特征,抑制环境对小目标检测的干扰,将从 BIFPN 结构输出的 3 个特征向量经过Concat 拼 接 操 作 后 送 入 自 适 应 通 道 特 征 融 合(Adaptive Channel Feature Fusion,ACFF)结构,自动学习通道维度上各层特征的相关性与重要性,实现不同特征之间的自适应融合。ACFF在SENet的基础上,引入残差层将经过SENet后的特征与Concat后的输入特征进行融合,ACFF详细结构如图9所示。YOLOv3经过特征融合方式优化后的网络结构(YOLOv3-bi-a
35、cff)如图10所示,特征融合需基于相同尺度的特征图,以ACFF1 为例,对大小分别为 2566464、5123232、1 0241616的输入特征层具体操作如表1所示。其中上采样利用线性插值、2倍下采样采用33/2的卷积操作实现,4倍下采样图6YOLOv3-dia-dense主干网络结构Fig.6Structure of YOLOv3-dia-dense backbone network图7FPN结构Fig.7Structure of FPN图8BIFPN结构Fig.8Structure of BIFPN2614第 8 期梁美佳等:基于改进YOLOv3的列车运行环境图像小目标检测算法在2倍下
36、采样的基础上采用最大采用池化操作实现。将经过下采样后大小为2561616、5121616与1 0241616的特征进行Concat操作,送入ACFF结构进行通道特征学习,然后再经过11的卷积操作得到361616的特征图,用于检测对应尺寸的目标,以此完成整个自适应通道特征融合的过程。3 实验数据集与算法评价指标 3.1实验数据集实验数据集由湘钢铁路沿线列车车载摄像头真实拍摄所得,总共5 440张样本图片,图片大小均为1 9201 080,包含行人(person)、机车(locomotive)、汽车(car)、信号灯(signal_light)、卡车(truck)、标识牌(sign)以及其他入侵障
37、碍物(obstacle)共7种类别目标,其中obstacle类为工人遗留在现场的工具箱和安全帽。数据集按照4 1的比例随机分为训练集和测试集,训练集共4 352张图片,测试集共1 088张图片。训练集中目标像素占图片的比例见图11,具体各个类别目标像素占图片的比例见图12。训练数据集和测试数据集中各类别目标数量见表2。person类约86%的目标分辨率小于原始图片尺寸的1%;signal_light、sign及obstacle类别目标全部属于小目标;locomotive、car及truck类中小目标的比例分别为53.1%、58.1%、57.9%。训练集中占比小于1%的共有21 282个目标,约
38、占总目标数的81%。总的来说,训练集中多为小目标,检测时应需保留更多的图像底层细节特征。图9ACFF的结构Fig.9Structure of ACFF表1不同输入特征层的具体上/下采样操作Tab.1Specific up-sampling or down-sampling operations for different input feature layers输入特征层256646451232321 0241616操作下采样下采样上/下采样倍数42输出特征图256161651216161 0241616图10YOLOv3-bi-acff网络结构Fig.10Structure of YOLOv
39、3-bi-acff network图11训练集中目标占原图像大小的比例分布Fig.11Proportion distribution of target to original image size in training set表2训练集和测试集信息Tab.2Information of training set and test set类别personlocomotivecarsignal_lighttrucksignobstacle共计训练集样本数5 8618 1412845 7581951 1384 78726 164测试集样本数1 4132 141891 481392751 0536
40、 491图12训练集中不同类别目标占原图像大小的比例分布Fig.12Proportion distribution of different targets to original image size in training set2615第 43 卷计算机应用3.2评价指标模型性能评价指标包括准确率(Accuracy)、精确率 P(Precision)、召 回 率(Recall)、平 均 精 确 率(Average Precision,AP)、平 均 精 度 均 值(mean Average Precision,mAP)、F1 分数(F1 Score)以及每秒传输帧数(Frames Per
41、 Second,FPS)。不同的指标对模型的相关性能侧重点不一样。本文主要从 AP0.5(IoU=0.5)、mAP0.5(IoU=0.5)、F1、FPS四个方面进行对比。3.2.1平均精确率AP用来衡量数据集中单一类别在不同召回率下的平均检测精确率,如式(5)所示:IAP=01P(R)dR(5)3.2.2平均精确率均值mAP对各个类别的AP再求均值,如式(6)所示。mAP能够实现不同类别目标检测效果的全面评估,是目标检测任务中最为重要的指标。ImAP=1Ni=0NIAP i(6)3.2.3F1分数模型仅使用P和R两个指标不能很好地评价目标检测模型泛化能力,往往利用 F1 分数来评价模型的综合性
42、能,见式(7):IF1=2 (P R)P+R(7)4 实验与结果分析 实验环境为操作系统 Ubuntu 18.04.5;深度学习框架Pytorch1.9;GPU 为 Tesla V100-PCIE,显存为 32 GB;CPU 为Intel Xeon Gold 6226。为验证本文算法,搭建YOLOv3网络模型对第2章提出的各种优化策略进行对比实验,各项超参数均设置一致:Batch-size 为 12;优化器选择随机梯度下降(Stochastic Gradient Descent,SGD)法,动量参数momentum为0.937;初始学习率为10-3,并采用cosine学习率下降策略,最终学习率
43、为 1.010-5;epoch为200;IoU为0.5;训练集图片进行多尺度训练,图片尺寸随机调整范围为 320320,736736;验证集图片统一缩放到512512大小。YOLOv3-TOEI的训练损失曲线如图13所示。训练在开始时损失值快速下降,在迭代近40轮后趋于平稳,之后损失值基本稳定在0.3以下,说明YOLOv3-TOEI模型在训练阶段的学习效果理想且以上超参数设置合理。图13YOLOv3-TOEI算法的损失曲线Fig.13Loss curve of YOLOv3-TOEI algorithm4.1anchor优化列车运行环境图像数据集中有超过80%的小目标,本文对该数据集使用 k-
44、means 聚类算法进行聚类,得到的新anchors可以更好地拟合真实目标,降低模型训练的难度。在使用k-means算法进行聚类时,聚类效果随预选聚类中心数(k)增加而变得更加优异。由图14可知,IAIoU值和k值呈正相关分布关系。k值的增加会使模型更易收敛且检测更为准确,但会导致模型的计算复杂程度增加。为了取得更优异的IAIoU水平并且综合考虑样本容量、模型的计算复杂度以及3个预测层的原则等多方面因素,在实验中k取9。由于产生的聚类中心和先验框尺寸具有随机性,因此执行10次k为9的聚类操作,产生的最高IAIoU数值为64.86%,较默认anchor的IAIoU(YOLOv3)提升25.4%。
45、本文使用k-means聚类算法对列车运行环境图像数据集的真实标注框进行聚类操作,聚类效果如图15所示。最终得到的新 anchor 为(3,4)、(4,6)、(7,15)、(16,14)、(15,37)、(39,24)、(50,61)、(227,92)、(257,276)。由图15可知,新聚类结果整体均偏小,长宽比也更符合列车运行环境图像数据集的特点。4.2主干网络优化对引入空洞卷积和稠密模块(Dense Block)的YOLOv3进行训练和测试。将特征图输入Dense Block中会导致特征维度增加,虽然特征复用达到最大,但模型的计算量过大,推理速度降低。例如 2566464 大小的特征图在经
46、过第一个 Dense Block中的每一个Dense Block Unit后,特征维度增加256。若Dense Block Unit取值8,最终输出2 5606464大小的特征图,通道数增加10倍。为了在保证模型检测精度的同时提高推理速度,采用4组 对 比 实 验,YOLOv3-dense1、YOLOv3-dense2、YOLOv3-dense3分别Dense Block Unit数为8、6、4的模型,各模型的训练学习效果见图16。由图16可知,YOLOv3-dense2的检测精度一直低于 YOLOv3-dense1,但在后期 YOLOv3-dense2 的检测精度与 YOLOv3-dense
47、1 持平,且 YOLOv3-dense2 的训练和推理时长均低于YOLOv3-dense1。YOLOv3-TOEI算法最终选择Dense Block Unit个数为6的YOLOv3-dense2作为主干网络图15聚类中心分布Fig.15Cluster center distribution图14不同k值的IAIoU曲线Fig.14IAIoU curve with different k value2616第 8 期梁美佳等:基于改进YOLOv3的列车运行环境图像小目标检测算法中引入DenseNet得优化策略。4.3消融实验前三组实验结果表明,基于YOLOv3提出的3个改进点对列车运行环境周围目
48、标检测的精度都有所提升,尤其对小目标的检测精度提升最为显著,综合 3 个改进点分别对比原YOLOv3模型进行消融实验,如表3。通过表 3 可知,采用 k-means 优化后的 anchor,使模型mAP0.5提高6.5%,F1分数提高5.9%,表明了聚类算法的可行性与有效性。引入空洞卷积后模型mAP0.5提高1.3%,F1分数提高 1.2%;同时引入空洞卷积和 DenseNet 后的模型mAP0.5提升3.6%,F1提高2.4%,表明空洞卷积和DenseNet对提高主干网络的小目标特征提取能力均有帮助。优化YOLOv3特征融合方式后 mAP0.5提高 3.5%,F1分数提高2.7%。虽然增加了
49、一定的参数量导致推理速度有所下降,但是极大地提升了对小目标的检测精度。总的来说,实验证明了3种优化方式对于提升小目标的检测能力均有明显效果。4.4综合分析对第 3章提出的 3个改进点进行综合分析,将 YOLOv3-TOEI算法与YOLOv3算法在各类目标精度上的对比见表4。从表4可知,YOLOv3-TOEI与YOLOv3相比,在7类目标上的 AP0.5均有不同程度的提升。person、locomotive、car、signal_light、truck、sign及 obstacle分别提升 5%、0.6%、3.8%、30.5%、2.5%、36.7%、28.9%。其中 person、signal_
50、light、sign及obstacle这4类小目标类别精度提升最为显著,由于person仅有约 86%的目标为小目标,故相较于全为小目标的signal_light、sign 及 obstacle 类别精度提升最小。locomotive、car和truck类因目标尺寸占比较大,在原YOLOv3算法上的检测效果良好,精度均在 85%以上,但检测精度提升幅度比person更低。综上所述,可见改进后的YOLOv3-TOEI算法在小目标检测能力上明显优于原YOLOv3算法。YOLOv3 算法与 YOLOv3-TOEI 算法的检测结果对比如图17所示。YOLOv3算法基本上存在一些小目标的误检、漏检以及检