论文笔记之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
代码地址
使用RefS方法,当参考图像很相似时,超分的结果还不错。但是参考图像对超分结果影响很大,特别是当参考图像相似性比较低时,效果不佳。作者通过纹理细节,根据纹理相似性做超分的方法,让RefSR方法受参考图像的相似性影响比较少。相比以往在输入做match,作者在多个level做match,利用多尺度神经迁移,模型能够从具有语义相关性的Ref patches获益更多,在输入的ref image只有小相关时,性能降低不会太严重。 在作者的设置里,Ref images并不需要对齐良好或者内容相似,作者只打算将语义相关的纹理从Ref图像传输到输出SR图像。作者提出了SRNTT,在特征空间做局部纹理的匹配,并将匹配的纹理迁移到输出。纹理传递模型学习了LR和Ref纹理之间复杂的依赖关系,并利用相似的纹理抑制不相似的纹理。 同时作者还提出了一个数据集CUFED5,这个数据集对于参考的提供了不同的相似度的参考图片。
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纹理一致性做了正则化。
对整个 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的中心点
如图的蓝色模块。将上面得到的特征融进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(ψl−1∣∣Ml−1)+ψl−1]↑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(ψL−1∣∣ML−1)+ψL−1 于为了让网络考虑进 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∑λl∣∣Gr(ϕl(ISR)⋅Sl∗)−Gr(Ml⋅Sl∗)∣∣F G r ( ⋅ ) Gr(\cdot) Gr(⋅)是Gram matrix, S l ∗ S_l^* Sl∗是weighting map
现有的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×)学习特征,得到更强的特征表示。
包括了
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=<∣∣qi∣∣qi,∣∣kj∣∣kj> 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
作者设计了一个cross-scale feature integration module(CSFI)去交换不同scale的特征,应用于每次要上采样到下个scale。通过接受上采样或者下采样得到的特征,然后再channel维度加一个concat操作,然后卷积层将特征映射到原始通道数。
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=CHW1∣∣IHR−ISR∣∣1 在作者的实验中, L 1 L_1 L1收敛比 L 2 L_2 L2快Adversarial lossPerceptual 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)−T∣∣22 第一项是传统的计算方法。第二项是transferalperceptual loss。 ϕ j l t e ( ⋅ ) \phi_j^{lte}(\cdot) ϕjlte(⋅)表示LTE第 j j j层的特征, T T T是迁移的HR纹理特征。这项约束预测的嘲讽图片和迁移纹理特征有相似的特征。