高灵活变尺寸块帧内预测编码的制作方法

文档序号:8003138阅读:183来源:国知局
高灵活变尺寸块帧内预测编码的制作方法
【专利摘要】本发明公开了一组用于16×16和32×32帧内编码块的分割模式,对于帧内编码的16×16和32×32块,可以根据其中任意一种分割模式将当前16×16或32×32块分割,然后对其中的每一个分割块执行变尺寸块帧内预测和变换编码。对于一个当然的16×16或32×32块,编码器通过率失真优化的方法选择最优的分割模式,首先将分割模式信息编入码流,然后对当前分割模式下每一个分割块执行帧内预测和变换编码,然后将帧内预测信息和变换编码信息编入码流。解码器则解码分割模式信息,然后从码流中逐个恢复当前分割模式下每一个分割块的编码信息,然后对每一个分割块执行相应的帧内预测和变换重构。
【专利说明】 高灵活变尺寸块帧内预测编码
【技术领域】
[0001]本发明属于数字视频压缩领域,具体涉及到视频信号高灵活变尺寸块帧内预测编码。
【背景技术】
[0002]数字视频是通过对时域和空域连续的自然场景进行时域和空域连续采样所得。如图1所示,数字视频由一系列时域上的视频帧所组成,每个视频帧表示自然场景在某个时间的空域采样,它由二维均匀采样的视觉像素组成。每个像素由一系列描述像素亮度和色彩的数字组成,在视频编码中,最广泛被使用的格式是YUV格式,这种格式中,每个像素由一个亮度分量Y,两个色差分量U和V组成,一般对U和V分量水平和垂直方向各进行一次下采样,这样每相邻的4个像素共用I个U和I个V分量,这就是YUV4:2:0格式。
[0003]最广泛被使用的视频编码技术是块基混合运动补偿DCT变换视频编码技术,其中最有代表性的是MPEG和VCEG正在联合制定的国际标准HEVC。如图2所示,HEVC编码器首先把输入帧被劈分成一个个NxN (其中N为2的幂次,其最小为8,最大可以到64)的块,称为最大编码单元(IXU),然后从左到右,从上到下依次对IXU进行编码。在HEVC中,基本的预测-变换-编码单位称为编码单元(⑶),对于一个大小为2Nx2N的IXU,可以把它作为一个CU直接进行预测-变换-编码,也可以把它以四分树的方式劈分为4个大小为NxN的单元进行预测-变换-编码,而对于每个NxN的单元,它也既可以作为一个CU进行预测-变换-编码,也可以继续以四分树的方式劈分为4个更小的单元进行编码。图3所示既是一个LCU的编码劈分图,图中LCU被劈分为4个等尺寸CU,而4个CU中的第一个、第三个和第四个又分别进行了继续的劈分。CU最小为8x8,最大可以和LCU等尺寸。对每个待编码的CU,首先从已编码的重构帧中计算出一个对当前块的预测,并与当前块相减,残差依次执行DCT变换、量化,然后反量化、反DCT变换得到重构宏块,存入重构帧序列中,用于对其后编码的CU产生预测信号。由于精确的DCT变换是浮点变换,所以实际中一般用DCT变换的整数近似或者KLT变换的整数近似来代替。
[0004]⑶的预测有2种,第一种是帧内预测,即只使用当前编码帧的已重构的像素对当前CU进行预测。当前最流行的帧内预测技术是帧内方向预测技术。帧内方向预测直接以CU为单位进行。HEVC中所使用的角度帧内预测如图4所示。图4所示白色黑框块是当前编码⑶,左边和上边的灰色条带是当前⑶左上的已重构像素,他们用来生成当前⑶的预测信号。每一个帧内方向预测模式说明一个当然的预测方向,对于如图4所示编码CU中的某一行或某一列(用竖状网格表示),根据预测方向找到左上重构块中的相应的像素,如图4中黑色像素块所示,作为当前行或列的预测。图4右侧所示的列预测因为左边靠上的重构像素不存在,所以在实际的预测开始前,需要根据当前预测方向从当前块上边的重构像素根据当前帧内预测方向映射过去,如图5所示。在HEVC中共有33种不同的方向预测模式,如图6所示。除了 HEVC中所使用的角度帧内预测技术以外,还有多种其他的帧内预测技术,如逐行或逐列方向帧内预测技术,还有三星提出的任意角度帧内预测技术。[0005]CU的第二种预测是帧间预测,这时当前块的预测从时域上在当前帧前或当前帧后的重构帧中的选取。在ffiVC中,预测以预测单元(PU)为基本单位。一个2Nx2N大小的⑶有4种PU划分模式,它既可以作为单一的执行运动补偿,也可以分割成几个分别执行不同的运动补偿,如图7所示。对于一个任意形状的运动补偿过程如图8、图9、图10和图11所不。显不时间为t的巾贞是当如编码巾贞,黑色块是当如编码块。显不时间为t_to、t-2*t0、t+t0帧是重构帧,其中具有点状边界的灰色块是与当前编码块同一空域位置的块。显示时间为t-t0、t-2*t0、t+t0帧都可以作为当前编码块的预测。在图8中,运动向量MVO指向当前块的前向预测块BLKO。在图9中,运动向量MVI指向当前块的后向预测块BLKI。在图10中,运动向量MV指向当前块的前向预测块BLKO,MV的反方向指向后向预测块BLK1,BLKO和BLKl的平均作为当前块的预测。在图11中,运动向量MVO指向当前块的前向预测块BLK0,运动向量MVl指向当前块的后向预测块BLK1,BLKO和BLKl的平均作为当前块的预测。在前向预测、后向预测和对称预测中,只有一个运动参数(包括运动向量和参考图像)需要编码,而在双向预测模式中,2个运动参数需要编码。对于每种时域补偿模式,编码器通过率失真优化的运动估计过程得到最优的运动参数,并将其编入码流。
[0006]在得到预测以后,将当前块与预测块相减,得到残差块,然后对残差块依次执行DCT变换或其他正交变换,然后量化、熵编码,然后再反量化、反变换、和预测块相加得到重构块,并用于后续编码块的预测。在ffiVC中,变换以变换单元(TU)为单位进行。对于帧内预测,TU与实际的预测尺寸同尺寸,即如果一个2Nx2N块实际执行了 2Nx2N的帧内预测,那么它也直接执行2Nx2N 二维可分离变换。对于时域预测,则使用变尺寸块变换。HEVC中所使用的四分树结构变尺寸块变换如图12所示,一个2Nx2N的CU可以有2种变换分割模式,即直接2Nx2N变换或者分割成4个NxN单元,4个NxN单元中的每一个都可以独立进行四分树结构的变尺寸块变换。TU的最小单元是4x4。
[0007]本发明描述了一种高度灵活的帧内块变尺寸块帧内预测变换编码模式,与简单的四分树结构的变尺寸块帧内预测编码相比,本发明能在相同视频质量条件下节省超过5%的码率。

【发明内容】

[0008]在本发明中,仅仅正方形帧内编码块可以执行变尺寸块帧内预测变换编码,而所有NxM(N幸M)长方形块仅仅能进行直接的NxM帧内预测编码,即首先执行某种NxM帧内预测,然后执行NxM变换,然后量化熵编码,最后反量化、反变换后加上预测构成重构。图13、图14和图15是一个4Nx4N帧内编码块所有可能的分割帧内预测变换编码模式。
[0009]当N=2时,当前8x8块仅有2种编码模式,即直接的8x8帧内预测编码,或图15所示四分树分割模式帧内预测编码。编码器通过率失真优化的方法,在两种模式中选择其中一种模式,将模式信息写入码流,然后执行相应的分割模式帧内预测编码。
[0010]当N=4或8且当前块是亮度块时,当前4Nx4N块除了可以直接执行4Nx4N帧内预测编码以外,还可以执行图13、图14和图15中任意一种分割模式帧内预测变换编码。当某个子分割块是正方形块时,它如果有允许的分割模式,那么也可以执行分割模式帧内预测变换编码。编码器通过率失真优化的方法,在10种模式中选择其中一种模式,将模式信息写入码流,然后执行相应的分割模式帧内预测编码。[0011]当N=4或8且当前块是色度块时,当前4Nx4N块除了可以直接执行4Nx4N帧内预测编码以外,还可以执行图13和图15中任意一种分割模式帧内预测变换编码。当某个子分割块是正方形块时,它如果有允许的分割模式,那么也可以执行分割模式帧内预测变换编码。编码器通过率失真优化的方法,在6种模式中选择其中一种模式,将模式信息写入码流,然后执行相应的分割模式帧内预测编码。
[0012]当N大于8时,当前4Nx4N块一般不直接进行4Nx4N帧内预测编码,因为尺寸大于32x32的变换太复杂而在当前条件下不实用。所以N大于8的4Nx4N块只有一种编码模式,即图15所示的四分树分割模式帧内预测变换编码。
【专利附图】

【附图说明】
[0013]图1为数字视频示例,其中指示I表示时域采样,指示2表示空域采样。
[0014]图2为块基运动补偿DCT变换视频编码器,其中指示I表示劈分为IXU,指示2表示中贞内预测信息,指示3表示运动参数信息,指示4表示控制信息,指示5表示量化DCT系数,指示6表示编码码流。
[0015]图3是IXU通过四分树递归的劈分为⑶。
[0016]图4是角度帧内预测示意图。
[0017]图5是角度帧内预测中左上不可用像素的映射计算示意图。
[0018]图6是角度帧内预测所有方向模式示意图。
[0019]图7是⑶劈分为PU的所有方式。
[0020]图8是时域前向预测示意图。
[0021]图9是时域后向预测示意图。
[0022]图10是时域对称预测示意图。
[0023]图11是时域双向预测示意图。
[0024]图12是⑶劈分为PU的4种方式。
[0025]图13是本发明所述用于亮度或色度16x16或32x32帧内编码块的四种分割模式。
[0026]图14是本发明所述用于亮度16x16或32x32帧内编码块的四种分割模式。
[0027]图15是本发明所述用于大于等于8的正方形帧内编码块的一种分割模式。
[0028]图16是本发明所述视频编码器。
[0029]图17是本发明所述视频解码器。
[0030]实施方式
[0031]图16是包含本发明的一个视频编码器。编码器首先把输入视频帧划分为大小为64x64的IXU,然后对IXU进行从左到右、从上到下的顺序编码。
[0032]对每个LCU,编码器可以将其作为一个编码单元对其直接编码,也可以将其以四分树形式劈分为四个更小的编码单元进行编码。而这些32x32单元又可以进一步进行劈分,一般来说,编码单元最小可到8x8。对于一个编码单元,编码器可以选择将其编码为帧内块,也可以选择将其编码为帧间块。对于一个大小为4Nx4N的编码单元,其亮度分量大小为4Nx4N,而两个色度分量大小为2Nx2N。在本编码器中,亮度分量和色度分量分别进行进一步的变尺寸块劈分帧内预测编码。在本发明中,仅仅大于等于8x8的正方形块有更多的分割模式,而所有大小为NxM (N古M或N=M=4)的块仅仅能进行直接的NxM帧内预测编码,即首先执行某种NxM帧内预测,然后执行NxM变换,然后量化熵编码,最后反量化、反变换后加上预测构成重构。
[0033]对于每个8x8帧内编码分量,它仅有两种编码模式,即直接的8x8帧内预测编码和图15所示四分树形式劈分为四个4x4块进行帧内模式编码。编码器通过计算率失真花费决定8x8分量采用的编码模式,并将其编入码流,然后编码帧内预测模式和残差信息。
[0034]对于每个16x16帧内编码分量(可以是亮度分量,也可以是色度分量),编码器首先直接进行16x16帧内预测编码,即首先进行某种16x16帧内预测,然后对残差进行变换量化编码,最后得到16x16分量的重构。编码器通过率失真优化的方法得到直接16x16帧内预测编码的最小率失真花费。然后编码器根据本发明所述的16x16块分割模式(对于亮度是图13、图14和图15中9种,对于色度,只有图13和图15中5种)中的任意一种,对当前16x16块进行分割,然后对每个分割块进行变尺寸块帧内预测变换编码。编码器算出每种分割模式下的总率失真花费,然后和直接帧内预测编码模式比较,选出最好的分割编码模式,然后将分割模式信息编入码流,然后以这种分割模式对当前16x16帧内分量进行编码。当16x16分量的某一个分割模式中包含8x8分割时,8x8分割块分量执行本发明所述的变尺寸块分割帧内预测编码。
[0035]对于每个32x32帧内编码分量(可以是亮度分量,也可以是色度分量),编码器首先直接进行32x32帧内预测编码,即首先进行某种32x32帧内预测,然后对残差进行变换量化编码,然后得到32x32分量的重构。编码器通过率失真优化的方法得到直接32x32帧内预测编码的最小率失真花费。然后编码器根据本发明所述的32x32块分割模式(对于亮度是图13、图14和图15中9种,对于色度,只有图13和图15中5种)中的任意一种,对当前32x32分量进行分割,然后对每个分割块进行变尺寸块帧内预测变换编码。编码器算出每种分割模式下的总率失真花费,和直接帧内预测编码模式比较,选出最好的分割编码模式,然后将分割模式信息编入码流,然后以这种分割模式对当前32x32帧内编码分量进行编码。当32x32分量的某一个分割模式中包含16x16分割时,16x16分割分量块执行本发明所述的变尺寸块分割帧内预测编码。
[0036]对于每个64x64分量,它只有一种编码模式,即根据图15所示分割模式,将其分割为四个32x32分量,然后按本发明所述方法对每个32x32分量进行变尺寸块分割帧内预测编码。
[0037]图17所示是包含本发明的视频解码器,它是图16的逆。解码器从左到右、从上到下对每个LCU进行解码。对于每个LCU,解码器读取信息,得到其分割编码模式,然后将其分割为编码单元进行编码。然后解码器读取码流决定一个编码单元的编码模式。如果这个编码单元是帧内编码单元,那么解码器对其亮度分量和色度分量分别进行变尺寸块帧内预测解码。对于一个64x64帧内编码分量,解码器将其分割为四个32x32分量进行解码。对于一个32x32分量,解码器首先解码其分割模式信息,然后根据分割模式将其分割为若干子块分量对其进行解码。对于一个16x16分量,解码器首先解码其分割模式信息,然后根据分割模式将其分割为若干子块分量对其进行解码。对于一个8x8分量,解码器首先解码其分割模式信息,然后根据分割模式将其分割为若干子块分量对其进行解码。而对于大小为NxM (N古M或N=M=4)的块,解码器则直接解码其预测信息和残差信息,然后得到这个块的重构。[0038]虽然本发明只描述了一种实现,但本算法可以被协商到多种实现中。如对于帧内预测技术,本发明并不局限于ffiVC所采纳的角度帧内预测技术,其他帧内预测技术也可以使用。本发明也并不局限于最大编码单元尺寸,除了上面所描述的64X64LCU,本发明也可用于128xl28IXU,或32x32IXU等。对于亮度分量的分割类型,也可以只采用图13和图15两类共5种,这样性能会损失0.6%,但可以和色度采用一样的分割类型。
【权利要求】
1.视频编解码器对N=4或8的4Nx4N帧内编码亮度块的执行变尺寸块帧内预测变换编码。当前4Nx4N块除了可以直接执行4Nx4N帧内预测编码以外,还可以执行图13、图14和图15中任意一种分割模式帧内预测变换编码。
2.视频编解码器对N=4或8的4Nx4N帧内编码亮度或色度块的执行变尺寸块帧内预测变换编码。当前4Nx4N块除了可以直接执行4Nx4N帧内预测编码以外,还可以执行图13和图15中任意一种分割模式帧内预测变换编码。
3.视频编解码器对N大于8的4Nx4N帧内编码块的执行变尺寸块帧内预测变换编码。当前4Nx4N块只有一种编码模式,即图15所示的四分树分割模式帧内预测变换编码。由于只有一种编码模式,所以编码器不需要编码模式信息。
4.如权利要求1、2和3所示,当某种子分割块是正方形块时,那么这个分割块也可以执行进一步的变尺寸块帧内预测编码。8x8帧内编码块仅有2种编码模式,即直接的8x8帧内预测编码,或图15所示四分树分割模式巾贞内预测编码。而NxM (N古M或N=M=4)块仅有一种编码模式,即直接进行NxM帧内预测,然后对残差进行NxM变换编码。
5.如权利要求1、2和3所示,视频编码器对于一个当然的4Nx4N帧内编码块进行编码。如果当前4Nx4N块存在多种分割编码模式,那么编码器通过计算率失真花费选择最优的分割模式,并将所选分割模式信息和相应所有子块的分割模式信息(如果是正方形块且有多种分割编码模式)、帧内预测模式及量化变换系数一起编码入码流,而解码器则通过解码模式信息和每个子块的编码信息恢复4Nx4N块的重构。
【文档编号】H04N19/154GK103491380SQ201310326728
【公开日】2014年1月1日 申请日期:2013年7月29日 优先权日:2013年7月29日
【发明者】朱洪波 申请人:朱洪波
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1