首页> 中国专利> 用于上下文自适应、多层级有效性译码的上下文导出

用于上下文自适应、多层级有效性译码的上下文导出

摘要

一种用于译码视频数据的装置包含视频译码器,所述视频译码器经配置以译码与残差数据相关联的变换系数的第一有效性信息,其中所述第一有效性信息指示第一子块是否包括至少一个非零系数,其中所述第一子块是整个变换块的子块;及译码第二有效性信息,其中所述第二有效性信息指示第二子块是否包括至少一个非零系数,其中所述第二子块是所述第一子块的子块,其中译码所述第二有效性信息包括对所述第二有效性信息执行算术译码操作,其中用于所述算术译码操作的上下文是基于与所述第一子块相同大小的一或多个相邻子块来确定。

著录项

  • 公开/公告号CN105027561A

    专利类型发明专利

  • 公开/公告日2015-11-04

    原文格式PDF

  • 申请/专利权人 高通股份有限公司;

    申请/专利号CN201380049321.4

  • 申请日2013-09-26

  • 分类号H04N7/26(20060101);

  • 代理机构11287 北京律盟知识产权代理有限责任公司;

  • 代理人宋献涛

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 11:47:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-08-28

    授权

    授权

  • 2015-12-02

    实质审查的生效 IPC(主分类):H04N7/26 申请日:20130926

    实质审查的生效

  • 2015-11-04

    公开

    公开

说明书

本申请案主张2012年9月26日申请的美国临时专利申请案61/706,035的权益。所述申请案的整个内容以引用的方式并入本文中。

技术领域

本发明大体上涉及视频译码,并且更具体来说,涉及对变换系数的译码。

背景技术

数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子图书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电话会议装置、视频流式传输装置及其类似者。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)所界定的标准、目前正在开发的高效率视频译码(HEVC)标准及这些标准的扩展中所描述的视频译码技术。视频装置可通过实施此类视频压缩技术而更有效率地传输、接收、编码、解码及/或存储数字视频信息。

视频压缩技术执行空间(图片内)预测及/或时间(图片间)预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码来说,视频切片(例如,视频帧或视频帧的一部分)可以分割成视频块,视频块还可被称作树块、译码单元(CU)及/或译码节点。使用相对于同一图片中的相邻块中的参考样本的空间预测对图片的经帧内译码(I)切片中的视频块进行编码。图片的经帧间编码(P或B)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称为帧,且参考图片可涉及参考帧。

空间或时间预测导致对块的预测块进行译码。残差数据表示待译码的原始块与预测块之间的像素差。经帧间译码块是根据指向形成预测块的参考样本块的运动向量及指示经译码块与预测块之间的差的残差数据编码的。经帧内译码块是根据帧内译码模式及残差数据来编码。为了实现进一步压缩,可以将残差数据从像素域变换到变换域,从而产生残差变换系数,接着可以对残差变换系数进行量化。可扫描最初布置为二维阵列的经量化变换系数,以便产生变换系数的一维向量,且可应用熵译码以实现更多压缩。

发明内容

在视频译码过程中,帧内或帧间预测译码产生可由变换域中的变换系数表示的残差数据。可在变换块中呈现所述变换系数。本发明描述与变换块的变换系数的信令层级相关的技术,并且更具体来说,与用于对变换系数的上下文自适应、多层级有效性译码的上下文导出相关的技术。可(例如)将所导出的上下文用作算术译码过程(例如,基于上下文自适应的算术译码(CABAC))的上下文。

在一个实例中,一种用于译码视频数据的方法包含译码与残差数据相关联的变换系数的第一有效性信息,其中所述第一有效性信息指示第一子块是否包括至少一个非零系数,其中所述第一子块是整个变换块的子块;及译码第二有效性信息,其中所述第二有效性信息指示第二子块是否包括至少一个非零系数,其中所述第二子块是所述第一子块的子块,其中译码所述第二有效性信息包括对所述第二有效性信息执行算术译码操作,其中用于所述算术译码操作的上下文是基于与所述第一子块相同大小的一或多个相邻子块来确定。

在另一实例中,一种用于译码视频数据的装置,其包含视频译码器,所述视频译码器经配置以译码与残差数据相关联的变换系数的第一有效性信息,其中所述第一有效性信息指示第一子块是否包括至少一个非零系数,其中所述第一子块是整个变换块的子块;及译码第二有效性信息,其中所述第二有效性信息指示第二子块是否包括至少一个非零系数,其中所述第二子块是所述第一子块的子块,其中译码所述第二有效性信息包括对所述第二有效性信息执行算术译码操作,其中用于所述算术译码操作的上下文是基于与所述第一子块相同大小的一或多个相邻子块来确定。

在另一实例中,一种存储指令的计算机可读存储媒体,所述指令在由一或多个处理器执行时致使所述一或多个处理器:译码与残差数据相关联的变换系数的第一有效性信息,其中所述第一有效性信息指示第一子块是否包括至少一个非零系数,其中所述第一子块是整个变换块的子块;及译码第二有效性信息,其中所述第二有效性信息指示第二子块是否包括至少一个非零系数,其中所述第二子块是所述第一子块的子块,其中译码所述第二有效性信息包括对所述第二有效性信息执行算术译码操作,其中用于所述算术译码操作的上下文是基于与所述第一子块相同大小的一或多个相邻子块来确定。

在另一实例中,一种用于译码视频数据的设备包含:用于译码与残差数据相关联的变换系数的第一有效性信息的装置,其中所述第一有效性信息指示第一子块是否包括至少一个非零系数,其中所述第一子块是整个变换块的子块;及用于译码第二有效性信息的装置,其中所述第二有效性信息指示第二子块是否包括至少一个非零系数,其中所述第二子块是所述第一子块的子块,其中译码所述第二有效性信息包括对所述第二有效性信息执行算术译码操作,其中用于所述算术译码操作的上下文是基于与所述第一子块相同大小的一或多个相邻子块来确定。

附图和以下描述中陈述一或多个实例的细节。其它特征、目标及优势将从所述描述及所述图式以及从权利要求书而显而易见。

附图说明

图1是说明可利用本发明中描述的技术的实例视频编码和解码系统的实例的框图。

图2是展示变换系数的4×4系数群组的实例反对角线扫描的概念图。

图3A到3D展示取决于底部及右边系数群组旗标的用于4×4子块中的系数的上下文指派的模式。

图4是说明可实施本发明中描述的技术的实例视频编码器的框图。

图5是说明可实施本发明中描述的技术的实例视频解码器的框图。

图6是说明视频块中的变换系数及与所述视频块相关联的有效性图之间的关系的概念图。

图7A到7D是说明使用Z形扫描次序、水平扫描次序、垂直扫描次序及对角线扫描次序而扫描的视频数据块的实例的概念图。

图8是说明被划分成子块以用于变换系数译码的示范性视频块的概念图。

图9是说明用于界定使用反向对角线扫描次序而扫描的视频块中的系数的有效性图的上下文模型的示范性五点支持的概念图。

图10A及10B是说明五点支持内的上下文相依性的概念图。

图11是说明用于视频块的每一区的基于邻域或位置的上下文的示范性指派的概念图。

图12是展示根据本发明的技术的实例视频编码方法的流程图。

图13是展示根据本发明的技术的实例视频解码方法的流程图。

具体实施方式

在视频译码过程中,视频解码器基于已经解码的视频数据块对当前视频数据块执行帧内或帧间预测。为了使经重构的视频块与原始视频数据更紧密匹配,视频解码器还从视频编码器接收一般对应于经预测视频数据与原始视频数据之间的差异的残差数据。因此,在解码时,经预测视频数据加上残差视频数据可比仅经预测视频数据提供对原始视频数据的更好的近似。如下文将更详细地解释,为了减少译码残差数据所需的位数目,视频编码器变换并量化残差数据。一旦经量化及变换,所述残差数据由变换域中的变换系数表示。可在变换块中呈现所述变换系数。

本发明描述与变换块的变换系数的信令层级相关的技术。另外,本发明描述用于对变换系数的上下文自适应、多层级有效性译码的上下文导出的技术。可(例如)将所导出的上下文用作算术译码过程(例如,基于上下文自适应的算术译码(CABAC))的上下文。应注意,在本发明中以两种不同方式使用术语层级。在一些情况下,术语层级可用于指系数的值或绝对值。然而,术语层级还可用于指分层结构内的不同位置。例如,整个变换块可被划分成第一组子块,第一组子块的每一子块可进一步被划分成第二组子块层级,且第二子块中的每一者可包含个别系数。变换块层次的这些不同阶段可(例如)被称为整个变换块层级、第一子块层级、第二子块层级及个别系数层级。

有效性译码一般是指对指示变换系数或变换系数群组是否包含具有除零之外的值的至少一个变换系数的信息进行译码。变换系数如果具有除零之外的值(还被称作层级)便被视为有效的。变换系数块如果包含至少一个有效系数便被视为有效的。

取决于经译码的视频数据的特性,视频编码器可译码呈各种大小的变换块,例如32×32、16×16及8×8。还预期将来的视频译码标准或当前视频译码标准的将来扩展可并入更大的变换大小,例如64×64或128×128。为了更有效地译码变换块的信息,可将变换块划分成小于整个变换块的子块。例如,可将16×16变换块划分成4×4子块及/或2×2子块。本发明引入多层级有效性译码。因此,根据本发明的技术,在译码变换块时,在第一层级(例如整个变换块层级)处,视频编码器可译码第一有效性信息(例如经译码块旗标)以指示变换块是否包含至少一个有效系数(即,至少一个非零系数)。如果整个变换块含有至少一个有效系数,那么对于第二层级(例如,第一子块层级),视频编码器可译码每一子块的指示所述子块是否包含有效系数的第二有效性信息。对于包含有效系数的每一子块,视频译码器可译码指示所述子块的子块是否包含有效系数的第三层级(即,第二子块层级)有效性信息。此多层级有效性译码可继续向下到最低层级(例如,个别系数层级)。

根据本发明的技术,用于较低层级的子块的大小可独立于变换块的大小。作为一个实例,用于第二层级的子块大小可为16×16,而不管第一层级变换块是32×32还是更大的大小。作为另一实例,用于第一子块层级的子块大小可一直是8×8,而不管整个变换块是16×16还是32×32。在本发明中,术语子块一般打算是指作为较大块的一部分的较小块。例如,可将32×32块划分成四个16×16子块、十六个8×8子块,或划分成某一其它大小的块。可进一步将子块划分成较小子块。作为一个实例,可将32×32块划分成四个16×16子块,而可将16×16子块中的每一者进一步划分成四个8×8块或十六个4×4子块。

对于每一子块层级,视频译码器可上下文在算术上译码有效性信息。根据本发明的技术,特定层级的有效性信息的上下文可基于相同层级的已经译码的子块以及更高层级的已经译码的块或子块两者。

图1是说明可利用本发明中描述的变换块译码技术的实例视频编码和解码系统10的框图。如图1中所示,系统10包含源装置12,所述源装置产生经编码视频数据以在稍后时间由目的地装置14解码。源装置12及目的地装置14可包括广泛范围的装置中的任一者,包含桌上型计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如,所谓的“智能”电话)、所谓的“智能”平板计算机、电视机、摄像机、显示装置、数字媒体播放器、视频游戏控制台、视频流式传输装置或其类似者。在一些情况下,源装置12和目的地装置14可能经装备以用于无线通信。

目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,链路16可包括使得源装置12能够实时将经编码视频数据直接传输到目的地装置14的通信媒体。经编码视频数据可根据通信标准(例如,无线通信协议)来调制,且被传输到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线路。通信媒体可形成基于包的网络(例如,局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换器、基站或可用于促进从源装置12到目的地装置14的通信的任何其它装备。

或者,经编码数据可以从输出接口22输出到存储装置32。类似地,可以通过输入接口从存储装置32存取经编码数据。存储装置32可包含多种分布式或本地存取的数据存储媒体中的任一者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或任何其它用于存储经编码视频数据的合适的数字存储媒体。在另一实例中,存储装置32可以对应于文件服务器或可保持由源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由流式传输或下载从存储装置32存取经存储的视频数据。文件服务器可以是能够存储经编码视频数据并且将所述经编码视频数据传输到目的地装置14的任何类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置或本地磁盘驱动器。目的地装置14可以通过任何标准数据连接(包含因特网连接)来存取经编码视频数据。此可包含无线通道(例如,Wi-Fi连接)、有线连接(例如,DSL、缆线调制解调器,等等),或适合于存取存储于文件服务器上的经编码视频数据的以上两者的组合。经编码视频数据从存储装置32的传输可能是流式传输、下载传输或两者的组合。

本发明的技术不必限于无线应用或环境。所述技术可以应用于支持多种多媒体应用中的任一者的视频译码,例如空中协议电视广播、有线电视传输、卫星电视传输、流式视频传输(例如,经由因特网)、编码数字视频以供存储在数据存储媒体上,解码存储在数据存储媒体上的数字视频,或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频传输,以支持例如视频流式传输、视频回放、视频广播和/或视频电话等应用。

在图1的实例中,源装置12包含视频源18、视频编码器20和输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)及/或发射器。在源装置12中,视频源18可包含例如视频俘获装置(例如,摄像机)、含有先前俘获的视频的视频存档、用于从视频内容提供者接收视频的视频馈入接口及/或用于产生计算机图形数据作为源视频的计算机图形系统,或此类源的组合等源。作为一个实例,如果视频源18是摄像机,那么源装置12和目的地装置14可以形成所谓的摄像机电话或视频电话。然而,本发明中描述的技术一般可适用于视频译码,且可应用于无线及/或有线应用。

可由视频编码器20来编码所俘获视频、经预先俘获的视频或计算机产生的视频。经编码视频数据可经由源装置12的输出接口22直接传输到目的地装置14。经编码视频数据还可(或替代地)存储到存储装置32上以供稍后由目的地装置14或其它装置存取以用于解码及/或回放。

目的地装置14包含输入接口28、视频解码器30及显示装置32。在一些情况下,输入接口28可包含接收器及/或调制解调器。目的地装置14的输入接口28经由链路16接收经编码视频数据。经由链路16传达或在存储装置32上提供的经编码视频数据可包含由视频编码器20产生的多种语法元素以供由例如视频解码器30等视频解码器用于解码视频数据。这些语法元素可与在通信媒体上传输、存储在存储媒体上或存储在文件服务器上的经编码视频数据包含在一起。

显示装置32可与目的地装置14集成或在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。

视频编码器20及视频解码器30可根据视频压缩标准(例如,目前正在开发的高效率视频译码(HEVC)标准)来操作,且可符合HEVC测试模型(HM)。布洛斯等人的文献JCTVC-J1003“高效率视频译码(HEVC)文本规范草案8(High efficiency video coding(HEVC)text specification draft 8”(ITU-T SG16 WP3和ISO/IEC JTC1/SC29/WG11视频译码联合合作小组(JCT-VC),第10届会议,瑞典斯德哥尔摩,7月11日到20日)中描述了HEVC标准的最近的草案,被称作“HEVC工作草案8”或WD8”。WD8的全文特此以引用的方式并入本文中。布洛斯等人的文献JCTVC-L1003v34“高效率视频译码(HEVC)文本规范草案10(针对FDIS和最后呼叫)(High efficiency video coding(HEVC)text specification draft 10(for FDIS & Last Call)(ITU-T SG16 WP3和ISO/IECJTC1/SC29/WG11视频译码联合合作小组(JCT-VC),第12届会议,瑞士日内瓦,2013年1月14日到23日)中描述了HEVC标准的另一最近的草案,被称作“HEVC工作草案10”或WD10”。WD10的全文特此以引用的方式并入本文中。

或者或另外,视频编码器20和视频解码器30可根据其它专有或业界标准来操作,所述标准例如是ITU-T H.264标准(或者被称作MPEG-4第10部分,高级视频译码(AVC)),或此类标准的扩展。然而,本发明的技术不限于任何特定译码标准。视频压缩标准的其它实例包含MPEG-2及ITU-T H.263。

尽管图1中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解码器集成,且可包含适当MUX-DEMUX单元或其它硬件及软件以处置对共同数据流或单独数据流中的音频及视频两者的编码。在一些实例中,如果适用,MUX-DEMUX单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。

视频编码器20及视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分地用软件实施所述技术时,装置可将用于软件的指令存储在合适的非暂时性计算机可读媒体中且使用一或多个处理器用硬件执行所述指令以执行本发明的技术。视频编码器20及视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器(CODEC)的部分。

一般来说,HM的工作模型描述视频帧或图片可以被划分为包含亮度和色度样本两者的一序列的树块或最大译码单元(LCU)。树块具有与H.264标准的宏块类似的目的。切片包含呈译码次序的多个连续树块。视频帧或图片可被分割成一或多个切片。每一树块可以根据四叉树而分裂成译码单元(CU)。举例来说,作为四叉树的根节点的树块可分裂成四个子节点,且每一子节点又可为父节点且分裂成另外四个子节点。最后的未经分裂的子节点(作为四叉树的叶节点)包括译码节点,即,经译码视频块。与经译码位流相关联的语法数据可界定树块可分裂的最大次数,且还可界定译码节点的最小大小。

CU包含译码节点以及与所述译码节点相关联的预测单元(PU)及变换单元(TU)。CU的大小对应于译码节点的大小并且形状必须是正方形。CU的大小可以在从8×8像素直到具有最大64×64像素或更大的树块的大小的范围内。每一CU可含有一或多个PU及一或多个TU。举例来说,与CU相关联的语法数据可描述将CU分割成一或多个PU。分割模式可以在CU被跳过或经直接模式编码、帧内预测模式编码或帧间预测模式编码之间有区别。PU可分割成非正方形形状。举例来说,与CU相关联的语法数据还可描述CU根据四叉树被分割为一或多个TU。TU可以是正方形或非正方形形状。

HEVC标准允许根据TU的变换,TU可针对不同CU而有所不同。TU的大小通常是基于针对经分割LCU界定的给定CU内的PU的大小而设置,但是情况可能并不总是如此。TU通常与PU大小相同或小于PU。在一些实例中,对应于CU的残差样本可以使用被称为“残差四叉树”(RQT)的四叉树结构而细分成较小单元。RQT的叶节点可被称为变换单元(TU)。可以变换与TU相关联的像素差值以产生变换系数,可以将所述变换系数量化。

一般来说,PU包含与预测过程有关的数据。举例来说,当PU经帧内模式编码时,PU可包含描述PU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含界定PU的运动向量的数据。界定PU的运动向量的数据可描述(例如)运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考帧,和/或运动向量的参考图片列表(例如,列表0、列表1或列表C)。

一般来说,TU用于变换及量化过程。具有一或多个PU的给定CU还可包含一或多个TU。在预测之后,视频编码器20可计算对应于PU的残差值。残差值包括像素差值,所述像素差值可变换成变换系数、经量化且使用TU进行扫描以产生串行化变换系数以用于熵译码。如上文所介绍,本发明描述用于译码及用信号发送从视频编码器20到视频解码器30的TU的技术。本发明使用术语“视频块”以一般指代CU、LCU、PU、TU或其它类型的视频块中的任一者。

视频序列通常包含一系列视频帧或图片。图片群组(GOP)一般包括一系列一或多个视频图片。GOP可包含GOP的标头、图片中的一或多者的标头或其它处的语法数据,其描述GOP中所包含的图片的数目。图片的每一切片可包含描述用于相应切片的编码模式的切片语法数据。视频编码器20通常对个别视频切片内的视频块操作以便编码视频数据。视频块可以对应于CU内的译码节点。视频块可以具有固定或变化的大小,并且根据指定译码标准可以有不同大小。

作为实例,HM支持各种PU大小的预测。假设特定CU的大小是2N×2N,那么HM支持2N×2N或N×N的PU大小的帧内预测,及2N×2N、2N×N、N×2N或N×N的对称PU大小的帧间预测。HM还支持用于2N×nU、2N×nD、nL×2N及nR×2N的PU大小的帧间预测的不对称分割。在不对称分割中,不分割CU的一个方向,而将另一方向分割成25%及75%。CU的对应于25%分区的部分由“n”继之以“上”、“下”、“左”或“右”的指示来指示。因此,例如,“2N×nU”是指经水平分割的2N×2N CU,其中顶部为2N×0.5N PU,而底部为2N×1.5N PU。

在本发明中,“N×N”与“N乘N”可以可互换地使用,以在垂直和水平尺寸方面指代视频块的像素尺寸,例如16×16像素或16乘16像素。一般来说,16×16块将在垂直方向上具有16个像素(y=16),并且在水平方向上具有16个像素(x=16)。同样地,N×N块一般在垂直方向上具有N个像素,且在水平方向上具有N个像素,其中N表示非负整数值。块中的像素可按行及列布置。此外,块不一定需要在水平方向与垂直方向上具有相同数目的像素。举例来说,块可包括N×M像素,其中M未必等于N。

在使用CU的PU进行帧内预测或帧间预测译码之后,视频编码器20可以计算CU的TU的残差数据。PU可包括空间域(还被称作像素域)中的像素数据且TU可包括在对残差视频数据应用变换(例如,离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换)之后的变换域中的系数。残差数据可以对应于未经编码图片的像素与对应于PU的预测值之间的像素差。视频编码器20可以形成包含用于CU的残差数据的TU,并且接着变换TU以产生用于CU的变换系数。

在进行用于产生变换系数的任何变换之后,视频编码器20可执行变换系数的量化。量化一般是指变换系数经量化以可能减少用于表示系数的数据量从而提供进一步压缩的过程。量化过程可减少与系数中的一些系数或全部相关联的位深度。举例来说,可在量化期间将n位值向下舍入到m位值,其中n大于m。

如上文所介绍且如将在下文更详细地描述,视频编码器20可使用如本发明中所描述的上下文自适应、多层级有效性译码将TU用信号发送到视频解码器30。在一些实例中,视频编码器20可利用预先界定的扫描次序来扫描经量化的变换系数以产生可被熵编码的串行化向量。在其它实例中,视频编码器20可以执行自适应扫描。在扫描经量化变换系数以形成一维向量之后,视频编码器20可例如根据上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编码方法对所述一维向量进行熵编码。视频编码器还20可对与经编码视频数据相关联的语法元素进行熵编码以供视频解码器30在对视频数据解码时使用。

一般来说,使用CABAC对数据符号进行熵译码涉及以下步骤中的一或多者:

(1)二进制化:如果待译码的符号为非二进制值,则将其映射到所谓的“二进位”序列。每一二进位可具有“0”或“1”的值。

(2)上下文指派:向每一二进位(在常规模式中)指派上下文。上下文模型确定如何基于可用于给定二进位的信息(例如先前编码的符号的值或二进位数目)来计算用于所述给定二进位的上下文。

(3)二进位编码:用算术编码器对二进位进行编码。为了对二进位进行编码,所述算术编码器需要所述二进位的值的概率(即,二进位的值等于“0”的概率及二进位的值等于“1”的概率)作为输入。每一上下文的(所估计的)概率是由被称为“上下文状态”的整数值表示。每一上下文具有状态范围,且因此状态(即,所估计的概率)的范围对于指派给一个上下文的二进位是相同的,且在上下文之间是不同的。

(4)状态更新:所选择的上下文的概率(状态)是基于二进位的实际译码值来更新(例如,如果所述二进位值是“1”,那么“1”的概率增加)。

应注意,PIPE使用类似于算术译码的原理的原理,且可因此还潜在地利用本发明的技术。

为了执行CABAC,视频编码器20可以向待传输的符号指派上下文模型内的上下文。上下文可涉及(例如)符号的相邻值是否为非零。

在HEVC WD8中,对于8×8、16×16及32×32变换块,视频编码器20使用4×4子块扫描。使用右上到左下扫描(例如,从高频率到低频率)在反向方向上扫描子块。在子块内,也使用右上到左下扫描在反向方向上扫描变换系数。在五个译码回合中译码每一4×4子块,即,有效性、大于1的层级、大于2的层级、正负号及剩余的大于2的系数层级。

在HEVC标准的一些提议中,视频编码器20将系数分组为块或子集,有时还称为系数群组(CG)。视频编码器20译码每一子集的变换系数的有效性图及层级信息(绝对值及正负号)。在一个实例中,较大变换块内的变换系数的4×4子块(或子集)被视为子集。译码以下符号且从视频编码器20用信号发送到视频解码器30以表示子集内的系数层级信息。在一个实例中,视频编码器20以反扫描次序编码所有符号。应注意,以下符号可被称为“旗标”。应注意,本发明中论述的“旗标”中的任一者不需要受限于二进制符号,而是还可实施为多位语法元素。

significant_coeff_flag(缩写sigMapFlag):此旗标指示CG中的每一系数的有效性。具有一或更大的绝对值的系数被视为有效的。作为一个实例,为0的sigMapFlag值指示所述系数不有效,而为1的值指示所述系数有效。此旗标一般可被称作有效性旗标。

coeff_abs_level_greater1_flag(缩写gr1Flag):此旗标指示系数的绝对值对于任何非零系数(即,具有作为1的sigMapFlag的系数)是否大于一。作为一个实例,为0的gr1Flag值指示系数不具有大于一的绝对值,而gr1Flag的1值指示系数确实具有大于一的绝对值。此旗标可一般被称作大于一旗标。

coeff_abs_level_greater2_flag(缩写gr2Flag):此旗标指示对于具有大于一的绝对值的任何系数(即,具有为1的gr1Flag的系数),所述系数的绝对值是否大于二。作为一实例,为0的gr2Flag值指示系数不具有大于二的绝对值,而gr2Flag的1值指示系数确实具有大于二的绝对值。此旗标可一般被称作大于二旗标。

coeff_sign_flag(缩写signFlag):此旗标指示任何非零系数(即,具有为1的sigMapFlag的系数)的正负号信息。举例来说,此旗标的零指示正号,而1指示负号。

coeff_abs_level_remaining(缩写levelRem):此语法元素指示剩余系数的绝对层级值。例如,对于此旗标,针对具有大于二的绝对值的每一系数(即,具有为1的gr2Flag的系数)而译码系数的绝对值减三(abs(level)-3)。

图2展示4×4块100中的经量化系数的实例。块100可为4×4变换块或可为8×8、16×16或32×32变换块中的4×4子块(子集)。表1中概述以反扫描次序扫描的图2中展示的系数的经编码符号。在表1中,scan_pos是指沿着图2中展示的反对角线扫描的系数的位置。Scan_pos 15是所扫描的第一系数,且位于块100的右下隅角中。scan_pos 15处的经量化系数具有为0的绝对值。Scan_pos 0是所扫描的最后一个係数,且位于块100的左上角处。scan_pos 0处的经量化系数具有为10的绝对值。在4×4变换块或较大变换块中的最后一个4×4子块的情况下,不需要对前四个sigMapFlags进行译码,因为最后一个非零系数的位置是已知的。也就是说,对sigMapFlag的译码可开始于最后一个非零系数(在此实例中,所述系数处于scan_pos 11)。在一些情况下,第一非零的位置也可以是已知的,因此可不另外用信号发送scan_pos11的SigMapFlag。

表1.用于4×4 TU或4×4 CG的系数的经译码符号

在这些符号当中,用自适应上下文模型对sigMapFlag、gr1Flag及gr2Flag的二进位进行编码。通过具有固定相等概率模型(例如,具有指数-哥伦布码)的绕过模式对signFlag及levelRem的二进制化的二进位进行编码。

对块或子块的有效性的译码可包含两个部分。首先,针对每一系数群组译码(或推断)经译码子块旗标(CSBF)以指示子块中是否存在任何非零系数。如果CSBF是1,那么译码系数群组中的每一变换系数的有效系数旗标。在WD8中,有效的旗标上下文取决于4×4子块内的系数的位置、所述子块是否含有DC系数,及右边及下方的子块的CSBF(CSBFR)及(CSBFL)。

图3A到3D展示取决于CSBFR及CSBFL的用于4×4子块的上下文指派的四个不同模式。由视频编码器20及视频解码器30依据CSBFR及CSBFL而向4×4子块内的系数指派上下文,如图3A到3D中所展示。图3A到3D的块中的数字(0、1及2)对应于不同上下文。在图3A到3D的实例中,上下文2可指示系数是有效的高可能性(例如,大于50/50),而上下文0可指示系数是有效的低可能性(例如,小于50/50)。上下文1可指示系数是有效的近似50/50的可能性。图3A到3D仅是上下文模式的一个实例,且预期本发明的技术可与不同的上下文模式一起使用,包含具有更多或更少的上下文的模式。

如果4×4子块不含有DC系数,那么应用上下文偏移3。作为一实例,如果4×4子块不含有DC系数,且来自图3A到3D的上下文指派是2,那么所使用的实际上下文将为5。换句话说,上下文导出过程在两种情况下确切相同,但使用用于DC及非DC子块的不同上下文集合(它们不共享相同的上下文)。此实例过程用于亮度变换系数。对于色度变换系数,不应用基于4×4子块是否含有DC系数的上下文偏移,且所有子块共享上下文。因此,仅三个上下文用于色度。DC系数一直使用单独的上下文,所有TU大小共享所述上下文。

图3A展示具有不具有非零系数的下部相邻子块(即CSBFL=0)及不具有非零系数的右边相邻子块(即CSBFR=0)的子块中的系数的上下文的实例。图3B展示具有不具有非零系数的下部相邻子块(即CSBFL=0)及具有至少一个非零系数的右边相邻子块(即CSBFR=1)的子块中的系数的上下文的实例。图3C展示具有至少一个非零系数的下部相邻子块(即CSBFL=1)及不具有非零系数的右边相邻子块(即CSBFR=0)的子块中的系数的上下文的实例。图3D展示具有至少一个非零系数的下部相邻子块(即CSBFL=1)及具有至少一个非零系数的右边相邻子块(即CSBFR=1)的子块中的系数的上下文的实例。

图3A到3D展示开始于0的上下文编号来替代用于HEVC中的实际上下文偏移。为HEVC上下文编制索引。对于sig_coeff_flag,例如,依据块大小及它们是亮度还是色度而为它们编制索引。简单来说,在图3A到3D中,上下文仅从0编号,而不考虑归因于块大小及颜色分量而涉及的不同偏移。偏移是HEVC中的理解或实施本发明的技术非必需的惯例。

在HEVC中,在多个层级处译码有效性信息,如上文所介绍。经译码块旗标(CBF)用信号发送整个变换块的有效性。也就是说,CBF指示整个变换块是否含有任何有效(即,非零)系数。在变换块内,层级对应于子块的有效性(使用CSBF),且另一层级对应于个别系数的有效性。在此层级处,使用上文所描述的语法元素significant_coeff_flag用信号发送个别系数的有效性。

如此实例中所描述,HEVC中存在三个层级的有效性信令。根据本发明的实例,可在CSBF(其处于4×4子块层级)与significant_coeff_flag(其处于个别系数层级)之间存在另一层级的信令有效性信息,例如在2×2子块层级处。更一般地说,根据本发明的技术,有效性信令可发生在整个块层级处、个别系数层级处及两个或更多个子块层级处。所述两个或更多个子块层级可例如为2×2子块层级及4×4子块层级,但也可使用其它子块层级。

2×2子块有效性可利用其自身的旗标及上下文导出及模式。本发明描述用以用信号发送2×2有效性(或其它中间大小)且利用子块层级处的有效性信令以用于在用信号发送变换系数时的潜在更好的性能的方法。因此,其它子块层级可提供用于用信号发送正被译码的当前子块的有效性信息的上下文信息。其它子块层级的有效性信息可使得熵编码器能够更好地建模当前层级处的有效性信息的概率,因此潜在地提高译码效率。虽然本发明的技术可使用2×2子块层级以用于解释的目的,但应理解,本文中描述的技术不限于2×2子块层级且可应用于其它子块层级。

根据本发明的技术,语法元素(例如,旗标)可用于用信号发送额外子块的有效性。此旗标可一般被称为(例如)coded_additional_sub_block_flag(CASBF)。在一个实例中,所述额外子块可为2×2子块,在此情况下,所述旗标可称为(例如)coded_2x2_sub_block_flag(C2SBF)。如果2×2子块中的至少一个系数有效,那么可将C2SBF设定成等于1。否则的话,可将C2SBF设定为0。

为了潜在地改善CASBF或C2SBF的译码,旗标可被上下文译码。对用于特定子块的上下文的选择可影响性能。根据本发明的技术,C2SBF上下文可取决于已经译码的相邻2×2子块的C2SBF,及/或相邻4×4子块的CSBF,及/或子块的相邻系数的significant_coeff_flag。用于上下文导出的相邻系数/子块可包括当前子块的因果邻域。在此方面,“因果”相邻者是已经译码的相邻者,且因此视频编码器20及视频解码器30在译码当前有效性信息时可存取它们的信息。在此实例中,当前有效性信息可包含C2SBF旗标。在一个实例中,所述邻域可包含右边的系数/子块、下方的一者及/或右下对角线上的一者。

现将描述用于中间子块/CG大小的上下文指派。在本发明的一个实例中,用于2×2子块的上下文指派的模式可取决于先前经译码的C2SBF及/或先前经译码的CSBF。在一个实例中,所述模式取决于当前子块右边及下方的子块。在另一实例中,所述模式还取决于4×4子块内及/或变换块内的2×2子块的位置。

在本发明的另一实例中,上下文指派还可取决于4×4子块内及/或变换块内的2×2子块的位置。也就是说,两个2×2子块可能具有相邻子块中的相同有效性图。可向2×2子块指派相同的模式但具有不同的上下文集合,其取决于它们在变换块内的位置。

图4是说明可实施本发明中描述的技术的实例视频编码器20的框图。视频编码器20可以执行视频切片内的视频块的帧内译码及帧间译码。帧内译码依赖于空间预测来减少或去除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测来减少或去除视频序列的邻接帧或图片内的视频中的时间冗余。帧内模式(I模式)可以指若干基于空间的压缩模式中的任一者。例如单向预测(P模式)或双向预测(B模式)等帧间模式可以指若干基于时间的压缩模式中的任一者。

在图4的实例中,视频编码器20包含分割单元35、预测处理单元41、滤波器单元63、经解码图片缓冲器64、求和器50、反变换处理单元52、量化单元54及熵编码单元56。预测处理单元41包含运动估计单元42、运动补偿单元44及帧内预测处理单元46。为了视频块重构,视频编码器20还包含反量化单元58、反变换处理单元60及求和器62。滤波器单元63既定表示一或多个环路滤波器,例如解块滤波器、自适应环路滤波器(ALF)及样本自适应偏移(SAO)滤波器。尽管在图4中将滤波器单元63展示为环路内滤波器,但在其它配置中,可将滤波器单元63实施为环路后滤波器。

如图4中所展示,视频编码器20接收视频数据,且分割单元35将数据分割成视频块。此分割还可包含分割成切片、图像块或其它较大单元,以及例如根据LCU及CU的四叉树结构的视频块分割。视频编码器20大体说明编码待编码视频切片内的视频块的组件。所述切片可以划分成多个视频块(且可能划分成被称作图像块的数组视频块)。预测处理单元41可基于错误结果(例如,译码速率及失真等级)针对当前视频块选择多种可能译码模式中的一者,例如,多种帧内译码模式中的一者或多种帧间译码模式中的一者。预测处理单元41可将所得的经帧内译码或经帧间译码块提供到求和器50以产生残差块数据,且提供到求和器62以重构经编码块以用于用作参考图片。

预测处理单元41内的帧内预测处理单元46可相对于与待译码的当前块在相同的帧或切片中的一或多个相邻块执行当前视频块的帧内预测译码,以提供空间压缩。预测处理单元41内的运动估计单元42及运动补偿单元44相对于一或多个参考图片中的一或多个预测块执行当前视频块的帧间预测译码以提供时间压缩。

运动估计单元42可经配置以根据用于视频序列的预定模式为视频切片确定帧间预测模式。预定模式可将序列中的视频切片指定为P切片、B切片或GPB切片。运动估计单元42与运动补偿单元44可高度集成,但出于概念上的目的而分开予以说明。运动估计单元42所执行的运动估计是产生运动向量的过程,所述过程估计视频块的运动。举例来说,运动向量可以指示当前视频帧或图片内的视频块的PU相对于参考图片内的预测块的移位。

预测块是被发现在像素差方面与待译码的视频块的PU紧密匹配的块,像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差异度量来确定。在一些实例中,视频编码器20可计算存储于经解码图片缓冲器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可以内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可相对于全像素位置和分数像素位置执行运动搜索并且输出具有分数像素精度的运动向量。

运动估计单元42通过比较PU的位置与参考图片的预测块的位置来计算经帧间译码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述参考图片列表中的每一者识别存储在经解码图片缓冲器64中的一或多个参考图片。运动估计单元42将计算出来的运动向量发送到熵编码单元56及运动补偿单元44。

通过运动补偿单元44执行的运动补偿可以涉及基于通过运动估计(可能执行对子像素精确度的内插)确定的运动向量获取或产生预测块。在接收到当前视频块的PU的运动向量后,运动补偿单元44即刻可以在参考图片列表中的一者中定位所述运动向量指向的预测块。视频编码器20通过从正被译码的当前视频块的像素值减去预测块的像素值从而形成像素差值来形成残差视频块。像素差值形成用于所述块的残差数据,并且可包含亮度及色度差分量两者。求和器50表示执行此减法运算的一或多个组件。运动补偿单元44还可产生与视频块及视频切片相关联的语法元素以供视频解码器30在解码视频切片的视频块时使用。

作为如上文所描述由运动估计单元42和运动补偿单元44执行的帧间预测的替代方案,帧内预测单元46可以对当前块进行帧内预测。明确地说,帧内预测单元46可以确定用来编码当前块的帧内预测模式。在一些实例中,帧内预测单元46可(例如)在单独编码回合期间使用各种帧内预测模式对当前块进行编码,且帧内预测单元46(在一些实例中,或为模式选择单元40)可从所测试的模式中选择将使用的适当的帧内预测模式。举例来说,帧内预测单元46可以使用速率失真分析计算针对各种经测试帧内预测模式的速率失真值,并且从所述经测试模式当中选择具有最佳速率失真特性的帧内预测模式。速率失真分析一般确定经编码块与经编码以产生所述经编码块的原始的未经编码块之间的失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内预测单元46可以根据用于各种经编码块的失真及速率计算比率,以确定哪种帧内预测模式对于所述块展现最佳速率失真值。

在任何情况下,在选择了用于一块的帧内预测模式之后,帧内预测单元46可将指示用于所述块的选定帧内预测模式的信息提供到熵译码单元56。熵译码单元56可根据本发明的技术编码指示所述选定帧内预测模式的信息。视频编码器20可在所传输的位流中包含配置数据,所述配置数据可包含多个帧内预测模式索引表及多个修改的帧内预测模式索引表(还被称作码字映射表)、编码用于各种块的上下文的界定,及用于所述上下文中的每一者的最可能的帧内预测模式、帧内预测模式索引表及修改的帧内预测模式索引表的指示。

在预测处理单元41经由帧间预测或帧内预测产生当前视频块的预测块之后,视频编码器20通过从当前视频块减去预测块而形成残差视频块。残差块中的残差视频数据可包含在一或多个TU中并应用于反变换处理单元52。反变换处理单元52使用例如离散余弦变换(DCT)或概念上类似的变换等变换将残差视频数据变换成残差变换系数。反变换处理单元52可以将残差视频数据从像素域变换到变换域,例如频域。

反变换处理单元52可将所得变换系数发送到量化单元54。量化单元54将变换系数量化以进一步减小位速率。量化过程可减少与系数中的一些系数或全部相关联的位深度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元54可以接着执行对包含经量化的变换系数的矩阵的扫描。替代地,熵编码单元56可以执行所述扫描。在量化之后,熵编码单元56对经量化变换系数进行熵编码。熵编码单元56可(例如)产生上文所描述的significant_coeff_flag、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag及coeff_abs_level_remaining语法元素以及上文所描述的CSBFR、CSBFB、CASBF及C2SBF旗标。

举例来说,熵编码单元56可执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编码方法或技术。在熵编码单元56进行的熵编码之后,可将经编码位流传输到视频解码器30,或将经编码位流存档以供稍后传输或由视频解码器30检索。熵编码单元56还可对正被编码的当前视频切片的运动向量和其它语法元素进行熵编码。

反量化单元58和反变换处理单元60分别应用反量化和反变换以在像素域中重构残差块,例如以供稍后用作参考图片的参考块。运动补偿单元44可以通过将残差块添加到参考图片列表中的一者内的参考图片中的一者的预测块中来计算参考块。运动补偿单元44还可将一或多个内插滤波器应用于经重构的残差块以计算子整数像素值用于运动估计。求和器62将经重构的残差块添加到由运动补偿单元44产生的运动补偿预测块以产生参考块用于存储在经解码图片缓冲器64中。参考块可由运动估计单元42和运动补偿单元44用作参考块以对后续视频帧或图片中的块进行帧间预测。

以此方式,图4的视频编码器20表示视频编码器的实例,其经配置以译码与残差数据相关联的变换系数的第一有效性信息,其中所述第一有效性信息对应于第一子块的有效性且所述第一子块是整个变换块的子块;译码第二有效性信息,其中所述第二有效性信息对应于第二子块的有效性,且其中所述第二子块是所述第一子块的子块;及对所述第二有效性信息执行算术译码操作。可基于与第一子块相同大小的一或多个相邻子块来确定所述算术译码操作的上下文。在一个实例中,所述第一子块是4×4块且所述第二子块是2×2子块。所述第二有效性信息可指示所述第二子块的至少一个系数是否为非零系数。所述上下文可基于与所述第二子块相同大小的一或多个相邻子块的有效性信息、基于一或多个相邻个别系数的有效性信息,或基于第一子块内的第二子块的位置。上下文指派的模式可基于第一子块内的第二子块的位置。

图5是说明可实施本发明中描述的技术的实例视频解码器30的框图。在图5的实例中,视频解码器30包含熵解码单元80、预测单元81、反量化单元86、反变换单元88、求和器90、滤波器单元91及经解码图片缓冲器92。预测单元81包含运动补偿单元82及帧内预测处理单元84。在一些实例中,视频解码器30可执行大体上与关于来自图4的视频编码器20描述的编码遍次互逆的解码遍次。

在解码过程期间,视频解码器30从视频编码器20接收表示经解码视频切片的视频块的经编码视频位流及相关联的语法元素。视频解码器30的熵解码单元80对位流进行熵解码以产生经量化系数、运动向量和其它语法元素。熵解码单元80可(例如)通过接收及解析上文所描述的significant_coeff_flag、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag及coeff_abs_level_remaining语法元素以及上文所描述的CSBFR、CSBFB、CASBF及C2SBF旗标而产生经量化系数。熵解码单元80将运动向量和其它语法元素转发到预测单元81。视频解码器30可以接收视频切片层级和/或视频块层级处的语法元素。

当视频切片经译码为经帧内译码(I)切片时,预测单元81的帧内预测处理单元84可基于用信号发送的帧内预测模式及来自当前帧或图片的先前经解码块的数据而产生用于当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即,B、P或GPB)切片时,预测单元81的运动补偿单元82基于从熵解码单元80接收到的运动向量和其它语法元素产生用于当前视频切片的视频块的预测块。预测块可以从参考图片列表中的一者内的参考图片中的一者产生。视频解码器30可以基于存储在经解码图片缓冲器92中的参考图片使用默认建构技术建构参考帧列表:列表0和列表1。

运动补偿单元82通过解析运动向量及其它语法元素来确定用于当前视频切片的视频块的预测信息,并且使用所述预测信息产生用于正被解码的当前视频块的预测块。举例来说,运动补偿单元82使用所接收的语法元素中的一些语法元素来确定用于对视频切片的视频块进行译码的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片、P切片或GPB切片)、用于切片的参考图片列表中的一或多者的建构信息、用于切片的每一经帧间编码视频块的运动向量、用于切片的每一经帧间译码视频块的帧间预测状态,及用以对当前视频切片中的视频块进行解码的其它信息。

运动补偿单元82还可基于内插滤波器执行内插。运动补偿单元82可使用由视频编码器20在编码视频块期间使用的内插滤波器来计算参考块的子整数像素的内插值。在此状况下,运动补偿单元82可根据所接收的语法信息元素而确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测块。

反量化单元86将在位流中提供且由熵解码单元80解码的经量化变换系数反量化,即,解量化。反量化过程可包含使用视频编码器20针对视频切片中的每一视频块计算以确定应该应用的量化程度和同样反量化程度的量化参数。反变换处理单元88对变换系数应用反变换,例如反DCT、反整数变换或概念上类似的反变换过程,以便产生像素域中的残差块。

在运动补偿单元82基于运动向量和其它语法元素产生当前视频块的预测块之后,视频解码器30通过对来自反变换处理单元88的残差块与由运动补偿单元82产生的对应预测块求和而形成经解码视频块。求和器90表示可执行此求和运算的组件。必要时,还可使用其它环路滤波器(在译码环路中或在译码环路之后)来使像素转变变平滑或者以其它方式改善视频质量。滤波器单元91既定表示一或多个环路滤波器,例如解块滤波器、自适应环路滤波器(ALF)及样本自适应偏移(SAO)滤波器。尽管在图5中将滤波器单元91展示为环路内滤波器,但在其它配置中,可将滤波器单元91实施为环路后滤波器。接着将给定帧或图片中的经解码视频块存储在经解码图片缓冲器92中,经解码图片缓冲器92存储用于后续运动补偿的参考图片。经解码图片缓冲器92还存储经解码视频以用于稍后呈现在显示装置(例如,图1的显示装置32)上。

以此方式,图5的视频解码器30表示视频解码器的实例,其经配置以译码与残差数据相关联的变换系数的第一有效性信息,其中所述第一有效性信息对应于第一子块的有效性且所述第一子块是整个变换块的子块;译码第二有效性信息,其中所述第二有效性信息对应于第二子块的有效性,且其中所述第二子块是所述第一子块的子块;及对所述第二有效性信息执行算术译码操作。可基于与第一子块相同大小的一或多个相邻子块来确定所述算术译码操作的上下文。在一个实例中,所述第一子块是4×4块且所述第二子块是2×2子块。所述第二有效性信息可指示所述第二子块的至少一个系数是否为非零系数。所述上下文可基于与所述第二子块相同大小的一或多个相邻子块的有效性信息、基于一或多个相邻个别系数的有效性信息,或基于第一子块内的第二子块的位置。上下文指派的模式可基于第一子块内的第二子块的位置。

现将描述有效性图的额外方面。图6是说明视频块中的变换系数及与所述视频块相关联的有效性图之间的关系的概念图。如图6中所说明,所述有效性图包含“1”以指示视频块中的有效系数值(即,大于零的值)的每一实例。可在可由视频解码器(例如视频解码器30)解码的位流中用信号发送有效性图以确定待解码的视频块中的有效的(即,大于零)系数的位置。更具体来说,可在位流中用信号发送视频块内的最后非零系数的位置。视频块中的最后非零系数的位置取决于用于视频块的扫描次序。可用信号发送额外的语法元素以指示根据已知或可知的扫描次序的相对于最后非零系数的另一有效系数。

图7A到7D是说明分别使用Z形扫描次序、水平扫描次序、垂直扫描次序及对角线扫描次序而扫描的视频数据块的实例的概念图。如图7A到7D中所展示,8×8视频数据块(例如,CU的TU)可包含使用圆圈标示的对应块位置中的六十四个残差系数。例如,块101、102、103及104可各自具有8×8的大小并且因此包含使用先前描述的预测技术产生的六十四个残差系数。

根据本发明中描述的技术,可使用2-D变换、水平1-D变换及垂直1-D变换中的一者变换块101、102、103及104中的每一者中的六十四个残差系数,或可完全不变换残差系数。无论是否变换,使用Z形扫描次序、水平扫描次序及垂直扫描次序中的一者扫描视频块101、102、103及104中的每一者中的系数以准备用于熵译码。

如图7A中所展示,与块101相关联的扫描次序是Z形扫描次序。Z形扫描次序以如图7A中的箭头指示的对角方式扫描块101的经量化变换系数。类似地,在图7D中,对角线扫描次序以如图7D中的箭头指示的对角方式扫描块104的经量化变换系数。如图7B及7C中所展示,与块102及103相关联的扫描次序分别是水平扫描次序及垂直扫描次序。水平扫描次序以水平逐线或“光栅”方式扫描块102的经量化变换系数,而垂直扫描次序以垂直逐线或“旋转光栅”方式扫描块103的经量化变换系数,还如图7B及7C中的箭头所指示。

在其它实例中,如上文所描述,块可具有较小或大于块101、102、103及104的大小的大小,且可包含更多或更少的经量化变换系数及对应块位置。在这些实例中,与特定块相关联的扫描次序可以与图7A到7D的8×8块的实例中所展示的大体上类似的方式扫描块的经量化变换系数,例如,可在先前描述的扫描次序中的任一者之后扫描4×4块或16x16块。

图8是说明被划分成子块以用于变换系数译码的示范性视频块110的概念图。在当前HM中,子块概念用于变换系数译码。视频译码器可将大于所确定的子块大小的任何变换单元(TU)细分为子块。例如,视频块110被划分成四个4×4子块。

在图8的所说明的实例中,视频译码器将视频块110划分为4×4子块。在其它实例中,视频译码器可将视频块划分为其它大小的子块,例如,8×8、16×16及类似者。如果视频译码器针对帧或切片的所有TU使用相同的子块大小,那么归因于使用所述子块大小实现的均匀性,可在硬件实施方案中实现增益。例如,所有处理可在此些子块中拆分,而不管TU大小如何。然而,均匀的子块大小不是实施本发明的技术所必需的。

对于系数译码,可使用如图8上所示的对角线扫描次序扫描视频块110的每一4×4子块。在一些实例中,可使用统一扫描以用于扫描每一子块的变换系数。在此情况下,相同的扫描次序用于有效性信息,即,有效性图、系数层级、正负号及类似者。在第一实例中,如图8中所展示,视频译码器可使用对角线扫描来扫描变换系数。在另一实例中,视频译码器可以图8中展示的次序相反的次序所述变换系数,例如,开始于右下角且前进到左上角的反向对角线扫描。在其它实例中,视频译码器可使用Z形、水平或垂直扫描来扫描所述变换系数。其它的扫描方向/定向也是可能的。

为了易于解释,本发明将视频块的子块描述为4×4子块。然而,还可以相对于不同大小的子块(例如,2×2、8×8、16×16及类似者)应用本发明的技术。对于每个4×4块,译码siginificant_coeffgroup_flag,且如果在所述子块中存在至少一个非零系数,那么将此旗标设定为一;否则的话将其设定为零。如果siginificant_coeffgroup_flag对于给定子块是非零,那么以向后对角线次序扫描所述4×4子块,且译码所述子块的每个系数的significant_coeff_flag以指示所述系数的有效性。还译码系数的绝对值,即,系数层级。这些旗标的群组可被称为视频块的有效性图。在某一实例中,不明确地用信号发送所述有效性图,可使用相邻的4×4子块旗标,或在所述4×4子块含有最后系数或DC系数时隐式地导出siginificant_coeffgroup_flag。

图9是说明用于界定使用反向对角线扫描次序扫描的视频块112中的系数的有效性图的上下文模型的示范性五点支持的概念图。为了上下文自适应译码,可基于描述变换系数具有0的值或1的值的概率的上下文模型而译码变换系数。相对于有效性图译码,所述上下文模型描述特定变换系数是否有效(即,非零)的概率。

为了有效性图译码,五点支持S可用于界定上下文模型以译码视频块112的变换系数的有效性图。五点支持可被称为“上下文支持邻域”或简单地称为“支持邻域”。也就是说,视频译码器可指望所述支持确定当前位置是一或零的有效性的概率。上下文支持邻域界定可用作用于译码当前系数的上下文的相邻系数(例如,其可包含有效性信息)。根据本发明的一些实例,所述上下文支持邻域对于块或子块内的不同系数位置可不同。

在图9中展示的实例中,相对于由通过圆圈包围的点表示的当前或“目标”位置,所述五点支持S由通过正方形包围的点表示。上下文模型Ctx(以下等式(1))可被界定为支持的每个点中的有效旗标的总和,其中有效性旗标在对应的变换系数是非零的情况下可被设定为“1”且否则的话被设定为“0”。

>Ctx=ΣpS(coefp!=0)---(1)>

因此,有效性旗标计数可小于或等于支持基数。

然而,在并行地计算一个以上变换系数的上下文(例如,与变换系数相关联的有效性信息)(被称作“并行有效性上下文计算”或简单地称作“并行上下文计算”)时,图9中展示的支持S可能不合适。例如,使用图9中展示的支持S可能妨碍视频译码器并行地计算有效性信息的上下文的能力,这是因为支持S中的所有数据必须可用(例如,已经译码)以用于实现对上下文的并行计算。在一些情况下,如下文相对于图10A所描述,可迫使译码器等待支持S中的支持元件在确定支持S中的另一支持元件的上下文之前完成译码。此延迟减少降低视频译码器有效地处理有效性信息的能力。

图10A及10B是说明五点支持内的上下文相依性的概念图。例如,为了计算带圆圈的位置的有效性上下文,可必须解析以菱形描绘的支持S内的位置的有效性旗标(图10A中展示)。如果存在并行地计算两个系数的有效性上下文的要求,那么此类解析可引入延迟,这是因为菱形中的元件在以扫描次序给元件加圆圈之前立即定位菱形中的元件。也就是说,带圆圈的位置的上下文无法与以菱形标记的位置同时计算,这是因为其取决于菱形中的位置,并且因此菱形中的位置必须在确定带圆圈的位置的上下文之前被译码。

为了解决此相依性,可从支持S移除某些元件,使用所谓的“孔”(图10B中展示的未填充的点(三角形))进行支持。例如,跳过孔中的有效性旗标且不考虑用于上下文计算(即,假设为零)。因此,不需要解析孔位置中的有效性旗标。所述5点支持形状取决于位置以允许更好的并行处理。

图11是说明用于视频块的每一区的基于邻域或位置的上下文的示范性指派的概念图。如图11中所说明,同样可能使用上下文的混合类型,(例如)对于一些区,上下文可为基于邻域的,且对于相同视频块的一些区,其可为固定的或基于位置的。基于位置的方法的优点是,不必逐系数地计算上下文;其可针对区进行一次。

对于具有(x,y)坐标的系数,可根据系数位置界定区。例如,如果条件(x+y>=阈值)是真,那么将此系数指派给区R2,否则的话其处于区R1中。类似地,可将坐标指派给基于4×4子块的区。对于具有(X,Y)坐标的子块,可根据4×4子块位置界定区。例如,如果条件(X+Y>=阈值)是真,那么将此系数指派给区R2,否则的话其处于R1中。所述阈值可固定为某一预界定值,例如等于4、5、6、7或8的整数数目,或可取决于视频块(例如,TU)大小。

图12是展示根据本发明的技术的实例视频解码方法的流程图。可通过视频编码器20的一或多个硬件单元执行图12的技术。在一个实例中,熵编码单元56可执行与正负号数据隐藏相关的技术中的一些技术。

视频编码器20可编码与对应于第一子块的有效性的残差数据相关联的变换系数的第一有效性信息(170)。第一子块可以是整个变换块的子块。视频编码器20可通过对第二有效性信息执行算术译码操作而编码对应于第二子块的有效性的第二有效性信息,且基于与第一子块相同大小的一或多个相邻子块来确定所述算术译码操作的上下文(172)。

图13是展示根据本发明的技术的实例视频解码方法的流程图。可通过视频解码器30的一或多个硬件单元执行图13的技术。在一个实例中,熵解码单元70可执行与正负号数据隐藏相关的技术中的一些技术。

视频解码器30可解码与对应于第一子块的有效性的残差数据相关联的变换系数的第一有效性信息(180)。第一子块可以是整个变换块的子块。视频解码器30可通过对第二有效性信息执行算术译码操作而解码对应于第二子块的有效性的第二有效性信息,且基于与第一子块相同大小的一或多个相邻子块而确定所述算术译码操作的上下文(182)。

在一或多个实例中,所描述的功能可以用硬件、软件、固件或其任何组合来实施。如果以软件实施,则所述功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包含任何促进将计算机程序从一处传送到另一处的媒体(例如,根据通信协议)的通信媒体。以此方式,计算机可读媒体一般可对应于(1)非暂时性的有形计算机可读存储媒体或(2)例如信号或载波等通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可以包含计算机可读媒体。

举例来说且并非限制,所述计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,快闪存储器,或可用于存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。同样,任何连接可恰当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴电缆、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的界定中。然而,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它瞬时媒体,而是实际上针对非瞬时的有形存储媒体。如本文所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式重现数据,而光盘使用激光以光学方式重现数据。上述各者的组合也应包含在计算机可读媒体的范围内。

指令可以由一或多个处理器执行,所述一或多个处理器例如是一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可以在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。并且,可将所述技术完全实施于一或多个电路或逻辑元件中。

本发明的技术可实施于广泛多种装置或设备中,包含无线手持机、集成电路(IC)或IC组(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示技术的装置的功能方面,但不必需要通过不同硬件单元实现。实际上,如上文所描述,各种单元可以结合合适的软件及/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。

已描述各种实例。这些及其它实例在所附权利要求书的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号