ICCV2021 | RealVSR:VSR任务中的新数据集与损失方案

在这里插入图片描述
作者单位:香港理工大学、阿里巴巴达摩院
论文链接:https://www4.comp.polyu.edu.hk/~cslzhang/paper/ICCV21_RealVSR.pdf
代码链接:https://github.com/IanYeung/RealVSR
编者言: 这篇是19年ICCV的Toward real-world SISR一文的VSR版本。相比之前VSR方法中较为单一的损失,该文作者对于Y通道和CbCr通道的理解和附加的损失处理让人眼前一亮。

看点

人工退化模型并不能很好地描述真实视频中复杂的退化过程,从而导致训练后的VSR模型在实际应用中失效。本文使用iPhone 11 Pro Max的多摄像头系统,通过捕捉配对的LR-HR视频序列,构建了一个真实世界的视频超分辨率(RealVSR)数据集。由于LR-HR视频对是由两个独立的摄像机拍摄的,它们之间不可避免地存在一定的错位和亮度/颜色差异,为此,本文提出了一个具体的RealVSR训练策略,将LR-HR视频转换为YCbCr空间,并将亮度通道分解为拉普拉斯金字塔,然后对不同分量应用不同的损失函数。实验证明,在RealVSR数据集上训练的VSR模型比在合成数据集上训练的模型具有更好的视觉质量。在跨摄像机测试中也表现出良好的泛化能力。

方法

RealVSR数据集

RealVSR数据集是使用带有DoubleTake app的双摄像头功能的iPhone 11 Pro Max手机构建的,如下图所示。
在这里插入图片描述
DoubleTake app可以通过两个不同焦距的摄像头,在不同比例下捕捉到两个近似同步的高清视频序列。iPhone 11 Pro Max有三个后置摄像头:一个镜头相当于13mm的超广角摄像头,一个镜头相当于26mm的广角摄像头,还有一个镜头相当于52mm的长焦摄像头。三个摄像头都能拍摄1200万像素的照片。较大焦距的相机可以捕捉到更精细的细节,比例系数等于焦距的比值。考虑到超广角镜头失真严重,裁剪后的图像质量较差,本文以52mm镜头相机捕获的序列作为HR序列,以26mm镜头相机捕获的序列生成相应的LR序列,得到×2VSR的数据集。值得一提的是×2缩放是目前实际VSR的主要需求。
RealVSR共有700多对序列。每对由两个同步序列组成,帧率为30fps,分辨率为1080P。为了保证数据集的多样性,采集的序列覆盖了各种场景,包括室外和室内场景、白天和夜间场景、静止场景和有移动物体的场景等。数据集中的序列拥有各种运动,包括摄像机运动和物体运动。在收集数据后,手动选择并排除了大约200个质量较差的序列,如严重模糊、噪声、过度曝光或曝光不足的视频等。考虑到LR-HR序列之间不完全同步,排除了有严重错位问题的序列对。经过仔细的选择,数据集中保留了500个序列对。最后,每个序列对中的LR帧和HR帧需要进行对齐,以便更容易地执行有监督的VSR模型训练。采用RealSR中的图像配准算法,逐帧对齐LR-HR视频。考虑到相邻帧之间可能存在一些小的配准漂移,本文使用5个相邻帧作为输入来计算中心帧的配准矩阵。对齐后,裁剪大小为1024×512的对齐序列的中心区域,消除边界周围的对齐伪影。为了进一步标准化数据集,切割了所有序列使其均为50帧。

动机分析

视频采集过程中图像退化的原因有:各向异性模糊、信号相关噪声、图像信号处理(ISP)管道中的非线性映射和视频压缩算法等。具体来说,两台相机拍摄的LR-HR视频采用了不同的镜头、传感器和ISP管道,因此呈现出不同的失真。配准算法可以缓解这一问题,然而在LR-HR序列之间仍然存在微小的错位和亮度/颜色差异,下图可以观察到LR和HR帧之间的轻微整体亮度和颜色差异,这是由于两个相机之间的照明,曝光时间和相机ISP的变化造成的。
在这里插入图片描述

分解损失

超分的目标是恢复LR帧中的图像细节(边缘、纹理等),而不是全局亮度和颜色。为此,本文提出了一套分解损失,如下图所示。将SR和HR视频转换到YCbCr空间中,以分解亮度和颜色,并对不同的组件应用不同的损失函数。在Y通道上设计了一个基于拉普拉斯金字塔的损失,以帮助网络更好地重建较小亮度差异下的细节。在颜色通道Cb和Cr上,采用梯度加权内容损失聚焦于颜色边缘。为了进一步提高重构HR视频的视觉质量,使用基于多尺度边缘的GAN损失来指导纹理生成。
在这里插入图片描述
亮度通道上基于拉普拉斯金字塔的损失
Y通道包含了视频帧的大部分纹理信息,它是VSR中重建图像细节的关键。VSR研究中常用的损耗对全局亮度差异非常敏感,因此使可能会在学习图像结构和细节时受到干扰。为了解决这个问题,我们将Y通道分解成一个拉普拉斯金字塔。低频分量捕捉原始图像的整体亮度和总体结构,高频分量包含原始图像的多尺度细节。通过在低频和高频分量上施加不同的损失可以实现更好的细节重构,同时允许整体亮度有一定的差异。分别用 Y Y Y Y ^ \hat Y Y^表示HR和SR的亮度通道,把它们分解成三层拉普拉斯金字塔 { S 0 , S 1 , S 2 } \{S_0,S_1,S_2\} {S0,S1,S2} { S ^ 0 , S ^ 1 , S ^ 2 } \{\hat S_0,\hat S_1,\hat S_2\} {S^0,S^1,S^2},其中 S 0 S_0 S0 S ^ 0 \hat S_0 S^0表示低频分量,其余为高频分量。全局亮度差异主要体现在低频分量上,与其他损失相比,SSIM更关注图像结构,对亮度变化不敏感,故结构损失定义为: L s = L S S I M ( S 0 , S ^ 0 ) = 1 − S S I M ( S 0 , S ^ 0 ) \mathcal L_s=\mathcal L_{SSIM}(S_0,\hat S_0)=1-SSIM(S_0,\hat S_0) Ls=LSSIM(S0,S^0)=1SSIM(S0,S^0)由于高频分量基本没有全局亮度差异,采用Charbonnier来定义细节损失: L d = ∥ S ^ 2 − S 2 ∥ 2 + ϵ 2 + ∥ S ^ 1 − S 1 ∥ 2 + ϵ 2 \mathcal L_d=\sqrt{\Vert \hat S_2-S_2\Vert^2+\epsilon^2}+\sqrt{\Vert \hat S_1-S_1\Vert^2+\epsilon^2} Ld=S^2S22+ϵ2 +S^1S12+ϵ2
色度通道的梯度加权损失
与亮度通道相比,色度通道CbCr更加平滑。因此,我们着重于重建显色边缘,故在这里采用梯度加权损失。分别用 C C C C ^ \hat C C^表示HR和SR的色度通道,梯度加权损失如下: L c = ∥ Δ g w ∗ C ^ − Δ g w ∗ C ∥ 2 + ϵ 2 \mathcal L_c=\sqrt{\Vert \Delta_{gw}*\hat C-\Delta_{gw}*C\Vert^2+\epsilon^2} Lc=ΔgwC^ΔgwC2+ϵ2 其中, Δ g w = ( 1 + w Δ x ) ( 1 + w Δ y ) \Delta_{gw}=(1+w\Delta_x)(1+w\Delta_y) Δgw=(1+wΔx)(1+wΔy) Δ x \Delta_x Δx Δ y \Delta_y Δy C C C C ^ \hat C C^在水平和垂直方向梯度的绝对值差图。
多尺度边缘GAN损失
生成对抗网络已经被用于一些SISR方法,以改善估计的HR图像的感知质量。然而,这些方法通常直接将GAN损失应用于全彩图像,这可能不足以有效地生成纹理。本文根据PatchGAN和相对论平均鉴别器,将GAN损失应用于拉普拉斯金字塔的高频成分,生成器的损失为: L G = ∑ i { − E S i [ log ⁡ ( 1 − D i ( S i , S ^ i ) ) ] − E S ^ i [ log ⁡ ( D i ( S ^ i , S i ) ) ] } \mathcal{L}_{G}=\sum_{i}\left\{-\mathbb{E}_{S_{i}}\left[\log \left(1-D_{i}\left(S_{i}, \hat{S}_{i}\right)\right)\right]-\mathbb{E}_{\hat{S}_{i}}\left[\log \left(D_{i}\left(\hat{S}_{i}, S_{i}\right)\right)\right]\right\} LG=i{ESi[log(1Di(Si,S^i))]ES^i[log(Di(S^i,Si))]}鉴别器的损失为: L D = ∑ i { − E S i [ log ⁡ ( D i ( S i , S ^ i ) ) ] − E S ^ i [ log ⁡ ( 1 − D i ( S ^ i , S i ) ) ] } \mathcal{L}_{D}=\sum_{i}\left\{-\mathbb{E}_{S_{i}}\left[\log \left(D_{i}\left(S_{i}, \hat{S}_{i}\right)\right)\right]-\mathbb{E}_{\hat{S}_{i}}\left[\log \left(1-D_{i}\left(\hat{S}_{i}, S_{i}\right)\right)\right]\right\} LD=i{ESi[log(Di(Si,S^i))]ES^i[log(1Di(S^i,Si))]}其中 D i D_i Di是拉普拉斯金字塔的第i个高频分量的相对论平均鉴别器。
Final损失
作者建议两种损失, L v 1 \mathcal L_{v1} Lv1着重于精细细节的重构如下: L v 1 = L s + L d + L c \mathcal L_{v1}=\mathcal L_s+\mathcal L_d+\mathcal L_c Lv1=Ls+Ld+Lc L v 2 \mathcal L_{v2} Lv2通过生成一些细节进一步增强视觉质量,定义为: L v 2 = L v 1 + λ L a d v \mathcal L_{v2}=\mathcal L_{v1}+λ\mathcal L_{adv} Lv2=Lv1+λLadv

实验

损失的消融实验

对于含有GAN损失的部分对比LPIPS和DISTS而不是PSNR
在这里插入图片描述

定量评估

其实应该添加一个都在Vimeo-90K数据集上的定量评估,这样才是完整的实验
在这里插入图片描述

定性评估

在RealVSR上的定性评估
在这里插入图片描述

在真实世界数据上的定性评估
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值