图像预测解码方法与流程

文档序号:11518170阅读:421来源:国知局
图像预测解码方法与流程

本申请基于专利法实施细则第42条提出,是申请日为2011年9月29日、申请号为201180046286.1的发明专利申请“图像预测编码装置、图像预测编码方法、图像预测编码程序、图像预测解码装置、图像预测解码方法及图像预测解码程序”的分案申请。

本发明的实施方式涉及图像预测解码方法,更具体地讲,涉及使用周围块的运动信息生成对象块的预测信号的图像预测解码方法。



背景技术:

为了高效地进行静态图像或动态图像数据的传输和蓄积采用了压缩编码技术。对于动态图像,mpeg-1~4或itu(internationaltelecommunicationunion,国际电信联盟)h.261~h.264中规定的技术得到了广泛应用。

在这些编码技术中,将作为编码对象的图像分割为多个块来进行基于块的编码及解码处理。在画面内预测编码中,使用位于和对象块相同的画面内的相邻区域的已再现的图像信号(即将被压缩的图像数据复原后的信号)生成预测信号,对该预测信号与对象块的像素信号之间的差分即差分信号进行编码。在画面间预测编码中,参照位于和对象块不同的画面内的相邻区域的已再现的图像信号进行运动的校正,由此生成预测信号,并对该预测信号与对象块的信号之间差分即差分信号进行编码。

例如,在h.264的画面内预测编码中采用如下方法:沿预定的方向对与作为编码对象的块相邻的区域的已再现的像素值进行外插而生成预测信号。图17是用于说明在ituh.264中使用的画面内预测方法的示意图。在图17(a)中,对象块802是作为编码的对象的块,由与该对象块802的边界相邻的像素a~m构成的像素组801是相邻区域,而且是在过去的处理中已经被再现的图像信号。

在图17的(a)所示的预测中,将位于对象块802的正上方的相邻像素即像素组801向下拉伸,由此生成预测信号。另外,在图17的(b)中,将位于对象块804的左侧的已再现像素(i~l)向右拉伸,由此生成预测信号。关于生成预测信号的具体方法,可参照例如专利文献1。对于这样利用图17的(a)~(i)所示的方法生成的9个预测信号的各个候选,获取它们与对象块的像素信号之间的差分,将这些差分进行比较,由此将提供最小的差分值的候选选择为最佳的预测信号。如上所述,通过对像素进行外插能够生成预测信号。有关以上内容记载在下述专利文献1中。

在通常的画面间预测编码中,利用从已经再现的画面中搜索与对象块的像素信号相似的信号的方法来生成预测信号。并且,对作为对象块与搜索到的信号构成的区域之间的在空间的位移量的运动矢量、以及作为对象块的像素信号与预测信号之间的差分的残差信号进行编码。这样按照每个块搜索运动矢量的方法被称为块匹配(blockmatching)。

图16是用于说明块匹配处理的示意图。在此,以编码对象的画面701上的对象块702为例说明预测信号的生成步骤。画面703是已再现图像,该已再现图像内的区域704是在空间上和对象块702相同的位置的区域。在块匹配中设定包含区域704的搜索范围705。从该搜索范围中检测出具有相对于对象块702的像素信号的绝对值误差和为最小的信号的区域706。该区域706的信号成为预测信号,从区域704向区域706的位移量被检测作为运动矢量707。并且,准备多个参照画面,按照每个对象块选择实施块匹配的参照画面,并检测参照画面选择信息的方法也广为应用。在h.264中,为了应对图像的局部特点的变化,有时准备对运动矢量进行编码的块尺寸不同的多种预测类型。关于h.264的预测类型记载在例如专利文献2中。

在动态图像数据的压缩编码中,各个画面(帧、字段)的编码顺序可以是任意顺序。因此,在参照已再现画面生成预测信号的画面间预测中,关于编码顺序有三种方法。第一种方法是按照显示顺序参照过去的已再现画面生成预测信号的向前预测,第二种方法是按照显示顺序参照未来的已再现画面的向后预测,第三种方法是同时进行向前预测和向后预测,并对两个预测信号进行平均的双向预测。关于画面间预测的类型记载在例如专利文献3中。

在h.264中,执行利用由多个已再现画面构成的两个参照画面列表作为参照画面的候选的第三种方法。更具体地讲,使用在各个参照画面列表中登记的多个参照画面进行块匹配,检测出与区域706相当的两个区域,并对检测出的两个预测信号进行平均。

使用图5和图6说明参照画面列表的示例。在图5的(a)中,画面505表示编码对象图像,画面501~画面504表示已再现图像。各个图像(画面)的识别是利用帧号(frame_num)进行的。图6的(a)的参照画面列表识别号码list0和list1表示两个参照画面列表,在该示例中,在这两个参照画面列表中分别登记了4个参照画面。各个参照画面利用参照画面号码(ref_idx)进行识别。

能够登记在参照画面列表中的已再现图像基本上是任意图像。也可以如图6的(a)所示的表521那样,在两个参照画面列表中登记的参照画面全部是过去的已再现图像。在这种情况下,两个预测信号均是向前预测,因而将对两个预测信号进行平均的预测方法称为两方向预测,而不是双向预测。

在该两方向预测中,需要对运动矢量与参照画面号码两者的组合(运动信息)进行编码。因此,为了减少编码量,有使用相邻块的运动信息中、利用list0来识别的运动信息和利用list1来识别的运动信息进行两方向预测的方法。

现有技术文献

专利文献

专利文献1:美国专利公报第6765964号

专利文献2:美国专利公报第7003035号

专利文献3:美国专利公报第6259739号



技术实现要素:

发明要解决的问题

在两方向预测中,通过对相似的两个预测信号进行平均,能够利用平滑效果更有效地去除包含于预测信号中的噪声。因此,可以从相同的参照画面中取得运动矢量略微不同的两个信号。但是,在使用相邻块的运动信息的两方向预测的现行方法中,在生成两个预测信号时使用的运动信息的选择受到参照画面列表的限制。由于这种限制,相邻块的两个运动信息的组即使是包含基于相同的参照画面的数值接近的运动矢量,有时也不能进行选择。

在此,假设在图7的块400是编码对象块、块401~块403是对象块的相邻块时,三个相邻块分别具有利用list0和list1识别的两个运动信息。根据背景技术的方法,从三个相邻块的运动信息、即利用list0识别的三个运动信息和利用list1识别的三个运动信息中分别选择一个运动信息,并生成两个预测信号。通常,参照画面号码ref_idx需要的编码量在该参照画面号码ref_idx是“0”时减少,因而往往是相邻块的运动信息中所包含的参照画面号码ref_idx全部是0。在参照画面号码是“0”的情况下,如果采用图6的(a)的参照画面列表(521),则两个预测信号分别是从帧号(frame_num)为“3”的参照画面和帧号为“2”的参照画面取得的。在这种情况下,将不能得到较高的平滑效果。

作为另一个示例,假设两个参照画面列表由不同的参照画面构成的情况。如图5的(b)所示,利用帧号“3”识别出的画面510是编码对象图像,利用帧号“0”、“1”、“2”、“4”识别出的画面507、508、509、511是已再现图像,在参照画面列表是如图6的(b)所示的列表522的情况下,将根据不同的参照画面生成两个预测信号。在这种情况下也不能得到较高的平滑效果。

因此,需要能够抑制预测信号的噪声的图像预测编码装置、图像预测编码方法、图像预测编码程序、图像预测解码装置、图像预测解码方法及图像预测解码程序。

用于解决问题的手段

本发明的一个方面涉及图像预测解码方法。

本发明的一个方面涉及的图像预测解码装置包括如下步骤:从压缩数据中提取运动信息的编码数据或指示信息的编码数据,并从所述压缩数据中提取残差信号的编码数据,所述运动信息的编码数据用于生成图像内的多个区域中作为解码对象的对象区域的预测信号,所述指示信息的编码数据用于确定附随于待解码的帧内的与所述对象区域相邻的相邻区域的多个运动信息中的用于该对象区域的预测信号的生成的运动信息组、以及附随于已解码的先前帧内的区域的运动信息;对所述运动信息的编码数据进行解码而复原分别包含参照画面列表编号、参照画面编号以及运动矢量的两个运动信息,或者,对所述指示信息的编码数据进行解码而复原指示信息;在复原了所述指示信息的情况下,从保存在存储器中的多个运动信息中,导出分别包含两个运动信息的一个以上的运动信息组,在该两个运动信息之间,由各自的参照画面列表编号及各自的参照画面编号确定的各自的帧编号相互不同,或各自的运动矢量相互不同;根据所述指示信息,从所述一个以上的运动信息组中确定在所述对象区域的预测信号的生成中使用的运动信息组;根据作为所确定的运动信息组的两个运动信息或者所复原的两个运动信息,将从保存于所述存储器中的已再现图像取得的两个信号合成,来生成所述对象区域的所述预测信号;将在所述对象区域的所述预测信号的生成中使用的运动信息保存在所述存储器中;由所述残差信号的编码数据,来复原所述对象区域的残差信号;根据所述预测信号和所复原的所述残差信号,再现所述对象区域的像素信号;以及将所再现的所述像素信号作为已再现图像的一部分进行保存。

发明效果

如以上说明的那样,根据本发明的几个方面,能够提供可以抑制预测信号的噪声的图像预测解码装置、图像预测解码方法。

附图说明

图1是示出一个实施方式的图像预测编码装置的结构的图。

图2是示出图1所示的预测信号生成器的结构的图。

图3是示出图2所示的运动信息导出器的处理的流程图。

图4是用于说明使用对象块的相邻像素从候选运动预测信息(两个运动信息的组合)中选择一个候选预测信息的方法的示例的示意图。

图5是说明画面的编码顺序的示例的示意图。

图6是说明参照画面列表的示例的图。

图7是说明相邻块的示例的图。

图8是说明相邻块的另一个示例的图。

图9是示出一个实施方式的图像预测编码方法的步骤的流程图。

图10是示出一个实施方式的图像预测解码装置的结构的图。

图11是示出一个实施方式的图像预测解码方法的步骤的流程图。

图12是示出使计算机执行一个实施方式的图像预测编码方法的程序的结构的图。

图13是示出使计算机执行一个实施方式的图像预测解码方法的程序的结构的图。

图14是示出用于执行被记录在记录介质中的程序的计算机的硬件结构的图。

图15是示出用于执行被记录在记录介质中的程序的计算机的立体图。

图16是用于说明画面间预测中的运动估计处理的示意图。

图17是用于说明现行的画面内预测方法的示意图。

具体实施方式

下面,参照附图对几个实施方式进行详细说明。另外,在各个附图中对相同或者相当的部分标注相同的标号,并省略重复说明。并且,在本说明书中,构成动态图像的“帧”、“画面”、“图像”(图5的501~511)表示相同的意思。

图1是示出一个实施方式的图像预测编码装置的结构的图。图1所示的图像预测编码装置100具有输入端子101、块分割器102、预测信号生成器103、帧存储器104、减法器105、变换器106、量化器107、逆量化器108、逆变换器109、加法器110、量化变换系数编码器111、输出端子112、预测信息用存储器113和预测信息编码器114。在一个实施方式中,变换器106和量化器107作为残差信号编码单元发挥作用,逆量化器108和逆变换器109作为残差信号复原单元发挥作用,预测信息用存储器作为运动信息记录单元发挥作用。另外,预测信息用存储器113也可以包含在预测信号生成器103中。并且,在一个实施方式中,量化变换系数编码器111也可以作为残差信号编码单元的一部分发挥作用,在这种情况下,对由量化变换系数编码器111生成的数据进行解码而输出给逆量化器的要素,构成残差信号复原单元的一部分。

输入端子101是输入由多张图像构成的动态图像的信号的端子。

块分割器102将用从输入端子101输入的信号表示的作为编码对象的图像分割为多个区域。在一个实施方式中,编码对象的图像能够分割为由8×8像素构成的多个块。这些多个区域或者块作为被应用下面说明的处理的对象区域或者对象块。另外,块的大小和形状不限于此。并且,也可以在画面内混合存在尺寸不同的块。

预测信号生成器103检测用于生成对象块内的各个预测块的预测信号所需要的运动信息,并且生成预测信号。关于预测信号的生成方法没有限定,也可以是如在背景技术中说明的画面间预测或画面内预测(未图示画面内预测)。在一个实施方式中,通过图16所示的块匹配能够检测出运动信息。在块匹配中,相对于对象块的原信号(像素信号)的绝对值误差和为最小的预测信号,从经由线路l104取得的已再现图像中被检测出。

在一个实施方式中,在运动信息中包含运动矢量、参照画面列表的识别号码(图5的list0和list1)、和参照画面号码(图5的ref_idx)。

在如图6所示各个参照画面列表由多个参照画面构成的情况下,需要同时检测出运动矢量和参照画面号码,以便表示出包含于运动信息中的运动矢量是以哪个参照画面为对象的运动矢量。并且,在利用两方向预测的情况下,还要同时确定预测类型(向前/向后/两方向)。在预测类型是向前预测的情况下,检测出参照画面列表的识别号码为list0的运动信息,在预测类型是向后预测的情况下,检测出参照画面列表的识别号码为list1的运动信息。在预测类型是两方向预测的情况下,检测出用list0和list1识别出的两个运动信息。另外,在图6所示的参照画面列表中登记的已再现图像,可以按照预先设定的规则自动确定,也可以按照帧单位或序列单位对用于特定出在参照画面列表中登记的已再现图像的信息进行明确编码。在一个实施方式中,该信息能够采用如图5和图6所示的帧号。

返回到图1,运动信息和预测类型经由线路l103c和线路l103b分别输出给预测信息用存储器113和预测信息编码器114。

预测信息用存储器113保存所输入的运动信息和预测类型。

预测信息编码器114对编码对象块的运动信息进行熵编码,将编码数据经由线路l114输出给输出端子112。关于熵编码的方法没有限定,可以是算术编码或可变长编码等。

由预测信号生成器103生成的预测信号经由线路l103a被输出给减法器105和加法器110。

减法器105从对象块的像素信号中减去经由线路l103a输入的对象块的预测信号,生成残差信号。减法器105将残差信号经由线路l105输出给变换器106。

变换器106对所输入的残差信号进行离散余弦变换,生成变换系数。并且,量化器107对由变换器106生成的变换系数进行量化,并生成量化变换系数。量化变换系数编码器111对由量化器107生成的量化变换系数进行熵编码。由量化变换系数编码器111生成的编码数据经由线路l111输出给输出端子112。关于量化变换系数编码器111进行的熵编码的方法没有限定,可以是算术编码或可变长编码等。

输出端子112将从预测信息编码器114和量化变换系数编码器111接收到的信息一并输出到外部。

逆量化器108对由量化器107生成的量化变换系数进行逆量化,生成变换系数。逆变换器109对由逆量化器108生成的变换系数应用逆离散余弦变换而将残差信号复原。加法器110将被复原后的残差信号和经由线路l103a输入的预测信号相加,并生成编码对象块的再现图像信号,将该再现像素信号存储在帧存储器104中。另外,也可以采用替代变换器106和逆变换器109的处理的其它变换处理。并且,变换器106和逆变换器109不是必须的要素。这样,编码对象块的再现像素信号被作为参照画面即已再现图像的一部分存储在帧存储器104中,以用于生成后续的编码对象块的预测信号。

在一个实施方式中,预测信号生成器103也能够利用附随于与对象块相邻的块(相邻块)的运动信息,生成对象块的预测信号。所谓附随于相邻块的运动信息,是指在相邻块是编码对象时生成预测信号所使用的运动信息。附随于相邻块的运动信息被保存在预测信息用存储器113中。另外,对于每个块,可以将表示利用附随于相邻块的运动信息生成预测信号、或者使用通过块匹配而检测出的运动矢量生成预测信号的信息,以编码状态包含在压缩数据中。

在此,说明根据两方向预测来生成对象块的预测信号的情况。下面,以图7的(a)为例进行说明。将在对象块400的正左方和正上方与该对象块相邻的两个块401和块402设为相邻块,使用附随于这些块的运动信息进行预测。此时,如果附随于两个相邻块的预测类型是两方向预测,则在生成对象块的预测信号时最多能够利用4个运动信息。预测信号生成器103从作为候选的4个运动信息(4个候选运动信息)中,选择运动矢量的值或者参照画面的帧号的值不同的两个运动信息。参照画面的帧号(frame_num)能够根据参照画面列表识别号码(list0或者list1)与参照画面号码(ref_idx)的组合进行识别。并且,根据各个运动信息从帧存储器104取得两个预测信号,按照像素单位对这两个预测信号进行平均,由此得到预测信号。如果两个预测信号相似,作为通过平滑处理来去除噪声的效果,预测性能得到改善。

预测信息编码器114不对运动信息进行编码,而是对用于识别4个候选运动信息中、在生成对象块的预测信号时使用的两个运动信息的信息(指示信息)进行编码。因此,能够以比对运动信息进行编码而得到的编码数据的编码量少的编码量生成预测信号。指示信息可以是识别候选运动信息的两个指示信息,也可以是识别两个候选运动信息的组合的指示信息。

并且,预测信息用存储器113将在实际生成对象块的预测信号中使用的两个运动信息作为附随于对象块的运动信息进行保存。两个运动信息虽然可以直接保存,但是在现行的图像预测编码及解码中,具有参照list0和list1这两个参照画面列表的制约,因而能够按照下面说明的那样来保存两个运动信息。

即,在两个运动信息的参照画面列表识别号码相同的情况下,包含于两个运动信息中的参照画面列表号码能够按照预先设定的规则进行变更。例如,将两个运动信息中具有更小的参照画面号码(ref_idx)的一个运动信息的参照画面列表识别号码分配给list0,将另一个运动信息的参照画面列表识别号码分配给list1。

在两个运动信息的参照画面号码也相同的情况下,将具有各个成分的绝对值和更小的运动矢量的一个运动信息的参照画面列表识别号码分配给list0,将另一个运动信息的参照画面列表识别号码分配给list1。

通过这样分配,在与分配前的帧号不同的帧号被参照的情况下,能够变更参照画面号码(ref_idx),以使能够参照该分配前的帧号。

并且,在如图6的(b)所示两个参照画面列表不包含相同的帧号的情况下,可以使用如图6的(c)所示进行扩展使得包含相同的帧号的参照画面列表(523)来管理运动信息。在使用附随于相邻块的运动信息来生成对象块的预测信号的情况下,能够直接利用该扩展后的参照画面列表。并且,由于记录了帧号,因而在按照画面间的时间方向的距离对运动矢量进行比例缩放(scaling)的情况下(例如,在将以图5的(a)的画面504为对象的运动矢量变换为以画面503为对象的运动矢量的情况下,将各个向量成分设为2倍)也能够利用。另外,此处示出的运动矢量的保存方法能够相互变换,因而无论使用哪种保存方法都不会影响编码结果。

接着详细说明预测信号生成器103的处理。图2是示出一个实施方式的预测信号生成器的结构的图。如图2所示,预测信号生成器103具有运动信息导出器121、运动预测信息选择器122和运动补偿器123。另外,在该图中省略了过去基于块匹配的运动检测的部分。

在被用作相邻块的正上方和正左方的块的预测类型均是两方向预测的情况下,运动信息导出器121将附随于这些相邻块的4个运动信息进行比较。运动信息导出器121将构成运动信息的要素即运动矢量、参照画面列表识别号码、参照画面号码中任意一方的值与其它三个运动信息不同的运动信息,作为能够在对象块的预测中使用的候选运动信息。如果是运动矢量的值和参照画面的帧号的值(参照画面的帧号可以根据参照画面列表与参照画面号码的组合来获知)相同的运动信息,仅将其中任意一个作为候选运动信息。并且,运动信息导出器121导出任意两个候选运动信息的组作为候选两方向预测信息。在这种情况下,能够导出最多6个候选两方向预测信息。在将对象块的正上方和正左方的块中至少一个块用作相邻块的两方向预测中,能够从相邻块中导出以下说明的个数的两个运动信息的组合模式。即,

(1)采用正上方的块(402)或者正左方的块(401)的两个运动信息时:两种模式

(2)在正上方的块(402)的一个运动信息和正左方的块(401)的一个运动信息中,包含于两个运动信息中的参照画面列表不同时:四种模式

(3)在正上方的块(402)的一个运动信息和正左方的块(401)的一个运动信息中,包含于两个运动信息中的参照画面列表相同时:两种模式

图3示出运动信息导出器121的处理的流程图。首先,在步骤s301,设定在对象块的预测中使用的相邻块的个数n,将当前的相邻块号码n设为“0”。例如,将块401设定为n=0,将块402设定为n=1。并且,将候选运动信息的个数l初始化为0。然后,从预测信息用存储器113取得n个块的运动信息和预测类型(步骤s302)。并且,根据预测类型设定附随于n个相邻块的运动信息的个数m(步骤s303)。

然后,将n个相邻块中的第m个运动信息与l个候选运动信息进行比较(步骤s304)。在所有候选运动信息与比较对象的运动信息不同的情况下、或者l=0的情况下,处理进入到步骤s305。在步骤s305,将n个相邻块中的第m个运动信息追加在候选运动信息中,将l的值加1。然后,处理进入到步骤s306。

在步骤s304,当在候选运动信息中找到与第m个运动信息相同的候选运动信息的情况下,处理进入到步骤s306。另外,在步骤s304,如果所比较的两个运动矢量的值相同、而且与所比较的两个参照画面号码和参照画面列表识别号码的组对应的帧号相同,即使是参照画面列表不同,也判定为相同的运动信息。这是因为在两个运动信息的运动矢量与其参照画面的帧号相同的情况下,从该运动信息生成的预测信号一致。

在步骤s306,将m的值加1。然后,在步骤s307,针对附随于n个相邻块的所有运动信息,判定是否已完成步骤s304~步骤s306的处理,在已完成时处理进入到步骤s308,在没有完成时处理返回到步骤s304。

在步骤s308,将相邻块的号码n的值加1。并且,在步骤s309,判定是否所有相邻块的处理已完成。在已完成时处理进入到步骤s310,在没有完成时处理返回到步骤s302。

最后,在步骤s310,从l个候选运动信息中将运动矢量的值或者参照画面的帧号的值(参照画面的帧号可以根据参照画面列表与参照画面号码的组合而得知)不同的两个运动信息的组全部导出,并设定为候选两方向预测信息。

另外,关于运动信息导出器121利用来自哪个相邻块的运动信息,可以预先对编码侧和解码侧双方进行设定。并且,也可以将用于确定出运动信息导出器121利用来自哪个相邻块的运动信息的信息以编码状态传递给解码侧。

在运动预测信息选择器122中,从由运动信息导出器121经由线路l121输入的候选两方向预测信息中,选择一个最佳的候选两方向预测信息。具体地讲,选择使“对根据两个候选运动信息经由线路l104从帧存储器104取得的两个信号进行平均得到的信号”与“经由线路l102得到的对象块的像素信号”之间的差分绝对值和为最小的候选两方向预测信息。并且,将所选择的候选两方向预测信息、或者用于识别构成所选择的候选两方向预测信息的两个候选运动信息的指示信息,经由线路l103b输出给预测信息编码器。

并且,运动预测信息选择器122将所选择的两个运动信息经由线路l103c输出给预测信息用存储器并保存于此,并且经由线路l122输出给运动补偿器123。运动补偿器123根据所输入的两个运动信息,对从经由线路l104取得的已再现图像中提取出的两个已再现像素信号进行平均,生成预测信号,将该预测信号经由线路l103a输出给减法器105和加法器110。

另外,关于利用运动预测信息选择器122选择一个最佳的候选两方向预测信息的方法没有限定。例如,也可以如图4所示,取代编码对象图像451内的对象块461的像素信号,而使用与其相邻的倒l字的已再现的区域(462)。区域462是已再现的区域,因而也能够在解码装置中使用。如图所示,能够根据一个运动信息473从参照画面452取得对应于区域462的预测区域(472)。针对所有的候选两方向预测信息,取得有关两个候选运动信息的倒l字的区域并对其信号进行平均,由此能够找到相对于区域462使差分绝对值和为最小的候选两方向预测信息。根据该方法,在解码装置中也能够选择与编码装置相同的候选两方向预测信息,因而具有不需要发送指示信息的优点。

这样,根据附随于与对象块相邻的块的运动信息,生成与原来的信号之差较小的预测信号,而且选择运动矢量的值或者参照画面的帧号的值(参照画面的帧号可以根据参照画面列表与参照画面号码的组合而得知)不同的两个运动信息,由此不需发送运动信息即可进行对象块的两方向预测。运动信息包括识别参照画面列表的信息,因而能够实现使用了参照画面列表相同的运动信息的两方向预测。因此,在两个参照画面列表中所包含的参照画面完全不同的情况下,也能够实施使用了相同参照画面的运动矢量的两方向预测。例如,通过利用相同参照画面的运动矢量进行基于两个相似信号的两方向预测,能够期待借助平滑效应来提高预测性能。

图9是示出一个实施方式的图像预测编码方法的步骤的流程图。首先,利用块分割器102将输入图像分割为8×8的编码块(也可以分割为除此以外的块的大小或者形状。并且,也可以在画面内混合存在尺寸不同的块)。

然后,运动信息导出器121从预测信息用存储器113取得随附于与编码对象的对象块相邻的块的运动信息,并提取其构成要素的任意一个的值与其它运动信息不同的运动信息,作为能够在对象块的预测中使用的候选运动信息。并且,导出任意两个候选运动信息的组作为候选两方向预测信息(步骤s300)。关于该步骤s300的详细情况,已在图3中说明。

然后,运动预测信息选择器122从多个候选两方向预测信息中选择在生成对象块的预测信号时使用的一个候选两方向预测信息。并且,运动预测信息选择器122确定所选择的候选两方向预测信息、或者用于识别构成所选择的候选两方向预测信息的两个候选运动信息的指示信息(步骤s320)。然后,在步骤s101,将所选择的两个运动信息存储在预测信息用存储器113中,并且通过预测信息编码器114对指示信息进行编码。

然后,在步骤s102,运动补偿器123根据所选择的运动信息,从由帧存储器104取得的两个已再现图像中取得像素信号,对这些像素信号进行平均而生成对象块的预测信号。另外,在不使用相邻块的运动信息的预测方法中,通过在图16中说明的块匹配来检测出运动信息,并根据该运动信息生成对象块的预测信号。由预测信息编码器114对运动信息和用于切换两个预测方法的信息进行编码。并且,运动信息被保存在预测信息用存储器113中。

然后,由变换器106、量化器107和量化变换系数编码器111对表示编码对象块的像素信号与预测信号之间的差分的残差信号进行变换编码(步骤s103)。指示信息和量化变换系数的编码数据通过输出端子112被输出(步骤s104)。

在这些处理之后或者与这些处理并行地,由逆量化器108和逆变换器109对被编码后的残差信号进行解码,以便对后续的编码对象块进行预测编码。并且,由加法器110将被解码后的残差信号和预测信号相加,编码对象块的信号被再现。再现信号被作为参照画面(已再现图像信号)存储在帧存储器104中(步骤s105)。并且,在没有完成所有编码对象块的处理的情况下,处理返回到步骤s101,进行对下一个编码对象块的处理。在完成所有编码对象块的处理的情况下,处理结束(步骤s106)。

下面,对一个实施方式涉及的图像预测解码装置进行说明。图10是示出一个实施方式的图像预测解码装置的框图。图10所示的图像预测解码装置200具有输入端子201、数据分析器202、逆量化器203、逆变换器204、加法器205、输出端子206、量化变换系数解码器207、预测信息解码器208、帧存储器104、运动信息确定器209、运动信息导出器121、预测信息用存储器113、运动补偿器126。逆量化器203和逆变换器204作为残差信号解码单元发挥作用,预测信息用存储器作为运动信息记录单元发挥作用。逆量化器303和逆变换器304的解码单元也可以使用这些单元以外的单元实现。并且,也可以没有逆变换器304。

输入端子201输入利用上述的图像预测编码方法进行压缩编码后的压缩数据。在该压缩数据中包括以下内容:有关多个块的、基于通过残差信号的变换量化而生成的量化变换系数的熵编码的编码数据、以及预测信息的编码数据,即用于生成块的预测信号的运动信息或者指示信息的编码数据、以及表示对运动信息和指示信息哪一方进行编码的信息的编码数据,该指示信息用于从随附于相邻块的运动信息中识别出在生成解码对象的块的预测信号时使用的运动信息。

数据分析器202对被输入到输入端子201的压缩数据进行分析,对于解码对象块分离为量化变换系数的编码数据、预测信息的编码数据,将这些编码数据分别经由线路l202a、线路l202b输出给量化变换系数解码器207和预测信息解码器208。

预测信息解码器208对运动信息或者指示信息的编码数据进行熵解码。被解码后的运动信息经由线路l208被发送给运动信息确定器209,再直接经由线路l207a和线路l207b输出给运动补偿器126和预测信息用存储器113。预测信息用存储器113保存运动信息,运动补偿器126根据运动信息,从由帧存储器104取得的已再现图像中取得像素信号,使用该像素信号生成解码对象块内的各个预测块的预测信号。所生成的预测信号经由线路l126被输出给加法器205。

另一方面,在预测信息解码器208已对指示信息的编码数据进行了熵解码的情况下,运动信息导出器121发挥作用。如在图3中详细说明的那样,运动信息导出器121从预测信息用存储器113取得附随于与解码对象块相邻的块中的运动信息,并提取其构成要素的任意一个的值不同的信息,作为能够在解码对象块的预测中使用的候选运动信息。并且,运动信息导出器121导出任意两个候选运动信息的组作为候选两方向预测信息,将该候选两方向预测信息经由线路l121输出给运动信息确定器209。

运动信息确定器209从经由线路l121输入的多个候选两方向预测信息中,选择利用经由线路l208输入的指示信息识别出的一个候选两方向预测信息。构成所选择的候选两方向预测信息的两个运动信息经由线路l207a和线路l207b输出给运动补偿器126和预测信息用存储器113。预测信息用存储器113保存运动信息,运动补偿器126根据两个运动信息,从由帧存储器104取得的已再现图像中取得像素信号,使用该像素信号生成解码对象块内的各个预测块的预测信号。所生成的预测信号经由线路l126被输出给加法器205。

量化变换系数解码器207对编码对象块中的残差信号的量化变换系数的编码数据进行熵解码,将复原后的量化变换系数经由线路l207输出给逆量化器203。

逆量化器203对经由线路l207输入的解码对象块的量化变换系数进行逆量化,并生成变换系数。逆变换器204对变换系数进行逆离散余弦变换,将残差信号复原。

加法器205将由预测信号生成器103生成的预测信号、与通过逆量化器203和逆变换器204复原出的残差信号相加,生成解码对象块的再现像素信号。再现像素信号经由线路l205被输出给输出端子206和帧存储器104。输出端子206将包括再现像素信号的再现图像输出到外部(例如显示器)。

帧存储器104将从加法器205输出的再现图像存储为参照画面,作为下一个解码处理用的参照用的再现图像。

下面,参照图11说明一个实施方式涉及的图像预测解码方法。首先,通过输入端子201输入压缩数据(步骤s201)。并且,由数据分析器202进行压缩数据的数据分析,并提取用于生成块的预测信号的运动信息或者指示信息、表示对运动信息和指示信息哪一方进行编码的信息的编码数据、以及量化变换系数的编码数据,该指示信息用于从随附于相邻块的运动信息中识别出在生成解码对象的块的预测信号时使用的运动信息。由预测信息解码器208对运动信息的编码数据或者指示信息的编码数据进行解码。

在运动信息被复原的情况下,运动补偿器126根据被复原后的运动信息生成解码对象块的预测信号。被复原后的运动信息被保存在预测信息用存储器113中。

在指示信息被复原的情况下,运动信息导出器121从预测信息用存储器113取得相邻块的运动信息。运动信息导出器121可以从预先设定的相邻块取得运动信息,并且也可以根据从编码侧传递的信息,从相邻块取得运动信息。

然后,如在图3中详细说明的那样,运动信息导出器121提取所取得的多个运动信息中其构成要素的任意一个的值不同的运动信息,作为能够在解码对象块的预测中使用的候选运动信息。并且,运动信息导出器121导出任意两个候选运动信息的组作为候选两方向预测信息(步骤s300)。

然后,运动信息确定器209使用被复原后的指示信息,从所导出的多个候选两方向预测信息中选择一个候选两方向预测信息,将两个运动信息复原(步骤s203)。

然后,运动补偿器126根据被复原后的两个运动信息生成解码对象块的预测信号,将这两个运动信息保存在预测信息用存储器中(步骤s207)。

然后,由量化变换系数解码器207解码后的量化变换系数,在逆量化器203中被实施逆量化,再在逆变换器204中对来自逆量化器203的输出应用逆变换,生成再现残差信号(步骤s208)。

然后,所生成的预测信号和再现残差信号被相加,由此生成再现信号,该再现信号被存储在帧存储器104中以用于再现下一个解码对象块(步骤s209)。并且,在通过步骤s210的判定被判定为存在下一个压缩数据的情况下,反复s202~s209的处理(步骤s210),直到最后所有的数据被处理。

图12是示出使计算机执行一个实施方式的图像预测编码方法的程序的结构的图。图像预测编码程序p100具有块分割模块p101、预测信号生成模块p103、存储模块p104、减法模块p105、变换模块p106、量化模块p107、逆量化模块p108、逆变换模块p109、加法模块p110、量化变换系数编码模块p111、预测信息存储模块p113和预测信息编码模块p114。预测信号生成模块p103包括运动信息导出模块p121、运动预测信息选择模块p122和运动补偿模块p123。

使计算机执行块分割模块p101、预测信号生成模块p103、存储模块p104、减法模块p105、变换模块p106、量化模块p107、逆量化模块p108、逆变换模块p109、加法模块p110、量化变换系数编码模块p111、预测信息存储模块p113、预测信息编码模块p114、运动信息导出模块p121、运动预测信息选择模块p122、运动补偿模块p123的功能,分别与块分割器102、预测信号生成器103、帧存储器104、减法器105、变换器106、量化器107、逆量化器108、逆变换器109、加法器110、量化变换系数编码器111、预测信息用存储器113、预测信息编码器114、运动信息导出器121、运动预测信息选择器122、运动补偿器123的功能相同。

图13是示出使计算机执行一个实施方式的图像预测解码方法的程序的结构的图。图像预测解码程序p200具有数据分析模块p201、预测信息解码模块p202、运动信息导出模块121、运动信息确定模块p203、预测信息存储模块p205、运动补偿模块p126、量化变换系数解码模块p206、逆量化模块p207、逆变换模块p208、加法模块p209和存储模块p104。

使计算机执行数据分析模块p201、预测信息解码模块p202、运动信息导出模块121、运动信息确定模块p203、预测信息存储模块p205、运动补偿模块p126、量化变换系数解码模块p206、逆量化模块p207、逆变换模块p208、加法模块p209、存储模块p104的功能,分别与数据分析器202、预测信息解码器208、运动信息导出器121、运动信息确定器209、预测信息用存储器113、运动补偿器126、量化变换系数解码器207、逆量化器203、逆变换器204、加法器205、帧存储器104的功能相同。

这样构成的图像预测编码程序p100或者图像预测解码程序p200被存储在记录介质10中,以便由后述的计算机执行。

图14是示出用于执行被记录在记录介质中的程序的计算机的硬件结构的图,图15是示出用于执行被记录在记录介质中的程序的计算机的立体图。另外,执行被存储在记录介质中的程序的不限于计算机,也可以是具备cpu的进行基于软件的处理和控制的dvd播放器、机顶盒、便携电话等。

如图14所示,计算机30具有软盘驱动装置、cd-rom驱动装置、dvd驱动装置等的读取装置12,使操作系统常驻的作业用存储器(ram)14,存储被保存在记录介质10中的程序的存储器16,被称为显示器的显示装置18,作为输入装置的鼠标20和键盘22,用于进行数据等的收发的通信装置24,以及控制程序的执行的cpu26。在记录介质10被插入到读取装置12中后,计算机30能够从读取装置12访问被存储在记录介质10中的图像预测编码程序p100或者图像预测解码程序p200,能够通过该图像预测编码程序p100或者图像预测解码程序p200作为图像预测编码装置100或者图像预测解码装置200进行工作。

如图15所示,图像预测编码程序和图像预测解码程序也可以是作为被叠加在载波中的计算机数据信号40而通过网络来提供。在这种情况下,计算机30将由通信装置24接收到的图像预测编码程序或者图像预测解码程序存储在存储器16中,并能够执行该图像预测编码程序或者图像预测解码程序。

以上对各种实施方式进行了说明但本发明还包括下述的变形方式。

(运动信息的候选)

在上述实施方式中,运动信息由运动矢量、参照画面列表的识别号码(图5的list0和list1)、和参照画面号码(图5的ref_idx)构成,但也可以利用帧号取代参照画面列表的识别号码和参照画面号码来构成运动信息。这是因为即使是使用帧号,也能够得到与使用随附于相邻块的运动信息的上述实施方式相同的结果及效果。

(候选两方向运动信息的限制)

在上述实施方式中,利用运动信息导出器将候选运动信息的所有组合作为候选两方向运动信息,但也可以仅将满足下述条件的运动信息的组作为候选两方向运动信息。

1)仅是对象块的正上方和正左方的块

2)指示相同参照画面的两个运动信息

3)两个运动矢量虽然不同,但是具有相近的值(绝对值差小于某个值)。即,正上方的块的运动矢量(mvxa、mvya)和正左方的块的运动矢量(mvxb、mvyb)满足

(|mvxa-mvxb|!=0)||(|mvya-mvyb|!=0)

而且满足

(|mvxa-mvxb|<=n)&&(|mvya-mvyb|<=n)(n为较小的值)

另外,在不存在满足条件的候选两方向运动信息的情况下,也可以不发送指示信息,而使用其它的预测处理。

另外,也可以按照帧单位或块单位指定候选两方向运动信息的数量,并将确定所指定的数量的信息包含在压缩数据中。另外,也可以按照帧单位对指示这种候选两方向运动信息的限制的应用的信息进行编码。

(指示信息的识别号码)

在确定指示信息的识别号码时,也可以利用对象块(图8的400)的右上方的块(图8的404)的运动信息,确定正左方的块(401)和正上方的块(402)的优先顺序。在此,对于正上方的块的运动矢量(mvxa、mvya)、正左方的块的运动矢量(mvxb、mvyb)和左上方的块的运动矢量(mvxc、mvyc),在|mvxa-mvxc|+|mvya-mvyc|<|mvxb-mvxc|+|mvyb-mvyc|成立的情况下,对正左方的块的运动信息赋予编码量较小的识别号码。在不成立的情况下,对正上方的块的运动信息赋予编码量较小的识别号码。这样,如果使被估计为与对象块的相关较高的相邻块的运动信息优先,则存在能够削减指示信息的编码量的可能性。

(候选运动矢量的导出和选择)

在上述实施方式中,对于运动矢量的水平方向和垂直方向的成分一并进行候选运动矢量的导出和选择,但也可以将运动矢量的水平方向和垂直方向的成分独立地应用于候选运动矢量的导出和选择。并且,在上述说明中是将相邻块单体的运动矢量作为候选运动矢量,但也可以将根据两个运动矢量的平均值或画面间的时间方向的距离进行比例缩放后的运动矢量(例如,在将以图5的(a)的画面504为对象的运动矢量变换为以画面503为对象的运动矢量的情况下,将各个向量成分设为2倍)作为候选运动矢量。

(预测类型)

在上述实施方式中,将两个相邻块的预测类型均设为两方向预测,但本发明也能够应用于其中一个相邻块是向前预测或者向后预测的情况。在这种情况下,导出最多三个候选两方向预测信息。并且,在这种情况下,能够从相邻块导出以下说明的个数的两个运动信息的组合模式。即,

(1)采用正上方的块(402)或者正左方的块(401)的两个运动信息时:一种模式

(2)在正上方的块(402)的一个运动信息和正左方的块(401)的一个运动信息中,与两个运动信息相关的参照画面列表不同时:一种模式

(3)在正上方的块(402)的一个运动信息和正左方的块(401)的一个运动信息中,与两个运动信息相关的参照画面列表相同时:一种模式

并且,也可以是两个相邻块双方是向前或者向后预测,还可以是一方是向前预测另一方是向后预测。

(相邻块的个数)

关于能够在对象块的预测中使用的相邻块的个数没有限定。如图7的(b)所示,可以将块401~403这3个块设为相邻块。并且,也可以利用附随于前面帧的块中的运动信息。另外,在如图8所示对相邻块(401~405)进行再分割的情况下,也可以使附随于其中较小的块的运动信息包含在候选运动信息中。并且,也可以利用不与对象块相邻的块的运动信息。

(n方向预测)

在上述实施方式中,将使用附随于相邻块的运动信息进行的对象块的预测方法设为两方向预测,但预测方法不限于此,也可以是一方向预测或者三方向预测。在这种情况下,在图3的步骤s310导出候选n方向预测信息并进行选定即可。另外,虽然可以保存n个运动信息,但是在n为3以上的情况下,也可以利用参照画面号码或运动矢量的值将保存的运动信息限制为两个。

(变换器、逆变换器)

关于残差信号的变换处理可以按照固定的块尺寸进行,也可以根据部分区域对对象区域进行再分割来进行变换处理。

(颜色信号)

在上述实施方式的说明中,对于颜色格式没有特别叙述,但是对于颜色信号或者色差信号,可以相对于亮度信号而独立地进行预测信号的生成处理。并且,也可以与亮度信号的处理联动地进行处理。

以上对于本发明根据几个实施方式进行了详细说明。但是,本发明不限于上述实施方式。本发明能够在不脱离其宗旨的范围内进行各种变形。

标号说明

100图像预测编码装置;101输入端子;102块分割器;103预测信号生成器;104帧存储器;105减法器;106变换器;107量化器;108逆量化器;109逆变换器;110加法器;111量化变换系数编码器;112输出端子;113预测信息用存储器;114预测信息编码器;121运动信息导出器;122运动预测信息选择器;123运动补偿器;201输入端子;202数据分析器;203逆量化器;204逆变换器;205加法器;206输出端子;207量化变换系数解码器;208预测信息解码器;209运动信息确定器。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1