1.一种基于参考块的VVC帧间快速编码方法,其特征在于,包括:
S1:获取当前编码单元信息,其中编码单元信息包括当前编码单元的深度以及模式信息;
S2:根据当前编码信息确定是否进行网络预测划分,若进行网络预测划分,则执行步骤S3,若不进行网络预测划分,则执行编码器原始的划分过程;
S3:构建划分概率网络模型,并对划分概率网络模型进行训练;
S4:将当前编码单元输入到训练后的划分概率网络模型中,得到当前编码单元的划分概率预测值;
S5:根据划分概率预测值选取预测模式,确定该预测模式是否为划分模式,若为划分模式则返回S4,若不为划分模式则执行S6;
S6:采用当前编码单元CU对待编码的视频进行MergeSkip模式编码,并计算MergeSkip模式编码的RDCost值;
S7:根据RDCost值确定是否采用Skip模式跳过编码预测,否则遍历所有默认候选预测模式。
2.根据权利要求1所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,对划分概率网络模型进行训练的过程包括:划分概率网络模型由分块卷积层、条件残差模块、子网络结构以及全连接层构成;训练划分概率网络模型的过程包括:步骤1:获取所有的编码单元,对CU的类型进行筛选,将筛选后的CU类型进行集合,得到训练数据集;
步骤2:对训练数据集中冗余的CU类型进行优化;
步骤3:将优化后的训练数据集输入到划分概率网络模型的分块卷积层中,学习原始数据、参考数据以及同位数据的不同特征;
步骤4:将学习的特征输入到条件残差模块中进行深层次特征提取;
步骤5:将提取的深层特征输入到子网络结构中,得到不同数据的划分结果;
步骤6:将划分结果输入到全连接层中,得到划分概率预测值;
步骤7:根据划分概率预测值计算模型的损失函数,不断调整模型的参数,当损失函数最小时,完成模型的训练。
3.根据权利要求2所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,对CU的类型进行筛选的过程包括:获取所有的CU类型,确定各个类型CU的宽W、高H以及宽高的比率τ;根据CU的宽W、高H以及宽高的比率τ设置筛选条件,根据筛选条件对CU的类型进行筛选;其中筛选条件包括CU的宽和高的任意一边大于16,且当有一边为16或32时另一边不能为128;或者min(W,H)=8且τ={4,8}的CU。
4.根据权利要求2所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,对数据集中冗余的CU类型进行优化包括:数据集中的CU类型包括不划分NS、四叉划分QT、水平二叉划分BH、垂直二叉划分BV、水平三叉划分TH和垂直三叉划分TV;将水平二叉划分BH和水平三叉划分TH进行融合,得到水平划分HS,将垂直二叉划分BV和垂直三叉划分TV进行融合,得到垂直划分VS;优化后的划分类型包括NS、QT、HS以及VS。
5.根据权利要求2所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,子网络结构对输入数据进行处理的过程包括:子网络结构的输入通道类型为(BATCH_SIZE,16,H,W),其中子网络结构由卷积层和全连接层组成,且每个子网络的第一层卷积网络层卷积核的大小与步长分别为(4*τ,4*τ)、(4*τ,4*τ),用于对输出的特征形状作规范化处理;对子网络进行训练过程中,通过增加额外的编码信息对网络进行训练;其中,额外的编码信息包括:量化参数QP、划分深度Depth、时域层Id和编码产生的RDCost;
对于min(W,H)=8的子网络,其由两个卷积层组成,第二个卷积层的卷积核大小与步长分别为(2,2)、(2,2);卷积层输出维度为(BATCH_SIZE,32,1,1),对输出数据进行扁平化处理,得到(BATCH_SIZE,32)维度的数据;
对于min(W,H)=16的子网络,其由三层卷积层组成,第二和第三层的卷积核大小与步长均为(2,2)、(2,2);卷积层输出维度为(BATCH_SIZE,64,1,1),对输出数据进行扁平化处理,得到(BATCH_SIZE,64)维度的数据;
对于min(W,H)=32的子网络,其由三层卷积层组成,min(W,H)=32的子网络在卷积第二和第三层的卷积核大小与步长分别为(4,4)、(4,4);该子网络卷积层输出的维度为(BATCH_SIZE,128,1,1);对输出数据进行扁平化处理,得到(BATCH_SIZE,128)维度的数据;
min(W,H)=64的子网络,其由三层卷积层组成,该子网络在卷积第二和第三层的卷积核大小与步长分别为(2,2)、(2,2),该子网络卷积层输出的维度为(BATCH_SIZE,32,2,2);
对输出数据进行扁平化处理,得到(BATCH_SIZE,128)维度的数据。
6.根据权利要求2所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,全连接层对划分结果进行处理的过程包括:划分结果为根据不同子网络得到的(BATCH_SIZE,
32)维度数据、(BATCH_SIZE,64)维度数据以及(BATCH_SIZE,128)维度数据;将得到的维度数据添加对应的编码信息,并作为全连接层的输入,得到当前CU类型的划分概率预测值。
7.根据权利要求2所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,划分概率网络模型在进行训练时的损失函数为:其中,pm表示该类型CU中划分模式m的比例;α表示一个可变的用于调整划分模式惩罚度的一个参数;m表示划分模式;M表示所有划分模式的集和,yn,m表示CU的真实划分标签;
表示CU的预测标签;N表示预测类别数量;n表示N个类别中的第n个类别。
8.根据权利要求1所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,根据划分概率预测值确定划分模式的过程包括:将划分概率预测值输入到softmax函数中,将各个类别预测的值转换成0到1之间的概率值,其中最大的概率值与设定的阈值区间[τ1,τ2]比较,当最大概率值小于阈值区间中的τ1时,采用编码器默认划分模式对CU进行划分,当最大概率值大于阈值区间中的τ2时,采用预测的编码模式对CU进行划分,否则采用优化模式对于CU进行划分。
9.根据权利要求8所述的一种基于参考块的VVC帧间快速编码方法,其特征在于,对CU进行划分的过程包括:采用编码器默认划分模式对CU进行划分包括:编码器默认对一个CU进行划分,其中最大划分数量为5个,包括四叉划分QT、垂直二叉划分BV、水平二叉划分BH、垂直三叉划分TV以及水平三叉划分TH;
采用预测的编码模式对CU进行划分包括:对划分模式栈进行清空;根据网络预测的划分模式对数据进行划分,其中网络预测的划分模式包括不划分NS、四叉划分QT、水平划分HS、垂直划分VS;
采用优化模式对于CU进行划分的过程包括:对划分模式栈进行清空,确定当前的划分模式,若当前划分模式为水平划分HS,则再次对划分后的CU进行水平二叉划分和水平三叉划分,若当前划分模式为垂直划分VS,则再次对划分后的CU进行垂直而二叉划分和垂直三叉划分,若当前划分模式均不为水平划分HS和垂直划分VS,则采用预测的编码模式对CU进行划分。