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

文档序号:7716904阅读:87来源:国知局
专利名称:视频编码方法和视频编码装置的制作方法
技术领域
本发明涉及一种视频编码方法和视频编码装置,例如涉及一种可有效应用于参照多个画面的视频编码的技术。
背景技术
与视频图像的数字化的广泛发展相关地,对于视频图像信息的传输和累积来说, 减小数据量和提高图像质量的需求都越来越强烈。响应于这种需求,所谓的下一代视频编码技术,例如H. 264/先进视频编码(AVC), 受到了关注。在下一代视频编码中,用于双预测画面(Bi-predictive Picture) (B画面)的每个宏块(MB)的预测方法大体上有五种方法,即,图像内(intra-image)预测、前向预测、后向预测、双向预测、和直接模式。在它们之中,直接模式是一种通过关注视频的连续性,根据时间意义上和空间意义上相邻的宏块的运动矢量来确定当前宏块的运动矢量的方法。直接模式突出运动矢量的时空关系,并且因为不需要发送当前宏块的运动矢量信息,因而有助于改进运动预测,提高信息量压缩率。同时,在传统视频编码(诸如MPEG2)中,双向预测画面(B画面)的编码基本上采用来自前向的一个画面和来自后向的一个画面作为参照画面。相对地,H. ^4/AVC可以使用三个或更多个参照画面,即使仅有两个参照画面,它也可以选择来自前向的两个画面或者来自后向的两个画面。它还使得可以将B画面本身作为参照画面而进行参照,这与传统方法相反,在传统方法中另一个画面不能参照B画面。现在描述作为直接模式的一种的时间方向直接模式。虽然如已描述的,直接模式是不需要发送当前宏块的运动矢量信息的模式,但是时间直接模式的运动矢量此时要选择与刚刚处理过的画面的相同位置处的宏块(下文中“同位置宏块”)的运动矢量,作为基准矢量(下文中“mvCol”),并且按时间距离比,根据所述矢量确定一矢量。即,当将特定地点的B画面视为视频编码的通常序列中的基准时,在前向(即时间过去方向)的参照画面和后向(即时间未来方向)的参照画面之后处理B画面,因此,刚刚处理过的画面成为未来画图8例示了时间直接模式的运动矢量。如图8所示,如果mvCol在两个画面(Pic) 之间为(_5,-10),则画在左侧的B-Pic的直接模式矢量是在前向和后向上都具有mvCol的一半大小的时间直接模式的运动矢量,前向为同一方向上的(_2.5,-5),后向为相反方向上的(2. 5,5)。要注意的是,如果有两个B-Pic或者如果B-Pic具有包括与跳跃扫描(jump scan)相对应的多个场的场结构,则随着时间分配而改变加权。通常将过去方向上的参照画面称为ListO,而将未来方向上的参照画面称为 Listl ο通过根据与Listl的ReferenceJndex = 0的画面(其被称为同位置画面, 简称“Col-Pic”)的同位置宏块的运动矢量(其作为mvCol)的时间距离进行比例划分 (scaling)而产生直接矢量。图9例示了在与顺序扫描相对应的帧结构的情况下的直接矢量;图10例示了在与跳跃扫描相对应的场结构的情况下的直接矢量。在从当前帧的角度看,参照画面ListO和Listl在时间意义上分别在前向和后向的情况下,如果Listl的每个宏块的运动矢量都指向作为参照画面的ListO,则根据与 Listl的同位置宏块的运动矢量(其作为mvCol)的时间距离的比例划分(即,mvCol的内分(internal division))来产生直接模式的运动矢量。然而,在从当前画面的角度看,ListO和Listl都在同一方向上,或者运动矢量指向因场结构编码而在同一帧内的相反奇偶(即不同的场),或者B画面成为参照帧的情况下,mvCol可能成为不跨越(straddle)当前帧的运动矢量。在此情况下,通过mvCol的外分(external division)来计算直接模式的运动矢量。图11例示了通过mvCol的外分来计算直接矢量的情况,作为具体示例。图11所示的示例是场结构的情况,但在诸如B画面成为参照画面的情况下,图11 所示的示例还可应用于帧结构的情况。在此情况下,直接矢量O(LOMV)和直接矢量I(LlMV) 是mvCol的外分,因此它们在矢量精度方面降低了。在图11所示的示例中,与MV相比,LlMV 仅能以粗糙四倍的精度表示。这里,即使mvCol例如为四分之一像素(quarter-pel)(即像素的四分之一)精度的运动矢量,通过外分计算直接模式的运动矢量并且根据情况产生具有大于mvCol的分量的运动矢量的操作对于变为两倍的矢量也仅能产生精度为半像素(half-pel)(即像素的一半)精度的运动矢量,而对于变为四倍的矢量仅能产生整数(即单位像素)精度的运动矢量,因此运动矢量的精度的降低有可能使预测效率降低。同时,在以输入视频图像的场为单位执行编码的场构造的情况下,取两个参照帧 (在前向和后向各取一个)的普通方法使得ref_idx的数量不足,导致不能产生时间直接模式的运动矢量。专利文献1公开了一种技术,包括判断单元,用于在对视频进行编码的时间直接模式的情况下判断是否能够执行用于获得运动矢量的比例划分处理,如果判断出比例划分处理是不可能的,则使用另一编码模式或者不执行比例划分处理,来执行运动补偿。然而,由专利文献1公开的技术在不能执行比例划分处理的情况下放弃了时间直接模式,因而面临这样的风险,即,不能有效地利用通过采用时间直接模式而提高的压缩效率。[专利文献1]日本专利申请公报特开第2004-215229号。

发明内容
本发明的一个目的是在视频编码中通过直接模式来实现压缩效率的提高,而不引起图像质量的降低。本发明的另一个目的是在视频编码中通过采用直接模式来实现预测效率、编码效率和所得压缩效率的提高,而不受视频的扫描系统所影响。本发明的另一个目的是在视频编码中通过增加选择直接模式的频率而采用直接模式的结果,来实现预测效率、编码效率和所得的压缩效率的进一步提高。本发明的第一方面提供了一种视频编码方法,该方法包括作为多种编码模式之一的直接模式,所述直接模式通过根据其他多个第二画面的经编码的宏块的运动信息进行预测,来产生通过分割第一画面而获得的每个宏块的运动信息,所述方法包括以下步骤第一步骤,使用可变的选择标准将直接模式选择为编码模式;和第二步骤,基于选择的编码模式,对宏块进行编码,并且其中在所述直接模式包括时间直接模式和空间直接模式、每个画面都由第一场和第二场构成、并且所述第二步骤将这些场作为一个画面执行编码的情况下,如果第二画面的第二场成为mvCol的起点,则所述第一步骤通过选择空间直接模式来执行对宏块的编码,其中所述时间直接模式通过按照所述第一画面和各个第二画面之间的时间间隔成比例地对起始和终止于与所述宏块相对应的多个所述第二画面中的经编码的两个宏块的mvCol进行划分,而产生从所述宏块出发的两个直接矢量作为所述运动信息, 其中所述空间直接模式根据在与所述宏块相对应的多个所述第二画面中的经编码的两个宏块处出发和终止的mvCol以及第一画面内的经编码的运动矢量,来产生所述宏块的运动 fn息ο本发明的第二方面提供了一种视频编码装置,该视频编码装置包括作为多个编码模式之一的直接模式,所述直接模式通过根据其他多个第二画面的经编码的宏块的运动信息进行预测,来产生通过分割第一画面而获得的每个宏块的运动信息,所述装置包括模式选择单元,其在将直接模式选择为编码模式的情况下具有可变的选择标准;和编码单元,用于基于选择的编码模式,对宏块执行编码,并且其中在所述直接模式包括时间直接模式和空间直接模式、每个画面都由第一场和第二场构成,并且将这些场作为一个画面执行编码的情况下,如果第二画面的第二场成为mvCol的起点,则所述模式选择单元通过选择空间直接模式来执行对宏块的编码,其中所述时间直接模式通过按照所述第一画面和各个第二画面之间的时间间隔成比例地对起始和终止于与所述宏块相对应的多个所述第二画面中的经编码的两个宏块的mvCol进行划分,而产生从所述宏块出发的两个直接矢量作为所述运动信息,其中所述空间直接模式根据在与宏块相对应的多个所述第二画面中的经编码的两个宏块处出发和终止的mvCol以及第一画面内的经编码的运动矢量,来产生所述宏块的运动信息。上述本发明在视频屏幕为直接模式的场结构的情况下,可以避免选择使精度降低的mvCol,并防止无法选择时间直接模式,从而可期望根本地提高预测效率和/或编码效率。S卩,与针对B画面的直接模式的选择相关,设计本发明主要用来通过改变作为参照目标的画面来改变mvCol,使得能够尽可能多地选择时间直接模式并提高预测效率,这是因为无法选择时间直接模式会大大降低编码效率。其次,设计本发明使其包括这样的装置,该装置用于判断从当前画面的角度看 ListO和Listl (即参照画面)是否偏向于前向或后向而存在,并且如果从当前画面的角度看ListO和Listl都存在于一个方向上,则抑制从直接模式中选择时间直接模式。抑制时间直接模式的方法包括完全不选择它的方法;或者仅当mvCol表示分量接近于零矢量的小幅移动时才允许选择直接模式的方法。


图1是例示了实现根据本发明实施例的视频编码方法的视频编码程序的功能结构的_既念图(conceptual diagram);图2例示了包括根据本发明实施例的视频编码装置的视频编码系统的结构的概念图;图3是描述根据本发明实施例的视频编码程序的全部操作示例的流程图;图4是示出了本发明实施例的操作的概念图;图5是示出了本发明实施例的操作的流程图;图6是示出了本发明实施例的操作的变型例的流程图;图7是示出了本发明实施例的操作的变型例的流程图;图8是例示了时间直接模式的运动矢量的产生的概念图;图9是例示了在与顺序扫描相对应的帧结构的情况下直接矢量的产生的概念图;图10是例示了在与跳跃扫描相对应的场结构的情况下直接矢量的产生的概念图;以及图11是示出了在与跳跃扫描相对应的场结构的情况下在产生直接矢量时的技术问题的概念图。
具体实施例方式以下参照附图详细描述本发明的优选实施例。图1是例示了实现根据本发明实施例的视频编码方法的视频编码程序的功能结构的概念图。图2是例示了包括根据本发明实施例的视频编码装置的视频编码系统的结构的概念图。如图2所例示的,根据本实施例的视频编码系统包括视频提供源10、视频编码装置20和视频介质30。视频提供源10例如是用于拍摄视频的摄像机或者用于接收广播的视频数据11的调谐器。视频提供源10将视频数据11输出到视频编码装置20。包括编码逻辑21的视频编码装置20使用编码逻辑21通过稍后描述的视频编码对视频数据11执行编码,并将其输出为经编码的数据12。编码逻辑21可以由专用硬件电路实现或者可以由计算机(在此未示出)实现,编码逻辑21设置在视频编码装置20中,执行稍后描述的视频编码程序100。视频编码装置20从扫描方法指定单元22接收扫描方法通知信号23的输入。扫描方法通知信号23是用于指定以下内容的信号视频数据11是形成由一个场构成的一个画面的顺序扫描的视频,还是形成由两个场构成的一个画面的跳跃扫描的视频。要注意的是,扫描方法通知信号23可以从视频提供源10侧输入。
视频介质30例如由累积介质31或通信介质32构成。累积介质31的情况累积地保持从视频编码装置20接收的经编码的数据12。通信介质32的情况将从视频编码装置 20接收的经编码的数据12传送到另一地点或装置。如图1所示,根据本实施例的视频编码程序100包括差分运算单元101、正交变换 /量化单元102、可变长度编码单元103、逆正交变换/逆量化单元104、加法运算单元105、 运动补偿单元106、帧存储器107和运动矢量检测单元108,作为功能块。它还包括第一直接矢量判断单元109、直接矢量确定单元110和第二直接矢量判断单元111。在根据本实施例的视频编码程序100中,以宏块为单位对从视频提供源10输入的视频数据11进行处理。由于除了宏块内之外执行差分编码,所以差分运算单元101首先根据所确定的运动矢量、被参照画面的宏块像素(即,位于从原始画面宏块位置位移了运动矢量的量的位置处的被参照画面宏块大小的像素)和当前画面宏块像素,来执行每个像素的减法,从而产生以宏块为单元的差分图像。由正交变换/量化单元102如下地对该差分图像进行处理。对差分图像的每8X8个像素或4X4个像素进行正交变换(诸如离散余弦变换 (DCT)变换和Hadamard变换,这取决于编码模式)等,然后还将其变换为频率分量信号。这是因为到频率分量的变换收集低频分量信号,使得由于图像的空间相关性而能够进行信息量压缩。量化单元将正交变换后的值变成采样,从而进一步增加了前述值中其系数为零 (“0”)的分量的数量,导致仅非零的系数在可变长度编码单元103对其进行编码之后作为经编码的数据12输出。可变长度编码单元103基本上将较短的码分配给出现频率高的系数组合,而将较长的码分配给出现频率低的系数组合,并且执行使总码长缩短的熵编码。H. 264能够选择被称为CAVLC和CABAC的系统的可变长度编码。在逆正交变换/逆量化单元104处通过逆量化和逆正交变换将从正交变换/量化单元102输出的量化后系数变换为图像分量,从而将其变成以宏块为单位的差分图像,然后通过加法运算单元105将其与累积在帧存储器107中的被参照图像相加,并产生与在作为经编码的数据12的输出目的地的解码侧(在此未示出)的处理图像等价的处理图像。由逆正交变换/逆量化单元104、运动补偿单元106和加法运算单元105产生并随后由帧存储器107保持的图像被称为本地解码图像,该本地解码图像用于下一画面的差分编码,之后,作为视频数据11出现。运动矢量检测单元108通过在来自帧存储器107的参照图像(作为参照图像)和视频数据11的当前图像之间的块匹配(即,用于获得与两个图像的宏块之间的每个像素相关的差分绝对值的累积值的处理)来执行运动搜索,并根据最小值等来搜索最佳运动矢量。对于运动搜索,除了像素的差分绝对值之和的量之外,通常还添加运动矢量的评估值。因为运动矢量的编码执行的是与周围宏块的运动矢量的差分矢量的编码而不是分量自身的编码,因此该编码获得差分矢量,并且根据分量的大小而输出与运动矢量的码长相当的评估值。
设运动搜索的评估值为cost,差分绝对值为SAD_cost (即,差的绝对值之和(Sum Absolute Difference)),与运动矢量的码量(code volume)相当的评估值为MV_cost (运动矢量),则用表达式cost = SAD_cost+MV_cost来搜索使cost最小的运动矢量位置。根据本实施例的第一直接矢量判断单元109和第二直接矢量判断单元111分别确定以画面为单位的直接模式和以宏块为单位的直接模式。以画面为单位的直接模式包括两种模式,即,时间直接模式和空间直接模式。在运动的相关性在时间方向上高(文字上)的情况下选择时间直接模式,而在运动的相关性在空间(即画面内)方向上高的情况下选择空间直接模式,这样的选择提高了编码效率。第二直接矢量判断单元111以宏块为单位,对使用由各个宏块产生的直接矢量的预测图像是否是帧间差分的适当矢量进行评估。首先,直接矢量确定单元110计算可应用宏块的直接矢量。在时间直接模式的情况下,这是根据与Col-Pic的同位置宏块的运动矢量(其作为mvCol)的时间意义上的距离进行比例划分(即,成比例地划分)而产生的。在空间直接模式的情况下,直接矢量是由在同一画面内已处理的周围宏块的运动矢量的中间值产生的。第二直接矢量判断单元111通过已确定的直接矢量获得运动搜索的评估值 (cost),确定选择还是不选择稍后描述的根据本实施例的直接模式,并执行加权处理,从而控制为每个宏块选择直接模式的难度(即选择的可能性)。现在参照图3所示的流程图描述根据本实施例的视频编码程序100的全部操作。首先,程序通过扫描方法通知信号23来分辨单个画面是否具有由多个帧构成的帧结构(即它是否是跳跃扫描图像)(步骤201),然后从视频数据11中读取一个屏幕图像 (即一个画面)(步骤202)。然后,第一直接矢量判断单元109选择画面级的编码模式(步骤203)。然后,第二直接矢量判断单元111确定对于宏块级是否执行在画面级选择的编码模式,然后使用最终选择的编码模式对宏块执行编码(步骤204)。程序对当前画面内的所有宏块重复步骤204和205的处理(步骤20 ,并且还对视频数据11的所有画面重复步骤202至205 (步骤206)。[编码控制示例1]接下来详细描述在上述步骤203中第一直接矢量判断单元109的示例操作。在场结构(即跳跃扫描图像)的情况下,第一直接矢量判断单元109如稍后所述以画面为单位改变直接模式的运动矢量的mvCol,以提高预测效率,从而避免诸如精度下降和不能选择时间直接模式等的问题。在场结构的情况下,仅仅I画面和P画面的底部场需要下面的操作。图11示出了如果视频数据11的每个画面Ila都具有由顶部场llb(即,包括奇数扫描行的场)和底部场Ilc (即,包括偶数扫描行的场)构成的场结构则应用时间直接模式的情况。在图11的上部绘制了每个场的编码顺序、画面类型(PType :1(内画面)、P(预测画面)、B(双预测画面))以及ListO和Listl的参照号(Refjdx),在该图的下部用垂直线按显示(即拍摄的)时间顺序从左到右地示出了对应的单个画面。当按时间直接模式对编码目标底部场Ilc(即当前场)执行编码时,将mvCol设置在基准点(datum)和作为参照目标的顶部场lib (其编码顺序=2)之间,所述基准点建立在底部场Ilc (即,Col-Pic ;其编码顺序=3)处,该底部场Ilc在之前已编码并且其显示顺序是即将到来(immediate future)。然后,以底部场Ilc (即当前场)为起始点,为底部场Ilc和顶部场lib设置直接矢量1和直接矢量2作为运动信息。S卩,因为从作为图11的示例中的编码目标的底部场Ilc (即当前场)的角度看,作为时间直接模式下的参照目标的底部场Ilc和顶部场lib偏向未来方向而存在,因而mvCol
远比直接矢量0和直接矢量1小。这样,如果同位置宏块的直接矢量0和1 (即运动矢量)指在场结构中同一帧(即画面Ila)内相反的奇偶(即顶部场lib和底部场11c),则直接矢量1变成mvCol的三倍, 直接矢量变成mvCol的四倍,从而运动矢量的产生精度也变得粗糙了那么多。在如图11这样的情况下,第一直接矢量判断单元109转换ListO的Ref_idx的分配(参照图4)从而改变(操作)用来选择时间直接模式的mvCol,以使得能够通过mvCol 的内分来产生直接矢量0和1。这样做,如图4所示,转换后的顶部场lib (即Col-Pic,其编码顺序=2)的参照目标变成底部场Ilc (其编码顺序=1),因此在前述两个场起始和终止的mvCol变成跨越当前画面的矢量,从而避免了直接矢量0和1的精度降低的不利影响。图5示出了在第一直接矢量判断单元109中的上述转换处理的流程图。图5所示的流程图例示了与图3相关的如上所述的步骤203中由第一直接矢量判断单元109执行的详细处理。S卩,首先,第一直接矢量判断单元109基于扫描方法通知信号23的信息等,分辨当前画面是否具有场结构(步骤211)。在场结构的情况下,第一直接矢量判断单元109分辨建立了 mvCol的起始点的 Col_Pic是否是底部场11c,如果其是底部场11c,则第一直接矢量判断单元109转换Listl 的1^€_1(11(步骤213)。在上述步骤211中不是场结构的情况下以及在上述步骤212中参照画面不是底部场Ilc的情况下,因为诸如上述图11的问题没有发生,所以不转换作为参照目标的画面。如上所述,在编码控制示例1的情况下,如果与mvCol相比,直接矢量0和1相对较大,并且因而存在对运动矢量的精度会降低的顾虑(精度降低是因为直接模式的参照画面相对于作为编码目标的当前画面偏向于过去或未来方向而存在),则第一直接矢量判断单元109转换作为参照目标的画面(S卩,场)Listl的Ref_idx,从而避免降低从直接矢量0 和直接矢量1获得的运动矢量的精度。S卩,可以通过采用直接模式来实现高压缩率,而不引起图像质量下降。通过转换作为参照目标的画面Listl的Ref_idx,还可以解决由于作为编码目标的当前画面和作为参照目标的画面(即,场)之间的位置关系,而不能实现直接模式的问题。[编码控制示例2]
在编码控制示例2中,描述针对不发生直接模式的对策。编码控制示例2的情况也是如图11所示通过mvCol的外分来产生直接矢量0和1的情况下的对策。在图11中,Col-Pic的同位置宏块的mvCol指向同一帧内相反的奇偶(即,顶部场lib),然而,该宏块实际上也能够通过参照ListO的Refjdx的场(其编码顺序=1)的同位置宏块来产生运动矢量。在这种情况下,通过mvCol的内分来产生计算的直接矢量0 和1本身,因此就矢量精度而言不产生问题。因此,所采用的对策为只要是在以下情况就使直接模式不发生如图11所示,以当前画面为基准,mvCol偏向于过去或未来时间方向而存在。S卩,它变为以宏块为单位的转换处理,因此图1示出的第二直接矢量判断单元111 进行判断。图6示出了此操作的流程图。图6例示了上述图3中的步骤204的进一步的细节。S卩,在当前宏块所属的当前画面具有场结构(步骤221)并且此外作为参照目标的 Listl的Ref_idx = 0的画面为底部场Ilc (步骤222)的情况下,第二直接矢量判断单元 111分辨直接模式的mvCol在时间轴方向上是否跨越了当前画面(步骤223)。然后,如果判断出mvCol在时间轴方向上不跨越当前画面(即图11的状态),则不为当前宏块选择直接模式(步骤224),而选择另一编码模式(步骤22 ,并且对当前宏块执行编码(步骤226)。在编码控制示例2的情况下,如果预测到了图像质量会由于基于直接矢量0和 1(它们根据mvCol产生)的运动矢量的精度降低而降低,则通过避免采用直接模式,可以确定地防止预测图像的图像质量降低。[编码控制示例3]编码控制示例3被配置为如果如图11的情况一样预测到精度降低,则使得在判断选择哪种预测编码模式(即直接模式或其他预测编码模式)时难以选择直接模式。S卩,上述编码控制示例2被配置为进行控制,从而在应用于如图11所示的存在精度降低的风险的状态的情况下根本不选择直接模式。相对地,当前的编码控制示例3被配置为更具体地对条件进行量化分析,并对选择直接模式的标准进行加权以使得在应用于如图11所示的存在精度降低的风险的状态的情况下难以选择直接模式。宏块的实际预测模式包括进行宏块级预测的各种方法,诸如内预测、前向预测、后向预测、双向预测和直接模式(其包括如上所述的时间直接模式和空间直接模式),因此该配置用于比较这些预测方法中每一个的预测评估值(即,预测误差的大小),并且当选择哪种模式最佳时使其难以选择直接模式。以下表达式例示了预测评估值的计算方法。[表达式1]cost_direct = SAD(*org, *ref)[表达式2]cost_forward = SAD (*org, ref) +MV_C0ST (*mv, *prevmv)[表达式3]cost—backward = SAD (氺org, ref) +MV_C0ST (氺mv,*prevmv)
[表达式4]cost_bidirection = SAD (*org, ref)+MV_C0ST (*mv, *prevmv)[表达式5]cost_intra = ACT(*org)通过表达式1获得直接模式的代价(C0St_direCt)。通过表达式2获得前向预测模式的代价(costforward)。通过表达式3获得后向预测模式的代价(costjDackward)。通过表达式4获得双向预测模式的代价(costjiidirection)。通过表达式5获得内预测模式的代价(costjntra)。在表达式1至5中,*org是原始画面宏块的信息,*ref是参照画面宏块的信息。 *mv和*preVmV分别表示各个原始画面宏块和参照画面宏块的运动矢量。表达式4中的函数SADO用于算出宏块内的像素差分绝对值之和,其是用于获得此情况下的原始画面宏块和参照画面宏块的16X16像素的差分绝对值之和的函数。表达式6是一示例[表达式6]SAD () =Σ |*org_*ref实际上,可以将宏块分为一个宏块内的多个宏块,因此,如果将一个宏块分为四个 8X8的子块,则8X8 = 64个像素的差分绝对值的四个和的集合构成了 SAD评估值。此外,除了 16X16和8X8之外,存在各种大小的子块,诸如8X16、16X8、4X8、 8X4 禾Π 4X4。内预测的情况不是对差分图像而是对原始图像本身执行编码,并因此使用称为活动性(即,表达式5中的ACTO)的另一评估值。内预测的情况对原始画面宏块本身进行正交变换,并因此如表达式7所示通过宏块的每个像素相对于宏块平均值(=AveMB)的偏移来计算函数ACTO。[表达式7]ACT () =Σ ^org-AveMB如表达式8所示,表达式2至4的函数MV COST输出与运动矢量的代码量成正比的评估值。具体地,对于运动矢量,对相对外围宏块的差分矢量进行编码,而不是对分量自身编码,因而根据绝对值的大小来确定评估值。此外,通常使用这样的方法,即,使用加权常数λ来改变对MV COSTO的整体代价评估值的影响程度。[表达式8]MV_C0ST = λ * (Tab 1 e [*mv_*premv])在表达式8中,Table[]是用于将矢量差的大小转换为相当的代码量的转换表。这里,存在用于实际上或有意地设置加权的多种想得到的方法。例如,一种想得到的方法是将诸如加权常数W的固定值与如上所述获得的cost_ direct 相力口。或者,另一种可能的方法是将C0St_direCt乘以常数,S卩,预定义的加权系数α。使用如此获得的各预测模式的代价的实际预测模式判断通过使用诸如表达式9 的最小值判断函数minO将最小评估代价计算为min_C0St,并将适用于该min_C0St的预测模式确定为要用于对宏块进行编码的宏块类型(即MB_Type)。[表达式9]min_cost = min (cost_direct, cost_forward, cost_backward, cost_ bidirection, cost_intra)图7示出了上述加权评估的流程图。图7更详细地例示了上述图3所示的步骤204。S卩,在当前宏块所属的当前画面具有场结构(步骤231)并且此外作为参照目标的 Listl &Ref_idX = 0的画面为底部场Ilc (步骤232)的情况下,对mvCol在时间轴方向上是否跨越了当前画面进行判断(步骤233)。如果判断出mvCol在时间轴方向上不跨越当前画面,S卩,如果在图11的情况下通过mvCol的外分来产生直接矢量,则对与当前宏块相关的直接模式下的代价(即cost_ direct)进行加权(步骤234)。然后,选择其适用于min_C0St的代价为最小的编码模式(步骤235),并且执行对当前宏块的编码(步骤236)。要注意的是,可以这样进行配置,在步骤235中选择空间直接模式代替时间直接模式,空间直接模式具有比直接模式之外的其他编码模式更高的优先级。将编码控制示例3配置为进行控制,以在由于在直接模式下预测的运动矢量的预测精度降低而引起图像质量降低的情况下降低在比较直接模式与其他编码模式时选择直接模式的比率,从而使得能够考虑通过采用直接模式而使压缩率提高与图像质量降低之间的平衡而完成各种编码。要注意的是,本发明可以在其范围内以各种可能的方式被显而易见地改变,而不受在上述实施例中例示的配置的限制。本发明被设计为使得能够在视频编码中依靠直接模式来实现压缩效率的提高,而不使图像质量降低。作为在视频编码中采用了不受视频的扫描系统所影响的直接模式的结果,本发明还实现了预测效率、编码效率和得到的压缩效率的提高。通过在视频编码中增加选择直接模式的频率,作为采用直接模式的结果,本发明还实现了预测效率、编码效率和所得的压缩效率的提高。
权利要求
1.一种视频编码方法,该方法包括作为多种编码模式之一的直接模式,所述直接模式通过根据其他多个第二画面的经编码的宏块的运动信息进行预测,来产生通过分割第一画面而获得的每个宏块的运动信息,所述方法包括以下步骤第一步骤,使用可变的选择标准将直接模式选择为编码模式;和第二步骤,基于选择的编码模式,对宏块进行编码,并且其中在所述直接模式包括时间直接模式和空间直接模式、每个画面都由第一场和第二场构成、并且所述第二步骤将这些场作为一个画面执行编码的情况下,如果第二画面的第二场成为mvCol的起点,则所述第一步骤通过选择空间直接模式来执行对宏块的编码,其中所述时间直接模式通过按照所述第一画面和各个第二画面之间的时间间隔成比例地对起始和终止于与所述宏块相对应的多个所述第二画面中的经编码的两个宏块的 mvCol进行划分,而产生从所述宏块出发的两个直接矢量作为所述运动信息,其中所述空间直接模式根据在与所述宏块相对应的多个所述第二画面中的经编码的两个宏块处出发和终止的mvCol以及第一画面内的经编码的运动矢量,来产生所述宏块的运动信息。
2.一种视频编码装置,该视频编码装置包括作为多个编码模式之一的直接模式,所述直接模式通过根据其他多个第二画面的经编码的宏块的运动信息进行预测,来产生通过分割第一画面而获得的每个宏块的运动信息,所述装置包括模式选择单元,其在将直接模式选择为编码模式的情况下具有可变的选择标准;和编码单元,用于基于选择的编码模式,对宏块执行编码,并且其中在所述直接模式包括时间直接模式和空间直接模式、每个画面都由第一场和第二场构成,并且将这些场作为一个画面执行编码的情况下,如果第二画面的第二场成为mvCol的起点,则所述模式选择单元通过选择空间直接模式来执行对宏块的编码,其中所述时间直接模式通过按照所述第一画面和各个第二画面之间的时间间隔成比例地对起始和终止于与所述宏块相对应的多个所述第二画面中的经编码的两个宏块的 mvCol进行划分,而产生从所述宏块出发的两个直接矢量作为所述运动信息,其中所述空间直接模式根据在与宏块相对应的多个所述第二画面中的经编码的两个宏块处出发和终止的mvCol以及第一画面内的经编码的运动矢量,来产生所述宏块的运动 信息。
全文摘要
本发明公开了视频编码方法和视频编码装置。一种视频编码方法,该方法包括作为多种编码模式之一的直接模式,该直接模式通过根据其他多个第二画面的经编码的宏块的运动信息进行预测,来产生通过分割第一画面而获得的每个宏块的运动信息,该方法包括第一步骤,使用可变的选择标准将直接模式选择为编码模式;和第二步骤,基于选择的编码模式,对宏块进行编码,其中在该直接模式包括时间直接模式和空间直接模式、每个画面都由第一场和第二场构成、并且第二步骤将这些场作为一个画面执行编码的情况下,如果第二画面的第二场成为mvCol的起点,则第一步骤通过选择空间直接模式来执行对宏块的编码。
文档编号H04N7/26GK102202221SQ20111018720
公开日2011年9月28日 申请日期2006年8月21日 优先权日2006年3月15日
发明者中川章, 屋森章弘, 酒井洁 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1