浙江大学学报(工学版), 2025, 59(5): 902-911 doi: 10.3785/j.issn.1008-973X.2025.05.003

计算机技术、信息工程

基于光流重投影的高性能轻量级帧外插技术

覃浩宇,, 过洁,, 张浩南, 冯泽森, 浦亮, 张嘉伟, 郭延文

南京大学 计算机科学与技术系,江苏 南京 210033

High-performance lightweight frame extrapolation technique based on optical flow reprojection

QIN Haoyu,, GUO Jie,, ZHANG Haonan, FENG Zesen, PU Liang, ZHANG Jiawei, GUO Yanwen

Department of Computer Science and Technology, Nanjing University, Nanjing 210033, China

通讯作者: 过洁, 男, 副教授. orcid.org/0000-0002-4176-7617. E-mail: guojie@nju.edu.cn

收稿日期: 2024-07-1  

基金资助: 中央高校基本科研业务费专项资金资助项目(2024300326).

Received: 2024-07-1  

Fund supported: 中央高校基本科研业务费专项资金资助项目(2024300326).

作者简介 About authors

覃浩宇(1998—),男,硕士生,从事计算机图形学的研究.orcid.org/0009-0006-0970-9659.E-mail:449139777@qq.com , E-mail:449139777@qq.com

摘要

为了解决实时渲染过程时间开销较大的问题,提出基于光流重投影的高性能轻量级帧外插技术.提出光流重投影模块,基于深度学习预测相邻帧之间的光流信息,对历史帧执行光流重投影,解决了阴影、高光区域没有运动信息的问题. 该方法引入多种轻量化设计,包括低分辨率网络推理、基于SE模块的图像填补,大幅减少了方法的时间开销. 经过实验验证可知,相对于最前沿的帧外插技术,该方法能够达到3倍的时间性能提升.

关键词: 实时渲染 ; 帧外插 ; 光流重投影 ; 图像填补

Abstract

A high-performance lightweight frame extrapolation technique based on optical flow reprojection was proposed in order to solve the problem of high time overhead in real-time rendering process. An optical flow reprojection module was proposed, which predicted the optical flow information between adjacent frames based on deep learning and applied optical flow reprojection to historical frames. Then the issue of areas such as shadows and highlights lacking motion information was addressed. The proposed method incorporated various lightweight designs, including low-resolution network inference and image inpainting based on SE (squeeze-and-excitation) modules, significantly reducing the computational overhead. The experimental results demonstrate that the proposed method achieves a threefold improvement in time performance compared to state-of-the-art frame extrapolation techniques.

Keywords: real-time rendering ; frame extrapolation ; optical flow reprojection ; image inpainting

PDF (1410KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

覃浩宇, 过洁, 张浩南, 冯泽森, 浦亮, 张嘉伟, 郭延文. 基于光流重投影的高性能轻量级帧外插技术. 浙江大学学报(工学版)[J], 2025, 59(5): 902-911 doi:10.3785/j.issn.1008-973X.2025.05.003

QIN Haoyu, GUO Jie, ZHANG Haonan, FENG Zesen, PU Liang, ZHANG Jiawei, GUO Yanwen. High-performance lightweight frame extrapolation technique based on optical flow reprojection. Journal of Zhejiang University(Engineering Science)[J], 2025, 59(5): 902-911 doi:10.3785/j.issn.1008-973X.2025.05.003

近年来,随着虚拟现实系统、AAA游戏、车机系统等产业需求的推动,现代显示器的像素分辨率和刷新率得到了显著的提升. 受限于显卡能力,大部分实时渲染引擎只能以较低的帧率执行渲染,难以满足高分辨率、高刷新率显示器的要求. 此外,随着硬件加速API的出现及包括游戏在内的相关行业对实时光线追踪技术需求的提高,人们期望在呈现高质量渲染内容的前提下,渲染过程的时间开销尽可能低[1-3]. 复杂的渲染算法通常会带来更多的渲染时间开销,简单的渲染管线和渲染方法难以满足实时渲染对时间性能的要求. 随着行业的发展,用户对渲染内容的质量有了更多的期待,人们希望能够得到高帧率的渲染结果,以达到更好的视觉体验. 对于普通的个人电脑应用,大部分用户的最低要求是帧率需要达到30~60帧/s. 由光线追踪带来的渲染时间开销为现有的实时渲染管线带来了新的挑战,如何以更小的时间开销来达到更好的图像质量是当前实时渲染领域的重要问题.

降低渲染成本的一种重要策略是时域超采样,也被称为图像插帧,这是在时间维度上进行超采样的技术: 通过已有的渲染图像直接生成一帧或多帧新的渲染结果来实现图像序列的帧率提升. 目前,图像插帧技术已逐渐成为计算机图形学和计算机视觉的热门研究方向之一[4-7].

在图像领域的插帧技术已经有了很多成果,但通常这些方法因巨大的时间开销而无法满足实时渲染对低时延的要求,不能直接迁移到实时渲染中使用. 在工业界,早期使用的较多的插帧方法通常基于传统的ASW[8]技术,但因为功耗过高、时延较长和算法插帧的效果欠佳等问题而难以推广. 近几年,越来越多的技术将深度学习作为渲染内容的插帧,例如以轻量级网络实现帧外插的ExtraNet[4], 在实时渲染的条件下能够得到不错的效果,但从性能角度来看,ExtraNet有很大的提升空间.

针对这一背景,本文提出基于光流重投影的高性能轻量级帧外插技术.提出的帧外插方法通过以下2个网络模块对重投影结果进行修正. 1)加入门卷积和SE模块,对重投影后产生的伪影执行图像填补的工作. 2)提出光流重投影的新技术,向网络输入多尺度的历史帧以提取2个相邻帧的特征金字塔,将不同尺度的特征拼接在一起,通过网络来预测历史帧到未来帧的光流信息,将预测的光流和历史帧特征输入到小型的CNN网络中,预测光流重投影的结果. 光流重投影模块的设计目的是期望通过光流的预测,弥补运动矢量无法捕获阴影和高光区域移动的缺陷. 2个网络模块输出的推理结果将会再次拼接起来,经过小型U-Net实现的权重选择网络,对2个结果进行融合,得到输出结果. 针对实时性的要求,本文方法对网络执行了多种轻量化操作,以尽可能降低网络的时延,保证输出结果的质量. 主要的轻量化操作如下: 在低分辨率条件下进行图像修补和光流重投影,引入轻量化的图像填补SE模块,对卷积网络进行剪枝等. 经过优化,整个算法的时间开销相对于ExtraNet提升了3倍左右,保证了较好的图像质量.

1. 相关工作

1.1. 时域超采样

时域超采样主要利用了图像序列在时间维度上的一致性. 对于一段连续帧,相邻帧之间的大部分图像结果通常都是相似甚至是一致的,时域超采样可以利用这一特性减少冗余的开销. 时域超采样通常通过帧间预测进行实现,基本思路是通过已有的帧来预测新的帧. 根据帧间预测所推理的新一帧的不同情况,可以将其分为2类技术: 帧内插值和帧外插.

帧内插值的目标是在2个相邻帧之间合成新的帧. 帧内插值方法通常可以分为以下4类. 1)基于相位的方法[9-10]. Meyer等[9]设计有界位移矫正策略,利用相位信息在一个多尺度金字塔结构中传播,实现了帧内插值. 2)基于光流的方法[5-7,11]. Bao等[5]利用光流信息、深度图和可学习的分层特征,设计具有深度感知能力的视频帧内插值方法. 3)基于核的方法[6-7]. Lee等[6]设计称为AdaCoF的图像重投影方法,预测用于目标帧像素推理的卷积核权重和偏移,实现帧预测的功能. 4)直接使用前馈神经网络进行预测的方法[12-16]. 其中,从性能角度出发,基于光流的方法是目前比较主流的思路,尤其是对于那些能够提供准确光流信息( 运动矢量) 的场景,这类方法的性能相对更优秀[17-19]. 在已知运动矢量的条件下,通常会利用图像重投影技术[17-18]充分复用帧间的重复信息,进行帧间插值. Yang等[19]通过双向投影插值了一对连续的渲染帧; Bowles等[20]提出使用固定点迭代的通用框架,用于后向的图像重投影.

帧外插技术是仅从历史帧信息来预测未来帧的方法,与帧间插值相比,可用信息相对更少. 在计算机视觉领域,由于缺少必要的运动信息,通常不会考虑对视频进行外插值. 在计算机图形学方面,Guo等[4]提出通过深度学习进行帧外插推理的方法,能够达到实时渲染的低时延要求.

1.2. 图像修补

在时域超采样过程中,为了生成新的帧,使用运动矢量进行重投影,会因为遮挡区域变化而无法正确对应的图像区域,产生类似于“空洞”的伪影.目前,针对该问题的解决方案通常是利用神经网络来进行图像修补. 现有的图像修补方法[21-23]大多数是采用编码器-解码器配置,结合对抗训练和感知损失来加强结果.

近年来,又有一些研究工作提出新的思路. 普通的神经网络对图像中的空洞区域不敏感,因此部分工作考虑引入注意力机制来加强网络的修补功能.部分卷积[24]和门控卷积[25]可以用来估计加权掩码,引导主干网络的卷积操作,加强网络对空洞区域的关注.针对帧与帧前后移动幅度过大的问题,需要增加网络的感受野来捕获图像中的长距离对应关系.Yu等[26-29]提出扩张卷积[26]、外观流[27]和基于Transformer的设计[28-29]等. 与编码器-解码器结构相反,Lugmayr等[30]提出用于图像修补任务的DDPM[31]方法,以更多的推理时间为代价来获得各种各样的输出. 在本文中,2项工作都涉及利用运动向量运行重投影的操作,因此都会在遮挡区域产生空洞,需要利用基于深度学习的图像修补技术进行处理.

2. 算法与管线

2.1. 动机与概述

高质量的渲染结果通常需要复杂的渲染算法来生成,但这类算法会带来巨大的时间开销,这在实时渲染过程中会严重影响整个图像序列的帧率. 一种可行的解决方案是利用图像序列的时间一致性进行超采样. 通过运动矢量对历史帧进行重投影,对结果进行修正,从而直接生成新的一帧,这种技术称为帧外插. 帧外插的关键挑战主要有如下2个. 1)整个帧外插流程的时间开销应尽可能小,以此来替换原本的渲染操作,有效提高图像序列的帧率. 2)针对运动矢量无法捕获到的运动信息( 高光、阴影的移动) , 需要有一个额外的模块来进行处理,否则会导致图像序列出现光影抖动的问题.

针对第1个挑战,本文从如下方面实现了整个模型的轻量化. 1)针对重投影后的伪影,使用轻量化的Inpainting模块组合——门卷积和SE模块,进行填补. 2)使用轻量化的网络模型——光流重投影模块,处理光影移动的问题. 3)在低分辨率条件下进行推理,大幅减少网络推理时间开销.

针对第2个挑战,提出针对光流的预测和重投影模块. 通过2个历史帧的特征金字塔预测光流,利用预测的光流对图像进行重投影,捕获光影的移动.

2.2. 总框架

本文所设计的网络主要由两大模块组成: 图像修补模块和光流重投影模块. 2个模块的设计均是为了处理历史帧重投影后产生的问题. 在使用运动矢量进行重投影后,运动物体原本的位置因为遮挡关系的变化会留下一段残影,需要利用图像填补的算法进行补充. 本文考虑通过神经网络对错误区域进行修正,在网络中引入2种与图像修补相关的模块: 门卷积和SE模块. 除运动物体外,有部分会发生运动的着色区域无法被运动矢量捕获到,例如阴影、 高光,这些区域需要光流重投影模块进行移动. 光流重投影模块是基于神经网络,通过对历史帧到未来帧的光流进行预测,使用光流进行重投影. 经过2个模块的处理,通过小网络进行结果融合,得到最终的推理图像.

图1所示为网络总框架的示意图. 对于图像修补模块和光流重投影模块的细节,将在后文详细介绍. 除2个重要模块外,总框架网络主要有以下两部分工作需要完成.

图 1

图 1   帧外插网络的总框架

Fig.1   Overall framework of frame extrapolation network


1)在两大模块输入前、后加入上采样和下采样操作,这一操作的目的主要是减少整个网络的时间开销,由于2个重要模块本身的网络规模很小,仅仅是替换某几个小模块或者是减少通道数量,对整体的性能提升影响不大. 更有效的方法是在整个网络推理过程中减少流动的数据数量,因此将更小的图像( 低分辨率图像) 输入网络会为网络性能带来数倍的提升,这在一些类似的工作中[32]有相似的操作. 经过后续的实验验证可知,以低分辨率的状态进行网络推理对图像质量的影响不大,这证明了该方法的可行性.

2)框架右侧部分的4层卷积操作. 这几层卷积的输入是两大模块输出的处理结果. 虽然2个模块所完成的工作不重叠( 运动物体的伪影和光影的移动) , 但由于卷积网络本身的学习能力,在很多区域,两大模块会得到相似的处理结果. 若直接使用固定权重的0-1遮罩,则不能结合2个模块输出的结果.设计权重选择的小型卷积模块,对图像修补模块的输出和光流重投影模块的输出进行融合. 权重选择网络仅由4层普通的卷积组成,主要是为了节省网络推理的开销. 通过在卷积过程中引入上采样和下采样模块,构建小型的U-Net结构.

2.3. 图像修补模块

图2所示为本方法中的图像修补模块. 基本结构为典型的U-Net网络. 在网络推理过程中,卷积操作的感受野能够充分覆盖整张图像,通过低分辨率的数据流来加快网络推理的速度.

图 2

图 2   图像修补模块

Fig.2   Image inpainting module


将图像修补模块的输入部分全部拼接到一起,再在网络首端进行输入. 输入的图像包括以下4个部分:与当前帧紧邻的历史帧重投影后的结果、重投影后经过处理得到的0-1遮罩、当前帧的深度信息、当前帧的世界法线信息. 其中0-1遮罩的获取主要是为了标记运动矢量重投影后产生的伪影,利用一些辅助的G-buffers进行生成[4]. 该输入可以引入注意力机制,使得网络能够集中处理这些区域.

相对于之前的帧外插工作[4], 输入删除了Occlusion Motion Vector[33]的重投影结果及2个G-buffer信息: 当前帧的金属性和粗糙度. 针对Occlusion Motion Vector, 本文主要有如下2个考虑. 1)Occlusion Motion Vector在大部分渲染管线中是无法获得的,需要自己定制管线进行输出,且Occlusion Motion Vector的生成及Occlusion Motion Vector的重投影操作需要引入额外的G-buffer信息和额外的时间开销,在整个管线的时延数量级都较小的情况下,引入这部分开销会降低整体的效率. 2)目前的网络本身对于图像填补的能力很强,Occlusion Motion Vector的引入对图像的视觉效果和指标结果的收益影响都较小,因此为了节省时间开销,可以去掉这一部分. G-buffers的削减有如下考虑:G-buffers的引入主要是为了辅助图像填补工作,对于遮挡关系的变化、物体的前后关系能够提供较充分的信息;世界法线坐标信息可以辅助捕获物体的移动.金属度和粗糙度这2个G-buffer能够提供的信息相对有限,引入它们会增加渲染管线的开销,因此该方法考虑去除这2个G-buffer输入. 后续将会通过实验来对比不同G-buffers的引入对本文模型的影响.

针对图像修补的任务,提出的网络模型主要有以下2个设计. 第1个设计是前2个门卷积操作( LWG Conv) ,基本思路来自类似的图像修补工作[25, 32]. 将图像的特征分别经过2组卷积,其中一组卷积正常输出特征,另一组卷积输出类似于空洞遮罩的特征,并经过sigmoid激活函数,将输出变换到0~1.0. 空洞遮罩的卷积操作可以直接输出1通道的特征结果,由此可以大幅降低门卷积的时间开销,但在结果质量上没有明显的影响. 设计的门卷积流程如图3所示.

图 3

图 3   门卷积模块

Fig.3   Gated convolution module


在整个网络流程中,只引入2个门卷积操作,后续的填补工作由挤压与激发( squeeze-and-excitation, SE)模块[34]来完成. SE模块如图4所示,基本思路是生成遮罩. 输入的特征经过1×1大小的自适应池化处理( global pooling) , 将每个通道整张图的特征压缩为一个值. 经过全连接层( FC layer) 进行特征提取,经过Sigmoid激活函数变换到0~1.0后,再还原到原始的图像. 由此产生的遮罩特征与输入特征相乘得到输出. 对于2个全连接层的输入输出,SE模块有一个R值的超参数设置. 当经过第1个全连接层时,将通道数降为原本的1/R( 整除),再在第2个全连接层进行还原,该方法所设置的R为16. R的设置可以减少全连接层计算的开销,优化SE模块的效率.采用门卷积和SE这2个Inpainting模块的原因如下. 1) SE模块相对于改进后的门卷积模块开销更小,可以进一步降低网络推理的时延. 2)SE模块可以自适应地调节通道级别的特征响应,更好地填补空洞区域,相对于门卷积,能够更好地提供注意力机制去填补空洞的区域. 3)SE模块经过池化后提取的遮罩特征是来自全图的全局特征,而门卷积操作中单个卷积提取的感受野有限,是局部特征,这2个特征在图像填补的过程中都是有用的信息. 该方法通过2个门卷积进行初步的图像填补,再经过3个SE模块对填洞效果进行进一步的加强.

图 4

图 4   SE模块

Fig.4   SE module


2.4. 光流重投影模块

光流重投影模块的设计主要是为了完成运动矢量无法覆盖的阴影、高光的移动工作. 光流重投影网络如图5所示,整个网络的输入由一个图像金字塔组成. 通过比对2个历史帧的位置变动情况,可以获取对应的光流信息,用于后续重投影,因此将2个历史帧通过运动矢量重投影到当前帧,作为输入. 在输入前,重投影结果会乘上提前生成的空洞遮罩. 本模块用于阴影、高光修正,无需学习填洞的能力. 为了去除重投影后伪影的影响,输入前通过0-1遮罩进行覆盖. 整个光流重投影模块主要由3部分组成: 图像金字塔下采样过程的特征提取部分、特征拼接后不断上采样的分层光流预测部分、最后的光流重投影部分.

图 5

图 5   光流重投影模块

Fig.5   Optical flow reprojection module


特征提取部分以图像金字塔作为输入,此处只进行了2次下采样,因此图像金字塔一共有3层,分别进行特征提取. 采用图像金字塔的目的是获得不同尺度感受野的特征,由于阴影高光的移动情况与场景中移动物体和摄像机的移动强相关,移动距离的范围较大,需要有不同尺度的感受野来捕获移动的信息,以生成正确的光流. 直接使用多尺度的输入,有利于解决该问题. 特征提取过程是下采样加3×3卷积的处理流程,下采样的目的是获得不同尺度感受野的特征. 在特征提取后,需要把图像金字塔各自提取的相同尺度的特征进行拼接,因此对于不同大小的输入,会经过不同数量的卷积操作,图5中相同颜色的方块表示经过相同卷积操作后生成的特征. 每个尺度的输入所经过的特征提取模块都共享一套权重.

经过特征提取以后,能够得到3个尺度的拼接的特征金字塔,且2个历史帧各自有一组特征. 将相同尺度的2个历史帧的特征拼接在一起,通过3组卷积加激活函数( ReLU) 的处理生成2通道的预测光流. 最底层预测的光流首先乘上系数2, 然后经过上采样( 这里使用的是反卷积) 后,再与倒数第2层的预测光流直接相加. 通过逐层相加的方式,可以累积不同尺度所预测到的光流信息,得到最终的原始尺寸的光流预测结果. 每一层都需要先乘上系数2, 原因是预测的光流结果是针对每一个像素点在当前尺寸下的偏移量,上采样以后偏移量需要相应地扩大一倍( 本方法中的上采样都采用2倍) , 因此需要乘以系数2来保证光流与图像尺寸的比例保持一致.

在得到原始尺寸的2通道光流后,将其与原始尺寸的前一个历史帧的特征拼接起来,最后进行简单的卷积操作,得到光流重投影输出. 这部分没有直接使用光流对特征或者是原始的图像进行重投影,而是通过网络来实现,主要是考虑到预测的光流不一定完全准确,可以再次通过网络来加强结果. 重投影的输入部分加入了2个G-buffer信息(当前帧的深度和世界法线), 虽然G-buffer信息对阴影和高光部分几乎没有作用,但它们可以使光流重投影的整体结果更准确. 光流重投影模块的输出和图像填补模块一样,是三通道的RGB图像.

2.5. 网络训练

直接将整个网络模型看作端到端的网络,进行统一训练. 在网络训练的流程中,模型使用3种不同的损失函数帮助学习,分别用于帧外插技术中几个常见问题的解决.

第1个损失函数是常规的L1距离损失,计算的是输出的RGB图像与真实图像( ground truth, GT) 的逐像素差值:

$ {{L}_{{1}}} = \frac{1}{n}\sum\limits^{n}_{i=1} {|{F_i} - {G_i}|}. $

式中:${F_i}$为网络预测第i个像素的值,${G_i}$为真实图像第i个像素的值,$n$为整个图像的像素数量. L1损失是图形和图像领域常用的损失函数,能够保证图像整体的质量,避免出现大面积的色差问题.

第2个损失是针对图像填补模块所使用的损失函数,在整张图像中,因为运动矢量重投影产生的空洞面积比例很小,仅依靠L1损失,难以让网络在需要图像填补的区域充分发挥作用.引入空洞遮罩损失:

$ {{L}_{{\mathrm{hole}}}} = \frac{1}{{n - \displaystyle \sum\nolimits_i {{h_i}} }}\sum\limits_i {|{F_i} - {G_i}|} . $

式中:${h_i}$表示预先生成的前一个历史帧重投影后而产生的0-1空洞遮罩,由于在实现过程中,将空洞区域赋值为0,而非空洞区域设置为1,遮罩损失仅为空洞区域的L1距离损失,增强了网络的图像修补功能.

第3个损失是针对光流重投影模块所引入的损失函数. 在考虑空洞区域已经填补成功的条件下,预测图像与真实图像相差最大的地方是阴影和高光区域,这些区域的运动不会被运动矢量记录,因此历史帧重投影以后的这类区域的像素与真实图像有较大的差距.受Guo等[4]的工作启发,将误差最大的k个像素的L1损失作为第3个损失:

$ {{L}_{{\mathrm{hard}}}} = \frac{1}{n}\sum\limits_{i \in {P_{{\mathrm{top}} - k}}} {|{F_i} - {G_i}|} . $

式中:k为训练时的超参数,本文中k设置为图像总像素数量的1/10. 将第3个损失函数称为Hard损失,主要作用是帮助光流重投影模块实现阴影高光的移动.

最终的损失函数为以上3个损失函数的加权和,如下所示.

$ {L} = {w_{{L_1}}}{{L}_{{1}}}+{w_{{\mathrm{hole}}}}{{L}_{{\mathrm{hole}}}}+{w_{{\mathrm{hard}}}}{{L}_{{\mathrm{hard}}}} . $

式中:$ {w_{{\mathrm{hole}}}} $${w_{{\mathrm{hard}}}}$分别为空洞遮罩损失和Hard损失的权重. 在实验中发现,本文方法的2个权重都取1,可以取得较好的效果.

针对以上的方法,使用Pytorch[35]框架进行具体的实现,优化器采用mini-batch SGD的Adam优化器[36]. 虽然实际训练使用的输入图像分辨率较大,但网络模型本身较小,因此训练的批大小设置为8. Adam优化器的参数${\beta _1}$设置为 0.9, ${\beta _2}$设置为0.999. 将网络学习率设置为${10^{ - 3}}$, 并设置余弦学习率衰减( cosine learning rate decay) , 最终的实验配置为25个迭代轮次后开始启用衰减策略. 本方法对数据集中的各场景采取单独训练与测试,每个场景训练的迭代轮次均为150, 其他相关参数的初始化都直接使用Pytorch的默认设置.

3. 实验验证

所有实验都在NVIDIA RTX 3090 GPU上进行训练和测试,所有方法都使用相同的数据集进行验证.

3.1. 数据集

使用的数据集由虚幻引擎导出,一共包含2个完全不同的场景: Medieval Docks( 码头) 和Redwood Forest( 森林) . 在场景中通过跟踪录制预设的移动人物,得到多段不重复的序列作为训练集,再单独录制几段短序列作为测试集. Medieval Docks场景一共使用了7个训练序列,共6 300帧图像;测试集一共4个序列,共1 200帧图像. Redwood Forest场景一共5个训练序列,共4 500帧图像;测试集一共4个序列,共1 200帧图像.

生成的场景数据共分为2个部分: 历史帧的渲染结果和G-buffers以及当前帧的G-buffers. 由于虚幻引擎延迟渲染的设计,当前帧在进行渲染之前能够生成G-buffers, 而G-buffers的生成时间开销很低,当前帧的生成开销主要来自神经网络的推理.

针对本文方法的设计,需要导出的G-buffers主要有以下2类. 1)网络推理所需要的 G-buffers: 深度、世界法线. 2)数据处理所需要的 G-buffers: 反照率、运动矢量、运动物体蒙版、世界空间坐标、世界法线.

反照率为网络推理前后用于去除纹理信息的G-buffers.反照率的引入主要是为了提升图像结果的整体质量,可以保证输出结果的整体色调与GT一致[4,37-38]. 将运动矢量用作历史帧的重投影,将运动物体蒙版、世界空间坐标、世界法线用于3种空洞遮罩的生成.

3.2. 时间开销的分析

表1所示为本文方法与ExtraNet的时间开销对比以及与模型规模相关的参数: 模型数据量P 、每秒浮点运算次数F 、模型推理过程中占用的显存大小GPU、单次推理耗时T. 在原始模型的基础上,为了进一步降低网络推理延迟,对原始模型的卷积通道数进行缩减,得到快速版本(Fast). 该版本的推理能力相对于原始模型略有降低,但速度有明显的提升. 表1中的数据结果均是对720像素的图像进行帧外插而得到的结果. 为了公平起见,3种方法的测速都没有用到任何加速功能( 例如TensorRT) , 仅仅是在PC机上进行测速,因此单从时间上来说,还有更多的提升空间. 从表1可知,本方法原始版本的推理速度较ExtraNet提升了约3倍. Fast版本进一步实现了近5倍的加速效果. 与ExtraNet相比,使用本文方法进行帧外插,可以大幅地增大图片序列的帧率,有效提高实时渲染场景的流畅性. 针对该计算效率下的图像生成质量验证,将在3.3节展开定性和定量分析.

表 1   提出方法与ExtraNet的时间开销/模型规模对比

Tab.1  Comparison of time cost/model size between proposed method and ExtraNet

方法P/106F/109GPU/MBT/ms
ExtraNet0.2650.88183928.56
本方法原始版本0.166.2283110.76
本方法Fast版本0.154.273766.42

新窗口打开| 下载CSV


3.3. 结果对比

为了验证该方法在低时间开销下能够得到高保真度的外插帧结果,与ExtraNet进行直接对比. 为了公平起见,ExtraNet的训练集和测试集与本文方法保持一致,迭代次数为150, 整个对比实验的流程都在相同配置的PC机上完成.本文实验涉及2个场景:Medieval Docks( MD) 和Redwood Forest(RF). RF场景相对于MD场景,树枝、树叶和草丛等精细的区域更多.由于该方法以高计算效率为优化重点,在低分辨率条件下执行图像修复及光流重投影任务时存在性能瓶颈.

3.3.1. 定性分析

图6所示为本文方法与ExtraNet在MD和RF场景下的对比图.图中,第1列是本文直接输出的结果,第2列是Ground Truth(GT) , 第3~5列为几种方法与GT作差以后生成的误差图,颜色越深说明差值越接近0, 输出结果与GT的差距越小. 可以看出,针对第1、2排的MD场景,原始模型的误差输出与ExtraNet方法的差距很小. 在相对简单一点的场景中,本文方法的时间开销仅为当前最优工作的1/3且保证图像质量不下降,利用Fast版本模型预测的图像在整体效果上与ExtraNet差距不大,不过在细节上会有一些问题,比如旗杆上的布料颜色会与GT差距偏大,但考虑到Fast版本有5倍的效率提升,在某些需要超高帧率提升的应用场景下,这部分小的瑕疵是可以忽略掉的. 对于第3、4排的RF场景,本文方法与ExtraNet相比效果较差,主要原因是RF场景中有大量的精细树叶和杂草,再加上地面上几乎都覆盖着复杂纹路的树根枝干,本文方法在低分辨率条件下进行整个推理过程,会丢失一些细节. 如果直接将本文方法的输出结果与GT进行视觉上的比较,那么整体上的效果没有明显的瑕疵. 针对这样的精细复杂场景,运用本文方法进行插帧,对图像序列进行补充,可以获得较好的结果.

图 6

图 6   Medieval Docks( 1、2 排) 和Redwood Forest( 3、4 排) 场景的帧外插结果对比

Fig.6   Comparison of frame extrapolation result of Medieval Docks (row 1,2) and Redwood Forest (row 3,4)


3.3.2. 定量分析

表2所示为指标结果. 针对帧外插算法,采用2个基本指标用于定量分析: 峰值信噪比(peak signal-to-noise ratio,PSNR) 和结构相似性(structural similarity index measure,SSIM) [38]. 除此以外,还引入新的评估指标: 平均单次推理峰值信噪比PT. 该指标的计算是将PSNR除以网络执行一次完整推理的时间,能够将时间开销和输出图像质量统一起来考虑. 对于本文方法和ExtraNet的基本指标( PSNR、SSIM), MD场景下降相对较少,主要原因是码头相对森林的细节更少. 虽然本文方法相对ExtraNet的指标整体上有所下降,但本文方法在时间性能上的提升很突出. 第3个指标在加入了时间的影响以后,本文的2种方法在指标结果上均优于ExtraNet, 在某些需要追求极致帧率的应用场景下,本文方法相对于ExtraNet有明显的优势.

表 2   不同场景下的定量指标结果对比

Tab.2  Comparison of quantitive indicator result of different scene

方法场景PSNR/dBSSIMPT/(dB·ms−1)
ExtraNetMD28.180.88010.9866
RF23.500.82920.8228
本文方法MD26.950.82992.5046
RF21.210.73571.9711
本文方法(Fast)MD25.700.79724.0031
RF20.340.67963.1682

新窗口打开| 下载CSV


3.4. 消融分析

本研究的消融分析旨在系统评估方法中关键组件对系统性能的贡献度. 本研究主要针对以下几个核心模块展开验证与评估:G-buffers在渲染管线中的重要性验证、光流重投影算法的有效性分析以及SE注意力模块的性能测试. 通过在MD场景上进行消融实验分析,验证这3个问题. 如表34所示为消融实验指标的结果对比. 如表4所示,对多种G-buffers的选择策略都做了相关的实验,并列出了相应的指标结果.

表 3   模块替换前、后的实验指标结果

Tab.3  Experimental indicator result before and after module replacement

模型PSNR/dBSSIM
原始模型26.950.829 9
w/o光流重投影模块25.350.810 1
w/o SE模块24.110.803 5

新窗口打开| 下载CSV


表 4   不同G-buffers选取策略的实验指标结果

Tab.4  Experimental indicator result of different G-buffers selection strategy

策略PSNR/dBSSIM
原始模型结果26.950.8299
不删减G-buffers27.310.8341
只保留depth25.100.7935
不使用G-buffers23.990.7701

新窗口打开| 下载CSV


针对G-buffers重要性这一问题,考虑在ExtraNet的4个G-buffers输入的基础上去掉金属度和粗糙度2个G-buffers, 因为这2个G-buffers在填洞过程中能够用到的信息远不如世界法线和深度信息,在网络中的重要性较低. 针对这一优化思路,开展G-buffers重要性的实验. 如表4所示为不同G-buffers裁剪策略下指标结果的变化情况. 可以看出,原始模型( 去掉了金属度和粗糙度) 与不作任何裁剪的模型相比,虽然指标有所下降,但下降的幅度很小,远不如去掉世界法线或者去掉所有G-buffers对指标的影响. 去掉深度或者世界法线,会对填洞的结果有很明显的影响,如图7所示. 主要原因是世界法线和深度信息都能够很明确地提示网络当前帧的遮挡和物体前后排列的情况,指导网络重投影导致的伪影进行有效填充,因此仅去掉金属度和粗糙度,留下深度和法线,是很有必要的.

图 7

图 7   G-buffers重要性实验结果

Fig.7   G-buffers importance experiment result


光流重投影模块主要是为了替换history encoder而引入的,替换以后能够减少历史帧的使用并减轻网络推理负担,引入更多的运动信息,帮助模型进行重投影结果的图像填补工作. 如表3所示,带有光流重投影模块的原始模型的指标比使用history encoder的模型略高,但在图像效果上对比不明显,因为无论是history encoder还是光流重投影模块,都可以使阴影移动,如图8所示. 将history encoder进行替换,主要是从网络效率和管线的精简出发.

图 8

图 8   光流重投影模块消融实验的结果

Fig.8   Result of optical flow reprojection module ablation experiment


SE模块主要是为了替换原本的部分门卷积操作,SE模块相对于原本的门卷积相对来说效率更高. 如表3所示,相对于门卷积,SE模块的指标结果略高,特别是在孔洞区域的内容填充方面具有明显优势. 实际的图像效果如图9所示,影子部分在有SE模块的条件下填充完整,在没有SE模块的情况下出现缝隙. SE模块的引入提升了网络效率,有效增强了生成内容的几何一致性.

图 9

图 9   SE模块消融实验的结果

Fig.9   Result of SE module ablation experiment


4. 结 语

本文提出基于光流重投影的轻量级帧外插算法,通过图像修复模块和光流重投影模块的双模块架构,高效提升了帧率. 图像修复模块用于消除重投影后产生的伪影,光流重投影模块则专注于处理复杂光照条件下的动态区域,通过权重选择网络合成输出帧. 实验表明,该方法在多种场景数据集上均表现出优于对比方法的性能,通过消融实验验证了各模块设计的有效性,能够在低延迟下完成高分辨率帧的生成.

在应用层面,该方法可以直接集成至主流渲染引擎,仅选择少量常用的G-buffers可以直接与延迟渲染技术协同优化实时渲染管线. 此外,可以结合超分辨率技术,实现时域与空域的联合采样,减少渲染负担. 该方法在实际工业场景中存在一定的局限性,主要体现在G-buffers信息不完整以及复杂非刚性运动建模不足. 未来工作将重点改进光流模块的动态建模能力,探索基于部分G-buffers信息的鲁棒外插机制,以提升该方法在实际应用中的适应性.

参考文献

SANDY M, ANDERSSON J, BARRÉ-BRISEBOIS C. Directx: evolving microsoft’s graphics platform [C]// Game Developers Conference . San Francisco: IEEE, 2018.

[本文引用: 1]

BURGESS J

RTX on the NVIDIA Turing GPU

[J]. IEEE Micro, 2020, 40 (2): 36- 44

DOI:10.1109/MM.2020.2971677     

HARADA T. Hardware-accelerated ray tracing in AMD Radeon ProRender 2.0 [EB/OL]. [2024-06-20]. https://gpuopen.com/learn/radeon-prorender-2-0/.

[本文引用: 1]

GUO J, FU X, LIN L, et al. ExtraNet: real-time extrapolated rendering for low-latency temporal supersampling [J]. ACM Transactions on Graphics , 2021, 40(6): 1-16.

[本文引用: 7]

BAO W, LAI W S, MA C, et al. Depth-aware video frame interpolation [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition . Los Angeles: IEEE, 2019.

[本文引用: 2]

LEE H, KIM T, CHUNG T Y, et al. AdaCoF: adaptive collaboration of flows for video frame interpolation [C]// IEEE/CVF Conference on Computer Vision and Pattern Recognition . Seattle: IEEE, 2020.

[本文引用: 2]

NIKLAUS S, MAI L, LIU F. Video frame interpolation via adaptive convolution [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition . Hawaii: IEEE, 2017.

[本文引用: 3]

OCULUS V. Asynchronous spacewarp [EB/OL]. [2024-06-20]. https://developers.meta.com/horizon/blog/asynchronous-spacewarp/.

[本文引用: 1]

MEYER S, WANG O, ZIMMER H, et al. Phase-based frame interpolation for video [C]// IEEE Conference on Computer Vision and Pattern Recognition .Washington DC: IEEE, 2015: 1410-1418.

[本文引用: 2]

MEYER S, DJELOUAH A, MCWILLIAMS B, et al. PhaseNet for video frame interpolation [C]// IEEE/CVF Conference on Computer Vision and Pattern Recognition . Los Alamitos: IEEE, 2018: 498-507.

[本文引用: 1]

JIANG H, SUN D, JAMPANI V, et al. Super SloMo: high quality estimation of multiple intermediate frames for video interpolation [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition . Los Alamitos: IEEE, 2018.

[本文引用: 1]

LONG G, KNEIP L, ALVAREZ J M, et al. Learning image matching by simply watching video [C]//LEIBE B, MATAS J, SEBE N, et al. European Conference on Computer Vision . Cham: Springer, 2016: 434-450.

[本文引用: 1]

CHOI M, KIM H, HAN B, et al. Channel attention is all you need for video frame interpolation [C]// AAAI Conference on Artificial Intelligence . New York: AAAI, 2020.

KALLURI T, PATHAK D, CHANDRAKER M, et al. FLAVR: flow-agnostic video representations for fast frame interpolation [C]// IEEE Workshop/Winter Conference on Applications of Computer Vision . [S. l.]: IEEE, 2020.

LU L, WU R, LIN H, et al. Video frame interpolation with Transformer [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition . New Orleans: IEEE, 2022: 3532-3542.

REDA F, KONTKANEN J, TABELLION E, et al. FILM: frame interpolation for large motion [C]// European Conference on Computer Vision . Tel Aviv: Springer, 2022.

[本文引用: 1]

DIDYK P, EISEMANN E, RITSCHEL T, et al

Perceptually-motivated real-time temporal upsampling of 3D content for high-refresh-rate displays

[J]. Computer Graphics Forum, 2010, 29 (2): 713- 722

DOI:10.1111/j.1467-8659.2009.01641.x      [本文引用: 2]

DIDYK P, RITSCHEL T, EISEMANN E, et al. Adaptive image-space stereo view synthesis [C]// Proceedings of Vision, Modeling, and Visualization Workshop 2010 . Siegen: [s. n.], 2010.

[本文引用: 1]

YANG L, TSE Y C, SANDER P V, et al. Image-based bidirectional scene reprojection [C]// Proceedings of the 2011 SIGGRAPH Asia Conference . Hongkong: ACM, 2011: 1-10.

[本文引用: 2]

BOWLES H, MITCHELL K, SUMNER R, et al. Iterative image warping [C]// Computer Graphics Forum. Oxford: Blackwell Publishing Ltd, 2012: 237-246.

[本文引用: 1]

NTAVELIS E, ROMERO A, BIGDELI S, et al. AIM 2020 challenge on image extreme inpainting [EB/OL]. [2024-06-20]. http://arxiv.org/abs/2010.01110.

[本文引用: 1]

PATHAK D, KRAHENBUHL P, DONAHUE J, et al. Context encoders: feature learning by inpainting [EB/OL]. [2024-06-20]. https://arxiv.org/abs/1604.07379.

ZENG Y, FU J, CHAO H, et al. Learning pyramid-context encoder network for high-quality image inpainting [EB/OL]. [2024-06-20]. https://arxiv.org/abs/1904.07475.

[本文引用: 1]

LIU G, REDA F A, SHIH K J, et al. Image inpainting for irregular holes using partial convolutions [EB/OL]. [2024-06-20]. https://arxiv.org/abs/1804.07723.

[本文引用: 1]

YU J, LIN Z, YANG J, et al. Free-form image inpainting with gated convolution [EB/OL]. [2024-06-20]. https://arxiv.org/abs/1806.03589.

[本文引用: 2]

YU F, KOLTUN V. Multi-scale context aggregation by dilated convolutions [EB/OL]. [2024-06-20]. https://arxiv.org/abs/1511.07122.

[本文引用: 2]

REN Y, YU X, ZHANG R, et al. StructureFlow: image inpainting via structure-aware appearance flow [EB/OL]. [2024-06-20]. https://arxiv.org/abs/1908.03852.

[本文引用: 1]

LIU H, WANG Y, WANG M, et al. Delving globally into texture and structure for image inpainting [C]// Proceedings of the 30th ACM International Conference on Multimedia . [S. l. ]: ACM, 2022.

[本文引用: 1]

PIRNAY J, CHAI K. Inpainting Transformer for anomaly detection [EB/OL]. [2024-06-20]. https://arxiv.org/abs/2104.13897.

[本文引用: 2]

LUGMAYR A, DANELLJAN M, ROMERO A, et al. RePaint: inpainting using denoising diffusion probabilistic models [EB/OL]. [2024-06-20]. https://arxiv.org/abs/2201.09865.

[本文引用: 1]

HO J, JAIN A, ABBEEL P. Denoising diffusion probabilistic models [[EB/OL]. [2024-06-20]. https://arxiv.org/abs/2006.11239.

[本文引用: 1]

GUO J, LAI S, TAO C, et al. Highlight-aware two-stream network for single image SVBRDF acquisition [J]. ACM Transactions on Graphics , 2021, 40(4): 1-14.

[本文引用: 2]

ZENG Z, LIU S, YANG J, et al

Temporally reliable motion vectors for real-time ray tracing

[J]. Computer Graphics Forum, 2021, 40 (2): 79- 90

DOI:10.1111/cgf.142616      [本文引用: 1]

HU J, SHEN L, SUN G. Squeeze-and-excitation networks [C]// IEEE/CVF Conference on Computer Vision and Pattern Recognition . Los Alamitos: IEEE, 2018: 7132-7141.

[本文引用: 1]

PASZKE A, GROSS S, MASSA F, et al. PyTorch: an imperative style, high-performance deep learning library [C]//WALLACH H M, LAROCHELLE H, BEYGELZIMER A, et al. Proceedings of the 33rd International Conference on Neural Information Processing Systems. Vancouver: MIT Press, 2019: 8024-8035.

[本文引用: 1]

KINGMA D P, BA J. Adam: a method for stochastic optimization [C]// BENGIO Y, LECUN Y. 3rd International Conference on Learning Representations. San Diego: MIT Press, 2015.

[本文引用: 1]

SCHIED C, KAPLANYAN A, WYMAN C, et al. Spatiotemporal variance-guided filtering: real-time reconstruction for path-traced global illumination [C]// Proceedings of High Performance Graphics .[S. l.]: ACM, 2017 .

[本文引用: 1]

LIU E. DLSS 2.0: image reconstruction for real-time rendering with deep learning [C] // Game Developers Conference . [S. l.]: UBM TechWeb, 2020.

[本文引用: 2]

/