一种视频编解码方法和装置的制作方法

文档序号:7755257阅读:106来源:国知局
专利名称:一种视频编解码方法和装置的制作方法
技术领域
本发明涉及视频编解码领域,特别涉及一种不规则子图像块划分的视频编解码方法和装置。
背景技术
在现有的视频编解码技术中,一般都是通过将当前帧图像的图像块的像素值与参考图像块的像素值作差得到残差矩阵,然后将得到的残差矩阵经过量化,变换和熵编码后写入码流中,与运动矢量信息一起传送给解码端。而解码端则从得到的码流中读取比特流, 然后经过反量化、反变换,得到相应的残差,然后再根据码流中的运动矢量信息,获取当前图像块的参考图像块,将当前图像块的残差与参考图像块的像素值相加,得到当前图像块的像素值。在现有技术的编解码过程中,无论是残差的计算,还是参考图像块的查找,都是以图像块的子图像块为单位进行的,而现有技术也出现了相应的用于划分子图像块的规则划分和不规则划分技术。规则划分是将图像块划分成完全相同的正方形子图像块,其优点是各种参数的获取比较简单,比如用于预测参考图像位置的参考运动矢量,但其缺点就是完全相同的正方形子图像块的形状往往与图像中的物体轮廓相差很大,从而提高了编解码中像素预测的难度。相应的,不规则划分技术则是将图像块划分成形状各异的长方形、三角形、甚至五边形及不规则四边形,以适应不同种类的图像的要求,可以极大地解决规则划分成的像素预测方面的问题,但是相应的,由于形状的不规则,非规则划分技术也面对着用于计算图像块的运动矢量的参考运动矢量参数的难题。因此,有必要提供一种编解码方法和装置,以可以简单的获得不规则划分中的子图像块的参考运动矢量。

发明内容
本发明实施例提供了一种编码方法,包括在预设的多个不规则划分方式中选取一个不规则划分方式对待编码的图像块进行不规则划分,得到至少两个不同的子图像块, 根据所述子图像块的像素值获得所述子图像块的参考图像块;根据所述参考图像块,获得所述待编码的图像块的子图像块的运动矢量;根据所述待编码图像块的子图像块的已编码的周边块和图像块的不规则划分方式,获得子图像块的参考运动矢量;根据所述运动矢量和所述参考运动矢量,得到运动矢量差值;将所述运动矢量差值写入到码流中,并发送给解码端。本发明实施例还提供了一种执行所述编码方法的编码装置。本发明实施例还相应的提供了一种解码方法,包括从码流中获得图像块的不规则划分方式,获得待解码的图像块的子图像块的运动矢量差值;从所述待解码图像块的子图像块的已解码的周边块和待解码图像块的不规则划分方式,获得子图像块的参考运动矢量;根据所述子图像块的参考运动矢量和运动矢量差值,得到所述子图像块的运动矢量; 根据所述运动矢量获得所述子图像块的参考图像块,并根据所述参考子图象块对所述子图像块进行解码,本发明实施例还提供了一种执行所述解码方法的解码装置。采用本发明实施例提供的编解码方法和装置,可以在一定的条件下简化参考运动矢量的获得和计算,节省了编解码系统的资源,提高了效率。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1所示为本发明实施例所提供的编码方法的示意图;图2所示为本发明实施例所提供的不规则划分方法的示意图;图3所示为本发明实施例中的待编码块的周边块分布示意图;图4所示为本发明实施例所提供的编码装置的示意图;图5所示为本发明实施例所提供的解码方法的示意图;图6所示为本发明实施例所提供的解码装置的示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参照图1,本发明实施例提供了一种视频编码方法,其包括步骤101 在预设的多个不规则划分方式中选取一个不规则划分方式对待编码的图像块进行不规则划分,得到至少两个不同的子图像块,根据所述子图像块的像素值获得所述子图像块的参考图像块;在本发明实施例中,所述对待编码图像块进行不规则划分,包含了四种不规则划分方式,请参照图加 2d,这四种划分方式分别为以45度或者135度划分线将待编码图像块划分成一个三角形的子图像块和一个五边形的子图像块(分别标识为ModeO和Model), 以及以垂直的划分线和水平的划分线将待编码的图像块划分成两个尺寸不一致矩形的子图像块(分别标识为Mode2和Mode3),其中的参数η即为不规则划分的位置参数,用于表示所述划分线与所述待解码的图像块的交点的距离。在上述划分方案中,当图像块采用图加和图2b所示的划分方式时,如果η的值为 0,则图像块被划分为两个三角形。由于图像块均由像素组成,因此ModeO和Model所对应的135度边界线及45度边界线是指由沿子图像块间的边界的像素组成的近似于135度和 45度的线。而所述本发明实施例中的不规则划分方式的选取、位置参数的确认、以及参考图像块的确认,可以通过将预设的不规则划分方式、以及可以选用的位置参数全部尝试一边, 并搜索到相应的最佳参考图像块,最后将结果进行比较,从中选取最佳方案。在本发明实施例中,所述最佳方案可以为划分出来的子图像块与搜索到的参考图像块像素最接近的划分方式及相应的位置参数,当然也可以根据其他需求对这一最佳方案进行调整。
步骤102 ,根据所述参考图像块,获得所述待编码的图像块的子图像块的运动矢量;步骤103 根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量;具体的首先,判断所述已编码的周边块是否符合预设的条件,在本发明实施例中,所述预设的条件包括所述周边块采用了与待编码的图像块相同的不规则划分方式;所述周边块的参考图像块与所述子图像块的参考图像块处于同一个图像中。然后,如果有唯一的一个周边块满足预设的条件,则所述子图像块的参考运动矢量等于所述满足条件的周边块的运动矢量。如果所述已编码的周边块中有多个满足上述条件,则所述子图像块的参考运动矢量等于满足条件的周边块中的位置参数与待编码图像块最接近的那一个周边块的运动矢量。在本发明实施例中,所述最接近可以为位置参数间的差值最小,或者位置参数间的差值的绝对值最小。如果有多个满足条件的周边块的位置参数相同,且同样接近于所述待编码的图像块的位置参数,则所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值,或周边块的运动矢量的平均值取整。在本发明实施例中,所述位置参数的接近与否可以从数值上进行判断,比如差值。步骤104 根据所述运动矢量和所述参考运动矢量,得到运动矢量差值;其中,在本发明实施例中,所述根据所述运动适量和所述参考运动矢量得到运动矢量差值,可以通过将二者做差得到,在其他可选择的实施例中,也可以通过其他的数学方法,建立运动矢量差值与运动矢量和参考运动矢量二者之间的逻辑关系,比如相除、对数计算等。步骤105 将所述运动矢量差值写入到码流中。采用本发明实施例所提供的编码方法,在预设的条件下,直接根据子图像块的运动矢量、子图像块所在图像块的不规则划分方式、子图像块周边块的不规则划分方式来获得子图像块的参考运动矢量,相较于现有技术中的复杂计算,可以有效地节省编码比特数, 提高编码效率。需要指出的是,上述方案中的图像块、子图像块和周边块的参考图像块是为了叙述方便定义的名词。上述方案中的图像块是指图像编码的基本单位,一个图像块中可以包含一个到若干个子图像块。在现有的视频编解码技术中,图像块可以为宏块,大小为16x16, 此时子图像块被称为子块,大小可以为16x16,16x8,8x16,8x8,8x4,4x8,4x4,或本发明所指出的不规则划分的块;图像块还可以为超宏块,大小为32x32。此时子图像块为宏块或宏块中的子块,大小可以为 32x32,32x16,16x32,16x16,16x8,8x16,8x8,8x4,4x8,4x4,或本发明所指出的不规则划分的块。周边块是指与当前图像块,或当前子图像块块邻近的图像块或子图像块。其与当前图像块,或当前子图像块块的位置关系可以为相邻,或间隔固定的像素值。当前子图像块的周边块可以为图像块,或子图像块。
周边块的参考图像块可以为上述的图像块,或上述的子图像块。因此,若当前子图像块的周边块为图像块时,则当前子图像块的周边块的参考图像块可以为图像块;若当前子图像块的周边块为子图像块时,则当前子图像块的周边块的参考图像块可以为子图像块。以下将给出一个进一步的实现方案。以下实现方案中,由于当前图像块或子图像块的周边块可以为图像块,或子图像块,为便于描述统称为图像块,所有图像块的大小可以不一致,所有图像块的形状或划分方式可以不一致,图像块的大小按现有技术的方法确定。如图3所示,设有图像块A,B,C,D和E。其中E为当前图像块,A为E的左相邻块, B为E的上相邻块,C为E的右上相邻块,D为E的左上相邻块。设图像块A, B, C, D的运动矢量为mvA, mvB, mvC, mvD。设图像块A, B, C,D和E的参考帧索引值为refA,refB, refC, refD和refE。参考帧索引值指的是图像块的参考图像块所在的图像在视频序列中的位置。当两个图像块的参考帧索引值相同时,这两个图像块的参考图像块位于同一图像中。设图像块A, B, C,D和E的非规则块划分方式为ModeA, ModeB, ModeC, ModeD和 ModeE0若图像块A,或,B,或,C,或D不可得或不使用非规则块划分,则设ModeA,或, ModeB,或,ModeC,或,ModeD 的值为-I。设图像块A,B, C,D和E的非规则块划分位置参数为posA,posB, posC,posD和 posE0若图像块A,或,B,或,C,或D不可得或不使用非规则块划分,则设posA,或,posB, 或,posC,或,posD的值为一个足够大的数,如10000。当前图像块E的参考运动矢量(或成为预测运动矢量,predicted motion vector)为 mvpEomvpE的求取方法如下若refA与refE值相等且A与E采用了相同不规则划分方式,则设CondionA值为 1,否则 CondionA 值 0,表达式为ConditonA = (refA == refE) && (ModeA == ModeE)。若refB与refE值相等且B与E采用了相同不规则划分方式,则设CondionB值为 1,否则 CondionB 值 0,表达式为=ConditonB = (refB == refE) && (ModeB == ModeE)。若refC与refE值相等且C与E采用了相同不规则划分方式,则设CondionC值为 1,否则 CondionC 值 0,表达式为ConditonC = (refC == refE) && (ModeC == ModeE)。若refD与refE值相等且D与E采用了相同不规则划分方式,则设CondionD值为 1,否则 CondionD 值 0,表达式为=ConditonD = (refD == refE) && (ModeD == ModeE)。若 ConditonA = = 1 且 ConditonB = = O 且 ConditonC = = O,贝Ij mvpE = mvA ;若 ConditonA = = O 且 ConditonB = = 1 且 ConditonC = = O,则 mvpE = mvB ;若 ConditonA = = O 且 ConditonB = = O 且 ConditonC == 1,则 mvpE = mvC ;若ConditonA,ConditonB和ConditonC有一个以上的值为1,则取相应的 ConditonX值为1的图像块X的位置参数posX(X可以为A,或,B,或,C),分别计算posE与这些图像块位置参数(posX)的差值的绝对值,将能获得最小差值的绝对值图像块的运动矢量mvX(X可以为A,或,B,或,C)赋值给mvpE ;若ConditonA,ConditonB和ConditonC有一个以上的值为1,且图像块X的位置参数posX (X可以为A,或,B,或,C)均相等且与posE的差值的绝对值均能获得最小差值的绝对值,则mvpE等于这些图像块的运动矢量的平均值,或mvpE等于这些图像块的运动矢量的平均值取整。相应的,请参照图3,本发明实施例还提供一种相应的编码装置,以执行本发明所提供的编码方法,其包括不规则划分模块210,用于在预设的多个不规则划分方式中选取一个不规则划分方式对待编码的图像块进行不规则划分,得到至少两个不同的子图像块,根据所述子图像块的像素值获得所述子图像块的参考图像块;运动矢量获得模块220,用于根据所述参考图像块,获得所述待编码的图像块的子图像块的运动矢量;参考运动矢量获得模块230,根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量;所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括选择符合预设条件的周边块;根据所述符合预设条件的周边块来获得图像块的参考运动矢量,其中,所述预设的条件包括所述周边块采用了与待编码的图像块相同的不规则划分方式;所述周边块的参考图像块与所述子图像块的参考图像块处于同一个图像中。然后,如果有唯一的一个周边块满足预设的条件,则所述子图像块的参考运动矢量等于所述满足条件的周边块的运动矢量。如果所述已编码的周边块中有多个满足上述条件,则所述子图像块的参考运动矢量等于满足条件的周边块中不规则划分的位置参数与待编码图像块最接近的那一个周边块的运动矢量,在本发明实施例中,所述最接近可以为位置参数的差值最小,或者位置参数的绝对值的差值最小。如果有多个满足条件的周边块的位置参数相同,且同样接近于所述待编码的图像块的位置参数,则所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值,或所述多个满足条件的周边块的运动矢量的平均值取整。运动矢量差值获得模块M0,用于将所述运动矢量和所述参考运动矢量做差,得到运动矢量差值;运动矢量差值写入模块250,用于将所述运动矢量差值写入到码流中。请参照图4,本发明还提供一种解码方法,其包括步骤301 从码流中获得待解码的图像块的子图像块的运动矢量差值;步骤302 根据所述待解码图像块的子图像块的已解码的周边块,获得子图像块的参考运动矢量;具体的首先,判断所述已解码的周边块是否符合预设的条件,在本发明实施例中,所述预
12设的条件包括所述周边块采用了与待解码的图像块相同的不规则划分方式;所述周边块的参考图像块与所述子图像块的参考图像块处于同一个图像中。然后,如果有唯一的一个周边块满足预设的条件,则所述子图像块的参考运动矢量等于所述满足条件的周边块的运动矢量。如果所述已解码的周边块中有多个满足上述条件,则所述子图像块的参考运动矢量等于满足条件的周边块中的位置参数与待解码图像块最接近的那一个周边块的运动矢量,在本发明实施例中,所述最接近可以为位置参数间的差值最小,或者位置参数间的差值的绝对值最小。如果有多个满足条件的周边块的位置参数相同,则所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值,或周边块的运动矢量的平均值取整。步骤303 根据所述子图像块的参考运动矢量和运动矢量差值,得到所述子图像块的运动矢量;所述根据所述运动矢量差值和所述参考运动矢量得到运动矢量差值,可以按照编码端的运动矢量差值的生成方法进行逆运算得到,可以为所述运动矢量差值和所述参考运动矢量之和,或所述运动矢量差值和所述参考运动矢量之积等。步骤304:根据所述运动矢量查找所述子图像块的参考图像块,并根据所述参考子图象块对所述子图像块进行解码。需要指出的是,上述方案中的图像块、子图像块和周边块的参考图像块是为了叙述方便定义的名词。上述方案中的图像块是指图像编码的基本单位,一个图像块中可以包含一个到若干个子图像块。在现有的视频编解码技术中,图像块可以为宏块,大小为16x16, 此时子图像块被称为子块,大小可以为16xl6,16x8,8xl6,8x8,8x4,4x8,4x4 ;图像块还可以为超宏块,大小为32x32。此时子图像块为宏块或宏块中的子块,大小可以为32x32, 32x16,16x32,16x16,16x8,8x16,8x8,8x4,4x8,4x4。周边块是指与当前图像块,或当前子图像块块邻近的图像块或子图像块。其与当前图像块,或当前子图像块块的位置关系可以为相邻,或间隔固定的像素值。当前子图像块的周边块可以为图像块,或子图像块。周边块的参考图像块可以为上述的图像块,或上述的子图像块。因此,若当前子图像块的周边块为图像块时,则当前子图像块的周边块的参考图像块可以为图像块;若当前子图像块的周边块为子图像块时,则当前子图像块的周边块的参考图像块可以为子图像块。进一步的,请参照图3,设有图像块A,B,C,D和E。其中E为当前图像块,A为E的左相邻块, B为E的上相邻块,C为E的右上相邻块,D为E的左上相邻块。设图像块A, B, C, D的运动矢量为mvA, mvB, mvC, mvD。设图像块A, B, C,D和E的参考帧索引值为refA,refB, refC, refD和refE。参考帧索引值指的是图像块的参考图像块所在的图像在视频序列中的位置。当两个图像块的参考帧索引值相同时,这两个图像块的参考图像块位于同一图像中。设图像块A, B, C,D和E的非规则块划分方式为ModeA, ModeB, ModeC, ModeD和ModeE0若图像块A,或,B,或,C,或D不可得或不使用非规则块划分,则设ModeA,或, ModeB,或,ModeC,或,ModeD 的值为-I。设图像块A,B, C,D和E的非规则块划分位置参数为posA,posB, posC,posD和 posE0若图像块A,或,B,或,C,或D不可得或不使用非规则块划分,则设posA,或,posB, 或,posC,或,posD的值为一个足够大的数,如10000。当前图像块E的参考运动矢量(或成为预测运动矢量,predicted motion vector)为 mvpEomvpE的求取方法如下若refA与refE值相等且A与E采用了相同不规则划分方式,则设CondionA值为 1,否则 CondionA 值 0,表达式为ConditonA = (refA == refE) && (ModeA == ModeE)。若refB与refE值相等且B与E采用了相同不规则划分方式,则设CondionB值为 1,否则 CondionB 值 0,表达式为=ConditonB = (refB == refE) && (ModeB == ModeE)。若refC与refE值相等且C与E采用了相同不规则划分方式,则设CondionC值为 1,否则 CondionC 值 0,表达式为ConditonC = (refC == refE)&&(ModeC == ModeE)。若refD与refE值相等且D与E采用了相同不规则划分方式,则设CondionD值为 1,否则 CondionD 值 0,表达式为=ConditonD = (refD == refE) && (ModeD == ModeE)。若 ConditonA = = 1 且 ConditonB = = O 且 ConditonC = = O,贝Ij mvpE = mvA ;若 ConditonA = = O 且 ConditonB = = 1 且 ConditonC = = O,则 mvpE = mvB ;若 ConditonA = = O 且 ConditonB = = O 且 ConditonC == 1,则 mvpE = mvC ;若ConditonA,ConditonB和ConditonC有一个以上的值为1,则取相应的 ConditonX值为1的图像块X的位置参数posX(X可以为A,或,B,或,C),分别计算posE与这些图像块位置参数(posX)的差值的绝对值,将能获得最小差值的绝对值图像块的运动矢量mvX(X可以为A,或,B,或,C)赋值给mvpE ;若ConditonA,ConditonB和ConditonC有一个以上的值为1,且图像块X的位置参数posX (X可以为A,或,B,或,C)均相等且与posE的差值的绝对值均能获得最小差值的绝对值,则mvpE等于这些图像块的运动矢量的平均值,或mvpE等于这些图像块的运动矢量的平均值取整。请参照图5,本发明实施例还提供一种解码装置400,用于执行上述解码程序,其包括运动矢量差值获得模块410,用于从码流中获得待解码的图像块的子图像块的运
动矢量差值;参考运动矢量获得模块420,用于根据所述待解码图像块的子图像块的已解码的周边块,获得子图像块的参考运动矢量;具体的首先,参考运动矢量获得模块420判断所述已解码的周边块是否符合预设的条件,在本发明实施例中,所述预设的条件包括所述周边块采用了与待解码的图像块相同的不规则划分方式;
14
所述周边块的参考图像块与所述子图像块的参考图像块处于同一个图像中。然后,如果有唯一的一个周边块满足预设的条件,则所述子图像块的参考运动矢量等于所述满足条件的周边块的运动矢量。如果所述已解码的周边块中有多个满足上述条件,则所述子图像块的参考运动矢量等于满足条件的周边块中不规则划分的位置参数与待解码图像块最接近的那一个周边块的运动矢量,在本发明实施例中,所述最接近可以为位置参数的差值最小,或者位置参数的绝对值的差值最小。如果有多个满足条件的周边块的位置参数相同,且同样接近于所述待解码的图像块的位置参数,则所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值,或所述多个满足条件的周边块的运动矢量的平均值取整。运动矢量获得模块430,用于根据所述子图像块的参考运动矢量和运动矢量差值, 得到所述子图像块的运动矢量;解码模块440,用于根据所述运动矢量查找所述子图像块的参考图像块,并根据所述参考子图象块对所述子图像块进行解码。在本发明实施例所提供的编码方法或解码方法中,根据图像内容或纹理的连续性,本发明还提供了又一种根据待编码或待解码图像块的子图像块的已编码/已解码的周边块,获得子图像块的参考运动矢量的方法,所述方法包括首先,判断所述已编码/已解码的周边块是否符合预设的条件;在本发明实施例中,所述预设的条件包括所述周边块采用了与待编码/待解码的图像块相同的不规则划分方式。其中,当待编码/待解码图像块采用的是图2(d)中所示的通过水平划分线将图像块划分成两个子图像块的水平划分方式时,如果待编码/待解码图像块的左相邻块也采用了水平划分方式,则根据当前编码/解码图像块的左相邻块的运动矢量获得当前图像块的参考运动矢量;如果待编码/待解码图像块的左相邻块没有采用水平划分方式且当前编码图像块的上相邻块采用了水平划分方式,则根据待编码/待解码图像块的上相邻块的运动矢量获得待编码/待解码图像块的参考运动矢量。当待编码/待解码图像块采用图2 (C)中所示的通过垂直划分线将图像块划分成两个子图像块的垂直划分方式时,如果待编码/待解码图像块的上相邻块也采用了垂直划分方式,则根据待编码/待解码图像块的上相邻块的运动矢量获得待编码/待解码的图像块的参考运动矢量;若待编码/待解码图像块的上相邻块没有采用垂直划分方式而待编码 /待解码图像块的左相邻块采用了垂直划分方式,则根据待编码/待解码图像块左边的相邻图像块的运动矢量获得待编码/待解码图像块的参考运动矢量。进一步的,上述根据待编码/待解码图像块的上边或左边的相邻图像块的运动矢量获得当前图像块的参考运动矢量的方法可以为当待编码/待解码图像块采用的是图2(d)中所示的通过水平划分线将图像块划分成两个子图像块的水平划分方式时,如果待编码/待解码图像块的左相邻块也采用了水平划分方式,则待编码/待解码图像块的参考运动矢量等于所述待编码/待解码图像块的左相邻块的运动矢量;如果待编码/待解码图像块的左相邻块没有采用水平划分方式且当前待编码/待解码的图像块的上相邻块采用了水平划分方式,则待编码/待解码图像块的参考运动矢量等于待编码/待解码图像块的上相邻块的运动矢量;当待编码/待解码图像块采用图2 (C)中所示的通过垂直划分线将图像块划分成两个子图像块的划分方式时,如果待编码/待解码图像块的上相邻块也采用了垂直划分方式,则待编码/待解码的图像块的参考运动矢量等于待编码/待解码图像块上相邻块的运动矢量;若待编码/待解码图像块的上相邻块没有采用垂直划分方式而待编码/待解码图像块的左相邻块采用了垂直划分方式,则待编码/待解码图像块的参考运动矢量等于待编码/待解码图像块的左相邻块的运动矢量。需要理解,在本实施例中所述的水平划分方式和垂直划分方式包括将图像块划分成两个不等大小的矩形子图像块的不规则划分方式,以及将图像块均勻划分成两个相等的图像块的规则划分方式(16x8或8x16)。当待编码/待解码图像块采用图2(a)或图2(b)中所示的方法将图像块划分成一个三角形及一个五边形时,可根据当待编码/待解码图像块周边块中采用了与待编码/待解码图像块的不规则划分方式相同的周边块的运动矢量式求取待编码/待解码图像块的
参考运动矢量。作为可选择的实施例,本发明还提供一种根据待编码/待解码图像块的上边或左边的相邻图像块的运动矢量获得当前图像块的参考运动矢量的方法根据当前图像块的参考帧索引值,及当前图像块上相邻块的参考帧索引值及其运动矢量,获得当前图像块的参考运动适量;或者根据当前图像块的参考帧索引值,以及当前图像块左相邻块(即处于当前图像块左方的周边块)的参考帧索引值及其运动矢量,获得当前图像块的参考运动矢量。以下将给出一个进一步的实现方案。以下实现方案中,由于当前图像块或子图像块的周边块可以为图像块,或子图像块,为便于描述统称为图像块,所有图像块的大小可以不一致,所有图像块的形状或划分方式可以不一致,图像块的大小按现有技术的方法确定。如图3所示,设有图像块A,B,C,D和E。其中E为当前图像块,A为E的左相邻块, B为E的上相邻块,C为E的右上相邻块,D为E的左上相邻块。当前图像块采用了非规则划分,图像块被划分为两个子图像块,设当前图像块第一或第二个子图像块E的参考运动矢量(或成为预测运动矢量,predicted motion vector)为 mvpEo若图像块A,或,B,或,C,或D不可得或不使用非规则块划分,则设ModeA,或, ModeB,或,ModeC,或,ModeD 的值为-I。若图像块A,B,C,D采用了非规则划分方式,则图像块A,B,C,D被划分为两个子图像块,设采用了非规则划分方式的图像块A,B,C,D的运动矢量为mvA,mvB,mvC, mvD,设上述图像块A,B, C,D和E对应的子图像块的参考帧索引值为refA,refB, refC,refD和refE。参考帧索引值指的是图像块或子图像块的参考图像块所在的图像在视频序列中的位置。当两个图像块或子图像块的参考帧索引值相同时,这两个图像块或子图像块的参考图像块位于同一图像中。若ModeE为水平划分方式,且ModeA也为水平划分方式,则mvpE的求取方法可以为
mvpE = mvA或,mvpE= ((refE+1) XmvAX 768/ (refA+l) +384) /768上述公示((refE+1)XmvAX768/(refA+l)+384)/768 实际上是对 mvA 进行缩放, 将块A运动矢量缩放至与当前块E所指向的参考图像。若ModeE为水平划分方式,ModeA不为水平划分方式而ModeB为水平划分方式,则 mvpE的求取方法可以为mvpE = mvB或,mvpE= ((refE+1) XmvBX768/(refB+1) +384)/768上述公式((refE+1)XmvBX768/(refB+1)+384)/768 实际上是对 mvB 进行缩放, 将块B运动矢量缩放至与当前块E所指向的参考图像。若ModeE为垂直划分方式,且ModeB也为垂直划分方式,则mvpE的求取方法可以为mvpE = mvB或,mvpE= ((refE+1) XmvBX768/(refB+1) +384)/768上述公示((refE+1)XmvBX768/(refB+1)+384)/768 实际上是对 mvB 进行缩放, 将块B运动矢量缩放至与当前块E所指向的参考图像。若ModeE为垂直划分方式,ModeB不为垂直划分方式且ModeA为垂直划分方式,则 mvpE的求取方法可以为mvpE = mvA或,mvpE= ((refE+1) XmvAX768/(refA+l) +384)/768上述公式((refE+1)XmvAX768/(refA+l)+384)/768 实际上是对 mvA 进行缩放, 将块A运动矢量缩放至与当前块E所指向的参考图像。本发明对于图像块的参考矢量的获得还提供了其他的可选择的实施例,在以下实现方案中,由于当前图像块或子图像块的周边块可以为图像块,或子图像块,为便于描述统称为图像块,所有图像块的大小可以不一致,所有图像块的形状或划分方式可以不一致,图像块的大小按现有技术的方法确定。如图3所示,设有图像块A,B,C,D和E。其中E为当前图像块,A为E的左相邻块, B为E的上相邻块,C为E的右上相邻块,D为E的左上相邻块。当前图像块采用了非规则划分,图像块被划分为两个子图像块,设当前图像块第一或第二个子图像块E的参考运动矢量(或成为预测运动矢量,predicted motion vector)为 mvpE。若图像块A,或,B,或,C,或D不可得或不使用非规则块划分,则设ModeA,或, ModeB,或,ModeC,或,ModeD 的值为-I。若图像块A,B, C,D采用了非规则划分方式,则图像块A,B, C,D被划分为两个子图像块(,设采用了非规则划分方式的图像块A,B, C,D的运动矢量为mvA,mvB, mvC, mvD, 设上述图像块A,B, C,D和E对应的子图像块的参考帧索引值为refA,refB, refC, refD和 refE)ο若ModeE为水平划分方式,且ModeA也为水平划分方式,则设图像块E第一个、第二个子图像块的参考运动矢量为(mvpE_yl,mvpE_xl)和(mvpE_y2,mvpE_x2),设图像块A第一个、第二个子图像块的参考运动矢量为(mVA_yl,mVA_xl)和(mvA_y2,mvA_x2),(mvpE_ yl,mvpE_xl)和(mvpE_y2,mvpE_x2)的求取方法可以为mvpE_yl = mvA_ylmvpE_xl = mvA_xlmvpE_y2 = mvA_y2mvpE_x2 = mvA_x2若ModeE为水平划分方式,ModeA不为水平划分方式,同时ModeB为水平划分方式。设图像块E第一个、第二个子图像块的参考运动矢量为(mVpE_yl,mVpE_Xl)和(mvpE_ y2, mvpE_x2),设图像块B第一个、第二个子图像块的参考运动矢量为(mvB_yl,mvB_xl)和 (mVB_y2,mVB_x2)。此时,图像块B (上相邻块)的下半部分(即图像块B第二个子图像块) 与当前图像块E同属一个物体的可能性较大,这两个图像块的运动矢量关联度较高。因此, (mvpE_yl, mvpE_xl)的求取方法可以为mvpE_yl = mvB_y2mvpE_xl = mvB_x2在上述场景中,图像块E的第二个子图像块(即图像块E的下半部分)运动矢量与图像块B运动矢量关联度较小,此时使用该子图像块左边块的运动矢量,也就是图像块A 的与图像块E相邻的部分的运动矢量更为合适。在这里,设图像块A的与图像块E的第二子图像块相邻的部分的运动矢量为(mvA_yclose,mvA_xclose)。因此,(mvpE_y2,mvpE_x2) 的求取方法可以为mvpE_y2 = mvA_yclosemvpE_x2 = mvA_xclose若ModeE为垂直划分方式,且ModeA也为垂直划分方式,则设图像块E第一个、第二个子图像块的参考运动矢量为(mvpE_yl,mvpE_xl)和(mvpE_y2,mvpE_x2),设图像块B 第一个、第二个子图像块的参考运动矢量为(mvB_yl,mvB_xl)和(mvB_y2,mvB_x2), (mvpE_ yl,mvpE_xl)和(mvpE_y2,mvpE_x2)的求取方法可以为mvpE_yl = mvB_ylmvpE_xl = mvB_xlmvpE_y2 = mvB_y2mvpE_x2 = mvB_x2若ModeE为垂直划分方式,ModeB既不采用垂直划分方式,而ModeA为垂直划分方式。设图像块E第一个、第二个子图像块的参考运动矢量为(mVpE_yl,mVpE_Xl)和(mvpE_ y2, mvpE_x2),设图像块B第一个、第二个子图像块的参考运动矢量为(mvA_yl,mvA_xl)和 (mVA_y2,mVA_x2)。此时,图像块A (左相邻块)的右半部分(即图像块A第二个子图像块) 与当前图像块E同属一个物体的可能性较大,这两个图像块的运动矢量关联度较高。因此, (mvpE_yl, mvpE_xl)的求取方法可以为mvpE_yl = mvA_y2mvpE_xl = mvA_x2在上述场景中,图像块E的第二个子图像块(即图像块E的右部分)运动矢量与图像块A运动矢量关联度较小,此时使用该子图像块上相邻块的运动矢量,也就是上相邻块B的与图像块E靠近的部分的运动矢量更为合适。设图像块B的与图像块E靠近得部分的运动矢量为(mvB_yclose,mvB_xclose),因此,(mvpE_y2,mvpE_x2)的求取方法可以为mvpE_y2 = mvA_yclosemvpE_x2 = mvA_xclose若ModeE为左上至右下划分模式,即采用图2 (a)所示划分方式,且图像块A (左相邻块)、B (上相邻块)、D (左上相邻块)中有且仅有一个采用与ModeE相同的划分方式, 则设该采用与ModeE相同的划分方式的图像块的第一和第二个图像块的运动矢量分别为 (mvX_yl,mvX_xl)、(mvX_y2, mvX_x2),设图像块E的第一、第二子图像块的参考运动矢量为 (mvpE_y1,mvpE_x1)禾口 (mvpE_y2,mvpE_x2),则(mvpE_y1,mvpE_x1)禾口 (mvpE_y2,mvpE_x2)
的求取方法为mvpE_yl = mvX_ylmvpE_xl = mvX_xlmvpE_y2 = mvX_y2mvpE_x2 = mvX_x2若A、B、D中有一个以上图像块采用与ModeE相同的划分模式,但仅有一个图像块的参考帧索引值与当前图像块参考帧索引值相同,则设该与当前图像块的划分方式相同且参考帧索引值相同的图像块的第一和第二子图像块运动矢量为(mvX_yl,mVX_xl)、(mvX_ y2,mvX_X2),设图像块E第一个、第二个子图像块的参考运动矢量为(mVpE_yl,mVpE_xl)和 (mvpE_y2, mvpE_x2), X 可以为 A 或 B 或 D,贝Ij (mvpE_yl, mvpE_xl)禾口(mvpE_y2,mvpE_x2) 的求取方法为mvpE_yl = mvX_ylmvpE_xl = mvX_xlmvpE_y2 = mvX_y2mvpE_x2 = mvX_x2若ModeE为右上至左下划分模式,即采用图2 (b)所示划分方式,且图像块A、B、C 中有且仅有一个采用与ModeE相同的划分模式,则设该采用与ModeE相同的划分模式的图像块的第一和第二子图像的块运动矢量为(mvX_yl,mvX_xl)、(mvX_y2, mvX_x2),设图像块 E第一个、第二个子图像块的参考运动矢量为(mvpE_yl,mvpE_xl)和(mvpE_y2,mvpE_x2), χ 可以为 A 或 B 或 C,则(mvpE_yl,mvpE_xl)和(mvpE_y2,mvpE_x2)的求取方法为mvpE_yl = mvX_ylmvpE_xl = mvX_xlmvpE_y2 = mvX_y2mvpE_x2 = mvX_x2若A、B、C中有一个以上图像块采用与ModeE相同的划分模式,但仅有一个图像块的参考帧索引值与当前图像块参考帧索引值相同,则设该与当前图像块的划分方式相同且参考帧索引值相同的图像块的第一和第二子图像块的运动矢量为(mVX_yl,mVX_Xl)、(mvX_ 12,mvX_x2),X可以为A或B或C,设图像块E第一个、第二个子图像块的参考运动矢量为 (mvpE_y 1, mvpE_x 1)禾口(mvpE—y2,mvpE—x2),贝U (mvpE_y 1, mvpE_x 1)禾口(mvpE—y2,mvpE—x2) 的求取方法为
mvpE_yl = mvX_ylmvpE_xl = mvX_xlmvpE_y2 = mvX_y2mvpE_x2 = mvX_x2在上述方法中,还可以根据待编码/待解码图像块的子图像块的已编码/已解码的周边块,及待编码/待解码图像块的不规则划分方式获得子图像块的参考运动矢量。具体方法为设待编码/待解码图像块的子图像块的已编码/已解码的周边块为图3所示A、B、C和D。若待编码/待解码图像块采用水平划分方式或垂直划分方式,则选取周边块A和B的运动矢量用于获得待编码/待解码图像块的子图像块的参考运动矢量; 若待编码/待解码图像块采用图2 (a)所示划分方式,则选取周边块A,B和C的运动矢量用于获得待编码/待解码图像块的子图像块的参考运动矢量;若待编码/待解码图像块采用图2(b)所示划分方式,则选取周边块A,B和D的运动矢量用于获得待编码/待解码图像块的子图像块的参考运动矢量。采用本发明实施例提供的编解码方法和装置,可以在一定的条件下简化参考运动矢量的获得和计算,节省了编解码系统的资源,提高了效率。以上对本发明实施例所提供的多级交换网和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种编码方法,其特征在于,包括在预设的多个不规则划分方式中选取一个不规则划分方式对待编码的图像块进行不规则划分,得到至少两个不同的子图像块,根据所述子图像块的像素值获得所述子图像块的参考图像块;根据所述参考图像块,获得所述待编码的图像块的子图像块的运动矢量;根据所述待编码图像块的子图像块的已编码的周边块和待编码图像块的不规则划分方式,获得子图像块的参考运动矢量;根据所述运动矢量和所述参考运动矢量,得到运动矢量差值;将所述运动矢量差值写入到码流中。
2.如权利要求1中所述的编码方法,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括选择符合预设条件的周边块;根据所述符合预设条件的周边块来获得图像块的参考运动矢量,其中,所述预设的条件包括所述周边块采用了与待编码的图像块相同的不规则划分方式;所述周边块的参考图像块与所述子图像块的参考图像块处于同一个图像中。
3.如权利要求2中所述的编码方法,其特征在于,如果有唯一的一个周边块满足预设的条件,则所述子图像块的参考运动矢量等于所述满足条件的周边块的运动矢量。
4.如权利要求2中所述的编码方法,其特征在于,如果所述已编码的周边块中有多个满足所述预设条件,则所述子图像块的参考运动矢量等于在满足条件的周边块中的位置参数与待编码图像块的位置参数的差值最小的那一个周边块的运动矢量,或所述子图像块的参考运动矢量等于在满足条件的周边块中的位置参数与待编码图像块的位置参数的差值绝对值最小的那一个周边块的运动矢量。
5.如权利要求4中所述的编码方法,其特征在于,如果有多个满足条件的周边块的位置参数相同且在满足条件的周边块中的位置参数与待编码图像块的位置参数的差值绝对值最小,或如果有多个满足条件的周边块的位置参数相同且在满足条件的周边块中的位置参数与待编码图像块的位置参数的差值绝对值最小,,则所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值,或所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值取整。
6.如权利要求1中所述的编码方法,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块和待编码图像块的不规则划分方式,获得子图像块的参考运动矢量包括当待编码的图像块的不规则划分方式为水平划分方式时,若所述待编码的图像块的左相邻块的不规则划分方式为水平划分方式时,则根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待编码的图像块的左相邻块的不规则划分方式不为水平划分方式,而所述待编码的图像块的上相邻块的不规则划分方式为水平划分方式时,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
7.如权利要求1中所述的编码方法,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块和待编码图像块的不规则划分方式,获得子图像块的参考运动矢量包括当待编码的图像块的不规则划分方式为垂直划分方式时,若所述待编码的图像块的上相邻块的不规则划分方式为垂直划分方式,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待编码的图像块的上相邻块的不规则划分方式不为垂直划分方式,而所述待编码的图像块的左相邻块的不规则划分方式为垂直划分方式时,根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
8.如权利要求1中所述的编码方法,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块和待编码图像块的不规则划分方式,获得子图像块的参考运动矢量包括所述待编码的图像块的不规则划分方式将图像块划分为两个三角形、或一个三角形和一个五边形、或两个四边形时,若所述待编码的图像块的周边块仅有一个图像块划分方式与所述待编码的图像块的不规则划分方式相同,则根据该图像块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;或者若所述待编码的图像块的周边块中有多个图像块的划分方式与所述待编码的图像块的不规则划分方式相同,则根据所述多个图像块中的与待编码图像块的参考帧索引值相同的图像块的子图像块的运动矢量获得所述待编码的图像块的参考运动矢量。
9.如权利要求6、7或8所述的编码方法,其特征在于,所述根据左相邻块或上相邻块的子图像块的运动矢量获得所述待编码的图像块的子图像块的参考运动矢量的方法包括所述待编码的图像块的子图像块的参考运动矢量等于左边或上边图像块的子图像块的运动矢量;或将左相邻块或上相邻块的字图像块的运动矢量缩放至所述待编码的图像块的子图像块所指向的参考图像,根据所述缩放后的运动矢量,获得所述待编码的图像块的子图像块的参考运动矢量。
10.一种编码装置,其特征在于,包括不规则划分模块,用于在预设的多个不规则划分方式中选取一个不规则划分方式对待编码的图像块进行不规则划分,得到至少两个不同的子图像块,根据所述子图像块的像素值获得所述子图像块的参考图像块;运动矢量获得模块,用于根据所述参考图像块,获得所述待编码的图像块的子图像块的运动矢量;参考运动矢量获得模块,用于根据所述待编码图像块的子图像块的已编码的周边块, 获得子图像块的参考运动矢量;运动矢量差值获得模块,用于将所述运动矢量和所述参考运动矢量做差,得到运动矢量差值;运动矢量差值写入模块,用于将所述运动矢量差值写入到码流中。
11.如权利要求10中所述的编码方法,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括选择符合预设条件的周边块;根据所述符合预设条件的周边块来获得图像块的参考运动矢量,其中,所述预设的条件包括所述周边块采用了与待编码的图像块相同的不规则划分方式;所述周边块的参考图像块与所述子图像块的参考图像块处于同一个图像中。
12.如权利要求11中所述的编码方法,其特征在于,如果有唯一的一个周边块满足预设的条件,则所述子图像块的参考运动矢量等于所述满足条件的周边块的运动矢量。
13.如权利要求11中所述的编码方法,其特征在于,如果所述已编码的周边块中有多个满足所述预设条件,则所述子图像块的参考运动矢量等于在满足条件的周边块中不规则划分的位置参数与待编码图像块的位置参数的差值最小的那一个周边块的运动矢量,或在满足条件的周边块中的位置参数与待编码图像块的位置参数的差值绝对值最小的那一个周边块的运动矢量。
14.如权利要求13中所述的编码方法,其特征在于,如果有多个满足条件的周边块的位置参数相同且在满足条件的周边块中的位置参数与待编码图像块的位置参数的差值绝对值最小,或如果有多个满足条件的周边块的位置参数相同且在满足条件的周边块中的位置参数与待编码图像块的位置参数的差值绝对值最小,则所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值,或所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值取整。
15.如权利要求10中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括当待编码的图像块的不规则划分方式为水平划分方式时,若所述待编码的图像块的左相邻块的不规则划分方式为水平划分方式时,则根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待编码的图像块的左相邻块的不规则划分方式不为水平划分方式,而所述待编码的图像块的上相邻块的不规则划分方式为水平划分方式时,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
16.如权利要求10中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括当待编码的图像块的不规则划分方式为垂直划分方式时,若所述待编码的图像块的上相邻块的不规则划分方式为垂直划分方式,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待编码的图像块的上相邻块的不规则划分方式不为垂直划分方式,而所述待编码的图像块的左相邻块的不规则划分方式为垂直划分方式时,根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
17.如权利要求10中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括所述待编码的图像块的不规则划分方式将图像块划分为两个三角形、或一个三角形和一个五边形、或两个四边形时,若所述待编码的图像块的周边块仅有一个图像块划分方式与所述待编码的图像块的不规则划分方式相同,则根据该图像块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;或者若所述待编码的图像块的周边块中有多个图像块的划分方式与所述待编码的图像块的不规则划分方式相同,则根据所述多个图像块中的与待编码图像块的参考帧索引值相同的图像块的子图像块的运动矢量获得所述待编码的图像块的参考运动矢量。
18.如权利要求15、16或17中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括所述待编码的图像块的不规则划分方式将图像块划分为两个三角形、或一个三角形和一个五边形、或两个四边形时,若所述待编码的图像块的周边块仅有一个图像块划分方式与所述待编码的图像块的不规则划分方式相同,则根据该图像块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;或者若所述待编码的图像块的周边块中有多个图像块的划分方式与所述待编码的图像块的不规则划分方式相同,则根据所述多个图像块中的与待编码图像块的参考帧索引值相同的图像块的子图像块的运动矢量获得所述待编码的图像块的参考运动矢量。
19.一种解码方法,其特征在于,包括从码流中获得待解码的图像块的不规则划分方式; 从码流中获得待解码的图像块的子图像块的运动矢量差值;从所述待解码图像块的子图像块的已解码的周边块和图像块的不规则划分方式,获得子图像块的参考运动矢量;根据所述子图像块的参考运动矢量和运动矢量差值,得到所述子图像块的运动矢量; 根据所述运动矢量获得所述子图像块的参考图像块,并根据所述参考子图象块对所述子图像块进行解码。
20.如权利要求19中所述的解码方法,其特征在于根据所述运动矢量获得所述子图像块的参考图像块,并根据所述参考子图像块对所述子图像块进行解码包括选择符合预设条件的周边块;根据所述符合预设条件的周边块来获得图像块的参考运动矢量,其中, 所述预设的条件包括所述周边块采用了与待解码的图像块相同的不规则划分方式;所述周边块的参考图像块与所述子图像块的参考图像块处于同一个图像中。
21.如权利要求20中所述的解码方法,其特征在于,如果有唯一的一个周边块满足预设的条件,则所述子图像块的参考运动矢量等于所述满足条件的周边块的运动矢量。
22.如权利要求20中所述的解码方法,其特征在于,如果所述已解码的周边块中有多个满足所述预设条件,则所述子图像块的参考运动矢量等于在满足条件的周边块中的位置参数与待解码图像块的位置参数的差值最小的那一个周边块的运动矢量,或在满足条件的周边块中的位置参数与待解码图像块的位置参数的差值绝对值最小的那一个周边块的运动矢量。
23.如权利要求22中所述的解码方法,其特征在于,如果有多个满足条件的周边块的位置参数相同且在满足条件的周边块中的位置参数与待解码图像块的位置参数的差值绝对值最小,或如果有多个满足条件的周边块的位置参数相同且在满足条件的周边块中的位置参数与待解码图像块的位置参数的差值绝对值最小,则所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值,或所述子图像块的参考运动矢量取所述多个满足条件的周边块的运动矢量的平均值取整。。
24.如权利要求19中所述的解码方法,所述从所述待解码图像块的子图像块的已解码的周边块和图像块的不规则划分方式,获得子图像块的参考运动矢量包括当待解码的图像块的不规则划分方式为水平划分方式时,若所述待解码的图像块的左相邻块的不规则划分方式为水平划分方式时,则根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待解码的图像块的左相邻块的不规则划分方式不为水平划分方式,而所述待解码的图像块的上相邻块的不规则划分方式为水平划分方式时,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
25.如权利要求19中所述的解码方法,所述从所述待解码图像块的子图像块的已解码的周边块和图像块的不规则划分方式,获得子图像块的参考运动矢量包括当待解码的图像块的不规则划分方式为垂直划分方式时,若所述待解码的图像块的上相邻块的不规则划分方式为垂直划分方式,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待解码的图像块的上相邻块的不规则划分方式不为垂直划分方式,而所述待解码的图像块的左相邻块的不规则划分方式为垂直划分方式时,根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
26.如权利要求19中所述的解码方法,所述从所述待解码图像块的子图像块的已解码的周边块和图像块的不规则划分方式,获得子图像块的参考运动矢量包括所述待解码的图像块的不规则划分方式将图像块划分为两个三角形、或一个三角形和一个五边形、或两个四边形时,若所述待解码的图像块的周边块仅有一个图像块划分方式与所述待解码的图像块的不规则划分方式相同,则根据该图像块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;或者若所述待解码的图像块的周边块中有多个图像块的划分方式与所述待解码的图像块的不规则划分方式相同,则根据所述多个图像块中的与待解码图像块的参考帧索引值相同的图像块的子图像块的运动矢量获得所述待解码的图像块的参考运动矢量。
27.如权利要求24、25或沈所述的解码方法,所述根据左相临块或上相邻块的子图像块的运动矢量获得所述待解码的图像块的子图像块的参考运动矢量的方法包括所述待解码的图像块的子图像块的参考运动矢量等于左边或上边图像块的子图像块的运动矢量;或将左相邻块或上相邻块的字图像块的运动矢量缩放至所述待解码的图像块的子图像块所指向的参考图像,根据所述缩放后的运动矢量,获得所述待解码的图像块的子图像块的参考运动矢量。
28.一种解码装置,其特征在于,包括运动矢量差值获得模块,用于从码流中获得待解码的图像块的子图像块的运动矢量差值;参考运动矢量获得模块,用于根据所述待解码图像块的子图像块的已解码的周边块, 获得子图像块的参考运动矢量;运动矢量获得模块,用于根据所述子图像块的参考运动矢量和运动矢量差值,得到所述子图像块的运动矢量;解码模块,用于根据所述运动矢量查找所述子图像块的参考图像块,并根据所述参考子图象块对所述子图像块进行解码。
29.如权利要求观中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括当待编码的图像块的不规则划分方式为水平划分方式时,若所述待编码的图像块的左相邻块的不规则划分方式为水平划分方式时,则根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待编码的图像块的左相邻块的不规则划分方式不为水平划分方式,而所述待编码的图像块的上相邻块的不规则划分方式为水平划分方式时,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
30.如权利要求观中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括当待编码的图像块的不规则划分方式为垂直划分方式时,若所述待编码的图像块的上相邻块的不规则划分方式为垂直划分方式,则根据上相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;若所述待编码的图像块的上相邻块的不规则划分方式不为垂直划分方式,而所述待编码的图像块的左相邻块的不规则划分方式为垂直划分方式时,根据左相邻块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量。
31.如权利要求观中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括所述待编码的图像块的不规则划分方式将图像块划分为两个三角形、或一个三角形和一个五边形、或两个四边形时,若所述待编码的图像块的周边块仅有一个图像块划分方式与所述待编码的图像块的不规则划分方式相同,则根据该图像块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;或者若所述待编码的图像块的周边块中有多个图像块的划分方式与所述待编码的图像块的不规则划分方式相同,则根据所述多个图像块中的与待编码图像块的参考帧索引值相同的图像块的子图像块的运动矢量获得所述待编码的图像块的参考运动矢量。
32.如权利要求四、30或31中所述的编码装置,其特征在于,所述根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量包括所述待编码的图像块的不规则划分方式将图像块划分为两个三角形、或一个三角形和一个五边形、或两个四边形时,若所述待编码的图像块的周边块仅有一个图像块划分方式与所述待编码的图像块的不规则划分方式相同,则根据该图像块的子图像块的运动矢量获得当前图像块的子图像块的参考运动矢量;或者若所述待编码的图像块的周边块中有多个图像块的划分方式与所述待编码的图像块的不规则划分方式相同,则根据所述多个图像块中的与待编码图像块的参考帧索引值相同的图像块的子图像块的运动矢量获得所述待编码的图像块的参考运动矢量。
全文摘要
一种编码方法,包括在预设的多个不规则划分方式中选取一个不规则划分方式对待编码的图像块进行不规则划分,得到至少两个不同的子图像块,根据所述子图像块的像素值获得所述子图像块的参考图像块;根据所述参考图像块,获得所述待编码的图像块的子图像块的运动矢量;根据所述待编码图像块的子图像块的已编码的周边块,获得子图像块的参考运动矢量;根据所述运动矢量和所述参考运动矢量,得到运动矢量差值;将所述运动矢量差值写入到码流中,并发送给解码端。本发明实施例还提供了一种执行所述编码方法的编码装置。
文档编号H04N7/26GK102215395SQ20101023781
公开日2011年10月12日 申请日期2010年7月19日 优先权日2010年4月9日
发明者郑萧桢 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1