首页 / 专利库 / 多媒体工具与应用 / 视频编码 / 用于分割块的方法和解码设备

用于分割的方法和解码设备

阅读:1034发布:2020-07-21

专利汇可以提供用于分割的方法和解码设备专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种用于分割 块 的方法和解码设备。一种用于解码图像的方法,包括步骤:将在其中以预先确定的内预测模式执行内预测的一个预测单元分割为多个变换单元;和基于预先确定的内预测模式执行对于多个变换单元中的每个的内预测。因此,本发明提高图像编码效率。,下面是用于分割的方法和解码设备专利的具体信息内容。

1.一种由解码装置进行的内预测方法,所述方法包括:
当当前编译单元的尺寸与最小编译单元的尺寸相同时,从所述当前编译单元导出多个预测单元,其中,当前预测单元是所述多个预测单元中的一个;
从所述当前编译单元导出多个变换单元;以及
通过使用所述多个变换单元的每个的相邻参考像素相对于所述多个变换单元的每个执行内预测以产生预测的
其中,所述多个变换单元被定位在其中所述当前预测单元所位于的区域。
2.根据权利要求1的内预测方法,其中,当所述预测单元的尺寸是2N×2N的尺寸时,所述多个变换单元的每个的尺寸是N×N的尺寸。
3.根据权利要求1的内预测方法,其中,相对于所述多个变换单元的每个执行所述内预测包括:
基于所述第一变换单元的上和左相邻参考像素和所述当前预测单元的内预测模式相对于第一变换单元执行内预测;
基于相对于所述第一变换单元的所述内预测的结果和所述内预测模式相对于第二变换单元执行内预测;
基于相对于所述第一变换单元和所述第二变换单元的所述内预测的结果和所述内预测模式相对于第三变换单元执行内预测;以及
基于相对于所述第一变换单元、所述第二变换单元和所述第三变换单元的所述内预测的结果和所述内预测模式相对于第四变换单元执行内预测。
4.一种视频解码装置,包括:
预测模块,所述预测模块用于当当前编译单元的尺寸与最小编译单元的尺寸相同时,从所述当前编译单元导出多个预测单元,其中当前预测单元是所述多个预测单元中的一个,用于从所述当前编译单元导出多个变换单元,以及通过使用所述多个变换单元的每个的相邻参考像素相对于所述多个变换单元的每个执行内预测以产生预测的块,其中,所述多个变换单元被定位在其中所述当前预测单元所位于的区域。
5.根据权利要求4的视频解码装置,其中,当所述预测单元的尺寸是2N×2N的尺寸时,所述多个变换单元的每个的尺寸是N×N的尺寸。
6.根据权利要求4的视频解码装置,其中,相对于所述多个变换单元的每个执行所述内预测包括:
基于所述第一变换单元的上和左相邻参考像素和所述当前预测单元的内预测模式相对于第一变换单元执行内预测;
基于相对于所述第一变换单元的所述内预测的结果和所述内预测模式相对于第二变换单元执行内预测;
基于相对于所述第一变换单元和所述第二变换单元的所述内预测的结果和所述内预测模式相对于第三变换单元执行内预测;以及
基于相对于所述第一变换单元、所述第二变换单元和所述第三变换单元的所述内预测的结果和所述内预测模式相对于第四变换单元执行内预测。
7.一种由编码装置进行的视频编码方法,所述方法包括:
当当前编译单元的尺寸与最小编译单元的尺寸相同时,从所述当前编译单元导出多个预测单元,其中当前预测单元是所述多个预测单元中的一个;
从所述当前编译单元导出多个变换单元;
通过使用所述多个变换单元的每个的相邻参考像素相对于所述多个变换单元的每个执行内预测以产生预测的块;以及
对关于所述当前预测单元的包括预测模式信息的视频信息进行编码,
其中,所述多个变换单元被定位在其中所述当前预测单元所位于的区域。
8.一种视频编码装置,包括:
预测模块,所述预测模块用于当当前编译单元的尺寸与最小编译单元的尺寸相同时,从所述当前编译单元导出多个预测单元,其中当前预测单元是所述多个预测单元中的一个,用于从所述当前编译单元导出多个变换单元,以及用于通过使用所述多个变换单元的每个的相邻参考像素相对于所述多个变换单元的每个执行内预测以产生预测的块;以及熵编码模块,所述熵编码模块对关于所述当前预测单元的包括预测模式信息的视频信息进行编码;
其中,所述多个变换单元被定位在其中所述当前预测单元所位于的区域。
9.一种存储通过权利要求7的视频编码方法产生的编码的视频信息的数字存储介质。

说明书全文

用于分割的方法和解码设备

[0001] 本申请是2013年3月27日提交的国际申请日为2011年9月2日的申请号为201180046557.3(PCT/KR2011/006515)的,发明名称为“用于分割块的方法和解码设备”专利申请的分案申请。

技术领域

[0002] 本发明涉及块分割方法和解码器,尤其是,涉及用于解码的方法和装置。

背景技术

[0003] 近来,对于高分辨率、高质量视频,诸如高清晰度(HD)视频和超高清晰度(UHD)视频的需求在各种应用领域中增长。由于视频变为高分辨率和高质量,视频数据与现有的视频数据相比包括增加的数据量,并且因此,在使用诸如现有的有线或者无线宽带电路线路的介质发送视频数据,或者使用现有的存储介质存储视频数据的情形下,传输成本和存储成本增加。为了解决由于视频数据变为高分辨率和高质量产生的这些问题,可以使用高效率的视频压缩技术。
[0004] 视频压缩技术包括诸如用于从在当前图片的之前或者之后的图片预测包括在当前图片中的像素值的间预测(inter prediction)技术,用于通过使用在当前图片内的像素信息预测包括在当前图片中的像素值的内预测(intra prediction)技术,和用于分配短代码给高发生频率的值并且分配长代码给低发生频率的值的熵编码技术的各种技术,并且通过使用这样的视频压缩技术可以有效地压缩视频数据以被发送或者存储。

发明内容

[0005] 技术问题
[0006] 本发明的第一个目的是提供一种用于基于多个变换单元执行内预测以便提高视频编码效率的视频解码方法。
[0007] 此外,本发明的第二个目的是提供一种按照编译单元的尺寸不同地设置用于执行预测的预测单元,以便执行低复杂度的解码的方法。
[0008] 技术方案
[0009] 一种按照本发明的一个方面用于实现本发明第一个目的的解码视频的方法,可以包括:将在其上以预先确定的内预测模式执行内预测的预测单元分割为多个变换单元,和基于预先确定的内预测模式相对于多个变换单元的每个执行内预测。将在其上以预先确定的内预测模式执行内预测的预测单元分割为多个变换单元可以包括:分割以使得当预测单元的尺寸是2N×2N的尺寸的时候,多个变换单元的尺寸是N×N的尺寸。基于预先确定的内预测模式相对于多个变换单元的每个执行内预测可以包括:基于预先确定的内预测模式预测和重建第一变换单元;基于重建第一变换单元的结果和预先确定的内预测模式预测和重建第二变换单元;基于重建第一变换单元和第二变换单元的结果和预先确定的内预测模式预测和重建第三变换单元;和基于重建第一变换单元、第二变换单元和第三变换单元的结果以及预先确定的内预测模式预测和重建第四变换单元。
[0010] 一种按照本发明的一个方面用于实现本发明第二个目的的解码视频的方法,可以包括:确定编译单元的尺寸,并且如果编译单元的尺寸是最小编译单元,则确定编译单元是否被分割为多个预测单元。如果编译单元的尺寸是最小编译单元,确定编译单元是否被分割为多个预测单元,可以包括:基于指示编译单元是否被分割为多个预测单元的语法元素信息,接收有关编译单元是否被分割的信息。在编译单元的尺寸大于最小编译单元的情形下,和在编译单元的尺寸与最小编译单元相同的情形下,可以利用不同的索引值定义语法元素信息。如果编译单元的尺寸是最小编译单元,确定编译单元是否被分割为多个预测单元,可以包括:确定是否编译单元的尺寸是2N×2N,并且编译单元被分割为用于执行内预测的N×N尺寸的预测单元。如果编译单元的尺寸是最小编译单元,则确定编译单元是否被分割为多个预测单元,可以包括:当执行间预测的时候,确定2N×2N尺寸的编译单元是否使用N×N尺寸的预测单元。当执行间预测的时候,确定2N×2N尺寸的编译单元是否使用N×N尺寸的预测单元,可以包括:当基于预先确定的标记信息执行间预测的时候,确定预先确定尺寸的预测单元是否使用N×N尺寸的预测单元。当执行间预测的时候,确定2N×2N尺寸的编译单元是否使用N×N尺寸的预测单元,可以包括:基于预先确定的标记信息,确定在间预测中是否使用4×4尺寸的预测单元。解码视频的方法可以进一步包括:分割以使得当预测单元的尺寸是2N×2N的尺寸的时候,多个变换单元的尺寸是N×N尺寸。当执行间预测的时候,确定2N×2N尺寸的编译单元是否使用N×N尺寸的预测单元,可以包括:当基于预先确定的标记信息执行间预测的时候,确定预先确定尺寸的编译单元是否使用N×N尺寸的预测单元。该编译单元可以基于定义编译单元尺寸的语法元素设置用于执行内预测的最大编译单元的尺寸,和用于执行间预测的最大编译单元的尺寸。该编译单元可以被设置为将进行逆变换的变换单元。该编译单元可以被设置为预测单元,并且可以通过不同地设置用于执行内预测的编译单元的尺寸和用于执行间预测的编译单元的尺寸执行预测。
[0011] 有益效果
[0012] 如上所述,按照本发明的一个示例性实施例的块分割方法和解码器,当相对于系数执行熵编码的时候,可以按照系数的属性区别熵编码模式以执行熵编码,并且可以基于新定义的熵编码模式执行熵解码,并且用于映射语法元素值与代码编号的索引映射表被适应地改变,从而执行熵编码和解码。
[0013] 因此,可以减少对于视频编码所需的比特数,从而提高视频编码效率。附图说明
[0014] 图1是图示按照本发明的一个示例性实施例的视频编码装置的方框图
[0015] 图2是图示按照本发明的一个示例性实施例的视频解码器的方框图。
[0016] 图3是图示按照本发明的另一个示例性实施例的产生当执行屏幕内预测的时候使用的参考像素方法的概念图
[0017] 图4是图示按照本发明的另一个示例性实施例的块的分割结构的概念图。
[0018] 图5是图示按照本发明的另一个示例性实施例的按照预测单元的参考像素的概念图。
[0019] 图6是图示按照本发明的另一个示例性实施例的按照预测单元的参考像素的概念图。
[0020] 图7是图示按照本发明的另一个示例性实施例的内预测方法的概念图。
[0021] 图8是图示按照本发明的另一个示例性实施例的内预测方法的概念图。
[0022] 图9是图示按照本发明的另一个示例性实施例的使用短距离内预测方法的内预测的概念图。
[0023] 图10是图示按照本发明的另一个示例性实施例的内预测方法的流程图
[0024] 图11是图示按照本发明的另一个示例性实施例的分割编译单元的方法的概念图。
[0025] 图12是图示按照本发明的另一个示例性实施例的用于执行内预测和间预测的块分割方法的概念图。
[0026] 图13是图示按照本发明的另一个示例性实施例以预先确定的类别分类用于执行预测的块方法的概念图。

具体实施方式

[0027] 虽然可以进行各种改进和示例实施例,在此处将参考伴随的附图更加充分地描述仅特定的示例实施例。但是,本发明不应被认为仅局限于在此处阐述的示例实施例,而是应被理解为覆盖落在本发明的范围和技术术语内的所有改进、等效或者替换。贯穿整个附图,相同的数字涉及相同的元件。
[0028] 应该理解,虽然在此处可以使用术语第一、第二等以描述各种元件,这些元件不应受这些术语的限制。这些术语仅用于将一个单元与另一个单元区别开来。例如,在不脱离本发明的教导的情况下,第一元件可以称为第二元件,并且类似地,第二元件可以被称为第一元件。术语“和/或”包括多个相关联的列出的项目的组合或者多个相关联的列出的项目的任何一个。
[0029] 应该理解,当特征或者元件被提到“连接”或者“耦合”到另一个特征或者元件的时候,其可以直接连接或者耦合到另一个元件,或者可以存在介入元件。相比之下,当特征或者元件被提到“直接连接”或者“直接耦合”到另一个元件的时候,应该理解,不存在介入元件。
[0030] 在此处使用的术语仅仅是为了描述特定的实施例的目的,并且不意欲限制本发明示例实施例。单数形式“一”、“一”和“该”意欲同样也包括复数形式,除非上下文清楚地另外表示。应该理解,在此处使用术语“包括”或者“包含”时,指定存在陈述的特征、整数、步骤、操作、元件、部件或者其任何组合,但是,不排除存在或者增加一个或多个其它的特征、整数、步骤、操作、元件、部件或者其任何组合。
[0031] 在下文中将参考伴随的附图详细描述本发明。在下文中,贯穿整个附图,相同的附图标记指相同的部分,并且相同的部分的重复解释将被省去。
[0032] 图1是图示视频编码器的本发明示例性实施例。
[0033] 参考图1,视频编码装置100可以包括图片分割模块105、预测模块110、变换模块115、量化模块120、重新排序模块125、熵编码模块130、逆量化模块135、逆变换模块140、滤波器模块145和存储器155。
[0034] 在图1中示出的每个元件被独立地图示,以便在视频编码器中提供不同的功能特征,并且不意欲指的是每个元件是单独的硬件或者软件部件单元。即,为了说明性的目的,每个元件被列出为各自的元件,并且在各自的元件之中的至少两个元件可以组合为一个元件,或者一个元件可以被分割为多个元件以执行功能,并且如果实施例不脱离本发明的精神和范围的要点,则各自的元件被组合或者分割的实施例包括在本发明的权利要求范围中。
[0035] 图片分割模块105可以将输入图像分割为至少一个处理模块。在这里,处理模块可以是预测单元(PU)、变换单元(TU)和编译单元(CU)。图片分割模块105可以将一个图片分割为多个编译单元、预测单元和变换单元,并且可以基于预先确定的准则(例如,成本函数)选择编译单元、预测单元和变换单元的一个组合来编码图片。
[0036] 例如,一个图片可以被分割为多个编译单元。为了分割编译单元,可以使用递归的树形结构,诸如四叉树结构。通过将图片或者最大尺寸的编译单元用作根,可以将被分割为其它的编译单元的编译单元分割为与所分割的编译单元的数目一样多的子节点。没有按照特定约束进一步分割的编译单元变为叶节点。换句话说,当假设对于一个编码单元仅正方形的分割是可用的时,一个编译单元可以被分割为最多四个不同的编译单元。
[0037] 在下文中,在本发明示例性实施例中,编译单元的含义可用于不仅涉及用于编码的单元,而且涉及用于解码的单元。
[0038] 预测单元可以被分割为具有在一个编译单元内相同的尺寸的正方形或者矩形的至少一个的形式。
[0039] 预测单元可以被分割为具有在一个编译单元内相同的尺寸的正方形或者矩形的至少一个的形式,或者可以被分割为使得在一个编译单元内分割的预测单元之中,一个预测单元的形状与另一个预测单元的形状不同的形式。
[0040] 当基于编译单元产生用于执行内预测的预测单元的时候,当编译单元不是最小编码单元时,无需将编译单元分割为多个预测单元(N×N)可以执行内预测。
[0041] 预测模块110可以包括用于执行间预测的间预测模块,和用于执行内预测的内预测模块。相对于预测模块,可以确定是否使用间预测,或者是否执行内预测,并且可以按照每个预测方法确定特定的信息(例如,内预测模式、运动矢量、参考图片等)。在这里,用于执行预测的处理模块和用于确定预测方法的处理模块以及特定的细节可以不同。例如,可以在预测单元中确定预测方法和预测模式,并且可以在变换单元中执行预测。在产生的预测模块和初始模块之间的残留值(例如,残留模块)可以被输入到变换模块115。此外,用于预测的预测模式信息和运动矢量信息可以在熵编码模块130中与残留值一起被编码以发送给解码器。当使用特定的编码模式的时候,可以不经由预测模块110产生预测模块,而是原始块被按照原样编码以被发送给解码器。
[0042] 间预测模块可以基于在当前图片的之前图片或者之后图片之间的至少一个图片的信息预测预测单元。间预测模块可以包括参考图片内插模块、运动预测模块和运动补偿模块。
[0043] 参考图片内插模块可以提供有来自存储器155的参考图片信息,并且可以从参考图片产生小于整数像素的像素信息。在亮度像素的情况下,具有各种滤波器系数的基于DCT的8抽头内插滤波器可用于产生小于以1/4像素为单位的整数像素的像素信息。在色度像素的情况下,具有各种滤波器系数的基于DCT的4抽头内插滤波器可用于产生小于以1/8像素为单位的整数像素的像素信息。
[0044] 运动预测模块可以基于由参考图片内插模块插入的参考图片执行运动预测。对于获得运动矢量的方法,可以使用诸如FBMA(基于完全搜索的块匹配算法)、TSS(三步搜索),或者NTS(新三步搜索算法)的各种方法。运动矢量可以基于插入的像素具有以1/2或者1/4像素为单位的运动矢量值。运动预测模块可以通过变化运动预测方法来预测当前预测单元。对于运动预测方法,可以使用诸如跳跃方法、合并方法,或者高级运动矢量预测(AMVP)方法的各种方法。
[0045] 间预测模块可以基于接近当前块的参考像素信息(其是有关在当前图片内像素的信息)产生预测单元。如果当前预测单元的邻近模块是在其上执行间预测的块,使得参考像素是在其上执行间预测的像素,则包括在其上执行间预测的块中的参考像素可以替换在其上执行内预测的邻近块的参考信息。换句话说,当参考像素是不可用的时候,至少一个不可用的参考像素可以由至少一个可用的参考像素替换。
[0046] 在内预测中,当执行预测的时候,预测模式可以具有按照预测方向使用参考像素信息的方向性预测模式和不使用方向性信息的非方向性的模式。用于预测亮度信息的模式和用于预测色度信息的模式可以不同,并且预测亮度像素的内预测模式信息和预测亮度信号信息可以用于预测色度像素。
[0047] 当预测单元的尺寸和变换单元的尺寸相同时,基于存在于预测单元的左侧的像素、存在于其左侧上部的像素,和存在于其上部的像素执行内预测。但是,当预测单元的尺寸和变换单元的尺寸不同时,基于参考像素执行内预测,该参考像素基于变换单元。此外,仅最小预测单元可以使用其中使用N×N分割的内预测。
[0048] 当执行内预测和间预测的时候,预测可以基于编译单元执行,而不是执行预测的预测单元。此外,在执行内预测的情况下和在执行间预测的情况下,可以不同地设置用于执行预测的最大编码单元的尺寸。此外,用于执行间预测和内预测的块组合可以被不同地设置以执行预测,使得用于分割的预测单元的形状可以相互不同。
[0049] 在内预测方法中,按照预测模式,自适应的内部平滑(AIS)滤波器可以适用于参考像素以产生预测块。一种适用于参考像素的AIS滤波器可以是不同的。为了执行内预测方法,可以从预测单元(其存在于当前预测单元的周围)的内预测模式中预测当前预测单元的内预测模式。当通过使用从邻近的预测单元预测的模式信息预测当前预测单元的预测模式的时候,如果当前预测单元和邻近的预测单元的内预测模式相同,则当前预测单元和邻近预测单元的预测模式相同的信息可以使用预先确定的标记信息发送,并且如果当前预测单元和邻近预测单元的预测模式不同,则可以执行熵编码以编码当前块的预测模式信息。
[0050] 此外,残留块包括残留值信息,该残留值信息是在其上执行预测的预测单元和预测单元的原始模块之间的差值。所产生的残留块可以被输入到变换模块115。变换模块115可以通过使用诸如离散余弦变换(DCT)或者离散正弦变换(DST)的变换方法,经由原始块和在预测模块110中产生的预测单元,以预测单元为单位来变换包括残留值信息的残留块。可以基于用于产生残留块的预测单元的内预测模式信息确定是适用DCT还是适用于DST,以变换残留块。
[0051] 当执行变换的时候,变换可以基于编译单元,不是变换单元执行。量化模块120可以在变换模块115中量化在频率域中变换的值。取决于图像的重要性或者块,可以变化量化系数。可以将由量化模块120获得的值提供给去量化模块135和重新排序模块125。
[0052] 重新排序模块125相对于量化的残留值可以重新排序系数值。
[0053] 重新排序模块125可以经由系数扫描方法将二维块形式的系数修改为一维矢量的形式。例如,在重新排序模块125中,通过使用折线扫描方法可以从DC系数到在高频域中的系数扫描以变换为一维矢量形式。按照变换单元的尺寸和内预测模式,可以使用在列方向以块形式扫描二维系数的垂直扫描方法,和在行方向以块形式扫描二维系数的平扫描方法,代替折线扫描方法。换句话说,可以确定按照变换单元的尺寸和内预测模式来使用在折线扫描、垂直方向扫描和水平方向扫描之中的扫描方法。
[0054] 熵编码模块130基于由重新排序模块125获得的值执行熵编码。熵编码可以使用诸如例如指数哥伦布(exponential Golomb)、上下文自适应的可变长度编译(CAVLC),和上下文自适应的二进制运算编译(CABAC)的各种编码方法。
[0055] 熵编码模块130可以编码各种信息,诸如,来自重新排序模块125和预测模块110的以编码为单位的残留值信息、块类型信息、预测模式信息、分割单元信息、预测单元信息、传输单元信息、运动矢量信息、参考信息、块内插单元,和滤波信息。
[0056] 熵编码模块130可以在从重新排序模块125输入的编译单元中对系数值执行熵编码。
[0057] 可以将诸如用于执行熵编码的可变长度编码表的表存储在熵编码模块130中,并且熵编码可以通过使用存储的可变长度编码表执行。在执行熵编码时,使用计数器的方法或者对于在表中包括的代码字的一部分的直接交换方法可用于相对于相应的信息的代码编号改变代码字分配。例如,在映射代码编号与代码字的表中,在被分配具有较低比特数的代码字的若干较高的代码编号的情形下,可以通过使用计数器自适应地改变映射代码字与代码编号的表的映射顺序,使得较短长度的代码字被分配给具有较大计数总和的代码编号。当计数器的计数总和达到预先确定的阈值的时候,在计数器中记录的计数总和被二等分,并且计数器再次执行计数。
[0058] 相对于在不执行计数的表内的代码编号,可以使用直接交换方法,以使得当产生对应于代码编号的信息的时候,通过与紧接着以上代码编号交换其位置的方法减少分配给相应的代码编号的比特数,从而执行熵编码。
[0059] 去量化模块135和逆变换模块140去量化由量化模块120量化的值,和逆变换由变换模块115变换的值。在去量化模块135和逆变换模块140中产生的残留值可以与经由运动估算模块145、包括在预测模块110中的运动补偿模块和内预测模块预测的预测单元结合以产生重建的块。
[0060] 滤波器模块145可以包括去块滤波器、偏移校正模块和自适应循环滤波器(ALF)的至少一个。
[0061] 去块滤波器可以除去在重建的图片中由于在模块之间的边界产生的块失真。为了确定是否去执行去块,可以基于在块中包含的若干列或者行中包含的像素确定是否将去块滤波器适用于当前块。当将去块滤波器适用于该块时,可以根据需要的去块滤波强度适用强的滤波或者弱的滤波。此外,在适用去块滤波器时,当执行垂直滤波和水平滤波的时候,水平方向滤波和垂直方向滤波可以并行处理。
[0062] 相对于在其上执行去块的视频,偏移校正模块可以基于像素单元根据原始视频校正偏移。为了相对于特定的图片执行偏移校正,包括在该视频中的像素可以被分割为预先确定数目的区域,并且确定在其上执行偏移的区域,以及可以使用将偏移适用于相应的区域的方法,或者通过考虑每个像素的边缘信息适用该偏移的方法。
[0063] 自适应循环滤波器(ALF)可以基于比较滤波的重建图像和原始图像的值执行滤波。在将包括在图像中的像素分割为预先确定的组之后,可以确定适用于相应的组的一个滤波器以对每个组区别地执行。可以在编译单元(CU)中发送有关是否适用ALF的信息,并且适用的ALF的尺寸和系数可以按照每个模块不同。ALF可以具有各种形状,并且包括在其中的系数的数目可以按照滤波器不同。与ALF的滤波相关的信息(滤波系数信息、ALF开/关信息、滤波器形式信息)可以被包括在预先确定的参数集中以比特流被发送。
[0064] 存储器155可以存储经由滤波器模块145获得的重建的块或者图片,并且当执行间预测的时候,可以将存储的重建模块或者图片提供给预测模块110。
[0065] 图2是图示视频解码器的本发明的另一个示例性实施例。
[0066] 参考图2,视频解码器200可以包括熵解码模块210、重新排序模块215、去量化模块220、逆变换模块225、预测模块230、滤波器模块235和存储器245。
[0067] 当视频比特流被从视频编码器输入的时候,输入的比特流可以以与视频编码器相反的顺序解码。
[0068] 熵解码模块210可以以在视频编码器的熵编码模块中执行熵编码相反的顺序执行熵解码。例如,用于在视频编码器中执行熵解码的VLC表可以在执行熵解码的熵解码模块中在相同的可变长度编码表中实现。可以将在由熵解码模块210解码的信息之中用于产生预测块的信息提供给预测模块230,并且可以将用于在熵解码模块中执行熵解码的残留值输入给重新排序模块215。
[0069] 类似于熵编码模块,熵解码模块210可以通过使用计数器或者直接交换方法变换代码字分配表,并且可以基于变换的代码字分配表执行熵解码。
[0070] 与由编码器执行的内预测和间预测相关的信息可以被解码。如上所述,当在视频编码器中存在对执行内预测和间预测的预先确定的限制的时候,基于这样的限制,可以通过执行熵解码提供与当前块的内预测和间预测相关的信息。
[0071] 重新排序模块215可以基于编码器的重新排序方法执行比特流的重新排序,该比特流由熵解码模块210熵解码。以一维矢量形式表示的系数可以再次以二维模块形式重建和重新排序。该重新排序模块可以提供有与由编码器执行的系数扫描相关的信息,并且可以基于由相应的编码器执行的扫描顺序经由反扫描的方法执行重新排序。
[0072] 去量化模块220可以基于从编码器提供的重新排序的块的系数值和量化的参数执行重新量化。
[0073] 逆变换模块225可以相对于由视频编码器执行的量化结果对于由变换模块执行的DCT和DST执行逆DCT和逆DST。该逆变换可以基于由视频编码器确定的传输模块执行。在视频编码器的变换模块中,DCT和DST可以按照多个信息,诸如预测方法、当前模块的尺寸和预测方向有选择地执行,并且视频解码器的逆变换模块225可以基于在视频编码器的变换模块中执行的变换信息执行逆变换。
[0074] 当执行变换的时候,该变换可以基于编译单元,不是变换单元执行。预测模块230可以基于与产生从熵解码模块210提供的预测块相关的信息,和从存储器215提供的预先解码的块或者图片的信息产生预测模块。
[0075] 如上所述,类似于视频编码器的操作,当预测单元的尺寸和变换单元的尺寸相同的时候,可以基于存在于预测单元的左侧的像素、存在于其左侧上部的像素,和存在于其上部的像素执行内预测,但是,当执行内预测的时候,在预测单元的尺寸和变换单元的尺寸不同的情形下,可以基于变换单元通过使用参考像素执行内预测。此外,可以使用仅相对于最小预测单元使用N×N分割的内预测。
[0076] 当执行内预测和间预测的时候,该预测可以基于编译单元,不是预测单元执行。此外,在执行内预测的情况下,和在执行间预测的情况下,该预测可以通过不同地设置用于执行预测的最大编码单元的尺寸来执行。此外,该预测可以通过不同地设置用于执行内预测的块的组合来执行,从而区别用于分割的预测单元的形状。预测模块230可以包括预测单元确定模块、间预测模块和内预测模块。预测单元确定模块可以接收诸如预测单元信息、内预测方法的预测模式信息和从熵解码器输入的间预测方法的运动预测相关信息的各种信息。预测模块230区分当前编译单元的预测单元,并且确定预测单元执行间预测还是内预测。间预测模块可以通过使用用于由视频编码器提供的当前预测单元的间预测需要的信息,基于包括在当前图片(包括当前预测单元)的之前图片或者之后图片之间的至少一个图片中的信息,相对于当前预测单元执行间预测。
[0077] 为了执行间预测,可以基于编译单元确定包括在相应的编译单元中的预测单元的运动预测方法是跳跃模式、合并模式还是AMVP模式。
[0078] 内预测模块可以基于在当前图片内的像素信息产生预测模块。当预测单元是用于执行内预测的预测单元的时候,内预测可以基于由视频编码器提供的预测单元的内预测模式信息执行。内预测模块可以包括AIS滤波器、参考像素内插模块和DC滤波器。AIS滤波器是用于对当前模块的参考像素执行滤波的部分,并且是否适用滤波器可以按照当前预测单元的预测模式确定和适用。AIS滤波可以通过使用预测单元的预测模式和由视频编码器提供的AIS滤波器信息对当前块的参考像素执行。当当前模块的预测模式是不执行AIS滤波的模式的时候,AIS滤波器可以不必适用于当前模块。
[0079] 基于插入的参考像素的像素值,当预测单元的预测模式是用于执行内预测的预测单元的时候,该参考像素内插模块可以通过插入参考像素,产生以小于一个整数值的像素为单位的参考像素。当当前预测单元的预测模式是无需插入该参考像素产生预测模块的预测模式的时候,可以不必插入参考像素。如果当前模块的预测模式是DC模式,则DC滤波器可以经由滤波产生预测模块。
[0080] 可以将该重建的块或者图片提供给滤波器模块235。滤波器模块235可以包括去块滤波器、偏移校正模块、ALF。
[0081] 有关去块滤波器是否适用于相应的块或者图片的信息,和有关是适用强的滤波器还是弱的滤波器的信息可以从视频编码器提供。视频解码器的去块滤波器可以提供有来自视频编码器的有关去块滤波器的信息,并且在视频解码器中执行用于相应的块的去块滤波。类似于视频编码器,首先执行垂直去块滤波和水平去块滤波,而在重叠区中可以执行垂直去块和水平去块的至少一个。在垂直去块滤波和水平去块滤波的重叠区中,可以执行未预先执行的垂直去块滤波或者水平去块滤波。经由该去块滤波处理,去块滤波的并行处理是可能的。
[0082] 偏移校正模块可以基于适用于图像的偏移校正的类型和偏移值信息对重建的图像执行偏移校正。
[0083] ALF可以在执行滤波之后基于重建图像和原始图像的比较的值执行滤波。基于有关是否适用ALF的信息、有关从编码器提供的ALF系数的信息,可以将ALF适用于编译单元。ALF信息可以被包括在要提供的特定的参数集中。
[0084] 存储器245可以存储重建的图片或者块以用作参考图片或者参考块,并且可以将重建的图片提供给输出单元。
[0085] 在下文中,在为了说明性目的的示例性实施例中,虽然编译单元用于指编译的单元,但编译单元可以是不仅用于执行编码,而且用于执行解码的单元。
[0086] 图3是图示产生当执行内预测的时候使用的参考像素方法的本发明的另一个示例性实施例。
[0087] 参考图3,当执行内预测的时候,如果在当前模块的左侧上部上的像素位置定义为(xB,yB),参考像素可以是(xB-1,yB-1),(xB-1+x,yB-1),和(xB-1,yB-1+y)处的像素(在这里,x是从0到2nS-1范围的整数,y是从0到2nS-1范围的整数)。
[0088] 如果预测单元位于条带的边界上,并且因此,参考像素不存在,或者执行约束内预测(CIP),并且参考像素在内预测中是不可用的,例如,当前预测单元的参考像素通过间预测来预测的情形,相应的参考像素的值可以被改变为可用于内预测的其它的参考像素的值。
[0089] 不可用的参考像素可以经由可用的邻近参考像素的值,或者可用的邻近参考像素的平均值获得。例如,如果位于当前预测单元的上部的块执行间预测,从而参考像素是不可用的,则在左侧中的可用的参考像素300和在右侧中的可用的参考像素305用于替换不可用的像素值。在左侧中可用的参考像素300的像素值和在右侧中可用的参考像素305的像素值的平均值可以替换不可用的像素值。
[0090] 在另一个例子中,当在不可用的参考像素的值周围仅存在一个可用的参考像素310的时候,可用的参考像素310可以用作不可用的参考像素的替换的像素值来执行内预测。
[0091] 在下文中,在本发明的一个示例性实施例中,为了说明性的目的,假设每个参考像素的像素值是可用的。但是,本发明的权利要求范围不必然地局限于每个参考像素是可用的,而是,对于内预测不可用的参考像素经由如上的附加参考像素产生过程,可以作为可用于内预测的参考像素。
[0092] 图4是图示块的分割结构的本发明的另一个示例性实施例。
[0093] 参考图4,一个编译单元可以被分割为编译单元、预测单元和变换单元的至少一个。例如,第一编译单元400可以通过使用四叉树结构分割为多个第二编译单元410。该分割的第二编译单元410可以被分割为多个预测单元420,并且在多个分割的预测单元420之中的一个预测单元可以再次被分割为多个变换单元430。
[0094] 在预测单元中执行内预测或者间预测,并且当对于预测单元执行内预测的时候,用于执行内预测的参考像素信息可以按照预测单元是被分割为一个变换单元还是被分割为多个变换单元来变化。
[0095] 图5是图示用于预测单元的参考像素的本发明的另一个示例性实施例。
[0096] 参考图5,如果当执行内预测的时候,预测单元的尺寸和变换单元的尺寸相同,则可以基于存在于预测单元的左侧的像素、存在于其左侧上部的像素,和存在于其上部的像素在预测单元上执行内预测。如在图3中描述的,不可用的参考像素可以基于可用的参考像素的像素值替换。按照该预测模式,在图5的上半部分中示出参考像素的范围。但是,用于预测的参考像素的范围可以扩展如图5的下半部分所示。换句话说,参考像素的范围可以按照预测模式变化,并且在下文中,在本发明的示例性实施例中,假设使用在图5的下半部分中示出的参考像素。
[0097] 图6是图示参考像素的本发明的另一个示例性实施例。
[0098] 参考图6,当执行内预测的时候,如果预测单元的尺寸和变换单元的尺寸不同,则基于变换单元的参考像素可用于执行内预测。
[0099] 一个预测单元600被分割为多个变换单元605、610、615、620,并且基于按照分割的变换单元605、610、615、620的参考像素可以执行内预测。例如,变换单元620可以基于存在于变换单元620的左侧的参考像素、存在于其左侧上部的参考像素,和存在于其上部的参考像素的像素值对变换单元执行内预测。
[0100] 当一个预测单元600被分割为多个变换单元605、610、615、620的时候,预测的顺序可以是通过使用Z扫描顺序的变换单元605、变换单元610、变换单元615,和变换单元620的顺序。从而执行内预测。
[0101] 图7是图示内预测方法的本发明的另一个示例性实施例。
[0102] 参考图7,可以假设一个预测单元可以执行内预测,并且可以被分割为多个变换单元,并且可以基于Z扫描顺序相对于多个变换单元执行内预测。如上所述,每个变换单元可以具有相同的预测模式和不同的参考像素信息以执行内预测。
[0103] 第一变换单元700(在Z扫描顺序中的第一个)基于存在于第一变换单元700的左侧的参考像素、存在于其左侧上部的参考像素,和存在于其上部的参考像素的像素值执行内预测。当通过对第一变换单元700执行内预测来重建第一变换单元700的时候,包括在第一变换单元700的重建模块中的像素值可以用作对第二变换单元710执行内预测的参考像素。以相同的方式,包括在基于对第一变换单元700和第二变换单元710执行内预测的结果产生的重建块中的参考像素可以用作对第三变换单元720执行内预测的第三变换单元720的参考像素。第四变换单元730是用于在Z扫描顺序中最后执行内预测的变换单元,并且可以基于包括在基于对第一变换单元700、第二变换单元710和第三变换单元720执行内预测的结果产生的重建块中的参考像素执行内预测。
[0104] 在按照本发明的一个示例性实施例的内预测方法中,只要不脱离本发明的精神和范围,变换单元可以通过各种扫描方法扫描。
[0105] 图8是图示内预测方法的本发明的另一个示例性实施例。
[0106] 参考图8,当通过使用短距离内预测(SDIP;在下文中,该术语“短距离内预测”用于指与SDIP相同的含义)执行内预测的时候,一个预测单元可以被分割为一个变换单元800,或者多个变换单元810、820、830、840。
[0107] 例如,当使用如4×16、16×4、2×8或者8×2的预测单元,以便执行变换的时候,具有与一个预测单元(4×16、16×4、2×8或者8×2)相同的尺寸的块可以是用于执行该变换的变换单元。对于另一个例子,当预测单元的尺寸是4×16或者16×4的时候,预测单元可以被分割为4×4尺寸的变换单元,并且当预测单元的尺寸是2×8或者8×2以执行变换的时候,预测单元被分割为多个2×2尺寸的变换单元。
[0108] 当一个预测单元被用作变换单元,以便在内预测中使用短距离内预测执行变换的时候,可以通过使用如在图3中描述的预测单元的邻近参考像素对预测单元执行内预测。
[0109] 在短距离内预测中,变换单元可以是基于变换单元的邻近像素信息的内预测的单元。
[0110] 图9是图示使用短距离内预测方法的内预测的本发明的另一个示例性实施例。
[0111] 参考图9,可以基于存在于第一变换单元900的左侧的参考像素、存在于其左侧上部的参考像素,和存在于其上部的参考像素的像素值对变换单元执行内预测。第二变换单元910的内预测可以通过使用包括在基于对第一变换单元900执行内预测的结果产生的重建模块中的像素信息作为第二变换单元910的上部参考像素执行。可以基于存在于第二变换单元910的左侧的参考像素、存在于其左侧上部的参考像素,和存在于其上部的参考像素的像素值对第二变换单元910执行内预测,并且可以基于对第二变换单元910执行内预测的结果产生的重建模块,以与对第二变换单元910执行内预测的方法相同的方式对第三变换单元920执行内预测。第四变换单元930可以基于对第三变换单元920执行内预测的结果执行内预测。
[0112] 图10是图示内预测方法的本发明的另一个示例性实施例。
[0113] 参考图10,为了执行内预测,确定预测单元是否被分割为多个变换单元(步骤S1000)。
[0114] 如上所述,按照预测单元是被分割为一个变换单元,还是被分割为多个变换单元,用于执行内预测的参考像素可以是不同的。当前预测单元是否被分割为多个变换单元是通过使用指示当前预测单元是否被分割为多个变换单元的分割信息指示标记确定的。
[0115] 当预测单元具有不能被分割为另外的变换单元的特定尺寸的时候,确定预测单元是否被分割为变换单元的步骤可以被省略。
[0116] 当预测单元没有被分割为多个变换单元的时候,可以基于预测单元的邻近参考像素执行内预测(步骤S1010)。
[0117] 如图5所示,当预测单元的尺寸和变换单元的尺寸是相同的时候,可以基于存在接近当前预测单元的参考像素信息对预测单元执行内预测。
[0118] 当预测单元被分割为多个变换单元的时候,可以基于变换单元的邻近参考像素执行内预测(步骤S1020)。
[0119] 当预测单元是多个的时候,如上在图7或者图9中所述,通过使用每变换单元不同的参考像素信息以预先确定的扫描顺序可以执行内预测。当每变换单元执行内预测的时候,以以前执行内预测的顺序执行内预测的变换单元的重建的像素信息可以在变换单元中用作执行接下来内预测的参考像素信息。
[0120] 为了使解码器执行内预测,可以输入与内预测相关的各种信息,诸如指示预测单元位于该图片中的位置信息、预测单元的尺寸信息、与预测单元是否被分割为多个变换单元相关的信息、预测单元的内预测模式信息、有关是否预测单元的内预测相对于亮度信息或者色度信息执行的信息。与预测单元是否被分割为多个变换单元相关的信息可以基于诸如,用于确定预测单元是否被分割为变换单元的变换单元分割标记信息(例如,split_transform_flag)的信息获得。
[0121] 例如,如果变换单元分割标记信息是1,则预测单元可以被分割为多个变换单元,变换单元(log2TrafoSize)的尺寸可以减少一半,并且变换深度(trafoDepth)可以增加1。每个分割变换单元可以基于相同的内预测模式信息执行内预测。
[0122] 如图8所示,如果当前预测单元被分割为多个变换单元,并且当前预测单元具有使用短距离内预测方法的长方形形状,则每个变换单元可以基于变换单元分割标记信息被分割为多个正方形,并且每个变换单元可以基于相同的内预测模式通过使用每个变换单元的邻近参考像素信息执行内预测,从而产生预测块。
[0123] 变换单元分割标记信息是表示预测单元是否被分割为多个变换单元的信息,并且只要不脱离本发明的精神和范围,在另一个标记信息中有可能表示预测单元是否被分割为多个变换单元。
[0124] 图11是图示分割编译单元的方法的本发明的另一个示例性实施例。
[0125] 参考图11,当按照编译单元的尺寸执行内预测的时候,多个分割是可能的。
[0126] 图11的左侧示出被分割为编译单元的块组合,并且图11的右侧示出可以被分割为预测单元的编译单元的块组合。为了说明性的目的,仅示意地示出特定的尺寸的编译单元。
[0127] 相对于16×16尺寸的编译单元产生预测单元的方法首先包括通过使用16×16尺寸(其与编译单元是相同的尺寸)的预测单元执行内预测的方法,和通过分割为多个8×8尺寸的预测单元执行内预测的方法1100。
[0128] 接下来,各种方法,诸如,基于将16×16尺寸的编译单元分割为四个8×8尺寸的编译单元的块,通过使用与各自的编译单元的尺寸相同的预测单元执行内预测的方法,或者通过将位于左侧上部的编译块分割为多个预测单元以执行内预测的方法。
[0129] 现在参考图11,可以知道相对于16×16编译单元使用多个预测单元的预测的方法1100,和通过使用具有与编译单元相同尺寸的预测单元(2N×2N)分割编译单元为多个编译单元,并且相对于多个编译单元执行内预测的方法1110是具有相同预测单元的块。换句话说,除非其是最小的编译单元,并且如果编译单元被分割为执行内预测的N×N的预测单元,则相对于相同的预测单元,相同的分割过程使用两次。为了防止这样相同过程的不必要的重复,仅当编译单元具有最小编译单元尺寸时,编译单元可以在内预测中被分割为多个预测单元。
[0130] 可以在预先确定的参数组定义最小编译单元尺寸。例如,通过使用包括最小编译单元的尺寸信息的标记信息,和包括在最小的编译单元和最大的编译单元之间差值信息的标记信息,可以知道最小的编译单元的尺寸信息和最大的编译单元的尺寸信息。当基于在参数组中提供的编译单元的尺寸信息执行内预测的时候,使用N×N分割的预测可以仅在具有最小尺寸的编译单元中执行。当仅在具有最小尺寸的编译单元中使用N×N分割执行预测的时候,只有当编译单元的尺寸是最小尺寸时,可以编码和解码提供有关是否分割的信息的标记。用于内预测的编译单元的尺寸可以以如以下的表12至表16所示的各种语法元素定义。
[0131] 表1是按照本发明的示例性实施例指示按照编译单元的尺寸的内预测方法的语法。
[0132] 表1
[0133]预测单元(x0,y0,curPredUnitSize){

if(熵编译模式标记)
if(currCodingUnitSize==MinCodingUnitSize)
intra_split_flag
Combined_intra_pred_flag
if(currCodingUnitSize==MinCodingUnitSize){
for(i=0;i<(intra_split_flag?4:1);i++){
prev_intra_luma_pred_flag
if(!prev_intra_luma_pred_flag)
rem_intra_luma_pred_mode
}
else{
prev_intra_luma_pred_flag
if(!prev_intra_luma_pred_flag)
rem_intra_luma_pred_mode
}

[0134] 参考表1,指示当前编译单元的尺寸信息的语法元素(currCodingUnitSize;以下简称“当前编译单元尺寸信息”)可以与指示最小的编译单元尺寸信息的语法元素(MinCodingUnitSize;以下被称为“最小编译单元尺寸信息”)相比。如果当前编译单元尺寸信息和最小编译单元尺寸信息是相同的,则通过使用指示当前编译单元是否被分割为用于执行内预测的多个预测单元的信息intra_spilt_flag,和指示分割的预测单元的内预测模式信息的combined_intra_pred_flag,只有当当前编译单元的尺寸是最小编译单元尺寸时,可以确定当前编译单元是否被分割为多个预测单元。此外,通过区分编译单元尺寸信息和最小编译单元尺寸信息是相同的情形与两者是不相同的情形,可以推导出邻近预测单元的内预测模式信息。
[0135] 即,通过区分编译单元尺寸信息和最小编译单元尺寸信息是相同的情形与编译单元尺寸信息和最小编译单元尺寸信息是不相同的情形,当编译单元尺寸信息和最小编译单元尺寸信息是相同的时候,用于一个或者多个预测单元的内预测模式可以基于编译单元是否被分成多个预测单元的信息获得。当编译单元尺寸信息和最小编译单元尺寸信息是不相同的时候,无需确定编译单元是否被分割可以获得编译单元的预测模式信息。
[0136] 在按照本发明的示例性实施例的编译单元分割方法中,当前编译单元尺寸信息(currCodingUnitSize)与最小编译单元尺寸信息(MinCodingUnitSize)相比,并且当执行内预测的时候,不是最小编译单元的编译单元没有被分割为多个预测单元。但是,这仅是一个例子,并且只要它们不脱离本发明的精神和范围,编译单元分割方法可以以其它的语法结构和新的语法定义实现。此外,当编译单元被分割为多个预测单元的时候使用的intra_split_flag或者combined_intra_pred_flag是示例的标记信息,并且只要不脱离本发明的精神和范围,可以使用其它的标记信息或者以与其它的信息结合形式的标记。
[0137] 表2是按照本发明的示例性实施例指示按照编译单元尺寸的内预测方法的语法。
[0138] 表2
[0139]预测单元(x0,y0,curPredUnitSize){

if(熵编译模式标记)
if(currCodingUnitSize==8)
intra_split_flag
Combined_intra_pred_flag
if(currCodingUnitSize==8){
for(i=0;i<(intra_split_flag?4:1);i++){
Prev_intra_luma_pred_flag
if(!prev_intra_luma_pred_flag)
rem_intra_luma_pred_mode
}
Else{
Prev_intra_luma_pred_flag
if(!prev_intra_luma_pred_flag)
rem_intra_luma_pred_mode
}

[0140] 表2示出最小编译单元具有8×8尺寸的情形的语法结构。
[0141] 通过确定编译单元是否具有8×8的尺寸,可以获得指示8×8尺寸的编译单元是否被分割为多个变换单元的信息split_transform_flag,和指示分割的预测单元的内预测模式信息的combined_intra_pred_flag。此外,如上所述,通过区分编译单元尺寸信息和最小编译单元尺寸信息是相同的情形与两者是不相同的情形,可以推导出编译单元的内预测模式信息。
[0142] 在按照本发明的一个示例性实施例的编译单元分割方法中,当前编译单元尺寸信息(currCodingUnitSize)与最小编译单元尺寸信息(MinCodingUnitSize)相比,并且当执行内预测的时候,不是最小编译单元的编译单元没有被分割为多个预测单元。但是,这仅是示例,并且只要它们不脱离本发明的精神和范围,当编译单元大于最小编译单元尺寸的时候,没有将编译单元分割为多个预测单元的编译单元分割方法可以以其它的语法结构和新的语法定义实现。
[0143] 表3至表7是按照本发明的另一个示例性实施例指示按照编译单元尺寸的内预测方法的语法。
[0144] 表3至表7示出仅当在表1和表2中公开的编译单元是最小编译单元时,通过将编译单元分割为多个预测单元用于执行内预测的语法元素。
[0145] 首先,参考表3至表5,在编译树语法中,预先确定的语法元素可用于区分编译单元的尺寸是否是最小的,并且只有当编译单元不是最小编译单元尺寸时,可以提供有关编译单元是否被分割为多个预测单元的信息。表3
[0146]
[0147] 表4
[0148]
[0149] 表5
[0150]
[0151] 即,参考表3至表5,熵编码通过使用CAVLC(上下文自适应的可变长度编译)执行,并且在当前条带类型是I条带的情形下,可以解码cu_split_pred_part_mode,以使得可以解码当前编码单元的预测相关的信息。
[0152] cu_split_pred_part_mode是语法元素,其组合指示当前编译单元是否被分割的标记信息split_coding_unit_flag、指示是否当前编译单元通过使用跳跃模式执行内预测的标记信息skip_flag,指示是否当前编译单元通过使用合并模式执行间预测的标记信息merge_flag,指示当前编译单元是什么预测模式的信息PredMode,和指示当前编译单元的分割类型信息的信息PartMode,并且可以按照当前编译单元的尺寸通过使用表4或者表5的映射表显示当前编译单元的预测相关的信息。
[0153] 当按照本发明的一个示例性实施例使用cu_split_pred_part_mode的时候,确定编译单元是否是最小编译单元,并且如果编译单元的尺寸大于最小编译单元,则使用表4的方法,并且如果编译单元的尺寸是最小编译单元,则使用表5的方法,以使得只有当编译单元的尺寸是最小编译单元时,编译单元被分割为多个预测单元以执行内预测。换句话说,不同的索引值可用于定义编译单元的尺寸大于最小编译单元的情形,和编译单元的尺寸与最小编译单元相同的情形。
[0154] 参考表4,当编译单元的尺寸(log2CUSize)大于最小编译单元的尺寸(Log2MinCUSize)的时候,编译单元以任何cu_split_pred_part_mode被分割为多个预测单元,并且N×N没有被用于执行内预测的分割类型信息PartMode。
[0155] 参考表5,当编译单元的尺寸(log2CUSize)与最小编译单元的尺寸(Log2MinCUSize)相同,并且cu_split_pred_part_mode是5的时候,当通过使用用于分割类型信息PartMode的N×N执行内预测的时候,编译单元可以被分割为多个预测单元。
[0156] 如果使用表3至表5的条件不满足,则可以使用表6和表7,表6和表7是指示按照编译单元的尺寸执行内预测方法的语法。
[0157] 表6
[0158]coding_unit(x0,y0,log2CUSize){
if(entropy_coding_mode_flag&&slice_type!=I)
skip_flag[x0][y0]
if(skip_flag[x0][y0])
prediction_unit(x0,y0,log2CUSize,log2CUSize,0,0)
else{
if(!entropy_coding_mode_flag){
if(slice_type==I&&log2CUSize==Log2MinCUSize)
intra_part_mode
}elseif(slice_type!=I||log2CUSize==Log2MinCUSize)
pred_type

[0159] 参考表6,当CAVLC用于二进制编译方法的时候,条带类型是I条带,并且编译单元的尺寸是最小编译单元,使用intra_part_mode的语法元素。当CABAC(上下文自适应的二进制运算编译)用于二进制编译方法的时候,条带类型是P条带或者B条带,或者编译单元的尺寸是最小编译单元尺寸,只有当编译单元的尺寸是最小编译单元时,pred_type的语法元素用于执行N×N分割,从而将一个编译单元分割为多个预测单元。
[0160] intra_part_mode是指示当前编译单元是否被分割为2N×2N或者被分割为N×N的语法元素,并且如果当前编译单元的尺寸是最小的,则指示编译单元是否被分割为多个预测单元。
[0161] 表7在下面示出pred_type并且语法元素pred_type按照条带的类型包括可以分割指示标记IntraSplitFlag、预测模式信息PredMode,和分割模式信息PartMode。
[0162] 表7
[0163]
[0164] 在表7中,如果当前编译单元的尺寸大于最小编译单元的尺寸,则语法元素pred_type限制pred_type的值不是3或者5,以使得仅当当前编译单元的尺寸是最小编译单元尺寸时,在分割模式中可以使用N×N分割。而且,此外,如果条带类型是I条带并且编译单元的尺寸大于最小编译单元尺寸,则可以估计当前预测模式是内预测模式,分割类型是2N×2N,要使用的分割显示信息是0。
[0165] N×N没有被用于分割为多个预测单元以便执行内预测的分割类型信息PartMode。
[0166] 换句话说,如在表3至表7中描述的,基于指示编译单元是否被分割为多个预测单元的预先确定的语法元素,仅当编译单元的尺寸是最小编译单元时,当执行内预测的时候使用N×N分割,从而实现与在表1和表2中描述的相同的预测单元分割过程。在按照本发明的示例性实施例按照编译单元的尺寸执行内预测的方法中,可以存在各种实现方法,并且只要它们不脱离本发明的精神和范围,这样的各种实现方法被包括在本发明的权利要求范围中。
[0167] 表8至表10是按照本发明的另一个示例性实施例指示按照编译单元尺寸执行内预测方法的语法。
[0168] 用于执行内预测的最小编译单元的尺寸可以设置为4×4。由于用于内预测的预测单元的最小尺寸和用于变换的变换单元的最小尺寸是4×4,当用于执行内预测的编译单元的尺寸是4×4的时候,一个编译单元可以不必被分割为多个变换单元和预测单元,并且编译单元、变换单元和预测单元的尺寸是相同的。因此,如果当执行内预测的时候编译单元的尺寸是4×4,则与一个编译单元是否被分割为多个预测单元相关的预测单元分割信息,或者与一个编译单元是否被分割为多个变换单元相关的变换单元分割信息变为不必要的信息,以使得仅当用于执行内预测的编译单元不是4×4尺寸时,可能需要识别预测单元分割信息和变换单元分割信息。
[0169] 表8
[0170]
[0171] 参考表8,可以设置关于指示最小编译单元尺寸MinCodingUnitSize的信息、用于执行内预测的最小编译单元尺寸MinCodingUnitSize内,以及用于执行间预测的最小编码单元尺寸MinCodingUnitSize间。仅当当前编译单元的尺寸大于最小编译单元的尺寸时,有关编译单元是否被分割为多个编译单元的信息可以经由指示编译单元是否被分割为多个编译单元的信息split_coding_unit_flag提供。
[0172] 表9
[0173]prediction_unit(x0,y0,log2CUSize){

if(PredMode==MODE INTRA)

if(currCodingUnitSize!=4){
if(entropy_coding_mode_flag)
intra_split_flag
}
combined_intra_pred_flag
for(i=0;i<(intra_split_flag?4:1);i++){
prev_intra_luma_pred_flag
if(!pred_intra_luma_pred_flag)
rem_intra_luma_pred_mode
}
}

}
[0174] 参考表9,确定当前编译单元是否具有用于执行内预测的4×4的最小尺寸,并且仅当当前编译单元的尺寸不是4×4时,与当前编译单元是否被分割为多个预测单元相关的信息可以通过使用指示一个编译单元是否被分割为用于执行内预测的多个预测单元的信息intra_split_flag提供。
[0175] 表10
[0176]
[0177] 参考表10,确定当前编译单元是否具有用于执行内预测的4×4的最小尺寸,并且只有当当前编译单元的尺寸不是4×4时,可以提供与当前编译单元是否被分割为多个预测单元相关的信息。
[0178] 换句话说,当执行内预测时编译单元的最小尺寸被限制在4×4的时候,在编译单元具有4×4尺寸的情况下,可以获得有关当前编译模块执行预测的预测单元和变换的变换单元的信息,而无需获得指示是否分割一个编译单元为多个编译单元的信息split_coding_unit_flag、指示是否分割一个编译单元为多个预测单元的信息intra_split_flag、和指示是否分割一个编译单元为多个编译单元的信息split_transform_unit_flag。
[0179] 在按照本发明的示例性实施例确定编译单元尺寸的方法中,可以基于编译单元执行内预测和间预测。换句话说,可以不必在图片中单独地产生预测单元,并且分割的编译单元可以用作用于执行预测的单元,以确定在编译单元中是否执行间预测和内预测。当使用基于编译单元的预测方法的时候,如果基于长方形形状、而不是正方形形状的块执行预测(短距离内预测(SDIP)、不对称运动分割(AMP)等),可以经由发送附加分割信息的方法执行间预测和内预测。
[0180] 在按照本发明的示例性实施例的基于编译单元的预测方法中,当基于编译单元的分割执行预测的时候,用于执行内预测的块和用于执行间预测的块的尺寸可以是不同的。例如,经由区别能够执行间预测的最小编译单元和能够执行内预测的最小编译单元的尺寸的方法,可以提高整个编译效率。
[0181] 表11在下面示出不同地设置在内预测和间预测中使用的编译单元的最小尺寸的方法。
[0182] 表11
[0183]
[0184] 参考表11,通过将用于执行内预测的编译单元的尺寸设置为小于用于执行间预测的编译单元的尺寸的一个尺寸,当执行内预测的时候,该预测在比执行间预测的情形更小尺寸的编译单元中执行,从而改善整个视频质量。
[0185] 基于语法元素log2_min_coding_unit_size_minus3可以计算用于执行间预测的最小编译单元的尺寸,语法元素log2_min_coding_unit_size_minus3指示最小编译单元的尺寸信息,如在以下的公式1中,并且用于执行内预测的最小编译单元的尺寸可以被确定为小于最小编译单元尺寸的一个尺寸,如在以下公式1中。
[0186] 公式1
[0187] MinCodingUnitSizeInter=2(log2_min_coding_unit_minus3+3)
[0188] MinCodingUnitSizeIntra=2(log2_min_coding_unit_minus3+3-1)
[0189] 表12示出用于确定是否分割编译单元的语法。
[0190] 基于用于执行内预测的最小编译单元的尺寸和用于执行间预测的最小编译单元的尺寸,只有当编译单元不是最小编译单元时,确定当前编译单元是否将被分割的语法元素split_coding_unit_flag可以被确定。
[0191] 表12
[0192]
[0193] 表13是示出基于编译单元执行内预测的情形的语法。
[0194] 表13
[0195]prediction_unit(x0,y0,currPredUnitSize){

If(PredMode==MODE INTRA){

combined_intra_pred_flag
{
prev_intra_luma_pred_flag
If(!pred_intra_luma_pred_flag)
rem_intra_luma_pred_mode
}
}

}
[0196] 在表13中,其中执行内预测的编译单元没有被分割为预测单元,以使得相对于在其中执行内预测的编译单元,经由combined_intra_pred_flag可以获得编译单元的预测模式信息,而无需指示编译单元是否被分割为预测单元的语法元素intra_split_flag。
[0197] 在表11至表13中,在按照本发明的另一个示例性实施例基于编译单元的预测方法中,该编译单元用作用于如上所述执行预测单元的块以执行内预测和间预测,使得该方法可以降低编码和解码的复杂度,并且可以在需要低迟延的实施例中使用。
[0198] 在按照本发明的另一个示例性实施例设置变换单元尺寸的方法中,编码单元的尺寸和变换单元的尺寸可以设置为是相同的。经由均衡变换单元的尺寸和编译单元的尺寸的方法,可以以较低的复杂度执行编码和解码。
[0199] 以下的表14是示出编译单元的尺寸与变换单元的尺寸相同的情形的表。
[0200] 表14
[0201]编译单元的尺寸 变换单元的尺寸 split_transform_unit_flag
2N×2N 2N×2N 0
[0202] 参考表14,通过均衡编译单元和变换单元的尺寸,可以获得变换单元的尺寸信息,而无需split_transform_flag信息,该split_transform_flag信息指示变换单元的分割信息,基于编译单元的尺寸可以执行逆变换。
[0203] 例如,基于诸如cuDepth、cu_split_pred_part_mode、pred_type或者split_coding_unit_flag(其是指示编译单元是否被以如上所述的尺寸分割的语法元素)的语法元素信息,可以获得编译单元的尺寸信息和分割信息。此外,可以使用将分割编译单元作为变换单元使用的方法,而无需单独地定义变换单元。
[0204] 当编译单元和变换单元的尺寸被均衡的时候,可以在执行编码和解码时以较低的复杂度执行编码和解码。由于编译单元的尺寸和变换单元的尺寸是相同的,变换单元的尺寸不取决于预测单元的分割信息,并且可以独立地确定,可以不考虑预测单元从当前图片中获得变换单元分割信息。
[0205] 在按照本发明另一个示例性实施例确定编译单元尺寸的方法中,可以按照预测方法不同地设置用于执行预测的最大编译单元的尺寸。
[0206] 可以基于特定的参数集定义限制用于执行预测的最大编译单元尺寸的方法。
[0207] 以下的表15示出按照在序列参数集(SPS)中定义的预测方法的编译单元的尺寸。
[0208] 表15
[0209]
[0210] 参考表15,可以将指示在用于执行间预测的预测单元之中最大的编译单元的宽度的max_coding_unit_width_inter,指示在用于执行间预测的预测单元之中最大的编译单元的高度的max_coding_unit_height_inter,和指示在用于执行内预测的预测单元之中最大的编译单元的宽度的max_coding_unit_width_intra,以及指示在用于执行内预测的预测单元之中最大的编译单元的高度的max_coding_unit_height_intra定义为语法元素,以使得基于相应的值可以区别用于执行间预测的编译单元,和用于执行内预测的最大的编译单元的尺寸。
[0211] 在另一个方法中,通过使用如以下的表16的语法元素,可以定义用于执行每个预测的最大的编译单元的尺寸。
[0212] 表16
[0213]
[0214] 参考表16,类似于表15,指示用于执行间预测的最大的编译单元的宽度的语法元素可以被定义为max_coding_unit_width_inter,并且用于执行间预测的最大的编译单元的高度可以定义为max_coding_unit_height_inter。但是,与表15不同,基于指示在用于执行内预测的编译单元的宽度和用于执行间预测的编译单元的宽度之间的差值以便指示用于执行内预测的最大的编译单元的宽度的信息difference_between_inter_intra_width和指示在用于执行内预测的编译单元的高度和用于执行间预测的编译单元的高度之间的差值以便指示用于执行内预测的最大的编译单元高度的信息difference_between_inter_intra_height,可以指示用于执行内预测的编译单元的最大编译单元的宽度和最大编译单元的高度。
[0215] 可以如以下的公式2获得difference_between_inter_intra_width和difference_between_inter_intra_height。
[0216] 公式2
[0217] Max_coding_unit_width_intra=max_coding_unit_width_inter-difference_between_inter_intra_width
[0218] Max_coding_unit_height_intra=max_coding_unit_width_inter-difference_between_inter_intra_height
[0219] 在另一个方法中,通过使用如以下的表17的语法元素,可以定义用于执行每个预测的编译单元的尺寸。
[0220] 表17
[0221]
[0222] 参考表17,仅指示用于执行间预测的最大的编译单元的宽度的max_coding_unit_width_inter,和指示用于执行间预测的最大的编译单元的高度的max_coding_unit_height_inter可以在参数集中定义。
[0223] 指示在用于执行内预测的预测单元之中最大的编译单元的宽度的max_coding_unit_width_intra,和指示在用于执行内预测的预测单元之中的最大的编译单元的高度的max_coding_unit_height_intra可以从由以下的公式3定义的max_coding_unit_width_inter和max_coding_unit_height_inter中推导出。
[0224] 公式3
[0225] max_coding_unit_width_intra=max_coding_unit_width_inter>>1[0226] max_coding_unit_height_inra=max_coding_unit_height_inter>>1[0227] 在另一个方法中,通过使用如以下的表18的语法元素,可以定义用于执行每个预测的编译单元的尺寸。
[0228] 表18
[0229]
[0230] 参考表18,在定义最大的编译单元尺寸的max_coding_unit_size被定义之后,用于执行内预测和间预测的最大编译单元的宽度被定义为max_coding_unit_width,并且用于执行内预测和间预测的最大编译单元的高度被定义为max_coding_unit_height,由max_coding_unit_size设置的值可以用作max_coding_unit_width和max_coding_unit_height的值。换句话说,用于执行内预测和间预测的最大编译单元的尺寸可以被设置为是相同的。
[0231] 在另一个方法中,通过使用如以下的表19的语法元素,可以定义用于执行每个预测的编译单元的尺寸。
[0232] 表19
[0233]
[0234] 参考表19,基于指示最大的编译单元尺寸的max_coding_unit_size,和指示在用于执行间预测的最大的编译单元和用于执行内预测的最大的编译单元尺寸之间的差值的difference_between_inter_intra,在表15中定义的语法元素max_coding_unit_width_inter、max_coding_unit_height_inter、max_coding_unit_width_intra、max_coding_unit_height_intra可以通过以下的公式4获得。
[0235] 公式4
[0236] max_coding_unit_width_inter=max_coding_unit_size
[0237] max_coding_unit_height_inter=max_coding_unit_size
[0238] max_coding_unit_width_intra=max_coding_unit_width_inter-difference_between_inter_intra
[0239] max_coding_unit_height_intra=max_coding_unit_height_inter-difference_between_inter_intra
[0240] 在另一个方法中,通过使用如以下的表20的语法元素,可以定义用于执行每个预测的编译单元的尺寸。
[0241] 表20
[0242]
[0243] 基于指示最大的编译单元尺寸的语法元素的max_coding_unit_size,在表5中定义的语法元素max_coding_unit_width_inter、max_coding_unit_height_inter、max_coding_unit_width_intra、max_coding_unit_height_intra可以经由以下的公式5获得。
[0244] 公式5
[0245] max_coding_unit_width_inter=max_coding_unit_size
[0246] max_coding_unit_height_inter=max_coding_unit_size
[0247] max_coding_unit_width_intra=max_coding_unit_width_inter>>1[0248] max_coding_unit_height_intra=max_coding_unit_height_inter>>1[0249] 如同上述的表15和表20的示例实施例是用于获得与执行内预测的最大编译单元的宽度和高度相关的信息,和与执行间预测的最大编译单元的宽度和高度相关的信息的实施例,并且只要它们不脱离本发明的精神和范围,其它的实现方法和实施例是可能的。
[0250] 图12是图示用于执行内预测和间预测的块分割方法的本发明的另一个示例性实施例。
[0251] 参考图12,用于执行内预测的块可以使用与编译单元和预测单元1205(其将2N×2N的编译单元分割为N×N)相同的尺寸将2N×2N的编译单元分割为2N×2N的预测单元
1200。
[0252] 用于执行间预测的模块可以使用与编译单元相同的尺寸将2N×2N的编译单元分割为2N×2N的预测单元1210、将2N×2N的编译单元分割为N×N的预测单元1215、将2N×2N的编译单元分割为2N×N的预测单元1220,以及将2N×2N的编译单元分割为N×2N的预测单元1225。
[0253] 按照本发明的一个示例性实施例,可以按照块分割方法通过将内预测和间预测分类为预先确定的类别来执行预测。
[0254] 以下的表21按照分割预测单元类型将内预测方法分类为预先确定的类别。
[0255] 参考表21,用于执行内预测的块分割的类别可以被划分为类型1分割方法和类型2分割方法。
[0256] 表21
[0257]
[0258] 在类型1分割方法的情况下,内预测通过仅使用2N×2N块1200(其中编译单元的尺寸和预测单元的尺寸是相同的)执行,并且在类型2分割方法的情况下,内预测通过仅仅使用2N×2N的块1200(其中编译单元的尺寸和预测单元的尺寸是相同的)和N×N的块1205(其中具有2N×2N尺寸的编译单元被分割为具有N×N尺寸的四个分割单元)执行。
[0259] 在类型2分割方法中,当编译单元的尺寸具有如上所述的最小编译单元的时候,执行内预测的方法可以通过将2N×2N尺寸的编译单元分割为N×N尺寸的四个编译单元执行,并且最小编译单元的尺寸可以被设置为诸如,例如,128×128、64×64、32×32、16×16、8×8的各种尺寸。
[0260] 以下的表22按照分割的预测单元将内预测方法分类为预先确定的类别。
[0261] 参考表22,用于执行内预测的块分割的类别可以被划分为类型3分割方法和类型4分割方法。
[0262] 表22
[0263]
[0264] 类型3分割方法将2N×2N尺寸的编译单元分割为2N×2N的预测单元1210、2N×N的预测单元1220、N×2N的预测单元1225,并且类型4分割方法将2N×2N尺寸的编译单元分割为2N×2N的预测单元1210、2N×N的预测单元1215、N×2N的预测单元1220,和N×N的预测单元1225。
[0265] 在类型4分割方法中,只有当编译单元的尺寸是最小编译单元时,可以使用N×N尺寸1225的分割,并且最小的编译单元的尺寸可以如上所述不同地设置。
[0266] 当最小编译单元的尺寸是8×8的时候,在发送有关是否使用类型3分割方法(其不使用N×N分割),或者是否使用类型4分割方法(其使用N×N分割)信息的示例实施例中,可以使用标记信息设置,以使得当执行间预测的时候,可以不必执行N×N预测。例如,当最小编译单元的尺寸是8×8的时候防止4×4预测的标记disable_inter_4×4_flag,或者当最小编译单元的尺寸是8×8的时候可以使用防止4×4预测的标记inter_4×4_enabled_flag,以使得可以不必对4×4预测单元执行间预测。这样的标记信息可以在诸如SPS的预先确定的参数集中定义以被使用。以上的两个标记是具有相同功能的标记,并且因此,将相对于inter_4×4_enabled_flag进行示例性实施例的描述。
[0267] 在按照本发明的示例性实施例的间预测方法中,如果相对于8×8尺寸的最小编译单元,inter_4×4_enabled_flag是1,相对于8×8尺寸的编译块可以使用使用4×4尺寸的预测单元的内预测方法,并且当inter_4×4_enabled_flag是0,并且编译单元的尺寸是8×8的时候,相对于8×8尺寸的编译模块可以不必使用使用4×4尺寸的预测单元的内预测方法,以使得使用类型3的分割方法。在下文中,在本发明的示例性实施例中,当最小编译单元的尺寸是8×8的时候,允许将编译单元分割为4×4尺寸的多个预测块以执行间预测的标记allowInterN×N可以被重新定义,使得如果编译单元的尺寸大于8,或者inter_4×4_enabled_flag是1,则allowInterN×N被设置为真,并且如果编译单元的尺寸是8,而且inter_4×4_enabled_flag是0,则allowInterN×N被设置为假,从而实现类型3分割方法,或者类型4分割方法。
[0268] 以下的表23是当allowInterN×N的值是真的时候,定义cu_split_pred_part_mode的索引的表,cu_split_pred_part_mode的索引是包括分割信息的语法元素,并且以下的表24是当allowInterN×N的值是假的时候,定义cu_split_pred_pthert_mode的索引的表,cu_split_pred_pthert_mode的索引是包括分割信息的语法元素。
[0269] 表23
[0270]
[0271] 表24
[0272]
[0273] 参考表23和表24,在allowInterN×N的值是真的情形下,当cu_spilt_pred_part_mode的索引值是5的时候,在执行间预测时使用N×N块,但是,在allowInterN×N的值是假的情形下,当cu_spilt_pred_part_mode的索引值是5的时候,在执行间预测时不使用N×N块。换句话说,在allowInterN×N的值是真的情形下,使用类型3分割方法,并且在allowInterN×N的值是假的情形下,使用类型4分割方法。
[0274] 当如上所述执行间预测的时候,通过使用预先确定的标记区分用于执行预测的块的方法是示例实施例,并且只要其不脱离本发明的精神和范围,可以使用另一个方法,并且这样的方法也包括在本发明的权利要求范围中。例如,inter_4×4_enabled_flag是一个例子,其是指示在间预测中是否允许通过将4×4块用作预测单元进行间预测的标记,并且在最小编译单元尺寸不是8×8的情形下,指示最小编译单元是否可以被分割为多个预测单元的标记可以通过使用另一个标记信息来使用。
[0275] 在内预测的情况下,如表21所示,可以按照编译单元的尺寸与最小编译单元是否相同来确定是使用类型1分割还是类型2分割。本发明的示例实施例在下面示出类型1分割方法和类型2分割方法(其是用于执行内预测的块的分割类型),和类型3分割方法和类型4分割方法(其是用于执行间预测的块的分割类型)的组合。换句话说,可以以各种组合使用在表21和表22描述的内预测和间预测中使用的块分割的类别,以确定用于图片预测的块分割方法。
[0276] 相对于仅包括包含用于内预测的预测单元的编译单元的I条带,在使用类型1分割方法的情况下,和在类型2分割的情况下,与分割类型相关的信息可以通过使用如以下的表23的方法发送。
[0277] 表25
[0278]
[0279] 参考表25,当I条带使用类型1分割方法的时候,分割为预测单元的方法是一个,以使得该分割信息可以无需用于表示分割方法的附加比特表示。但是,当I条带使用类型2分割方法的时候,如果编译单元是最小编译单元,则2N×2N用作用于执行内预测的预测单元,但是,如果编译单元是最小编译单元,则特定的比特信息可用于表示分割类型,以便指示用于执行内预测的预测单元是2N×2N还是N×N。例如,如果编译单元是最小编译单元,并且用于执行内预测的预测单元的尺寸被设置为与编译单元(2N×2N)的尺寸相同,则0可用于表示当前编译单元的分割信息,并且当编译单元是最小编译单元,并且用于执行内预测的预测单元的尺寸被设置为编译单元(N×N)的四分之一尺寸的时候,则1可用于表示当前编译单元的分割信息。
[0280] 如上所述的二进制编译方法和用于表示预先确定的信息的二进比特是一个示例实施例,并且可以按照二进制编译方法变化,并且这样的改进被包括在本发明的权利要求范围中。
[0281] 在P条带或者B条带中,不是I条带,类型1分割方法和类型2分割方法的组合用于执行内预测,并且类型3分割方法和类型4分割方法的组合可用于执行间预测。
[0282] 表26是按照本发明的示例性实施例指示用于发送在使用内预测的编译单元中使用的预测单元和在使用间预测的编译单元中使用的预测单元的信息的信号比特的表。
[0283] 表26
[0284]
[0285] 参考表26,可以在内预测的情况下使用类型2分割,并且可以在间预测的情况下使用类型3分割。如上所述,可以通过使用如上所述的inter_4×4_enabled_flag表示当前间预测的分割信息。
[0286] 在编译单元使用内预测的情形下,信号是000,在特定的编译单元使用内预测,并且使用2N×2N预测单元的情形下,信号是1,并且在使用2N×N预测单元的情形下,信号是01,以及在使用N×2N预测单元的情形下,信号是001,并且经由这样的二进制码,可以不同地表示在当前编译单元中使用的预测单元。
[0287] 在解码器中,可以基于二进制编译信息提供在当前帧的编译单元中使用的预测方法和编译单元的分割方法信息。
[0288] 表27是按照本发明的再一个示例性实施例指示用于发送在使用内预测的编译单元中使用的预测单元,和在使用间预测的编译单元中使用的预测单元信息的信号比特的表。
[0289] 表27
[0290]
[0291] 参考表27,可以在内预测的情况下使用类型1分割,并且可以在间预测的情况下使用类型4分割。
[0292] 当前编译单元的分割信息可以通过在特定的编译单元以最小编译单元尺寸使用内预测的情形下使用0000,在特定的编译单元不是最小编译单元尺寸,并且使用内预测的情形下使用000,在使用2N×2N预测单元的情形下使用1,在使用2N×N预测单元的情形下使用01,在使用N×2N预测单元,并且N×N预测单元可以以最小编译单元尺寸使用的情形下使用001,以及在使用N×N预测单元的情形下使用0001表示。如上所述,当前间预测的分割信息可以通过使用inter_4×4_enabled_flag表示。
[0293] 类似地,在解码器中,可以基于二进制编译信息提供在当前帧的编译单元中使用的预测方法和编译单元的分割方法信息。
[0294] 如在表25和表27中,在对于内预测方法使用一个方法,和可以确定在内预测编译单元中是使用内预测还是间预测的情形下,可以不使用在内预测中用于指示使用的分割类型的二进制码。
[0295] 表28是按照本发明的示例性实施例指示用于发送在使用内预测的编译单元中使用的预测单元,和在使用间预测的编译单元中使用的预测单元信息的信号比特的表。
[0296] 表28
[0297]
[0298] 参考表28,可以在内预测的情况下使用类型2分割,并且可以在间预测的情况下使用类型3分割。
[0299] 当特定的编译单元使用内预测的时候,按照在类型2分割之中使用的、哪种分割方法,并且当前编译单元是是否最小编译单元,可以被不同地分配二进制码以编码当前编译单元如何被分割为预测单元。
[0300] 由于在内预测中编译单元不是最小编译单元的情形下仅使用2N×2N分割,并且在内预测中编译单元是最小编译的情形下使用N×N分割,所以在最小编译单元的情形下当前编译单元的分割方法信息可以通过不同地设置能够指示在执行内预测的编译单元中使用哪种分割方法的二进制编译比特来表示以表示当前编译单元的分割方法信息。
[0301] 在最小编译单元的情况下,可以区别二进制编译比特的分配,但是,如果可以预先确定编译单元的尺寸信息,则在执行2N×2N尺寸的分割的情况下,不考虑当前编译单元的尺寸是否是最小编译单元,可以分配相同的比特。
[0302] 此外,如上所述,可以预先确定当前编译单元是否是内预测,并且如果编译单元的尺寸大于最小编译单元,则分割信息可以不必被独立地二进制编译,并且只有当编译单元是最小编译单元,而且编译单元被分割为N×N时,可以发送基于特定的二进制码的二进制信息,从而表示用于当前编译单元的内预测的分割信息。
[0303] 由于当特定的编译单元用于间预测的时候使用类型3分割,以便指示使用在2N×2N、2N×N、N×N之中的哪种分割方法,以便在编译单元中执行间预测,可以使用如在表28中的二进制码。
[0304] 表29是按照本发明的示例性实施例指示用于发送在使用内预测的编译单元中使用的预测单元,和在使用间预测的编译单元中使用的预测单元的信息的信号比特的表。
[0305] 表29
[0306]
[0307] 参考表29,在内预测的情况下可以使用类型2分割,并且在间预测的情况下可以使用类型4分割。
[0308] 当特定的编译单元使用内预测的时候,可以按照是否使用在模式2分割之中的哪个分割方法,并且当前编译单元是否是最小编译单元不同地分配二进制码,以使得可以编译当前编译单元如何被分割为预测单元。
[0309] 如在表29中,当编译单元在内预测中不是最小编译单元的时候,仅使用2N×2N分割,并且当编译单元是最小编译单元的时候,使用2N×2N和N×N分割,使得在最小编译单元的情况下,通过区别地设置在用于执行内预测的编译单元中使用用于表示哪种分割方法的二进制码,可以表示当前编译单元的分割方法信息。
[0310] 如表25至表29所示,通过将用于视频的内预测和间预测的模块划分为特定的类别,可以减少用于编码视频需要的时间和用于解码视频需要的时间。
[0311] 可以不同地使用在表25至表29中用于指示特定的分割类型信息的二进制编译方法,并且不局限于在表25至表29中示出的二进制编码方法。
[0312] 此外,当经常地使用特定的分割方法的时候,如果经常地使用该分割方法,则可以使用在包括在分割方法和二进制码之间映射信息的映射表中具有较低比特数的分配二进制码的方法。当使用特定的分割方法以便实现这样的方法的时候,以映射表的顺序位于紧挨着上部的分割方法的二进制编译比特,和对其分配较小的二进制编译比特,并且分配给当前使用的分割方法的二进制编译比特可以被交换,从而将较低的比特数分配给经常使用的分割方法。另一个方法中,当达到特定的阈值以上的时候,通过使用计数器可以使用改变在映射表上二进制编译分配的方法。
[0313] 虽然可以如表25至表29所示的将编译单元的分割信息表示为单独的信息,例如,当预测单元执行间预测的时候使用与附加信息(该附加信息与在预测方法(例如,合并、AMVP、跳跃等等)之中的方法相关)结合的分割信息也是可允许的,并且被定义为如表23和24所示的新的标记信息。
[0314] 此外,在如上所述的表25至表29中使用的二进制信号是任意的,并且如果可以以另一个语法结构获得附加信息,则可以改变用于在当前编译单元中表示分割方法的二进制信号,或者估算方法无需使用特定的二进制信号可以被用于表示当前编译单元的分割方法。
[0315] 图13是图示以预先确定的类别分类用于执行预测的块的方法的本发明的另一个示例性实施例。
[0316] 参考图13,按照本发明的再一个示例性实施例以预先确定的类别分类用于执行内预测的块的方法可以另外使用短距离内预测(SDIP)方法。当另外将短距离内预测方法用作内预测的时候,可以添加2N×h1300、h×2N 1305作为分割单元,当执行内预测的时候,可以使用分割单元,并且可以产生编译单元的附加分割方法的组合。
[0317] 参考图13的下半部分,按照本发明的再一个示例性实施例分类用于执行内预测的块的方法可以另外使用不对称运动分割(AMP,在下文中,“不对称块分割方法”被用于指相同的含义)方法。当另外使用AMP方法的时候,2N×nU 1310、2N×nD 1315、hL×2N 1320、nR×2N 1325可以被用作当执行内预测的时候可以使用的分割单元。换句话说,短距离内预测方法和不对称运动分割方法可以以如表25至表29所示不同的组合产生以在用于预测的预先确定的条带中使用。
[0318] 如上所述的视频编译和视频解码方法可以分别地在视频编码器和视频解码器装置的每个元件中实现,如上图1和图2所述。
[0319] 虽然已经参考其示例性实施例描述了本公开,但本领域技术人员应该理解,如由以下的权利要求书限定的,在不脱离本发明的精神和范围的情况下可以进行各种变化和改进。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈