视频块标头信息的自适应译码的制作方法

文档序号:7940767阅读:199来源:国知局
专利名称:视频块标头信息的自适应译码的制作方法
技术领域
本发明涉及数字视频译码,且更确切地说涉及对视频序列的块的标头信息的译码。
背景技术
可将数字视频能力并入广泛范围的装置中,所述装置包括数字电视、数字直接广 播系统、无线通信装置、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、数码相 机、数字记录装置、视频游戏装置、视频游戏 控制台、蜂窝式或卫星无线电话等。数字视频装 置实施视频压缩技术,例如MPEG-2、MPEG-4或H. 264/MPEG-4 (部分10,通常称为高级视频 译码(AVC)),以更有效地发射和接收数字视频。视频压缩技术执行空间与时间预测以减少 或移除视频序列中固有的冗余。在视频译码中,视频压缩通常包括空间预测和/或运动估计及运动补偿以产生预 测视频块。帧内编码依赖于空间预测以减少或移除给定视频帧内的视频块之间的空间冗 余。可针对许多不同帧内编码块类型(例如在H. 264/MPEG-4部分10AVC的状况下的帧内 16X16块类型、帧内8X8块类型和帧内4X4块类型)而执行空间预测。帧间编码依赖于 时间预测以减少或移除视频序列的连续视频帧的视频块之间的时间冗余。也可针对许多不 同帧间编码块类型(例如在H. 264/MPEG-4部分10AVC的状况下的帧间16 X 16、帧间16X8、 帧间8X 16、帧间8X8、帧间8X4、帧间4X8和帧间4X4)而执行时间预测。在空间或时间预测之后,通过从所译码的原始视频块减去预测视频块而产生残余 信息块。因此,所述残余信息量化预测视频块与原始块之间的差异。视频编码器编码块的 残余信息连同块的标头信息。块的标头信息可指示当前视频块的块类型以及与当前视频块 相关联的额外信息(例如预测模式、亮度译码块模式(CBP)、色度CBP、一个或一个以上运动 向量等)。视频编码器通常使用算术码、可变长度码(VLC)、固定长度码或其组合来编码残 余信息和标头信息。实例包括上下文自适应二进制算术译码(CABAC)和上下文自适应可变 长度译码(CAVLC)。视频解码器执行反操作以使用所述块中的每一者的标头信息和残余信 息来重建编码视频。

发明内容
本发明描述一种用于基于一个或一个以上先前编码视频块来自适应地对视频块 标头信息进行译码的技术。明确地说,视频编码器可基于经译码单元(例如,帧或切片 (slice))的一个或一个以上先前编码块的语法元素来自适应地选择译码表用于编码当前 视频块的语法元素。在一个方面中,视频编码器可基于一个或一个以上邻近于当前视频块 的已译码的视频块(即,附近的视频块)的块类型来自适应地选择所述译码表用于编码当前块的块类型。举例来说,当两个或两个以上的附近块具有帧内16X16块类型时,视频编 码器可自适应地选择将帧内16X 16块类型与短于帧内4X4或8X8块类型的码字相关联 的译码表。这可允许视频编码器更有效地编码具有较高分辨率的视频序列(例如,高清晰 度(HD)视频序列)。视频编码器还可基于至少一个先前编码块来预测当前块的一个或一个以上其它 标头语法元素。如果预测成功(即,所述一个或一个以上所预测的标头语法元素的值与当 前块的实际标头语法元素的值相同),那么视频编码器可编码指示预测的成功的旗标(例 如,1位旗标),而不是分离地编码所述语法元素中的每一者的值或将所述语法元素包裹在 一起并以较长的码字来对其进行编码。视频解码器也可以与视频编码器相同的方式来预测 所述一个或一个以上标头语法元素的值,且当经编码旗标指示预测的成功时选择块的所预 测的标头语法元素的值。此技术可进一步减少用以编码视频帧序列的视频块的位数目。在一个方面中,一种方法包含基于经译码单元的一个或一个以上先前编码视频 块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语法元素;以 及使用所述选定译码表来编码当前视频块的语法元素。在另一方面中,一种编码装置包含编码单元,所述编码单元包括选择单元,其基 于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于编 码所述经译码单元的当前视频块的语法元素;以 及译码单元,其使用所述选定译码表来编 码当前视频块的语法元素。在另一方面中,一种计算机可读媒体包含用以促使处理器进行以下动作的指令 基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于 编码所述经译码单元的当前视频块的语法元素;以及使用所述选定译码表来编码当前视频 块的语法元素。在另一方面中,一种编码装置包含用于基于经译码单元的一个或一个以上先前 编码视频块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语 法元素的装置;以及用于使用所述选定译码表来编码当前视频块的语法元素的装置。在另一方面中,一种解码视频数据的方法包含基于经译码单元的一个或一个以 上先前解码视频块的对应语法元素来选择译码表以用于解码所述经译码单元的当前视频 块的语法元素;以及使用所述选定译码表来解码当前视频块的语法元素。在另一方面中,一种解码装置包含选择单元,其基于经译码单元的一个或一个以 上先前解码视频块的对应语法元素来选择译码表以用于解码所述经译码单元的当前编码 视频块的语法元素;以及解码单元,其使用所述选定译码表来解码当前视频块的语法元素。在另一方面中,一种计算机可读媒体包含用以促使处理器进行以下动作的指令 基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码表以用于 解码所述经译码单元的当前编码视频块的语法元素;以及使用所述选定译码表来解码当前 视频块的语法元素。在另一方面中,一种解码装置包含用于基于经译码单元的一个或一个以上先前 解码视频块的对应语法元素来选择译码表以用于解码所述经译码单元的当前编码视频块 的语法元素的装置;以及用于使用所述选定译码表来解码当前视频块的语法元素的装置。可以硬件、软件、固件或其任何组合来实施本发明中所描述的技术。如果以软件实施,那么可在处理器中执行软件,所述处理器可指代一个或一个以上处理器,例如微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或数字信号处理器(DSP)或者其它等 效的集成或离散逻辑电路。包含用以执行所述技术的指令的软件可最初存储于计算机可读 媒体中并由处理器来载入和执行。因此,本发明还涵盖计算机可读媒体,其包含用以促使处理器执行如本发明中所 描述的多种技术中的任一者的指令。在一些状况下,计算机可读媒体可形成可出售给制造 者和/或用于装置中的计算机程序产品的一部分。计算机程序产品可包括计算机可读媒 体,且在一些状况下,计算机程序产品还可包括封装材料。在下文的附图和描述中陈述本发明的一个或一个以上方面的细节。本发明中所描 述的技术的其它特征、目的和优点将从描述和图式以及从权利要求书显而易见。


图1是说明视频编码和解码系统的框图。图2是说明根据本发明执行译码技术的视频编码器的实例的框图。图3是进一步详细说明图2的视频编码器的实例熵编码单元的框图。图4是说明根据本发明中所描述的译码技术来解码视频数据的视频解码器的实 例的框图。图5是进一步详细说明实例解码单元的框图。图6是说明编码视频块的标头信息的编码单元的实例操作的流程图。图7是说明解码视频序列的编码视频块的解码单元的实例操作的流程图。
具体实施例方式图1是说明执行本发明中所描述的译码技术的视频编码和解码系统10的框图。如 图ι中所示,系统10包括源装置12,所述源装置12经由通信信道16而将编码视频数据发 射到接收装置14。通信信道16可包含任何无线或有线通信媒体(例如射频(RF)频谱或一 个或一个以上物理发射线,或无线与有线媒体的任何组合)。通信信道16可形成基于包的 网络(例如局域网、广域网或全球网络(例如因特网))的一部分。通信信道16通常表示 用于将编码视频数据从源装置12发射到接收装置14的任何合适的通信媒体或不同通信媒 体的集合。源装置12产生译码视频数据以用于发射到接收装置14。源装置12可包括视频 源18、视频编码器20和发射器22。源装置12的视频源18可包括视频捕获装置(例如视 频相机、含有先前捕获的视频的视频档案,或来自视频内容提供者的视频馈送器)。作为另 一替代实施例,视频源18可产生基于计算机图形的数据作为源视频,或现场视频与计算机 产生的视频的组合。在一些状况下,如果视频源18为视频相机,那么源装置12可形成所谓 的相机电话或视频电话。在每一状况下,经捕获、经预先捕获或计算机产生的视频可由视频 编码器20来编码以用于经由发射器22和通信信道16而从源装置12发射到接收装置14。视频编码器20从视频源18接收视频数据。从视频源18接收的视频数据可为一 系列视频帧。可将所述帧中的一些帧划分为切片。视频编码器20对个别视频帧内的像素 块(本文中称为视频块)进行操作以便编码视频数据。经译码单元(例如帧或切片)可含有多个块。视频块可具有固定或变化的大小,且大小可根据规定的译码标准而不同。可 将每一视频块(常常称为巨集块(MB))布置为子块。作为一实例,国际电信联盟标准化部 门(ITU-T)H. 264/MPEG-4(部分10,高级视频译码(AVC))(下文中为“H. 264/MPEG-4部分 10AVC”标准)支持呈各种块大小(例如亮度分量的16X16、8X8或4X4和色度分量的 8X8)的帧内预测以及呈各种块大小(例如亮度分量的16X16、16X8、8X16、8X8、8X4、 4X8和4X4以及色度分量的对应成比例大小)的帧间预测。通常,可认为MB和各种子块 为视频块。因此,可认为MB为视频块,且如果加以分割或子分割,那么可认为MB自身界定 若干组视频块。对于视频块中的每一者来说,视频编码器20针对所述块选择块类型。如本文中 所使用,术语“块类型”指代是使用帧间预测还是帧内预测来预测所述块以及所述块的分割 大小。举例来说,H. 264/MPEG-4部分10AVC标准支持若干帧间预测和帧内预测块类型(包 括帧间16X16、帧间16X8、帧间8X16、帧间8X8、帧间8X4、帧间4X8、帧间4X4、帧内 16X16、帧内8X8和帧内4X4)。如下文所详细描述,视频编码器20可基于多种因素中的 任一者而针对所述视频块中的每一者选择所述块类型中的一者。对于帧内编码来说,视频编码器20可基于当前块内的变化来选择帧内预测块类 型中的一者。当当前视频块内的变化较大时(例如,归因于较高级别的细节或纹理),视频 编码器20可选择具有较小块分割的帧内预测块类型(例如帧内4X4或帧内8X8译码模 式)。然而,当当前视频块内的变化较小时,视频编码器20可选择具有较大块分割的帧内预 测块类型(例如帧内16 X 16块类 型)。对于具有较小视频分辨率的视频序列(例如,通用图像格式(CIF)或四分之一 CIF(QCIF)视频序列)的帧内编码帧来说,视频编码器20通常使用帧内4X4或帧内8X8 块类型来预测较多视频块。在具有较小分辨率的帧内编码帧中,16X16块可包括比4X4或 8X8块多的变化。因此,帧内的4X4或8X8块可比帧内的16X16块平滑。举例来说,视 频序列的4X4块可包括场景(例如,人的前额)的平滑部分,而16X 16块可包括较多纹理 (例如,前额、一些头发和人的眼睛的一部分)。然而,对于具有高分辨率的视频序列(例如, 高清晰度(HD)视频序列)的帧内编码帧来说,视频编码器20可使用帧内16X16块类型来 预测比使用帧内4 X 4或帧内8 X 8块类型多的块。举例来说,4 X 4块和16 X 16块两者均可 包括仅人的前额(由于高的帧分辨率),且因此可具有类似的平滑性。在对视频块进行基于帧内或帧间的预测之后,视频编码器20可对视频块执行若 干其它操作。如将参看图2进一步详细描述,这些额外操作可包括变换操作(例如用于 H. 264/MPEG-4部分10AVC中的4X4或8X8整数变换,或离散余弦变换DCT)、量化操作和熵 译码操作。视频编码器20接着编码视频帧序列的块中的每一者且输出编码位流。对于每 一块来说,例如,视频编码器20可编码块的标头信息和块的残余信息。每一块的标头信息 可包括若干识别块的特定特性的语法元素(例如选定块类型、预测模式、经译码块模式(亮 度和/或色度CBP)、运动向量等)。每一块的残余信息量化输入视频块与一个或一个以上 预测块之间的差异。在熵编码期间,常规视频编码器可将若干标头语法元素包裹在一起且将所述包裹 件编码为单一码字。对于使用H. 264/MPEG-4部分10AVC标准中的帧内16X 16预测的帧 内预测块来说,例如,常规视频编码器将块类型语法元素、预测模式语法元素(例如,DC、水平、垂直和平面)和亮度与色度的经译码块模式语法元素(例如,指示亮度与色度的经量化变换系数是否具有任何非零值)包裹在一起,且使用可变长度译码(VLC)而将所述包裹在 一起的语法元素编码为单一码字。在VLC中,待编码的每一可能的语法元素或待编码的语 法元素的组合指派有一码字。VLC中的码字的长度可变化,其中最短码字指派给具有最高发 生机率的给定语法元素的值。根据H. 264/MPEG-4部分IOAVC标准操作的常规视频编码器 基于以下假定而将比帧内4X4和帧内8X8块类型长的码字指派给帧内16X16块类型选 择帧内4X4和帧内8X8块类型的频率大于选择帧内16X16块类型的频率。此假定对于 具有较小视频分辨率的视频序列(例如,CIF或QCIF视频序列)来说可为有效的。然而,对 于具有高分辨率的视频序列(例如,HD视频序列)来说,选择帧内16X16块类型的频率可 大于选择帧内4X4或帧内8X8块类型的频率。当视频序列包括大的平滑区域且以中等到 高的量化参数(QP)来执行量化时,这可能尤为正确。在此类视频序列中,根据常规H. 264/ MPEG-4部分10AVC标准来对帧内16X 16块类型进行译码可能是非常低效的。明确地说, 对于HD应用来说,发射用于帧内16 X 16块类型的较长码字的频率可比在非HD应用中大得 多,从而引起过多带宽消耗。为了更有效地编码包括使用帧内16X16块类型所预测的大量视频块的视频流, 视频编码器20执行如本发明中所描述的自适应标头信息译码技术。视频编码器20可基于 一个或一个以上先前编码块的对应语法元素来自适应地选择译码表用于编码当前视频块 的语法元素。在一个方面中,视频编码器20可基于邻近于当前视频块的一个或一个以上视 频块(本文中称为“附近的视频块”)来自适应地选择所述译码表用于编码所述当前视频块 的块类型。视频编码器20可在选择用于编码块类型的译码表(也称为码簿)时分析任何 位置处的任何数目的附近块。然而,出于说明的目的,在一些方面中,视频编码器20将被描 述为基于直接位于当前块之上的附近块(“上附近块”)和直接位于当前块的左边的附近块 (“左附近块”)来自适应地选择用于编码块类型的译码表。对于帧内预测块来说,例如,当上附近块和左附近块并非均具有帧内16X 16块类 型时,视频编码器20可选择使帧内4X 4或8 X 8块类型与短于帧内16 X 16块类型的码字相 关联的译码表。在H. 264/MPEG-4部分10AVC标准中,通常用码字“10”来表示帧内16X16 块类型,而用码字“0”来表示帧内4X 4和帧内8 X 8块类型,在此状况下,使用1位对额外语 法元素transform_size_8X8_flag进行译码以指示块类型是帧内4X4还是帧内8X8。然 而,当上附近块和左附近块具有帧内16X16块类型时,视频编码器20可选择使帧内16X16 块类型与短于帧内4X4或8X8块类型的码字相关联的译码表。在此状况下,与视频编码 器20相关联的熵译码单元可使用较短码字来编码块标头中的帧内16X 16块类型的块类 型。当上附近块和左附近块具有帧内16X16块类型时,视频编码器20可(例如)选择一 译码表,所述译码表用码字“0”来表示帧内16X16块类型且用码字“10”来表示帧内4X4 和8X8块类型。因此,视频编码器20在以下试探法下操作如果上附近块和左附近块具有 帧内16X16块类型,那么当前视频块是帧内16X16块类型的机率增加。以此方式,当较频 繁地使用帧内16X16块类型时,视频编码器20自适应地选择较有效地编码块类型的译码 表。尽管在选择用于对帧内预测块类型进行译码的译码表的上下文中进行描述,但也可应 用本发明的技术以基于先前编码视频块的块类型来选择用于帧间预测块类型的译码表。此 夕卜,可进一步应用本发明的技术以自适应地选择用于对当前视频块的其它语法元素(例如预测模式、亮度CBP、色度CBP、块分割、运动向量等)进行译码的译码表。视频编码器20可另外尝试基于至少一个先前编码块来预测当前块的一个或一个 以上其它标头语法元素。举例来说,视频编码器20可尝试从先前块(例如,上附近块和左 附近块)预测当前块的预测模式语法元素和/或亮度/色度CBP语法元素。举例来说,视 频编码器20可尝试预测预测模式、亮度CBP和色度CBP,且如果预测成功,那么编码指示预 测成功的旗标。如果对预测模式、亮度CBP和色度CBP的预测不成功,那么视频编码器20 可分离地编码所述语法元素中的每一者,如下文所详细描述。或者,视频编码器20可尝试 从先前块预测当前块的预测模式。如果预测成功,那么视频编码器20编码一旗标(例如,1 位旗标)以指示对预测模式的成功预测,而非预测模式的2位固定长度码字,因此节省至少 一个位。视频编码器20分离地编码亮度CBP和色度CBP。如果对预测模式的预测不成功, 那么分离地编码所述语法元素中的每一者。源装置12经由发射器22而将编码视频数据发射到接收装置14。接收装置14可 包括接收器24、视频解码器26和显示装置28。接收器24经由信道16从源装置12接收编 码视频位流。视频解码器26解码编码视频位流以获得经译码单元的经译码视频块的标头 信息和残余信息。视频解码器26基于一个或一个以上先前解码块的块类型来自适应地选 择译码表(即,码簿)以用于解码当前视频块的块类型。举例来说,当上附近块和左附近块 具有帧内16X16块类型时,视频解码器26可自适应地选择使帧内16X16块类型与短于帧 内4X4或8X8块类型的码字相关联的译码表。视频解码器26可另外以与视频编码器20相同的方式来执行对当前块的预测模式 语法元素和/或亮度/色度CBP语法元素的预测。当编码位流包括指示对预测模式和亮度 /色度CBP的预测成功的旗标时,视频解码器26将所预测的预测模式和亮度/色度CBP用 作当前块的语法元素。当旗标指示对预测模式和亮度/色度CBP的预测失败时,视频解码 器26从编码位流解码预测模式和亮度/色度CBP。或者,视频解码器26可尝试从先前块预 测当前块的预测模式(如果视频编码器20执行此特征)。视频解码器26使用解码标头信息和解码残余信息来重建切片的块中的每一者。 视频解码器26可使用标头信息的至少一部分以产生所述块中的每一者的预测块,并将所 述块中的每一者的预测块与对应的残余信息组合以重建所述块中的每一者。接收装置14 可经由显示装置28向用户显示经重建的视频块。显示装置28可包含多种显示装置中的任 一者,例如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、发光二极管(LED)显示器、 有机LED显示器或另一类型的显示单元。在一些状况下,源装置12与接收装置14可以大体上对称的方式操作。举例来说, 源装置12与接收装置14可每一者包括视频编码和解码组件。因此,系统10可支持装置 12、14之间的单向或双向视频发射,(例如)以用于视频串流、视频广播或视频电话。视频编码器20和视频解码器26可根据视频压缩标准(例如移动图片专家组 (MPEG)-2、MPEG-4、ITU-T H. 263 或 ITU-T H. 264/MPEG-4 部分 10AVC)来操作。尽管图 1 中 未展示,但在一些方面中,视频编码器20和视频解码器26可每一者分别与音频编码器和解 码器集成,且可包括适当的多路复用器-解多路复用器(MUX-DEMUX)单元或其它硬件与软 件,以处理共同数据流或单独数据流中的音频与视频两者的编码。以此方式,源装置12与 接收装置14可对多媒体数据进行操作。如果适用,那么多路复用器_解多路复用器单元可符合ITU H. 223多路复用器协议或其它协议(例如用户数据报协议(UDP))。在一些方面中,对于视频广播来说,可将本发明中所描述的技术应用于增强型 H. 264视频译码以用于在陆地移动多媒体多播(TM3)系统中递送实时视频服务,TM3系统 使用2007年7月被公布为技术标准TIA-1099( "FLO规范”)的仅前向链路(FLO)空中接 口规范,“用于陆地移动多媒体多播的仅前向链路空中接口规范(“Forward Link OnlyAir Interface Specification for Terrestrial Mobile Multimedia Multicast,,)。也就是 说,通信信道16可包含用以根据FL0规范来广播无线视频信息的无线信息信道等。FL0规 范包括界定位流语法和语义的实例和适合用于FL0空中接口的解码过程。或者,可根据例如DVB_H(数字视频广播_手持式)、ISDB-T(集 成服务数字广 播_陆地)或DMB(数字媒体广播)等其它标准来广播视频。因此,源装置12可为移动无 线终端、视频串流服务器或视频广播服务器。然而,本发明中所描述的技术并不限于任何特 定类型的广播、多播或点对点系统。在广播的状况下,源装置12可将视频数据的若干信道 广播到多个接收装置,所述接收装置中的每一者可类似于图1的接收装置14。因此,尽管图 1中展示单一接收装置14,但对于视频广播来说,源装置12将通常将视频内容同时广播到 许多接收装置。在其它实例中,发射器22、通信信道16和接收器24可经配置以用于根据任何有 线或无线通信系统(包括以太网、电话(例如,P0TS)、电缆、电力线和光纤系统中的一者或 一者以上)和/或无线系统来通信,所述无线系统包含以下中的一者或一者以上码分多址 (CDMA或CDMA2000)通信系统、频分多址(FDMA)系统、正交频分多址(0FDM)系统、时分多址 (TDMA)系统(例如全球移动通信系统(GSM)、通用包无线电服务(GPRS)或增强型数据GSM 环境(EDGE))、陆地集群无线电(TETRA)移动电话系统、宽带码分多址(WCDMA)系统、高数据 速率lxEV-D0 (仅第一代演进数据)或lxEV-DO金多播系统、IEEE 802. 18系统、MediaFLO 系统、DMB系统、DVB-H系统或用于在两个或两个以上装置之间进行数据通信的另一方案。视频编码器20与视频解码器26每一者可实施为一个或一个以上微处理器、数字 信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬 件、固件或其任何组合。可将视频编码器20与视频解码器26中的每一者包括于一个或一 个以上编码器或解码器中,其任一者可集成为相应移动装置、订户装置、广播装置、服务器 等中的组合式编码器/解码器(CODEC)的一部分。另外,源装置12与接收装置14每一者 可包括适当的调制、解调制、频率转换、滤波和放大器组件以用于发射和接收编码视频(如 可应用),其包括足以支持无线通信的射频(RF)无线组件和天线。然而,出于说明的简易 性,将此类组件概述为图1中的源装置12的发射器22和接收装置14的接收器24。图2是说明执行本发明的译码技术的视频编码器20的实例的框图。视频编码器 20可对应于图1的源装置12的视频编码器。视频编码器20执行经译码单元(例如,视频 帧或切片)内的块的帧内和帧间编码。帧内编码依赖于空间预测以减少或移除给定视频 帧、切片或其它经译码单元内的视频数据中的空间冗余。出于说明的目的,将针对帧的切片 来描述所述技术。然而,可将所述技术用于任何经译码单元,例如整个帧或帧的任何部分。 对于帧内编码来说,视频编码器20基于与所译码的块相同的切片内的一个或一个以上先 前编码块而形成预测块。帧间编码依赖于时间预测以减少或移除视频序列的邻近帧内的时 间冗余。对于帧间编码来说,视频编码器20执行运动估计以追踪两个或两个以上邻近帧之间的匹配的视频块的移动。如图2中所示,视频编码器20接收待编码的视频帧或切片内的当前视频块。视频 编码器20包括用于执行时间预测和空间预测的组件。在图2的实例中,视频编码器20包括 空间预测单元30、运动估计单元32、模式选择单元33、参考帧存储件34、运动补偿单元36、 块变换单元38、量化单元40、反量化单元42、反变换单元44和熵编码单元46。可将回路内 解块滤波器(未图示)应用于经重建的视频块以移除块假象。视频编码器20还包括加法 器48A和48B ( “加法器48”)。运动估计单元32和运动补偿单元36为视频块的帧间编码 执行时间预测。空间预测单元30为视频块的帧内编码执行空间预测。为了执行时间预测,运动估计单元32将当前视频块与一个或一个以上邻近视频 帧中的块相比较以产生一个或一个以上运动向量。当前视频块指代当前被译码的视频块, 且可包含到视频编码器20的输入。可从帧存储件34检索邻近帧(其包括当前视频块与之 相比较的视频块)。帧存储件34可包含任何类型的存储器或数据存储装置以存储一个或一 个以上先前编码的帧或块。在此状况下,帧存储件可存储先前编码帧内的块。运动估计单元 32识别邻近帧中的最密切匹配当前视频块的块(例如,邻近帧中的具有最小均方差(MSE)、 方差和(SSD)、绝对差和(SAD)或具有最小速率失真成本的块)。可基于当前视频块的块类 型而针对具有可变大小(例如,16 X 16、16 X 8、8 X 16、8 X 8或更小的块大小)的块来执行运 动估计。运动估计单元32产生运动向量(MV)(或在双向预测的状况下产生多个MV),所述 MV指示当前视频块与所识别的用以对当前视频块进行译码的预测性块之间的移位的量值 和轨道。运动向量可具有一半或四分之一像素精度或甚至更精细的精度,从而允许视频编 码器20以比整数像素位置高的精度来追踪运动并获得较好的预测块。使用所得运动向量, 运动补偿单元36通过运动补偿而形成预测视频块。在整数像素精度的状况下,运动补偿单 元36将在由运动向量识别的位置处的块选择作为预测块。在分数像素精度的状况下,运动 补偿单元36可执行内插以形成预测块。在空间预测的状况下,空间预测单元30基于共同帧内的一个或一个以上邻近块 而产生预测块。空间预测单元30可(例如)通过使用当前帧内的一个或一个以上邻近块和 选定预测模式来执行内插而产生预测块。可(例如)从帧存储件34检索当前帧内的一个 或一个以上邻近块。因此,在空间预测的状况下,帧存储件34可存储当前帧的已被解码和 重建的先前编码块。对于帧内16X16块类型来说,例如,空间预测单元30可使用四种预测 模式中的一者来产生预测块DC预测模式、水平预测模式、垂直预测模式和平面预测模式。 作为另一实例,空间预测单元30可将当前帧内的邻近块中的一者选择作为预测块。以此方 式,空间预测单元30依赖于共同帧内的块以产生预测块而非依赖邻近帧内的块。模式选择单元33基于经选择用于编码当前块的译码模式而在由空间预测单元30 产生的预测块与由运动补偿单元36产生的预测块之间选择性地切换。以此方式,视频编码 器20可选择性地执行帧间编码和帧内编码(例如,逐帧地或逐块地)。视频编码器20通 过在加法器48A处从当前视频块减去所产生的选定预测块而产生残余信息(图2中标记为 "RESID INFO”)。因此,在帧内编码的状况下,视频编码器20通过在加法器48A处从当前视 频块减去由空间预测单元30输出的选定预测块而产生残余信息。在帧间编码的状况下,视 频编码器20通过在加法器48A处从当前视频块减去由运动补偿单元36输出的选定预测块而产生残余信息。如上文所描述,残余信息量化预测视频块与所译码的当前视频块之间的 差异。块变换单元38将变换(例如DCT或者4X4或8X8整数变换)应用于残余信息以 产生残余变换系数。量化单元40量化残余变换系数以进一步减小位速率。在量化之后,反量化单元42和反变换单元44可分别应用反量化和反变换,以重建 残余信息(图2中标记为“RECON RESID”)。加法器48B将经重建的残余信息添加到由运 动补偿单元36或空间预测单元30产生的预测块,以产生用于存储于帧存储件34中的经重 建的视频块。可由运动估计单元32和运动补偿单元36使用所述经重建的视频块以帧间编 码后续视频帧中的块。另外,可由空间预测单元30使用所述经重建的块以帧内编码当前帧 中的另一块。熵编码单元46从量化单元40接收残余信息,所述残余信息呈当前视频块的量化 残余系数的形式。另外,熵编码单元46从模式选择单元33和视频编码器20内的其它组件 接收当前视频块的块标头信息,所述块标头信息呈一个或一个以上标头语法元素的形式。 所述标头语法元素可识别当前视频块的特定特性。对于经帧内编码的块来说,例如,熵编码 单元46可从模式选择单元33接收块类型语法元素和预测模式语法元素,以及从量化单元 40接收亮度和色度的CBP语法元素。对于经帧间编码的块来说,熵编码单元46可另外从运 动估计单元32接收一个或一个以上运动向量作为当前视频块的语法元素。上文所描述的 语法元素是可由熵编码单元46接收的语法元素的实例。熵编码单元46可接收更多或更少 的语法元素。熵编码单元46编码当前视频块的标头信息和残余信息以产生编码位流。熵编码 单元46根据本发明中所描述的技术来编码所述块中的每一者的标头信息。明确地说,熵编 码单元46基于先前编码块的对应语法元素来自适应地选择译码表用于编码所述块中的每 一者的语法元素。换句话说,熵编码单元46基于先前编码块的语法元素来逐块地自适应地 选择译码表。因此,熵编码单元46可基于一个或一个以上先前编码块的语法元素而选择第 一译码表用于帧的第一块,且选择第二译码表用于帧的第二块。在一些例子中,已使用不同 于选定译码表的译码表来编码用于进行选择的先前编码块。在一个方面中,熵编码单元46可基于邻近于当前视频块的一个或一个以上视频 块(即,附近的视频块)来自适应地选择译码表用于编码帧内预测块类型。在另一方面中, 熵编码单元46可基于具有帧内16X16块类型的先前编码块的百分比来选择译码表。然而, 出于说明的目的,将把熵编码单元46描述为基于直接位于当前块之上的附近块(“上附近 块”)和直接位于当前块左边的附近块(“左附近块”)来自适应地选择译码表用于编码帧 内预测块类型。然而,熵编码单元46可在选择用于编码的译码模式表时分析任何位置处的 任何数目的附近块。此外,熵编码单元46可使用类似技术以基于先前编码视频块的块类型 来自适应地选择译码表用于帧间预测块类型。另外,可进一步应用本发明的技术以自适应 地选择译码表用于对当前视频块的其它语法元素(例如预测模式、亮度CBP、色度CBP、块分 割、运动向量等)进行译码。当上附近块和左附近块并非均具有帧内16X 16块类型时,熵编码单元46可选择 将帧内4X4或8X8块类型与短于帧内16X16块类型的码字相关联的译码表。(例如)根 据H. 264/MPEG-4部分10AVC标准,熵编码单元46可(例如)选择将帧内4 X 4和帧内8 X 8 块类型与码字“0”(即,1位码字)相关联且将帧内16X16块类型与码字“10”(即,2位码
20字)相关联的译码表。当上附近块和左附近块两者均具有帧内16X16块类型时,熵编码单 元46可选择将帧内16X 16块类型与短于帧内4X4或8X8块类型的码字相关联的译码 表。在一个实例中,当上附近块和左附近块具有帧内16X16块类型时,选定译码表可将帧 内16 X 16块类型与码字“0”(即,1位码字)相关联且将帧内4X 4和8 X 8块类型与码字 “10”(即,2位码字)相关联。因此,熵编码单元46在以下试探法下操作如果上附近块和 左附近块具有帧内16X16块类型,那么当前视频块为帧内16X16块类型的机率增加。在 一些状况下,当前块可能并非帧内16X16块类型,且自适应选定的译码表可产生用于帧内 8X8或4X4块类型的较长码字。然而,时常所述试探法是正确的,从而导致节省用以编码 帧内16X16块类型的位。以此方式,当较频繁地使用帧内16X16块类型时,视频编码器20 自适应地选择对块进行较有效编码的译码表。熵编码单元46还可基于至少一个先前编码块来预测当前块的一个或一个以上其 它语法元素,以尝试进一步减少用以编码块标头语法元素的位数目。举例来说,熵编码单元 46可尝试从先前块(例如,上附近块和左附近块)一起预测当前块的预测模式语法元素和 亮度/色度CBP语法元素。举例来说,当附近块中的至少一者具有帧内16X16块类型时, 熵编码单元46可将当前块的预测模式和亮度/色度CBP预测为附近块中的一者的预测模 式和亮度/色度CBP。熵编码单元46将当前块的预测模式和亮度/色度CBP与所预测的预 测模式和亮度/色度CBP相比较,且如果预测是成功的(即,其相同),那么熵编码单元46 编码指示预测成功的旗标。熵编码单元46因此将预测模式和亮度/色度CBP包裹在一起 且使用旗标(例如,1位旗标)来表示所述预测模式和亮度/色度CBP,而不是分离地编码 每一语法元素,从而导致进一步减少用以编码语法元素的位数目。如果对预测模式、亮度CBP和色度CBP的预测不成功,那么熵编码单元46设定旗 标以指示预测的失败。熵编码单元46可尝试从先前块仅预测当前块的预测模式。举例来 说,当附近块中的至少一者具有帧内16X16块类型时,熵编码单元46可将当前块的预测模 式预测为附近块中的一者的预测模式。熵编码单元46将当前块的预测模式与所预测的预 测模式相比较,且如果预测成功(即,其相同),那么熵编码单元46编码指示预测成功的预 测模式旗标(例如,1位预测模式旗标)。如果预测成功,那么发送1位预测模式旗标而非 预测模式的2位固定长度码字,因此节省了至少一个额外位。熵编码单元46分离地编码亮 度CBP和色度CBP。如果对预测模式的预测也不成功或熵编码单元46并未尝试预测预测模 式,那么熵编码单元46使用单独的码簿来编码所述语法元素中的每一者而不对额外旗标 进行译码以指示预测是否成功。熵编码单元46可根据下文的实例伪码来操作以执行根据本发明的一个方面的帧 内编码技术。Encode I16MBtype(currMB){Let upI16 be equal to 1 if up MB type is 116 ;Let leftI16 be equal to 1 if left MB type is 116 ;If (upI16 = 1 & & leftI16 = 1)code currMBType using codewords { "0,,,‘‘ 10,,,‘‘ 11,,} for {116,14/8,IPCM};
210067]Else
0068]code currMBType using codewords { "0,,,‘‘ 10,,,‘‘ 11,,} for {14/8,116,
0069]I PCM};
0070]//the following code predicts I16mode/CBPs of currMB
0071]{
0072]up Value = upI16 ? I16value(upMB):0 ;
0073]left Value = leftI16 ? I16value (leftMB) :0 ;
0074]If (upI16 & & leftI16)
0075]predValue = min(up Value, leftValue);
0076]Else if(upI16)
0077]predValue = upValue ;
0078]Else if(leftI16)
0079]predValue = leftValue ;
0080]Else
0081]predValue = _1 ;
0082]currValue = I16value(currMB);
0083]If (predValue == -1)
0084]{
0085]send currPredMode in 2-bit FLC
0086]send currLumaCBP in l_bit FLC
0087]send currChromaCBP using codewords{0,10,11}
0088]}
0089]Else If (curr Value = = predValue)
0090]send flag “1”
0091]Else
0092]{
0093]send flag “0”
0094]send currPredMode in 2-bit FLC
0095]send currLumaCBP in 1-bit FLC
0096]send currChromaCBP using codewords{0,10,11}
0097]}
0098]}
0099]}
0100]Int I16value(thisMB)
0101]{
0102]Let thisPredMode be the prediction mode of thisMB
0103]Let thisLumaCBP be the luma CBP of thisMB
0104]Let this ChromaCBP be the chroma CBP of thisMB
0105]return thisPredMode+(thisLumaCBP << 4) + (thisChromaCBP << 2);
}最初,熵编码单元46在上附近块具有帧内16X 16块类型的情况下将变量upI16 设定为“1”,且在上附近块具有帧内16X16块类型的情况下将变量upI16设定为“0”。同 样,熵编码单元46在左附近块具有帧内16X 16块类型的情况下将变量leftI16设定为等 于“1”,且在左附近块具有帧内16X16块类型的情况下将变量leftI16设定为“0”。熵编码单元46基于上附近块和左附近块的块类型来选择性地编码当前块的块 类型。明确地说,当upI16与leftI16两者均等于“1”时,熵编码单元46分别针对帧内 16X16(116)、帧内4X4或8X8(14/8)和原始像素数据(IPCM)而使用码字“0”、“ 10”和 “11”来编码当前块的块类型(即,currMBtype)。因此,指派给帧内16X16(116)块类型的 可变长度码字短于指派给帧内4X4或8X8块类型(14/8)或者原始像素数据(IPCM)块类 型的可变长度码字。当upI16、leftI16或两者具有不同于帧内16X16的块类型时,熵编码 单元46分别针对块类型14/8、116、IPCM而使用码字“0”、“10”、“11”来编码当前块的块类 型(,currMBtype)。尽管在上文所描述的实例伪码中,熵编码单元46基于上附近块和左附近块来选 择译码表以用于编码当前块的块类型,但熵编码单元46可在作出所述选择时分析更多附 近块。此外,熵编码单元46可基于其它准则(例如,具有帧内16X16块类型的先前编码块 的百分比)来选择译码表以用于编码。举例来说,当最后20个先前编码块中的至少10个 具有帧内16X16块类型时,熵编码单元46可选择具有与帧内16X16块类型相关联的较短 码字的译码表。为了预测预测模式和CBP (亮度和色度),熵编码单元46初始化变量upValue和 leftValue。变量upValue和leftValue分别是上附近块和左附近块的预测模式和CBP (亮 度和色度)的值。当upI16不等于“1”时(即,当上附近块并不具有帧内16X16块类型 时),熵编码单元46将upValue设定为等于“0”。当upI16等于“1”时(即,上附近块具 有帧内16X 16块类型),熵编码单元46使用I16value函数来计算upValue。I16value函 数传回一值,其中最低有效的两个位对应于上附近块的预测模式,随后的两个有效位对应 于上附近块的色度CBP,且随后的位对应于上附近块的亮度CBP。熵编码单元46以类似于 upValue的方式来确定leftValue。明确地说,熵编码单元46在leftI16不等于“ 1 ”时将 leftValue设定为等于“0”,且在leftI16等于“1”时将leftValue设定为等于从I16value 函数传回的值。熵编码单元46基于附近块的块类型以及附近块的预测模式和CBP的值(即, upValue和leftValue)来预测当前块的预测模式值和CBP值(predValue)。如果upI16与 leftI16两者均等于“1” (即,两个附近块均具有帧内16X 16块类型),那么熵编码单元46 将predValue设定为等于upValue与leftValue中的最小值。尽管在实例伪码中,熵编码 单元46将predValue设定为等于upValue与leftValue中的最小值,但熵编码单元46可 将predValue设定为等于upValue与leftValue中的最大值或所述两个值的组合。当两个附近块不具有帧内16X16块类型时,熵编码单元46在只要upI16等于 “1”的情况下将predValue设定为等于upValue,且在只要leftI16等于“1”的情况下将 predValue设定为等于leftValue。以此方式,熵编码单元46使用具有帧内16X16块类 型的附近块的预测模式和CBP值来预测当前块的预测模式值和CBP值(predValue)。如果
23upI16或leftI16中没有一者等于“1”(即,附近块类型中没有一者为帧内16X 16),那么熵 编码单元46将predValue设定为等于“_1”。将predValue设定为等于“_1 ”指示不存在用 于预测当前块的预测模式值和CBP值(predValue)的附近块。熵编码单元46接着使用I16valUe函数来计算当前块的预测模式值和 CBP (currValue)。在计算currValue之后,熵编码单元46基于currValue与predValue的比 较来编码当前块的预测模式和CBP。如果predValue等于“_1”(即,不存在用于预测的附近 块),那么熵编码单元46使用2位固定长度码来编码当前块的预测模式(currPredMode)、 使用1位固定长度码来编码亮度CBP(currLumaCBP)且使用可变长度码字{0,10,11}来编 码色度 CBP (currChromaCBP)。用于currPredMode的2位固定长度码对应于四种预测模式中的一者。举例来说, 垂直预测模式可对应于码“00”,水平预测模式可对应于“01”,DC预测模式可对应于“ 10” 且平面预测模式可对应于“11”。用于currLumaCBP的1位固定长度码指示是否存在任何 非零亮度系数。举例来说,为“0”的currLumaCBP指示不存在非零亮度系数,且为“1”的 currLumaCBP指示存在至少一个非零亮度系数。用于currChromaCBP的可变长度码字指示 是否存在任何非零色度系数。举例来说,为“0”的currChromaCBP值指示所有色度AC与DC 系数为零,为“10”的currChromaCBP值指示存在至少一个非零色度DC系数但不存在非零 色度AC系数,且为“11”的currChromaCBP值指示存在至少一个非零色度DC系数和至少一 个非零色度AC系数。如果predValue不等于“_1 ”,那么熵编码单元46确定currValue是否等于 predValue,且如果如此,那么发送设定为等于“1”的1位旗标以指示预测成功。熵编码单 元46可不发送任何其它关于此视频块的预测模式或亮度/色度CBP的信息。事实上,1位 旗标向解码器指示预测值(predValue)是正确的,因此使得解码器能够以类似于上文所描 述的方式来使用由解码器预测的预测模式和亮度/色度CBP。以此方式,熵编码单元46通 过发送设定为等于“1”的1位旗标而将预测模式和亮度/色度CBP包裹在一起。发送1位 旗标以指示对预测模式和CBP值的预测是成功的减少了需要针对标头信息而被编码的位 数目。如果predValue不等于“_1”且不等于currValue,那么熵编码单元46将1位旗标 设定为等于“0”以向解码器指示预测失败(即,currValue不等于predValue)。在1位旗 标之后,熵编码单元46使用2位固定长度码来编码当前块的预测模式(currPredMode)、使 用1位固定长度码来编码亮度CBP (currLumaCBP)且使用可变长度码字{0,10,11}来编码 色度CBP (currChromaCBP),如上文所详细描述。因此,在此状况下,预测模式和经译码块模 式(CBP)分离地发送而不是被包裹在一起。在本发明的另一方面中,当对预测模式和亮度/色度CBP的预测失败时(即, currValue不等于predValue),熵编码单元46可尝试从一个或一个以上附近块的预测模式 来预测当前块的预测模式。换句话说,熵编码单元46可尝试预测预测模式而无需还试图预 测亮度和色度CBP。下文提供用于预测预测模式的实例伪码。PredI16mode(currMB){Let upMode be the prediction mode of the neighboring block
24directly above the current block ;Let leftModebe the prediction mode of the neighboring block directly tothe left of the current block ;If (upI16 & & leftI16)predMode = min(upMode, leftMode);Else if (upI16)predMode = upMode ;Else if(leftI16)predMode = leftMode ;ElsepredMode = _1 ;Let currPredMode be the 116 prediction mode for currMBIf (predMode == -1)send currPredMode using 2-bit FLCElse If (currPredMode == predMode)send flag “1”Else{sendflag “0”send currPredMode using codewords{0,10,11}}}熵编码单元46可分别将变量upMode和leftMode初始化为等于直接位于当前块 之上和直接位于当前块左边的附近块的预测模式。熵编码单元46基于一个或一个以上附 近块来预测当前块的预测模式(predMode)。如果upI16与leftI16两者均等于“ 1”(即, 两个附近块均具有帧内16 X 16块类型),那么熵编码单元46将predMode设定为upMode与 leftMode中的最小值。熵编码单元46可使用upMode与leftMode中的最大值或所述两者的 组合而非最小值。如果两个附近块均不是帧内16X16块类型,那么熵编码单元46在upI16 等于“1”的情况下将predMode设定为等于上附近块的预测模式(upMode),或在leftI16等 于“1”的情况下将predMode设定为等于左附近块的预测模式。如果upI16或leftI16中 没有一者等于“1”,那么熵编码单元46将predMode设定为等于“_1”,这指示不存在可用以 预测当前块的预测模式的帧内16X16附近块。熵编码单元46基于所预测的预测模式(predMode)来编码当前块的预测模式 (currPredMode)。如果predMode等于“_1”,那么熵编码单元46使用对应于四种可能预 测模式中的一者的2位固定长度码来编码currPredMode。另外,熵编码单元46使用1位 固定长度码来编码亮度CBP(currLumaCBP),且使用可变长度码字{0,10,11}来编码色度 CBP (currChromaCBP),如上文所描述。如果predMode不等于“_1 ”,那么熵编码单元46确定currPredMode是否等于predMode,且如果如此,那么发送等于“ 1 ”的1位旗标。熵编码单元46可不发送任何其它关于当前块的预测模式的信息。事实上,1位旗标向解码器指示对 预测模式的预测是成功的。解码器可因此将所预测的预测模式(predMode)用作当前块的 预测模式。熵编码单元46可仍使用1位固定长度码来编码currLumaCBP,且使用可变长度 码{0,10,11}来编码currChromaCBP。因此,对当前预测模式的成功预测可甚至在对预测模
式、亮度CBP和色度CBP的包裹件的预测失败时仍导致减少对当前块进行译码所需的位数目。如果predMode不等于“_1 ”或currPredMode,那么熵编码单元46将1位旗 标设定为等于“0”以向解码器指示对预测模式的预测失败(即,currPredMode不等于 predMode)。在1位旗标之后,熵编码单元46使用码字{0,10,11}来编码当前块的预测模 式(currPredMode)。因为currPredMode不等于predMode,所以仅存在剩余的三种其它可能 的预测模式。因此,熵编码单元46可使用可变长度码字{0,10,11}来编码currPredMode。 熵编码单元46还编码currLumaCBP和currChromaCBP,如上文所详细描述。图3是说明根据本发明的一方面经配置以编码视频块的实例熵编码单元46的框 图。熵编码单元46可驻存于图1和图2的视频编码器20内。熵编码单元46接收块的块 数据,且产生编码位流以用于发射到另一装置以进行解码。在图3的实例中,熵编码单元46 包括编码单元50、译码表选择单元52和语法元素预测单元54。编码单元50使用一个或一个以上译码表来编码块的块数据。编码单元50可从译 码表选择单元52获得译码表以用于编码。译码表选择单元52可存储若干译码表以编码不 同类型的数据。举例来说,译码表选择单元52可存储一个或一个以上用于编码残余信息的 译码表、一个或一个以上用于编码每一类型的标头语法元素的译码表、一个或一个以上用 于编码标头语法元素的包裹件的译码表等。在一些例子中,译码表选择单元52可不存储译 码表,而是改为从位于熵编码单元46外部的存储装置检索正确的译码表。译码表选择单元52可基于先前编码块的块类型来自适应地选择译码表以供编码 单元50使用来编码当前块的块类型语法元素。在一个方面中,译码表选择单元52可基于 一个或一个以上附近的视频块(例如,基于上附近块和左附近块,如上文所详细描述)来 自适应地选择译码表用于编码当前块的块类型。译码表选择单元52可(例如)在上附近 块和左附近块并非均具有帧内16 X 16块类型时选择将帧内4X 4或8 X 8块类型与短于帧 内16X16块类型的码字相关联的第一译码表,且在上附近块和左附近块两者均具有帧内 16X16块类型时选择将帧内16X 16块类型与短于帧内4X4或8X8块类型的码字相关联 的第二译码表。在另一方面中,译码表选择单元52可基于具有帧内16X16块类型的先前 编码块的百分比来选择译码表。编码单元50根据选定译码表来编码当前块的块类型语法 元素。在一些例子中,语法元素预测单元54可尝试基于先前编码块来预测当前块的一 个或一个以上其它语法元素。对于帧内预测块来说,例如,语法元素预测单元54可尝试预 测当前块的预测模式语法元素和亮度/色度CBP语法元素,和/或尝试预测当前块的预测 模式语法元素而不预测亮度/色度CBP语法元素。当附近块中的至少一者具有帧内16X16 块类型时,语法元素预测单元54可将当前块的预测模式和亮度/色度CBP预测为附近块中 的一者的预测模式和亮度/色度CBP。
编码单元50从语法元素预测单元54接收所预测的语法元素,且将所述所预测的 语法元素与当前块的实际语法元素相比较。如果预测成功(即,所预测的语法元素与实际 语法元素相同),那么编码单元50编码指示对语法元素(例如,上文的实例中的预测模式和 亮度/色度CBP)的预测成功的旗标。编码单元50因此将预测模式和亮度/色度CBP包裹 在一起,且使用旗标(例如,1位旗标)来表示所述预测模式和亮度/色度CBP,而不是分离 地编码每一语法元素,从而导致进一步减少用以编码所述语法元素的位数目。如果对预测模式、亮度CBP和色度CBP(或其它语法元素)的预测不成功,那么编 码单元50编码旗标以指示预测的失败。如果对预测模式和亮度/色度CBP的预测不成功, 那么语法元素预测单元54可尝试从先前块预测当前块的预测模式而不预测亮度/色度 CBP0举例来说,当附近块中的至少一者具有帧内16X16块类型时,语法元素预测单元54 可将当前块的预测模式预测为附近块中的一者的预测模式。编码单元50将当前块的预测模式与从语法预测单元54接收的所预测的预测模式 相比较,且如果预测成功,那么编码单元50编码指示对预测模式的预测成功的旗标。编码 单元50使用与亮度CBP和色度CBP相关联的相应译码表来分离地编码那些语法元素。如 果对预测模式的预测也不成功或未尝试预测预测模式,那么编码单元50使用从译码表选 择单元52检索的相应译码表来分离地编码所述语法元素中的每一者。图4是说明根据本发明的译码技术来解码视频数据的视频解码器26的实例的框 图。视频解码器26可(例如)对应于图1的接收装置14的视频解码器。视频解码器26 可执行视频帧内的块的帧内解码和帧间解码。在图4的实例中,视频解码器26包括熵解码 单元60、空间预测单元62、运动补偿单元63、反量化单元64、反变换单元66和帧存储件68。 视频解码器26还包括加法器69,其将反变换单元66的输出分别与运动补偿单元63或空间 预测单元62 (取决于视频块经帧间编码还是帧内编码)的输出组合。图4说明用于帧内解 码视频块的视频解码器26的空间预测组件。熵解码单元60接收编码视频位流,且解码所述编码位流以获得残余信息(例如, 呈量化的残余系数的形式)和标头信息(例如,呈一个或一个以上标头语法元素的形式)。 如上文所详细描述,熵编码单元46 (图2)基于先前编码块的块类型来自适应地选择译码表 (例如,码簿)以用于编码块类型。熵解码单元60因此可以类似于熵编码单元46的方式来 自适应地选择译码表用于解码块类型,以正确地解码当前块的块类型。在一个方面中,熵解码单元60基于当前切片的一个或一个以上附近块(即,邻近 的视频块)来自适应地选择译码表用于解码当前块的块类型。对于不具有先前编码的邻近 视频块的视频块来说(例如对于帧的第一视频块来说),熵解码单元60可选择默认译码表。 所述默认译码表可(例如)是将短于指派给帧内16X16块类型的码字的码字指派给帧内 4X4和8X8块类型的译码表。对于切片内的视频块(对于其来说存在先前解码的邻近视 频块)来说,熵解码单元60可在选择用于解码的译码表时分析任何位置处的任何数目的附 近块。然而,出于说明的目的,将把熵解码单元60描述为基于上附近块和左附近块来自适 应地选择译码表用于解码块的块类型。在帧内预测块类型的状况下,例如,当上附近块和左附近块两者均具有帧内 16X16块类型时,熵解码单元60可选择将短于帧内4X4或8X8块类型的码字与帧内 16X16块类型相关联的译码表。在上附近块和左附近块两者均具有帧内16X16块类型时所选择的译码表可(例如)分别将码字“0”、“10”和“11”关联到帧内16X16块类型、帧内 4X4或8X8块类型和原始像素数据块类型(IPCM)。当上附近块与左附近块两者均不具有 帧内16X16块类型时,熵解码单元60可选择将较短可变长度码字与帧内4X4/8X8块类 型相关联且将较长码字与帧内16X16块类型相关联的译码表。熵解码单元60使用基于附 近块所选择的译码表来解码当前块的块类型。尽管在上文所描述的实例中熵解码单元60基于附近块来选择译码表,但熵解码 单元60可基于其它准则来选择译码表。举例来说,熵解码单元60可基于具有帧内16X16 块类型的先前编码块的百分比超过阈值(例如,最后20个先前编码块中的至少10个具有 帧内16X16块类型)来选择译码表。此外,熵解码单元60可自适应地选择译码表用于除 帧内编码块外还解码帧间编码块的块类型。熵解码单元60另外解码当前块的预测模式、亮度CBP和色度CBP。如上文所描述, 熵编码单元46(图2)可从一个或一个以上附近块的语法元素来预测当前块的一个或一个 以上其它语法元素(例如,预测模式和亮度/色度CBP)。在预测成功的例子中,熵编码单 元46将预测模式和亮度/色度CBP包裹在一起,且发射指示预测成功的旗标(例如,1位旗 标)。因此,熵解码单元60也可以与熵编码单元46相同的方式执行对一个或一个以上语法 元素的预测。举例来说,熵解码单元60可从先前块(例如,上附近块和左附近块)中的一 者或一者以上来预测当前块的预测模式语法元素和亮度/色度CBP语法元素。当附近块中 的至少一者具有帧内16 X 16块类型时,熵解码单元60可将当前块的预测模式和亮度/色 度CBP预测为附近块中的一者的预测模式和亮度/色度CBP。如果编码位流中的旗标指示 对预测模式和CBP的预测成功,那么熵解码单元60将所预测的预测模式和CBP选择作为当 前块的预测模式和CBP。当编码位流的旗标指示预测不成功时,熵解码单元60将预测模式、亮度CBP和色 度CBP接收作为单独码字。熵解码单元60可使用具有2位固定长度码的译码表来解码预 测模式,所述2位固定长度码对应于四种帧内16X16预测模式中的一者。举例来说,垂直 预测模式可对应于码字“00”,水平预测模式可对应于码字“01”,DC预测模式可对应于码字 “10”且平面预测模式可对应于码字“11”。熵解码单元60可使用具有1位固定长度码字的 译码表来解码亮度CBP (其指示是否存在任何非零亮度系数)。熵解码单元60可使用具有 可变长度码字的译码表来解码色度CBP (其指示是否存在任何非零色度系数)。举例来说, 色度译码表可包括码字“0”,其用以指示所有色度AC和DC系数为零;码字“10”,其用以指 示存在至少一个非零色度DC系数但不存在非零色度AC系数;和码字“ 11 ”,其用以指示存 在至少一个非零色度DC系数和至少一个非零色度AC系数。在一些方面中,当对预测模式和亮度/色度CBP的组合的预测失败时,熵编码单元46(图2)可尝试预测预测模式,且编码指示对预测模式的预测是否成功的旗标。熵解码单 元60因此也可基于一个或一个以上附近块来执行对预测模式的预测。举例来说,当附近块 中的至少一者具有帧内16X 16块类型时,熵解码单元60可将当前块的预测模式预测为附 近块中的一者的预测模式。如果旗标指示对预测模式的预测成功,那么熵解码单元60将所 预测的预测模式选择作为当前块的预测模式。如果旗标指示预测不成功或熵解码单元60 未经配置以预测预测模式,那么熵解码单元60分离地解码预测模式。在由熵解码单元60执行对编码视频数据的熵解码之后,视频解码器26使用标头信息和残余信息来逐块地重建视频序列的帧。熵解码单元60使用标头信息的至少一部分 来产生预测块。举例来说,在帧内编码块(或切片)的状况下,熵解码单元60可将标头信 息的至少一部分(例如此块的块类型和预测模式)提供到空间预测单元62以用于产生预 测块。空间预测单元62根据标头信息而使用共同切片内的一个或一个以上邻近块(或所 述邻近块的部分)来产生预测块。空间预测单元30可(例如)使用由预测模式语法元素 规定的帧内预测模式来产生具有由块类型语法元素指示的分割大小的预测块。可(例如) 从帧存储件68检索当前切片内的一个或一个以上邻近块(或所述邻近块的部分)。在帧间编码块(或切片)的状况下,熵解码单元60可将标头信息的至少一部分提 供到运动补偿单元63以用于产生预测块。运动补偿单元63可(例如)从熵解码单元60 接收一个或一个以上运动向量和块类型且从参考帧存储 件68接收一个或一个以上经重建 的参考帧,并产生预测块(即,运动补偿块)。熵解码单元60将残余信息(例如,呈一个或一个以上经量化的残余系数的形式) 提供到反量化单元64。反量化单元64反量化(即,解量化)所述经量化的残余系数。反 变换单元66将反变换(例如,反DCT或者反4X4或8X8整数变换)应用于解量化的残余 系数以产生残余信息。加法器69将由空间预测单元62所产生的预测块与来自反变换单元 66的残余块相加以形成解码块。基于块的视频译码有时可在经译码视频帧的块边界处产生在视觉上可感知的块 效应(blockiness)。在此类状况下,解块滤波可使块边界平滑以减少或消除在视觉上可感 知的块效应。因而,还可应用解块滤波器(未图示)对解码块进行滤波以便减少或移除块 效应。在进行任何可选的解块滤波之后,接着将经重建的块放置于帧存储件68中,所述帧 存储件68为空间与时间预测提供参考块,且还产生解码视频以驱动显示装置(例如图1的 显示装置28)。图5是进一步详细说明实例解码单元(例如视频解码器26的熵解码单元60)的 框图。熵解码单元60接收块的编码视频数据,并解码所述视频数据以产生呈残余信息和标 头信息的形式的块数据。在图3的实例中,熵编码单元46包括解码单元70、译码表选择单 元71和语法元素预测单元72。译码表选择单元71和语法元素预测单元72大体上类似于图3的译码表选择单元 52和语法元素选择单元54。如上文详细描述,译码表选择单元71基于先前解码块的块类 型来自适应地选择译码表以供解码单元70使用来解码当前块的块类型语法元素。语法元 素预测单元72基于至少一个先前解码块来预测当前块的一个或一个以上其它语法元素, 且将所预测的语法元素提供到解码单元70。解码单元70从语法元素预测单元72接收所预 测的语法元素,且如果编码位流中的旗标指示编码器处的成功预测,那么解码单元70将所 预测的语法元素选择作为当前块的语法元素。图6是说明根据本发明的技术来编码视频块的标头信息的编码单元(例如视频编 码器20的熵编码单元46)的实例操作的流程图。在编码块的块类型语法元素的上下文中 描述图6。然而,如上文所描述,可进一步应用本发明的技术以自适应地选择译码表用于对 当前视频块的其它语法元素(例如预测模式、亮度CBP、色度CBP、块分割、运动向量等)进 行译码。熵编码单元46接收待编码的视频块的标头信息(73)。视频块的标头信息可包括 若干识别块的特定特性的语法元素(例如块类型、预测模式、亮度CBP和色度CBP)。
熵编码单元46基于先前编码块的块类型来自适应地选择译码表用于编码块的块 类型(74)。在一个实例中,熵编码单元46可基于一个或一个以上附近视频块(例如,基于 上附近块和左附近块的块类型)来自适应地选择译码表用于编码当前块的块类型。对于帧 内编码块来说,熵编码单元46可在上附近块和左附近块并非均具有帧内16X 16块类型时 选择将帧内4 X 4或8 X 8块类型与短于帧内16 X 16块类型的码字相关联的译码表,且在上 附近块和左附近块两者均具有帧内16X16块类型时选择将帧内16X16块类型与短于帧内 4X4或8X8块类型的码字相关联的译码表。熵编码单元46根据选定译码表来编码块的块 类型(75)。熵编码单元46从一个或一个以上先前编码块确定是否预测当前块的预测模式、 亮度CBP和色度CBP (76)。当熵编码单元46经配置以预测预测模式、亮度CBP和色度CBP 时,熵编码单元46产生那些预测(78)。举例来说,当附近块中的至少一者具有帧内16X16 块类型时,熵编码单元46可将当前块的预测模式和亮度/色度CBP预测为附近块中的一者 的预测模式和亮度/色度CBP。熵编码单元46确定当前块的预测模式和亮度/色度CBP是否与所预测的预测模 式和亮度/色度CBP相同(80)。如果预测模式和亮度/色度CBP与所预测的预测模式和 亮度/色度CBP相同,那么熵编码单元46编码指示对模式和CBP的预测成功的旗标(82)。 熵编码单元46发射编码位流(84)。在此状况下,所述编码位流包括编码块类型语法元素和 编码旗标。如果所预测的预测模式和亮度/色度CBP与当前块的预测模式和亮 度/色度CBP 不同,那么熵编码单元46编码旗标以指示预测不成功(86)。在编码旗标以指示对模式和 CBP的预测不成功之后或当熵编码单元46不执行对模式和CBP的预测时,熵编码单元46确 定是否预测当前块的预测模式(88)。当熵编码单元46并未经配置以预测预测模式时,熵编 码单元46分离地编码剩余的标头语法元素(96)。在此状况下,剩余标头语法元素包括块类 型、预测模式和亮度与色度CBP。当熵编码单元46经配置以预测预测模式时,熵编码单元 46可在附近块中的至少一者具有帧内16X 16块类型时将当前块的预测模式预测为附近块 中的一者的预测模式(90)。熵编码单元46确定当前块的预测模式是否与所预测的预测模式相同(92)。如果 当前块的预测模式与所预测的预测模式相同,那么熵编码单元46编码旗标以指示对预测 模式的预测成功(94)。熵编码单元46另外分离地编码剩余的标头语法元素(96)。在此状 况下,剩余的标头语法元素包括亮度CBP和色度CBP。如果当前块的预测模式与所预测的预测模式不同,那么熵编码单元46编码旗标 以指示对预测模式的预测不成功(98)。熵编码单元46分离地编码剩余的标头语法元素 (96)。在此状况下,剩余的标头语法元素包括预测模式以及亮度与色度CBP。在编码剩余的 语法元素之后,熵编码单元46发射编码位流(84)。熵编码单元46可在产生编码数据时发 射所述编码数据(例如,当在编码旗标之后产生编码块类型时发射所述编码块类型)。或 者,熵编码单元46可存储块的编码数据并同时发射块的编码数据。或者,熵编码单元46可 存储切片中的所有块的编码数据,且同时发射切片中的所有块的编码数据。图7是说明根据本发明的技术来解码视频块的标头信息的解码单元(例如接收视 频解码器26的熵解码单元60)的实例操作的流程图。在解码块的块类型语法元素的上下文中描述图7。然而,如上文所描述,可进一步应用本发明的技术以自适应地选择译码表用 于解码当前视频块的其它语法元素(例如预测模式、亮度CBP、色度CBP、块分割、运动向量 等)。熵解码单元60接收编码视频块(100)。熵解码单元60自适应地选择译码表用于解 码编码块的块类型(102)。在一个方面中,熵解码单元60基于当前切片的一个或一个以上 先前解码块的块类型来自适应地选择译码表用于解码当前块的块类型。对于帧内编码块来 说,例如,熵解码单元60可在上附近块和左附近块两者均具有帧内16 X 16块类型时选择将 短于帧内4X4或8X8块类型的码字关联到帧内16X 16块类型的译码表,且在上附近块和 左附近块中的至少一者不具有帧内16X16块类型时选择将短于帧内16X16块类型的码字 关联到帧内4X4/8X8块类型的译码表。在其它方面中,熵解码单元60可基于其它准则 (例如,基于具有帧内16X16块类型的先前解码块的百分比)来选择译码表。为了维持编 码器与解码器同步,编码器和解码器使用相同准则来选择译码表。熵解码单元60使用选定 译码表来解码当前块的块类型(104)。
熵解码单元60还可从一个或一个以上附近块的预测模式和亮度/色度CBP来预 测当前块的预测模式和亮度/色度CBP(106)。举例来说,当附近块中的至少一者具有帧内 16 X 16块类型时,熵解码单元60可将当前块的预测模式和亮度/色度CBP预测为附近块中 的一者的预测模式和亮度/色度CBP。熵解码单元60可确定编码位流中的旗标是否指示对 预测模式和CBP的预测成功(108)。如果编码位流中的旗标指示对预测模式和CBP的预测 成功(例如,表示预测的成功的旗标等于1),那么熵解码单元60可将所预测的预测模式和 CBP选择作为当前块的预测模式和CBP(IlO)。当对预测模式和亮度/色度CBP的预测不成功时(例如,表示预测的成功的旗标 等于0),熵解码单元60可从一个或一个以上附近块的预测模式来预测所述块的预测模式 (112)。举例来说,当附近块中的至少一者具有帧内16X16块类型时,熵解码单元60可将 当前块的预测模式预测为附近块中的一者的预测模式。熵解码单元60确定编码位流中的 旗标是否指示对预测模式的预测成功(114)。所述旗标可(例如)在对预测模式的预测成 功时设定为1,且在对预测模式的预测不成功时设定为0。如果旗标指示对预测模式的预测 成功,那么熵解码单元60将所预测的预测模式选择作为当前块的预测模式(116)。在将所预测的预测模式选择作为当前块的预测模式之后或当旗标指示对预测模 式的预测不成功时,熵解码单元60使用相应译码表来分离地解码块的剩余标头语法元素 (118)。当成功地预测预测模式时,由熵解码单元60解码的剩余标头语法元素包括亮度和 色度CBP。当对预测模式的预测不成功时,由熵解码单元60解码的剩余标头语法元素包括 使用相应译码表的预测模式、亮度CBP和色度CBP(IlS)。可用硬件、软件、固件或其任何组合来实施本发明中所描述的技术。可将任何被 描述为单元或组件的特征一同实施于集成逻辑装置中或分离地实施为离散但可共同操作 的逻辑装置。如果以软件实施,那么可至少部分地由计算机可读媒体来实现所述技术,所 述计算机可读媒体包含在加以执行时执行上文所描述的方法中的一者或一者以上的指 令。所述计算机可读媒体可形成计算机程序产品的一部分,所述计算机程序产品可包括封 装材料。计算机可读媒体可包含随机存取存储器(RAM)(例如同步动态随机存取存储器 (SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存 储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体等。另外或作为替代,所述技术可至少部分地由计算机可读通信媒体来实现,所述计算机可读通信媒体携载或传送代码,所述 程序码呈指令或数据结构的形式且可由计算机来存取、读取和/或执行。所述代码可由一个或一个以上处理器(例如一个或一个以上数字信号处理器 (DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成 或离散逻辑电路)来执行。因此,如本文中所使用的术语“处理器”可指代上述结构中的任 一者或任何其它适合用于实施本文中所描述的技术的结构。另外,在一些方面中,可将本文 中所描述的功能性提供于经配置以用于编码和解码的专用软件单元或硬件单元内,或并入 于组合式视频编码器_解码器(CODEC)中。将不同特征描绘为单元希望突出所说明的装置 的不同功能方面,且未必暗示此类单元必须由单独的硬件或软件组件来实现。事实上,可将 与一个或一个以上单元相关联的功能性集成于共同或单独的硬件或软件组件内。已描述了本发明的各种实施例。这些和其它实施例在所附权利 要求书的范围内。
权利要求
一种编码视频数据的方法,所述方法包含基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语法元素;以及使用所述选定译码表来编码所述当前视频块的所述语法元素。
2.根据权利要求1所述的方法,其中所述当前视频块的所述语法元素包含所述当前视 频块的块类型,且选择所述译码表包含当所述一个或一个以上先前编码视频块具有第一块 类型的块类型时选择将所述第一块类型与短于其它块类型的码字相关联的译码表。
3.根据权利要求2所述的方法,其中选择所述译码表包含当所述一个或一个以上先前 编码视频块中的至少一者不具有所述第一块类型的块类型时选择将所述其它块类型中的 至少一者与短于与所述第一块类型相关联的码字的码字相关联的译码表。
4.根据权利要求3所述的方法,其中所述第一块类型是帧内16X16块类型,且所述其 它块类型至少包括帧内4X4块类型和帧内8X8块类型。
5.根据权利要求1所述的方法,其中所述语法元素包含所述当前视频块的第一标头语 法元素,所述方法进一步包含基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视频块的至少一 个其它标头语法元素;以及当所述至少一个所预测的标头语法元素与所述当前视频块的实际标头语法元素相同 时,编码旗标以指示对所述至少一个其它标头语法元素的所述预测成功。
6.根据权利要求5所述的方法,其中预测所述当前视频块的至少一个其它标头语法元素包含基于所述一个或一个以上先 前编码视频块中的一者来预测所述当前视频块的预测模式、亮度经译码块模式(CBP)和色 度CBP ;以及编码所述旗标包含当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块 的实际预测模式、亮度CBP和色度CBP相同时编码所述旗标以指示对所述预测模式、所述亮 度CBP和所述色度CBP的所述预测成功。
7.根据权利要求6所述的方法,其进一步包含当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的所述实际预测模 式、亮度CBP和色度CBP不同时,编码所述旗标以指示对所述预测模式、所述亮度CBP和所 述色度CBP的所述预测不成功;以及分别地编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
8.根据权利要求7所述的方法,其中所述旗标是第一旗标,且分别地编码所述预测模 式、所述亮度CBP和所述色度CBP中的每一者包含基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视频块的所述预 测模式;以及当所述所预测的预测模式与所述当前视频块的所述实际预测模式相同时,编码第二旗 标以指示对所述预测模式的所述预测成功。
9.根据权利要求1所述的方法,其中选择所述译码表包含基于邻近于所述当前视频块 的一个或一个以上先前编码视频块的所述对应语法元素来选择所述译码表。
10.根据权利要求9所述的方法,其中所述邻近于所述当前视频块的一个或一个以上先前编码视频块至少包含直接位于所述当前视频块之上的第一先前编码邻近视频块和直 接位于所述当前视频块左边的第二先前编码邻近视频块。
11.根据权利要求1所述的方法,其进一步包含发射所述编码的语法元素。
12.根据权利要求1所述的方法,其中所述语法元素包含块类型、预测模式、经译码块 模式(CBP)和块分割中的一者。
13.根据权利要求1所述的方法,其中所述经译码单元包含帧和切片中的一者。
14.一种包含编码单元的编码装置,所述编码单元包括选择单元,其基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选 择译码表以用于编码所述经译码单元的当前视频块的语法元素;以及译码单元,其使用所述选定译码表来编码所述当前视频块的所述语法元素。
15.根据权利要求14所述的装置,其中所述当前视频块的所述语法元素包含所述当前 视频块的块类型,且当所述一个或一个以上先前编码视频块具有第一块类型的块类型时所 述选择单元选择将所述第一块类型与短于其它块类型的码字相关联的译码表。
16.根据权利要求15所述的装置,其中当所述一个或一个以上先前编码视频块中的至 少一者不具有所述第一块类型的块类型时,所述选择单元选择将所述其它块类型中的至少 一者与短于与所述第一块类型相关联的码字的码字相关联的译码表。
17.根据权利要求16所述的装置,其中所述第一块类型是帧内16X16块类型,且所述 其它块类型至少包括帧内4X4块类型和帧内8X8块类型。
18.根据权利要求14所述的装置,其中所述语法元素包含所述当前视频块的第一标头 语法元素,所述装置进一步包含预测单元,其基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视频 块的至少一个其它标头语法元素;其中当所述至少一个所预测的标头语法元素与所述当前视频块的实际标头语法元素 相同时,所述译码单元编码旗标以指示对所述至少一个其它标头语法元素的所述预测成 功。
19.根据权利要求18所述的装置,其中所述预测单元基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视 频块的预测模式、亮度经译码块模式(CBP)和色度CBP;以及当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的实际预测模式、 亮度CBP和色度CBP相同时,所述译码单元编码所述旗标以指示对所述预测模式、所述亮度 CBP和所述色度CBP的所述预测成功。
20.根据权利要求19所述的装置,其中当所述所预测的预测模式、亮度CBP和色度CBP 与所述当前视频块的所述实际预测模式、亮度CBP和色度CBP不同时,所述译码单元编码所 述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测不成功,且分别地 编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
21.根据权利要求20所述的装置,其中所述旗标是第一旗标,且所述预测单元基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视 频块的所述预测模式;以及当所述所预测的预测模式与所述当前视频块的所述实际预测模式相同时,所述译码单元编码第二旗标以指示对所述预测模式的所述预测成功。
22.根据权利要求14所述的装置,其中所述选择单元基于所述邻近于所述当前视频块 的一个或一个以上先前编码视频块的所述对应语法元素来选择所述译码表。
23.根据权利要求22所述的装置,其中所述邻近于所述当前视频块的一个或一个以上 先前编码视频块至少包含直接位于所述当前视频块之上的第一先前编码邻近视频块和直 接位于所述当前视频块左边的第二先前编码邻近视频块。
24.根据权利要求14所述的装置,其进一步包含发射所述编码的语法元素的发射器。
25.根据权利要求14所述的装置,其中所述语法元素包含块类型、预测模式、经译码块 模式(CBP)和块分割中的一者。
26.根据权利要求14所述的装置,其中所述经译码单元包含帧和切片中的一者。
27.根据权利要求14所述的装置,其中所述装置包含无线通信装置。
28.根据权利要求14所述的装置,其中所述装置包含集成电路装置。
29.一种计算机可读媒体,其包含用以促使处理器进行以下动作的指令基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以 用于编码所述经译码单元的当前视频块的语法元素;以及使用所述选定译码表来编码所述当前视频块的所述语法元素。
30.根据权利要求29所述的计算机可读媒体,其中所述当前视频块的所述语法元素包 含所述当前视频块的块类型,且用以促使所述处理器选择所述译码表的指令包含用以促使 所述处理器在所述一个或一个以上先前编码视频块具有第一块类型的块类型时选择将所 述第一块类型与短于其它块类型的码字相关联的译码表的指令。
31.根据权利要求30所述的计算机可读媒体,其中用以促使所述处理器选择所述译码 表的指令包含用以促使所述处理器在所述一个或一个以上先前编码视频块中的至少一者 不具有所述第一块类型的块类型时选择将所述其它块类型中的至少一者与短于与所述第 一块类型相关联的码字的码字相关联的译码表的指令。
32.根据权利要求31所述的计算机可读媒体,其中所述第一块类型是帧内16X16块类 型,且所述其它块类型至少包括帧内4X4块类型和帧内8X8块类型。
33.根据权利要求29所述的计算机可读媒体,其中所述语法元素包含所述当前视频块 的第一标头语法元素,所述计算机可读媒体进一步包含用以促使所述处理器进行以下动作 的指令基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视频块的至少一 个其它标头语法元素;以及当所述至少一个所预测的标头语法元素与所述当前视频块的实际标头语法元素相同 时,编码旗标以指示对所述至少一个其它标头语法元素的所述预测成功。
34.根据权利要求33所述的计算机可读媒体,其中用以促使所述处理器预测所述当前视频块的至少一个其它标头语法元素的指令包含 用以促使所述处理器基于所述一个或一个以上先前编码视频块中的一者来预测所述当前 视频块的预测模式、亮度经译码块模式(CBP)和色度CBP的指令;以及用以促使所述处理器编码所述旗标的指令包含用以促使所述处理器在所述所预测的 预测模式、亮度CBP和色度CBP与所述当前视频块的实际预测模式、亮度CBP和色度CBP相同时编码所述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测成功 的指令。
35.根据权利要求34所述的计算机可读媒体,其进一步包含用以促使所述处理器进行 以下动作的指令当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的所述实际预测模 式、亮度CBP和色度CBP不同时,编码所述旗标以指示对所述预测模式、所述亮度CBP和所 述色度CBP的所述预测不成功;以及分别地编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
36.根据权利要求35所述的计算机可读媒体,其中所述旗标是第一旗标,且用以促使 所述处理器分别地编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者的指令包 含用以促使所述处理器进行以下动作的指令基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视频块的所述预 测模式;以及当所述所预测的预测模式与所述当前视频块的所述实际预测模式相同时,编码第二旗 标以指示对所述预测模式的所述预测成功。
37.根据权利要求29所述的计算机可读媒体,其中用以促使所述处理器选择所述译码 表的指令包含用以促使所述处理器基于邻近于所述当前视频块的一个或一个以上先前编 码视频块的所述对应语法元素来选择所述译码表的指令。
38.根据权利要求37所述的计算机可读媒体,其中所述邻近于所述当前视频块的一个 或一个以上先前编码视频块至少包含直接位于所述当前视频块之上的第一先前编码邻近 视频块和直接位于所述当前视频块左边的第二先前编码邻近视频块。
39.根据权利要求29所述的计算机可读媒体,其进一步包含用以促使所述处理器发射 所述编码的语法元素的指令。
40.根据权利要求29所述的计算机可读媒体,其中所述语法元素包含块类型、预测模 式、经译码块模式(CBP)和块分割中的一者。
41.根据权利要求29所述的计算机可读媒体,其中所述经译码单元包含帧和切片中的 “"者 ο
42.一种编码装置,其包含用于基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语法元素的装置;以及用于使用所述选定译码表来编码所述当前视频块的所述语法元素的装置。
43.根据权利要求42所述的装置,其中所述当前视频块的所述语法元素包含所述当前 视频块的块类型,且当所述一个或一个以上先前编码视频块具有第一块类型的块类型时, 所述选择装置选择将所述第一块类型与短于其它块类型的码字相关联的译码表。
44.根据权利要求43所述的装置,其中当所述一个或一个以上先前编码视频块中的至 少一者不具有所述第一块类型的块类型时,所述选择装置选择将所述其它块类型中的至少 一者与短于与所述第一块类型相关联的码字的码字相关联的译码表。
45.根据权利要求44所述的装置,其中所述第一块类型是帧内16X16块类型,且所述 其它块类型至少包括帧内4X4块类型和帧内8X8块类型。
46.根据权利要求42所述的装置,其中所述语法元素包含所述当前视频块的第一标头 语法元素,所述装置进一步包含用于基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视频块的至 少一个其它标头语法元素的装置;其中当所述至少一个所预测的标头语法元素与所述当前视频块的实际标头语法元素 相同时,所述编码装置编码旗标以指示对所述至少一个其它标头语法元素的所述预测成 功。
47.根据权利要求46所述的装置,其中所述预测装置基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视 频块的预测模式、亮度经译码块模式(CBP)和色度CBP ;以及当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的实际预测模式、 亮度CBP和色度CBP相同时,所述编码装置编码所述旗标以指示对所述预测模式、所述亮度 CBP和所述色度CBP的所述预测成功。
48.根据权利要求47所述的装置,其中当所述所预测的预测模式、亮度CBP和色度CBP 与所述当前视频块的所述实际预测模式、亮度CBP和色度CBP不同时,所述编码装置编码所 述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测不成功,且分别地 编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
49.根据权利要求48所述的装置,其中所述旗标是第一旗标,且所述预测装置基于所述一个或一个以上先前编码视频块中的一者来预测所述当前视 频块的所述预测模式;以及当所述所预测的预测模式与所述当前视频块的所述实际预测模式相同时,所述编码装 置编码第二旗标以指示对所述预测模式的所述预测成功。
50.根据权利要求42所述的装置,其中所述选择装置基于邻近于所述当前视频块的一 个或一个以上先前编码视频块的所述对应语法元素来选择所述译码表。
51.根据权利要求50所述的装置,其中所述邻近于所述当前视频块的一个或一个以上 先前编码视频块至少包含直接位于所述当前视频块之上的第一先前编码邻近视频块和直 接位于所述当前视频块左边的第二先前编码邻近视频块。
52.根据权利要求42所述的装置,其进一步包含用于发射所述经编码语法元素的装置。
53.根据权利要求42所述的装置,其中所述语法元素包含块类型、预测模式、经译码块 模式(CBP)和块分割中的一者。
54.根据权利要求42所述的装置,其中所述经译码单元包含帧和切片中的一者。
55.一种解码视频数据的方法,所述方法包含基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码表以 用于解码所述经译码单元的当前视频块的语法元素;以及使用所述选定译码表来解码所述当前视频块的所述语法元素。
56.根据权利要求55所述的方法,其中所述当前视频块的所述语法元素包含所述当前 视频块的块类型,且选择所述译码表包含当所述一个或一个以上先前解码视频块具有第一 块类型的块类型时选择将所述第一块类型与短于其它块类型的码字相关联的译码表。
57.根据权利要求56所述的方法,其中选择所述译码表包含当所述一个或一个以上先 前解码视频块中的至少一者不具有所述第一块类型的块类型时选择将所述其它块类型中 的至少一者与短于与所述第一块类型相关联的码字的码字相关联的译码表。
58.根据权利要求57所述的方法,其中所述第一块类型是帧内16X16块类型,且所述 其它块类型至少包括帧内4X4块类型和帧内8X8块类型。
59.根据权利要求55所述的方法,其中所述语法元素包含所述当前视频块的第一标头 语法元素,所述方法进一步包含基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视频块的至少一 个其它标头语法元素;以及当旗标指示对所述语法元素的所述预测成功时,将所述至少一个所预测的语法元素选 择作为所述当前视频块的所述语法元素。
60.根据权利要求59所述的方法,其中预测所述当前视频块的至少一个其它标头语法元素包含基于所述一个或一个以上先 前解码视频块中的一者来预测所述当前视频块的预测模式、亮度经译码块模式(CBP)和色 度CBP ;以及选择所述至少一个所预测的语法元素包含当旗标指示对所述预测模式、所述亮度CBP 和所述色度CBP的所述预测成功时将所述所预测的预测模式、亮度CBP和色度CBP选择作 为所述当前视频块的所述预测模式、亮度CBP和色度CBP。
61.根据权利要求60所述的方法,其进一步包含当所述旗标指示对所述预测模式、所 述亮度CBP和所述色度CBP的所述预测不成功时分别地解码所述预测模式、所述亮度CBP 和所述色度CBP中的每一者。
62.根据权利要求61所述的方法,其中所述旗标是第一旗标,且分别地解码所述预测 模式、所述亮度CBP和所述色度CBP中的每一者包含基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视频块的所述预 测模式;以及当第二旗标指示对所述预测模式的所述预测成功时,将所述所预测的预测块选择作为 所述当前视频块的所述预测模式。
63.根据权利要求55所述的方法,其中选择所述译码表包含基于邻近于所述当前视频 块的一个或一个以上先前解码视频块的所述对应语法元素来选择所述译码表。
64.根据权利要求63所述的方法,其中所述邻近于所述当前视频块的一个或一个以上 先前解码视频块至少包含直接位于所述当前视频块之上的第一先前解码邻近视频块和直 接位于所述当前视频块左边的第二先前解码邻近视频块。
65.根据权利要求55所述的方法,其中所述语法元素包含块类型、预测模式、经译码块模式(CBP)和块分割中的一者;以及所述经译码单元包含帧和切片中的一者。
66.一种解码装置,其包含选择单元,其基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选 择译码表以用于解码所述经译码单元的当前编码视频块的语法元素;以及解码单元,其使用所述选定译码表来解码所述当前视频块的所述语法元素。
67.根据权利要求66所述的装置,其中所述当前视频块的所述语法元素包含所述当前 视频块的块类型,且当所述一个或一个以上先前解码视频块具有第一块类型的块类型时, 所述选择单元选择将所述第一块类型与短于其它块类型的码字相关联的译码表。
68.根据权利要求67所述的装置,其中当所述一个或一个以上先前解码视频块中的至 少一者不具有所述第一块类型的块类型时,所述选择单元选择将所述其它块类型中的至少 一者与短于与所述第一块类型相关联的码字的码字相关联的译码表。
69.根据权利要求68所述的装置,其中所述第一块类型是帧内16X16块类型,且所述 其它块类型至少包括帧内4X4块类型和帧内8X8块类型。
70.根据权利要求67所述的装置,其中所述语法元素包含所述当前视频块的第一标头 语法元素,所述装置进一步包含预测单元,其基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视频 块的至少一个其它标头语法元素;其中当旗标指示对所述语法元素的所述预测成功时,所述解码单元将所述至少一所预 测的语法元素选择作为所述当前视频块的所述语法元素。
71.根据权利要求70所述的装置,其中所述预测单元基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视 频块的预测模式、亮度经译码块模式(CBP)和色度CBP ;以及当旗标指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测成功时,所述解 码单元将所述所预测的预测模式、亮度CBP和色度CBP选择作为所述当前视频块的所述预 测模式、亮度CBP和色度CBP。
72.根据权利要求71所述的装置,其中当所述旗标指示对所述预测模式、所述亮度CBP 和所述色度CBP的所述预测不成功时,所述解码单元分别地解码所述预测模式、所述亮度 CBP和所述色度CBP中的每一者。
73.根据权利要求72所述的装置,其中所述旗标是第一旗标,且所述预测单元基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视 频块的所述预测模式;以及当第二旗标指示对所述预测模式的所述预测成功时,所述解码单元将所述所预测的预 测块选择作为所述当前视频块的所述预测模式。
74.根据权利要求66所述的装置,其中所述选择单元基于邻近于所述当前视频块的一 个或一个以上先前解码视频块的所述对应语法元素来选择所述译码表。
75.根据权利要求74所述的装置,其中所述邻近于所述当前视频块的一个或一个以上 先前解码视频块至少包含直接位于所述当前视频块之上的第一先前解码邻近视频块和直 接位于所述当前视频块左边的第二先前解码邻近视频块。
76.根据权利要求66所述的装置,其中所述装置包含无线通信装置。
77.根据权利要求66所述的装置,其中所述装置包含集成电路装置。
78.根据权利要求66所述的装置,其中所述语法元素包含块类型、预测模式、经译码块模式(CBP)和块分割中的一者;以及所述经译码单元包含帧和切片中的一者。
79.一种计算机可读媒体,其包含用以促使处理器进行以下动作的指令基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码表以 用于解码所述经译码单元的当前编码视频块的语法元素;以及使用所述选定译码表来解码所述当前视频块的所述语法元素。
80.根据权利要求79所述的计算机可读媒体,其中所述当前视频块的所述语法元素包 含所述当前视频块的块类型,且用以促使所述处理器选择所述译码表的指令包含用以促使 所述处理器在所述一个或一个以上先前解码视频块具有第一块类型的块类型时选择将所 述第一块类型与短于其它块类型的码字相关联的译码表的指令。
81.根据权利要求80所述的计算机可读媒体,其中用以促使所述处理器选择所述译码 表的指令包含用以促使所述处理器在所述一个或一个以上先前解码视频块中的至少一者 不具有所述第一块类型的块类型时选择将所述其它块类型中的至少一者与短于与所述第 一块类型相关联的码字的码字相关联的译码表的指令。
82.根据权利要求81所述的计算机可读媒体,其中所述第一块类型是帧内16X16块类 型,且所述其它块类型至少包括帧内4X4块类型和帧内8X8块类型。
83.根据权利要求79所述的计算机可读媒体,其中所述语法元素包含所述当前视频块 的第一标头语法元素,所述计算机可读媒体进一步包含用以促使所述处理器进行以下动作 的指令基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视频块的至少一 个其它标头语法元素;以及当旗标指示对所述语法元素的所述预测成功时,将所述至少一个所预测的语法元素选 择作为所述当前视频块的所述语法元素。
84.根据权利要求83所述的计算机可读媒体,其中用以促使所述处理器预测所述当前视频块的至少一个其它标头语法元素的指令包含 用以促使所述处理器基于所述一个或一个以上先前解码视频块中的一者来预测所述当前 视频块的预测模式、亮度经译码块模式(CBP)和色度CBP的指令;以及用以促使所述处理器选择所述至少一个所预测的语法元素的指令包含用以促使所述 处理器在旗标指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测成功时将所 述所预测的预测模式、亮度CBP和色度CBP选择作为所述当前视频块的所述预测模式、亮度 CBP和色度CBP的指令。
85.根据权利要求84所述的计算机可读媒体,其进一步包含用以促使所述处理器在所 述旗标指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测不成功时分别地解 码所述预测模式、所述亮度CBP和所述色度CBP中的每一者的指令。
86.根据权利要求85所述的计算机可读媒体,其中所述旗标是第一旗标,且用以促使 所述处理器分别地解码所述预测模式、所述亮度CBP和所述色度CBP中的每一者的指令包 含用以促使所述处理器进行以下动作的指令基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视频块的所述预 测模式;以及当第二旗标指示对所述预测模式的所述预测成功时,将所述所预测的预测块选择作为 所述当前视频块的所述预测模式。
87.根据权利要求79所述的计算机可读媒体,其中用以促使所述处理器选择所述译码表的指令包含用以促使所述处理器基于邻近于所述当前视频块的一个或一个以上先前解 码视频块的所述对应语法元素来选择所述译码表的指令。
88.根据权利要求87所述的计算机可读媒体,其中所述邻近于所述当前视频块的一个 或一个以上先前解码视频块至少包含直接位于所述当前视频块之上的第一先前解码邻近 视频块和直接位于所述当前视频块左边的第二先前解码邻近视频块。
89.根据权利要求79所述的计算机可读媒体,其中所述语法元素包含块类型、预测模式、经译码块模式(CBP)和块分割中的一者;以及所述经译码单元包含帧和切片中的一者。
90.一种解码装置,其包含用于基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码 表以用于解码所述经译码单元的当前编码视频块的语法元素的装置;以及用于使用所述选定译码表来解码所述当前视频块的所述语法元素的装置。
91.根据权利要求90所述的装置,其中所述当前视频块的所述语法元素包含所述当前 视频块的块类型,且当所述一个或一个以上先前解码视频块具有第一块类型的块类型时, 所述选择装置选择将所述第一块类型与短于其它块类型的码字相关联的译码表。
92.根据权利要求91所述的装置,其中当所述一个或一个以上先前解码视频块中的至 少一者不具有所述第一块类型的块类型时,所述选择装置选择将所述其它块类型中的至少 一者与短于与所述第一块类型相关联的码字的码字相关联的译码表。
93.根据权利要求92所述的装置,其中所述第一块类型是帧内16X16块类型,且所述 其它块类型至少包括帧内4X4块类型和帧内8X8块类型。
94.根据权利要求90所述的装置,其中所述语法元素包含所述当前视频块的第一标头 语法元素,所述装置进一步包含用于基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视频块的至 少一个其它标头语法元素的装置;其中当旗标指示对所述语法元素的所述预测成功时,所述解码装置将所述至少一个所 预测的语法元素选择作为所述当前视频块的所述语法元素。
95.根据权利要求94所述的装置,其中所述预测装置基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视 频块的预测模式、亮度经译码块模式(CBP)和色度CBP;以及当旗标指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测成功时,所述解 码装置将所述所预测的预测模式、亮度CBP和色度CBP选择作为所述当前视频块的所述预 测模式、亮度CBP和色度CBP。
96.根据权利要求95所述的装置,其中当所述旗标指示对所述预测模式、所述亮度CBP 和所述色度CBP的所述预测不成功时,所述解码装置分别地解码所述预测模式、所述亮度 CBP和所述色度CBP中的每一者。
97.根据权利要求96所述的装置,其中所述旗标是第一旗标,且所述预测装置基于所述一个或一个以上先前解码视频块中的一者来预测所述当前视 频块的所述预测模式;以及当第二旗标指示对所述预测模式的所述预测成功时,所述解码装置将所述所预测的预测块选择作为所述当前视频块的所述预测模式。
98.根据权利要求90所述的装置,其中所述选择装置基于邻近于所述当前视频块的一 个或一个以上先前解码视频块的所述对应语法元素来选择所述译码表。
99.根据权利要求98所述的装置,其中所述邻近于所述当前视频块的一个或一个以上 先前解码视频块至少包含直接位于所述当前视频块之上的第一先前解码邻近视频块和直 接位于所述当前视频块左边的第二先前解码邻近视频块。
100.根据权利要求90所述的装置,其中所述语法元素包含块类型、预测模式、经译码块模式(CBP)和块分割中的一者;以及 所述经译码单元包含帧和切片中的一者。
全文摘要
本发明描述用于基于先前编码视频块来自适应地译码视频块标头信息的技术。视频编码器可基于一个或一个以上先前编码块的对应语法元素来自适应地选择译码表用于编码当前视频块的语法元素。在一个方面中,所述视频编码器可基于邻近于所述当前视频块的一个或一个以上视频块(即,附近的视频块)的块类型来自适应地选择所述译码表用于编码所述当前块的块类型。所述视频编码器还可基于所述先前编码视频块中的至少一者来预测所述当前块的一个或一个以上其它标头语法元素。如果预测成功,那么所述视频编码器可编码旗标以指示预测的成功。
文档编号H04N7/26GK101822057SQ200880111227
公开日2010年9月1日 申请日期2008年10月10日 优先权日2007年10月12日
发明者叶琰, 拉胡尔·潘查尔, 马尔塔·卡切维奇 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1