APP下载

基于CCD图像传感器的路径识别算法分析

2012-03-17尚在飞肖文健李永科

电子设计工程 2012年16期
关键词:视频信号黑线小车

尚在飞,肖文健,李永科

(军械工程学院 光学与电子工程系,河北 石家庄 050003)

智能汽车的一项重要能力就是对环境的感知、对路况信息的分析决策。文中以MC9S12XS128单片机为核心,通过CCD图像传感器获得路径信息,进而进行路径分析,为下一步的控制提供必要的数据信息。

图1 视频分离原理图Fig.1 Video separation circuit

1 CCD图像传感器特点

CCD图像传感器属于电荷耦合器件,组成CCD的基本单元是金属-氧化物-半导体结构。基本单元又分为两类:光敏单元与移位寄存单元。两者的区别在于:前者接受有效频率入射光的刺激产生光电效应,生成信号电荷;后者依靠于前者的相邻且紧密排列形成两者势阱的相互沟通、耦合,借助结电容栅极电压的控制来实现信号电荷从前者向后者的转移(耦合)[1]。根据光线反射的强弱CCD会输出大小不同的电压,通过单片机的AD转化接口将相应电压值转换成大小不同的数值,根据数值大小来分析路径信息[2]。

CCD图像传感器输出的是视频同步信号,经视频同步分离芯片LM1881后,视频信号分成场同步信号、行同步信号、奇偶场信号以及视频信号,电路的典型连接及重要引脚信号如图1所示。利用这些同步信号再加上适当的延时对视频信号进行AD采样,从而得到图像信息。这里采用分辨率为320×240的CCD图像传感器,每场的扫描周期20 ms,因此,单行视频信号的持续时间大约为20 ms/320=62.5μs,将单片机超频到64 MHz,在单行视频信号的持续时间内能采集大约一百个点左右,能很好的满足横向精度要求。每场信号中包含了285个有效行,考虑到CCD图像传感器在纵向上的畸变,采取非均匀采集的方式,通过标定,使采集行在实际位置上是均匀分布的,从而实现每行之间的实际距离大致相等,为后续控制提供了方便。

2 黑线提取算法

在采集完一行图像信息后即对该行数据进行二值化处理,即设定一个阈值,把每个点的数据与阈值比较,通过大小判断该点为黑色或者白色。之后对黑色点的值进行累加求取平均值,在对白色点的值进行累加求平均值,再取两值平均作为下一行的阈值进行判断。阈值计算的公式如下:

式中 black[i]为黑点的值,white[j]为白点的值,Hold[row]为下一行的阈值[3]。

这种阈值传递的方法使得的黑白的检测判断更为可靠,排除了光线以及赛道颜色产生的影响。然后遍历一行数据,由于黑线宽度基本能在3~5点,所以,对该点与相邻两点黑白不一致的点进行剔除,用相邻两点均值作为该点的修正值。最后,对整行数据遍历,记录一行数据中黑线边缘位置、黑线中心及黑线出现次数。这样对一行的数据处理完毕。

在采集完一场图像信息后,根据黑线是连续的的特点,对相邻行之间黑线位置进行修正,将不满足连续性的黑线剔除掉,从而准确提取出黑线的分布情况。

3 预测算法设计

单片机的运算速度是一定的,而车模的惯性常数也是一定的,因此,为了使控制过程尽量长以达到理想的控制效果,必须对图像分析时间进行压缩[3]。这里,通过分析前一场数据,得到下一场首行阈值、黑线宽度以及黑线搜索范围,从而减少下一场的处理时间并增加了下一场路况信息的准确性,增强了相邻行、相邻场之间的联系。

4 图像信息分析

经过数据处理后,我们得到每行赛道黑线中心的位置量DImage和视场中心的位置量DCenter(常量),两个距离相减得到的就是黑线中心相对视场中心的偏差距离DReal=DImage-DCenter,也就是实际偏差值。根据偏差距离DReal可进行弯直道的识别[4]。

1)偏差DReal=0时,前方跑道为直道。

图2 直道示意图Fig.2 Straight-line image

2)偏差DReal>0为正值时,前方跑道为右弯道。

图3 右弯道示意图Fig.3 Right-turning image

3)偏差DReal<0为负值时,前方跑道为左弯道。

从而判断出小车相对中心黑线的位置[5]。DReal绝对值的大小反映了小车中心偏离中心黑线的严重程度,DReal越大,表明偏离得越厉害。这样判断的好处在于不管小车是否处于弯道还是直道,只要小车中心偏离了中心黑线,即只要DReal≠0就可以当作弯道情况来进行处理。然后分别对偏差距离DReal分别进行一阶微分(dDReal)和二阶微分(d2DReal),根据偏差距离的一阶微分(dDReal),就可以得到中心黑线的变化趋势,从而判断出实际跑道是弯道还是直道,如果小车是在直道上偏离了中心黑线,则同一场数据中前后各点偏差的一阶微分值dDReal是相等的,即中心黑线与小车视场中心的偏差距离与两者的前后距离呈线型变化。若实际跑道是弯道,则(dDReal)不等,上述关系呈非线性变化。根据偏差的二阶微分(d2DReal),可近似得到中心黑线的曲率半径R(直道曲率半径视为趋近无穷),从而得到较完整的跑道信息。以上判别过程如图5所示。

图5 弯道直道判别流程图Fig.5 Flowchartofthepathdiscriminate

5 结束语

文中初步对智能车的路径识别进行了探索,对一些基本问题给出较为详细的分析及设计,为进一步的实践打下了较为坚实的基础,为真正智能汽车的设计提供了有益参考[6]。参考文献:

[1]张秀彬,应俊豪.视感智能检测[M].北京:科学出版社,2009.

[2]邵贝贝.微控制器嵌入式应用的在线开发方法[M].北京:清华大学出版社,2007.

[3]卓晴,黄开胜,邵贝贝.学做智能车——挑战“飞思卡尔”杯[M].北京:北京航空航天大学出版社,2007.

[4]陈丁跃.现代汽车控制及其智能化[M].西安:西安交通大学出版社,2011.

[5]程学庆.LabVIEW图形化编程与实例应用[M].北京:中国铁道出版社,2005.

[6]ThomasD.Gillespie.车辆动力学基础[M].北京:清华大学出版社,2006.

猜你喜欢

视频信号黑线小车
大车拉小车
黑线
自制小车来比赛
刘老师想开小车
浅析新一代视频信号ICtCp
两轮自平衡小车的设计与实现
虾背黑线真的特别“脏”吗
短距视频信号无线通信网络
这也算海鲜
七巧数独