一种改进Faster R-CNN的车辆识别算法

2022-06-28 02:55朱云飞者甜甜刘庆华
软件导刊 2022年6期
关键词:空洞尺度卷积

朱云飞,者甜甜,刘庆华

(江苏科技大学电子信息学院,江苏镇江 212003)

0 引言

随着车辆数量的增加,交通违章现象频出,例如渣土车违规上道、工程车辆违规进入城市主干道、车辆停放在消防通道等,这一系列的交通违规行为给城市安全埋下了巨大隐患。对于交通管理者而言,加强对特定车辆的识别和分类管理尤为重要。然而,在实际监控识别车辆时,相当一部分车辆图像存在图像不全或者遮挡问题,极大降低了监控识别准确率。如何准确识别车辆,是当前车辆检测的重点。

近年来,深度学习技术不断发展,已成功应用于各行各业。深度学习与传统方法相比,能更加深入地获取到图像的各种信息,因而其在图像识别、分类等方面效果显著。文献[1]提出LeNet 网络并将其应用于手写数字识别,虽然该网络因时代条件所限而不能应用于更加复杂的场景,但依然具有突破性的进步。在此之后,受益于时代条件的转变与人文科学的进步,各种面向复杂场景的改进型网络也相继问世,如AlexNet[2]、ZFNet[3]、VGGNet[4]、GoogleNet[5]、ResNet[6]等,极大提高了网络应用水平。

文献[7]基于卷积神经网络提出R-CNN 目标检测模型,此模型的提取特征由卷积神经网络完成,分类工作则由支持向量机制完成,这样的结构大幅提升了mAP 值,但也出现了选择候选区域耗费大量时长的问题。为了解决该问题,学者们提出许多目标检测算法,例如Fast-RCNN[8]、Faster-R-CNN[9]、YOLO[10]、SSD[11]等。其中,YO⁃LO 和SSD 都是一步法,即two-stage 算法,他们的候选区域产生与分类等工作都集成在一个网络之内,使得整体运算时间大为减少,但同时也带来了精度较低的负面影响。RCNN 相关算法属于两步法,即two-stage 算法,候选区域生成与识别分类两个模块分开工作,与一步法相反,其精度表现良好但耗时较长。因此,因地制宜选择网络模型才能更好地解决实际问题。

近年来,越来越多的学者将卷积神经网络应用于车辆检测并取得不错效果。文献[12]提出的算法提高了图像上采样效率,并结合聚类算法,在公开数据集检测上取得良好效果;文献[13]将HashNet 中的AlexNet 部分替换为双线性模块,赋予网络对精细粒度特征的提取能力,根据特征生成哈希码,并通过匹配哈希码实现车型识别;文献[14]提出新的改进Inception 模块,并将其替代SSD 网络中的Conv8、Conv9 和Conv10 层,并设计了多尺度特征融合均衡化网络,提高了对小目标车辆的识别率。

但上述研究针对的只是车辆整体类型识别,并不能达到实际交通管理要求。根据实际情况,本文将车辆分为家用小轿车、大客车、消防车、重型卡车、吉普车、面包车、出租车、小卡车和运动型汽车(SUV)等9 类,改进Faster-RCNN 算法模型,对车辆进行识别与分类工作。

1 相关工作

1.1 Faster R-CNN

本文目标检测算法由Fast R-CNN 改进而来。在候选区域生成阶段,他使用选择区域建议网络(Region Proposal Network,RPN)代替传统算法中的Selective Search[15],该算法的特征抽取、候选区域生成、边界框回归与分类工作都整合在一个网络中,从而提升了综合检测性能,同时相较于前代算法,Faster R-CNN 的检测速度也有了较大提升。

图像在输入后,经过卷积层生成特征图,RPN 模块处理特征图生成候选区域,该结果与特征图共同输入到RoiPooling 层并进行后续分类与回归。

在实际操作使用中发现,由于Faster R-CNN 对多尺度信息的提取效果较差,其对于一些特殊车辆,例如公安用车、救护车辆等识别率相对较低,同时在有所遮挡的视野条件下会出现较多漏检误检情况。因此,本文选择提高感受野和对多尺度信息的重采样改进算法,同时引入Rea⁃soning-RCNN,给予Faster R-CNN 全局推理能力,以解决实际检测中出现的准确率不理想问题。

1.2 Reasoning-RCNN

文献[16]基于卷积神经网络提出Reasoning-RCNN,该方法引入了全局语义池和知识图谱,以达到特征增强效果。该网络首先利用基本检测网络产生每个类别的基础分类权重,并利用其生成一个全局语义池;然后,通过包含语义知识的知识图谱后,经由自适应全局推理模块产生强化后的特征,将此特征与先前生成的基础特征相结合后生成新的分类和定位。该方法足够灵活,可以叠加在大部分现有网络上,借此可以有效改善遮挡或模糊情况下的物体识别。本文将其融合到Faster R-CNN 中以改善原网络检测效果。

1.3 VGG-16

VGGNet 网络结构简洁、泛化性能良好。VGG-16 网络是2014 年推出的深度网络模型,该网络共有带参的网络层16 个,包含有卷积层13 个、池化层5 个、全连接层3 个。在图像处理方面性能卓越。因此,本文将改进VGG-16 网络作为骨干网络使用。

1.4 空洞卷积

在神经网络中,为了减少参数数量并增加感受野,特征图在生成后需要经过池化层下采样以减小特征图尺寸。而后续的上采样还原特征图尺寸的过程会丢失很大一部分特征信息,即该过程会丢失细节信息导致图像处理效果不佳。针对该问题,文献[17]提出空洞卷积(Atrous Convo⁃lutions),该方法在增加感受野的同时没有减小图像大小。因此,每个卷积输出都包含了较为完整的信息。空洞卷积示意图如图1所示。

Fig.1 Atrous convolutions图1 空洞卷积

2 基于Faster-RCNN的改进模型

在利用Faster-RCNN 进行车辆类型识别过程中,部分车辆存在相似度较高的情况,例如警用车辆、出租车和私家车辆、消防车和货车等,这些车型的主要区别在于车身涂装和标志灯上。在实际应用中,往往会因为行人或非机动车遮挡部分车辆画面导致识别效果不佳。改进模型利用空洞卷积增加感受野,结合空洞空间金字塔池化(Atrous Spatial Pyramid Polling,ASPP)提高对多尺度信息的提取效果,引入Reasoning-RCNN 赋予模型自适应推理能力,以增强算法识别能力。

本文创建了一个COCO 数据集,用于训练Faster-RCNN。根据数据特点,选择VGG-16 作为骨干网络,引入空洞卷积、空洞空间金字塔池化和Reasoning-RCNN 提高算法准确率。修改后的结构模型如图2所示。

图像首先经过融合空洞卷积的VGG-16 网络得到特征图。特征图分别在RPN 模块生成候选区域,在ASPP 模块提取多尺度特征信息。两项结果一方面共同输入到ROI Align 层中进行候选区域特征图的生成,再进行后续工作得到各项的初始权重以生成全局语义池M;另一方面由特征图生成注意力系数α,通过包含特定知识的知识图谱,在M 中传播所有的语义表示以进行全局推理。最后,将得到的结果,即增强后的特征图再次进行分类和候选区域回归以得到新的分类权重。

Fig.2 Schematic diagram of improved algorithm structure图2 改进算法结构示意图

本方法的损失函数分为RPN 损失与Faster R-CNN 损失两部分。同时,这两部分损失中都包含分类损失和回归损失。其计算方法为:

其中,σ在RPN训练时为3,在Faster R-CNN 训 练时为1。

2.1 空洞卷积的VGG-16网络

本方案用rate 值为2、3、5 的空洞卷积在VGG 的第4、5个卷积模块中分别进行3 次卷积操作。空洞卷积rate 值的变化后,为了不改变生成特征图的尺寸,pad 值也需作出改变。在rate=1,即用3*3 的卷积核对7*7 的特征图进行卷积操作时,需要在特征图外围补充宽度为1 的像素点以确保能够生成7*7 大小的特征图。当使用5*5 的卷积核进行卷积时,即rate 值为2,则需要填充的像素点宽度为2。同理,在rate 为3 时,相当于使用7*7 的卷积核进行卷积,此时应在特征图周边填充宽度为3 的像素点。在rate=5 时应填充宽度为5 的像素点。因此,也需要修改网络中相应的pad参数。修改后的VGG16 网络与原网络卷积层比较如表1所示。

使用空洞卷积能有效提高感受野,同时还可以改善局部特征信息丢失情况,以增加相似车型之间的差异特征。

2.2 ASPP

空洞空间金字塔池化(ASPP)是基于SPP(Spatital Pyr⁃amid Pooling)而提出,该方法对所给定的输入以不同采样率的空洞卷积并行采样,相当于以多个比例捕捉图像上下文。ASPP 能增加对多尺度信息的提取效果,以此提升算法准确性。

Table 1 Comparison between VGG-16 network structure with atrous convolution and original network表1 空洞卷积的VGG-16网络结构与原网络比较

本文在Faster R-CNN 中加入ASPP,从Conv-5 层输出的特征图输入ASPP 结构中,使用多个尺度的空洞卷积进行重采样,并编码多尺度信息,增加对多尺度信息的提取效果。rate 值的设定要适当,既能保证较大的感受野,又不至于降低空洞卷积效果,这样才能够保证对多尺度信息的处理效果。

本文检测对象中,消防车、出租车等与普通车辆的区分标志图案属于小目标,因而在检测中应使用多个小尺度的卷积进行重采样工作,这样才能保证尽可能多地获取到相关的局部特征信息。经实验后发现提取多尺度信息的最佳方案为:ASPP 模块第一个分支先进行平均池化操作,然后使用1*1 的卷积变换通道数,其他4 个分支分别使用rate 值为1、3、5、7 的3*3 卷积核对特征图进行再采样。ASPP 结构如图3所示。

Fig.3 Structure of atrous spatial pyramid pooling(ASPP)in void space图3 空洞空间金字塔池化(ASPP)结构

2.3 Reasoning-RCNN

该方法通过引入外部知识建立自适应全局推理模块。首先,通过收集上一层的分类层权重生成全局语义池,即集成每个类别的高级语义表示;然后,在训练和测试中定义一个类到类的无向图G=,其中N是类别节点,每条边ei,j ϵ ε编码两节点间的一种知识,通过在全局语义池中传播知识图G以增强区域特征;最后,将增强的特征与原特征连接得到新的特征用以增强检测效果。其过程如图4所示。

Fig.4 Global reasoning module图4 全局推理模块

3 实验结果及分析

3.1 数据集

深度学习方法需要样本数据进行训练,以学习数据中的特征,本方法也不例外。在数据选择上,需要选择更有代表性的图像才能获得较好的检测效果。本文使用从网络上采集而来的数据样本,包括9 个类别,即家用小轿车、大客车、消防车、重型卡车、吉普车、面包车、出租车、小卡车、运动型汽车(SUV)。数据图像皆为车辆的正面或侧面视角,符合大部分实际应用的常见状况。数据集包含2 035 张图片,通过人工标注制成。数据集的部分图像如图5所示。

Fig.5 Image display of data set图5 数据集部分图像展示

为了检测本文网络性能,采用综合汽车数据集Com⁃prehensive Cars(CompCars)[17]验证网络准确性。该数据集由香港中文大学多媒体实验室(MMLAB)发布,包含214 345 张汽车图像,涵盖两种场景(网络环境、监视环境)和1 687 种汽车型号。本次实验取其中300 张图片进行测试,改进后的网络准确率达90%(原VGG-16 网络检测准确率约为84%)。

3.2 不同骨干网络比较实验

本文使用模型的基础框架为Faster R-CNN,分别将骨干网络改为原VGG-16、ResNet-50、ZF 网络以及改进后的网络,得到如表2 所示的实验结果。观察结果可知,就原网络而言,相比于其他网络,VGG-16 网络的效果更胜一筹。在引入ASPP 后,网络的mAP 值有所提高。加入空洞卷积后,网络感受野提高,mAP 也相应提高。在引入基于Faster R-CNN 框架的Reasoning-RCNN 后,网络的mAP 值达93.86%,整体提升1.59%。由此可见,该方法能有效提升算法识别准确率。

本文方法下检测不同类别车辆的mAP 值比较如表3所示。比较结果发现,改进后的算法在各类别上的mAP 值均有所提升,其中,在重型卡车、消防车、出租车、家用轿车这些易混淆类别上mAP 值的提升较大。

Table 2 Comparison of different backbone networks表2 不同骨干网络比较

Table 3 Comparison of mAP values of different types of vehicle表3 各类别车辆mAP值对比

3.3 不同算法比较实验

本文将改进的算法与SSD、YOLOv2 以及YOLOv3 算法进行比较,在控制相同实验参数的情况下比较mAP 值,结果如表4 所示。可以发现,本文方法的mAP 值高于其他算法。同为one-stage 算法,YOLO 系列算法相对于SSD 效果更好,但该算法对于小尺度目标信息的检测效果不好,在检测相似类型车辆时效果较差,同时对于部分遮挡的车辆无法准确检测。改进后的Faster R-CNN 增加了对多尺度信息的提取效果,同时增加感受野,在此基础上还拥有全局推理能力,这都增加了改进后的算法检测效果。

Table 4 Comparison of the effects of different detection methods表4 不同检测方法效果比较

3.4 实际应用效果验证

本次使用400 张图片验证模型实用性,其中小轿车、出租车、消防车、重型卡车各50 张,吉普车、大客车、面包车、小卡车、SUV 各40 张,如表5 所示。可以看出,各类别车辆的检测率均在90%及以上,表明该方法具有一定实用性。

Table 5 Picture test results表5 图片测试结果

4 结语

本文提出了一种基于Faster R-CNN 的车辆识别与分类算法,该算法针对特征相似车辆检测,通过引入空洞卷积提高感受野,引入ASPP 结构以增强对多尺度信息的提取效果,引入Reasoning-RCNN 赋予算法推理能力,并对网络进行整体优化。该方法在测试集上mAP 可达93.86%,可见其检测性能良好并具有一定实用性。但同时,作为一款two-stage 的算法,该算法在运行速度上尚有一定提升空间。

猜你喜欢
空洞尺度卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
财产的五大尺度和五重应对
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
空洞的眼神
宇宙的尺度
用事实说话胜过空洞的说教——以教育类报道为例
9
一种基于卷积神经网络的性别识别方法
臭氧层空洞也是帮凶