

智能交通视频流监控系统软件可行性报告
一、总述
1.系统基本要求
利用VisualC++6.0进行程序设计,主要实现以下目标:
(1)通过对视频流中的车辆进行跟踪检测,统计车道流量和平均车速。(2)在视频流中锁定逆行车辆,并给出抓拍信号。
(3)在视频流中确定违规停车车辆,并进行锁定,同时给出抓拍信号。(4)通过对视频流中的车辆进行跟踪检测,当车轮压过黄线的时候能够识别出来,并给出抓拍信号。
2.软件结构分析
从系统的基本要求出发,软件结构如图1所示。
图1系统结构框图
3.相关技术
通过分析,相关技术主要包括基于图像处理的以下技术:(1)车辆目标的识别技术。
(2)车辆目标的提取技术。
(3)车辆目标的定位技术。
(4)多目标物的检测技术。
(5)多目标物的跟踪技术。
下面分别对这些技术进行分析。
二、研究现状
1.车辆目标识别技术
(1)光流法。利用帧间图像中同一像素关于时间的变化来获得运动参数。首先,从图像序列的灰度变化(一阶和二阶导数)中计算速度场。然后利用一些约束条件从速度场中推测出运动参数和物体的结构。缺点是由于光流法是假设物体表面光滑变化,所以易受噪声影响,且耗时太多很难满足实时性要求。
(2)背景差分法。分为固定背景法和实时更新背景法。
①固定背景法。选取背景图像,其它图像与其差分,得到的差分图像再进行图像分割,常用的是设定一个阈值对其不同灰度分割,得到车辆目标。缺点是,当背景整体发生变化时,差分图像中目标物之外的部分灰度值偏大,不利于阈值设定。
②实时背景法。和固定背景法一样,也是通过两幅图像做差分得到的图像进行处理。不同的是,这里实时更新背景,用相邻或者相近的两帧图像差分,然后也是对得到的差分图像的灰度进行运算,从而得到目标物,以及目标物实时的变化情况。优点是,实时更新背景,因此对环境的光线变化不敏感,即不受环境光照等环境的影响。
(2)基于角点的车辆识别。原理为:如果某一点向任一方向小小偏移都会引起灰度的很大变化,则说明该点是角点。优点是该方法不受摄像机姿态及光照的影响,检测精度很高,并且,因为只对图像中一些特殊点进行运算,不需要对整幅图像运算,所以在对车型的精确检测中实时性较好。
(3)连续帧间差分法。用图像序列中的连续两帧进行差分,然后二值化该灰度图像来提取运动信息。优点是它只对运动的物体敏感,实际上它只是检测出相对运动的物体,而且因为两帧图像的时间间隔较短,差分图像受光线变化的影响小。但是两帧间物体重叠部分不能检测出来,即只检测出物体的一部分;其次,检测出的物体在两帧中的位置信息不够准确,容易把当前帧显露出来(上一帧中被目标覆盖)的背景区域(即显露背景)也检测出来,造成检测的不准确。
(4)二次差分法。重复做两次连续帧间差分法。这种方法克服了连续帧间差分法的缺点。
2.车辆目标提取技术
(1)腐蚀/膨胀、开运算/闭运算。
(2)边界分割。通过检测边界来识别并提取物体。
(3)区域分割。分为串行区域分割和并行区域分割。并行区域分割通常是指通过给灰度直方图设定一个阈值对其二值化,从图像中分割出目标物。串行区域分割指通过边界跟踪或者区域生长等方法提取出目标物。
(4)投影法目标物提取。这是一种和差分法配合的目标物提取方法。图像差分后得到的数据,在目标物的内部常常形成“空洞”,对目标物的提取造成困难。对目标物通过投影向量进行直方图投影,再提取目标物,可以消除目标物内部的空洞。
3.车辆目标定位技术
(1)重心法。在识别出目标物的基础上,通过提取目标的最小外接矩形,找到目标的位置和跨度,对其几何运算求出几何中心,即为目标物的重心位置。
(2)边缘检测定位法。通过图像边缘检测和分割技术,检测物体的边缘,对边缘的位置准确定位,从而确定车辆目标的位置。
(3)灰度峰值法。分别检测_和y方向的灰度的峰值位置,确定目标的大致位置。
4.多目标物检测技术
(1)面积法。由和背景的差分图像求出所有目标物的面积总和,然后由目标物的区域和目标的总面积值估算出目标物的个数。优点是算法简单实现容易,但是面积提取受环境影响较大,因此不够准确,加上车辆目标的面积值差别很大,因此很难达到要求,只能够应用于非常粗略的估算或者对主算法的验证。
(2)区域分割。分为阈值分割法和区域生长法。
①阈值分割法。自适应阈值/固定阈值。
②区域生长法。包括种子点的选取、生长准则、停止条件三个因素。传统的区域生长方法是,扫描并标记种子点相邻4个/8个像素点,如果符合准则就标记并压入存放种子点的堆栈,成为接下来要扫描的种子点,扫描完堆栈中的点后再继续下一个种子点的扫描,具有迭代性质,因此算法较为复杂。
一种创新的区域生长算法,即扫描边增长,顺序扫描每一行的所有像素,标记其相邻的4个/8个点,扫描完所有像素点后,目标区域就全部识别出来了。这种新算法的复杂度较低。
5.多目标物跟踪技术
在多目标的识别基础上,可眼用下面方法跟踪多个目标。
(1)传统帧差法。通过与背景差分的图像确定每一帧中目标物的位置,然后对目标物的特征(比如角点特征、边缘特征、颜色特征等)进行匹配识别,达到跟踪目的。
(2)基于_方向和y方向灰度极值变化的方法。对帧差分图像进行分析,多个目标时求出_方向和y方向上的多个极值的位置和该峰值区间(即为目标物的位置和大小范围)。此方法优点是算法简单,但对目标位置的定位不够精确,并且需要对非目标物的误检测进行有效过滤。
(3)基于目标物运动方向预测的估算。优点:运算速度快,实时性较强。
三、拟采用的方法
1.车速、流量统计
流程图如图2所示。
图2车速、流量统计流程图
(1)由视频流读入图像后,对图像的预处理采用中值滤波,有效消除噪声。
(2)对多辆车辆的实时更新背景,与当前帧图像作差分运算,得到帧差图
像。然后用改进的区域生长识别多个目标,并通过标记这些目标进行计数。
(3)多个目标跟踪,结合运动趋势预测的方法对目标位置进行跟踪。
(4)多车辆的车速检测,对每个车辆的车速进行估计,然后对当前监控区域的所有车辆车速计算均值并输出。
2.压黄线检测
流程图如图3所示。
图3压黄线检测流程图
(1)由视频流读入图像后,对图像的预处理采用中值滤波,有效消除噪声。
(2)对多辆车辆的实时更新背景,与当前帧图像作差分运算,得到帧差图像。然后用改进的区域生长识别多个目标,并对每个目标定位。定位方法拟采取重心法。
(3)对黄线的识别采用Hough变换法,该方法擅长检测不连续的边缘像素点,抗干扰性较强。
(4)对车辆目标和黄线的相对位置进行定位,判断车辆是否压黄线。
3.违章停车检测
流程图如图4所示。
图4违章停车检测流程图
(1)由视频流读入图像后,对图像的预处理采用中值滤波,有效消除噪声。
(2)对多辆车辆的实时更新背景,与当前帧图像作差分运算,得到帧差图像。然后用改进的区域生长识别多个目标,并对每个目标定位。定位方法拟采取车辆的边缘检测法。
(3)当(2)检测到车辆目标出现后,对目标进行跟踪,通过相邻帧差分检测目标物运动或静止,如果静止则判定违章停车。
4.逆行检测
流程图如图5所示。
图5逆行检测流程图
(1)由视频流读入图像后,对图像的预处理采用中值滤波,有效消除噪声。
(2)对多辆车辆的实时更新背景,与当前帧图像作差分运算,得到帧差图像。然后用改进的区域生长识别多个目标,并对每个目标定位。定位方法拟采取车辆的边缘检测法。
(3)当(2)检测到车辆目标出现后,对目标进行跟踪。这里跟踪只需要确定目标的运动方向或趋势,不需要测速。
(4)如果车辆目标运动方向与预设的方向不同,则判定违规。
四、主要功能模块
为了保证系统性能,并增加软件的重用性,程序中图像处理的相关部分大致划分如下功能模块进行实现:
(1)读入图像和预处理。
(2)车辆的识别(和计数)。
(3)黄线识别。
(4)目标物跟踪。
(4)速度统计。
(5)运动趋势(方向)判断。
(6)绝对位置的判定。
(7)结果/信号的输出模块。
这些模块的算法蕴含在前面“拟采用的方法”中。不过,有些算法在实施时可能需要改选别的算法,也可能需要进一步改进。
