本文主要是介绍Tone-mapping high dynamic range images by novel histogram adjustment,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
abstract
本文提出了一种新的直方图调整方法,用于显示高动态范围图像。 我们首先提出了一种基于全局直方图调整的色调映射算子,该算子能够很好地再现高动态范围图像的全局对比度。 然后利用全局色调映射算子对图像进行分割,在局部区域进行自适应对比度调整,以再现局部对比度,保证较好的质量。 我们证明了我们的方法是快速的,易于使用和一组固定的参数值产生了很好的结果,广泛的图像。
1. Introduction
场景、图像或成像设备的动态范围定义为亮度或信号电平的最高与最低之比。 因此,现实世界的动态范围约为14个数量级。 目前的数字图像采集和显示设备在精度和分辨率等许多方面可以与卤化银薄膜相媲美,甚至超过卤化银薄膜。 然而,这些设备的动态范围仍然有限,通常仅跨越两到三个数量级。 本文将这些器件称为低动态范围(LDR)再现器件。
近年来,人们对高动态范围(HDR)成像越来越感兴趣,以更好地捕捉和再现真实世界的图像。 图 1显示了一个HDR室内/室外场景,动态范围约为25,000:1。 为了使黑暗区域的特征可见,大多数相机需要更长的曝光时间,但这将使明亮区域饱和。 另一方面,使用较短的曝光时间来捕捉明亮区域的细节会模糊较暗区域的特征。 这些限制被最近的相机解决了,这些相机允许捕捉更高的范围,通常是12-16位分辨率,或者通过使用HDR辐射度图[1-3]。 这些HDR辐射度图是通过合并许多带括号的图像的适当曝光部分而获得的,从而以32位浮点数格式记录场景的全部动态范围。 然而,这些数字仍然使大多数LDR再现设备的动态范围相形见绌,如计算机显示器、打印机和投影仪。
为了在LDR设备上再现HDR辐射度图,采用了将32位浮点值转换为8位整数值的技术,以使原始真实场景的视觉印象和特征细节仍能忠实地再现。 这些技术被称为色调映射或色调再现。 图 1是我们的色调映射方法应用于原始场景的HDR辐射图的一个例子,其对比度大大超过了可用于显示和打印的对比度。
我们的工作是基于快速和自动的色调映射算子的需要,该算子能够有效地压缩高动态范围的场景,使其在低动态范围的设备上显示,从而使再现的图像看起来令人愉快,并唤起我们在原始HDR场景中的视觉体验。
2. Review of tone mapping methods
在文献中,用于压缩动态范围的音调再现技术通常分为两大类[4]:全局色调映射算子和局部色调映射算子。
全局色调映射算子在计算上非常简单,并且保留了原始场景的强度顺序,从而避免了“晕”伪影。 Tumblin和Rushmeier[5]和Ward[6]率先解决了计算机图形学中的色调映射问题,并开发了全局色调映射算子。 Tumblin和Rushmeier的全局算子旨在匹配显示图像的感知亮度和场景的感知亮度,而Ward[6]以不同的方法解决了这个问题,旨在匹配显示图像和场景之间的感知对比度。 后来Ferwerda等人[7]提出了一种基于综合视觉模型的全局色调映射算子,成功地模拟了适应、颜色外观、视觉敏锐度和适应的时间进程等几种重要的视觉效果。 此外,拉森等人[8]使用直方图调整技术,当显示对比度超过线性色调映射算子产生的对比度时,通过限制显示对比度(由直方图均衡化映射),将现实世界的亮度映射到显示水平,然后根据人类对比度敏感度改进该思想。 此外,作者通过包括人类视觉系统的模型,如眩光、颜色敏感度和敏锐度,实现了一个更复杂的操作符。 最近,Drago等人[9]采用自适应对数映射策略来显示高动态范围图像。 他们的方法是基于这样一种观察,即在对数函数较小的底部,陡峭的斜坡可能会增加低亮度值的对比度和亮度,从而确保黑暗区域的良好对比度和可见度; 而在对数函数较高的部分,相对适中的斜率和较大的基数可能会压缩较高的亮度值。 因此,他们改变了基于亮度水平的对数函数的基,将场景亮度映射到显示水平。 最近,段等人[10]提出了一种新的全局色调映射算子,该算子使用基于学习的技术来显示高动态范围图像。 在文献中,提出了一个有趣的工作,用不同单调全局映射产生的一系列色调映射版本来可视化高动态范围图像[27]。 由于每个版本更容易优化,以清楚地显示图像的一部分,所以整套色调映射版本可以更好地呈现图像的所有信息。 然而,本文的工作主要集中在高动态范围图像的信息可视化方面,而不是本文讨论的色调映射。
全局色调映射算子通常会导致映射图像中细节的丢失,因此应用局部色调映射算子以更高的代价来更好地保留图像中的细节和局部对比度,因为局部色调映射技术在对每个单个像素的映射处理中考虑像素邻域信息。 Tumblin和Turk[11]使用了一种基于层的方法来显示高对比度图像。 他们将各向异性扩散,即保持边缘的低通滤波器[26]推广到一种新的低曲率图像简化器(LCIS),将图像分解成不同的层。 然后用不同的系数对不同的层进行压缩。 然后对这些压缩层进行重构,得到可显示的图像。 他们在分解阶段的LCIS确保从高对比度图像中提取细节,并避免光晕伪影。 最近,Durand和Dorsey[12]仅使用两个“层”,介绍了一种更简单的基于层的方法来显示高动态范围图像。 他们用双边滤波器将图像过滤成基础层和细节层。 只有基础层的对比度降低了,细节层没有被触及。 对处理后的层进行重构以产生映射图像。 双侧滤波器的选择保证了像LCIS那样在分解过程中保护边缘,从而避免了在重建阶段引入晕影伪影。 Li等人也采用了双侧滤波法[25]。 首先利用双边滤波器将图像分解为两个层次,然后利用全局映射函数调整基础层,并利用基础层获得的增益映射自适应增强细节层。 最后,他们将这两个层组合在一起,获得具有良好局部对比度的色调映射图像。 然而,对于这种方法,已报道的计算速度很慢。 在[13]中,作者提出了一种用于显示高动态范围图像的多尺度图像处理技术。 在他们的方法中,他们使用了对称的分析-合成滤波器组,并计算了多尺度子带图像的平滑增益映射。 他们的方法成功地避免了通常与多尺度方法有关的光环。 莱因哈德等人[14]使用一种新颖的局部方法将高动态范围图像映射到显示器上。 他们的方法基于众所周知的闪避和燃烧的摄影实践,以再现高对比度图像的局部对比度。 法塔尔等[15]提出了一种基于对数空间中梯度域的处理方法。 他们计算对数亮度域中的梯度,从而检测原始亮度域中相应位置的对比度大小。 然后用尺度因子来衰减较大的梯度而不是较小的梯度,这意味着压缩较大的对比度而不是较小的对比度。 最后,将衰减后的梯度场通过积分返回到对数亮度域,然后通过幂运算返回到亮度域。 最近,Krawczyk等人[16]导出了一种基于HDR图像分割成框架(一致区域)的色调映射算子,该算子使用明度感知的锚定理论,并基于明度值的局部计算。 通过合并与强度成正比的框架来计算图像的最终亮度。 利辛斯基等人[17]提出了一种新颖的交互式局部调整方法,用于图像中的色调值和其他视觉参数。 在该方法中,用户只需简单的笔触就可以指示出感兴趣的区域,然后系统自动调整这些区域的亮度、对比度等参数。
本文还研究了用于显示高动态范围图像的色调映射。 图像直方图的处理通常是控制图像对比度的一种方法。 在我们的工作中,我们首次提出了一种新的基于快速全局直方图调整的色调映射算子,该算子有效地利用了显示的整个动态范围,从而在高动态范围图像中很好地再现了全局对比度。 然而,这种算子不能更好地保留局部对比度和细节,这是全局色调映射算子的共同缺点。 在观看高动态范围场景时,人类视觉系统中的局部适应机制帮助我们看到场景中各个部分的细节。 已经有研究来模拟和更好地理解这种机制,如[18]。 受这些工作的启发,但不是在计算上建立在这些模型的基础上,我们将我们的全局音调映射算子扩展为一个新的局部音调映射算子。 该技术利用我们开发的全局色调映射算子对图像进行分割,并在局部区域进行自适应对比度调整,使每个局部区域都能更好地利用显示器的整个动态范围,同时避免噪声伪影。 由于调整是基于每个独立的局部区域进行的,自适应调整后不可避免地会出现不同块之间的剧烈跳跃。 为了解决这一问题,我们提出了一种新的双边加权方案来消除分割带来的相关边界伪影和晕影。 我们已经对大量HDR图像进行了局部色调映射算子的测试,结果表明,该算子在图像质量、自动化程度和计算速度等方面都可以与目前最先进的色调映射方法相媲美。 为了展示我们的方法,我们将本文组织如下。 在下一节中,我们首先介绍了基于快速全局直方图调整的色调映射算子。 在第4节中,我们描述了基于局部直方图调整的色调映射算子。 第5节和第6节讨论了我们建议的操作的性能。 第7节总结了我们的介绍,并简要讨论了未来的工作。
3. Global tone mapping operator
将对数函数应用于亮度增加了低亮度值的对比度和亮度,同时压缩了高亮度值。 在HDR图像的显示方面,这已经被应用于不同的方式[9,19]。 作为初始步骤,我们使用以下函数压缩高动态范围图像I的亮度以压缩亮度D
1、计算log亮度平均值;
2、key设计为等式3,平均值越大,那么key应该越大
3、key为平均值对应的映射值,等式4通过牛顿法迭代20次得到offset
D(I)直接等分256,映射到显示0~255,细节对比度会丢失,这是没有考虑到像素发布,密集分布的像素被映射到同一个显示水平。需要考虑像素发布。
图 5给出了我们算子与直方图均衡、Larson等人[8]和线性压缩的映射结果和映射曲线的一个例子。 对于这张图像,非常亮的像素很少(对应于灯的面积),但这些都是非常重要的像素。 直方图均衡明显地对这些像素进行了过度压缩,因为这些像素的总体相对较小,Larson等人的方法也是如此。 [8]因为这本质上是一种处理稀疏间隔的近似直方图均衡化方法。 结果表明,在Larson等人的方法和直方图均衡化方法所映射的图像中,由于该部分的压缩过于激进,并且没有分配足够的显示级别,灯的区域已经饱和,这一事实在映射曲线中得到了更清楚的证明。 对于线性压缩方法(在图3(a)中讨论),从来不考虑像素总体,并且平均分配显示电平,因此,可以将相对大部分的显示电平分配给明亮部分(灯区域),但代价是为图像的其他部分保留较少的显示电平。 因此,灯中的更多细节显示在图像中,然而,图像的整体对比度和细节没有很好地呈现,如图所示 5(最右的一个)。 相比之下,我们的算法Haleq在上面讨论的方法之间取得了平衡,并且在根据图像内容分配显示级别方面更加灵活,从而对灯区域和图像的其他部分都保持了良好的整体对比度和细节。
我们的算子与[8]的直方图调整技术有关,因为两者都操纵直方图。 事实上,我们对[8]的结果感到鼓舞,在[8]中,作者证明,如果目标是产生“好的、自然的图像,而不考虑人类观察者在真实环境中能看到多好”,简单的直方图操作可能提供一个最佳解决方案。 然而,[8]的直方图调整方法有几个缺点。 首先,当显示对比度(直方图均衡化映射)超过线性色调映射算子时,该方法只限制显示对比度,并根据人体对比度敏感性进一步完善该思想。 然而,在稀疏的亮度区间,压缩近似通过直方图均衡来实现。 这意味着一些跨度很大的稀疏区域将被过于激进地压缩。 在这样的间隔中,人眼可见的特征(细节)可能会丢失。 图的例子清楚地说明了这种算法的这一不令人满意的方面 5. 其次,如果场景的动态范围已经在设备范围内,[8]的方法使用线性缩放。 然而,众所周知,即使场景的动态范围适合于可视化设备的动态范围,有时线性映射也会导致显示级别的不足利用,从而导致低对比度图像。 我们的方法克服了这些缺点,为HDR图像的映射提供了一个更全面、更灵活的直方图调整解决方案。 尽管Haleq技术具有这些优点,但它有全局色调映射算子的共同缺点,即映射的图像仍然缺乏局部对比度和细节。
4. Local tone mapping operator
具有大动态范围的视觉机制称为适应,可以解释为适应当前注视点周围一定视野水平的质量[8]。 Stevens和Stevens[18]进行了实验,科学地解释了人类在不同适应水平下对不同亮度水平的视觉反应。 在他们的实验中,观察者首先适应具有均匀亮度的背景,即适应水平。 然后,它们逐渐呈现出一个小的目标亮度,该亮度随自适应亮度水平的不同而不同。 然后记录他们对这个目标亮度的视觉反应(亮度)。 他们的实验结果解释了这种现象,即当亮度较高的点位于不同的适应水平时,亮度较低的点可以被感知到较暗。 更重要的是,他们的研究结果表明,不同的亮度间隔会在视觉系统有限的反应范围内导致重叠反应,从而扩大我们的视觉反应范围,以应对高对比度场景的全动态范围。
受人类视觉系统局部自适应机制的启发,我们设计了一种新的基于自适应局部直方图调整(ALHA)的色调映射算子,以更好地绘制高动态范围的图像。
Haleq的一个典型特征是它基于全局像素统计数据有效地利用了显示器的动态范围。 如果我们能够将图像分割成小区域,并在每个局部区域应用Haleq,那么每个区域都将根据其局部像素统计信息有一个完整的显示动态范围来利用。 这相当于扩展了有限的显示动态范围。
局部区域可能获得更大的显示动态范围,并且它们可能相互重叠。 这与我们之前描述的局部适应机制一致,因此更符合我们的视觉体验。 接下来,我们详细介绍了我们的方法,该方法在局部区域应用Haleq技术来更好地映射高动态范围的图像以供显示。
4.1. HALEQ in local regions
在我们的自适应局部直方图调整算子中,第一步是对数映射(公式(1))。 下面的步骤是确定我们将对哪些局部区域应用Haleq技术。 将图像分割成局部区域有不同的方法,例如聚类和[16]中使用的方法。 在我们的研究中,我们的目标是提供一个快速的局部算子,所以我们简单地将图像分成不重叠的规则矩形块。 图 6(左)说明了我们的方法。 基于每个块中的像素统计量,我们计算局部(,其中n为块数,在图6中,为了便于说明,我们只使用9个块,即n=9),与上节描述的全局情况相同。 在局部算子中,我们使用一个共同的参数,作为对所有块的初始研究,稍后我们将引入一种自适应的方法来选择b。 如果我们把作为映射函数,对于等式1输出的单个像素值D(x,y),输出整数显示电平d(x,y)由下式给出
这篇关于Tone-mapping high dynamic range images by novel histogram adjustment的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!