读论文:Patch损失:单图像超分辨率的通用多尺度感知损失

标题: Patch loss: A generic multi-scale perceptual loss for single image super-resolution
作者: Tai An, Binjie Mao, Bin Xue, Chunlei Huo, Shiming Xiang, Chunhong Pan
原文地址:https://doi.org/10.1016/j.patcog.2023.109510


Abstract

在单图像超分辨率(SISR)中,虽然PSNR是是一个关键指标,但是高PSNR的图像不一定会有高视觉质量。因此,就使用感知指标来测量生成图像的质量。但是感知驱动的SISR方法所使用的损失表现不佳。为此,本文提出了一种通用的多尺度感知损失——补丁损失。它最小化了图像补丁的多尺度相似性,并通过无参数自适应补丁注意增强了性能。

Index Term——单图像超分辨率,多尺度损失函数,图像视觉感知,感知指标


Introduction

单图像超分辨率 (SISR) 算法旨在放大图像,同时保持图像质量。在深度学习时代,卷积神经网络(CNN)可以直接学习从低分辨率图像到高分辨率图像的映射,显著促进了SISR的发展,就比如CNN、GAN以及Transformer等。最近,有研究人员发现,出了网络架构以外,loss也十分关键,因为它决定了生成图像的方向。但是现有的方法中并不太关注这一点。

面向PSNR得分的SISR方法使得网络更喜欢生成一些平均图像以避免错误,但是会导致视觉感知效果较差。而单纯的感知驱动方法则正好相反。为此,有许多研究人员提出了各种新的评估感知性能的指标。但是感知损失对于细节的恢复贡献不大,而对抗性损失会产生更多细节并引入伪影。这两者都会影响生成图像的质量。

为此,本文提出了一种多尺度感知损失函数,即Patch Loss,它对每个图像Patch中相邻像素的关系进行建模。他比起常规感知损失的优点如下:

  1. 通过考虑相邻像素在邻域中的依赖性来增强对图像结构的监督;
  2. 具有对图像的多尺度感知和对锐利区域的关注;

而它的核心在于“

  1. 图像和特征的多尺度裁剪分别由图像Patch内核(IPK)和特征Patch内核(FPK)进行,生成的图像Patch受到多尺度补丁相似性的约束;
  2. 将图像Patch的不确定性与纹理复杂性联系起来,并应用无参数的自适应斑块关注来增强锐利边缘和复杂纹理的还原;

贡献

  1. 提出了补丁损失:它可以显式地建模每个图像块中相邻像素的关系,以适应不同尺度的视觉模式;
  2. 提出了无参数自适应补丁注意机制:用于细化锐利边缘和复杂纹理,还用IPK和FPK分别在图像级别和特征级别提取像素和语义特征;
  3. 对五种代表性 SISR 方法的实验表明,补丁丢失在五个基准测试中改善了四种广泛使用的感知指标,尤其是 NIQE 和 PI;

综述

方法

patch损失的定义

  • 常规SISR损失:生成图像(SR)和地面真实图像(HR)之间的距离;
  • patch损失:采用一批 SR-HR 对并返回它们的多尺度 patch 相似性距离;
  • 定义:patch损失需要在图像级别和特征级别进行多尺度监督,以充分利用高分辨率图像的潜在信息。

为此,需要特定的张量变换:

  1. 使用大小为 p × p p \times p p×p的滑动窗口将图像 I ∈ R h × w × c I \in \mathbb{R}^{h\times w\times c} IRh×w×c裁剪为n个图像块 I p ∈ R p × p × c I_p\in \mathbb{R}^{p\times p\times c} IpRp×p×c,其中p是图像块的边长, n = ( ⌊ h − p s ⌋ + 1 ) ( ⌊ w − p s ⌋ + 1 ) n=\left (\left \lfloor \frac{h-p}{s} \right \rfloor + 1\right )\left (\left \lfloor \frac{w-p}{s} \right \rfloor + 1\right ) n=(shp+1)(swp+1)是块的数量,s是步长;
  2. 分离每个图像块 I p I_p Ip的通道并展平为c个向量 x p ∈ R p 2 × 1 x_p\in \mathbb{R}^{p^2\times 1} xpRp2×1,也就是说, ( c ⋅ n ) (c \cdot n) (cn)个向量 x p x_p xp可以从图像I构建。

本文提出的图像补丁内核IPK和特征补丁内核FPK基于具有不可训练的预定义内核的卷积,以实现张量变换图像和特征。如下图所示:

Patch损失可以监督多个尺度下图像的相似性(显示了其中一个尺度)。
首先,分别通过图像补丁内核(IPK)和特征补丁内核(FPK)将生成图像(SR)和地面实况图像(HR)提取为具有像素和语义特征的补丁;
然后,匹配补丁对以计算图像方面的相似度损失 L s I L^I_s LsI 和特征方面的相似度损失 L s F L^F_s LsF
之后,采用从每对 HR 导出的归一化复杂度作为自适应注意力权重 attn(yI ) 和 a t t n ( y F ) attn(y^F) attn(yF) 分别对 L s I L^I_s LsI L s F L^F_s LsF 进行加权;
最后,将两个级别的损失汇总为总损失 L s + L^+_s Ls+ 。 而K负责平衡两个层面的监督

经过上述张量变换后,使用余弦相似度来检查图像块之间的相似度。

  • 首先,每组SR-HR对 { x , y } \{x,y\} {x,y}之间的角度 θ \theta θ的余弦计算为:
    cos ⁡ θ = x ⋅ y ∥ x ∥ 2 ∥ y ∥ 2 \cos \theta = \frac{x\cdot y}{\left \| x \right \| _2\left \| y \right \| _2} cosθ=x2y2xy
    那么非负余弦距离可以写作:
    d s ( x , y ) = 1 − cos ⁡ θ ≥ 0 d_s(x,y) = 1-\cos \theta \ge 0 ds(x,y)=1cosθ0

余弦距离描述的是方向上的相对差异。 θ \theta θ越小, d s ( x , y ) d_s(x,y) ds(x,y)越小,将 d s ( x , y ) d_s(x,y) ds(x,y)作为损失函数 L s L_s Ls并与L1/2损失进行比较。

假设SR模型为 x = F ( x i n : ϑ ) x=F(x_{in}: \vartheta) x=F(xin:ϑ),其中F代表生成器, ϑ \vartheta ϑ代表模型参数。那么 ϑ \vartheta ϑ的更新公式就是:
ϑ ⟵ ϑ − ∂ L ( x , y ) ∂ ϑ \vartheta \longleftarrow \vartheta - \frac{\partial L(x,y)}{\partial \vartheta} ϑϑϑL(x,y)
⟶ c h a i n r u l e ϑ ∗ ← ϑ − η ∂ L ( x , y ) ∂ x ∂ x ∂ F ∂ F ∂ ϑ \longrightarrow^{chain rule} \vartheta^*\leftarrow \vartheta - \eta\frac{\partial L(x,y)}{\partial x} \frac{\partial x}{\partial F}\frac{\partial F}{\partial \vartheta} chainruleϑϑηxL(x,y)FxϑF

其中,y表示真实值,L(x,y) 为损失函数, η \eta η是学习率, ϑ ∗ \vartheta^* ϑ ϑ \vartheta ϑ的更新参数。
等面向那条等式表示 ∂ L ( x , y ) / ∂ x \partial L(x,y)/\partial x L(x,y)/x决定了 ϑ \vartheta ϑ的更新方向。张量 x 和 y 可以表示为 x = { x 1 , x 2 , . . . , x L } x = \{x_1, x_2, . .., x_L\} x={x1,x2,...,xL} y = { y 1 , y 2 , . . . , y L } y = \{y_1, y_2, . . ., y_L\} y={y1,y2,...,yL}

L s L_s Ls可以写作:
L s ( x , y ) = 1 − ∑ L i = 1 x i y i ∑ L i = 1 x i 2 ∑ L i = 1 y i 2 L_s(x,y)=1-\frac{ {\textstyle \sum_{L}^{i=1}} x_iy_i}{\sqrt{{\textstyle \sum_{L}^{i=1}}x_i^2}\sqrt{{\textstyle \sum_{L}^{i=1}}y_i^2}} Ls(x,y)=1Li=1xi2 Li=1yi2 Li=1xiyi
然后,另一条等式就可以写作:
ϑ ← ϑ − η ∂ F ∂ ϑ ∑ k = 1 L ∂ L ( x , y ) ∂ x k ∂ x k ∂ F \vartheta \leftarrow \vartheta-\eta \frac{\partial F}{\partial \vartheta } \sum_{k=1}^{L}\frac{\partial L(x,y)}{\partial x_k}\frac{\partial x_k}{\partial F} ϑϑηϑFk=1LxkL(x,y)Fxk
张量 x x x第k个元素处的L1、L2和Ls的微分为:

其中,sign()表示正负号函数。L1/2仅通过检查 x k x_k xk y k y_k yk之间的差异来确定 x k x_k xk的预测偏差,而 L s L_s Ls在测量 x k x_k xk大小时考虑每个图像patch中的所有像素点。
其实就是 L s L_s Ls是为了最小化高维空间中x和y之间的角度 θ \theta θ,即要求SR和HR之间的每个图象patch中像素的排列相似。

从下图可以看出,与L1/L2相比,Ls更关注结构相似性,而不是数值精度:

增强模型在台风天气的降水模式

a为GT,b和c分别显示了在L1和L2监督下生成的两个通用补丁(SR1更瑞丽,SR2更平滑)。但是它们都不会在中心像素处产生任何损失(黄框)。但是根据上面最后一个式子,9组 3 × 3 3\times3 3×3滑动窗口(l为窗口数)决定了 5 × 5 5\times5 5×5图像patch的中心像素更新方向,也就是在SR1中中心像素被高估,在SR2中被低估
总的来说,L1 损失倾向于产生较少的模糊,而L2 损失倾向于产生更平滑的图像重建结果。这些特性影响了超分辨率重建中细节的保留和噪声的抑制,因此选择适合的损失函数对于特定应用来说是非常重要的。


多尺度平行分支

  • 用途:引入个东西来增强不同尺度下的纹理的恢复。也有研究人员证明了单尺度patch降低了网络的灵活性。为此,本文设置了一组IPK参数来将图像I平铺成不同长度的向量。图像相似度损失 L s l ( x , y ) L^l_s(x,y) Lsl(x,y)为u个分支损失之和:
    在这里插入图片描述
    类似地,基于一组FPK参数的特征相似损失 L s F ( x , y ) L^F_s(x,y) LsF(x,y)为:
    在这里插入图片描述
    那么总损失就是:
    在这里插入图片描述

其中,k时匹配两个损失大小的超参数。

作为图1的补充,3描述了基于图像和特征的多尺度分支的相似损失 L s L_s Ls

多尺度相似损失 L s L_s Ls的计算过程。

  • 图像层面:将SR和HR图像分割成不同尺度的图像块;
  • 特征层面:进行同样的处理;
    每个分支负责在一个尺度上评估相似损失。之后,所有尺度上的损失被汇总成 L s L_s Ls

适应性Patch注意力

人倾向于关注边缘锐利、纹理复杂的区域,而这些区域富含高频信息

高频信息在图像处理和信号处理领域通常指的是图像或信号中的快速变化部分,这些部分代表了图像的细节,如边缘、纹理或噪声

高频信息丰富的区域在丰富的区域在降采样过程中存在较大的信息损失。但感知驱动方法主要关注像素方向。本文以patch作为基本的注意单位,其所构建的patch-wise attention使网络能够专注于特定区域,同时避免为每个像素分配注意力权重所带来的大量计算。为此,本文引入纹理复杂度λ来描述图像斑块的信息丰富度。其定义为:
在这里插入图片描述

定义为对真值patch y = { y i } i = 1 L y =\{y_i\}^L_{i=1} y={yi}i=1L。其中, y ‾ = 1 L ∑ L i = 1 y i \overline{y}=\frac{1}{L} {\textstyle \sum_{L}^{i=1}}y_i y=L1Li=1yi.

随着λ的增加,该区域的纹理/边缘 变得更加明显。λ的极值为 λ m i n = 0 \lambda_{min}=0 λmin=0
在这里插入图片描述

其中, y m a x y_{max} ymax是patch y的最大可能像素值,由式子可知,λ是有限的,若 L → ∞ L\rightarrow\infty L,则 λ m a x ( y ) → y m a x / 2 \lambda_{max}(y) \rightarrow y_{max}/2 λmax(y)ymax/2

每个patch y的自适应注意权重可以通过归一化 λ \lambda λ得到:
在这里插入图片描述

由于在不同尺度上产生不同的注意权值,本文在每个多尺度并行分支上实现自适应注意。

那么之前的公式就可以改写为:
在这里插入图片描述


为什么使用标准偏差作为图像补丁的纹理复杂度

在这里插入图片描述

基于方差的归一化复杂度导致难以注意,导致许多边缘和纹理被忽略


实验

设置

数据集和模型
  • 训练集:DIV2K(包含800张高质量图像);
  • 测试集:Set5、Set14、BSDS100、Urban100、Manga109;
  • 方法:首先将800张图像裁剪成大小为480 × 480的重叠子图像,然后从每个子图像创建LRHR对(包含翻转和旋转)进行训练;
  • 模型:基于CNN的EDSR和RCAN,基于GAN的SRGAN和ESRGAN,以及基于Transformer的SwinIR;

评价指标
  • PSNR:峰值信号噪声比,衡量重构图像与原始图像之间的差异,值高表示误差小;
  • SSIM:结构相似性指数,考虑了图像的亮度、对比度和结构信息,值越高表示图像质量越接近原始图像;
  • LPIPS:学习感知图像补丁相似性,不仅考虑像素级的差异,还考虑了图像在高级特征表示层面的差异,通常用于评估图像内容和风格迁移的质量。值越小越好;
  • NIQE:自然图像质量评价器,不需要原始图像,可以直接对图像质量进行评估,主要用来评价图像是否看起来自然,通常用于监督学习之外的场合。值越小越好;
  • 10-Ma:是一种评估模型或图像质量的方法,其中可能包括多次评估并取均值以提高评估的可靠性。值越小越好;
  • PI:感知指数,它结合多个评价指标来综合评估图像的感知质量,旨在更好地反映人眼对图像质量的主观评价。PI越低,感知质量通常被认为越高

实验结果展示

每个数据集包含六种类型的指标:第一行为PSNR(↑)/SSIM(↑)/LPIPS(↓),第二行为NIQE(↓)/10-Ma(↓)/PI(↓)。α是比例因子。表中给出了每种SISR方法的6个指标加L+ s后的变化情况,加粗表示效果较好
w/o"表示"without",即在不使用提出的补丁损失,带有"w/"的数据表示在加入了补丁损失。
α就代表了图片的放大倍数

在这里插入图片描述
在这里插入图片描述

图像(a)的比例因子α为×2,图像(b) - (d)的比例因子α为×4
每张图像的第一行和第二行子图分别表示总损失w/o L+ s和w/ L+ s的情况
从图中可以看出,对于几种代表性的SISR方法,损失函数中的L+ s项提高了图像的感知质量


消融实验

多尺度分支和Patch注意力

在这里插入图片描述

多尺度分支和斑块注意在图像质量改善中都起着至关重要的作用。patch-wise注意力捕获具有复杂纹理的区域,而多尺度分支确保捕获不同大小的纹理


与感知损失作比较

随着训练时间的增加,感知损失在优化NIQE和PI等无参考评估中的作用继续降低。与patch loss相比,感知loss使得NIQE和PI更难收敛
由于感知损失不是细粒度的监督,因此恢复细节的能力较差


与对抗性损失比较

在这里插入图片描述

L+ s消除了一些伪影,提高了生成图像的真实感


总结

本文提出了一种基于Patch相似度的多尺度感知损失,以即插即用的方式提高生成图像的质量。由于其强大的通用性和实用性,它可以很容易地作为添加剂集成到广泛的SISR模型中。并通过相关实验验证了Patch Loss的有效性。


未来展望

所提出的补丁丢失涉及许多敏感参数和有限的鲁棒性,这有望在后续工作中得到解决。在未来,我们还将关注基于其他类型数据集的超分辨率方法的视觉要求

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值