如何用 60 帧播放 24 帧的视频?
Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif; font-size: 16px; letter-spacing: 0.544px; white-space: normal; max-width: 100%; min-height: 1em; text-align: center; visibility: visible; box-sizing: border-box !important; overflow-wrap: break-word !important;">❶
什么是补帧?
在一段影片当中,一个物体的运动轨迹是相对固定的,因此通过算法可以很容易地算出两帧画面中物体的运动轨迹,在两帧运动轨迹的中间加入模拟的运动轨迹帧,实现插帧效果。通过这样的手段能够实现 30 变 60 及以上的帧率,并且能够减少画面的拖影,让视频看起来更加干净清晰。
但是问题是这样简单的补帧会出现很多问题:例如会加大显卡的压力,带来散热和功耗的压力;有可能会出现画面物体的撕裂;物体边缘由于像素运动是「从无到有」,因此可能会出现连续性方面问题,这被称之为块效应;无法很好地解决前有遮挡的运动物体的运动轨迹补帧。因此现阶段最先进的补帧方案是通过 AI 计算的方式进行补帧,请注意这里的 AI 不是噱头,而是真的通过 AI 卷积神经网络计算的方式。
首先,要喂给 AI 大量的已有影像资料,通过机器学习的方式使 AI 训练出一个叫做「卷积核」的东西,这个卷积核是一个函数,输入画面到输出画面的变化就是由这个卷积核加权平均后决定的。卷积核有点像一个「超级滤镜」,通过这个卷积核计算的视频能够实现更加清晰和智能的补帧。
这种 AI 补帧能够实现远胜于传统运动补帧算出来的视频效果,在上海交大开源的 DAIN(Depth-Aware Video Frame Interpolation) 插帧算法中,已经可以实现自动识别景深来辅助插帧,这样几乎完全解决了由于遮挡带来的画面 BUG。图片来源:极客湾视频
但是相对来说这种补帧方式实现的成本也非常高:由于需要 CUDA 的帮助才能计算,因此必须要有一块英伟达显卡,AI 计算非常吃显卡性能(尤其是显存),所以这块显卡的水平还不能太差;非常花时间,以小时或者天为单位来实现优化。多说一句,这种 AI 计算的方式不但可以用来插帧,还可以用来提升画质,实现 480P 变 4K 的神奇操作。2019 年上映的电影《决胜时刻》中的开国大典就是根据从俄罗斯买回来的原片经过 AI 算法进行了修复后,实现了「胶片变 4K」的神奇效果。
❷
如何实现补帧?
· 要有一张 GNC 或者 Vega 架构的 AMD 显卡,并下载最新的 AMD 驱动。· 打开「AMD Fluid Motion video」功能。
· 下载 Bluesky Frame Rate Converter,安装完成后点击「Enable AFM Support」。
· 在 Potplayer 中的「选项 - 滤镜 - 全局优先滤镜 - 添加系统滤镜」选择「Enable AFM Support」滤镜,并强制使用。
这样就完成了设置,新视频就完成了视频补帧,实测效果还可以吧。
NVIDIA 显卡如果你是 Nvidia 显卡,可以选择 SVP 或者是 DmitriRender 搭配 Potplayer 或者 MPC-HC 播放器使用。SVP 已经是知名的老牌 PC 插帧软件了,大家可以在其官网上选择对应的版本进行下载,Windows、Mac、Linux 都有支持,官方教程也比较清楚。
缺点是收费(比较贵)、比较吃系统资源(尤其是显卡),而且在我的 1050TI 笔记本上经常出现音画不同步的情况。DmitriRender 是一款新兴的视频插帧软件,相较于 SVP 比较节省系统资源,收费也更便宜。使用方式同样也是下载后添加滤镜。
这两种方式 AMD 显卡和核显都可以用,不过 AMD 更推荐上面的原生方案,核显可能会出现资源不够的情况。特别提醒插帧软件通常会有电影和动漫两种方案。这是由于动画通常不是一帧一张画面的,而是「一拍二」或者「一拍三」,就是一张画用两帧或者三帧画面,也就是说「12 张图构成 24 帧」或者是「8 张图构成 24 帧」,剩下的部分由观众「脑补」而成(人体神奇的大脑和视觉系统)。庵野秀明的「一拍三」变「一拍一」
目前来看,体验出色的补帧视频能够相当程度上提升视频的观看体验,这点相信看过李安最近几部电影的都应该有所感觉。但是目前的民用补帧技术还相对比较落后,我还是非常期待 AI 补帧能够达到正常用户使用水平的那天。一个更加流畅的世界。
撰文 / 恺伦
编辑 / 恺伦
责任编辑 / 恺伦
文中部分图片来源于网络




