基于Faster R-CNN的高速公路拥堵场景车辆目标检测研究

2022-08-20 09:20谭舒月
现代计算机 2022年12期
关键词:密集损失预测

谭舒月

(西南交通大学计算机与人工智能学院,成都 611756)

0 引言

高速公路作为我国出行和交通运输的重要通道,近几年来发展迅速。但由于高速公路存在路况复杂、车辆通行流量大等特点,交通事故频频发生。大量研究表明,拥堵混行是导致交通事故发生的重要原因之一,然而拥堵混行与车辆的密集分布有直接联系,因此研究高速公路拥堵场景的密集车辆检测,对拥堵路况和行为异常进行监控和预警,不仅能降低交通事故发生的概率,保障人们的出行安全,同时也可对形成运行高效、内畅外达的高速公路基本路网产生促进作用。

伴随着人工智能技术水平的不断提高,深度学习相关技术逐渐应用于高速公路智能化日常监测。然而,密集分布的车辆目标常常由于摄像头拍摄视角、光线等因素的影响,而出现目标重叠或遮挡严重、目标与背景融合度高等问题,导致提取车辆目标的特征存在困难,从而出现目标误检、漏检等情况,因此如何利用深度学习相关的目标检测技术实现对拥堵场景车辆目标的准确检测成为极具挑战性的任务。

现有的通用目标检测方法大多并未考虑到密集车辆的分布特性,因此普遍对遮挡严重等车辆目标检测效果不佳。针对该问题,本文首先对已有目标检测算法和密集目标检测方法进行简要介绍,随后结合密集车辆目标的分布特性,提出多变化处理模块和排斥力损失模块,最后对实验相关结果进行对比分析与总结,结果表明本文方法对高速公路拥堵场景车辆目标的检测效果得到了提升。

1 相关研究

目标检测,即对于输入的图像或视频提取感兴趣目标,并识别其所属的类别,定位其所处位置窗口。相较于传统目标检测方法,基于深度学习的目标检测方法能够学习到更为丰富的层级特征,因此能获得更多的特征表达能力。目前主流的深度学习目标检测算法主要分为两类,一类是两阶段目标检测算法,该类算法首先对输入图像生成候选框,并基于候选框进行精细修正,最终得到目标检测框结果和分类结果,其优势在于识别和定位的准确性,典型算法包括R-CNN(Region-based Convolutional Neural Network)、Fast R-CNN(Fast Region-based Convolutional Neural Network)、Faster R-CNN(Faster Region-based Convolutional Neural Network)等;另一类是单阶段目标检测算法,该类算法直接对图像进行计算得到目标检测框与分类结果,其优势在于推理速度较快,典型算法 包 括SSD(Single Shot MultiBox Detector)、YOLO(You Only Look Once)等。

目前对于密集场景的目标检测仍处于发展阶段,大多密集目标检测被看作通用目标检测的特例,由于通用目标检测算法忽略了密集目标所具备的目标重叠、严重遮挡、光照变化等分布特点,仅适用于普通稀疏分布的目标场景,因此对密集目标检测精度不高,针对密集分布的目标检测任务还存在许多挑战。Lin等经过对图像前景背景类别出现极端不平衡现象的分析,在标准交叉熵损失基础上提出了焦点损失解决类别不平衡问题,同时实验表明对密集目标的检测效果也得到了一定的提升。Chu等提出对于每个目标候选框,采用预测一组可能出现严重重叠情况的实例集合代替传统预测单个实例,并引入EMD损失和Set NMS后处理方法,改善了高度重叠的密集目标的检测效果。本文主要结合密集目标自身分布属性和数据特点,对通用目标检测方法的不足之处进行改进。

2 算法原理

本文方法基于Faster R-CNN目标检测网络,使用ResNet50作为骨干网络提取图片特征。在训练阶段,每个原始图像样本通过多变化处理模块后得到补充数据,以增强检测器对密集车辆场景检测的泛化性,随后将图像依次输入特征提取网络和检测网络,同时在检测网络原有损失的基础上使用排斥力损失,防止预测边界框向相邻重叠目标的偏移,提高对密集场景遮挡目标的检测性能,最终得到拥堵场景下密集车辆目标的分类与定位结果。

2.1 目标检测网络

Faster R-CNN作为经典的两阶段目标检测算法,在识别和定位方面有较高的准确率,同时Faster R-CNN将特征提取、候选框提取、目标分类与边界框回归整合到同一个网络中,实现了完全端到端的网络结构。Faster R-CNN网络结构分为两部分:RPN(Region Proposal Network)候选区域生成网络和Fast R-CNN检测器,两部分共享特征提取网络,提取得到的卷积特征图分别输入到RPN网络和Fast R-CNN检测器中,极大地减少了参数量的计算,实现参数共享,如图1所示。

图1 Faster R-CNN网络结构图

RPN候选区域生成网络,替代了R-CNN和Fast R-CNN的Selective Search选择性搜索方法,用来快速生成候选区域和区域得分。RPN网络结构如图2所示,使用滑动窗口对特征图进行扫描后得到低维特征向量,同时计算出滑动窗口中心点对应原始图像上的中心点,以此中心点为锚生成不同尺度和比例的个锚框。接着将低维特征向量分别输入至分类层和回归层,分类层计算得到锚框对应候选区域为背景和前景的概率,回归层则对候选区域进行边界框位置预测。RPN网络大量节省了候选框计算时间,运行速度得以加快。

图2 RPN网络结构图

Fast R-CNN检测器将RPN网络产生的候选区域投影到特征图上获得对应特征矩阵,并通过ROI池化层将特征矩阵处理后分别送入分类回归两并行支路,从而计算得到分类与边界框回归预测结果。

2.2 多变化处理模块

由于输入图像数据常受输入尺寸、角度位置等限制,导致训练得到的模型对相似但不相同场景的泛化能力较弱,针对该问题本文提出多变化处理模块,在模型训练阶段实现对输入图像的预处理,以提高模型对于新场景密集车辆的检测效果。该模块共包含以下六种对图像的变化处理:

(1)图像尺度缩放:尽可能减小目标车辆的尺度差异。

(2)随机翻转、平移图像区域:增加样本视角和位置分布多样性。

(3)调整图像亮度、调整图像对比度:降低光照对检测效果的影响。

(4)添加图像噪声:进一步提高模型的鲁棒性。

对于每个输入图像,经过多变化处理模块后得到补充数据,紧接着随机对变化得到的新图像进行与当前处理方式不同的叠加变化。如图3所示。

图3 多变化处理模块示意图

2.3 排斥力损失

分析拥堵高速公路场景分布特点,车辆的相互遮挡会对预测框定位造成较大干扰,预测框偏移导致检测不准确,因此本文基于Faster R-CNN原有损失函数增添排斥力损失,在约束预测框向目标标注框趋近的同时对周围非目标预测框和对应标注框进行限制和排斥,从而增强模型整体对于遮挡类型密集车辆情景的适应力,提高检测器在密集场景的鲁棒性。损失函数由一项吸引项和两项排斥项组成,其定义如公式(1)所示:

其中L为吸引项,表示Faster R-CNN原有损失函数,即包括分类损失值和位置回归损失值的多任务损失,LL为排斥项,L表示目标预测框向周围标注框偏移的损失值,L表示目标预测框向周围其他预测框偏移的损失值,参数、用于对两项排斥项进行损失值的平衡,本文设置参数、两值均为0.5。

排斥项损失L目的是防止预测框向相邻非目标标注框偏移,其计算值与距离呈负相关,预测框越向非目标标注框偏移,则会通过该损失对边界框回归器进行约束和惩罚,具体定义如公式(2)所示:

其中为候选框,为由{}构成的正样本集合,B为预测边界框,由候选框回归得到,G为排斥目标标注框,定义为候选框除指定的真实目标框外所形成最大交并比值IoU(Intersection over Union)的标注框,定义如公式(3)所示:

其中G为候选框最大的所对应的标注目标框。受定义的启发,以IoG(Intersection of Ground-truth)定义惩罚BG之间的重叠区域,其定义如公式(4)所示:

排斥项损失L中为平滑ln函数,其定义如公式(5)所示:

其中阈值的区间范围为(0,1),用以调整对异常值的敏感程度。

非极大值抑制NMS(Non-maximum suppression)处理作为目标检测后处理的重要环节,其能去除相近冗余的预测框,但由于NMS阈值设定较为敏感,若阈值设定过大,则会出现误检的情况;若设定太小,会造成漏检。而通过排斥项损失L可在一定程度上降低这种敏感性,同时约束目标不相同的两个预测框之间的重叠面积,减少不同目标的回归预测框合二为一的情况,其具体定义如公式(6)所示:

其中1是一个恒等函数,参数是一个数值很小的常数,避免出现分母为零的情况。

3 实验与结果分析

3.1 数据集

目前对于高速公路密集场景的公开数据资源较少,本文利用高速公路视频采集系统收集整理了一个高速公路拥堵场景数据集。该数据集涉及到的场景主要包括河南、广东等省份的高速公路拥堵道路场景,同时涉及到四种天气环境,包括晴天、雨天、雾天和雪天。通过对监控视频抽帧后,对稀疏车辆场景图片进行数据清洗,最终共筛选得到1300张图片,其中包括训练集1000张,训练集300张。

3.2 评价指标

通用目标检测评价指标主要包括平均精度(AP,average precision)、平均精度均值(mAP,mena average precision)等,其由精确率(Precision)、召回率(Recall)等计算得到。表1所示为混淆矩阵,共定义TN(True Negative)、FP(False Positive)、FN(False Negative)、TP(True Positive)四项指标:

表1 混淆矩阵

其中表示真阴率,即正确预测负样本为负类的数量;表示假阳率,即将负样本错误预测为正类的数量;表示假阴率,即将正样本错误预测为负类的数量;表示真阳率,即正确预测正样本为正类的数量,在目标检测任务中,常通过设定预测框与标注框之间的阈值来衡量是否属于真阳性情况,若值超过设定阈值,则满足真阳性情况。

通过以上四项指标,就可计算得到精确率与召回率的值。精确率表示在预测为正类的样本中预测正确的比例,其计算过程如公式(7)所示:

召回率表示在真实正样本中预测为正类的样本比例,其计算过程如公式(8)所示:

通常目标检测会对精确率和召回率进行综合评估,依据其具体值画出对应P-R曲线,曲线下方所围成的面积即为平均精度值。平均精度均值则常用于多分类目标检测,代表每类目标的平均精度。本文由于车辆未进行细分类,只包含车辆目标一类,故值与值等价,本文使用值作为密集车辆目标检测算法的评价指标。

3.3 实验结果

本文实验均基于TensorFlow深度学习框架实现对网络模型的搭建和训练,实验平台包括两个NVIDIA TITAN X的GPU,实验系统为Linux操作系统。为证明本文算法的可行性,将本文算法的实验结果与主流目标检测算法结果进行对比,参与对比的检测方法包括SSD、YOLO V3和GANet(Guided Attention Network),结果如表2所示。可以看出,本文提出的方法与现有方法相比,在该数据集上取得了最佳成绩,平均精度达到85.1%。图4为本文方法的主观效果图,本文方法对严重遮挡、部分遮挡的密集车辆检测均有提升效果,一定程度上解决了视觉遮挡所引起的预测框偏移问题,减少了对相邻车辆目标漏检和误检的情况。

图4 本文方法主观效果图

表2 本文方法与其他主流方法的结果对比

3.4 消融实验

为验证本文算法在高速公路拥堵场景下对密集车辆目标检测的有效性,本文设计了对于所提出的多变化处理模块和排斥力损失的消融对比实验。实验结果如表3所示,可以看出,本文所提出的两个模块均对该模型检测性能有一定的提升作用。在Baseline(Faster R-CNN)的网络基础上添加排斥力损失后,检测精度提升1.6%,侧面说明了排斥力损失的有效性,对相邻车辆目标的重叠区域进行准确分析,提高了遮挡目标的检测准确度。在上述实验的基础上添加多变化处理模块,算法的整体检测性能进一步提高,充分说明在网络训练过程中加入多变化处理模块对输入图像进行多种形式的变化扩展,是行之有效的方式。

表3 消融实验结果

4 结语

本文以高速公路拥堵场景为背景,以密集分布车辆为研究目标,从目标自身特征入手,提出了一种新的密集车辆目标检测算法,提高了对密集车辆检测的准确率。基于Faster RCNN网络结构,精准把握通用目标检测方法的不足,结合多变化处理模块与排斥力损失解决目标重叠导致的检测框偏移等问题,在所构建的高速公路拥堵场景数据集上取得了超出通用目标检测算法的效果。该研究可应用于拥堵交通道路场景中,实时监测异常交通情况,尽量降低拥堵导致的高速公路危险事故发生的概率,对实现高速公路安全的智能化监测发挥重要的作用。

猜你喜欢
密集损失预测
洪涝造成孟加拉损失25.4万吨大米
选修2—2期中考试预测卷(B卷)
选修2—2期中考试预测卷(A卷)
两败俱伤
Seeing Red
做个Patty万人迷
西方紧盯中俄“密集”军演
损失
《福彩3D中奖公式》:提前一月预测号码的惊人技巧!
那些损失上百万的演员