Deep Learning for Image Super-Resolution(SR) : A Survey
笔记作者:瀚
2023年夏于 国防科技大学
超分辨技术简单来说是一种从低分辨率图像中生成高分辨的技术。传统方法也有一些基于预测或边缘的方法来进行达成超分辨的目的。本文主要介绍基于深度学习的超分辨。文章介绍从下面三个方面展开:
一般抽象超分辨问题如下:
I x = D ( I y ; δ ) (1) I_x=\mathcal{D}(I_y;\delta)\tag{1} Ix=D(Iy;δ)(1)
Where D \mathcal{D} D denotes the degradation mapping function. I y I_y Iy denotes the HR image, I x I_x Ix denotes the LR image and δ \delta δ is the parameters of the degration process.
由于我们一般不知道退化过程和过程中的参数的情况,所以对于超分辨就是一个求近似解的过程:
I y ^ = F ( I x ; θ ) (2) \hat{I_y}=\mathcal{F}(I_x;\theta)\tag{2} Iy^=F(Ix;θ)(2)
其中 I y ^ \hat{I_y} Iy^ 是我们对于 HR 图像的一个近似解, θ \theta θ 是 F \mathcal{F} F 的参数。
所以我们一般希望解决的问题如下描述:
D ( I y ; δ ) = ( I y ⊗ k ) ↓ s + n ς , { k , s , ς } ⊂ δ (3) \mathcal{D}(I_y;\delta)=(I_y\otimes k)\downarrow_s+n_{\varsigma},\{ k,s,\varsigma\}\subset\delta\tag{3} D(Iy;δ)=(Iy⊗k)↓s+nς,{k,s,ς}⊂δ(3)
式3表示退化过程可以通过对HR图像进行卷积下采样后加噪声来表示。其中 ↓ S \downarrow_S ↓S表示尺度因子为 s s s的下采样, ⊗ \otimes ⊗表示卷积。一般设置 n ς n_\varsigma nς为加性白噪声 。如何求解从LR到HR的问题就变成了如何求解式3。那么如何求解式3呢?聪明的人类列出来下面的公式:
θ ^ = arg min θ L ( I ^ y , I y ) + λ Φ ( θ ) (4) \hat{\theta}=\arg \min_{\theta}\mathcal{L} (\hat I_y,I_y)+\lambda\Phi(\theta)\tag{4} θ^=argθminL(I^y,Iy)+λΦ(θ)(4)
没错,这是一个优化问题,
那么显而易见,对于 L ( I ^ y , I y ) \mathcal{L}(\hat I_y,I_y) L(I^y,Iy)的设计是整个问题的核心。设计优秀的损失函数就可以送入网络解决优化方程,通过解决优化方程就可以找到退化方程中的参数,找到了参数就可以将 I y ^ \hat{I_y} Iy^ 求解出来了。
结构相似性SSIM和信噪比峰值PSNR、MOS、NIMA、FSIM、NIQE…不展开介绍,更多信息请Google例如 “Image Quality Assessment FSIM”。
SSIM参考:
Z. Wang, A. C. Bovik, H. R. Sheikh, and E. P. Simoncelli, “Image quality assessment: From error visibility to structural similarity,” IEEE Trans. Image Process., vol. 13, no. 4, pp. 600–612, Apr. 2004.
由于超分辨需要包含上采样和卷积网络两个模块,其中上采样负责实际上提升分辨率,卷积网络负责位置信息的预测,所以基于监督的SR一般有下面几种形式:
总结下来 Pre-upsampling 属于一步升天然后夯实基础,Post-upsampling 属于沉淀沉淀顶峰相见,Progrecessive upsampling 是不骄不躁稳步向前,Iterative up-and-down Sampling 是起起伏伏但是稳中向好。:-p
我们提到了超分辨是一个优化问题,并给出了优化方程(式4)。当时对于其中的 L ( I ^ y , I y ) \mathcal{L}(\hat I_y,I_y) L(I^y,Iy) 我们说它表示真实和实际的差异,那么这个差异怎么量化的表示,是这一节的讨论的重点。
Pixel loss是进行逐像素的对比,由于PSNR作为评价指标,是进行两图片像素级的对比。所以Pixel loss非常适合当作损失函数。缺点是生成的图片缺少纹理细节,缺少高频分量。
L p i x e l ( I ^ , I ) = 1 h w c ∑ i , j , k ( I ^ i , j , k − I i , j , k ) 2 + ϵ 2 (5) \mathcal{L_pixel}(\hat I,I)=\frac{1}{hwc}\sum_{i,j,k}\sqrt{(\hat I_{i,j,k}-I_{i,j,k})^2+\epsilon^2}\tag{5} Lpixel(I^,I)=hwc1i,j,k∑(I^i,j,k−Ii,j,k)2+ϵ2(5)
h , w , c h,w,c h,w,c 分别表示长、宽和通道数。
Content loss是基于语义差异的损失函数,引入分类网络。简单来说是通过抽取特征层送入分类网络进行欧氏距离的计算。所以两个被认定为同一类别的像素被认为欧氏距离为0。所以损失函数的效果与分类网络有直接关系。
L c o n t e n t ( I ^ , I ; ϕ , l ) = 1 h l w l c l ∑ i , j , k ( ϕ i , j , k ( l ) ( I ^ ) − ϕ i , j , k ( l ) ( I ) ) 2 (6) \mathcal{L_content}(\hat I,I;\phi,l)=\frac{1}{h_lw_lc_l}\sum_{i,j,k}\sqrt{(\phi^{(l)}_{i,j,k}(\hat I)-\phi^{(l)}_{i,j,k}(I))^2}\tag{6} Lcontent(I^,I;ϕ,l)=hlwlcl1i,j,k∑(ϕi,j,k(l)(I^)−ϕi,j,k(l)(I))2(6)
ϕ ( l ) \phi^{(l)} ϕ(l) 表示鉴别网络的第 l l l 层。
对抗性损失引入GAN网络,由于在监督学习中我们对 I y I_y Iy 是已知的,所以GAN中的生成器和鉴别器非常明确,即生成器( I ^ y \hat I_y I^y),鉴别器( I y I_y Iy)。GAN网络可以使用交叉熵或其他改进的函数作为损失函数。
网络设计:将网络关注更多维度上的信息、局部和全局的信息…
学习策略:损失函数的设计和BN层的重新设计(因为有一些论文提出目前的BN不是超分辨问题的最佳选择,如下)…
B. Lim, S. Son, H. Kim, S. Nah, and K. M. Lee, “Enhanced deep residual networks for single image super-resolution,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. Workshops, 2017, pp. 1132–1140.
Y. Wang, F. Perazzi, B. McWilliams, A. Sorkine-Hornung, O. Sorkine-Hornung, and C. Schroers, “A fully progressive approach to single-image super-resolution,” in Proc. IEEE/ CVF Conf. Comput. Vis. Pattern Recognit. Workshops, 2018, pp. 977–97709.
R. Chen, Y.Qu, K. Zeng, J.Guo, C. Li, and Y. Xie, “Persistentmemory residual network for single image super resolution,” in Proc. IEEE/ CVF Conf. Comput.Vis. Pattern Recognit.Workshops, 2018, pp. 922–9227.
评价指标:更全面更具代表性的指标。
超分辨类型:无监督或半监督的超分辨算法设计。
应用于真实世界:在真实世界中会存在加性噪声等退化,对于无法预测的噪声会对网络生成的内容造成挑战。