文章目录
**Title :CNN-based driving of block partitioning for intra slices encoding **
来源:2019,Data Compression Conference(DCC,CCF-B)
概述
CNN
本文基于ResNet提出了支持多分区模式的CU块划分加速算法,设计CNN模型,输入为64×64的亮度(luma)和色度(chroma)帧内CU块,输出为480×1的块边界的划分概率向量;根据概率向量,提取可能的划分模式(QT,BT,ABT);考虑编码器的约束决定最终的划分模式。
方法
流程如下图所示
本文采用了65×65的samples patches,分别由原始的CTU块(64×64)以及 左边和上边临近块的边缘点组成。本文提出的模型可分为三个阶段:
1. CNN-based analysis
输入为65×65的patch,输出为相邻子块(8×8)的边界划分概率,如下图所示
注意,从这张图中可以看到,忽略左边和上边的参考子块的边界。
网络结构如下图所示,阉割了ResNet18中的BN层、池化层和两层全连接层,因此参数量也较ResNet18大大降低(从大约10M的参数量下降到225k);而且QP(Quantization Step,量化步长也作为参数之一被添加到全连接层)
损失函数
L = ∑ i ∥ V 1 − V i ∥ + λ ∑ k ∥ c k ∥ \mathcal{L}=\sum_{i}\left\|V_{1}-V_{i}\right\|+\lambda \sum_{k}\left\|c_{k}\right\| L=i∑∥V1−Vi∥+λk∑∥ck∥
其中,V_1是边界是否划分的概率向量的标签值(0,1),V_i是预测是概率向量, c k c_k ck是CNN的参数(正则化)。
2. Probable split selection
针对概率向量,可以得到不同分割模式对应的概率值(把每种分割模式对应的边的概率值相加),通过和预设的门限值比较,例如,当仅考虑QT时,如果所有相应的边界概率低于预定阈值,则不探索分割,或者如果至少一个垂直和一个水平半边界概率高于预定阈值,则探索四叉树分割。
3. Encoder constraints and speed-ups
考虑编码器的规则限制,比如某些划分模式并不合法,需要从中选择出概率最大且合法的划分模式。
第二步和第三步的划分过程如下图所示
实验
这里提出了一个速度控制参数,作者貌似认为很有意义,之后再更吧,今天太累了
和其他工作的BD-rate loss + time reduction 的trade off对比