一种基于图神经网络的VVC视频编码单元划分方法与流程
- 国知局
- 2024-08-02 14:25:41
本发明属于视频编码,具体涉及一种基于图神经网络的 vvc 视频编码单元划分方法。
背景技术:
1、h.266/vvc(versatile video coding)是一种高效的视频编码标准,其编码框架是指整体的结构和组织,包括各个编码单元(coding unit, cu)以及编码的各个步骤。以下是 h.266/vvc 编码框架的基本组成部分:(1) 编码单元层次结构: h.266/vvc 引入了一种灵活的编码单元层次结构,其中最大的编码单元被称为ctu(coding tree unit)。ctu 可以被划分为更小的块,包括 cu等。这种层次结构允许根据视频内容的特性进行不同粒度的划分。(2) 预测模式: h.266/vvc 采用了多种预测模式,用于在帧间进行运动估计和运动补偿。这些预测模式包括了不同类型的运动矢量预测和帧间差异预测,以提高编码效率和视频质量。(3) 变换和量化:在帧内编码中,h.266/vvc 使用了一种叫做“异形变换”的方法,用于将图像块从空间域转换为频域。这种变换能够更好地适应图像中的纹理和结构。然后,经过量化和熵编码,以减少编码后的数据量。(4) 熵编码:h.266/vvc 使用了一系列的熵编码技术,如上下文自适应二进制算术编码(cabac)等,将经过变换和量化后的数据映射为紧凑的二进制编码,以减少数据传输量。(5) 运动估计和补偿:帧间编码中的运动估计和补偿是 h.266/vvc 的重要组成部分。运动估计用于找到参考帧中与当前块最匹配的区域,以计算运动矢量,然后将运动矢量应用于参考帧以实现运动补偿。(6) 多帧编码:h.266/vvc 引入了多帧编码技术,允许参考多个帧来进行预测,以进一步提高编码效率和质量。
2、h.266/vvc 的帧间预测是视频编码中的关键步骤之一,它用于预测当前帧的像素值,以便在编码过程中减少数据的冗余性。帧间预测的基本思想是利用已知的参考帧来估计当前帧中像素的值,从而在编码时只需传输预测误差(残差),而不是原始像素值。h.266/vvc 输入的视频帧首先被分割成大的矩形区域,称为 ctus(coding tree units)。ctu 是vvc 中的顶级编码单元,类似于 h.264 中的宏块(macroblock)和 h.265 中的 ctu。每个ctu 可以进一步递归分割成更小的单元,这些单元可以是 cu,cu 的分割是自适应的,意味着 cu 可以根据图像内容的复杂性动态地被分割成更小的 cu。如图 1 所示,vvc 引入了比 h.265/hevc 更灵活的块划分结构,包括不划分(ns)、四叉树(qt)和多类型树(mtt)划分模式,其中多类型树划分包括:水平二叉树划分 (bth)、垂直二叉树划分 (btv)、水平三叉树划分 (tth)、垂直三叉树划分 (ttv)。
3、cu 可以递归地划分为更小的 cu,直到达到最小的允许块大小。这种递归划分意味着每一层的划分都可能产生新的划分决策需求,从而增加了计算的复杂度。因此需要降低帧间预测计算复杂度,但是,降低计算复杂度往往会导致编码性能的降低,即视频质量可能会下降。选择降低复杂度的方法需要在编码效率和计算速度之间进行权衡。
4、目前,降低帧间预测计算复杂度的方法主要是通过保持编码效率和视频质量的前提下,减少预测模式搜索和运动估计的计算开销。以下是部分方法及其不足之处:(1) 快速运动估计算法:使用快速运动估计算法,如分层搜索、全局运动估计等,以减少运动估计的复杂度。这些方法通过限制运动矢量搜索的范围或采用更高效的搜索策略来降低计算开销。不足之处:快速运动估计算法可能会牺牲一定的编码效率,因为它们通常通过限制运动矢量搜索范围或使用更简单的搜索策略来降低计算复杂度。这可能导致丢失一些细微的运动细节,从而降低视频质量。(2) 预测模式剪枝:在预测模式搜索时,采用启发式方法来剪枝无法成为最佳预测模式的候选,从而减少搜索的数量。例如,可以根据上下文信息或先前帧的预测模式来缩小搜索空间。不足之处:启发式方法可能无法完全捕获复杂的视频内容,并可能导致选择次优的预测模式。此外,剪枝过度可能会导致错过一些潜在的最佳预测模式,从而影响编码效率和视频质量。(3) 自适应预测模式选择:根据图像内容的特点,在编码过程中动态选择预测模式,避免不必要的搜索。例如,可以根据区块的纹理复杂度来选择预测模式。不足之处:虽然根据图像内容动态选择预测模式是一种潜在的有效方法,但是准确地确定何时以及如何进行这种选择可能很具有挑战性。过于简单的纹理复杂度度量可能无法捕获到影响预测模式选择的全部因素,从而导致次优的预测模式选择。
技术实现思路
1、本发明的目的是提出一种基于图神经网络的 vvc 视频编码单元划分方法,将 cu的划分问题建模为多分类问题。在图神经网络的输出特征基础上,使用分类器对 cu 进行分类,从而降低编码的复杂度。
2、本发明采取的技术方案是:
3、一种基于图神经网络的 vvc 视频编码单元划分方法,包括以下步骤:
4、s1:收集 vvc 编码的视频数据,包括原始视频帧和经过编码处理后的数据,然后提取编码单元(cu)的特征和标签信息,包括编码单元的尺寸、纹理、运动矢量、纹理信息、编码深度特征、以及采用的划分模式;
5、s2:每个 cu 表示为一个图节点。根据 cu 之间的空间关系或时间关系构建边(边信息即 cu 之间的关系,这些信息可以用来表示 cu 之间的连接强度和类型),其中,空间关系基于 cu 在帧中的位置建立,时间关系基于连续帧中 cu 的位置和运动向量建立;
6、设计基于图注意力神经网络 gnn,使用 gnn的设计允许每个节点通过关注邻居节点的不同重要性来加权聚合邻居信息,同时,使用嵌入层将 cu 的特征编码成向量形式,并对边的标签进行编码(这可以通过嵌入层或转换层实现,边标签表示为存在的依赖类型,例如空间依赖和时间依赖);
7、再通过图注意力网络设计一个能够同时利用节点和边信息的信息传递机制,注意力系数的计算公式为:
8、;
9、其中 xi 和 xj 是节点 i 和 j 的特征向量,|| 代表两个向量的连接操作,表示节点 i 的领域系统集合;a 是用于计算注意力系数的参数向量,使模型能够学习邻居节点特征的重要性;w 是所有节点共享的线性转换权重矩阵,用于转换特征向量;
10、设计自适应注意力层,在允许模型根据训练数据的特性和学习过程中的性能反馈来调整注意力机制的参数:
11、α = σ1(vtx)
12、wnew= αwold
13、其中,σ1 是 sigmoid 函数,确保 α 在 0 和 1 之间,v是可学习的权重向量,x是全局特征,wold 和 wnew 分别是调整前后的特征转换权重;新的节点表征是相邻节点表征的线性组合,其权重由注意力系数决定,节点特征更新如下:
14、;
15、其中 σ2 是非线性 relu 函数;
16、在 gnn 的最后一层添加一个分类器(通常是一个全连接层),表示将节点的特征向量映射到六种划分模式的概率;这些概率用一个 softmax 层来输出:
17、p(yi|x) = softmax;
18、其中,yi 是 cu 节点 i 的预测划分模式;x 是所有节点的特征矩阵;表示经过gnn 处理后的节点 i 的特征;w 是从 gnn 特征到分类标签的转换矩阵;b 是偏置项;
19、s3:训练与优化
20、使用交叉熵损失函数解决 cu 划分的六分类问题,然后使用 sgd 优化器进行训练;
21、使用交叉熵损失函数来优化分类任务,选择适合的优化器,设置适当的学习率和其他超参数。在训练集上多次迭代,每次迭代更新模型参数以减少损失函数的值。
22、s4:基于图神经网络的 cu 划分
23、将步骤s3中训练和优化好的模型集成到实际的 vvc 编码流程中,自动化选择最优的 cu 划分模式;
24、最后选择概率最高的划分模式作为最终决策: yˆi = argmaxk p(yik|x)
25、其中, k 是 cu 可能的划分模式类别;
26、s5:将训练好的模型部署到实际的 vvc 编码系统中,以自动预测和优化编码单元的划分模式。
27、进一步的,在步骤s3中,对于一个单一的样本,交叉熵损失表示为:
28、;
29、其中,c 是类别数目;c为对应的划分类别;yc 是目标类别的独热编码;pc 是模型预测样本中属于类别 c 的概率。
30、本发明的有益效果:
31、本发明提出的基于图神经网络的 vvc 视频编码单元划分方法,通过考虑 cu 之间复杂的空间和时间依赖关系,图神经网络可以学习到更多样化的划分模式应用策略,从而平衡好 vvc 编码效率和计算复杂度。
本文地址:https://www.jishuxx.com/zhuanli/20240801/242734.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。