一. 论文综述
解决在从多个低动态范围(LDR)输入重建高动态范围(HDR)图像出现的重影伪影问题。
在物体运动轻微的情况下,现有的方法大多是基于光流对准LDR输入或检测输入间的异常,可以很好地抑制重影伪影。但在物体运动较大时,效果不佳。
因此提出了一个新的深度框架,称为NHDRRnet(非局部高动态范围重构网络),它采用了另一种方向,并试图通过利用输入中的非局部相关性来消除重影伪影。
在NHDRRnet中,我们首先采用Unet架构融合所有输入,并将融合结果映射到低维深度特征空间中。然后,我们将结果特征馈送到一个新的全局非局部模块中,该模块通过使用由其对应关系确定的权重加权平均所有其他像素来重建每个像素。此外,还加入了一个三通剩余模块来捕获更强大的局部特征,这被证明是进一步提高性能的有效方法。
二. HDR重建技术
1.基于运动检测的方法(输入所涉及的运动足够小)
在多个LDR图像中检测可信的运动区域,然后在融合中去除这些区域。
2.基于对齐的方法(输入所涉及的运动足够小)
估计光流来对准输入的多个LDR图像。可以处理一些大运动的情况,但它们的性能受到光流估计精度的限制。这种算法有两个缺点。首先,它们对复杂的背景和大的运动很敏感;另一个缺点是基于光流的方法不能合成饱和和遮挡区域的新内容。
3.基于深度学习的方法
基于DCNNs的HDR重建方法,以学习从多个LDR图像到潜在HDR图像的复杂映射函数。
4.非局部高动态范围重构网络NHDRRnet
提出通过在深度特征空间中利用输入多幅LDR图像的非局部相关性来去除重影伪影。不同于仅使用多个残差块进行特征粗融合,本方法采用双分支策略。一个分支是去除重影和不对齐的区域,另一个分支试图从LDR图像中收集局部细节。
具体而言,首先采用Unet架构将所有输入集成到深度特征空间中。然后开发了一个新的全局非局部模块,并将其纳入到网络中来处理生成的深度特征。全局非局部模块由自适应池层、非局部处理层和自适应解释层组成,在全局非局部模块中,通过对所有其他像素的对应关系确定权重,对每个像素进行加权平均重建。这样,所提出的网络能够充分利用输入图像。此外,它还可以选择有用的信息,并将其调制成合适的形式进行重构。
此外,为了获得更强大的深度特征表示,有利于恢复HDR图像的丰富细节,进一步采用三通道残差块来获取输入的局部特征,然后将得到的局部特征和来自全局非局部模块的非局部特征连接起来,重建最终的HDR图像。
-
NHDRRnet架构
(1)介绍
该网络旨在通过新颖的Unet架构直接解决HDR成像问题。HDR成像的目标是获取一组动态场景的LDR图像{L1, L2,…, Lk}作为输入,并产生与参考图像对齐的无鬼HDR图像。训练数据集每个训练样本只包含三张LDR图像,将中间曝光图像作为参考图像。HDR图像的内容要么直接由LDR输入生成,要么在目标区域被遮挡或饱和时通过非局部策略产生幻觉细节。
此外,需要LDR域中的图像L1、L2、L3来检测噪声或饱和区域,通过伽马校正得到HDR图像H1, H2, H3。这些HDR域图像由LDR图像得到:
其中,式中ti为第i张图像Li的曝光时间,γ为伽马校正参数。注意,H表示最终的HDR图像,Hi表示Li的HDR图像。
因此,合并过程可以写为:
其中H表示HDR图像与其LDR输入的复映射函数,我们使用所提出的网络在足够的训练数据的帮助下学习该函数。Li, Hi, a和H的值在0到1之间。NHDRRnet的输入是未经对齐预处理的原始LDR图像。
(2)概述
a. 以Unet作为基准
Unet是一个具有跳过连接的编码器-解码器框架。编码器层捕获不同尺度的上下文信息,底层特征获取HDR图像的细节,高层特征有利于去除重影伪影。解码器层允许网络将全局上下文信息传播到更高分辨率的层,跳过连接连接编码器层的特征和相应的解码器层的输入。
b. 合并块
它包括两个模块(即三通残差模块和全局非局部模块)来提取局部和全局信息。
三通残差模块
用于从输入中学习更有效的特征。很明显,不同的接受域包含不同的信息,因此聚合这些信息是增强细节的更好方法。
在三路残差模块中使用了几种不同类型的核,以增加网络的宽度和网络对多尺度处理的适应性。较小的核尺寸致力于提取局部特征,较大的核尺寸可以覆盖更广泛的接收层区域。
使用小尺寸过滤器(1 × 1),中等尺寸过滤器(3 × 3)和大尺寸过滤器(5 × 5)。小滤波器能够提取特征的局部细节,而大滤波器可以覆盖接收层的更大区域。所有的特征以通道方式连接,并通过卷积层进行压缩。
与一般残差模块不同,三遍残差模块可以嵌入不同的卷积核。图3中的T0表示三通剩余模块的输入。
然后,将T0与几个不同的核进行卷积,得到特征T1, T2, T3
其中,C1、C3、C5分别表示核大小为1 × 1、3 × 3和5 × 5的卷积层。所有卷积层之后都有一个ReLU激活函数。每个卷积层的通道数为256个。T1、T2、T3的维数相同,通道连接,采用3 × 3卷积层更稀疏地表达连接的特征。
通过学习输入特征T0的残差生成输出特征T5。
非局部模块
全局非局部运算以特征x为输入,产生与x大小相同的输出信号y。
其中p是要计算其响应的输出位置的索引,q是枚举所有可能位置的索引。函数f表示xp和xq之间的关系。g计算输入信号在位置q处的表示。矩阵C(x)表示使响应归一化的因子。
定义g的线性嵌入如下
其中Wg表示需要学习的权重矩阵,可以通过1 ×1卷积来实现。
考虑线性嵌入高斯核的欧氏距离:
其中θ(x p) = Wθ x p, φ (xq) = Wϕ xq分别是两个可学习的嵌入变换。
非局部操作可以写成如下
我们希望所提出的网络能够覆盖更大的接受域并产生幻觉。因此,使用了特征的全局信息。具体来说,为了计算yp,我们评估整个输入特征中xp与每个xq之间的相关性。
通过添加一个残余连接,可以将非局部操作视为非局部模块。Zp为非局部模块的输出。
三. 训练过程
μ-law函数:
其中μ = 5000是决定压缩程度的参数,T (H)是HDR图像H的色调映射图像。注意H的取值范围为[0,1]。在我们的方法中,我们使用MSE损失来最小化所提出网络的色调映射结果与地面真实HDR图像之间的距离。数学上可以写成:
1. 实验说明
- 所有图像都被调整为1500 × 1000的分辨率。
- Patch Generation:由于该数据集的训练集只包含74个样本,如果我们将原始的全尺寸图像馈送到网络中,它太小了,无法训练神经网络。我们随机裁剪256 × 256块作为训练图像。该过程产生输入的补丁及其相应的地面真值HDR图像。
为了避免过拟合,执行数据增强(翻转和旋转90度)。
- 测试部分:原始的全尺寸图像直接输入NHDRRnet。
- 评价指标:采用两个指标(即使用μ律(PSNR-μ, SSIM-μ)对图像进行色调映射后的PSNR和SSIM值)来评价多种方法的结果。
- 实现细节:NHDRRnet的输入被分别送入不同的编码器。
编码层为4个卷积层,步幅为2,解码层为反卷积层核,步幅为1/2。
为了保持特征的大小,我们对所有卷积层采用零填充。所有的编码层都使用3 × 3的核,然后是批归一化和ReLU激活函数。所有解码层都使用4 × 4核,然后是批处理归一化和LeakyReLU激活函数。在编码期间,通道数每层从32增加到256,在解码期间从256减少到32。在合并块中,输入连接三个分支的特征(基于三个LDR图像),然后是一个3 × 3卷积核。全局非局部模块和三通剩余模块的参数定义如上所述。最后的卷积层有三个通道,与输出的HDR图像的维度相匹配。
2. 实验结果分析(略)
3.代码实现与分析环节
详见代码文件!