对于白天的车辆监控国内外都已经做了大量的研究工作,然而交通监控应该在不同的环境、天气和光照条件下都能正常有效地工作,因此要做到完全的实时监控,就需要完善夜间道路的监控系统。在车辆监控系统中,夜间车辆检测一直是个难题。而由于技术上的难点,目前国内外在这方面的研究很少。文献[1]认为晚上情况下车头灯可以作为车辆最明显的特征,并提取出车头灯作为车辆特征,再根据同一对车头灯之间的关系分离出一辆车的两个车头灯,以此来进行车流量的检测。但是这种方法,首先是实时性较差;另外系统过于依赖实际道路的坐标定标,只适合单车道,路灯干扰较小的地方,更致命的是它并没有利用跟踪方法来配对车头灯,只是简单按照两灯关系来配对。因此适合车辆直行的情况,无法适合车辆拐弯的路段。文献[2]采用SVM 分类器来区分头灯的灯光和车辆,其缺点是:需要大量的训练样本;容易丢失一小部分车辆的区域或者把非车辆区域包括进来等误判;只能检测出大部分的车辆区域,检测出来的区域不够准确。
晚上的环境和白天的环境的区别在于:(1)光线不足,对比度比较差,即使有充足的路灯情况下,车体的轮廓也难以达到白天的清晰度。(2)车头灯和车头灯所发出的光线成为最明显的特征,同时也成为了最大的干扰源。因此在晚上的情况下,不能单纯地用帧差分或背景差分进行车辆检测。如下图1 所示:当进行帧差分的时候,由于车辆灯光的影响,车辆会连成一片。
(a) (b) (c)差分图像图1 两帧图像差分
既然车头灯成为了晚上车辆最明显的标志,那为何不利用车头灯作为车辆的特征标志,并进行车辆跟踪。在晚上的情况下,车头灯所发出的灯光也很明显,但并不能成为车辆的标志,这是因为各种车所发出的灯光形状有很大的差异,没有明显的特征。所以我们算法的目标是尽量保留车头灯,并去掉灯光的影响。
2 基于WTH 变换和颜色信息检测车头灯
通过观察,可以知道车头灯往往是图像的最亮区域,也就相当也图像中的峰值。而形态学中的高帽变换(Top-Hat)就具有很好的检测峰值和波谷的性能。
白高帽(WTH)变换是检测峰值变换,其定义如下:
WTH(f)= f-(fog)
其中f 为图像,g 为结构元素,f o g 表示用结构元素g(灰值图像)对灰值图像f 做开运算。因为开运算是一种非扩展运算,处理过程处在原始图像的下方,故WTH (f) 总是非负的。
车头灯和车头灯所发出的灯光可以看作图像中的峰值。只要我们利用WTH 变换,并选取适当的结构元素,比结构元素小的峰值都能保留,而比结构元素大的峰值都能排除掉。最终结果就能够保留车头灯,而排除掉灯光影响。我们选取一个适当的圆形扁平结构算子对原始图像进行白高帽变换,然后进行二值化。就可以得到只包含车头灯的二值化图像,但是影响形态学运算的一个最大问题就是速度问题,因为形态学运算相当于一个二维卷积运算。如果不进行特殊处理,就难以达到实时处理的要求。二值化膨胀、腐蚀有以下性质:
A⊕(B⊕C)=(A⊕B)⊕C
AΘ(B⊕C)=(AΘB)ΘC
这种关系可以推广到nB 情况
AΘnB =( AΘB)LLΘB (4)
14 2 43
n-1
由于我们采用的是圆形扁平结构元素,所以我们也可以象式(2)、 (3)一样应用到灰度膨胀、腐蚀中。这样就可以大大减少运算量。假设我们结构元素A 的尺度为17×17 大小,结构元素B 的尺度大小为3×3。那么A 的半径是B 的半径8 倍:即A =8B ,那么我们就有下式:Θ=SΘ8B =( AΘB)LLΘB
SA 14 2 43
7
如果直接运用A 结果元素的话,需要17×17=289 次平移和交/并运算,如果通过采用8B 结构元素的话,需要的运算量为8×(3×3)=72 次运算。运算量可以获得极大的提高,这样就可以满足我们的实时性要求。
经过上面处理后虽然可以解决大部分问题,但还没有很好地解决其它灯光干扰。重要存在一下一些灯光的干扰:
1. (1)路灯的干扰;
2. (2)许多商业广告牌干扰;
3. (3)由于有其它光源的照射,道路标志牌、道路斑马线、车体本身会产生反光干扰;
4. (4)有些车辆(如警车、出租车)车顶上面的标志灯、车辆的转向灯等等都会带来很大干扰。
排除这些干扰也是一个关键的问题。通过观察我们可以发现一下几个特点:
(1)车头灯所发出的灯光基本呈白色,路灯的灯光大部分偏黄色,而路边的一些灯光(比如广告牌的霓虹灯)和一些车辆的标志灯大多数都是具有一定的色彩。
(2)虽然各种车的车头灯形状各不相同,但是照射出来的形状基本接近圆形。所以本文从两方面入手排除干扰:即车头灯的颜色特征和形状特征。我们首先利用颜色信息排
除非白色的灯光干扰。
光强度I定义为:
I = 0.30 0.59 0.11R G B++ (5)
色彩饱和度为:
S 1=− 3[min( , , )]RGB RG B ++ (6)
R,G,B 分别为象素的三个不同颜色通道,判断某象素为白色的条件是:
I 1&T S> 2T< (7)
T1, T2 由具体实际系统和经验值所定。然后利用车头灯形状特征排除干扰。定义形状因子SF: 4πA
1
SF=−D2 (8)
其中A 是二值化后连通域的面积,D 为连通域的直径。SF越接近0, 连通域的形状越接近圆形。
定义长宽比因子:
LF=连通域的高度(9) 连通域的长度
如果满足下式:
SF<0.4 & &0.5 <LF <2 (10)
则认为该连通域属于车头灯。
3 目标的跟踪
运动目标的跟踪是一个复杂的过程。它首先需要对新的运动目标进行初始化,得到运动目标的初始化运动参数,同时还要对已经初始化的运动目标在下一帧中搜索它的最佳匹配。
