生猛!看动画片神器来了!实时把画质变成4k高清,延时仅3毫秒,登上GitHub 趋势榜!

2019 年 10 月 14 日 大数据技术
栗子 发自 凹非寺 
量子位 出品 | 公众号 QbitAI

看动画 (特别是里番) 的时候,总会觉得画质不够好,就算已经有1080p,还是会感到不够清晰。

所以,这个世界十分需要一套拯救分辨率的魔法。

如今,有个名叫Anime4K的开源算法,能在动画播放中,实时把画面变成4k,延时低至3毫秒

能把720p/1080p变成2160p,也能把480p变成1080p。

团队说,这是当下最强 (State-of-the-Art) 的动画实时超分辨率方法,可以拿任何编程语言实现。

现在,项目已经在GitHub摘下3700多颗星,并一度登上了趋势榜。

那么,这个算法究竟是如何造福人类的?

只搞动画

团队在论文里感慨道:

传统超分辨率算法 (如Bicubic) ,结果不怎么好,因为它们根本不是为了动画而生的。

传统的去模糊 (Unblurring) 或锐化 (Sharpening) 方式,在靠近物体边缘的时候会发生过冲 (Overshoot) ,分散观众注意力,降低图像的感知质量 (Perceptual Quality) 。

而机器学习方法 (如waifu2x) 又太慢,完全不能实时 (<30毫秒) ,尤其是需要超高清的时候。

 waifu2x

而Anime4K,只处理动画就够了,不考虑其他视频类型。这一点很重要。

动画没有真实视频那么多纹理 (Textures) ,基本都是用平直着色法 (Flat Shading) 处理的物体和线条。

只要画质变好一点点,观众也看得出。所以团队机智地想到,不用做整张的画质提升,专注于细化边缘就可以了,纹理之类的细节不重要。

具体怎样做,要从超分辨率的原理开始讲:

首先,一张图可以分为两部分:

一是低频分量,就是一张模糊的低分辨率图。

二是高频残差,代表两种分辨率之间的差别 (Difference) 。

输入一张低清图,把它变成一个更低清的版本,就能得出一个残差

把残差变薄 (Thin) 、锐化 (Sharpen) ,再加到低清图上,就能得到一张高清图。

但残差稍稍有点错误,就会造成振铃过冲,影响效果。这也是前辈的缺陷所在。

于是,团队找到了一种新方法:

首先把残差厚度最小化当做目标,这个没有问题。

但直接把随意变换(Arbitrarily Transformed)得到的残差,用到一张低清图上是不行的。低清图要做出相应改变,才能与残差和平相处,得出理想的超分辨率结果。

所以,当输入一张图和它的残差之后,“push”残差的像素,让残差线变细;

同时,每做一个push,都要在彩色的低清图上,执行一个相同的操作。

这样,既能把模糊最小化,也不会出现振铃和过冲,这两个降低画质的现象。

比一比吧

这场比赛,Anime4K (最右) 的对手有:来自madVR的不开源算法NGU前辈 (左二) ,以及开源的机器学习算法waifu2x前辈 (左三) 。

第一题,眼睛:

第二题,耳朵:

第三题,玉手:

第四题,全脸:

waifu2x前辈的效果,明显不及Anime4K,常见虚影。速度也有明显缺陷,每张图耗时超过1秒。

NGU前辈生成的画质,与Anime4K相近,但也常常被Anime4K打败。

不止如此,NGU每张耗时~6毫秒,Anime4K只要~3毫秒,快了一倍,更加适应实时生成的需求了。

效果相近的话,为啥不直接用NGU?因为不开源。

如果,你觉得720p/1080p的动画,没必要变成4K这么奢侈,那还可以把480p拯救到1080p啊:

依然,Anime4K和没开源的NGU不相上下。

最后,尽管已经获得了精湛的画质提升技能,团队也没有就此抛弃机器学习的力量。

因为在拯救静止画作 (而非动画) 的时候,Anime4K的短板显现了。这时候,让机器学习选手waifu2x和它并肩作战,更加成功一些:

需要实时提升分辨率,还是用Anime4K吧。

反正也已经开源了:

项目传送门:
https://github.com/bloc97/Anime4K

论文传送门:
https://github.com/bloc97/Anime4K/blob/master/Preprint.md

●编号913,输入编号直达本文

●输入m获取到文章目录

推荐↓↓↓

开源最前线

登录查看更多
3

相关内容

Yoshua Bengio最新《深度学习》MLSS2020教程,附104页PPT及视频
专知会员服务
131+阅读 · 2020年7月10日
【CVPR2020】时序分组注意力视频超分
专知会员服务
31+阅读 · 2020年7月1日
专知会员服务
110+阅读 · 2020年3月12日
【ICLR-2020】网络反卷积,NETWORK DECONVOLUTION
专知会员服务
39+阅读 · 2020年2月21日
【经典书】Python计算机视觉编程,中文版,363页pdf
专知会员服务
141+阅读 · 2020年2月16日
姿势服装随心换-CVPR2019
专知会员服务
36+阅读 · 2020年1月26日
【GitHub实战】Pytorch实现的小样本逼真的视频到视频转换
专知会员服务
36+阅读 · 2019年12月15日
手把手教你用Python做一个哄女友神器,小白可上手
网易智能菌
5+阅读 · 2019年6月15日
SRGAN论文笔记
统计学习与视觉计算组
109+阅读 · 2018年4月12日
用 Python 和 OpenCV 来测量相机到目标的距离
炼数成金订阅号
5+阅读 · 2018年1月16日
Arxiv
8+阅读 · 2018年5月21日
Arxiv
7+阅读 · 2018年1月24日
VIP会员
相关VIP内容
Yoshua Bengio最新《深度学习》MLSS2020教程,附104页PPT及视频
专知会员服务
131+阅读 · 2020年7月10日
【CVPR2020】时序分组注意力视频超分
专知会员服务
31+阅读 · 2020年7月1日
专知会员服务
110+阅读 · 2020年3月12日
【ICLR-2020】网络反卷积,NETWORK DECONVOLUTION
专知会员服务
39+阅读 · 2020年2月21日
【经典书】Python计算机视觉编程,中文版,363页pdf
专知会员服务
141+阅读 · 2020年2月16日
姿势服装随心换-CVPR2019
专知会员服务
36+阅读 · 2020年1月26日
【GitHub实战】Pytorch实现的小样本逼真的视频到视频转换
专知会员服务
36+阅读 · 2019年12月15日
Top
微信扫码咨询专知VIP会员