CN101822057B - 编码和解码视频数据的方法和装置 - Google Patents
编码和解码视频数据的方法和装置 Download PDFInfo
- Publication number
- CN101822057B CN101822057B CN2008801112276A CN200880111227A CN101822057B CN 101822057 B CN101822057 B CN 101822057B CN 2008801112276 A CN2008801112276 A CN 2008801112276A CN 200880111227 A CN200880111227 A CN 200880111227A CN 101822057 B CN101822057 B CN 101822057B
- Authority
- CN
- China
- Prior art keywords
- block
- decoding
- current video
- syntactic element
- predictive mode
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明描述用于基于先前编码视频块来自适应地译码视频块标头信息的技术。视频编码器可基于一个或一个以上先前编码块的对应语法元素来自适应地选择译码表用于编码当前视频块的语法元素。在一个方面中,所述视频编码器可基于邻近于所述当前视频块的一个或一个以上视频块(即,附近的视频块)的块类型来自适应地选择所述译码表用于编码所述当前块的块类型。所述视频编码器还可基于所述先前编码视频块中的至少一者来预测所述当前块的一个或一个以上其它标头语法元素。如果预测成功,那么所述视频编码器可编码旗标以指示预测的成功。
Description
本申请案主张2007年10月12日申请的第60/979,734号美国临时申请案的权益,所述临时申请案的全部内容以引用的方式并入本文中。
技术领域
本发明涉及数字视频译码,且更确切地说涉及对视频序列的块的标头信息的译码。
背景技术
可将数字视频能力并入广泛范围的装置中,所述装置包括数字电视、数字直接广播系统、无线通信装置、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、数码相机、数字记录装置、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电话等。数字视频装置实施视频压缩技术,例如MPEG-2、MPEG-4或H.264/MPEG-4(部分10,通常称为高级视频译码(AVC)),以更有效地发射和接收数字视频。视频压缩技术执行空间与时间预测以减少或移除视频序列中固有的冗余。
在视频译码中,视频压缩通常包括空间预测和/或运动估计及运动补偿以产生预测视频块。帧内编码依赖于空间预测以减少或移除给定视频帧内的视频块之间的空间冗余。可针对许多不同帧内编码块类型(例如在H.264/MPEG-4部分10AVC的状况下的帧内16×16块类型、帧内8×8块类型和帧内4×4块类型)而执行空间预测。帧间编码依赖于时间预测以减少或移除视频序列的连续视频帧的视频块之间的时间冗余。也可针对许多不同帧间编码块类型(例如在H.264/MPEG-4部分10AVC的状况下的帧间16×16、帧间16×8、帧间8×16、帧间8×8、帧间8×4、帧间4×8和帧间4×4)而执行时间预测。
在空间或时间预测之后,通过从所译码的原始视频块减去预测视频块而产生残余信息块。因此,所述残余信息量化预测视频块与原始块之间的差异。视频编码器编码块的残余信息连同块的标头信息。块的标头信息可指示当前视频块的块类型以及与当前视频块相关联的额外信息(例如预测模式、亮度译码块模式(CBP)、色度CBP、一个或一个以上运动向量等)。视频编码器通常使用算术码、可变长度码(VLC)、固定长度码或其组合来编码残余信息和标头信息。实例包括上下文自适应二进制算术译码(CABAC)和上下文自适应可变长度译码(CAVLC)。视频解码器执行反操作以使用所述块中的每一者的标头信息和残余信息来重建编码视频。
发明内容
本发明描述一种用于基于一个或一个以上先前编码视频块来自适应地对视频块标头信息进行译码的技术。明确地说,视频编码器可基于经译码单元(例如,帧或切片(slice))的一个或一个以上先前编码块的语法元素来自适应地选择译码表用于编码当前视频块的语法元素。在一个方面中,视频编码器可基于一个或一个以上邻近于当前视频块的已译码的视频块(即,附近的视频块)的块类型来自适应地选择所述译码表用于编码当前块的块类型。举例来说,当两个或两个以上的附近块具有帧内16×16块类型时,视频编码器可自适应地选择将帧内16×16块类型与短于帧内4×4或8×8块类型的码字相关联的译码表。这可允许视频编码器更有效地编码具有较高分辨率的视频序列(例如,高清晰度(HD)视频序列)。
视频编码器还可基于至少一个先前编码块来预测当前块的一个或一个以上其它标头语法元素。如果预测成功(即,所述一个或一个以上所预测的标头语法元素的值与当前块的实际标头语法元素的值相同),那么视频编码器可编码指示预测的成功的旗标(例如,1位旗标),而不是分离地编码所述语法元素中的每一者的值或将所述语法元素包裹在一起并以较长的码字来对其进行编码。视频解码器也可以与视频编码器相同的方式来预测所述一个或一个以上标头语法元素的值,且当经编码旗标指示预测的成功时选择块的所预测的标头语法元素的值。此技术可进一步减少用以编码视频帧序列的视频块的位数目。
在一个方面中,一种方法包含:基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语法元素;以及使用所述选定译码表来编码当前视频块的语法元素。
在另一方面中,一种编码装置包含编码单元,所述编码单元包括:选择单元,其基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语法元素;以及译码单元,其使用所述选定译码表来编码当前视频块的语法元素。
在另一方面中,一种计算机可读媒体包含用以促使处理器进行以下动作的指令:基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语法元素;以及使用所述选定译码表来编码当前视 频块的语法元素。
在另一方面中,一种编码装置包含:用于基于经译码单元的一个或一个以上先前编码视频块的对应语法元素来选择译码表以用于编码所述经译码单元的当前视频块的语法元素的装置;以及用于使用所述选定译码表来编码当前视频块的语法元素的装置。
在另一方面中,一种解码视频数据的方法包含:基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码表以用于解码所述经译码单元的当前视频块的语法元素;以及使用所述选定译码表来解码当前视频块的语法元素。
在另一方面中,一种解码装置包含:选择单元,其基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码表以用于解码所述经译码单元的当前编码视频块的语法元素;以及解码单元,其使用所述选定译码表来解码当前视频块的语法元素。
在另一方面中,一种计算机可读媒体包含用以促使处理器进行以下动作的指令:基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码表以用于解码所述经译码单元的当前编码视频块的语法元素;以及使用所述选定译码表来解码当前视频块的语法元素。
在另一方面中,一种解码装置包含:用于基于经译码单元的一个或一个以上先前解码视频块的对应语法元素来选择译码表以用于解码所述经译码单元的当前编码视频块的语法元素的装置;以及用于使用所述选定译码表来解码当前视频块的语法元素的装置。
可以硬件、软件、固件或其任何组合来实施本发明中所描述的技术。如果以软件实施,那么可在处理器中执行软件,所述处理器可指代一个或一个以上处理器,例如微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或数字信号处理器(DSP)或者其它等效的集成或离散逻辑电路。包含用以执行所述技术的指令的软件可最初存储于计算机可读媒体中并由处理器来载入和执行。
因此,本发明还涵盖计算机可读媒体,其包含用以促使处理器执行如本发明中所描述的多种技术中的任一者的指令。在一些状况下,计算机可读媒体可形成可出售给制造者和/或用于装置中的计算机程序产品的一部分。计算机程序产品可包括计算机可读媒体,且在一些状况下,计算机程序产品还可包括封装材料。
在下文的附图和描述中陈述本发明的一个或一个以上方面的细节。本发明中所描述的技术的其它特征、目的和优点将从描述和图式以及从权利要求书显而易见。
附图说明
图1是说明视频编码和解码系统的框图。
图2是说明根据本发明执行译码技术的视频编码器的实例的框图。
图3是进一步详细说明图2的视频编码器的实例熵编码单元的框图。
图4是说明根据本发明中所描述的译码技术来解码视频数据的视频解码器的实例的框图。
图5是进一步详细说明实例解码单元的框图。
图6是说明编码视频块的标头信息的编码单元的实例操作的流程图。
图7是说明解码视频序列的编码视频块的解码单元的实例操作的流程图。
具体实施方式
图1是说明执行本发明中所描述的译码技术的视频编码和解码系统10的框图。如图1中所示,系统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”标准)支持呈各种块大小(例如亮度分量的16×16、8×8或4×4和色度分量的8×8)的帧内预测以及呈各种块大小(例如亮度分量的16×16、16×8、8×16、8×8、8×4、4×8和4×4以及色度分量的对应成比例大小)的帧间预测。通常,可认为MB和各种子块为视频块。因此,可认为MB为视频块,且如果加以分割或子分割,那么可认为MB自身界定若干组视频块。
对于视频块中的每一者来说,视频编码器20针对所述块选择块类型。如本文中所使用,术语“块类型”指代是使用帧间预测还是帧内预测来预测所述块以及所述块的分割大小。举例来说,H.264/MPEG-4部分10AVC标准支持若干帧间预测和帧内预测块类型(包括帧间16×16、帧间16×8、帧间8×16、帧间8×8、帧间8×4、帧间4×8、帧间4×4、帧内16×16、帧内8×8和帧内4×4)。如下文所详细描述,视频编码器20可基于多种因素中的任一者而针对所述视频块中的每一者选择所述块类型中的一者。
对于帧内编码来说,视频编码器20可基于当前块内的变化来选择帧内预测块类型中的一者。当当前视频块内的变化较大时(例如,归因于较高级别的细节或纹理),视频编码器20可选择具有较小块分割的帧内预测块类型(例如帧内4×4或帧内8×8译码模式)。然而,当当前视频块内的变化较小时,视频编码器20可选择具有较大块分割的帧内预测块类型(例如帧内16×16块类型)。
对于具有较小视频分辨率的视频序列(例如,通用图像格式(CIF)或四分之一CIF(QCIF)视频序列)的帧内编码帧来说,视频编码器20通常使用帧内4×4或帧内8×8块类型来预测较多视频块。在具有较小分辨率的帧内编码帧中,16×16块可包括比4×4或8×8块多的变化。因此,帧内的4×4或8×8块可比帧内的16×16块平滑。举例来说,视频序列的4×4块可包括场景(例如,人的前额)的平滑部分,而16×16块可包括较多纹理(例如,前额、一些头发和人的眼睛的一部分)。然而,对于具有高分辨率的视频序列(例如,高清晰度(HD)视频序列)的帧内编码帧来说,视频编码器20可使用帧内16×16块类型来预测比使用帧内4×4或帧内8×8块类型多的块。举例来说,4×4块和16×16块两者均可包括仅人的前额(由于高的帧分辨率),且因此可具有类似的平滑性。
在对视频块进行基于帧内或帧间的预测之后,视频编码器20可对视频块执行若干其它操作。如将参看图2进一步详细描述,这些额外操作可包括变换操作(例如用于H.264/MPEG-4部分10AVC中的4×4或8×8整数变换,或离散余弦变换DCT)、量化操作和熵译码操作。视频编码器20接着编码视频帧序列的块中的每一者且输出编码位流。 对于每一块来说,例如,视频编码器20可编码块的标头信息和块的残余信息。每一块的标头信息可包括若干识别块的特定特性的语法元素(例如选定块类型、预测模式、经译码块模式(亮度和/或色度CBP)、运动向量等)。每一块的残余信息量化输入视频块与一个或一个以上预测块之间的差异。
在熵编码期间,常规视频编码器可将若干标头语法元素包裹在一起且将所述包裹件编码为单一码字。对于使用H.264/MPEG-4部分10AVC标准中的帧内16×16预测的帧内预测块来说,例如,常规视频编码器将块类型语法元素、预测模式语法元素(例如,DC、水平、垂直和平面)和亮度与色度的经译码块模式语法元素(例如,指示亮度与色度的经量化变换系数是否具有任何非零值)包裹在一起,且使用可变长度译码(VLC)而将所述包裹在一起的语法元素编码为单一码字。在VLC中,待编码的每一可能的语法元素或待编码的语法元素的组合指派有一码字。VLC中的码字的长度可变化,其中最短码字指派给具有最高发生机率的给定语法元素的值。根据H.264/MPEG-4部分10AVC标准操作的常规视频编码器基于以下假定而将比帧内4×4和帧内8×8块类型长的码字指派给帧内16×16块类型:选择帧内4×4和帧内8×8块类型的频率大于选择帧内16×16块类型的频率。此假定对于具有较小视频分辨率的视频序列(例如,CIF或QCIF视频序列)来说可为有效的。然而,对于具有高分辨率的视频序列(例如,HD视频序列)来说,选择帧内16×16块类型的频率可大于选择帧内4×4或帧内8×8块类型的频率。当视频序列包括大的平滑区域且以中等到高的量化参数(QP)来执行量化时,这可能尤为正确。在此类视频序列中,根据常规H.264/MPEG-4部分10AVC标准来对帧内16×16块类型进行译码可能是非常低效的。明确地说,对于HD应用来说,发射用于帧内16×16块类型的较长码字的频率可比在非HD应用中大得多,从而引起过多带宽消耗。
为了更有效地编码包括使用帧内16×16块类型所预测的大量视频块的视频流,视频编码器20执行如本发明中所描述的自适应标头信息译码技术。视频编码器20可基于一个或一个以上先前编码块的对应语法元素来自适应地选择译码表用于编码当前视频块的语法元素。在一个方面中,视频编码器20可基于邻近于当前视频块的一个或一个以上视频块(本文中称为“附近的视频块”)来自适应地选择所述译码表用于编码所述当前视频块的块类型。视频编码器20可在选择用于编码块类型的译码表(也称为码簿)时分析任何位置处的任何数目的附近块。然而,出于说明的目的,在一些方面中,视频编码器20将被描述为基于直接位于当前块之上的附近块(“上附近块”)和直接位于当前块的左边的附近块(“左附近块”)来自适应地选择用于编码块类型的译码表。
对于帧内预测块来说,例如,当上附近块和左附近块并非均具有帧内16×16块类型 时,视频编码器20可选择使帧内4×4或8×8块类型与短于帧内16×16块类型的码字相关联的译码表。在H.264/MPEG-4部分10AVC标准中,通常用码字“10”来表示帧内16×16块类型,而用码字“0”来表示帧内4×4和帧内8×8块类型,在此状况下,使用1位对额外语法元素transform_size_8×8_flag进行译码以指示块类型是帧内4×4还是帧内8×8。然而,当上附近块和左附近块具有帧内16×16块类型时,视频编码器20可选择使帧内16×16块类型与短于帧内4×4或8×8块类型的码字相关联的译码表。在此状况下,与视频编码器20相关联的熵译码单元可使用较短码字来编码块标头中的帧内16×16块类型的块类型。当上附近块和左附近块具有帧内16×16块类型时,视频编码器20可(例如)选择一译码表,所述译码表用码字“0”来表示帧内16×16块类型且用码字“10”来表示帧内4×4和8×8块类型。因此,视频编码器20在以下试探法下操作:如果上附近块和左附近块具有帧内16×16块类型,那么当前视频块是帧内16×16块类型的机率增加。以此方式,当较频繁地使用帧内16×16块类型时,视频编码器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基于一个或一个以上先前解码块的块类型来自适 应地选择译码表(即,码簿)以用于解码当前视频块的块类型。举例来说,当上附近块和左附近块具有帧内16×16块类型时,视频解码器26可自适应地选择使帧内16×16块类型与短于帧内4×4或8×8块类型的码字相关联的译码表。
视频解码器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可包含用以根据FLO规范来广播无线视频信息的无线信息信道等。FLO规范包括界定位流语法和语义的实例和适合用于FLO空中接口的解码过程。
或者,可根据例如DVB-H(数字视频广播-手持式)、ISDB-T(集成服务数字广播-陆地)或DMB(数字媒体广播)等其它标准来广播视频。因此,源装置12可为移动无线终端、视频串流服务器或视频广播服务器。然而,本发明中所描述的技术并不限于任何特定类型的广播、多播或点对点系统。在广播的状况下,源装置12可将视频数据的若干信道广播到多个接收装置,所述接收装置中的每一者可类似于图1的接收装置14。因此,尽管图1中展示单一接收装置14,但对于视频广播来说,源装置12将通常将视频内容同时广播到许多接收装置。
在其它实例中,发射器22、通信信道16和接收器24可经配置以用于根据任何有线或无线通信系统(包括以太网、电话(例如,POTS)、电缆、电力线和光纤系统中的一者或一者以上)和/或无线系统来通信,所述无线系统包含以下中的一者或一者以上:码分多址(CDMA或CDMA2000)通信系统、频分多址(FDMA)系统、正交频分多址(OFDM)系统、时分多址(TDMA)系统(例如全球移动通信系统(GSM)、通用包无线电服务(GPRS)或增强型数据GSM环境(EDGE))、陆地集群无线电(TETRA)移动电话系统、宽带码分多址(WCDMA)系统、高数据速率1xEV-DO(仅第一代演进数据)或1xEV-DO金多播系统、IEEE 802.18系统、MediaFLOTM系统、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×16、16×8、8×16、8×8或更小的块大小)的块来执行运动估计。
运动估计单元32产生运动向量(MV)(或在双向预测的状况下产生多个MV),所述MV指示当前视频块与所识别的用以对当前视频块进行译码的预测性块之间的移位的量值和轨道。运动向量可具有一半或四分之一像素精度或甚至更精细的精度,从而允许视频编码器20以比整数像素位置高的精度来追踪运动并获得较好的预测块。使用所得运动向量,运动补偿单元36通过运动补偿而形成预测视频块。在整数像素精度的状况下,运动补偿单元36将在由运动向量识别的位置处的块选择作为预测块。在分数像素精度的状况下,运动补偿单元36可执行内插以形成预测块。
在空间预测的状况下,空间预测单元30基于共同帧内的一个或一个以上邻近块而产生预测块。空间预测单元30可(例如)通过使用当前帧内的一个或一个以上邻近块 和选定预测模式来执行内插而产生预测块。可(例如)从帧存储件34检索当前帧内的一个或一个以上邻近块。因此,在空间预测的状况下,帧存储件34可存储当前帧的已被解码和重建的先前编码块。对于帧内16×16块类型来说,例如,空间预测单元30可使用四种预测模式中的一者来产生预测块:DC预测模式、水平预测模式、垂直预测模式和平面预测模式。作为另一实例,空间预测单元30可将当前帧内的邻近块中的一者选择作为预测块。以此方式,空间预测单元30依赖于共同帧内的块以产生预测块而非依赖邻近帧内的块。
模式选择单元33基于经选择用于编码当前块的译码模式而在由空间预测单元30产生的预测块与由运动补偿单元36产生的预测块之间选择性地切换。以此方式,视频编码器20可选择性地执行帧间编码和帧内编码(例如,逐帧地或逐块地)。视频编码器20通过在加法器48A处从当前视频块减去所产生的选定预测块而产生残余信息(图2中标记为“RESID INFO”)。因此,在帧内编码的状况下,视频编码器20通过在加法器48A处从当前视频块减去由空间预测单元30输出的选定预测块而产生残余信息。在帧间编码的状况下,视频编码器20通过在加法器48A处从当前视频块减去由运动补偿单元36输出的选定预测块而产生残余信息。如上文所描述,残余信息量化预测视频块与所译码的当前视频块之间的差异。块变换单元38将变换(例如DCT或者4×4或8×8整数变换)应用于残余信息以产生残余变换系数。量化单元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可基于具有帧内16×16块类型的先前编码块的百分比来选择译码表。然而,出于说明的目的,将把熵编码单元46描述为基于直接位于当前块之上的附近块(“上附近块”)和直接位于当前块左边的附近块(“左附近块”)来自适应地选择译码表用于编码帧内预测块类型。然而,熵编码单元46可在选择用于编码的译码模式表时分析任何位置处的任何数目的附近块。此外,熵编码单元46可使用类似技术以基于先前编码视频块的块类型来自适应地选择译码表用于帧间预测块类型。另外,可进一步应用本发明的技术以自适应地选择译码表用于对当前视频块的其它语法元素(例如预测模式、亮度CBP、色度CBP、块分割、运动向量等)进行译码。
当上附近块和左附近块并非均具有帧内16×16块类型时,熵编码单元46可选择将帧内4×4或8×8块类型与短于帧内16×16块类型的码字相关联的译码表。(例如)根据H.264/MPEG-4部分10AVC标准,熵编码单元46可(例如)选择将帧内4×4和帧内8×8块类型与码字“0”(即,1位码字)相关联且将帧内16×16块类型与码字“10”(即,2位码字)相关联的译码表。当上附近块和左附近块两者均具有帧内16×16块类型时,熵编码单元46可选择将帧内16×16块类型与短于帧内4×4或8×8块类型的码字相关联的译码表。在一个实例中,当上附近块和左附近块具有帧内16×16块类型时,选定译码表可将帧内16×16块类型与码字“0”(即,1位码字)相关联且将帧内4×4和8×8块类型与码字“10”(即,2位码字)相关联。因此,熵编码单元46在以下试探法下操作:如果上附近块和左附近块具有帧内16×16块类型,那么当前视频块为帧内16×16块类型的机率增加。在一些状况下,当前块可能并非帧内16×16块类型,且自适应选定的译码表可产生用于帧内8×8或4×4块类型的较长码字。然而,时常所述试探法是正确的,从而 导致节省用以编码帧内16×16块类型的位。以此方式,当较频繁地使用帧内16×16块类型时,视频编码器20自适应地选择对块进行较有效编码的译码表。
熵编码单元46还可基于至少一个先前编码块来预测当前块的一个或一个以上其它语法元素,以尝试进一步减少用以编码块标头语法元素的位数目。举例来说,熵编码单元46可尝试从先前块(例如,上附近块和左附近块)一起预测当前块的预测模式语法元素和亮度/色度CBP语法元素。举例来说,当附近块中的至少一者具有帧内16×16块类型时,熵编码单元46可将当前块的预测模式和亮度/色度CBP预测为附近块中的一者的预测模式和亮度/色度CBP。熵编码单元46将当前块的预测模式和亮度/色度CBP与所预测的预测模式和亮度/色度CBP相比较,且如果预测是成功的(即,其相同),那么熵编码单元46编码指示预测成功的旗标。熵编码单元46因此将预测模式和亮度/色度CBP包裹在一起且使用旗标(例如,1位旗标)来表示所述预测模式和亮度/色度CBP,而不是分离地编码每一语法元素,从而导致进一步减少用以编码语法元素的位数目。
如果对预测模式、亮度CBP和色度CBP的预测不成功,那么熵编码单元46设定旗标以指示预测的失败。熵编码单元46可尝试从先前块仅预测当前块的预测模式。举例来说,当附近块中的至少一者具有帧内16×16块类型时,熵编码单元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 I16;
Let leftI16 be equal to 1 if left MB type is I16;
If(upI16=1 & & leftI16=1)
code currMBType using codewords{“0”,“10”,“11”}for{I16,I4/8,
IPCM};
Else
code currMBType using codewords{“0”,“10”,“11”}for{I4/8,I16,
IPCM};
//the following code predicts I16mode/CBPs of currMB
{
up Value=upI16?I16value(upMB):0;
left Value=leftI16?I16value(leftMB):0;
If(upI16 & & leftI16)
predValue=min(up Value,leftValue);
Else if(upI16)
predValue=upValue;
Else if(leftI16)
predValue=leftValue;
Else
predValue=-1;
currValue=I16value(currMB);
If(predValue==-1)
{
send currPredMode in 2-bit FLC
send currLumaCBP in 1-bit FLC
send currChromaCBP using codewords{0,10,11}
}
Else If(curr Value==predValue)
send flag“1”
Else
{
send flag“0”
send currPredMode in 2-bit FLC
send currLumaCBP in 1-bit FLC
send currChromaCBP using codewords{0,10,11}
}
}
}
Int I16value(thisMB)
{
Let thisPredMode be the prediction mode of thisMB
Let thisLumaCBP be the luma CBP of thisMB
Let this ChromaCBP be the chroma CBP of thisMB
return thisPredMode+(thisLumaCBP<<4)+(thisChromaCBP<<2);
}
最初,熵编码单元46在上附近块具有帧内16×16块类型的情况下将变量upI16设定为“1”,且在上附近块具有帧内16×16块类型的情况下将变量upI16设定为“0”。同样,熵编码单元46在左附近块具有帧内16×16块类型的情况下将变量leftI16设定为等于“1”,且在左附近块具有帧内16×16块类型的情况下将变量leftI16设定为“0”。
熵编码单元46基于上附近块和左附近块的块类型来选择性地编码当前块的块类型。明确地说,当upI16与leftI16两者均等于“1”时,熵编码单元46分别针对帧内16×16(I16)、帧内4×4或8×8(I4/8)和原始像素数据(IPCM)而使用码字“0”、“10”和“11”来编码当前块的块类型(即,currMBtype)。因此,指派给帧内16×16(I16)块类型的可变长度码字短于指派给帧内4×4或8×8块类型(I4/8)或者原始像素数据(IPCM)块类型的可变长度码字。当upI16、leftI16或两者具有不同于帧内16×16的块类型时,熵编码单元46分别针对块类型I4/8、I16、IPCM而使用码字“0”、“10”、“11”来编码当前块的块类型(即,currMBtype)。
尽管在上文所描述的实例伪码中,熵编码单元46基于上附近块和左附近块来选择译码表以用于编码当前块的块类型,但熵编码单元46可在作出所述选择时分析更多附近块。此外,熵编码单元46可基于其它准则(例如,具有帧内16×16块类型的先前编码块的百分比)来选择译码表以用于编码。举例来说,当最后20个先前编码块中的至少10个具有帧内16×16块类型时,熵编码单元46可选择具有与帧内16×16块类型相关联的较短码字的译码表。
为了预测预测模式和CBP(亮度和色度),熵编码单元46初始化变量upValue和leftValue。变量upValue和leftValue分别是上附近块和左附近块的预测模式和CBP(亮 度和色度)的值。当upI16不等于“1”时(即,当上附近块并不具有帧内16×16块类型时),熵编码单元46将upValue设定为等于“0”。当upI16等于“1”时(即,上附近块具有帧内16×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”(即,两个附近块均具有帧内16×16块类型),那么熵编码单元46将predValue设定为等于upValue与leftValue中的最小值。尽管在实例伪码中,熵编码单元46将predValue设定为等于upValue与leftValue中的最小值,但熵编码单元46可将predValue设定为等于upValue与leftValue中的最大值或所述两个值的组合。
当两个附近块不具有帧内16×16块类型时,熵编码单元46在只要upI16等于“1”的情况下将predValue设定为等于upValue,且在只要leftI16等于“1”的情况下将predValue设定为等于leftValue。以此方式,熵编码单元46使用具有帧内16×16块类型的附近块的预测模式和CBP值来预测当前块的预测模式值和CBP值(predValue)。如果upI16或leftI16中没有一者等于“1”(即,附近块类型中没有一者为帧内16×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 directly
above the current block;
Let leftModebe the prediction mode of the neighboring block directly to
the left of the current block;
If(upI16 & & leftI16)
predMode=min(upMode,leftMode);
Else if(upI16)
predMode=upMode;
Else if(leftI16)
predMode=leftMode;
Else
predMode=-1;
Let currPredMode be the I16 prediction mode for currMB
If(predMode==-1)
send currPredMode using 2-bit FLC
Else 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×16块类型),那么熵编码单元46将predMode设定为upMode与leftMode中的最小值。熵编码单元46可使用upMode与leftMode中的最大值或所述两者的组合而非最小值。如果两个附近块均不是帧内16×16块类型,那么熵编码单元46在upI16等于“1”的情况下将predMode设定为等于上附近块的预测模式(upMode),或在leftI16等于“1”的情况下将predMode设定为等于左附近块的预测模式。如果upI16或leftI16中没有一者等于“1”,那么熵编码单元46将predMode设定为等于“-1”,这指示不存在可用以预测当前块的预测模式的帧内16×16附近块。
熵编码单元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×16块类型时选择将帧内4×4或8×8块类型与短于帧内16×16块类型的码字相关联的第一译码表,且在上附近块和左附近块两者均具有帧内16×16块类型时选择将帧内16×16块类型与短于帧内4×4或8×8块类型的码字相关联的第二译码表。在另一方面中,译码表选择单元52可基于具有帧内16×16块类型的先前编码块的百分比来选择译码表。编码单元50根据选定译码表来编码当前块的块类型语法元素。
在一些例子中,语法元素预测单元54可尝试基于先前编码块来预测当前块的一个或一个以上其它语法元素。对于帧内预测块来说,例如,语法元素预测单元54可尝试预测当前块的预测模式语法元素和亮度/色度CBP语法元素,和/或尝试预测当前块的预测模式语法元素而不预测亮度/色度CBP语法元素。当附近块中的至少一者具有帧内16×16块类型时,语法元素预测单元54可将当前块的预测模式和亮度/色度CBP预测为附近块中的一者的预测模式和亮度/色度CBP。
编码单元50从语法元素预测单元54接收所预测的语法元素,且将所述所预测的语法元素与当前块的实际语法元素相比较。如果预测成功(即,所预测的语法元素与实际语法元素相同),那么编码单元50编码指示对语法元素(例如,上文的实例中的预测模式和亮度/色度CBP)的预测成功的旗标。编码单元50因此将预测模式和亮度/色度CBP包裹在一起,且使用旗标(例如,1位旗标)来表示所述预测模式和亮度/色度CBP,而不是分离地编码每一语法元素,从而导致进一步减少用以编码所述语法元素的位数目。
如果对预测模式、亮度CBP和色度CBP(或其它语法元素)的预测不成功,那么编码单元50编码旗标以指示预测的失败。如果对预测模式和亮度/色度CBP的预测不成功,那么语法元素预测单元54可尝试从先前块预测当前块的预测模式而不预测亮度/色度CBP。举例来说,当附近块中的至少一者具有帧内16×16块类型时,语法元素预测单元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可选择默认译码表。所述默认译码表可(例如)是将短于指派给帧内16×16块类型的码字的码字指派给帧内4×4和8×8块类型的译码表。对于切片内的视频块(对于其来说存在先前解码的邻近视频块)来说,熵解码单元60可在选择用于解码的译码表时分析任何位置处的任何数目的附近块。然而,出于说明的目的,将把熵解码单元60描述为基于上附近块和左附近块来自适应地选择译码表用于解码块的块类型。
在帧内预测块类型的状况下,例如,当上附近块和左附近块两者均具有帧内16×16块类型时,熵解码单元60可选择将短于帧内4×4或8×8块类型的码字与帧内16×16块类型相关联的译码表。在上附近块和左附近块两者均具有帧内16×16块类型时所选择的译码表可(例如)分别将码字“0”、“10”和“11”关联到帧内16×16块类型、帧内4×4或8×8块类型和原始像素数据块类型(IPCM)。当上附近块与左附近块两者均不具有帧内16×16块类型时,熵解码单元60可选择将较短可变长度码字与帧内4×4/8×8块类型相关联且将较长码字与帧内16×16块类型相关联的译码表。熵解码单元60使用基于附近块所选择的译码表来解码当前块的块类型。
尽管在上文所描述的实例中熵解码单元60基于附近块来选择译码表,但熵解码单元60可基于其它准则来选择译码表。举例来说,熵解码单元60可基于具有帧内16×16块类型的先前编码块的百分比超过阈值(例如,最后20个先前编码块中的至少10个具有帧内16×16块类型)来选择译码表。此外,熵解码单元60可自适应地选择译码表用于除帧内编码块外还解码帧间编码块的块类型。
熵解码单元60另外解码当前块的预测模式、亮度CBP和色度CBP。如上文所描述,熵编码单元46(图2)可从一个或一个以上附近块的语法元素来预测当前块的一个或一个以上其它语法元素(例如,预测模式和亮度/色度CBP)。在预测成功的例子中,熵编码单元46将预测模式和亮度/色度CBP包裹在一起,且发射指示预测成功的旗标(例如,1位旗标)。因此,熵解码单元60也可以与熵编码单元46相同的方式执行对一个或一个以上语法元素的预测。举例来说,熵解码单元60可从先前块(例如,上附近块和左附近块)中的一者或一者以上来预测当前块的预测模式语法元素和亮度/色度CBP语法元素。当附近块中的至少一者具有帧内16×16块类型时,熵解码单元60可将当前块的预测模式和亮度/色度CBP预测为附近块中的一者的预测模式和亮度/色度CBP。如果编码位流中的旗标指示对预测模式和CBP的预测成功,那么熵解码单元60将所预测的预测模式和CBP选择作为当前块的预测模式和CBP。
当编码位流的旗标指示预测不成功时,熵解码单元60将预测模式、亮度CBP和色度CBP接收作为单独码字。熵解码单元60可使用具有2位固定长度码的译码表来解码预测模式,所述2位固定长度码对应于四种帧内16×16预测模式中的一者。举例来说,垂直预测模式可对应于码字“00”,水平预测模式可对应于码字“01”,DC预测模式可对应于码字“10”且平面预测模式可对应于码字“11”。熵解码单元60可使用具有1位固定长度码字的译码表来解码亮度CBP(其指示是否存在任何非零亮度系数)。熵解码单元60可使用具有可变长度码字的译码表来解码色度CBP(其指示是否存在任何非零色度系数)。举例来说,色度译码表可包括:码字“0”,其用以指示所有色度AC和DC系数为零;码字“10”,其用以指示存在至少一个非零色度DC系数但不存在非零色度AC系数;和码字“11”,其用以指示存在至少一个非零色度DC系数和至少一个非零色度AC系数。
在一些方面中,当对预测模式和亮度/色度CBP的组合的预测失败时,熵编码单元46(图2)可尝试预测预测模式,且编码指示对预测模式的预测是否成功的旗标。熵解码单元60因此也可基于一个或一个以上附近块来执行对预测模式的预测。举例来说,当附近块中的至少一者具有帧内16×16块类型时,熵解码单元60可将当前块的预测模式预测为附近块中的一者的预测模式。如果旗标指示对预测模式的预测成功,那么熵解码单元60将所预测的预测模式选择作为当前块的预测模式。如果旗标指示预测不成功或熵解码单元60未经配置以预测预测模式,那么熵解码单元60分离地解码预测模式。
在由熵解码单元60执行对编码视频数据的熵解码之后,视频解码器26使用标头信息和残余信息来逐块地重建视频序列的帧。熵解码单元60使用标头信息的至少一部分 来产生预测块。举例来说,在帧内编码块(或切片)的状况下,熵解码单元60可将标头信息的至少一部分(例如此块的块类型和预测模式)提供到空间预测单元62以用于产生预测块。空间预测单元62根据标头信息而使用共同切片内的一个或一个以上邻近块(或所述邻近块的部分)来产生预测块。空间预测单元30可(例如)使用由预测模式语法元素规定的帧内预测模式来产生具有由块类型语法元素指示的分割大小的预测块。可(例如)从帧存储件68检索当前切片内的一个或一个以上邻近块(或所述邻近块的部分)。
在帧间编码块(或切片)的状况下,熵解码单元60可将标头信息的至少一部分提供到运动补偿单元63以用于产生预测块。运动补偿单元63可(例如)从熵解码单元60接收一个或一个以上运动向量和块类型且从参考帧存储件68接收一个或一个以上经重建的参考帧,并产生预测块(即,运动补偿块)。
熵解码单元60将残余信息(例如,呈一个或一个以上经量化的残余系数的形式)提供到反量化单元64。反量化单元64反量化(即,解量化)所述经量化的残余系数。反变换单元66将反变换(例如,反DCT或者反4×4或8×8整数变换)应用于解量化的残余系数以产生残余信息。加法器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可在上附近块和左附近块并非均具有帧内16×16块类型时选择将帧内4×4或8×8块类型与短于帧内16×16块类型的码字相关联的译码表,且在上附近块和左附近块两者均具有帧内16×16块类型时选择将帧内16×16块类型与短于帧内4×4或8×8块类型的码字相关联的译码表。熵编码单元46根据选定译码表来编码块的块类型(75)。
熵编码单元46从一个或一个以上先前编码块确定是否预测当前块的预测模式、亮度CBP和色度CBP(76)。当熵编码单元46经配置以预测预测模式、亮度CBP和色度CBP时,熵编码单元46产生那些预测(78)。举例来说,当附近块中的至少一者具有帧内16×16块类型时,熵编码单元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可在附近块中的至少一者具有帧内16×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×16块类型时选择将短于帧内4×4或8×8块类型的码字关联到帧内16×16块类型的译码表,且在上附近块和左附近块中的至少一者不具有帧内16×16块类型时选择将短于帧内16×16块类型的码字关联到帧内4×4/8×8块类型的译码表。在其它方面中,熵解码单元60可基于其它准则(例如,基于具有帧内16×16块类型的先前解码块的百分比)来选择译码表。为了维持编码器与解码器同步,编码器和解码器使用相同准则来选择译码表。熵解码单元60使用选定译码表来解码当前块的块类型(104)。
熵解码单元60还可从一个或一个以上附近块的预测模式和亮度/色度CBP来预测当 前块的预测模式和亮度/色度CBP(106)。举例来说,当附近块中的至少一者具有帧内16×16块类型时,熵解码单元60可将当前块的预测模式和亮度/色度CBP预测为附近块中的一者的预测模式和亮度/色度CBP。熵解码单元60可确定编码位流中的旗标是否指示对预测模式和CBP的预测成功(108)。如果编码位流中的旗标指示对预测模式和CBP的预测成功(例如,表示预测的成功的旗标等于1),那么熵解码单元60可将所预测的预测模式和CBP选择作为当前块的预测模式和CBP(110)。
当对预测模式和亮度/色度CBP的预测不成功时(例如,表示预测的成功的旗标等于0),熵解码单元60可从一个或一个以上附近块的预测模式来预测所述块的预测模式(112)。举例来说,当附近块中的至少一者具有帧内16×16块类型时,熵解码单元60可将当前块的预测模式预测为附近块中的一者的预测模式。熵解码单元60确定编码位流中的旗标是否指示对预测模式的预测成功(114)。所述旗标可(例如)在对预测模式的预测成功时设定为1,且在对预测模式的预测不成功时设定为0。如果旗标指示对预测模式的预测成功,那么熵解码单元60将所预测的预测模式选择作为当前块的预测模式(116)。
在将所预测的预测模式选择作为当前块的预测模式之后或当旗标指示对预测模式的预测不成功时,熵解码单元60使用相应译码表来分离地解码块的剩余标头语法元素(118)。当成功地预测预测模式时,由熵解码单元60解码的剩余标头语法元素包括亮度和色度CBP。当对预测模式的预测不成功时,由熵解码单元60解码的剩余标头语法元素包括使用相应译码表的预测模式、亮度CBP和色度CBP(118)。
可用硬件、软件、固件或其任何组合来实施本发明中所描述的技术。可将任何被描述为单元或组件的特征一同实施于集成逻辑装置中或分离地实施为离散但可共同操作的逻辑装置。如果以软件实施,那么可至少部分地由计算机可读媒体来实现所述技术,所述计算机可读媒体包含在加以执行时执行上文所描述的方法中的一者或一者以上的指令。所述计算机可读媒体可形成计算机程序产品的一部分,所述计算机程序产品可包括封装材料。计算机可读媒体可包含随机存取存储器(RAM)(例如同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体等。另外或作为替代,所述技术可至少部分地由计算机可读通信媒体来实现,所述计算机可读通信媒体携载或传送代码,所述程序码呈指令或数据结构的形式且可由计算机来存取、读取和/或执行。
所述代码可由一个或一个以上处理器(例如一个或一个以上数字信号处理器(DSP)、 通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路)来执行。因此,如本文中所使用的术语“处理器”可指代上述结构中的任一者或任何其它适合用于实施本文中所描述的技术的结构。另外,在一些方面中,可将本文中所描述的功能性提供于经配置以用于编码和解码的专用软件单元或硬件单元内,或并入于组合式视频编码器-解码器(CODEC)中。将不同特征描绘为单元希望突出所说明的装置的不同功能方面,且未必暗示此类单元必须由单独的硬件或软件组件来实现。事实上,可将与一个或一个以上单元相关联的功能性集成于共同或单独的硬件或软件组件内。
已描述了本发明的各种实施例。这些和其它实施例在所附权利要求书的范围内。
Claims (61)
1.一种编码视频数据的方法,所述方法包含:
基于经译码单元的一个或多个先前编码视频块的对应语法元素,从多个译码表中选择译码表以用于编码所述经译码单元的当前视频块的语法元素,其中,所述当前视频块的语法元素识别所述当前视频块的块类型;
其中,选择所述译码表包括当所述一个或多个先前编码视频块中的每一视频块均具有第一块类型的块类型时,选择第一译码表,所述第一译码表将第一块类型与短于其它块类型的码字的码字相关联;
其中,选择所述译码表包括当所述一个或多个先前编码视频块中的至少一个编码视频块不具有所述第一块类型的块类型时,选择第二译码表,所述第二译码表将所述其它块类型中的至少一个块类型与短于同所述第一块类型相关联的码字的码字相关联;以及
使用所选择的所述第一译码表、所述第二译码表中之一来编码所述当前视频块的所述语法元素。
2.根据权利要求1所述的方法,其中所述第一块类型是帧内16×16块类型,且所述其它块类型至少包括帧内4×4块类型和帧内8×8块类型。
3.根据权利要求1所述的方法,其中所述语法元素包含所述当前视频块的第一标头语法元素,所述方法进一步包含:
基于所述一个或多个先前编码视频块中的一者来预测所述当前视频块的至少一个其它标头语法元素;以及
当所述至少一个所预测的标头语法元素与所述当前视频块的实际标头语法元素相同时,编码旗标以指示对所述至少一个其它标头语法元素的所述预测成功。
4.根据权利要求3所述的方法,其中:
预测所述当前视频块的至少一个其它标头语法元素包含基于所述一个或多个先前编码视频块中的一者来一起预测所述当前视频块的预测模式、亮度经译码块模式CBP和色度CBP;以及
编码所述旗标包含当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的实际预测模式、亮度CBP和色度CBP相同时编码所述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测成功。
5.根据权利要求4所述的方法,其进一步包含:
当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的所述实际预测模式、亮度CBP和色度CBP不同时,编码所述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测不成功;以及
分别地编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
6.根据权利要求5所述的方法,其中所述旗标是第一旗标,且分别地编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者包含:
基于所述一个或多个先前编码视频块中的一者来预测所述当前视频块的所述预测模式;以及
当所述所预测的预测模式与所述当前视频块的所述实际预测模式相同时,编码第二旗标以指示对所述预测模式的所述预测成功。
7.根据权利要求1所述的方法,其中,所述一个或多个先前编码视频块包括与所述当前视频块邻近的视频块。
8.根据权利要求7所述的方法,其中所述邻近于所述当前视频块的一个或多个先前编码视频块至少包含直接位于所述当前视频块之上的第一先前编码邻近视频块和直接位于所述当前视频块左边的第二先前编码邻近视频块。
9.根据权利要求1所述的方法,其进一步包含发射所述编码的语法元素。
10.根据权利要求1所述的方法,其中所述经译码单元包含帧和切片中的一者。
11.一种包含编码单元的编码装置,所述编码单元包括:
选择单元,其基于经译码单元的一个或多个先前编码视频块的对应语法元素,从多个译码表中选择译码表以用于编码所述经译码单元的当前视频块的语法元素,其中,所述当前视频块的语法元素识别所述当前视频块的块类型;
其中,当所述一个或多个先前编码视频块中的每一视频块均具有第一块类型的块类型时,所述选择单元选择第一译码表,所述第一译码表将第一块类型与短于其它块类型的码字的码字相关联;
其中,当所述一个或多个先前编码视频块中的至少一个编码视频块不具有所述第一块类型的块类型时,所述选择单元选择第二译码表,所述第二译码表将所述其它块类型中的至少一个块类型与短于同所述第一块类型相关联的码字的码字相关联;以及
译码单元,其使用所选择的所述第一译码表、所述第二译码表中之一来编码所述当前视频块的所述语法元素。
12.根据权利要求11所述的装置,其中所述第一块类型是帧内16×16块类型,且所述其它块类型至少包括帧内4×4块类型和帧内8×8块类型。
13.根据权利要求11所述的装置,其中所述语法元素包含所述当前视频块的第一标头语法元素,所述装置进一步包含:
预测单元,其基于所述一个或多个先前编码视频块中的一者来预测所述当前视频块的至少一个其它标头语法元素;
其中当所述至少一个所预测的标头语法元素与所述当前视频块的实际标头语法元素相同时,所述译码单元编码旗标以指示对所述至少一个其它标头语法元素的所述预测成功。
14.根据权利要求13所述的装置,其中:
所述预测单元基于所述一个或多个先前编码视频块中的一者来一起预测所述当前视频块的预测模式、亮度经译码块模式CBP和色度CBP;以及
当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的实际预测模式、亮度CBP和色度CBP相同时,所述译码单元编码所述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测成功。
15.根据权利要求14所述的装置,其中当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的所述实际预测模式、亮度CBP和色度CBP不同时,所述译码单元编码所述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测不成功,且分别地编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
16.根据权利要求15所述的装置,其中所述旗标是第一旗标,且
所述预测单元基于所述一个或多个先前编码视频块中的一者来预测所述当前视频块的所述预测模式;以及
当所述所预测的预测模式与所述当前视频块的所述实际预测模式相同时,所述译码单元编码第二旗标以指示对所述预测模式的所述预测成功。
17.根据权利要求11所述的装置,其中,所述一个或多个先前编码视频块包括与所述当前视频块邻近的视频块。
18.根据权利要求17所述的装置,其中所述邻近于所述当前视频块的一个或多个先前编码视频块至少包含直接位于所述当前视频块之上的第一先前编码邻近视频块和直接位于所述当前视频块左边的第二先前编码邻近视频块。
19.根据权利要求11所述的装置,其进一步包含发射所述编码的语法元素的发射器。
20.根据权利要求11所述的装置,其中所述经译码单元包含帧和切片中的一者。
21.根据权利要求11所述的装置,其中所述装置包含无线通信装置。
22.根据权利要求11所述的装置,其中所述装置包含集成电路装置。
23.一种编码装置,其包含:
用于基于经译码单元的一个或多个先前编码视频块的对应语法元素从多个译码表中选择译码表以用于编码所述经译码单元的当前视频块的语法元素的选择装置,其中,所述当前视频块的语法元素识别所述当前视频块的块类型;
其中,当所述一个或多个先前编码视频块中的每一视频块均具有第一块类型的块类型时,所述选择装置选择第一译码表,所述第一译码表将第一块类型与短于其它块类型的码字的码字相关联;
其中,当所述一个或多个先前编码视频块中的至少一个编码视频块不具有所述第一块类型的块类型时,所述选择装置选择第二译码表,所述第二译码表将所述其它块类型中的至少一个块类型与短于同所述第一块类型相关联的码字的码字相关联;以及
用于使用所选择的所述第一译码表、所述第二译码表中之一来编码所述当前视频块的所述语法元素的装置。
24.根据权利要求23所述的装置,其中所述第一块类型是帧内16×16块类型,且所述其它块类型至少包括帧内4×4块类型和帧内8×8块类型。
25.根据权利要求23所述的装置,其中所述语法元素包含所述当前视频块的第一标头语法元素,所述装置进一步包含:
用于基于所述一个或多个先前编码视频块中的一者来预测所述当前视频块的至少一个其它标头语法元素的预测装置;
其中当所述至少一个所预测的标头语法元素与所述当前视频块的实际标头语法元素相同时,所述编码装置编码旗标以指示对所述至少一个其它标头语法元素的所述预测成功。
26.根据权利要求25所述的装置,其中:
所述预测装置基于所述一个或多个先前编码视频块中的一者来一起预测所述当前视频块的预测模式、亮度经译码块模式CBP和色度CBP;以及
当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的实际预测模式、亮度CBP和色度CBP相同时,所述编码装置编码所述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测成功。
27.根据权利要求26所述的装置,其中当所述所预测的预测模式、亮度CBP和色度CBP与所述当前视频块的所述实际预测模式、亮度CBP和色度CBP不同时,所述编码装置编码所述旗标以指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测不成功,且分别地编码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
28.根据权利要求27所述的装置,其中所述旗标是第一旗标,且:
所述预测装置基于所述一个或多个先前编码视频块中的一者来预测所述当前视频块的所述预测模式;以及
当所述所预测的预测模式与所述当前视频块的所述实际预测模式相同时,所述编码装置编码第二旗标以指示对所述预测模式的所述预测成功。
29.根据权利要求23所述的装置,其中,所述一个或多个先前编码视频块包括与所述当前视频块邻近的视频块。
30.根据权利要求29所述的装置,其中所述邻近于所述当前视频块的一个或多个先前编码视频块至少包含直接位于所述当前视频块之上的第一先前编码邻近视频块和直接位于所述当前视频块左边的第二先前编码邻近视频块。
31.根据权利要求23所述的装置,其进一步包含用于发射所述经编码语法元素的装置。
32.根据权利要求23所述的装置,其中所述经译码单元包含帧和切片中的一者。
33.一种解码视频数据的方法,所述方法包含:
基于经译码单元的一个或多个先前解码视频块的对应语法元素,从多个译码表中选择译码表以用于解码所述经译码单元的当前视频块的语法元素,其中,所述当前视频块的语法元素识别所述当前视频块的块类型;
其中,选择所述译码表包括当所述一个或多个先前解码视频块中的每一视频块均具有第一块类型的块类型时,选择第一译码表,所述第一译码表将第一块类型与短于其它块类型的码字的码字相关联;
其中,选择所述译码表包括当所述一个或多个先前解码视频块中的至少一个解码视频块不具有所述第一块类型的块类型时,选择第二译码表,所述第二译码表将所述其它块类型中的至少一个块类型与短于同所述第一块类型相关联的码字的码字相关联;以及
使用所选择的所述第一译码表、所述第二译码表中之一来解码所述当前视频块的所述语法元素。
34.根据权利要求33所述的方法,其中所述第一块类型是帧内16×16块类型,且所述其它块类型至少包括帧内4×4块类型和帧内8×8块类型。
35.根据权利要求33所述的方法,其中所述语法元素包含所述当前视频块的第一标头语法元素,所述方法进一步包含:
基于所述一个或多个先前解码视频块中的一者来预测所述当前视频块的至少一个其它标头语法元素;以及
当旗标指示对所述语法元素的所述预测成功时,将所述至少一个所预测的语法元素选择作为所述当前视频块的所述语法元素。
36.根据权利要求35所述的方法,其中:
预测所述当前视频块的至少一个其它标头语法元素包含基于所述一个或多个先前解码视频块中的一者来一起预测所述当前视频块的预测模式、亮度经译码块模式CBP和色度CBP;以及
选择所述至少一个所预测的语法元素包含当旗标指示对所述预测模式、所述亮度CBP和所述色度CBP的所述预测成功时将所述所预测的预测模式、亮度CBP和色度CBP一起选择作为所述当前视频块的所述预测模式、亮度CBP和色度CBP。
37.根据权利要求36所述的方法,其进一步包含当所述旗标指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测不成功时分别地解码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
38.根据权利要求37所述的方法,其中所述旗标是第一旗标,且分别地解码所述预测模式、所述亮度CBP和所述色度CBP中的每一者包含:
基于所述一个或多个先前解码视频块中的一者来预测所述当前视频块的所述预测模式;以及
当第二旗标指示对所述预测模式的所述预测成功时,将所述所预测的预测块选择作为所述当前视频块的所述预测模式。
39.根据权利要求33所述的方法,其中,所述一个或多个先前解码视频块包括与所述当前视频块邻近的视频块。
40.根据权利要求39所述的方法,其中所述邻近于所述当前视频块的一个或多个先前解码视频块至少包含直接位于所述当前视频块之上的第一先前解码邻近视频块和直接位于所述当前视频块左边的第二先前解码邻近视频块。
41.根据权利要求33所述的方法,其中
所述经译码单元包含帧和切片中的一者。
42.一种解码装置,其包含:
选择单元,其基于经译码单元的一个或多个先前解码视频块的对应语法元素从多个译码表中选择译码表以用于解码所述经译码单元的当前视频块的语法元素,其中,所述当前视频块的语法元素识别所述当前视频块的块类型;
其中,当所述一个或多个先前解码视频块中的每一视频块均具有第一块类型的块类型时,所述选择单元选择第一译码表,所述第一译码表将第一块类型与短于其它块类型的码字的码字相关联;
其中,当所述一个或多个先前解码视频块中的至少一个解码视频块不具有所述第一块类型的块类型时,所述选择单元选择第二译码表,所述第二译码表将所述其它块类型中的至少一个块类型与短于同所述第一块类型相关联的码字的码字相关联;以及
解码单元,其使用所选择的所述第一译码表、所述第二译码表中之一来解码所述当前视频块的所述语法元素。
43.根据权利要求42所述的装置,其中所述第一块类型是帧内16×16块类型,且所述其它块类型至少包括帧内4×4块类型和帧内8×8块类型。
44.根据权利要求42所述的装置,其中所述语法元素包含所述当前视频块的第一标头语法元素,所述装置进一步包含:
预测单元,其基于所述一个或多个先前解码视频块中的一者来预测所述当前视频块的至少一个其它标头语法元素;
其中当旗标指示对所述语法元素的所述预测成功时,所述解码单元将所述至少一个所预测的语法元素选择作为所述当前视频块的所述语法元素。
45.根据权利要求44所述的装置,其中:
所述预测单元基于所述一个或多个先前解码视频块中的一者来一起预测所述当前视频块的预测模式、亮度经译码块模式CBP和色度CBP;以及
当旗标指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测成功时,所述解码单元将所述所预测的预测模式、亮度CBP和色度CBP选择作为所述当前视频块的所述预测模式、亮度CBP和色度CBP。
46.根据权利要求45所述的装置,其中当所述旗标指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测不成功时,所述解码单元分别地解码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
47.根据权利要求46所述的装置,其中所述旗标是第一旗标,且
所述预测单元基于所述一个或多个先前解码视频块中的一者来预测所述当前视频块的所述预测模式;以及
当第二旗标指示对所述预测模式的所述预测成功时,所述解码单元将所述所预测的预测块选择作为所述当前视频块的所述预测模式。
48.根据权利要求42所述的装置,其中,所述一个或多个先前解码视频块包括与所述当前视频块邻近的视频块。
49.根据权利要求48所述的装置,其中所述邻近于所述当前视频块的一个或多个先前解码视频块至少包含直接位于所述当前视频块之上的第一先前解码邻近视频块和直接位于所述当前视频块左边的第二先前解码邻近视频块。
50.根据权利要求42所述的装置,其中所述装置包含无线通信装置。
51.根据权利要求42所述的装置,其中所述装置包含集成电路装置。
52.根据权利要求42所述的装置,其中
所述经译码单元包含帧和切片中的一者。
53.一种解码装置,其包含:
用于基于经译码单元的一个或多个先前解码视频块的对应语法元素从多个译码表中选择译码表以用于解码所述经译码单元的当前视频块的语法元素的选择装置,其中,所述当前视频块的语法元素识别所述当前视频块的块类型;
其中,当所述一个或多个先前解码视频块中的每一视频块均具有第一块类型的块类型时,所述选择装置选择第一译码表,所述第一译码表将第一块类型与短于其它块类型的码字的码字相关联;
其中,当所述一个或多个先前解码视频块中的至少一个解码视频块不具有所述第一块类型的块类型时,所述选择装置选择第二译码表,所述第二译码表将所述其它块类型中的至少一个块类型与短于同所述第一块类型相关联的码字的码字相关联;以及
用于使用所选择的所述第一译码表、所述第二译码表中之一来解码所述当前视频块的所述语法元素的装置。
54.根据权利要求53所述的装置,其中所述第一块类型是帧内16×16块类型,且所述其它块类型至少包括帧内4×4块类型和帧内8×8块类型。
55.根据权利要求53所述的装置,其中所述语法元素包含所述当前视频块的第一标头语法元素,所述装置进一步包含:
用于基于所述一个或多个先前解码视频块中的一者来预测所述当前视频块的至少一个其它标头语法元素的预测装置;
其中当旗标指示对所述语法元素的所述预测成功时,所述解码装置将所述至少一个所预测的语法元素选择作为所述当前视频块的所述语法元素。
56.根据权利要求55所述的装置,其中:
所述预测装置基于所述一个或多个先前解码视频块中的一者来一起预测所述当前视频块的预测模式、亮度经译码块模式CBP和色度CBP;以及
当旗标指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测成功时,所述解码装置将所述所预测的预测模式、亮度CBP和色度CBP选择作为所述当前视频块的所述预测模式、亮度CBP和色度CBP。
57.根据权利要求56所述的装置,其中当所述旗标指示对所述预测模式、所述亮度CBP和所述色度CBP一起进行的预测不成功时,所述解码装置分别地解码所述预测模式、所述亮度CBP和所述色度CBP中的每一者。
58.根据权利要求57所述的装置,其中所述旗标是第一旗标,且:
所述预测装置基于所述一个或多个先前解码视频块中的一者来预测所述当前视频块的所述预测模式;以及
当第二旗标指示对所述预测模式的所述预测成功时,所述解码装置将所述所预测的预测块选择作为所述当前视频块的所述预测模式。
59.根据权利要求53所述的装置,其中,所述一个或多个先前解码视频块包括与所述当前视频块邻近的视频块。
60.根据权利要求59所述的装置,其中所述邻近于所述当前视频块的一个或一个以上先前解码视频块至少包含直接位于所述当前视频块之上的第一先前解码邻近视频块和直接位于所述当前视频块左边的第二先前解码邻近视频块。
61.根据权利要求53所述的装置,其中
所述经译码单元包含帧和切片中的一者。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US97973407P | 2007-10-12 | 2007-10-12 | |
US60/979,734 | 2007-10-12 | ||
US12/169,460 | 2008-07-08 | ||
US12/169,460 US9386316B2 (en) | 2007-10-12 | 2008-07-08 | Adaptive coding of video block header information |
PCT/US2008/079636 WO2009049250A2 (en) | 2007-10-12 | 2008-10-10 | Adaptive coding of video block header information |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101822057A CN101822057A (zh) | 2010-09-01 |
CN101822057B true CN101822057B (zh) | 2013-11-27 |
Family
ID=40456186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008801112276A Expired - Fee Related CN101822057B (zh) | 2007-10-12 | 2008-10-10 | 编码和解码视频数据的方法和装置 |
Country Status (10)
Country | Link |
---|---|
US (1) | US9386316B2 (zh) |
EP (1) | EP2225887B1 (zh) |
JP (2) | JP5925416B2 (zh) |
KR (1) | KR101135293B1 (zh) |
CN (1) | CN101822057B (zh) |
BR (1) | BRPI0818444A2 (zh) |
CA (1) | CA2701200C (zh) |
RU (1) | RU2452128C2 (zh) |
TW (1) | TWI429293B (zh) |
WO (1) | WO2009049250A2 (zh) |
Families Citing this family (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7590059B2 (en) * | 2004-05-21 | 2009-09-15 | Broadcom Corp. | Multistandard video decoder |
US8938009B2 (en) * | 2007-10-12 | 2015-01-20 | Qualcomm Incorporated | Layered encoded bitstream structure |
KR101439847B1 (ko) * | 2008-01-02 | 2014-09-16 | 삼성전자주식회사 | 부호화 정보의 압축률 향상을 이용한 영상 부호화, 복호화방법 및 장치 |
JP5206070B2 (ja) * | 2008-03-28 | 2013-06-12 | 富士通株式会社 | 復号装置および復号方法 |
KR101501568B1 (ko) * | 2008-07-04 | 2015-03-12 | 에스케이 텔레콤주식회사 | 영상 부호화 및 복호화 장치 및, 방법 |
WO2010020481A1 (en) * | 2008-08-18 | 2010-02-25 | Asml Netherlands B.V. | Projection system, lithographic apparatus, method of projecting a beam of radiation onto a target and device manufacturing method |
KR101306834B1 (ko) * | 2008-09-22 | 2013-09-10 | 에스케이텔레콤 주식회사 | 인트라 예측 모드의 예측 가능성을 이용한 영상 부호화/복호화 장치 및 방법 |
US8503527B2 (en) | 2008-10-03 | 2013-08-06 | Qualcomm Incorporated | Video coding with large macroblocks |
KR101590511B1 (ko) * | 2009-01-23 | 2016-02-02 | 에스케이텔레콤 주식회사 | 움직임 벡터 부호화/복호화 장치 및 방법과 그를 이용한 영상 부호화/복호화 장치 및 방법 |
KR101379185B1 (ko) * | 2009-04-14 | 2014-03-31 | 에스케이 텔레콤주식회사 | 예측 모드 선택 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
KR101527085B1 (ko) * | 2009-06-30 | 2015-06-10 | 한국전자통신연구원 | 인트라 부호화/복호화 방법 및 장치 |
KR101702553B1 (ko) * | 2009-07-04 | 2017-02-03 | 에스케이 텔레콤주식회사 | 영상 부호화/복호화 방법 및 장치 |
KR101379186B1 (ko) * | 2009-08-21 | 2014-04-10 | 에스케이 텔레콤주식회사 | 인트라 예측 부호화/복호화 방법 및 장치 |
KR20110068792A (ko) * | 2009-12-16 | 2011-06-22 | 한국전자통신연구원 | 적응적 영상 부호화 장치 및 방법 |
US20110194613A1 (en) * | 2010-02-11 | 2011-08-11 | Qualcomm Incorporated | Video coding with large macroblocks |
KR101997462B1 (ko) * | 2010-04-09 | 2019-07-08 | 엘지전자 주식회사 | 비디오 데이터 처리 방법 및 장치 |
US20110310976A1 (en) * | 2010-06-17 | 2011-12-22 | Qualcomm Incorporated | Joint Coding of Partition Information in Video Coding |
US9357229B2 (en) | 2010-07-28 | 2016-05-31 | Qualcomm Incorporated | Coding motion vectors in video coding |
KR20120016991A (ko) * | 2010-08-17 | 2012-02-27 | 오수미 | 인터 프리딕션 방법 |
US20120063515A1 (en) * | 2010-09-09 | 2012-03-15 | Qualcomm Incorporated | Efficient Coding of Video Parameters for Weighted Motion Compensated Prediction in Video Coding |
KR101719448B1 (ko) * | 2010-09-27 | 2017-03-23 | 엘지전자 주식회사 | 블록 분할 방법 및 복호화 장치 |
US9025661B2 (en) | 2010-10-01 | 2015-05-05 | Qualcomm Incorporated | Indicating intra-prediction mode selection for video coding |
US9172963B2 (en) * | 2010-11-01 | 2015-10-27 | Qualcomm Incorporated | Joint coding of syntax elements for video coding |
US9066102B2 (en) | 2010-11-17 | 2015-06-23 | Qualcomm Incorporated | Reference picture list construction for generalized P/B frames in video coding |
US8913662B2 (en) | 2011-01-06 | 2014-12-16 | Qualcomm Incorporated | Indicating intra-prediction mode selection for video coding using CABAC |
AU2011354441B2 (en) | 2011-01-07 | 2014-07-17 | Hfi Innovation Inc. | Method and apparatus of improved intra luma prediction mode coding |
BR112013014371B8 (pt) * | 2011-01-07 | 2022-05-24 | Hfi Innovation Inc | Método e aparelho de codificação aperfeiçoada de modo de predição intra crominância |
US20120183064A1 (en) | 2011-01-14 | 2012-07-19 | Sony Corporation | Codeword assignment for intra chroma mode signaling for hevc |
US9232227B2 (en) | 2011-01-14 | 2016-01-05 | Sony Corporation | Codeword space reduction for intra chroma mode signaling for HEVC |
AU2012221588B2 (en) | 2011-02-22 | 2015-12-17 | Sun Patent Trust | Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus |
TWI547152B (zh) * | 2011-02-22 | 2016-08-21 | 太格文 Ii有限責任公司 | 影像解碼方法及影像解碼裝置 |
US9363509B2 (en) | 2011-03-03 | 2016-06-07 | Electronics And Telecommunications Research Institute | Method for determining color difference component quantization parameter and device using the method |
WO2012118359A2 (ko) | 2011-03-03 | 2012-09-07 | 한국전자통신연구원 | 색차 성분 양자화 매개 변수 결정 방법 및 이러한 방법을 사용하는 장치 |
WO2012120582A1 (ja) * | 2011-03-07 | 2012-09-13 | パナソニック株式会社 | 動き補償装置、動画像符号化装置、動画像復号装置、動き補償方法、プログラム、及び集積回路 |
EP2685719B1 (en) | 2011-03-09 | 2019-10-30 | Panasonic Intellectual Property Corporation of America | Video image decoding device |
WO2012120908A1 (ja) | 2011-03-09 | 2012-09-13 | パナソニック株式会社 | 動画像符号化装置および動画像符号化方法 |
WO2012122495A1 (en) * | 2011-03-10 | 2012-09-13 | Huawei Technologies Co., Ltd. | Using multiple prediction sets to encode extended unified directional intra mode numbers for robustness |
JP5739714B2 (ja) * | 2011-04-04 | 2015-06-24 | 日本放送協会 | 符号化装置、復号装置及びプログラム |
US9008180B2 (en) | 2011-04-21 | 2015-04-14 | Intellectual Discovery Co., Ltd. | Method and apparatus for encoding/decoding images using a prediction method adopting in-loop filtering |
CN105791835A (zh) | 2011-06-23 | 2016-07-20 | Jvc建伍株式会社 | 图像编码装置和图像编码方法 |
CA2838989A1 (en) * | 2011-06-30 | 2013-01-03 | Vidyo, Inc. | Scalable video coding techniques |
EP3439299A1 (en) * | 2011-07-02 | 2019-02-06 | Samsung Electronics Co., Ltd. | Apparatus for multiplexing and demultiplexing video data to identify reproducing state of video data |
BR112014001026B1 (pt) | 2011-07-15 | 2022-05-03 | Ge Video Compression, Llc | Codificação de matriz de amostra de baixo atrasdo |
LT3661201T (lt) | 2011-07-19 | 2021-04-12 | Tagivan Ii Llc | Filtravimo būdas, vaizdo dekodavimo būdas, vaizdo kodavimo būdas, vaizdo dekodavimo aparatas, vaizdo kodavimo aparatas ir vaizdo kodavimo/dekodavimo aparatas |
US9699456B2 (en) * | 2011-07-20 | 2017-07-04 | Qualcomm Incorporated | Buffering prediction data in video coding |
US9948938B2 (en) * | 2011-07-21 | 2018-04-17 | Texas Instruments Incorporated | Methods and systems for chroma residual data prediction |
US11496760B2 (en) | 2011-07-22 | 2022-11-08 | Qualcomm Incorporated | Slice header prediction for depth maps in three-dimensional video codecs |
US9521418B2 (en) * | 2011-07-22 | 2016-12-13 | Qualcomm Incorporated | Slice header three-dimensional video extension for slice header prediction |
US10237565B2 (en) | 2011-08-01 | 2019-03-19 | Qualcomm Incorporated | Coding parameter sets for various dimensions in video coding |
US8792550B2 (en) | 2011-08-04 | 2014-07-29 | Qualcomm Incorporated | Color/gray patch prevention for video coding |
US9288505B2 (en) | 2011-08-11 | 2016-03-15 | Qualcomm Incorporated | Three-dimensional video with asymmetric spatial resolution |
US9432700B2 (en) * | 2011-09-27 | 2016-08-30 | Broadcom Corporation | Adaptive loop filtering in accordance with video coding |
KR20130049526A (ko) | 2011-11-04 | 2013-05-14 | 오수미 | 복원 블록 생성 방법 |
US10003817B2 (en) | 2011-11-07 | 2018-06-19 | Microsoft Technology Licensing, Llc | Signaling of state information for a decoded picture buffer and reference picture lists |
BR112014010966A2 (pt) * | 2011-11-08 | 2017-06-06 | Samsung Electronics Co Ltd | método para determinar vetor de movimento para previsão inter, aparelho determinador de vetor de movimento para previsão inter, e mídia de gravação legível por computador |
US9485503B2 (en) | 2011-11-18 | 2016-11-01 | Qualcomm Incorporated | Inside view motion prediction among texture and depth view components |
US20130127987A1 (en) * | 2011-11-18 | 2013-05-23 | Qualcomm Incorporated | Signaling depth ranges for three-dimensional video coding |
EP3139609B1 (en) * | 2012-01-03 | 2021-01-06 | HFI Innovation Inc. | Method and apparatus for block-based significance map and significance group flag context selection |
CN103220506B (zh) | 2012-01-19 | 2015-11-25 | 华为技术有限公司 | 一种编解码方法和设备 |
CN104093024B (zh) * | 2012-01-20 | 2017-08-04 | 华为技术有限公司 | 编解码方法和装置 |
CN103220508B (zh) | 2012-01-20 | 2014-06-11 | 华为技术有限公司 | 编解码方法和装置 |
US11039138B1 (en) | 2012-03-08 | 2021-06-15 | Google Llc | Adaptive coding of prediction modes using probability distributions |
CA2985277C (en) | 2012-06-11 | 2019-06-04 | Samsung Electronics Co., Ltd. | Video encoding method and apparatus, and video decoding method and apparatus sharing sao parameters between color components |
WO2014010955A1 (ko) * | 2012-07-11 | 2014-01-16 | 한국전자통신연구원 | Mpeg 데이터를 처리하는 방법 및 시스템 |
KR102147475B1 (ko) | 2012-07-11 | 2020-08-26 | 한국전자통신연구원 | Mpeg 데이터를 처리하는 방법 및 시스템 |
US8891888B2 (en) | 2012-09-05 | 2014-11-18 | Google Inc. | Entropy coding for recompression of images |
US9313500B2 (en) * | 2012-09-30 | 2016-04-12 | Microsoft Technology Licensing, Llc | Conditional signalling of reference picture list modification information |
US9510002B2 (en) | 2013-09-09 | 2016-11-29 | Apple Inc. | Chroma quantization in video coding |
KR20180019510A (ko) * | 2015-03-31 | 2018-02-26 | 리얼네트웍스 인코포레이티드 | 비디오 코딩시 오차 변환 및 역 변환 시스템들 및 방법들 |
WO2016209125A1 (en) * | 2015-06-23 | 2016-12-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and arrangements for transcoding |
KR102379196B1 (ko) * | 2017-05-31 | 2022-03-28 | 삼성전자주식회사 | 처리 장치들 및 그 제어 방법들 |
WO2019151284A1 (ja) * | 2018-01-30 | 2019-08-08 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
US11146810B2 (en) * | 2018-11-27 | 2021-10-12 | Qualcomm Incorporated | Decoder-side motion vector refinement |
WO2020156538A1 (en) | 2019-02-03 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between mv precisions and mv difference coding |
CN113424533B (zh) | 2019-02-14 | 2024-09-10 | 北京字节跳动网络技术有限公司 | 复杂度降低的解码器侧运动推导 |
CN111279699B (zh) * | 2019-04-26 | 2024-06-14 | 深圳市大疆创新科技有限公司 | 视频编解码的方法和装置 |
WO2020243206A1 (en) | 2019-05-28 | 2020-12-03 | Dolby Laboratories Licensing Corporation | Quantization parameter signaling |
EP4026322A4 (en) * | 2019-09-07 | 2024-01-03 | Beijing Dajia Internet Information Technology Co., Ltd. | PREDICTIVE MODE SIGNALING IN VIDEO CODING |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1229325A (zh) * | 1998-03-14 | 1999-09-22 | 大宇电子株式会社 | 编码视频信号的方法和设备 |
US6031872A (en) * | 1998-06-16 | 2000-02-29 | Daewoo Electronics Co., Ltd. | Method and apparatus for encoding a video signal |
CN1527610A (zh) * | 2003-09-18 | 2004-09-08 | �й���ѧԺ�����о��� | 用于视频预测残差系数编码的熵编码方法 |
US7565020B2 (en) * | 2004-07-03 | 2009-07-21 | Microsoft Corp. | System and method for image coding employing a hybrid directional prediction and wavelet lifting |
Family Cites Families (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5260693A (en) * | 1991-10-11 | 1993-11-09 | Spacelabs Medical, Inc. | Method and system for lossless and adaptive data compression and decompression |
US5751694A (en) * | 1995-05-22 | 1998-05-12 | Sony Corporation | Methods and apparatus for synchronizing temporally related data streams |
GB9519923D0 (en) | 1995-09-29 | 1995-11-29 | Philips Electronics Nv | Motion estimation for predictive image coding |
JP2000508855A (ja) * | 1996-04-12 | 2000-07-11 | イメディア コーポレイション | ビデオ・トランスコーダ |
JP3208101B2 (ja) | 1996-11-07 | 2001-09-10 | 松下電器産業株式会社 | 画像符号化方法および画像符号化装置並びに画像符号化プログラムを記録した記録媒体 |
EP1689189A3 (en) * | 1996-11-07 | 2008-12-10 | Panasonic Corporation | Image encoder and image decoder |
JPH10276436A (ja) | 1997-01-31 | 1998-10-13 | Victor Co Of Japan Ltd | 動き補償符号化復号化装置及び動き補償符号化復号化方法 |
JPH11122619A (ja) | 1997-10-17 | 1999-04-30 | Hitachi Ltd | 動画像符号化および復号化方法 |
US6549671B1 (en) * | 1998-02-19 | 2003-04-15 | Matsushita Electric Industrial Co., Ltd. | Picture data encoding apparatus with bit amount adjustment |
JPH11317942A (ja) | 1998-02-19 | 1999-11-16 | Matsushita Electric Ind Co Ltd | 画像符号化装置 |
JP2000013800A (ja) | 1998-06-18 | 2000-01-14 | Victor Co Of Japan Ltd | 画像伝送方法並びに符号化装置及び復号化装置 |
US6414608B1 (en) * | 1999-06-09 | 2002-07-02 | Matsushita Electric Industrial Co., Ltd. | Variable length code decoding device, digital broadcast receiving apparatus, and DVD reproducing apparatus |
JP3288677B2 (ja) | 1999-06-09 | 2002-06-04 | 松下電器産業株式会社 | 可変長符号復号化装置、デジタル放送受信装置及びdvd再生装置 |
JP3873678B2 (ja) | 2001-07-19 | 2007-01-24 | 日本電気株式会社 | ビデオパケット伝送装置及びビデオパケット伝送方法 |
JP4125565B2 (ja) | 2001-08-31 | 2008-07-30 | 松下電器産業株式会社 | 画像符号化方法、画像復号化方法及びその装置 |
ES2334894T4 (es) * | 2001-08-31 | 2010-06-21 | Panasonic Corporation | Procedimiento de descodificacion de imagenes y aparato relacionado. |
CN101448162B (zh) * | 2001-12-17 | 2013-01-02 | 微软公司 | 处理视频图像的方法 |
PT1486065E (pt) * | 2002-03-15 | 2016-03-30 | Nokia Technologies Oy | Método para codificação de movimento numa sequência de vídeo |
ES2328916T3 (es) | 2002-04-02 | 2009-11-19 | Nokia Corporation | Coeficientes de transformacion de codificacion en codificadores y/o descodificadores de imagenes/video. |
JP4230188B2 (ja) | 2002-06-06 | 2009-02-25 | パナソニック株式会社 | 可変長符号化方法および可変長復号化方法 |
US6646578B1 (en) * | 2002-11-22 | 2003-11-11 | Ub Video Inc. | Context adaptive variable length decoding system and method |
US7630440B2 (en) * | 2003-05-28 | 2009-12-08 | Broadcom Corporation | Context adaptive binary arithmetic code decoding engine |
US7769088B2 (en) * | 2003-05-28 | 2010-08-03 | Broadcom Corporation | Context adaptive binary arithmetic code decoding engine |
US7609762B2 (en) * | 2003-09-07 | 2009-10-27 | Microsoft Corporation | Signaling for entry point frames with predicted first field |
JP5280003B2 (ja) * | 2003-09-07 | 2013-09-04 | マイクロソフト コーポレーション | 映像コーデックにおけるスライス層 |
US7469070B2 (en) * | 2004-02-09 | 2008-12-23 | Lsi Corporation | Method for selection of contexts for arithmetic coding of reference picture and motion vector residual bitstream syntax elements |
US20050201471A1 (en) * | 2004-02-13 | 2005-09-15 | Nokia Corporation | Picture decoding method |
US8116374B2 (en) * | 2004-05-07 | 2012-02-14 | Broadcom Corporation | Method and system for generating a transform size syntax element for video decoding |
JP4327036B2 (ja) * | 2004-07-15 | 2009-09-09 | 株式会社東芝 | 算術符号復号化方法及びその装置 |
KR100612015B1 (ko) | 2004-07-22 | 2006-08-11 | 삼성전자주식회사 | 컨텍스트 적응형 이진 산술 부호화 방법 및 그 장치 |
EP1797722B1 (en) | 2004-10-05 | 2019-05-29 | Vectormax Corporation | Adaptive overlapped block matching for accurate motion compensation |
JP4442891B2 (ja) * | 2004-11-30 | 2010-03-31 | キヤノン株式会社 | 可変長符号化装置及び可変長符号化方法 |
JP2007020002A (ja) | 2005-07-08 | 2007-01-25 | Sharp Corp | 動画像符号化装置 |
WO2007010374A1 (en) * | 2005-07-21 | 2007-01-25 | Nokia Corporation | Variable length codes for scalable video coding |
CN102176754B (zh) | 2005-07-22 | 2013-02-06 | 三菱电机株式会社 | 图像编码装置和方法、以及图像解码装置和方法 |
CN100584025C (zh) * | 2005-08-04 | 2010-01-20 | 华为技术有限公司 | 一种基于内容自适应的算术解码系统及装置 |
WO2007027402A2 (en) | 2005-08-31 | 2007-03-08 | Micronas Usa, Inc. | Multi-stage cabac decoding pipeline |
KR100644713B1 (ko) * | 2005-10-31 | 2006-11-10 | 삼성전자주식회사 | 컨텍스트 기반 적응적 이진 산술 코딩 복호기에서 원소구문을 복호화하는 방법 및 이를 위한 복호화 장치 |
WO2007063612A1 (ja) | 2005-11-30 | 2007-06-07 | Sharp Kabushiki Kaisha | 動画像符号化装置、動画像復号装置 |
JP4553837B2 (ja) | 2005-12-26 | 2010-09-29 | 三洋電機株式会社 | 復号装置 |
KR100791295B1 (ko) | 2006-01-12 | 2008-01-04 | 삼성전자주식회사 | 플래그 부호화 방법, 플래그 복호화 방법, 및 상기 방법을이용한 장치 |
US7983343B2 (en) | 2006-01-12 | 2011-07-19 | Lsi Corporation | Context adaptive binary arithmetic decoding for high definition video |
US8036517B2 (en) * | 2006-01-25 | 2011-10-11 | Qualcomm Incorporated | Parallel decoding of intra-encoded video |
US8848789B2 (en) | 2006-03-27 | 2014-09-30 | Qualcomm Incorporated | Method and system for coding and decoding information associated with video compression |
US8204129B2 (en) * | 2007-03-27 | 2012-06-19 | Freescale Semiconductor, Inc. | Simplified deblock filtering for reduced memory access and computational complexity |
US8938009B2 (en) * | 2007-10-12 | 2015-01-20 | Qualcomm Incorporated | Layered encoded bitstream structure |
US9521418B2 (en) * | 2011-07-22 | 2016-12-13 | Qualcomm Incorporated | Slice header three-dimensional video extension for slice header prediction |
US9866829B2 (en) * | 2012-01-22 | 2018-01-09 | Qualcomm Incorporated | Coding of syntax elements that correspond to coefficients of a coefficient block in video coding |
-
2008
- 2008-01-10 BR BRPI0818444A patent/BRPI0818444A2/pt not_active Application Discontinuation
- 2008-07-08 US US12/169,460 patent/US9386316B2/en not_active Expired - Fee Related
- 2008-10-10 CN CN2008801112276A patent/CN101822057B/zh not_active Expired - Fee Related
- 2008-10-10 EP EP08838437.5A patent/EP2225887B1/en not_active Not-in-force
- 2008-10-10 WO PCT/US2008/079636 patent/WO2009049250A2/en active Application Filing
- 2008-10-10 KR KR1020107010365A patent/KR101135293B1/ko not_active IP Right Cessation
- 2008-10-10 JP JP2010529115A patent/JP5925416B2/ja not_active Expired - Fee Related
- 2008-10-10 RU RU2010119029/07A patent/RU2452128C2/ru not_active IP Right Cessation
- 2008-10-10 CA CA2701200A patent/CA2701200C/en active Active
- 2008-10-13 TW TW097139292A patent/TWI429293B/zh not_active IP Right Cessation
-
2014
- 2014-11-10 JP JP2014228455A patent/JP2015084525A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1229325A (zh) * | 1998-03-14 | 1999-09-22 | 大宇电子株式会社 | 编码视频信号的方法和设备 |
US6031872A (en) * | 1998-06-16 | 2000-02-29 | Daewoo Electronics Co., Ltd. | Method and apparatus for encoding a video signal |
CN1527610A (zh) * | 2003-09-18 | 2004-09-08 | �й���ѧԺ�����о��� | 用于视频预测残差系数编码的熵编码方法 |
US7565020B2 (en) * | 2004-07-03 | 2009-07-21 | Microsoft Corp. | System and method for image coding employing a hybrid directional prediction and wavelet lifting |
Also Published As
Publication number | Publication date |
---|---|
RU2010119029A (ru) | 2011-11-20 |
JP2011501533A (ja) | 2011-01-06 |
US20090175334A1 (en) | 2009-07-09 |
BRPI0818444A2 (pt) | 2016-10-11 |
CA2701200C (en) | 2014-07-15 |
RU2452128C2 (ru) | 2012-05-27 |
WO2009049250A2 (en) | 2009-04-16 |
WO2009049250A3 (en) | 2009-05-28 |
CN101822057A (zh) | 2010-09-01 |
EP2225887B1 (en) | 2014-03-19 |
KR101135293B1 (ko) | 2012-04-12 |
JP2015084525A (ja) | 2015-04-30 |
TW200950529A (en) | 2009-12-01 |
US9386316B2 (en) | 2016-07-05 |
JP5925416B2 (ja) | 2016-05-25 |
CA2701200A1 (en) | 2009-04-16 |
EP2225887A2 (en) | 2010-09-08 |
TWI429293B (zh) | 2014-03-01 |
KR20100067129A (ko) | 2010-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101822057B (zh) | 编码和解码视频数据的方法和装置 | |
US8848787B2 (en) | Enhancement layer coding for scalable video coding | |
US8483285B2 (en) | Video coding using transforms bigger than 4×4 and 8×8 | |
CN101868978B (zh) | 经分层编码位流结构 | |
KR100991409B1 (ko) | 스케일가능성을 갖는 비디오 처리 | |
RU2497303C2 (ru) | Видео кодирование с использованием преобразования больше чем 4×4 и 8×8 | |
CN101828399B (zh) | 用于可缩放位深度的可缩放视频译码方法和设备 | |
JP5307017B2 (ja) | リファインメント係数符号化のためのビデオブロックに基づいた可変長符号化テーブル選択 | |
JP4981927B2 (ja) | Svccgs拡張層コーディングに関するcavlc拡張 | |
JP6518701B2 (ja) | ディスプレイストリーム圧縮(dsc)のためのエントロピーコーディング技法 | |
US20220264153A1 (en) | Systems and methods for signaling hypothetical reference decoder parameters in video coding | |
RU2406254C2 (ru) | Видеообработка с масштабируемостью | |
KR20140010185A (ko) | 합성 비디오에서의 무손실 코딩 및 관련 시그널링 방법 | |
KR101147943B1 (ko) | 스케일러블 비디오 코딩을 위한 개선된 향상 계층 코딩 | |
CN102447907A (zh) | 一种针对hevc的视频序列的编码方法 | |
US20120236940A1 (en) | Method for Efficient Parallel Processing for Real-Time Video Coding | |
US20190098305A1 (en) | Block Partition Structure in Video Compression | |
Jamil et al. | Performance of H. 264 in Real Time Optimization | |
Sun et al. | Video Compression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131127 Termination date: 20181010 |
|
CF01 | Termination of patent right due to non-payment of annual fee |