APP下载

基于形态学的运动车辆检测技术的研究

2011-08-21赵俊梅张利平

车辆与动力技术 2011年4期
关键词:形态学像素车辆

赵俊梅,张利平

(中北大学信息与通信工程学院,太原030051)

交通信息检测和识别是智能交通系统有效运行的前要条件,而交通视频图像中运动目标(运动车辆)检测技术已成为计算机视觉领域中的一大研究热门.随着数字图像处理技术的发展,基于图像的交通信息技术将会显示出更大的优势,是未来实时交通信息采集和处理技术的发展方向.车辆检测技术一般可以分为基于特征、光流场和基于立体视觉3类.利用运动车辆的颜色和形态学特征,发挥数学形态学运算的优势,对运动车辆进行检测.

1 视频图像预处理[1]

对于视频数据,包含许多帧图像,我们一般采取的处理方法是在视频数据中选取一副具有代表性图像帧,在这幅图像中开发合理的算法,然后,把这个算法应用到所有帧图像中.下面先读取视频图像数据中的一帧图像,进行处理.

交通视频图像通过数码摄像机或相机采集,视频图像样本都是彩色图像,彩色图像包含着大量的颜色信息,不但在存储上开销很大,而且在处理上也会降低系统的执行速度.由于图像的每个像素都具有3个不同的颜色分量,存在许多与识别无关的信息,不便于开展近一步的识别工作,因此,有必要首先将彩色图像转变为灰度图像.图1为视频图像数据中其中一帧图像.

视频图像在采集、输入和处理等过程中可能会受到噪声的干扰,尤其是在采集和输入这两个环节.若在视频图像采集过程中存在较大的噪声,将会影响到对图像中运动目标的检测与跟踪的结果.因此,对视频图像中的运动车辆进行检测之前,有必要消除或者去除图像的噪声所带来的影响.中值滤波器是一种利用非线性信号技术的线性滤波方法,对抑制图像中的噪声非常有效,选取窗口为3×3.图2为原图像经过中值滤波后的图像.

2 运动车辆图像分割[2]

数学形态学的基本思想是用一定的结构元素去度量和提取图像的对应形状,达到对图像分析和识别的目的.在视频图像数据中,像素大和像素小的区域,好像地形图上的山峰和山谷,是非常重要的形态学特征,文中充分利用这些来检测运动车辆.Matlab中的imextendedmax函数,Bw=imextendedmax(I,H,conn),这个函数把灰度图像I作为输入参数,H为阈值,conn规定连通性,默认值为8,Bw返回二值图像(维数和I相同),可以确定图像中像素值变化比较大的区域,也就是说像素值差异大于或者小于某个阈值,通过函数可以使其中亮度值大于某个阈值的区域在图像处理结果中显示出来,而亮度值小于这个阈值的目标则变成为背景,最终去除深色目标.举例说明一下算法,例如Bw=imextendedmax(I,2),阈值为2,Bw返回了极大值区域,即该像素值和领域值之差大于阈值的为极值,而极值设为1,其他值设为0.

imextendedmin函数与前者函数作用正好相反,作用是可以去除浅色目标,调用方法与前者函数类似.文中二者函数使用的阈值分别为45和90.图3为去除大目标后的图像.图4为去除小目标后图像.

通过上面的函数可以除去一些非车辆目标,但仍然会有少部分无关的目标存在,主要是和汽车颜色接近的目标,尤其是道路车道线和草丛.开运算的效果是消除细小物体、在纤细点处分离物体、平滑较大物体的边界,同时保持物体的面积不改变.考虑到道路车道线为细长型,草丛近似多边形,采用圆形的结构元素进行去除,效果较好,选取结构元素为5×5.进行开运算后,仍存在一些细小目标或干扰噪声,结合bwareaopen函数移除小对象,只保留运动车辆目标图像区域.

3 运动车辆目标标记[3]

经过处理后的图像,灰度图像进行形态学运算得到二值图像,为了提取不同区域的特征,先要对连通区域进行标记.像素的连通性定义了与该像素相连接的其他像素.在二值图像中,把相互连接的像素的集合汇集为一组,称为连通成分.连通区域标记是对属于同一个像素连通区域的所有像素分配相同的编号,对不同的连通区域分配不同的编号的处理.对于二维图像主要是4连通和8连通.4连通区域:当把一个区域看成4连通区域时,区域中的任何一个像素可访问其上、下、左和右4个近邻像素,即这个像素最多与4个近邻像素连通.8连通区域:区域中的任何一个像素可访问其上、下、左和右4个近邻像素之外,还可访问两条对角线方向上4个近邻像素.

MATLAB中的bwlabel函数可以实现连通区域的标记,Bl=bwlabel(Bw,n),Bw为输入的二值图像,n为连通性,Bl返回与Bw同维矩阵,bwlabel函数寻找输入图像的每一个对象,根据寻找到的顺序使用不同数字标注.函数通过确定二值图像中对象的个数,并且对这些对象进行标记,最后返回一个标签矩阵,通过这个标签矩阵可以进一步求得更多目标对象的参数.举例说明一下算法,例如Bl=bwlabel(Bw),Bl返回标注矩阵.bwlabel函数第一个寻找到的目标,像素值设为1,第2个寻找到的目标,像素值设为2,依次类推,共找到4个目标,而背景像素保持不变为0.

考虑到交通视频的复杂性,选取8连通进行标记.通过标签矩阵进而获取运动车辆的目标的参数,再通过其确定车辆的位置,最后在图像中通过蓝色标注出运动车辆.具体步骤为:①通过标签矩阵,统计目标图像像素的数目,计算区域的质心和面积;②求出目标的最大面积;③通过目标最大面积求出对应的圆心;④通过圆心坐标,对检测的目标进行标注,实现目标车辆的检测.

4 实验结果和分析

为了验证算法的可行性,在通往学校的滨河东路汾河桥处通过数码相机采集了10个交通视频数据,这条道路车流量不是很大,采集图像的分辨率为120×160 RGB24图像,帧速率为15 s.利用MATLAB7.10软件进行仿真实验,MATLAB的R2010a版本中含有mmreader(读取视频)和implay(播放视频)等函数为处理交通视频提供了便利.运行环境为CPU:intel Dual-core 2.2 GHZ和内存为1 G的PC机.

图1-5为浅色运动车辆的检测过程(视频长度为21 s);图6-10为深色运动车辆的检测过程(视频长度为19 s).根据图5和图10的结果显示,算法可以检测出运动车辆,不论其是深色还是浅色.表1为常见颜色的车型的检测时间,视频长度平均为22.5 s.根据其中一帧图像的结果,最后循环逐帧对采集到的视频进行车辆检测,准确率可以达到90%.如果路边浅色或者深色区域比较大时,出现一些错误检测.通过仿真实验,证明算法具有一定的实用性和鲁棒性.通过统计检测到的运动车辆数量,从而掌握道路的交通流量和密度,便于交通管理信息化和智能化.

表1 不同颜色和车型检测平均时间

5 结论

1)利用运动车辆图像的形态学特征和形态学运算中的极大值和极小值函数,大致进行车辆分割,再利用开运算(选取最佳结构元素)和移出小对象函数,可以对干扰目标进行去除;

2)利用图像的连通性,对运动车辆图像进行连通区域标记,通过标签矩阵计算车辆位置,实现车辆目标的检测目的;

3)采用数学形态学算法,可以有效地滤除噪声,保留图像的原信息,并且其具有并行计算的特点,可以提高工程实践中的实用性和有效性.

[1] 魏 武,龚树锋,龚树超.一种改进的基于视频的车辆检测与识别方法[J],计算机测量与控制,2010,18(1):20-22.

[2] 张 强,王正林,精通MATLAB图像处理[M],北京:电子工业出版社,2009.

[3] 赵书兰,MATLABR2008数字图像处理与分析实例教程[M],北京:化学工业出版社,2009.

猜你喜欢

形态学像素车辆
像素前线之“幻影”2000
“像素”仙人掌
车辆
ÉVOLUTIONDIGAE Style de vie tactile
冬天路滑 远离车辆
高像素不是全部
医学微观形态学在教学改革中的应用分析
提高车辆响应的转向辅助控制系统
数学形态学滤波器在转子失衡识别中的应用
巨核细胞数量及形态学改变在四种类型MPN中的诊断价值