参考帧数据压缩方法及其装置转让专利

申请号 : CN201510435316.8

文献号 : CN106375762B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘斌诸悦陈晓春章旭东钱学锋徐宁

申请人 : 杭州海康威视数字技术股份有限公司上海富瀚微电子股份有限公司

摘要 :

本发明涉及图像处理领域,公开了一种参考帧数据压缩方法及其装置。本发明的压缩方法包括以下步骤:将参考帧分割为多个预定大小的数据块;对每一个数据块,分别计算应用各种候选的预测模式时的压缩率,并选择压缩率最高的预测模式对该数据块进行进行压缩;其中,各候选的预测模式只使用本数据块中的各像素点进行块内预测,各候选的预测模式分别将数据块分割为多个组,每个组包括多个像素点,各候选的预测模式中包括组内像素点按45度或135度方向分布的预测模式。本发明可选择出对应最高压缩率的预测模式对数据块进行单独压缩,从而有效提高参考帧的压缩率和压缩成功率。

权利要求 :

1.一种参考帧数据压缩方法,其特征在于,包括以下步骤:

将参考帧分割为多个预定大小的数据块;

对每一个数据块,分别计算应用各种候选的预测模式时的压缩率,并选择压缩率最高的预测模式对该数据块进行压缩;其中,各候选的预测模式只使用本数据块中的各像素点进行块内预测,各候选的预测模式分别将数据块分割为多个组,每个组包括多个像素点,各候选的预测模式中包括组内像素点按45度或135度方向分布的预测模式;

所述“对每一个数据块,分别计算应用各种候选的预测模式时的压缩率”的步骤包括以下子步骤:根据当前预测模式计算数据块中每个像素的预测值和真实值之间的差值;

根据数据块被分割成的每个组中绝对值最大的所述差值确定相应组像素的编码模式;

计算采用各组确定的相应编码模式对各组进行编码所需的比特数,并基于计算所得的所述比特数确定数据块在当前预测模式下的压缩率。

2.根据权利要求1所述的参考帧数据压缩方法,其特征在于,所述数据块被所述预测模式分割的多个组包括:一组由135度对角线上的像素组成的第一类组和至少两组组内的像素沿45度方向分布于135度对角线两侧的第二类组,且第一类组中的像素数目为第二类组中像素数目的二分之一;或者一组由45度对角线上的像素组成的第一类组和至少两组组内的像素沿135度方向分布于45度对角线两侧的第二类组,且第一类组中的像素数目为第二类组中像素数目的二分之一。

3.根据权利要求1所述的参考帧数据压缩方法,其特征在于,各候选的预测模式中包括第一旋转预测模式,所述数据块被第一旋转预测模式分割的多个组包括:一组由该数据块中心两行中的一行上的像素组成的第一类组和至少两组由该数据块的相邻两列像素组成的第二类组;其中,该预测模式的初始预测像素位于第一类组所在的行,第一类组被初始预测像素分成两个第一类子组,所述两个第一类子组的预测方向相反,每个第二类组被第一类组所在的行分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且所述子组间的预测方向沿顺时针或逆时针旋转变化。

4.根据权利要求1所述的参考帧数据压缩方法,其特征在于,各候选的预测模式中包括第二旋转预测模式,所述数据块被第二旋转预测模式分割的多个组包括:一组由该数据块中心两列中的一列上的像素组成的第一类组和至少两组由该数据块的相邻两行像素组成的第二类组;其中,该预测模式的初始预测像素位于第一类组所在的列,第一类组被初始预测像素分成两个第一类子组,所述两个第一类子组的预测方向相反,每个第二类组被第一类组所在的列分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且所述子组间的预测方向沿顺时针或逆时针旋转变化。

5.根据权利要求1所述的参考帧数据压缩方法,其特征在于,在所述根据数据块被分割成的每个组中绝对值最大的所述差值确定相应组像素的编码模式的子步骤中,如果差值绝对值中的最大值小于等于64,则对该最大值所对应的组进行编码时,采用的编码模式的二进制补码位数小于等于7,并且当所述最大值为0或1时,采用的编码模式的二进制补码位数为1。

6.根据权利要求1至5中任一项所述的参考帧数据压缩方法,其特征在于,所述数据块包括NxN个像素,其中N为大于4的正整数;

所述各候选的预测模式的初始预测像素为位于所述数据块中心的像素中的一个。

7.一种参考帧数据压缩装置,其特征在于,包括:

分割单元,用于将参考帧分割为多个预定大小的数据块;

压缩单元,用于对每一个数据块,分别计算应用各种候选的预测模式时的压缩率,并选择压缩率最高的预测模式对该数据块进行进行压缩;

其中,各候选的预测模式只使用本数据块中的各像素点进行块内预测,各候选的预测模式分别将数据块分割为多个组,每个组包括多个像素点,各候选的预测模式中包括组内像素点按45度或135度方向分布的预测模式;

所述压缩单元包括以下子单元:

计算子单元,用于根据当前预测模式计算数据块中每个像素的预测值和真实值之间的差值;

编码子单元,用于根据数据块被分割成的每个组中绝对值最大的所述差值确定相应组像素的编码模式;

压缩子单元,用于计算采用各组确定的相应编码模式对各组进行编码所需的比特数,并基于计算所得的所述比特数确定数据块在当前预测模式下的压缩率。

8.根据权利要求7所述的参考帧数据压缩装置,其特征在于,各候选的预测模式中包括第一旋转预测模式,所述数据块被第一旋转预测模式分割的多个组包括:一组由该数据块中心两行中的一行上的像素组成的第一类组和至少两组由该数据块的相邻两列像素组成的第二类组;其中,该预测模式的初始预测像素位于第一类组所在的行,第一类组被初始预测像素分成两个第一类子组,所述两个第一类子组的预测方向相反,每个第二类组被第一类组所在的行分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且所述子组间的预测方向沿顺时针或逆时针旋转变化。

9.根据权利要求7所述的参考帧数据压缩装置,其特征在于,各候选的预测模式中包括第二旋转预测模式,所述数据块被第二旋转预测模式分割的多个组包括:一组由该数据块中心两列中的一列上的像素组成的第一类组和至少两组由该数据块的相邻两行像素组成的第二类组;其中,该预测模式的初始预测像素位于第一类组所在的列,第一类组被初始预测像素分成两个第一类子组,所述两个第一类子组的预测方向相反,每个第二类组被第一类组所在的列分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且所述子组间的预测方向沿顺时针或逆时针旋转变化。

10.根据权利要求7所述的参考帧数据压缩装置,其特征在于,

所述编码子单元在确定编码模式时,如果所述差值绝对值中的最大值小于等于64,则对该最大值所对应的组进行编码时,采用的编码模式的二进制补码位数小于等于7,并且当所述最大值为0或1时,采用的编码模式的二进制补码位数为1。

11.根据权利要求7至10中任一项所述的参考帧数据压缩装置,其特征在于,所述数据块包括NxN个像素,其中N为大于4的正整数;

所述各候选的预测模式的初始预测像素为位于所述数据块中心的像素中的一个。

说明书 :

参考帧数据压缩方法及其装置

技术领域

[0001] 本发明涉及图像处理领域,特别涉及参考帧数据压缩技术。

背景技术

[0002] 随着视频编码标准的不断发展,各类编码标准,例如H.264(一种视频编解码器标准)、H.265(一种视频编码标准)、VP9(一种视频压缩标准)等,所支持的编码图片尺寸越来越大,高清编码、4K编码已成为家常便饭。图片尺寸的变大直接导致参考帧数据的大幅度增加,编码器芯片的读写带宽也跟随着增加,在一些带宽紧张的编码器系统中,读写带宽对编码器的性能将产生直接影响。
[0003] 目前,参考帧压缩方法可以简单地分为两类:一类是有损压缩,一类是无损压缩。相对于无损压缩,有损压缩有更好的压缩率,但是这会降低编码图像的质量,为此大多数编码器采用的是无损压缩或者有损和无损压缩相结合的方法。但是,目前的压缩方法依然存在压缩率低、编码不灵活、运输复杂度高,编码复杂等问题,为此开发一种压缩率高的参考帧压缩方法对编码器来说至关重要。

发明内容

[0004] 本发明的目的在于提供一种参考帧数据压缩方法及其装置,可选择出对应最高压缩率的预测模式对数据块进行单独压缩,从而有效提高参考帧的压缩率和压缩成功率。
[0005] 为解决上述技术问题,本发明的实施方式公开了一种参考帧数据压缩方法,包括以下步骤:
[0006] 将参考帧分割为多个预定大小的数据块;
[0007] 对每一个数据块,分别计算应用各种候选的预测模式时的压缩率,并选择压缩率最高的预测模式对该数据块进行进行压缩;其中,各候选的预测模式只使用本数据块中的各像素点进行块内预测,各候选的预测模式分别将数据块分割为多个组,每个组包括多个像素点,各候选的预测模式中包括组内像素点按45度或135度方向分布的预测模式。
[0008] 本发明的实施方式还公开了一种参考帧数据压缩装置,包括:
[0009] 分割单元,用于将参考帧分割为多个预定大小的数据块;
[0010] 压缩单元,用于对每一个数据块,分别计算应用各种候选的预测模式时的压缩率,并选择压缩率最高的预测模式对该数据块进行进行压缩;
[0011] 其中,各候选的预测模式只使用本数据块中的各像素点进行块内预测,各候选的预测模式分别将数据块分割为多个组,每个组包括多个像素点,各候选的预测模式中包括组内像素点按45度或135度方向分布的预测模式。
[0012] 本发明实施方式与现有技术相比,主要区别及其效果在于:
[0013] 通过单独计算参考帧的各数据块在不同预测模式下的压缩率,可选择出对应最高压缩率的预测模式对数据块进行单独压缩,从而有效提高参考帧的压缩率和压缩成功率。
[0014] 进一步地,可减少解压缩的运算路径,从而减小解压缩引擎的压力,以8x8的数据块为例,从坐标为(0,0)的初始预测像素至坐标为(7,7)的像素需要经过14级的加法器,对压缩引擎的要求较高,而当初始预测像素的坐标改为(3,3)/(3,4)/(4,3)/(4,4)时,最长路径从(3,3)到(7,7)只需经过8级加法器,这对优化电路时序和安排流水都非常有帮助。

附图说明

[0015] 图1是本发明第一实施方式中一种参考帧数据压缩方法的流程示意图;
[0016] 图2a和2b是本发明第一实施方式中一种预测模式下数据块的分组示意图;
[0017] 图3a和3b是本发明第一实施方式中一种预测模式下数据块的分组示意图;
[0018] 图4a和4b是本发明第一实施方式中一种预测模式下数据块的分组示意图;
[0019] 图5a和5b是本发明第一实施方式中一种预测模式下数据块的分组示意图;
[0020] 图6是本发明第三实施方式中一种参考帧数据压缩装置的结构示意图。

具体实施方式

[0021] 在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
[0022] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
[0023] 本发明第一实施方式涉及一种参考帧数据压缩方法。图1是该参考帧数据压缩方法的流程示意图。
[0024] 具体地说,如图1所示,该参考帧数据压缩方法包括以下步骤:
[0025] 在步骤101中,将参考帧分割为多个预定大小的数据块。
[0026] 此后进入步骤102,对每一个数据块,分别计算应用各种候选的预测模式时的压缩率,并选择压缩率最高的预测模式对该数据块进行进行压缩。其中,各候选的预测模式只使用本数据块中的各像素点进行块内预测,各候选的预测模式分别将数据块分割为多个组,每个组包括多个像素点,各候选的预测模式中包括组内像素点按45度或135度方向分布的预测模式。
[0027] 此后,结束本流程。
[0028] 此外,在一优选例中,在步骤102中,数据块被预测模式分割的多个组包括:
[0029] 一组由135度对角线上的像素组成的第一类组和至少两组组内的像素沿45度方向分布于135度对角线两侧的第二类组,且第一类组中的像素数目为第二类组中像素数目的二分之一。或者一组由45度对角线上的像素组成的第一类组和至少两组组内的像素沿135度方向分布于45度对角线两侧的第二类组,且第一类组中的像素数目为第二类组中像素数目的二分之一。
[0030] 具体地,如图2a和2b所示,以8×8的数据块为例,图2a示出的数据块的第一类组由135度对角线上的像素组成,其中初始预测像素(黑色)为对角线上第四个像素,其将第一类组分成两个第一类子组,四组第二类组沿45度方向分布,分别被135度对角线上的像素分成共8个第二类子组(需要说明的是,在本发明附图中,颜色相同的像素组成一组)。图2b示出的数据块的第一类组由45度对角线上的像素组成,其中,初始预测像素为对角线上第四个像素,其将第一类组分成两个第一类子组,四组第二类组沿135度方向分布,分别被45度对角线上的像素分成共8个第二类子组。
[0031] 此外,在另一优选例中,各候选的预测模式中还包括第一旋转预测模式,数据块被第一旋转预测模式分割的多个组包括:
[0032] 一组由该数据块中心两行中的一行上的像素组成的第一类组和至少两组由该数据块的相邻两列像素组成的第二类组。其中,该预测模式的初始预测像素位于第一类组所在的行,第一类组被初始预测像素分成两个第一类子组,两个第一类子组的预测方向相反,每个第二类组被第一类组所在的行分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且子组间的预测方向沿顺时针或逆时针旋转变化。具体地,如图3a所示,以8×8的数据块为例,图3a示出的数据块的第一类组由第四行上的7个像素组成,初始预测像素坐标为(4,4),即第四行第四列,将第一类组分成两组第一类子组,其中组a1的预测方向向左,a2的预测方向向右。数据块相邻列组成第二类组,其中第1列和第2列组成的第二类组被分成b1和b2两个第二类子组,预测方向分别为向上和向左,依次类推,预测方向以a1→b1+c1→d1+e1→a2→d2+e2→c2+b2的顺序沿顺时针旋转变化。
[0033] 此外,可以理解,在本发明的其他实施方式中,被第一旋转预测模式分组后的数据块中各组的预测方向也可以与图3a中的不同,例如,预测方向以a1→b1+c1→d1→e1→a2→d2→e2→c2→b2的顺序沿顺时针或逆时针旋转变化,等等。
[0034] 此外,在另一优选例中,各候选的预测模式中包括第二旋转预测模式,数据块被第二旋转预测模式分割的多个组包括:
[0035] 一组由该数据块中心两列中的一列上的像素组成的第一类组和至少两组由该数据块的相邻两行像素组成的第二类组。其中,该预测模式的初始预测像素位于第一类组所在的列,第一类组被初始预测像素分成两个第一类子组,两个第一类子组的预测方向相反,每个第二类组被第一类组所在的列分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且子组间的预测方向沿顺时针或逆时针旋转变化。具体地,如图3b所示,以8×8的数据块为例,与图3a类似,区别在于第一类组由第四列的像素组成,第二类组由相邻行组成。其中,预测方向以a3→b3+c3→d3→e3→a4→d4+e4→c4+b4的顺序沿逆时针旋转变化。同理,被第一旋转预测模式分组后的数据块中各组的预测方向也可以与图3b中的不同。
[0036] 此外,可以理解,基于图像纹理变化的多样性,在本发明的其他实施方式中,候选预测模式还可以包括其他预测模式,如水平预测模式(如图4a和图4b所示)、竖直预测模式(如图5a和图5b所示)等等。其中,预测方向如箭头所示,表示像素的方格中的横线表示取相邻两个像素的平均值,在图4b中取同一列相邻两个像素的平均值,在图5b中取同一行相邻两个像素的平均值。
[0037] 优选地,本申请中的数据块包括NxN个像素,其中N为大于4的正整数。各候选的预测模式的初始预测像素为位于数据块中心的像素中的一个。
[0038] 将中心的像素作为初始预测像素,可减少解压缩的运算路径,从而减小解压缩引擎的压力,如图4a和4b所示,以8x8的数据块为例,从坐标为(0,0)的初始预测像素至坐标为(7,7)的像素需要经过14级的加法器,对压缩引擎的要求较高,而当初始预测像素的坐标改为(3,3)/(3,4)/(4,3)/(4,4)时,最长路径从(3,3)到(7,7)只需经过8级加法器,这对优化电路时序和安排流水都非常有帮助。
[0039] 此外,可以理解,在本申请的其他实施方式中,也可以不采用中心像素作为初始预测像素,在此不做限制。
[0040] 在另一优选例中,上述步骤102包括以下子步骤:
[0041] 根据当前预测模式计算数据块中每个像素的预测值和真实值之间的差值。根据数据块被分割成的每个组中绝对值最大的差值确定相应组像素的编码模式。计算采用各组确定的相应编码模式对各组进行编码所需的比特数,并基于计算所得的比特数确定数据块在当前预测模式下的压缩率。
[0042] 此外,在根据数据块被分割成的每个组中绝对值最大的差值确定相应组像素的编码模式的子步骤中,如果差值绝对值中的最大值小于等于64,则对该最大值所对应的组进行编码时,采用的编码模式的二进制补码位数小于等于7,并且当最大值为0或1时,采用的编码模式的二进制补码位数为1。
[0043] 根据参考帧的特性,通过单独计算参考帧的各数据块在不同预测模式下的压缩率,可选择出对应最高压缩率的预测模式对数据块进行单独压缩,从而有效提高参考帧的压缩率和压缩成功率。
[0044] 本发明第二实施方式涉及一种参考帧数据压缩方法。在该实施方式中,以8×8的数据块为例,具体地,包括以下步骤:
[0045] 第一,采用第一实施方式中所述的候选预测模式中的一种,对除中心预测像素外的每一个像素计算预测值。
[0046] 第二,将每一个像素的真实值减去预测值得到每一个像素点的差值。
[0047] 第三,根据当前的预测模式,将除中心预测像素外的63个像素点,划分成一个第一类组和4个第二类组,其中第一类组以中心预测像素为界,划分成两个第一类子组,每个第二类组被第一类组划分成四个第二类子组。
[0048] 第四,计算第三步得到的每个子组的编码模式。具体地,确定子组中最大的差值绝对值所属的表1中mm列的数据范围,确定的数据范围所对应的编码模式(code mode,CM)即为该子组的编码模式。其中,在表1中,差值绝对值中的最大值小于等于64,则对该最大值所对应的组进行编码时,采用的编码模式的二进制补码位数小于等于7,并且当最大值为0或1时,采用的编码模式的二进制补码位数为1。S为符号位。
[0049] 表1.编码表
[0050]
[0051]
[0052] 可以理解,在本发明的其他实施方式中,也可以采用其他编码方式为各子组确定编码模式。
[0053] 第五,根据如下方式对各子组的编码模式进行合并:首先,将编码模式相同的子组进行合并,编码模式唯一的子组不做合并处理;其次,若第一类组和第二类组中存在像素点个数为3的子组,并且存在一个比该子组的编码模式大1的子组,则将这两个子组合并,并为合并后的组采用较大的编码模式。
[0054] 第六,根据第五步得到合并情况,计算各自根据表1完成编码所需要的比特数(包括所有子组(包括合并子组)的编码模式、差值数据和表1查表时必要的最大值符号的标志)和重组模式编码所需要的比特数(第一类组只有2种重组模式,需要比特表示,第二类组有15种重组模式,第二类组合并若成一个由两个子组组成的组,则用3比特,其他情况用4比特);
[0055] 第七,采用第一至第六步的方式计算其他候选预测模式压缩数据块后的比特数,选择压缩率最高的预测模式作为8X8数据块的最终预测模式。
[0056] 第八,采用选择出最终预测模式对参考帧进行压缩,计算压缩后的比特数,包括中心预测像素值(8比特)、预测模式(3比特)、8X8数据块的重组模式(13~17比特)、第一类组和所有第二类组的编码模式(15~54比特)、所有差值编码和查表1时必要的最大值符号的标志,若压缩后比特数大于512则此块为压不动的块,用原数据块作为最终压缩结果,否则按照上述顺序将数据按顺序组织作为最终压缩结果。
[0057] 此外,采用上述方法,对8X8数据块压缩结果进行测试,测试使用了8个不同的720P序列,与现有的压缩方法相比,本发明得到的压缩率(CR)、压缩超过一半比率(≤256)和压缩成功比率(≤512)的情况如表2所示:
[0058] 表2 压缩结果比对表
[0059]
[0060] 其中,Qp表示量化参数。从表2可以看出,与HAC+SBT(一种现有的压缩方法)相比,随着Qp的增大,MDA+SFL(一种现有的压缩方法)压缩率(数据块压缩后的比特数除以512所得,越低说明压缩率越高)和压缩超过一半(越高越好)的优势越来越明显,虽然压缩成功的劣势有所减缓,但是按照720P的幅面计算,压缩失败个数仍然相差非常多;与HAC+SBT相比,本发明基本保持了MDA_SFL的所有优势,压缩成功的个数与HAC+SBT十分接近;与MDA+SFL相比,在QP偏小时,本发明的压缩率和压缩成功均有优势,在QP偏大时,尽管压缩率相对较差,但是压缩成功的优势依然存在。
[0061] 本发明的各方法实施方式均可以以软件、硬件、固件等方式实现。不管本发明是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable Array Logic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称“PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(Electrically Erasable Programmable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
[0062] 本发明第三实施方式涉及一种参考帧数据压缩装置。图6是该参考帧数据压缩装置的结构示意图。
[0063] 具体地说,该参考帧数据压缩装置包括:
[0064] 分割单元,用于将参考帧分割为多个预定大小的数据块。
[0065] 压缩单元,用于对每一个数据块,分别计算应用各种候选的预测模式时的压缩率,并选择压缩率最高的预测模式对该数据块进行进行压缩。其中,各候选的预测模式只使用本数据块中的各像素点进行块内预测,各候选的预测模式分别将数据块分割为多个组,每个组包括多个像素点,各候选的预测模式中包括组内像素点按45度或135度方向分布的预测模式。
[0066] 此外,在一优选例中,数据块被组内像素点按45度或135度方向分布的预测模式分割的多个组包括:
[0067] 一组由135度对角线上的像素组成的第一类组和至少两组组内的像素沿45度方向分布于135度对角线两侧的第二类组,且第一类组中的像素数目为第二类组中像素数目的二分之一。或者一组由45度对角线上的像素组成的第一类组和至少两组组内的像素沿135度方向分布于45度对角线两侧的第二类组,且第一类组中的像素数目为第二类组中像素数目的二分之一。
[0068] 在另一优选例中,各候选的预测模式中包括第一旋转预测模式,数据块被第一旋转预测模式分割的多个组包括:
[0069] 一组由该数据块中心两行中的一行上的像素组成的第一类组和至少两组由该数据块的相邻两列像素组成的第二类组。其中,该预测模式的初始预测像素位于第一类组所在的行,第一类组被初始预测像素分成两个第一类子组,两个第一类子组的预测方向相反,每个第二类组被第一类组所在的行分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且子组间的预测方向沿顺时针或逆时针旋转变化。
[0070] 在另一优选例中,各候选的预测模式中包括第二旋转预测模式,数据块被第二旋转预测模式分割的多个组包括:
[0071] 一组由该数据块中心两列中的一列上的像素组成的第一类组和至少两组由该数据块的相邻两行像素组成的第二类组。其中,该预测模式的初始预测像素位于第一类组所在的列,第一类组被初始预测像素分成两个第一类子组,两个第一类子组的预测方向相反,每个第二类组被第一类组所在的列分成两个第二类子组,同属一个第二类组的两个第二类子组的预测方向相互垂直,且子组间的预测方向沿顺时针或逆时针旋转变化。
[0072] 此外,在另一优选例中,上述压缩单元包括以下子单元:
[0073] 计算子单元,用于根据当前预测模式计算数据块中每个像素的预测值和真实值之间的差值。
[0074] 编码子单元,用于根据数据块被分割成的每个组中绝对值最大的差值确定相应组像素的编码模式。并且编码子单元在确定编码模式时,如果差值绝对值中的最大值小于等于64,则对该最大值所对应的组进行编码时,采用的编码模式的二进制补码位数小于等于7,并且当最大值为0或1时,采用的编码模式的二进制补码位数为1。
[0075] 压缩子单元,用于计算采用各组确定的相应编码模式对各组进行编码所需的比特数,并基于计算所得的比特数确定数据块在当前预测模式下的压缩率。
[0076] 此外,在另一优选例中,数据块包括NxN个像素,其中N为大于4的正整数。各候选的预测模式的初始预测像素为位于数据块中心的像素中的一个。
[0077] 第一实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
[0078] 需要说明的是,本发明各设备实施方式中提到的各单元都是逻辑单元,在物理上,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现,这些逻辑单元本身的物理实现方式并不是最重要的,这些逻辑单元所实现的功能的组合才是解决本发明所提出的技术问题的关键。此外,为了突出本发明的创新部分,本发明上述各设备实施方式并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,这并不表明上述设备实施方式并不存在其它的单元。
[0079] 需要说明的是,在本专利的权利要求和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0080] 虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。