CN101855908B - 用于可缩放视频译码的改进的加强层译码 - Google Patents
用于可缩放视频译码的改进的加强层译码 Download PDFInfo
- Publication number
- CN101855908B CN101855908B CN200880115482.8A CN200880115482A CN101855908B CN 101855908 B CN101855908 B CN 101855908B CN 200880115482 A CN200880115482 A CN 200880115482A CN 101855908 B CN101855908 B CN 101855908B
- Authority
- CN
- China
- Prior art keywords
- coefficient
- video blocks
- video
- decoding
- refining
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/34—Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/36—Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明描述可缩放视频译码技术。明确地说,所述技术可用以在单次译码操作中编码视频块的精化以用于加强层位流,借此减少译码复杂性、译码延迟和存储器要求。在一些例子中,所述技术在不知晓任何后续系数的情况下编码所述加强层的系数向量的每一非零系数。在单次操作中对所述加强层进行译码可消除执行分析所述系数向量的第一次操作和用于基于所述分析对所述系数向量进行译码的第二次操作的需要。
Description
相关申请案的交叉参考
本申请案主张2007年10月15日申请的第60/979,919号美国临时申请案以及2007年10月16日申请的第60/940,214号美国临时申请案的权益。这些申请案的每一者的内容以引用的方式并入本文中。
技术领域
本发明涉及数字视频译码,且更特定来说涉及对视频数据的可缩放视频译码。
背景技术
数字视频能力可并入于广泛范围的装置中,所述装置包括数字电视、数字直播系统、无线通信装置、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、数码相机、数字记录装置、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电话等。数字视频装置实施视频压缩技术,例如运动图片专家组(MPEG)-2、MPEG-4或国际电信联盟标准化部门(ITU-T)H.264/MPEG-4部分10先进视频译码(AVC)(下文中为“H.264/MPEG-4部分10AVC”标准),以更有效地发射并接收数字视频。视频压缩技术执行空间和时间预测以减少或移除视频序列中的固有冗余。
在视频译码中,视频压缩通常包括空间预测和/或运动估计和运动补偿以产生预测视频块。帧内译码依靠空间预测来减少或移除给定译码单元(例如,帧或片)内的视频块之间的空间冗余。换句话说,视频编码器执行空间预测以基于同一译码单元内的其它数据来压缩数据。相反,帧间译码依靠时间预测来减少或移除视频序列的连续视频帧的视频块之间的时间冗余。因此,对于帧间译码来说,视频编码器执行运动估计和运动补偿以追踪两个或两个以上相邻译码单元的匹配的视频块的移动。
在空间或时间预测之后,通过从正被译码的原始视频块减去预测视频块而产生残余系数的块(称为残余块或残余信息)。残余块可为量化预测视频块与原始块之间的差的系数值的二维矩阵。视频编码器可对残余块应用变换、量化和熵译码过程以进一步减少与残余块的通信相关联的位速率。变换技术可包含离散余弦变换(DCT)、子波变换、整数变换或其它类型的变换。
在DCT变换中,例如,变换过程将一组像素域系数转换为变换系数,所述变换系数表示像素域系数在频域或变换域中的能量。向变换系数应用量化以产生经量化的变换系数。量化通常限制与任何给定系数相关联的位的数目。视频编码器对经量化的变换系数进行熵编码以进一步压缩经量化的变换系数。视频编码器可使用可变长度译码(VLC)、算术译码、固定长度译码或其组合来对所述系数进行熵编码。视频解码器可执行反向操作以重建视频序列。
例如MPEG-2等一些视频译码标准以相对恒定的质量、位速率或空间分辨率来编码视频。此技术可能足以向具有类似解码器能力(例如,存储器或处理资源)和/或连接质量的装置提供视频应用。然而,更多现代视频发射系统通常包括具有变化的解码器能力和/或连接质量的装置。在此类系统中,发射以相对恒定的质量、位速率或空间分辨率编码的视频导致视频应用编程对于具有适当解码器能力和/或连接质量的装置工作,且对于不具有适当解码器能力和/或连接质量的装置不工作。在无线上下文中,例如,较靠近视频发射源定位的装置比较远离源定位的装置可能具有更高质量连接。如此,较远离源定位的装置可能不能接收以恒定质量、位速率或空间分辨率发射的经编码的视频。
其它视频译码标准利用可缩放译码技术来克服这些问题。(例如)根据ITU-TH.264/MPEG-4部分10AVC的扩展的可缩放视频译码(SVC)指代其中将视频序列编码为一基础层和一个或一个以上可缩放加强层的视频译码。对于SVC来说,基础层通常携载具有基本空间、时间和/或质量等级的视频数据。一个或一个以上加强层携载额外视频数据以支持更高空间、时间和/或质量等级。加强层可(例如)向基础层的帧添加空间分辨率,或可添加额外帧以增加总帧速率。在一些例子中,可以比加强层的发射更可靠的方式发射基础层。如此,较远离经编码视频的源定位或具有较低解码器能力的装置可能能够接收基础层,且因此接收视频序列,即使处于最低空间、时间和/或质量等级。
发明内容
本发明描述允许在单次译码操作中对加强层位流进行熵编码的可缩放视频译码技术。常规地,使用多次译码操作来编码加强层位流。对于加强层的每一视频块来说,例如,第一次译码操作可收集在选择用于对块进行熵译码的译码表(或码簿)中使用的块的统计数据,且第二次译码操作可使用所选择的译码表来对块进行熵编码。然而,根据本发明中的技术,在不执行收集在视频译码表选择中使用的统计数据的第一次译码操作的情况下对加强层位流的视频块进行熵编码。
替代地,使用在单次译码操作中在逐系数基础上编码加强层的系数的译码技术来编码加强层。在一个例子中,对于加强层视频块的非零系数中的每一者来说,视频编码器可编码块结束(EOB)符号、游程长度和正负号。视频编码器可使用仅单一译码表来编码加强层的视频块,借此消除执行收集用于选择译码表的统计数据的第一次译码操作的需要。
另外,视频编码器可能并不编码加强层中的非零系数的量值。以此方式,加强层的所有非零系数的量值可限制为量值1。不编码加强层的系数的量值可导致峰值信噪比(PSNR)的某一损耗,但减少用以编码加强层的位的数目。本发明的技术可提供若干优点。举例来说,所述技术可减少用于编码加强层位流的译码复杂性、译码延迟和存储器要求,同时维持译码效率。
在一个方面中,一种使用可缩放视频译码来编码视频数据的方法包含以第一质量编码视频块作为基础层位流的一部分。所述方法还包括编码视频块的精化作为至少一个加强层位流的一部分,所述视频块的精化在与以第一质量编码的视频块组合时导致具有大于第一质量的第二质量的视频块。所述方法还包括在单次编码操作中编码视频块的精化。
在另一方面中,一种用于使用可缩放视频译码来编码视频数据的装置包含至少一个编码器,所述至少一个编码器以第一质量编码视频块作为基础层位流的一部分,且编码视频块的精化作为至少一个加强层位流的一部分,所述视频块的精化在与以第一质量编码的视频块组合时导致具有大于第一质量的第二质量的视频块。在单次编码操作中编码视频块的精化。
在另一方面中,一种包含指令的计算机可读媒体,所述指令促使一个或一个以上处理器以第一质量编码视频块作为基础层位流的一部分;且编码视频块的精化作为至少一个加强层位流的一部分,所述视频块的精化在与以第一质量编码的视频块组合时导致具有大于第一质量的第二质量的视频块。在单次编码操作中编码视频块的精化。
在另一方面中,一种用于使用可缩放视频译码来编码视频数据的装置包含:用于以第一质量编码视频块作为基础层位流的一部分的第一装置;以及用于编码视频块的精化作为至少一个加强层位流的一部分的第二装置,所述视频块的精化在与以第一质量编码的视频块组合时导致具有大于第一质量的第二质量的视频块。在单次编码操作中编码视频块的精化。
在另一方面中,一种使用可缩放视频译码来解码视频数据的方法包含以第一质量解码基础层位流以获得视频块,以及解码加强层位流以获得视频块的精化,所述视频块的精化在与以第一质量解码的视频块组合时导致具有第二质量的视频块。解码加强层包括对于视频块的精化的每一非零系数来说解码指示存在至少一个剩余非零系数的符号、指示非零系数之前的零值系数的数目的游程长度,以及非零系数的正负号。
在另一方面中,一种用于使用可缩放视频译码来解码视频数据的装置包含至少一个解码器,所述至少一个解码器以第一质量解码基础层位流以获得视频块,且解码加强层位流以获得视频块的精化,所述视频块的精化在与以第一质量解码的视频块组合时导致具有第二质量的视频块。所述至少一个解码器对于视频块的精化的每一非零系数来说解码指示存在至少一个剩余非零系数的符号、指示非零系数之前的零值系数的数目的游程长度,以及非零系数的正负号。
在另一方面中,一种包含指令的计算机可读媒体,所述指令促使一个或一个以上处理器以第一质量解码基础层位流以获得视频块;且解码加强层位流以获得视频块的精化,所述视频块的精化在与以第一质量解码的视频块组合时导致具有第二质量的视频块。所述指令促使所述一个或一个以上处理器对于视频块的精化的每一非零系数来说解码指示存在至少一个剩余非零系数的符号、指示非零系数之前的零值系数的数目的游程长度,以及非零系数的正负号。
在另一方面中,一种用于使用可缩放视频译码来解码视频数据的装置包含:用于以第一质量解码基础层位流以获得视频块的第一装置;以及用于解码加强层位流以获得视频块的精化的第二装置,所述视频块的精化在与以第一质量解码的视频块组合时导致具有第二质量的视频块。所述第二解码装置对于视频块的精化的每一非零系数来说解码指示存在至少一个剩余非零系数的符号、指示非零系数之前的零值系数的数目的游程长度,以及非零系数的正负号。
本发明中所描述的技术可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,那么软件可执行于处理器中,所述处理器可指代一个或一个以上处理器,例如,微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或数字信号处理器(DSP),或其它等效集成或离散逻辑电路。包含用以执行所述技术的指令的软件最初可存储于计算机可读媒体中,且被载入并由处理器来执行。
因此,本发明还预期包含指令的计算机可读媒体,所述指令促使处理器执行如本发明中所描述的各种技术中的任一者。在一些状况下,计算机可读媒体可形成计算机程序产品的一部分,所述计算机程序产品可出售给制造商和/或用于装置中。计算机程序产品可包括计算机可读媒体,且在一些状况下还可包括封装材料。
在随附图式和以下描述内容中阐述本发明的一个或一个以上方面的细节。从描述内容和图式且从权利要求书中将了解本发明中描述的技术的其它特征、目的和优点。
附图说明
图1是说明支持视频可缩放性的视频发射系统的框图。
图2是进一步详细地说明图1的译码系统的源装置和目的地装置的框图。
图3是进一步详细地说明实例基础层编码器和加强层编码器的框图。
图4是进一步详细地说明实例基础层熵编码器和加强层熵编码器的框图。
图5是进一步详细地说明基础层解码器和加强层解码器的实例的框图。
图6是进一步详细地说明实例基础层熵解码器和加强层熵解码器的框图。
图7是说明4×4系数块的Z字形扫描的概念图。
图8是说明加强层视频块的系数块的假设实例的概念图。
图9是说明执行本发明的可缩放视频译码技术的视频编码器的实例操作的流程图。
图10是说明根据本发明的一个方面编码加强层视频块的残余系数的加强层编码器的实例操作的流程图。
图11是说明解码加强层位流以获得残余变换系数的向量的加强层解码器的实例操作的流程图。
图12到图15是说明根据本发明用于可缩放视频译码中的编码器和/或解码器的不同配置的框图。
具体实施方式
图1是说明支持视频可缩放性的视频发射系统10的框图。在图1的实例中,视频发射系统10包括一源装置12和多个目的地装置14A、14B(共同地为“目的地装置14”)。源装置12从一个或一个以上源获得数字视频内容,且编码视频内容以供发射到目的地装置14。视频内容可(例如)被实时或近实时地俘获、存档(例如,预先俘获)、计算机产生,或其组合。在每一状况下,视频内容可通过源装置12来编码以经由通信信道发射到目的地装置14。源装置12可包括或耦合到发射器,所述发射器包括适当射频(RF)调制、滤波和放大器组件以驱动一个或一个以上天线经由通信信道递送经编码视频。
为了支持可缩放视频,源装置12将源视频编码为一基础层位流(或基础层)以及一个或一个以上可缩放加强层位流(或加强层)。基础层位流通常携载具有基础质量等级的视频数据。一个或一个以上加强层携载本文中称为精化的额外视频数据以支持较高质量等级。在加强层中编码的精化可(例如)通过提供额外较高频率系数或进一步精化现有系数而逐渐增加保真度(例如,视觉质量)。在一些例子中,可以比加强层的发射更可靠的方式(例如,以较低包错误率(PER))发射基础层。
在图1中所说明的实例中,为了简单起见,展示一个信道的基础层和单一加强层。然而,源装置12可编码所述信道的携载额外视频数据的一个以上加强层。在一些例子中,源装置12可在单独位流中编码源视频以支持用于由与目的地装置14相关联的用户选择的不同信道。通常同时发射信道,使得目的地装置14在任何时间可选择不同信道以用于观看。因此,非常类似于电视观看体验,目的地装置14在用户控制下可选择一个信道以观看体育,且接着选择另一信道以观看新闻或某一其它排定的广播节目事件。一般来说,可将每一信道编码为一基础层和一个或一个以上加强层。
此外,出于说明性目的,在质量可缩放性(也称为信噪比(SNR)可缩放性)的上下文中描述本发明的技术。然而,可将所述技术扩展到空间可缩放性。在空间可缩放性应用中,基础层以基础空间分辨率携载视频数据,且加强层携载额外视频数据以支持较高空间分辨率。在一些例子中,系统10可利用组合SNR、空间和/或时间可缩放性的视频可缩放性。
源装置12可(例如)根据ITU-T H.264/MPEG-4部分10AVC标准的SVC扩展而将源视频编码为基础层,且根据本发明中描述的技术将源视频编码为加强层。如此,如本发明中描述的技术在一些方面中可经应用以实施另外符合H.264标准的装置的视频可缩放性扩展。实际上,本发明的技术可表示用于H.264标准或其它标准的将来版本或扩展的潜在修改。然而,可结合各种其它视频压缩标准中的任一者来使用所述技术,所述标准例如在MPEG-1和MPEG-2中界定的那些标准、ITU-T H.263标准、电影与电视工程师协会(SMPTE)421M视频CODEC标准(统称为“VC-1”)、由中国音频视频译码标准工作小组界定的标准(统称为“AVS”),以及由标准组织界定或由组织开发为专属标准的任何其它视频译码标准。
目的地装置14可支持经编码视频的有线和/或无线接收。目的地装置14可包含例如无线通信装置等能够接收并解码数字视频数据的任何装置,例如蜂窝式或卫星无线电话、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、数码相机、数字记录装置、视频游戏装置、视频游戏控制台、数字电视、数字直播系统等。在图1的实例中,展示两个目的地装置14A、14B。然而,系统10可包括任何数目的目的地装置14。目的地装置14也可根据上述各种视频压缩标准中的任一者来操作。
图1表示目的地装置14相对于发射经编码视频的源装置12的定位。明确地说,目的地装置14A较靠近发射源(即,图1中的源装置12),且目的地装置14B较远离发射源。在以较低PER编码基础层的状况下,两个目的地装置14A和14B可可靠地接收并解码基础层。较靠近源装置12定位的目的地装置14A还可可靠地接收加强层。然而,较远离源装置12定位的目的地装置14B可能(例如)归因于网络或信道条件而无法可靠地接收加强层。
如此,因为基础层和加强层数据两者为可用的,所以较靠近的目的地装置14A能够具有较高质量视频,而目的地装置14B仅能够呈现由基础层数据提供的最小质量等级。因此,在加强层的额外位可经解码并添加到基础层位流以增加经解码视频的信噪比(SNR)的意义上,目的地装置14获得的视频为可缩放的。然而,仅当加强层数据存在时,可缩放性为可能的。因此,如本发明中使用的术语“质量”可指代客观和/或主观视觉质量。换句话说,加强层精化导致为原始数据的较高质量再现的视频数据。以此方式,通过加强层来增加视频的保真度。
在其它例子中,网络或信道条件对于目的地装置14A和14B两者可能均足以接收基础层和加强层。然而,目的地装置14A和14B可具有不同解码器能力,所述不同解码器能力防止目的地装置14A和14B中的一者使用加强层的额外视频数据来产生较高质量视频。如果目的地装置14中的一者为客户端装置(例如,移动手持机或(例如)其它小型便携式装置,那么可能存在归因于计算复杂性和存储器要求的限制。因此,可以具有有限计算或存储器资源的目的地装置14仅可解码基础层的方式来设计可缩放视频译码。以此方式,具有较好网络或信道条件和/或较高解码器能力的目的地装置14将能够使用加强层的额外视频数据重建具有较高视频质量的视频。
本发明中描述的技术利用促进加强层位流的有效译码的熵译码技术。本发明的熵译码技术可实现在单次编码操作中在加强层位流中对(例如)呈精化形式的额外视频数据进行译码,借此减少译码复杂性、译码延迟和存储器要求。如将进一步详细描述,源装置12在一些例子中可在不知晓任何后续系数(即,当前正被译码的非零系数之后的任何系数)的情况下编码加强层的系数向量的每一非零系数。在单次操作中对加强层进行译码可消除执行用以分析系数向量的第一次操作和用于基于所述分析而对系数向量进行译码的第二次操作的需要。
举例来说,一些常规熵编码器可执行第一次编码操作以产生用以表示系数向量的符号,所述符号中的至少一些表示一个以上非零系数。换句话说,需要知晓后续系数以编码系数向量的非零系数。另外或作为替代,一些常规熵编码器还可在第一次或后续编码操作期间选择VLC表以用于编码符号。在一个方面中,可基于所产生的符号来选择VLC表。或者,可通过在第一次编码操作期间分析系数向量而收集统计数据,且可基于所收集的统计数据来选择VLC表。
接着由常规熵编码器来执行第二次编码操作以基于在第一次编码操作期间执行的分析来对系数向量进行熵编码。作为一个实例,一些常规熵编码器在第二次编码操作期间可使用基于所产生的符号或其它统计数据选择的VLC表来编码在第一次操作期间产生的符号。产生表示一个以上非零系数的符号和/或基于所产生的符号或其它统计数据选择VLC表可允许更有效地编码系数向量。
本发明的技术不仅消除使用一次以上编码操作来编码加强层的需要,而且本发明的熵译码技术可另外导致在不存储和存取基础层的视频数据的系数信息的情况下对加强层进行译码,从而进一步减少计算复杂性和存储器要求。
源装置12、目的地装置14或两者可为如上所述的无线或有线通信装置。并且,源装置12、目的地装置14或两者可实施为集成电路装置(例如,集成电路芯片或芯片集),所述集成电路装置可并入到无线或有线通信装置中或支持数字视频应用的另一类型的装置(例如,数字媒体播放器、个人数字助理(PDA)、数字电视等)中。
图2是进一步详细说明译码系统10的源装置12和目的地装置14的框图。目的地装置14可(例如)为图1的目的地装置14A或14B中的任一者。如图2中所示,源装置12可包括视频源18、视频编码器20和发射器22。源装置12的视频源18可包括视频俘获装置,例如摄影机、含有先前俘获的视频的视频档案,或来自视频内容提供者的视频馈入。作为另一替代方案,视频源18可产生基于计算机图形的数据作为源视频,或实况视频和计算机产生的视频的组合。在一些状况下,源装置12可为所谓的相机电话或视频电话,在此状况下视频源18可为摄影机。在每一状况下,经俘获,预俘获或计算机产生的视频可由视频编码器20编码以经由发射器22和通信信道16从源装置12发射到目的地装置14。
视频编码器20从视频源18接收视频数据,且将视频数据编码为一基础层位流和一个或一个以上加强层位流。在图2中所说明的实例中,视频编码器20包括基础层编码器30和加强层编码器32。基础层编码器30和加强层编码器32从视频源18接收共用视频数据。基础层编码器30以第一位速率编码视频数据以产生视频的处于第一质量等级的基础层位流。加强层编码器32编码额外位以产生一个或一个以上加强层,所述一个或一个以上加强层在添加到基础层的位等级时将视频加强为第二较高质量等级。换句话说,加强层在添加到基础层时提供第二较高位速率,所述第二较高位速率提供较高质量等级。如此,可将加强层看作编码在基础层中编码的视频数据的精化。所述精化可(例如)为额外系数和/或对现有系数的精化。在加强层中的精化随着其被解码而逐渐增加视频数据的质量的意义上,在加强层中编码的精化可为层级式的。如此,对所有加强层的精化的解码(例如)将导致最高位速率和最大质量,而仅对第一加强层的精化的解码相对于仅对基础层的解码将产生位速率和质量的递增增加。
从视频源18接收到的视频数据可为一系列视频帧。基础层编码器30和加强层编码器32将所述系列的帧分为译码单元,并处理所述译码单元以编码所述系列的视频帧。译码单元可(例如)为整个帧或帧的部分(例如,帧的片)。基础层编码器30和加强层编码器32将每一译码单元分为像素块(本文中称为视频块或块),且对个别译码单元内的视频块操作以便编码视频数据。如此,视频数据可包括多个帧,一帧可包括多个片,且一片可包括多个视频块。
视频块可具有固定或变化的大小,且根据指定译码标准可在大小上有所不同。作为一实例,ITU-T 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以及用于色度分量的相应经缩放的大小。在H.264/MPEG-4部分10AVC中,可将通常称为宏块(MB)的每一视频块再分为具有固定或变化的大小的子块。即,译码单元可含有具有相同或不同大小的子块。一般来说,MB和各种子块可视作视频块。因此,MB可视作视频块,且在经分割或子分割情况下,MB自身可被视作界定视频块集合。
编码器30、32执行帧的视频块的帧内译码和帧间译码。帧内译码依靠空间预测来减少或移除给定译码单元(例如,帧或片)内的视频数据中的空间冗余。对于帧内译码来说,编码器30、32基于与当前正被译码的块相同的帧内的一个或一个以上先前编码的块而形成空间预测块。预测块可为当前正被译码的视频块的预测型式。基础层编码器30可(例如)通过使用当前帧的基础层内的一个或一个以上先前编码块的像素值来执行内插(根据与块相关联的帧内译码模式)而基于帧内的一个或一个以上先前编码块来产生预测块。加强层编码器32可基于帧内的一个或一个以上先前编码块而产生预测块。加强层编码器32可(例如)基于来自帧内的基础层和加强层的一个或一个以上先前编码视频块而产生预测块。举例来说,加强层编码器32可使用来自以下两者的像素值的加权和而产生预测块:来自基础层的至少一个先前编码视频块和来自加强层的至少一个先前编码视频块。
帧间译码依靠时间预测来减少或移除视频序列的相邻帧内的时间冗余。对于帧间译码来说,编码器30、32执行运动估计以追踪译码单元内的两个或两个以上相邻帧之间的密切匹配的视频块的移动。在帧间预测状况下,编码器30、32可基于来自译码单元内的其它帧的一个或一个以上先前编码块产生时间预测块。编码器30、32可(例如)比较当前视频块与一个或一个以上相邻视频帧中的块以识别相邻帧中的与当前视频块最密切地匹配的块,例如所述一个或一个以上相邻帧中的具有最小均方误差(MSE)、平方差和(SSD)、绝对差和(SAD)或其它差量度的块。编码器30、32选择相邻帧中的经识别块作为预测块。基础层编码器30比较当前视频块与基础层的一个或一个以上相邻帧中的块。加强层编码器32可比较当前视频块与基础层和/或加强层中的一个或一个以上相邻帧中的块。
在视频块的基于帧内或帧间的预测之后,编码器30、32通过从正被译码的原始视频块减去所产生的预测块而产生残余块。残余块因此指示预测块与正被译码的当前块之间的差。编码器30、32可应用变换、量化和熵译码过程以进一步减少与残余块的通信相关联的位速率。可包括离散余弦变换(DCT)、整数变换、子波变换、定向变换或其它变换运算的变换技术将一组像素差值改变为残余变换系数,所述残余变换系数表示像素差值在频域中的能量。编码器30、32向残余变换系数应用量化,其通常涉及限制与任何给定系数相关联的位的数目的过程。编码器30、32扫描二维残余块以产生系数的一维向量,并对系数向量进行熵编码以进一步压缩残余系数。熵编码可(例如)包括可变长度译码(VLC)、算术译码、固定长度译码、上下文自适应VLC(CAVLC)、上下文自适应二进制算术译码(CABAC)和/或其它熵译码技术。
SNR可缩放性可通过残余量化来实现。明确地说,基础层编码器30可使用第一量化参数(QP)来量化残余变换系数,且加强层编码器32可使用第二QP来量化残余变换系数。在ITU-T H.264/MPEG-10AVC中,较大QP通常导致以较小数目的位以较低质量编码视频数据,而较小QP导致以较大数目的位以较高质量编码视频数据。如此,以最小质量等级编码视频数据的基础层编码器30可使用大于加强层编码器32用以量化加强层的系数的QP值的QP值来量化基础层的系数。因此,来自基础层编码器30的经量化的残余变换系数表示处于第一质量的视频序列,且来自加强层编码器的经量化的残余变换系数表示额外系数或对视频序列的现有系数的精化,所述额外系数或对视频序列的现有系数的精化在与基础层组合时将视频序列的质量增加到第二较高质量。
编码器30、32每一者接收分别表示基础层和加强层的经量化的残余变换系数的一维系数向量。换句话说,基础层编码器30接收基础层的系数的向量,且加强层编码器32接收相应加强层的系数的向量。虽然编码器30、32接收相同的原始视频数据,但系数的向量可为不同的。这可归因于产生不同预测块的基础层编码器30和加强层编码器32,例如基础层编码器30从一个或一个以上先前编码的基础层块产生预测块,且加强层编码器32从一个或一个以上先前编码的基础层块和加强层块产生预测块。
基础层编码器30和加强层编码器32每一者编码相应系数向量以分别产生基础层位流和至少一个加强层位流。根据本发明的技术,基础层编码器30和加强层编码器32使用不同译码技术编码相应系数向量。基础层编码器30可使用多次编码操作过程来编码系数向量,在所述多次编码操作过程中,基础层编码器30在至少一次编码操作期间分析系数向量,且基于所述分析在至少一次后续编码操作期间编码系数向量。在一个例子中,基础层编码器30可根据如在H.264/MPEG-4部分10AVC标准中界定的CAVLC来编码基础层系数向量的经量化的残余变换系数。如在H.264/MPEG-4部分10AVC标准中界定的CAVLC可使用多次编码操作来编码基础层系数向量。
在第一次编码操作期间,基础层编码器30可产生用以表示系数向量的符号,所述符号中的至少一些表示一个以上非零系数,且在一些状况下表示系数向量的全部系数。基础层编码器30可(例如)根据如在H.264/MPEG-4部分10AVC标准中界定的CAVLC产生符号,所述符号表示系数向量中的系数的总数(“TotalCoeffs”)、系数向量中的尾随的1的数目(“T1s”)、任何尾随的1的正负号、除尾随的1外的非零系数的量值(或电平)、所有游程的和(“sumRuns”)和每一非零系数之前的游程。为了产生符号中的一些(例如,TotalCoeff和sumRuns),基础层编码器30可分析整个系数向量。
在第一次编码操作期间,基础层编码器30还可基于对系数向量的分析选择VLC表以在后续次的编码操作期间使用。在一些例子中,基础层编码器30可基于在第一次译码操作期间产生的符号选择VLC表以在后续次(例如,第二次)编码操作期间使用。举例来说,基础层编码器30可基于块中的系数的总数(TotalCoeffs)选择VLC表以在编码sumRuns符号时使用,因为在这两个值之间存在某一关系。明确地说,随着TotalCoeffs增加,sumRuns降低,且随着TotalCoeffs降低,sumRuns增加。再次,基于块中的系数的总数(TotalCoeffs)选择VLC表以在编码sumRuns符号时使用可允许基础层编码器30选择更有效地编码sumRuns的VLC表。可针对待编码的其它符号或使用其它所收集的统计数据来执行类似VLC表选择。
基础层编码器30在第二次或其它后续次的编码操作期间编码表示系数向量中的非零系数的总数的符号(TotalCoeff)和表示尾随的1的数目的符号(称为T1s)。尾随的1的数目是具有为1的量值的系数的数目,在以相反次序(即,从系数向量的末端开始)读取系数向量时,所述系数在具有大于1的量值的系数出现之前出现在系数向量中。基础层编码器30可基于非零系数的预测数目来选择VLC表以在编码TotalCoeff和T1符号中使用,且使用所选择的VLC表来编码TotalCoeff和T1符号。基于非零系数的预测数目来选择VLC表以在编码TotalCoeff和T1符号中使用可允许基础层编码器30选择更有效地编码TotalCoeff和T1符号的VLC表。如此,不同VLC表对于非零系数的不同预测数目可为更有效的。在一个实例中,基础层编码器30可基于一个或一个以上先前编码的视频块(例如,上部邻近视频块和左侧邻近视频块)的非零系数的数目预测当前块中的非零系数的数目。
基础层编码器30可编码任何尾随的1的正负号。举例来说,对于尾随的1中的每一者来说,基础层编码器30可编码“1”(如果尾随的1的正负号为正),且编码“0”(如果尾随的1的正负号为负)。如此,基础层编码器30可能不需要针对正负号而执行VLC表选择。基础层编码器30可编码除尾随的1外的非零系数的量值。基础层编码器30可使用VLC表、固定长度译码或其它类型的熵译码来编码非零系数的电平。举例来说,基础层编码器30可使用二进制译码来编码非零系数的电平。
基础层编码器30可编码表示在最后非零系数之前在系数向量中发生的零值系数的数目的符号(sumRuns)。如上所述,基础层编码器30可基于块中的系数的总数(TotalCoeffs)选择VLC表以在编码sumRuns符号时使用,因为在这两个值之间存在某一关系。
基础层编码器30可编码从系数向量的最后非零系数开始在每一非零系数之前发生的游程(或游程长度)。游程长度是非零系数之前的零值系数的数目。因此,基础层编码器30可首先编码系数向量的最后非零系数之前的游程长度(即,零值系数的数目),之后是前一非零系数之前的游程长度等等,直到编码系数向量的第一非零系数之前的游程长度为止。
基础层编码器30可选择VLC表以用来单独地编码游程长度中的每一者。基础层编码器30可基于游程的和(sumRuns)符号和迄今为止经译码的游程的和来选择VLC表以用来编码当前游程值。作为一实例,如果系数向量具有为八的游程和(sumRuns),且在编码最后非零系数之前编码的游程为六,那么所有剩余游程必须为零、一或二。因为可能的游程长度随着每一额外游程经编码而逐渐变短,所以基础层编码器30可选择更有效的VLC表以减少用以表示游程的位的数目。
以此方式,基础层编码器30执行多次编码操作以编码基础层系数,所述多次编码操作包括分析基础层残余块的系数向量(例如)以产生符号和/或选择VLC表的第一次操作,和基于所述分析编码系数向量的第二次编码操作。虽然基础层编码器30上文中被描述为使用如在H.264/MPEG-4部分10AVC标准中界定的CAVLC编码经量化的残余变换系数,但基础层编码器30可使用其它译码方法来编码经量化的残余变换系数。
加强层编码器32编码可呈系数向量形式的加强层的经量化残余变换系数。加强层编码器32可产生不同于基础层的经量化残余系数的经量化残余系数。加强层的经量化残余系数归因于在量化期间使用不同QP而可不同于基础层的经量化残余系数。另外,所述经量化的残余变换系数可不同于基础层的经量化残余变换系数,因为残余块表示原始视频块与使用形成基础层和加强层的先前编码块产生的预测块之间的差。基础层的残余块是原始视频块与仅使用来自基础层的先前编码块产生的预测块之间的差。如此,加强层可包括额外系数和/或对现有系数的精化。在此意义上,加强层中的视频块的经量化残余变换系数表示对基础层中的以第一质量编码的视频块的精化,且其在添加到基础层时提供较高质量视频数据。
加强层编码器32视可用位速率而定在编码期间可丢弃系数向量的经量化残余系数中的一者或一者以上。举例来说,在如图3中所说明使用Z字形扫描完成系数扫描时,加强层编码器32可丢弃对应于高频率变换基础函数的系数,例如朝系数向量的末端定位的系数。根据如在H.264/MPEG-4部分10AVC标准中界定的CAVLC编码经量化残余系数可能不允许加强层编码器32丢弃系数,因为待编码的符号中的至少一些(例如,TotalCoeffs和sumRuns)涉及块中的所有系数。如果加强层编码器32丢弃系数向量的系数中的一者或一者以上,那么接收到的信息将为冗余的,因此导致较低译码效率。此外,因为解码器必须接收块中的所有非零系数的游程以在使用如在H.264/MPEG-4部分10AVC标准中界定的CAVLC进行编码时能够在Z字形扫描中适当地解码每一系数的位置,所以加强层编码器32可能不能丢弃来自加强层的系数向量的系数。
如此,加强层编码器32根据本发明的译码技术来编码加强层的系数。加强层编码器32在单次编码操作中编码系数向量的经量化残余变换系数。换句话说,加强层编码器32并不执行用以分析系数向量的第一次操作且接着基于所述分析在第二次操作期间编码符号。替代地,加强层编码器32从系数向量的开始起始,且在单次编码操作中逐一地编码非零系数中的每一者。以此方式,加强层编码器32可在不分析系数向量中的任何后续系数的情况下(即,在不知晓系数向量的任何后续系数的情况下)编码非零系数中的每一者。
在一个方面中,加强层编码器32对于非零系数中的每一者来说可编码指示在系数向量中存在至少一个剩余非零系数的符号。所述符号可(例如)为块结束(EOB)符号。加强层编码器32可使用单一位来编码符号。举例来说,加强层编码器32在存在至少一个剩余非零系数(例如,至少当前非零系数)时可编码零,且在不再存在剩余非零系数时可编码一。
在每一系数的EOB符号之后,加强层编码器32编码当前非零系数之前的游程。如上所述,游程表示在系数向量的先前非零系数或系数向量的开始(在第一非零系数的状况下)与当前非零系数之间发生的零值系数的数目。加强层编码器32可使用单一VLC表来编码游程。在一个例子中,在TotalCoeffs等于一时,加强层编码器32可使用在如H.264/MPEG-4部分10AVC标准中界定的CAVLC中使用的VLC表来编码游程以对sumRuns进行译码。换句话说,加强层编码器32可重新使用已由视频编码器20维持的VLC表中的一者。在其它例子中,加强层编码器32可使用已由视频编码器20维持的其它VLC表中的一者来编码游程。或者,加强层编码器32可维持经特定地设计以编码加强层的系数向量的游程的单独VLC表。在任一状况下,加强层编码器32可能不需要自适应地选择VLC表以用于编码游程。替代地,加强层编码器32可使用单一VLC表,因此消除对收集用以选择VLC表的统计数据的第一次操作的需要。
在每一系数的经编码游程之后,加强层编码器32编码非零系数的正负号。加强层编码器32可(例如)编码“1”(如果非零系数的正负号为正),且编码“0”(如果非零系数的正负号为负)。加强层编码器32可通过将非零系数的量值设定为一而调整非零系数的量值。在一些例子中,加强层编码器32可能不编码非零系数的量值。以此方式,加强层编码器32可将非零系数的量值限制为一。目的地装置14接着经配置以解码在精化中识别的所有非零系数以具有等于一的量值。不编码加强层的系数的量值可导致峰值信噪比(PSNR)的某一损耗,但减少用以编码系数的位的数目。
以此方式,加强层编码器32可(例如)在不知晓系数向量中的任何后续系数的情况下在单次操作中编码加强层位流的系数。由于加强层编码器32并不需要分析系数向量(例如)以产生表示向量的一个以上非零系数的符号或选择VLC表以编码符号,所以仅执行一次编码操作。常规编码器通常执行至少两次操作;(1)分析系数向量的第一次操作,和(2)基于所述分析编码系数向量的第二次操作。另外,加强层编码器32可使用单一VLC表编码加强层的系数,因此消除执行用以形成用于自适应地选择译码表的符号的一次编码操作的需要。以此方式,加强层编码器32可减少译码复杂性、译码延迟和存储器要求。此外,本发明的熵译码技术可另外导致在不存储和存取基础层的系数信息的情况下对加强层的系数进行译码,从而进一步减少计算复杂性和存储器要求。
源装置12经由发射器22向目的地装置14发射经编码的视频数据。目的地装置14可包括接收器24、视频解码器26和显示装置28。接收器24经由信道16从源装置12接收经编码的视频位流。如上所述,经编码的视频位流包括一基础层位流和一个或一个以上加强层位流。视频解码器26解码基础层和(如果可用)一个或一个以上加强层以获得视频数据。
明确地说,视频解码器26包括基础层解码器34和加强层解码器36。基础层解码器34以第一质量解码经由信道16接收到的基础层位流以产生视频数据以供呈现于显示装置28上。加强层解码器36解码所述一个或一个以上加强层的位流以获得额外视频数据(例如,精化),所述额外视频数据将经解码的视频数据的质量增加到第二较高质量。再次,由目的地装置14接收到的加强层的数目(例如,一、二、三或三以上)可视信道条件或其它限制而定。此外,由加强层解码器36处理的接收到的加强层的数目可视解码器限制而定。一般来说,与所选择数目的加强层结合的基础层的编码和解码准许经解码视频的SNR质量的增量改进。
基础层解码器34解码基础层以获得表示基础层的经量化残余系数的向量的符号。基础层解码器34可解码基础层以获得块中的非零系数的总数、块的尾随的1的数目、尾随的1的正负号、除尾随的1外的系数的量值、所有游程的和,以及非零系数中的每一者之前的游程。基础层解码器34可进一步解码基础层位流以识别用于解码基础层符号的VLC表。在其它例子中,基础层解码器34可基于先前解码的符号而选择VLC表以供使用。使用经解码的符号,基础层解码器34可重建基础层的系数向量。
加强层解码器36解码加强层的位流以获得(例如)呈额外残余系数的向量或对现有残余系数的精化形式的加强层的精化。明确地说,加强层解码器36使用与由加强层编码器32使用的VLC表相同的VLC表解码加强层系数的游程和正负号,直到EOB符号指示不再剩余非零系数为止。使用经解码的符号,加强层解码器36重建加强层块的系数向量。
解码器34、36使用经解码的经量化残余系数重建译码单元的块中的每一者。在产生系数向量之后,解码器34、36反向扫描系数向量以产生经量化残余系数的二维块。解码器34、36反量化(即,解量化)经量化残余系数且向经解量化的残余系数应用反变换(例如,反DCT、反整数变换、反子波变换或反定向变换)以产生像素值的残余块。
解码器34、36对由解码器34、36产生的预测块与像素值的残余块求和,以分别形成经重建的基础层视频块和加强层视频块。基础层视频块和加强层视频块经组合以形成具有较高分辨率的视频块。解码器34、36以与如上文相对于编码器30、32描述的方式相同的方式产生预测块。目的地装置14可经由显示装置28将重建的视频块显示给用户。显示装置28可包含各种显示装置中的任一者,例如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、发光二极管(LED)显示器、有机LED显示器或另一类型的显示单元。
在一些例子中,视频编码器20和视频解码器26经配置以提供可经任意截断的可缩放加强位流。因此,系统10可避免使用必须整体进行译码的离散加强层以便实现可缩放性。然而,在一些实施例中,系统10可经配置以(例如)在选择性基础上使用一般化精细粒度可缩放性(FGS)方法或离散加强层来支持可缩放性。
源装置12和目的地装置14可以大体上对称的方式来操作。举例来说,源装置12和目的地装置14可每一者包括视频编码和解码组件。因此,系统10可支持装置12、14之间的(例如)用于视频串流、视频广播或视频电话的单向或双向视频发射。
在一些方面中,对于视频广播来说,本发明中所描述的技术可应用于经加强的H.264视频译码以用于在使用仅前向链路(FLO)空中接口规范“用于地面移动多媒体多播的仅前向链路空中接口规范”(作为技术标准TIA-1099(“FLO规范”)在2007年7月公布)的地面移动多媒体多播(TM3)系统中递送实时视频服务。也就是说,通信信道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(通用包无线电服务)或EDGE(加强型数据GSM环境))、TETRA(地面集群无线电)移动电话系统、宽带码分多址(WCDMA)系统、高数据速率1xEV-DO(第一代演进仅数据)或1xEV-DO黄金多播系统、IEEE 402.18系统、MediaFLOTM系统、DMB系统、DVB-H系统,或用于两个或两个以上装置之间的数据通信的另一方案。
视频编码器20和视频解码器26可每一者实施为一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。视频编码器20和视频解码器26中的每一者可包括于一个或一个以上编码器或解码器中,所述编码器或解码器的任一者可在相应移动装置、订户装置、广播装置、服务器等中集成为经组合编码器/解码器(CODEC)的一部分。此外,源装置12和目的地装置14每一者可包括用于发射和接收经编码视频的适当调制、解调制、频率转换、滤波和放大组件(如可适用地),包括足以支持无线通信的射频(RF)无线组件和天线。然而,为了易于说明,此类组件概括为图1中的源装置12的发射器22和目的地装置14的接收器24。
图3是进一步详细地说明实例基础层编码器30和加强层编码器32的框图。在图3的实例中,基础层编码器30包括预测单元33A、帧存储件35A、变换单元38A、量化单元40A、系数扫描单元41A、反量化单元42A、反变换单元44A、基础层熵编码器46,以及求和器48A和48B(“求和器48”)。将图3中的不同特征描绘为单元希望突出所说明装置的不同功能方面,且并不一定暗示此类单元必须通过单独硬件或软件组件来实现。事实上,与一个或一个以上单元相关联的功能性可集成在共用或单独硬件或软件组件内。
预测单元33A使用帧内预测或帧间预测产生预测块。预测块可为正被译码的当前视频块的预测型式。如上所述,预测单元33A可基于与当前正在译码的块相同的帧内的基础层的一个或一个以上先前经编码块而使用帧内预测产生预测块。或者,预测单元可基于基础层的一个或一个以上相邻帧内的一个或一个以上先前经编码块而使用帧间预测而产生预测块。预测单元33A可从帧存储件35A检索先前经编码块。
在视频块的基于帧内或帧间的预测之后,基础层编码器30通过在求和器48A处从当前视频块减去由预测单元33A产生的预测块而产生残余块。残余块包括量化当前视频块的像素值与预测块的像素值之间的差的像素差值的集合。残余块可以二维块格式(例如,像素值的二维矩阵或阵列)来表示。换句话说,残余块为像素值的二维表示。
变换单元38A向残余块应用变换以产生残余变换系数。变换单元38A可(例如)应用DCT、整数变换、定向变换、子波变换或其组合。在向像素值的残余块应用变换之后,量化单元40A量化变换系数以进一步减少位速率。在量化之后,反量化单元42A和反变换单元44A可分别应用反量化和反变换以重建残余块。求和器48B将经重建的残余块与由预测单元33A产生的预测块相加以产生经重建的视频块以供存储于帧存储件35A中。存储于帧存储件34中的经重建的视频块可由基础层编码器30的预测单元32来使用以对后续视频块进行帧内或帧间译码。另外,如以下将更详细描述,存储于帧存储件35A中的经重建的视频块可由加强层编码器32的预测单元33B使用以对加强层中的视频块的精化进行帧内或帧间译码。
在量化之后,系数扫描单元41A将系数从二维块格式扫描为一维向量格式,所述过程通常称为系数扫描。系数扫描单元41A可(例如)使用如在图7中进一步详细描述的Z字形扫描次序来扫描系数的二维块。在扫描之后,基础层熵编码器46对一维向量的系数进行熵编码。基础层编码器46可(例如)使用如在H.264/MPEG-4部分10AVC标准中界定且以上参看图2详细描述的CAVLC来对系数向量的系数进行熵编码。
加强层编码器32包括预测单元33B、帧存储件35B、变换单元38B、量化单元40B、系数扫描单元41B、反量化单元42B、反变换单元44B、加强层熵编码器49,以及求和器48C和48D(“求和器48”)。加强层编码器32的单元大体上类似于基础层编码器30的经类似编号的那些单元。如此,将仅描述差异。
加强层编码器32的预测单元33B产生为当前视频块的预测型式的预测块。不同于基础层编码器30的仅使用基础层的先前经编码块产生预测块的预测单元33A,加强层编码器32的预测单元33B可基于基础层和加强层的一个或一个以上先前经编码块而产生预测块。换句话说,预测单元33B可使用来自基础层的经重建视频块和加强层的经重建视频块而产生预测块。举例来说,预测单元33B可组合基础层的经重建视频块与加强层的经重建块以产生处于第二较高质量的预测块。
因为由预测单元33B产生的预测块是基于基础层和加强层两者的经重建视频块而产生,所以在求和器48C处产生的残余块表示当前视频块与从基础层和加强层建构(即,处于第二较高视觉质量)的先前经编码块之间的差。
虽然操作上类似于基础层编码器30的量化单元40A,但加强层编码器32的量化单元40B可使用不同QP以量化变换系数。如上文参看图2所描述,SNR可缩放性可通过使用不同量化参数而实现。举例来说,当基础层编码器30和加强层编码器32根据ITU-TH.264/MPEG-10AVC操作时,量化单元40A可使用大于由量化单元40B使用的QP值的QP值而编码视频数据。因此,来自基础层编码器30的经量化的残余变换系数表示处于第一质量的视频序列,且来自加强层编码器32的经量化的残余变换系数表示额外系数或对视频序列的现有系数的精化,所述额外系数或对视频序列的现有系数的精化在与基础层组合时将视频序列的质量增加到第二较高视觉质量。
此外,如参看图2详细描述,加强层熵编码器49在单次编码操作中编码经量化的残余变换系数。换句话说,加强层熵编码器49可在不知晓系数向量的任何后续系数的情况下编码加强层的系数向量的每一非零系数。在单次操作中对加强层进行译码可消除执行分析系数向量的第一次操作和用于基于所述分析而对系数向量进行译码的第二次操作的需要。替代地,加强层熵编码器49从系数向量的开始起始,且在单次编码操作中逐一地编码系数中的每一者。以下参看图4描述关于加强层的熵编码的更多细节。
图4是进一步详细地说明实例基础层熵编码器46和加强层熵编码器49的框图。基础层熵编码器46可包括分析单元50、多个VLC表52A到52N(“VLC表52”)、总系数编码器54、尾随的1(T1s)编码器56、正负号编码器58、系数量值编码器60、和游程编码器62,以及游程长度编码器64。加强层熵编码器49可包括EOB符号编码器66、游程长度编码器68、正负号编码器70和VLC表69。
基础层熵编码器46通过执行多次编码操作而编码表示处于第一质量的视频块的系数向量。根据如在H.264/MPEG-4部分10AVC标准中界定的CAVLC,例如,基础层熵编码器46可执行分析系数向量以(例如)产生表示系数向量的符号和/或选择VLC表的第一次编码操作,以及基于所述分析编码系数向量的第二次编码操作。
作为一实例,基础层熵编码器46的分析单元50可分析系数向量以产生表示系数块的一个或一个以上符号。分析单元50可(例如)根据H.264/MPEG-4部分10AVC标准来确定块中的总系数的数目(TotalCoeff)、尾随的1的数目(T1s)、每一尾随的1的正负号、每一非零系数的量值、游程的总和(sumRuns),以及每一非零系数之前的游程长度。由分析单元50产生的符号中的至少一些(例如,TotalCoeff和sumRuns)可表示系数向量的全部系数。分析单元50在其它例子中可产生较多符号或较少符号。
另外或作为替代,分析单元50在第一次或后续次编码操作期间可选择VLC表52的子集以用于编码符号。在一个方面中,分析单元50可基于所产生的符号来选择VLC表52的子集。或者,分析单元50可在系数向量的分析期间收集统计数据,基于收集到的统计数据而选择VLC表52的子集。举例来说,基础层编码器30可基于块中的系数的总数(TotalCoeffs)选择VLC表以在编码sumRuns符号时使用,因为在这两个值之间存在某一关系。如以下将详细描述,基于所产生的符号或其它统计数据来选择VLC表52的子集可实现更有效地编码表示系数向量的符号。
基础层熵编码器46在第二次或其它后续次译码操作期间编码系数向量。明确地说,总系数编码器54编码系数向量中的非零系数的总数(TotalCoeff)。总系数编码器54可使用基于当前系数向量的非零系数的数目的预测而选择的VLC表52中的一者来编码TotalCoeff。在一个实例中,可基于一个或一个以上先前经编码的视频块(例如,上部邻近视频块和左侧邻近视频块)的非零系数的数目而进行对当前系数向量的非零系数的数目的预测。以此方式,基础层熵解码器可基于先前经解码的块而选择同一VLC表。
在总系数编码器54编码非零系数的总数之后,T1s编码器56编码T1s符号。T1s编码器56可(例如)以与以上相对于总系数编码器54描述的方式相同的方式使用基于非零系数的经预测数目选择的VLC表52中的一者来编码T1s符号。
正负号编码器58编码任何尾随的1的正负号。举例来说,对于尾随的1中的每一者来说,正负号编码器58可编码“1”(如果尾随的1的正负号为正),且编码“0”(如果尾随的1的正负号为负)。系数量值编码器60编码除尾随的1外的非零系数的电平(例如,量值)。系数量值编码器60可使用VLC表、固定长度译码或其它类型的熵译码来编码非零系数的电平。
游程和编码器62可编码表示在最后非零系数之前在系数向量中发生的零值系数的数目的符号,即sumRuns符号。游程和编码器62使用基于块中的系数的总数(TotalCoeffs)选择的VLC表52中的一者而编码sumRuns符号。再次,基于块中的系数的总数(TotalCoeffs)选择VLC表以在编码sumRuns符号时使用可允许游程和编码器62选择更有效地编码sumRuns的VLC表。
游程长度编码器64编码系数向量的游程长度。游程长度编码器64可首先编码系数向量的最后非零系数的游程长度,之后是前一非零系数的游程长度等等,直到编码系数向量的第一非零系数之前的游程长度为止。换句话说,游程长度编码器可首先开始编码最后的游程长度。游程长度编码器64可使用基于系数向量的总游程的和(sumRuns)以及迄今为止经译码的游程的和选择的VLC表52而编码游程长度中的每一者。作为一实例,如果系数向量具有为八的游程和(sumRuns),且在编码最后非零系数之前编码的游程为六,那么所有剩余游程必须为零、一或二。因为可能的游程长度随着每一额外游程经编码而逐渐变短,所以游程长度编码器64可选择更有效的VLC表以减少用以表示游程的位的数目。以此方式,由游程长度编码器64使用的VLC表52对于游程长度中的每一者来说可变化。
加强层熵编码器49在单次编码操作中编码表示(例如)呈额外系数或对现有系数的精化形式的对视频块的精化的系数向量以形成加强层。如将进一步详细描述,源装置12在一些例子中可在不知晓任何后续系数的情况下编码加强层的系数向量中的每一非零系数。加强层熵编码器49可从系数向量的开始起始,且在单次编码操作中逐一编码系数中的每一者。以此方式,加强层编码器49在不分析在系数向量中稍后发生的系数的情况下在逐系数基础上编码系数向量。在单次操作中对加强层进行译码可消除执行分析系数向量的第一次操作和用于基于所述分析而对系数向量进行译码的第二次操作的需要。
对于非零系数中的每一者来说,EOB符号编码器66编码指示在系数向量中存在至少一个剩余非零系数的EOB符号。举例来说,EOB符号编码器66在存在至少一个剩余非零系数(例如,至少当前非零系数)时可编码零,且在不再存在剩余非零系数时可编码一。
在编码每一系数的EOB符号之后,游程长度编码器68编码非零系数之前的游程长度。如上所述,游程长度表示先于当前非零系数的零值系数的数目。游程长度编码器68可使用单一VLC表69来编码游程长度。在一个例子中,VLC表69可与基础层熵编码器46的VLC表52中的一者相同。或者,游程长度编码器68可维持经特定地设计以编码加强层的系数向量的游程的单独VLC表。在任一状况下,游程长度编码器68可能不需要自适应地选择VLC表以用于编码游程。替代地,游程长度编码器68可使用单一VLC表,因此消除对收集用以选择VLC表的统计数据的第一次操作的需要。
在每一系数的经编码的游程长度之后,正负号编码器70编码非零系数的正负号。正负号编码器70可(例如)编码“1”(如果非零系数的正负号为正),且编码“0”(如果非零系数的正负号为负)。加强层熵编码器49可能不编码加强层的非零系数的量值,其可导致峰值信噪比(PSNR)的某一损耗,但减少用以编码系数的位的数目。
本发明的熵译码技术可允许加强层熵编码器49在单次操作中编码加强层位流的系数。由于加强层熵编码器49并不分析系数向量(例如)以产生符号和/或选择VLC表,所以仅需要一次编码操作。常规编码器通常执行至少两次操作;(1)分析系数向量的第一次操作,和(2)基于所述分析编码系数向量的第二次操作。另外,加强层熵编码器49可使用单一VLC表编码加强层的系数,因此消除执行用以从各种VLC表做出选择的一次编码操作的需要。以此方式,加强层熵编码器49可减少译码复杂性、译码延迟和存储器要求。此外,本发明的熵译码技术可另外导致在不存储和存取基础层的系数信息的情况下对加强层的系数进行译码,从而进一步减少计算复杂性和存储器要求。
图5是进一步详细地说明基础层解码器34和加强层解码器36的实例的框图。基础层解码器34包括基础层熵解码器72、系数扫描单元74A、反量化单元76A、反变换单元78A、预测单元80A、帧存储件82A和求和器84A。加强层解码器34包括加强层熵解码器86、系数扫描单元74A、反量化单元76A、反变换单元78A、预测单元80A、帧存储件82A和求和器84A。
基础层熵解码器72以第一质量解码接收到的基础层位流以产生视频数据以供呈现于显示装置上。基础层熵解码器72接收基础层位流且解码基础层位流以获得(例如,呈经量化残余系数的一维向量形式的)残余信息和(例如,呈一个或一个以上标头语法元素形式的)标头信息。基础层熵解码器72执行由图3和图4的基础层熵编码器46执行的编码的互逆解码功能。
明确地说,基础层熵解码器72解码基础层以获得表示基础层的经量化残余系数的向量的符号。在使用如在H.264/MPEG-4部分10AVC标准中界定的CAVLC进行译码时,例如,基础层熵解码器72可解码基础层以获得块中的非零系数的总数(TotalCoeff)、块的尾随的1的数目(T1s)、尾随的1的正负号、除尾随的1外的系数的量值、所有游程的和(sumRuns),以及非零系数中的每一者之前的游程。在一些例子中,针对解码选择的VLC表可基于先前经解码的块或当前块的先前经解码符号来选择。在其它例子中,基础层熵解码器34可解码基础层位流以识别用于解码基础层符号的VLC表。使用经解码的符号,基础层解码器34可重建基础层的系数向量。
在产生系数向量之后,系数扫描单元74A反向扫描系数向量以产生经量化残余系数的二维块。反量化单元76A反量化(即,解量化)经量化残余系数,且反变换单元78A向经解量化的残余系数应用反变换(例如,反DCT、反整数变换、反子波变换或反定向变换)以产生像素值的残余块。
预测单元80A在帧内预测的状况下使用共同帧内的一个或一个以上相邻块或在帧间预测的状况下使用相邻帧内的一个或一个以上块来产生预测块。预测单元仅使用来自基础层的先前经编码块而产生预测块。求和器84A对由预测单元80A产生的预测块与像素值的残余块求和以形成经重建的基础层视频块。将基础层视频块存储于帧存储件82A内以用于产生后续预测块。
加强层解码器36解码加强层的位流以获得(例如)呈额外残余系数的向量或对现有残余系数的精化形式的对视频数据的精化。加强层熵解码器86使用与由加强层熵编码器49使用的VLC表相同的VLC表解码加强层系数的游程和正负号,直到EOB符号指示不再剩余非零系数为止。使用经解码的符号,加强层熵解码器86重建加强层块的系数向量。经解码的系数向量表示额外位,所述额外位表示在与基础层的位组合时使经解码的视频数据质量增加到第二较高质量的精化。
在产生系数向量之后,系数扫描单元74B反向扫描系数向量以产生经量化残余系数的二维块。反量化单元76B反量化(即,解量化)经量化残余系数,且反变换单元78B向经解量化的残余系数应用反变换(例如,反DCT、反整数变换、反子波变换或反定向变换)以产生像素值的残余块。
预测单元80B在帧内预测的状况下使用共同帧内的一个或一个以上相邻块或在帧间预测的状况下使用相邻帧内的一个或一个以上块来产生预测块。预测单元使用来自基础层和加强层两者的先前经编码块而产生预测块。求和器84B对由预测单元80B产生的预测块与像素值的残余块求和以形成经重建的加强层视频块。将加强层视频块存储于帧存储件82B内以由预测单元80B用于产生后续预测块。在求和器84C处组合经重建的基础层视频块与经重建的加强层视频块以形成具有较高质量的视频块。
图6是进一步详细地说明实例基础层熵解码器72和加强层熵解码器86的框图。基础层熵解码器72可包括多个VLC表52A到52N(“VLC表52”)、总系数解码器90、尾随的1(T1s)解码器92、正负号解码器94、系数量值解码器96、和游程解码器98,以及游程长度解码器100。加强层熵解码器86可包括EOB符号解码器102、游程长度解码器104、正负号解码器106和VLC表69。
基础层熵解码器72以基本质量等级解码基础层位流以获得表示视频块的系数向量的符号。总系数解码器90使用VLC表52中的一者解码位流以获得系数向量中的非零系数的总数(TotalCoeff)。总系数解码器90可基于对当前系数向量的非零系数的数目的预测(例如,基于一个或一个以上先前经解码的视频块的非零系数的数目)而选择用于解码TotalCoeff的VLC表52。以此方式,总系数解码器90可选择与由总系数编码器54使用的VLC表相同的VLC表52来编码TotalCoeff符号。
在总系数解码器90解码非零系数的总数之后,T1s解码器92解码T1s符号。T1s符号表示具有为一的量值的系数的数目,在以相反次序读取系数向量时,在遇到具有大于一的量值的系数之前遇到所述系数。T1s解码器92可使用基于非零系数的预测数目所选择的VLC表52中的一者来解码T1s符号。
正负号解码器94解码任何尾随的1的正负号。举例来说,正负号解码器94对于尾随的1中的每一者来说在接收到“1”时可确定系数的正负号为正,且在接收到“0”时可确定系数的正负号为负。系数量值解码器96解码除尾随的1外的非零系数的量值。系数量值解码器96可使用VLC表、固定长度译码或其它类型的熵译码来解码非零系数的电平。
游程和解码器98可解码表示在最后非零系数之前在系数向量中发生的零值系数的数目的符号,即sumRuns符号。游程和解码器98使用基于块中的系数的总数(TotalCoeffs)选择的VLC表52中的一者而解码sumRuns符号,所述块中的系数的总数(TotalCoeffs)先前由总系数解码器90解码。再次,基于块中的系数的总数(TotalCoeffs)选择VLC表以在解码sumRuns符号时使用可允许游程和解码器98选择更有效地解码sumRuns的VLC表。
游程长度解码器100解码系数向量的游程长度。游程长度解码器100可首先解码系数向量的最后非零系数的游程长度,之后是前一非零系数的游程长度等等,直到解码系数向量的第一非零系数之前的游程长度为止。换句话说,游程长度解码器100可首先开始解码最后游程长度。游程长度解码器64可使用基于系数向量的总游程的和(sumRuns)以及迄今为止经译码的游程的和选择的VLC表52而解码游程长度中的每一者。sumRuns符号先前由游程和解码器98解码。然而,游程长度解码器100可收集关于迄今为止经解码的游程的和的统计数据。因为可能的游程长度随着每一额外游程被解码而逐渐变短,所以游程长度解码器100可选择更有效的VLC表以减少用以表示游程的位的数目。以此方式,由游程长度解码器100使用的VLC表52对于游程长度中的每一者来说可变化。
加强层熵解码器86解码加强层的位流以获得(例如)呈额外系数或对现有系数的精化形式的对视频块的精化。EOB符号解码器102确定EOB符号是否指示是否存在至少一个剩余非零系数。在存在至少一个剩余非零系数时,游程长度解码器104解码下一非零系数之前的游程长度。游程长度解码器104可使用与游程长度编码器68所使用的VLC表相同的VLC表69来解码下一非零系数的游程长度。正负号编码器106解码非零系数的正负号。举例来说,正负号编码器106可确定系数的正负号为正(在接收到“1”时),和为负(在接收到“0”时)。加强层熵解码器86继续解码非零系数,直到EOB符号解码器102指示不存在剩余非零系数为止。
图7是说明4×4系数块40的Z字形扫描的概念图。展示于图7中的Z字形扫描可由图2的编码器30、32来执行。展示于图7中的此Z字形扫描的扫描次序遵循穿过视频块110的箭头,且以所述扫描次序对系数c1到c16进行标注。明确地说,展示于图7中的数值指示系数在连续一维向量内的位置,且并不表示系数的实际值。说明于图7中的Z字形扫描的结果为一维系数向量X,其中
X=[c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16]
其中c1到c16表示系数的二维阵列内的系数字置。
本发明的技术并不限于任何特定扫描次序或技术。举例来说,本发明中使用的扫描次序可为展示于图7中的Z字形扫描次序。或者,本发明中使用的扫描次序可为其它扫描次序,例如水平扫描、垂直扫描或任何其它扫描技术。
图8是说明加强层的系数的系数块120的假设实例的概念图。在此实例中,展示于图8中的数值指示位置处的系数的实际值。系数块120的实际系数值可表示经量化的残余系数、未量化的变换系数,或加强层中视频块的其它类型的系数。在说明于图8中的实例中,系数块120为4×4块。然而,本发明的技术可经扩展以应用于任何大小的块。在根据说明于图3中的Z字形扫描而扫描系数块120之后,所得系数向量V为:
V=[4,0,0,-2,0,1,0,0,0,0,0,0,0,0,0,0]。
加强层编码器32根据本发明中描述的技术来编码系数向量V的系数中的每一者。作为一实例,对于系数向量V的非零系数中的每一者来说,加强层编码器32编码EOB符号、游程长度和正负号。如上详细描述,EOB符号指示在系数向量中是否存在任何剩余非零系数,游程长度表示在系数向量的当前非零系数之前发生的零值系数的数目,且正负号指示系数值为正还是为负。
根据本发明的一个方面,加强层编码器32可能并不编码系数的量值。替代地,加强层编码器32可如同所有非零系数的量值均等于1那样而编码非零系数中的每一者。以此方式,加强层编码器32可被看作编码以下系数向量V′而非V。
V′=[1,0,0,-1,0,1,0,0,0,0,0,0,0,0,0,0]
加强层编码器32可(例如)使用等于零的EOB、为零的游程的码字以及等于一的正负号来编码第一系数(即,系数向量V中的4或系数向量V′中的1),使用等于零的EOB、为二的游程的码字以及等于零的正负号来编码第二系数(即,系数向量V中的-2或系数向量V′中的-1),且以等于零的EOB、为一的游程的码字以及等于一的正负号之后是等于一的EOB符号来编码第三非零系数(即,系数向量V或系数向量V′中的1)。如上所述,可从在H.264/MPEG-4部分10AVC标准中界定的VLC表获得用以编码游程的码字。
出于说明的目的而描述实例经编码的位流。加强层编码器32可在不背离本发明的范围的情况下以不同方式来编码系数向量V、V′。举例来说,可将EOB符号编码为一以表示块中的额外非零系数,且编码为零以表示无剩余非零系数。同样,可将正负号符号编码为零以表示为正的非零系数,且编码为一以表示为负的非零系数。作为另一实例,针对每一非零系数编码的EOB符号可表示当前系数是否为向量的最后非零系数。如此,在经编码位流的结束处可能不存在EOB符号。替代地,在EOB符号指示当前系数为最后非零系数时,视频解码器知晓在解码当前系数的游程和符号之后不存在块的额外系数。
图9是说明执行本发明的可缩放视频译码技术的视频编码器(例如,图2的视频编码器20)的实例操作的流程图。视频编码器20的基础层编码器30和加强层编码器32从视频源18获得视频数据(130)。如上所述,基础层编码器30和加强层编码器32获得相同的原始视频数据。从视频源18获得的视频数据可(例如)为一系列视频帧。
对于每一视频块来说,基础层编码器30使用执行多次编码操作的译码技术来编码基础层(132)。基础层以第一质量等级编码视频块。基础层编码器30可产生表示处于第一质量的视频块的系数向量,且编码块的残余变换系数以产生基础层。基础层编码器30可根据如在H.264/MPEG-4部分10AVC标准中界定的CAVLC编码系数向量以产生基础层。如上文参看图2详细描述,基础层编码器30可执行用以分析系数向量的第一次编码操作和用以基于所述分析编码系数向量的第二次操作。
对于每一视频块来说,加强层编码器32使用执行单次编码操作的译码技术来将额外位编码为加强层(134)。加强层位流的额外位编码精化,所述精化在添加到基础层位流时将视频加强为第二较高质量等级。虽然在此实例中将加强层编码器32描述为仅编码单一加强层,但加强层编码器32可编码一个以上加强层位流。在所述状况下,在加强层随着其经解码而提供逐渐变高的质量的意义上,加强层可为层级式的。
由加强层编码器32使用的第二熵译码技术对于加强层的系数向量的非零系数中的每一者来说可编码EOB符号、游程和正负号。如上详细描述,EOB符号可指示是否存在任何剩余非零系数,游程长度表示在非零系数之前发生的零值系数的数目,且正负号指示系数值为正还是为负。在最后非零系数的正负号之后,加强层编码器32可编码EOB符号以指示不存在剩余非零系数。
基础层编码器30和加强层编码器32分别输出经编码的基础层位流和加强层位流(136)。由加强层编码器32使用的熵译码技术可允许在无译码效率的大量损耗的情况下以较低计算和实施复杂性来编码加强层的残余系数。本发明的熵译码技术可实现加强层位流中的(例如)呈精化形式的额外视频数据在单次编码操作中的译码,借此减少译码复杂性、译码延迟和存储器要求。例如,加强层编码器32可在不知晓任何后续系数的情况下编码加强层的系数向量的每一非零系数,从而允许在单次操作中对系数向量进行译码,且消除执行用以分析系数向量的第一次操作和用于基于所述分析对系数向量进行译码的第二次操作的需要。
图10是说明根据本发明的一个方面编码加强层的视频块的残余系数的加强层编码器(例如,图2的加强层编码器32)的实例操作的流程图。加强层编码器32识别加强层块的系数向量中的第一非零系数(140)。加强层编码器32编码指示在加强层块的系数向量中存在至少一个剩余非零系数的EOB符号(142)。加强层编码器32可使用单一位编码EOB符号,例如在存在至少一个剩余非零系数时编码零且在不再存在剩余非零系数时编码一。
加强层编码器32编码指示先于非零系数的零值系数的数目的游程(144)。加强层编码器32在一些例子中可使用针对如在H.264/MPEG-4部分10AVC标准中界定的CAVLC已存储的VLC表而编码游程。举例来说,加强层编码器32可使用用以在系数的总数(TotalCoeffs)等于一时对总游程的和(sumRuns)进行译码的VLC表来编码游程。或者,加强层编码器32可维持经特定地设计以编码加强层的系数向量的游程的单独VLC表。
加强层编码器32可编码非零系数的正负号(146)。加强层编码器32可(例如)编码“1”(如果非零系数的正负号为正),且编码“0”(如果非零系数的正负号为负)。在一些例子中,加强层编码器32可能不编码非零系数的量值。以此方式,加强层编码器32可将非零系数的量值限制为一。如此,将具有大于一的量值的任何非零系数设定为等于一。不编码加强层的非零系数的量值可导致峰值信噪比(PSNR)的某一损耗,但减少用以编码非零系数的位的数目。
加强层编码器32确定在加强层块中是否存在任何剩余非零系数(148)。当在加强层块中存在至少一个剩余非零系数时,加强层编码器32继续编码剩余非零系数中的每一者的EOB、游程和正负号。当在加强层块中不存在剩余非零系数时,加强层编码器32编码EOB符号,以指示在加强层块的系数向量中不存在剩余非零系数(149)。如上所述,将加强层连同基础层一起发射。
因为图10中描述的加强层译码技术并不对涉及一个以上系数的符号进行译码,所以加强层译码技术视可用位速率而可允许加强层编码器32在编码期间丢弃系数向量的经量化残余系数中的一者或一者以上。此外,加强层译码技术减少译码复杂性和实施。
图11是说明解码加强层位流以获得残余变换系数的向量的加强层解码器(例如,图2的加强层解码器36)的实例操作的流程图。加强层解码器36获得加强层位流(150)。加强层解码器36分析EOB符号以确定是否存在任何剩余非零系数(152)。加强层解码器36可(例如)在EOB符号等于零时确定存在至少一个剩余非零系数,且在EOB符号等于一时确定不存在剩余非零系数。
当加强层解码器36确定存在至少一个剩余非零系数(例如,EOB符号等于零)时,加强层解码器36解码与下一非零系数相关联的游程(154)。与下一非零系数相关联的游程表示非零系数之前的零值系数的数目。加强层解码器36使用与由加强层编码器32使用的VLC表相同的VLC表来解码游程。在一个例子中,加强层解码器36可使用用于如界定于H.264/MPEG-4部分10AVC标准中的CAVLC中的用于对总游程和(sumRuns)进行译码(当系数的总数(TotalCoeffs)等于一时)的VLC表来解码游程。然而,可使用其它VLC表,只要其为由加强层编码器32使用的同一表便可。加强层解码器36将等于非零系数之前的游程长度的数目的系数设定为等于零(156)。如果游程长度等于二,那么(例如)加强层解码器36可将非零系数之前的两个系数设定为等于零。
加强层解码器36解码非零系数的正负号(158)。非零系数的正负号可解码为正(在正负号符号等于一时),和解码为负(在正负号符号等于零时)。在解码非零系数的正负号之后,加强层解码器36可基于经解码的正负号将非零系数设定为等于正一或负一(160)。如上所述,加强层可能不编码加强层的系数的量值。如此,加强层解码器36可经配置以将所有非零系数的量值设定为等于一。
加强层解码器36继续解码非零系数的游程和正负号直到加强层解码器36确定不存在剩余非零系数(例如,EOB符号等于一)为止。在此点处,如果剩余任何系数,那么加强层解码器36将向量的剩余系数设定为等于零(162)。如参看图2详细描述,加强层解码器36除预测块和其它数据外还使用系数向量来重建视频块以供呈现给显示器28。
图12到图15是说明用于可缩放视频译码中的编码器和/或解码器的不同配置的框图。这些实例编码器和解码器是出于说明其内可利用本发明的技术的编码器的类型的目的。然而,实例配置决不应限制如所描述的技术。所述技术可用于任何可缩放视频编码器中。
说明于图12到图15中的实例视频编码器和解码器中的每一者可利用本发明中描述的熵译码技术以促进加强层位流的有效译码。本发明的熵译码技术可实现在单次编码操作中对加强层位流中的(例如)呈精化形式的额外视频数据的译码,借此减少译码复杂性、译码延迟和存储器要求。如将进一步详细描述,可在不知晓任何后续系数(即,当前正被译码的非零系数之后的任何系数)的情况下编码加强层的系数向量的每一非零系数。在单次操作中对加强层进行译码可消除执行分析系数向量的第一次操作和用于基于所述分析而对系数向量进行译码的第二次操作的需要。
图12是说明实例可缩放视频编码器170的框图。可缩放视频编码器170可(例如)与图2的视频编码器20对应。在图12的实例中,可缩放视频编码器170包括基础层编码器30,所述基础层编码器30包括预测单元172、帧存储件173、变换单元174、量化单元175A和175B、反量化单元176A和176B、反变换单元177、多路复用模块178以及求和器179A到179C。将图3中的不同特征描绘为单元希望突出所说明装置的不同功能方面,且并不一定暗示此类单元必须由单独硬件或软件组件来实现。事实上,与一个或一个以上单元相关联的功能性可集成在共同或单独硬件或软件组件内。
预测单元172使用帧内预测或帧间预测产生预测块。预测块可为正被译码的当前视频块的预测型式。如上所述,预测单元172可基于与当前正被译码的块相同的帧内的基础层的一个或一个以上先前经编码块而使用帧内预测产生预测块。或者,预测单元可基于基础层的一个或一个以上相邻帧内的一个或一个以上先前经编码块而使用帧间预测产生预测块。预测单元172可从帧存储件173检索先前经编码块。
在视频块的基于帧内或帧间的预测之后,基础层编码器30通过在求和器179A处从当前视频块减去由预测单元172产生的预测块而产生残余块。残余块包括量化当前视频块的像素值与预测块的像素值之间的差的像素差值的集合。残余块可以二维块格式(例如,像素值的二维矩阵或阵列)来表示。换句话说,残余块为像素值的二维表示。
变换单元174向残余块应用变换以产生残余变换系数。变换单元174可(例如)应用DCT、整数变换、定向变换、子波变换或其组合。在向像素值的残余块应用变换之后,量化单元175A量化变换系数以进一步减少位速率。量化单元175A的对应于与基础层相关联的经量化系数的输出被提供到多路复用模块178。
在量化之后,反量化单元176A应用反量化以产生变换系数的残余块的经重建型式。求和器179B从由变换单元174输出的变换系数的原始残余块减去从反量化单元176A输出的变换系数的残余块的经重建型式。将本文中称为变换差块的此块提供到量化单元175B。量化单元175B量化变换系数以进一步减少位速率。量化单元175B的对应于与加强层相关联的经量化系数的输出被提供到多路复用模块178。在一个实例中,量化单元175A可使用第一QP量化残余系数,且量化单元175B可使用第二QP量化残余系数差。第二QP可(例如)为第一QP的值的一半,即QP/2。
在由量化单元175B进行的量化之后,反量化单元176B应用反量化以产生变换差块的经重建型式。求和器179C对从反量化单元176A输出的变换系数的残余块的经重建型式与由反量化单元176B输出的变换差块的经重建型式求和以产生经重建的残余块。
反变换单元177对视频块的经重建型式应用反变换。视频块的经重建型式存储于帧存储件173中,且可由预测单元172使用以对后续视频块进行帧内或帧间译码。预测单元172可向多路复用模块178提供控制数据,例如运动向量、分割大小、帧内译码模式等。多路复用模块178可组合基础层数据与加强层数据。在一些例子中,多路复用模块178可包括用于对基础层数据和加强层数据进行熵编码的熵编码器。在其它例子中,基础层编码器和加强层编码器可与多路复用模块分离。
图13是说明实例可缩放视频解码器180的框图。可缩放视频解码器180可(例如)与图2的视频解码器26对应。图13的可缩放视频解码器180包括解多路复用模块181、反量化单元182A和182B、反变换单元183、预测单元184、帧存储件185,以及求和器186A和186B。
解多路复用模块181接收可缩放经编码视频,且对信号进行解多路复用。在一些例子中,解多路复用模块181可包括用于对基础层数据和加强层数据进行熵解码的熵解码器。在其它例子中,基础层解码器和加强层解码器可与解多路复用模块分离。
反量化单元182A反量化(即,解量化)与基础层相关联的经量化残余系数,且反量化单元182B解量化与加强层相关联的经量化残余系数。在一个实例中,反量化单元182A可使用第一QP量化残余系数,且反量化单元182B可使用第二QP量化残余系数差。第二QP可(例如)为第一QP的值的一半,即QP/2。在求和器186A处将由反量化单元182A和182B输出的经解量化的变换系数的相应集合相加以产生经重建的残余变换块。如上所述,由反量化单元182A输出的经解量化的变换系数可与基本质量等级对应,且由反量化单元182B输出的经解量化的变换系数在添加到反量化单元182B的输出时导致增加的质量等级。
反变换单元183向经解量化的残余系数块的和应用反变换(例如,反DCT、反整数变换、反子波变换或反定向变换)以产生像素值的残余块。求和器186B将由预测单元184产生的预测块与像素值的残余块相加以形成经重建的基础层视频块。如上详细描述,预测单元184可在帧内预测的状况下使用共同帧内的一个或一个以上相邻块或在帧间预测的状况下使用相邻帧内的一个或一个以上块产生预测块,所述预测块可存储于帧存储件185内。
图14是说明另一实例可缩放视频解码器190的框图。可缩放视频解码器190可(例如)与图2的视频解码器26对应。图14的可缩放视频解码器190解多路复用模块191、反量化单元192A和192B、反变换单元193A和193B、预测单元194、帧存储件195,以及求和器196A和196B。
解多路复用模块191接收可缩放经编码视频,且对信号进行解多路复用。在一些例子中,解多路复用模块181可包括用于对基础层数据和加强层数据进行熵解码的熵解码器。在其它例子中,基础层解码器和加强层解码器可与解多路复用模块分离。
反量化单元192A和反变换单元193A对与基础层相关联的经解码残余系数应用反量化(即,解量化)和反变换操作以获得基础层的残余块的经重建型式。反量化单元192B和反变换单元193B对与加强层相关联的经解码残余系数应用反量化(即,解量化)和反变换操作以获得加强层的残余块的经重建型式。在一个实例中,反量化单元192A可使用第一QP量化残余系数,且反量化单元192B可使用第二QP量化残余系数差。第二QP可(例如)为第一QP的值的一半,即QP/2。
预测单元194可在帧内预测的状况下使用共同帧内的一个或一个以上相邻块或在帧间预测的状况下使用相邻帧内的一个或一个以上块产生预测块,所述预测块可存储于帧存储件195内。求和器196A将由预测单元194产生的预测块与从反变换单元193A输出的经重建的残余块相加以产生处于基本质量等级的经解码视频数据。从可缩放视频编码器190输出具有基本质量等级的经解码视频数据。
具有基本质量等级的经解码视频数据还被提供到求和器196B。求和器196B将求和器196A的输出与从反变换单元193B输出的加强层的残余块的经重建型式相加以产生处于第二较高质量等级的经解码视频数据。从可缩放视频编码器190输出具有基本质量等级的经解码视频数据。
图15是说明另一实例视频编码器200的框图。在图15的实例中,基础层编码器30包括预测单元33A、帧存储件35A、变换单元38A、量化单元40A、系数扫描单元41A、反量化单元42A、反变换单元44A、基础层熵编码器46、求和器48A到48C,以及帧内预测单元40A。将图3中的不同特征描绘为单元希望突出所说明装置的不同功能方面,且并不一定暗示此类单元必须由单独硬件或软件组件来实现。事实上,与一个或一个以上单元相关联的功能性可集成在共同或单独硬件或软件组件内。
预测单元33A使用帧间预测(例如,经运动补偿的预测)而产生预测块。预测块可为正被译码的当前视频块的预测型式。如上所述,预测单元33A可基于基础层的一个或一个以上相邻帧内的一个或一个以上先前经编码块使用帧间预测而产生预测块。预测单元33A可从帧存储件35A检索先前经编码块。
在视频块的基于帧间的预测之后,基础层编码器30通过在求和器48A处从当前视频块减去由预测单元33A产生的预测块而产生残余块。残余块包括量化当前视频块的像素值与预测块的像素值之间的差的像素差值的集合。残余块可以二维块格式(例如,像素值的二维矩阵或阵列)来表示。换句话说,残余块为像素值的二维表示。
变换单元38A向残余块应用变换以产生残余变换系数。变换单元38A可(例如)应用DCT、整数变换、定向变换、子波变换或其组合。在向像素值的残余块应用变换之后,量化单元40A量化变换系数以进一步减少位速率。在量化之后,反量化单元42A和反变换单元44A可分别应用反量化和反变换以重建残余块。求和器48B将经重建的残余块与由预测单元33A产生的预测块相加以产生经重建的视频块以供存储于帧存储件35A中。存储于帧存储件34中的经重建的视频块可由基础层编码器30的预测单元32使用以对后续视频块进行帧内或帧间译码。另外,如以下将更详细描述,存储于帧存储件35A中的经重建的视频块可由加强层编码器32的预测单元33B使用以对加强层中的视频块的精化进行帧内或帧间译码。
在量化之后,求和器48C从经量化残余系数减去由帧内预测单元40A产生的经帧内预测的块。帧内预测单元40A可基于与当前正被译码的块相同的帧内的一个或一个以上先前经编码块使用帧内预测而产生预测块。基础层熵编码器46(例如)使用如在H.264/MPEG-4部分10AVC标准中界定且以上参看图2详细描述的CAVLC而对从求和器48C输出的系数进行熵编码。
加强层编码器32包括预测单元33B、帧存储件35B、变换单元38B、量化单元40B、系数扫描单元41B、反量化单元42B、反变换单元44B、加强层熵编码器49,以及求和器48D到48F。加强层编码器32的单元大体上类似于基础层编码器30的经类似编号的那些单元。如此,将仅描述差异。
加强层编码器32的预测单元33B产生为当前视频块的预测型式的预测块。不同于基础层编码器30的使用基础层的先前经编码块来产生预测块的预测单元33A,加强层编码器32的预测单元33B可基于加强层的一个或一个以上先前经编码块而产生预测块。加强层的经重建视频块可处于高于基础层的预测块的质量等级的第二质量等级。
加强层编码器32与基础层编码器30之间的额外差异为,在求和器48F处将加强层编码器32的反量化单元42B的输出与加强层编码器30的反量化单元42A的输出组合。将反量化单元42A与42B的输出相加产生较高质量的经重建视频块,因此允许上述预测单元进行的较好预测。
本发明中所描述的技术可以硬件、软件、固件或其任何组合来实施。描述为单元或组件的任何特征可一起实施于集成逻辑装置中或单独地实施为离散但可互操作的逻辑装置。如果以软件来实施,那么所述技术可由包含指令的计算机可读媒体至少部分地实现,所述指令当执行时执行上文所描述的方法中的一者或一者以上。计算机可读媒体可形成计算机程序产品的一部分,所述计算机程序产品可包括封装材料。计算机可读媒体可包含例如同步动态随机存取存储器(SDRAM)的随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体等。另外或作为替代,所述技术可由携载或传送呈指令或数据结构的形式且可由计算机存取、读取和/或执行的代码的计算机可读通信媒体至少部分地实现。
所述代码可由一个或一个以上处理器执行,所述处理器例如一个或一个以上数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。因此,如本文所使用的术语“处理器”可指代前述结构的任一者或任何其它适于本文所描述的技术的实施的结构。此外,在一些方面中,本文所描述的功能性可提供于经配置以用于编码和解码的专用软件单元或硬件单元内,或并入于经组合的视频编码器-解码器(CODEC)中。将不同特征描绘为单元希望突出所说明装置的不同功能方面,且并不一定暗示此类单元必须由单独硬件或软件组件来实现。事实上,与一个或一个以上单元相关联的功能性可集成在共同或单独硬件或软件组件内。
已描述各种实施例。这些和其它实施例在所附权利要求书的范围内。
Claims (51)
1.一种使用可缩放视频译码编码视频数据的方法,所述方法包含:
以第一质量编码视频块作为基础层位流的一部分;以及
编码所述视频块的精化作为至少一个加强层位流的一部分,所述视频块的所述精化在与以所述第一质量编码的所述视频块组合时导致具有大于所述第一质量的第二质量的所述视频块,其中在不执行收集在视频译码表选择中使用的统计数据的第一次译码操作的情况下编码所述视频块的所述精化,
其中所述精化为至少一个额外系数和对现有系数的精化,以及
其中编码所述视频块的所述精化包含针对所述视频块的所述精化的每一非零系数进行编码以指示存在至少一个剩余非零系数的符号、指示所述非零系数之前的零值系数的数目的游程长度,以及所述非零系数的正负号;以及
将所述视频块的所述精化的所述非零系数的量值调整为等于一。
2.根据权利要求1所述的方法,其中编码所述视频块的所述精化包含在不分析任何后续系数的情况下编码所述精化的每一非零系数。
3.根据权利要求1所述的方法,其进一步包含编码用以指示在编码最后非零系数之后在所述视频块的所述精化中不存在剩余非零系数的符号。
4.根据权利要求1所述的方法,其中将所述视频块的所述精化的所述非零系数中的每一者的所述量值调整为等于一包含在不编码所述非零系数的量值的情况下编码所述系数。
5.根据权利要求1所述的方法,其中编码所述视频块的所述精化作为所述加强层位流的一部分包含编码所述视频块的所述精化,使得所述视频块的所述精化的系数在不存取以所述第一质量编码作为所述基础层位流的一部分的所述视频块的系数信息的情况下为可解码的。
6.根据权利要求1所述的方法,其进一步包含仅使用单一可变长度译码(VLC)表来编码所述视频块的所述精化。
7.根据权利要求1所述的方法,其中以所述第一质量编码所述视频块作为所述基础层的一部分包含使用译码技术以所述第一质量来编码所述视频块,所述译码技术在第一次译码操作中分析所述视频块的系数向量,且基于所述分析在第二次译码操作中编码所述系数向量。
8.根据权利要求7所述的方法,其中:
以所述第一质量编码所述视频块包含根据ITU-T H.264/MPEG-4部分10先进视频译码(AVC)标准使用上下文自适应可变长度译码(CAVLC)过程以所述第一质量来编码所述视频块;且
编码所述视频块的所述精化包含使用在所述CAVLC过程中界定的VLC表中的一者来编码所述视频块的所述精化。
9.根据权利要求1所述的方法,其中所述第一和第二质量包含第一和第二信噪比(SNR)以及第一和第二空间分辨率中的一者。
10.一种用于使用可缩放视频译码编码视频数据的装置,所述装置包含至少一个编码器,所述至少一个编码器:
以第一质量编码视频块作为基础层位流的一部分;
编码所述视频块的精化作为至少一个加强层位流的一部分,所述视频块的所述精化在与以所述第一质量编码的所述视频块组合时导致具有大于所述第一质量的第二质量的所述视频块,其中在不执行收集在视频译码表选择中使用的统计数据的第一次译码操作的情况下编码所述视频块的所述精化,其中所述精化为至少一个额外系数和对现有系数的精化;
针对所述视频块的所述精化的每一非零系数进行编码以指示存在至少一个剩余非零系数的符号、指示所述非零系数之前的零值系数的数目的游程长度,以及所述非零系数的正负号;以及
将所述视频块的所述精化的所述非零系数的量值调整为等于一。
11.根据权利要求10所述的装置,其中所述至少一个编码器在不分析任何后续系数的情况下编码所述精化的每一非零系数。
12.根据权利要求10所述的装置,其中所述至少一个编码器编码用以指示在编码最后非零系数之后在所述视频块的所述精化中不存在剩余非零系数的符号。
13.根据权利要求10所述的装置,其中所述至少一个编码器在不编码所述非零系数的量值的情况下编码所述系数。
14.根据权利要求10所述的装置,其中所述至少一个编码器编码所述视频块的所述精化,使得所述视频块的所述精化的系数在不存取以所述第一质量编码作为所述基础层位流的一部分的所述视频块的系数信息的情况下为可解码的。
15.根据权利要求10所述的装置,其中所述至少一个编码器仅使用单一可变长度译码(VLC)表来编码所述视频块的所述精化。
16.根据权利要求10所述的装置,其中所述至少一个编码器使用译码技术以所述第一质量来编码所述视频块,所述译码技术在第一次译码操作中分析所述视频块的系数向量,且基于所述分析在第二次译码操作中编码所述系数向量。
17.根据权利要求16所述的装置,其中所述至少一个编码器:
以所述第一质量编码所述视频块包含根据ITU-T H.264/MPEG-4部分10先进视频译码(AVC)标准使用上下文自适应可变长度译码(CAVLC)过程以所述第一质量来编码所述视频块;以及
编码所述视频块的所述精化包含使用在所述CAVLC过程中界定的VLC表中的一者来编码所述视频块的所述精化。
18.根据权利要求10所述的装置,其中所述第一和第二质量包含第一和第二信噪比(SNR)以及第一和第二空间分辨率中的一者。
19.根据权利要求10所述的装置,其中所述至少一个编码器包含:
基础层编码器,其以所述第一质量编码所述视频块作为基础层位流的一部分,以及
加强层编码器,其编码所述视频块的精化作为所述至少一个加强层位流的一部分,所述视频块的所述精化在与以所述第一质量编码的所述视频块组合时导致具有大于所述第一质量的所述第二质量的所述视频块。
20.根据权利要求10所述的装置,其中所述装置包含无线通信装置。
21.根据权利要求10所述的装置,其中所述装置包含集成电路装置。
22.一种用于使用可缩放视频译码编码视频数据的装置,所述装置包含:
用于以第一质量编码视频块作为基础层位流的一部分的第一装置;以及
用于编码所述视频块的精化作为至少一个加强层位流的一部分的第二装置,所述视频块的所述精化在与以所述第一质量编码的所述视频块组合时导致具有大于所述第一质量的第二质量的所述视频块,其中在不执行收集在视频译码表选择中使用的统计数据的第一次译码操作的情况下编码所述视频块的所述精化,
其中所述精化为至少一个额外系数和对现有系数的精化,
其中所述第二编码装置针对所述视频块的所述精化的每一非零系数进行编码以指示存在至少一个剩余非零系数的符号、指示所述非零系数之前的零值系数的数目的游程长度,以及所述非零系数的正负号,以及
所述第二编码装置将所述视频块的所述精化的所述非零系数的量值调整为等于一。
23.根据权利要求22所述的装置,其中所述第二编码装置在不分析任何后续系数的情况下编码所述精化的每一非零系数。
24.根据权利要求23所述的装置,其中所述第二编码装置编码用以指示在编码最后非零系数之后在所述视频块的所述精化中不存在剩余非零系数的符号。
25.根据权利要求24所述的装置,其中所述第二编码装置在不编码所述非零系数的量值的情况下编码所述系数。
26.根据权利要求22所述的装置,其中所述第二编码装置编码所述视频块的所述精化,使得所述视频块的所述精化的系数在不存取以所述第一质量编码作为所述基础层位流的一部分的所述视频块的系数信息的情况下为可解码的。
27.根据权利要求22所述的装置,其中所述第二编码装置仅使用单一可变长度译码(VLC)表来编码所述视频块的所述精化。
28.根据权利要求22所述的装置,其中所述第一编码装置以所述第一质量编码所述视频块作为所述基础层的一部分包含使用译码技术以所述第一质量来编码所述视频块,所述译码技术在第一次译码操作中分析所述视频块的系数向量,且基于所述分析在第二次译码操作中编码所述系数向量。
29.根据权利要求28所述的装置,其中所述第一编码装置:
以所述第一质量编码所述视频块包含根据ITU-T H.264/MPEG-4部分10先进视频译码(AVC)标准使用上下文自适应可变长度译码(CAVLC)过程以所述第一质量来编码所述视频块;以及
编码所述视频块的所述精化包含使用在所述CAVLC过程中界定的VLC表中的一者来编码所述视频块的所述精化。
30.根据权利要求22所述的装置,其中所述第一和第二质量包含第一和第二信噪比(SNR)以及第一和第二空间分辨率中的一者。
31.一种使用可缩放视频译码解码视频数据的方法,所述方法包含:
以第一质量解码基础层位流以获得视频块;解码加强层位流以获得所述视频块的精化,所述视频块的所述精化在与以所述第一质量解码的所述视频块组合时导致具有第二质量的所述视频块,
其中所述精化为至少一个额外系数和对现有系数的精化,以及
其中解码所述加强层包括针对所述视频块的所述精化的每一非零系数解码指示存在至少一个剩余非零系数的符号、指示所述非零系数之前的零值系数的数目的游程长度,以及所述非零系数的正负号;以及
将每一非零系数的量值设定为等于一。
32.根据权利要求31所述的方法,其进一步包含在最后非零系数之后解码指示在所述视频块的所述精化中不存在剩余非零系数的符号。
33.根据权利要求32所述的方法,其进一步包含使用每一系数的所述经解码的游程、每一系数的所述正负号以及指示不存在剩余非零系数的所述符号来产生所述视频块的所述精化的系数的向量。
34.根据权利要求31所述的方法,其中解码所述视频块的所述精化包含在不存取以所述第一质量编码的所述视频块的系数信息的情况下解码所述视频块的所述精化。
35.根据权利要求31所述的方法,其进一步包含仅使用单一可变长度译码(VLC)表来解码所述视频块的所述精化。
36.根据权利要求35所述的方法,其中所述单一VLC表包含在如界定于ITU-TH.264/MPEG-4部分10先进视频译码(AVC)标准中的CAVLC中所规定的VLC表中的一者。
37.一种用于使用可缩放视频译码解码视频数据的装置,所述装置包含至少一个解码器,所述至少一个解码器:
以第一质量解码基础层位流以获得视频块;
解码加强层位流以获得所述视频块的精化,所述视频块的所述精化在与以所述第一质量解码的所述视频块组合时导致具有第二质量的所述视频块,
其中所述精化为至少一个额外系数和对现有系数的精化,以及
其中所述至少一个解码器针对所述视频块的所述精化的每一非零系数解码指示存在至少一个剩余非零系数的符号、指示所述非零系数之前的零值系数的数目的游程长度,以及所述非零系数的正负号;以及
将每一非零系数的量值设定为等于一。
38.根据权利要求37所述的装置,其中所述至少一个解码器在最后非零系数之后解码指示在所述视频块的所述精化中不存在剩余非零系数的符号。
39.根据权利要求38所述的装置,其中所述至少一个解码器使用每一系数的所述经解码的游程、每一系数的所述正负号以及指示不存在剩余非零系数的所述符号来产生所述视频块的所述精化的系数的向量。
40.根据权利要求37所述的装置,其中所述至少一个解码器在不存取以所述第一质量编码的所述视频块的系数信息的情况下解码所述视频块的所述精化。
41.根据权利要求37所述的装置,其中所述至少一个解码器仅使用单一可变长度译码(VLC)表来解码所述视频块的所述精化。
42.根据权利要求41所述的装置,其中所述单一VLC表包含在如界定于ITU-TH.264/MPEG-4部分10先进视频译码(AVC)标准中的CAVLC中所规定的VLC表中的一者。
43.根据权利要求37所述的装置,其中所述至少一个解码器包含:
基础层解码器,其以所述第一质量解码所述基础层位流以获得所述视频块;以及加强层解码器,其解码所述加强层位流以获得所述视频块的所述精化。
44.根据权利要求37所述的装置,其中所述装置包含无线通信装置。
45.根据权利要求37所述的装置,其中所述装置包含集成电路装置。
46.一种用于使用可缩放视频译码解码视频数据的装置,所述装置包含:
用于以第一质量解码基础层位流以获得视频块的第一装置;
用于解码加强层位流以获得所述视频块的精化的第二装置,所述视频块的所述精化在与以所述第一质量解码的所述视频块组合时导致具有第二质量的所述视频块,
其中,所述精化为至少一个额外系数和对现有系数的精化,以及
其中所述第二解码装置针对所述视频块的所述精化的每一非零系数解码指示存在至少一个剩余非零系数的符号、指示所述非零系数之前的零值系数的数目的游程长度,以及所述非零系数的正负号;以及
将每一非零系数的量值设定为等于一的装置。
47.根据权利要求46所述的装置,其中所述第二解码装置在最后非零系数之后解码指示在所述视频块的所述精化中不存在剩余非零系数的符号。
48.根据权利要求47所述的装置,其进一步包含用于使用每一系数的所述经解码的游程、每一系数的所述正负号以及指示不存在剩余非零系数的所述符号来产生所述视频块的所述精化的系数的向量的装置。
49.根据权利要求46所述的装置,其中所述第二解码装置在不存取以所述第一质量编码的所述视频块的系数信息的情况下解码所述视频块的所述精化。
50.根据权利要求46所述的装置,其中所述第二解码装置仅使用单一可变长度译码(VLC)表来解码所述视频块的所述精化。
51.根据权利要求50所述的装置,其中所述单一VLC表包含在如界定于ITU-TH.264/MPEG-4部分10先进视频译码(AVC)标准中的CAVLC中所规定的VLC表中的一者。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US97991907P | 2007-10-15 | 2007-10-15 | |
US60/979,919 | 2007-10-15 | ||
US98021407P | 2007-10-16 | 2007-10-16 | |
US60/980,214 | 2007-10-16 | ||
US12/250,784 US8848787B2 (en) | 2007-10-15 | 2008-10-14 | Enhancement layer coding for scalable video coding |
US12/250,784 | 2008-10-14 | ||
PCT/US2008/080034 WO2009052206A1 (en) | 2007-10-15 | 2008-10-15 | Improved enhancement layer coding for scalable video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101855908A CN101855908A (zh) | 2010-10-06 |
CN101855908B true CN101855908B (zh) | 2012-11-21 |
Family
ID=40344656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880115482.8A Expired - Fee Related CN101855908B (zh) | 2007-10-15 | 2008-10-15 | 用于可缩放视频译码的改进的加强层译码 |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP2213099A1 (zh) |
JP (2) | JP5248619B2 (zh) |
KR (1) | KR101147943B1 (zh) |
CN (1) | CN101855908B (zh) |
BR (1) | BRPI0818077A2 (zh) |
CA (1) | CA2702488C (zh) |
RU (1) | RU2463728C2 (zh) |
TW (1) | TWI408965B (zh) |
WO (1) | WO2009052206A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8306153B2 (en) * | 2009-09-21 | 2012-11-06 | Techwell Llc | Method and system for tracking phase in a receiver for 8VSB |
CN105847781B (zh) | 2010-07-21 | 2018-03-20 | 杜比实验室特许公司 | 用于多层帧兼容视频传输的解码方法 |
US8634668B2 (en) | 2011-02-25 | 2014-01-21 | Sony Corporation | Method of compression of digital images using a fixed number of bits per block |
US20120257675A1 (en) * | 2011-04-11 | 2012-10-11 | Vixs Systems, Inc. | Scalable video codec encoder device and methods thereof |
US9565431B2 (en) * | 2012-04-04 | 2017-02-07 | Qualcomm Incorporated | Low-delay video buffering in video coding |
US9602841B2 (en) * | 2012-10-30 | 2017-03-21 | Texas Instruments Incorporated | System and method for decoding scalable video coding |
WO2014084656A1 (ko) * | 2012-11-29 | 2014-06-05 | 엘지전자 주식회사 | 복수의 레이어를 지원하는 영상 부호화/복호화 방법 및 장치 |
MX353121B (es) * | 2012-12-26 | 2017-12-20 | Sony Corp | Dispositivo y metodo de procesamiento de imagenes. |
US9992493B2 (en) * | 2013-04-01 | 2018-06-05 | Qualcomm Incorporated | Inter-layer reference picture restriction for high level syntax-only scalable video coding |
GB2512829B (en) * | 2013-04-05 | 2015-05-27 | Canon Kk | Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme |
US9848199B2 (en) * | 2014-03-17 | 2017-12-19 | Qualcomm Incorporated | Device and method for scalable coding of video information |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040058304A (ko) * | 2001-11-21 | 2004-07-03 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 개선된 비트 평면 압축 방법 |
JP4447197B2 (ja) * | 2002-01-07 | 2010-04-07 | 三菱電機株式会社 | 動画像符号化装置および動画像復号装置 |
JP4510465B2 (ja) * | 2002-01-22 | 2010-07-21 | ノキア コーポレイション | イメージ/ビデオ符号器及び/又は復号器における変換係数の符号化 |
JP3893350B2 (ja) * | 2002-11-29 | 2007-03-14 | キヤノン株式会社 | 符号化データ変換装置及びその方法 |
JP2006237656A (ja) * | 2003-02-28 | 2006-09-07 | Secom Co Ltd | 符号化信号分離・合成装置、差分符号化信号生成装置、差分符号化信号抽出装置、符号化信号分離・合成方法、符号化信号分離・合成プログラム |
JP4014098B2 (ja) * | 2003-06-26 | 2007-11-28 | 株式会社Kddi研究所 | 画像の階層的符号化装置および復号装置 |
KR100736086B1 (ko) * | 2005-09-06 | 2007-07-06 | 삼성전자주식회사 | 엔트로피 코딩의 성능 향상 방법 및 장치, 상기 방법을이용한 비디오 코딩 방법 및 장치 |
KR100714706B1 (ko) * | 2005-09-26 | 2007-05-04 | 삼성전자주식회사 | 엔트로피 코딩의 성능 향상 방법 및 장치, 상기 방법을이용한 비디오 코딩 방법 및 장치 |
KR100763192B1 (ko) * | 2005-09-26 | 2007-10-04 | 삼성전자주식회사 | Fgs 계층의 비디오 데이터를 엔트로피 부호화 및복호화하는 방법 및 장치 |
US8116371B2 (en) * | 2006-03-08 | 2012-02-14 | Texas Instruments Incorporated | VLC technique for layered video coding using distinct element grouping |
US7778472B2 (en) * | 2006-03-27 | 2010-08-17 | Qualcomm Incorporated | Methods and systems for significance coefficient coding in video compression |
KR100834757B1 (ko) * | 2006-03-28 | 2008-06-05 | 삼성전자주식회사 | 엔트로피 부호화 효율을 향상시키는 방법 및 그 방법을이용한 비디오 인코더 및 비디오 디코더 |
-
2008
- 2008-10-15 RU RU2010119448/07A patent/RU2463728C2/ru not_active IP Right Cessation
- 2008-10-15 BR BRPI0818077-6A patent/BRPI0818077A2/pt not_active IP Right Cessation
- 2008-10-15 JP JP2010530087A patent/JP5248619B2/ja not_active Expired - Fee Related
- 2008-10-15 EP EP08839798A patent/EP2213099A1/en not_active Ceased
- 2008-10-15 CN CN200880115482.8A patent/CN101855908B/zh not_active Expired - Fee Related
- 2008-10-15 KR KR1020107010570A patent/KR101147943B1/ko not_active IP Right Cessation
- 2008-10-15 TW TW97139596A patent/TWI408965B/zh active
- 2008-10-15 CA CA2702488A patent/CA2702488C/en not_active Expired - Fee Related
- 2008-10-15 WO PCT/US2008/080034 patent/WO2009052206A1/en active Application Filing
-
2012
- 2012-10-03 JP JP2012221420A patent/JP5456867B2/ja not_active Expired - Fee Related
Non-Patent Citations (4)
Title |
---|
Justin Ridge et al..CE8: Variable length codes for SVC.《JVT of ISO/IEC MPEG & ITU-T VCEG,JVT-Q040》.2005, * |
Justin Ridge.CE1:Improvement to FGS refinement pass.《JVT of ISO/IEC MPEG & ITU-T VCEG,JVT-V077》.2007, * |
R.Choupani et al..Scalable Video Coding: A Technical Report.《CE Technical report》.2007, * |
Yan Ye et al..Adaptive Variable Length Coding for FGS.《JVT of ISO/IEC MPEG & ITU-T VCEG,JVT-T086》.2006, * |
Also Published As
Publication number | Publication date |
---|---|
CN101855908A (zh) | 2010-10-06 |
JP2011501572A (ja) | 2011-01-06 |
BRPI0818077A2 (pt) | 2015-03-31 |
EP2213099A1 (en) | 2010-08-04 |
JP5456867B2 (ja) | 2014-04-02 |
CA2702488C (en) | 2013-04-02 |
TWI408965B (zh) | 2013-09-11 |
JP5248619B2 (ja) | 2013-07-31 |
CA2702488A1 (en) | 2009-04-23 |
KR101147943B1 (ko) | 2012-05-23 |
RU2010119448A (ru) | 2011-11-27 |
WO2009052206A1 (en) | 2009-04-23 |
JP2013051699A (ja) | 2013-03-14 |
RU2463728C2 (ru) | 2012-10-10 |
TW200934250A (en) | 2009-08-01 |
KR20100066584A (ko) | 2010-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101855908B (zh) | 用于可缩放视频译码的改进的加强层译码 | |
CN101578870B (zh) | 对可缩放视频译码(svc)方案的增强层进行译码的方法和装置 | |
US8848787B2 (en) | Enhancement layer coding for scalable video coding | |
CN101828399B (zh) | 用于可缩放位深度的可缩放视频译码方法和设备 | |
CN101627636B (zh) | 可缩放视频译码增强层中的精细化和有效系数的组合式游程长度译码的方法和装置 | |
CN102870413B (zh) | 用于视频数据译码的可变长度码 | |
CN101682771B (zh) | 视频译码中的自适应系数扫描 | |
JP4981927B2 (ja) | Svccgs拡張層コーディングに関するcavlc拡張 | |
KR100987958B1 (ko) | 비디오 압축에 있어서 미세화 계수 코딩을 위한 방법들 및 시스템들 | |
CN101637024B (zh) | 用于经译码块模式的可变长度译码技术 | |
CN101682770A (zh) | 视频块预测模式的自适应译码 | |
CN101919253A (zh) | 基于水平和垂直对称的滤波系数的视频译码 | |
CN1700771A (zh) | 一种增强像素域码流转换方法 | |
CN101356821A (zh) | 用于对图像或图像序列进行编码和解码的方法、对应的设备、计算机程序和信号 | |
CN101523919B (zh) | 基于用于精细化系数译码的视频区块类型的可变长度译码表选择 |
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: 20121121 Termination date: 20181015 |
|
CF01 | Termination of patent right due to non-payment of annual fee |