帧内预测方法及装置的制作方法

文档序号:7763189阅读:268来源:国知局
专利名称:帧内预测方法及装置的制作方法
帧内预测方法及装置方法
技术领域
本发明涉及视频编码领域,特别涉及视频压缩编码中的帧内预测技术。背景技术
视频编码可分为视频无损编码和视频压缩编码两大类。在数字电视和视频通信等应用 中,由于网络带宽的限制和对数据量大小的要求普遍使用的是视频压缩编码,比较常用的 国际标准有H. 261/263/264、MPEG-1/2/4及中国自主知识产权的AVS标准等。视频压缩编 码一般采取基于宏块的编码方式,即把视频中的一帧图像分成多个互不重叠的宏块,之后 对这些宏块进行编码。视频序列图像在空间上存在很强的相关性,例如在一帧图像中,其背景是一面同 样花纹和质地的墙壁。那么,在该帧图像中被分成的若干宏块中,有关墙壁的宏块可能显示 的信息相同或者类似,对这些空间相关性程度高的宏块可以采用帧内预测技术进行编码。 以我国具备自主知识产权的第二代信源编码标准AVS标准为例,通常采用的方法是将视频 序列中的每帧图像分成16*16像素的宏块,进而去对宏块采用不同的预测技术进行编码。 整个视频序列中的若干帧图像(通常是一组图像中的起始几帧)是采用帧内预测技术编码 以消除空间冗余,其余帧图像都是采用帧间预测技术编码以消除时间冗余。在对这些采用 帧内预测技术进行编码的图像进行具体的帧内预测时,每个16*16像素的宏块还需要进一 步分成4个8*8像素的分块以进行亮度块的预测编码(为了便于描述,本文中以亮度块预测 编码作为实例,关于色度块的依此类推),具体的对宏块的分块示意如图IA所示。然后请继 续参考图1B,其示出了现有技术中对于一个8*8像素的亮度块分块进行预测编码的原理示 意图。对于图IA所示每个8*8像素的亮度块分块中的每个像素A00、A01、A02、…、A07、 A10,AlU…、A77,可以利用该分块左边相邻的像素b0、bl、b2、…、bl5和上边相邻的像素 a0、al、a2、…、al5以及左上像素Z以某种策略进行预测而完成编码。具体的预测策略包 括水平预测、垂直预测、右下45度预测等方式,这样对于一个宏块,将其分成4个分块后分 别对每个分块进行帧内预测,共需要进行4个帧内预测模式的编码。需要注意的是,此种方案的缺点在于对宏块只采用固定的一种分块模式,即对一 个16*16像素的宏块分为4个8*8像素的分块然后进行后续预测编码的方式。这样的方式 虽然运算复杂度低,但是对于纹理和细节不同的图像采用同一种分块模式预测所能够达到 的预测效果不是非常理想。因此,亟待提出一种可以克服上述缺点的新型技术方案。
发明内容
本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在 本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说 明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。本发明的目的在于提供一种新的帧内预测方法及装置,对宏块采用多种不同的分 块模式以满足不同视频或者说图像序列的需求。为了达到本发明的目的,根据本发明的一个方面,本发明提供一种帧内预测方法,
3所述方法包括预定义宏块的多个分块模式;当当前宏块是非边界块时,根据当前宏块相 邻的已编码宏块的分块模式选择当前宏块的分块模式,并利用选择的分块模式对当前宏块 进行分块;对当前宏块的分块进行预测编码。进一步地,当所述宏块的大小为16*16像素时,所述宏块的多个分块模式包括分 为4个8*8像素的分块、分为2个16*8像素的分块、分为2个8*16像素的分块和分为1个 16*16像素的分块。进一步地,当前宏块相邻的已编码宏块包括当前宏块的左宏块、左上宏块、上宏块 和右上宏块。进一步地,所述根据当前宏块相邻的已编码宏块的分块模式选择当前宏块的分块 模式为
统计当前宏块相邻的已编码宏块的分块模式,将被采用最多的分块模式选择为当前宏 块的分块模式。进一步地,所述被采用最多的分块模式不唯一时,将其中分块较小的那种分块模 式选择为当前宏块的分块模式。进一步地,所述被采用最多的分块模式不唯一并且分块大小都相同时,选择其中 分块的水平方向像素值大于垂直方向像素值的那种分块模式。根据本发明的另一方面,本发明提供一种帧内预测装置,所述装置包括统计模 块,统计所述当前宏块相邻的已编码宏块的分块模式;分块模块,根据被当前宏块相邻的已 编码宏块采用的最多的分块模式对当前宏块进行分块;和预测编码模块,对当前宏块的分 块进行预测编码;其中,所述当前宏块为非边界块。进一步地,所述当前宏块相邻的已编码宏块包括当前宏块的左宏块、左上宏块、 上宏块和右上宏块。进一步地,当所述当前宏块相邻的已编码宏块采用最多的分块模式不唯一时,所 述分块模块将其中分块较小的那种分块模式选择为当前宏块的分块模式。进一步地,所述被采用最多的分块模式不唯一并且分块大小都相同时,所述分块 模块选择其中分块的水平方向像素值大于垂直方向像素值的那种分块模式。与现有技术相比,本发明通过对宏块预定义了多种分块模式满足不同视频或者说 图像序列的需求。同时本发明根据对当前宏块相邻的已编码宏块所采用的分块模式进行统 计分析,然后决定当前宏块应当采用的分块模式的方案,提高了预测效果。

结合参考附图及接下来的详细描述,本发明将更容易理解,其中同样的附图标记对应 同样的结构部件,其中
图IA为现有技术中一帧图像内的宏块及分块的结构示意图; 图IB为现有技术中对一个分块进行帧内预测的原理示意图; 图2为本发明的一个实施例中的帧内预测方法的方法流程图; 图3为本发明的一个实施例中的宏块的分块模式的示意图; 图4为本发明的一个实施例中的宏块的相邻的已编码宏块的结构示意图;和 图5为本发明的一个实施例中的帧内预测装置的结构方框图。
具体实施方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方 式对本发明作进一步详细的说明。本发明所述帧内预测方法及装置的重点和亮点之一在于在对宏块进行分块以进 行后续帧内预测编码的过程中,对当前宏块采用不止一种的分块模式,并且利用当前宏块 相邻的已编码宏块所采用的分块模式来选择当前宏块的分块模式。请参考图2,其示出了本发明的一个实施例中的帧内预测方法200的方法流程图。 所述帧内预测方法200包括步骤202,预定义宏块的多个分块模式;步骤204,当当前宏块 是非边界块时,根据当前宏块相邻的已编码宏块的分块模式选择当前宏块的分块模式,并 利用选择的分块模式对当前宏块进行分块;步骤206,对当前宏块的分块进行预测编码。在步骤202中,首先预定义宏块的分块模式。还以第二代信源编码标准AVS标准 为例,由于该标准中的宏块大小为16*16像素,传统方式中只有一种分块模式,即对一个 16*16像素的宏块分为4个8*8像素的分块然后进行后续预测编码的方式。而在本实施例 中,所述宏块的分块模式包括分为4个8*8像素的分块、分为2个16*8像素的分块、分为2 个8*16像素的分块和分为1个16*16像素的分块四种,如图3所示。这样采用多种不同的 分块模式可以满足不同视频或者说图像序列的需求。在步骤204中,当当前宏块是非边界块时,根据当前宏块相邻的已编码宏块的分 块模式选择当前宏块的分块模式,并利用选择的分块模式对当前宏块进行分块。由于同一 帧内的相邻的宏块具有较强的相关性,所以在具体分块时根据当前宏块相邻的已编码宏块 所采用的分块模式来选择当前宏块的分块模式较为合理。所述当前宏块相邻的已编码宏块 可以包括当前宏块的左宏块、左上宏块、上宏块和右上宏块,如图4所示。当然采用诸如左 宏块、上宏块和右上宏块之类的其他邻块组合也是可以的,视具体实施例而定。然后统计当 前宏块相邻的已编码宏块的分块模式,根据其中被采用最多的分块模式来进行当前宏块的 分块,比如当前宏块的左宏块采用分为2个8*16像素的分块的分块模式、左上宏块采用分 为1个16*16像素的分块的分块模式、上宏块采用分为2个8*16像素的分块的分块模式和 右上宏块也采用分为2个8*16像素的分块的分块模式,则在统计分析后对当前宏块也采用 分为2个8*16像素的分块的分块模式。但是因为统计的当前宏块相邻的已编码宏块是偶 数个,有时会出现所述被采用最多的分块模式不唯一的情况,这时取其中分块较小的那种 分块模式对当前宏块进行分块,比如当前宏块的左宏块采用分为2个8*16像素的分块的分 块模式、左上宏块采用分为1个16*16像素的分块的分块模式、上宏块采用分为2个8*16 像素的分块的分块模式和右上宏块采用分为1个16*16像素的分块的分块模式,则在统计 分析后发现分为1个16*16像素的分块的分块模式和分为2个8*16像素的分块的分块模 式都被采用了两次,这时选择分为2个8*16像素的分块的分块模式作为当前宏块的分块模 式。显然此时还有一个特例,即被采用最多的分块模式是分为2个8*16像素的分块的分块 模式和分为2个16*8像素的分块的分块模式,此时两种分块模式的分块同样大小,则此时 选择分为2个16*8像素的分块的分块模式作为当前宏块的分块模式,即分块的水平方向像 素值大于垂直方向像素值的分块模式,这是因为图像水平方向的相关性通常要高于垂直方 向的相关性。但是在一些特殊实施例中,也可以在此时选择分为2个8*16像素的分块的分 块模式作为当前宏块的分块模式。另外当当前宏块为边界块时,由于当前宏块的邻块缺失,可以采用计算当前宏块进行四种分块模式的率失真(RDO)代价或者绝对误差和(SAD)等参数然后选择其中最优的 分块方式来作为当前宏块的分块模式。关于这类计算或者选择方式是本领域技术人员所熟 知的内容,在此不再累述。步骤206,对当前宏块的分块进行预测编码。即对当前宏块的每个分块分别进行 帧内预测编码,具体的预测策略包括水平预测、垂直预测、右下45度预测等方式。对于不同 的分块模式,每个宏块需要分别对其分块进行不同个帧内预测模式的编码。对于分为1个 16*16像素的分块的分块模式,一个宏块只有一个分块,只需要进行一个帧内预测模式的编 码。对于分为2个16*8像素的分块和分为2个8*16像素的分块的分块模式,一个宏块需 要进行2个帧内预测模式的编码。对于分为4个8*8像素的分块的分块模式,一个宏块需 要进行4个帧内预测模式的编码。所述帧内预测方法通过对宏块预定义了多种分块模式以满足不同视频或者说图 像序列的需求。在视频解码端同样需要先对当前宏块的分块模式进行预测然后才开始后续 的解码处理。特别地,在一些实施例中还需要在编码后的视频码流信息中加入编码时对于 边界块的分块模式信息,以便视频解码端对图像中的边界块正常解码,然后对于非边界块 采取如上所述的预测方式预测其分块模式然后解码。还应当认识到,不同的实施例中,采用 的预定义分块模式、选取的当前宏块的邻块组合、和当前宏块为边界块时采用的分块默认 模式都可能不同,视具体的实施例计算能力和技术人员的实施而会有所差别。所述帧内预 测方法可以明显提高帧内预测的性能,减少传输帧内预测模式所需要的码字。虽然在编码 端和解码端增加了一定的计算复杂度,但是几乎可以忽略不计。本发明还提供一种帧内预测装置,请参考图5,其示出了本发明的一个实施例中的 帧内预测装置500的结构方框图。所述帧内预测装置500适用于第二代信源编码标准AVS 标准中的亮度块帧内预测编码。所述帧内预测装置500包括判断模块502、统计模块504、 分块模块506、预测编码模块508和择优模块510。所述判断模块502判断当前宏块是否为边界宏块,如果是,则进入择优模块510进 行各种分块模式的率失真代价计算,并将计算结果给所述分块模块506,然后分块模块506 选择率失真代价最小的分块模式作为当前宏块的分块模式并进行分块;如果当前宏块是非 边界宏块,则进入统计模块504
所述统计模块504统计所述当前宏块相邻的已编码宏块的分块模式。所述当前宏块相 邻的已编码宏块包括当前宏块的左宏块、左上宏块、上宏块和右上宏块。所述分块模块506根据被所述当前宏块相邻的已编码宏块采用的最多的分块模 式对所述当前宏块进行分块。比如当前宏块的左宏块采用分为2个8*16像素的分块的分 块模式、左上宏块采用分为1个16*16像素的分块的分块模式、上宏块采用分为2个8*16 像素的分块的分块模式和右上宏块也采用分为2个8*16像素的分块的分块模式,则在统计 分析后对当前宏块也采用分为2个8*16像素的分块的分块模式。但是因为统计的当前宏 块相邻的已编码宏块是偶数个,有时会出现所述被采用最多的分块模式不唯一的情况,这 时取其中分块较小的那种分块模式对当前宏块进行分块,比如当前宏块的左宏块采用分为 2个8*16像素的分块的分块模式、左上宏块采用分为1个16*16像素的分块的分块模式、 上宏块采用分为2个8*16像素的分块的分块模式和右上宏块采用分为1个16*16像素的 分块的分块模式,则在统计分析后发现分为1个16*16像素的分块的分块模式和分为2个
68*16像素的分块的分块模式都被采用了两次,这时所述分块模块506选择分为2个8*16像 素的分块的分块模式作为当前宏块的分块模式并进行分块。另外如果被采用最多的分块模 式是分为2个8*16像素的分块的分块模式和分为2个16*8像素的分块的分块模式,此时 两种分块模式的分块同样大小,则此时所述分块模式506选择分为2个16*8像素的分块的 分块模式作为当前宏块的分块模式并进行分块。所述预测编码模块508对所述当前宏块的分块进行预测编码。对于不同的分块模 式,每个宏块需要分别对其分块进行不同个帧内预测模式的编码。对于分为1个16*16像素 的分块的分块模式,一个宏块只有一个分块,只需要进行一个帧内预测模式的编码。对于分 为2个16*8像素的分块和分为2个8*16像素的分块的分块模式,一个宏块需要进行2个 帧内预测模式的编码。对于分为4个8*8像素的分块的分块模式,一个宏块需要进行4个 帧内预测模式的编码。上述说明已经充分揭露了本发明的具体实施方式
。需要指出的是,熟悉该领域的 技术人员对本发明的具体实施方式
所做的任何改动均不脱离本发明的权利要求书的范围。 相应地,本发明的权利要求的范围也并不仅仅局限于所述具体实施方式

权利要求
一种帧内预测方法,其特征在于,其包括:预定义宏块的多个分块模式;当所述当前宏块为非边界块时,根据当前宏块相邻的已编码宏块的分块模式选择当前宏块的分块模式,并利用选择的分块模式对当前宏块进行分块;对当前宏块的分块进行预测编码。
2.根据权利要求1所述的方法,其特征在于,当所述宏块的大小为16*16像素时,所述 宏块的多个分块模式包括分为4个8*8像素的分块、分为2个16*8像素的分块、分为2个 8*16像素的分块和分为1个16*16像素的分块。
3.根据权利要求1所述的方法,其特征在于,当前宏块相邻的已编码宏块包括当前宏 块的左宏块、左上宏块、上宏块和右上宏块。
4.根据权利要求1所述的方法,其特征在于,所述根据当前宏块相邻的已编码宏块的 分块模式选择当前宏块的分块模式为统计当前宏块相邻的已编码宏块的分块模式,将被采用最多的分块模式选择为当前宏 块的分块模式。
5.根据权利要求4所述的方法,其特征在于,所述被采用最多的分块模式不唯一时,将 其中分块较小的那种分块模式选择为当前宏块的分块模式。
6.根据权利要求4所述的方法,其特征在于,所述被采用最多的分块模式不唯一并且 分块大小都相同时,选择其中分块的水平方向像素值大于垂直方向像素值的那种分块模 式。
7.—种帧内预测装置,其特征在于,其包括统计模块,统计所述当前宏块相邻的已编码宏块的分块模式;分块模块,根据被当前宏块相邻的已编码宏块采用的最多的分块模式对当前宏块进行 分块;和预测编码模块,对当前宏块的分块进行预测编码;其中,所述当前宏块为非边界块。
8.根据权利要求7所述的装置,其特征在于,所述当前宏块相邻的已编码宏块包括当 前宏块的左宏块、左上宏块、上宏块和右上宏块。
9.根据权利要求7所述的装置,其特征在于,当所述当前宏块相邻的已编码宏块采用 最多的分块模式不唯一时,所述分块模块将其中分块较小的那种分块模式选择为当前宏块 的分块模式。
10.根据权利要求7所述的装置,其特征在于,所述被采用最多的分块模式不唯一并且 分块大小都相同时,所述分块模块选择其中分块的水平方向像素值大于垂直方向像素值的 那种分块模式。
全文摘要
本发明揭露了一种帧内预测方法,所述方法包括预定义宏块的多个分块模式;根据当前宏块相邻的已编码宏块的分块模式选择当前宏块的分块模式,并利用选择的分块模式对当前宏块进行分块;对当前宏块的分块进行预测编码。本发明通过对宏块预定义了多种分块模式满足不同视频或者说图像序列的需求。同时本发明根据对当前宏块相邻的已编码宏块所采用的分块模式进行统计分析,然后决定当前宏块应当采用的分块模式的方案,提高了预测效果。
文档编号H04N7/32GK101977317SQ20101052064
公开日2011年2月16日 申请日期2010年10月27日 优先权日2010年10月27日
发明者季鹏飞 申请人:无锡中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1