APP下载

基于纹理均衡和灰度差异的图像二值化

2017-05-30宋俊芳

科技风 2017年11期

宋俊芳

摘要:根据图像处理中最基本的目标检测算法,用图像的前景图片信息减去背景图片信息的方法就可以检测到目标。本文基于上述减背景的目标检测算法,进行视频序列的二值化处理。处理过程中不仅利用了图像间的灰度差信息,还整合了分块区域内图像的纹理方差信息,结果使二值化目标更加充实饱满,同时也消除了部分白噪声。

关键词:分块二值化;灰度差异;纹理均衡

视频序列中的图像二值化在计算机模式识别,运动目标检测等诸多应用领域发挥着重要的作用。目前图像二值化方法主要有以下几种:(1)全局阈值法;(2)局部阈值法;(3)动态阈值法。它们都是以像素为最小单位的图像二值化方法。全局阈值法方法实现简单,对于具有明显双峰直方图的图像效果明显,但对于低对比度和光照不均匀的图像效果不佳,抗噪能力差,因而应用范围受到极大限制。局部阈值法能处理较为复杂的情况,但往往忽略了图像的边缘特征,容易出现伪影现象。动态阈值法充分考虑了像素的邻域特征,能够根据图像的不同背景情况自适应地改变阈值,可较精确地提取出二值图像,但它过渡地夸大了像素的邻域灰度的变化,会把不均匀灰度分布的背景分割到目标中去,带来许多不应出现的假目标。本文提出并重点讨论了以小块图像为最小单位的图像二值化方法。该方法最小单位为多像素的小块图像,同时,还整合了小块图像内的纹理信息和纹理方差信息,在一定程度上解决了局部阈值法和动态阈值法所造成的伪影现象、边缘不明显和伪目标等问题。

1 基于分块内纹理均衡和灰度差异的图像二值化

分块二值化的思想是将一帧图像分成若干个小块,然后分別以这样的小块图像为最小单位对整幅图像进行二值化。采用分块二值化方法的目的是利用图像像素的邻域综合信息改进具体应用中的二值化效果,去除基于像素的二值化中存在的散点,增强二值化算法的抗干扰能力,通过选取合适的阈值努力增强二值化的目标饱和度。分块二值化算法流程图如下图所示:

1.1 基于块灰度差异的二值化

为了分别诠释灰度及纹理各自在二值化中所起的作用,本文先仅用每个块的平均灰度去跟对应背景块的平均灰度作差,即按图1中的第1条通路进行判断。

灰度差计算公式如下:

其中DiffGray表示背景和前景某对应块的灰度差异,iSumBackgrd表示背景图像该块内所有像素灰度和,iSumFront表示前景对应块内所有像素灰度和。如果两块图像灰度差大于某一阈值1,可以直接判定该块为目标,将其置为255,否则置为0。但此方法使得车身跟道路灰度差异很大的区域以及车尾的阴影部分二值化效果明显,而车身及其他跟道路背景灰度差异较小的部分得到的二值化白色块数较少,有的目标甚至被错误的消隐,这是因为车体的某些地方整体灰度和背景对应区域灰度相差无几造成的,但通过分析知,它们的纹理特征却存在明显的差异。为此,在本文中结合了纹理特征进行二值化。

1.2 结合纹理特征的二值化

为了保证算法的可靠性和合理性,让纹理特征彰显出其特有的效应,在寻找纹理差异之前,本文先对前景和背景图片进行灰度归一化预处理,将前景图片的各像素灰度按照整体灰度拉升到背景的灰度级水平。灰度拉升公式如下所示:

其中G_Front_Convrt[pixId]为某块内第pixId个像素拉升之后的灰度值,G_Front[pixId]为该像素拉升之前的灰度值,iSumBackgrd[blkID]为背景对应块内所有像素的灰度和,iSumFont[blkID]为前景对应块内所有像素的灰度和,iSumBackgrd[blkID]/iSumFront[blkID]為灰度拉升比率。通过上述灰度拉升公式,可得到拉升之后的图像IMAGE。本文将IMAGE各块内的像素跟背景像素对应相减,即可求出各块纹理差。试验证明此纹理差异来源于灰度却能够反应灰度之外的图像纹理特征,包含着丰富的图像信息。同样,根据经验阈值法或边缘检测阈值法确定出纹理差异阈值,当纹理差异大于该阈值时可判为255,否则判为0,其判断过程如图1的通道2所示。结果使得图像内部存在的边缘、菱角部分很容易被检测出来,这些地方通常包含了大量的有用信息,如车体的轮廓和车体内部的边缘及条纹信息。但是由于车辆上的挡风玻璃等处纹理特性并不明显,因此这些地方的二值化块数可能较少,为了更好的检测出运动物体,本文进一步提出利用拉伸之后的前景与背景的方差比进行二值化检测方法。

方差比理论的提出是基于如下这样的一种思想。视频图像的二值化过程主要是为了检测动态目标。而视频图片中的无车区域一般是比较稳定的,其整体灰度一般会稳定在其均值左右,反映在数学上就是具有较小方差。而有车区域平均灰度会存在较大范围的波动,这样其方差值较大。本文在具体计算过程中用前景与背景块中的较大方差比较小方差,这样有利于扩大差距。方差及方差比的计算公式如下:

其中公式(3)中VarcBkBlck[blkID]为背景中blkID块的方差,G_Bk[pixId]为该块内pixId像素的灰度,G_BkAveBlck[blkID]为该块的灰度平均值。公式(4)中,VarcFGBlck[blkID]为前景拉升后对应块的方差,G_Front_Convrt[pixId]为对应像素的灰度,G_FGAveBlck_Convrt[blkID]为对应块的均值。公式(5)中的rate为方差比。

同样,本文将得到的方差比跟一个设定的阈值去比较,大于该阈值的块置为255,否则置为0,其判断逻辑如图1中的通道3所示。该方法能够较好的检测出运动物体。但是由于车辆照明灯反射光线的不断变化,隧道墙体和路面上出现了许多二值化散点。通过前面的介绍,我们发现基于纹理差异的二值化检测算法能够较好的消除这种影响,因此我们自然想到将这两种方法加以结合,如果同时满足纹理差异大于设定阈值和方差比也大于设定阈值则将该块置为255,否则置为0,其为流程图1中通道2和通道3相结合的结果,二值化效果可以被明显改观。但车尾的阴影及车体上的二值化部分显得不够饱满,通过前面的分析可知这正好可以用前面介绍的仅用灰度差异的二值化方法加以弥补,因此,本文将上述方法与仅用灰度的方法相结合,只要其中有一个条件满足,则置位该块为255,否则为0。即综合流程图1所示1、2、3通道。

2 结论

本文所介绍的分块二值化方法由于其可靠性,高效性和抗干扰性,在项目工程实践中得到了广泛的应用,并具有广阔的发展前景。如何进一步提高二值化的目标饱满程度和抗干扰能力,去除阴影效应将是我们下一步研究的重点所在。

参考文献:

[1]乔万波,曹银杰.一种改进的灰度图像二值化方法[J].电子科技,2008,Vol.21 No.11:63~71.

[2]蒋晓红,郑秋梅,杨发科.一种基于分块二值化思想的图像检索方法[J].微计算机应用,Mar. 2008,Vol.29 No.3:47~50.

[3]胡会珍,黄晋英.基于Vc++的车辆运动中的实时图像处理[J].仪器仪表用户,2008,No.2:100~101.

[4]方晓莹,黄林伟,刘富强.视频监控系统中的车辆斑块分析算法[J].河南大学报,2007,37(2):201~204.

[5]万缨,韩毅,卢汉清.运动目标检测算法的探讨[J].计算机仿真,2006,Vol.23 No.10:221~226.