APP下载

保持图像亮度的自适应局部对比度增强

2015-04-11西北师范大学物理与电子工程学院兰州730070

计算机工程与应用 2015年7期
关键词:子块直方图亮度

西北师范大学 物理与电子工程学院,兰州 730070

余 权,马胜前,马冬梅

1 引言

图像增强是为了使增强后的图像比原始图像更易被视觉系统所接受,以便应用于特定场合,例如目标跟踪、识别等。基于直方图均衡(Histogram Equalization,HE)的增强方法因其有效性和简单易用性备受青睐,其基本思想是根据输入图像的灰度概率分布函数来确定其对应的输出灰度值,通过扩展图像的灰度动态范围达到提升图像对比度的目的。直方图均衡方法分为全局和局部两种,对于全局方法,已经提出了很多改进算法以满足不同的应用要求[1]。与全局方法相比,局部直方图均衡方法可以更好地增强图像的局部信息,但要求的计算量大,而且局部区域可能出现过增强及大量噪声等[2-3]。

为了消除局部直方图均衡方法可能带来的过增强现象及噪声等,人们提出了多种改进局部直方图均衡算法。为使图像亮度在均衡后保持不变,Kim提出了亮度保持的双直方图均衡算(Brightness preserving Bi-Histogram Equalization,BBHE)[4]。Wang等人又提出了基于等面积双元子图直方图均衡算法(Dualistic Sub-Image Histogram Equalization,DSIHE)[5]。Chen 在BBHE算法和Sim等人在DSIHE算法基础上,又进一步根据递归分解思想分别提出了基于平均亮度值递归分解直方图的均衡方法(Recursive Mean Separate Histogram Equalization,RMSHE)[6]和基于子图像递归的直方图均衡 化(Recursive Sub-imageHistogram Equalization,RSIHE)[7],更好地保持了输入图像的亮度。江巨浪等人基于RMSHE算法提出了保持亮度的局部直方图均衡算法[8],更高程度地保持了图像的亮度且减少了噪声,但该算法在递归深度比较高时计算较复杂。在此基础上吕宗伟提出了基于亮度保持的子图像加权对比度增强[9],这种对分割的子图像加权处理的方法保持图像的亮度和减少噪声干扰比文献[8]更佳,但文献[9]子图像加权求和过程较复杂。为了保持输入图像亮度的同时避免图像中目标或背景被过增强,基于BBHE算法本文提出了一种基于最小亮度误差的自适应局部对比度增强算法(Adaptive Local Contrast Enhancement Based on Minimum Brightness Error,ALCEBMBE),根据亮度均值最小绝度误差自适应选取最佳亮度分割点,然后对分割的子图像分别进行直方图均衡处理,最后用滤波器消除块效应[10]。

2 亮度保持的双直方图均衡算法

设输入一幅图像I。对于分块后的任一子块图像X,它的亮度均值为:

p(j)是灰度级j在X中的概率密度。Xi表示X中的任意灰度值;L表示灰度区间的长度。根据亮度均值Xm将给定子块图像X划分为两个子图像XL和XU,即X=XL∪XU,其中:

根据CDF,定义子图像XL和XU的转换函数为:

其中G[•]表示像素灰度值。

则子块图像均衡后输出Y为:

假设给定子块图像X的直方图在亮度均值两侧对称分布,则均衡后子块图像的平均亮度为[8]:

其中给定的子块图像X均衡后有近似均匀的概率密度,均衡后的亮度均值为:

由于以上亮度保持的双直方图均衡算法是以亮度均值为分割点,而且设定子块图像X的直方图在亮度均值两侧对称分布,故输出图像不能充分地保持图像的亮度,而且会产生部分过增强现象。

3 保持图像亮度的自适应局部对比度增强算法

文献[4,6,8-9]采用亮度均值为分割点对给定子块图像X的直方图进行分割,而文献[5]和[7]采用亮度中值为分割点,文献[11]采用保持亮度的自适应对比度增强方法。这些方法都能较好地实现亮度保持,但在实现对比度增强时,有时会使图像中的目标或者背景被过分增强,从而出现部分失真。

基于以上分析,在BBHE算法的基础上本文提出了一种基于最小亮度误差的自适应局部对比度增强(ALCEBMBE)算法。这种算法首先对输入图像I进行分块,然后子块图像根据亮度均值绝对误差自适应选择最佳亮度分割点,最后对被分割的子图像分别用亮度保持的双直方图均衡算法处理。

3.1 基于亮度均值最小绝对误差的最佳亮度分割点自适应选取

定义输入图像I经过分块后的任一子块图像X的亮度均值为E(X),输出图像对应的子块图像的亮度均值为E(Y),则亮度均值绝对误差AMBE(Absolute Mean Brightness Error)为:

设X0=0,灰度范围为 (X0,XL-1),则灰度总数L=1+XL-1。

设XT是初始选择的亮度分割点,即X≤XT时Xi的CDF为:

于是X>XT时Xi的CDF为:

同理以XT+1为亮度分割点,则子块图像X均衡后输出的亮度均值为:

以X0为亮度分割点,根据式(10)子块图像X均衡后输出子块图像的亮度均值为:

而以XT为亮度分割点,根据式(11)子块图像X均衡后输出子块图像的亮度均值迭代公式为:

根据式(7)和式(12)得到以X0为亮度分割点的亮度均值绝对误差为:

同理根据式(13)得到以XT为亮度分割点的亮度均值绝对误差的迭代公式为:

设F(Xi)为子块图像内灰度为Xi的像素个数,N代表子块图像内的像素总数。则:

根据式(18)可以得到以X0为亮度分割点的亮度均值绝对误差SAMBE0,根据迭代公式(19)得到以XT为亮度分割点的亮度均值绝对误差SAMBET,其中,XT∈{X1,X2,…,XL-1}。

则能够得到亮度均值的最小误差:SAMBET=min{SAMBE0,SAMBE1,…,SAMBEL-1} ,其中亮度分割点为XT。

3.2 ALCEBMBE算法的描述

步骤1对于M×N的输入图像I,定义一个尺寸相同的输出图像,并将其中所有像素灰度值置零。

步骤2在输入图像I的左上角定义一个w×h的子块图像,并设其沿水平和垂直方向移动步长分别为a和b。设定w=a=M/16,h=b=N/16。

步骤3按照本文算法对当前子块图像选择最佳亮度分割点。

步骤4根据上述选择的最佳亮度分割点XT将子块图像X分为两个子图像XL和XU,然后采用保持亮度的双直方图均衡算法均衡子图像,根据式(6)最终得到输出子块图像Y的平均亮度。

步骤5将均衡后子块图像X中所有像素的灰度值累加在输出图像的对应像素灰度值上,同时记录累加次数。

步骤6将子块在水平方向向右移动步长a,如果子块的水平坐标小于输入图像水平尺寸时,则转到步骤3;否则,转到下一步。

步骤7将子块在垂直方向向下移动步长b,如果子块的垂直坐标小于输入图像垂直尺寸时,则子块的最左端像素的水平坐标置为输入图像最左端像素的水平坐标值,并转到步骤3;否则,转到下一步。

步骤8将输出图像的所有像素灰度值除以各自的累加总次数。

步骤9检测输出图像子块边界位置是否出现块效应,如出现则用块效应消除滤波器(BERF)消除块效应[10]。

4 实验结果与分析

为了测试ALCEBMBE算法的有效性,本文在操作系统为Windows XP,CPU为奔腾双核2.4 GHz,内存1 GB的普通PC机上实验,在Matlab R2008b软件环境下基于Matlab语言编写实验程序。用80幅不同亮度的灰度图像进行实验,选择其中3幅像素为256×256的图像分别为图像1、图像2和图像3,图1~图3给出了各种算法对该3幅灰度图像仿真后的输出图像。

图像1为偏暗图像,如图 1(a)所示,图1(b)球场地面和球员身体上亮度得到了较好的保持,同时对比度实现了较好增强;图1(c)和图1(d)相对图1(b)而言,球场地面和球员身体上稍有过增强现象,图1(d)相比图1(c)过增强和噪声干扰更严重;图1(e)球场地面和球员身体上都有部分过增强,尤其地面过增强严重;图1(f)未能较好实现亮度保持和对比度增强,图像显得很模糊。

图1 图像1的各算法输出图像

图像2为偏亮图像,如图2(a)所示,图2(b)和图2(c)图像背景左上角纹理和右侧的亮度得到了很好的保持,但是图2(c)右上角暗区增强效果不明显;图2(d)和图2(e)相对图2(b)而言,图像的前景和背景出现了部分过增强,而且左上角和右上角的暗区不清晰;图2(f)相对图2(b)而言前景没有达到应有的增强效果,但是背景暗区增强效果明显。

图2 图像2的各算法输出图像

图像3为灰度分布较均匀的图像,如图3(a)所示,图3(b)和图3(c)目标和背景都比较好的保持了亮度,同时实现了较好的对比度增强,但是图3(c)目标飞机稍有过增强;图3(d)和图3(e)相对图3(b)和图3(c)而言,图像的目标和背景都出现了部分过增强,使得目标飞机暗区显得不清晰;而图3(f)图像背景没有达到较好的增强效果,但是目标飞机达到了较好的增强效果。

图3 图像3的各算法输出图像

综上所述,该3幅图像经过各算法仿真可以看到,ALCEBMBE算法比其他算法能更好地保持原始图像的亮度,同时达到对比度增强的效果,输出的图像更自然。

为了验证ALCEBMBE算法在亮度保持时达到对比度增强的目的,对80幅灰度图像分别进行了对比度增强的实验,然后计算通过ALCEBMBE算法仿真后的图像的客观评价指标值,最后计算仿真后的图像各指标均值。将计算结果的均值与文献[9]算法、文献[8]算法、BBHE算法和DSIHE算法计算结果的均值进行了比较,如表1所示。

表1 80幅图像的各算法计算结果均值

本文采用亮度均值绝对误差AMBE(Absolute Mean Brightness Error)来验证算法保持输入图像亮度均值的性能,其值越小表示输入和输出图像的亮度均值差值较小,AMBE的定义为:

其中,M(X)表示输入图像的亮度均值,M(Y)表示输出图像的亮度均值。

采用峰值信噪比PSNR(Peak Signal Noise Ratio)来衡量输出图像中噪声的大小,其值越大,表示输出图像中的噪声越小,PSNR的定义为:

其中Xi,j和Yi,j表示位于 (i,j)的输入和输出图像的灰度,H和W表示图像的大小。

采用熵(entropy)来衡量输出图像所包含的信息内容,熵越大,所含的图像细节越多,熵的定义为:

其中p(Xi)表示灰度值Xi的概率密度函数。

通过上述Matlab实验平台对80幅图像进行各算法仿真,各算法仿真实现的时间均值比较如表1所示。

从表1可以看到,相比DSIHE算法、BBHE算法、文献[8]算法和文献[9]算法,ALCEBMBE算法能够更好地保持输入图像的亮度;PSNR显示通过ALCEBMBE算法输出的图像噪声较小,图像质量比较高;E值显示ALCEBMBE算法能够较好保持原始图像的细节。从运行时间可以看到文献[9]算法复杂度比较高,但是在亮度保持、降噪及细节保持方面较接近ALCEBMBE算法的效果。文献[8]算法和ALCEBMBE算法运行时间差不多,但在亮度保持、降噪及细节保持等方面都不如ALCEBMBE算法好。综上分析可以看到ALCEBMBE算法保持输入图像亮度的同时减小了噪声干扰,保持了原始图像细节,提高了图像质量,而且运行时间较短,提高了算法仿真效率。

综合以上实验分析,本文提出的ALCEBMBE算法能够较好地保持输入图像的亮度,同时达到了较好的对比度增强,而且通过降噪及保持细节提高了输出图像质量,通过缩短运行时间提高了算法仿真效率。对各种低对比度的灰度图像均可以取得较满意的效果。下一步会将本文算法移植到硬件平台,通过优化提高算法的实时性。

5 结束语

本文提出的ALCEBMBE算法是在BBHE算法基础上根据亮度均值最小绝对误差自适应选择最佳亮度分割点,然后对子图像分别进行BBHE处理的局部对比度增强算法。从视觉观察和理论分析的实验结果可以看出,本文算法能够很好地保持输入图像的亮度,同时实现了较好的局部对比度增强。并且输出图像中不会出现大量的噪声,保持了原始图像的细节,提高了输出图像的质量,因此使得输出图像显得较自然;而且通过缩短算法运行时间提高了仿真效率。

[1]Wang C,Ye Z.Brightness preserving histogram equalization with maximum entropy:A variational perspective[J].IEEE Transactions on Consumer Electronics,2005,51(4):1326-1334.

[2]JafarI,Ying H.Imagecontrastenhancementbyconstrained variational histogram equalization[C]//Proceedings of the International Conference on Electro/Information Technology,2007:120-125.

[3]Yeganeh H,Ziaei A,Rezaie A.A novel approach for contrast enhancement based on histogram equalization[C]//Proceedings of the International Conference on Computer and Communication Engineering,2008:256-260.

[4]Kim Y T.Contrast enhancement using brightness preserving bi-histogram equalization[J].IEEE Transactionson Consumer Electronics,1997,43(1):1-8.

[5]Wang Y,Chen Q,Zhang B.Image enhancement based on equal area dualistic sub-image histogram equalization method[J].IEEE Transactions on Consumer Electronics,1999,45(1):68-75.

[6]Chen S D,Ramli A R.Contrast enhancement using recursive mean-separate histogram equalization forscalable brightness preservation[J].IEEE Transactions on Consumer Electronics,2003,49(4):1301-1309.

[7]Sim K S,Tso C P,Tan Y Y.Recursive sub-image histogram equalization applied to gray scale images[J].Pattern Recognition Letters,2007,28(10):1209-1221.

[8]江巨浪,张佑生,薛峰,等.保持图像亮度的局部直方图均衡算法[J].电子学报,2006,34(5):861-866.

[9]吕宗伟.基于亮度保持的子图像加权对比度增强[J].电子学报,2013,41(2):282-287.

[10]杨光,吴钟建,罗镇宝,等.限制对比度的多层POSHE自适应图像增强算法[J].激光与红外,2013,43(1):85-89.

[11]Ooi C H,Isa N A M.Adaptive contrast enhancement methods with brightness preserving[J].IEEE Transactions on Consumer Electronics,2010,56(4):2543-2551.

猜你喜欢

子块直方图亮度
基于八叉树的地震数据分布式存储与计算
符合差分隐私的流数据统计直方图发布
基于特征值算法的图像Copy-Move篡改的被动取证方案
亮度调色多面手
用直方图控制画面影调
基于波浪式矩阵置换的稀疏度均衡分块压缩感知算法
亮度一样吗?
基于斩波调制的LED亮度控制
人生的亮度
基于空间变换和直方图均衡的彩色图像增强方法