您的位置:首页 > 动漫 >

全球短讯!在MPV的基础上使用Real-esrgan实时超分的方法

在github上看到了,但是国内还没怎么看到相关使用说明,这里就算是大致自己记录一下使用过程。


(资料图片)

首先,本文主要是采取https://github.com/the-database/mpv-upscale-2x_animejanai文中所描述的方法进行介绍,对动画超分效果良好,真人剧集有较大涂抹感酌情使用。

准备工作:

1.N卡建议3070及以上,其他N卡可以尝试。

2.一个MPV的完整包:https://github.com/hooke007/MPV_lazy。

3.mpv-upscale-2x_animejanai模型包:https://github.com/the-database/mpv-upscale-2x_animejanai。

4.CUDA环境(我自己有cuda环境,没尝试过不装可不可行)

安装MPV:

1.  将MPV_Lazy项目最新Releases下载

2.  vsCuda的DLC必须下载,其他的可以选择

安装mpv-upscale-2x_animejanai:

1.  下载最新的mpv-upscale-2x_animejanai压缩包并解压到mpv-lazy/vapoursynth64/plugins/vsmlrt-cuda文件夹中

2.  选择自己的模型,从Compact到SuperUltraCompact性能依次递减,性能需求从4090到3070依次递减,可以自己根据性能进行尝试。

3.  打开命令提示符,到达vsmlrt-cuda文件夹中,比如在命令提示符中输入如下:

d:

cd D:\SOFTWARE\MPV\mpv-lazy\vapoursynth64\plugins\vsmlrt-cuda

4.  运行如下代码,以2x_AnimeJaNai_Standard_V1_UltraCompact_net_g_100000.onnx模型为例:

.\trtexec --fp16 --onnx=2x_AnimeJaNai_Standard_V1_UltraCompact_net_g_100000.onnx --minShapes=input:1x3x8x8 --optShapes=input:1x3x1080x1920 --maxShapes=input:1x3x1080x1920 --saveEngine=2x_AnimeJaNai_Standard_V1_UltraCompact_net_g_100000.engine --tacticSources=+CUDNN,-CUBLAS,-CUBLAS_LT

5.  等待一段时间运行完毕后,会生成2x_AnimeJaNai_Strong_V1_SuperUltraCompact_net_g_100000.engine文件。

6.  下载https://github.com/the-database/mpv-upscale-2x_animejanai/tree/main/shaders中2x_SharpLines.vpy,并放入.mpv-lazy\portable_config\vs文件夹中

7.  打开2x_SharpLines.vpy文件,将HD_ENGINE_NAME 和 SD_ENGINE_NAME替换为之前选择的模型的名字,将26行中的文件路径替换成生成的engine文件的路径

8.  打开mpv-lazy\portable_config中input_uosc.conf文件,加入2x_SharpLines.vpy文件路径,如下:

vf toggle vapoursynth="~~/vs/2x_SharpLines.vpy"              #! VF 滤镜 > 预设 SharpLines

建议VF滤镜都可以改成toggle,这样后面可以同时超分补帧

开始使用:

1.  右键1080P媒体,使用MPV打开

2.  右键-VF滤镜-SharpLines即可食用,在未全屏状态下可以从工具-常驻显示统计信息中看到Scaled Resolution发生变化,即打开成功

3.  性能如果还有多余,可以使用VF滤镜-预设RIFE_补帧_NVIDIA进行补帧,进一步压榨显卡性能。

顺利的话就可以使用了。

可以结合Bibili_Evolved对在线视频进行超分。

标签:

相关阅读