购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.2 基于视频检测的高速公路交通信息感知技术

基于视频的车辆检测技术是计算机视觉技术应用于智能交通系统中的重要研究课题之一,是获得交通流信息的基础和保证,是实现交通智能化管理的关键环节。运动车辆视频检测技术是从交通视频中提取运动车辆的过程。由于背景的复杂性,比如光照的变化、阴晴雨雪等天气变化、树木的扰动、摄像机的抖动、车辆种类的多样性以及计算机视觉技术不成熟等众多因素,使得运动车辆检测技术还存在一定的困难。因此,如何准确、实时地提取运动车辆仍是一项具有挑战性和研究意义的课题。

运动车辆视频检测算法及车流量检测技术的分析和研究,对智能交通系统功能的实现具有一定的理论价值。基于动态视频的车辆检测研究能够迅速提取道路车辆的运行数据,获取大面积路网的实时交通状态,对区域路网的运行效率评估提供有效支持,为交通决策提供可靠依据。

3.2.1 研究框架

本书旨在通过计算机图像技术对实时获取的视频进行处理,在计算机对视频充分“认知”的基础上,提取场景中的运动目标,通过对运动目标的检测与跟踪,获取道路网中的车辆运行方向、运行速度等信息,为多源多维条件下的交通状态感知提供基础数据。研究范围主要包括基于视频的移动目标检测原理与方法研究、移动目标检测技术研究、移动目标跟踪技术研究、基于视频的移动目标检测。研究框架如图3.11所示。

图3.11 研究框架

3.2.2 视频检测的优势分析

随着计算机技术和电子技术的快速发展,一种通过图像处理技术获取交通流数据的视频检测系统在近年来得到了飞速发展,视频检测系统是指对摄像头采集到的视频序列图像进行图像分析,将背景图像与前景目标分离,从而检测出视频中的运动目标,并对运动目标的轨迹进行跟踪,从而获取运动目标的各种信息,根据这些信息分析评估目标物体的行为。

由于传统检测用的是地感线圈,该线圈具有埋藏困难、易损坏等缺点,而利用智能视频检测技术中的虚拟线圈,可以很好地解决这个问题;同时,视频检测技术还具有以下几点优势。

①检测范围广、信息量大、功能性强。摄像机可以监控几十甚至几百米的范围,检测多个车道,根据用户的需求,在摄像机的视野内可设置多个检测区域;可以选择不同的检测功能,如车流量检测、车速检测等;线圈设置比较方便灵活。

②检测精度高、受外界影响小。通过一定的方法将前景目标提取出来,我们设置的检测线圈在实际中是不存在的,所以,它不会受到外界的影响。

③检测灵活性,安装调试和维护较方便。无需破坏路面,同时也不对路面交通造成任何干扰和影响,用户只需根据需要设置虚拟线圈,同时将参数设置提交给摄像机即可,检测器的位置易于调整和移动,并且可以通过网络进行远程设置,方便快捷。

④系统模块化。系统是一个独立的系统,可以嵌入到其他监控系统中,而且实时性较强。

鉴于以上几点,视频检测方法与其他方法相比,更具有优势,智能视频检测系统具有广阔的发展前景,同时具有非常好的现实意义,随着计算机技术和图像处理技术的发展,视频检测技术一定能够成为而且正在成为一种成熟的交通流量检测的关键技术。

3.2.3 基于视频的移动目标检测技术

运动目标检测研究的内容是现实世界中人们感兴趣的运动目标,研究对象是运动目标图像序列。从运动目标图像序列的获取到运动目标的检测的这个过程存在着许多影响运动目标检测的因素,导致运动目标检测的特殊性和复杂性。

由于运动目标所处的实际环境不同,运动目标检测将会受到来自不同因素的影响,它们会不同程度地影响进行运动目标检测的准确性和稳定性。获取运动图像序列的系统对不同环境的适应性也存在很大的挑战,这些影响系统性能的因素包括光线亮度的变化、背景景物的变动、阴影和物体间的重叠遮盖、前景目标与背景中景物相近、非静态背景、运动目标的高速运动等。

此外,由于运动图像序列是一类特殊的视频,在其中包含了大量的运动信息,如时空图像中的前景目标的梯度信息、深度信息和光流场,以及彩色图像中的彩色纹理特征、直方图信息,运动图像中的边缘信息等,这些信息都可以用来进行运动目标的检测,但是采用什么特征能够取得较好的效果,这不仅与方法本身有关,还和运动图像序列自身的特点有关,因此很难确定某个具有明显优势的特征来进行运动目标的检测。再加上运动目标检测处理的对象是大数据量的视频图像,其运算量相当大,如果不能选择合适的算法,很难达到实时处理的要求,而运动目标检测注重实时性,它的另一个重要指标是准确性,准确性的保证往往是在大量复杂运算和处理的基础上进行的,这就又造成了目标检测同时要求具有实时性和准确性的冲突,这又给运动目标的检测提出了挑战。

动态背景下检测运动目标比静态背景下的要复杂得多,这是因为摄像机会因为自身运动而产生的全局性质的运动导致增加视频图像序列的信息量。要解决这个困境,必须解决对由摄像机引起的全局运动进行估计并且再进行相应的补偿,最后再进行对运动目标物体的检测这个步骤。

通过对视频中感兴趣的移动目标(车辆)进行检测与识别,获取当前路网中车辆的运行参数,时间/空间占有率。在静态图像中,哪个目标是运动的,或者说哪部分图像是目标,并不容易确定,但是,在视频图像中,却可以通过分析前后多帧图像的变化来确定运动部分的图像或者目标。对于运动目标的检测,人们提出了许多方法。

经过长期的摸索,国际上已开发出了很多优秀的交通信息采集视频检测系统,其中最具竞争力的是美国ISS公司开发的基于运动检测的系统——AUTOSCOPE系统。同时,国外其他公司也做了深入的开发和研究工作,并推出了自己的系统。总体而言,这些公司开发的系统在功能上虽然还不及AUTOSCOPE系统,但是都已满足实际需要,是成熟的产品。这些成熟的系统所采用的方法主要有以下两种。

①基于帧间差的道路车辆检测算法 通过对采集到的相邻两图像帧作帧间差,一旦相邻帧之间的差值达到系统预设的触发阈值,就认为有目标进入检测区,继而发出触发信号。这种检测算法检测速度快,实现简单。但是需进行大量试验设定合适的触发阈值,通常在保证较高的目标触发率的同时会出现大量的误触发。

②基于背景差的道路车辆检测算法 通过对采集到的每一帧图像作背景差分,一旦差值达到系统预设阈值,就认为有目标进入检测区,继而发出触发信号。这种检测算法在运算速度方面同样具有优势。但是已有的背景算法很难解决局部背景突变的问题。这种视频车辆检测系统也存在较高的误触发率问题。

当前视频检测系统存在的问题主要体现在前端检测系统车辆目标检测算法上。

①背景差法的关键在于及时准确地获取和更新背景,但是已有的背景更新算法很难满足某些特殊场景,如在一些局部背景容易发生突变的环境下,由于难以准确地给出背景更新阈值,该类车辆检测系统在此时就会存在较高的误触发率和车辆误定位问题。

②帧间差法的关键在于由试验获得较为合适的车辆目标触发阈值。而由于存在天气突变、物体阴影等可能造成图像灰度变化的因素,触发阈值较为困难。实践中为了达到满足应用需要的正确触发率,往往不得不接受车辆检测系统存在的大量的虚触发率的存在。

由于上述两类基于运动(motion-based)的车辆目标检测算法存在难以克服的检测率方面的缺陷,而传统的解决方法采取的是简单的“鸵鸟策略”,即将排除底层检测误差,分辨正确触发与误触发的责任交给整个道路交通信息管理系统的上层模块甚至由人工判断,因此需要一种有一定鲁棒性的替代算法。

近年来发展较快的基于外观(appearances-based)的检测算法是一种依靠分析车辆固有的形态学特征来达到识别车辆目标的目的。实践证明,利用该方法具有较好的效果。本书研究的基于视频的移动目标检测,动态背景下若直接使用上述两种方法,必然引起较大的误触发和定位错误问题。拟采用基于车辆轮廓高度对称的方法来实现车辆信息的检测。

综合上述各种因素后,本书在全面分析当前研究方法的基础上,从多角度尝试并总结了各种视频处理方法的优缺点,提出基于视频的移动目标检测的具体研究思路,如图3.12所示。

图3.12 基于视频的移动目标检测思路

①视频预处理是指通过计算机图像技术对视频图像进行质量提升,通常包括图像灰度化、图像灰度修正、图像滤波、图像锐化及平滑、图像配准等。由于飞艇或热气球飞行时受气流等外界因素的影响,飞行容易偏离预订航线,造成影像发生旋转和比例尺变化。为了能够用帧差法从序列影像中提取运动目标,需要利用影像配准的方法统一影像序列的坐标系。

②运动检测是指通过对邻帧图像进行处理与分析,得出区域中的运动目标或运动区域。本部分中摄像机与目标车辆相对运动状态从处理方法上看,处理起来比较复杂,一般是采用突出目标或消除背景的思想检测运动目标。若采用消除背景的方法,则通常需要先进行帧间稳像及配准;若采用突出目标的方法,则需要在配准的前提下进行多帧能量积累和噪声抑制。

③目标识别是指在上述运动区域分析的基础上进行目标类型的划分,由于我们需要得到的是车辆信息数据,因此这一阶段需要完成的是将提取到的车辆数、运行速度等参数转化为系统所需要的路段流量、时间(空间)占有率等信息。

视频车辆检测系统的基本原理:基于计算机技术的图像分析系统在对每一帧图片进行数字化后(通常摄像机的视频图像是模拟信号,而计算机系统只能处理数字信号),会根据图片上每一个像素点的灰度和/或彩色信息,而赋予其一个值,如图3.13所示。这时,图像分析系统就能根据每一个像素点(或者一组像素点)的值在帧与帧交替时的变化情况来判断物体的移动轨迹或者运动情况。这就是视频车辆检测系统的基本原理。

图3.13 一帧图片被划分

视频检测的任务就是通过对视频图像的分析,通过实时图像与背景的对比,检测出影像内的车辆等移动目标。

在动态背景下检测运动目标比静态背景下要复杂得多,这是因为摄像机会因为自身运动而产生的全局性质的运动导致增加视频图像序列的信息量。要解决这个困境,必须解决对由摄像机引起的全局运动进行估计并且再进行相应的补偿,最后再对运动目标物体进行检测。

动态背景下的运动目标检测流程如图3.14所示。

图3.14 动态背景下的运

(1)影像配准 由于航拍视频时受气流等外界因素的影响,飞行器容易偏离预订航线,造成影像发生旋转和比例尺变化。为了能够使用帧差法从序列影像中提取运动目标,需要利用影像配准的方法统一影像序列的坐标系。首先基于局部熵的特征点选择法,在参考影像上提取出数量适中且分布均匀的特征点;然后以参考影像中提取的特征点 F i x y )为中心,构造一个 M × M 的影像模板 T i x y ),在待配准影像的搜索区域 S 中寻找相似度最高的子区域 S i+ 1 x y ),该区域的中心点作为参考影像特征点的同名点。为了保证配准的精度,需要去除被遮挡、移出视线或位于运动目标上的特征点对造成的伪同名点对。

判断伪同名点的距离约束原理如图3.15所示,若点 A 1 A 2 B 1 B 2 C 1 C 2 为正确同名点对,点 D 1 D 2 也为同名点对,但 D 1 A 1 B 1 C 1 的距离与 D 2 A 2 B 2 C 2 之间的距离不同,因此 D 1 D 2 就是伪同名点对,需将其去除。

图3.15 判断伪同名点的

在实际应用中,事先并不知道哪些点是正确的匹配,可以被用来判定其他点的匹配正确性。但是,由于误匹配的特征点毕竟是少数,所以采取的策略是若一个特征点到半数以上的其他特征点的距离满足距离约束,则该点是正确匹配,否则就作为误匹配点去除,在找出正确的同名点对的集合后,采用二次多项式的最小二乘法计算两个图像之间的变换系数,对于待配准的影像使用双线性内插进行重采样,从而得到最终的配准结果。

(2)运动区域检测 帧差法又叫时间差分法,它通过将视频序列图像中的当前帧与相邻帧所对应的像素点的灰度值进行比较,然后找到差异,进而检测出运动目标。在视频序列图像中,相邻的图像之间具有连续性,当视频图像中有运动目标时,由于运动目标的运动,相邻图像间的像素点灰度值差别就会较大;相反,当视频图像中没有运动目标时,相邻图像间的像素点灰度值差别就会较小,帧差法就是利用视频图像的这一特性进行检测的,它是运动目标检测的最简单方法。帧差法是先用相邻两帧做差分运算,然后做二值化处理,从而检测出运动目标。

帧差法的基本运算原理如图3.16所示。

图3.16 帧差法的基本运算原理

在图3.16中, f k x y )和 f k -1 x y )为连续的两帧图像,将两帧图像进行差分运算后得到差分图像 D k ,其计算公式如下。

D k =| f k -1 x y )- f k x y )|  (3.76)

然后对差分图像 D k 进行二值化,令二值化阈值为 T ,二值化后的差分图像为 M k x y ),其计算公式如下。

在二值化的差分图像中,取值为0的像素点代表变化较小或是无变化的区域,表示为背景区域;取值为255的像素点代表变化的区域,表示为运动目标。至此,大多数的运动目标的基本形状已经凸显出来。为了能够精确地提取出运动目标,通常还需要经过形态学处理,如膨胀、腐蚀、开运算、闭运算等,将断点进行连接或者将多余的部分去掉等,从而获得更加准确的检测结果。

(3)运动车辆的精准定位 传统的运动目标检测算法如帧差法、混合高斯模型法等,在固定摄像机拍摄的视频的运动目标检测上都展现了很好的性能。而基于飞艇的低空视频是在飞行平台上拍摄的图像序列,由于飞行平台及镜头的运动,所得图像不可避免地存在着不规则的背景运动,从而导致传统算法的优越性能不能体现。有学者提出了图像稳像技术和光流法向量技术相结合的方法来检测运动车辆,还有学者提出了采用KLT特征进行特征检测,获取特征控制点对,然后利用最小二乘法进行图像稳像,再利用帧差法检测出运动车辆。上述方法的缺点在于特征点不具备尺度、旋转不变性,从而图像匹配的精度不高。尺度、旋转不变的SIFT算子及其改进算法PCA-SIFT、GLOH和边缘算子的提出,提供了解决上述算法不足的理论基础。提出了基于尺度、旋转不变的边缘算子的图像稳像技术和光流法向量技术相结合的方法来检测低空视频中的运动车辆。本文采用了算法复杂度低、效率高的边缘特征检测算子。

提出的运动车辆检测方法由两部分组成,即基于特征稳像的视频图像稳像和基于光流法向量的运动车辆检测。

假设视频的当前帧在空间和时间上的表示函数为 I i x y ),( x y )代表像素点的空间位置, i 代表当前帧, I 代表位于( x y )的像素点在 i 帧的亮度,则这个函数应该满足:

I i+ 1 x y )= I i x - ζ y - η )  (3.78)

即可以将 i +1帧看成是 i 帧的一个位移, D =( E G )就称为偏移量。如果像素点的亮度由于目标折射光线产生了非正常亮度变化,或者像素点的亮度被噪声所干扰,则式(3.78)可以改写成:

I i+ 1 x y )= I i x - ζ y - η )+ n i x y )  (3.79)

基于最小均方误差准则:

找到 I i+ 1 I i 两帧之间的一个几何变换Γ i +1, i ,使得Γ i +1, i x y )=( x - ζ y - η )。

(4)运动目标检测 光流的约束方程为:

将该式改写成矩阵形式,并进一步简化得到:

I x I y ][ uv T =-[ I x I y T I i (3.82)

i 帧的法向分量为:

式中 Γ ij ——第 i 帧和第 j 帧的全局运动参数向量。

根据复合函数求导法则 ,则(3.84)式可以变形为:

可以得到法向量:

由式(3.86)可知, w 和幅值| w |大,说明有运动目标;幅值小,说明没有运动目标。

此处采用的边缘检测算子是SIFT算子的一种改进。边缘检测方法的整体思想和SIFT类似,但在实现过程中采用了与SIFT不同的方法。边缘检测算子与SIFT算子的关键技术对比见表3.3。

表3.3 边缘检测算子与SIFT算子的关键技术对比

经计算机对实验视频的处理发现,基于SURF算子的稳像算法在精度和基于SIFT算子的稳像算法的精度差不多的情况下,其速度快了1倍。

图像处理过程如图3.17所示。

图3.17 图像处理过程

3.2.4 基于Camshift算法的车辆跟踪方法

目标跟踪就是在运动目标检测的基础上,根据目标的有效特征,通过一些匹配算法,在序列图像上找出与目标模板最相似的目标位置,将目标进行定位。一般目标跟踪有单目标只跟踪一个目标和多目标跟踪多个目标。

在车辆检测中,车辆跟踪不仅可以提供目标的运动轨迹和准确位置,为下一步目标行为分析和行为理解提供可靠的数据来源,同时,为目标检测提供帮助,从而形成一个良性循环。

车辆目标作为刚体跟踪目标,相比行人等非刚体跟踪目标,不需要考虑目标形状的变化,在跟踪上的复杂程度有所降低,但目前针对高速公路的车辆跟踪仍有以下难点需要解决。

(1)相似目标的排除 在实际的跟踪过程中,高速公路场景中容易出现相似类型、颜色的车辆。需要合理利用一些先验知识(如车辆速度)排除相似目标的干扰,实现车辆目标的正确跟踪。

(2)场景干扰的消除 在车辆目标跟踪中会出现由于场景中物体运动(如树叶晃动)、光线变化和摄像机抖动等引起的干扰,对于干扰的虚假目标,需要在跟踪之前进行消除。

(3)跟踪过程中的遮挡问题 在高速公路场景中,在一定时间内往往存在多个运动车辆目标,车辆目标间容易出现相互遮挡的情况,如果依赖目标的单个特征进行跟踪,很容易丢失跟踪目标。

(4)实时性与准确性的平衡 高速公路中车辆的运动速度较快,因此需要跟踪算法具有较高的运算效率以实现实时跟踪,但目前实时性较好的算法往往跟踪的准确性较低。而跟踪准确性较高的算法往往通过选择多个跟踪特征或结合几种跟踪方法来提高准确性,算法的实时性能较低。

Camshift算法是一个计算局部最优解的实用算法,基本原理是将跟踪车辆的色彩信息作为特征,将这些信息计算处理后投影到下一帧图像中,计算出这幅图像中的运动车辆,用这幅图像作为当前图像,分析下一帧图像,重复这个过程就可以实现对车辆的连续跟踪。在每次搜寻前将搜寻窗口的初始值手工设置为运动车辆当前的位置和大小,由于搜寻窗口就在运动车辆可能出现的区域附近,搜索时就可以节省搜寻时间,使算法具有了良好的实时性。同时,Camshift算法是通过颜色匹配进行的,由于车辆在运动过程中颜色信息变化较小,所以算法具有良好的鲁棒性。

(1)建立颜色概率模型 Camshift算法采用的车辆特征是车辆颜色直方图,并通过颜色直方图转换到直方图的反向投影图像,也就是颜色概率分布图像。该概率分布图像中的每个像素值表示输入像素属于使用的直方图的概率。

定义 n 个像素点的位置为{ x i }, i =1,…, n ,直方图为{ q u }, u =1,…, m c x i )表示像素点 x i 的直方图索引,那么,直方图为:

为了方便计算,提高计算处理速度,可将直方图量化到区间[0,255]范围内,这样就可以用一个Byte来表示。利用式(3.87)将直方图的尺度从[0,max( q )]量化到[0,255]内。

选定初始搜索窗口之后,首先将车辆区域由RGB彩色空间转换为HSV空间,空间转换方法在此处不做具体介绍。因为色调(Hue)分量可以独立地表示各种颜色信息,在此通过车辆区域的色调分量直方图计算出各个色度值的概率分布,用图像上每一点的像素值所对应的车辆区域像素的概率值代替该点像素值,得到概率投影图,具体步骤如下。

①将图像从RGB格式转换到HSV格式,提取HSV空间中的色调分量。

②由色调分量的直方图得到其概率分布图,这里的概率为色调分量出现的次数。这里要按公式(3.88)将色调分量直方图量化到区间[0,255]。

③根据获得的颜色直方图将视频图像转换为车辆颜色概率分布图像,即车辆颜色投影图。

(2)Camshift算法的基本流程 建立被跟踪车辆的颜色概率模型后,可将视频图像转化为颜色概率分布图,然后在第一帧图像初始化跟踪车辆矩形搜索窗口。对以后的每一帧图像,Camshift能够自动调节搜索窗口的大小和位置,定位被跟踪车辆的中心和大小,并且用当前帧定位的结果预测下一帧图像中车辆的中心和大小。对离散的二维概率分布图,搜索窗口的重心位置可以由零阶和一阶矩确定,其算法流程如下。

①在颜色概率分布图中选取大小为 S 的搜索窗W。

②计算零阶矩。

计算 x y 的一阶矩:

式中, I x y )是坐标为( x y )的像素值, x y 的变化范围为搜索窗口的范围。

③计算搜索窗口重心为( x c y c )。

④重新设置搜索窗的大小, S 为上面搜索窗口区域内颜色概率分布的函数。

⑤重复②~④直到收敛(重心的变化小于给定的阈值)。

通过计算二阶矩,可得到被跟踪车辆区域的长轴、短轴和方向角。二阶矩为:

目标长轴的方向角为:

在图像中,运动车辆区域长轴和短轴的长度可以通过以下公式来计算。

当用算法对特定颜色的车辆进行跟踪时,不必计算每帧图像所有像素点的颜色概率分布,只需计算比当前搜索窗口大一些的区域内的像素点的颜色概率分布,这样可节省很大的计算量。当我们对连续的视频图像进行处理时,就形成了连续的跟踪。

Camshift算法的跟踪步骤可以总结如下。

①读取一帧视频图像,转换到HSV颜色模型,提取HSV三通道图像的色调通道。

②选择车辆区域,计算归一化概率分布图,并得到整个视频图像的概率投影图。

③在概率投影图上,根据车辆区域的大小和位置初始化搜索窗的大小和位置。其中搜索窗口比车辆区窗口稍大即可。

④计算搜索窗重心位置,并移动搜索窗口到重心位置。

⑤判断中心位置是否收敛或者迭代是否达到规定次数,如果不成立则转向⑥,否则转向⑦。

⑥返回④,根据新的中心位置继续计算重心位置。

⑦转向下一帧,并根据前一帧中计算的零阶矩和重心位置确定当前帧的搜索窗口。当前帧的搜索窗口中心位于重心位置,利用零阶矩得到搜索窗口的大小。转向③。 nHa1rM7grvvT2TWInx0o8KkCa8bUDnLWEvRLY0OQ4UqnagYnDWnoGvFR6cVt7Dbp

点击中间区域
呼出菜单
上一章
目录
下一章
×