专利名称:生成非逐行扫描伪双向预测图像的方法和系统的利记博彩app
技术领域:
本发明的方案一般来讲涉及视频系统,更具体来讲涉及记录或者播放数 字编码视频序列的视频系统。
背景技术:
在今天的家电市场中,数字电视(DTV)和高清晰度电视(HDTV)正渐渐受 欢迎起来。为了观看先前记录的节目或者记录他们中意的节目,这种电视的 许多购买者还购买了数字录像机或者播放器,例如数字影碟(DVD)录像机或 者播放器。特别是,DTV (或者HDTV)和数字视频数字录像机或者播放器的 组合可能是家庭影院娱乐系统的不可分割的部分。数字录像机或者播放器通常包含运动图像专家组(MPEG)解码器,用来 对在录像机或者播放器所播放的盘上存储的数字编码多媒体数据进行解码。 如果数字录像机或者播放器与传统的(非DTV或者非HDTV)电视连接,则在 被显示在传统电视上之前,由数字录像机或者播放器的MPEG解码器对数字编 码信号进行解码。然而,相当多的DTV包含它们自己的MPEG解码器。照此, 如果数字视频记录器或者播放器与DTV相连,那么将从所述盘读取的视频信 号通过DTV的译码器来远程地译码。可以将此结构称为远程译码器结构。然而,利用远程DTV译码器来译码数字编码信号存在重大的缺陷。也就 是说,按照此类结构很难执行特技模式(trick modes )。所述特技模式可以 是没有以正常速度或者按向前的方向进行重放的任何一种视频重放操作。通 常,特技模式涉及在视频信号中重复多个图像,诸如在慢运动或者冻结特技 模式期间。由于数字视频记录器或者播放器与DTV之间的带宽是受限的,因 此在被送到DTV的信号中重复图像、可以引起所述信号超过传输通道的最大比特率限制。如果所述图像是帧内(I)图像或者预测(P)图像,那么所述问题 将更加尖锐,这是由于这些图像利用了相对大量的比特来进行编码。此外,诸如在快速移动特技模式期间的跳过图像的处理,能够引起视频 信号的平均比特率超过正常比特率。具体来讲,在快速移动特技模式中待跳过的图像组(G0P)中的第一图像通常是双向预测(B)图像。当跳过B图像时, 在G0P中,剩余图像的编码数据的平均数、或者每一图像的比特平均数将会 增加。如果超过传输通道的比特率限制,就会造成緩沖器溢出,并且会导致 在显示特技模式视频信号期间丢失图像。除比特率问题外,远程译码视频信号还存在其它缺点如果重复的图像 包含运动对象,那么以这种结构重复显示的非逐行扫描图像、可以引起在显 示处理中出现振动效应。为解释此缺点,有理由对隔行扫描作一简短说明。许多电视机使用隔行扫描技术。在此格式之下,通常将视频信号分为预 定数量的水平行。在每个场周期期间,只扫描这些行的二分之一;通常,在 第一场周期期间扫描奇数行,而在下一场周期期间扫描偶数行。每一扫描称 为一场,并且当合并时,两个场形成一个完整的图像或者帧。对于NTSC制来 说,每秒显示60场,因而产生每秒30帧的速率。当运动对象在隔行扫描电视中移动穿过屏幕时,每个场往往只显示该运 动对象的一部分。所述局部显示是因为一个场只是每隔全部图像的水平行的 一行来进行显示。例如,对于特定的场n来说,只扫描奇数水平行,并且待 于场n中显示的运动对象的部分、是在对场n扫描奇数水平行期间扫描的部 分。在l/60秒以后,创建下一场、即场n+l,并且将显示该图像的偶数水平 行。由此,在场n+l中显示的运动对象部分、是在对场n+l扫描偶数水平行 期间扫描的部分。虽然每个场暂时不同,但是由于场的显示速度,因而人眼 感觉场的连续显示像是平滑运动。如果观看者激活特技模式,那么特技模式视频信号可以包含重复的图像, 所述图像是根据隔行扫描格式记录的。例如,如果观看者对特定的图像启动 冻结特技模式,那么可以将该图像重复地发送到包含远程译码器的DTV,并 且在所述DTV上被译码并且显示。然而,重复图像的显示是与非逐行扫描图 像的正常显示一致的,即,交替地显示组成非逐行扫描图像的场。如先前所述,如果运动对象出现在根据隔行扫描格式记录的图像中,那 么每个场将在一个特殊位置中显示运动对象。由此,由于在冻结特技模式期间交替地显示这些场,所以显示器中的运动对象快速地从显示器中的 一个位置移动到另一个位置;实际上,所述运动对象看起来像是振动的。产生此振 动的原因是因为隔行扫描场是暂时不同的,并且运动对象出现在每个场的不 同位置中。此问题也存在于包括去隔行(deinterlacer )的DTV中。如现有技术中 所公知的那样,去隔行可以根据隔行扫描场来构造完整的帧。由此,去隔行 可以从包括重复的非逐行扫描帧的场中构造完整的帧。不过,这些根据隔行 扫描场构造的完整的帧也将以交替的方式进行显示,由此产生了振动假象的 可能性。此外,此振动效应不仅出现在冻结特技模式中,而且还存在于其中 重复非逐行扫描图像的任何其它特技模式中。由此,人们需要在没有提高系 统开销或增加系统复杂性的情况下,消除比特率问题和振动假象。发明内容本发明涉及一种用于生成伪双向(B)预测图像的方法,所述伪双向预测图 像在显示期间能够基本上不振动地进行重复,其中所述伪双向预测图像包含 至少两个场。所述方法包括以下步骤设置伪双向预测图像的参数,以指出 不进行剩余信号的编码,并且使用基于场的预测来预测伪双向预测图像的至 少两个场。在一种结构中,所述设置步骤还可以包括设置伪双向预测图像 的参数,以指出不进行剩余信号的离散余弦变换编码。在另一个结构中,所述伪双向预测图像可以包括多个宏块,并且每个宏 块可以包含至少两个场的至少一部分,并且所述参数可以是宏块参数。每个 宏块可以包含至少两个具有水平和垂直运动分量的运动矢量,并且所述方法 还可以包括以下步骤设置每个宏块的至少两个运动矢量,以指出所述水平 和垂直运动分量将为0。在本发明的一个方面中,所述伪双向预测图像可以是单向(one -directional )预测图像。此外,使用基于场的预测步骤可以包括以下步骤 根据与独立的数字编码非逐行扫描图像相关的单个场来预测伪双向预测图像 的至少两个场。此外,所述伪双向预测图像可以是正向预测或者反向预测图 像。所述独立的数字编码非逐行扫描图像可以是帧内图像或者预测图像。在 另一个方面中,所述伪双向预测图像可以是这样一种双向预测图像,其中所 述伪双向预测图像的第一场可以根据第一参考图像来预测,而伪双向预测图像的第二场可以根据第二参考图像来预测。另外,所述伪双向预测图像的第 一场可以根据与第一参考图像相关的单个场来预测,而所述伪双向预测图像 的第二场可以根据与第二参考图像相关的单个场来预测。所述伪双向预测图 像可以根据非逐行扫描图像、逐行扫描图像或者场图像来预测。本发明还涉及一种用于根据非逐行扫描图像来生成伪双向预测图像的系 统,其中所述伪双向预测图像包含至少两个场。所述系统包括用于从存储媒 体读数据的控制器,并且还包括处理器,其中所述处理器被编程以用来设置 伪双向预测图像的参数,使其指出不进行剩余信号的编码,并且使用基于场 的预测来预测伪双向预测图像的至少两个场。所述系统还包括适当的软件和 电路,以实现如上所述的方法。
图1是用于依照此处的本发明结构来根据非逐行扫描图像生成伪双向预 测图像的系统框图。图2是用于举例说明依照本发明结构、根据非逐行扫描图像生成伪双向预测图像的操作的流程图。图3是具有代表性的MPEG语法的确定部分的插图。
具体实施方式
在图1中以框图的形成示出了依照本发明结构的用于实现不同改进的操 作特征的系统IOO。然而,本发明不局限于图1中举例说明的特定系统,而 是可以将本发明以任何其它系统来实践,其中所述其它任何系统能够接收数 字编码信号并且向显示装置传输该信号。此外,系统100不局限于从特定类 型的存储媒体中读数据,或者向其中写数据,凡是能够存储数字编码数据的 任何存储4某体都可以用于系统10 0 。系统IOO可以包括控制器110,用于从/向存储媒体112读/写数据。所 述系统IOO还可以具有预处理引擎114、微处理器116、存储器118、传输緩 冲存储器120和显示装置122。所述预处理引擎114可以包含适当的软件和 电路,以便为生成伪B图像而在数字编码视频信号中定位、设置或者调节一 个或多个特定标记或者参数。还可以提供一个控制和数据接口,以便允许微 处理器116控制控制器IIO和预处理引擎114的操作。可以在存储器中提供使微处理器116执行传统操作所使用的适当软件或者固件。此外,依照本发明的结构,可以为微处理器116提供例行程序。应该理解的是,在本发明的意图内,预处理引擎114和微处理器116的 全部或者部分可以是处理器。此外,在本发明的意图内,控制器110、预处 理引擎114、微处理器116和传输緩冲存储器120的全部或者部分可以是位 流源126。在一种结构中,显示装置122可以包含其自身的译码器(未示出),用于 译码从存储媒体112读取的全部或者部分视频信号,并且由位流源126处理。 在此特定的结构中,位流源126中的译码器(未示出)通常不对从存储媒体112 中读取的视频信号进行译码。可以将此特定的实施例称为远程译码器结构。 然而,应当指出,本发明不局限于此结构,本发明能够在其它适当的系统中 实现。在操作中,控制器110可以从存储媒体112中读取包含多个图像的视频 信号。这些图像可以是非逐行扫描图像、逐行扫描图像或者场图像。在一种 结构中,如果微处理器116接收特技模式命令,那么微处理器116可以通知 预处理引擎114以生成伪B图像,所述伪B图像是根据以数字视频信号编码 的图像通过对例如这些图像的MPEG语法的多个预定标记和参数定位、设置或 调剂进行预测的。然后,将所述伪B图像传送到传输緩沖存储器120并且传 送到显示装置122上。所述伪B图像可以在显示装置122处被译码并且被显 示。上述内容是一旦微处理器116接收到特技模式命令如何生成伪B图像的 例子。将这种处理称为"即时地"生成伪B图像。然而,作为选择,预处理 引擎114和微处理器116可以在启动特技模式命令之前生成伪B图像。作为 一个例子,伪B图像可以被生成,并且微处理器116可以命令预处理引擎114 向存储器118传送一个或多个伪B图像。在存储器118处,可以存储伪B图 像,直到接收到特技模式命令为止,此时,微处理器116可以将伪B图像插 入到视频信号中。下面将更加详细地来论述本发明的整体操作。图2举例说明了用于演示生成伪B图像的一种方式的方法200。所述伪B 图像可以是具有至少两个场的非逐行扫描图像。在一个实施例中,本发明可 以按照远程译码器结构来实现。对本发明来说,远程译码器结构可以是任何 系统,其中,视频信号中的至少一部分图像可以由译码器译码,且其中,所述译码器在位流源的外部并不受该位流源的控制,所述位流源用于向译码器 提供图像。作为一个例子,所述位流源可以是光存储媒体播放器或者记录器, 用于从光存储媒体中读取多媒体数据,并且经由传输通道将这些数据传送到 数字电视,所述数字电视包含其自身的译码器。然而应该理解的是,本发明 不局限于此例子乃至远程译码器结构,本发明可以按照任何其它适当的系统 或者结构来实现。参见图3,示出了数字编码图像的具有代表性的MPEG语法300的一部分。 此语法300可以指出依照本发明结构的伪B图像的语法。为了描述如何根据 非逐行扫描图像来生成伪B图像,图3将结合图2进行论述。应该注意的是, 下面只讨论那些与根据非逐行扫描帧来生成伪B图像有关的部分语法300, 尤其是可以减少振动图像假象的伪B图像。本领域的普通技术人员将理解的 是,通过使用传统的B图像,在此未讨论的语法300的部分是公知的。返回参见图2,在步骤210,开始根据非逐行扫描图像生成伪B图像的处 理。在步骤212,可以设置语法300的图像标题310中包含的 picture-coding-type参数,以指出所述伪B图像是B图像。最好是,所述 picture-coding — type参数是三比特参数,并且可以将其值设置为"011"。 在步骤214,可以设置f-code参数。在图3中,所述f—code参数312位于 称为图像编码扩展314的首部中,并且其通常包括四比特参数f-code[O]
、 f一code[O] [1] 、 f —code[l]
和f — code [1] [1]。在一种结构中,所述伪B图像可以是单向预测图像。单向预测图像仅仅 根据一个图像进行预测,而B图像通常根据两个独立的图像进行预测。通常, 单向伪B图像可以是正向预测伪B图像或者是反向预测伪B图像。如果所述 伪B图像是正向预测伪B图像,那么伪B图像可以根据伪B图像之前(按照显 示顺序)的参考图像来预测。与此相反,如果伪B图像是反向预测伪B图像, 那么所述伪B图像可以根据伪B图像之后的(按照显示顺序)参考图像来预测。 因为它们仅仅根据一个图像来预测,所以单向预测伪B图像可以适用于重复 或者复制的图像。如果伪B图像是反向预测图像,那么f一code[O] [O]和f-code[O] [l]可以 设置为值"1111",以指出不进行正向预测。此外,可以设置f-code[l]
和f_code[l] [l]来反映反向预测的运动矢量范围值。与此相反,如果伪B图 像是正向预测图像,那么可以将f-code[l] [O]和f —code[l] [l]设置为值"1111",以指出不进行反向预测,而可以将f_code
[O]和f_code
[1] 设置为反映正向预测的运动矢量范围值。返回参见所述方法200,可以将frame—pred-frame—dct标记(图3中的 f rame_pred_f rame—dct才示i己316)和progressive—f rame才示"i己'(图3中的 progressive — frame标记318)设置为值"0",如步骤216所示。将 progressive — frame标记318设置为值"0",可以引起伪B图像被视为非逐 行扫描图像。此外,将frame —pred-frame-dct标记316设置为值"0",可以 引起译码器译码伪B图像,以便当构造伪B图像时使用基于场的预测。在方法200的步骤218处,可以将以下标记设置为值"0": Q一scale-type(图3中的Q-Scale一type标记320) 、 Intra_vlc_format (图3 中的lntra_vlc-format标记322)和Alternate — scan (图3中的 Alternate-scan标记324)。因为不进行预测误差或者剩余信号的编码,所以 可以将这些标记设置为值"0"。此外,因为不对剩余信号进行编码,所以可 以将Quant iser_scale_code参数(图3中的Quant iser —scale—code参数326) 设置为值"00101"。返回参见图3,由于伪B图像可以包括多个宏块,所以语法300可以包 括称为宏块328的首部。macroblock_type参数330可以位于称为宏块328 的首部内。在方法200的步骤220处,可以设置参数来指出不进行剩余信号 的编码。作为一个例子,在传统的B图像中,通常使用离散余弦变换来编码 剩余信号。由此,在一种结构中,不进行每个伪B图像的剩余信号的DCT编 码。在一种结构中,可以将所述macroblock—type参数330设置为指出不进 行剩余信号的编码。作为一个例子,可以将所述macroblock-type参数设置 为值"010"。另外,所述设置处理可以指出将以下标记(未示出)设置为"0":macroblock_quant; macroblock_pattern; macroblockjntra;spatial_temporal—weight— code—flag和permiUed一spatial-temporal-weight — classes。 jt匕夕卜,it匕"i殳置处J里指 出可以将macroblock_mot ion—backward标记设置为值T,如果将反向预 测伪B图像时,使用该值。在另一个例子中,可以将所述macroblock-type 参数330设置为值"0010"。在此例子中,除了可以将macrobock_motion_forward标记i殳置为^f直'T,外,所述i殳置处理与上述处理相同。返回参见图2,可以如步骤222所示设置frame—motion—type参数(图3 中的frame—motion—type参数332)。在一种结构中,因为所述 frame-pred-frame_dct标记316已经设置为"0",所以可以将 frame—motion-type参数332设置为值"10"。此设置处理指出预测类型是基 于顿的予贞测,所述motion-vector-count是"2", 所述mv_format是场,并 且所述dmv是"0"。继续方法200,在步骤224,可以设置多个 motion—vertical-f ield_select标记和motion—code标记。例如,参见图3, 可以设置motion—vertical —field-select
[l]或者
[O]标记334以及 motion_vertical-field-select [1]
336来指出将根据参考图像的哪个场 来预测包括伪B图像的场。标记334的第一组下标与反向预测伪B图像相关, 而第二组与正向预测伪B图像相关。作为一个例子,如果所述伪B图像是反 向预测图像,那么可以将motion—vertica1 —field—select
[1]标i己334 以及motion—verUcal-field—select [1]
336 -没置为值"0",以指出将才艮 据参考图像的顶场来预测伪B图像的两个场。作为选择,可以将这些标记的 值设置为'T,,以指出将根据参考图像的底场来预测伪B图像的场。然而应 当指出,本发明不局限于此例子,而可以使用其它基于场的预测方案来实现。 此外,参考图像例如可以是I图像或者P图像。根据与参考图像相关的单个场来预测包括伪B图像的场,能有助于消除振动图像假象。因为在伪B图像的场中,存在于参考图像的此单个场中的运 动对象将处于同一位置,所以这样做是可能的。由此,当反复交替显示这些 场时,例如在诸如冻结特技模式之类的特技模式期间按照一串伪B图像来进 行显示时,运动对象看起来像是呆在同一位置,而不是在两个独立的位置之 间前后3兆动。继续步骤224,可以设置多个motion-code标记。例如,依照本发明的 结构,组成伪B图像的每个场可以包括具有水平和垂直运动分量的至少两个 运动矢量。如图3所示,这些运动矢量可以包括motion-code[O] [1] [O]或者
[O]标记338、 motion—code
[1] [l]或者[O]
[l]标记340、 motion-code [1] [1] [O]或者[l]
[O]标记342以及mot ion—code [1] [1] [1] 或者[l]
[l]标记344。与这些标记相关的第一组下标涉及反向预测伪B图像,而第二组用于正向预测伪B图像。在一种结构中,可以将这些运动矢量中的每一个设置为值"1",由此指出这些运动矢量的水平和垂直运动分量将具有 "G"值。在没有编码剩余信号的情况下将水平和垂直运动分量设置为值"0",有 助于允许伪B图像包含非常少的比特,特别是当与I、 P乃至传统的B图像相 比时更明显。据此,可以将这些图像经由传输线路发送到远程译码器,以减 少特技模式视频信号的平均比特率。然而应当指出,根据非逐行扫描帧预测 的伪B图像不局限于进行远程译码的系统,可以利用任何其它适当的结构来 使用这些图像。最后,返回参见图2,在步骤226结束方法200。应该理解的是,本发明不局限于单向预测图像。举例来说, 一个或多个 伪B图像可以是双向预测图像。作为一个例子,所述伪B图像的第一场可以 根据与第一参考图像相关的场来预测,而伪B图像的第二场可以根据与第二 参考图像相关的场来预测。此预测方案可以依照上述这样一种方式来实现, 其中伪B图像的其中一个场可以是向后或者正向预测图像,而伪B图像的另 一个场可以具有与第一场相反的预测方向。例如,所述伪B图像的第一场可以是根据第一参考图像预测的正向预测 图像,而所述伪B图像的第二场可以是根据第二参考图像预测的反向预测图 像。用这样的方式预测伪B图像,提供了与利用单向预测图像进行预测的同 样的优点,即降低了比特率并且能够控制振动图像的问题。然而应该理解 的是,本发明不局限于上述例子,而是可以使用采用双向预测图像的其它预 测方案。还应该理解的是,本发明不局限于根据非逐行扫描参考图像来预测非逐 行扫描伪B图像。照此,可以依照涉及图2和3的论迷、根据逐行扫描地扫 描图像乃至图像中的场来预测非逐行扫描伪B图像。具体来讲,可以根据单 个逐行扫描参考图像或者单个参考场图像来预测伪B图像的两个场。同样, 利用两个独立的逐行扫描参考图像或者两个独立的参考场图像,可以使用诸 如上述那些双向的预测方案。虽然已经结合在此公开的实施例描述了本发明,但是应该理解的是,上 述描述是用来举例说明的,而非限制本发明的范围,本发明的范围由权利要 求书定义。
权利要求
1.一种用于生成伪双向(B)预测图像的方法,可以在没有显示振动的情况下重复所述伪双向(B)预测图像,所述方法包括以下步骤通过在图像语法中调节预定设置,根据数字编码视频流中的至少一个图像来建立伪双向预测图像。
2. 如权利要求1所述的方法,其中,所述预定设置是将 f rame_pred—f rame—dct冲示i己k乂及f rame—pred-f rame_dct才示"i己i殳置为^(直0。
3. 如权利要求1所述的方法,其中,所述的预定设置是 progressive—f rame标记以及将progressive_frame标记设置为值0。
4. 如权利要求l所述的方法,其中,所述伪双向预测图像是反向预测图 像,并且预定设置是 motion—vertical_f ield_select
[1]以及 motion_vertical_field_select [1] [O]标记,其中,当根据参考图像的顶场 预测伪双向预测图像时、将所述标记设置为值0,当根据参考图像的底场预 测时、将所述标记设置为值l。
5. 如权利要求1所述的方法,其中,所述伪双向预测图像是正向预测图 像,并且预定设置是motion—vertical_field-select
以及 motion—vertical_field_select [1] [O]标记,其中,当根据参考图像的顶场 预测伪双向预测图像时、将所述标记设置为值0,当根据参考图像的底场预 测时、将所述标记设置为值1。
6. —种用于生成伪双向(B)预测图像的系统,所述伪双向(B)预测图 像可以在不显示出振动的情况下进行重复,所述系统包括处理器,其中所述处理器被编程以用来通过在图像语法中调节预定设置、 根据数字编码视频流中的至少一个图像来建立伪双向预测图像。
7. 如权利要求6所述的系统,其中,所述预定设置是 frame_pred — frame-dct标记,并且所述处理器还编禾呈以用来将 f rame — pred-f rame—dct标记设置为值0。
8. 如权利要求6所述的系统,其中,所述预定设置是progressive — frame 标记,并且所述处理器还^皮编程以用来将progressive—frame标记i殳置为值 0。
9. 如权利要求6所述的系统,其中,所述伪双向预测图像是反向预测图像,并且预定设置是 motion_vertical_field_select
[1]以及 motion-vertical_field—select [1] [O]标记,其中所述处理器还被编程以用 于当根据参考图像的顶场预测伪双向预测图像时将标记设置为值0,当根据 参考图像的底场预测时将标记设置为值1。
10.如权利要求6所述的系统,其中,所述伪双向预测图像是正向预测 图像,并且预定设置是motion_vertical_neld_select
以及 motion—vertical-field—select [1] [O]标记,其中,所述处理器还被编程以 用于当根据参考图像的顶场预测伪双向预测图像时将标记设置为值Q,当根 据参考图像的底场预测时将标记设置为值1。
全文摘要
生成非逐行扫描伪双向预测图像的方法和系统。本发明涉及一种用于生成伪双向(B)预测图像的方法和系统,可以在没有显示振动的情况下重复所述伪双向(B)预测图像,所述方法包括以下步骤通过在图像语法中调节预定设置,根据数字编码视频流中的至少一个图像来建立伪双向预测图像。所述系统包括处理器,其中所述处理器被编程以用来通过在图像语法中调节预定设置、根据数字编码视频流中的至少一个图像来建立伪双向预测图像。所述伪双向预测图像可以包括多个宏块,并且每个宏块可以包含至少两个场的至少一部分,并且所述参数可以是宏块参数。本发明没有提高系统开销或增加系统复杂性的情况下,消除比特率问题和振动假象。
文档编号H04N5/92GK101222643SQ20081000463
公开日2008年7月16日 申请日期2002年10月18日 优先权日2001年10月23日
发明者唐纳德·H·威利斯, 书 林 申请人:汤姆森特许公司