基于NN的编码:Neural Network-based In-Loop Filter(Qualcomm)
JVET-T0079
本文提出了一种基于神经网络的环路内滤波器作为附加的环路内滤波器级,并将其放置在ALF滤波器之后。因此,将ALF的输出作为NN滤波器的输入。结果表明,RA下平均节约BD rate4.11%、13.83%和13.28%,AI下平均节约BD rate 3.63%、9.47%和9.98%。
网络结构
本文提出的NN滤波器如下图所示。它包含14层,包括12个隐藏层,每层96个通道。每个隐藏层由一个3x3卷积层和一个Leaky RELU组成。总共有大约100万个模型参数。
NN滤波的输入是一个128x128大小的亮度块和2个64x64的色度块。在滤波之前,使用JVET-M0159中提出的方法,对128x128的亮度块进行4次2x2的下采样操作,得到4个64x64的子块,每个子块和色度块尺寸相同。这4个亮度子块和2个色度块构成了一个6通道的CNN输入,如下图所示。
在滤波结束之后,数据尺寸仍为64x64x6。再将前4个通道组成亮度CTB,后两个通道分别形成两个色度CTB。
训练
训练中使用了DIV2K数据集。利用VTM-10.0对原始图像进行压缩(ALL INTRA配置),得到重建帧作为训练数据集。训练过程中使用的QP为20、25、30、35、40和45。在训练过程中,重建图像被分割成128x128的亮度和64x64个色度块。批大小设置为64。
每个模型训练400个epoch。网络培训过程的其他信息见表2。
Network Information in Training Stage |
||
Mandatory |
HW environment: |
CPU: Intel(R) Xeon(R) Gold 6138 CPU @ 2.00GHz, 754GB Memory GPU: NVIDIA Tesla V100-SXM2-32GB |
SW environment: |
Ubuntu 18.04.4 LTS CUDA Version:10.1, Driver Version: 418.87.00 |
|
Framework: |
TensorFlow 2.2.0 |
|
Epoch: |
400 |
|
Batch size: |
1.9K * 64 |
|
Training time: |
32h |
|
Training data information: |
DIV2K |
|
Configurations for generating compressed training data (if different to VTM CTC): |
QP values: 20, 25, 30, 35, 40, 45 |
|
Optional |
||
Patch size |
128x128 |
|
Learning rate: |
1e-3 |
|
Optimizer: |
Adam |
|
Loss function: |
L2 |
|
Preprocessing: |
Convert 128x128 YUV420 signal to 6 64x64 blocks. Normalize to 0~1 |
|
Other information: |
||
inter frame的模型细化
本文还测试了使用BVI-DVC数据集训练的额外的模型。为了创建训练集,编码器对每个训练序列的前17帧进行压缩,并使用第上述的训练模型作为附加的环路滤波器。对于时间级别id等于4或5(最高两个时间级别)的编码帧,随机选择10个CTU作为训练样本。以DIV2K数据集上训练的模型为起点,训练100个epoch。其他训练配置设置与上述相同。
集成在VTM10.0中
提出的神经网络滤波器作为ALF后的在环滤波器被并入VTM-10.0,并带有CTU(开/关)标志。
在编码器端,对一组候选模型执行RD选择,并在picture头中选择模型的索引。本贡献报告了三种不同的候选集构造方法的仿真结果:
- 基于两个最接近的QP模型的RD选择:RD选择过程应用于基于两个最接近当前输入QP的QP训练的两个DIV2K模型,并且在picture header中发送1位标志以指示哪个NN模型应用于当前图片。
- 基于所有模型的RD选择:在DIV2K数据集上训练的所有6个模型(QP=20,25,30,35,40,45)始终用作候选集。一个3位索引值在picture header中发出信号,以指示哪个NN模型应用于当前图片。
- 包含帧间细化模型的RD选择:除DIV2K模型外,每帧使用基于BVI-DVC数据集训练的附加模型作为附加候选。索引值在picture header中发出信号。
Scaling of NN filter residues
当所提出的神经网络滤波器应用重建图像时,针对slice header中的每一个颜色分量发出一个比例因子信号。NN滤波器的输出(残差)在被添加到输入样本之前,由缩放因子缩放。
JVET-U0104
本提案所提出的NN滤波器如下图所示。隐藏层由滤波器块组成,每个滤波器块由两个1x1卷积组成,其中一个leaky ReLU作为它们之间的激活层,然后是一个3x3卷积层,其中M的值设置为大于K的值。NN滤波过程的输入是一个128x128大小的亮度块和2个64x64色度块。在用作滤波过程的输入之前,将亮度样本下采样成四个64x64大小的块。归一化的QP Step也用作NN滤波器的输入。
在~138K模型参数下,RA配置下的BD率分别为3.85%、8.75%和8.11%,AI配置下Y、Cb和Cr的BD率分别为3.45%、6.54%和6.84%。
在~270K模型参数下,RA配置下的BD率分别为4.53%、12.38%和12.25%,AI配置下Y、Cb和Cr的BD率分别为4.02%、9.00%和9.77%。
在~510K模型参数下,RA节省xx%、xx%和xx%的BD率,AI配置下Y、Cb和Cr分别节省。节省4.50%、10.40%、11.23%的BD率,
该方法的滤波过程与U0094相同。该神经网络滤波器在DBF后作为环路滤波器并入VTM-10.0中,并带有CTU级别的开关标志。同时,还应用了神经网络滤波器残差的缩放。在U0094的子测试1中,训练了4个模型,以涵盖不同的QP范围和图片类型,模型选择在picture级别进行。
JVET-U0115
如下图所示,此提案中使用的网络结构与U0094的子测试1相同,共包含14个卷积层,包括N=12个隐藏层,每个层中有96个通道。每个隐藏层由一个3x3卷积层和一个leaky RELU组成。每个模型中大约有一百万个模型参数。
与U0094相比,NN滤波过程的输入大小从128x128增加到144x144,以包括当前CTU每侧的8个相邻样本。在输入网络之前,将144x144的l亮度块下采样成四个72x72大小的块。而输出大小保持不变(64x64x6),对应4个亮度块和2个色度块。
此外,由VVC的DBF模块生成的边界强度信息用作网络的附加输入channel。
Random access Main10 |
||||||
BD-rate Over VTM-10.0 |
||||||
Y-PSNR |
U-PSNR |
V-PSNR |
EncT |
DecT |
bit DIFF |
|
Class A1 |
-7.10% |
-8.89% |
-13.28% |
145% |
13252% |
0% |
Class A2 |
-7.46% |
-15.28% |
-13.78% |
140% |
11771% |
1% |
Class B |
-6.63% |
-14.69% |
-15.24% |
145% |
14161% |
0% |
Class C |
-6.88% |
-15.73% |
-16.80% |
130% |
12292% |
0% |
Class E |
||||||
Overall |
-6.95% |
-13.92% |
-14.97% |
140% |
12969% |
0% |
Class D |
-7.97% |
-17.08% |
-18.64% |
131% |
13743% |
1% |
Class F |
-3.48% |
-10.73% |
-10.16% |
170% |
16351% |
0% |
Class H |
-6.47% |
-9.98% |
-13.24% |
180% |
16645% |
0% |
All Intra Main10 |
||||||
BD-rate Over VTM-10.0 |
||||||
Y-PSNR |
U-PSNR |
V-PSNR |
EncT |
DecT |
bit DIFF |
|
Class A1 |
-5.78% |
-9.14% |
-12.10% |
154% |
9600% |
0% |
Class A2 |
-5.65% |
-12.03% |
-10.75% |
136% |
8291% |
0% |
Class B |
-5.58% |
-11.60% |
-13.58% |
125% |
7038% |
0% |
Class C |
-6.05% |
-13.31% |
-15.69% |
118% |
5970% |
0% |
Class E |
-7.95% |
-12.99% |
-14.39% |
133% |
8634% |
0% |
Overall |
-6.13% |
-11.87% |
-13.46% |
131% |
7507% |
0% |
Class D |
-6.27% |
-12.75% |
-16.56% |
117% |
6718% |
0% |
Class F |
-4.26% |
-10.40% |
-10.56% |
114% |
6859% |
0% |
Class H |
-6.32% |
-8.99% |
-10.41% |
138% |
7044% |
0% |
JVET-V0114
使用U0115提出的网络结构,如下图所示。NN滤波过程的输入大小为144x144的YUV420块,包括当前CTU(128x128)和当前CTU每侧的8个相邻样本。在用作滤波过程的输入之前,将luma样本下采样成四个72x72大小的块。输出张量对应于滤波后的CTU(64x64x6),包括4个亮度块和2个色度块。另外,QP和边界强度(BS)信息被用作网络的附加输入平面。像素值被归一化到[0,1]之间。
集成到VTM11.0中,对于每一帧,从4个候选模型中选择一个模型;支持slice/CTU级别的开/关;去块滤波模块用于生成边界强度信息,但不进行滤波。
JVET-V0115
本文测试的NN滤波器是JVET-U0104[1]和JVET-U0115[2]中提出的滤波器的组合,网络结构如图1所示。它包含14个filter blocks,包括12个用作隐藏层的filter blocks。每个filter blocks由两个1x1卷积层组成,它们之间有一个Leaky ReLU作为激活层,然后是一个3x3卷积层,其中M的值被设置为大于K的值。
NN滤波过程的输入大小为144x144,包括当前CTU和当前CTU每侧的8个相邻样本。在用作滤波过程的输入之前,将l亮度块下采样成四个72x72大小的块。输出张量对应于滤波后的CTU样本(64x64x6),包括4个亮度块和2个色度块。
另外,QP和边界强度(BS)信息被用作网络的附加输入平面。
当对重建图应用提出的NN滤波器时时,为图片header中的每个颜色分量发送缩放因子信号。输入样本和NN滤波样本(残差)之间的差异被添加到输入样本之前由缩放因子缩放。
JVET-W0131
网络结构如下图所示,总共包含13个filter blocks,其中11个filter blocks作为hidden layer。对于hidden layer中的filter blocks,其包含一个1x1卷积+leaky relu+1x1卷积+3x3卷积,其中M的值设置为大于K的值。
网络的输入为一个 CTU 和 CTU 每一侧的 8 个相邻像素。在输入滤波器之前,亮度块被下采样为四个 72x72 大小的块。 输出张量对应于滤波后的 CTU (64x64x6),包括 4 个亮度块和 2 个色度块,并且将Qp信息和边界强度信息作为额外的输入通道。像素值归一化为[0.0,1.0]
CNN滤波器放在SAO之前,同时禁用Deblock。
训练
集成到VTM
集成到VTM-11.0 + GOP-based MCTF;对于每张图片,从4个候选中选择一个模型;支持Slice/CTU水平开关;在picture header为每个颜色分量发信号通知缩放因子
本提案比较了不同M/K参数的影响
基于NN的编码:Neural Network-based In-Loop Filter(Qualcomm)相关推荐
- A recurrent neural network based microscopic car following model to predict traffic oscillation
A recurrent neural network based microscopic car following model to predict traffic oscillation 这又是一篇 ...
- Paper翻译:《A Novel Convolutional Neural Network Based Model for Recognition and Classification of App》
论文名称:<A Novel Convolutional Neural Network Based Model for Recognition and Classification of Appl ...
- 读论文《Recurrent neural network based language model 》
读论文<Recurrent neural network based language model > 标签(空格分隔): 论文 introduce 本文将循环神经网络RNN引入了神经网络 ...
- Item Tagging for Information Retrieval: A Tripartite Graph Neural Network based Approach 用于信息检索的项目标签
文章目录 摘要 简介 Tagging 方法 动机和总览 动机 总览 TagGNN-IT 节点表示 TagGNN-IT Propagation 损失 2.3 TagGNN-QI 2.3.1 边表示 2. ...
- Convolutional Neural Network based Multiple-Rate Compressive Sensing for Massive MIMO CSI Feedback:
Convolutional Neural Network based Multiple-Rate Compressive Sensing for Massive MIMO CSI Feedback: ...
- 【论文阅读】Siamese Neural Network Based Few-Shot Learning for Anomaly Detection in Industrial Cyber-Physi
文章目录 Abstract 1. Introduction 2. Related Work 2.1 Anomaly Detection techniques for CPS 2.2 Few-Shot ...
- t-s模糊神经网络matlab,基于T-S模型的模糊神经网络,Fuzzy Neural Network based on T-S mode,音标,读音,翻译,英文例句,英语词典...
补充资料:基于模糊神经网络的模具产品报价系统 一. 报价系统概论 产品报价是指被讯价方根据自身所处市场环境.生产.经营.管理现状等因素而针对讯价方所指定的产品及其特殊的功能需求所报出的价格.产品报价是 ...
- CompSNN: A Lightweight Spiking Neural Network Based on Spatiotemporally Compressive Spike Features
文献阅读 一种轻量级的时空脉冲神经网络,基于时空脉冲压缩特征 dio:https://doi.org/10.1016/j.neucom.2020.10.100 摘要: 降低计算复杂度,对于SNN分类问 ...
- END-TO-END NEURAL NETWORK BASED AUTOMATED SPEECH SCORING 翻译
端到端语音评分神经网络 Abstract Introduction Previous research Deep Learning Based Scoring Models CNN based sco ...
最新文章
- 迁移学习与图神经网络“合力”模型:用DoT-GNN克服组重识别难题
- appium 的 android sdk
- 使用cookie保存用户名状态
- linux e1000e 网卡驱动,在centos7上安装intel e1000e 网卡驱动
- crontab 每天凌晨12点定时器_双十一预售:李佳琦薇娅凌晨12:00点,观看次数双双破亿...
- Helm 安装 nginx-ingress 的方法
- C#调用C语言生成的DLL“未找到入口”
- 【数据结构】进击的二叉查找树
- 机器学习在测井和地震的应用
- Stimulsoft Reports.Web 2022.2.3 Crack
- 基于.net开发chrome核心浏览器【三】
- 手动安装高可用k8s集群(二进制)v1.23.4版本
- charles抓PC端的包
- VS2012中的R6002 - floating point support not loaded错误
- BH1621FVC-TR光环境传感器
- [原创] RT7 Lite win7旗舰版精简方案
- Nginx搭建RTMP推拉流服务器
- WNDR4300刷OpenWrt手记
- html5怎么调用cur指针,鼠标指针.cur.ani导出与制作
- 【论文翻译-3】Attention U-Net: Learning Where to Look for the Pancreas