0

深度学习(二十一)——图像超分辨率, SRCNN, DRCN

 2 years ago
source link: http://antkillerfarm.github.io/dl/2017/10/18/Deep_Learning_21.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Ultra Deep Network

Dual Path Networks(续)

如果ftk(⋅)和gk(⋅)每个Step都共享,那么就是HORNN,如果只有ftk(⋅)共享,那么就是ResNet,两者都不共享,那就是DenseNet。

上图展示的是ResNet和DenseNet的示意图。图中用线填充的柱状体,表示的是主干结点的tensor的大小。

ResNet由于跨层和主干之间是element-wise的加法运算,因此每个主干结点的tensor都是一样大的。

而DenseNet的跨层和主干之间是Concatenation运算,因此主干越往下,tensor越大。

通过上面的分析,我们可以认识到 :

ResNet: 侧重于特征的再利用,但不善于发掘新的特征;

DenseNet: 侧重于新特征的发掘,但又会产生很多冗余;

为了综合二者的优点,作者设计了DPN网络:

http://blog.csdn.net/scutlihaoyu/article/details/75645551

《Dual Path Networks》笔记

http://www.cnblogs.com/mrxsc/p/7693316.html

Dual Path Networks

http://blog.csdn.net/u014380165/article/details/75676216

DPN(Dual Path Network)算法详解

https://mp.weixin.qq.com/s/m4cRV9yX-8r4BI0EkVRYig

残差网络家族10多个变种学习卡片,请收下!

图像超分辨率

如上图所示,一张低分辨率的小图(Low Resolution,LR)如果采用简单的插值算法进行图片放大的话,图像中物体的边缘会比较模糊。如何用算法将这种LR的图片放大成HR的图片,这就是Super Resolution(SR)的目标了。

SR目前主要有两个用途:

1.提升设备的测量精度。这个在天文和医疗图像方面用的比较多,比如Google和NASA利用AI探测太阳系外的行星,还有癌症的早期诊断。

2.Image Signal Processor。上面的两个应用比较高端,SR最主要的用途恐怕还是相机的ISP领域。ISP的基本概念参见《图像处理理论(五)》。

这里主要讨论DL在SR领域的应用。

前DL时代的SR

从信号处理的角度来说,LR之所以无法恢复成HR,主要在于丢失了图像的高频信息。(Nyquist采样定理)

Harry Nyquist,1889~1976,University of North Dakota本硕(1914,1915)+耶鲁博士(1917)。AT&T贝尔实验室电子工程师。IEEE Medal of Honor获得者(1960)。

IEEE Medal of Honor是IEEE的最高奖,除了1963年之外,每年只有1人得奖,个别年份甚至会轮空。

https://mp.weixin.qq.com/s/NhFUCCu9I4SGH7sbqvQeuw

数字通信时代的引路人:奈奎斯特(Nyquist)


最简单的当然是《图像处理理论(二)》中提到的梯度锐化和拉普拉斯锐化,这种简单算法当然不要指望有什么好效果,聊胜于无而已。这是1995年以前的主流做法。

稍微复杂的方法,如同CV的其它领域经历了“信号处理->ML->DL”的变迁一样,SR也进入了ML阶段。

上图是两种典型的SR算法。

左图算法的中心思想是从图片中找出相似的大尺度区域,然后利用这个大区域的边缘信息进行SR。但这个方法对于那些只出现一次的边缘信息是没什么用的。

于是就有了右图的算法。对各种边缘信息建立一个数据库,使用时从数据库中挑一个最类似的边缘信息进行SR。这个方法比上一个方法好一些,但不够鲁棒,图片稍作改动,就有可能无法检索到匹配的边缘信息了。

ML时代的代表算法还有:

《Image Super-Resolution via Sparse Representation》

这篇论文是黄煦涛和马毅小组的Jianchao Yang的作品。

黄煦涛(Thomas Huang),1936~2020。生于上海,国立台湾大学本科(1956)+MIT硕博(1960,1963)。UIUC教授。美国工程院院士,中国科学院+中国工程院外籍院士。

马毅,清华本科(1995)+UCB硕博(1997,2000)。UCB教授。IEEE fellow。
个人主页:
http://yima.csl.illinois.edu/

这篇论文提出的算法,在形式上和后文这些DL算法已经非常类似了,也是基于HR和LR配对的有监督训练。区别只在于这篇论文使用矩阵的稀疏表示来拟合SR函数,而DL算法使用神经网络拟合SR函数。前者是线性变换,而后者是非线性变换。

https://mp.weixin.qq.com/s/A8c-15OgKaGPiTETEqyWbw

华人计算机视觉鼻祖、双院外籍院士黄煦涛逝世,昔日名师门徒遍天下

https://mp.weixin.qq.com/s/asa10LOLI5V8tu1j_VcaDQ

张正友忆华人计算机视觉宗师Thomas S. Huang

https://mp.weixin.qq.com/s/XPepZGmkFQAp9e-KFpaG_A

纪念黄煦涛教授

https://mp.weixin.qq.com/s/pgXEWIGvGGc8o1RefWTXAw

Super Res Zoom

https://mp.weixin.qq.com/s/93HfbJxG-5hFeEm1li-0tw

超分辨率相关资源大列表

https://mp.weixin.qq.com/s/0BNpiyIdLCjJlmTkRNNLrA

深度学习图像超分辨率最新综述:从模型到应用

https://zhuanlan.zhihu.com/p/25532538

深度学习在图像超分辨率重建中的应用

https://zhuanlan.zhihu.com/p/25201511

深度对抗学习在图像分割和超分辨率中的应用

https://mp.weixin.qq.com/s/uK0L5RV0bB2Jnr5WCZasfw

深度学习在单图像超分辨率上的应用:SRCNN、Perceptual loss、SRResNet

https://mp.weixin.qq.com/s/tg0Qnlf2WyG99J449KZTZQ

图像超分辨率重建–基础原理

https://zhuanlan.zhihu.com/p/76820438

基于深度学习的超分辨率图像技术一览

https://mp.weixin.qq.com/s/o-I6T8f4AcETJqlDNZs9ug

深入浅出深度学习超分辨率

SRCNN

SRCNN(Super-Resolution CNN)是汤晓鸥小组的Chao Dong的作品。

汤晓鸥,中国科学技术大学本科(1990)+罗切斯特大学硕士(1991)+麻省理工学院博士(1996)。香港中文大学教授,商汤科技联合创始人。

《Learning a Deep Convolutional Network for Image Super-Resolution》

该方法对于一个低分辨率图像,先使用双三次(bicubic)插值将其放大到目标大小,再通过三层卷积网络做非线性映射,得到的结果作为高分辨率图像输出。作者将三层卷积的结构解释成与传统SR方法对应的三个步骤:图像块的提取和特征表示,特征非线性映射和最终的重建。

三个卷积层使用的卷积核的大小分为为9x9, 1x1和5x5,前两个的输出特征个数分别为64和32。

以下是论文的效果表格:

吐槽一下,这种表格属于论文必须有,但是却没什么营养的部分,且不乏造假的例子。原因很简单,一个idea,如果没有好效果,paper连发都发不了。但是,没有好效果的idea,未必没有价值,不说是否能启发人们的思维,至少能让后来者,不用再掉到同一个坑里。
比如化学领域,失败的实验远远多于成功的实验。在计算能力不发达的时代,人们主要关注成功的案例,但现在大家逐渐意识到:失败的案例才是更大的财富。

这里对其中的指标IQA(image quality assessment)做一个简介。

PSNR(Peak Signal to Noise Ratio,峰值信噪比)

MSE=1H×W∑i=1H∑j=1W(X(i,j)−Y(i,j))2PSNR=10log10⁡((2n−1)2MSE)

其中,MSE表示当前图像X和参考图像Y的均方误差(Mean Square Error),H、W分别为图像的高度和宽度;n为每像素的比特数,一般取8,即像素灰阶数为256. PSNR的单位是dB,数值越大表示失真越小。

虽然PSNR和人眼的视觉特性并不完全一致,但是一般认为PSNR在38以上的时候,人眼就无法区分两幅图片了。

SSIM(structural similarity, 结构相似性),也是一种全参考的图像质量评价指标,它分别从亮度、对比度、结构三方面度量图像相似性。

μX=1H×W∑i=1H∑j=1WX(i,j),σX2=1H×W∑i=1H∑j=1W(X(i,j)−μX)2σXY=1H×W∑i=1H∑j=1W((X(i,j)−μX)(Y(i,j)−μY))l(X,Y)=2μXμY+C1μX2+μY2+C1,c(X,Y)=2σXσY+C2σX2+σY2+C2,s(X,Y)=σXY+C3σXσY+C3SSIM(X,Y)=l(X,Y)⋅c(X,Y)⋅s(X,Y)

C1,C2,C3为常数,为了避免分母为0的情况,通常取C1=(K1⋅L)2,C2=(K2⋅L)2,C3=C2/2,一般地K1=0.01,K2=0.03,L=255。

SSIM取值范围[0,1],值越大,表示图像失真越小。

在实际应用中,可以利用滑动窗将图像分块,令分块总数为N,考虑到窗口形状对分块的影响,采用高斯加权计算每一窗口的均值、方差以及协方差,然后计算对应块的结构相似度SSIM,最后将平均值作为两图像的结构相似性度量,即平均结构相似性MSSIM:

MSSIM(X,Y)=1N∑k=1NSSIM(xk,yk)

需要指出的是,PSNR和SSIM都是一些物理指标,它和人眼的视觉感受有一定的差异,不见得指标差的图就一定不如指标好的图(比如SRGAN)。

主观得分一般采用MOS(mean opinion score)作为评价指标。

其他指标参见论文:

《Comparison of Image Quality Models for Optimization of Image Processing Systems》

http://blog.csdn.net/u011692048/article/details/77496861

超分辨率重建之SRCNN

http://www.cnblogs.com/vincent2012/archive/2012/10/13/2723152.html

PSNR和SSIM

https://mp.weixin.qq.com/s/hGum0fXrKUHCoaInVVS3rQ

除了MSE loss,也可以试试用它:SSIM的原理和代码实现

https://mp.weixin.qq.com/s/UKxQQx0IJGWOFikz3pncAw

最新的图像质量评价

https://zhuanlan.zhihu.com/p/120254892

谈谈图像质量量化评估标准

https://mp.weixin.qq.com/s/t1kv9ChSskrXE1lW80dsew

结构相似度索引(SSIM)全攻略:理论+代码

DRCN(deeply-recursive convolutional network)是韩国首尔国立大学的作品。

《Deeply-Recursive Convolutional Network for Image Super-Resolution》

SRCNN的层数较少,同时感受野也较小(13x13)。DRCN提出使用更多的卷积层增加网络感受野(41x41),同时为了避免过多网络参数,该文章提出使用递归神经网络(RNN)。网络的基本结构如下:

与SRCNN类似,该网络分为三个模块,第一个是Embedding network,相当于特征提取,第二个是Inference network, 相当于特征的非线性变换,第三个是Reconstruction network,即从特征图像得到最后的重建结果。其中的Inference network是一个递归网络,即数据循环地通过该层多次。将这个循环进行展开,就等效于使用同一组参数的多个串联的卷积层,如下图所示:


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK