离散余弦变换域内的Retinex图像增强模型研究
2011-07-07张新龙汪荣贵
张新龙, 申 永, 张 璇, 汪荣贵
(合肥工业大学计算机与信息学院,安徽 合肥 230009)
目前,比较实用的图像增强方法主要有空域 内的直方图均衡化、MSR(Multi-Scale Retinex,MSR)等,直方图均衡化往往适用于灰度图像,MSR算法选择像素比较的模板通常较大,对有多个发光源的图像处理效果不好,且易产生光晕伪影。频率域增强算法是图像增强的另一种方法[1],主要通过对变换到频域中的变换系数进行操作,来达到增强的目的。现有的频率域算法通常采用傅里叶变换、小波变换和离散余弦变换(DCT),这些方法较适合于处理彩色图像,但是对高动态范围图像增强效果不理想,往往不能很好恢复图像细节,而且可能会强化块状效应。本文通过对现有算法的研究,提出一种细节增强效果明显而且能抑制块状效应的高动态范围图像增强算法。
DCT域图像增强作为频域图像增强方法的一种,近几年成为图像增强领域的研究热点。Jinshan Tang等提出了一种基于DCT域的图像增强方法[2-3],利用了频带的整体信息来增强图像,在所有频带使用相同的因子增加对比度,不能针对图像的具体细节特点而进行增强;Eli Peli等提出了一种在 DCT域中使用多尺度对比度度量加强图像的高频分量,从而增强图像对比度的算法[4],该算法未考虑到隐藏在图像暗区的细节信息和人类视觉对低频带的敏感性,对低频带未采取针对性的处理,细节增强效果不理想;Kashif Iqbal等在以上两种算法的基础上提出了一种多尺度的DCT域图像的对比度增强算法[5],对低频带的增强参数不同于其它频带,但该方法对不同的图像要手动调节参数,且不能有效地消除块状效应;Sangkeun Lee等提出了使用Retinex方法对低频带系数操作压缩图像的动态范围,使用光谱含量比对高频带系数操作增强图像细节的增强方法,能较好地增强图像暗处的细节,然而无法有效地抑制图像的过亮部分,还原亮处的细节[6-7];Ying Luo等利用相邻子块低频带的关系与边界是否平滑的相关性对平滑和非平滑区域采用不同的处理方法,设计出一种平滑滤波器来降低块状效应[8],该方法增加了算法的复杂性和计算量。
现有的DCT域增强算法通常对DCT系数采用相同的策略进行处理,增强图像暗区细节的同时往往容易导致对图像中本来就比较亮的部分过度增强,出现曝光现象;而且现有算法在分块操作时,没有充分考虑频带间频率变化特点和子块间系数变化特点,往往容易导致块状效应。前者很好地解释了高动态范围图像较低照度图像更加难以增强的原因,高动态范围图像除了具有较多暗区之外,图像中往往还包含了部分高亮区域,现有的增强算法往往在增强暗区的同时无法有效抑制强光进而很好地增强高动态范围图像。
针对高动态范围图像的增强应该考虑通过调整动态范围来恢复被采集场景的完整动态范围效果,达到增强图像细节的目的。然而动态范围调整后,有一些细节尤其是图像中很暗或过亮区域里的细节可能会集中在一个很窄的亮度范围内,因此需要调整不同区域的局部对比度,使得很暗或过亮区域的细节更好地呈现出来。
根据上述分析,本文探索性地将Retinex图像增强算法思想引入 DCT域,在此基础上,提出了一种新的 DCT域图像增强算法。根据Retinex思想,入射光分量变化比较平缓,反射光分量变化比较剧烈,因此,作者将离散余弦变换的DC系数作为入射分量,AC系数作为反射分量,并采用不同的具有针对性的策略将两者分开处理:针对入射分量通过构造一种带强光抑制的函数,将入射分量映射到理想的动态范围,以调整图像的整体动态范围;通过定义一种频带限制的对比度度量来表现频带间的空间频谱含量差异,实现反射分量的局部细节增强,从而得到较好的图像增强效果,并抑制了块状效应。同时进行动态范围调整和局部对比度增强有利于更好地改进图像的质量,增强后的图像更接近于真实的自然场景,细节更清楚,视觉效果更好。
1 DCT域图像增强
现有的 DCT域图像增强算法是先把图像转换到DCT域然后对DCT系数进行操作,最后转回空间域输出图像。对一幅二维图像 I(i, j),
DCT变换是 JPEG图像编码标准的主要内容,该编码方法首先将一幅图像分割成互不重叠的 8×8像素的子块,然后将每个子块通过 DCT变换转换到空间频域内。子块左上角的 DCT系数d(0,0)称之为DC系数,其余的63个系数称之为AC系数,如图1所示,从左上角到右下角空间频率依次增加。
图1 DCT系数子块
然后将每个系数除以相应的量化参数,量化DCT系数,所得结果就近取整。量化后的 DCT系数按之字形顺序存储在一个行或列矩阵里进行平均信息量编码。编码之后对 DCT系数进行操作改变其值来增强图像,然后解码图像,乘以相应的量化系数逆量化,最后进行DCT逆变换,转回到空间域中重建原始图像。其中 DCT逆变换IDCT定义为
现有的 DCT域增强算法一般在量化后对DCT频带和系数采用相同的策略进行处理,来改变频带内的DCT系数,以达到增强图像的目的。然而,对于图像中的各种区域相同的策略往往无法都能取得理想的增强效果,而且没有充分考虑频带间频率变化特点和子块间系数变化特点,往往容易导致块状效应。
2 Retinex理论
Retinex算法[9-11]是图像增强的新方法。该类算法以色彩恒常性理论为基础,认为物体的表色由物体表面的反射性质决定,而与场景中的入射光信息的关系不大。该类算法的基本思路是首先将待增强图像看成是由反射光分量和入射光分量组成,然后采用一定的策略计算出反射分量,实现对图像的增强。根据Retinex理论,假设一副图像是入射光分量和物体表面反射光分量,然后去除入射光分量,得到反射光分量,还原物体了本来面貌。如以下公式
公式(2)将图像分为入射光分量S(x, y),及反射分量R(x, y)的乘积,再通过如下公式(3),取对数后,可将乘积转换为加,从而可以为后续减去入射光分量做铺垫。
要去除入射光的成像,得先估计入射光分量。由于入射光引起的变化相对于物体表面引起的变化较平滑,因此中心/环绕Retinex算法通过对原图做平滑滤波,得到入射分量。算法采用的平滑滤波为高斯滤波,如下所示
算法的具体流程步骤如下:
(1)将图像分成入射光成像和表面反射成像如公式(2)所示。
(2)公式(2)两边取对数,将入射分量和反射分量分离,如公式(3)。
(3)利用高斯平滑滤波器,对原图做滤波,如下式所示
其中 F(x, y)为高斯滤波器,表达式为公式(4);符号*为卷积操作;Ilow(x, y)为经过平猾后得到的低通滤波图像,即照度分量成像。
(4)将原图与Ilow(x, y)在对数域中相减,如下所示
其中 I'( x, y)为原图取对数;R'( x, y)为表面反射所成的图像。
(5)对R'( x, y)取反对数,得到的才是增强后的图像,即
如上述算法过程所示:该算法的关键点是估计入射分量,入射分量的估计直接决定着最终增强效果。Retinex算法假设入射分量是平滑的,因此中心环绕Retinex算法用高斯模板跟原图做卷积来估计入射分量。这里将高斯模板中的标准差σ称之为尺度参数,是该算法的唯一参数。因此,尺度参数σ的大小决定对入射分量的估计,也即决定了最终的增强效果。
多尺度中心环绕 Retinex算法(MSR)是取不同尺度σ进行线性加权平均,是对单尺度中心环绕Retinex(SSR)算法的融合。公式如下
其中 k为尺度参数σ的总个数,Wi为权值,满般情况下,MSR取高,中,低三个尺度,即k=3。Fi(x, y)表示参数为σi的高斯函数。从公式(5)可以看出:MSR算法通过线性加权综合多个固定尺度的 SSR算法增强效果来提高增强效果。
3 本文算法
本文算法的思想是:通过调整动态范围的方法来恢复场景的完整动态范围效果,达到整体增强图像的目的。同时调整不同区域的局部对比度使得过暗或过亮区域的细节更好地呈现出来,达到增强图像细节的目的。具体过程及原理如下所述:
DCT系数中DC系数反映了子块的亮度均值和整体动态范围,其值变化比较平滑,不同频带的AC系数包含了图像的大量细节信息,其值变化比较剧烈,本文将Retinex图像增强算法思想引入DCT域,根据系数的不同特征将DCT系数分为入射分量和反射分量,通过构造一种带强光抑制的函数,将入射分量映射到理想的区域调整图像的动态范围,定义一种频带限制的对比度度量来表现频带间的空间频谱含量差异,对其操作增强图像的局部对比度,从而得到更好的图像细节。算法基本流程见图2所示。
如图2所示,首先,本文算法将待处理图像转至YCbCr空间,用K-L距离评估原图像各通道像素分布的合理性,并由K-L距离计算出入射分量动态范围调整中的参数γ;然后,计算Y通道的均值和方差,将方差与设定的阈值比较,超过阈值则将图像分解为更小的子块来进行后期处理以避免产生块状效应,在确定子块大小之后将各子块变换至DCT域,将DCT系数分为入射分量和反射分量,在Y通道对入射分量通过构造的映射函数f (x)调整其动态范围,对反射分量先定义频带的对比度;接着,乘以增强参数来增强图像的局部细节,对Cb和Cr通道采用类似的处理来保持图像的色彩。最后,在各通道内分别将入射分量和反射分量融合并进行逆 DCT变换得到输出图像。
图2 算法流程
下面具体介绍参数的选取和块状效应抑制、入射分量的动态范围调整以及反射分量的局部细节增强。
3.1 参数的选取和块状效应的抑制
在 YCbCr色彩空间中,亮度信息用单个分量的Y来表示,彩色信息用两个色差分量Cb和Cr来存储。增强图像的对比度只需对图像的亮度分量Y处理,保持色彩信息还需要对Cb和Cr分量操作。
3.1.1 参数的自动选取
下面介绍 YCbCr空间内自动选取本文算法的参数γ的方法:
首先,将原图像 YCbCr各通道数值归一化至 [0,1]区间。然后分别计算Y通道值的分布到参数为A=1.5, B=1的Beta分布的Kullback-Leibler距离[12],记为ΔY;Cb和Cr通道值的分布到[0,1]区间上的均匀分布的K-L距离,分别记为ΔCb和ΔC r 。最后求得参数γ
K-L距离定义了两种分布的接近程度,设两种不同的分布p(k)和q(k),两者的K-L距离定义为
参数为A=1.5, B=1的Beta分布和[0,1]区间上的均匀分布分别用来评估原图像的Y通道和Cb、Cr通道上的分布的合理性,若图像的Y通道像素值的分布趋近于参数为A=1.5, B=1的Beta分布,更多的像素值将落在[0,1]区间上接近1的区域内,图像的整体对比度将提高,亮度更好;若图像的 Cb、Cr通道像素值的分布趋近于[0,1]区间上的均匀分布,色彩将更均匀地分布在[0,1]区间上,图像将包含更多的色彩内容。由公式(6)选取的参数γ能使得Y通道的分布尽可能在[0,1]区间上接近1的区域内(亮度更佳),Cb和Cr通道的分布尽可能地接近于均匀分布(可以包含更多的色彩)[13]。
3.1.2 块状效应的抑制
基于 DCT域的图像增强算法的主要问题是对各 DCT子块独立处理容易导致块状效应的出现,之前提出的一些抑制块状效应的方法[9]往往具有计算量大、效果不理想、易出现伪边等局限性,本文从另一个视角出发来寻求解决方法,观察注意到在亮度值显著变化的区域内,特别是亮度值急剧变化的边界附近容易产生块状效应,保持这些区域子块的DC系数变化连续平滑有助于抑制其产生块状效应。然而仅对个别亮度跳变的子块采取特殊策略不利于算法的并行实现,保证每个子块内的计算方法相同有利于提高程序并行性,提升算法速度,因此本文首先将原始图像按标准的JPEG图像默认的8×8的子块大小转换至DCT域,然后视是否需要自适应地将DCT子块分解成更小的子块,在这些更小子块上进行增强处理,最后重新按8×8的子块大小逆变换至空间域输出增强结果。例如,将8×8的子块分解成4×4或2×2的子块进行处理,分解后处理能在更小的范围内进行增强,避免亮度值出现剧烈的改变,因此进一步有效避免块状效应的产生。判定是否需要分解子块的条件如下:
由式(5)定义一幅N×N图像的DCT归一化系数为
其中 d(i, j)为整体图像的DCT系数,由DCT变换的定义和Perseval定理可将图像的均值μ和标准差σ分别定义为
标准差σ反映了图像亮度变化的剧烈程度,σ越大图像像素点间亮度差异越大,增强后越容易产生块状效应。选取阈值 σth1和 σth2,若图像的标准差σ大于σth1则将8×8子块分解成4×4进行处理,若大于σth2则将8×8子块分解成2×2进行处理。下文对入射分量调整和反射分量校正的介绍都以8×8子块为例,更小的子块上处理方法类似。
3.2 入射分量的动态范围调整
由 3.1.2节的方法确定了子块大小之后,首先将图像分解为若干子块,然后在各通道内以子块为单位将原图像转至DCT域。在Y通道内,DC系数的值反映了当前子块入射分量的平均亮度分布,对DC系数操作可以达到其调整动态范围的目的,通过构造一种带强光抑制的函数映射其DC系数值到一个希望得到的范围来实现,并且该函数在给定的范围内应当是单调的。假设当前图像的最大亮度为Imax(以保证处理后的图像最大亮度仍为Imax,以达到抑制强光的目的),子块的DCT系数为Y(k, l ),0≤k, l≤7,则Y(0,0)
函数f (x)有多种选取方式,为进一步抑制强光并增强暗区细节,本文算法构造的函数f (x)为
函数f (x)有一个取值在2附近的可供调节的参数γ,通过上文3.1节的方法进行自适应选取。公式(7)对暗区或强光都有较好的增强或抑制效果,可以有效地调整图像的整体动态范围。
彩色图像的显示效果往往取决于三个要素:亮度、对比度和色彩,传统的增强算法如简单动态范围调整仅仅考虑到亮度要素,图像锐化操作仅仅考虑到对比度要素,甚至有些算法考虑到两者兼顾,然而却很少有算法能同时考虑到颜色的保持。以YCbCr空间为例,仅仅对Y分量操作,能达到增强亮度和对比度的目的,却不能实现对原始图像色彩的保持。并且由YCbCr空间到RGB空间的转换公式可知,在G>R和G>B时增加Y而保持Cr和Cb不变,会导致R/G和B/G的值变小,降低色彩的饱和度。因此,本文提出一种兼顾亮度、对比度和色彩的有效增强方法,首先定义DCT子块的增强因子λ如下式
设Cb和Cr通道的子块DCT系数分别为U(k,l ), V(k, l ),0≤k, l≤7,构造下式映射其 DC 系数,来保持图像色彩
3.3 反射分量的局部细节增强
反射光分量包含大量图像细节,对其进行局部对比度增强能够提高图像的清晰度,增强场景中观看者感兴趣的细节部分。图像细节对比度增强可分为直接对比度增强与间接对比度增强,直接对比度增强在增强前需度量图像的对比度,本文采用一种基于 DCT域图像对比度定义的一种新的直接对比度增强方法。DCT系数反映了图像的空间频谱含量,AC系数反映的空间频率随着距DC系数距离的增大而增大,进而反映了图像细节的对比度。如图1所示,定义DCT域第n个频带(n≥1)的对比度度量为cn
φt是每个频带中AC系数的平均值,N的计算公式如下
14个频带在这种方式下定义的对比度cn(n≥1)近似相等地表现了各频带的空间频率,充分反映了图像较亮和较暗区域的细节,并且与JPEG编码中的之字形结构相一致,对cn操作能有效提高图像质量。
假设原始DCT子块的对比度为C=(c1, c2,…,c14),cn是对应频带φn的对比度,增强后子块的对比度为= (),增强后所有频带的对比度由下式得到
算法最后将各通道图像入射和反射分量融合并逆DCT变换至空间域,得到输出图像。
4 实验结果和分析
本文的实验平台:硬件为 CPU Intel双核2.0GHz,内存 2G;软件为 MABLAB7.0,Windows XP操作系统。实验主要针对高动态范围图像。
下面将本文算法处理的效果与 MSR和Jinshan Tang提出的基于DCT域频带调整的增强算法[3-4]进行比较,实验结果和直方图对比如图3至图5所示。
图3 Village处理结果及直方图比较
图4 Door处理结果及直方图比较
图5 Coin处理结果及直方图比较
以上实验结果中每组图像中(a)为原图,(b)为MSR的处理结果,(c)为Jinshan提出的DCT域增强算法的处理结果,(d)为本文算法的处理结果。从图3至图5可以看出,MSR的处理结果在色彩上相对灰暗,而本文算法在 YCbCr色彩空间对处理结果的亮度和色彩统一考虑,处理后效果优于 MSR,色彩显得更为自然,细节也更加丰富,由图3和图5中直方图可知本文算法处理后亮度值居中偏上的像素点占的比重更高,过暗和过亮的像素占的比重很小,分布更均匀,而图像信息也大多集中在这一中间区域,因此图像更清晰明亮。Jinshan的算法处理的图像往往在接近255处拥有较多像素,说明该算法容易过度增强而出现曝光现象。
图3至图5中画面中都既有较亮的区域又有较暗的区域,是典型的高动态范围图像,本文算法很好地增强了较暗的区域同时抑制了较亮的区域。图3中底部房屋的细节本文算法的增强效果较MSR和Jinshan的算法更好,对天空晨曦阳光的抑制也更好,光晕处没有出现过亮的情况,Jinshan的算法使得天空曝光过度而丢失了云彩等图像信息;图4中远处的门和近景的柜子细节本文算法增强得较MSR和Jinshan的算法更好,MSR和Jinshan的算法都未能还原出柜子的本身面貌,Jinshan的算法对过度增强了门上的阳光;图5本文算法很好地增强了右边较暗的部分同时抑制了左上角较亮的部分,很好地还原了硬币的光泽,Jinshan的算法在图像左上角再次出现了过度增强,而MSR算法没有很好地增强较暗部分。
表 1至表 3给出了上图中各处理结果的均值,标准差和熵。均值反映了图像的平均亮度,标准差反映了图像的对比度,熵反映了图像所包含的信息量。本文采用Jobson提出的基于统计的图像质量评价方法进一步比较各处理结果[14]。统计结果表明当灰度均值为100到200之间,标准方差在35到80之间时,图像所表现的质量越好,如图6所示。
图6 视觉效果分布
统计的具体做法是:将图像分成不重叠的大小相同的子块(一般取50×50或60×60),然后分别计算每个子块的标准方差,再将得到的子块标准方差整体求平均,得到的平均方差与图像的灰度均值相乘来得到评价结果。相乘的结果值越大那么图像的质量就越好。
表1 V illage的信息量
表2 Door的信息量
表3 Coin的信息量
由表1至表3可以看出,通过本文算法处理后的图像,其亮度、对比度(均值)和所包含的信息量(熵)也相对较好,大部分均值集中在130到200之间,这范围比较适合人眼的观察范围;而标准差则降低了,说明像素之间亮度的差异减少了,灰度级更集中分布在均值附近,更适合人类视觉去观察。图像的质量评价结果普遍高于 MSR算法和现有的DCT增强算法,原图*值相对小,对应的图像的亮度与对比度很差,经本文算法处理后的质量评价数据较MSR算法和现有的DCT增强算法的处理数据普遍提高,对比度更高,色彩细节也更好。
下面将本文算法与现有的 DCT域图像增强算法(Jinshan Tang提出的基于DCT域频带调整的增强算法)对块状效应的抑制进行比较,由于原图像较大,对块状效应的抑制效果缩放后不能很清楚地观察到,因此截取图中的画框部分如图7所示。
图7 Zoo块状效应抑制比较
从图7可以看到,现有的DCT域增强算法处理效果房檐及其与天空交界处呈明显的锯齿状,本文算法则很光滑,说明本文算法较现有的DCT域增强算法能更好地抑制块状效应。
5 结 论
针对现有 DCT域图像增强算法在处理高动态范围图像时,不能很好地增强图像细节,抑制过亮区域,并容易产生块状效应的局限性,提出了一种新的基于Retinex的DCT域图像增强新算法,将 DCT系数分为入射分量和反射分量,对入射分量操作调整图像的动态范围,对反射分量操作增强图像的局部细节,能有效地增强图像的整体对比度和细节。同时算法自适应地抑制块状效应,并根据图像的分布特性自动地选取参数。实验结果表明,对不同退化程度的高动态范围图像,能够有效地增强其对比度和纹理,在亮度、色彩、细节方面都能取得较好的视觉效果。
彩色图像的 R、G、B三个通道之间存在非常紧密的联系,将它们分开处理并不符合人类视觉的成像模型。本文作者将在这一点作进一步的研究,探索如何将Retinex算法和DCT域图像增强作用于符合人类视觉模型的色彩空间。
[1]Agaian S, Panetta K, Grigoryan A. Transform-based image enhancement algorithms with performance measure [J]. IEEE Trans. Image Process., 2001, 10, (3):367-382.
[2]Tang J, Peli E, Action S. Image enhancement using a contrast measure in the compressed domain [J]. IEEE Signal Processing Letters, 2003, 10 (10): 289-292.
[3]Tang J, Kim J, Peli E. Image enhancement in the JPEG domain for people with vision impairment [J]. IEEE Trans. Biomedical Engineering, 2004, 51(11):2013-2023.
[4]Peli E. Contrast in complex images [J]. Opt. Soc.Amer., 1990, 7: 2032-2040.
[5]Iqbal K, Chaudhry A, Khan A, et al. Multiscale contrast enhancement for compressed digital images with block artifacts consideration [C]//Innovations and Advanced Techniques in Computer and Information Sciences and Engineering, Bridgeport, Connecticut:Springer Netherlands, 2007: 267-272.
[6]Lee S, Ha V H S, Kim Y H. Dynamic range compression and contrast enhancement for digital images in the compressed domain [J]. Optical Engineering, 2006, 45(2): 1-14.
[7]Lee S. An efficient content-based image enhancement in the compressed domain using Retinex theory [J].IEEE Trans. on Circuits and Systems for Video Technology, 2007, 17(2): 199-213.
[8]Luo Y, Wars R K. Removing the blocking artifacts of blockbased D C T compressed images [J]. IEEE Trans.Image Process., 2003, 12(7): 838-842.
[9]Land E, McCann J. Lightness and retinex theory [J].Opt. Soc.Amer., 1971, 61(1): 1-11.
[10]Jobson D J, Rahman Z, Woodell G A. Properties and performance of a center/surround Retinex [J]. IEEE Transactions on Image Processing, 1997, 6(3):451-462.
[11]许 欣, 陈 强, 王平安, 等. 消除光晕现象的快速Retinex图像增强[J]. 计算机辅助设计与图形学学报, 2008, 20(10): 1325-1331.
[12]Gibbs A L, Su F E. On choosing and bounding probability metrics [J]. International Statistical Review, 2002, 70(3): 419-435.
[13]Munteanu C, Rosa A. Color image enhancement using evolutionary principles and the Retinex theory of color constancy [C]//Proceedings of the 2001 IEEE Signal Processing Society Workshop, 2001:393-402.
[14]Jobson D J, Rahman Z, Woodell G A. The statistics of visual representation [C]//Proceedings of SPIE,Orlando, 2002, 4736: 25-35.