一种图像预测编码方法及图像编码器的制造方法

文档序号:7998671阅读:232来源:国知局
一种图像预测编码方法及图像编码器的制造方法
【专利摘要】本发明公开了一种图像预测编码方法及编码器,以防止某个Tile发生的错误在整帧图像内扩散,本发明中在进行当前帧的Tile内LCU编码过程中,首先确定待预测编码的LCU或PU所在当前帧的Tile,然后在当前帧的参考帧内确定位置与当前帧的Tile在当前帧中的位置相同的参考帧的Tile,在对LCU的PU进行预测时,在确定的参考帧的Tile内选择参考像素点,在确定LCU包含的PU的PMV时,在确定的参考帧的Tile内选择PU的PMV,能够防止某个Tile发生的错误在整帧图像内扩散,从而提高了图像编码的精确性。
【专利说明】-种图像预测编码方法及图像编码器

【技术领域】
[0001] 本发明涉及图像处理【技术领域】,尤其涉及一种图像预测编码方法及图像编码器。

【背景技术】
[0002] HEVC (High Efficiency Video Codec)/H. 265 作为当前主流的视频编码标准,是 一种基于变换和预测相结合的混合视频编码标准,其为适应并行化运算程度非常高的芯 片,引入了很多并行运算的优化思路,其中Tile (编码区块)技术是一种非常典型的用于实 现并行化运算的技术。
[0003] Tile技术是将每一帧图像划分为若干个矩形区域,划分出的每个矩形区域为一个 Tile,如图1所示。图1中每一个Tile包含整数个IXU (Largest Coding Unit,最大编码 单元),进行图像编码时以IXU为单位,对Tile内的每个IXU分别进行编码,由于各个Tile 中的每个LCU独立进行编码,使得每个Tile都是独立编码单元的集合,其将空间中的依赖 关系打破,使得每一帧中划分的各个Tile之间相互独立,可以对几个Tile同时进行编码, 实现并行处理。
[0004] 现有技术中,对IXU进行编码时,需要对每个LCU内包含的至少一个PU (Predicting Unit,预测单元)进行预测,每个PU为包含若干个像素点的图像块,在进行PU 预测时,需要确定参考像素点,利用参考像素点的MV (Moving Vector,运动矢量)对PU进 行预测,而现有的预测编码方法包括帧内预测编码方法和帧间预测编码方法,进行帧内预 测编码时,由于帧内各个Tile之间的独立性,进行PU预测时,选择的参考像素点只与当前 待预测编码的LCU所在的Tile有关,而与其他Tile无关。
[0005] 但在进行帧间预测编码过程中,一方面,当前帧可能将参考帧内任一 Tile内的像 素点作为参考像素点,如图2所示,图像包括4个Tile分别为TileO、Tilel、Tile2和Tile3, 当进行Tile2中IXU的某个PU预测时,可能使用Tilel和Tile2中的像素点作为参考像素 点,然后利用选择的参考像素点的MV进行预测,因此,如果参考帧内Tilel内的图像数据发 生错误,经过帧间预测编码,可能把错误扩散至Tile2,而Tile2中的像素点又有可能作为 其他Tile内进行PU预测时的参考像素点,以此类推,可能就会使Tilel发生的错误在整帧 图像内进行扩散,从而降低了图像编码的精确性。
[0006] 另一方面,进行TO预测时,在确定参考像素点时,最主要的是要确定PU的PMV (Predicted Moving Vector,预测运动矢量),当确定了 PU的PMV后,可根据确定的PMV对 参考像素点的MV进行预测,而每个MV对应一个参考像素点,进而可以确定参考像素点。但 是在进行帧间预测时,在参考帧内选择时域候选运动矢量作为PU的PMV时,可能使用其它 Tile内的时域候选运动矢量作为待预测PU的PMV,例如图2中当进行Tile2中IXU的某个 TO预测时,可能使用Tile3内的时域候选运动矢量作为待预测编码IXU内包含的PU的PMV, 因此,如果参考帧内Tile3内的图像数据发生错误,经过帧间预测编码,可能把错误扩散至 Tile2,而Tile2中的时域候选运动矢量又有可能作为其他Ti 1 e内进行PU预测时的PMV,以 此类推,可能就会使Tile3发生的错误在整帧图像内进行扩散,从而降低了图像编码的精 确性。


【发明内容】

[0007] 本发明实施例提供一种图像预测编码方法及图像编码器,以防止某个Tile内图 像数据发生的错误在整帧图像内扩散,提高图像编码的精确性。
[0008] 第一方面,提供一种图像预测编码方法,包括:
[0009] 在接收到的当前帧内,确定待预测编码的最大编码单元LCU所在的当前帧编码区 块 Tile ;
[0010] 在当前帧的参考帧内确定与所述当前帧的Tile相对应的参考帧的Tile,其中与 所述当前帧的Tile相对应的参考帧的Tile,在参考帧中的位置与所述当前帧的Tile在所 述当前帧中的位置相同;
[0011] 在确定的所述参考帧的Tile内选择参考像素点,并根据所述参考像素点对所述 IXU内包含的预测单元ro进行预测;
[0012] 根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
[0013] 结合第一方面,在第一种可能的实现方式中,在确定的所述参考帧的Tile内选择 参考像素点,包括:
[0014] 根据所述待预测编码的LCU在当前帧的Tile中所处的位置,在确定的所述参考帧 的Tile内选取参考像素点,其中,选取的所述参考像素点所属的LCU在参考帧的Tile中的 位置,与所述待预测编码的LCU在当前帧的Tile中的位置相同或相邻
[0015] 第二方面,提供一种图像预测编码方法,包括:
[0016] 在接收到的当前帧内,确定待预测编码的最大编码单元LCU所在的当前帧编码区 块 Tile ;
[0017] 在当前帧的参考帧内确定与所述当前帧的Tile相对应的参考帧的Tile,其中与 所述当前帧的Tile相对应的所述参考帧的Tile,在参考帧中的位置与所述当前帧的Tile 在所述当前帧中的位置相同;
[0018] 在确定的所述参考帧的Tile内选择时域候选运动矢量,作为所述LCU内包含的预 测单元PU的预测运动矢量PMV ;
[0019] 根据所述PMV预测得到所述PU的运动矢量MV,并根据预测得到的所述MV对所述 PU进行预测;
[0020] 根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
[0021] 结合第二方面,在第一种可能的实现方式中,在当前帧的参考帧内确定了所述当 前中贞的Tile相对应的参考巾贞的Tile之后,该方法还包括:
[0022] 在当前帧的参考帧内选择一个时域候选运动矢量;
[0023] 判断选择的时域候选运动矢量是否在与所述当前帧的Tile对应的所述参考帧的 Tile 内;
[0024] 若是,则利用选择的时域候选运动矢量,作为所述IXU内包含的PU的PMV ;
[0025] 若否,则返回执行继续在当前帧的参考帧内选择时域候选运动矢量的处理。
[0026] 第三方面,提供一种图像编码器,包括用于接收待编码图像的接收单元,还包括: 确定单元、预测单元以及编码单元,其中,
[0027] 所述确定单元,用于从所述接收单元获取接收到的待编码图像信息,在当前帧内 确定待预测编码的最大编码单元LCU所在的当前帧编码区块Tile ;以及在当前帧的参考帧 内确定与所述当前帧的Tile相对应的参考帧的Tile,与所述当前帧的Tile相对应的参考 帧的Tile,在参考帧中的位置与所述当前帧的Tile在所述当前帧中的位置相同,并将确定 的所述参考帧的Tile的位置信息输出至所述预测单元;
[0028] 所述预测单元,用于获取所述确定单元确定的参考帧的Tile的位置信息,并在确 定的所述参考帧的Tile内选择参考像素点,并根据所述参考像素点对所述LCU内包含的预 测单元PU进行预测,将预测结果输出至所述编码单元;
[0029] 所述编码单元,用于获取所述预测单元输出的对所述TO进行预测得到的预测结 果,并根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
[0030] 结合第三方面,在第一种可能的实现方式中,所述预测单元,具体用于:
[0031] 根据所述待预测编码的LCU在当前帧的Tile中所处的位置,在确定的所述参考帧 的Tile内选取参考像素点,其中,选取的所述参考像素点所属的LCU在参考帧的Tile中的 位置,与所述待预测编码的LCU在当前帧的Tile中的位置相同或相邻。
[0032] 第四方面,提供一种图像编码器,包括用于接收待编码图像的接收单元,还包括: 确定单元、预测单元以及编码单元,其中,
[0033] 所述确定单元,用于从所述接收单元获取接收到的待编码图像信息,在当前帧内 确定待预测编码的最大编码单元LCU所在的当前帧编码区块Tile ;以及在当前帧的参考帧 内确定与所述当前帧的Tile相对应的参考帧的Tile,与所述当前帧的Tile相对应的参考 帧的Tile,在参考帧中的位置与所述当前帧的Tile在所述当前帧中的位置相同,并将确定 的所述参考帧的Tile的位置信息输出至所述预测单元;
[0034] 所述预测单元,用于获取所述确定单元确定的参考帧的Tile的位置信息,并在确 定的所述参考巾贞的Tile内选择时域候选运动矢量,作为所述LCU内包含的预测单元PU的 预测运动矢量PMV,根据所述PMV预测得到所述PU的运动矢量MV,并根据预测得到的所述 MV对所述PU进行预测,将预测结果输出至所述编码单元;
[0035] 所述编码单元,用于获取所述预测单元输出的对所述TO进行预测得到的预测结 果,并根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
[0036] 结合第四方面,在第一种可能的实现方式中,所述预测单元,具体用于:
[0037] 在当前帧的参考帧内选择一个时域候选运动矢量;
[0038] 判断选择的时域候选运动矢量是否在与所述当前帧的Tile对应的所述参考帧的 Tile 内;
[0039] 若是,则利用选择的时域候选运动矢量,作为所述IXU内包含的PU的PMV ;
[0040] 若否,则返回执行继续在当前帧的参考帧内选择时域候选运动矢量的处理。
[0041] 根据第一方面提供的图像预测编码方法和第三方面提供的图像编码器,在进行 LCU预测编码过程中,在当前帧的参考帧内确定与待预测编码LCU所在当前帧的Tile相对 应的参考帧的Tile,其中参考帧的Tile在参考帧中的位置与当前帧的Tile在当前帧中的 位置相同,并在确定的参考帧的Tile内选择参考像素点,从而使得当前预测编码的LCU进 行TO预测时,将参考帧内对应当前帧的Tile所在位置的参考帧的Tile内的像素点作为 参考像素点,不会将参考帧内其他Tile内的像素点作为参考像素点,这样当参考帧内其他 Tile发生错误时,不会使预测编码的LCU所在的当前帧的Tile发生错误,同样当预测编码 的LCU所在的当前帧的Tile发生错误,也只会将其错误限制在当前帧的Tile内,不会影响 其他Tile,因此能够防止某个Tile发生的错误在整帧图像内扩散,从而提高了图像编码的 精确性。
[0042] 根据第二方面提供的图像预测编码方法和第四方面提供的图像编码器,在进行TO 预测编码过程中,在当前帧的参考帧内确定与待预测编码LCU所在当前帧的Tile相对应 的参考帧的Tile,其中参考帧的Tile在参考帧中的位置与当前帧的Tile在当前帧中的位 置相同;并在参考帧的Tile内选择时域候选运动矢量作为待预测编码LCU内包含的PU的 PMV,从而使得确定PU的PMV时,使用参考帧内对应待预测编码LCU所在当前帧的Tile所 在位置的参考帧的Tile内的运动矢量,不使用参考帧内其他Tile内的运动矢量,使得当某 个Tile发生错误时,始终将错误限制在对应该Tile的区域内,不会影响其他Tile的编码, 从而使错误不会在整帧图像内扩散,从而提高了图像编码的精确性。

【专利附图】

【附图说明】
[0043] 图1为现有技术中图像划分为Tile的示意图;
[0044] 图2为现有技术中帧间预测编码示意图;
[0045] 图3为本发明实施例一提供的图像预测编码方法的流程图;
[0046] 图4A所示为本发明实施例二提供的图像Tile划分示意图;
[0047] 图4B为本发明实施例二提供的帧间预测编码示意图;
[0048] 图5为本发明实施例三提供的图像预测编码方法的流程图;
[0049] 图6为本发明实施例四提供的在参考帧的Tile内选择时域候选运动矢量作为PU 的PMV的实现流程图;
[0050] 图7为本发明实施例提供的Tile之间保持独立性的示意图;
[0051] 图8为本发明实施例提供的图像编码器构成示意图。

【具体实施方式】
[0052] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发 明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施 例,都属于本发明保护的范围。
[0053] 本发明提供的图像预测编码方法,在进行当前帧某个Tile内IXU进行编码过程 中,首先在接收到的当前帧内确定待预测编码的LCU所在的当前帧的Tile,然后在当前帧 的参考帧内确定位置与当前帧的Tile在当前帧中的位置相同的参考帧的Tile,在对LCU内 包含的PU进行预测时,在确定的参考帧的Tile内选择参考像素点;在确定PU的PMV时,在 确定的参考帧的Tile内选择时域候选运动矢量作为PU的PMV,从而使得LCU编码过程中, 参考与待预测编码LCU所在当前帧的Tile对应的参考帧的Tile内的像素点作为参考像素 点,参考与待预测编码LCU所在当前帧的Tile对应的参考帧的Tile内的运动矢量作为PU 的PMV,进而使得当参考帧内某个Tile发生错误时,始终将错误限制在对应该发生错误的 Tile的区域内,能够防止某个Tile发生的错误在整帧图像内扩散,从而有效提高了图像编 码的精确性。
[0054] 以下将结合具体的实施例以及附图对本发明提供的图像预测编码方法进行详细 的说明,当然并不引以为限。
[0055] 实施例一:
[0056] 在图像预测编码过程中,需要对Tile内的IXU进行帧间预测编码,在进行IXU帧 间预测编码过程中,最主要的是在当前帧的参考帧内选择待预测编码LCU内PU的参考像素 点,然后根据选择的参考像素点进行PU预测,并根据对TO进行预测后得到的预测结果对 Tile内的LCU进行帧间预测编码,本发明实施例提供了一种图像预测编码方法,如图3所 示,包括:
[0057] S101 :确定当前帧内待预测编码的IXU所在的当前帧的Tile。
[0058] 具体的,IXU作为HEVC/H. 265中定义的基本编码单元,在进行图像的预测编码过 程中,需按照Tile的顺序对每一 Tile内的每一 LCU分别进行编码,然后将编码得到的多个 IXU组成Tile码流进行传输。
[0059] 本发明实施例中在进行LCU的编码时,预先确定当前帧内待预测编码的LCU所在 的当前帧的Tile,以便能够在当前帧的参考帧内确定与待预测编码的LCU所在当前帧相对 应的参考帧的Tile。
[0060] S102 :在当前帧的参考帧内确定与S101中确定的当前帧的Tile相对应的参考帧 的 Tile。
[0061] 具体的,采用Tile技术进行图像编码过程中,每一帧图像划分的Tile是固定的, 划分后每一 Ti 1 e的位置也是固定的,本发明实施例中在参考帧内选择的参考帧的Ti 1 e在 参考帧中的位置与当前帧的Tile在当前帧中的位置相同。
[0062] Tile技术是利用垂直和水平的边界将每一帧图像划分为一些行和列,这些划分出 的行和列分别组成多个矩形区域,而每一个矩形区域为一个Tile,并且在Tile码流传输过 程中,这些Tile的位置是固定不变的,因此,本发明实施例中在当前帧的参考帧内确定与 当前帧的Tile相对应的参考帧的Tile时,可根据当前帧的Tile在当前帧中的位置,在当 前帧的参考帧内选择位置与当前帧的Tile在当前帧中的位置相同的Tile作为最终所需的 参考帧的Tile。
[0063] 进一步的,本发明实施例中可对划分的Tile进行顺序编号,在当前帧的参考帧内 确定与当前帧的Tile相对应的参考帧的Tile时,可根据Tile的编号在当前帧的参考帧内 选择位置与当前帧的Tile在当前帧中的位置相同的Tile作为最终所需的参考帧的Tile。
[0064] S103 :在S102中确定的参考帧的Tile内选取参考像素点。
[0065] 具体的,本发明实施例中在参考帧内选取TO的参考像素点时,在S103中确定的参 考帧的Tile内进行选取,不在参考帧内其他Tile内进行选取,保证当前帧的Tile与确定 的参考帧的Tile相关,与参考帧内其他Tile无关,使当前帧的Tile与参考帧内其他Tile 之间保持独立性,以避免参考帧内某个Tile发生的错误在整帧图像内扩散,从而有效提高 了图像编码的精确性。
[0066] S104 :利用S103中选取的参考像素点对IXU内包含的PU进行预测,根据得到的预 测结果,对待预测编码的LCU进行预测编码。
[0067] 具体的,每个LCU在进行编码过程中会被划分为若干个PU,本发明实施例中针对 LCU内包括的各个PU,在参考巾贞的Tile内分别选取参考像素点,利用选取的参考像素点对 LCU内包含的各个PU分别进行预测,然后根据得到的预测结果对待预测编码的LCU进行预 测编码,其中根据对PU进行预测得到的预测结果对待预测编码的LCU进行预测编码,主要 是指通过对PU进行预测,可得到的PU的预测值,将得到的预测值与PU的原始值做差运算, 得到PU的残差值,通过对每一 PU的残差值进行预测编码,即可完成对LCU的预测编码。
[0068] 本发明实施例中,在进行选取待预测编码LCU内包含的PU的参考像素点时,在当 前帧的参考帧内确定位置与待预测编码的LCU所在当前帧的Tile在当前帧中的位置相同 的Tile作为参考帧的Tile,并在确定的参考帧的Tile内选取待预测编码LCU内包含的PU 的参考像素点,使得进行TO预测时,将当前帧的参考帧内对应当前帧的Tile的参考帧的 Tile内的像素点作为参考像素点,不会将参考巾贞内其他Tile内的像素点作为参考像素点, 当参考帧内其他Tile发生错误时,不会使预测编码的LCU所在当前帧的Tile发生错误,同 样当预测编码的LCU所在当前帧的Tile发生错误,也只会将其错误限制在当前帧的Tile 内,不会影响其他Tile,进而能够防止某个Tile发生的错误在整帧图像内的扩散,因此提 高了图像编码的精确性。
[0069] 实施例二:
[0070] 本发明实施例二将结合实际应用对实施例一中的图像预测编码方法进行详细的 说明,本发明实施例二作为实施例一的较优实施例,对S103中在确定的参考帧的Tile内选 取PU的参考像素点的过程进行详细说明,其他步骤与实施例一相同,在此不再赘述。
[0071] 本发明实施例中将每个图像帧划分为4个Tile,分别为TileO、Tilel、Tile2和 Tile3,每个Tile中包含整数个IXU,而每个IXU又被划分为若干个PU,如图4A所示,在进 行图像预测编码时,需对每个LCU内的各个PU分别进行预测,然后利用预测得到的PU,对 Tile内的每一 IXU进行预测编码,本发明实施例中以进行Tile2内IXU201的预测编码为例 进行说明。
[0072] 如图4B所示,本发明实施例待预测编码LCU201所在的当前帧的Tile为当前帧的 Tile2,当前帧的Tile2在当前帧的参考帧内对应的参考帧的Tile为参考帧的Tile2,在选 取IXU201内包含的PU的参考像素点时,在参考帧的Tile2内任意选取像素点作为PU的参 考像素点。
[0073] 进一步的,由于每一帧图像中划分后的Tile位置固定,每个Tile内的IXU位置也 是固定的,本发明实施例中在选取参考像素点时,为提高预测编码的准确性,可根据待预测 编码的LCU在当前帧的Tile中所处的位置,在确定的参考帧的Tile内选取参考像素点,使 选取的参考像素点所属的LCU在参考帧的Tile中的位置,与待预测编码的LCU在当前帧 的Tile中的位置相同或相邻,例如图2中,进行LCU201编码时,可根据LCU201在当前帧 的Tile2所处的位置,在参考帧的Tile2内选取与待预测编码IXU201所处位置相同或相邻 的LCU内的像素点作为参考像素点,如图4B所示,选取LCU201内包含的PU的参考像素点 时,可选取IXU202和IXU203内的像素点作为参考像素点,其中,IXU202在参考帧的Tile2 中的位置与IXU201在当前帧的Tile2的位置相同,IXU203在参考帧的Tile2中的位置与 IXU201在当前帧的Tile2的位置相邻。
[0074] 本发明实施例中在进行待预测编码LCU的参考像素点选取时,在确定的在当前帧 的参考帧中位置与当前帧的Tile在当前帧的位置相同的参考帧的Tile内选取PU的参考 像素点,使得当前预测编码的LCU进行PU预测时,将参考帧内对应当前帧的Tile的参考 中贞的Tile内的像素点作为参考像素点,不会将参考巾贞内其他Tile内的像素点作为参考像 素点,能够防止某个Tile发生的错误在整帧图像内扩散,以提高图像编码的精确性。进一 步的,在选取参考像素点时,根据待预测编码的LCU所在当前帧的Tile的位置在参考帧 的Tile内根据实际情况进行参考像素点的选取,能够进一步准确的预测得到待预测编码 IXU,进一步提高图像编码的精确性。
[0075] 实施例三:
[0076] 在图像预测编码过程中,进行TO预测过程中,还需要在当前帧的参考帧内选取一 些参数,比如PMV (Predicted Moving vector,预测运动矢量),根据选择的PMV对PU的MV 进行预测,根据预测得到的MV对PU进行预测,根据预测结果对Tile内待预测编码的LCU 进行预测编码,本发明实施例三提供一种图像预测编码方法,如图5所示,包括:
[0077] S301 :在接收到的当前帧内,确定当前帧内待预测编码的LCU所在的当前帧的 Tile。
[0078] 具体的,本发明实施例中在接收到的当前帧内,确定当前帧内待预测编码的LCU 所在的当前帧的Tile,可采用实施例一中的方法进行确定,在此不再赘述。
[0079] S302 :在当前帧的参考帧内确定与S301中确定的当前帧的Tile相对应的参考帧 的 Tile。
[0080] 本发明实施例中,在当前帧的参考帧内确定的与当前帧的Tile相对应的参考帧 的Tile在参考帧中的位置与当前帧的Tile在当前帧中的位置相同。
[0081] S303 :在S302中确定的参考帧的Tile内选择时域候选运动矢量,作为PU的PMV。
[0082] 具体的,本发明实施例中在进行时域候选运动矢量的选取时,在S303中确定的参 考帧的Tile内进行选取,不在参考帧内其他Tile内进行选取,保证当前帧的Tile与确定 的参考帧的Tile相关,与参考帧内其他Tile之间无关,保持当前帧的Tile与参考帧内除 参考帧的Tile之外的其他Tile之间独立性。
[0083] S304 :根据S303中确定的PMV对IXU内包含的PU的MV进行预测,根据预测得到 的MV对PU进行预测,根据对PU进行预测得到的预测结果,对待预测编码的LCU进行预测 编码。
[0084] 具体的,本发明实施例中当确定了 TO的PMV后,利用确定的PMV与当前矢量的差 值,预测得到PU的MV,根据预测得到的MV对PU进行预测,并根据对PU进行预测得到的预 测结果对待预测编码的LCU进行预测编码。
[0085] 本发明实施例中,在确定TO的PMV时,在当前帧的参考帧内确定位置与待预测编 码的LCU所在当前帧的Tile在当前帧中的位置相同的Tile作为参考帧的Tile,并在确定 的参考帧的Tile内选取时域候选运动矢量作为PU的PMV,使得确定PU的PMV时,使用参考 帧内对应待预测编码LCU所在当前帧的Tile的参考帧的Tile内的时域候选运动矢量,不 使用参考帧内其他Tile的时域候选运动矢量,使得当某个Tile发生错误时,始终将错误限 制在对应该Tile的区域内,不会影响其他Tile的预测编码,从而使错误不会在整帧图像内 扩散,因此提高了图像编码的精确性。
[0086] 实施例四:
[0087] 本发明实施例四将结合实际应用对实施例三中的图像预测编码方法进行详细的 说明,本发明实施例四作为实施例三的较优实施例,对S303中在确定的参考帧的Tile内选 择时域候选运动矢量,作为PU的PMV的过程进行详细说明,其他步骤与实施例三相同,在此 不再赘述。
[0088] 图像编码过程中用到的运动矢量有空域候选运动矢量和时域候选运动矢量,选取 候选运动矢量计算PMV时,可根据当前巾贞的空域候选运动矢量在当前巾贞内选取空域候选运 动矢量,作为TO的PMV,也可在参考帧内选取时域候选运动矢量,作为PU的PMV。
[0089] A、选择当前帧的空域候选运动矢量,作为IXU内包含的PU的PMV :
[0090] 空域候选运动矢量表征了当前帧的Tile内LCU所在的空间位置,本发明实施例中 在计算PMV时,可选择当前帧的Tile内其他LCU的空域候选运动矢量,作为PMV,而不使用 其他Tile内的空域候选运动矢量,保持各个Tile之间的独立性。
[0091] 具体的,在帧间预测编码过程中,若选择空域候选运动矢量确定PU的PMV,而不选 择时域候选运动矢量确定TO的PMV,可保持帧间Tile的独立性。
[0092] 例如,在HEVC/H. 265协议中,规定PPS中有如下参数:enable_temporal_mvp_ flag,在编码时,将此参数的值设置为0,则在整个编码过程中,选择空域候选运动矢量,而 不选择时域候选运动矢量,作为TO的PMV。
[0093] B、在确定的参考帧的Tile内选择时域候选运动矢量,作为IXU内包含的PU的 PMV :
[0094] 如图6所示为本发明实施例中在确定的参考帧的Tile内选择时域候选运动矢量, 作为TO的PMV的实现过程,包括 :
[0095] S401 :在当前帧的参考帧内选择一个时域候选运动矢量。
[0096] 具体的,本发明实施例中在选择时域候选运动矢量时,可在当前帧的参考帧内随 机选择一个时域候选运动矢量,当选择了时域候选运动矢量后,进行S402。
[0097] S402 :判断S401中选择的时域候选运动矢量是否在与当前帧的Tile对应的参考 帧的Tile内,若选择的时域候选运动矢量在确定的参考帧的Tile内,则转S403 ;若选择的 时域候选运动矢量不在确定的参考帧的Tile内,则转步骤S404。
[0098] 具体的,每个TO在不同的Tile内的时域候选运动矢量是不同的,可根据参考帧内 与当前帧内待预测编码PU所在当前帧的Tile相对应的参考帧的Tile内的时域候选运动 矢量,判断S401中选择的时域候选运动矢量是否在与当前帧的Tile对应的参考帧的Tile 内。
[0099] S403 :利用S401选择的时域候选运动矢量,作为待预测编码IXU内包含的PU的 PMV。
[0100] 具体的,通过S402中的判断后,得知选择的时域候选运动矢量在确定的与待预测 编码LCU所在当前帧的Tile相对应的参考帧的Tile内,则可将S401选择的时域候选运动 矢量,作为PU的PMV。
[0101] S404 :继续在当前帧的参考帧内选择时域候选运动矢量,返回至S402,并重复执 行上述步骤,直至选择的时域候选运动矢量在当前帧内待预测编码LCU所在当前帧的Tile 相对应的参考帧的Tile内。
[0102] 本发明实施例中,在确定PU的PMV时,在当前帧内待预测编码所在当前帧的Tile 相对应的参考帧的Tile内选用时域候选运动矢量作为PU的PMV,使得采用PMV进行PU的 MV的帧间预测时,只选用参考帧内与当前帧的Tile位置相同的参考帧的Tile内的时域候 选运动矢量,不选用参考帧内其他Tile的时域候选运动矢量,使得帧间预测编码时保持帧 间各个Tile的独立性。
[0103] 实施例五
[0104] 结合本发明实施例一至实施例四,本发明实施例五提供一种在帧内预测编码过程 和帧间预测编码过程中保持各个Tile之间独立性的实施方法,如图7所示:
[0105] (1 )、使用帧内相关参数进行帧内的参数预测时,保持帧内各个Tile之间的独立 性。
[0106] 具体的,帧内参数包括PMV的推导、帧内预测模式推导、QP (Quantization Parameter,量化参数)推导等,具体的,在使用空域候选运动矢量推导PMV时,不参考跨 Tile的相邻位置的空域候选运动矢量,从而保持Tile之间的独立性;同样在进行帧内预测 模式推导时,跨Tile的亮度预测模式也不参考,以保持Tile之间的独立性;QP推导时,跨 Tile的QP量化组QP不能参考,不能将其他Tile的QP赋值给QP,以保持Tile之间的独立 性。
[0107] (2)、在做帧内预测值推导时,保持帧内各Tile之间的独立性。
[0108] 具体的,在做帧内预测值推导时,跨Tile的样本点不能参考,保持帧内各个Tile 之间的独立性。
[0109] (3)、在做 CABAC(Context Adaptive Binary Arithmetic Coder,自适应二进制算 术编码)编码时,保持帧内各个Tile之间的独立性。
[0110] 具体的,每个Ti 1 e使用一个独立的CABAC概率模型,保持帧内各个Ti 1 e之间的独 立性。
[0111] (4)、在做帧内边界滤波时,保持帧内各个Ti 1 e之间的独立性。
[0112] 具体的,通过将语法元素 loop_filter_across_tiles_enabled_flag 设置为 0,控 制Tile边界的像素点不使用相邻Tile的像素点进行滤波,从而实现帧内各个Tile之间的 独立性。
[0113] (5)、使用帧间像素值进行预测时,保持帧间各个Tile之间的独立性。
[0114] 具体的,LCU预测编码过程中,对PU进行预测时,选择参考帧内对应当前帧的Tile 所在位置的参考帧的Tile内的像素点作为参考像素点进行预测,保持帧间各个Tile之间 的独立性。
[0115] (6)、使用帧间参数进行预测时,保持帧间各个Tile之间的独立性。
[0116] 具体的,在帧间进行PU的PMV确定时,以当前帧的参考帧内与当前帧待预测编码 Tile位置相同的参考帧的Tile内的时域候选运动矢量作为PU的PMV,保持帧间各个Tile 之间的独立性。
[0117] 通过本发明实施例,使得预测编码得到的图像中各个Tile之间不仅在帧内能够 保持独立性,而且在帧间也能保持独立性,当某个Tile发生了错误,无论是在编码得到的 当前帧内进行帧内预测编码,还是以编码得到的当前帧为参考帧进行帧间预测编码,Tile 发生的错误都会限制在对应该Tile的区域内,不会在整帧图像内进行扩散,因此较好地提 高了图像编码的精确性。
[0118] 实施例六
[0119] 基于与本发明实施例一和实施例二提供的图像编码方法,本发明实施例提供了一 种图像编码器,该编码器包括用于接收待编码图像的接收单元1,还包括:确定单元2、预测 单元3以及编码单元4,如图8所示,其中,
[0120] 确定单元2,用于从接收单元1获取接收到的待编码图像信息,在当前帧内确定待 预测编码的最大编码单元LCU所在的当前帧编码区块Tile ;以及在当前帧的参考帧内确定 与当前帧的Tile相对应的参考帧的Tile,与当前帧的Tile相对应的参考帧的Tile,在参 考帧中的位置与当前帧的Tile在当前帧中的位置相同,并将确定的参考帧的Tile的位置 信息输出至预测单元3。
[0121] 预测单元3,用于获取确定单元2确定的参考帧的Tile的位置信息,在确定的参考 帧的Tile内选择参考像素点,并根据参考像素点对所述LCU内包含的预测单元PU进行预 测,将预测结果输出至编码单元4。
[0122] 编码单元4,用于获取预测单元3输出的对PU进行预测得到的预测结果,并根据对 PU进行预测得到的预测结果,对LCU进行预测编码。
[0123] 其中,预测单元3,具体用于:
[0124] 根据待预测编码的LCU在当前帧的Tile中所处的位置,在确定的参考帧的Tile 内选取参考像素点,其中,选取的参考像素点所属的LCU在参考帧的Tile中的位置,与待预 测编码的LCU在当前帧的Tile中的位置相同或相邻。
[0125] 本发明实施例中在进行待预测编码LCU的参考像素点选取时,在确定的在当前帧 的参考帧中位置与当前帧的Tile在当前帧的位置相同的参考帧的Tile内选取PU的参考 像素点,使得当前预测编码的LCU进行PU预测时,将参考帧内对应当前帧的Tile的参考 中贞的Tile内的像素点作为参考像素点,不会将参考巾贞内其他Tile内的像素点作为参考像 素点,能够防止某个Tile发生的错误在整帧图像内扩散,以提高图像编码的精确性。进一 步的,在选取参考像素点时,根据待预测编码的LCU所在当前帧的Tile的位置在参考帧 的Tile内根据实际情况进行参考像素点的选取,能够进一步准确的预测得到待预测编码 IXU,进一步提高图像编码的精确性。
[0126] 实施例七
[0127] 基于与实施例三和实施例四涉及的图像预测编解码方法,本发明实施例提供了一 种图像编码器,该编码器包括用于接收待编码图像的接收单元1,还包括:确定单元2、预测 单元3以及编码单元4,其中,
[0128] 确定单元2,用于从接收单元1获取接收到的待编码图像信息,在当前帧内确定待 预测编码的最大编码单元LCU所在的当前帧编码区块Tile ;以及在当前帧的参考帧内确定 与1当前帧的Tile相对应的参考帧的Tile,与1当前帧的Tile相对应的参考帧的Tile,在 参考帧中的位置与1当前帧的Tile在1当前帧中的位置相同,并将确定的1参考帧的Tile 的位置信息输出至1预测单元3。
[0129] 预测单元3,用于获取确定单元2确定的参考帧的Tile的位置信息,并在确定的 参考巾贞的Tile内选择时域候选运动矢量,作为LCU内包含的预测单元PU的预测运动矢量 PMV,根据PMV预测得到PU的运动矢量MV,并根据预测得到的MV对PU进行预测,将预测结 果输出至编码单元4。
[0130] 编码单元4,用于获取预测单元3输出的对PU进行预测得到的预测结果,并根据对 PU进行预测得到的预测结果,对LCU进行预测编码。
[0131] 其中,预测单元3,具体用于:
[0132] 在当前帧的参考帧内选择一个时域候选运动矢量;
[0133] 判断选择的时域候选运动矢量是否在与当前帧的Tile对应的参考帧的Tile内;
[0134] 若是,则利用选择的时域候选运动矢量,作为IXU内包含的PU的PMV ;
[0135] 若否,则返回执行继续在当前帧的参考帧内选择时域候选运动矢量的处理。
[0136] 本发明实施例中,在确定TO的PMV时,在当前帧的参考帧内确定位置与待预测编 码的LCU所在当前帧的Tile在当前帧中的位置相同的Tile作为参考帧的Tile,并在确定 的参考帧的Tile内选取时域候选运动矢量作为PU的PMV,使得确定PU的PMV时,使用参考 帧内对应待预测编码LCU所在当前帧的Tile的参考帧的Tile内的时域候选运动矢量,不 使用参考帧内其他Tile的时域候选运动矢量,使得当某个Tile发生错误时,始终将错误限 制在对应该Tile的区域内,不会影响其他Tile的预测编码,从而使错误不会在整帧图像内 扩散,因此提高了图像编码的精确性。
[0137] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围 之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1. 一种图像预测编码方法,其特征在于,该方法包括: 在接收到的当前帧内,确定待预测编码的最大编码单元LCU所在的当前帧的编码区块 Tile ; 在当前帧的参考帧内,确定与所述当前帧的T i 1 e相对应的T i 1 e,其中所述参考帧的 Tile在参考帧中的位置与所述当前帧的Tile在所述当前帧中的位置相同; 在确定的所述参考帧的Tile内选择参考像素点,并根据所述参考像素点对所述LCU内 包含的预测单元PU进行预测; 根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
2. 如权利要求1所述的方法,其特征在于,在确定的所述参考帧的Tile内选择参考像 素点,包括: 根据所述待预测编码的LCU在当前帧的Tile中所处的位置,在确定的所述参考帧的 Tile内选取参考像素点,其中,选取的所述参考像素点所属的LCU在参考巾贞的Tile中的位 置,与所述待预测编码的LCU在当前帧的Tile中的位置相同或相邻。
3. -种图像预测编码方法,其特征在于,该方法包括: 在接收到的当前帧内,确定待预测编码的最大编码单元LCU所在的当前帧的编码区块 Tile ; 在当前帧的参考帧内,确定与所述当前帧的Tile相对应的参考帧的Tile,其中所述参 考帧的Tile在参考帧中的位置与所述当前帧的Tile在所述当前帧中的位置相同; 在确定的所述参考帧的Tile内选择时域候选运动矢量,作为所述LCU内包含的预测单 元PU的预测运动矢量PMV ; 根据所述PMV预测得到所述PU的运动矢量MV,并根据预测得到的所述MV对所述PU进 行预测; 根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
4. 如权利要求3所述的方法,其特征在于,在当前帧的参考帧内确定了所述当前帧的 Tile相对应的参考帧的Tile之后,该方法包括: 在当前帧的参考帧内选择一个时域候选运动矢量; 判断选择的时域候选运动矢量是否在与所述当前帧的Tile对应的所述参考帧的Tile 内; 若是,则利用选择的时域候选运动矢量,作为所述IXU内包含的PU的PMV ; 若否,则返回执行继续在当前帧的参考帧内选择时域候选运动矢量的处理。
5. -种图像编码器,包括用于接收待编码图像的接收单元,其特征在于,还包括:确定 单元、预测单元以及编码单元,其中, 所述确定单元,用于从所述接收单元获取接收到的待编码图像信息,在当前帧内确定 待预测编码的最大编码单元LCU所在的当前帧编码区块Tile ;以及在当前帧的参考帧内确 定与所述当前帧的Tile相对应的参考帧的Tile,与所述当前帧的Tile相对应的参考帧的 Tile,在参考帧中的位置与所述当前帧的Tile在所述当前帧中的位置相同,并将确定的所 述参考帧的Tile的位置信息输出至所述预测单元; 所述预测单元,用于获取所述确定单元确定的参考帧的Tile的位置信息,在确定的所 述参考巾贞的Tile内选择参考像素点,并根据所述参考像素点对所述LCU内包含的预测单元 PU进行预测,将预测结果输出至所述编码单元; 所述编码单元,用于获取所述预测单元输出的对所述PU进行预测得到的预测结果,并 根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
6. 如权利要求5所述的图像编码器,其特征在于,所述预测单元,具体用于: 根据所述待预测编码的LCU在当前帧的Tile中所处的位置,在确定的所述参考帧的 Tile内选取参考像素点,其中,选取的所述参考像素点所属的LCU在参考巾贞的Tile中的位 置,与所述待预测编码的LCU在当前帧的Tile中的位置相同或相邻。
7. -种图像编码器,包括用于接收待编码图像的接收单元,其特征在于,还包括:确定 单元、预测单元以及编码单元,其中, 所述确定单元,用于从所述接收单元获取接收到的待编码图像信息,在当前帧内确定 待预测编码的最大编码单元LCU所在的当前帧编码区块Tile ;以及在当前帧的参考帧内确 定与所述当前帧的Tile相对应的参考帧的Tile,与所述当前帧的Tile相对应的参考帧的 Tile,在参考帧中的位置与所述当前帧的Tile在所述当前帧中的位置相同,并将确定的所 述参考帧的Tile的位置信息输出至所述预测单元; 所述预测单元,用于获取所述确定单元确定的参考帧的Tile的位置信息,并在确定的 所述参考帧的Tile内选择时域候选运动矢量,作为所述LCU内包含的预测单元PU的预测 运动矢量PMV,根据所述PMV预测得到所述PU的运动矢量MV,并根据预测得到的所述MV对 所述PU进行预测,将预测结果输出至所述编码单元; 所述编码单元,用于获取所述预测单元输出的对所述PU进行预测得到的预测结果,并 根据对所述PU进行预测得到的预测结果,对所述LCU进行预测编码。
8. 如权利要求7所述的图像编码器,其特征在于,所述预测单元,具体用于: 在当前帧的参考帧内选择一个时域候选运动矢量; 判断选择的时域候选运动矢量是否在与所述当前帧的Tile对应的所述参考帧的Tile 内; 若是,则利用选择的时域候选运动矢量,作为所述IXU内包含的PU的PMV ; 若否,则返回执行继续在当前帧的参考帧内选择时域候选运动矢量的处理。
【文档编号】H04N19/182GK104125463SQ201310149199
【公开日】2014年10月29日 申请日期:2013年4月26日 优先权日:2013年4月26日
【发明者】王浦林, 李军华 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1