基于深度反投影(Back-Projection)网络的图像超分辨

Deep Back-Projection Networks For Super-Resolution

作者:Muhammad Haris, Greg Shakhnarovich, and Norimichi Ukita

Google机翻:用于超分辨率的深背投影网络

基于深度反投影(Back-Projection)网络的图像超分辨_第1张图片

  • 背景:SR方面的深度学习方法都是前馈的(当时),因此没有充分利用到高低分辨对的相互依赖关系。作者提出通过将多个上下采样块级联,可以更好地学习到高低分辨对的特征,而且级联的上下采样块还可以表征不同的图像劣化方式和高频分量。通过堆叠(concatenate)所有高低分辨对的输出的方式(Dense - DBPN),可以显著增强超分辨的结果,甚至在8x的上采样系数下取得了很好的性能。

  • 感想:DBPN以及RBPN的想法是有独到之处的。大多数的基于卷积神经网络的结构是通过不断提取特征,生成feature map 并进行上采样的方式得到HR图像,并基于这个思路去深化、扩大网络。DBPN则是在一个网络中级联了多个上下采样的阶段,就实现了作者所说的"both up and down projection errors to guide the reconstruction",以及"representing mutual relations"。 我认为想法是新颖的。

作者阐述DBPN主要特点:

  1. 误差反馈:不仅是LR -> HR ,也有HR -> LR。
  2. 互相连接的 上下采样块
  3. 深度堆叠:concat了所有块的输出
  4. 应用密集连接,提高特征重利用

作者对SR的总结:

  1. 预上采样SR:开山之作SRCNN的做法,先对图像进行双三次插值得到HR图像,之后再去对此HR图像进行修改。
    显然,bicubic引入了噪声。
  2. 单上采样SR:上采样采用ESPCN等的反卷积玩法。这样的方法的问题是训练时间长(8 days as stated by the authors).以及这样的网络一般非常庞大。使用了很多的滤波器。
  3. 渐进上采样SR:逐渐以不同的尺度提高多个SR图像的分辨率。(stacked single upsampling networks which only relies on limited LR features.)
  4. 迭代上下采样:DBPN提出的方法。

具体机制

反向投影


Up-Projection Unit

Map LR feature map to an HR map

基于深度反投影(Back-Projection)网络的图像超分辨_第2张图片

其中,pt,gt,qt都是第t个块的卷积层。而*代表卷积操作。LR图像先通过反卷积层得到高分的HR图像后,对其进行卷积以下采样的同时,将此HR图像(H0t)与后续第二个反卷积层得到的残差(H1t)相加,得到一个unit的输出Ht。
下采样方法与之相反,不再赘述。

反向投影的特点:

  1. 得到的残差etl实际上就是一个projection error ,被馈送到下一个deconv或conv中,就是一个feed back 也即作者实现的back projection。
  2. 对该unit的迭代使用可以加速收敛,因此可以应用8x8,甚至 12x12的卷积核,提高感受野,增强对更大上采样系数的支持能力。

Dense Up-Projection Unit

借鉴了DenseNet的密集连接思想:提高feature复用,增强梯度传递

作者没有使用dropout 和 batch norm ,认为不适合用于SR,因为会降低特征的范围灵活性(range flexibility of the features) ?此问题参考。

B. Lim, S. Son, H. Kim, S. Nah, and K. M. Lee. Enhanced
deep residual networks for single image super-resolution.
In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops, July 2017.

在一个密集上投影块中,其输入的维度扩展,并且加入了concat增加通道和1x1卷积以降低通道数(关于1*1卷积,参考CNN:1x1卷积层的精妙之处)。之后与前面非密集连接的上下投影块基本类似。作者又将这样的块进行密集连接,得到下图所示的D-DBPN神经网络。

基于深度反投影(Back-Projection)网络的图像超分辨_第3张图片

相比于前文所提到的基础款的DBPN,这一款的D-DBPN增加了密集连接,将所有的“down”块输出的特征输入到后续的所有“up”块中(反之同理)。然后其他基本保持一致。

实验及对比

由于DBPN 确实收到了良好的性能,因此作者在DBPN-S(T=2),DBPN-M(T=4),DBPN-L(T=6)三个时间尺度下对网络进行了测试,结果表明即使是DBPN-S也能超越LapSRN以及EDSR等性能优良的网络,而且参数量在一个比较合理的水平。

比较有意思的一点是,作者所给出的对比样图,基本都是围绕着比较有规律的纹理(平行纹理等),几个对比中也发现引入的伪影比较少,可以推断DBPN的back-projection的方法对于这类细节信息的利用和推算是比较好的。

后续作者又基于DBPN提出了RBPN。

你可能感兴趣的:(超分辨,CNN,深度学习)