超分论文笔记之纹理迁移2019-2020CVPR:Image SRby Neural Texture Transfer -Learning Texture Transformer Network

论文笔记之CVPR2019超分四:Second-order Attention Network SR-Real Scene Super-Resolution with Raw Images-DPSR

2019CVPR超分文章记录系列三:PASSRnet-NatSR-AdaFMNet

2019CVPR超分文章记录系列二:IKC-MetaSR-ODEInspired

2019CVPR超分文章记录系列一:FSTRN-resLR-SRFBN-RBPN

超分文章记录 SRCNN-FSRCNN-ESPCN-VDCN-DRCN-RDN-LapSRN-SRDenseNet-SRGAN

1. Image Super-Resolution by Neural Texture Transfer

代码地址

1.1 总结

使用RefS方法,当参考图像很相似时,超分的结果还不错。但是参考图像对超分结果影响很大,特别是当参考图像相似性比较低时,效果不佳。作者通过纹理细节,根据纹理相似性做超分的方法,让RefSR方法受参考图像的相似性影响比较少。相比以往在输入做match,作者在多个level做match,利用多尺度神经迁移,模型能够从具有语义相关性的Ref patches获益更多,在输入的ref image只有小相关时,性能降低不会太严重。
在作者的设置里,Ref images并不需要对齐良好或者内容相似,作者只打算将语义相关的纹理从Ref图像传输到输出SR图像。作者提出了SRNTT,在特征空间做局部纹理的匹配,并将匹配的纹理迁移到输出。纹理传递模型学习了LR和Ref纹理之间复杂的依赖关系,并利用相似的纹理抑制不相似的纹理。
同时作者还提出了一个数据集CUFED5,这个数据集对于参考的提供了不同的相似度的参考图片。

1.2 方法

SRNTT的问题设置时,从对应的 I L R I^{LR} ILR I R e f I^{Ref} IRef得到 I S R I^{SR} ISR
SRNTT的主要思想是在特征空间从 I R e f I^{Ref} IRef找到匹配特征,然后用multi-scale的方式做特征迁移。特征迁移考虑了语义(高层)和纹理(底层)相似性。然后对 I S R I^{SR} ISR I R e f I^{Ref} IRef纹理一致性做了正则化。
SRNTT

1.2.1 Feature Swapping

对整个 I R e f I^{Ref} IRef搜索局部相似纹理,使用的是HR空间坐标可用于后续的转换。所以先将 I L R I^{LR} ILR上采样到 I L R ↑ I^{LR\uparrow} ILR,对于 I R e f I^{Ref} IRef,先降采样再上采样,得到和 I R e f ↓ ↑ I^{Ref \downarrow\uparrow} IRef,得到和 I L R ↑ I^{LR\uparrow} ILR一样的频率带。再神经特征空间 Φ ( I ) \Phi(I) Φ(I)做相似性匹配,强调了纹理和结构的匹配。使用内积衡量相似性,所以有
s i , j = < P i ( Φ ( I L R ↑ ) ) , P j ( Φ ( I R e f ↓ ↑ ) ) ∣ ∣ P j ( Φ ( I R e f ↓ ↑ ) ) ∣ ∣ > s_{i,j} = < P_i(\Phi(I^{LR\uparrow})),\frac{P_j(\Phi(I^{Ref \downarrow \uparrow}))}{||P_j(\Phi(I^{Ref \downarrow \uparrow}))||}> si,j=<Pi(Φ(ILR)),Pj(Φ(IRef))Pj(Φ(IRef))>
P i ( ⋅ ) P_i(\cdot) Pi()表示从neural feature map采样第i个patch。所以对于所有LR patches到每一个Ref patch,有
S j = Φ ( I L R ↑ ) ∗ P j ( Φ ( I R e f ↓ ↑ ) ) ∣ ∣ P j ( Φ ( I R e f ↓ ↑ ) ) ∣ ∣ S_j = \Phi(I^{LR\uparrow})* \frac{P_j(\Phi(I^{Ref \downarrow \uparrow}))}{||P_j(\Phi(I^{Ref \downarrow \uparrow}))||} Sj=Φ(ILR)Pj(Φ(IRef))Pj(Φ(IRef))
基于相似性score,构建一个swapped feature map M M M M M M中每个 ( x , y ) (x,y) (x,y)点表示为: P ω ( x , y ) ( M ) = P j ∗ ( Φ ( I R e f ) ) , j ∗ = a r g m a x j S j ( x , y ) P_{\omega(x,y)}(M) = P_j*(\Phi(I^{Ref})), j^{*} = argmax_j S_j(x,y) Pω(x,y)(M)=Pj(Φ(IRef)),j=argmaxjSj(x,y)
ω ( x , y ) \omega(x,y) ω(x,y)表示每个patch的中心点

1.2.2 Neural Texture Transfer

如图的蓝色模块。将上面得到的特征融进generative网络对应不同大小的特征层。使用residual blocks和skip connections构建生成网络,第 l l l层的输出
ψ l [ R e s ( ψ l − 1 ∣ ∣ M l − 1 ) + ψ l − 1 ] ↑ 2 × \psi_l[Res(\psi_{l-1}||M_{l-1}) + \psi_{l-1}]\uparrow_{2\times} ψl[Res(ψl1Ml1)+ψl1]2×
∣ ∣ || 表示channel-wise concate。
最后的超分图像
I S R = R e s ( ψ L − 1 ∣ ∣ M L − 1 ) + ψ L − 1 I^{SR} = Res(\psi_{L-1}||M_{L-1}) + \psi_{L-1} ISR=Res(ψL1ML1)+ψL1
在这里插入图片描述于为了让网络考虑进 I S R I^{SR} ISR I R e f I^{Ref} IRef纹理差异,定义了一个纹理loss
L t e x = ∑ l λ l ∣ ∣ G r ( ϕ l ( I S R ) ⋅ S l ∗ ) − G r ( M l ⋅ S l ∗ ) ∣ ∣ F L_{tex} = \sum_l \lambda_l||Gr(\phi_l(I^{SR})\cdot S_{l}^*) - Gr(M_l \cdot S_l^*)||_F Ltex=lλlGr(ϕl(ISR)Sl)Gr(MlSl)F
G r ( ⋅ ) Gr(\cdot) Gr()是Gram matrix, S l ∗ S_l^* Sl是weighting map

1.1.3 Training Object

  • preserve the spatial structure of the LR image
  • improve the visual quality of the SR image
  • take advantage of the rich texture from Ref images
    Reconstruction loss
    L r e c = ∣ ∣ I H R − I S R ∣ ∣ 1 L_{rec} = ||I^{HR} - I^{SR}||_1 Lrec=IHRISR1
    Perceptual loss
    L p e r = 1 V ∑ 1 C ∣ ∣ ϕ i ( I H R ) − ϕ i ( I S R ) ∣ ∣ F L_{per} = \frac{1}{V} \sum_1^C ||\phi_i(I^{HR})-\phi_i(I^{SR})||_F Lper=V11Cϕi(IHR)ϕi(ISR)F
    Adversarial loss
    作者是采用WGAN-GP
    L a d v = − E x ^ ∼ P g [ D ( x ^ ) ] L_{adv} = -E_{\hat x \sim P_g}[D(\hat x)] Ladv=Ex^Pg[D(x^)]
    m i n G m a x D ∈ D E x ∼ P r [ D ( x ) ] − E x ^ ∼ g [ D ( x ^ ) ] min_G max_{D \in \mathcal{D}}E_{x \sim P_r}[D(x)] - E_{\hat x \sim g}[D(\hat x)] minGmaxDDExPr[D(x)]Ex^g[D(x^)]
    D \mathcal{D} D是1-Lipschitz函数, P r P_r Pr, P g P_g Pg模型分布和真实分布

2.Learning Texture Transformer Network for Image Super-Resolution

2.1 总结

现有的SR方法忽略了使用注意机制做纹理迁移。作者提出一个TTSR(Texture Transformer Network)
之前的方法:
Zheng 采用基于光流的方法会迁移不准确纹理
Zhang 的方法使用一个pre-trained的特征空间,但是太高层的语义特征不能有效表示HR的纹理信息。
所以作者提出了一个新的框架,包含了四个模块。
一个可学习的纹理提取器,在训练过程中会得到更新。这样的设计实现了LR和REF图像的联合特征嵌入,这为应用注意机制创造了坚实的基础。
一个关联嵌入模块,计算LR和Ref图片的关联性。将LR和Ref 图片当作transformer里面的query和key.
最后一个hard-attention模块和一个soft-attention没款,迁移和融合从Ref 图片得到的HR特征到LR特征。
作者还提出了纹理变换器的跨尺度特征集成模块。特征可以跨不同的尺度(例如从1×到4×)学习特征,得到更强的特征表示。

扫描二维码关注公众号,回复: 12624043 查看本文章

2.2 方法

TTSR

2.2.1 Texture Transformer

包括了

  • learnable texture extractor (LTE)
  • relevance embedding module (RE)
  • hard-attention module for fea- ture transfer (HA)
  • soft-attention module for feature synthesis (SA)

Learnable Texture Extractor
作者设计了一个可学习的纹理提取器,得到了 Q , K , V Q,K,V Q,K,V Q Q Q(query), K K K(key), V V V(value)是transformer里面注意机制的三个基础模块
Relevance Embedding
相关嵌入的目的是通过估计Q和K之间的相似性来嵌入LR和Ref图像之间的相关性,将 Q Q Q K K K张开成K patch,记成 q i ( i ∈ [ 1 , H L R × W L R ] ) , k j q_i(i\in[1, H_{LR} \times W_{LR}]), k_j qi(i[1,HLR×WLR]),kj,对于每个patch计算相关性
r i , j = < q i ∣ ∣ q i ∣ ∣ , k j ∣ ∣ k j ∣ ∣ > r_{i,j} = <\frac{q_i}{||q_i||},\frac{k_j}{||k_j||}> ri,j=<qiqi,kjkj>
Hard-Attention
使用一个hard-attention模块从Ref image迁移HR纹理特征V。传统的注意机制对每个查询 q i q_i qi取一个 V V V的加权和。但是这种会产生模糊的效果。
计算一个hard-attention map H,对于 h i ( i ∈ [ 1 , H L R × W L R ] ) h_i(i \in [1, H_{LR}\times W_{LR}]) hi(i[1,HLR×WLR]) h i = a r g m i n j r i , j h_i = argmin_j r_{i,j} hi=argminjri,j
h i h_i hi表示Ref图片里面和LR图片里面第i个patch最相关的部分。为了从Ref image里面获取迁移到的HR纹理特征T,使用硬注意图作为索引,对V的展开面片进行索引选择操作 t i = v h i t_i = v_{h_i} ti=vhi, t i t_i ti表示 T T T在第 i i i个位置到值。从 V V V的第 h i h_i hi个位置选择。
Soft-Attention
使用soft-attention合成迁移的HR纹理特征 T T T和从LR图片提取的特征 F F F。在合成过程中在合成过程中,应加强相关的纹理转移,而应保留不太相关的纹理转移。soft-attention map S S S是从 r i , j r_{i,j} ri,j计算得到的,表示transferred texure features的自信度 s i = m a x j r i , j s_i = max_j r_{i,j} si=maxjri,j
s i s_i si表示soft-attenton map的第 i i i个位置的值。先将 F F Fh和 T T T融合提取更多的特征,再让融合特征和 S S S element-wisely相乘并加到 F F F上面。得到最终的输出。 F o u t = F + C o n v ( C o n c a t ( F , T ) ) ⊙ S F_{out} = F + Conv(Concat(F,T))⊙S Fout=F+Conv(Concat(F,T))S

2.2.2 Cross-Scale Feature Integration

在这里插入图片描述
作者设计了一个cross-scale feature integration module(CSFI)去交换不同scale的特征,应用于每次要上采样到下个scale。通过接受上采样或者下采样得到的特征,然后再channel维度加一个concat操作,然后卷积层将特征映射到原始通道数。

2.2.3 Loss Function

L o v e r a l l = λ r e c L r e c + λ a d v L a d v + λ p e r L p e r L_{overall} = \lambda_{rec}L_{rec} + \lambda_{adv}L_{adv} + \lambda_{per}L_{per} Loverall=λrecLrec+λadvLadv+λperLper

  • Reconstruction loss
    L r e c = 1 C H W ∣ ∣ I H R − I S R ∣ ∣ 1 L_{rec} = \frac{1}{CHW}||I^{HR} - I^{SR}||_1 Lrec=CHW1IHRISR1
    在作者的实验中, L 1 L_1 L1收敛比 L 2 L_2 L2
  • Adversarial loss
  • Perceptual loss
    L p e r = 1 C i H i W i ∣ ∣ ϕ i v g g ( I S R ) − ϕ i v g g ( I H R ) ∣ ∣ 2 2 + 1 C i H i W i ∣ ∣ ϕ j l t e ( I S R ) − T ∣ ∣ 2 2 L_{per} = \frac{1}{C_i H_i W_i}||\phi_i^{vgg}(I^{SR}) - \phi_i^{vgg}(I^{HR})||_2^2 +\frac{1}{C_i H_i W_i}||\phi_j^{lte}(I^{SR}) -T||_2^2 Lper=CiHiWi1ϕivgg(ISR)ϕivgg(IHR)22+CiHiWi1ϕjlte(ISR)T22
    第一项是传统的计算方法。第二项是transferalperceptual loss。 ϕ j l t e ( ⋅ ) \phi_j^{lte}(\cdot) ϕjlte()表示LTE第 j j j层的特征, T T T是迁移的HR纹理特征。这项约束预测的嘲讽图片和迁移纹理特征有相似的特征。

猜你喜欢

转载自blog.csdn.net/eight_Jessen/article/details/108397022