基于matlab图像处理交通信号灯识别算法

一种简单的基于图像处理交通信号灯识别算法

摘 要:交通信号灯是智能车辆在城市环境中行驶的主要指示信号,在城市交通安全中发挥了不可或缺的作用。交通信号灯通常设在交叉口,能够供应智能车辆的方位信息,查看和辨认交通信号灯的情况是智能车辆感知的重要任务。在简单工况下,可在各种颜色空间中利用信号灯颜色的先进行分割得到兴趣区域,然后再通过信号灯所特有的形状特征等进行进一步的判定。

关键词:智能车辆;感知;颜色空间

  1. 前言

智能车辆感知层主要有摄像头、雷达等,其中摄像头是视觉识别的重要元件。智能车辆可以通过摄像头进行交通标识识别,配合其它感知元件进行环境感知。交通信号灯是智能车辆在城市环境中行驶的主要指示信号,如交通信号灯等交通标示识别,是智能车辆进行路径规划、车道动态控制的前提因素。本文介绍了在简单工况下,利用 MATLAB  图像处理工具箱的相关函数在颜色空间中对信号灯颜色进行分割等操作,然后再通过信号灯形状特征等进行进一步的判断从而识别交通信号灯的简便方法。

  1. 系统分析
    1. 交通信号灯

道路交通信号灯[1]是指挥交通运行的信号灯,一般由红灯、绿灯、黄灯组成三个无图案圆形单位组成的一组灯,指导机动车通行。绿灯亮时,准许车辆通行,但转弯的车辆不得妨碍被放行的直行车辆、行人通行;黄灯亮时,已越过停止线的车辆可以继续通行;红灯亮时,禁止车辆通行。

国标 GB14887 中对道路交通信号灯有明确规定,如发光单元尺寸Φ200mm、Φ300 mm、Φ400 mm 三种规格发光单元在信号灯壳体上安装孔的直径分别为Φ200mm、Φ290

mm、Φ390 mm,尺寸允许偏差±2 mm。对于无图案信号灯,出光面直径分别为Φ185mm、Φ275 mm、Φ365 mm,尺寸

允许偏差±2 mm;对于有图案信号灯,出光面直径分别为Φ185mm、Φ275 mm、Φ365 mm,尺寸允许偏差±2 mm,图

像尺寸符合国标附录。

发光亮度在各个方向上的平均值不低于表 1 中的最小亮度值,且不大于 15000cd/m2。在可观察信号灯点亮区域内, 亮度应均匀,在基准轴上的发光亮度的最大值与最小值之比应不大于 2。

表 1 有图案信号灯最低亮度值

发光强度在基准轴上不小于 150cd,且不大于 400  cd,其它方向上的发光强度应不低于表 2 规定。

表 2 有图案信号灯轮廓最低光强

    1. 彩色视觉

彩色视觉(color vision)是一个生物体或机器基于物体所反射,发出或透过的光的波长(或频率) 以区分物体的能力。颜色可以以不同的方式被测量和量化;事实上,人对颜色的感知是一个主观的过程,即,脑响应当进入的光与眼中的若干种视锥细胞作用时所产生的刺激。

彩色视觉常用颜色空间也称彩色模型(又称彩色空间或彩色系统)描述,它的用途是在某些标准下用通常可接受的方式对彩色加以说明。彩色模型是坐标系统和子空间的阐述。位于系统的每种颜色都有单个点表示。采用的大多数颜色模型都是面向硬件或面向应用的。

图 1   颜色空间模型

其中 RGB 颜色空间是依据人眼识别的颜色定义出的空间,可表示大部分颜色。以 R(Red 红)、G(Green 绿)、B(Blue 蓝)三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色,所以俗称三基色模式。在大自然中有无穷多种不同的颜色,而人眼只能分辨有限种不同的颜色,RGB 模式可表示一千六百多万种不同的颜色,在人眼看来它非常接近大自然的颜色,故又称为自然色彩模式。

亮度、色调、饱和度三个基本特征来描述;其中亮度是指明暗程度,色调是指光的颜色,饱和度是指颜色的深浅程度。颜色空间[2]模型如图 1 所示。

H 参数表示色彩信息,即所处的光谱颜色的位置。该参数用一角度量来表示,红、绿、蓝分别相隔 120 度。S 为一比例值,范围从 0 到 1,它表示成所选颜色的纯度和该颜色最大的纯度之间的比率。S=0 时,只有灰度。V 表示色彩的明亮程度,范围从 0 到 1。有一点要注意:它和光强度之间并没有直接的联系。

    1. MATLAB 图像处理工具箱

Matlab 对图像的处理功能主要集中在它的图像处理工具箱(Image Processing Toolbox)中,图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、数学形态学处理等图像处理操作,主要有以下功能模块:

      • Image Acquisition Toolbox(图像采集工具箱)
      • Image Processing Toolbox(图像处理工具箱)
      • Signal Processing Toolbox(信号处理工具箱)
      • Wavelet Toolbox(小波分析工具箱)
      • Statistics Toolbox(统计工具箱)
      • Bioinformatics Toolbox(生物信息学工具箱)

Matlab 其具有上手容易,开发周期短,见效快;程序代码编写量明显减少;提供多种图像处理工具包等特点,比较适合进行图像识别相关工作。

    1. 识别系统方案实施

本文分析了道路交通信号灯色彩特点、图形学特点等特征,结合彩色视觉 RGB 颜色空间基本特征,并利用 Matlab 图像处理工具箱进行图像的灰度分割、边缘检测等操作,能够实现多交通信号灯的识别,并制定其系统流程如图 2 所示:

图 2 识别系统流程图

其中红色信号灯识别为例,首先将 RGB  值转换为相应的色调、饱和度和明度 (HSV) 坐标。rgb 可以是 p×3 颜色图数组或 m×n×3  图像数组。hsv 的大小与 rgb 相同。其次,

利用红色色彩特征值,搜索敏感区域识别红色颜色区域;并结合交通信号灯外形特征完成结构元素。再次,对图形结构元素实现二值化图像,填充背景色。

部分主要代码如下:

%hsv 三元色图像hsv=rgb2hsv(a); h=hsv(:,:,1);

s=hsv(:,:,2);

v=hsv(:,:,3); figure(2) imshow(hsv);

title('HSV 图像'); %转换为 hsv 图像并显示

bw1=h>0.9|h<0.05; %0.9,0.05

bw1=bw1.*(s>0.5); %检测红色区域se=strel('disk',3); %创建一个指定半径 R 的平面

结构元素

bw2=imopen(bw1,se); %用结构元素 SE 实现二值图像

的 bw1 的形态开运算。

bw2=bwfill(bw2,'holes'); %填充二进制图像的背景色figure

imshow(bw2)

依据以上方案在 MATLAB 环境中完成了整个算法搭建及实现,算法运行正常,随后分别针对网络资源道路交通信号灯图片、实际路况道路交通信号灯图片进行功能测试。

  1. 试验效果
    1. 网络资源验证

图 3    网络资源红灯识别效果

图 4    网络资源黄灯识别效果

为了验证算法实际效果,首先通过网络资源下载相关交通信号灯图片,利用已完成的算法进行离线交通信号灯识别效果验证,其效果如图 3、图 4 所示。

    1. 实际路况验证

为了进一步检验实际路口交通信号灯识别效果,本人通过手机(华为 LDN-AL20)拍摄实际路口交通信号灯图片进行实际效果检验,其效果如图 5、图 6 所示。

图 5    实际路口红灯识别效果

图 6    实际路口绿灯识别效果

根据验证效果分析,利用道路交通信号灯色彩特点、图形学特点等特征,结合彩色视觉 RGB 颜色空间基本特征, 并利用 Matlab 图像处理工具箱进行图像的灰度分割、边缘检测等操作,可以实现简单路况道路交通信号的识别。

  1. 结论

本文实现的评估方案是建立在道路交通信号灯色彩和形状特征基础上,利用 MATLAB 图像处理工具箱相关函数进行识别;相对于基于深度学习的方案,无需进行大量的前期数据采集、标注等工作,可以快速搭建及实现。经过测试可以满足简单路况道路交通信号的识别需求。

下一步计划对色彩干扰、图形干扰等干扰因素进行剔除, 提高识别精度;并图像坐标上半区域敏感区域进行筛选,预计减少 50%运算量;其次根据实际车速,选取合理的间隔帧, 提高实时,可进一步优化方案。

参考文献

[1] 道路交通信号灯 GB14887-2011.

[2] 陈超. MATLAB 应用实例精讲[M].北京:电子工业出版社,2011.11.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值