基于实时交通状况和自适应像素分割的运动车辆检测

2021-10-15 05:04赵玉舟张小瑞
液晶与显示 2021年10期
关键词:交通状况信任背景

孙 敏, 李 免, 赵玉舟, 孙 伟,2*, 张小瑞

(1. 南京信息工程大学 自动化学院, 江苏 南京 210044;2. 江苏省大气环境与装备技术协同创新中心, 江苏 南京 210044;3. 南京信息工程大学 无锡研究院, 江苏 无锡 214100)

1 引 言

在智能交通系统中,车辆检测是车辆跟踪、车辆识别的重要前提,良好的车辆检测会使后续的跟踪、识别更加准确、可靠,且对缓解日益严重的交通拥堵和方便大众出行具有重要的经济和社会意义。

目前常用的基于计算机视觉的车辆检测方法大致分为两类:(1)基于视频序列的车辆检测方法;(2)基于特征学习的车辆检测方法。

基于视频序列的车辆检测方法包括光流法[1]、帧间差分法[2]、背景减除法[3]、Blob分析[4]等。光流法利用像素点矢量特性,根据运动速度建立光流场来分析运动目标,该方法计算复杂,对设备运算能力要求高,难以实现快速检测。帧间差分法是指在相邻帧图像之间做差分运算,将超过设定阈值的像素点作为运动目标,该方法速度快,但容易出现“空洞”现象,准确性较差。背景减除法需要建立合理的背景模型,但只适用于摄像头固定且初始场景相对稳定的场景,当目标在场景中缓慢移动时,容易出现“鬼影”,不能保证算法的准确性。

基于特征学习的车辆检测方法可分为基于人工特征的方法和基于自动特征的方法。在基于人工特征检测方面,陈华清[5]等人提出基于Hog特征的检测模型,利用Hog特征的全局不变性对车辆进行全局特征提取。在基于自动特征检测方面,刘志成等人提出基于深度学习的多层卷积网络对车辆进行检测,如DCNN[6]、Yolo[7]。邓淇天等人提出基于多特征融合的车辆检测算法[8]。基于人工特征的方法对光照、拍摄视角以及汽车尺度变化比较敏感,易导致检测率和可靠性下降。基于自动特征的方法尽管能有效克服光照、车辆尺度变化的影响,但训练网络需要大量的数据样本,且模型训练时间长、硬件配置条件高。

传统基于像素的自适应分割器方法(Pixel-Based Adaptive Segmenter,PBAS)[9]使用多帧连续图像来初始化背景模型,在一定程度上能缓解基于样本点的非参数背景模型的“鬼影”现象,具有类似人工特征检测模型的实时性和准确率,而且不像自动特征模型那样需要大量的训练样本和高的硬件配置。但面对车辆在场景中出现缓慢移动或短暂滞留情况时,传统PBAS方法在进行背景模型初始化时仍可能带入“鬼影”。并且传统PBAS算法需要实时计算更新背景模型参数,而在实际交通场景中背景模型是否需要更新跟车辆所处的交通状态直接相关,如果交通状态没有明显发生改变,就不需要实时更新背景模型参数;如果不加区分,直接实时地计算和更新背景模型参数反而会导致计算量的急剧增加。因此,有必要对传统PBAS算法进行改进。

本文提出一种基于实时交通状况和自适应像素分割的车辆检测算法,其创新之处如下:(1)所提算法能根据车流量的多少对当前交通状况进行评估,根据评估结果自适应地决定是否需要对车辆检测的背景模型进行更新以及如何进行更新,从而显著提高车辆检测的准确率和实时性;(2)采用多帧不连续的间隔图像来构建理想的初始模型,在提高算法实时性的同时能降低因车辆缓慢移动或短暂滞留产生“鬼影”的概率;(3)提出基于时-空变化度的背景区域变化评价方法,联合时域变化度、空域结构变化度和空域颜色变化度,对背景区域是否发生变化进行评价,为背景模型是否需要更新提供可靠的决策依据;(4)基于时-空变化度制订自适应的学习率更新策略,通过设置信任区间,并根据当前交通状况和像素点是否处于信任区间内来判断当前的背景模型是否需要更新,从而大幅减小模型的计算量。

2 基于实时交通状况和自适应像素分割的车辆检测算法

传统PBAS方法在进行背景模型初始化时会带入“鬼影”[10],并且由于PBAS算法需要更新前景-背景的判断阈值和学习率等参数导致每帧图像的处理速度降低,模型计算量随时间急剧增加,一定程度上会影响算法的实时性[11]。

为解决传统PBAS方法的不足,本文从背景模型初始化、交通状况评估与信任区间更新、前景检测和背景更新4个方面对传统PBAS方法进行改进。

2.1 背景模型初始化

针对车辆在交通场景中出现缓慢移动或短暂滞留的情况,使用多帧不连续图像初始化背景模型,在降低“鬼影”产生的同时降低运算量。

假定像素(x,y)的背景模型为B′(x,y),则背景模型初始化时,采用固定时间间隔的多帧背景图像为:

(1)

其中,K为固定的时间间隔,I1是第一帧图像的像素值,I1+(N-1)×K为第1+(N-1)×K帧图像的像素值。将第一帧图像的像素值初始化为背景模型的第一个样本,将第1+(N-1)×K帧图片的像素值初始化为背景模型的第N个样本。后续实验表明,当K=10,N=20时,模型能够取得较好的效果,既能防止车辆缓慢行驶或短暂滞留产生的“鬼影”现象,又能保证算法的实时性。

2.2 交通状况评估与信任区间更新

在城市交通环境中,交通状况的变化对PABS背景模型的更新影响较大[12]。一般而言,当交通状况发生变化时,背景模型及参数需要及时更新以适应变化的交通场景;当交通状况保持不变时,背景模型及参数则不需要更新以保证算法的实时性[12]。为了使模型能够适应实际的交通状况,本文提出一种改进的交通状态评估和信任区间更新方法。

首先,为任意像素点(x,y)设定信任时间段c(x,y),并称该时间段为这个像素点的信任区间。采用与文献[13]类似的交通状态评估方法,首先定义交通拥堵度P(x,y)=d(x,y)/f(x,y),其中,d(x,y)表示信任区间内从第一帧到当前帧检测结束时像素点被检测为前景的次数,f(x,y)表示当前帧在信任区间的帧序数。然后根据P(x,y)将当前交通状况简化为“通畅”、“轻微堵塞”和“堵塞”3个状态,如式(2)所示:

(2)

定义h(x,y)为信任区间内像素点前景-背景之间转变的次数。h(x,y)数值越小,表示该背景模型越稳定;h(x,y)数值越大,表示背景模型越不稳定,需要更新背景模型以获得稳定的背景模型。因此,在每个信任区间结束时,可以基于h(x,y)和f(x,y)判定每一像素点位置背景模型的稳定性,进而更新c(x,y)的值。具体更新步骤如下:

(1)如果h(x,y)/f(x,y)<τd,意味着此时背景模型稳定,当前帧的背景模型应当被保留,信任区间按式(3)进行更新:

(3)

需要注意的是,τd为预先设定的阈值,如果τd的值过大,算法则不能及时感应到交通状态的变化;如果其值设定的过小,算法对交通状态的变化会过于敏感,抗干扰性就会降低。通过大量的现场实验,本文设置τd=1/3,能够较好地平衡算法的敏感性和抗干扰性。

(2)如果h(x,y)/f(x,y)≥τd,意味着背景模型可能不稳定,则应更新当前背景模型以适应动态场景,此时信任区间按式(4)进行更新:

(4)

在实际的更新过程中,令c(x,y)∈[minc(x,y),maxc(x,y)]=[25,30],设c(x,y)的初始值为25,在信任区间更新后,h(x,y)、d(x,y)、f(x,y)的值都重置为0。

2.3 前景检测

(5)

为了提高判定背景区域是否发生变化的准确性,本文提出了一种基于时-空变化度的背景区域变化评价方法,其中,空域变化度由区域结构变化度和颜色变化度两部分组成。

(6)

基于时域变化度、空域结构变化度和空域颜色变化度,提出的时-空变化度计算公式如式(7)所示:

Vt,s(x,y)=Vt(x,y)+βVs,s(x,y)+γVs,c(x,y),

(7)

利用时-空变化度,按公式(8)更新判定阈值:

(8)

Rinc/dec表示阈值增加/减少参数,Rscale表示全局参数,Rinc/dec=0.05,Rinc/dec决定了R′(x,y)的调整幅度。Rscale=5,本文R′(x,y)的最小值Rlower取值为18,R(x,y)的初始值也设为18。

此外,为了解决背景模型在更新过程中前景点易过快融入背景的问题,所提算法在学习率T(x,y)中加入了自适应控制策略,如式(9)所示:

(9)

其中,Tinc和Tdec为固定的增减参数,同时给T(xi)设定上下限:Tlower

2.4 背景更新

对当前图像像素进行前景和背景分类后,还需根据实际交通背景的变化,选择性地更新背景模型[14],具体策略如下:

(1)当f(x,y)

(2)当f(x,y)=c(x,y),即当前帧的像素点在信任区间的末尾。如果h(x,y)/f(x,y)<τd、Ft(x,y)=0且当前交通状况S(x,y)为畅通时,则需要背景更新。当信任区间结束后,如果h(x,y)/f(x,y)<τd且当前交通状况S(x,y)为畅通时,则需要利用当前的交通状况更新背景;如果h(x,y)/f(x,y)≥τd,此时不管当前像素值I(x,y)检测结果为背景或前景,仅在交通状态S(x,y)为畅通时,才进行背景更新。

综上所述,基于实时交通状况和自适应像素分割算法的车辆检测流程如图1所示。

图1 基于实时交通状况和自适应像素分割算法的车辆检测示意图Fig.1 Vehicle detection algorithm based on real-time traffic condition and adaptive pixel segmentation

3 实 验

本文实验基于Windows 7系统,所使用CPU为IntelCore i5-6500,主频3.20 GHZ,内存8 G,显卡型号为GTX1050,显存2 G,软件环境为Matlab R2016a,opencv 2.4.9。为了验证本文算法的有效性,本文从OTB网站[15]下载了多个不同环境下的交通车辆视频序列作为测试集进行测试。

在正常光照情况下,各车辆检测算法检测结果如图2所示。

从图2(b)和2(c)中可以看出,光流法和帧间差分法存在明显的“空洞”现象,车前玻璃到车顶区域较为明显,严重影响车辆的完整性,但其算法简单,实时性好;由图2(d)可以看出,运用vibe模型进行车辆检测减少了“空洞”现象,但同一车辆不同部分存在边界不连续的现象,且vibe模型计算量大,不能满足实时性的要求;图2(e)是基于实时交通状况和自适应像素分割算法的车辆检测结果,从中可以看出,该算法保证了运动车辆的完整性,检测效果最佳。对比这4种算法可以得到,基于实时交通状况和自适应像素分割的运动目标检测算法能够保证运动目标的完整性,且有效提高了运动车辆检测的准确性。

图2 不同算法检测运动车辆对比结果Fig.2 Results of different algorithms for detecting moving vehicles

分别选取阴雨天气、多车检测、光照变化等复杂场景进行对比实验并进行分析,检测结果如图3所示。

在阴雨天气下,光照不足、空气中的流动雨滴等因素给运动目标的检测造成干扰,光流法所检测出的车辆轮廓不连续,帧差法出现了明显的“空洞”现象,vibe模型将周边的路标误检为前景,本文提出的算法较好地检测出了车辆的完整轮廓。多车检测中,光流法、帧差法、vibe模型检测结果或多或少存在着空洞现象。由于周围建筑物遮挡,小车受到的光照由强变弱,光流法、帧差法、vibe模型均不能完整地检测出运动车辆,而本文提出的算法能够在上述两个场景中清晰地检测出运动车辆,且噪声也较少。

图3 白天复杂场景下4种算法检测结果Fig.3 Detection results of four algorithms in complex scenes

由表1可知,本文算法在不同场景中检测的性能指标Recall、Precision和F-measure分别为0.929,0.864,0.888,均高于其他检测算法。此外,由表2可知,本文算法的处理时间为88.37 ms,比传统PBAS算法的运算速度快近10 ms,能够更好地应对城市内快速变化的交通环境。综合表1和表2,在相同条件下,对相同场景的运动目标进行检测时,相较于传统PBAS算法,本文所提算法所用时间较短,同其他常用算法相比,本文所提算法的Recall、Precision和F-measure指标均为最高。

表1 5种检测算法在3个场景下检测性能指标对比Tab.1 Comparison of five detection algorithms in three scenarios

表2 不同检测算法的平均处理时间Tab.2 Average processing time of different detection algorithms (ms)

为了验证本文算法在夜晚弱光和交通状态变化情况下的性能,采集某一丁字路口的交通视频进行实验。基于本文算法,某一帧视频的检测结果如图4所示,其中图4右边为快速主干车道,车道上的车辆运动速度较快;左边为慢速旁支车道,因为要进入主干车道,速度较慢并有短暂滞留。从图4中可以看出,尽管是在光照不足的夜晚,无论是速度较快的车辆还是速度较慢、短暂滞留的车辆,本文所提算法均能将其准确完整地检测出来。进一步对图4所示慢速旁支车道车辆检测的结果进行统计,结果表明本文方法的检测准确率达到0.827,而基于光流法、帧差法、vibe模型和传统PBAS方法的检测准确率分别为0.606,0.432,0.579,0.746。说明在车速较慢或短暂滞留交通状态下,本文方法比其他4种方法的车辆检测效果更好。

图4 夜晚路口交通状况变化时的检测结果Fig.4 Detection results for different vehicle speeds at night

除了与基于人工特征的方法进行对比之外,本文还与基于YOLOv3的自动特征检测方法[16]在PASCAL VOC 数据库上进行了对比,检测结果如表3所示。从表3可以看出,基于YOLOv3的方法在Recall、Precision方面都有较好的表现,但在算法复杂性和可移植性方面,本文方法具有明显的优势。这是因为基于YOLOv3的车辆检测方法采用CNN和深度学习算法进行自动特征提取,其网络结构和训练过程复杂繁琐,不仅需要GPU显卡进行加速,而且需要采集数量庞大的训练样本并对其进行人工标注和长时间训练,因而在实际应用中也不利于向已有的嵌入式设备上进行移植。

表3 与基于YOLOv3检测算法的性能对比Tab.3 Performance comparison between YOLOv3-based method and the proposed method

本文算法针对在城市交通中车辆检测存在的一系列问题做出优化。城市道路上,光照变化、多车重叠等干扰情况较多,因此本文算法在进行前景检测时,结合时域和空域进行综合判定,在Precision和Recall方面都有较好表现。此外,相较于国道、高速公路等道路,城市道路背景较为不稳定,本文算法为背景模型更新设定的信任区间,能够在背景出现小幅度变化时维持稳定,减少了算法的计算量,因此相比传统PBAS算法在平均处理时间上占有一定优势。

4 结 论

本文提出了一种基于实时交通状况和自适应像素分割的运动车辆检测方法。该算法采用多帧间隔图像来获取理想的初始模型,从而降低了“鬼影”产生的可能性。车辆检测性能指标Recall、Precision和F-measure分别为0.929,0.864,0.888,均高于传统检测算法。提出的基于时-空变化度的背景区域变化评价方法,能够及时有效地更新判定阈值和学习率。通过设置信任区间,并根据当前交通状况和像素点是否处于信任区间内判断当前的背景模型是否适合更新,降低了计算的复杂度。在测试中,本文所提算法处理时间为88.37 ms,比传统PBAS算法的运算速度快近10 ms。实验结果表明,本文提出的算法能够快速、准确地检测出运动目标,而且在复杂城市道路场景下仍具有较强的鲁棒性。

猜你喜欢
交通状况信任背景
“新四化”背景下汽车NVH的发展趋势
《论持久战》的写作背景
基于人工智能的交通状况监测浅析
新型路面指示标
嘤嘤嘤,人与人的信任在哪里……
晚清外语翻译人才培养的背景
管庄路交通状况调查研究
信任
山区高速公路长大隧道交通状况及行车安全保障