首页 / 专利库 / 视听技术与设备 / 视频编码层 / 基于深度学习方法的块分割编码复杂度优化方法及装置

基于深度学习方法的分割编码复杂度优化方法及装置

阅读:2发布:2020-06-02

专利汇可以提供基于深度学习方法的分割编码复杂度优化方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 提供一种基于 深度学习 方法的 块 分割编码复杂度优化方法及装置,方法包括:在HEVC中,查看HEVC当前使用的 帧 编码模式;根据帧编码模式选取与所述帧编码模式对应的CU分割 预测模型 ;CU分割预测模型为预先建立并训练的模型;根据选取的CU分割预测模型预测HEVC中的CU分割结果,根据预测的CU分割结果对整个CTU进行分割。在具体应用中,帧编码模式为帧内模式,则CU分割预测模型为能够提前终止的ETH-CNN;帧编码模式为帧间模式,则CU分割预测模型为能够提前终止的ETH-LSTM和所述ETH-CNN。上述方法在保证CU分割预测 精度 的前提下,显著缩短了编码时决定CU分割所需时间,有效降低HEVC编码复杂度。,下面是基于深度学习方法的分割编码复杂度优化方法及装置专利的具体信息内容。

1.一种基于深度学习方法的分割编码复杂度优化方法,其特征在于,包括:
在高效率视频编码HEVC中,查看所述HEVC当前使用的编码模式;
根据所述帧编码模式选取与所述帧编码模式对应的编码单元CU分割预测模型;所述CU分割预测模型为预先建立并训练的模型;
根据选取的所述CU分割预测模型预测所述HEVC中的CU分割结果,根据预测的所述CU分割结果对整个编码树单元CTU进行分割。
2.根据权利要求1所述的方法,其特征在于,
所述帧编码模式为帧内模式,则所述CU分割预测模型为能够提前终止的分层卷积神经网络ETH-CNN;
所述帧编码模式为帧间模式,则所述CU分割预测模型为能够提前终止的ETH-LSTM和所述ETH-CNN。
3.根据权利要求2所述的方法,其特征在于,所述查看所述HEVC当前使用的帧编码模式的步骤之前,所述方法还包括:
构建所述ETH-CNN,训练所述ETH-CNN;
构建所述ETH-LSTM,训练所述ETH-LSTM。
4.根据权利要求3所述的方法,其特征在于,构建所述ETH-CNN,训练所述ETH-CNN的步骤,包括:
构建帧内模式下HEVC中用于预测CU分割结果的第一数据库
采用HEVC标准参考程序对所述第一数据库中的图像进行编码,获取所述第一数据库中的正样本和负样本;
采用所述正样本和所述负样本训练帧内模式对应的ETH-CNN。
5.根据权利要求4所述的方法,其特征在于,所述第一数据库中的每一个图像的分辨率为4928×3264;
所述第一数据库包括:训练集、验证集和测试集;所述训练集、验证集和测试集中的每一个均包括四个子集;
四个子集中第一个子集中每一个图像的分辨率为4928×3264,第二个子集中每一个图像的分辨率为2880×1920,第三个子集中每一个图像的分辨率为1536×1024,第四个子集中每一个图像的分辨率为768×512。
6.根据权利要求3所述的方法,其特征在于,构建所述ETH-CNN,训练所述ETH-CNN;构建所述ETH-LSTM,训练所述ETH-LSTM的步骤,包括:
构建帧间模式下HEVC中用于预测CU分割结果的第二数据库;
对第二数据库中的所有视频的分辨率进行预处理,使得每一个视频段分辨率在预设范围内,以及对视频长度进行预处理,使得每一个视频长度为预设长度以内;
采用HEVC标准参考程序对预处理后的所述第二数据库中的视频进行编码,获取所述第二数据库中的正样本和负样本;
采用所述正样本和所述负样本训练帧间模式对应的ETH-CNN和帧间模式对应的ETH-LSTM。
7.根据权利要求4所述的方法,其特征在于,
ETH-CNN的输入为一个64×64的矩阵,代表整个CTU的亮度信息,用U来表示;
ETH-CNN结构化输出为包含三个分支,分别代表三级HCPM的预测结果:

ETH-CNN的提前终止机制能够提前结束第二、三个支路上全连接层的计算;
和/或,ETH-CNN的具体结构包含两个预处理层,三个卷积层,一个归并层和三个全连接层。
8.根据权利要求7所述的方法,其特征在于,
所述预处理层用于对所述矩阵进行预处理操作;
从预处理层开始,输入信息在三条并列的分支 中进行处理与变换;
在每条分支Bl中,所述卷积层对所有预处理后的数据进行三层卷积操作,表示为和 在同一层中,所有三条分支的卷积核大小相同;
首先,在第1卷积层中,预处理后数据与16个4×4的核进行卷积,获得16种不同的特征图,以提取图像信息中的低级特征,为决定CU分割做准备;在第2、第3卷积层中,将上述特征图依次通过24个和32个2×2的核进行卷积,以提取较高级的特征,最终在每条Bl分支中均得到32种特征图;
所有卷积层中,卷积操作的步长等于核的边长;
归并层,将三条分支 中第2、第3卷积层的所有特征归并在一起,组合成向量;所述归并层的特征总共由6种来源的特征图组合而成,即 和
所述全连接层,将归并后的特征再次分为三条支路 进行处理,同样对应于HCPM中的三级输出;
在每条支路Bl中,特征向量依次通过三个全连接层:包括两个隐含层,以及一个输出层
两个隐藏层的输出依次为 和 最后一层的输出即为最终的HCPM;
每个全连接层中的特征数量与其所在的支路有关,并能保证三条支路B1,B2和B3分别输出1个,4个和16个特征,对应三级HCPM的预测值 和
在ETH-CNN的第一、第二全连接层中,将QP作为一个外部特征,添加到特征向量中,使ETH-CNN能够对QP与CU分割的关系进行建模。
9.根据权利要求2至8任一所述的方法,其特征在于,预测的所述CU分割结果采用分层CU分割图HCPM的结构化输出方式表示;
和/或,所述HCPM在在第1、2和3级分别包含1×1、2×2和4×4个二分类标签,对应真值y1(U), 和 以及预测值 和
所述CU分割结果包括:第1级分类标签;
和/或,
当U或者Ui被分割时,所述CU分割结果包括的第2级二分类标签或第3级二分类标签;
当U或者Ui没被分割时,所述CU分割结果包括的第2级分类标签或第3级分类标签中的空值null;
和/或,所述ETH-CNN模型训练的目标函数为交叉熵;
对于每个样本,其目标函数Lr为所有二分类标签的交叉熵之和:
其中,H(·,·)(l∈{1,2,3})代表HCPM中一个二分类器的预测值与真值标签间的交叉熵,r代表一批训练样本中的样本序号,Lr表示第r个样本的目标函数,y1(U), 和分别表示真值, 和 分别表示预测值。
10.根据权利要求6所述的方法,其特征在于,
将快速预编码后得到的残差CTU输入到所述ETH-CNN,以第二数据库中的CU分割标签作为真值,训练所述帧间模式的ETH-CNN;
将所述ETH-CNN第一个全连接层输出的三个向量,分别输入到所述ETH-LSTM的三个级别;
以及,以所述第二数据库中的CU分割标签作为真值,训练所述帧间模式的ETH-LSTM;
ETH-LSTM中每一级的LSTM单元和全连接层,由这一级的CU分别进行训练,即由64×64的CU训练ETH-LSTM第1级,由32×32的CU训练第2级,由16×16的CU训练第3级;
和/或,
训练ETH-LSTM的配置信息中的参数时,以交叉熵作为损失函数;
设训练时一批有R个样本,每个样本中LSTM的时间长度为T即T个LSTM单元,第r个样本第t帧的损失函数为Lr(t),则这一批样本的损失函数L定义为所有Lr(t)的平均值,即之后,利用动量随机梯度下降法进行训练;
最终,给定训练好的LSTM,由ETH-LSTM得到HCPM,以预测帧间模式CU分割结果。
11.一种基于深度学习方法的块分割编码复杂度优化装置,其特征在于,包括:
存储器、处理器、总线以及存储在存储器上并在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-10任意一项的方法。
12.一种计算机存储介质,其上存储有计算机程序,其特征在于:所述程序被处理器执行时实现如权利要求1-10任意一项的方法。

说明书全文

基于深度学习方法的分割编码复杂度优化方法及装置

技术领域

[0001] 本发明涉及视频编码技术领域,特别是一种基于深度学习方法的块分割编码复 杂度优化方法及装置。

背景技术

[0002] 与前一代H.264/高级视频编码(Advanced Video Coding,AVC)标准相比,高 效率视频编码(High Efficiency Video Coding,HEVC)标准能够在相同视频质量下, 节省大约50%的比特率。这得益于一些先进的视频编码技术,例如基于四叉树结构 的编码单元(coding unit,CU)分割结构。但是,这些技术也带来了相当高的复杂度。 现有技术HEVC的编码时间比H.264/AVC平均多出大约253%,这限制了该标准的 实际应用。因此,有必要在率失真(rate-distortion,RD)性能几乎不受影响的前提 下,显著降低HEVC编码的复杂度。
[0003] 在过去几年中,已经提出了多种降低HEVC编码复杂度的方法。据测量,基于 四叉树的递归的CU分割搜索过程,占据大部分编码时间(在标准参考软件HM中 用时超过80%),因此很多方法都通过简化CU分割来降低HEVC编码复杂度。这 类方法的基本思想是提前预测出CU分割,代替原编码器中递归的暴搜索来实现率 失真优化(RD optimization,RDO)。
[0004] 目前,降低HEVC编码复杂度的方法可以分成两大类:启发式方法与基于学习 的方法。
[0005] 早期的CU分割预测方法一般是启发式的,这些方法根据编码过程中的一些特 征,在进行递归搜索之前,提前决定CU分割。在启发式方法中,可以通过提取一些 中间特征,来简化暴力搜索。例如,在级别对CU分割进行判决的方法,该方法在 决定当前帧的CU深度时,跳过先前帧中较少出现的CU深度。在CU层面,业内人 士还提出基于金字塔型运动散度以及基于高频关键点数量的CU分割判决方法。另外, 业内人士利用一些关键并且易于计算的特征(比如RD代价,帧间模式预测误差)来 提前预测比较合理的CU分割,再基于最小化贝叶斯险准则来决定CU分割。同样 基于贝叶斯准则,还可以完全的和低复杂度的RD代价为特征,来判决CU分割。除 简化CU分割以外,业内人士还提出多种启发式方法,在预测单元(prediction unit,PU) 和变换单元(transform unit,TU)层面上降低编码复杂度。例如,现有提出一种快速 的PU尺寸判决方法,将较小的PU自适应地整合到较大的PU中。现有技术还根据 编码块标志(coding block flag,CBF)和已编码CU的RD代价,来预测最大概率的 PU分割。在最新的研究中,利用混合拉普拉斯分布对编码系数进行建模,并以此为 基础加速RDO量化过程。此外,现有技术中还在HEVC的其他层面上(例如帧内 或帧间预测模式选择,以及环路滤波)简化编码复杂度。
[0006] 近年来,基于学习的方法在降低HEVC复杂度方面成果显著。也就是说,2015 年以后,提出几种利用机器学习预测CU分割的方法,来降低HEVC编码复杂度。 例如,为降低HEVC帧间模式复杂度,现有还提出一种基于支持向量机(support vector machine,SVM)三级联合分类器的CU深度判决方法,以预测三种尺寸的CU是否 需要分割。这些方法通过大量数据在HEVC某些环节中学习到编码规律,来简化或 取代原编码过程中的暴力搜索。例如,对于帧内模式,现有技术中利用逻辑回归和 SVM,对CU分割进行二分类建模。如此,即可利用训练好的模型提前决定每个CU 是否分割,以避免费时、递归的暴力搜索。对于帧间模式,利用数据挖掘方法,提 出了三种提前终止机制,估计最优的CTU分割结果,以简化原编码器中的CTU分 割过程。业内人士研究了与CU分割相关的几个中间特征,并将这些特征结合,来确 定CU分割深度,跳过暴力RDO搜索,从而降低HEVC编码复杂度。后来,技术人 员提出一种将二分类和多分类相结合的SVM方法,提前预测CU分割及PU模式选 择,这可以进一步减少HEVC的编码时间。然而,上述基于学习的方法很大程度上 依靠手动提取特征。这需要较多的先验知识,并且可能忽略一些隐藏的但有价值的 特征。
[0007] 为解决上述手动提取特征,且能够降低HEVC帧内模式复杂度,业内人士设计 了一种基于卷积神经网络(convolutional neural network,CNN)的CU分割预测方法。 然而,现有技术中的CNN结构很浅,学习能力有限,因此不能对复杂的CU分割过 程进行准确的建模。

发明内容

[0008] 针对现有技术中的问题,本发明提供一种基于深度学习方法的块分割编码复杂 度优化方法及装置,能够在保证CU分割预测精度的前提下,显著缩短了编码时决定 CU分割所需时间,有效降低HEVC编码复杂度。
[0009] 第一方面,本发明提供一种基于深度学习方法的块分割编码复杂度优化方法, 包括:
[0010] 在高效率视频编码HEVC中,查看所述HEVC当前使用的帧编码模式;
[0011] 根据所述帧编码模式选取与所述帧编码模式对应的编码单元CU分割预测模型; 所述CU分割预测模型为预先建立并训练的模型,该模型具有提前终止能力;
[0012] 根据选取的所述CU分割预测模型预测所述HEVC中的CU分割结果,根据预测 的所述CU分割结果对整个编码树单元CTU进行分割。
[0013] 可选地,所述帧编码模式为帧内模式,则所述CU分割预测模型为能够提前终止 的分层卷积神经网络ETH-CNN;
[0014] 所述帧编码模式为帧间模式,则所述CU分割预测模型为能够提前终止的 ETH-LSTM和所述ETH-CNN。
[0015] 可选地,所述查看所述HEVC当前使用的帧编码模式的步骤之前,所述方法还 包括:
[0016] 构建所述ETH-CNN,训练所述ETH-CNN;
[0017] 构建所述ETH-LSTM,训练所述ETH-LSTM。
[0018] 可选地,构建所述ETH-CNN,训练所述ETH-CNN的步骤,包括:
[0019] 构建帧内模式下HEVC中用于预测CU分割结果的第一数据库
[0020] 采用HEVC标准参考程序对所述第一数据库中的图像进行编码,获取所述第一 数据库中的正样本和负样本;
[0021] 采用所述正样本和所述负样本训练帧内模式对应的ETH-CNN。
[0022] 可选地,所述第一数据库中的每一个图像的分辨率为4928×3264;
[0023] 所述第一数据库包括:训练集、验证集和测试集;所述训练集、验证集和测试 集中的每一个均包括四个子集;
[0024] 四个子集中第一个子集中每一个图像的分辨率为4928×3264,第二个子集中每一 个图像的分辨率为2880×1920,第三个子集中每一个图像的分辨率为1536×1024,第 四个子集中每一个图像的分辨率为768×512。
[0025] 可选地,构建所述ETH-CNN,训练所述ETH-CNN;构建所述ETH-LSTM,训 练所述ETH-LSTM的步骤,包括:
[0026] 构建帧间模式下HEVC中用于预测CU分割结果的第二数据库;
[0027] 对第二数据库中的所有视频的分辨率进行预处理,使得每一个视频段分辨率在 预设范围内,以及对视频长度进行预处理,使得每一个视频长度为预设长度以内;
[0028] 采用HEVC标准参考程序对预处理后的所述第二数据库中的视频进行编码,获 取所述第二数据库中的正样本和负样本;
[0029] 采用所述正样本和所述负样本训练帧间模式对应的ETH-CNN和帧间模式对应 的ETH-LSTM。
[0030] 可选地,所述第二数据库包括下述一种或多种分辨率的视频:
[0031] SIF(352×240),CIF(352×288),NTSC(720×486),4CIF(704×576),240p (416×240),480p(832×480),720p(1280×720),1080p(1920×1080),WQXGA (2560×1600)和4K(4096×2160);
[0032] 所述第二数据库包括:训练集、验证集和测试集。
[0033] 可选地,ETH-CNN的输入为一个64×64的矩阵,代表整个CTU的亮度信息, 用U来表示;
[0034] ETH-CNN结构化输出为包含三个分支,分别代表三级HCPM的预测结果:和
[0035] ETH-CNN的提前终止机制能够提前结束第二、三个支路上全连接层的计算;
[0036] 和/或,ETH-CNN的具体结构包含两个预处理层,三个卷积层,一个归并层和三 个全连接层。
[0037] 可选地,所述预处理层用于对所述矩阵进行预处理操作;
[0038] 从预处理层开始,输入信息在三条并列的分支 中进行处理与变换;
[0039] 在每条分支Bl中,所述卷积层对所有预处理后的数据进行三层卷积操作,表示为 和 在同一层中,所有三条分支的卷积核大小相同;
[0040] 首先,在第1卷积层中,预处理后数据与16个4×4的核进行卷积,获得16种 不同的特征图,以提取图像信息中的低级特征,为决定CU分割做准备;在第2、第 3卷积层中,将上述特征图依次通过24个和32个2×2的核进行卷积,以提取较高级 的特征,最终在每条Bl分支中均得到32种特征图;
[0041] 所有卷积层中,卷积操作的步长等于核的边长;
[0042] 归并层,将三条分支 中第2、第3卷积层的所有特征归并在一起,组合成 向量;所述归并层的特征总共由6种来源的特征图组合而成,即 和
[0043] 所述全连接层,将归并后的特征再次分为三条支路 进行处理,同样对应于 HCPM中的三级输出;
[0044] 在每条支路Bl中,特征向量依次通过三个全连接层:包括两个隐含层,以及一个 输出层;两个隐藏层的输出依次为 和 最后一层的输出即为最终的 HCPM;
[0045] 每个全连接层中的特征数量与其所在的支路有关,并能保证三条支路B1,B2和B3分别输出1个,4个和16个特征,对应三级HCPM的预测值 和 
[0046] 在ETH-CNN的第一、第二全连接层中,将QP作为一个外部特征,添加到特征 向量中,使ETH-CNN能够对QP与CU分割的关系进行建模。
[0047] 可选地,预测的所述CU分割结果采用分层CU分割图HCPM的结构化输出方 式表示;
[0048] 和/或,所述HCPM在在第1、2和3级分别包含1×1、2×2和4×4个二分类标 签,对应真值y1(U), 和 以及预测值 和 
[0049] 所述CU分割结果包括:第1级分类标签;
[0050] 和/或,
[0051] 当U或者Ui被分割时,所述CU分割结果包括的第2级二分类标签或第3级二 分类标签;
[0052] 当U或者Ui没被分割时,所述CU分割结果包括的第2级分类标签或第3级分 类标签中的空值null。
[0053] 即,无论何种CU分割情况,第2、3级二分类标签都存在,只是有时为空值null。
[0054] 可选地,所述ETH-CNN模型训练的目标函数为交叉熵;
[0055] 对于每个样本,其目标函数Lr为所有二分类标签的交叉熵之和:
[0056]
[0057] 其中,H(·,·)l∈{1,2,3})代表HCPM中一个二分类器的预测值与真值标签间的交叉 熵,r代表一批训练样本中的样本序号,Lr表示第r个样本的目标函数,y1(U), 和 分别表示真值, 和 分别表示 预测值。
[0058] 可选地,将快速预编码后得到的残差CTU输入到所述ETH-CNN,以第二数据 库中的CU分割标签作为真值,训练所述帧间模式的ETH-CNN;
[0059] 将所述ETH-CNN第一个全连接层输出的三个向量,分别输入到所述ETH-LSTM 的三个级别;
[0060] 以及,以所述第二数据库中的CU分割标签作为真值,训练所述帧间模式的 ETH-LSTM;
[0061] ETH-LSTM中每一级的LSTM单元和全连接层,由这一级的CU分别进行训练, 即由64×64的CU训练ETH-LSTM第1级,由32×32的CU训练第2级,由16×16 的CU训练第3级。
[0062] 训练下述表2对应的ETH-LSTM的配置信息中的参数时,以交叉熵作为损失函 数;
[0063] 设训练时一批有R个样本,每个样本中LSTM的时间长度为T即T个LSTM单 元,第r个样本第t帧的损失函数为Lr(t),则这一批样本的损失函数L定义为所有Lr(t) 的平均值,即[0064]
[0065] 之后,利用动量随机梯度下降法进行训练;
[0066] 最终,给定训练好的LSTM,由ETH-LSTM得到HCPM,以预测帧间模式CU 分割结果。
[0067] 第二方面,本发明实施例还提供一种基于深度学习方法的块分割编码复杂度优 化装置,包括:
[0068] 存储器、处理器、总线以及存储在存储器上并在处理器上运行的计算机程序, 所述处理器执行所述程序时实现如第一方面任意一项的方法。
[0069] 第二方面,一种计算机存储介质,其上存储有计算机程序,其特征在于:所述 程序被处理器执行时实现如第二方面任意一项的方法。
[0070] 本发明具有的有益效果:
[0071] (1)与现有技术中的三级CU分割标签相比,本发明利用HCPM的结构化输 出,高效表示CU分割过程。只需要将训练好的ETH-CNN/ETH-LSTM模型运行一 次,即可用一个HCPM的形式获得整个CTU中所有的CU分割结果,显著降低了深 度神经网络本身的运行时间,有利于降低总体的编码复杂度。
[0072] (2)本发明中的深度ETH-CNN结构,以自动提取与CU分割有关的特征,解 决了现有技术中手动提取特征的缺陷。此外,深度ETH-CNN结构比现有技术中的 CNN结构具有更多的可训练参数,显着提高了CU分割预测精度。
[0073] (3)本发明中还使用提前终止机制可以进一步节省计算时间。
[0074] (4)本发明中提出的深度ETH-LSTM模型,用于学习帧间模式不同帧之间CU 分割的长时和短时依赖关系。本发明中首次利用LSTM预测CU分割,以降低HEVC 编码复杂度。
[0075] (5)为了对本发明中ETH-CNN和ETH-LSTM的大量参数进行训练,预先对 帧内模式和帧间模式建立了CU分割数据库。相比现有技术中的其他方法只依赖于现 有的JCT-VC数据库,其规模远小于本发明的数据库。通过建立大规模CU分割数据 库,可以促进利用深度学习预测CU分割来降低HECV复杂度的后续研究。附图说明
[0076] 图1为现有技术中率失真代价检查与比较的示意图;
[0077] 图2为CU分割结构的示意图;
[0078] 图3为本发明一实施例提供的HCPM的示意图;
[0079] 图4为本发明一实施例提供的ETH-CNN结构的示意图;
[0080] 图5为本发明一实施例提供的ETH-LSTM结构的示意图;
[0081] 图6为本发明一实施例提供的基于深度学习方法的块分割编码复杂度优化方法 的流程示意图;
[0082] 图7为本发明一实施例提供的基于深度学习方法的块分割编码复杂度优化装置 的结构示意图;
[0083] 图8为本发明一实施例提供的使用ETH-LSTM的示意图。

具体实施方式

[0084] 为了解决现有技术中手动提取特征的缺陷,基于深度学习的方法应运而生。深 度学习不需要在编码过程中手动提取特征,而是从大规模的数据中,自动提取与编 码结果相关的多种特征。然而,利用深度学习降低编码复杂度的深入研究,现在还 很少。目前而言,现有技术中主要在帧内模式的CU分割预测中利用到较浅CNN结 构,该CNN结构只包含两个卷积层,各包含6个和16个3×3的卷积核。对于帧间 模式,还没有利用深度学习简化编码复杂度的工作即都没有探索不同距离的帧之间 的CU分割相关性。
[0085] 相比之下,本发明实施例提出了基于ETH-CNN和ETH-LSTM的深层网络结构 的CU分割预测模型,用于准确预测CU分割结果,降低HEVC帧内、帧间复杂度即 降低编码复杂度。
[0086] 具体地,本发明实施例的HCPM不同于传统方法分别决定单个CU是否分割, 而是通过分层次的结构化输出,一次预测整个CTU中的CU分割情况。在HCPM基 础上,通过引入提前终止机制来改进深度CNN结构,用于降低HEVC帧内模式的复 杂度。
[0087] 本发明的核心改进点可包括:1、构建一个适用于HEVC帧内和帧间模式的大 规模CU分割数据库,促进基于深度学习降低HECV复杂度的研究。2、提出一种深 度CNN网络,ETH-CNN,通过HCPM对CU分割进行结构化的输出,用于降低HEVC 帧内模式复杂度。3、提出一种深度LSTM网络,ETH-LSTM,将其与ETH-CNN结 合,学习CU分割的时间-空间相关性,用于降低HEVC帧间模式复杂度。
[0088] 本发明实施例提出一种基于深度学习方法的块分割编码复杂度优化方法,适用 于帧内、帧间两种模式,此方法可以从上述数据库学习整个编码树单元(coding tree unit,CTU)中的CU分割情况。即通过分层CU分割图(hierarchical CU partition map, HCPM)来高效表示整个CTU中的CU分割。给定足够多的训练数据以及高效的 HCPM表示方法之后,深度学习的网路结构可以更加“深入”,从而通过学习到足够的 参数来探寻多种多样的CU分割模式。
[0089] 另外,本发明实施例的深度学习方法引入了可以提前终止的CNN(early terminated hierarchical CNN,ETH-CNN),并用分层的思想生成结构化的HCPM。 这种提前终止可以节省CNN本身的计算时间,对降低帧内模式HEVC编码复杂度有 着促进作用。另外,本发明实施例还引入适用于帧间模式的可以提前终止的LSTM (early terminated hierarchical LSTM,ETH-LSTM)。在ETH-LSTM中,能够在LSTM 单元中学习到CU分割的时间相关性。将ETH-CNN中的特征作为输入后,ETH-LSTM 把学习到的LSTM单元与提前终止机制相结合,从而分层次地输出HCPM。如此, 上述方法能够有效地用于降低HEVC帧间模式的编码复杂度。
[0090] 实施例一
[0091] 如图6所示,本发明的基于深度学习方法的块分割编码复杂度优化方法可包括 下述的步骤:
[0092] 101、在HEVC中,查看所述HEVC当前使用的帧编码模式;
[0093] 102、根据所述帧编码模式选取与所述帧编码模式对应的CU分割预测模型;所 述CU分割预测模型为预先建立并训练的且具有提前终止机制的模型。
[0094] 103、根据选取的所述CU分割预测模型预测所述HEVC中的CU分割结果,根 据预测的所述CU分割结果对整个编码树单元CTU进行分割。
[0095] 具体地,在执行上述图6所示的方法之前,上述方法还可包括下述的图中未示 出的步骤600:
[0096] 构建所述ETH-CNN,训练所述ETH-CNN;构建所述ETH-LSTM,训练所述 ETH-LSTM。
[0097] 其中,所述帧编码模式为帧内模式,则所述CU分割预测模型为ETH-CNN;此 时,仅构建ETH-CNN,训练ETH-CNN即可。
[0098] 所述帧编码模式为帧间模式,则所述CU分割预测模型为的ETH-LSTM和 ETH-CNN,即构建ETH-CNN,训练ETH-CNN;构建ETH-LSTM,训练ETH-LSTM。 也就是说,设计出一种长-短期记忆结构来学习帧间模式CU分割的时域依赖关系, 之后将CNN与LSTM结合,来预测帧间模式CU分割。如此,可以显著降低帧间模 式的HEVC编码复杂度。
[0099] 进一步地,在具体实现过程中,对于帧内模式的CU分割预测模型的训练可包括 下述步骤:
[0100] S1、构建帧内模式下HEVC中用于预测CU分割结果的第一数据库;
[0101] S2、采用HEVC标准参考程序对所述第一数据库中的图像进行编码,获取所述 第一数据库中的正样本和负样本;
[0102] S3、采用所述正样本和所述负样本训练帧内模式对应的ETH-CNN。
[0103] 另外,对于帧间模式的CU分割预测模型的训练可包括下述步骤:
[0104] M1、构建帧间模式下HEVC中用于预测CU分割结果的第二数据库;
[0105] M2、对第二数据库中的所有视频的分辨率进行预处理,使得每一个视频段分辨 率在预设范围内,以及对视频长度进行预处理,使得每一个视频长度为预设长度(如 10s)以内;
[0106] M3、采用HEVC标准参考程序对预处理后的所述第二数据库中的视频进行编码, 获取所述第二数据库中的正样本和负样本;
[0107] M4、采用所述正样本和所述负样本训练帧间模式对应的ETH-CNN和帧间模式 对应的ETH-LSTM。
[0108] ETH-LSTM可有效降低HEVC帧间模式的复杂度。为了训练ETH-LSTM,本发 明实施例中建立了大规模的帧间模式CU分割数据库,数据库同时涵盖了帧内模式 (2000个无损图像,用4个量化参数(quantization parameter,QP)压缩)和帧间模 式(111个无损图像,用4个QP压缩),同时可以促进基于深度学习降低HEVC复 杂度方面的研究。
[0109] 为更好的理解本发明的内容,以下对本发明进行详细说明。
[0110] 第一、CU分割数据库
[0111] A、CU分割综述
[0112] 以CU分割为核心的CTU分割结构,是HEVC标准的主要构成之一。CTU的 默认尺寸为64×64像素,一个CTU既可以包含单个CU,也可以基于四叉树递归结 构分割成的若干个更小的CU,CU的默认最小尺寸为8×8。另外,在编码之前,可 对CTU或CU尺寸进行设定,即根据编码需求,人为设置最大和最小CTU或CU尺 寸。因此,CTU中的CU有多种可能的尺寸。
[0113] 在HEVC编码标准中,每个CTU中的CU尺寸,是由递归搜索确定的。标准 编码器中这一过程是一个暴力搜索过程,它包括自上向下的检查过程,以及自下而 上的比较过程。图1阐述了父CU与其四个子CU之间的RD代价检查与比较过程。 在检查过程中,编码器会检查整个CTU的RD代价,再检索其子CU的RD代价; 对每个子CU而言,若还存在可能的子CU,则再检查下一代每个子CU的RD代价…… 如此递归,直到检查完最小尺寸的CU。
[0114] 在图1中,父CU的RD代价表示为Rpa,子CU的RD代价表示为 其中 m∈{1,2,3,4}表示每个子CU的序号。然后通过比较父CU以及子CU的RD损失,确 定父CU是否需要分割。如图1-(b)所示,如果 则父CU需要分割, 反之,则不需要。值得注意的是,决定是否分割CU时,也需要考虑分割标志本身的 RD代价。进行完整的RDO搜索过程之后,即可得到RD代价最小的CU分割结果。 注意到,递归的RDO搜索极其耗时。对于一个64×64的CTU,需要检查85个可能 的CU,其中包括:一个64×64的CU,4个32×32的CU,42个16×16的CU和43个8×8 的CU。为了检索每个CU的RD损失,编码器要对CU进行预编码,在此过程中, 需要对可能的预测和变换模式进行编码。而且,为决定完整CTU的CU分割结果, 必须对所有85个可能的CU都进行预编码,这占据了大部分的编码时间。然而,最 终CU分割结果仅仅保留了1(CTU没有分割)到64(整个CTU被分成最小尺寸8×8 的CU)个CU,远少于全部的85个。所以,如果能够提前预测出合理的CU分割结 果,即可省略最多84个、最少21个CU的RD代价检查过程,实现降低编码复杂度 的目的。
[0115] B、帧内模式数据库
[0116] 下面介绍适用于HEVC帧内模式的大规模CU分割数据库(CU partition of HEVC– Intra,CPH-Intra)第一数据库。第一数据库是第一个用于HEVC中CU分割的数据库。 为建立此第一数据库,首先从无损图像数据集(Raw Images Dataset,RAISE)中选择2000 幅分辨率为4928×3264的图像。这2000幅图像随机分成训练集(1700幅),验证集(100 幅)以及测试集(200幅)。此外,每个集合被等分为4个子集:其中一个子集保持原分 辨率不变,另外三个子集分别将原图降采样到2880×1920、1536×1024和768×512。如此, CPH-Intra数据库即包含了多种分辨率的图像,确保CU分割训练数据的多样性。
[0117] 之后,使用HEVC标准参考软件如HM16.5对上述图像进行编码。这里使用4个不同 的QP{22,27,32,37}进行编码,对应标准编码器的All-Intra(AI)配置(文件 encoder_intra_main.cfg)。编码结束之后,即可获得所有CU的二分类标签,代表分割(=1) 或不分割(=0),每个CU的图像信息和标签的组合,即为一个样本。最终,CPH-Intra 数据库包括110,405,784个样本,所有样本根据其QP值和CU尺寸分为12个子数据库, 其中分割(49.2%)与不分割(50.8%)的CU个数比较接近,保证了正负样本相对平衡。
[0118] C、帧间模式数据库
[0119] 此外,建立帧间模式的CU分割数据库即第二数据库:CPH-Inter数据库。为建立该 第二数据库,首先选择111个无损视频,包括中的6个1080P(1920×1080)视频,视频 编码联合组(Joint Collaborative Team on Video Coding,JCT-VC)推荐的18个A-E类标 准测试视频,以及Xiph.org中的87个视频。如此,第二数据库包含了多种分辨率的视频: SIF(352×240),CIF(352×288),NTSC(720×486),4CIF(704×576),240p(416×240), 480p(832×480),720p(1280×720),1080p(1920×1080),WQXGA(2560×1600)和 4K(4096×2160)。另外注意到,由于HEVC编码的视频仅支持8×8倍数的分辨率,需要 对不符合此要求的视频进行调整,因此在第二数据库中,统一裁剪掉NTSC视频的底部 边缘,使分辨率变为720×480。
同时,若视频大于10秒,将其统一裁剪为10秒。
[0120] 在CPH-Inter数据库中,上述视频被分成互不重叠的训练集(83个),验证集(10个) 和测试集(18个)。测试集中的视频,来源于JCT-VC的18个标准序列。与CPH-Intra 数据库类似,CPH-Inter数据库同样利用HM16.5在4个QP{22,27,32,37}下进行编码。考 虑到帧间模式不同的编码需求,所有视频通过三种配置进行编码,包括:Low Delay P(LDP) 配置(标准文件encoder_lowdelay_P_main.cfg),Low Delay B(LDB)配置(标准文件 encoder_lowdelay_main.cfg)和Random Access(RA)配置(标准文件 encoder_randomaccess_main.cfg)的。如此,在每种配置下,根据不同QP与CU尺寸, 都可得到12个子数据库。CPH-Inter数据库在LDP配置下包含307,831,288个样本,在 LDB配置下包含275,163,224个样本,在RA配置下包含232,095,164个样本,保证了充 足的数据量用于深度学习。
[0121] 第二、HEVC帧内模式复杂度降低方法
[0122] A、分层CU分割图(hierarchical CU partition map,HCPM)
[0123] 根据HEVC的CU分割结构,默认CU可以取四种不同的尺寸:64×64,32×32, 16×16和8×8,分别对应CU深度:0,1,2和3。其中,非最小尺寸(大于等于16×16) 的CU既可以分割,也可以不分割。如图2所示,整个CU分割过程可视为3级二分 类标签 的组合,其中l∈{1,2,3代表分割的层级。具体而言,l=1表示第一级, 它决定是否将64×64的CU分割成四个32×32的CU,l=2是决定是否将32×32的 CU分割成16×16的CU,l=3则决定是否将16×16分割成8×8。
[0124] 对于一个给定的CTU,将深度为0的CU记为U。对U,第一级标签y1(U)代表 分割(=1)或不分割(=0)这个CU。若分割U,将深度为1的子CU记为 这 样,第二级标签表示是否对这些子CU进行分割(分割=1,不分割=0)。 对每个需要分割的Ui,其深度为2的子CU用 表示。同样,第三级标签  表示是否分割每个深度为
2的CU。对每个分割的Ui,j,其深度为3的子 CU为 下标i,j,k∈{1,2,3,4分别代表U,Ui和Ui,j中每个子CU的序号。上 述分层CU分割标签如图2中向下的箭头所示。由于存在众多种可能的组合,CTU 中总体的CU分割结果是非常复杂的。例如,对一个64×64的U,如果y1(U)=1,它 会被分割成4个32×32的CU,即 对每个Ui,考虑其4个可能的子CU,又存在1+24=17种分法。因此,对整个CTU而言,共存在1+174=83522种CU 分割方法。
[0125] 如上述第一章分割数据库中的A节所述,标准HEVC编码器是通过耗时的RDO 过程得到CU分割标签y1(U), 和 的。其实,这些标签可以通 过机器学习预测得到,以取代传统的RDO过程。然而,由于存在众多种可能的CU 分割情况(上述83,522种),这很难由一个简单的多级分类器进行一步预测得到。
[0126] 因此,预测CU分割标签应该逐层进行,也就是分别对每一层的CU分割标签 y1(U),和 进行预测,并将预测结果记为 和 
[0127] 现有技术中决定64×64、32×32和16×16的CU的二分类标签 和是分开预测的。欲决定整个CTU的CU分割结果,训练后的模型需要 被多次调
用,这就造成计算上的大量冗余。为了克服这个缺点,本实施例利用分层 CU分割图HCPM,用结构化的输出来高效表示CU分割结果。如此,只需将训练好 的模型调用一次,即可以预测整个CTU中的CU分割结果,大大减少了预测过程本 身的计算时间。
[0128] 图3是HCPM的一个例子,它将CU分割标签分层表示为结构化的输出。具体 而言,HCPM在第1、2和3级分别包含1×1、2×2和4×4个二分类标签,对应真值 y1(U),和 以及预测值 和 无 论何种CU分割情况,第1级分类标签一定都存在;但当U或者Ui没被分割时,相 应的子 或 不存
在,此时将HCPM中的 和 标 签设定为空(null),如图3中“-”所示。
[0129] B、与HCPM相适应的ETH-CNN结构
[0130] 考虑到本实施例方法的主要任务是由CTU的图像信息预测CU的分割结果,输 入信息以矩阵表示,具有显著的空间相关性,因此在本实施例中,利用CNN对HCPM 建模。
[0131] 根据CU分割原理,设计出的ETH-CNN结构如图4所示。
[0132] ETH-CNN的输入为一个64×64的矩阵,代表整个CTU的亮度信息,用U来表 示。ETH-CNN结构化输出为包含三个分支,分别代表三级HCPM的预测结果: 和与普通的CNN结构相比,ETH-CNN引入了提前终止机 制,它可以提前结束第
二、三个支路上全连接层的计算。ETH-CNN的具体结构包含 两个预处理层,三个卷积层,一个归并层和三个全连接层。
[0133] 各部分的具体配置与功能,阐述如下。
[0134] ●预处理层。首先对CTU原始亮度矩阵(64×64)进行去均值和降采样等预处 理操作。为了适应HCPM的三级输出,从预处理层开始,输入信息即在三条并列的 分支 中进行处理与变换。在三条分支的去均值操作 中,每个输入CTU 的亮度矩阵将减去图像某一范围内的平均亮度,以减小图像间的亮度差异。其中, 在B1分支中,亮度矩阵与CTU整体的平均亮度相减,对应于HCPM第一级的1个预 测结果 在B2分支中,64×64亮度矩阵可分为2×2个不重叠的32×32单元,各 个单元分别与其内部的平均亮度相减,恰好对应HCPM第二级的4个标签 类似,B3中则将64×64亮度矩阵划分为4×4个不重叠的16×16单元,再在各单元内 部进行去均值操作,对应HCPM第三级的4×4个标签之后,考虑到分 割深度较浅的CTU中的图像内容一般比较平滑,没有过多的
细节信息,因此在B1和 B2中,继续对去均值后的亮度矩阵进行降采样,如图中 所示,将矩阵尺寸转化 为16×16和32×32,可进一步降低后续的计算复杂度。并且,通过选择性的降采样, 能够保证B1~B3中后续的卷积层输出尺寸与HCPM第1~3级的输出标签数相一致, 使卷积层输出结果具有比较清晰、明确的意义。
[0135] ●卷积层。在每条分支Bl中,对所有预处理后的数据进行三层卷积操作,表示 为和 在同一层中,所有三条分支的卷积核大小相同。首 先,在第1卷积层中,预处理后数据与16个4×4的核进行卷积,获得16种不同的 特征图,以提取图像信息中的低级特征,为决定CU分割做准备。在第2、第3卷积 层中,将上述特征图依次通过
24个和32个2×2的核进行卷积,以提取较高级的特 征,最终在每条Bl分支中均得到32种特征图。所有卷积层中,卷积操作的步长等于 核的边长,恰好能实现无重叠的卷积运算,且大多数卷积核作用域为8×8,16×16, 32×32或64×64等(边长均为2的整数次幂),恰好对应HEVC中的互不重叠的CU 的位置和尺寸。
[0136] ●归并层。将三条分支 中第2、第3卷积层的所有特征归并在一起,组 合成向量。如图4所示,此层的特征总共由6种来源的特征图组合而成,即 和 以便获得多种全局与局部的特征。经过特征归并后,在后续的全连接层中, 即可利用完整CTU中的特征,预测HCPM中某一级CU的分割结果,而不仅仅局限 于某一条分支B1,B2或B3中的特征。
[0137] ●全连接层。将归并后的特征再次分为三条支路 进行处理,同样对应于HCPM中的三级输出。在每条支路Bl中,特征向量依次通过三个全连接层:包括两 个隐含层,以及一个输出层。两个隐藏层的输出依次为 和 最后一层 的输出即为最终的HCPM。每个全连接层中的特征数量与其所在的支路(即HCPM 的级别l)有关,并能保证三条支路B1,B2和B3分别输出1个,4个和16个特征,  恰好对应三级HCPM的预测值和 此外,需要考虑量 化参数QP对CU分割的影响。一般,随
着QP减小,更多的CU将被分割,反之当 QP增大时,则倾向于不分割。因此,在ETH-CNN的第一、第二全连接层中,将QP 作为一个外部特征,添加到特征向量中,使网络能够对QP与CU分割的关系进行建 模,在不同QP下准确预测分割结果,提高算法对不同编码质量和码率的适应性。另 外,通过ETH-CNN的提前终止机制,可以跳过第二、三级全连接层,以节省计算时 间。具体而言,如果第一级的U不分割,则不需要计算 所在的第二级;如 果第二级的{Ui}4i=1都不分割,则不需要计算 所在的第三级。
[0138] ●其他层。在CNN训练阶段,将第一、第二全连接层的特征分别以50%和20% 的概率随机丢弃(dropout),防止过拟合,从而提高网络的泛化能力。
[0139] 在训练和测试阶段,所有卷积层和第一、二个全连接层均用修正线性单元 (rectified linear units,ReLU)激活,在网络中引入适当的稀疏性以提高训练效率。 所有分支 的第三个全连接层,即输出层,采用S形(sigmoid)函数进行激活, 使输出值位于(0,1)内,与HCPM中的二分类标签相适应。
[0140] ETH-CNN的具体配置如表1所示。由表得,网络中共有1,287,189个可训练参 数。与现有技术的浅层CNN相比,ETH-CNN具有更高的网络容量,能够对CU分 割问题更有效地建模。得益于CPH-Intra数据库中超过1亿的训练样本,网络能够在 参数众多的条件下降低过拟合的风险。另外,用同一个网络预测HCPM中所有三级 的输出结果,也是该ETH-CNN的一个主要优势,它使得网络在预测y1(U), 和 时,能够共享卷积层和归并层中的特征。不同于传统的基于学习的方 法,需要依次预测64×64、32×32和16×16CU的分割情况,由于ETH-CNN以HCPM 作为输出,因此具有网络结构共享和参数共享等特点,能够在准确预测CU分割的前 提下,显著减少网络本身的计算量,进一步降低编码的总体复杂度。
[0141] 表1 ETH-CNN配置
[0142]
[0143]
[0144] C.ETH-CNN模型训练的目标函数
[0145] 确定深度CNN的结构之后,需要根据训练过程的真值和模型的输出值,寻求合适的 目标函数,使模型能够对HCPM进行有效的预测。由于总样本数众多,若全部输入到网 络中,会存在硬件资源不足、网络权值的更新速度过慢等问题,因此在训练CNN时,采 取分批训练的方式。设每次将R个样本输入到网络中,其对应的HCPM真值标签为 预测值标签为 由于网络输出值和对应的真值标签均已二值化, 范围在[0,1]之间,本实施例采用交叉熵作为目标函数。
[0146] 对于每个样本,其目标函数Lr为所有二分类标签的交叉熵之和:
[0147] (1)
[0148]
[0149] 其中,H(·,·)∈{1,2,3})代表HCPM中一个二分类器的预测值与真值标签间的交叉熵。考 虑到某些真值标签不存在,例如图2中的 只有有效的真值和预测值 ( 及 )才被计入到目标函数中。
[0150] 一批样本上的目标函数,即为所有样本目标函数的平均值:
[0151]
[0152] 考虑到CNN的训练是分批进行的,为保证各样本被选取的机会均等,每次应在大量 训练样本中随机选取一部分,作为网络输入,因此选用动量随机梯度下降法进行优化。
[0153] 第三、HEVC帧间模式复杂度降低方法
[0154] 基于研究分析,HEVC帧间模式中的CU分割在时间上存在一定的相关性。例如, 帧距离越近,CU分割结果越相似;帧距离增大,则相似程度减小。本发明在ETH-CNN 的基础上,进一步提出一种ETH-LSTM网络,来学习帧间CU分割的长、短时依赖关系。 ETH-LSTM的总体框架如图5所示。
[0155] 为了利用帧间模式中图像的空间相关性,该网络以残差CTU作为输入。此处的 残差,是通过对当前帧进行快速预编码获得的,这个过程与标准编码过程相似,唯 一区别是将CU和PU强制设为最大尺寸64×64,以节省时间。尽管额外的预编码过 程带来了时间冗余,但它只占标准编码时间的3%以内,不会显著影响本文算法的性 能。预编码结束后,将残差CTU输入给ETH-CNN。在帧间模式中,ETH-CNN中的 参数由CPH-Inter数据库中的残差CTU与CU分割的真值重新训练得到。接下来, 在每一帧中都将ETH-CNN中第7层(第1个全连接层)输出的特征 送入 ETH-LSTM,以备后续处理。
[0156] 在ETH-LSTM中,用于决定CU深度的三级LSTM如图5所示。具体而言, ETH-LSTM的第1、2、3级各有一个LSTM单元,对应三级HCPM中的 和 其
中, 表示第t帧的U(64×64,深度=0)是  否分割;类似地, 和
分别表示Ui(32×32,深度=1)和Ui,j (16×16,深度=2)是否分割。每一级
中,从LSTM单元中输出的特征向量,再依 次通过两个全连接层,并且,每个全连接层还包含了两种外部特征:QP值与当前帧 在GOP中的帧顺序。值得注意的是,帧顺序由独热(one-hot)向量的形式表示。对 于第t帧的第l级,将LSTM单元的输出特征和第一个全连接层的输出特征,分别记 为f′1-l(t)和f′2-l(t)。其后的第二个全连接层,输出的是CU分割的概率,即HCPM 中的二分类结果。与ETH-CNN类似,ETH-LSTM中同样引入提前终止机制。其中, 如果第一级LSTM预测出CU不分割,则HCPM中第二级的 将跳过两个 全连接层,提前终止。类似,若第二级LSTM预测出4个CU均为不分割,则HCPM 中的第三级的全连接层也会提前终止。如此,即可减少ETH-LSTM中冗余的计算时 间。最终,以HCPM的形式输出ETH-LSTM的结果,即第t帧中当前CTU的分割 结果。
[0157] 在决定每个CTU的HCPM结果时,ETH-LSTM可以利用到先前帧中相同位置 CTU的分割结果,这是通过用不同级别LSTM单元学习CU分割的长、短时相关性 来实现的。具体训练时,ETH-LSTM中每一级的LSTM单元由这一级的CU分别进 行训练,即由64×64的CU训练ETH-LSTM第1级,由32×32的CU训练第2级, 由16×16的CU训练第3级。
[0158] 接下来,以第l级第t帧的LSTM单元为例,介绍ETH-LSTM的学习机制。LSTM 网络包括三种:输入门il(t),输出门ol(t),遗忘门gl(t)。给定当前帧LSTM的输入 特征f1-l(t)(也即ETH-CNN第一个全连接层的特征)以及上一帧LSTM输出特征 f′1-l(t-1),则上述三个门可表示为:
[0159] il(t)=σ(Wi·[f1-l(t),′1-l(t-1)]+bi)   (3)
[0160] ol(t)=σ(Wo·[f1-l(t),′1-l(t-1)]+bo)   (4)
[0161] gl(t)=σ(Wf·[f1-l(t),′1-l(t-1)]+bf)   (5)
[0162] 其中σ(·)表示S形(sigmoid)函数。上述三个等式,Wi,Wo和Wf为三个门的 可训练参数,bi,bo和bf为相应的偏置。通过这三个门,LSTM单元利用如下策略更 新第t帧的状态:
[0163] cl(t)=il(t)tanh⊙(Wc⊙[f1-l(t),′1-l(t-1)]+bc)+gl(t)⊙l(t-1)   (6)[0164] 其中,⊙表示按元素相乘,上式中,Wc与bc是计算cl(t)所需的可训练参数与 偏置。
[0165] 最终,LSTM输出单元f′1-l(t)可以表示为:
[0166] f′1-l(t)=ol(t)⊙l(t)   (7)
[0167] 上两式中,状态向量cl(t)与输出向量f′1-l(t)的长度,均与输入向量f1-l(t)相同。
[0168] ETH-LSTM的配置如表2所示,其中包括所有的可训练参数。
[0169] 表2 ETH-LSTM配置
[0170]
[0171] 与训练ETH-CNN类似,训练上述表2的参数时,仍以交叉熵作为损失函数, 如等式(1)所示。设训练时一批有R个样本,每个样本中LSTM的时间长度为T(即 T个LSTM单元),第r个样本第t帧的损失函数为Lr(t),则这一批样本的损失函数L可 定义为所有Lr(t)的平均值,即
[0172]
[0173] 之后,利用动量随机梯度下降法进行训练。最终,给定训练好的LSTM,即可 由ETH-LSTM得到HCPM,以预测帧间模式CU分割结果。
[0174] 第四、HEVC中HM编码器改进的主要过程
[0175] 步骤P1、初始化当前帧。
[0176] 步骤P2、对当前帧所有的CTU:
[0177] (1)直接将CU和PU(predicting unit,预测单元)尺寸设为固定的64*64,对于帧的 边缘不足64*64的部分,也取最大可能的尺寸(固定最大尺寸后,可以避免对每个CU进 行递归的检查和比较,节省时间);
[0178] (2)对当前CTU编码。此过程中HM编码器会记录每个CTU的残差,如图8所示。
[0179] 步骤P3、提取当前帧所有CTU的残差。此处残差就是HEVC标准中提到的残差,是 对每一个PU进行预测之后得到的结果与原始图像之间的差。对不同PU,图像信息的来源 不一样,比如有可能用上一帧预测,也有可能用更早的某一帧预测,等等。所有CTU的 残差,最终组成一个残差帧,所以很难说当前帧残差是由哪帧和哪帧相减得到的,因为 每个PU的预测来源不同。
[0180] 步骤P4、对当前帧所有的CTU:
[0181] (1)若t为ETH-LSTM的起始时刻,将每个LSTM单元的状态向量初始化为0,否则 跳过此步骤;
[0182] (2)将CTU残差的亮度信息送入ETH-CNN中,得到第一个全连接层的输出向量f1-1 (t),f1-2(t)和f1-3(t);
[0183] (3)将f1-1(t),f1-2(t)和f1-3(t)输入到三级ETH-LSTM中,由每个LSTM单元读取各 自的输入向量和状态向量,获得更新后的状态向量和输出向量;
[0184] (4)将每个LSTM单元的输出向量通过两个全连接层,得到当前CTU在t时刻的最终 结果,即HCPM;
[0185] (5)用预测好的HCPM直接决定CU分割方案;
[0186] (6)用此CU分割方案对当前CTU编码。
[0187] 步骤P5、对当前帧进行后处理,如环路滤波等。
[0188] 基于上述的步骤P1至P4,本发明实施例中是用训练好的深度神经网络做预测,可以 用通用的深度学习框架来实现,如Tensorflow,caffe,pytouch等,只要能搭建出上述的 ETH-CNN和ETH-LSTM即可。例如,可以采用用Python语言调用Tensorflow实现的。
[0189] 第五、关于LSTM长度的说明
[0190] 只有帧间模式会用到ETH-LSTM,因为LSTM用于提取图像特征中的帧间依赖关系。
[0191] 帧间模式包括三种子模式,LDP(低延迟P)、LDB(低延迟B)和RA(随机访问)[0192] HEVC中,这三种子模式都有多种配置,关于测试算法性能,都是用每种子模式的标 准配置。
[0193] 1.标准LDP模式下,帧顺序为IPPPPPP……,即第一帧是I帧(纯帧内预测),之后 所有帧都是P帧(支持帧内预测,或单参考帧的帧间预测)。此方法中,I帧是用ETH- CNN预测,只有P帧输入到LSTM。在训练阶段,LSTM时间长度设为20,另外为了增加 训练样本数,相邻两个LSTM之间有10帧重叠。即,除I帧外的第1~20帧、第11~30帧、 第21~40帧等等,放入同一个LSTM中训练。在预测阶段,为了方便,LSTM长度设为所 有P帧的帧数,即所有P帧连续不断地放入同一个LSTM里,直到视频最后一帧。
[0194] 2.标准LDB模式下,帧顺序为IBBBBBB……,即第一帧是I帧,之后所有帧都是B帧 (支持帧内预测,或双参考帧的帧间预测)。与LDP相比,只是P帧换成B帧,其他都相 同。因此LSTM时间长度,也和LDP模式相同。
[0195] 3.标准RA则稍复杂,帧编码顺序不同于播放顺序。在本发明的LSTM中,信息按编 码顺序传递,即先编码的帧先输入到LSTM里。帧的编码顺序为I(BBB……BIBBBBBBB) (BBB……BIBBBBBBB)(BBB……BIBBBBBBB)……。即第一帧是I帧,之后每32 帧一组,每组中第25帧是I帧,其他帧都是B帧。因为有32帧的周期,无论训练或测试阶 段,LSTM长度都设成32,恰好一组对应一个LSTM,而且相邻两个LSTM之间无重叠。 为便于实现,测试时没有特别区分I帧和B帧,而是把每组的32帧都输入LSTM,用LSTM 每个时刻输出的HCPM,决定CU分割。
如此,每组的32帧即为一个整体,且其中没有断 点,信息可以连续传递。
[0196] 本实施例的LSTM长度的设置比较灵活,根据实际需求进行配置。
[0197] 实施例二
[0198] 另外,上述描述的本发明实施例的基于深度学习方法的块分割编码复杂度优化 方法可以由块分割编码复杂度优化装置来实现。如图7所示。
[0199] 基于深度学习方法的块分割编码复杂度优化装置可以包括处理器501以及存储 有计算机程序指令的存储器502。
[0200] 具体地,上述处理器501可以包括中央处理器(CPU),或者特定集成电路 (Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本发明实 施例的一个或多个集成电路。
[0201] 存储器502可以包括用于数据或指令的大容量存储器。举例来说而非限制,存 储器502可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、 磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多 个以上这些的组合。在合适的情况下,存储器502可包括可移除或不可移除(或固定) 的介质。在合适的情况下,存储器502可在数据处理装置的内部或外部。在特定实 施例中,存储器502是非易失性固态存储器。在特定实施例中,存储器502包括只 读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM (PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写 ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
[0202] 处理器501通过读取并执行存储器502中存储的计算机程序指令,以实现上述 实施例中的任意一种块分割编码复杂度优化方法。
[0203] 在一个示例中,基于深度学习方法的块分割编码复杂度优化装置还可包括通信 接口503和总线510。其中,如图7所示,处理器501、存储器502、通信接口503 通过总线510连接并完成相互间的通信。
[0204] 通信接口503,主要用于实现本发明实施例中各模块、装置、单元和/或设备之 间的通信。
[0205] 总线510包括硬件、软件或两者,将上述装置的部件彼此耦接在一起。举例来 说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架 构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总 线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总 线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA) 总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以 上这些的组合。在合适的情况下,总线510可包括一个或多个总线。尽管本发明实 施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
[0206] 另外,结合上述实施例中的基于深度学习方法的块分割编码复杂度优化方法, 本发明实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存 储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意 一种方法。
[0207] 需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。 为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出 了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具 体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添 加,或者改变步骤之间的顺序。
[0208] 以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的 组合。当以硬件方式实现时,其可以例如是电子电路专用集成电路(ASIC)、适 当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行 所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通 过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括 能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储 器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光 纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机 网络被下载。
[0209] 还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置 描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按 照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同 时执行。
[0210] 最后应说明的是:以上所述的各实施例仅用于说明本发明的技术方案,而非对 其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员 应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分 或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱 离本发明各实施例技术方案的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈