基于计算机视觉的智能交通监控系统
2010-05-28姚明海
王 为,姚明海
(浙江工业大学信息工程学院,浙江 杭州 310032)
随着社会的发展和自动化程度的提高,城市中智能交通管理系统(ITS)的普及将是一种大的趋势,现阶段国内各个大中城市都开始试运行相关的智能交通管理系统[1].笔者研究的就是一种基于计算机视觉的智能交通监控系统.该系统运用OpenCV开源计算机视觉库,提出一种改进的背景差分算法,在VC++6.0平台上开发实现.所开发的系统界面友好,操作简单,人机交互性强,用户可以根据需要选择不同的监控对象.在实验室,该系统通过网络摄像头模拟监控,能够实现对视频流的运动车辆的轮廓检测和对象跟踪,并能实时更新背景.作为智能交通管理系统(ITS)的一个子系统和智能交通管理系统实现的先决条件,基于视觉的智能交通监控系统的研究和实现具有较好的现实意义.
1 相关知识
1.1 智能交通管理系统(ITS)简介
ITS是指将先进的信息技术、电子通讯技术、自动控制技术、计算机技术以及网络技术等有效综合地运用于整个交通运输管理体系,而建立起的一种在大范围内,全方位发挥作用的,实时、准确、高效的交通运输综合管理和控制系统.近几年来随着城市发展迅猛,人流、车流量猛增,交通职能部门急切需要有更加智能的交通管理系统.因此,ITS是21世纪地面交通运输科技、运营和管理的主要发展方向,是交通运输的一场革命.20世纪80年代末以来,西欧、北美和日本竞相发展智能运输系统,制定并实施了开发计划[2-3],发展中国家也开始ITS的全面开发与研究.
1.2 OpenCV简介
OpenCV是Intel开源计算机视觉库[4],它由一系列C函数和少量C++类构成,独立于操作系统、硬件和图形管理器,具有通用的图像/视频载入、保存和获取模块,实现了图像处理和计算机视觉方面的很多通用算法.OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序.同时,OpenCV对非商业应用和商业应用都是免费的.
1.3 常用交通流参数比较
目前,交通流参数检测的方法很多,主要有超声波检测、红外检测、环形地埋式线圈检测以及计算机视觉检测.超声波检测精度不高,容易受车辆遮挡和行人的影响,检测的距离短(一般不超过12 m);红外线检测受车辆本身热源的影响,抗噪声的能力不强;环形地埋式线圈感应器检测精度高,但要求设置于路面土木结构中,对路面有损坏,施工和安装不便;计算机视觉检测在近年来随着计算机技术、图像处理、人工智能和模式识别等技术的不断发展,在交通流检测中获得越来越广泛的应用.
计算机视觉检测较其他交通流检测技术而言具有以下特点:
(1)从视频数字图像中可以提取高质量的车辆和交通场景的信息.
(2)视频传感器能检测更大的交通场景面积,减少传感器的安装数目,投资少、费用低.
(3)视频传感器易于安装和调试,对路面和土木设施不会产生破坏.
2 系统介绍
2.1 研发内容简介
笔者研究智能交通系统的重要组成部分——智能交通监控系统.一般的视频交通监控系统的结构如图1所示.在实际应用中,通过架设在高处的角度固定、高度固定的摄像头来获得车辆[5-6].通过用数字图象处理和模式识别技术来对图像序列进行分析,可以得到所有需要的各种统计数据.行驶图像,经过图像处理,得到各种有用数据.
图1 视频交通监控系统的结构Fig.1 Video Transportation Monitoring System
笔者研究的基于计算机视觉的交通监控系统包括3个基本步骤:
(1)分割和跟踪(包括车辆和行人).
(2)分析计算车流量、平均速度和队列长度等交通参数.
(3)根据道路的交通情况,规划行驶路线,缓解拥塞,减少出行时间.
2.2 智能交通监控系统介绍
运动物体的检测是实现视觉监控的第一步.程序运行以后,将分4个监控窗口,见图 2.包括“摄像头读入”的初始视频,使用算法提取的“背景”,原图与背景相减后产生的“前景”及已经用矩形框跟踪运动车辆的“运动目标检测”等4个窗口.系统整体框架[7]如图3所示.
图2 智能交通监控系统各监控窗口Fig.2 The monitoring windows of ITS
图3 基于视觉的监控系统原理框图Fig.3 Schematic diagram of the monitoring system
2.3 系统功能实现
实现系统的功能,包括运动目标检测、背景提取和更新以及运动对象的轨迹跟踪[8].下面先简单介绍一下笔者采用的运动目标检测方法[9].
2.3.1 运动目标检测方法
对运动物体的检测,首先要进行运动物体的分割,即找出有意义的图像部分,从图像中抽出特征.视频图像必须考虑将图像分成运动区域和不变区域,分析连续画面间的变化部分,从而抽出运动目标的特征,可以据此判断目标的运动状况.在这里,运动的物体主要是道路上的车辆以及行人.对运动物体的分割主要有两种方法:光流法以及差分法.差分法又分为帧间差分法及背景差分法.
光流法的优点是能够检测独立运动的对象,不需要预先知道场景的任何信息,并且可用于摄像机运动的情况.但多数光流法计算复杂耗时,很难实现实时检测.本系统在差分法的基础上开发实现.
(1)帧间差分法
帧间差分法是运动分割中最简单的一种方法.该方法是在连续的图像序列中两个或三个相邻帧间采用基于像素的帧间差分并且阈值化来提取图像的运动区域.在序列图像中,通过逐象素比较可直接求取前后两帧图像之间的差别.假设条件在多帧图像间基本不变化,那么差分后图像的不为零处表明该处的象素发生了移动.其思路是:假设用于获取序列图像的摄像机是静止的.设视频中连续两帧的图像为It(x,y)和It+1(x,y),通过对连续两帧的图像相应的像素进行比较.
Dt(x,y)=|It+1(x,y)-It(x,y)|,对于帧 Dt(x,y),用一个阈值与之比较来检测出运动物体:
帧间差分法得到的差分图像并不是由理想封闭的轮廓区域组成的,运动目标的轮廓往往是局部且不连续的,往往具有边缘图像的性质.且误差随着运动目标的速度的增大而增大,所以帧间差分法不适于高速运动目标的检测.
(2)背景差分法
背景差分法是目前运动分割中最常用的且最直接的一种方法.它是利用当前图像与背景图像的差分来检测出运动物体的一种技术,它对于动态场景的变换特别敏感.其思路是,在可控制环境下,或者在很短的时间间隔内,认为背景是固定不变的.假设用于获取序列图像的摄像机是静止的.设当前运动物体的图像是I(x,y),背景图像为B(x,y),通过输入图像与背景模型进行比较D(x,y)=|I(x,y)-B(x,y)|,得到图像中的各像素的变化信息,根据变化信息可检测出运动物体:
2.3.2 程序功能实现
笔者设计的算法是运用背景建模检测运动物体,并实现对象的跟踪.表1是本程序功能实现所主要使用的OpenCV函数.OpenCV能够实现对图像数据的操作,包括分配、释放、复制、设置和转换数据,以及对摄像头的定标、对运动的分析等.在函数实现上,用到了Cv图像处理的连接部件函数,运动分析与对象跟踪中的背景统计量的累积相关函数等相关的函数.表1介绍使用到的函数名及其功能和使用格式等.
本系统就是运用上述函数实现对视频流的运动车辆的轮廓检测的.在实际运用中,背景差分法的关键,是要建立一个背景模型,并更新模型.寻找轮廓程序update_mhi的主要算法流程如图4所示.
图4 寻找轮廓程序update_mhi的主要算法流程Fig .4 Flow chart of update_mhi
表1 程序实现所使用的函数Table 1 Functions used in the program
主程序的功能实现流程图如图5所示.
图5 主程序功能实现流程图Fig.5 Flow chart of the main program
3 实验结果与讨论
实验系统的硬件及软件资源:CPU:AMD 1.6 GHz;内存 :512 M;操作系统:Windows XP;软件环境:Microsoft Visual C++6.0;摄像头:HYUNDAI网络摄像头H103G.
系统运行和首先判断是否存在摄像头,如果存在就直接弹出相应的监控和跟踪窗口,操作简单.用户可以根据需要,选择相应的监控界面.
模拟实验结果:由实验中截取的3帧相邻图像进行说明.
图6中自上而下各3帧图像分别是从实验的城市道路监控视频的中任意截取的连续视频帧,从图6中可以看到,本程序较好的实现了矩形轮廓寻找及运动物体的跟踪.
根据实验可知,本系统能够实现对视频流的运动车辆的轮廓检测和对象跟踪,并能实时更新背景.摄像采样的速度受到摄像头本身参数和所运行程序算法的复杂程度的影响,在现有实验室条件的基础上,对城市交通闲时的监控效果能满足实时性的要求,车辆跟踪正确率在95%以上.轮廓检测正确率稍差,这主要是由于摄像头所处的角度和车辆靠近的程度所影响.在交通运行高峰时期,该系统模拟监控结果基本令人满意.
图6 智能交通监控系统各监控窗口模拟实验结果Fig.6 The results of simulation experiment of ITS
交通监控系统的功能包括:序列图像的获取,车辆检测,检测车辆轨迹,统计车辆数目,车辆速度检测,车辆的分类识别.而本系统只是实现了序列图像的获取,运动车辆检测和运动车辆轨迹的监控工作,对于车辆速度检测,需要建立相应的摄像机与视觉系统的标定,对于车辆的分类识别需要建立相关的车辆模板匹配,这是以后的研究重点.
4 结 论
笔者主要介绍一种基于计算机视觉的智能交通监控系统,该系统在实验室实现了通过网络摄像头模拟监控,能够实现对视频流的运动车辆的轮廓检测和对象跟踪,并能实时更新背景.主要做的工作是找到一个包围车辆的最小矩形窗口侧,序列图像的获取,车辆检测,检测车辆轨迹等.本系统是结合OpenCV是开源计算机视觉库,在VC++6.0平台上开发实现的.
下一步希望能实现这样的一个系统:以一个十字路口交通管理系统为基本单元,采用动态摄像机标定技术[10],根据实际的路况,进行多车辆的监控和车牌识别;根据道路车辆流量流向分析,并根据车流大小和拥挤程度,迅速计算出最佳控制模式,自动调节红绿灯变换时间.在优化提升红绿灯切换的同时,附加交通信号控制系统、交通违法监测系统、道路交通监视系统和区域交通诱导系统等实用功能.另外,在此基础上,考虑组建一整套联网的系统,对全区(市)的红绿灯进行整体的研究,全面分析,从而从整体上优化城市交通网络.
[1] 杨俊,王润生.智能化交通视频图像处理技术研究[J].电视技术,2006(9):74-77.
[2] BEYMER D,MCLAUCHLAN P,COIFMAN B,et al.A realtime computer vision system for measuring traffic parameters[J].Computer Vision and Pattern Recognition,1997(3),495-501.
[3] FA THY M,SIYAL M Y.A window-based image processing technique for quantitative and qualitative analysis of road traffic parameters[J].IEEE Transactions on Vehicular T echnology,1998,47(4):1342-1349.
[4] 刘瑞祯,于仕琪.OpenCV教程:基础篇[M].北京:北京航空航天大学出版社,2007.
[5] MICCHALOPOULOS P G.Vehicle detection through video image processing:the autoscope system[J].IEEE Transaction on Vehicle Technology,1991,40:21-29.
[6] 张学工,张毅,宋靖雁,等.智能交通系统整体解决方案及视频交通信息系统[J].ITS通讯,2000(4):21-27.
[7] K UMAR P.Framewo rk for real-time behavior interpretation from traffic video[J].IEEE T ransactions on Intelligent T ransportation Systems,2005,6(1):43-53.
[8] FERNANDEZ-CABA LLERO A,GOMEZ F J,LOPEZ-LOPEZ J.Road-traffic monitoring by knowledge-driven static and dynamic image analysis[J].Expert Systems with Applications,2008,35(3):701-719.
[9] 顾晶.基于计算机视觉的智能交通监控系统的研究[D].南京:东南大学信息科学与工程学院,2006.
[10] SCHOEPFLIN T N,DAILEY D J.Dynamic camera calibration of roadside traffic management cameras for vehicle speed estimation[J].IEEE Trans Intelligent T ransportation System,2003,4(2):90-98.