APP下载

结合亮度比值梯度与颜色特征的阴影去除算法

2019-05-05董春燕季顺祥

小型微型计算机系统 2019年4期
关键词:比值梯度亮度

梁 磊,刘 怀,董春燕,季顺祥

(南京师范大学 电气与自动化工程学院,南京 210023)

1 引 言

随着计算机视觉的不断发展,使用智能设备代替人来实现对目标的理解和分析将会越来越普及,其中对提取运动目标准确性的要求也越来越高.然而在提取目标的过程中,动态阴影经常被误认为目标的一部分,且与运动目标相互粘连,影响运动目标的定位与形状,甚至有可能导致多个目标的合并,导致对后续目标的识别、跟踪等方面造成极大的影响.因此,有效去除运动阴影并保持目标的完整性是运动目标检测中的重要课题之一.

目前,已经有大量的国内外学者从事阴影去除的工作,并取得了丰富的研究成果.对于阴影检测方法的研究,许多学者提出了不同的分类方法,如文献[1]把阴影检测分为基于颜色特征,基于物理特征,基于几何特征和基于纹理特征的4种算法;文献[2]把阴影检测分为基于模型、阴影属性和纹理结构的3种算法.总结来看,这些方法主要是利用对阴影建立模型以及阴影的固有特征来进行去除阴影.

基于模型的方法是在已知场景与光照状况的条件下建立阴影模型,如文献[3,4]利用混合高斯模型对阴影进行建模,得到阴影分布特性,从而实现阴影的去除;文献[5,6]基于多层码本模型将阴影像素点提取出,从而去除阴影.但是阴影的模型需要提前建立,且改变应用环境时需要根据新的条件建立新的阴影模型,因此导致算法复杂度高,耗时长,不能满足实时性的要求.

基于阴影固有特征的方法是由阴影的颜色、图像属性、边缘和纹理不变性等特征来进行阴影的检测与去除.利用颜色的方法主要是根据阴影区域内的亮度值减小,但色度和饱和度变化不大的特征;图像固有属性的信息主要是根据图像与光照无关的属性来检测阴影;边缘特征主要是根据阴影与背景及运动目标的边缘差异较大的特性实现阴影检测;纹理信息是根据阴影区域覆盖前后纹理特征变化不明显的特性判断阴影.由于基于阴影不变特征的方法简单,效果显著而被广泛应用.为此,文献[7]对阴影的各项特征进行分析,寻找最佳特征,为阴影检测算法提供参考.文献[8,9]、文献[10]与文献[11,12]分别在HSV颜色空间、YUV颜色空间和rgI颜色空间实现对阴影的去除.文献[13]将各个不同颜色空间的最佳颜色特征进行结合来确定阴影区域,文献[14]则是通过研究光照方向与光照强度值来实现判断并去除阴影.文献[15]使用纹理特征分类后选取阴影纹理,检测阴影.

但是仅使用单一特征进行阴影检测容易造成误检,导致检测准确率降低.因此针对单个特征检测阴影的不足,文献[16]先基于边缘特征检测阴影疑似区,后使用RGB颜色特征确定阴影,文献[17]融合纹理特征与边缘信息来去除阴影.文献[18-20]将颜色特征和纹理特征相结合共同去除阴影,文献[21]在HSV颜色空间检测阴影的基础上结合反射比不变性从而去除阴影.文献[22]利用颜色、纹理和光照模型三者相融合的方法检测阴影,文献[23]在基于方向和距离的基础上与颜色、纹理特征共同去除阴影.多种特征相融合的算法虽然在一定程度上提高了阴影检测的准确性与稳定性,但是由于阴影不变的特征本身具有缺陷,例如颜色特征对光照变化敏感,纹理特征有时并不明显,而且误检率比较高等,所以仅仅依靠一种或多种特征直接结合的方式并不能保证不同场景下将阴影去除的同时保留运动目标的完整性.

综上所述,针对现有阴影检测算法的缺陷,阴影去除阈值选择的复杂性,本文在分析阴影区域像素点与之对应背景像素点的基础上,结合rgI颜色空间颜色分量的优势,在计算亮度比值的基础上进一步计算其一阶四方向的梯度,取代单一亮度比值作为阴影检测的依据,同时结合颜色特征来保留运动目标.此方法克服了单一使用阴影不变特征进行检测阴影时容易出现的误检及目标空洞问题,保证了阴影的准确去除及目标的完整度,从而使运动目标检测更加准确,同时降低了阴影去除过程中参数设置的复杂性.

2 混合高斯背景建模

本文使用混合高斯模型[24]算法提取前景,混合高斯模型是基于像素点统计信息的背景建模方法,对视频序列中每个像素点取K(通常K取3~5之间)个相互独立且不相关的高斯分布进行背景建模.设t时刻图像像素值为Xt=(rt,gt,bt),图像序列的像素数据集为{X1,X2,…,XN},那么像素值发生的概率可表示为:

(1)

(2)

上式中,wi,t为t时刻第i个高斯分布权重,和为1;μi,t和Σi,t为t时刻第i个高斯分布的均值向量与协方差矩阵,此处假定像素的红、绿、蓝分量相互独立.

将K个高斯分布按照优先级λi,t=wi,t/σi,t从大到小排序,按照公式(3)选取前B个高斯分布作为背景模型,剩下的高斯分布定为前景目标.将t时刻像素点Xt与前B个背景模型进行比较,若其与任意一个高斯分布匹配,判断该像素点为背景点,否则认为其属于前景点.

(3)

公式(3)中,T1为像素被判定为背景的先验概率值.

3 阴影分析

阴影的形成是由于不透明的目标阻挡了光源的光,造成某一区域的亮度发生变化,形成的暗区域,故可把阴影分为自阴影和投射阴影.自阴影是目标本身的部分,一般不用进行去除,所以通常的阴影去除都是指投射阴影的去除.

根据阴影的特性来去除阴影是迅速且有效的.为此,本文选取视频中同一区域在阴影覆盖前后的情况下分析其三通道像素值的特点.

如图1所示,选取同一视频序列中的两帧图像,提取标记区域在阴影覆盖前后的R、G、B三通道像素值,并分别求取背景与阴影部分之间的亮度信息,制成如图2所示的亮度对比图.

图1 Highway_Ⅰ与Laboratory选取的不同视频帧Fig.1 Different video frames selected by Highway_ I and Laboratory

图2 Highway_Ⅰ与Laboratory背景与阴影亮度分量对比图Fig.2 Comparison of background and shadow brightness components of Highway_I and Laboratory

分析图2可知,阴影部分的R、G、B三通道值比与之对应的背景区域的值均小,同时相邻的亮度值变化范围不大.由于阴影部分与背景部分属同一区域,因此其色调近似一致,具有相似的颜色特征.

4 rgI颜色空间阴影检测模型

通过阴影分析可知阴影比其对应的背景区域在亮度值方面差异较大,而色调近似一致.所以可以定义一种归一化颜色空间[11,12](r,g,I),其归一化公式如公式(4)所示:

(4)

该颜色空间包含了亮度和色度信息,且是用各颜色所占的比例表示,对光照的变化不明显,有利于去除阴影.假设某像素点背景像素值为(Br,Bg,BI),当前像素值为(Fr,Fg,FI),于是可由公式(5)进行阴影区域的判断:

(5)

公式(5)中,τr,τg为r,g颜色通道判断阈值,α,β分别与阴影亮度值的强弱以及光线的强弱有关.若满足该条件,则判断该点为阴影像素点.阴影检测的主要依据是阴影与背景之间的亮度比,其色度差值的影响比较小.

5 改进的阴影去除算法

根据公式(5)去除阴影的过程中,由于不同视频所处的环境不同,亮度比值的α,β要由具体情况而定,由此导致了当运动目标中与阴影有相似亮度或与背景区域具有相似亮度的情况下,这一区域的目标就会被误检为阴影,造成去除阴影后的运动目标不完整,产生空洞现象,并且该空洞无法用形态学处理消除.如图3所示.

图3 空洞现象Fig.3 Holes phenomenon

为了更加直观分析阴影去除算法,在图2的基础上求取阴影与其对应背景区域的I通道像素比值,制成图4.由图4可知,在Highway_Ⅰ使用阴影I通道的像素值与其对应背景的比值确定阴影时,范围在0.3~0.6之间,然而大部分的比值所处的范围为0.4~0.5之间.如果选择阈值范围0.3~0.6作为阴影的去除阈值,虽然阴影去除效果良好,可是由于阈值范围较大,不可避免地会将部分目标错误判断为阴影区域而去除,造成目标出现空洞;如果选择阈值范围在0.4~0.55之间,虽然尽可能保留了目标,但是造成了阴影去除不彻底,残留部分阴影区域.同理Laboratory也可以得到类似的结论.

当光照条件一定的情况下,由于在同一视频中阴影区域比其相对应的背景区域的亮度小,亮度比值的变化较小,尤其临近像素点的亮度比值变化更小,故亮度比值的变化率就会比较稳定,而运动目标与其对应的背景区域的亮度比值变化率差异较大.基于这一特点,本文提出一种使用亮度比值相邻像素的梯度算法来检测阴影,其中梯度信息反映了图像亮度比值信息变化幅度的大小.为了便于在横纵两个方面直观研究亮度比值的差异性,根据图1所选区域的阴影与背景亮度比值绘制三维立体图,如图5所示.

图4 Highway_Ⅰ与Laboratory阴影与背景区域亮度比值Fig.4 Ratio of brightness of the foreground pixel to its corresponding background pixel about Highway_ I and Laboratory

图5 Highway_Ⅰ与Laboratory阴影与背景区域三维亮度比值直方图Fig.5 Three dimensional brightness ratio histogram of shadow and background regions about Highway_I and Laboratory

观察图5所示的三维亮度比值直方图可以发现,阴影与背景区域的亮度比值在其各个邻域内变化较小,经计算Highway_Ⅰ标记区域的亮度比值变化范围为0~0.1018,Laboratory标记区域的亮度比值变化范围为0~0.1089,不同视频的标记区域具有相似的变化范围,而超出一定的范围后变化开始增大.为了最佳使用比值邻域差异不大这一特征,同时使阴影检测算法复杂度降低,本文在邻域的选取上只选择四个邻域,即一个像素的上下左右四方向.在梯度计算方法的选择上,本文使用各个方向与中心像素差分值来定义梯度信息.最后为了避免由于数值的大小不同导致差分值的正负,在求取差分值的基础上再取其绝对值作为最终的梯度信息.

在视频序列中,阴影可能出现在目标的各个方向上,且在前景区域(运动目标与阴影的合称)边缘上,有时并不存在某些方向上的梯度,而在前景区域内部,存在4个方向的梯度.为了兼顾前景内部以及边缘的各种不同情况,同时使梯度的计算量减小,在求取梯度时,不存在的邻域不计算该方向的梯度.

由于在边缘点计算的梯度与内部点计算的梯度计算次数不同,导致梯度值的度量方法不统一.为解决该问题,本文在求取各方向梯度和的基础上取平均,使得不论计算几个方向,在取平均之后的度量方法统一,便于阴影去除时阈值的选取.

设P(i,j)为当前点,其4方向的点定义如图6所示.

图6 4方向定义图Fig.6 4 direction definition diagram

梯度定义公式如公式(6)所示:

(6)

视频序列中往往有一部分目标区域与其背景区域的亮度比值与阴影区域与其背景区域的亮度比值变化均不大,但是在颜色特征方面目标与阴影存在较大差异,因此改进的(r,g,I)颜色空间阴影去除算法,是用亮度比值的梯度信息去除阴影,同时为了避免目标被误检结合r、g通道的颜色信息保留目标.新的阴影判别方法如公式(7)所示:

(7)

公式(7)中,T2为梯度算法判断阴影的阈值.

本文阴影检测算法的流程如图7所示.

6 实验结果及分析

本文采用VS2010开发平台,使用Opencv2.4.9的库进行编程实现,PC机配置为Intel(R)Core(TM)i5-6300HQ 2.30 GHz CPU,8 GB内存.

本文阴影去除算法在CVPR-ATON视频库中的Raw Movies(Highway_I,Highway_II,Campus,Intelligent Room,Laboratory)下进行了测试.在本文阴影去除算法中,r与g通道的阈值选取是随着所选场景的颜色变化而变化的,亮度比值梯度阈值的选择取0.025~0.05时阴影去除效果比较理想.

图7 阴影检测流程图Fig.7 Flow chart of shadow detection

从图8中可以看出,对于室内、室外以及行人、车辆等不同目标的阴影去除效果而言,本文算法的结果最好,同时运动目标得到了比较好的保留.Highway_I中存在的大部分阴影都被很好地去除,运动目标得到了较为完整的保留;Highway_II中虽然阴影区域较小,比较难于辨认,但是本文算法仍然能够检测到阴影部分,保留车辆的完整目标;在室内场景下的Laboratory与Intelligent Room中,虽然阴影与所对应背景部分差别不太明显,但是本文算法依然能够很好地去除阴影保留运动目标;Campus视频下阴影处理效果差的原因是视频本身比较模糊,而且噪声干扰严重,其阴影部分与背景部分的色调和饱和度分量相差很小,亮度也相似,很容易相互混淆,但是本文算法仍然优于其他算法的处理效果.

为了准确量化实验结果数据,本文采用文献[15]、文献[25]所提出的阴影检测率η和目标检测率ξ作为评价算法性能的指标,同时将两者求和后取平均值Avg进一步分析算法综合性能,能够最大消除由于阈值选取的不同造成的实验数据结果偏差过大,使算法的评价更加合理.具体的定义如下所示:

(8)

(9)

(10)

式中,TPS表示正确检测到阴影像素的个数,FNS表示把阴影像素误检为前景像素的个数,TPF表示正确检测到前景像素点的个数,FNF表示将前景像素点误检为阴影像素点的个数.本文通过人工标注不同视频帧的目标和阴影,即可在阴影去除后求出TPS、FNS、TPF和FNF.

将本文所提出的阴影去除算法与其他算法进行对比,制成表1.与改进LBP纹理算法、基本HSV阴影去除算法以及文献[18]、文献[25]所提出算法进行对比,分别计算不同场景下去除阴影的各项指标,即阴影检测率、目标检测率和两者求和取平均三项测试指标.经过对比,发现本文算法在大部分情况下比其余四种算法更具优势,尤其是评价综合性能的平均值比其他算法的检测率均有提高.这是因为本文算法首先使用了亮度特征,在此基础上求取比值的梯度信息,利用阴影区域内部梯度保持不变而目标变化较大去除阴影.为了保留目标的完整性加入了r、g两通道的颜色信息尽可能保留下被梯度误检的运动目标像素,使得最终阴影去除及目标的保留效果较好.

图8 各种算法下的阴影去除结果对比Fig.8 Comparison of shadow removal results under various algorithms

表1 阴影去除算法效果的比较(/%)
Table 1 Comparison of the effect of shadow removal algorithm

测试视频测试指标改进LBP基本HSV文献[18]文献[25]本文算法Highway_ⅠηξAvg79.0585.4882.2781.2985.1883.2472.4088.8980.6573.0590.8581.9581.8995.4288.66Highway_ⅡηξAvg45.8085.8065.8083.4160.0871.7527.5798.5263.0545.6289.3367.4871.3791.0281.20Campus ηξAvg65.3283.7974.5696.5656.5576.5659.7474.8467.2956.1397.1676.6583.8377.2780.55Laboratory ηξAvg47.0284.3065.6686.3073.2879.7946.0187.1966.6063.7891.0977.4490.1887.8689.02Intelligent Room ηξAvg39.4791.8765.6776.5794.2885.4348.6093.7171.1656.4696.1676.3175.7598.4887.12

具体来看,本文算法在Highway_Ⅰ的三项评价指标均优于所对比的算法.Highway_Ⅱ中运动目标较小的情况下,虽比文献[18]的目标识别率下降7.5%,但文献[18]基本没有检测到阴影,该算法对于小目标的阴影检测趋于失效;HSV颜色空间阴影去除率很高,可是不可避免地误去除了目标区域,造成了目标空洞现象;而本文算法在去除阴影的同时最大程度地保留了运动目标,使得综合性能Avg提高10%左右.虽然本文算法在Campus的目标检测率不如改进LBP算法和文献[25],分别下降6.52%和19.89%,在Laboratory下的目标检测率不如文献[25],下降3.23%,但本文算法在阴影检测率上都有较大提升,使得最终的综合评价指标更高.由于Intelligent Room中室内阴影不明显,HSV空间阴影检测算法对该视频的阴影处理较好,但本文算法仍然不逊色HSV阴影检测算法,在阴影检测率略微降低0.82%的情况下将目标识别率提升了4.2%,使得目标更加完整.综上所述,本文算法相比其他阴影检测算法而言,在综合性能更加优越的同时复杂程度不高,故可以满足实时检测的要求.

7 结 论

为了有效去除视频监控场景下运动目标的阴影,克服传统rgI阴影检测算法中阴影去除率低,运动目标误检为阴影的缺点,本文结合色彩和亮度比值梯度信息在阴影检测中的优点,提出了一种基于亮度比值的四方向梯度与颜色特征相融合的阴影去除算法.

本文首先使用混合高斯背景建模提取背景和运动前景;之后,为便于阴影检测将前景与其对应的背景区域转换到rgI颜色空间;考虑到阴影区域与其对应的背景区域相邻像素之间的亮度比值变化很小,其变化率比较稳定,因此求其亮度比值的四方向梯度的均值来判断是否阴影,从而消除阴影;为了避免由于目标的一部分区域与阴影区域的亮度相似造成运动目标被误去除,考虑到目标区域与其对应的背景区域的颜色特征差别很大,因此本文结合r、g通道颜色信息来保证目标的完整性;最后使用形态学等方法优化目标,实现了视频中运动目标的消影.

相对于传统rgI空间检测阴影算法而言,本文算法比单纯使用亮度比值的方法来确定阴影更加优越.实验结果表明,本文算法改进了单纯依靠亮度比值确定阴影区域时的阈值选择复杂性,同时消除了部分目标被误判为阴影的缺点.在室内与室外的不同场景中,与现有的基本HSV、LBP纹理去阴影等算法进行对比,本文算法对于多种类型的目标检测效果更加优越,适用范围更广,鲁棒性更强.下一步本文将继续研究如何提高检测结果的稳定性与快速性,使其运用于更加广泛的识别检测中.

猜你喜欢

比值梯度亮度
磁共振梯度伪影及常见故障排除探讨
用于遥感影像亮度均衡的亮度补偿方法
基于应变梯度的微尺度金属塑性行为研究
远不止DCI色域,轻量级机身中更蕴含强悍的亮度表现 光峰(Appptronics)C800
一个具梯度项的p-Laplace 方程弱解的存在性
亮度调色多面手
也谈极值点偏移问题破解策略
亮度一样吗?
基于数字虚拟飞行的民机复飞爬升梯度评估
物理中的比值定义法