综合空时预测的制作方法

文档序号:7639671阅读:110来源:国知局
专利名称:综合空时预测的制作方法
技术领域
本发明涉及视频压縮领域。
背景技术
序列的视频图像一般是按照两种方式中的一种方式通过视频压縮处理 来编码的。
一种方式是,将通过自身编码的图像序列中的每个图像作为独
立或静止图像。此处理被称为帧内编码(intra-encoding)压縮处理,因为 该编码算法仅对目标图像内的特征进行操作。执行视频压縮的另一种方式 (称为时间预测编码)是,基于先前编码的另一参考图像来预测目标图像 的运动,而指定要编码的图像。此处理也被称为帧间编码(inter-encoding) ,因为,此预测是根据目标图像和参考图像之间的相互关系来 生成的。
在时间预测编码处理中,目标图像和参考图像被分割成多个块。如果 目标图像中的块与参考图像中的块类似,则该块从其在参考图像中的位置 到其在目标图像中的位置的空间位移或运动是确定的。此位移信息存储在 关联参考块和目标块的运动矢量中。来自参考块的被编码的图像数据提供 对目标块的图像数据的预测。
虽然可以通过时间预测法来预测目标图像中的大多数目标块的图像数 据,但是,不能通过该方法来很好地预测某些目标块。例如,目标图像中 的块可能不与参考图像中的块类似。在这种情况下,利用帧内编码处理对 目标块进行编码,而无需依赖任何参考图像。
图1示出利用时间预测(或帧间编码)和帧内编码两种方法对目标图 像进行编码的示例。目标图像120中的目标块125利用运动矢量130与参 考图像110中的类似块115匹配。然后,在解码处理中,根据参考块115 的图像数据来预测目标块125的图像数据。从而通过时间预测法对目标块125进行有效地编码。
然而,目标块140不能通时间预测法来编码,因为,该目标块在参考 图像110中没有类似块。因此,应当通过帧内编码法来对目标块40进行 编码。
可利用时间预测法来很好地编码某些块,并且通过帧内编码方法来很 好地编码其它块。当利用时间预测和帧内编码两种方法对图像进行编码 时,编码器必须确定对每个块是利用时间预测法还是帧内编码法。然而, 由于传统的时间预测法和帧内编码法会产生不同结果,因此,当作出该决 定时,它们各自的被编码块太不相同,以致于不能进行比较。
例如,当对目标块进行编码时, 一般的视频压縮算法利用图2所示的 确定系统200来确定对该块应用时间预测法还是帧内编码法。应用时间预 测编码法的时间预测逻辑设备220对目标块210编码。逻辑设备220确定 运动矢量230,以将被编码的图像数据从参考块映射到目标块210。时间 预测逻辑设备220还计算该目标块的预测的图像数据和该目标块的实际图 像数据之间的预测误差240。位成本估计逻辑设备250估计运动矢量230 的位成本和预测误差240的位成本,以产生对目标块210进行时间编码的 位成本。
确定系统200还利用帧内编码处理对目标块210进行编码。帧内编码 逻辑设备260对目标块中的原始像素值应用离散余弦变换(DCT),以产 生一组DCT系数270。块内位成本估计逻辑设备280估计对DCT系数进 行编码的位成本。位成本选择逻辑设备290对由逻辑设备250和280产生 的位成本进行比较,并且选择具有较低位成本的编码处理。
如图2所示,时间预测处理产生运动矢量和预测误差,而帧内编码法 产生一组DCT系数。为了比较这两种方法,确定系统必须执行两种编码 处理,然后估计出根据每种处理的编码结果的位成本,之后识别出产生具 有较低位成本的处理。因此,问题是确定系统不能在无需估计两种处理的 全部结果的位成本的情况下来确定出哪个特定编码处理能提供较好的成本 效益。

发明内容
一种生成对目标图像中的目标像素块的空间预测的方法,该方法包括 以下步骤生成针对目标像素块的空间矢量,利用该空间矢量构建空间参 考块,并且,利用该空间参考块来生成该目标块的空间预测。


图1示出利用时间预测(或帧间编码)和帧内编码两种方法对目标图 像进行编码的示例;
图2示出确定系统的示例,该确定系统用于确定对块应用时间预测法 还是帧内编码法;
图3示出综合空时预测编码系统的示例;
图4示出用于执行综合空时预测编码(ISTPE)方法的示例;
图5示出用于执行ISTPE方法的实施例的DCT空时预测处理的示
图6示出利用ISTPE方法的系统的示例。
具体实施例方式
在下面的描述中,参考了形成本申请的一部分的附图,在附图中显示 出了可以实施本发明的具体实施例。应当了解,可以利用其它实施例,并 且在不脱离本发明的范围内可以作出各种结构改变。例如,本领域的技术 人员将明白,用于描述各个实施例的术语领域、帧、图像或画面通常可以 根据所引用的视频数据互换。
空间预测法通过创建空间矢量和空间预测误差来替代传统的帧内编码 法。空间矢量具有的结构类似于运动矢量的结构。所以,对空间矢量进行 编码的成本类似于对运动矢量进行编码的成本。因此,空间预测法可以与 时间预测法结合而产生一种综合空时预测编码(ISTPE)方法。
为了将时间和空间预测法结合在一起,基于误差的选择处理通过比较 两种方法的预测误差来选择对特定目标块应用哪种方法。选择处理生成了 时间预测法的预测结果,包括运动矢量和时间预测误差。选择处理还生成空间预测法的预测结果,包括空间矢量和空间预测误差。因为对运动矢量 进行编码的成本类似于对空间矢量进行编码的成本,所以该选择处理通过 比较空间和时间预测误差来确定选择哪种编码方法。利用具有较小预测误 差的预测方法来对目标块进行编码。作出该选择无需估计空间和时间预测 法的编码结果的位成本。
由于时间和空间预测法具有类似的预测和编码阶段,并且产生类似的 输出,因此,执行综合法的编码器在选择适当编码法方面具有较小的复杂
性和较好的精确性。图3示出了综合空时预测编码系统300。系统300通
过基于误差的选择来确定对目标块应用哪种预测方法。
时间预测逻辑设备320利用时间预测处理对目标块310进行编码。逻 辑设备320生成运动矢量330,以指向参考块。逻辑设备320利用来自参 考块的被编码的图像数据预测目标块的图像数据。然后,逻辑设备320计 算时间预测误差340,该时间预测误差340是对目标块进行预测的图像数 据和该目标块的实际图像数据之间的差。
还用空间预测逻辑设备350对目标块310编码,用于创建该目标块的 空间矢量360。逻辑设备350利用空间矢量构建空间参考块。逻辑设备 350利用空间参考块预测目标块的图像数据。然后,逻辑设备350计算空 间预测的图像数据和实际图像数据之间的空间预测误差370 。
综合空时选择逻辑设备380对时间预测误差340和空间预测误差370 进行比较,选择具有较小误差的编码方法,作为用于目标块310的适当编 码法。
如图3所示,空间预测逻辑设备350产生输出,诸如空间矢量360和 空间预测误差370,该输出类似于时间预测逻辑设备320的输出。当选择 时间或空间预测法对目标块进行编码时,编码器系统300可以通过直接比 较时间和空间预测的预测误差来作决定,而无需估计时间和空间预测的位 成本。因此,减小了作出决定的复杂性。这使得空间预测法很容易与时间 预测法结合,以提供一种执行综合空时预测编码(ISTPE)的系统。
此外,由ISTPE系统生成的预测误差可以利用基于非块处理来进行编 码。这与传统的帧间和帧内编码法不同,仅生成经过帧间编码(或者时间预测)的块之间的预测误差。因此,这些传统预测误差必须要逐块(例
如,按照基于DCT法的块)进行编码。ISPTE处理生成对目标块进行空间
预测和时间预测的预测误差。这样,可以将两种方法产生的预测误差集合 在一起,并利用基于非块的变换(例如,微波变换)来对其进行编码。
图4示出了一种用于对目标图像执行ISTPE的方法。在410中,接收 目标图像的时间参考图像。经过编码的时间参考图像可以是一个也可以是 多个参考图像。
在402中,选择目标块的形态图案(shape pattern)并且将其应用到要 被预测的目标图像。形态图案可以是固定的块图案(例如,在MPEG-1/2 中使用的图案),也可以是可变的块图案(例如,在MREG-AVC/H.264 中使用的图案)。在420中,所选择的图案被应用于目标图像,以生成被 称为目标块的一组块(或其它形态)。每个目标块是要根据时间或空间参 考块一起预测的目标图像中最小的像素组,例如, 一个目标块中的所有像 素共享相同的运动矢量或空间矢量。
在425中,选择目标块中的一个进行编码。在430中,时间预测法应 用于所选择的目标块,以生成指向参考块的运动矢量。本领域技术人员所 知的传统运动估计步骤可以用来识别参考块和确定运动矢量。例如,可以 根据目标块和参考块之间的位移(或运动)来计算运动矢量。在435中, 参考块中被编码的图像数据用于生成对目标块的图像数据的时间预测。
在440中,空间预测法用于所选择的目标块,以创建该目标块的空间 矢量。空间矢量是一组用于创建该目标块的原始方案(coarse version)
(被称为空间参考块)的数据。在450中,利用空间矢量构建空间参考 块。可以用不同的方法来创建空间矢量和构建空间参考块。在一个实施例 中,使用离散余弦变换空间预测(DCT-SP)处理来创建空间矢量和构建 相应的空间参考块。下面描述DCT-SP处理的一个示例。
在455中,空间参考块用于生成对该目标块的图像数据的空间预测。
在460中,选择函数选择用于对该目标块进行编码的预测方法。该选 择是通过比较时间和空间预测法的预测误差来完成的。时间预测误差是通 过从该块的实际像素值中减去对该块进行时间预测的像素值而得到的。同空间预测的像素值而得到的。通 常,选择函数计算出时间预测误差和空间预测误差,比较这两种误差,并 选择具有较低预测误差的方法。在一个实施例中,该选择函数确定时间预
测和空间预测两种方法对目标块的预测失真(prediction distortion)的值,
并且选择具有较低预测失真的编码法。
对块预测失真的示例是
",Zdvw)2 (1)
其中,A"S表示块(或者形态)B中的所有像素,^是目标图像的 原始像素值,以及"J是目标像素的预测值。
根据435,时间预测可以输入公式(1),以产生时间预测失真。根据 455,空间预测可以应用到公式(1),以产生空间预测失真。因此,公式 (1)可用于生成时间和空间预测的预测失真。然后,很容易地比较两种 预测失真,以选择适当的编码法。
预测失真的另 一示例是预测误差的绝对值的和
(2)
为了在460中用来确定对目标块是利用时间预测法还是空间预测法,用户 可以选择公式(1)、公式(2)或者其它函数。
在470中,利用适当编码法可以将最后的目标块预测误差(在460中 根据空间或时间编码选择的)与该块一起进行编码。替代地,在目标图像 中的每个目标块被预测和编码之后,可以对所有目标块的预测误差一起进 行编码。
在480中,如果图像中的其它目标块需要被编码,选择处理返回 425,否则,处理在490中结束。
更详细地参考图440到450,在图5中示出了创建空间矢量和构建空 间参考块的方法的示例。该示例性方法利用DCT (离散余弦变换)生成空 间矢量并构建其相应的空间参考块。
在440中,通过执行下面的函数来生成空间矢量。在510中,接收目 标图像中的目标块。在515中,生成变换系数。例如,用来表示目标块的 矩阵,其中,矩阵中的每个元素是该块的像素值。对矩阵Z执行块变换(例如,DCT),以得到变换系数矩阵C。
在517中,用于量子化矩阵C的量子化函数《作为控制参数被输入该 方法。量子化函数的值可以由用户定义,或者通过编码器来设定。在520
中,矩阵c中的每个元素被量子化,以产生量子化矩阵c'。
在522中,在一些实施例中,要被选择的许多系数7Vc和它们相应的矩 阵位置由用户输入或者通过编码器设定作为控制参数。通常,选择系数i 的数量,以使得空间矢量系数元素的数量近似于运动矢量中的元素的数 量。因此,可以通过忽略这两种矢量的编码成本的函数来比较这两种方法 的编码效率。
在525中,从它们在系数矩阵C'的特定位置选择A^个系数。在一个实 施例中,该处理选择位于系数矩阵C'的左上角的脸个系数。
在530中,利用iVc个量子化的数字创建对于该目标块的空间矢量S。 该空间矢量可用于生成与该目标块对应的空间参考块。
在450中,通过在560中首先接收特定目标块的空间矢量S来构建空 间参考块。空间矢量包括i个元素。在565中,根据空间矢量构建该目标 块的块变换系数矩阵。在一个实施例中,该步骤是通过首先将所有系数设 定为0来完成的。然后,来自空间矢量S的系数值被恢复到它们在矩阵中 的先前位置。由于iVc个系数被恢复,结果得到矩阵5'。在522中,如上所 述,可以将系数位置矩阵作为系统参数输入该方法。
在570中,反量子化£'中的每个系数(如上所述,在517中可以将量 子化函数作为系统参数输入该方法),以产生系数矩阵5。在575中,对 5执行逆变换。结果得到空间参考块?,空间参考块i用于鱼的原始的目 标块Z。
在580中,如果需要对其它目标块执行空间预测法,则处理通过返回 510而被重复。否则,处理在590中结束。
在图5中示出的方法产生了具有与时间参考块和运动矢量的结构和功 能类似的结构和功能的空间参考块和与其对应的空间矢量。例如,时间参 考块通过其运动矢量来识别。例如,时间参考块通过其运动矢量来识别, 并且空间参考块是根据其空间矢量来构建的。由图5的方法创建的空间矢量具有与运动矢量的元素数量近似的元素数量。利用近似数量的元素,当 确定对目标块应用哪种预测方法时可以忽略对每个矢量的编码成本,所述 编码成本是对该矢量进行编码所需的位的数量。因此,通过比较两种预测 块的预测误差可以很容易地作出编码决定。
下面描述利用图5的方法执行空间预测的示例。在该示例中,目标块
具有4x4的尺寸,例如该矩阵具有4行和4列像素。通常,DCT可应用于 任何尺寸的长方形块,例如,8x8或4x8。以Z表示目标块的原始像素值 (从实际图像得到的数据)矩阵,在该示例中
1 =
197 165 127 105
154 124 98 73
139 117 84 56
123 98 67 35
对矩阵应用二维DCT变换,以生成下面的DCT系数矩阵 .440.500130 0.5004.302 _ 96 2.0787.041 —1.189 18.0006.962l扁 —0.178 19.5463311 -1.293 —3.578
c = zx:r(z)=
对C中的DCT系数应用量子化函数,例如,以值?来除C中的每个元 素,然后四舍五入为最近的整数(在该示例中,g=10),
44 13 0 0
10 0 1 0
2 10 0
2 0 0 0
设定^=3,从而空间矢量具有3个元素。这3个元素的位置在左上 角。然后,选择C'的左上角的3个量子化系数。通常,系数脸的数量和它 们的位置可以由用户定义为自由参数(free parameter)。在该示例中,所 选择的C'中的系数为44、 13和10。
现在,利用所选择的系数创建该目标块的空间矢量
S =[44,13,10]。
去掉矩阵C'中的所有其它元素。
为了构建空间参考块,首先根据空间矢量S创建系数矩阵5'。这是通 过(i)将5'中所有元素设定成0,并且(ii)根据空间矢量S将所选择的系数恢复到先前它们在矩阵中的位置来完成的
力o o (T oooo
0 0 0 0 0 0 0 0
c'=
—根据s拷贝—
44 13 0
10 0 0
0 0 0 0 0 0
然后,对矩阵5'执行反量子化,例如,用广10乘5':
c = c'巧=
44013000
100000
0000
0000
对矩阵5应用反DCT,以产生空间参考块的像素值,
一185 160 125 IOO画 166 141 106 81 139 114 79 54 120 9560 35
用空间参考块?中的像素值预测目标块Z的像素值。空间预测误差是该目 标块的实际像素值减去预测的像素值
在该情况中,空间预测误差是
197165127105—18516012510012525
154124987316614110681-12一17_8一8
13911784561391147954032
1239867351209560353370
在视频压縮应用中,空间预测编码法可替代传统帧内编码法。空间预 吗法和时间预测编码法的结合得到综合空时预测编码法,该方法在视
频压縮应用(例如,MPEG)中可应用于对全部图像序列进行编码。
图6示出利用ISTPE法的系统的示例。数字视频照相机610以电子形 式捕获图像,并且利用压縮设备620处理图像,其中,压縮设备620在压 縮和编码处理中执行ISTPE法。经过编码的图像通过电子传输介质630被 发送到数字回放设备640。由解码设备650对图像进行解码,其中,在解 码处理中,解码设备650利用ISPTE法。照相机610是包括本发明的实施例的多种图像处理装置(例如,其它图像捕获设备、图像编辑器、图像处 理器、个人和商用计算机平台等等)中的示例性的一种。同样,解码设备 650是对图像数据进行解码的多种设备中的示例性的一种。
虽然依照特定系统环境中的示例性实施例来描述本发明,但是本领域 技术人员将会明白,在不脱离所附权利要求的精神和范围内可以在其它和 不同硬件和软件环境中按照多种方式来实施本发明。
权利要求
1.一种由电子数据处理器执行的方法,该方法包括以下步骤生成针对目标像素块的空间矢量;利用所述空间矢量构建空间参考块;并且利用所述空间参考块生成对所述目标块的空间预测。
2. 如权利要求1所述的方法,还包括 生成空间预测误差;并且利用所述空间预测误差确定是否对所述空间参考块进行编码。
3. 如权利要求2所述的方法,其中,确定是否对所述空间参考块进行 编码包括将所述空间预测误差与时间预测误差进行比较;并且 如果所述空间预测误差小于所述时间预测误差,则对所述空间参考块 进行编码。
4. 如权利要求1所述的方法,其中,生成所述空间矢量包括 执行离散余弦变换空间预测法。
5. 如权利要求4所述的方法,其中,所述离散余弦变换空间预测法包括生成对于所述目标块的像素值矩阵;将离散余弦变换函数应用于所述矩阵,以产生离散余弦变换系数矩阵;将量子化函数应用于所述离散余弦变换系数矩阵;并且 选择许多量子化的系数作为所述空间矢量的元素。
6. 如权利要求5所述的方法,其中,利用所述空间矢量构建所述空间参考块包括利用所述空间矢量生成量子化离散余弦变换系数矩阵; 将反量子化函数应用于所述量子化离散余弦变换系数矩阵,以产生离 散余弦变换系数矩阵;并且 ,将反离散余弦变换函数应用于所述离散余弦变换系数矩阵,以产生具有像素值矩阵的所述空间参考块。
7. 如权利要求6所述的方法,其中,利用所述空间参考块生成所述目 标块的所述空间预测包括利用所述像素值矩阵预测所述目标块的值。
8. —种装置,包括空间矢量生成器,用于生成针对目标像素块的空间矢量; 空间参考块构建器,用于利用所述空间矢量构建空间参考块;以及 空间预测器,用于利用所述空间参考块生成对所述目标块的空间预
9. 如权利要求8所述的装置,还包括 预测误差生成器,用于生成空间预测误差;以及确定逻辑设备,用于利用所述空间预测误差确定是否对所述空间参考 块进行编码。
10. 如权利要求9所述的装置,其中,所述确定逻辑设备包括 比较器,用于将所述空间预测误差与时间预测误差进行比较;以及 编码器,用于如果所述空间预测误差小于所述时间预测误差,则对所述空间参考块进行编码。
11. 如权利要求8所述的方法,其中,所述空间矢量生成器包括 离散余弦变换逻辑设备,用于执行离散余弦变换空间预测功能。
12. 如权利要求11所述的方法,其中,所述离散余弦变换逻辑设备包括矩阵生成器,用于生成对于所述目标块的像素值矩阵; 离散余弦变换系数生成器,用于利用所述矩阵产生离散余弦变换系数矩阵;量子化设备,用于将量子化函数应用于所述离散余弦变换系数矩阵;以及选择设备,用于选择许多量子化系数作为所述空间矢量的元素。
13. 如权利要求12所述的方法,其中,所述空间参考块构建器包括 空间矢量解码器,用于利用所述空间矢量生成量子化离散余弦变换系数矩阵;反量子化设备,用于将反量子化函数应用于所述量子化离散余弦变换 系数矩阵,以产生离散余弦变换系数矩阵;以及反离散余弦变换设备,用于将反离散余弦变换函数应用于所述离散余 弦变换系数矩阵,以产生具有像素值矩阵的所述空间参考块。
14. 如权利要求13所述的方法,其中,所述空间预测器包括 参考块解码器,用于利用来自所述空间参考块的所述像素值矩阵来预测所述目标块的像素值。
15. —种用于存储指令程序的计算机可读介质,其中,在处理系统执 行所述指令时,可使该系统执行包括以下步骤的方法生成针对目标像素块的空间矢量; 利用所述空间矢量构建空间参考块;并且 利用所述空间参考块生成对所述目标块的空间预测。
16. 如权利要求15所述的计算机可读介质,还包括生成空间预测误差;并且确定是否利用所述空间预测误差对所述空间参考块进行编码。
17. 如权利要求16所述的计算机可读介质,其中,确定是否对所述空 间参考块进行编码包括将所述空间预测误差与时间预测误差进行比较;并且 如果所述空间预测误差小于所述时间预测误差,则对所述空间参考块 进行编码。
18. 如权利要求15所述的计算机可读介质,其中,生成所述空间矢量包括执行离散余弦变换空间预测法。
19. 如权利要求18所述的计算机可读介质,其中,所述离散余弦变换空间预测法包括生成对于所述目标块的像素值矩阵;将离散余弦变换函数应用于所述矩阵,以产生离散余弦变换系数矩阵;将量子化函数应用于所述离散余弦变换系数矩阵;并且选择许多量子化系数作为所述空间矢量的元素。
20. 如权利要求19所述的计算机可读介质,其中,利用所述空间矢量 构建所述空间参考块包括利用所述空间矢量生成量子化离散余弦变换系数矩阵; 将反量子化函数应用于所述量子化离散余弦变换系数矩阵,以产生离散余弦变换系数矩阵;并且将反离散余弦变换函数应用于所述离散余弦变换系数矩阵,以产生具有像素值矩阵的所述空间参考块。
21. 如权利要求20所述的计算机可读介质,其中,利用所述空间参考块生成所述目标块的所述空间预测包括利用所述像素值矩阵预测所述目标块的像素值。
全文摘要
一种用于生成目标图像中的目标像素块的空间预测的方法,该方法包括以下步骤生成针对目标像素块的空间矢量,利用该空间矢量构建空间参考块,并且利用该空间参考块生成该目标块的空间预测。
文档编号H04N7/18GK101584215SQ200680034127
公开日2009年11月18日 申请日期2006年8月30日 优先权日2005年9月16日
发明者苗周荣, 詹姆斯·J·卡里格, 马里奥·帕尼科尼 申请人:索尼电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1