研究表明,大约15%的道路交通事故是由车辆驶离公路造成的,车道偏离预警系统能够有效减少道路交通事故的发生。目前车道偏离预警系统采用的方法大致分为3 种:1)基于车辆将到达车道边界时间(TIme to Lane Crossing,TLC)的预警算法;2)基于预测轨迹曲线偏离量不同的预警算法;3)基于平面图像道路标线夹角的预警算法。这几种算法能够实现车道预警,但车辆出现偏离一般是由于驾驶员注意力分散或处于疲惫状态时对车辆的控制疏忽所致,上述所做的各种假设与实际行驶过程均有偏差,如没有考虑车辆的横向偏转角及驾驶员转动方向盘转角在某个行驶过程中对车道偏离的影响。鉴于此,提出基于车辆横向距离与横向分速度进行车辆偏离预警的方法。作为车道偏离预警系统的处理平台,PC机的体积、成本及功能的冗余性是其应用在车载系统中难以克服的瓶颈,采用嵌入式方法对车道偏离预警系统的设计,充分利用了嵌入式系统处理的实时性与体积小巧等特点。
1 道路图像的处理
使用Sobel算子边缘检测和最大类间方差图像分割法将道路灰度图像转化为二值图像,作为下一步处理的基础。直线的矢量基元表示方法是按照某种准则将矢量基元(ELS)合并连接来表示直线。如行基元、列基元和45度基元。行基元是道路图像中同一行上的连续边缘点的集合;列基元是道路图像中同一列上的连续边缘点的集合;45度基元是道路图像中在倾角为45度。或135度的扫描线上连续边缘点的集合。其优点是计算耗费的时间与变量存储需要的空间较少。
Hough变换是利用投票机制参照图像全局特性对目标直线轮廓进行直接检测。其优点是对直线断裂、局部遮挡等缺陷不敏感,对随机噪声具有鲁棒性,特别适用于直线道路的识别。利用直线的矢量基元减少Hough变换中参数的量化范围,能够节省Hough变换的时间和空间消耗,同时弥补矢量基元表示直线的局部性和噪声敏感性等不足,较好识别道路标识线。
2 行驶车辆位置的确定
2.1 道路关键信息的重建
图像传感器固定在车辆前端顶部,摄像头距地面高度为 h。建立空间坐标系如下:世界坐标系XYZ与摄像机坐标系xyz。动态的世界坐标系随车辆一起运动,以摄像机镜头中心在地面的垂直投影点为原点,地面的垂直线向上为Z轴正向,车身纵轴线方向为X轴,正向为汽车前进的反方向;摄像机坐标系统以光轴为z轴,镜头中心为坐标原点,摄像机坐标xy平面与像平面平行;表征图像内部各点位置的像平面坐标系统的u轴、v轴与x轴、y轴平行,原点位于图像中心既摄像机光轴与图像的交点。所有坐标系满足右手规则。
平面图像上某点(u,v)经过逆透视投影变换后获取其在空间点(X,Y,Z)的位置信息,由此重建道路关键信息
式中,f为摄像机的有效焦距,γ表示摄像机x坐标轴相对于X轴的夹角称为扫视角,α表示摄像机光轴(z轴)相对于垂直方向(Z轴)的夹角称为倾斜角。
2.2 车辆在当前道路中横向距离及横向偏转角的确定
利用改进的Hough变换识别道路标识线后,通过图像平面的道路标线直线方程和式(1),得到左、右道路标识线在世界坐标系内的直线方程
式中,kL与kR为左、右道路标识线在平面图像上的斜率,bL和bR为左、右道路标识线在v轴上的截距。结合图像传感器的安装高度以及镜头焦距等参数,可以获得车辆距道路标识线的横向距离及横向偏转角,如图l所示。
图l中,点0代表摄像机镜头中心在路面的垂直投影点,点D代表车辆的左前轮,点D与CCD摄像机镜头中心在汽车纵向平面及横向平面的距离分别为m,d,汽车纵向平面与道路标识线的夹角ψ称为横向偏转角。
车辆在车道中的位置采用左前车轮距左标线的横向距离|DE|或左前车轮距右标线的横向距离|DF|表示。或者采用右前车轮距右标线的横向距离|DE|'或右前车轮距右标线的横向距离|DF|'表示,则根据三角几何关系推导出的计算公式
式中,bw为车辆轮距,BL、BR为左、右道路标线在Y轴上的截距,其值决定于道路标识线的空间方程。横向偏转角ψ表示汽车行驶过程相对于道路标识线的偏离方向,通过道路标识线空间方程计算得出,满足tanψ=-KL,KL为左道路标线的斜率。
3 车道偏离预警
3.1 预警算法的建立
通过车辆距道路标识线的横向距离和横向速度估算车辆到达道路标线的时间,当时间小于设定阈值时启动车道偏离预警。车辆的横向速度可以通过横向距离的变化得到,由于计算车辆距道路标线的横向距离的采样周期较短(O.1 s),在该段时间内认为车辆做横向匀速运动。车辆的横向分速度也可以由车速传感器获得的速度信号和横向偏转角确定,为减少测量误差的影响采用二者的平均值作为横向速度的取值。
车辆在车道中的横向位置用前车轮距道路标线的距离表示,车辆向左偏转时,用左前车轮距左道路标线的距离|DE|表示;车辆向右偏转时,用右前车轮距右道路标线的距离|DE|'表示,如图1所示。车辆在车道中的行驶方向用车辆纵向平面相对于道路标识线的偏转角ψ表示,车辆偏向左方时,ψ为正值;车辆偏向右方时,ψ为负值。
车道偏离预警主要作用于驾驶员由于注意力分散或疏忽造成的无意偏离,当车辆的转向灯信号开启时,说明驾驶员有意图转向,此时屏蔽系统的偏离车道预警功能。当本车距道路标识线的横向距离与横向车速的比值小于规定的时间时,认为车辆即将偏离车道行驶,需要报警。系统的预警算法如下:车辆位置参数满足式(4)并且ψ>0时,为车道偏离预警时刻,方向偏向左。
车辆位置参数满足式(5)并且ψ<0时,为车道偏离预警时刻,方向偏向右。
式中,v、vl2表示由速度传感器获得的瞬时速度及其横向分量,vl为瞬时横向速度,vl1为用横向距离计算的横向速度。|DE|i,|DE|'in分别代表第i帧的车辆横向位置,|DE|i-1,|DE|'i-1h分别代表第i-1帧的车辆横向位置,bw代表车辆轮距,△t表示采样时间间隔,Tc是车辆偏离车道预警的时间阈值,这里取0.9 s。
3.2 系统软件设计
车辆偏离预警系统的实时性要求处理器有较快的运行速度和超强的实时调度能力,研究中选用基于DSP和ARM9双核的TMS320DM6446ZWT片上系统(SoC)的评估板作为系统的硬件平台;选用Linux系统作为嵌入式操作系统。
系统首先接收图像传感器传送过来的图像,将彩色图像转化为待处理的灰度图像,利用中值滤波、Sobel算子边缘检测、自适应阈值分割等图象处理的方法,消除噪声并平滑图像,经过边缘检测和图像分割获得二值化图像。在二值化图像和灰度图像基础上根据摄像机标定参数,通过模式识别对道路及道路标识线进行辨认,确定道路标线在整幅图像中的直线方程及本车在道路中的位置。依据车道偏离预警模型检查车辆是否在车道中正常行驶,是否偏离车道,并根据判断结果发出预警信息。软件流程图如图2所示。
3.3 预警实验
实验车辆选用五菱之光6400C3加长版微型车,在高速公路及城市道路等结构化道路上进行道路标识线识别及车辆偏离预警试验。系统能够可靠地识别道路标识线,满足后续处理的需要,当车辆偏离车道时,该系统能够准确及时预警。例如系统某次报警发生时刻,车辆距道路标线距离为406 mm,横向偏转角为14.0度±2度,车速为85 km/h。