CN101653008A - 用于处理视频信号的方法和装置 - Google Patents
用于处理视频信号的方法和装置 Download PDFInfo
- Publication number
- CN101653008A CN101653008A CN 200880011248 CN200880011248A CN101653008A CN 101653008 A CN101653008 A CN 101653008A CN 200880011248 CN200880011248 CN 200880011248 CN 200880011248 A CN200880011248 A CN 200880011248A CN 101653008 A CN101653008 A CN 101653008A
- Authority
- CN
- China
- Prior art keywords
- information
- picture
- point
- block
- reference picture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
公开了一种处理视频信号的方法。本发明包括从视频信号比特流提取重叠窗口系数,使用该重叠窗口系数将窗口应用到参考图片中的至少一个参考区域,通过多重重叠应用了窗口的至少一个参考区域获得参考块,并且使用该参考块获得当前块的预测符。
Description
技术领域
本发明涉及视频信号处理,并且更具体地,涉及一种用于处理视频信号的装置及其方法。尽管本发明适用于广泛的应用范围,但是其特别适用于编码或解码视频信号。
背景技术
技术问题
通常,压缩译码意指用于经由通信电路传输数字化信息或者将数字化信息存储为适用于存储介质的格式的一系列信号处理技术。压缩译码的目标包括音频、视频、字符等。特别地,对序列执行压缩译码的技术被称为视频序列压缩。视频序列的特征通常在于具有空间冗余和时间冗余。
发明内容
然而,如果不能充分消除空间冗余和时间冗余,则对视频信号译码时的压缩速率降低。如果过度消除空间冗余和时间冗余,则不能生成解码视频信号所需要的信息,从而降低了重建速率。
技术方案
因此,本发明涉及一种用于处理视频信号的装置及其方法,该装置和方法基本上排除了由于现有技术的限制和缺陷引起的一个或多个问题。
本发明的目的在于提供一种用于处理视频信号的装置及其方法,利用该装置和方法,可以通过自适应地应用窗口系数基于重叠块执行运动补偿。
本发明的另一目的在于提供一种用于处理视频信号的装置及其方法,利用该装置和方法,可以以对参考图片执行变形变换的方式执行运动补偿。
本发明的另一目的在于提供一种用于处理视频信号的装置及其方法,利用该装置和方法,可以使用变形变换后的参考图片的运动矢量执行运动补偿。
本发明的另一目的在于提供一种用于处理视频信号的装置及其方法,利用该装置和方法,可以通过使用整数像点生成1/8像点来执行运动补偿。
有益效果
因此,本发明提供了如下效果或优点。
首先,本发明通过自适应地应用窗口,获得了与当前块几乎相似的参考块,由此通过减少残余的大小提高译码效率。
其次,如果当前图片被放大/缩小或者旋转超过参考图片,则本发明能够使用变形变换后的参考图片显著地减少编码当前图片的残余所需要的比特数。
第三,本发明使用变形变换后的参考图片的运动矢量,由此减少了译码当前块的运动矢量所需要的比特数并且进一步省略了运动矢量的传送。
第四,由于本发明使用了下述方案,即使用整数像点来代替使用1/2像点或1/4像点来生成1/8像点,因此能够通过单次内插步骤生成1/8。因此,本发明能够减少由于执行若干内插步骤而产生的复杂性。
附图说明
所包括的附图用于提供本发明的进一步的理解并且被并入本说明书并且构成本说明书的一部分,该附图说明了本发明的实施例并且连同具体实施方式一起用于解释本发明的原理。
在附图中:
图1是根据本发明的一个实施例的视频信号编码装置的示意性框图;
图2是根据本发明的一个实施例的视频信号解码装置的示意性框图;
图3是解释基于块的运动补偿技术的示图;
图4是解释在OBMC方案中对参考图片应用窗口的示图;
图5是解释图4中的应用了窗口的参考区域被多重重叠的情况的示图;
图6是根据本发明的第一实施例的OBMC方案的流程图;
图7是根据本发明的第一实施例的应用OMBC的预测图片的示图;
图8是根据本发明的第一实施例的OBMC方案的流程图;
图9是OBMC方案和现有技术方案(BMC)之间的性能比较的曲线图;
图10是根据本发明的另一实施例的视频信号编码装置的示意性框图;
图11是根据本发明的另一实施例的视频信号解码装置的示意性框图;
图12是放大情况中的参考图片和当前图片的示图;
图13是对应于图12中所示示例中的特定对象的块的示图;
图14是旋转情况中的参考图片和当前图片的示图;
图15是对应于图14中所示示例中的特定背景的块的示图;
图16是解释仿射变换信息的概念的示图;
图17是解释单应矩阵信息的概念的示图;
图18是用于获得变形信息和变形后的参考图片的过程的流程图;
图19是参考和当前图片的示例性示图;
图20是解释图18中所示的步骤中的步骤S310(角点(特征)寻找步骤)的示图;
图21是解释图18中所示的步骤中的步骤S320(角点跟踪步骤)的示图;
图22是解释图18中所示的步骤中的步骤S330(角点分组步骤)的示图;
图23是解释图18中所示的步骤中的步骤S340(异常消除步骤)的示图;
图24是解释图18中所示的步骤中的步骤S360(参考图片生成步骤)的示图;
图25是变形应用决定过程的流程图;
图26是解释运动矢量预测的概念的示图;
图27是解释使用变形信息的运动矢量预测的示图;
图28是解释用于提高变形信息的译码效率的第一方法的示图;
图29是解释用于提高变形信息的译码效率的第二方法的示图;
图30是解释用于提高变形信息的译码效率的第三方法的示图;
图31是关于当前图片的参考关系的示图;
图32是解释1/8像点的概念的示图;
图33是解释1/8像点运动补偿方法的内插步骤的示图;
图34是解释二维中的整数、1/2像点、1/4像点和1/8像点的位置的示图;
图35是解释根据本发明的实施例的1/8像点运动补偿方法中的对应于第一组的像点的补偿方法的示图;
图36是解释根据本发明的实施例的1/8像点运动补偿方法中的对应于第二组的像点的补偿方法的示图;并且
图37是解释根据本发明的实施例的1/8像点运动补偿方法中的对应于第三组的像点的补偿方法的示图。
具体实施方式
在下面的描述中将阐述本发明的另外的特征和优点,并且通过该描述,该另外的特征和优点部分地将是显而易见的,或者可以部分地通过实践本发明来学习。通过所撰写的描述中特别指出的结构及本发明的权利要求以及附图,将认识和获得本发明的目的和其他优点。
为了实现这些和其他优点并且根据本发明的目的,如被具体化和广泛描述的,一种根据本发明的处理视频信号的方法包括下述步骤:从视频信号比特流提取重叠窗口系数,使用该重叠窗口系数将窗口应用到参考图片中的至少一个参考区域,通过多重重叠应用了窗口的至少一个参考区域获得参考块,并且使用该参考块获得当前块的预测符。
优选地,重叠窗口系数随序列、帧、片段和块中的每一个而变化。
优选地,参考块对应于重叠参考区域中的公共区域。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:通过对当前块执行运动估计获得运动矢量,使用该运动矢量找到参考区域,通过将至少一个窗口应用到参考区域以与之重叠获得使预测误差最小的重叠窗口系数,并且对该重叠窗口系数进行编码。
优选地,在编码步骤中,该重叠窗口系数被包括在序列头、片段头和宏块层之一中。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括步骤:从视频信号比特流提取OBMC(重叠块运动补偿)应用标志信息,根据该OBMC应用标志信息获得当前块的参考块,并且使用该参考块获得该当前块的预测符。
优选地,使用当前块的运动信息执行参考块获得步骤。
优选地,在参考块获得步骤中,如果OBMC应用标志信息表示OBMC方案被应用到当前块或当前片段,则根据该OBMC方案获得参考块。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:通过对当前块执行运动估计获得运动矢量,使用该运动矢量计算用于参考区域的根据第一运动补偿的第一比特大小和根据第二运动补偿的第二比特大小,并且基于该第一比特大小和第二比特大小对表示第一运动补偿的信息和表示第二运动补偿的信息之一进行编码。
优选地,第一运动补偿对应于基于块的运动补偿并且第二运动补偿对应于基于重叠块的运动补偿。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:从视频信号比特流提取变形信息和运动信息,使用该变形信息对参考图片进行变换,并且使用变换后的参考图片和运动信息获得当前块的预测符。
优选地,该变形信息包括仿射变换信息和投影矩阵信息中的至少一个。
更优选地,该变形信息包括存在于当前图片和参考图片中的对应的对的位置信息。
在该情况中,对应的对的位置信息包括第一点的位置信息和第一点的位置信息与第二点的位置信息之间的差值。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:使用当前图片和参考图片生成变形信息,使用该变形信息对该参考图片进行变换,使用变换后的参考图片获得当前块的运动矢量,并且对该变形信息和该运动矢量进行编码。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:使用当前图片和参考图片生成变形信息,使用该变形信息对该参考图片进行变换,使用变换后的参考图片计算当前块的编码消耗的第一比特数,使用该参考图片计算当前块的编码消耗的第二比特数,并且基于该第一比特数和第二比特数对变形应用标志信息进行编码。
优选地,该方法进一步包括根据该第一比特数和第二比特数决定是否传送该变形信息。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:从视频信号比特流提取变形信息和预测方案标志信息,根据该预测方案标志信息使用变形信息获得参考图片中的第二点,当前图片中的至少一个第一点被映射到该第二点,并且使用对应于该第二点的运动矢量预测当前块的运动矢量。
优选地,根据预测方案标志信息确定第一点。
优选地,第一点包括左上点、右上点、左下点和右下点中的至少一个。
优选地,如果存在至少两个第一点,则通过计算至少两个点的平均值或中间值执行当前块的运动矢量的预测。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:使用当前图片和参考图片获得变形信息,使用该变形信息获得参考图片中的第二点,当前图片中的至少一个第一点被映射到该第二点,并且基于对应于该第二点的运动矢量和当前块的运动矢量对预测方案标志信息进行编码。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:从视频信号比特流提取变形信息和变形跳过模式标志信息,根据该变形跳过模式标志信息使用该变形信息对参考图片进行变形变换,并且使用与变形变换后的参考图片中的当前块协同定位的参考块获得当前块。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:使用当前图片和参考图片获得变形信息,使用该变形信息对该参考图片进行变形变换,使用变形变换后的参考图片获得当前块的运动矢量,并且基于该运动矢量对变形跳过标志信息进行编码。
为了进一步实现这些和其他优点并且根据本发明的目的,一种处理视频信号的方法包括下述步骤:参考整数像点查找当前1/8像点的位置,使用当前1/8像点的位置获得系数,并且使用该系数和整数像点生成当前的1/8像点。
优选地,整数像点包括更接近当前1/8像点的三个整数像点并且系数包括应用到第一整数像点的第一系数、应用到第二整数像点的第二系数和应用到第三整数像点的第三系数。
更优选地,分别根据第一至第三整数像点之间的相对位置确定第一至第三系数之间的相对值。
更优选地,根据当前1/8像点与第一整数像点之间的距离、当前1/8像点与第二整数像点之间的距离和当前1/8像点与第三整数像点之间的距离确定第一至第三系数之间的相对值。
优选地,经由广播信号接收视频信号。
优选地,经由数字介质接收视频信号。
为了进一步实现这些和其他优点并且根据本发明的目的,一种计算机可读记录介质包括用于执行处理视频信号的方法的程序,该方法包括以下步骤:参考整数像点查找当前1/8像点的位置,使用当前1/8像点的位置获得系数,并且使用该系数和整数像点生成当前1/8像点。
将理解,前面的一般描述和下面的详细描述是示例性和解释性的,并且意在提供如权利要求所要求的本发明的进一步解释。
现将详细参考本发明的优选实施例,在附图中示出了其示例。
在本发明中,应当理解,译码在概念上应包括编码和解码。
图1是根据本发明的一个实施例用于编码视频信号的装置的示意性框图。参考图1,根据本发明的一个实施例的视频信号编码装置包括变换单元110、量化单元115、译码控制单元120、反向量化单元130、反向变换单元135、滤波单元140、帧存储单元145、运动估计单元160、帧间预测单元170、帧内预测单元175和熵译码单元180。
变换单元110对像素值进行变换并且然后获得变换后的系数值。对于该情况,可以使用DCT(离散余弦变换)或小波变换。量化单元115对从变换单元110输出的变换后的系数值进行量化。译码控制单元120控制对特定的块或帧执行图片内译码还是图片间译码。反向量化单元130和反向变换单元135对变换后的系数值进行反向量化并且然后使用反向量化的变换后的系数值重建原始像素值。
滤波单元140被应用到每个译码后的宏块以减少块失真。在该情况中,滤波器使块的边缘平滑以增强解码图片的图像质量。并且,该滤波过程的选择取决于边界强度和边界周围的图像采样的梯度。滤波后的图片被输出或者被存储在帧存储单元145中以用作参考图片。
运动估计单元160使用帧存储单元145中存储的参考图片搜索用于与当前块最相似的参考块的参考图片。在该情况中,参考图片是具有应用到其的重叠窗口150的图片。在该情况中,使用具有被应用到其的重叠窗口的图片的方案被称为通过基于重叠块的运动估计的重叠块运动补偿(OBMC)。后面将参考图3至9解释本发明提出的基于重叠块的运动补偿的实施例。同时,运动估计单元160向熵译码单元180传输在应用重叠窗口中使用的窗口系数等,从而传输的窗口系数等可以被包括在比特流中。
帧间预测单元170使用被应用了重叠窗口150的参考图片对当前图片执行预测。并且图片间译码信息被递送到熵译码单元180。帧内预测单元在当前图片内从解码的采样执行帧内预测并且向熵译码单元180递送图片内译码信息。
熵译码单元180通过对量化的变换后的系数值、图片内译码信息和图片间译码信息执行熵译码来生成视频信号比特流。在该情况中,熵译码单元180能够使用可变长度译码(VLC)和算术译码。可变长度译码(VLC)将输入符号变换为连续码字。并且,该码字的长度可以是可变化的。例如,频繁生成的符号被表示为短码字,而不频繁生成的符号被表示为长码字。基于上下文的自适应可变长度译码(CAVLC)可以用作可变长度译码。算术译码将连续数据符号变换为单个素数。并且,算术译码能够获得表示每个符号所需要的最优的素数比特。基于上下文的自适应二进制算术码(CABAC)可以用于算术译码。
图2是根据本发明的一个实施例的视频信号解码装置的示意性框图。参考图2,根据本发明的一个实施例的视频信号解码装置包括熵解码单元210、反向量化单元220、反向变换单元225、滤波单元230、帧存储单元240、帧间预测单元260和帧内预测单元265。
熵解码单元210对视频信号比特流进行熵解码并且然后提取每个宏块的变换系数、运动矢量等。反向量化单元220对熵解码后的变换系数进行反向量化,并且反向变换单元225使用反向量化的变换系数重建原始像素值。同时,滤波单元230被应用于每个被译码的宏块以减少块失真。滤波器使块的边缘平滑以增强解码图片的图像质量。滤波后的图片被输出或存储在帧存储单元240中以用作参考图片。
帧间预测单元260使用帧存储单元240中存储的参考图片预测当前图片。如前面图1的描述中提及的,使用了具有应用了重叠窗口的参考图片。同时,帧间预测单元260能够从熵解码单元210接收应用重叠窗口250所需要的窗口系数等。这将在后面参考图3至9进行解释。
帧内预测单元265从当前图片内的解码采样执行图片间预测。从帧内预测单元265或帧间预测单元260输出的预测值以及从反向变换单元225输出的像素值被加在一起以生成重建的视频帧。
在下面的描述中,参考图3解释基于块的运动补偿技术并且然后参考图4至9解释根据本发明的实施例的重叠块运动补偿(OBMC)。
图3是解释基于块的运动补偿技术的示图。
参考图3的(a),当前图片被划分为多个特定大小的块。为了估计当前块A的运动,搜索图3的(b)中所示的参考图片以寻找与当前块A最相似的参考块B。在该情况中,当前块A的对应位置LA和参考块B的位置LB之间的偏移成为运动矢量。因此,通过使用运动矢量找到与当前块最相似的参考块B,获得了当前块的预测值。并且,然后能够通过将残余信号添加到该预测值,来重建当前块。
因此,执行基于块的运动补偿的技术在消除相互相邻的帧之间的冗余方面是高效的,但是在由于块边界生成块效应方面是不利的。该块效应降低了译码效率并且降低了图像质量。为了努力解决该问题,已提出了基于重叠块的运动补偿(OBMC)。在下面的描述中,解释了根据本发明的基于重叠块的运动补偿(OBMC)的第一和第二实施例。
图4是解释根据本发明的第一实施例的在OBMC方案中向参考图片应用窗口的示图。参考图4的(a),可以观察到,存在当前块B0和围绕当前块B0的相邻块B1至B8。
参考图4的(b),通过将重叠窗口应用到参考图片中的分别对应于相邻块B1至B8的参考块B1至B8,产生了如图4的(c)中所示的具有应用了窗口的参考块。
在该窗口中,将相对大的权重给予中心部分并且将相对小的权重给予外围部分。在该情况中,替代仅将窗口应用到对应于参考块B1的区域,将窗口应用到包括参考块B1和外围部分d的区域。在该情况中,窗口可以是固定的。可替选地,窗口可以自适应地被定义为对于每个序列、帧、片段或宏块是不同的。例如,窗口可如式1至3中所示的定义。
[式1]
[式2]
[式3]
在上式中,“w”表示重叠窗口系数,“E”表示预测误差的平方和,“I”表示图片中的像点密度,“p”表示像素位置矢量,“S”表示块大小,并且“m”表示对于当前块的相对位置(例如,如果当前块位于(0,0),则上面的块位于(-1,0))。
参考式1至3,重叠窗口系数w可以根据预测误差E被确定为不同的。并且,后面将参考图6解释对应的细节。
图5是解释图4中的应用了窗口的参考区域被多重重叠的情况的示图。
参考图5,可以观察到,具有被应用了窗口的多个参考区域B1至B8相互重叠。在该情况中,能够从共同重叠的区域获得对应于当前块的参考块B0。例如,第一参考区域B1与对应于当前块的参考块B0的左上区域B0a重叠,并且第八参考区域B8与对应于当前块的参考块B0的左上区域B0d重叠。因此,如果从该重叠区域获得对应于当前块的参考块B0,则能够消除块边界上的块效应并且可以获得最适合的预测符。因此,能够使残余的比特大小最小。
图6是根据本发明的第一实施例的OBMC方案的流程图。
参考图6,步骤S110至S140是由编码器执行的步骤并且可由参考图1描述的根据本发明的第一实施例的视频信号编码装置执行。步骤S150至S180是由解码器执行的步骤并且可由参考图2描述的根据本发明的第一实施例的视频信号解码装置执行。
首先,编码器执行运动估计以获得运动矢量(S110)。执行运动补偿以使量化完成之后的误差变换系数的能量最小。并且,变换后的块中的能量取决于变换之前的误差块中的能量。因此,运动估计要找到与当前块/区域匹配的使运动补偿误差(即,当前块和参考区域之间的差)中的能量最小的块/区域。在这样做时,通常需要用于评估许多点处的误差能量的过程。并且,能量测量方法的选择影响运动估计过程中的操作复杂性和准确性。可以使用三类能量测量方法。
(1)均方差
在该情况中,“Cij”表示当前块的采样并且“Rij”表示参考区域的采样。
(2)平均绝对误差
(3)绝对误差和
而且,SA(T)D(变换后的残余数据的绝对差的和)可以用作另一能量测量方法。
同时,在执行运动估计时,可以使用全搜索方案、快速搜索方案等。全搜索方案计算窗口中的每个点处的SAE等。首先,能够通过在螺旋方向中使窗口从中心处的初始搜索位置向外移动来执行全搜索。全搜索方案能够找到最小的SAE等但是会由于在每个位置进行能量测量而需要极大的操作量。快速搜索方案仅测量搜索窗口中的全部位置中的部分位置的能量并且包括三步搜索(TSS(三步搜索)、N步搜索)、对数搜索、最近邻搜索等。
使用步骤S110中获得的运动矢量,获得使整体预测误差(E)最小的最优重叠窗口系数w(S120)。并且,重叠窗口系数w可以根据序列、帧、片段或块变化。
随后,使用式4中所示的SAD等重复步骤S110和S120直至预测误差E收敛到阈值(S130)。
[式4]
编码器使该最优重叠窗口系数w包括在语法元素中并且随后经由视频信号比特流将其传送(S140)。
如果是这样,则解码器接收该视频信号比特流(S150)并且随后从接收的视频信号比特流提取重叠窗口系数w(S160)。随后,解码器通过使用重叠窗口系数w将窗口应用到参考图片的每个参考区域来使参考区域相互多重重叠(S170)。解码器从多重重叠的参考区域获得参考块并且然后使用获得的参考块执行运动补偿,以获得当前块的预测值(预测符)(S180)。
图7是根据本发明的第一实施例的应用了OMBC的预测图片的示图。在图7中,(a)示出了原始图片,(b)示出了通过应用现有技术的运动补偿(BMC)获得的预测,并且(c)示出了通过应用本发明的OBMC获得的预测。由图7的(c)可以观察到,比图7的(b)中所示的更好地改善了块效应。
图8是根据本发明的第一实施例的OBMC方案的流程图。如同本发明的第一实施例,步骤S210至S255由编码器执行并且步骤S260至S295由解码器执行。
首先,编码器执行运动估计以获得运动矢量(S210)。编码器通过应用现有技术的运动补偿(BMC)获得当前片段或块的预测符并且然后计算译码残余所消耗的比特大小(S220)。编码器通过应用基于重叠块的运动补偿(OBMC)获得当前片段或块的预测符并且然后计算译码残余消耗的比特大小(S230)。
随后,通过相互比较步骤S220的结果和步骤S230的结果,编码器决定OBMC在比特大小方面是否是有利的(S240)。图9是OBMC方案和现有技术方案(BMC)之间的性能比较的曲线图。参考图9,OBMC在整体译码效率方面是占优势的。还可以观察到,BMC是部分占优势的。例如,可以观察到,BMC在帧编号12至18和112至118的区域中是高效的。因此,由于BMC可以是部分有利的,因此针对每个帧、片段或块决定哪个方案是有利的。
现在参考图8,作为步骤240做出的决定结果,如果OBMC是有利的(步骤S240中的“是”),则设定表示应用OBMC的标识符(S250)。例如,可以将OBMC应用标志信息设定为1。否则,如果BMC是有利的,则设定表示应用BMC的标识符(S255)。例如,将OBMC应用标志信息设定为0。表1和表2指出了OBMC应用标志信息及其含义。
[表1]OBMC应用标志信息的含义。
use_obmc_flag | 含义 |
0 | OBMC不应用到当前片段或当前帧。 |
1 | OBMC不应用到当前片段或当前帧。 |
[表2]
含义 | |
0 | OBMC不应用到当前块。 |
1 | OBMC应用到当前块。 |
参考表1,在OBMC应用标志信息是表示将OBMC应用到当前片段或当前帧的信息的情况中,OBMC应用标志可以包含在片段头、序列头等中。
参考表2,在OBMC应用标志信息是关于当前块的信息的情况中,OBMC应用标志信息可以包含在宏块层中,其没有对本发明施加任何限制。
2.变形变换
图10是根据本发明的另一实施例的视频信号编码装置的示意性框图。
参考图10,根据本发明的另一实施例的视频信号编码装置包括变换单元310、量化单元315、译码控制单元320、反向量化单元330、反向变换单元335、滤波单元340、帧存储单元345、参考图片变换单元350、运动估计单元360、帧间预测单元370、帧内预测单元375和熵译码单元380。除了参考图片变换单元350和运动估计单元360以外的元件执行与参考图1描述的前面的编码装置的元件中的具有相同名称的元件的功能几乎相似的功能。因此,在下面的描述中省略了它们的细节。
同时,参考图片变换单元350使用参考图片和当前图片获得变形信息并且然后通过根据获得的变形信息变形参考图片来生成变换后的参考图片。并且,该变形信息经由运动估计单元360传输到熵译码单元380并且然后被包含在比特流中。将参考图12至17解释变形信息的概念和类型,并且将参考图18至24解释变形信息获得方法和变形的参考图片获得方法。
运动估计单元360使用变形的参考图片和/或原始参考图片估计当前块的运动。1)将参考图25解释用于决定使用原始参考图片还是变形的参考图片的设定过程,2)将参考图26解释使用变形信息预测当前运动矢量的方法,3)将参考图28至30解释高效传送变形信息的方法,并且4)后面将解释是否由于传送变形信息跳过运动矢量等的传送。
图11是根据本发明的另一实施例的视频信号解码装置的示意性框图。
参考图11,根据本发明的另一实施例的视频信号解码装置包括熵解码单元410、反向量化单元420、反向变换单元425、滤波单元430、帧存储单元440、参考图片变换单元450、帧间预测单元460和帧内预测单元470。除了参考图片变换单元450和帧间预测单元460以外的元件执行与参考图2描述的前面的视频信号解码装置的元件中的具有相同名称的元件的功能几乎相似的功能。因此,在下面的描述中省略了它们的细节。
参考图片变换单元450使用从视频信号比特流提取的变形信息对帧存储单元440中存储的参考图片进行变形变换。后面将参考图31解释其细节。同时,帧间预测单元460使用变形信息生成运动矢量的预测并且然后使用运动矢量的预测和运动矢量的残余获得运动矢量。后面将解释其细节。
在下面的描述中,将依次解释变形信息的概念和用于在编码器中获得变形信息的过程、变形信息传送方法和在解码器中使用变形信息的方法。
2.1变形信息的获得(在编码器中)
图12是放大情况中的参考图片和当前图片的示图,并且图13是对应于图12中所示的示例中的特定对象的块的示图。
参考图12,(a)示出了参考图片并且(b)示出了当前图片。相互比较参考图片和当前图片,在当前图片中放大背景(杆)和对象(火车)。
参考图13,可以将(a)的参考图片中的对象(火车)与(b)的当前图片中的对象进行比较。因此,在放大的情况中,当查找具有与当前块Bc相同大小的参考块时,可能未能查找到最相似的参考块或者对应于当前块和参考块之间的差的残余增加。因此译码效率可能下降。
图14是旋转情况中的参考图片和当前图片的示图,并且图15是对应于图14中所示的示例中的特定背景的块的示图。
参考图14,(a)示出了参考图片并且(b)示出了当前图片。通过顺时针旋转参考图片获得当前图片。
参考图15,可以将参考图片中的特定背景(岩石表面)与当前图片中的特定背景进行比较。在测量运动估计的能量时,计算参考块和当前块中的相同位置之间的误差。与放大情况类似,可能未能查找到最相似的参考块或者残余的译码效率极大地下降。
(1)变形信息的类型
如前面描述中提及的,如果参考图片被放大/缩小或旋转,则可以使用变形信息使参考图片放大/缩小或旋转,以变得与当前图片整体上相似。变形信息可以包括仿射变换信息、投影变换信息等。
图16是解释仿射变换信息的概念的示图。
参考图16,可以观察到在参考图片(a)中存在三个点((u0,v0)、...、(u2,v2))并且还可以观察到在当前图片(b)中存在分别对应于前面的点((u0,v0)、...、(u2,v2))的三个点((x0,y0)、...、(x2,y2))。并且,仿射变换信息可以如下地使用包括参考图片的三个控制点和当前图片的三个控制点的总共六个控制点来定义。
[式5]
在式5中,“aij”表示仿射变换信息的元素,(um,ym)表示参考图片中的点的位置,并且(xn,yn)表示当前图片中的点的位置。
图17是解释单应矩阵信息的概念的示图。单应矩阵信息可以是前述投影变换信息的一种。
参考图17,可以观察到参考图片(a)中的五个点((u0,v0)、...、(u4,v4))分别对应于参考图片(b)中的五个点((x0,y0)、...、(x4,y4))。一般来说,单应矩阵信息可被定义为下式。
[式6]
x′=Hx
在式6中,x′表示世界坐标系中的点,x表示每个视图的局部坐标系中的点,并且H表示单应矩阵。
[式7]
如果代入五个点,如图17中所示,则单应矩阵信息可被计算为下式。在该情况中,将在后面的变形信息获得过程的描述中解释每个点具有哪种物理含义以及如何提取每个点。
[式8]
(2)用于获得变形信息和变形的参考图片的过程
图18是用于获得变形信息和变形的参考图片的过程的流程图。在下面的描述中,在变形信息是单应矩阵信息的情况中,将参考图19至24解释用于通过获得单应矩阵信息和使用获得的单应矩阵信息生成变形变换后的参考图片的过程。图19是参考图片和当前图片的示例性示图。参考图19,观察到壁纸被作为背景提供给参考图(a)。并且,还观察到,日历、球、火车等被作为对象提供给参考图片。参考图19(b),在当前图片中可以观察到日历的尺寸被减小到小于参考图片(a)的尺寸。可以观察到球被移动到右侧。并且,还可以观察到火车接近。在下面的描述中,将使用图19中所示的示例解释步骤S310至S360。
首先,使用角点检测方法寻找角点(特征)(S310)。图20是解释图18中所示的步骤中的步骤S310(角点(特征)寻找步骤)的示图。参考图20,可以观察到检测到图片中的各种角点。在该情况中,角点意指有利于由下一图片跟踪的点。并且,角点检测方法可以采用KLT(Kanade-Lucas_Tomasi特征跟踪)方案,但是本发明不限于此。随后,对在步骤S310中使用特征跟踪算法(例如,KLT方案)检测的角点执行跟踪(S320)。图21是解释图18中所示的步骤中的步骤S320(角点跟踪步骤)的示图。参考图21,在已为角点搜索当前图片(b)之后,可以在与当前图片(b)中的前面的角点对应的角点存在于参考图片(a)中的位置跟踪该角点。
随后,使用运动分割将角点分组(S330)。可以存在具有不同运动、旋转和缩放特征的各种区域。如果角点被分组为具有相同特征的特定角点,则可以高效地实现变形变换。通过角点分组,可以考虑每个译码器的运动或仿射关系。图22是解释图18中所示的步骤中的步骤S330(角点分组步骤)的示图。参考图22,可以观察到壁纸上存在的角点被分组为组A,日历上的角点被分组为组B,球上的角点被分组为组C,并且火车上的角点被分组为组D。随后,使用异常算法等从在步骤330中分组的角点部分地消除角点。在该情况中,异常意指比其他值小很多或大很多的值。例如,“25”是{3,5,4,4,6,2,25,5,6,2}中的异常。同时,作为消除异常的方法,可以使用RANSAC(随机采样一致性)算法。RANSAC算法是用于消除除了最适合于表示单应矩阵的角点之外的角点的算法。并且,RANSAC算法能够使用最适合的四个对应的对生成最适合的单应矩阵信息。图23是解释图18中所示的步骤中的步骤S340(异常消除步骤)的示图。参考图23,可以观察到从属于组A的角点中消除了四个角点。并且,还可以观察到从属于组B的角点中消除了作为异常的四个角点。因此,可以消除属于规定组的多个角点中的超过四个的角点。如前面的描述中提及的,可以使用RANSAC算法消除异常。并且,在分组处理中滤除异常的情况中,也可以跳过RANSAC算法。
随后,使用对应于每个组的角点中的剩余的角点的位置,而不是步骤S340中消除的角点的位置,来确定每个组的单应矩阵信息(S350)。可以通过如下方式计算单应矩阵信息,即将角点的位置代入到式8定义的式中。单应矩阵信息对应于两个图片之间的特征的关系。在单应矩阵信息中,第一图片中的单个点对应于第二图片中的单个点。相反地,第二图片中的单个点对应于第一图片中的单个点。随后使用在步骤S350中获得的单应矩阵信息生成变形的参考图片(S360)。图24是解释图18中所示的步骤中的步骤S360(参考图片生成步骤)的示图。参考图24,图24的(b)中示出了将每个组的单应矩阵信息HA、HB、HC、HD、...应用到原始参考图片(a)得到的图像。同时,图24的(c)中示出了单应映射。为了获得单应映射,可以计算具有被应用了单应矩阵信息的随机图像同当前图片之间的差。图24的(b)中所示的图像可以根据图24的(c)中所示的单应映射进行剪切和附接(attach)。单应映射可以像素、块、宏块等为单位来构造。由于单应映射的信息量与准确性成反比,因此如果需要可以适当地选择单应映射的单位。因此,可以使用图24的(c)中所示的单应映射生成图24的(d)中所示的参考图片。可替选地,可以使用图24的(b)中所示的图像中的每一个,而不是根据单应映射剪切和附接图像。
(3)使用变形信息获得参考图片
在前面的描述中,详细解释了变形的概念、变形信息的类型和获得变形信息的过程。在下面的描述中,解释用于决定是否将变形信息应用于获得参考图片的过程。
图25是变形应用决定过程的流程图。在当前图片(或者当前片段)是图片B(或者片段B)或者图片P(或者片段P)的情况中,可以执行图25中的步骤S410至S495。同时,步骤S410至S495可由帧间预测单元370或运动估计单元360执行,但是本发明不限于此。
首先,变形应用变量useWarp、比特数变量tempOrgCost和变形比特数变量tempWarpCost被设定为0(S410)。随后,构建参考图片列表(S420)。如果变形应用变量useWarp是0(步骤S430中的“否”),则对整个图片执行运动估计和补偿(S440)。在已经计算当前图片(或者当前片段)的译码所要求的比特数RD COST之后,计算的比特数被存储在比特数变量tempOrgCost中。变形应用变量useWarp被设定为1。进程然后转向步骤S450。
如果在步骤S430中变形应用变量useWarp是1(步骤S430中的“是”),则原始参考图片被存储在临时存储器中并且使用变形信息对整体参考图片进行变形变换(S460)。在该情况中,如前面描述中提及的,使用六个点生成仿射变换信息并且然后可以使用仿射变换信息对所有参考图片进行仿射变换,但是本发明不限于此。随后,在已经计算当前图片(或者当前片段)的译码所要求的比特数RD COST之后,计算的比特数被存储在变形比特数变量tempWarpCost中(S470)。
如果在步骤S470中存储在变形比特数变量tempWarpCost中的值小于在步骤S450中存储在比特数变量tempOrgCost中的值(步骤S480中的“是”),则变形信息被存储,并且表示是否使用变形变换的变形应用标志信息use_warp_flag被设定为1(S490)。否则(步骤480中的“否”),变形应用标志信息use_warp_flag被设定为0(S495)。随后,参考图片在变形变换之前被重建为原始图片。
(4)使用变形信息的运动矢量预测
能够使用通过上述方法生成的变形信息预测运动矢量。图26是解释运动矢量预测的概念的示图。参考图26的(a),存在与当前块相邻的左侧块A、上方块B和右上块C。并且,能够使用相邻块的运动矢量生成当前块的运动矢量的运动矢量预测符。当前块的运动矢量预测符可以是相邻块的运动矢量的中间值。在该情况中,当前块的运动矢量绝对地依赖于相邻块的运动信息。因此,参考图26的(b),如果当前块的运动矢量几乎与每个相邻块的运动矢量相似,则能够获得与当前块的运动矢量相似的预测符。另一方面,参考图26的(c),如果当前块的运动矢量与每个相邻块的运动矢量完全不相似并且如果其在方向上也不同,则难以从相邻块获得适当的预测符并且需要相当大的比特数用于译码运动矢量差。
同时,能够使用变形信息预测运动矢量。在该情况中,变形信息可以包括在参考图18描述的步骤S350中生成的单应矩阵信息。
图27是解释使用变形信息的运动矢量预测的示图。
参考图27,属于当前图片(b)的所有像素可以通过单应矩阵信息H映射到属于原始参考图片(a)的像素。例如,当前块的左上点、右上点、左下点和右下点分别链接到属于原始参考图片(a)的四个像素。
因此,如式9中所示,当前图片中的点(u,v),即2维平面中的点,能够被变换为原始参考图片中的点(x,y)。这意味着以像素为单位的一对一的映射是可行的。
[式9]
X=HU
在式9中,hij表示单应矩阵系数,U(u,v)表示当前图片中的点,并且X(x,y)表示原始参考图片中的点。
首先,参考图27的(c)和(d),可以观察到,存在当前块(d)的左上点的位置U(u,v)以及映射到位置U(u,v)的参考图片(c)的点X(x,y)。使用这两个点,可以预测当前块的运动矢量。特别地,能够将当前图片的左上点X与映射到对应点的原始参考图片中的像素Y之间的差用作运动矢量预测符(mvp)。这可被定义为下式。
[式10]
mvp=X-U
在式10中,mvp是运动矢量预测符,X表示原始参考图片中的像点,并且U表示当前图片中的像点。
其次,参考图27的(e)和(f),可以观察到,存在当前块(f)的左上点U1、右上点U2、左下点U3和右下点U4以及分别映射到前面的点的参考图片(e)中的点X1、X2、X3和X4。使用这八个点,可以预测当前块的运动矢量。特别地,如下式所示,通过对彼此映射的点之间的差取平均,可以获得运动矢量预测符(mvp)。
[式11]
mvp={(X1-U1)+(X2-U2)+(X3-U3)+(X4-U4)}/4
在式11中,U1、U2、U3和U4表示当前图片中的点并且X1、X2、X3和X4表示原始参考图片中的点。
第三,如下式所示,可以将全部四对中的三对的差值的中间值确定为运动矢量预测符(mvp)。
[式12]
mvp=median{(X1-U1),(X2-U2),(X3-U3)}
or median{(X1-U1),(X2-U2),(X4-U4)}
or median{(X2-U2),(X3-U3),(X4-U4)}
在式12中,U1、U2、U3和U4表示当前图片中的点并且X1、X2、X3和X4表示原始参考图片中的点。
第四,在变形变换的参考图片代替原始参考图片的情况中,单应矩阵分量已反映在参考图片中。因此,当前图片中的点和变形的参考图片中的点之间的差变为0。因此,在变形变换的参考图片的情况中,如下式所示,运动矢量预测符(mvp)变为0。在该情况中,其变为运动矢量差(mvd),即当前块的运动矢量(mv)。
[式13]
mvp=0,mvd=mv
在式13中,mvp表示变形的参考图片的情况中的运动矢量预测符。
在已经通过上述方法获得运动矢量预测符(mvp)之后,运动矢量差(mvd)可被分别定义为下式。
[式14]
mvd=mv-mvp=mv-(X-U) (1)
mvd=mv-{(X1-U1)+(X2-U2)+(X3-U3)+(X4-U4)}/4 (2)
mvd=mv-median{(X1-U1),(X2-U2),(X3-U3)}
或者mv-median{(X1-U1),(X2-U2),(X4-U4)}
或者mv-median{(X2-U2),(X3-U3),(X4-U4)} (3)
mvd=mv(4)(变形的参考图片的情况)
可以存在根据式14使用变形信息计算的运动矢量差和如参考图26描述的使用相邻块的运动矢量计算的运动矢量差。在这两个差相互比较之后,可以确定消耗较少的比特数作为块单位的方案。并且,表示如何进行预测的预测方案标志信息(use_warp_mvp_flag)可以按块单位来设定,如下表所示。
[表3]预测方案标志信息
use_warp_mvp_flag | 含义 |
0 | 使用相邻块的运动矢量预测当前块的运动矢量 |
1 | 使用变形信息预测当前块的运动矢量 |
同时,在使用变形信息的情况中,可以如下表所示详细设定1)是否使用左上点,2)是否使用四个点的平均值,3)是否使用四个点的中间值。
[表4]预测方案标志信息
use_warp_mvp_flag | 含义 |
0 | 使用相邻块的运动矢量预测当前块的运动矢量 |
1 | 使用变形信息(使用左上点)预测当前块的运动矢量 |
2 | 使用变形信息(使用四个点的平均)预测当前块的运动矢量 |
3 | 使用变形信息(使用四个点的中间值)预测当前块的运动矢量 |
如前面描述中提及的,编码器使用当前图片和参考图片获得变形信息,决定是否通过将变形信息应用到参考图片执行变形变换或者是否使用变形信息预测运动矢量等,并且然后可以经由比特流传送对应的信息。
2.2变形信息的传送
(1)变形信息的语法
在下面的描述中,解释经由比特流传送变形信息、变形应用标志信息(use_warp_flag)等的方法。
首先,可以经由序列参数集(seq_parameter_set_rbsp)传送变形序列标志信息(use_warp_seq_flag),其表示当前片段中是否存在其中存在有变形信息的至少一个片段,如下表所示。
[表5]传送变形序列标志信息的方法的示例
seq_parameter_set_rbsp(){ | |
Profile_idc | |
constraint_set0_flag | |
constraint_set1_flag | |
... | |
use_warp_seq_flag | (A) |
... |
变形序列标志信息的含义可以如下表地定义。即,如果变形序列标志信息是0,则不需要提取表示每个片段中是否存在变形信息的变形应用标志信息(use_warp_flag)。
[表6]变形序列标志信息的含义
use_warp_seq_flag | 含义 |
0 | 当前序列中不存在变形信息。 |
1 | 当前序列中存在其中存在有变形信息的至少一个片段(或块)。 |
同时,下表中示出了在片段层中传送变形应用标志信息(use_warp_flag)和变形信息(warpinig_parameter_amn_l0[i])的方法的示例。
[表7]传送变形应用标志信息和变形信息的方法的示例
slice_header(){ | |
first_mb_in_slice | |
slice_type | |
Pic_parameter_set_id | |
frame_num | |
... | |
if(use_warp_seq_flag&&(slice_type==B‖slice_type==P)) | |
use_warp_flag | (B) |
if(use_warp_flag&&(slice_type==B‖slice_type==P)){ | |
for(i=0;i<num_ref_idx_l0_active_minus1+1;i++){ | |
warping_parameter_a11_l0[i] | (C1) |
warping_parameter_a12_l0[i] | |
... | |
warping_parameter_amn_l0[i] | (Ck) |
if(slice_type==B){ | |
for(i=0;i<num_ref_idx_l1_active_minus1+1;i++){ | |
warping_parameters_a11_l1[i] | (D1) |
warping_parameters_a12_l1[i] | |
... | |
warping_parameters_amn_l1[i]} | (Ck) |
}} |
在表7中,查看右侧列中由(B)标出的行,可以观察到,如果变形序列标志信息(use_warp_seq_flag)是1并且如果当前片段是片段B或片段P,则仅包括变形应用标志信息(use_warp_flag)。并且,在下表中示出了变形应用标志信息的含义。
[表8]变形应用标志信息的含义
use_warp_flag | 含义 |
0 | 当前片段(当前块)中不存在变形信息。 |
1 | 当前片段(当前块)中存在变形信息。 |
同时,参考表7的右侧列中由(C1)至(Ck)标出的行,可以观察到,如果变形应用标志信息(use_warp_flag)是1,则仅包括变形信息(warping_Parameter_amn_l0[i])。如果变形信息是仿射变换信息,则变形信息的数目(k)可以对应于6。如果变形信息是单应矩阵信息,则变形信息的数目(k)可以对应于8。而且,本发明可以以各种方式实施。
(2)节约变形信息的比特数的方法
变形信息可以对应于单应矩阵信息。并且,单应矩阵信息的示例被表示为式15。
[式15]
参考式15,可以观察到,第一行中的第三列的分量大于180,而第一行中的第一或第二列的分量小于1。因此,需要相当大的比特数用于传送变形信息的各系数。如果该系数被量化以便于减少比特数,则变形信息的准确性被极大降低。因此,需要通过保持准确性提高译码效率的方法。
首先,可以译码对应的对的位置信息而不译码单应矩阵的系数。图28是解释用于提高变形信息的译码效率的第一方法的示图。参考图28,示出生成单应矩阵信息所要求的对应的对。该对应的对可以具有与参考图21描述的对应的点相同的概念。因此,编码器能够传送对应的对的位置信息而不传送单应矩阵信息。在对应的对中,当前图片中的点的位置具有整数单位并且参考图片中的点的位置具有小数单位。因此,其可能变为比单应矩阵系数小很多的值。因此,在传送对应的对的位置信息的情况中,可以在不降低矩阵准确性的情况下极大地提高译码效率。
其次,在传送对应的对的位置信息时,可以传送差值而不是传送位置信息自身。图29是解释用于提高变形信息的译码效率的第二方法的示图。参考图29,可以观察到,在参考图片(a)中存在A、B、C和D。并且,还观察到,在当前图片(b)中存在A′、B′、C′和D′。在该情况中,A和A′构造对应的对并且B和B′构造另一对应的对。一般来说,由于每个对应的对的位置信息具有相似的值,因此通过译码(A,A-A′)、(A,A′-A)等而不是译码(A,A′),可以提高译码效率。在该情况中,解码器能够通过接收(A,A-A′)获得(A,A′)。
第三,可以传送通过归一化对应的对的位置信息得到的值。图30是解释用于提高变形信息的译码效率的第三方法的示图。参考图30,在当前图片(a)中存在包括A、B、C和D的角点,而在参考图片(b)中存在包括A′、B′、C′和D′的对应的角点。这些角点可以通过运动分割来分组。同时,可以计算属于当前图片(a)中的规定组的角点的中心位置(X,Y)。在该情况中,可以使角点的位置等于平均值。为了考虑中心(X,Y)同每个角点A、B、C和D之间的距离,可以计算比例因子S。以该方式,可以计算参考图片(b)中的中心(X′,Y′)和比例因子S′。
可以将四个点A、B、C和D的位置分别设定为(X-k,Y-k)、(X+k,Y-k)、(X-k,Y+k)和(X+k,Y+k)。在该情况中,k是小的整数。并且,可以使用前面生成的单应矩阵信息(H)计算变形的位置A′、B′、C′和D′。随后,传送比例因子S和S′、中心位置(X,Y)和(X′,Y′)以及四个特征位置A′、B′、C′和D′。同时,为了进一步减少比特数,四个特征位置A′、B′、C′和D′可由A-A′、B-B′、C-C′和D-D′替换。
即使使用比例因子和中心位置执行归一化,对于比特数而言仍可能是低效率的。如果是这样,则通过不应用上文的归一化方法并且不传送比例因子和中心位置可能有利于节约比特数。
(3)使用变形信息的变形跳过模式
如果当前块涉及变形的参考图片并且如果当前块的相邻块涉及未变形的原始参考图片,则从相邻块的运动矢量预测的当前块的运动矢量预测符在相似性方面会降低。
同时,如前面参考式13的描述中提及的,在当前块涉及变形的参考图片的情况中,使用变形信息的运动矢量预测符(mvp)变为0并且与当前块的运动矢量的差值(mvd)几乎变为0。如果是这样,则由于运动矢量差(mvd)可以接近0,因此可以跳过运动矢量差(mvd)的传送。而且,在该情况中,由于当前图片和变形的参考图片之间的相似性可能是非常高的,因此也可以不传送对应于当前图片和变形的参考图片之间的差的残余。因此,在跳过运动矢量差和残余的传送的情况中,表示跳过这一事实的变形跳过模式标志信息(warp_skip_flag)被设定为1。在下表中示出关于变形跳过模式的语法。
[表9]变形跳过模式的语法
macroblock_layer(){ | |
warping_skip_flag | (E) |
if(!warping_skip_flag){ | (F1) |
mb_type | (F2) |
if(mb_type==1_PCM){ | |
while(!byte_aligned()) | |
pcm_alignment_zero_bit | |
for(i=0;i<256;i++) | |
pcm_sample_luma[i] | (G1) |
for(i=0;i<2*MbWidthC*MbHeightC;i++){ | |
pcm_sample_chroma[i] | (G2) |
在表9中,查看右侧列中由(E)标出的行,可以观察到,包括变形跳过模式标志信息(warping_skip_flag)。该标志信息的含义定义如下。
[表10]变形跳过模式标志信息的含义
warping_skip_flag | 含义 |
0 | 传送当前块的运动信息和残余。 |
1 | 跳过当前块的运动信息和残余的传送。 |
在表9中,查看右侧列中由(F1)标出的行,可以观察到,如果变形跳过模式标志信息是0,则仅包括运动信息和残余信息。同时,如果变形跳过模式标志信息是1,则在解码片段P或片段SP时,当前块的宏块类型变为P_Warping_Skip并且宏块类型被整体称为宏块P。在解码片段B的情况中,宏块类型变为B_Warping_Skip并且该宏块类型被整体称为宏块B。
在变形跳过模式的情况中,将在“2.3变形信息的使用”的描述中解释解码时执行的过程。
2.3(在解码器中)变形信息的使用
(1)使用变形信息获得参考图片
解码器能够使用传送的变形信息对参考图片进行变形变换。特别地,在当前片段(或者当前块)中存在变形信息的情况中(例如,在变形应用标志信息(use_warp_flag)是1的情况中),提取当前片段(或者当前块)的变形信息。如果这样,则可以使用提取的变形信息对参考图片进行变形变换。例如,在接收如式8表示的单应矩阵信息(H)的情况中,可以使用接收的单应矩阵信息(H)将参考图片的每个像素(x)变换为变形的参考图片的每个像素(x′)。因此,变形的参考图片变为前面的图24的(d)中所示的图片。并且,变形的参考图片可以被涉及以便于生成当前图片(或者当前块)的预测。
图31是用于当前图片的参考关系的示图。
参考图31,在第一情况(情况1)的情况中,可以观察到,当前帧(或图片)(a)不涉及原始参考图片(a)而是仅涉及变形的参考图片(b)。在该情况中,由于原始参考图片(a)被变形的参考图片(b)替换,因此要存储在解码图片缓冲器中的图片大小没有增加。同时,在第二情况(情况2)的情况中,可以观察到,同时涉及变形的参考图片(b)和原始参考图片(a)。在该情况中,由于变形的参考图片(b)被添加到先前的参考图片列表,因此有利的是,提供了先前的参考图片中未包括的额外信息。
(2)使用变形信息的运动矢量预测
如果使用变形信息预测运动矢量,(例如,如前面参考图27的描述中提及的,如果预测方案标志信息(use_warp_mvp_flag)不是0),则解码器发现当前图片中的特定点(U)对应于参考图片中的规定点(X)。随后,解码器使用两个点X和U获得当前块的运动矢量预测符(mvp)。解码器然后通过将经由比特流接收的运动矢量差(mvd)添加到运动矢量预测符(mvp)来获得当前块的运动矢量(mv)。
(3)使用变形信息的变形跳过模式
如前面描述中提及的,在当前块对应于变形跳过模式时(例如,如果变形跳过模式标志信息(warping_skip_flag)是1),没有传送当前块的运动信息和残余。在该情况中,解码器将变形的参考图片用作参考图片,通过将运动矢量设定为零矢量执行运动补偿,并且将残余设定为0。
3.1/8像点运动补偿
在用于搜索参考图片以寻找与当前图片的当前块最相似的区域的运动估计过程中,能够通过在参考图片的内插样本位置执行运动估计,可以获得更准确的结果。例如,在对1/2采样(半采样)的位置执行内插的情况中,通过搜索内插像素,可以找到与当前块更匹配的区域。而且,在1/4像素(四分之一像素)运动估计的情况中,在第一步骤中,为了找到最匹配的位置,整数采样位置执行运动估计。解码器通过搜索以第一步骤找到的最匹配的位置为中心的1/2采样位置,检查是否获得更好的结果。如果有必要,编码器搜索以最匹配的1/2采样位置为中心的1/4采样位置。编码器从当前块或当前宏块对最终匹配位置(整数、1/2或1/4位置)的值执行减法运算。
在使用1/4采样内插的情况中,误差能量小于使用1/2采样内插的情况的误差能量。更精细的内插通常可以提供更好的运动补偿性能,但是复杂性也增加。并且,性能效益往往与内插步骤成比例地降低。
图32是解释1/8像点的概念的示图。参考图32,可以观察到,像点分别1维布置在位置0至8。分别地,整数像点(圆形)位于位置0和8,1/2像点(菱形)位于位置4,1/4像点(三角形)位于位置2和6,并且1/8像点(十字)位于位置1、3、5和7。图33是解释1/8像点运动补偿方法的内插步骤的示图。参考图33,在第一步骤(步骤1)中,使用整数像点经由8抽头滤波器生成位置4处的1/2像点以及位置2和6处的1/4像点。随后,在第二步骤(步骤2)中,可以观察到,使用在第一步骤中获得的1/2像点和1/4像点经由双线性滤波器生成1/8像点。即,由于在1/8像点运动补偿中通过至少两个步骤生成1/8像点,因此其引起了复杂性极大增加的问题。因此,在1/8像点运动补偿中,需要通过简化降低复杂性。
图34是解释二维中的整数、1/2像点、1/4像点和1/8像点的位置的示图。参考图34,可以观察到,在位置p(00)、p(08)、p(80)和p(88)处存在整数像点。并且,还可以观察到,在p(mn)处存在1/2或1/4像点(其中m和n是偶数)。此外,还能够观察到,1/8像点的位置处于p(mn)处。因此,为了生成1/8像点,可以使用1/2或1/4像点。并且,也可以仅使用整数像点p(00)、p(08)、p(80)和p(88)。仅使用整数像点生成1/8像点的示例被表示为式16。
[式16]
P(11)=(A*p(00)+B*p(08)+C*p(80)+4)>>3 (1)
P(17)=(A*p(08)+B*p(00)+C*p(88)+4)>>3 (2)
P(77)=(A*p(88)+B*p(08)+C*p(80)+4)>>3 (3)
P(71)=(A*p(80)+B*p(00)+C*p(88)+4)>>3 (4)
P(33)=(D*p(00)+E*p(08)+F*p(80)+2)>>2 (5)
P(55)=(D*p(88)+E*p(08)+F*p(80)+2)>>2 (6)
P(35)=(D*p(08)+E*p(00)+F*p(88)+2)>>2 (7)
P(53)=(D*p(80)+E*p(00)+F*p(88)+2)>>2 (8)
P(13)=(G*p(00)+H*p(08)+I*p(80)+4)>>3 (9)
P(15)=(G*p(08)+H*p(00)+I*p(88)+4)>>3 (10)
P(37)=(G*p(08)+H*p(88)+I*p(00)+4)>>3 (11)
P(57)=(G*p(88)+H*p(08)+I*p(80)+4)>>3 (12)
P(75)=(G*p(88)+H*p(80)+I*p(08)+4)>>3 (13)
P(73)=(G*p(80)+H*p(88)+I*p(00)+4)>>3 (14)
P(51)=(G*p(80)+H*p(00)+I*p(88)+4)>>3 (15)
P(31)=(G*p(00)+H*p(80)+I*p(08)+4)>>3 (16)
在式16中,(X+4)>>3是X/8,并且(X+2)>>2是X/4。
假设表达式(1)至(4)属于第一组。假设表达式(5)至(8)属于第二组。假设表达式(9)至(16)属于第三组。如果这样,则用于属于每个组的表达式的系数(例如,A、B、C)是齐次的。
图35是解释根据本发明的实施例的1/8像点运动补偿方法中的对应于第一组的像点的补偿方法的示图,图36是解释根据本发明的实施例的1/8像点运动补偿方法中的对应于第二组的像点的补偿方法的示图,并且图37是解释根据本发明的实施例的1/8像点运动补偿方法中的对应于第三组的像点的补偿方法的示图。参考图35,第一组的像点p(11)、p(17)、(p71)和p(77)分别具有与整数像点p(00)、p(08)、p(80)和p(88)相似的相对位置。如式16的表达式(1)中所示,可以观察到,系数A被应用到最接近像点(11)的像点p(00)。并且,还可以观察到,系数B和系数C分别被应用到相对远的像点p(08)、p(80)。在该情况中,由于像点p(08)和p(80)的相对位置相互相似,因此系数B和系数C可以相等。与像点(11)的情况类似,可以观察到,系数A被应用到最接近像点p(77)的整数像点p(88)。并且,还可以观察到,系数B和C被应用到剩余的整数像点。
参考图36,示出了属于第二组的像点p(33)、p(35)、p(53)和p(55)。查看像点p(33)和p(55)的情况,可以观察到,系数D被应用到最接近像点p(33)的整数像点p(00)。可以观察到,系数D被应用到最接近像点p(55)的整数像点p(88)。并且,还可以观察到,系数F和E分别应用到剩余的整数像点。在该情况中,系数F和E也可以相等。
参考图37,示出了八个像点p(13)、p(15)、p(37)、p(57)、p(75)、p(73)、p(51)和p(31)。查看像点p(13)的情况,可以观察到,系数G被应用到最接近的整数像点p(00)。可以观察到,系数H被应用到第二最接近的整数像点p(08)。并且,还可以观察到,系数I应用到最远的整数像点p(80)。这适用于第三组中的包括p(75)的剩余像点。
将特定值应用到式16的示例被表示为式17。
[式17]
P(11)=(6*p(00)+p(08)+p(80)+4)>>3 (1)
P(17)=(6*p(08)+p(00)+p(88)+4)>>3 (2)
P(77)=(6*p(88)+p(08)+p(80)+4)>>3 (3)
P(71)=(6*p(80)+p(00)+p(88)+4)>>3 (4)
P(33)=(2*p(00)+p(08)+p(80)+2)>>2 (5)
P(55)=(2*p(88)+p(08)+p(80)+2)>>2 (6)
P(35)=(2*p(08)+p(00)+p(88)+2)>>2 (7)
P(53)=(2*p(80)+p(00)+p(88)+2)>>2 (8)
P(13)=(4*p(00)+3*p(08)+p(80)+4)>>3 (9)
P(15)=(4*p(08)+3*p(00)+p(88)+4)>>3 (10)
P(37)=(4*p(08)+3*p(88)+p(00)+4)>>3 (11)
P(57)=(4*p(88)+3*p(08)+p(80)+4)>>3 (12)
P(75)=(4*p(88)+3*p(80)+p(08)+4)>>3 (13)
P(73)=(4*p(80)+3*p(88)+p(00)+4)>>3 (14)
P(51)=(4*p(80)+3*p(00)+p(88)+4)>>3 (15)
P(31)=(4*p(00)+3*p(80)+p(08)+4)>>3 (16)
在式17中,式16中的第一组(表达式(1)至(4))的情况对应于A=6和B=C=1,式16中的第二组(表达式(5)至(8))的情况对应于D=2和E=F=1,并且式16中的第三组(表达式(9)至(16))的情况对应于G=4,H=3和I=1。因此,每个系数可与当前像点同每个整数像点之间的位置距离成比例地确定。特别地,第一组的情况可与离开整数像点的距离成比例地定义,如式18所示。
[式18]
A>B=C
D>E=F
G>H>I
因此,在使用整数像点来代替使用1/2或1/4像点生成1/8像点的情况中,可以在不经历数个步骤的情况下直接生成它们。因此,可以显著地降低复杂性。
而且,本发明的编码/解码方法可以在程序记录介质中被实现为计算机可读代码。计算机可读媒体包括所有类别的记录设备,其中存储可由计算机系统读取的数据。该计算机可读媒体包括例如ROM、RAM、CD-ROM、磁带、软盘、光学数据存储设备等,并且还包括载波类型的实现方案(例如,经由互联网传输)。并且,编码方法产生的比特流存储在计算机可读记录介质中或者可以经由有线/无线通信网络传输。
尽管此处通过参考本发明的优选实施例描述和说明了本发明,但是对于本领域的技术人员显而易见的是,在不偏离本发明的精神和范围的前提下,可以进行多种修改和变化。因此,本发明应涵盖附属权利要求及其等效物的范围内的本发明的修改和变化。
工业适用性
因此,本发明适用于视频信号的编码/解码。
Claims (31)
1.一种处理视频信号的方法,包括:
从视频信号比特流提取重叠窗口系数;
使用所述重叠窗口系数将窗口应用到参考图片中的至少一个参考区域;
通过多重重叠应用了窗口的至少一个参考区域获得参考块;和
使用所述参考块获得当前块的预测符。
2.如权利要求1所述的方法,其中所述重叠窗口系数随序列、帧、片段和块中的每一个而变化。
3.如权利要求1所述的方法,其中所述参考块对应于重叠参考区域中的公共区域。
4.一种处理视频信号的方法,包括:
通过对当前块执行运动估计获得运动矢量;
使用所述运动矢量找到参考区域;
通过将至少一个窗口应用到所述参考区域以与之重叠获得使预测误差最小的重叠窗口系数;和
编码所述重叠窗口系数。
5.如权利要求4所述的方法,其中在编码时,所述重叠窗口系数被包括在序列头、片段头和宏块层中的一个中。
6.一种处理视频信号的方法,包括:
从视频信号比特流提取OBMC(重叠块运动补偿)应用标志信息;
根据所述OBMC应用标志信息获得当前块的参考块;和
使用所述参考块获得所述当前块的预测符。
7.如权利要求6所述的方法,其中使用所述当前块的运动信息执行所述参考块的获得。
8.如权利要求6所述的方法,其中在获得所述参考块时,如果所述OBMC应用标志信息意味着将OBMC方案应用到所述当前块或当前片段,则根据所述OBMC方案获得所述参考块。
9.一种处理视频信号的方法,包括:
通过对当前块执行运动估计获得运动矢量;
使用所述运动矢量计算关于参考区域的根据第一运动补偿的第一比特大小和根据第二运动补偿的第二比特大小;和
基于所述第一比特大小和所述第二比特大小编码表示所述第一运动补偿的信息和表示所述第二运动补偿的信息中的一个。
10.如权利要求9所述的方法,其中所述第一运动补偿对应于基于块的运动补偿并且其中所述第二运动补偿对应于基于重叠块的运动补偿。
11.一种处理视频信号的方法,包括:
从视频信号比特流提取变形信息和运动信息;
使用所述变形信息对参考图片进行变换;和
使用变换的参考图片和所述运动信息获得当前块的预测符。
12.如权利要求11所述的方法,其中所述变形信息包括仿射变换信息和投影矩阵信息中的至少一个。
13.如权利要求12所述的方法,其中所述变形信息包括存在于当前图片和所述参考图片中的对应的对的位置信息。
14.如权利要求13所述的方法,其中所述对应的对的所述位置信息包括第一点的位置信息和所述第一点的位置信息与第二点的位置信息之间的差值。
15.一种处理视频信号的方法,包括:
使用当前图片和参考图片生成变形信息;
使用所述变形信息对所述参考图片进行变换;
使用变换的参考图片获得当前块的运动矢量;和
编码所述变形信息和所述运动矢量。
16.一种处理视频信号的方法,包括:
使用当前图片和参考图片生成变形信息;
使用所述变形信息对所述参考图片进行变换;
使用变换的参考图片计算当前块的编码消耗的第一比特数;
使用所述参考图片计算所述当前块的编码消耗的第二比特数;和
基于所述第一比特数和所述第二比特数编码变形应用标志信息。
17.如权利要求16所述的方法,进一步包括根据所述第一比特数和所述第二比特数决定是否传送所述变形信息。
18.一种处理视频信号的方法,包括:
从视频信号比特流提取变形信息和预测方案标志信息;
根据所述预测方案标志信息使用所述变形信息获得参考图片中的第二点,其中当前图片中的至少一个第一点映射到所述第二点;和
使用对应于所述第二点的运动矢量预测当前块的运动矢量。
19.如权利要求18所述的方法,其中根据所述预测方案标志信息确定所述第一点。
20.如权利要求18所述的方法,其中所述第一点包括左上点、右上点、左下点和右下点中的至少一个。
21.如权利要求18所述的方法,其中如果存在至少两个第一点,则通过计算所述至少两个点的平均值或中间值执行所述当前块的运动矢量的预测。
22.一种处理视频信号的方法,包括:
使用当前图片和参考图片获得变形信息;
使用所述变形信息获得所述参考图片中的第二点,其中所述当前图片中的至少一个第一点映射到所述第二点;和
基于对应于所述第二点的运动矢量和当前块的运动矢量编码预测方案标志信息。
23.一种处理视频信号的方法,包括:
从视频信号比特流提取变形信息和变形跳过模式标志信息;
根据所述变形跳过模式标志信息使用所述变形信息对参考图片进行变形变换;和
使用与变形变换的参考图片中的当前块协同定位的参考块获得当前块。
24.一种处理视频信号的方法,包括:
使用当前图片和参考图片获得变形信息;
使用所述变形信息对所述参考图片进行变形变换;
使用变形变换的参考图片获得当前块的运动矢量;和
基于所述运动矢量编码变形跳过标志信息。
25.一种处理视频信号的方法,包括:
参考整数像点查找当前1/8像点的位置;
使用所述当前1/8像点的位置获得系数;和
使用所述系数和所述整数像点生成所述当前1/8像点。
26.如权利要求25所述的方法,其中所述整数像点包括较接近所述当前1/8像点的三个整数像点并且其中所述系数包括应用到第一整数像点的第一系数、应用到第二整数像点的第二系数和应用到第三整数像点的第三系数。
27.如权利要求26所述的方法,其中分别根据所述第一至第三整数像点之间的相对位置确定所述第一至第三系数之间的相对值。
28.如权利要求26所述的方法,其中根据所述当前1/8像点与所述第一整数像点之间的距离、所述当前1/8像点与所述第二整数像点之间的距离和所述当前1/8像点与所述第三整数像点之间的距离确定所述第一至第三系数之间的相对值。
29.如权利要求25所述的方法,其中经由广播信号接收所述视频信号。
30.如权利要求25所述的方法,其中经由数字介质接收所述视频信号。
31.一种计算机可读记录介质,包括用于执行如权利要求25所述的方法的程序。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US90757307P | 2007-04-09 | 2007-04-09 | |
US60/907,573 | 2007-04-09 | ||
US60/907,810 | 2007-04-18 | ||
US60/924,889 | 2007-06-04 | ||
US60/976,490 | 2007-10-01 | ||
US60/979,074 | 2007-10-11 | ||
US60/984,382 | 2007-11-01 | ||
US60/987,781 | 2007-11-14 | ||
US60/987,780 | 2007-11-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101653008A true CN101653008A (zh) | 2010-02-17 |
Family
ID=41674176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200880011248 Pending CN101653008A (zh) | 2007-04-09 | 2008-04-10 | 用于处理视频信号的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101653008A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013067922A1 (en) * | 2011-11-07 | 2013-05-16 | LI, Yingjin | Apparatus of decoding video data |
CN103229504A (zh) * | 2010-11-29 | 2013-07-31 | 联发科技股份有限公司 | 在Inter/Merge/Skip模式下获取运动矢量/运动矢量预测值候选装置及方法 |
CN103392340B (zh) * | 2011-03-14 | 2017-02-08 | 寰发股份有限公司 | 推导运动向量预测子的方法与装置 |
WO2017128634A1 (zh) * | 2016-01-29 | 2017-08-03 | 华为技术有限公司 | 一种去除块效应的滤波方法及装置 |
CN111355963A (zh) * | 2015-01-26 | 2020-06-30 | 高通股份有限公司 | 用于视频译码的重叠运动补偿 |
-
2008
- 2008-04-10 CN CN 200880011248 patent/CN101653008A/zh active Pending
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103229504B (zh) * | 2010-11-29 | 2016-08-17 | 联发科技股份有限公司 | 获取运动矢量预测值的方法与装置 |
CN103229504A (zh) * | 2010-11-29 | 2013-07-31 | 联发科技股份有限公司 | 在Inter/Merge/Skip模式下获取运动矢量/运动矢量预测值候选装置及方法 |
US9807415B2 (en) | 2011-03-14 | 2017-10-31 | Hfi Innovation Inc. | Method and apparatus for deriving temporal motion vector prediction |
CN103392340B (zh) * | 2011-03-14 | 2017-02-08 | 寰发股份有限公司 | 推导运动向量预测子的方法与装置 |
US9602833B2 (en) | 2011-03-14 | 2017-03-21 | Hfi Innovation Inc. | Method and apparatus for deriving temporal motion vector prediction |
US9609346B2 (en) | 2011-03-14 | 2017-03-28 | Hfi Innovation Inc. | Method and apparatus for deriving temporal motion vector prediction |
CN107105286A (zh) * | 2011-03-14 | 2017-08-29 | 寰发股份有限公司 | 推导运动向量预测子的方法与装置 |
CN107105286B (zh) * | 2011-03-14 | 2020-01-21 | 寰发股份有限公司 | 推导运动向量预测子的方法与装置 |
US10778970B2 (en) | 2011-11-07 | 2020-09-15 | Infobridge Ptd. Ltd. | Method and apparatus of decoding video data |
WO2013067922A1 (en) * | 2011-11-07 | 2013-05-16 | LI, Yingjin | Apparatus of decoding video data |
US9838681B2 (en) | 2011-11-07 | 2017-12-05 | Infobridge Pte. Ltd. | Apparatus of decoding video data |
US10212418B2 (en) | 2011-11-07 | 2019-02-19 | Infobridge Pte. Ltd. | Method of decoding video data |
CN111355963A (zh) * | 2015-01-26 | 2020-06-30 | 高通股份有限公司 | 用于视频译码的重叠运动补偿 |
WO2017128634A1 (zh) * | 2016-01-29 | 2017-08-03 | 华为技术有限公司 | 一种去除块效应的滤波方法及装置 |
US11265572B2 (en) | 2016-01-29 | 2022-03-01 | Huawei Technologies Co., Ltd. | Filtering method for removing blocking artifact and apparatus |
US11889102B2 (en) | 2016-01-29 | 2024-01-30 | Huawei Technologies Co., Ltd. | Filtering method for removing blocking artifact and apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1379000B1 (en) | Signal encoding method and apparatus and decoding method and apparatus | |
KR20100015456A (ko) | 비디오 신호 처리 방법 및 장치 | |
JP5559139B2 (ja) | 映像の符号化、復号化の方法及び装置 | |
WO2013099285A1 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム | |
CN104994383A (zh) | 用于视频解码的设备 | |
WO2013099283A1 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム | |
US20110243227A1 (en) | Moving picture decoding method and device, and moving picture encoding method and device | |
JPS60186179A (ja) | 画像信号の予測符号化方式とその装置 | |
CN101653008A (zh) | 用于处理视频信号的方法和装置 | |
CN114650418A (zh) | 解码方法、编码方法、装置及设备 | |
JP5835522B1 (ja) | 動画像復号装置、動画像復号方法、及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
CN115380532A (zh) | 一种帧间预测方法、编码器、解码器及存储介质 | |
JP5725009B2 (ja) | 動画像復号装置、動画像復号方法、及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
WO2019150411A1 (ja) | 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム | |
CN110636290A (zh) | 视频图像的运动矢量编解码方法以及编/解码器 | |
JP5843041B1 (ja) | 動画像復号装置、動画像復号方法、及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
WO2004010708A1 (en) | Advanced method of coding and decoding motion vector and apparatus therefor | |
WO2000062554A1 (en) | Image processing method and image processing device | |
JPH07298271A (ja) | 動画像符号化における動きベクトル検出方法及び装置 | |
JP2012235278A (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム | |
JP2003299105A (ja) | 動きベクトル検出装置 | |
JP2012235277A (ja) | 動画像復号装置、動画像復号方法及び動画像復号プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20100217 |