丰色 发自 凹非寺
量子位 报道 | 公众号 QbitAI
下面来欣赏一些高糊图片“整个世界都清晰了”的魔法时刻:
无论是动漫还是真实图像,是不是都清晰还原了?
以上就是由腾讯ARC实验室最新发表的图像超分辨率模型完成的。
与前人工作相比,它可以更有效地消除低分辩率图像中的振铃和overshoot伪影;
面对真实风景图片,能更逼真地恢复细节,比如树枝、岩石、砖块等。
除了上面这些官方的demo,我们也试了一下,效果还比较满意:
如果你也想试试,可在GitHub上下载该模型的可执行文件,Windows/Linux/MacOS都可以,且不需要CUDA或PyTorch的支持。
下好以后只需在终端执行以下命令即可使用:
./realesrgan-ncnn-vulkan.exe -i input.jpg -o output.png
基于ESRGAN的改进研究
这个模型被命名为Real-ESRGAN,总的来说,就是通过模拟高分辨率图像变低分辩率过程中的各种退化,然后看到一张糊图后倒推出来它的高清图。
而它是对超分“前辈”ESRGAN的进一步研究。
ESRGAN曾赢得ECCV2018 PIRM-SR挑战赛中的第一名,但它在恢复具有未知和复杂退化(degradation)的低分辨率图像方面,也就是盲超分辨率(Blind Super-Resolution)上做的还不够好。
而相比ESRGAN,Real-ESRGAN使用合成数据进行训练,引入了高阶退化建模以更全面逼真地模拟复杂的图像退化,重点考虑了合成过程中常见的振铃和overshoot伪影。
还采用了一个具有谱归一化(Spectral Normalization)的U-Net鉴别器,来提高鉴别器的性能并稳定训练过程,最终实现了“青出于蓝胜于蓝”的效果。
下面就进入具体原理讲解:
通常情况下,真实图像y首先与模糊核(blur kernel)k进行卷积,然后执行具有比例因子r的下采样操作,通过添加噪声n获得低分辨率图像x。一般还得再加个JPEG压缩,即:
而获得高清图像的过程就是求解y的过程(其中D表示退化过程)。
然而只采用这一经典的退化模拟,训练后的模型只能处理部分图像,更复杂的退化(尤其是未知噪声和某些伪影)仍无法解决:
所以研究人员就引出了高阶退化过程来模拟出更真实全面的退化,它包含多个重复的经典退化过程,每个又具有不同的退化超参:
下图为Real-ESRGAN进行退化模拟的示意图:
采用的是二阶退化,具体来说:
在模糊(blur)退化方面,为了包含更多不同的核形状,Real-ESRGAN采用了广义高斯模糊核和plateau-shaped分布。
降噪(noise)方面,除了颜色噪声和灰度噪声,还模拟了两种常见类型:
(1)加性高斯噪声:其噪声强度受高斯分布标准差控制;
(2)泊松噪声:其噪声强度与图像信息成正比。
resize也就是经典退化模拟里的下采样,在这里为了产生更多模糊图像,就改成了上采样+下采样的组合操作。resize方法中,由于最近邻插值会导致错位,最后就只考虑了面积、双线性和双三次插值。
JPEG压缩,能带来块伪影。下图为OpenCV与DiffJPEG的压缩效果对比,Real-ESRGAN采用的是DiffJPEG。
而在Real-ESRGAN重点关注的伪影方面:
主要针对非常常见的振铃伪影(下图左1左2,看起来像“鬼影”)和overshoot伪影(下图右2右1,看起来像“锯齿”)。
采用了sinc滤波器来模拟这两者 :
以上,退化模拟搞定后,就可以开始训练了。
Real-ESRGAN的生成器沿用了ESRGAN的RRDBNet,还扩展了原始的×4 ESRGAN架构,以执行resize比例因子为×2和×1的超分辨率放大。
判别器则由VGG型升级为U-Net型,以具备更强的判别能力,处理复杂的输出以及生成关于局部纹理的精确梯度反馈。
另外,U-Net架构和复杂的退化给训练带来了不稳定性,为此,还采用了谱归一化来稳定模型训练,这也有助于缓解GAN带来的过度锐化以及伪影。
除伪影、恢复纹理细节的效果优于其他方法
最终可以看到,Real-ESRGAN在去除伪影和恢复纹理细节方面都明显优于以前的方法:
消融实验也发现采用二阶退化模型的效果最好、通过sinc滤波器的可以跟好地去除伪影、SN+UNet的组合取得了最佳的视觉效果、引入更多的模糊核,模型效果还可以进一步提升(分别对应下面四组图):
当然,他们也发现三个表现不够好的效果,比如线条扭曲、出现了其他伪影。
总而言之,作者表示:盲图像超分仍处于初步探索阶段,之前的BSRGAN以及本文的Real-ESRGAN可为该领域提供一个非常好的基线。
团队介绍
Wang Xintao,毕业于浙江大学本科,香港中文大学博士(师从汤晓鸥),现在是腾讯ARC实验室(深圳应用研究中心)的研究员。研究兴趣集中在图像/视频的超分辨率恢复。ESRGAN的一作。
谢良彬 ,中国科学院深圳先进技术研究所硕士一年级学生,师从董超教授。
董超,中国科学院深圳先进技术研究院硕导,毕业于北理工本科,香港中文大学博士。曾任商汤科高级研究经理,谷歌学术引用14416次,h指数22。
单瀛,腾讯PCG应用研究中心(ARC)主任。
论文地址:
https://arxiv.org/abs/2107.10833
Colab试玩地址:
https://colab.research.google.com/drive/1k2Zod6kSHEvraybHl50Lys0LerhyTMCo?usp=sharing#scrollTo=7IMD5vhOYp68
GitHub项目地址:
https://github.com/xinntao/Real-ESRGAN