一、引言
在世界范围内,公路交通事故导致惊人的人员伤亡和经济损失。据统计,约有44%的汽车事故与车辆偏离正常车道行驶有关,其主要原因是驾驶员注意力不集中或者疲劳驾驶,造成车辆的无意识偏离。(简称LDWS或RDWS)正是基于基本交通规则的车辆安全系统,其主要功能是辅助过度疲惫或者长时间单调驾驶的驾驶员保持车辆在车道内行驶。由于LDWS具有显著提高车辆行驶主动安全性的潜力,得到了国内外研究人员越来越多的重视。因此该系统具有广泛的市场潜力与应用价值。
二、系统总体设计
车道偏离报警系统的系统总体设计如图1所示,主要包括软件设计即人机界面设计和硬件设计两大部分。人机界面为PC端上的图形化控制台,用于模拟汽车的制动信号和转向信号以及车速信号等,通过串口将信号传送给DSP,同时显示由DSP送来的车辆偏离数据和实时道路场景。硬件部分由DSP构成,负责实时车道检测与识别,车道偏离量的计算。
图1系统设计
系统通过图像传感器获取车道几何结构,通过车辆运动参数传感器获取决策算法所必需的车辆运动参数如车速、车辆转向状态等,综合分析判断车辆偏离车道的程度。如果车辆偏离量超过设定阈值,控制台界面上的报警灯将会闪亮,同时发出蜂鸣报警声。
三、人机界面设计
在人机界面设计上采用VisualC++6.0开发环境和NI公司的Measurement Studio编程工具共同开发,用VC完成程序的主要功能,用Measurement Studio的精美控件完成程序的界面编程。在系统与DSP通信上我们采用微软公司的MSSCOM控件进行编程,减小工作量,降低开发难度。软件系统分为三个模块:显示模块、控制模块、通信模块。显示模块负责将DSP发来的报警信号,车道偏移信号进行图形化显示,控制模块主要向DSP发送控制命令,通信模块负责PC与DSP间信号的交互。人机界面各模块间的关系如图2所示。
图2人机界面设计
四、硬件设计
系统硬件主要是以DSP为核心的实时处理平台,主要完成图像采集、车道检测与识别、车道偏移量计算等功能,并将计算结果传送给控制台界面作动态显示。
DSP硬件系统包括视频A/D模块、实时图像处理模块、视频D/A模块、UART通信模块、外部储存器模块。视频A/D模块采用ADV7183视频解码芯片,图像处理芯片采用ADI公司的Blackfin-533多媒体数字信号处理器,ADM3202RS-232通用异步收发器。DSP系统框图如图1左方虚线框所示。
在开发中我们采用ADI公司的BF-533EZ-KitLite评估板,该平台具有良好的可操作性和丰富的外设接口,为我们降低了系统开发难度,节约了时间。
在DSP端,图像经CMOS摄像头转换成视频信号送入ADV7183视频编码器,我们从解码视频流中的亮度分量获得灰度图像序列,首先进行图像预处理,由3×3的高斯模板对图像进行滤波,滤除部分随机噪声,然后进行车道标志检测。由于结构化道路上的车道标识线与路面背景具有较强的对比度,车道边缘较明显,因此利用边缘检测算法能够较好地检测出车道边缘。目前较好的边缘检测算法是Canny法,检测的车道边缘准确,线条较细,但是计算量大。Sobel算法相对于Canny法的线条较粗,但计算量较小,便于实时系统应用。因此,系统采用了Sobel法,然后采用Ostu法对边缘增强的图像序列进行二值化,该算法能够自动确定分割阈值,使前景与背景两类的方差最大。
经过分割后的二值图像中包含了车道标识线,但还含有很多杂散线条,因此要对车道线进行识别,将其从杂散线条中提取出来。基于对道路的先验知识,三维场景中的直线投影到二维平面上亦为直线,而实际道路中出现直道的概率远大于弯道出现的概率,所以我们采用了简化的道路模型,即直线车道模型。检测直线的常用方法是Hough变换,由于标准Hough变换计算量太大,不能在DSP上实现,我们将图像按重要性分为三个区域如图3所示。
图3图像区域示意图
我们只在区域1和区域2做Hough变换,区域3不做处理,并增大了Hough变换的角度搜索步长,进一步减小计算量。区域1中检测到斜率在(0,90)度、长度为30像素以上的直线段判定为左车道,在区域2中检测到的斜率在(0,-90)度、长度为30像素以上的直线段为右车道。
获取更多评论