论文阅读:Learning to Dehaze From Realistic Scene with A Fast Physics Based Dehazing Network

论文题目及作者
代码:https://github.com/liruoteng/3DRealisticSceneDehaze(未公布)

1. 摘要

基于学习的方法需要有雾图和ground-truth作为学习的数据集,但是通常不太可能捕捉到真实的这类数据。现在许多研究通过使用大气散射模型在普通RGBD数据集上合成雾图和ground-truth对的数据集。然而,由于高质量深度的大型数据集大多是室内的,室外的深度图不精确,合成数据集与真实的模糊图像之间仍存在差距。本文用一个新的,大量的,多样的高清3D视频中的真实室外场景的数据集来补充现有的数据集。本文选择大量高质量的真实室外场景的帧,并使用立体的深度对其进行渲染。本文的数据集比现有的数据集更真实,证明使用该数据集可以大大提高真实场景的去雾性能。除了数据集外,本文还提出了一个轻巧可靠的去雾网络。文中提出的方法在很大程度上优于其他方法,成为最先进的新方法。此外,网络的轻巧设计使本文的方法能够以比其他方法快得多的实时速度运行。

2. 所提出的数据集

精确的景深图时生成高质量的去雾数据集的关键。然而,室外的景深图非常难获得,现有的合成去雾数据集都是采用算法来生成粗略的深度图。这就导致合成数据集的不准确性。本文所提出的数据集的一个关键贡献是利用立体相机生成更精确的雾渲染深度图(设备加成)。尽管3D视频为每一帧提供立体图像对,但视频数据也有其自身的挑战。
首先,用单目摄像机拍摄一些3D视频,然后通过后处理手动添加立体效果。在本例中,只选择使用物理立体摄像机拍摄的视频。(深度图是通过设备获取而不是算法)
第二,只选择蓝光格式的高清视频,这样可以制作高分辨率的图像。
第三,焦距、立体摄像机基线和摄像机内部参数通常是未知的,并且随视频而异。使用当前最先进的立体估计算法,很难仅从图像对直接计算立体视差。另外,大多数立体视觉算法都是设计和训练成只在正范围内估计视差。然而,由于立体装备配置中的相机旋转,3D视频数据可能包含负视差值。本文不使用立体算法,而是采用最先进的光流估计方法(PWC-Net: CNNs for optical flow using pyramid, warping, and cost volume)来处理正负视差值。只保留流场的水平分量作为视差。
数据集生成过程
因为PWCNet产生的流场只有原始图像大小的四分之一。为了评价光流精度,通常采用双线性上采样后处理方法对流场进行全尺寸上采样。在本文的雾渲染的例子中,双线性上采样通常会使对象的边界模糊(如下图所示),这也会导致渲染对象边界上的光晕效应。为了解决这个问题,本文采用FGI(Fast guided global in-terpolation for depth and motion)算法对输入图像的边界、轮廓和边缘进行上采样。下图比较了这两种上采样方法的深度图。可以观察到,在输入图像中,深度不连续性与实际对象的边界更为一致。因此,FGI上采样结果的晕效应显著降低。
深度图对比
最后展示该数据集的几张数据:
所提出的数据集中的数据

3. 所提出的网络

3.1 网络框架

网络框架如下图所示:
网络结构
网络分为两个部分,前一部分为Physics-Based Stage, 后一部分为Model-Free Stage。阶段一有两个分支,一个分支生成大气光,一个分支生成传输率。有了这大气光和传输率,依据大气散射模型即可得到去雾图。阶段二是一个条件生成对抗网络(cGAN)。生成器接收去雾图和原图concat的结果,输出一张清晰图像。判别器接收该清晰图像,输出是否是真实数据的判断。
具体的网络细节不表。

3.2 损失函数

阶段一的两个分支都是采用均方误差,阶段二采用了MSE、感知损失和生成器损失。

3.2.1 阶段一

1) 大气光MSE

L A = L M S E ( A , A g t ) L_A = L_{MSE}(\bm{A}, \bm{A}_{gt}) LA=LMSE(A,Agt)

2) 传输率MSE

L T = L M S E ( T , T g t ) L_T = L_{MSE}(\bm{T}, \bm{T}_{gt}) LT=LMSE(T,Tgt)

3.2.2 阶段二

1) MSE + Perceptual Loss

L C = L M S E ( C , C g t ) + λ p L M S E ( V G G ( C ) , V G G ( C g t ) ) L_C = L_{MSE}(\bm{C}, \bm{C}_{gt}) + \lambda_{p} L_{MSE}(\rm{VGG}(\bm{C}), \rm{VGG}(\bm{C_{gt}})) LC=LMSE(C,Cgt)+λpLMSE(VGG(C),VGG(Cgt))

本文中, λ p = 1 \lambda{p} = 1 λp=1

2) 生成器损失

L G A N ( C ) = l o g ( 1 − D ( C ) ) L_{GAN}(\bm{C}) = log(1 - D(\bm{C})) LGAN(C)=log(1D(C))

3) 阶段二总损失

L G = L C = + λ G A N L G A N ( C ) L_G = L_C = + \lambda_{GAN}L_{GAN}(\bm{C}) LG=LC=+λGANLGAN(C)

本文中, λ G A N = 0.01 \lambda_{GAN} = 0.01 λGAN=0.01

4. 实验结果

文中比较了:
传统方法:BCCR、DCP、CAP、Non-Local、GRM
深度方法:MS-CNN、AODNet、DehazeNet、DCPDN、GridDehazeNet

4.1 客观指标

1) 本文提出的数据集

首先作者在本文提出的数据集中比较了上述方法和文中提出的方法。ft表示在相应模型作者提供的官方权重上用文中提出的数据集进行了微调。我个人觉得不太公平。
本文提出的数据集上的比较

2) RESIDE数据集

RESIDE数据集上的比较
可以看到,在RESIDE数据集上,文中提出的网络在指标上把并不是最好的。但是时间时真的牛逼,一秒可以处理33张图像,完全可以用于实时视频去雾。

4.2 主观指标

1) 所提出的数据集上的结果

主观指标1
主观指标2

2) RESIDE数据集上的结果

主观指标3
主观指标4
主观指标5

5. 结论

本文提出了一个从高清3D视频提取的真实室外场景的数据集。得益于设备加成,本文的景深图比以往数据集的景深图更精准。本文证明了使用该数据集能够大大提高真实场景的去雾性能。此外,本文还设计了一个简单的物理启发的网络模型,并在本文提出的数据集上对其进行训练。这样,本文的方法在很大程度上优于其他方法,是唯一一种实时运行的方法。本文的数据集是对现有去雾数据集的一个很好的补充,本文的方法提供了一个既高效又实用的去雾解决方案。

6. 读后感

本文最大的贡献在于提出了一个新的去雾数据集。得益于设备加成,该数据集有更真实,更精准的合成室外雾图。该数据集是对现有去雾数据集的一个很好的补充,对于去雾领域或许会有很大的帮助。同时,本文还提出了一个轻量级的网络模型,能够实现实时运行的去雾处理。该网络模型的新颖之处在于,应用cGAN对去雾结果进行调整,生成视觉效果更好的清晰图像(或许以前有过这个网络,但是我还没阅读过相关论文,姑且认为是该论文提出的)。只不过损失函数没有创新,都是以前出现过的损失函数的组合。期待本文提出的数据库公布。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值