Anime4K:目前最热开源实时二次元动漫超分辨率算法,Github上一周收获近三千星! - Go语言中文社区

Anime4K:目前最热开源实时二次元动漫超分辨率算法,Github上一周收获近三千星!


今天,我们将介绍Anime4K(动漫图片超分辨率算法),这是目前最热门的开源项目,特点:实时、视频动画放大算法。

在一周内,Anime4K在Github上收获了将近3千颗星。作者在6天前介绍了reddit上的项目,并成为每个人的热门话题,引起了极大的关注!

在这个人工智能时代,基本上都是深度学习训练数据等,Anime4K根本不使用深度学习和训练学习,而且速度非常快!

下图显示了使用Anime4K将动画图像从1080p增加到2160p的效果:

你没看错,在计算硬件Vega 64 GPU平台上只需3毫秒。

我们来看看其他开源库和Anime4K效果对比:

可以看出Anime4K是当中视觉效果最好的!

作者说,Anime4K非常适合动画放大任务。它非常快,可以保持视频内容的连贯性, 它只有大约100行代码,效果异常非常好。

Anime4K不使用任何机器学习或统计方法,它是保持锐利边缘和线段的理想选择,并且可以容忍一些精细纹理的丢失。它是一种迭代算法,将颜色信息视为高度图并使用渐变上升将“像素”“推”到可能的边缘。

作者认为这很可能是在基于学习的方法内部完成的(例如VDSR,waifu2x)。

算法原理

讲了这么多我们来看看它的算法原理:

Anime4K仅适用于动漫图像放大,因为动漫通常没有丰富的纹理,人眼对其边缘和线段更敏感。

图像超分辨率的一般过程:

LR_U是上采样的低分辨率图像,r是高频残差,并且高分辨率图像HR = LR_U + r。

过去的大多数算法都是预测性的。

作者发现,对于清晰图像,残留图像中的边缘和线段往往更薄,而对于模糊图像,残留图像中的边缘和线段往往更粗糙。

该算法的主要目标是不断修改LR_U(通过低分辨率采样获得的模糊图像),直到其残差最精细,为我们提供最清晰的HR图像。

输入LR_U及其初始残差r,“推”残差的像素,使残差映射中的线段边缘更薄。对于在残差图上执行的每个“推”操作,对彩色图像执行相同的操作。这具有迭代地最大化图像梯度的效果,其在数学上等同于最小化模糊,但是该方法不具有诸如常规方法中常见的振铃之类的伪像。

对于代码描述,以下几行:

for each pixel on the image:

for each direction (north, northeast, east, etc.):

using the residual, if an edge is found:

push the residual pixel in the current direction

push the color pixel in the current direction

细节原理可以参考下面:

https://github.com/bloc97/Anime4K/blob/master/Preprint.md#proposed-method

我们来看下下几张不同算法的动漫超分辨率效果:

无论是那种分辨器和设置下,Anime4K都完胜其它的算法。

相关论文源码关注微信公众号:“图像算法”或者微信搜索账号imalg_cn关注公众号

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/hahabeibei123456789/article/details/100007662
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-05-07 22:05:56
  • 阅读 ( 1527 )
  • 分类:算法

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢