王战古,高 松,邵金菊,谭德荣,孙 亮,于 杰
(山东理工大学交通与车辆工程学院,淄博 255000)
汽车安全辅助驾驶技术的研究受到各国的普遍关注,通过分析车载传感器获取的信息掌握车辆、道路和环境等驾驶信息,并在危险状态下实现为驾驶员提供劝告或预警信号,甚至是对车辆实施控制,可减轻驾驶员的操作强度,提高汽车行驶的安全性,避免驾驶员因素所造成的交通事故。其中前方车辆检测在汽车安全辅助驾驶领域中占据重要地位[1]。
得益于传感器成本的降低和其应用技术的逐步成熟,各种类型的传感器(摄像头、超声波雷达、毫米波雷达、激光雷达等)被广泛应用于汽车安全辅助驾驶领域,并取得了一系列的成果。文献[2]~文献[4]中提出了一系列基于机器视觉的前方车辆检测方法,该类方法通过设计不同检测特征的车辆分类器,利用机器学习与形态学算法相结合的方法完成前方车辆的识别。文献[5]~文献[7]中提出了一种基于毫米波雷达与图像融合的车辆检测方法,该方法较好解决了车辆在夜间低曝光环境下的车辆检测与识别问题,同时提高了系统的准确性和稳定性。文献[8]~文献[9]中基于深度卷积神经网络模型,采用正负样本训练车辆识别分类器,完成前方车辆的检测,该方法对前方不同形态的车辆检测表现出较好的鲁棒性。
本文中提出了一种基于DBN(deep belief network)深度置信网络的多传感器融合的前方车辆检测方法,通过摄像头和毫米波雷达的信息融合完成环境感知。以毫米波雷达的检测数据为基础,结合深度置信网络对前方障碍物检测数据进行挖掘、分类,充分发挥了毫米波雷达实时检测效率高,冗余数据量小的优点。最后根据常见车型宽高比插值表获得前方车辆识别的图像验证窗口。实验表明以毫米波雷达数据为基础,采用DBN深度置信网络对前方车辆进行检测分类,大大提高了系统实时处理的效率,同时可以很好地弥补传统基于机器视觉的检测方法在低曝光率、夜间、轻雨雾天等恶劣环境中检测失效的不足。
采用752×480高清工业摄像机和77GHz毫米波雷达对前方道路环境进行感知。毫米波雷达通过可调螺栓固定在试验车辆前保险杠上方中央位置,高清工业摄像机固定于车辆的前风窗玻璃上。在实际安装过程中,为保证毫米波雷达和摄像头的水平角与俯仰角满足安装要求,通常使用激光水平仪对传感器的安装位置进行定位,确保两传感器对称轴线所在的平面与车辆纵向对称面重合,如图1所示。
将车辆坐标系定义为毫米波雷达坐标系正下方,与大地坐标系重合。通过建立合理的雷达坐标系和相机坐标系,利用雷达扫描点和摄像头图像的空间约束关系,即可求解两坐标系的空间转化关系,因此雷达扫描点可以通过摄像头模型投影至图像像素坐标上。假设车体坐标系中物点 P为(xε,yε,zε),对应图像坐标系中像点 Q 为(x,y),其像素级融合方程为
图1 传感器的安装位置
式中:zc为物点P在摄像机坐标系中Z轴方向的坐标;K为摄像机内部参数矩阵;Rc和Tc为摄像机外部参数,分别代表旋转矩阵和平移向量。上述参数可以很方便地通过摄像机标定实验获得,在这里不做赘述[10]。
毫米波雷达通过接受扫描信号,将三维环境的感知信息呈现为极坐标系下的二维信息[6]。假设目标与雷达的径向距离为R,目标中心与雷达中心所成角度为α,雷达坐标系所在的平面与环境坐标系平行,且两者之间的距离为H0,则环境坐标系中的物点 P 的坐标(xε,yε,zε)与毫米波雷达坐标系中物点P的坐标(R,α)的相互转化关系为
联立式(1)与式(2)可得毫米波雷达坐标系与图像像素坐标系的转化关系为
77GHz毫米波雷达可最多同时检测64个目标,能够对各个目标的运动状态进行实时检测。在结构化道路上车辆前方障碍物主要包括前方车辆、道路两边的护栏、树木、标志牌等。车辆运行环境示意图如图2所示。
为充分获得车辆在各种道路环境和天气状况下
图2 车辆运行环境示意图
前方障碍物的检测数据,通过实车道路实验对实际道路中的障碍物进行信息采集。实验表明,毫米波雷达可以对前方障碍物的14项指标(速度、距离、角度、反射率等)进行检测,信息采集界面如图3所示。
图3 毫米波雷达障碍物信息采集窗口
上述的信息采集软件内置有信号滤波器和障碍物运动状态算法,能对虚假目标和不成熟目标进行筛选。同时14项检测指标中有4项参数(中端更新频率、远端更新频率、成熟度、统计频率)是用来描述障碍物的跟踪状态,与障碍物的分类特征没有直接关系。通过剔除虚假目标和不成熟目标,并根据障碍物的分类特征对检测指标进行筛选后获得5 200组车辆前方障碍物数据,然后将5 200组数据进行障碍物分类打标签处理,将车辆目标和非车辆目标进行区分,处理后的部分数据如表1所示。
表1 预处理后的毫米波雷达部分检测数据
表中:运动状态0代表静止,1代表运动;角度正号表示车辆坐标系X轴正方向,负号表示车辆坐标系X轴负方向;障碍物标签信息1为车辆障碍物,0为非车辆障碍物。由雷达检测数据可知,在结构化道路中,车辆目标和非车辆目标在运动状态、空间位置分布和反射率等方面存在不同程度的差异。
在获得带有障碍物分类标签的训练数据后,选取合适的深度网络进行建模。DBN作为经典实用的深度学习方法,可以包含较多的隐藏层,通过构建多层非线性映射的深度网络,能够更好地学习各种复杂数据的结构和分布,实现对输入信号逐层抽象并非监督、贪心地提取特征[11]。
从结构组成上看,DBN深度置信神经网络由受限制玻尔兹曼机(restricted boltzmann machine,RBM)网络和一层前馈反向传播(feedforward backpropagation,BP)神经网络组成。其结构如图4所示[11-12]。
图4 深度置信网络结构
图中:W为神经元间的连接权重;V和H分别为可见单元与隐含单元。
受限玻尔兹曼机是一个特殊的马尔可夫随机场,一个RBM包含一个由随机的隐含单元构成的隐含层(一般是伯努利分布)和一个由随机的可见单元构成的可见层。深度RBM就是将多个受限玻尔兹曼机进行层叠,前一层的输出作为后一层的输入。
RBM可以表示为成双向图,所有可见单元v和隐含单元h之间都存在连接,而隐含单元两两之间和可见单元两两之间不存在连接,也就是层间全连接,层内无连接,如图5所示。对任意一组给定的(v,h),定义E作为一层RBM整体的能量函数。基于该能量函数求出可见层与隐含层之间联合概率分布,进而根据条件概率可以求出每个可见层和隐含层神经元的激活概率。训练时RBM采用对比散度算法求得模型偏置项参数和连接权值,在每一次迭代中都对训练数据进行吉布斯采样,并更新参数。
图5 受限玻尔兹曼机结构图
将一定数量的RBM堆叠组成一个DBN,然后从下而上逐层进行无监督预训练,在DBN的最后一层采用有监督的BP神经网络对整体网络的参数进行调整。通过深度RBM训练获得的网络参数作为BP网络的初始化参数,BP神经网络根据原始数据进行有监督地训练,并将训练输出的分类标签和实际分类标签进行误差比较,如果输出层得不到期望输出,则转入反向传播,根据预测误差调节和更新网络参数,完成对整个深度置信网络的微调。
将5 200组前方障碍物实验数据以向量的形式输入DBN的可见层,其中障碍物的特征检测向量作为网络的输入,对应的分类标签作为网络的输出,对每一层RBM,其能量函数定义为
式中:v为可见单元;h为隐含层单元;θ为给定的模型参数;wij为可见层第i个神经元和隐含层第j个神经元之间的连接权值;bi为可见层的偏置项;aj为隐含层的偏置项;I和J分别为可见单元和隐含单元的数目。基于该能量函数,可见层v向量和隐含层h向量之间的联合概率分布为
式中Z(θ)为归一化项也称为配分函数。
那么在给定隐含层hj概率分布的基础上,可见层每个神经元vi的激活概率通过条件概率可以很方便地求出。
同理在给定可见层vi概率分布的基础上,隐含层各个神经元hj的激活概率为
其中的激活函数 σ(x)= (1+e-x)-1。
RBM的训练过程即为参数θ={W,a,b}的求解过程,利用吉布斯采样器获得样本集,计算对数似然函数log p(v;θ)关于θ的偏导数为
式中:EPdata为训练集中观测数据的期望;EPθ为模型所确定的分布上的期望。在以上梯度的基础上利用对比散度算法多次迭代最终求出参数θ。
以Matlab深度学习工具箱作为数据处理和模型搭建工具,根据上述DBN模型对预处理的毫米波雷达数据进行训练和测试,随机选取5 200组训练数据中90%的数据作为训练样本,10%的数据作为测试样本,训练结果与测试结果如图6和图7所示。
图6 训练与测试结果混合矩阵
图7 测试与训练ROC曲线
图6 中混合矩阵的横坐标代表目标真实类别(即标签类别),纵坐标代表网络预测输出的类别,当预测结果和标签类别一致时表示网络分类正确,如左上方块和中央方块所示;否则表示网络分类错误,如上中方块和左中方块所示,其他以此类推。从图6中可以看出,基于DBN深度置信网络训练结果的准确率为94.5%,测试结果准确率为93.1%。图7显示训练过程和测试过程的ROC曲线表现出良好的收敛性。上述结果表明基于DBN深度置信网络对前方车辆的识别具有较高准确率。
车辆识别窗口的建立是基于先前的研究工作完成的,并在此基础上进行了适当的改进与创新。根据式(1)毫米波雷达与机器视觉像素级的融合模型,可将毫米波雷达检测到的车辆前方障碍物投影到图像窗口,此时车辆前方障碍物包括行驶车辆、树木、护栏和标志杆等。通过DBN深度置信网络,将车辆目标和非车辆目标进行分类后,剔除非车辆障碍物的干扰,可完成对前方车辆的识别与检测,分类结果如图8所示。
图8 车辆前方障碍物检测
从图8可以看出,分类后的前方车辆识别窗口与车辆实际轮廓还有一定的差距,为了得到更为准确的识别结果,需要对窗口的尺寸大小做进一步地调整。
毫米波雷达信号穿透雾、烟、灰尘的能力强,具有全天候(大雨天除外)、全天时的特点,毫米波雷达通过接受声波的反射信号能够对前方障碍物各种参数进行测量,根据雷达信号给出的车辆识别感兴趣区域,结合图像检测处理方法可以提取前方车辆的宽度信息[13-15]。毫米波雷达与机器视觉对各种类型车辆宽度的测量结果如表2所示。
从表2可以看出,毫米波雷达与机器视觉对于车辆宽度测量的平均相对误差约为10%,这些测量误差反映在直观的图像上时,能够满足车辆识别窗口建立的要求。对于一些车辆宽度无法提取的特殊情况,系统会根据常见车辆的平均宽度分配一个预测值(如1.8m)。在获得前方车辆宽度的基础上,根据式(2)雷达坐标系和图像坐标系之间的转化关系可获得车辆识别窗口的宽度。
为获得前方车辆识别窗口的高度,对常见的120种车辆的宽度、高度进行统计,同时结合国标GB1589—2016道路车辆外廓尺寸中关于汽车外形宽高比的推荐要求,获得了车辆宽高比的插值MAP图,如图9所示[16]。
表2 各类车型宽度测量结果
图9 车辆宽高比插值MAP图
根据毫米波雷达测量获得的车辆宽度信息,通过车辆宽高比MAP图利用数据查表的方法可以快速获得车辆的高度信息,然后根据式(1)得到图像中车辆识别窗口的高度。在获得车辆识别窗口的高度和宽度后,根据车辆对称性特征,建立车辆识别窗口,结果如图10所示。
图10 车辆识别窗口建立
通过图10中的对比,不难发现调整后的车辆识别窗口对前方车辆的检测效果明显提高,能够较好地拟合车辆外部轮廓特征,满足汽车辅助驾驶技术的要求。
为验证基于DBN深度置信网络的多传感器融合前方车辆检测方法的性能,以Matlab深度学习和GUI工具箱为基础搭建了前方车辆检测测试系统,测试系统工作界面如图11所示。测试系统综合考虑了毫米波雷达和机器视觉的优势,毫米波雷达工作界面可以对前方车辆的位置、距离、速度进行检测;图像窗口能够直观地对前方车辆进行标记,并按照距离远近对车辆进行排序。径向距离最近,位置越靠近雷达对称轴线的车辆被标记为车辆识别的主目标。
图11 前方车辆检测测试系统
选取典型路段进行道路实车实验,实验过程中充分考虑了各种复杂的道路环境和天气状况,部分实验测试结果如图12所示。
在较好的识别环境下选取200幅图像,每幅图像包含的车辆数目不等,共计前方车辆617辆。对车辆的识别情况进行统计分析,统计结果显示该方法的前方车辆识别的正确率为91.2%,误检率为5.3%,漏检率为3.5%,单帧图像的总处理时间约为37ms。道路实车实验表明该方法能较好地完成前方车辆的检测与识别,具有良好的实时处理特性,同时能够满足各种天气状况(晴天、夜间、轻雨雾天、雾霾天等)对于检测稳定性的要求。但是对于前方部分遮挡车辆,因为雷达检测信号和图像特征的不完整性以及传感器误差导致检测结果欠佳,如图12(d)所示,只能大体描述车辆的位置,不能很好地建立识别窗口。对大面积遮挡的情况,将无法有效地识别车辆。
图12 道路实验测试结果
基于DBN深度置信网络的多传感器融合前方车辆检测方法充分发挥了毫米波雷达和机器视觉的优势,最大的优点在于能够适应各种复杂的道路环境和天气状况,同时在保证识别准确率的前提下具有更快的处理速度和较小的算法模型,提高了汽车辅助驾驶系统实时处理的能力,降低了系统对于硬件的要求。各种常见的车辆识别方法在其特定的环境中的性能指标如表3所示。
以深度卷积神经网络(DCNN)为例,其迭代曲线与本文方法的对比结果如图13所示。
由图13可见,在网络训练过程中基于图像的深度卷积神经网络的识别正确率比本文方法略高,但以毫米波雷达数据为基础的DBN深度置信网络,在网络训练的过程中具有更高的迭代速度,更快地趋于分类的稳定。实际上毫米波雷达数据信息相比于图像信息,冗余数据量小,分类特征维度低的特点使DBN深度置信网络模型更加简练,网络参数更加优化,有利于提高系统实时处理的速度。同时毫米波信号不受曝光强度和特殊天气状况的影响,相比与单一图像处理能更好地适应车辆复杂的道路环境。
表3 各种车辆检测方法对比
图13 两种方法迭代曲线
以毫米波雷达检测数据为基础,结合DBN深度置信网络对前方障碍物进行分类识别,最终利用常见车型宽高比的统计规律建立前方车辆的识别窗口。实验表明,该方法的车辆识别正确率为91.2%,对各种天气状况和道路环境表现出良好的稳定性。单帧融合数据的平均总处理时间为37ms,在保证识别准确率的前提下能有效提高系统实时处理的速度。同时较小的算法模型也降低了系统对于硬件的要求,满足汽车辅助驾驶技术对于准确性和稳定性的要求。
[1] 郭烈,葛平淑,张明恒,等.汽车安全辅助驾驶技术[M].北京:北京大学出版社,2014:1-2.
[2] 金立生,王岩,刘景华,等.基于Adaboost算法的日间前方车辆检测[J].吉林大学学报(工学版),2014(6):1604-1608.
[3] 郭磊,李克强,王建强,等.一种基于特征的车辆检测方法[J].汽车工程,2006,28(11):1031-1035.
[4] 刘操,郑宏,黎曦,等.基于多通道融合HOG特征的全天候运动车辆检测方法[J].武汉大学学报(信息科学版),2015,40(8):1048-1053.
[5] JINL,FUM Y,WANGM L,et al.Vehicle detection based on vision and millimeter wave radar[J].Journal of Infrared&Millimeter Waves,2014,33(5):465-471.
[6] 金立生,程蕾,成波.基于毫米波雷达和机器视觉的夜间前方车辆检测[J].汽车安全与节能学报,2016,7(2):167-174.
[7] 王宝锋,齐志权,马国成,等.一种基于雷达和机器视觉信息融合的车辆识别方法[J].汽车工程,2015,37(6):674-678.
[8] 蔡英凤,王海,陈龙,等.采用视觉显著性和深度卷积网络的鲁棒视觉车辆识别算法[J].江苏大学学报(自然科学版),2015,36(3):331-336.
[9] CHEN X,XIANGS,LIU CL,et al.Vehicle detection in satellite images by hybrid deep convolutional neural networks[J].IEEE Geoscience and remote sensing letters,2014,11(10):1797-1801.
[10] 邹博维.基于多传感器的车辆局部交通环境感知[D].长春:吉林大学,2013.
[11] 何俊,蔡建峰,房灵芝,等.基于LBP/VAR与DBN模型的人脸表情识别[J].计算机应用研究,2016,33(8):2509-2513.
[12] TANG B, LIU X,LEIJ,et al.DeepChart:Combining deep convolutional networks and deep belief networks in chart classification[J].Signal Processing,2016,124:156-161.
[13] 刘海波,杨杰,吴正平,等.基于暗通道先验和Retinex理论的快速单幅图像去雾方法[J].自动化学报,2015,41(7):1264-1273.
[14] HUANG D Y,CHEN C H,CHEN T Y,et al.Vehicle detection and inter-vehicle distance estimation using single-lens video camera on urban/suburb roads[J].Journal of Visual Communication and Image Representation,2017,46:250-259.
[15] 郭君斌,王建强,易世春,等.基于单目视觉的夜间前方车辆检测方法[J].汽车工程,2014,36(5):573-579.
[16] 王战古,高松,邵金菊,等.复杂道路环境中前方车辆检测方法[J].科学技术与工程,2017,17(33):112-118.