基于视频的交叉路口车辆排队长度检测方法研究

2018-07-05 05:59杨良义
关键词:排队摄像机标定

杨良义,谢 飞,陈 涛

(1.重庆西部汽车试验场管理有限公司, 重庆 401122;2.中国汽车工程研究院股份有限公司, 重庆 401122)

随着社会的快速发展,交通问题已成为制约城市发展的关键因素之一。为解决道路交通问题,智能交通系统已成为新的研究热点,其中车辆排队长度检测已成为关键技术之一。在车辆排队长度检测中,与传统的车辆检测方法相比,基于视频图像处理方法的车辆检测技术可以获取更多的信息,对车辆检测和跟踪也更加方便[1]。此外,在城市交叉路口,由于受天气、人流、光照等多种因素的干扰,且车辆排队存在相互遮挡的情况,很难从整体图像中将单个车辆分割出来,所以一般不采用图像识别中的模型识别方法[2]。

本文采用一种基于单目视觉识别的车辆排队检测技术,该技术包括车辆移动检测、车辆存在检测、车辆排队检测及长度计算3个部分。车辆移动检测采用3帧差检测方法,具有辨识精度高、运算相对简单等优势。车辆存在检测采用基于数学形态学的边缘检测方法,以解决传统检测对噪声过敏的问题,该方法既能有效地滤除噪声,又能相对完整地保留图像中细节信息,可较好地实现检测要求。对于车辆排队检测与长度计算,借助移动检测窗算法可辨识出车辆排队相关信息,再采用灭点原理和摄像机参数标定方法获取摄像机内外参数,最后基于小孔成像原理,按照车辆队列在图像坐标与世界坐标的转换关系,就可实现从像素距离到物理距离的转换。实验结果表明:该方法能有效提高了检测的准确性,取得了令人满意的检测效果。

1 车辆排队长度检测

本文采用移动检测窗法对车辆排队长度进行检测,其中每个窗口的检测又分为车辆移动检测和车辆存在检测。

1.1 车辆移动检测

目前在车辆移动中常用的检测方法大体有3种[3]。

1) 背景减除方法

背景减除方法是一种对当前图像与背景图像进行差分处理以检测运动区域的技术,其优点在于能快速、准确地检测出运动物体,因其只需要将当前帧图像与固定背景帧图像相减,所以在获得的差分图像中只含有当前帧中的运动物体,因此检测获得的运动物体位置很准确。然而,该算法的前提是在图像中只存在所要检测的运动物体,而不存在其他运动物体。显然,自然环境存在大量运动的物体,它们的存在会严重干扰图像处理的准确性,所以背景减除法的不足之处是很容易受环境的影响,在非受控环境下需要加入背景图像更新机制,即必须不断地更换参考帧,且不适用于摄像头运动或者背景灰度变化很大的情况。

2) 时间差分方法

时间差分法又称相邻帧差法,该方法基于像素的时间差分,是一种在连续的图像序列中采用阈值化以提取图像中运动区域的方法。其优势在于对动态环境有较强的自适应性,其缺陷是特征点的搜集不完全,很容易在运动实体内部产生空洞现象。常见的方法有2帧差法、3帧差法,其检测运动物体的流程如图1所示。

图1 时间差分法检测流程

3) 光流方法

该方法借助运动目标的光流特性提取和跟踪运动目标。代表性的算法是8参数匹配法,其最大优势是可获取运动物体的细节运动信息,以便后续处理中运动信息的估计与跟踪。值得注意的是,该方法运算复杂、计算量大,很少用于对实时性要求高的视频检测领域。其特点是不考虑特征匹配问题,在实际应用中可减少难度。因该方法涉及偏微分运算,且抗噪性能比较差,很少在视频检测领域应用。

除以上方法外,还有运动向量检测方法,该方法能消除背景中的振动像素,其缺陷是难以精确地辨识出运动对象。

经过对比,时间差分方法可满足交叉路口车辆排队长度检测需求,因此本文采用3帧时间差分方法对车辆移动进行检测。其原理是在3帧连续的图像中,对1、2帧以及2、3帧分别进行差分运算。在运算过程中,因未变化区域与运动变化区域服从不同的统计规律,可设置变化检测门限,对差分图像分别做运动变化检测和连通域识别。然后将获得的图像做去噪和空域识别,并进行相与运算[4]。最后基于物体自身的灰度信息恢复真正的运动图像。该方法运算相对简单,比较适用于交叉路口车辆排队长度的实时检测。

1.2 车辆存在检测

边缘是图像最基本的特征,是图像分割及图像理解的重要依据。由于图像边缘常被噪声干扰,鉴于噪声和边缘都属于图像高频信号,在滤除噪声的同时,也破坏了图像的边缘,因此传统经典的边缘检测方法一般利用梯度极大值或2阶导数过零值来检测图像边缘,但其算子都对噪声敏感,在处理含噪声图像时效果不太理想[5]。

本文采用一种基于数学形态学的边缘检测方法,其基本思想是采用具有一定形态的结构元素去量度、提取图像中对应的形状以识别目标。本质上就是物体形状集合与结构元素之间的相互作用,因其对边缘方向不敏感,可在很大程度上抑制噪声,从而检测出真正的边缘。该方法既能有效地滤除噪声,又能保留图像中原有的细节信息,因此具有较好的边缘检测效果[6]。

1.3 检测过程

本文采用移动检测窗算法[7]进行车辆排队检测。当1个检测窗从队头向队尾移动时,伸缩窗的长度可设置为视频图像中1辆车的长度,由于距离关系,可适度调节伸缩窗的长度。实验结果证明:该调节对检测结果并无太大的影响。

定义:Km为检测窗内运动像素数与像素总数的比值;Ke为检测窗内边缘像素数与像素总数的比值;Yn为窗口标号;Tm和Te为分别为Km和Ke的阈值。

计算当前检测窗Km、Ke,在T帧连续图像中,若Km大于阈值Tm或者Km小于阈值Tm且Ke小于阈值Te,则Yn(t)=Yn(t-T)-1;在T帧连续图像中,若Km小于阈值Tm且Ke大于阈值Te,则Yn(t)=Yn(t-T)+1,否则Yn(t)=Yn(t-T)。其中,Tm可取为0.1, 第1个检测窗的Te取为0.1, 下一个检测窗的Te是上一个的1.1倍,但Te值不得超过0.5,T可在15~20取值。

2 车辆排队长度计算方法

2.1 摄像机参数标定

摄像机标定包括摄像机集合模型设置与摄像机标定2个步骤。摄像机集合模型决定了三维空间里的点和二维图像中点的相互对应关系,即建立一个能反映摄像机获取图像的集合模型,通过建立集合模型求解出摄像机参数。摄像机参数标定一般采用灭点标定法。

如图2所示,在透视投影中,一束平行于投影面的平行线的投影可以保持平行,而不平行于投影面的平行线的投影会聚集到一个点,这个点称为灭点(vanishing point)。灭点可以看作是无限远处的一点在投影面上的投影。

以下根据灭点的特征属性标定摄像机内外参数:

1) 平行于同一平面(非成像平面)的直线形成的所有灭点共线;

2) 相机光心与灭点的连线与形成该灭点的空间平行线平行;

3) 空间3条两两正交的直线之间形成的灭点其相关的单位向量也两两正交;

4) 空间3条两两相交的直线形成的灭点组成的三角形,其重心为相机光轴与成像平面的交点;

5) 灭点的坐标变换与平移矩阵无关。

确定灭点有多种方法: Barnard[8]在1983年首先提出了基于高斯球的灭点表达方法;E.Lutton等[9]在此基础上通过Hough变换确定灭点;加拿大的John C H等[10]通过两幅影像中灭点的不变特性将真灭点与自然交叉点区分开来。

由于交通路面存在多种特殊线标,如斑马线、车道线等,这些线标一般为平行且长度一定的线段,因此本文采用基于平行线灭点原理的方法标定摄像机参数,通过路面原有且相互平行的车道线以标定摄像机参数。

如图3所示,空间内两对平行线,其中AB∥CD,AD∥BC,O为摄像机光心,P为投影中心,|OP|长度为相机焦距f。多边形abcd为空间中平行四边形ABCD的成像图形,两平行线ad和bc、ab和dc在图像坐标系下分别相交于Fu、Fv两点,根据灭点原理可知Fu、Fv为2个灭点。过P点作直线FuFv的垂线PPuv,垂足为Puv,连接O与Puv。根据灭点属性2可得OFu⊥OFv,由于OP垂直于成像平面且PPuv⊥FuFv,可以得到OPuv⊥FuFv。

图3 平行线灭点形成示意图

由勾股定理可知,在△OPPuv有

因为三角形△OPPuv与△OFuFv相似,由此可以计算出OPuv:

从上述图像信息中可以得到点P、Fu、Fv和Puv im的坐标及|FvPuv|、|PuvFu|、|PvPuv|的长度,因此可以计算得到相机的焦距。

2.2 车辆排队长度的计算方法

根据成像原理,世界坐标与像素坐标转换为摄像机的旋转矩阵。考虑实际摄像机安装的特殊性,摄像机安装光轴平行于车道线,摄像机无旋转角和偏斜角,只存在倾斜角。因此,世界坐标系中的距离到像素坐标中的距离可以根据小孔成像原理计算得到。图4为摄像机成像示意图。

图4中:O为摄像机光心所在位置;P为光心在图像平面的投影;摄像机焦距f=|OP|;红色带箭头线表示光轴方向;h为摄像机安装高度;C为摄像机光心在车道平面的投影;A点为车队长度检测起始点;A′为车道起始位置在图像中的成像点;B点为车队长度检测起始点;B′为车道起始位置在图像中的成像点。

根据上述图像信息可以获取A′、B′、P的像素坐标,进而将PA′、PB′像素距离转换为实际距离,在△OA′B′中可以得到角∠A′OB′(P点在A′、B′之间的情况下):

∠A′OB′=α1+α2=

(1)

(2)

在△OCA和△OCB中可以得到:

(3)

(4)

又因有式(5)成立,即

|AB|=|CB|-|CA|=

tan(α1+α2+β)·h-|CA|

(5)

再将式(2)~(4)代入式(5)中,可以得到式(6)。

|AB|=tan(α1+α2+β)·h-|CA|=

(6)

式(6)中:f根据摄像机标定结果得到;|PA′|、|PB′|可以根据图像像素坐标位置换算得到;|CA|可以根据实际测量获得;h为摄像机光心距车道平面的高度。

3 实验测试及结果

实验场地为中国汽车工程研究院园区内的某一个交叉路口,选择其中某个路段测试其摄像机检测效果。车辆排队长度检测中最重要的检测目标为车头与车尾,为此定义车道停车线为车队的起始位置,如图5所示。鉴于测试条件限制,在此仅选择一辆车辆进行车辆排队测试,并定义该车辆为车队的尾车,于是检测出该车距停车线的位置即可检测出车队长度。

图5 车辆排队长度检测

实验所用的视频源为十字路口的监控画面,该摄像机安装高度为6 m,摄像机光心到车道停车线的实际距离为28.7 m,经过前期的摄像机标定,测得该摄像机焦距为11.59 mm。车辆从路口远处向摄像机处不断行驶,行驶过程中记录车辆停靠位置与停车线的距离,多次测量记录实际车辆排队长度。再基于OpenCV图像处理平台,通过图像处理技术识别车辆位置,并利用本文所述的车辆排队长度计算方法计算出车辆到停车线的距离,从而获得车辆排队长度。

多次测量得到的检测结果与实际结果对比如表1所示。

表1 实验测试与实际结果对比

由图6可知:测量绝对误差随着实际距离增大而增大,究其原因在于:摄像机远处端像素距离所对应的实际距离逐渐增大,一般而言,实际测量距离越远,图像识别误差越大。因此,图6所示结果符合实际情况。

表1的实测数据也验证了车辆排队长度检测方法所得到的测量结果是在允许误差范围内的。

图6 实际车队长度与检测结果对比

4 结束语

借助3帧差法和形态学边缘检测法,首先对图像中的车辆排队信息进行了有效提取,然后采用基于灭点原理的摄像机标定方法获取了摄像机参数,再利用小孔成像原理实现了对车辆排队长度的计算。经过实验验证,本文算法的计算误差均在允许范围之内。实验研究结果表明:本文提出的检测方法是合理与可行的。

[1] 杨德亮,辛乐,陈阳舟,等.基于复式伸缩窗的车辆排队与消散快速检测算法[J].公路交通科技,2011,28(4):105-111.

[2] 沈振乾,苗长云,张芳.基于视觉的路口车辆排队长度检测方法[J].计算机工程,2014,40(4):218-222.

[3] 项昀.基于移动检测的运动物体识别技术的研究[D].北京:北京交通大学,2007.

[4] 郝丽敏.基于数字图像处理的智能交通控制系统的研究[D].武汉:武汉理工大学,2012.

[5] 曾俊.图像边缘检测技术及其应用研究[D].武汉:华中科技大学,2011.

[6] 邓彩霞,王贵彬,杨鑫蕊.改进的抗噪形态学边缘检测算法[J].数据采集与处理,2013,28(6):739-745.

[7] 杨永辉,黄磊,刘昌平.基于视频分析的车辆排队长度检测[J].计算机应用研究,2011,28(3):1037-1041.

[8] BAMARD S.Interpreting perspective images[J].Artificial Intelligence,1983,21:435-462.

[9] LUTTON E,MAITRE H,LOPEZ-KRABE J.Contribution to the determination of vanishing points using hough transform[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1994,16(4):430 -438.

[10] LEUNG J C,NCLEAN H.Vanishing Point Matching[C]//Image Processing 1996.Proceedings International Conference.Lausanne:[s.n.],1996.

猜你喜欢
排队摄像机标定
怎样排队
使用朗仁H6 Pro标定北汽绅宝转向角传感器
巧排队列
三角龙排队
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
摄像机低照成像的前世今生
新安讯士Q6155-E PTZ摄像机
船载高精度星敏感器安装角的标定
如何消除和缓解“摄像机恐惧症”
基于Harris-张正友平面标定法的摄像机标定算法