APP下载

基于DeR-FCN模型的车辆检测算法

2020-11-02李厚博孙爽滋

计算机工程与设计 2020年10期
关键词:卷积精度特征

王 玲,李厚博,王 鹏,孙爽滋

(长春理工大学 计算机科学技术学院,吉林 长春 130022)

0 引 言

传统的车辆检测方法通常将特征提取算法与分类器结合进行检测[1-4],这类方法严重依赖人工特征提取,针对复杂多变的环境模型泛化能力较差。随着深度学习的发展,人们发现卷积神经网络可以自主地提取图像特征,对于复杂场景的适应性更强。Ross Girshick提出目标检测算法R-CNN[5],将CNN应用于目标检测,使得检测精度得到大幅度提升。但通过Selective Search提取的每一个候选框依次进入CNN网络,存在冗余特征提取、冗余存储和计算复杂度大的问题。针对上述问题,Fast R-CNN[6]使用卷积特征共享、多任务损失函数的方式,显著提高了检测的速度与精度;Faster R-CNN[7]用RPN网络取代Selective Search,并整合区域建议与卷积神经网络,不仅速度得到大大提高而且还获得了更加精确的结果,真正实现了端到端的目标检测框架;R-FCN[8]算法引入全卷积操作,将位置敏感得分图加入FCN,充分利用分类任务的平移不变性及检测任务的平移可变性,解决网络中全连接层计算复杂度较高的问题,大大提升了检测的效率。上述检测框架主要由区域建议和检测网络两部分组成,为典型的基于区域建议的目标检测算法。还有研究者提出将分类和检测任务统一的基于回归的目标检测算法如YOLO[9]、SSD[10,11]、YOLOv2[12]等。基于回归的目标检测算法与基于区域建议的目标检测算法相比,其在通用目标检测数据集上的检测速度得到了大幅度提高,但也造成了检测精度的下降。

综上所述,R-FCN的全卷积操作不仅适用于不同尺寸图像的输入,显著减少了算法计算复杂度,而且在检测精度和效率上较为平衡,但仍无法满足实际生活中对车辆目标检测高准确率的要求。本文对R-FCN的车辆检测算法进行改进,通过特征级联的方式有效结合底层特征的位置及边缘信息和高层特征的语义信息;引入维度分解区域提议(DeRPN)[13]网络代替RPN网络,使用灵活的锚链机制获得更加精准的候选框;预测阶段使用软化非极大值抑制算法(soft-NMS)解决重叠目标漏检问题。这样,提出的DeR-FCN可以有效优化实际场景中车辆的漏检及误检,显著提高模型检测精度。

1 相关研究

1.1 R-FCN检测框架

R-FCN模型首先通过RPN网络在特征图上提取候选区域,然后使用RoI子网络对候选区域进行分类识别,从而实现目标检测。R-FCN总体架构如图1所示。

图1 R-FCN模型架构

1.1.1 RPN网络

RPN网络的主要功能是提取候选区域。RPN使用默认大小为128×128、256×256、512×512,长宽比为1∶1、1∶2、2∶1的9种固定尺寸的锚框,在特征图上通过滑动窗口产生搜索框。对每个搜索框进行分类与回归操作,然后通过非极大值抑制法将高度重叠的区域剔除掉,解决候选区域过多带来的冗余问题,最后将剩余的候选区域用于RoI子网络训练。

1.1.2 RoI子网络

将每个RoI分割为k2个部分,每个部分映射到一张Score Map上,最终得到k2个Score Map,分类的种类有C个类,背景为1个类,所以每一个Map通道数为C+1,最终得到通道数为k2(C+1)的输出层。然后通过RoI pool即位置敏感池化操作,针对上面的其中一个Score Map执行池化操作,重新排列成大小为k2的得分图。在计算k2个得分图时,假设每个RoI区域大小为w×h,则每个小区域(bin)大小为w/k×h/k,每个bin得分计算如式(1)所示

(1)

公式各参数详情请参见文献[8]。

然后对k2个得分图进行投票,生成C+1维向量,利用softmax函数计算每一类的置信度。

1.2 深度残差网络

2015年何凯明等在图像识别大赛上提出一种卷积神经网络,命名为深度残差网络(ResNet)[14],该网络通过采用残差学习的思想对多层的残差映射进行拟合来解决传统网络的退化问题,残差单元如图2所示。

图2 残差单元

x为当前残差块的入口,F(x)表示残差单元第二层的输出,H(x)为当前残差块的期望映射,通过使用激活函数来缩短学习周期。

从图2中可以看出,残差单元通过“快捷通道”的方式,直接将输入x传递到输出目标值H(x),为实现H(x)与x之间的恒等映射,即H(x)=x,将学习目标改变为目标值H(x)和x的差值,即残差F(x)=H(x)-x,因此训练目标就是要将F(x)结果逼近于0,实现随着网络加深,准确率不下降。

2 改进的R-FCN模型的车辆检测

本文提出的DeR-FCN车辆检测方法实现架构如图3所示。

图3 DeR-FCN模型架构

主要由3部分构成,第一部分是由5个卷积模块conv1~conv5组成的特征提取部分,用于提取图片的特征;第二部分是以DeRPN区域建议网络为主的区域建议部分,用于生成区域候选框;第三部分是由RoI位置敏感得分图及softmax分类器组成的RoI子网络部分,用于车辆目标分类和定位。

2.1 深度特征融合

图像的信息在网络不断的卷积操作中被逐步提取,卷积得到的特征图尺寸也逐渐变小,这意味着网络对原图像的感受野逐渐变大,因此网络的底层特征提取器更好地抓住了图像的位置和细节信息,但由于经过的卷积较少,提取到的特征语义信息较低,噪声较多;网络的高层特征提取器更好地抓住了图像的语义信息,但提取到的特征分辨率很低,对细节的感知能力较差。为解决特征图中包含信息不充分的问题,DeR-FCN模型以ResNet 101为基础网络,去掉网络中原有的全局平均池化层和最后的全连接层,只使用卷积层计算特征图,并使用特征融合模块将包含丰富位置及细节信息的底层特征和包含语义信息的高层特征进行拼接得到最终的特征图。DeR-FCN模型有一个特征融合模块,即Conv3-b3、Conv4-b22与Conv5-c的特征融合模块,融合模块结构如图4所示。

图4 特征融合模块

为了将Conv3-b3、Conv4-b22与Conv5-c的特征图进行融合,本文选用不同尺度特征直接级联预测的方式(Concat)进行特征融合。假设Conv3-b3输出尺度为28×28×512,则Conv4-b22与Conv5-c的输出尺度分别为14×14×1024和14×14×2048,所以进行特征级联操作之前需要对Conv3-b3的特征图进行下采样,模块Conv3-b3首先通过卷积核大小为2×2的平均下采样层,输出通过激活函数层(ReLU)得到14×14× 512的特征图。Conv3-b3经过下采样层的输出与Conv4-b22及Conv5-c的输出依据层次前后进行特征级联操作,合并之后传入ReLU层得到14×14×3584的特征图。然后添加一个卷积核为1×1通道数为1024的卷积层,降低输入特征图的维度,最后在一个ReLU层之后实现融合功能。

2.2 维度分解的候选区域提取方法

区域建议方法作为两阶段检测算法的重要组成部分,对最终检测结果有重要影响。近年来基于区域的检测方法绝大多数都使用RPN来生成区域提议。但RPN中采用的锚箱非常敏感,限制了对变体对象的适应性。在一些特殊的目标检测模型中直接使用RPN作为区域提议方法,不能产生应有的效果,且性能会显著缩减,所以许多用于特殊场景检测的方法强调手动锚箱的设计[15,16]。但是,手动设置锚箱很麻烦,很难保证最佳性能。尽管Redmon和Farhadi提出了一种基于K均值聚类的算法来预先计算锚箱,但改进仍然有限。因此,本文采用维数分解的思想来解决锚箱敏感的问题,通过维度分解机制,使用灵活的锚边,生成具有高召回率和更精准的区域提案,从而提高模型的检测精度,图5为DeRPN示意图。

图5 DeRPN

DeRPN网络将Conv4-b22模块输出的特征图作为输入,输出大小不一的矩形区域候选框。DeRPN网络的操作流程如图6所示,主要包含了维度分解和维度重组两个步骤。

图6 DeRPN流程

维度分解引入锚边(anchor strings)机制,让目标的宽高独立地与锚边进行匹配,以寻求最佳的回归参考,如图6(a)所示,粗线代表匹配良好的锚边。匹配最佳锚边实现如式(2)所示

(2)

其中,Mj表示第j个目标的匹配锚边的索引集,ej是目标的宽度或高度,ai是第i个锚边。

接下来对锚边进行分类和回归操作,如图6(b)所示,实线代表分类回归后高概率的锚边,锚边回归预测如式(3)所示

(3)

然后将所预测的线段经过维度重组恢复成二维的候选区域框,如图6(c)所示。DeRPN网络采用了像素组合的维度重组算法,可以精确地召回检测目标,实现如式(4)所示

(4)

最后过滤掉重叠的以及得分较低的边界框,从而得到高概率目标区域候选框,如图6(d)所示。

2.3 软化非极大值抑制

R-FCN模型在预测阶段会产生大量冗余候选框,加入非极大值抑制算法(NMS)能够准确剔除重叠的候选框,保留目标最佳坐标,提高模型的平均精度。NMS算法在目标与目标相距较远的情况下有着较好的检测定位效果,但当不同的目标在重叠区域出现时,则导致对目标的检测失败,从而影响模型的检出率。因此DeR-FCN引入Soft-NMS[17]代替传统NMS算法。Soft-NMS算法如式(5)所示

(5)

Soft-NMS算法各参数详情请参见文献[17]。

Soft-NMS算法对IoU大于阈值的窗口,进行得分加权处理,并非直接置为0,从而有效避免漏检重叠区域目标,并且Soft-NMS算法对剔除冗余检测结果有较好的效果,有效提升了模型的检测精度。

在模型训练过程中,DeR-FCN图像输入尺寸设置为600、850、1100,每张图像被随机分配一种尺寸输入到网络进行训练,从而实现模型的多尺度训练,增强模型对不同尺度目标的特征提取能力及模型的泛化能力。同时为解决模型学习样本不均衡的问题,加入在线难例挖掘算法,挑选出训练过程中损失值最大的k个目标区域作为难例加入网络进行训练,计算损失,并反向传播累计梯度来更新整个网络的参数,从而提高网络对数据集中难样本或与正样本相似的混淆负样本的识别效果。

3 实验与结果分析

3.1 实验平台

实验运行环境见表1。

表1 实验运行环境

3.2 实验数据集

为验证本文改进算法在真实场景中的实用性,选用包含高速公路、城市道路和乡村道路等真实场景图像的KITTI数据集,人为对原数据集进行筛选,保留包含Car,Van,Truck和Tram类别标签的6820张图像作为实验数据,同时根据实验框架需求将其转化为PASCAL VOC2007数据集格式,其中80%划分为训练集,20%划分为测试集。并且为了验证DeR-FCN针对不同物体检测的有效性,本文在开源的数据集PASCAL VOC2012上对DeR-FCN与常用的目标检测算法进行对比评估,该数据集包括20个不同的对象类别,以及17 125张图片。实验前随机将数据的60%划分为训练集,40%划分为测试集。

3.3 模型评价指标

本文使用AP和mAP作为模型的评价指标,AP由精度和召回率两部分组成。

(1)精度P(precision)指被判定为正例中真正的正例样本的比重,精度计算如式(6)所示

(6)

(2)召回率R(recall)指被判定的真正的正例样本占总的正例样本的比重,召回率计算如式(7)所示

(7)

其中,TP为模型预测正确的正样本个数,FP为模型预测错误的负样本个数,FN为模型预测错误的正样本个数。

首先以每一类的精度和召回率为坐标绘制曲线,得到该类的R-P曲线,然后计算每一类R-P曲线与坐标轴之间面积得到该类的AP,最后再对所有类别的AP求平均值,即可求得mAP。

3.4 模型训练参数

实验模型训练参数见表2。

表2 模型训练参数

DeR-FCN模型在KITTI数据集上训练时总共迭代110 000次,经过 80 000 次迭代学习率降为原来的0.1,模型训练的损失收敛情况如图7所示。

从图7中可以看出,模型训练损失曲线随迭代次数的增加呈下降趋势,当模型训练次数达到100 000次之后,损失值总体下降趋势趋于平缓,不再有大幅度下降,至此模型训练结束。

3.5 实验结果与分析

3.5.1 不同模型在KITTI数据集上检测效果对比

利用基于回归的检测算法YOLOv2、SSD以及基于区域建议的检测算法Faster R-CNN、R-FCN、DeR-FCN对KITTI中的测试集图像进行检测,各算法的类别检测结果如图8所示。

图7 损失曲线

图8 不同模型的检测准确率对比

从图8中可以看出,DeR-FCN算法在各类别上的检测精度均高于其它算法,且与原算法相比各类别的检测精度都有很大的提升,这是因为DeR-FCN网络结构融合了低层特征的位置和边缘信息和高层特征的语义信息,使得模型在保持原有检测精度的前提下对小目标检测具有更强的适应性;引入DeRPN网络提高了模型对变体对象的适应性,获得更加贴合目标的候选框;预测阶段使用软化非极大值抑制算法有效避免重叠区域车辆漏检;训练阶段使用在线难例挖掘算法有效提高模型对难识别样本或与正样本相似的混淆负样本的识别效果,从而提高了模型的检出率。

表3是Faster R-CNN、YOLOv2、SSD、R-FCN与本文提出的DeR-FCN算法在KITTI数据集进行测试的实验结果。从表中可以看到,本文提出的DeR-FCN获得了86.06%的mAP和0.184 s/张的检测速度,在精度方面优于所有其它算法,但在检测速度方面逊色于基于回归的检测模型YOLOv2和SSD,与原R-FCN算法相比本文提出的方法检测精度提高了8.96个百分点,由于改进后算法网络结构更加复杂每张图像检测时长增加了0.008 s,但也基本满足实时检测的要求。

表3 不同模型在KITTI数据集上检测结果对比

图9显示了DeR-FCN方法在KITTI数据集上检测的效果。

图9 模型检测结果展示

从图9中可以看出,本文提出的模型对复杂环境中遮挡车辆及小目标车辆检测具有较好的鲁棒性。

3.5.2 不同模型在PASCAL VOC数据集上检测效果对比

DeR-FCN算法与其它算法在PASCAL VOC数据集进行训练与测试的实验结果见表4。从表中可以看到,本文改进后的DeR-FCN对20个不同物体类别的mAP为71.5%,与改进前的R-FCN模型相比提高了2.6个百分点,实验结果表明,改进后的DeR-FCN模型适用于一般物体的目标检测。

表4 不同模型在PASCAL数据集上检测结果对比

4 结束语

针对复杂城市环境下车辆检测遮挡、小目标漏检、误检等精度低下问题,本文提出了DeR-FCN算法,考虑特征提取阶段不同卷积层的特征图具有不同图像信息的特点,加入深度特征融合模块,并使用维度分解区域提议网络生成更加精准的区域候选框,同时在预测阶段引入软化非极大值抑制算法,显著提高模型对遮挡目标的检出率。在公共数据集上的实验结果表明,本文提出的DeR-FCN车辆检测算法在检测精度上具有较为明显的优势,且适用于其它物体的目标检测。未来考虑在保证模型检测精度的基础上,裁剪优化基础网络,提升网络的实时性能,以便更好应用于现实生活中。

猜你喜欢

卷积精度特征
根据方程特征选解法
离散型随机变量的分布列与数字特征
热连轧机组粗轧机精度控制
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
超高精度计时器——原子钟
从滤波器理解卷积
不忠诚的四个特征
分析误差提精度
基于DSPIC33F微处理器的采集精度的提高