基于亮度分层的快速三边滤波器色调映射算法
第23卷第1期2011年1月
计算机辅助设计与图形学学报
Jo ur nal of Co mputer A ided Design &Computer G raphics V ol. 23N o. 1Jan. 2011
基于亮度分层的快速三边滤波器色调映射算法
刘衡生, 沈建冰
*
(北京理工大学智能信息技术北京市重点实验室 北京 100081) (shenjian bing@bit. edu. cn)
摘要:三边滤波器是在双边滤波器的基础上引入了梯度信息, 能够很好地保留图像细节, 但其时间开销较大. 为此, 提出了一种基于亮度分层的快速三边滤波算法. 通过对三边滤波器中的梯度滤波阶段进行加速, 把图像按照像素亮度值分成多层, 并对每一层计算2幅中间图像, 可在中间图像上进行高斯滤波得到梯度滤波的结果. 实验结果表明, 使用该算法进行高动态范围图像的色调映射, 速度较原三边滤波器提高约10~15倍, 而获得的低动态范围图像的视觉质量接近于原三边滤波器.
关键词:高动态范围图像; 快速三边滤波器; 色调映射; 亮度分层中图法分类号:T P391. 41
Tone Mapping Using Intensity Layer Decomposition based Fast Trilateral Filter
Liu H engsheng and Shen Jianbing
*
(Beij ing L a borator y o f Intellig ent I nf or mation T echnolog y , Beij ing Institute o f T ec hnology , Be ij ing 100081)
Abstract :By introducing a g radient field into the bilateral filter, the tr ilateral filter favo rably preserv es image details at the cost of high co mputatio nal consumptio n. In this paper, w e present a fast tr ilateral filtering alg orithm based on intensity lay er decomposition. The proposed approach accelerates the gradient filtering in three stages:decomposing the im age intensity into several layers, computing two intermediate im ag es for each lay er, and perform ing Gaussian filtering on these interm ediate images. Exper im ental results show that o ur approach is abo ut 10times faster than the standard solution in the contex t o f tone mapping, and achieves similar image quality. Key words :high dynam ic range imag e, deco mpo sition
fast trilateral filter, tone mapping,
intensity layer
1 高动态范围图像的色调映射技术
动态范围是指图像中像素最大亮度与最小亮度的比值. 传统的RGB 图像格式使用8位二进制整数表示每个颜色分量, 其动态范围为100:1, 而真实场景的动态范围(100000000:1) 远远超出这一范围. 传统图像格式无法真实地表达动态范围很高的场景, 而高动态范围(high dynam ic range, H DR) 图像是针对这一问题所设计的新型图像格式, 它通常使用
浮点数来表示每个颜色分量, 这样能够表达更高的动态范围. 目前, 获取H DR 图像的主要方法是多曝
[1]
光融合法.
色调映射算法是H DR 图像研究中最为关键的部分, 其主要原因在于目前占主导地位的有限动态范围媒介(如CRT 和LCD 显示器或者投影仪等) 只能显示有限动态范围的图像, 使人们不能观察H DR 图像的全部信息. 色调映射是指将一幅H DR 图像转换为低动态范围图像的方法, 它提供了如何将一种现实场景的亮度值映射到显示设备能显示的范围,
收稿日期:2010-07-13; 修回日期:2010-09-13. 基金项目:国家自然科学基金(60903068) ; 北京理工大学优秀青年教师基金(2009Y0707) ; 浙江大学CAD&CG 国家重点实验室开放课题基金(A0912) . 刘衡生(1987 ) , 男, 硕士研究生, 主要研究方向为高动态范围图像的色调映射技术; 沈建冰(1978 ) , 男, 博士, 副教授, 论文通讯作者, 主要研究方向为纹理设计、高动态范围图像处理、视频的非真实感绘制、基于信号分析的.
86
计算机辅助设计与图形学学报 第23卷
除了压缩亮度范围之外, 它还必须充分保留原始图像的感观质量, 如保留对比度、图像细节等对于表现原始场景非常重要的信息.
过去的十几年中, 在计算机图形学领域已经有大量的H DR 图像的色调映射算法, 大致可以分为2种类型:一种是空域不变或者叫作全局色调映射(全局动态范围压缩). 该类算法在对图像进行动态范围色调变换时, 在每个像素上使用同一条变换曲线, 变换曲线可以预先指定或者根据图像的内容获取; 另外一种是空域变化或者叫作局部色调映射(局部动态范围压缩). 该类算法针对图像的不同区域进行不同的变换.
全局色调映射算法的优点在于整体架构简洁且运算效率高, 缺点是会导致图像结果在细节、颜色、对比度及纹理信息的损失. Drag o 等提出了基于人类视觉系统与对数变换函数的算法. 由于对数变换时基数的选择对色调映射的效果影响很大, 该算法能自适应地根据每个像素点的亮度值来自动调整对数的基数, 且能够处理非常大的动态范围, 但却以牺牲H DR 场景中的可见性为代价来保留亮度的差异程度信息, 因此也会使得某些H DR 图像在色调
[3]
映射后变得非常模糊并丢失细节. Reinhard 等提出了基于模拟光感受器的亮度适应机制的色调映射算法, 其计算速度较快, 包含的若干独立参数可分别
[4]
控制对比度、全局亮度等信息; H ateren 等利用基于视锥的静态 动态响应特性的量化模型来自适应地模拟H DR 图像 视频的色调映射过程, 同时考虑了视锥通道信息处理过程的若干影响因素, 给出了一种利用视锥的静态 动态响应特性函数进行色调映射的方法. 由于这些全局色调映射算法对H DR 图像中的每一像素点使用相同的变换, 通常很难定义可以很好地适应图像中每个像素的色调映射曲线, 所以导致结果图像在纹理、颜色、细节等信息有一定程度的损失.
针对全局色调映射算法的不足与缺陷, 研究人员提出了大量的、能产生更好的动态范围压缩效果的局部色调映射算法, 对H DR 图像中的不同区域
[5]
进行不同的线性或者非线性变换. Fattal 等在梯度域上对亮度图像进行多尺度的衰减, 再对新梯度图像通过求解一个偏微分方程来获得低动态范围图像; 但直接对修改过的梯度图像进行偏微分方程的求解可能会引起色调映射后的结果出现视觉上的瑕疵(如物体边缘产生的光晕) . 宋明黎等[6]提出一种基于概率模型的方法, 分别对局部像素的色调能量分布与梯度变化约束建立概率统计模型, 并通过求[2]
小化问题, 能够避免光晕, 但有时会引起较严重偏色. Durand 等[7]提出了基于双边滤波器的局部色调映射算法, 将输入H DR 图像分解为基本层和细节层来操作, 对输入的H DR 图像使用双边滤波器算法进行滤波得到基本层, 然后用原图像减去基本层可得到细节层, 细节层中保留了图像的细节信息; 保持细节层, 将基本层进行对比度的压缩, 即可完成动态范围压缩的工作. 虽然双边滤波器算法具有保持边缘的优良特性, 但是不能对高梯度和高曲率的图像区域进行很好的滤波, 因此也可能会在色调映射后的图像中引入视觉上的瑕疵. Choudhury 等[8]在双边滤波器的基础上, 从信号分析的理论着手, 提出了基于三边滤波器的H DR 图像的色调映射算法, 但该算法比较耗时, 处理一幅H DR 图像往往需要好几分钟或者好几十分钟的计算时间.
本文在快速双边滤波器算法[9]的基础上, 提出了一种新的基于亮度分层的快速三边滤波器的色调映射算法, 其速度比已有的基于常规三边滤波器的色调映射算法快10~15倍.
2 HDR 图像的三边滤波器色调映射算法
2. 1 双边滤波器
Durand 等[7]使用双边滤波器将一幅H DR 图像分成基本层和细节层, 其中图像经双边滤波器滤波后的结果作为基本层, 原图像与基本层的差作为细节层; 在保留细节层的同时大比例压缩基本层的动态范围, 以达到色调映射的目的. 双边滤波器含有2个权函数, 分别通过衡量空间距离和亮度相似度在空间域和亮度域上对邻域像素进行衰减, 其形式都是高斯函数. 双边滤波器的定义为
I out (x ) =k(x ) =
! !
1k(x )
I
!
!
in
( ) c( -x ) s(I in ( ) -I in (x ) ) d
in
(1) (2)
c( -x ) s(I
( ) -I in (x ) ) d
其中I ou t 表示图像I in 经过双边器进行滤波后的结
果. 双边滤波器的特点在于引入了亮度项, 与传统的高斯滤波器相比, 双边滤波器具有良好的边缘保持特性, 但仍不能对高梯度和高曲率的图像区域进行很好的滤波.
2. 2 三边滤波器
Choudhur y 等[8]在双边滤波器的基础上提出了三边滤波器, 除了空间位置和亮度外, 三边滤波器又引入了图像的梯度信息, 具有∀梯度保持#特性, 因此能够精确地区分基本层和细节层. 双边滤波器的滤.
第1期刘衡生, 等:基于亮度分层的快速三边滤波器色调映射算法
87
三边滤波器主要包括2步, 每一步都是经修改的双边滤波. 下面简要介绍三边滤波器.
第一步称为梯度滤波. 计算输入图像I 的梯度I , 这里使用前向差分计算梯度, 对I 进行双边滤波得到较平滑的梯度
G (x ) =k (x ) =
1 和每一个可能的亮度值k , 令
W k ( ) =s(I in ( ) -k) ,
J k ( ) =W k ( ) ∃I in ( ) ;
W k 和J k 实际上是2组根据k 计算出的新图像, 这一过程相当于对原图像按像素亮度分层. 则式(1) (2) 分别可写成
I out (x ) =
k I in (x ) (x )
! !
!
!
I in ( ) c( -x ) s(
I in ( ) -
I in ( ) -I in (x ) ) d .
I in (x ) ) d ,
!
!
c( -x ) s(
c( -x ) J
!
I in (x )
!
I in (x )
( ) d ,
第二步称为细节滤波. 使用倾斜的滤波窗口, 对
每一个像素x , 倾斜角度为G (x ) , 亮度域核函数衡量邻域内每一个像素 到滤波窗口中轴的距离, 这与原始的双边滤波器不同. 根据G (x ) 计算其邻域内每一个像素 的估计值P (x , ) , 即
P(x , ) =I in (x ) +G (x ) ∃( -x ).
定义 处的局部细节值I (x , ) 为像素 实际值和估计值的差, I (x , ) 实际就是 到滤波窗口中轴的距离I (x , ) =I in ( ) -P (x , ). 像素x 经三边滤波的最终结果
I out (x ) =I in (x ) +
!
I (x , ) c( -x ) s(I (x , ) ) f (x , ) d k (x ) !
k I in (x ) (x ) =
c( -x ) W
( ) d .
[10]
现在双边滤波器已经被表示成对一组图像进行高斯滤波的过程, 本文使用Der iche 提出的迭代
法来近似计算高斯滤波. 需要注意的是, 上述方法局限于像素值为整数的情况. 在H DR 图像中, 图像的像素值和梯度均为浮点数, 我们使用线性插值来处理这一问题.
对于一幅H DR 图像, 其最大亮度为I max , 最小亮度为I min , 把它等分成m 个亮度级, 分别是I 0, I 1, &, I m 1, 则有
I k =I min +k ∃(I max -I min ) (m -1) , k =0, 1&, m -1.
对于每一个I k , 计算J Ik 和W Ik . 当I in (x ) %[I L , I L +1]时, 使用线性插值来计算I out (x ) , 即
!
L+1in I out (x ) =c( -x ) J I L (x ) ( ) d +
k L (x ) (I L+1-I L ) !
!
in L
c( -x ) J I L+1(x ) ( ) d (5) k L+1(x ) (I L +1-I L ) !
! !
(3)
k (x ) =
c( -x ) s(I
(x , ) ) f (x , ) d (4)
式(3) (4) 中f (x , ) 为取值为0或1的二值函数, 其作用是对邻域内的像素进一步加以区; 若像素 与
像素x 的梯度差异过大, 则在对x 滤波时忽略 . f (x , ) 定义为
f (x , ) =
1, if G ( ) -G (x )
.
Deriche 迭代法近似计算高斯函数能够在常数
时间内完成, 因此本文算法中梯度滤波阶段的时间复杂度为O(mn). 其中, n 是图像的像素个数; m 值意味着速度和精度的取舍, 可作为用户设定的参数. 使用较小的m 可以提高算法速度, 但图像细节损失较大. 本文把一幅H DR 图像按亮度分成m 层, 对每一层计算2幅中间图像J 和W , 如果在算法运行过程中保存所有m 层的中间图像, 则需要占用2m 倍输入图像大小的内存. 本文中, 算法运行的任何时刻都只保留相邻两层的中间图像. 首先计算I 0和I 1的中间图像, 并利用式(5) 对所有亮度I in (x ) %[I 0, I 1]的像素进行计算; 然后丢弃I 0的中间图像, 计算I 2的中间图像, 并对所有亮度I in (x ) %[I 1, I 2]的像素进行计算; 依次进行, 直到所有层都计算完毕. 本文提出的快速三边滤波器流程如图1所示.
3 基于亮度分层的快速三边滤波器
三边滤波器的主要问题在于速度, 应主要关注如何加速对梯度滤波阶段, 因为这一阶段占据了三边滤波器的大部分时间开销. 本文借鉴了文献[9]中提出的亮度分层方法.
对于一幅传统的低动态范围图像, 图像亮度I in (x ) 是离散整数值, 假定I in (x ) %[0, N -1], N 是总的灰度级数. 假定I in (x ) =k , 对于每一个像素
图1
88
计算机辅助设计与图形学学报 第23卷
次属于麻省理工学院的Fr do Durand 和H DRsoft
4 实验结果与讨论
图2所示为由本文提出的快速三边滤波器进行H DR 图像色调映射流程中每一详细步骤示例图. 图3所示为使用m =10对本文算法与原三边滤波器进行H DR 图像色调映射的效果以及时间开销对比, 此时约有10~15倍的加速, 而2种算法结果的视觉质量一致. 图3中所使用H DR 图像的版权依
公司. 利用本文算法对多幅H DR 图像进行实验的结果表明, 取m =10已能获得视觉效果满意的图像细节和加速性能. 由于H DR 图像中的浮点数像素值的存在, 在过于接近的亮度层之间进行插值并无意义, 因此取过大的m 值并不能获得更多的图像细节. 图4所示为m 分别取2, 4, 6, 8, 10时结果图像的细节对比, 所使用H DR 图像的版权属于南加州大学的Paul
Debevec.
图2 本文算法步
骤示例图
图3
第1期刘衡生, 等:基于亮度分层的快速三边滤波器色调映射算法
89
图4 m 取不同值时结果图像细节对比
图5所示为本文算法与其他几种色调映射算法的色调映射结果对比, 由图可见, 本文算法较好地保
留了原三边滤波器的细节保持特性, 其所使用H DR 图像的版权属于麻省理工学院的Fr do Durand.
图5 4
种算法实验结果对比
图6所示为本文算法在更多场景类型图像上的结果. 其中, 图6e 所使用H DR 图像的版权属于中
佛罗里达大学的Erik Reinhard; 图6b, 6d, 6g 所使用H DR 图像的版权属于H DRsoft 公司; 图6h 所
图
90
计算机辅助设计与图形学学报 第23卷
使用H DR 图像的版权属于南加州大学的Paul Debevec; 图6i 所使用H DR 图像的版权属于诺基亚研究中心的Kimm o Ro im ela. 可以看出, 本文算法对于大多数场景都能产生高质量的结果, 然而对于一些极端场景, 例如动态范围很大而绝大多数像素亮度集中在较小的区间, 使用第3节所述的均匀分层然后在相邻层之间线性插值的方法会导致较大误差. 我们相信, 使用基于直方图统计的非均匀分层能够改善这一问题; 使用更复杂的插值方法应能改善结果, 但这也要求在算法运行时保存更多的层, 增大了空间开销. 表1所示为本文算法与原三边滤波器在这些图像上的时间开销对比, 设m =10.
表1 计算时间统计表
计算时间 s
H DR 图像名称Vin esun set M emorial Foyer S unset M tT amWest T rees W indow Grandcanal Landscape
图像大小720∋480512∋768120∋800819∋5911214∋732640∋4711296∋9721200∋800800∋1200
文献[2]算法
54. 0558. 27146. 975. 61138. 0644. 3199. 67146. 72132. 30
本文算法5. 394. 6611. 257. 1612. 332. 6317. 4713. 2512. 25
研究工作中, 我们希望通过GPU 技术和信号分析技术来实现能满足交互编辑应用场合的实时三边滤
波器, 及其对H DR 图像进行实时色调映射的算法. 参考文献(References) :
[1]Debevec P E,
M alik J . Recovering high dynam ic range
radiance maps from photog raph s [C] Computer Graphics Proceedings, Ann ual Conference S eries, AC M SIGGRAPH. New York:ACM Press, 1997:369-378
[2]Drago F, M y szkow ski K, Annen T. Adaptive logarithmic
mapping for displaying high contrast s cen es [J]. Computer Graph ics Forum, 2003, 22(3) :419-426
[3]Reinhard E, Devlin K . Dynamic range redu ction ins pired by
photoreceptor
p hysiology
[J].
IEEE
T ran saction s
on
Visualization and Computer Graphics, 2005, 11(1) :13-24[4]Van H ateren J H . Encoding of high dynamic ran ge video w ith
a model of human cones [J]. ACM Trans actions on Graphics, 2006, 25(4) :1380-1399
[5]Fattal R, L ischin ski D, Werman M . Gradient domain hig h
dynamic
ran ge
compression
[C]
Computer
Graphics
Proceedings, Ann ual Conference S eries, AC M SIGGRAPH. New York:ACM Press, 2002:249-256[6]Song M ingli, W an g Hu iqion g, Chen Chun,
et al .
Tone
mapping for high dynamic range image us ing a probabilis tic model [J]. Journal of Softw are, 2009, 20(3) :734-743(in Chin ese)
(宋明黎, 王惠琼, 陈 纯, 等. 基于概率模型的高动态范围图像色调映射[J]. 软件学报, 2009, 20(3) :734-743) [7]Du rand F, Dorsey J . Fast bilateral filtering for th e display of
high dynamic range
imag es
[C ]
Computer
Graphics
Proceedings, Ann ual Conference S eries, AC M SIGGRAPH.
5 总结与展望
本文提出了一种基于亮度分层的快速三边滤波
器, 以及利用该滤波器对H DR 图像进行快速色调映射的算法. 该算法主要通过对常规三边滤波器中的梯度滤波阶段进行加速, 即通过把图像按照亮度分成多层, 对于每一层计算2幅中间图像, 梯度滤波的结果由在中间图像上进行高斯滤波得到. 利用本文算法对H DR 图像进行色调映射, 速度较基于常规三边滤波器的色调映射算法提高约10~15倍, 而实验结果可以与基于常规三边滤波器的方法相媲美, 证明了本文算法的有效性和快速性.
虽然本文算法目前较常规的三边滤波器算法已经有了较大的计算速度的提高, 但是利用该算法在处理一幅100M 左右的高分辨率H DR 图像时, 还是需要1min 左右的计算时间, 仍旧不能满足实时图形处理和交互式图形编辑的应用场合. 在今后的
New York:ACM Press, 2002:257-266
[8]Choudh ury P, T umb lin J. T he trilateral filter for hig h
contrast images and mes hes [C] Proceedings of the 14th Eurographics
W orksh op
on
Ren dering.
Aire la ville:
Eurographics Association Press, 2003:186-196
[9]Yang Q X, T an K H, Ahu ja N . Real time O (1) b ilateral
filtering [C] Proceedings of IE EE Conference on Computer Vision and Pattern Recognition. Wash ington D C:IEE E Computer S ociety Press , 2009:557-564
[10]Derich e R. Recursively im plem enting th e Gaussian and its
derivatives [C] Proceeding s of 1992:263-267
[11]Reinhard E, Stark M , Shirley P, e t al . Ph otographic tone
reproduction for digital images [C] Computer Graphics Proceedings, Ann ual Conference S eries, AC M SIGGRAPH. New York:ACM Press, 2002:267-276
the 2nd
International
Conference on Im age Proces sing. Sin gapore:World Scientific,