一种简易高识别率的信号灯识别算法
2013-09-12刘昕
刘 昕
(沈阳爱思福科技发展有限公司,沈阳 110024)
1 引言
交通灯的识别是无人驾驶汽车在交叉路能否安全行车的关键技术,各地的信号灯也是不尽相同,因此信号灯的识别在智能交通行业里是个难点。现有的交通灯识别算法主要利用了交通灯的色彩特征及形状特征,基于形状特征的算法利用了交通灯及其附属物的形状信息。对候选区域的确认使用交通灯和支撑杆的相对几何关系,对候选区域的过滤仅仅依赖于形状信息。为了达到实时性要求,需要对候选区域设置严格的过滤条件,因此算法对采集的图像有很高的质量要求。其他的算法包括基于隐马尔可夫模型的算法、基于色彩分割的算法、基于Ada-Boost的学习算法等。
只考虑交通灯的色彩特征,利用色彩特征和信号灯的互斥特点进行识别。由于交通灯只有红、黄、绿三种颜色,使用描述这三种颜色更清晰的色彩空间,从而更加准确地判别此时正在亮什么灯。这一非常简单的方法识别率却能达到100%。而且其鲁棒性也是异常坚固,雨雪等恶劣天气几乎毫无影响,。对于显示效果不如CCD的CMOS相机效果也很好。
2 CCD相机与CMOS相机的不同
在传统观念中,CCD代表着高解析度、低噪点等优点,而CMOS由于噪点问题,一直与电脑摄像头、手机摄像头等对画质要求不高的电子产品联系在一起。
CCD在工作时,上百万个像素感光后会生成上百万个电荷,所有的电荷全部经过一个“放大器”进行电压转变,形成电子信号,因此,这个“放大器”就成为了一个制约图像处理速度的“瓶颈”,所有电荷由单一通道输出,就像千军万马从一座桥上通过,当数据量大的时候就发生信号“拥堵”。而HDV格式却恰恰需要在短时间内处理大量数据,因此,在民用级产品中使用单CCD无法满足高速读取高清数据的需要。
而CMOS则不同,每个像素点都有一个单独的放大器转换输出,因此CMOS没有CCD的“瓶颈”问题,能够在短时间内处理大量数据,输出高清影像,因此也能满足高清HDV的需求。另外,CMOS工作所需要的电压比CCD低很多,功耗大约只有CCD的1/3。因此,电池尺寸可以做得更小,使得摄像机的体积也就做得更小。而且,每个CMOS都有单独的数据处理能力,这也大大减少了集成电路的体积,从而使高清数码摄像机得以实现小型化。
CCD是Charge Coupled Device(电荷耦合器件)的缩写,它是一种半导体成像器件,因而具有灵敏度高、抗强光、畸变小、体积小、寿命长、抗震动等优点。
3 RGB空间与HSV空间的转换
由于大多数图像空间是RGB,而HSV适合判断颜色,所以有必要描述一下RGB与HSV的空间转换。
设(r,g,b)分别是一个颜色的红、绿和蓝坐标,它们的值是在0到1之间的实数。设max等价于r,g和b中的最大者。设min等于这些值中的最小者。要找到在HSL空间中的(h,s,l)值,这里的h∈[0,360)是角度的色相角,而 s,l∈[0,1]是饱和度和亮度,计算为:
h的值通常规范化到位于0到360°之间。而h=0用于max=min的(就是灰色)时候而不是留下h未定义。HSL和HSV有同样的色相定义,但是其他分量不同。HSV颜色的s和v值定义如下:
4 颜色判断
转换到了HSV空间后,就可以通过H、S、V分量判断颜色了。如表1所示。
表1 HSV各分量与颜色的关系
5 信号灯的识别
尽管信号灯有多种多样,但是无非三种颜色,并且是互斥的(即每次只表现为一种颜色),与已有的算法不同,此算法是在红、黄、绿的区域内分别固定一个点,判断它们的颜色。通过观察发现,信号灯灭的时候表现出的颜色是蓝色。
由于CCD相机与CMOS相机所表现出的特点不同,所以算法也不尽相同。
5.1 CCD相机信号灯的识别方法
由于CCD相机非常清晰并且颜色非常稳定,所以信号灯的识别简单些。如表2所示。
表2 CCD相机的识别表
5.2 CMOS相机信号灯的识别方法
通过观察发现,CMOS相机的颜色表现得不稳定,它总是随着电流的变化渐渐变淡或变深,而且在晚上并不表现出颜色,而是呈现出白色。即使是这样,这种算法仍然有办法解决。如表3所示。
表3 CMOS相机识别表
可以通过改进使得结果越来越准确。
6 实验结果
对各种信号灯进行测试,识别率可以达到100%。图1为一般形状信号灯,图2为异形信号灯。图中黑色区域为各信号灯的采样区域。
图1 信号灯识别场景1
图2 信号灯识别场景2
[1][美国]冈萨雷斯.数字图像处理[M].阮秋琦,译.北京:电子工业出版社,2010-01-01.
[2]刘瑞祯.OpenCV教程—基础篇[M].北京:北京航空航天大学出版社,2008-06-01.
[3]Gary Bradski Adrian Kaebler.Learning OpenCV computer vision with the opencv library[M]USA:O'Reilly Media,Inc,2008 -10 -03.
[4][美]Mitchell.机器学习[M].曾华军,译.北京:机械工业出版社,2008-03-01.
[5]Richard O.Duda Peter E.Hart David G.Stork.模式分类(英文版·第2版)[M].李宏东,译.北京:机械工业出版社,2004-02.
[6]边肇琪,张学工.模式识别[M].北京:清华大学出版社,2000.