Real-time noise-aware tone mapping

Abstract

许多应用都需要实时高质量的视频色调映射,例如相机中的数字取景器,适应环境光的显示算法,相机内处理,视频游戏的渲染引擎和视频后处理。我们提出了一个可行的解决方案,通过设计一个视频色调映射算子来控制噪声的可见性,适应显示和观看环境,最大限度地减少对比度失真,保留或增强图像细节,并且可以在没有任何预处理的情况下在传入序列上实时运行。据我们所知,没有现有的解决方案提供所有这些功能。我们的新贡献是:一种快速计算局部显示自适应音调曲线的方法,该方法可以最大限度地减少对比度失真,一种快速的细节增强方法,没有环形伪影,以及结合上述所有功能的集成视频音调映射解决方案。

1 Introduction

高动态范围(HDR)视频将为高端影院和消费级产品提供前所未有的观看体验改进。在对视觉保真度和艺术自由度要求的推动下,HDR技术目前发展非常迅速。在拍摄方面,我们看到了专业hdr相机系统的发展,如Arri Alexa XT和Red Epic Dragon,其扩展动态范围高达14 - 16.5 f-stops,以及研究原型[Tocci等人,2011;Kronander et al. 2013]显示出高达20 - 24光圈的动态范围。在制作方面,主要工作室通过开发完全支持hdr的制作流程来顺应这一趋势,并将全新的创意工具放在美工手中。在显示方面,HDR技术也备受关注。制造商,例如Sim2,已经开始使用高对比度局部调光技术来扩展动态范围,杜比视界x -tend动态范围PRO最近已经发布。尽管从捕获和处理到压缩和显示,在hdr视频管道的每一步都花费了大量的努力,但一个重要的挑战仍然需要实质性的改进:hdr视频的色调映射。

尽管需要鲁棒的视频色调映射,但现有的算法往往达不到预期,因为它们往往会显示或放大噪声,不能处理大对比度压缩,引入振铃,重影或时间闪烁[Eilertsen等人,2013],不适应显示和观看条件,或者计算速度慢。

我们提出了一种新的视频色调映射算子(TMO),它可以控制噪声的可见性,适应显示和观看环境,最大限度地减少对比度失真,保留或增强图像细节,并且可以在不进行任何预处理的情况下在输入序列上实时运行。我们的色调映射的目的是在给定目标显示的约束下保持原始图像的对比度,或者为对比度增强提供创造性的控制,并提供最终结果的实时全分辨率视觉反馈。我们不会尝试匹配场景引用的HDR内容的外观或可见性,例如驾驶模拟器,尽管这些模型可以与我们的方法相结合。

我们的主要技术贡献是:

•计算本地显示自适应音调曲线的快速程序,使对比度失真最小化。

•噪声感知音调曲线自适应图像噪声。

•滤波器设计的基本细节层分解的音调映射,导致一个快速的边缘停止非线性扩散近似细节增强没有振铃伪影。

•集成的实时视频色调映射解决方案,结合了新颖的噪声控制和显示适应性,在显示限制的情况下产生高对比度和详细的视频。

为了证明我们的方法的实用性,我们使用一系列具有挑战性的输入hdr视频序列来评估我们的TMO,并将我们的算法与现有的最先进的算法进行比较。我们还展示了如何将我们的噪声感知TMO用于未处理的噪声输入数据,以及如何使用最先进的去噪算法来改善处理后的输入数据的视觉质量。最后,我们还展示了显示自适应特征的能力,以及细节提取技术提供的艺术自由度。

2 Related work

Eilertsen等人[2013]评估并分析了11个视频色调映射算子。他们将它们分为模拟视觉系统的特性和局限性的——视觉系统模拟器(VSS),试图保留原始场景外观的——场景再现操作器(SRP),以及产生主观偏好图像的——最佳主观质量操作器(BSQ)。当使用默认参数时,我们的解决方案满足了SRP操作符的意图,但也提供了对对比度增强的控制,以达到BSQ操作符的目标。Eilertsen等人得出结论,所有被测试的操作员都容易引入诸如闪烁、鬼影、放大的噪声水平或缺乏细节等伪影,我们在建议的解决方案中解决了这些问题。

时间伪影,如闪烁,是许多视频tmo的一个重要问题。对于时间稳定性,全局算子通常依赖于音调曲线随时间的滤波[Mantiuk et al. 2008],或TMO参数[?;?]。虽然这允许有效的实现,但对于本地tmo,情况更加复杂,在本地级别上,音调复制可能随着时间的推移而不连贯地变化。为了克服这些问题并降低噪声,许多局部算子在像素域使用时空滤波器,[Ledda et al. 2004;Bennett and McMillan 2005;Van Hateren 2006],或沿着运动路径,[Aydin et al. 2014]。然而,这些过滤器的计算成本通常很高,并且不能很好地用于实时处理,而实时处理是我们TMO的一个关键目标。另一个问题是,它们容易引入鬼影伪影,或者在光流失败的地方可能不能很好地工作。与这些方法相比,我们依赖于一种新的空间滤波器,专门设计用于鲁棒的基本细节层分解,因此音调再现的空间变化随时间的推移是连贯的。

所提出的空间滤波器与许多现有的边缘保持滤波器相当[Perona和Malik 1990;Aurich and Weule 1995;Tomasi and Manduchi 1998;Aubry et al. 2014]。然而,与那些相反,我们的过滤器是为了在色调映射场景中最好地提取细节而设计的,而不是保持边缘的平滑或去噪。它还产生了一个简单的实现,非常适合并行硬件体系结构。

在整篇论文中,我们使用了来自[Froehlich et al. 2014]公开可用数据库的hdr视频输入。该数据集适用于色调映射算子的评估,因为它包含在现实场景中捕获的高质量镜头。

3 Algorithm design and overview

我们的TMO,如图2所示,是围绕三个基本要求构建的:噪声感知、时间鲁棒性和显示适应性。两个基本构件是3.1节中描述的噪声模型和3.2节中描述的逆显示模型。如图所示,我们的算法主要分为三个部分:

Edge-stopping spatial filter

每个输入HDR帧I首先被转换到log域,l = log(I),并被分解为描述图像亮度变化的基层b和描述局部特征的细节层d。第5节讨论了用于鲁棒基细节层分解的滤波器设计。

Local tone curves

然后使用一组分布在图像上的局部色调曲线压缩基础层b的动态范围。每个音调曲线从输入的亮度范围映射到显示器上可实现的亮度范围,如第3.2节中讨论的显示模型所解释的那样。音调曲线最大限度地减少了由映射引入的对比度失真,同时控制噪声的可见性,它们的形状随着时间的推移被过滤,以避免时间闪烁。在第4节中讨论了噪声感知最小对比度失真色调映射。

Noise-aware control over image details

我们的TMO允许用户通过缩放细节层d来保留(SRP)或艺术地增强局部对比度和细节(BSQ)。处理后的细节层dout中的噪声可见性通过考虑原始基础层b和色调映射的基础层btm的噪声特性来控制。这将在第6节中详细描述。

然后将色调映射的基础层(btm)和处理过的细节层(dout)结合起来,使用标准技术从输入中恢复颜色[Mantiuk等人,2009],并使用逆显示模型将比色值转换为像素。

3.1 Noise in tone mapping

使用现代去噪算法可以大大降低视频序列中的可见噪声[Maggioni et al. 2012;Aydin et al. 2014]。然而,过于强烈的去噪会引入模糊和降低图像清晰度。由于缺乏清晰度是比噪声更难以容忍的伪影,常见的视频处理实践是采用保守的降噪,然后在手动颜色分级步骤中隐藏剩余的噪声。在这里,我们提出了如何通过噪声感知音调映射来自动化后一步。我们方法的输入要么是(保守地)去噪的视频序列,要么是带噪的视频序列。结果是一个视频,其中噪声的可见性通过考虑噪声特性及其在特定显示设备上的可见性来降低。

Figure 3: 许多高端相机提供的噪声水平低于视觉系统可感知的对比度(红线低于蓝线)。然而,在色调映射之后,当图像变得更亮,细节和对比度增强时,噪声通常被推入可见范围(品红色线)。因此,控制噪声的可见性是高质量色调映射的关键组成部分。洋红色虚线表示目标显示器的动态范围。

图3说明了这个问题。高端相机提供大光圈和大传感器,通常比视觉系统产生更低的噪音水平。如图3所示,摄像机噪声的红线低于HVS阈值的蓝线。然而,当图像为显示器进行色调映射时,绝对亮度水平增加,精细对比度细节增强,从而产生具有良好可见噪声(品红色线)的图像。我们方法的目标是保持噪声水平低于能见度阈值。我们的方法可以与现有的去噪方法结合使用,使去噪滤波器去除最讨厌的高幅值噪声,并通过我们的噪声感知处理隐藏低幅值噪声。

我们在两点上控制噪声可见性:当计算音调曲线时(第4.1节),以及当保留局部对比度和细节时(第6节)。为了控制噪声,我们需要对噪声的大小和可见性阈值进行建模。数码相机中噪声的变化可以建模为光强的函数[Foi et al. 2008]:

其中a和b是负责噪声的信号依赖(光子噪声)和信号独立(读出噪声)分量的参数。参数可以从输入图像中估计[Foi et al. 2008],也可以由相机提供,或者手动调整。

为了考虑视觉系统对光的非线性敏感性(韦伯-费希纳定律),我们将在对数域内操作。对数域中的噪声幅度可近似为:

这样的噪声幅度在图3中绘制为红线。可见性阈值的保守估计,如图3中的蓝线所示,由特定显示亮度水平Ld的对比灵敏度函数(CSF)的峰值给出。我们使用[Mantiuk et al. 2011]中的CSF,并将迈克尔逊对比度的检测阈值(Ct(Ld) = 1/CSF(Ld))转换为对数对比度,以获得对数亮度的最小可检测差异:

3.2 Display adaptivity

任何色调映射操作符的主要约束是可以在目标显示设备上显示的可用亮度范围。这样的范围不仅取决于特定的显示技术,如OLED或LCD,还取决于环境光水平。一部分环境光被显示屏反射,从而降低了可用的显示对比度。我们的操作器被设计为根据当前环境光水平进行调整,并产生最佳图像,这可以很容易地用光传感器测量。

可用的亮度范围可以使用标准的Gamma-Gain-Offset显示模型[Berns 1996]进行建模,并对环境光进行修改[Mantiuk et al. 2008]:

其中Ld是显示亮度或亮度(从显示表面测量),L '是像素值(0-1),γ是显示伽马值(通常接近2.2),Lmax是峰值显示亮度(办公室显示器约为200 cd/m2)。Lblack是显示黑色电平,它是在完全黑暗的房间中显示的黑色像素的亮度(LCD显示器通常为0.1 ~ 0.8 cd/m2)。Lrefl是显示表面反射的环境光。对于非光滑屏幕,这可以近似为:

其中Eamb是以勒克斯单位给出的环境照度,k是显示面板的反射率(LCD显示器为0.5-1%)。

4 Minimum contrast distortion tone-curve

将像素值从输入亮度映射到显示器亮度的色调曲线是将图像对比度降低到可显示范围的主要工具。传统摄影中使用的色调曲线呈s形,以保持中色调的对比度为代价,在低色调和高色调处产生更高的失真。如果固定形状的色调曲线是模拟电影的必要条件,那么数字处理允许每个图像甚至图像区域的色调曲线变化。本节展示了这种局部色调曲线的推导,它可以最大限度地减少对比度失真并快速计算。

为了使问题易于分析处理,我们将音调曲线参数化为带有节点(lk, vk)的分段线性非递减函数,如图4所示。L为输入的对数亮度,v为显示值的对数亮度。两个节点(lk, vk)和(lk+1, vk+1)之间的每个段k在对数亮度值中具有恒定的宽度,等于δ(在我们的实现中为0.2)。为简单起见,在显示器上可以显示的最大亮度值固定为0,最小亮度值随有效显示动态范围r的变化而变化。使用式4中的显示模型,可以计算当前环境光照水平下的r为

Expected contrast distortion

可以说,由于色调映射引起的最相关的失真是我们想要最小化的图像对比度的变化。让我们用符号G表示输入图像的对比度,用符号\tilde{G}表示色调映射后的对比度。在最简单的情况下,对比度G可以是两个相邻像素之间的差异(我们将展示推导推广到一系列对比度定义)。对于每个输入对数亮度水平l,我们可以将对比度值p(G|l)的某个分布关联起来。因此,我们可以将色调映射引起的对比度失真的期望值表示为:

Minimum contrast distortion

由于方程中的和超过20-30段,因此仅给定图像直方图,就可以用最小的计算开销找到音调曲线。与更复杂的指标(例如[Mantiuk et al. 2008]中使用的指标)相比,复杂性大大降低,其中需要构建多尺度金字塔,并需要解决一系列二次规划问题。与[Mantiuk et al. 2008]相反,我们使用简单的L2范数而不是视觉模型来测量对比度失真。然而,考虑到音调曲线的有限灵活性,复杂的视觉模型的好处是微不足道的。

4.1 Noise- and content-aware tone-curve

在前面的章节中,我们假设概率p(lk)对应于图像中给定强度值的频率(取自图像直方图)。然而,这并不是图像中特定强度水平重要性的理想估计。例如,如果图像的很大一部分包含均匀表面,例如白墙,则由于直方图中产生的峰值,相应的p(lk)值将会很高。由于平面通常不是图像中最突出的部分,因此为它们分配高重要性和陡峭的色调曲线几乎没有意义。同样,夜景通常包含大量噪音和少量细节的大区域。为这些区域分配动态范围会导致噪声放大,效果不佳。

为了解决这个问题,我们计算p(lk)值,同时考虑图像内容和噪声水平,对对比度变化高于噪声水平的区域赋予更高的重要性。首先,我们将局部对比度估计为高斯窗口内计算的标准偏差:

其中*是卷积算子,gσ是一个标准差为σ(在我们的实现中为3)的高斯核。然后,我们将概率计算为直方图,该直方图由像素位置的对比度值加权,对比度值大于噪声水平n(公式2)。正式地,这可以表示为:

S是局部对比度高于噪声水平的所有像素的集合,Bk是S的子集,其中包含特定直方图bin k中的像素。在实践中,这种方法将受传感器读出噪声影响的暗区域移向暗色调,使其不那么可见。它还避免了在大的均匀区域中过度拉伸的对比度。

Tone priority

上面提出的噪声感知图像对比度度量可以看作是图像显著性的简单度量。如果这种简单的显著性测量方法还不够,我们的方法可以很容易地扩展到更高级的测量方法,例如,为检测到的面部或肤色分配更高的显著性。我们还发现包含音调优先级参数很有用,该参数通过根据输入对数亮度对p(lk)值进行加权来平衡高音调或低音调的重要性。这为生成的图像提供了一个额外的创造性控制参数。

4.2 Temporal consistency

图像统计量p(lk)在连续视频帧之间变化很快。这可能会导致令人不安的闪烁伪影,参见[Eilertsen et al. 2013]。在基本细节层分解中,或者在帧之间的色调曲线快速变化时,可能会引入闪烁伪影。

由于空间滤波器(第5节)使用平滑的边缘停止功能组合了一组低通滤波图像,因此不会随着时间的推移引入不一致性。因此,音调曲线是我们的算子中唯一可以引入时间波动的组成部分,随着时间的推移,为了防止这种行为,这也是微不足道的。

色调曲线的过滤作用于视觉上最相关的数据,即节点位置vk。通过与技术美术师的讨论,我们发现过滤器的选择既取决于色调映射的意图/艺术目标,也取决于输入数据。我们的实现是灵活的,因为它允许交换音调曲线滤波器。在大多数情况下,我们使用3分接低通IIR滤波器,截止频率为0.5 Hz。选择这个频率是为了最小化可见闪烁,参见[Mantiuk et al. 2008]。IIR滤波器实现起来很简单,并且产生的滤波器尺寸比FIR滤波器小。在某些情况下,我们还使用时间边停止滤波器,以保持尖锐的时间过渡。然而,在试验这些(和其他)过滤器时,我们没有观察到明显的改进,除非在极端的时间变化情况下。时间滤波器的选择及其对像素响应的影响在补充资料中进行了详细的讨论和说明。

需要注意的是,时间滤波可能不能保持物体亮度的一致性[Boitard et al. 2012],一些物体的亮度可能会随着时间的推移而逐渐改变。然而,保留亮度会大大降低可实现的图像对比度,并且需要对整个视频序列进行预处理。我们的方法权衡了物体亮度一致性,以获得更好的对比度再现和实时在线处理。显然,可以通过使用较低的截止频率来增强亮度一致性。我们的音调曲线最小化了每帧的对比度失真,而时间滤波器最小化了时域的闪烁失真。时间滤波器可能会从最佳点提取每帧的解决方案,并导致该帧的解决方案稍微差一些,但对整个视频剪辑的解决方案更好。尽管有可能为整个视频序列找到一组最优的音调曲线,但这将使该方法不适合实时处理,并且不会带来质量的提高。

待续

相关推荐

  1. Linux read 命令

    2024-03-27 19:12:04       37 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-27 19:12:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-27 19:12:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-27 19:12:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-27 19:12:04       18 阅读

热门阅读

  1. 内存泄漏导致Hard_Fault问题记录

    2024-03-27 19:12:04       19 阅读
  2. Tomcat 启动闪退问题解决方法

    2024-03-27 19:12:04       17 阅读
  3. springboot结合mongodb使用(一)

    2024-03-27 19:12:04       15 阅读
  4. python type()用法

    2024-03-27 19:12:04       14 阅读
  5. 读3dsr代码②训练

    2024-03-27 19:12:04       15 阅读
  6. Android 连接USB弹窗出来USB相关选项

    2024-03-27 19:12:04       15 阅读
  7. Python教程:深入探索 Python 列表(List)

    2024-03-27 19:12:04       15 阅读
  8. linux常用命令

    2024-03-27 19:12:04       14 阅读