帧内预测方法、视频编码方法、视频处理装置、存储介质与流程

文档序号:18524807发布日期:2019-08-24 10:08阅读:121来源:国知局
帧内预测方法、视频编码方法、视频处理装置、存储介质与流程

本发明涉及视频编码和解码技术领域,特别是涉及一种帧内预测方法、视频编码方法、视频处理装置、存储介质。



背景技术:

由于视频图像的数据量比较大,视频编码的主要作用是将视频像素数据(rgb,yuv等)压缩成为视频码流,从而降低视频的数据量,实现降低传输过程中的网络带宽和减少存储空间的目的。

视频编码系统主要分为视频采集、预测、变换量化和熵编码几大部分,其中预测分为帧内预测和帧间预测两部分,分别是为了去除视频图像在空间和时间上的冗余。

一般来说,相邻像素点的亮度和色度信号值比较接近,具有强相关性,如果直接用采样数来表示亮度和色度信息,数据中存在较多的空间冗余。如果先去除冗余数据再编码,表示每个像素点的平均比特数就会下降,从而减少空间冗余进行数据压缩。在视频编码解码技术领域如何减小数据冗余成为人们关注的焦点问题。



技术实现要素:

本申请主要解决的技术问题是提供一种帧内预测方法、视频编码方法、视频处理装置、存储介质,能够去除空间冗余,提升帧内编码的压缩率。

为解决上述技术问题,本申请实施例采用的一个技术方案是:提供一种帧内预测方法,该方法包括:判断编码单元的预测模式是否为宽角度模式;在判断到编码单元的预测模式为宽角度模式时,将编码单元分割为至少两个子编码单元;对至少两个子编码单元采用不同的预测模式进行帧内预测。

为解决上述技术问题,本申请实施例采用的另一个技术方案是:提供一种视频编码方法,该方法包括:获取待编码的编码单元;判断编码单元的预测模式是否为宽角度模式;在判断到编码单元的预测模式为宽角度模式时,将编码单元分割为至少两个子编码单元;将至少两个子编码单元的帧内预测模式确定为不同的预测模式。

为解决上述技术问题,本申请实施例采用的又一个技术方案是:提供一种视频处理装置,该视频处理装置包括处理器和与处理器电连接的存储器,存储器用于存储计算机程序,处理器用于执行计算机程序以实现上述的方法。

为解决上述技术问题,本申请实施例采用的又一个技术方案是:提供一种存储介质,该存储介质用于存储计算机程序,计算机程序能够被处理器执行以实现上述的方法。

本申请实施例通过判断编码单元的预测模式是否为宽角度模式;在判断到编码单元的预测模式为宽角度模式时,将编码单元分割为至少两个子编码单元;对至少两个子编码单元采用不同的预测模式进行帧内预测,能够去除空间冗余,提升帧内编码的压缩率。

附图说明

图1是本申请实施例帧内预测的模式示意图;

图2是本申请实施例的帧内预测方法的流程示意图;

图3是本申请一种实施例对编码单元进行分割的原理示意图;

图4是本申请另一种实施例对编码单元进行分割的原理示意图;

图5是本申请第一具体实例的示意图;

图6是本申请第二具体实例的示意图;

图7是本申请实施例的视频编码方法的流程示意图;

图8是本申请视频处理装置的电连接示意图;

图9是本申请实施例存储介质的示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

请参阅图1,图1是本申请实施例帧内预测的模式示意图。

在本申请实施例中,帧内预测模式分为planar、dc和多种角度模式三类,其中2~n表示普通角度模式,planar和dc为普通非角度模式。除了上述模式,本实施例还增加了一些宽角度模式。若n取66,则包括宽角度模式在内的所有帧内预测模式如图1所示,其中,2~66为普通角度模式,角度模式-13~1和67~81为宽角度模式,分别代表了不同的预测方向,模式18和50分别为水平和垂直方向。

请参阅图2,图2是本申请实施例的帧内预测方法的流程示意图。

在本实施例中,帧内预测方法可以包括以下步骤:

步骤s101:判断编码单元的预测模式是否为宽角度模式。

在一种实施方式中,步骤s101具体可以包括:获取编码单元(cu,codingunit)的长度和宽度;判断编码单元的长度和宽度是否相等;若编码单元的长度和宽度不相等,则选用普通预测模式或宽角度模式。若编码单元的长度和宽度相等,则选用普通预测模式。

宽角度模式是在编码单元的形状为长方形时采用的,编码单元的形状是正方形时不使用宽角度模式进行帧内预测,下面从宽角度模式的理论、宽角度模式的获取和宽角度模式的作用范围来进行介绍。

为了进一步提升视频编码的压缩率,视频编解码技术中编码单元的划分方式种类也越来越多,很多视频编解码情形下出现了较多的长方形编码单元。长方形的编码单元中紧邻长边一侧的参考像素比紧邻短边一侧的参考像素相关性更强,基于这一原因,增加了一些宽角度模式,可以使参考像素尽量选取为紧邻长边一侧的参考像素,能一定程度上提升长方形的编码单元的预测值的准确性。

宽角度模式根据编码单元的宽度(图幅中横向)和高度(图幅中的纵向)尺寸来获取,当宽度和高度的比例或者高度和宽度的比例越大时,当前长方形的编码单元进行预测所使用的宽角度模式越多,同时被去掉的普通角度模式也越多。如图1,当n=66时,如表1所示,增加的宽角度模式依次替换需要被替换的普通角度模式,例如当编码单元的宽高比为32时,模式67~81依次替换掉模式2~16。另外,宽角度模式中的0和1表示角度模式的0和1,角度模式1的方向是模式65的反方向,角度模式0的方向是模式64的反方向,依此类推-13是模式51的反方向;同理,角度模式67的方向是模式3的反方向,模式68是模式4的反方向,依次类推81是模式17的反方向。

表1宽高比和宽角度模式的关系

当当前的编码单元采用宽角度模式进行帧内预测时,该宽角度模式作用于当前的编码单元内的所有像素点,当前编码单元利用该宽角度模式获取该模式下的预测块。

步骤s102:在判断到编码单元的预测模式为宽角度模式时,将编码单元分割为至少两个子编码单元。

承前所述,在判断到编码单元的预测模式为宽角度模式时,将编码单元分割为至少两个子编码单元。

至少两个子编码单元包括第一子编码单元和第二子编码单元,

在编码单元的宽度大于高度的情况下,第一子编码单元与编码单元左侧的参考像素的相关性比第二子编码单元与编码单元左侧的参考像素的相关性大;

在编码单元的高度大于宽度的情况下,第一子编码单元与编码单元上侧的参考像素的相关性比所述第二子编码单元与编码单元上侧的参考像素的相关性大。

长方形的编码单元中紧邻长边一侧的参考像素比紧邻短边一侧的参考像素相关性更强,同时离编码单元内像素点越近的参考像素点相关性也越强,本申请实施例基于此,提出了对编码单元划分区域(即划分为第一子编码单元和第二子编码单元)的方法,对不同的区域像素采用不同的帧内预测模式进行帧内预测,本提案提出了两种划分区域的方式。

请参阅图3,图3是本申请一种实施例对编码单元进行分割的原理示意图。

在一种实施方式中(第一种分割方式),将编码单元分割为至少两个子编码单元具体可以包括:利用分割线将编码单元分割为第一子编码单元和第二子编码单元,分割线经过编码单元的长边上的一个像素分界点且平行于编码单元的短边。

具体而言,在满足宽角度模式条件下,将长方形的编码单元的长边进行分割,分割点在长边上,分割线与编码单元的短边平行,编码单元被划分为第一子编码单元和第二子编码单元,分割点的位置可以是在长边上的任何整像素点位置。

请参阅图4,图4是本申请另一种实施例对编码单元进行分割的原理示意图。

在另一种实施方式中(第二种分割方式),将编码单元分割为至少两个子编码单元具体可以包括:利用分割线将编码单元分割为第一子编码单元和第二子编码单元,分割线经过分割点且平行于编码单元的短边,分割点为在长边上离交点j最近的像素分割点,该交点j为编码单元的顶点a沿普通角度模式预测方向的相反方向延伸后与编码单元的长边的交点,普通角度模式预测方向为宽角度模式对应的普通角度模式的预测方向。

具体而言,在满足宽角度模式条件下,根据要用宽角度模式对应的普通角度模式将编码单元划分成第一子编码单元和第二子编码单元,如图4所示,首先以a点为与宽角度模式对应的普通角度模式(即被宽度模式替换的普通角度模式,对应关系参见表1)的起点,然后反向延伸与长边相交,最后以该交点j的位置作为长边的分割点,分割线与长方形的编码都那样的短边平行,将编码单元划分成了第一子编码单元和第二子编码单元。这种划分方式根据计算选择的宽角度模式的变化而变化,其中交点j可能落在长边的非整数像素点(即非整像素分界点)位置,当编码单元的宽度大于高度时,如果交点j是非整数像素点,选取该交点j左边或是右边最接近该点的整像素点作为分割点;当宽度小于高度时,如果交点j是非整数点,选取该交点j上边或是下边最接近该点的整像素分界点作为分割点。

步骤s103:对至少两个子编码单元采用不同的预测模式进行帧内预测。

在一种实施方式中,对至少两个子编码单元采用不同的预测模式进行帧内预测的步骤具体可以包括:对第一子编码单元采用与宽角度模式对应的普通角度模式进行帧内预测;对第二子编码单元采用宽角度模式进行帧内预测。

具体而言,对第一子编码单元采用宽角度模式替换前的普通角度模式(宽角度模式对应的普通角度模式,具体参见表1的普通角度模式和宽角度模式的对应关系)进行帧内预测。对第二子编码单元采用宽角度模式进行帧内预测。

在另一种实施方式中,对至少两个子编码单元采用不同的预测模式进行帧内预测的步骤具体可以包括:对第一子编码单元采用与宽角度模式对应的普通角度模式进行帧内预测;对第二子编码单元采用普通角度模式的反方向模式进行帧内预测。反方向模式的具体说明参见上文的描述此处不再赘述。

对编码单元的第一子编码单元和第二子编码单元同时采用各自获取的模式进行预测,计算编码单元在这种情况下的代价,然后与编码单元的其他模式的代价进行比较,选取代价最小的模式作为最佳预测模式。该最佳预测模式可能力是第一子编码单元和第二子编码单元模式对,也可能是普通模式。代价计算的方式为rdcost代价计算。rdcost代价计算的数学关系如下:

rdcost=d+λ*r(式1)

其中,d、r表示采用不同预测模式时的失真和比特数,λ为拉格朗日因子。

下面结合两种具体实例对本申请的帧内预测方法进行说明。

请参阅图5,图5是本申请第一具体实例的示意图。

如图5所示,当前编码单元的尺寸是16x8,该块第一种分割方式,设置分割点位于编码单元的长边的中点,分割线将编码单元划分成8x8的正方形的第一子编码单元和8x8的正方形的第二子编码单元。当前普通角度模式是m(m取值2~7),对应的宽角度模式是n(n取值67~72),第一子编码单元的预测模式仍然采用普通角度模式m,第二子编码单元的预测模式可以采用n也可以采用n-1。如表1所示,m和n的对应关系是如表一所示的一一对应关系。

请参阅图6,图6是本申请第二具体实例的示意图。

如图6所示,当前编码单元的尺寸是8x16,该编码采用第二种分割方式,当前普通角度模式是m(m取值61~66),对应的宽角度模式是n(n取值-4~1),m模式对应的像素偏移值offset(offset对应模式m的偏移值值依次为18,20,23,26,29,32),利用数学关系式floor(32*width/offset)或者ceil(32*width/offset)得到在长边上的分割点,在此分割点的基础上将编码单元划分成第一子编码单元和第二子编码都那样,其中floor表示向下取整,ceil表示向上取整,width表示编码单元的宽且取值为8。第一编码单元的预测模式仍然采用普通角度模式m,第二编码单元的预测模式可以采用n也可以采用n+1。如表1所示,m和n的对应关系是如表一所示的一一对应关系。

请参阅图7,图7是本申请实施例的视频编码方法的流程示意图。

在本实施例中,视频编码方法可以包括以下步骤:

步骤s701:获取待编码的编码单元。

其中,获取待编码的编码单元具体可以包括获取编码单元的尺寸,例如宽度和高度尺寸。

步骤s702:判断编码单元的预测模式是否为宽角度模式。

步骤s703:在判断到编码单元的预测模式为宽角度模式时,将编码单元分割为至少两个子编码单元。

步骤s704:将至少两个子编码单元的帧内预测模式确定为不同的预测模式。

其中,步骤s702-s704的具体说明可以参见上文任意一实施例的描述,此处不再赘述。

请参阅图8,图8是本申请视频处理装置的电连接示意图,该实施方式中,视频处理装置100包括处理器110和存储器120,处理器110与存储器120电连接(可以为无线电连接或者有线电连接),存储器120用于存储计算机程序,处理器110用于执行该计算机程序以实现上述任一实施例的帧内预测方法或者视频编码方法。

视频处理装置100可以是视频编解码器。处理器110还可以称为cpu(centralprocessingunit,中央处理单元)。处理器110可以是一种集成电路芯片,具有信号的处理能力。处理器110还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器110可以是微处理器或者该处理器也可以是任何常规的处理器等。

请参阅图9,图9是本申请实施例存储介质的示意图,该实施方式中,存储介质200存储有计算机程序210,该计算机程序210被执行时能够实现上述任一实施例的帧内预测方法或者视频编码方法。

其中,该程序210可以以软件产品的形式存储在上述存储介质200中,包括若干指令用以使得一个设备或处理器执行本申请各个实施方式方法的全部或部分步骤。

存储介质200是计算机存储器中用于存储某种不连续物理量的媒体。而前述的存储介质200可以为:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序210代码的介质。

在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。

另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

本申请实施例通过判断编码单元的预测模式是否为宽角度模式;在判断到编码单元的预测模式为宽角度模式时,将编码单元分割为至少两个子编码单元;对至少两个子编码单元采用不同的预测模式进行帧内预测,能够去除空间冗余,提升帧内编码的压缩率。

以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1