【超分辨率】Anime4K_v4.0.1 + mpv 提升画质,使用方法

首先下载必要的软件:

由于potplayer不支持GLSL格式的读取,0.9以上的版本都没有HLSL格式,所以我们使用MPV来使用Anime4K。

参照官方给的文档

使用说明 (GLSL / MPV) (v4.x)

如果您希望使用其他媒体播放器,请查看他们关于如何安装 GLSL 着色器的文档,并在需要时相应地修改着色器。

  1. 安装一个版本 mpv 2021 年 6 月之后发布的旧版本 可能不起作用.
  2. 下载 .glsl 着色器文件 这里
  3. 将 .glsl 文件复制到%AppData%\mpv\shaders 对于 Windows 或 ~/.config/mpv/shaders 对于 Linux。
  4. (可选)如果 mpv.conf 不存在于 %AppData%\mpv\ 或者 ~/.config/mpv,创建一个空文件并按照 这些说明 以优化您的配置。
  5. 如果 input.conf 不存在于 %AppData%\mpv\~/.config/mpv, 创建一个空文件。
  6. 使用 Anime4K v4.x,而不是激活单个着色器,您应该使用着色器的组合。
    将以下代码块之一添加到 input.conf 允许启用着色器:

基于 Unix 的操作系统的注意事项, ; 引号内的(文件名分隔符)必须替换为: 如中所述mpv手动模式最后; 不应更改引号之外的内容。

安装MPV

用管理员权限运行mpv-install.bat

找到%appdata%,创建文件夹

  1. 打开cmd,输入cd %appdata%,获取目录打开
    在这里插入图片描述

  2. 新建文件夹"shaders"和这两个文件"mpv.conf", “input.conf”
    在这里插入图片描述

  3. 把解压后的Anime4K_v4.x.zip放入shaders中
    在这里插入图片描述

  4. input.conf的内容参照官方文档


针对高端GPU的优化着色器:

(Eg. GTX 1080, RTX 2070, RTX 3060, RX 590, Vega 56, 5700XT, 6600XT)
如果升级到小于 4K 的分辨率,可以使用低端 GPU。

CTRL+1 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A (HQ)"
CTRL+2 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B (HQ)"
CTRL+3 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C (HQ)"
CTRL+4 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_Restore_CNN_M.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A+A (HQ)"
CTRL+5 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B+B (HQ)"
CTRL+6 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Restore_CNN_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C+A (HQ)"
CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared"

针对低端 GPU 的优化着色器:
(Eg. GTX 980, GTX 1060, RX 570)
这些规格是使用 TFLOPS 估算的(并且为了以防万一被高估),需要社区基准…

如果升级到小于 4K 的分辨率,可以使用低端 GPU。

CTRL+1 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Anime4K: Mode A (Fast)"
CTRL+2 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Anime4K: Mode B (Fast)"
CTRL+3 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_M.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Anime4K: Mode C (Fast)"
CTRL+4 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl;~~/shaders/Anime4K_Restore_CNN_S.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Anime4K: Mode A+A (Fast)"
CTRL+5 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_S.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Anime4K: Mode B+B (Fast)"
CTRL+6 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_M.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Restore_CNN_S.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Anime4K: Mode C+A (Fast)"
CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared"

  1. mpv.conf输入以下内容(Linux需要)
$ cp -r /usr/share/doc/mpv/ ~/.config/

接下来就可以享受视频啦

模式对比

在这里插入图片描述
压缩了可能看不清,但是画质确实提升了
在这里插入图片描述
除此之外还有A+A,B+B,C+A,使用Ctrl+1/2/3/4/5/6/0可以切换

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
告别AV画质:实时把动画变成4k高清,延时仅3毫秒,登上GitHub趋势榜 量子位 量子位 ​ 已认证的官方帐号 7,564 人赞同了该文章 栗子 发自 凹非寺 量子位 出品 | 公众号 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吧。 反正也已经开源了。 项目传送门: bloc97/Anime4K ​ github.com 图标 论文传送门: https://github.com/bloc97/Anime4K/blob/master/Preprint.md ​ github.com — 完 —

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值