PVNC论文中提到的策略有哪些应用案例?
摘要:论文地址:https:arxiv.orgpdf2409.00953 代码地址:https:github.comge1-gaoPNVC 摘要 近年来,神经视频压缩在率失真性能方面展现出与传统视频编解码器可竞争的巨大潜力。然而,
论文地址:https://arxiv.org/pdf/2409.00953
代码地址:https://github.com/ge1-gao/PNVC
摘要
近年来,神经视频压缩在率失真性能方面展现出与传统视频编解码器可竞争的巨大潜力。然而,这些基于学习的视频编解码器存在各种问题,例如解码复杂度(基于自编码器的方法)和/或系统延迟(基于隐式神经表示(INR)的模型),这些问题目前阻碍了它们在实际应用中的部署。本文旨在开发一种实用的神经视频编解码器,提出了一种新颖的基于 INR 的编码框架 PNVC,该框架创新性地结合了基于自编码器和过拟合的解决方案。我们的方法受益于多项设计创新,包括新的基于结构重参数化的架构、分层质量控制、基于调制的熵建模和尺度感知位置嵌入。PNVC支持低延迟(LD)和随机访问(RA)配置,性能优于现有的基于 INR 的编解码器,与 HEVC HM 18.0(LD)相比,BD-rate 节省了近35%以上——比最先进的基于 INR 的编解码器之一 HiNeRV 高出近10%,比 VTM 20.0(LD)高出5%,同时保持1080p内容的解码速度超过20帧/秒。这代表了基于 INR 的视频编码向前迈出了重要一步,使其更接近实际应用。
引言
神经视频压缩技术与 H.265/HEVC 和 H.266/VVC 等标准化视频编解码器不同,这些标准编解码器采用传统架构的演进版本,性能表现出色;而神经视频压缩技术则受益于更快的开发周期和优化的数据驱动端到端架构,性能指标正在快速提升。该研究领域的进展已经涌现出各种各样的候选神经视频编解码器,其中一些论文报道其率失真性能可以媲美甚至超越最新的最先进标准编码方法。
尽管在编码增益方面前景广阔,但神经视频编解码器(主要是那些使用基于自编码器骨干网络的编解码器)存在显著的复杂性问题,尤其是在解码端,这使得它们资源密集且不适用于许多实际应用。虽然常见的复杂度降低技术,例如剪枝和量化可以缓解这些限制,但这通常会导致编码效率的显著降低。
最近,基于隐式神经表示(INR)的编码方法作为一种实现高编码性能和低(解码)复杂度的范式转变解决方案,越来越受到关注。这种方法通常利用轻量级神经网络,通过将坐标直接映射到像素值来对输入视频数据进行过拟合。尽管最新的基于 INR 的编解码器在许多传统和神经视频编解码器上都显示出持续的编码增益,但它们存在一个主要局限性,即其压缩策略是使用单一的整体模型来表示整个视频序列或数据集。虽然这种方法可以最大限度地提高压缩效率,但它需要在每个编码会话中处理大量的视频帧(例如,几百到几千帧),这与常用的编码配置相冲突,因为这些配置通常需要灵活的系统延迟,例如 VVC VTM 中的低延迟和随机访问模式。这个问题使得基于隐式神经表示的视频编解码器在处理较短序列时性能不佳,也阻碍了它们在许多实际应用中的应用。
本文提出了一种名为 PNVC 的新型(实用)基于隐式神经表示(INR)的视频压缩框架,旨在解决上述局限性,该框架能够实现灵活的编码配置(低延迟),同时仍能获得具有竞争力的编码性能和较低的编码/解码复杂度。所提出的 PNVC 基于分层骨干网络构建,该网络泛化了自回归模型,并且可以与基于内容或基于调制的 INR 模型无缝互换。我们的方法利用了预训练-再过拟合策略,使模型能够在预训练阶段泛化到不同的内容,同时在过拟合阶段适应特定输入的内容。此外,我们还开发了一种新的重参数化方法,以及其他架构和优化方面的创新,该方法允许在训练期间使用不受限制的模型容量,同时确保低复杂度的推理。这种解耦使得更有效的优化成为可能,而不会牺牲部署效率。本文的主要贡献总结如下:
我们提出了一种基于隐式神经表示(INR)的新型视频编码模型,该模型集成了基于自编码器和过拟合的解决方案,具有极具竞争力的编码性能、相对较低的编码和解码复杂度以及灵活的编码延迟配置。
我们设计了一种基于重参数化的新型方案(ModMixer),用于充分预训练和过拟合轻量级骨干网络,使其具有更强的建模能力和更多样化的优化方向,且无需额外的推理成本。
我们进一步引入了几项改进,包括分层质量参数、基于调制的非对称上下文分组分层熵模型以及尺度感知分层位置编码,以增强压缩性能。
本文提出的 PNVC 模型在低延迟和随机访问配置(如许多视频编码标准中所定义)下均展现出极具竞争力的率失真性能,同时避免了现有基于隐式神经表示(INR)的视频编解码器所面临的延迟和编码复杂度问题。具体而言,在 UVG 和 MCL-JCV 数据集上,本文提出的模型在 PSNR 和 MS-SSIM 指标下,其 BD-rate 性能均显著优于 VTM 20.0 (LD) 和 HiNeRV。与现有的基于 INR 的视频编码器相比,该模型还具有更低的编码延迟(系统延迟),并且比基于自编码器的神经视频编码模型具有更快的解码速度。
现有工作不足
视频压缩
最近基于学习的视频压缩方法,尽管编码性能具有竞争力,但高计算复杂度(尤其是在解码器端)限制了其实际应用,而结构化剪枝方法只能在性能显著下降的情况下实现有限的复杂度降低。
隐式神经表示
INR 学习基于坐标的映射函数,并将数据编码到网络参数中。现有的隐式神经视频表示(NeRV)模型可以分为两类:i)基于索引的方法,以帧、图像块或解耦的空间/网格坐标作为输入;ii)基于内容的方法,以特定于内容的嵌入作为输入。在这些情况下,视频编码任务被重新表述为模型压缩问题,利用剪枝、量化和熵约束优化等技术。然而,在整个视频序列或数据集上训练 NeRV 模型会导致较高的系统延迟,使其不适用于需要快速响应的应用,并且导致与延迟受限的编解码器进行比较时缺乏意义。
方法
概述
在提出的 PNVC 框架中,每个视频序列被分割成长度为 N 的图像组(GOP),并独立编码。在每个 GOP 中,帧要么被编码为 I 帧,要么被编码为 P/B 帧,以利用视频中的空间和/或时间冗余。每个 I 帧由编码器 E 编码成 L 个潜在标记网格。对于每个级别,潜在标记由缩放和偏移参数组成,并沿通道方向连接。
本文采用熵模型来沿空间、通道和层次坐标轴以半自回归方式估计分层潜在变量的概率质量函数(PMF)。熵模型的参数在每个级别更新。比特流中包含分别对应于潜在变量和权重更新的逆量化参数。这些分量针对输入视频帧进行过拟合,然后进行熵编码,并组合成比特流。
在解码器端,熵模型由从比特流解码得到的预训练参数进行更新。该模型用于辅助对分层潜在网格进行熵解码,然后通过反量化生成潜在表示。这些反量化后的潜在表示基于 HiNeRV 中提出的改进的尺度感知分层分解方案进行位置嵌入,从而可以通过时空坐标查询特定于内容的变化。这里采用基于块的表示方法,其中最小的潜在表示的每个元素对应于原始帧的一个图像块。基于 INR 的解码器 D 将图像块级别的神经场定义为 3D 坐标的函数。它使用L个堆叠的 ModMixer 块进行渐进式条件映射,其中映射的输入是I帧的学习偏差以及 P/B 帧的参考图像块,输出是重建帧的图像块。每个块的中间激活值由相应的潜在网格进行调制。
每个 P 帧或 B 帧的编码流程与 I 帧类似,但额外增加了一个运动编码器 Em。利用解码帧缓冲区中最多两个先前重建的帧(它们可以是 I 帧或 P/B 帧)以及当前帧,多分辨率潜在网格由 E 生成,但每一层都以从 Em 提取的运动信息为条件。此外,熵模型还将解码的参考潜在标记以及来自更高层的重建潜在标记作为输入,以进一步利用时空和层次冗余。
编码器
本文采用 ELIC 模型作为图像编码器 E,将 I/P/B 帧映射到潜在表示。对于 P/B 帧,编码器 E 通过连接运动编码器 Em(改编自 SpyNet )提取的分层光流特征进行重新调整,以融入估计的运动信息。E 和 Em 都经过过拟合训练,以生成内容自适应的分层潜在表示。下一帧的过拟合训练以当前帧更新后的网络参数为初始值,以进一步加快编码过程。
量化
量化模块采用分层质量结构,其中根据每一帧与参考帧的距离和特定的视频动态特性,自适应地重新加权允许的比特率。该参数称为质量参数,由一个基于每个 token 对 GOP 级率失真权衡的估计影响的 ConvLSTM 模块生成。该模块在预训练后固定,以防止逐帧过拟合过程破坏已获得的分层质量结构。对于量化,使用另一组更细粒度的通道级质量参数。对于反量化,检索相应的参数并将其编码到比特流中作为辅助信息。我们在两种情况下都避免使用除法,以避免数值不稳定。标量量化参数的更新遵循类似的过程。
熵编码
离散化的分层潜在变量基于算术编码进行熵编码。其中,概率质量函数(PMF)由高斯分布估计,每个元素的位置和尺度参数由熵网络基于该元素的空间、时间和分层上下文进行半自回归预测。我们使用基于四叉树的分解方法对潜在表示进行编码,但进行了两处修改。首先,我们将缩放和偏移参数的通道(它们并行进行熵编码)分别分成四个不均匀的组,大小比例为 1、1、2 和 4,即由于可用的上下文更多,每个解码步骤解码的符号数量增加了一倍。此外,我们将所有用于聚合信息的拼接操作替换为逐元素调制,我们经验发现这种方法在信息聚合方面效率更高,并且我们部署了一个新的 ModMixer 模块来构建和优化熵模型。对于熵模型的更新,我们部署了一个完全分解的非参数密度模型 π。
ModMixer
为了在不增加额外推理成本的情况下提升模型性能,我们设计了一种新颖的 ModMixer 模块,并将其作为我们熵模型和解码器的基本构建块。这种方法受到重参数化方法的启发,利用线性架构之间的相互转换,以训练时间复杂度换取推理时间效率。不失一般性,我们将任意线性层(卷积层或全连接层)Wh + b 定义为从以下通用公式代数收缩而来:
详细公式见原论文公式 2
与标准重参数化方法相比,该公式建立了一种更通用的视觉调整方案,更适合实例自适应视频压缩的场景。由于仿射变换应用于权重和偏置项,因此它是一个包含权重和特征空间调整的超集,其中混合值可以根据需要灵活地重新转换为特征调制(如在解码器中)、权重更新(如在熵模型中)或任何其他形式的视觉调整。
在我们的方法中,为了利用上述重参数化思想并改进基于INR方法中常用的全连接层(FC),我们设计了一种新的基本构建模块——ModMixer。每个FC层通过串行和并行的方式进行重参数化,具体做法是使用堆叠的线性层,每个分支(每个通道组一个)具有不同的深度,以有效地捕获分层表示。此外,在FC层之前添加了一个自注意力机制风格的token混合器,以引入推理时的空间混合。在预训练阶段,token混合器会逐渐退化并被实例归一化和后续的FC层吸收。具体实现方式是初始化一个掩码 M 为1,并使其逐渐衰减到0:M ⊙ TokenMixer(h) + (1 − M) ⊙ h + h。
掩码衰减策略的灵感来源于 MSRA-EVC,这些方法利用表达能力更强的教师模型来指导较小的学生模型。在过拟合阶段,我们针对预训练的混合权重和基函数优化残差更新,然后将这些更新整合到熵模型的权重更新中,或将其融入解码器的分层潜在网格中。
解码器
解码器 D 对基于网格的位置编码进行操作,逐步恢复空间信息,同时将高频细节叠加到低频元素上。我们沿用了高性能 HiNeRV 提出的分层编码方法,该方法可以被概念化为以 2 的幂为基数的位值计数制。这种方法将每个坐标表示为一个有序的数字集合,每个数字对应一个层级,该层级递归地编码更粗粒度表示级别的残差。具体来说,这种分层坐标系将全局坐标 pos 分解为多个更精细的细节层级。在每个层级,用于插值的局部坐标计算如下:
详细公式见原论文公式 3
我们对原始策略进行了一项简单的改进,以应对推理时补丁尺寸相对于模型预训练时尺寸的增加。分辨率的显著提高(用 k 表示)可能会导致更多的微调工作。保持原始网格间距会导致整体网格数量增加,这可能会使分层模式的捕获变得复杂,并增加内存和计算需求。为了解决这个问题,我们建议根据比例(k)对基函数进行非线性混合和重新缩放。L 层的局部坐标重新计算如下:
详细公式见原论文公式 4
解决此约束条件可得到一组在对数尺度上均匀分布的参数,详见补充材料。上述公式的本质是将插值压力分配到不同的层级结构中。低频信号通常对分辨率变化不太敏感,因此可以承受更大的缩放而不会造成显著的信息损失(低分辨率下网格划分更稀疏)。另一方面,高频信号则需要更谨慎地保留,避免过度缩放。基于上述公式,解码器的第L层由下式给出:
详细公式见原论文
优化策略
完整模型首先基于静态训练数据进行离线预训练,然后在推理阶段进行过拟合,以适应待压缩的输入视频序列。考虑到预训练参数,即编码器和解码器之间共享的“元初始化”参数,相对于该元初始化的迭代优化参数更新与相关的辅助信息一起进行量化,然后进行熵编码生成比特流。我们遵循 DCVC-DC 的方法,对多个帧的损失进行聚合,以减少误差传播并建立分层质量结构。预训练过程涉及最小化每个 GoP(图像组)内的以下率失真损失:
详细公式见原论文公式 5
参照 C3 和 Cool-Chic Video,在计算 R 时,分层潜在变量的量化和权重更新通过逐步退火的软舍入并添加噪声进行近似;而在对它们进行舍入以优化失真度量时,则使用直通估计器(STE)。此处使用均方误差(MSE)作为失真度量,目标是获得最佳的峰值信噪比(PSNR)性能,同时使用 200 · ( 1 − MS-SSIM(xt, xˆt)) 作为失真度量对 MSE 模型进行微调,训练额外的模型,以获得基于 MS-SSIM 的基线。在逐帧过拟合过程中,编码过程包括寻找分层潜在变量、网络参数和量化参数的最佳值:
详细公式见原论文公式 6
详细的超参数配置信息可在补充材料中找到。
实验
训练集:Vimeo-90k
测试集:UVG,MCL-JCV
Baseline:
1.传统编码,HM-18.0,VTM-20.0;
2.深度编码,VCT,DCVC-HEM,DCVC-DC;
3.隐式编码,FFNeRV,HNeRV-Boost,C3,HiNeRV
测试条件:
1.LD:每个序列中只有一个帧内编码帧(即第一个帧),后续的 P 帧仅依赖于之前的帧进行运动预测(即 GOP=1),这与 JVET CTC 中定义的一致。
2.RA:每个 GOP 包含一个帧内编码帧和 31 个 B/P 帧,最大延迟为 31 帧(即 GOP 长度为 32),帧内编码周期为 32。这里的 RA 配置采用与 JVET CTC 规范中相同的分层 B 帧结构。
注:这些配置不适用于其他基于INR的基准测试,这些基准测试会对整个序列或数据集进行编码。
评价指标:PSNR,MS-SSIM,模型参数量,解码复杂度(MACs/pixel),FPS(Enc&Dec)
实验结果:详见原论文。
结论
我们提出了一种基于隐式神经表示(INR)的视频编码框架 PNVC,它 1)将基于自编码器的压缩方法与基于坐标的隐式过拟合相结合,2)集成了离线预训练和在线过拟合。PNVC 支持低延迟和随机访问编码模式,并以快速的解码速度实现了具有竞争力的速率-失真-复杂度性能。通过包括重参数化视觉调谐、分层质量参数、基于调制的非对称通道划分熵建模以及尺度自适应分层网格划分等创新技术,PNVC 的性能优于 VTM 20.0 (LD) 和 HiNeRV,在压缩效率方面与 DCVC-DC 相当,并保持了低于 20 万 MAC/pixel 的低解码复杂度以及高于 20 FPS @1080P 的解码速度。更重要的是,PNVC 支持灵活的延迟配置(低延迟和随机访问),这提高了基于 INR 的视频编解码器的实用性。未来的研究可以探索利用元学习方法来加速编码过程。
