VVC层级结构中基于神经网络的参考帧生成

Posted Dillon2015

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VVC层级结构中基于神经网络的参考帧生成相关的知识,希望对你有一定的参考价值。

​本文来自JVET-X0060 《NN-based Reference Frame Interpolation for VVC Hierarchical Coding Structure

提案针对VVC的层级结构提出了基于深度神经网络(DNN)的参考帧生产方法。在编码和解码过程中,参考列表中的两个重建帧作为网络输入,输出为新生成的帧。新生成的帧再经过一个滤波网络的处理,然后插入到参考列表最后的位置。该方法Y、U、V节省的码率分别为1.47%/4.19%/3.85%。

介绍

VVC中,重建帧存储在DPB(Decoded Picture Buffer)中,在帧间预测进行运动补偿过程中会从DPB中选择几帧构建参考图像列表(RPL,Reference Picture List)。参考帧的内容会极大的影响帧间预测性能,当参考帧压缩失真越小和当前帧内容越相似时,帧间预测效果越好。提案通过DNN合成更好的参考帧来提升帧间预测性能。

框架

提案算法的框架如Fig.1所示,

提案的算法是针对RA配置,在RA配置的层级结构中,当前帧的参考帧既可以来自前面也可以来自后面。为了给当前帧生成参考帧,网络选择两个离当前帧最近且等距离的参考帧作为输入。

网络生成新参考帧的过程如上式所示,在RA配置中,GOP size=32,  表示网络生成新帧的操作,  表示POC=p的帧,  表示   的重建帧。上式表示网络对于时域层为  的帧  生成新帧  的过程。需要主要的是,只有时域层为{6, 5, 4}的帧需要处理。

上述过程生成的帧和QP map作为一个滤波网络的输入,最终生成新的参考帧。新生成的参考帧同时插入L0和L1,且POC和当前帧相同,运动补偿过程无需修改,且码流中也不需要传输额外信息。

网络结构

Fig.2是生成参考帧的网络结构,该网络基于2D Unet,将2D Unet中的2D卷积操作改为3D卷积操作形成的3D Unet。每个3D卷积是一个五维滤波器  ,其中t=2表示输入帧数,(h,w)表示kernel尺寸,  表示输入输出通道数。

Fig.3是滤波网络,由多个ResBlocks 构成,该网络的输入是前面生成的参考帧和QP map。

训练配置:

Network  Information in Training Stage

Mandatory

GPU Type

GPU: A100

Framework:

PyTorch v1.9

Number of GPUs per Task

1

Epoch:

300

Batch size:

16

Loss function:

L1

Training time:

7 Days for interpolation net, 4 days for filter  net

Training data information:

Vimeo

Training configurations for  generating compressed training data (if different to VTM CTC):

QP = 22, 27, 32, 37, 42

Optional

Number of iterations

Patch size

256x256

Learning rate:

1e-4

Optimizer:

ADAM

Preprocessing:

Mini-batch selection process:

Other information:

测试配置:

Network Information in Inference Stage

Mandatory

HW  environment:

GPU  Type

CPU only

Framework:

PyTorch  v1.9

Number  of GPUs per Task

0

Total  Parameter Number

-K for interpolation net, 2707K for  filter net

Parameter  Precision (Bits)

32

Memory  Parameter (MB)

481MB  for interpolation net, 10.2MB for filter net

Multiplay  Accumulate (MAC) /pixel

-K for interpolation net, 704K for Filter net

Optional

Total  Conv. Layers

Total  FC Layers

Total  Memory (MB)

Batch  size:

Patch  size

Changes  to network configuration or weights required to generate rate points

Peak  Memory Usage (Total)

Peak  Memory Usage (per Model)

Border  handling

Other  information:

实验结果

实验平台为VTM11,配置为RA。表3是同时使用插帧网络和滤波网络的结果,表4是不使用滤波网络的结果。

感兴趣的请关注微信公众号Video Coding

以上是关于VVC层级结构中基于神经网络的参考帧生成的主要内容,如果未能解决你的问题,请参考以下文章

端到端图像编码和VVC的结合

PCS2021:VVC基于神经网络改进SAO

ICIP2021:VVC RPR参考结构改进

基于神经网络的时域处理

基于神经网络的时域处理

基于层级表达提出高效的进化算法来进行神经网络结构搜索,通过层层堆叠来构建强大的卷积结构