基于深度学习和光流算法的电影高新技术格式制作AI插帧技术研究

2023-12-09 09:41
现代电影技术 2023年11期
关键词:光流轨迹特性

胥 斌

中影华夏电影科技(北京)有限公司,北京 100088

1 引言

随着新技术的不断演进和电影产业的不断发展,观众对于电影拍摄、制作、发行、放映质量的要求越来越高,目前数字电影系统能支持高帧率(HFR)、高动态范围(HDR)影片的放映。因此,为充分发挥新型放映设备性能,满足观众更高观影需求,开展帧率提升和技术增强研究,是当前较为急迫的研究需求[1]。目前电影主流帧率是24FPS,高帧率电影一般指帧率不低于60FPS 的电影。随着电影高新技术格式制作放映技术特别是高帧率(HFR)技术的发展,60FPS 格式的影片由于应用了高帧率技术,有效缓解了图像卡顿、画面闪烁的情况,为观众提供了更好的观影体验。如何在镜头释义不变的前提下将24FPS影片转换为60FPS 影片,是当前电影技术领域的研究难点和热点。近年来,基于AI 插帧算法的研究已取得一定进展,但所采用的插帧算法可能会带来电影画面节奏的畸变,进而影响镜头的正确释义,所开展的研究基于图像运动特性的针对性研究、设计和改进建议。本文所关注的帧率增强并非广泛意义上的帧率变换,而是特定的24FPS 到60FPS 电影帧率变换。

目前的AI插帧算法相较于传统的插帧算法已经取得了重大突破。2019 年,由Bao 提出的深度感知视频帧插值方法(Depth-Aware Video Frame Interpolation,DAIN)引发了学术界对于视频插帧的大量关注。该方法采用了一种新颖的深度感知机制,可以很好地解决运动模糊和遮挡等问题[2]。同年,Xu 等提出了视频插帧算法(Quadratic Video Interpolation,QVI),建立了光流反向搜索机制,在视觉效果和数据指标等方面均取得了重大提升[3]。2022 年,Huang 等提出了实时中间流估计算法(Real-Time Intermediate Flow Estimation,RIFE),使用多尺度迭代的方式计算插帧光流,具有较高的运行速度和较好的视觉效果[4]。2023 年由Kalluri 等人提出基于非光流视频表示的插帧算法(Flow-Agnostic Video Representation,FLAVR)。FLAVR 算法采用了3D 卷积,是第一个端到端的视频插帧网络,其可以很好地处理复杂的运动场景和物体边缘模糊等问题[5]。

尽管AI 插帧算法具备较好的技术优势,但其在电影领域的应用仍然存在以下问题:

(1)现有AI插帧算法都不支持非整数倍插帧,想要实现24FPS 到60FPS 的2.5 倍插帧,只有两种等效方案:一是采用“2-1-2-1”非等间隔方式插帧;二是将24FPS 先降为12FPS,再进行5 倍等间隔插帧。以上两种方案均存在一定局限性,其中第一种方案会带来运动特性失调的现象,导致电影节奏变形;第二种方案插帧效果非常受限,并且没有充分利用原始帧。因此,现有的AI 插帧算法无法很好支持24FPS到60FPS的帧率变换。

(2)目前大部分AI 插帧算法都假定两帧之间的运动是均匀的,其中一部分甚至并没有对运动信息做显性建模,这种设计模式导致插帧结果的运动特性趋于均匀化。如果镜头运动本身是抖动或者剧烈的,那么该算法的插帧结果会抹除这种镜头运动的节奏。还有一小部分以QVI 为代表的插帧算法虽然对帧间运动有所建模,但由于其一方面只适用于4帧输入的场景,另一方面这类算法会使用两套参数描述同一段帧间运动,这会导致运动信息混乱,从而打乱插帧后的运动节奏。

为了解决上述问题,本文提出一种能够应用于高新技术格式电影制作且可保持运动信息一致的插帧算法。本文算法通过对连续三帧的运动模型进行建模,并将该模型适配到每个输入帧,以使整个序列的运动模型统一。同时根据运动信息自动选择插帧间隔,保证在非整数倍插帧操作时不会改变运动特性。

2 技术流程设计和算法实现

2.1 流程设计

插帧算法的技术流程见图1。

图1 插帧算法流程图

算法共分为光流模块、运动分析模块和帧合成模块三个部分,其中运动分析模块为本文所提出的独有模块。首先,光流网络用于计算两个输入帧之间的光流,光流信息可以看作是两个输入帧之间的像素位移量。通过光流网络,计算第一帧到第二帧的光流为F12,以此类推可以计算得到F21、F23、F32。这四个光流为第一阶段的输出。之后,将第一阶段的光流输入到运动分析模块,计算三帧内的运动特性,输出t 时刻的初始光流。这里t 分别取[0.4,0.8,1.2,1.6]四个值,其含义为:如果假设第一帧和第二帧之间的时间间隔为1,则算法需要对第一帧到第三帧内的0.4、0.8、1.2 以及1.6 时刻进行插帧。最终根据运动分析模块的初始光流信息,使用帧合成模块计算得到t时刻的插帧结果。

2.1.1 光流模块

光流模块主要输出输入帧之间的初始光流,初始光流的计算由光流神经网络(Optical Flow Neural Network)完成。本文所用光流神经网络采用基于深度学习的全局运动聚合光流神经网络(Global Motion Aggregation,GMA)[6]。GMA 的输入为两张图像,通过计算两幅图的相关性,迭代求解得到输入图像之间的光流。其功能可以通过式(1)表示,其中I1、I2、I3分别表示输入的第1、2、3帧。

2.1.2 运动分析模块

运动分析模块首先以中间帧的光流F21和F23作为标准,使用二次轨迹对运动信息进行建模,进而得到二次模型的参量,并传递到F12以及F32上,使得在三帧整体区间内的运动信息保持稳定和一致。最终,根据运动轨迹方程计算t 时刻的光流信息作为输出(图2)。图2 中XY 坐标系中的黑色线条为画面中一个点的运动轨迹,在实际场景中,运动轨迹并非是直线,而是一条曲线。为了建模这条曲线,以中间帧I2为起点,计算I2分别指向I1和I3的光流为F21和F23,从而求解得到轨迹的运动参数,进而实现运动分析的计算。

图2 光流物理意义可视化

在运动分析模块内部,F21和F23有较为明确的物理意义,即第二帧上的点必定处在向第一帧和第三帧移动的轨迹上,且其光流表征了中间时刻的位移量。根据这一特性,对运动轨迹做二次项建模,即假设运动轨迹最高为时间t 的二阶高斯展开,如式(2)所示。

将t=1 带入,可求得时间的二阶系数A2,其表征了第二帧上点的运动特性,将A2分别传递到第一帧和第三帧得到A1和A3,A2到A1的传递公式如式(3)所示。

其中η表示以x+F12(x,y,0),y+F12(x,y,1)为中心的2×2 的像素邻域;C(a,b,c,d)代表计算并返回(a,b)与(c,d)两点之间的双线性系数。A2到A3的传递公式类似,在此不再赘述。将A2带入式(4),求得第二帧和第三帧之间的轨迹方程如式(4)所示。同理可以写出第一帧和第三帧的运动轨迹方程如式(5)所示。

在运动分析模块内部,适配t 的取值[0.4,0.8,1.2,1.6],根据式(4)和式(5)可计算得到指向t 时刻的两支光流将用于后续插帧结果的合成。

2.1.3 帧合成模块

帧合成模块流程如图3 所示,该模块首先对I1、I2、I3进行深度特性提取,根据t 时刻初始光流将I1、I2、I3及其对应图像特征映射到t 时刻,根据映射后的内容,将其以张量形式输入到神经网络中,得到最终的插帧结果。

图3 帧合成流程

2.2 算法实现与模型训练

得益于运动分析模块的设计,训练阶段网络部分无需再处理非整数倍插帧,因此这里采用与QVI相同的数据集作为数据训练集。该数据集原始数据包含173 个视频片段,涵盖了多个类型的运动场景。数据集将所包含的视频拆解成36926 个序列帧,而这些序列帧所对应的帧率为240FPS。在训练过程中,实验拟使用8倍插帧的模式对算法进行训练,即算法的输入和输出对应帧率分别为30FPS和240FPS。

训练共分为两个阶段。第一个阶段固定光流网络权重,只训练帧合成模块部分的网络权重。该阶段训练共100 轮,每一轮均使用完整的Youtube960数据集进行监督学习,学习率为0.0001。同时,采用L1 损失函数进行监督。第二个阶段对算法内所有权重进行训练更新,将训练50 轮,其中前25 轮学习率为1e-5,后25 轮学习率为1e-6。此阶段采用学习感知图像块相似度(Learned Perceptual Image Patch Similarity,LPIPS)[7]函数进行监督。

3 实验验证及结果评估

针对算法的测试分为对算法的详细评估和针对插帧后运动特性的分析,以证明插帧前后运动特性保持了一致性。

3.1 非整数倍插帧评估

这一部分展示了算法在非整数插帧的表现,实验对应用DAIN、QVI、FLAVR 和RIFE 四种方法后的结果进行了对比分析,无论定量或定性分析的结果都表明本文算法较之其他插帧算法的效果表现更优,其中RIFE 版本V4.6(最新版)作为评估对象。

(1)数据集处理

为了模拟非整数倍插帧的实际应用场景,本文选用了GoPro 数据[8]中240FPS 数据集作为测试数据集。GoPro 数据集是2017 年建立的计算机视觉领域的一个标准公开数据集,是多个视觉任务中的评估数据集。使用GoPro 拍摄的实采数据集中包含了约3000 组数据对。笔者对GoPro 数据集中的测试集分别进行10 倍和4 倍帧率下采样,得到24FPS 和60FPS两组图像序列,固定其分辨率为1280×720,并将作为评估非整数倍插帧的基准数据。

(2)评估指标与方法

实验使用PSNR[9]、SSIM[10]作为插帧结果的评价指标,评价指标越高则表示图像画质越好。为了保证实验的公平性,评估阶段排除训练阶段已经使用的Youtube960 数据集,采用GoPro 数据集作为评估数据集。使用GoPro-24FPS 序列作为输入序列,并与GrPro-60FPS 序列进行对比。由于DAIN、QVI、FLAVR 以及RIFE 并不支持非整数倍插帧,因此在评估过程中,统一采用先插两帧再插一帧相互交替的模式进行运算。在计算数值指标时,本文将去除完全对齐帧(即时间对齐状态的输入帧)之后所有帧的定量指标作为参考依据。

评估结果如表1 所示,本文所提出的方法在两个参数指标方面均具有明显优势,在非整数倍插帧任务中可以更好地展现帧间运动特性,视觉比较结果如图4 所示,从左到右分别为DAIN、QVI、FLAVR、RIFE、本文结果以及真值结果。其中红色框区域内,本文结果显著优于其他插帧结果;绿色框区域内,本文结果与真值相近,优于QVI 以及FLAVR。此外,本文解决方案在物体完整度、清晰度方面都具有更好的表现,因此插帧性能表现更加优异。

表1 非均匀插帧GoPro 数据集定量结果

图4 非整数倍插帧视觉效果对比图

3.2 运动一致性评估

原始的运动特性由GoPro 60FPS 数据提取得到,插帧后的运动特性由插帧后的序列帧提取得到。运动特性信息可以由物体的运动轨迹来表征。如图5(a)所示,在图像随机选取一个点作为追踪对象,分别计算这个点在每一个帧的位置信息,然后将其在二维坐标系中使用有向线条连接,得到最终的运动轨迹。其中,红色线为原图(30,250)处的真实轨迹,绿色线和蓝色线分别为RIFE 以及本文算法该点的插帧轨迹。从轨迹形状图的角度,本文算法所对应的轨迹与真实值的轨迹更为接近,保留了真实轨迹所对应的运动趋势。图5(b)为RIFE 以及本文算法在4个连续合成帧中位置与真实值的距离,根据定量结果,本文的轨迹误差小于RIFE 的轨迹误差。因此评估结果表明,本文算法的复原轨迹与真实轨迹更加接近。

图5 轨迹可视化对比

3.3 小结

该算法主要包括以下两个方面的尝试:

(1)我们通过利用大量已配对的图像序列对,训练了一个深度学习模型,实现了基于电影数据的深度学习模型训练与推理。该模型可以根据输入的前后两帧图像,自动计算出中间帧的光流信息,从而实现影片的自动插帧。这一技术的研发成果,将极大地改善高新技术格式电影制作过程的质量和效率。

(2)我们还针对电影应用特性的光流算法进行了优化,解决了从24FPS 提升到60FPS 时所呈现的运动感官异常问题。这种设计的独特之处在于,它不仅考虑了拍摄内容本身,还将镜头的运动也纳入到了计算范畴。因此,这种设计直接以观众的视觉体验为主导衡量因素,从而为观众带来更加真实、流畅的电影视觉感受。

针对所提出的AI 插帧技术,我们进行了大量的实验验证,结果表明该技术能够有效地提高影片的质量和流畅度。与传统的插帧技术相比,该技术具有更高的自动化程度和更低的误差率,同时计算效率也得到了大幅提升。总体来说,本研究为数字电影高新技术格式制作提供了新的思路和方法,为电影制作带来了更多的可能性。在未来的研究中,我们将进一步深入研究AI插帧技术和其他先进的数字电影制作技术,以期在更广泛的领域中实现应用和推广。

4 总结与展望

随着科技的不断发展,高新技术格式制作已经成为电影行业的重要趋势。插帧技术是数字电影制作过程中提高影片帧率的重要手段之一。然而,传统的插帧技术存在诸多限制,例如需要大量手动调整、耗费时间较长、难以实现自动化等。因此,本文首次提出了一种基于深度学习和光流算法的数字电影高新技术格式制作AI 插帧技术,旨在解决传统插帧技术的不足之处,从而提高影片制作效率和观影体验。本文通过对连续帧的运动特性进行建模,实现了2.5 倍的非整数倍帧率增强,确保在插帧前后镜头运动特性的一致性,为非整数倍插帧时非均匀采样带来的运动异常问题提出了技术解决方案。通过进行实际的系统搭建并验证实验数据,其结果表明本文算法是表现更好的AI电影插帧算法。

在未来的研究中,我们将以AI 插帧的光流估计与匹配技术作为基础技术基石,深化和拓展AI 在电影行业的应用,具体为以下几个方面:

(1)拓展应用领域

除了数字电影高新技术格式制作,AI 插帧技术在电影行业中有着广泛的应用前景,如影片修复[11][12]、3D 影片制作[13][14]、虚拟现实(VR)影片制作[15][16]等。在影片修复中,可以利用AI 插帧技术自动识别和修复老旧影片中的抖动、晃动等问题,提高影片观看体验;在3D 影片制作中,AI 插帧技术可以为制片方提供自动化生成3D 立体效果,提高制作效率;在虚拟现实(VR)影片制作中,该技术可以自动生成高质量的VR 影片,为观众带来沉浸式的观影体验。

(2)持续推进技术迭代升级

尽管本研究已经取得了一定的成果,但我们认为AI 插帧技术还有很大提升空间。例如,在深度学习模型的训练过程中,我们可以采用更复杂的模型结构,亦或尝试新的光流估计方法[17][18],以提高插帧的计算精度。由于光流的估计算法往往作为单独的研究课题,因此在本文中并没有针对光流估计本身做定制化优化,而是将其作为基础模块对本文算法提供技术支撑。

(3)结合其他先进技术

数字电影高新技术格式制作是一个涉及多个领域的综合性领域,除了AI插帧技术本身的应用外,可以将AI 插帧技术与现有的图像增强、视频编码[19][20]等技术进行结合,以解决自动识别并修复影片中的噪点、色彩失真等问题,提高影片的视觉效果和观看体验。另外,笔者还可以将AI 插帧技术与视频编码技术相结合,实现更加高效的影片压缩和存储。通过探索这些技术的综合应用和提升,笔者可以进一步推动数字电影制作领域的进步和发展。

(4)加强实践及推广应用

虽然本研究从学术的理论角度对基于AI的电影插帧进行了论证,但在实际应用中基于AI 的电影插帧仍然有需要验证和完善的空间。因此,笔者将积极寻求与相关企业和机构合作,将所研究的AI 插帧技术应用到实际的数字电影制作中(包含且不限于母版制作、特殊版本发行等),并对其效果进行评估和完善。此外,笔者还将关注电影行业的市场需求和技术发展趋势,深入了解制片方、导演、演员等各方的需求,从而将研究成果与实际应用相结合,推动AI插帧技术在电影行业得到更广泛的应用。

总之,本研究旨在为数字电影高新技术格式制作提供一种新的、高效的、自动化的插帧技术解决方案。笔者仍然认为该领域具有广阔的发展前景和潜力。在未来的研究中,笔者将继续深入探索该领域中的其他先进技术以期为数字电影制作带来更多的创新和突破。

猜你喜欢
光流轨迹特性
利用掩膜和单应矩阵提高LK光流追踪效果
谷稗的生物学特性和栽培技术
轨迹
轨迹
色彩特性
进一步凸显定制安装特性的优势 Integra DRX-5.2
基于物理学的改善粒子图像测速稳健光流方法研究
轨迹
Quick Charge 4:什么是新的?
进化的轨迹(一)——进化,无尽的适应