◆王 勇 王 臻
(广东工业大学 计算机工程学院 广东 11845)
物体阴影的存在会对一些计算机视觉算法的精度产生较大影响,例如图像分割,目标跟踪和目标识别等。阴影检测与移除的主要目的是定位阴影区域,区分阴影和前景对象,然后再移除阴影。
Zhang 等[1]在论文中总结了4 种阴影检测模型,检测方案中基于纹理模型和颜色模型的方法最为常见。Qin 等[2]采用马尔科夫随机场检测阴影区域然后采用纹理特征检测阴影像素。Farag等[3]人提出融合LBP 特征和Gabor 特征进行阴影区域检测。Cucchiara 等[4]基于HSV 颜色模型去检测移度值和背景中对应像素点的色度值相差比较小,采用一些阈值可以区分前景目标。Salvador 等[5]在论文中提出了一种新的C1C2C3 颜色空间,该颜色空间主要用于颜色不变特征的提取。Chen 等[6]使用YUV 颜色空间来检测阴影,方法比较简单,但是容易受到噪声的干扰。Guan等[7]使用HSV 空间的颜色空间属性,使用多尺度小波变换去检测阴影,采用标准差作为阈值去检测和移除阴影。Khare 等[8]采用离散小波(DWT)变换检测阴影,并提出了以相对标准差作为自动阈值,提升检测的准确度。多尺度小波和离散小波存在对平移和旋转敏感的问题,但阴影和目标在视频序列中是以平移或旋转的形式出现[9]。因而具有平移不变性质和旋转不变性的小波更加适合视频阴影检测,双树复小波克服了上述问题,故本文采用双树复小波进行阴影检测,并结合HSV 颜色模型移除阴影。
双树复小波变换(DT-CWT)是Kingsbury 在1998 年提出的,是离散小波变换的一个增强扩展,DT-CWT 采用具有二叉结构的双路DWT,即将复小波的实部和虚部分离。如图一中的Tree A和Tree B,两个实数小波树相互平行,并且通过实数滤波器来分别获取复数小波的实部变换系数和虚部的变换系数。因其具良好的方向选择性,近似平移不变性和有限的数据冗余,计算效率高以及重构效果好等特点。自提出以来就被广泛地应用于图像降噪、分割、分类以及图像融合等领域。双树复小波的变换原理如图1所示。
2.2.1 双树复小波掩模
前景区域检测方法,将当前帧I和背景参考帧B转分别换到HSV 颜色空间,将转换后的图像做背景差分计算并取绝对值得到差分图像D,将差分图像的亮度分量进行n级小波分解,每级分解将产生1 个低频子带和3 个高频子带,计算每个子带的二值掩模,公式如下:
图1 双树复小波变换原理
其中i∈{1,2,...,n}表示分解级数,c∈{LL,LH,HL,HH}表示每级分解产生的近似、水平、垂直、对角四个子带。Wic(·)表示第i层小波分解第c个子带的小波系数,maskic(·)为对应的小波掩模。每级分解将会产生对应的四个掩模,n级分解将会产生多个掩模,将得到的掩模进行小波反变换得到最终的掩模P,计算公式如下:
其中f(·)为双树复小波反变换函数,mask(·)∈{mask1LL,mask1LH,....,masknHH}为子带掩模集合。P为最终掩模。
2.2.2 阈值选择
对于公式1 的阈值选择,文献[7]提出以小波系数的标准差σ作为阈值,但是该阈值对噪声敏感,文献[8]等人提出了相对标准差作为阈值,相对标准差为标准差和均值的比值σ/μ,该阈值对噪声有较好的鲁棒性。但上述两个阈值都不能很好地区分背景像素同目标像素或阴影像素相似的情况。文献[10]采用以衡量数据平衡参数的偏度作为检测小波掩模的新阈值,经测试偏度优于标准差和相对标准差。本文采用偏度作为阈值,偏度公式如下:
其中μ和σ分别为小波系数的均值和方差,故阈值t可以表示为:
其中,i∈{1,2,...,n},c∈{LL,LH,HL,HH},这里skewnessic表示第i级分解中c子带对应的偏度值。
2.2.3 阴影检测
本文采用HSV 颜色模型进行阴影像素检测,相比RGB 模型HSV 颜色模型更加接近人眼对颜色的感知方式。阴影覆盖的背景区域的亮度分量会发生较大的变化,而色度分量和饱和度分量的变化较小,阴影像素的检测公式如下:
其中H,S,V是当前帧I(x,y)和参考帧B(x,y)分别对应的HSV 图像的色度、饱和度和亮度分量,α和β是当前帧和参考帧亮度分量比的阈值,ts代表饱和度分量的阈值,th代表是色度分量的阈值,∧为逻辑与操作。
实现过程如下:
(1)将当前帧和参考帧分别转换成HSV 图像;
(2)将当前帧的HSV 图像减去参考帧的HSV 图像取绝对值得到差分图像D。差分图像包含色度、饱和度和亮度三个分量;
(3)对亮度分量采用双树复小波进行小波分解,得到亮度分量的小波系数,记作w;
(4)采用公式3 计算每个子带相对应的偏度,用公式1 计算每个子带的掩模mask;
(5)采用公式2 将得到的二值化掩模进行小波反变换,得到最终的掩模图像P;
(6)根据获得掩模P,进一步结合参考帧和背景帧转换后的HSV 图像,判断目标区域和阴影区域,具体过程如下:
①根据掩模P 中的非零系数确定原始图像的包含目标和阴影的区域;
②采用公式5 检测阴影像素,其中α和β取值为0 到1,th取值为0.3,ts取值为0.25。目标像素为前景区域减去阴影区域。
为了验证本文提出方法的有效性,采用室内和室外包含阴影的视频序进行试验,目前主流用于阴影检测的数据集是ATON 实验室收集的包含高速公路、校园、房间、实验室、走廊等五个场景视频,本次检验用到的视频序列Higway I、Hallway 两个场景,视频的详细信息在表1 给出。本文实验基于MATLAB 平台、操作系统:Windows 10、CPU:i7 3960X,采用Haar 小波基进行小波分解。
表1 实验使用的检测序列
图2 4 种算法在HigwayI 和Hallway 场景下的结果对比
为了给出结果分析对别,采用比较成熟的评价阴影检测方法和去除效果分析的方法如下所示:
其中,η表示阴影检测率(Shadow detection Rate),ξ表示阴影区分率(Shadow Discrimination Rate)。下标S和F分别代表阴影和前景,TP(True Positive)表示被正确分类到阴影或目标的像素数量,FN(False Negative)表示被错误分类到阴影或前景的像素数量,真实背景中误判成阴影但实际上属于目标对象的像素点数量。从表2 可以看出的本文方法在当前场景优于其他方法。
表2 Higway I 第100 帧实验数据对比
本文提出了基于双树复小波的移动目标阴影检测和移除的方法,将背景帧和当前帧图像转换到HSV 颜色空间,然后对转换后背景图和当前图像做背景差分得到差分图像,利用双树复小波的特性将差分图像的亮度分量进行小波分解,并采用偏度作为阈值检测检测小波掩模,最后将掩模进行小波反变换得到最终掩模,同时结合颜色特征检测阴影像素点,降低算法在背景或阴影同车辆相似的区域出现误判的概率,提高阴影的检测和区分精度。由于采用双树复小波对于图像进行分解会存在数据冗余,可以采用主成分分析法进行数据压缩,可以减少程序运行时间。