一种基于卷积神经网络的帧间图像模式决策方法转让专利

申请号 : CN202210407485.0

文献号 : CN114513660B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 蒋先涛张纪庄郭咏梅郭咏阳

申请人 : 宁波康达凯能医疗科技有限公司

摘要 :

本发明公开了一种基于卷积神经网络的帧间图像模式决策方法,涉及图像处理技术领域,包括步骤:获取目标帧间图像执行合并模式后下一编码深度的编码图像和残差图像;以连接后的编码图像和残差图像作为输入信息,通过多层树CNN中的卷积层提取输入信息中的底层特征;通过多层树形CNN中预设层级数的残差层进行基于底层特征的逐层卷积;通过多层树形CNN中的全连接层进行各层卷积输出的全连接并获得目标帧间图像当前编码深度和分区划分下编码块的分区划分模式;根据各编码深度下各编码块的分区划分模式对目标帧间图像进行编码。本发明利用合并模式低编码比特率需求和卷积神经网络特征学习的优点,保持率失真性能的同时减少编码时间。

权利要求 :

1.一种基于卷积神经网络的帧间图像模式决策方法,其特征在于,包括步骤:S1:获取目标帧间图像执行合并模式后下一编码深度的编码图像和残差图像;

S2:以连接后的编码图像和残差图像作为输入信息,通过多层树形CNN中的卷积层提取输入信息中的底层特征;

S3:通过多层树形CNN中预设层级数的残差层进行基于底层特征的逐层卷积,并获取各层的卷积输出;

S4:通过多层树形CNN中的全连接层进行各层卷积输出的全连接并获得目标帧间图像当前编码深度和分区划分下编码块的分区划分模式;

S5:判断当前编码深度是否到达最大深度,若是,根据各编码深度下各编码块的分区划分模式对目标帧间图像进行编码,若否,进入下一编码深度并返回S1步骤;

所述分区划分模式包括不划分模式、四叉树模式、水平二叉树模式、垂直二叉树模式、水平三叉树模式和垂直三叉树模式;

所述S4步骤之后还包括步骤:

S41:判断当前编码深度和分区划分下编码块的分区划分模式是否为不划分模式,若是,进入S42步骤,若否,进入S5步骤;

S42:终止该编码块后续编码深度的分区划分模式决策,并在所有编码块的分区划分模式决策后,根据各编码深度下各编码块的分区划分模式对目标帧间图像进行编码。

2.如权利要求1所述的一种基于卷积神经网络的帧间图像模式决策方法,其特征在于,所述S1步骤之前还包括步骤:S0:基于高级运动向量模式获取的各编码深度下的分区划分模式选取结果和对应的帧间图像训练多层树形CNN。

3.如权利要求2所述的一种基于卷积神经网络的帧间图像模式决策方法,其特征在于,所述S0步骤中,多层树形CNN基于加权分类交叉熵损失函数进行训练,加权分类交叉熵损失函数可以表示为如下公式:式中,loss为加权分类损失,L为多层树形CNN中残差层的总层数,为初始为1的常数,为第 层残差层的权重, 为多层树形CNN在第 层残差层时的交叉熵损失。

4.如权利要求1所述的一种基于卷积神经网络的帧间图像模式决策方法,其特征在于,所述S3步骤之后,还包括步骤:S31:将卷积输出与图像编号信息以及当前编码深度和分区划分下编码块的量化参数进行信息向量连接。

5.如权利要求1所述的一种基于卷积神经网络的帧间图像模式决策方法,其特征在于,所述多层树形CNN包括:卷积层,包括一个3×3的卷积核,用于提取输入信息中的底层特征;

过渡残差层,用于根据底层特征输出第一残差块;

首端残差层,用于通过底层特征与第一残差块之间的卷积输出第一卷积输出和第二残差块;

中间残差层,用于通过底层特征与第二残差块之间的卷积输出第二卷积输出和第三残差块;

末端残差层,用于通过底层特征与第三残差块之间的卷积输出第三卷积输出;

全连接层,用于将第一卷积输出、第二卷积输出、第三卷积输出全连接并输出分区划分模式决策;

其中,卷积层、过渡残差层、首端残差层、中间残差层、末端残差层依次连接。

6.如权利要求5所述的一种基于卷积神经网络的帧间图像模式决策方法,其特征在于,所述首端残差层、中间残差层、末端残差层与全连接层之间分别连接有一个信息向量连接层,所述信息向量连接层用于将卷积输出与对应的图像编号信息以及编码块的量化参数进行信息向量连接。

说明书 :

一种基于卷积神经网络的帧间图像模式决策方法

技术领域

[0001] 本发明涉及图像处理技术领域,具体涉及一种基于卷积神经网络的帧间图像模式决策方法。

背景技术

[0002] 随着多媒体技术的发展,出现了超高清(UHD)、虚拟现实(VR)、360度视频等新型视频格式。因此,对于支持更高分辨率和更高编码效率的新型视频编码标准的需求日益增长。通用视频编码(VVC)是由VCEG和MPEG联合视频开发团队(JVET)开发的。该协议于2020年7月最终确定。VVC作为最新的视频编码标准,采用了几种新的编码方案和工具,如最大尺寸为
128×128的编码树单元(CTU)、编码单元(CU)划分的四叉树加多类型树结构(QT+MTT)、仿射运动补偿预测等。在比特率降低方面,这些新技术比HEVC标准实现了大约50%的增益。然而,编码和解码的计算复杂度也相应急剧增加。
[0003] VVC编码器利用了图像之间存在的冗余。分块后,对每个编码块进行运动补偿。内部预测模式主要有两种编码方法:高级运动向量预测(AMVP)模式和合并模式。在AMVP模式下,将多个运动向量候选的最优值、运动向量差值、参考图数和单向/双向预测模式进行编码。在合并模式下,只对多个候选运动向量的最优值进行编码。AMVP模式具有参数自由确定和编码的优点,但编码参数所需的位数较高,且需要复杂的编码过程、运动估计。对于Merge模式,编码所需的比特数非常少,但预测值不准确。一些关于VVC编码标准下编码的研究已经完成,然而,很少有研究考虑到相互预测的特点,相关研究表明,基于CNN的方法适合于处理图像。因此,我们将问题定义为使用卷积神经网络(CNN)来决定编码树单元(CTU)的分裂模式,并提出了一种新的卷积神经网络的VVC帧间预测快速模式决策方法。

发明内容

[0004] 为减少由于采用高级运动向量预测模式带来的帧间编码高额编码计算复杂度,本发明提出了一种基于卷积神经网络的帧间图像模式决策方法,包括步骤:
[0005] S1:获取目标帧间图像执行合并模式后下一编码深度的编码图像和残差图像;
[0006] S2:以连接后的编码图像和残差图像作为输入信息,通过多层树形CNN中的卷积层提取输入信息中的底层特征;
[0007] S3:通过多层树形CNN中预设层级数的残差层进行基于底层特征的逐层卷积,并获取各层的卷积输出;
[0008] S4:通过多层树形CNN中的全连接层进行各层卷积输出的全连接并获得目标帧间图像当前编码深度和分区划分下编码块的分区划分模式;
[0009] S5:判断当前编码深度是否到达最大深度,若是,根据各编码深度下各编码块的分区划分模式对目标帧间图像进行编码,若否,进入下一编码深度并返回S1步骤。
[0010] 进一步地,所述S1步骤之前还包括步骤:
[0011] S0:基于高级运动向量模式获取的各编码深度下的分区划分模式选取结果和对应的帧间图像训练多层树形CNN。
[0012] 进一步地,所述S0步骤中,多层树形CNN基于加权分类交叉熵损失函数进行训练,加权分类交叉熵损失函数可以表示为如下公式:
[0013]
[0014] 式中,loss为加权分类损失,L为多层树形CNN中残差层的总层数,为初始为1的常数, 为第 层残差层的权重, 为多层树形CNN在第 层残差层时的交叉熵损失。
[0015] 进一步地,所述分区划分模式包括不划分模式、四叉树模式、水平二叉树模式、垂直二叉树模式、水平三叉树模式和垂直三叉树模式。
[0016] 进一步地,所述S4步骤之后还包括步骤:
[0017] S41:判断当前编码深度和分区划分下编码块的分区划分模式是否为不划分模式,若是,进入S42步骤,若否,进入S5步骤;
[0018] S42:终止该编码块后续编码深度的分区划分模式决策,并在所有编码块的分区划分模式决策后,根据各编码深度下各编码块的分区划分模式对目标帧间图像进行编码。
[0019] 进一步地,所述S3步骤之后,还包括步骤:
[0020] S31:将卷积输出与图像编号信息以及当前编码深度和分区划分下编码块的量化参数进行信息向量连接。
[0021] 进一步地,所述多层树形CNN包括:
[0022] 卷积层,包括一个3×3的卷积核,用于提取输入信息中的底层特征;
[0023] 过渡残差层,用于根据底层特征输出第一残差块;
[0024] 首端残差层,用于通过底层特征与第一残差块之间的卷积输出第一卷积输出和第二残差块;
[0025] 中间残差层,用于通过底层特征与第二残差块之间的卷积输出第二卷积输出和第三残差块;
[0026] 末端残差层,用于通过底层特征与第三残差块之间的卷积输出第三卷积输出;
[0027] 全连接层,用于将第一卷积输出、第二卷积输出、第三卷积输出全连接并输出分区划分模式决策;
[0028] 其中,卷积层、过渡残差层、首端残差层、中间残差层、末端残差层依次连接。
[0029] 进一步地,所述首端残差层、中间残差层、末端残差层与全连接层之间分别连接有一个信息向量连接层,所述信息向量连接层用于将卷积输出与对应的图像编号信息以及编码块的量化参数进行信息向量连接。
[0030] 与现有技术相比,本发明至少含有以下有益效果:
[0031] (1)本发明所述的一种基于卷积神经网络的帧间图像模式决策方法,将内部预测模式中的合并模式(Merge)与卷积神经网络(CNN)相结合,利用合并模式低编码比特率需求和卷积神经网络特征学习的优点,在保持率失真性能的同时实现编码所需时间的减少;
[0032] (2)将图像编号信息以及当前编码深度和分区划分下编码块的量化参数加入到多层树形CNN中,从而使得多层树形CNN能够更加符合实际编码过程中的参数特征,进而提高决策精确度;
[0033] (3)针对编码块分区问题,考虑到其区块的划分类似于树状分裂结构,通过设置不同于迭代的权值,进而通过多层树形CNN学习编码块分区时的分层分裂树特征;
[0034] (4)在多层树形CNN的训练过程中,在不同训练阶段,给对应层级设置更高的权重,从而使得训练后的多层树形CNN能够更有效的解决复杂的问题。

附图说明

[0035] 图1为一种基于卷积神经网络的帧间图像模式决策方法的方法步骤图;
[0036] 图2为一种多层树形CNN架构的架构示意图。

具体实施方式

[0037] 以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。
[0038] 实施例一
[0039] VVC继承了HEVC的四叉树划分,同时为了更好的适应超高清视频的编码,VVC允许的最大编码树单元尺寸为128×128。对于VVC帧间编码和QT+MTT分区问题,需要一种新的计算复杂度优化方法。利用QT+MTT分区结构,编码单元可以在四叉树(QT)、二叉树(BT)、三叉树(TT)之间进行分割。此外,水平(H)和垂直(V)方向分裂也可用于BT和TT。因此,编码单元共有6种拆分模式(也即是不划分模式Non‑split、四叉树模式QT、水平二叉树模式BT_H、垂直二叉树模式BT_V、水平三叉树模式TT_H和垂直三叉树模式TT_V,在本发明中分别以0至5的数字进行指代)。更具体地来说,编码树单元首先是由 QT结构进行分区的。然后,再通过QT或MTT结构进一步对各QT叶子节点中的编码单元进行分区。
[0040] 由于相较于HEVC的最大编码树单元允许大小,VVC对其进行了扩大并引入了四叉树分割,因此,为了更好的对帧间图像进行编码,VVC通常采用编码参数所需位数较高,且需要复杂编码过程、运动估计的高级运动向量预测(AMVP)模式进行帧间预测。这就导致了采用AMVP模式进行帧间预测的VVC需要耗费大量算力进行最优编码模式的计算,进而导致编码效率不如想象中的高。同时,考虑到编码单元的区块划分类似于树状分裂结构,如图1所示,本发明提出了一种基于卷积神经网络的帧间图像模式决策方法,包括步骤:
[0041] S1:获取目标帧间图像执行合并模式后下一编码深度的编码图像和残差图像;
[0042] S2:以连接后的编码图像和残差图像作为输入信息,通过多层树形CNN中的卷积层提取输入信息中的底层特征;
[0043] S3:通过多层树形CNN中预设层级数的残差层进行基于底层特征的逐层卷积,并获取各层的卷积输出;
[0044] S4:通过多层树形CNN中的全连接层进行各层卷积输出的全连接并获得目标帧间图像当前编码深度和分区划分下编码块的分区划分模式;
[0045] S5:判断当前编码深度是否到达最大深度,若是,根据各编码深度下各编码块的分区划分模式对目标帧间图像进行编码,若否,进入下一编码深度并返回S1步骤。
[0046] 其中,步骤中出现的多层树形CNN为本发明针对VVC编码标准中的QT+MTT结构进行设计的。如图2所示,该网络主要由一个卷积层和四个不同大小的残差层(ResBlock,包括依次连接的BN层、ReLU层和Conv层)组成,并分为三个层级。其中,卷积层(Conv3,32)、过渡残差层(ResBlock,32)、首端残差层(ResBlock,64)、中间残差层(ResBlock,128)、末端残差层(ResBlock,256)依次连接。首先,获取当前编码深度下对应帧间图像在执行合并模式后得到的较低预测精度的运动向量预测结果,包括下一编码深度的编码图像和残差图像。而后,将编码图像和残差图像连接(两者均需要利用,但要保证二者相互独立)作为多层树形CNN的输入信息。
[0047] 在多层树形CNN中,先通过卷积核大小为3×3的卷积层进行像素级底层特征的提取。而后通过过渡残差层进行基于底层特征的第一残差块的获取。接下来通过首端残差层、中间残差层和末端残差层,依次根据上一残差层输出的残差块(也即是第一残差块、第二残差块和第三残差块),将残差块中的图像残差信息与底层特征进行卷积,并输出相应残差块和该层级的卷积输出(也即是首端残差层的第一卷积输出、中间残差层的第二卷积输出和末端残差层的第三卷积输出)。最终通过一个全接连层(FC)将三个层级残差层的卷积输出进行全连接,并以此输出目标帧间图像当前编码深度和分区划分下编码块的分区划分模式。
[0048] 由于一次合并模式+多层树形CNN只能决策出一个编码深度下的运动向量选择和分区划分模式决策,因此,在未达到最大编码深度的情况下,需要重复上述操作进行各编码深度下的运动向量选择和分区划分模式决策。而当达到最大编码深度后,就可以根据各编码深度下各编码块的分区划分模式以及运动向量选择对目标帧间图像进行编码。
[0049] 需要注意的是,由于不划分模式的存在,代表当前编码深度的分区划分以达到最优划分效果,无需再进行分区划分,因此,在多层树形CNN运行过程中,S4步骤之后还包括步骤:
[0050] S41:判断当前编码深度和分区划分下编码块的分区划分模式是否为不划分模式,若是,进入S42步骤,若否,进入S5步骤;
[0051] S42:终止该编码块后续编码深度的分区划分模式决策,并在所有编码块的分区划分模式决策后,根据各编码深度下各编码块的分区划分模式对目标帧间图像进行编码。
[0052] 而为了使得多层树形CNN在区块划分决策过中参与计算的参数量能够与实际运行过程中的一致,提高训练的性能,因此在首端残差层、中间残差层、末端残差层与全连接层之间分别连接有一个信息向量连接层(info.vector),用于将卷积输出与对应的图像编号信息以及编码块的量化参数进行信息向量连接(如这些信息不可用,则将这些信息置零)。对应的,在S3步骤之后,还包括步骤:
[0053] S31:将卷积输出与图像编号信息以及当前编码深度和分区划分下编码块的量化参数进行信息向量连接。
[0054] 当然,仅仅依靠上文结构和功能描述下的多层树形CNN显然还是无法运用到实际帧间图像编码过程中的,在实际运行之前,必然需要经过训练的过程。因此,在多层树形CNN投入使用前,也即是S1步骤前,还包括步骤:
[0055] S0:基于高级运动向量模式获取的各编码深度下的分区划分模式选取结果和对应的帧间图像训练多层树形CNN。
[0056] 由于训练初期并没有通过本发明所述方法获得的分区划分模式选取结果,因此,在初始阶段,是依靠高级运动向量模式进行的训练数据获取。而当多层树形CNN训练完成并投入运行一段时间后,即可采用本发明所述方法获得的分区划分模式选取结果对多层树形CNN进行更新。
[0057] 其中,本发明在设计多层树形CNN的初期,训练采用的交叉损失函数为:
[0058]
[0059] 其中,s为输入信息的像素值, 和 分别表示输入样本s的情况下,类别的区块拆分模式的真实概率和预测概率,C是类别的总数目。进一步地,由于 可以表示为:
[0060]
[0061] 式中,j为类别的序号,为自然对数, 为类别的像素值。
[0062] 因此,为了使多层树形CNN能够更加适应与VVC编码标准下的编码单元的区块划分特点,本发明采用加权分类的交叉熵损失函数对多层树形CNN进行训练,具体地,公式可表达为:
[0063]
[0064] 式中,loss为加权分类损失,L为多层树形CNN中残差层的总层数,为初始为1的常数, 为第 层残差层的权重, 为多层树形CNN在第 层残差层时的交叉熵损失。补充说明, 是需要随着多层树形CNN的运用,在运行一段时间后,通过训练进行迭代的。而从该公式可以看出,在对多层树形CNN不同层级残差层进行训练时,在训练的早期阶段,能够对首端残差层的损失给予更多的权重,而随着学习的进步,更低层次的残差层(中间残差层、末端残差层)亦能获得更多的权重,从而使得该交叉熵损失函数训练下的多层树形CNN能够更有效的解决复杂情况下的问题。
[0065] 综上所述,本发明所述的一种基于卷积神经网络的帧间图像模式决策方法,将内部预测模式中的合并模式(Merge)与卷积神经网络(CNN)相结合,利用合并模式低编码比特率需求和卷积神经网络特征学习的优点,在保持率失真性能的同时实现编码所需时间的减少。
[0066] 将图像编号信息以及当前编码深度和分区划分下编码块的量化参数加入到多层树形CNN中,从而使得多层树形CNN能够更加符合实际编码过程中的参数特征,进而提高决策精确度。
[0067] 针对编码块分区问题,考虑到其区块的划分类似于树状分裂结构,通过设置不同于迭代的权值,进而通过多层树形CNN学习编码块分区时的分层分裂树特征。同时,在多层树形CNN的训练过程中,在不同训练阶段,给对应层级设置更高的权重,从而使得训练后的多层树形CNN能够更有效的解决复杂的问题。
[0068] 实施例二
[0069] 为了更好的对本发明所述方法的技术效果进行验证,本实施例通过一组具体实验数据进行说明。具体的,通过对比本发明提出的算法和VVC参考模型(VTM)编码器中的率失真和计算复杂性来验证算法的性能, 实验测试采用的是标准VVC视频序列。训练多层树形CNN时,使用Adam优化器,初始学习速率0.0008。为了评估本专利提出算法的性能,使用BDBR(Bjøntegaard Delta Bit Rate)来评估本专利提出算法的整体率失真特性,减少的编码计算复杂度使用平均节省编码时间(∆T)来衡量。
[0070]
[0071] 其中, 和 分别为在不同量化参数QP取值下,参考软件的编码时间与本专利提出的算法编码时间。实验结果见表1,从中可以看出,本发明所述方法能降低34%的编码时间,而编码效率仅仅损失1.1%,进而证实了本发明的有效性。
[0072] 表1:实验结果列表
[0073]
[0074] 需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
[0075] 另外,在本发明中如涉及“第一”、“第二”、“一”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0076] 在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0077] 另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。