最近在B站听伍佰的时候,发现有不少UP主制作了4K画质修复版 Live 视频😘

这些二十多年前的视频,在4K画质下,似乎多了一份莫名的感动…

我后来突然就很好奇,他们是怎么制作的这些视频?毕竟我也收藏有不少老片🐶

做了些研究,阿虚发现实现的方法还不少,比如:

  1. 如今有专业的视频修复公司,比如之前的4K修复版开国大典,其实是花费了600个人的修复团队将24万帧画面一帧一帧上色修复的
  2. 国外一家名为 VideoGorillas 的公司开发了 Bigfoot、SUPER RESOLUTION 等AI修复技术,不过该公司只承接商业合作,并未对外提供可操作的软件
  3. AI影片《老北京100年前影片修复》制作者「大谷Spitzer」分享了他的工作流程:视频补帧使用DAIN(Python),分辨率倍增部分使用 ESRGAN(Python),上色应用了 DeOldify(Jupyter Notebook),此外用 VirtualDub(C++)做了一些老电影降噪处理

可以看出上面的方法,要么掏出你的人民币,要么有过硬的编程技术,对于我们多数人来说,是没有可操作性的🤦🏻‍♂️

不过呢,阿虚后续又深入研究了亿下,发现其实也是有我们一般人可学会的流程的🌸🐔

▍1 提升视频画质

大家应该知道,简单来看待视频,其实就是「一帧帧连续的图片」配上对应的「音频」

那说直白点,如果你想要提升视频分辨率且不怕麻烦的话,完全可以将音画分离,视频导出为一帧一帧,然后用 Waifu2x 等软件将每一帧都放大,最后重新合并画面与音频:https://mp.weixin.qq.com/s/p0ClpJuiNHunkJ7IgyTtCQ

不过上述方法实在过于麻烦了,好在有这么一家公司—— Topaz

开发了一款名为 Topaz Video Enhance AI 的软件,可以让我们一键化实现上述步骤

● 1.1 Topaz Video Enhance AI简介

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系列:

  1. Artemis系列比较适合修复画面本身噪点不多,已经被轻微后处理过的视频,比如演唱会DVD原盘这种,视频本身在制作时经过了轻微的磨皮和调试,会有不少特写镜头,这样的视频用Artemis系列修出来,特写镜头清晰的不可思议!

  2. Dione系列是v1.9才推出的模型,算法不算太成熟,虽然能够处理隔行扫描视频,但是当视频中有运动的主体时,运动主体的横纹时常有残留,运动速度越快残留可能性越高。而且当人脸在画面中占比不是很大时,眼睛经常修不好,会有类似水纹的横纹存在!

  3. Gaia系列主要用于修复CG动画和数码制作的动画,颜色不复杂、线条明显的手绘动画用Gaia-CG/采用特别材质,如水彩、丙烯等的动画用Gaia-HQ

  4. Theia系列是可以自己调整参数的模型,但对于多数人来说,自己手动调参的门槛过高,一遍一遍试错其实非常费时间,除非是你实在特别喜欢某个视频非要试出个最完美的参数又另说

以上评价综合了这几位作者的观点,如果想深入掌握 Topaz Video Enhance AI 建议仔细研读一下这几篇文章:

● 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加速下载教程》

如果你实在对到 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

SVP 这款插帧软件关注微信公众号:阿虚同学,发送以下关键词,后台即会自动回复下载地址:

视频插帧

具体安装过程阿虚有在压缩包中提供,这里为节省篇幅就略过,这里就说一下怎么在 PotPlayer 中启用 SVP

在 PotPlayer 中右键 » 选项

然后找到滤镜 » 全局滤镜优先权 » 添加系统滤镜 » 选择ffdshow raw video filter 并确认

然后还要点一下 ffdshow raw video filter,选择「强制使用」并点击「应用」

如果你的电脑有独显,还需要以下操作

在选项中找到滤镜 » 视频解码器 » 内置解码器/DXVA 设置 » 勾选硬件加速并把DXCA2 Copy-Back 切换为独显,最后点击确定

以上步骤完成之后,一定要重启电脑 ❗ 重启电脑 ❗ 重启电脑 ❗

重启之后,如果想要对视频进行补帧,需要先打开SVP

第一次启动SVP它会自行根据对电脑配置的测试来设置参数,当然你也可以自行进行设置:

总而言之以上都搞定之后,再启用 PotPlayer 打开视频就能感受补帧效果了!

如果一切都操作正确的话,影片播放前几秒, PotPlayer 左下角是会出现 SVP 启用的标志的

好家伙,直接给我补到144帧,把我显示器的配置直接拉满!

可惜的就是这种补帧后的丝滑体验没办法通过文章展示了,这个真的只有靠自己肉眼才感受的出来了🤷🏻‍♂️

大家就能靠自己实操后体验了

对于老视频提升画质、提高帧率阿虚也只是浅显的进行了一下研究,像是如何对黑白视频上色这里就没深入研究了(考虑到应用场景比较少暂时可能也不准备写)

不过阿虚原来写过一篇对黑白图片上色的文章,感兴趣的话倒是可以去复习一下:https://mp.weixin.qq.com/s/SjSg29iDkfAX7_DNOcSqdw

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐