王珦磊1,唐加山2
(1. 南京邮电大学 通信与信息工程学院,江苏 南京 210003;2. 南京邮电大学 理学院,江苏 南京 210003)
摘要:针对视频内容分析中的物体检测问题,提出一种新的基于YUV颜色空间的阴影消除方法,相比其他基于YUV颜色空间阴影检测方法,该方法为提高检测精度,使用自适应的动态门限。首先,在RGB颜色空间中使用背景差,得到仅包含目标物体及其阴影的图像。然后在YUV颜色空间中对此图像的色度进行统计分析,搜索出色度变化缓慢的区间,再针对每个色度区间确定对应的亮度区间,获得估计门限。最后,利用以上门限检测并消除阴影。实验结果表明,该方法对不同光照情况下的物体阴影都有很好的消除效果。
关键词:阴影检测;YUV;自适应
0引言
在计算机视觉中,检测运动物体是非常重要的一个部分。运动物体的检测一般步骤如下:先从视频帧中鉴定出前景像素,再由前景像素提取出运动物体[1]。然而,运动物体的投影会使检测算法难以实现,导致前景物体形状和颜色的失真,对运动物体的提取造成干扰。因此,动态物体检测中很重要的一个环节是阴影消除。
阴影检测算法一直被广泛研究,如:基于纹理分析的检测方法[23],使用亮度来判断可能的阴影区域,再结合纹理特征将阴影分割出来;基于物理特征的检测方法[4],先对阴影像素进行建模,再用这个模型从预选区域中检测阴影;基于几何的检测方法[5],根据光源、物体形状、地面来预测阴影的大小、形状和方向;基于色彩空间的检测方法[6],选取一个新的色彩空间,与RGB色彩空间相比,它的亮度和色度间区别更明显。
本文使用基于YUV色彩空间的阴影检测方法,同时阴影检测门限的阈值是根据前景像素的统计结果估计的,因此算法对不同光照情况下的物体阴影检测都有很好的鲁棒性。
1候选区域
候选区域是指图像中包含目标物体及其阴影的部分,一般通过背景差分来获得。步骤如下:先将前景图像和背景图像的RGB分量进行差分,再将差分后的彩色图像转换成灰度图像,针对此灰度图像,设置平均灰度值为阈值,按照该阈值进行划分,大于该阈值的为候选区域,小于阈值的视为背景。再多次进行膨胀、腐蚀操作,消除候选区域中的干扰噪点,具体操作详见文献[7]。
2基于YUV色彩空间的阴影模型
YUV色彩空间和RGB色彩空间关系如下[8]:
在YUV色彩空间中,像素点的亮度分量y和色度分量u、v相互独立。投射阴影区域在YUV色彩空间有如下特征[9]:
(1)投射阴影区域中像素的亮度低于背景像素和物体区域像素的亮度。
(2)投射阴影区域中像素的色度与背景像素色度相比几乎相等。
根据以上结论,确定阴影像素的算法如下:
针对每个候选区域的像素,将符合如下式(1)条件的像素点判断为阴影像素点,其中yF和yB分别指前景和背景的y分量,vF和vB分别指前景和背景的v分量,yMin、yMax、vMin、vMax分别指对应的上下限门限值。
下文将对阈值估计给出详细步骤。
3阈值分析
3.1阴影区域特征分析
为研究阈值与候选区域的统计关系,选取如图1所示
图1输入图像及其预处理的前景图像图1(a)和背景图像图1(b)。先进行背景差分,获得候选区域的前景图像图1(c)和背景图像图1(d),对阴影进行手动划分得到阴影区域的前景图像图1(e)和背景图像图1(f)。
将前景图像(e)中每个像素点的亮度yF和色度vF,与背景图像(f)中的亮度yB和色度vB进行差分,得到差值Δy、Δv。亮度差和色度差分布如图2(a),其中横轴是Δy,纵轴是Δv。忽略干扰噪点,对密集区域进行分析,密集区域图2(b)显示像素点的亮度差Δv分布不均匀,集中在若干个中值上,并且不同的中值对应色度差Δy分布范围也不相同。因此可以将阴影区域的Δy-Δv分布看作是若干个分布块的集合,如图2(c)。
3.2根据候选区域确定阈值
本节将通过候选区域的统计特性估计出上文中每个分布块的阈值。
3.2.1确定色度差Δv的阈值
将候选区域前景图像图1(c)和背景图像图1(d)的色度分量v相差,差值Δv进行排序,得到图3(a),图3(b)标出了其中的平缓部分。对比阴影区域分布图2(c)和图3(b),被标注的区域在纵轴上的范围近似一致,图3(b)上的平缓部分表明在该范围上有大量像素点Δv分布趋于一致,符合阴影区域的特征。
3.2.2确定亮度差Δy的阈值
针对图3(b)中每个平缓区域,从候选区域中搜索对应像素点,获取每个像素点亮度差Δy,再进行排序,图4(a)是候选区域中符合条件Δv∈[4.731 7, 5.288 6]的像素点的Δy排序后的分布图,标出平缓区域如图4(b),对比阴影区域分布图2(c),平缓区域的Δy区间与阴影像素图4候选区域亮度差分布的区间相吻合。
3.3验证特征普遍性
为验证以上特征的普遍性,使用另一组实验图像进行图6自适应阴影消除算法流程图阈值分析,输入图像如图5,图5(a)是前景图像,图5(b)是背景图像,图5(c)表示候选区域,图5(d)是阴影区域的Δy-Δv分布图。分析候选区域,结果如下:图5(e)是候选区域Δv排序后的分布图,该分布图平缓区域与图5(d)中的密集区域非常吻合。将候选区域中符合条件Δv∈[-0.325,0.430]的像素点的Δy值进行排序,得到图5(f),图5(f)平缓区域的Δy范围是[0,30.82],也与阴影分布图5(d)相吻合。
4自适应阴影消除算法
根据上节的分析结果,设计算法如下:先获得候选区域,算法步骤见第1节,然后将候选区域的前景图像和背景图像从RGB色彩空间转换到YUV色彩空间,再做背景差,获得亮度差矩阵ΔY和色度差矩阵ΔV。
阴影区域的色度差Δv一般在[0,10]范围内,取[-5,20]作为考察范围,实际试验中,超出该范围的阴影点很少,可以忽略。对候选区域内所有属于[-5,20]区间的色度差Δv排序,搜索出其中变化较小的区域,本文算法使用条件(2)进行判断,Δv(i)是排序后第i个色度差Δv,N是符合条件Δv∈[-5,20]的像素点个数,a和b是常数,通过多次取值调试后确定a=0.001,b=0.003 5。
Δv(i)-Δv(i-a×N)
针对每一个Δv区间,从候选区域中搜索出符合条件的像素点,再对这些像素点的亮度差Δy进行排序,与获取Δv区间类似,搜索出所有变化较小的区域,每个Δv区间可能会对应多个Δy区间。将所有搜索出的Δy-Δv区间作为估计门限。
依据上文得到的估计门限进行阴影检测,实现多阈值的阴影消除。图6为算法流程图。
5实验结果和分析
实验用的部分数据来自图像处理数据库,还有一部分是在实验室中拍摄得到的。算法是在微软Windows平台下,使用matlab编写的。以下图7是使用本文算法的输出结果。
6结论
本文采用一种基于YUV颜色空间的自适应阴影消除算法,该算法对阴影的门限进行动态估计。实验结果表明,该算法对不同光照情况下的图像都能有效地检测和消除阴影,具有良好的鲁棒性。
参考文献
[1] 刘国栋,范九伦.彩色视频运动目标
自适应在线聚类提取算法[J].电子技术应用,2014,40(5):132135.
[2] LEONE A, DISTANTE C. Shadow detection for moving objects based on texture analysis[J]. Pattern Recognit, 2007, 40, (4): 12221233.
[3] 朱敏琛,王伟智.融合线性特征的局部纹理运动车辆阴影检测[J].微型机与应用,2013,32(14):4446,50.
[4] NADIMI S, BHANU B. Physical models for moving shadow and object detection in video[J]. IEEE Trans. Pattern Anal. Mach. Intell, 2004, 26,(8): 10791087.
[5] ZHANG W, FANG X Z, XU Y. Detection of moving cast shadows using image orthogonal transform[C]. In Proc. IEEE Int. Conf. Pattern Recognition, 2006:626629.
[6] CHEN C T, SU C Y, KAO W C. An enhanced segmentation on visionbased shadow removal for vehicle detection[J]. Int. Conf. Green Circuits and Systems, 2010: 679682. [7] 邓亚丽,毋立芳,李云腾. 一种有效的图像阴影自动去除算法[J]. 信号处理, 2011(11): 17241728.
[8] ENNEHAR B C, BRAHIM O, HICHAN T. An appropriate color space to improve human skin detection[J]. INFOCOMP Journal of Computer Science, 2011, 10(1): 1827.
[9] FUNG G S K, YUNG N H C, PANG G K H, et al. Towards detection of moving cast shadows for visual traffic surveillance[C]. Systems, Man, and Cybernetics, 2001 IEEE International Conference, 2001:25052510.