1.本技术涉及视频编解码领域,具体而言,涉及一种视频帧的编码模式筛选方法、装置及电子设备。
背景技术:
2.视频编解码技术的主要作用是在可用的计算资源内,追求尽可能高的视频重建质量和尽可能高的压缩比。例如先进视频编码(advanced video coding,avs)。
3.基于仿射affine的运动补偿技术是一种用于淡入、淡出、旋转、放缩等不规则运动的位移变换模型,解决了平移变换模型运动补偿不准确的问题。基于affine的运动补偿技术包含了affine merge模式(仿射合并模式)和仿射运动估计模式(affine motion estimation),二者包含在帧间模式选择的过程中,通常情况下,仿射运动估计和普通的运动估计一起计算率失真代价rdcost。仿射运动估计作为帧间预测的一项新的功能,增加了视频帧的编码器的时间复杂度以及需要较多的硬件资源。
4.目前在avs3(第三代先进视频编码)标准中,对于尺寸大于等于16*16的编码单元(coding unit,cu)在帧间模式决策过程中都需要进行仿射运动估计过程,而由于仿射运动估计过程相比较其余帧间模式而言,具有更高的计算复杂度,大大增加了编码时间,从而导致确定cu的帧间预测模式的效率较低。
技术实现要素:
5.本技术实施例提供了一种视频帧的编码模式筛选方法、装置及电子设备,以至少解决相关技术中的确定cu的帧间预测模式效率较低的技术问题。
6.根据本技术实施例的一个方面,提供了一种视频帧的编码模式筛选方法,包括:根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,上述仿射cu子集中的每个cu均为已编码单元;在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,上述第二率失真率代价集合为上述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合;在上述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,获取上述第二率失真率代价集合;其中,上述非仿射模式包括上述跳跃skip模式;在上述当前cu不存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价;将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。
7.根据本技术实施例的另一方面,还提供了一种视频帧的编码模式筛选装置,包括:第一判断单元,用于根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,上述仿射cu子集中的每个cu均为已编码单元;
第一确定单元,用于在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,上述第二率失真率代价集合为上述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合;第二判断单元,用于在上述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;第一获取单元,用于在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,获取上述第二率失真率代价集合;其中,上述非仿射模式包括上述跳跃skip模式;第二确定单元,用于在上述当前cu不存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价;第三确定单元,用于将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。
8.根据本技术实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述的视频帧的编码模式筛选方法。
9.根据本技术实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过上述计算机程序执行上述的视频帧的编码模式筛选方法。
10.在本技术实施例中,通过根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,以及判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;进一步来获取当前cu在仿射模式下的第一率失真代价和非仿射模式下的第二率失真率代价集合中,并将最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。由于简化了仿射运动估计的过程,因此,本方案不仅减少仿射运动估计在整个帧间模式决策过程所占用的编码时间,而且提高了确定cu的预测模式的效率,解决了相关技术中的确定cu的帧间预测模式效率较低的技术问题。
附图说明
11.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:图1是根据本发明实施例的一种可选的视频帧的编码模式筛选方法的应用环境的示意图;图2是根据本发明实施例的另一种可选的视频帧的编码模式筛选方法的应用环境的示意图;图3是根据本发明实施例的一种可选的视频帧的编码模式筛选方法的流程示意图;图4是根据本发明实施例的一种当前cu的相邻的空域cu示意图;图5是根据本发明实施例的另一种当前cu的时域cu示意图;图6是根据本发明实施例的另一种可选的视频帧的编码模式筛选方法的流程示意图;图7是根据本发明实施例的一种可选的视频帧的编码模式筛选装置的结构示意
图;图8是根据本技术实施例的一种可选的电子设备的结构示意图。
具体实施方式
12.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
13.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
14.根据本发明实施例的一个方面,提供了一种视频帧的编码模式筛选方法,作为一种可选的实施方式,上述视频帧的编码模式筛选上述方法可以但不限于应用于如图1所示的硬件环境中。该硬件环境中包括:与用户进行人机交互的终端设备102、网络104、服务器106。用户108与终端设备102之间可以进行人机交互,终端设备102中运行有视频帧的编码模式筛选应用客户端。上述终端设备102中包括人机交互屏幕1022,处理器1024及存储器1026。人机交互屏幕1022用于呈现视频帧处理的界面;处理器1024用于获取判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,和/或,判断上述当前cu是否存在父cu且上述父cu的最优模式为跳跃skip模式。存储器1026用于存储基于当前编码单元cu的编码数据。
15.此外,服务器106中包括数据库1062及处理引擎1064,数据库1062中用于存储当前编码单元cu的编码数据,及用于存储avs3的编码模式。处理引擎1064根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,上述仿射cu子集中的每个cu均为已编码单元;在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,上述第二率失真率代价集合为上述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合;在上述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,获取上述第二率失真率代价集合;其中,上述非仿射模式包括上述跳跃skip模式;在上述当前cu不存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价;将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。
16.作为另一种可选的实施方式,本技术上述视频帧的编码模式筛选上述方法可以应
用于图2中。如图2所示,用户202与用户设备204之间可以进行人机交互。用户设备204中包含有存储器206和处理器208。本实施例中用户设备204可以但不限于参考执行上述终端设备102所执行的操作,以获取当前cu的目标编码预测模式。
17.可选地,上述终端设备102和用户设备204可以但不限于为手机、平板电脑、笔记本电脑、pc机等终端,上述网络104可以包括但不限于无线网络或有线网络。其中,该无线网络包括:wifi及其他实现无线通信的网络。上述有线网络可以包括但不限于:广域网、城域网、局域网。上述服务器106可以包括但不限于任何可以进行计算的硬件设备。上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器。上述仅是一种示例,本实施例中对此不作任何限定。
18.可选地,在一个或多个实施例中,如图3所示,上述视频帧的编码模式筛选方法包括:s302,根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,上述仿射cu子集中的每个cu均为已编码单元。
19.在本发明实施例中,如图4与图5所示,按照avs3中的编码标准,当前帧图像cur_pic的参考帧图像col_pic;当前cu(cur)的1个同位时域t位于当前cu相邻的右下方,当前cu相邻的 6个空域cu{a,b,d,g,c,f}共7个相邻cu,构成相邻cu集合{a,b,d,g,c,f,t}。
20.codingstructure为avs3的编码器内的一种数据结构,根据codingstructure通过坐标操作可以获取一帧所有位置的cu信息。cu信息包括cu的编码信息。
21.判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,例如,当{a,b,d,g,c,f,t}中存在cu a和cu b编码模式为仿射模式,{a,b}为仿射cu子集。
22.在本发明实施例中,跳跃skip模式为avs3中的非仿射模式的帧间预设模式。
23.s304,在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,上述第二率失真率代价集合为上述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合。
24.在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,此时,可以初步通过仿射模式来预测当前cu的运动矢量信息,并根据运动矢量信息得到上述的第一率失真代价。
25.在本发明实施例中,这里需要说明的是,上述父cu的最优模式为各个帧间预测模式下的将率失真代价最小的预测模式,在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,可以初步判断出当前cu的最优模式不是仿射模式,然后依次获取当前cu在avs3标准的每个非仿射模式下的率失真代价,得到第二率失真率代价集合。
26.s306,在上述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式。
27.s308,在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,获取上述第二率失真率代价集合;其中,上述非仿射模式包括上述跳跃skip模式;s310,在上述当前cu不存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价;s312,将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测
模式作为上述当前cu的目标编码预测模式。
28.在本发明实施例中,通过将当前cu在仿射模式下对应的率失真代价,以及在非仿射模式下对应的率失真代价进行比较,将最小率失真代价对应的预测模式作为目标编码预测模式,这里的目标编码预测模式为最优的编码模式。
29.在本技术实施例中,通过根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,以及判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;进一步来获取当前cu在仿射模式下的第一率失真代价和非仿射模式下的第二率失真率代价集合中,并将最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。由于简化仿射运动估计的过程,因此,本方案不仅减少仿射运动估计在整个帧间模式决策过程所占用的编码时间,而且提高了确定cu的预测模式的效率,解决了相关技术中的确定cu的帧间预测模式效率较低的技术问题。
30.在一个或多个实施例中,上述步骤s302,上述仿射模式包括仿射合并affine merge模式,上述判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,包括:判断上述当前cu的相邻cu集合中是否存在编码模式为affine merge模式的仿射cu子集。
31.在本发明实施例中,如图4与图5所示,例如,当相邻cu集合{a,b,d,g,c,f,t}中存在cu a和cu b编码模式为affine merge仿射模式,{a,b}为affine merge仿射模式的仿射cu子集。
32.在一个或多个实施例中,上述步骤s302,上述仿射模式包括仿射跳跃affine skip模式,上述判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,包括:判断上述当前cu的相邻cu集合中是否存在编码模式为上述affine skip模式的仿射cu子集。
33.这里需要说明的是,按照avs3中的编码标准,在本发明实施例中,如图4与图5所示,例如,当{a,b,d,g,c,f,t}中存在cu a和cu b编码模式为affine skip仿射模式,{a,b}为affine skip仿射模式的仿射cu子集。
34.在一个或多个实施例中,上述步骤s304,上述在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,包括:在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,判断上述相邻cu集合中每个cu与上述当前cu的运动矢量的角度差异;当存在与当前cu的角度差异大于预设阈值时,确定出上述当前cu在上述仿射模式下的第一率失真代价。
35.如图4与图5所示,例如,当相邻cu集合{a,b,d,g,c,f,t}中存在cu a与当前cu的角度差异大于预设阈值时,估算当前cu的运动矢量信息,并确定出上述当前cu在上述仿射模式下的第一率失真代价。这里,预设阈值包括但不限于30度。
36.在一个或多个实施例中,上述非仿射模式还包括整像素预测模式,分像素预测模式,跳跃skip模式;上述步骤s304中,上述获取第二率失真率代价集合,包括:分别获取上述当前cu在整像素预测模式,分像素预测模式,跳跃skip模式和直接direct模式下的率失真代价,得到第二率失真率代价集合。
37.在本发明实施例中,得到第一率失真代价和第二率失真率代价集合后,将最小率
失真代价对应的预测模式作为最优预测模式。
38.在一个或多个实施例中,在确定上述当前cu在上述仿射模式下的第一率失真代价之前,还包括:通过以下公式预测上述当前cu的运动矢量信息:其中,为当前cu的控制点在水平方向上的运动矢量,为当前cu的控制点在竖直方向上的运动矢量,a,b,c,d,e,f为调整参数。
39.在本发明实施例中,通过已知控制点的运动矢量信息以及上述公式,可以到当前cu中所有子模块的运动矢量信息。
40.基于上述实施例,在一个或多个实施例中,如图6所示,上述视频帧的编码模式筛选方法包括如下步骤:步骤1:开始当前cu的运动估计;步骤2:在当前cu所在划分深度下,判断当前cu相邻已编码cu块中是否存在最优模式为仿射模式affine或仿射合并模式affine merge,或者仿射跳跃affine skip模式的cu。若存在,则步骤4;若不存在,则进行步骤3;步骤3:判断当前cu是否存在父cu且父cu最优模式为skip模式。若是,则跳过步骤5,进入步骤6;若否,则接着进行步骤5;步骤4:判断当前cu与相邻cu块的运动矢量mv角度差异是否超过阈值α。若是,则进行步骤5;若否,则接着进行步骤6;步骤5:通过cu的运动预测公式,,迭代进行3次以内的仿射运动估计过程;步骤6:进行avs3标准中非仿射帧间模式的预测;步骤7:根据率失真代价,选出最优模式;步骤8:结束当前cu运动估计。
41.在本发明实施例中,通过简化仿射运动估计的过程,减少了仿射运动估计过程的高计算复杂度的编码时间。
42.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
43.根据本技术实施例的另一个方面,还提供了一种用于实施上述视频帧的编码模式筛选方法的视频帧的编码模式筛选装置。如图7所示,该装置包括:第一判断单元702,用于根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,上述仿射cu子集中的每个cu均为已编码单元。
44.在本发明实施例中,如图4与图5所示,按照avs3标准,当前帧图像cur_pic的参考
帧图像col_pic;当前cu(cur)的1个同位时域t位于当前cu相邻的右下方,当前cu相邻的 6个空域cu{a,b,d,g,c,f}共7个相邻cu,构成相邻cu集合{a,b,d,g,c,f,t}。
45.codingstructure为avs3的编码器内的一种数据结构,根据codingstructure通过坐标操作可以获取一帧所有位置的cu信息。cu信息包括cu的编码信息。
46.判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,例如,当{a,b,d,g,c,f,t}中存在cu a和cu b编码模式为仿射模式,{a,b }为仿射cu子集。
47.在本发明实施例中,跳跃skip模式为avs3中的非仿射模式的帧间预设模式。
48.第一确定单元704,用于在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,上述第二率失真率代价集合为上述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合。
49.在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,此时,可以初步通过仿射模式来预测当前cu的运动矢量信息,并根据运动矢量信息得到上述的第一率失真代价。
50.在本发明实施例中,这里需要说明的是,上述父cu的最优模式为各个帧间预测模式下的将率失真代价最小的预测模式,在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,可以初步判断出当前cu的最优模式不是仿射模式,然后依次获取当前cu在avs3标准的每个非仿射模式下的率失真代价,得到第二率失真率代价集合。
51.第二判断单元706,用于在上述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式。
52.第一获取单元708,用于在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,获取上述第二率失真率代价集合;其中,上述非仿射模式包括上述跳跃skip模式。
53.第二确定单元710,用于在上述当前cu不存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价。
54.第三确定单元712,用于将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。
55.在本发明实施例中,通过将当前cu在仿射模式下对应的率失真代价,以及在非仿射模式下对应的率失真代价进行比较,将最小率失真代价对应的预测模式作为目标编码预测模式,这里的目标编码预测模式为最优的编码模式。
56.在本技术实施例中,通过根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,以及判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;进一步来获取当前cu在仿射模式下的第一率失真代价和非仿射模式下的第二率失真率代价集合中,并将最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。由于简化仿射运动估计的过程,因此,本方案不仅减少仿射运动估计在整个帧间模式决策过程所占用的编码时间,而且提高了确定cu的预测模式的效率,解决了相关技术中的确定cu的帧间预测模式效率较低的技术问题。
57.在一个或多个实施例中,上述仿射模式包括仿射合并affine merge模式,上述第一判断单元702,具体包括:
第一判断模块,用于判断上述当前cu的相邻cu集合中是否存在编码模式为affine merge模式的仿射cu子集。
58.在一个或多个实施例中,上述仿射模式包括仿射合并affine skip模式,上述第一判断单元702,还包括:第二判断模块,用于判断上述当前cu的相邻cu集合中是否存在编码模式为affine skip模式的仿射cu子集。
59.在一个或多个实施例中,上述第一确定单元704,具体包括:第三判断模块,用于在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,判断上述相邻cu集合中每个cu与上述当前cu的运动矢量的角度差异;第一确定模块,用于当存在与当前cu的角度差异大于预设阈值时,确定出上述当前cu在上述仿射模式下的第一率失真代价。
60.在一个或多个实施例中,上述非仿射模式还包括整像素预测模式,分像素预测模式,直接direct模式;上述第一获取单元708,具体包括:获取模块,用于分别获取上述当前cu在整像素预测模式,分像素预测模式,跳跃skip模式和直接direct模式下的率失真代价,得到第二率失真率代价集合。
61.在一个或多个实施例中,上述视频帧的编码模式筛选装置,还包括:预测单元,用于通过以下公式预测上述当前cu的运动矢量信息:其中,为当前cu的控制点在水平方向上的运动矢量,为当前cu的控制点在竖直方向上的运动矢量,a,b,c,d,e,f为调整参数。
62.根据本技术实施例的又一个方面,还提供了一种用于实施上述视频帧的编码模式筛选方法的电子设备,该电子设备可以是图1所示的终端设备或服务器。本实施例以该电子设备为服务器为例来说明。如图8所示,该电子设备包括存储器802和处理器804,该存储器802中存储有计算机程序,该处理器804被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
63.可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
64.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:s1,根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,上述仿射cu子集中的每个cu均为已编码单元;s2,在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,上述第二率失真率代价集合为上述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合;s3,在上述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;s4,在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,获
取上述第二率失真率代价集合;其中,上述非仿射模式包括上述跳跃skip模式;s5,在上述当前cu不存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价;s6,将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。
65.可选地,本领域普通技术人员可以理解,图8所示的结构仅为示意,电子装置电子设备也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图8其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图8中所示更多或者更少的组件(如网络接口等),或者具有与图8所示不同的配置。
66.其中,存储器802可用于存储软件程序以及模块,如本技术实施例中的视频帧的编码模式筛选方法和装置对应的程序指令/模块,处理器804通过运行存储在存储器802内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的视频帧的编码模式筛选方法。存储器802可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器802可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器802具体可以但不限于用于存储当前编码单元cu的参考空域cu等信息。作为一种示例,如图8所示,上述存储器802中可以但不限于包括上述视频帧的编码模式筛选装置中的第一判断单元702、第一确定单元704、第二判断单元706、第一获取单元708、第二确定单元710及第三确定单元712。此外,还可以包括但不限于上述视频帧的编码模式筛选装置中的其他模块单元,本示例中不再赘述。
67.可选地,上述的传输装置810用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置810包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置810为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
68.此外,上述电子设备还包括:显示器808,用于显示上述当前编码单元cu的参考空域cu信息;和连接总线810,用于连接上述电子设备中的各个模块部件。
69.在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(p2p,peer to peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
70.在一个或多个实施例中,本技术还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述视频帧的编码模式筛选方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
71.可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:s1,根据当前编码单元cu的编码数据,判断上述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,上述仿射cu子集中的每个cu均为已编码单元;s2,在上述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,上述第二率失真率代价集合为上述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合;s3,在上述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断上述当前cu是否存在父cu且上述父cu的最优模式为直接skip模式;s4,在上述当前cu存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,获取上述第二率失真率代价集合;其中,上述非仿射模式包括上述跳跃skip模式;s5,在上述当前cu不存在父cu且上述父cu的最优模式为跳跃skip模式的情况下,确定上述当前cu在上述仿射模式下的第一率失真代价;s6,将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为上述当前cu的目标编码预测模式。
72.可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
73.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。
74.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
75.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
76.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
77.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
78.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
技术特征:
1.一种视频帧的编码模式筛选方法,其特征在于,包括:根据当前编码单元cu的编码数据,判断所述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,所述仿射cu子集中的每个cu均为已编码单元;在所述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定所述当前cu在所述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,所述第二率失真率代价集合为所述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合;在所述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断所述当前cu是否存在父cu且所述父cu的最优模式为直接skip模式;在所述当前cu存在父cu且所述父cu的最优模式为跳跃skip模式的情况下,获取所述第二率失真率代价集合;其中,所述非仿射模式包括所述跳跃skip模式;在所述当前cu不存在父cu且所述父cu的最优模式为跳跃skip模式的情况下,确定所述当前cu在所述仿射模式下的第一率失真代价;将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为所述当前cu的目标编码预测模式。2.根据权利要求1所述的方法,其特征在于,所述仿射模式包括仿射合并affine merge模式,所述判断所述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,包括:判断所述当前cu的相邻cu集合中是否存在编码模式为affine merge模式的仿射cu子集。3.根据权利要求1所述的方法,其特征在于,所述仿射模式包括仿射跳跃affine skip模式,所述判断所述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,包括:判断所述当前cu的相邻cu集合中是否存在编码模式为所述affine skip模式的仿射cu子集。4.根据权利要求1所述的方法,其特征在于,所述在所述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定所述当前cu在所述仿射模式下的第一率失真代价,包括:在所述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,判断所述相邻cu集合中每个cu与所述当前cu的运动矢量的角度差异;当存在与当前cu的角度差异大于预设阈值时,确定出所述当前cu在所述仿射模式下的第一率失真代价。5.根据权利要求1至4中任一项中所述的方法,其特征在于,所述非仿射模式还包括整像素预测模式,分像素预测模式,直接direct模式;所述获取第二率失真率代价集合,包括:分别获取所述当前cu在整像素预测模式,分像素预测模式,跳跃skip模式和直接direct模式下的率失真代价,得到所述第二率失真率代价集合。6.根据权利要求1所述的方法,其特征在于,在确定所述当前cu在所述仿射模式下的第一率失真代价之前,还包括:通过以下公式预测所述当前cu的运动矢量信息:
其中,为当前cu的控制点在水平方向上的运动矢量,为当前cu的控制点在竖直方向上的运动矢量,a,b,c,d,e,f为调整参数。7.一种视频帧的编码模式筛选装置,其特征在于,包括:第一判断单元,用于根据当前编码单元cu的编码数据,判断所述当前cu的相邻cu集合中是否存在编码模式为仿射模式的仿射cu子集,所述仿射cu子集中的每个cu均为已编码单元;第一确定单元,用于在所述相邻cu集合中存在编码模式为仿射模式的仿射cu子集的情况下,确定所述当前cu在所述仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;其中,所述第二率失真率代价集合为所述当前cu在avs3标准的每个非仿射模式下的率失真代价的集合;第二判断单元,用于在所述相邻cu集合中不存在编码模式为仿射模式的仿射cu子集的情况下,判断所述当前cu是否存在父cu且所述父cu的最优模式为直接skip模式;第一获取单元,用于在所述当前cu存在父cu且所述父cu的最优模式为跳跃skip模式的情况下,获取所述第二率失真率代价集合;其中,所述非仿射模式包括所述跳跃skip模式;第二确定单元,用于在所述当前cu不存在父cu且所述父cu的最优模式为跳跃skip模式的情况下,确定所述当前cu在所述仿射模式下的第一率失真代价;第三确定单元,用于将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为所述当前cu的目标编码预测模式。8.根据权利要求7所述的装置,其特征在于,所述仿射模式包括仿射合并affine merge模式,所述第一判断单元,包括:第一判断模块,用于判断所述当前cu的相邻cu集合中是否存在编码模式为affine merge模式的仿射cu子集。9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行所述权利要求1至6任一项中所述的方法。10.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6中任一项所述的方法。
技术总结
本申请公开了一种视频帧的编码模式筛选方法、装置及电子设备。其中,该方法包括:根据当前编码单元CU的编码数据,判断当前CU的相邻CU集合中是否存在编码模式为仿射模式的仿射CU子集;确定当前CU在仿射模式下的第一率失真代价,以及获取第二率失真率代价集合;在相邻CU集合中不存在编码模式为仿射模式的仿射CU子集的情况下,在当前CU存在父CU且父CU的最优模式为跳跃SKIP模式的情况下,获取第二率失真率代价集合;将第一率失真代价和第二率失真率代价集合中最小率失真代价对应的预测模式作为当前CU的目标编码预测模式。本申请解决了相关技术中的确定CU的帧间预测模式效率较低的技术问题。技术问题。技术问题。
技术研发人员:张鹏 陈长鑫 向国庆 黄晓峰 严伟 范益波
受保护的技术使用者:浙江省北大信息技术高等研究院
技术研发日:2022.02.07
技术公布日:2022/3/8