老视频画质修复完整教程:Topaz Video Enhance AI提升分辨率+RIFE算法补帧(附软件下载地址)
最近在B站听伍佰的时候,发现有不少UP主制作了4K画质修复版 Live 视频
这些二十多年前的视频,在4K画质下,似乎多了一份莫名的感动...
我后来突然就很好奇,他们是怎么制作的这些视频?毕竟我也收藏有不少老片
做了些研究,小编发现实现的方法还不少,比如:
如今有专业的视频修复公司,比如之前的4K修复版开国大典,其实是花费了600个人的修复团队将24万帧画面一帧一帧上色修复的
国外一家名为 VideoGorillas 的公司开发了 Bigfoot、SUPER RESOLUTION 等AI修复技术,不过该公司只承接商业合作,并未对外提供可操作的软件
AI影片《老北京100年前影片修复》制作者「大谷Spitzer」分享了他的工作流程:视频补帧使用DAIN(Python),分辨率倍增部分使用 ESRGAN(Python),上色应用了 DeOldify(Jupyter Notebook),此外用 VirtualDub(C++)做了一些老电影降噪处理
可以看出上面的方法,要么掏出你的人民币,要么有过硬的编程技术,对于我们多数人来说,是没有可操作性的 ♂️
不过呢,小编后续又深入研究了亿下,发现其实也是有我们一般人可学会的流程的
▍1 提升视频画质
大家应该知道,简单来看待视频,其实就是「一帧帧连续的图片」配上对应的「音频」
那说直白点,如果你想要提升视频分辨率且不怕麻烦的话,完全可以将音画分离,视频导出为一帧一帧,然后用 Waifu2x 等软件将每一帧都放大,最后重新合并画面与音频。
开发了一款名为 Topaz Video Enhance AI 的软件,可以让我们一键化实现上述步骤
● 1.1 Topaz Video Enhance AI简介
Topaz Video Enhance AI 基于人工智能,喂以数以千计视频的训练其数据模型,可以将模糊视频智能锐化,从素材中推断细节以让视频变得清晰
最关键的是,不仅功能牛逼,使用上也做到了小白一键化操作!
⚠️软件点击这里即可下载
安装和 过程小编就略过了,在安装包中小编有详细说明
这里用伍佰1996夏夜晚风演唱会DVD原盘的480P视频做测试:
在右边可以直接快速设置AI模型与想放大的视频倍数:
● 1.2 AI模型的选择
最主要影响视频处理结果的就是AI模型了,所以这里费篇幅多说一点
Topaz Video Enhance AI 2.1版的模型大致分为4个系列:Artemis系列,Dione系列,Gaia系列,Theia系列:
Artemis系列比较适合修复画面本身噪点不多,已经被轻微后处理过的视频,比如演唱会DVD原盘这种,视频本身在制作时经过了轻微的磨皮和调试,会有不少特写镜头,这样的视频用Artemis系列修出来,特写镜头清晰的不可思议!
Dione系列是v1.9才推出的模型,算法不算太成熟,虽然能够处理隔行扫描视频,但是当视频中有运动的主体时,运动主体的横纹时常有残留,运动速度越快残留可能性越高。而且当人脸在画面中占比不是很大时,眼睛经常修不好,会有类似水纹的横纹存在!
Gaia系列主要用于修复CG动画和数码制作的动画,颜色不复杂、线条明显的手绘动画用Gaia-CG/采用特别材质,如水彩、丙烯等的动画用Gaia-HQ
Theia系列是可以自己调整参数的模型,但对于多数人来说,自己手动调参的门槛过高,一遍一遍试错其实非常费时间,除非是你实在特别喜欢某个视频非要试出个最完美的参数又另说
以上评价综合了这几位作者的观点,如果想深入掌握 Topaz Video Enhance AI 建议仔细研读一下这几篇文章:
B站作者@日出和日出的第一道光:https://www.bilibili.com/read/cv10545545(图文对比)
B站作者@菊长大人:https://www.bilibili.com/read/cv11874826(有视频对比)
B站作者@ZHY2020:https://www.bilibili.com/read/cv10766442/
● 1.3 逐行扫描&隔行扫描
这里简单说一下逐行扫描&隔行扫描
其实目前大多数视频都是逐行扫描,隔行扫描更多出现在「老视频」
然后怎么样判断视频是逐行扫描还是隔行扫描呢 ❓ ❓
如果你是从网上下载的视频文件:文件名标注1080P就是逐行扫描,而隔行扫描是1080i
更准确一点的确认办法是在视频播放器中,比如 Potplayer
右键查看「属性」,找到「文件信息」,即可以看到下面这个视频是逐行扫描(progressive)的,而如果是隔行扫描,那显示的单词会是 interlaced
● 1.4 处理前后效果对比
OK,上面你看懂了之后,应该能判断出小编的这个「伍佰1996夏夜晚风演唱会DVD原盘的480P的视频」应该选用 Artemis 系列的模型 ⭕
然后要根据放大前视频的质量来选择AI模型:一般360P、480P建议选低质量模型,720P建议中等质量,1080P则选高质量:
对于其他设置:
「裁剪以填充帧」这个选项建议关闭
如果是真人视频,颗粒数量和大小推荐「均设置0.8」或者「均设置0」;而动画CG视频则均建议设置为0
以上都设置好之后,在软件左边设置区(一定建议设置短一点,比如小编只设置了8帧的区间),然后点击预览
然后如果你是第一次使用某个AI模型,将会弹出以下窗口
因为软件需要联网下载模型,所以请耐心耐心耐心耐心耐心耐心等待!⏳ ⏳ ⏳
而且模型下载完之后,还需要一帧一帧处理你刚刚选择的区间(所以上面建议各位少设置几帧)
总之一直耐心等待到出结果,我们就可以预览到视频处理前后的区别:
上图你可能不太看得出区别,你可以在软件右上角,切换画面显示大小
处理过后,的确是肉眼可见画质有提升
不过毕竟是后期修复而来的,画面放大到一定程度还是能明显看到处理痕迹的,常见的就比如这种类油画质感
总而言之,在你预览后对处理效果满意的话,就可以回到软件主界面,在界面右下角「设置视频输出目录」并开始正式处理视频了☕
● 1.5 版本选择
小编上文虽然是以2.1版中文版进行的介绍,不过这是为了方面大家理解
其实加上上文没提到的软件设置界面,整个软件也没多少英文设置!
在掌握用法后其实更建议用最新的2.2版
2.2版的好处是处理效率更有提升+新增了智能算法选择推荐+不少算法都又有进行更新(比如Artemis、Dinoe)
而且小编这边的2.2版省去了2.1版的安装等步骤,直接解压就可用!
唯一缺点仅是2.2版目前只有英文版!
● 1.6 关于处理耗时
然后必须要说一下,这款软件非常吃电脑配置!
首先系统要求WIN10(仅限64位),要求最小电脑内存8GB(推荐16GB,且越大越好)
然后在CPU模式下:推荐英特尔i7或更高(4GHz及以上);AMD则推荐锐龙7或者更高(4GHz及以上)
如果是GPU模式下:建议显卡显存要有6GB或更多
方便大家参考,这里稍微列一下不同配置网友处理视频所花费的时间 :
2.1.1版本,960×464至1920×928,GT940MX显卡平均2-3秒一帧
(可以看出版本的提升软件性能大有优化,GT940MX属于排行倒数的显卡了)
我用的是GTX1050Ti,i7-H的,可以用,1080转4K,一个3-4分钟的视频要算7个小时
A卡 R9380,720P转换2K,大概1.15秒一帧
(约36分钟处理1分钟长的视频)
RX5700表示很淦,现在软件无法调用A卡,AMD3600进行720×480转1440×960(200%)16分钟的视频要17小时多
酷睿i9+显卡RTX 3080+内存32g,11分钟720P转1080P要两个小时,平均每帧0.3秒
(约9分钟处理1分钟长的视频)
▍2 视频补帧
目前电影普遍是每秒24帧,多数网上的视频则是每秒30帧
但估计不少人早就是144Hz的电脑屏幕了,甚至手机应该都是120Hz的吧?所以说目前视频的帧率已经远远赶不上广大人民群众的需求了
为了最大程度利用显示屏的性能,我们可以做的便就是对视频进行补帧了
补帧对视频最明显的体验提升就是在运动画面上:
光是图片大家不太能体验出来,不过可以想象一下打游戏30帧和60帧的区别,有画面了吗?
● 2.1 常见视频补帧算法
关于视频补帧的算法我们目前主流的有几种
第一种就是英伟达公布的Super SloMo算法,不过遗憾的是论文发布时并没有将代码和数据集公开,所以只能在视频中感受一下它的强大了
虽然官方没公布算法,但是一位在德州上学的大佬在GitHub上开源了他对 Super-SloMo的 PyTorch实现:https://github.com/avinashpaliwal/Super-SloMo
但这个算法用的人比较少,而且因为没有Windows打包版,使用门槛也颇高
第二种就是来自上海交大的一个DAIN插帧算法:https://github.com/baowenbo/DAIN
虽然也有基于此算法的GUI版本工具Dain-App:https://github.com/BurguerJohn/Dain-App
不过此算法极度吃显卡及显存资源,低端N卡不建议使用,AMD显卡更是直接不支持
但好在,我们现在又有了新的补帧算法选择:
● 2.2 RIFE算法
RIFE算法效率更高,重影更低,最重要的是补帧时间大大缩小,原本用DAIN补帧一部25分钟左右的720P动漫一般要十几二十个小时,而RIFE只要四小时左右
更关键的是基于RIFE算法的带GUI版软件还很多!
比如 Flowframes:https://nmkd.itch.io/flowframes(这款软件缺点就是全英文界面,且在线安装很慢,优点是要求的驱动版本不高,一般能省去更新驱动的步骤)
不过相对来说小编更推荐有中文界面的 Squirrel-RIFE Video Frame Interpolation:https://github.com/YiWeiHuang-stack/Squirrel-RIFE
不过Github目前处于半墙状态,建议了解《Github加速下载教程》
⚠️软件点击这里即可下载
软件使用非常简单,一键式操作,拖入视频,设置「视频原始帧率」和「补帧倍率」,再设置好输出文件夹,最后点击「一键补帧」就行了
但注意,N卡想要使用这款软件,需要所安装的驱动版本大于等于460.89(20201225发布)✅
你可以直接到NVIDIA官网手动搜索驱动程序自行下载最新版驱动:https://www.nvidia.cn/geforce/drivers/
如果你搞不懂怎么搜,你可以直接「GEFORCE 驱动程序」来帮你自动更新到最新版N卡驱动:
另外A卡虽然也能用该软件,但只能调用CPU进行处理,效率就慢得多了!
▍3 播放器插帧
但如果不是为了制作高清视频收藏或者分享出去,只是为了提升一下本地观看体验的话,其实我们有实时给视频插帧的办法
● 3.1 PotPlayer自带
用 PotPlayer 给视频插帧最简单,成本也低,只需要吃CPU,不怎么需要显卡,可谓懒人最佳的选择
这款播放器的去广告版可以在储物间(axutongxue.com)4-11栏直接下载
只需要在视频播放时在 PotPlayer 右键 » 图像处理 » 勾选「倍帧」,即可实现将30帧的视频翻倍到60帧
我们在 PotPlayer 中按 Tab 键,即可快速查看当前视频信息,可以看到视频原帧率30,在播放时的确有了60帧(因为是实时处理所以会有上下波动)
不过呢,目前 PotPlayer 最多就能将视频处理成60帧,小编专门试过本身就是60帧的视频,再开启 PotPlayer 的倍帧,实际也依然只有60帧,不会变成120帧
● 3.2 在Potplayer中开启SVP
但 PotPlayer 自身的插帧效果一般,真想要体验丝滑的插帧效果,基本上是用SVP
⚠️软件点击这里即可下载
具体安装过程小编有在压缩包中提供,这里为节省篇幅就略过,这里就说一下怎么在 PotPlayer 中启用 SVP
在 PotPlayer 中右键 » 选项
然后找到滤镜 » 全局滤镜优先权 » 添加系统滤镜 » 选择ffdshow raw video filter 并确认
然后还要点一下 ffdshow raw video filter,选择「强制使用」并点击「应用」
如果你的电脑有独显,还需要以下操作
在选项中找到滤镜 » 视频解码器 » 内置解码器/DXVA 设置 » 勾选硬件加速并把DXCA2 Copy-Back 切换为独显,最后点击确定
以上步骤完成之后,一定要重启电脑 ❗ 重启电脑 ❗ 重启电脑 ❗
重启之后,如果想要对视频进行补帧,需要先打开SVP
第一次启动SVP它会自行根据对电脑配置的测试来设置参数,当然你也可以自行进行设置:
总而言之以上都搞定之后,再启用 PotPlayer 打开视频就能感受补帧效果了!
如果一切都操作正确的话,影片播放前几秒, PotPlayer 左下角是会出现 SVP 启用的标志的
好家伙,直接给我补到144帧,把我显示器的配置直接拉满!
可惜的就是这种补帧后的丝滑体验没办法通过文章展示了,这个真的只有靠自己肉眼才感受的出来了 ♂️
大家就能靠自己实操后体验了
原文地址:https://zhuanlan.zhihu.com/p/392131214 转载于知乎 阿虚同学