CN105075267A - 在视频译码中停用用于参考图片列表的视图间预测 - Google Patents
在视频译码中停用用于参考图片列表的视图间预测 Download PDFInfo
- Publication number
- CN105075267A CN105075267A CN201480004963.7A CN201480004963A CN105075267A CN 105075267 A CN105075267 A CN 105075267A CN 201480004963 A CN201480004963 A CN 201480004963A CN 105075267 A CN105075267 A CN 105075267A
- Authority
- CN
- China
- Prior art keywords
- reference picture
- layer
- view
- inter
- picture list
- 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.)
- Pending
Links
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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- 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/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- 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/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/58—Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
-
- 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)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
一种视频译码器在位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素。视频解码器从所述位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的所述语法元素。所述视频解码器对所述当前视图分量/层表示进行解码。
Description
本申请案主张2013年1月17日申请的第61/753,876号美国临时专利申请案的权利,所述申请案的全部内容以引用的方式并入本文中。
技术领域
本发明涉及视频编码和解码。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电话会议装置、视频流式传输装置及其类似者。数字视频装置实施视频压缩技术,例如,由MPEG-2、MPEG-4、ITU-TH.263、ITU-TH.264/MPEG-4第10部分高级视频译码(AVC)定义的标准、目前正在开发的高效率视频译码(HEVC)标准及此类标准的扩展中所描述的视频压缩技术。视频装置可以通过实施此类视频压缩技术来更有效率地发射、接收、编码、解码和及/或存储数字视频信息。
视频压缩技术执行空间(图片内)预测及/或时间(图片间)预测来减少或移除视频序列中固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的一部分)分割成块。使用相对于同一图片中的相邻块中的参考样本的空间预测对图片的经帧内译码(I)切片中的块进行编码。图片的经帧间译码(P或B)切片中的块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。
空间或时间预测产生用于待译码块的预测性块。残余数据表示待译码的原始块与预测性块之间的像素差。经帧间译码块是根据指向形成预测块的参考样本块的运动向量及指示经译码块与预测块之间的差的残余数据编码的。经帧内译码块是根据帧内译码模式及残余数据来编码。为了实现进一步压缩,可以将残余数据从像素域变换到变换域,从而产生残余系数,接着可以对残余系数进行量化。可扫描最初布置为二维阵列的经量化的系数,以便产生系数的一维向量,且可应用熵译码以实现更多压缩。
可例如从多个视角编码视图来产生多视图译码位流。已经开发利用多视图译码方面的一些三维(3D)视频标准。举例来说,不同视图可传输左眼及右眼视图以支持3D视频。或者,一些3D视频译码过程可应用所谓的多视图加深度译码。在多视图加深度译码中,3D视频位流可不仅含有纹理视图分量而且含有深度视图分量。举例来说,每一视图可包括一个纹理视图分量及一个深度视图分量。
发明内容
一般来说,本发明涉及视频译码的领域,例如视频编码器和解码器。一些实例涉及基于高级编解码器的多视图视频译码,包含以高效视频译码(HEVC)编解码器对两个或两个以上视图的译码。更具体来说,在一些实例中,视频解码器可从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素。在此些实例中,视频译码器可对当前视图分量/层表示进行解码。此外,一些实例涉及视差向量产生。
在一个实例中,本发明描述一种用于对视频数据进行解码的方法,所述方法包括:从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及对所述当前视图分量/层表示进行解码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,在不使用所述参考图片列表中的视图间/层间参考图片的情况下对所述当前视图分量/层表示进行解码。
在另一个实例中,本发明描述一种对视频数据进行编码的方法,所述方法包括:在位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及对所述当前视图分量/层表示进行编码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,不使用所述参考图片列表中的视图间/层间参考图片对所述当前视图分量/层表示进行编码。
在另一个实例中,本发明描述一种视频解码装置,其包括存储媒体和耦合到所述存储媒体的一或多个处理器,所述一或多个处理器经配置以:从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及对所述当前视图分量/层表示进行解码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,在不使用所述参考图片列表中的视图间/层间参考图片的情况下对所述当前视图分量/层表示进行解码。
在另一个实例中,本发明描述一种视频解码装置,其包括:用于从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素的装置;以及用于对所述当前视图分量/层表示进行解码的装置,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,在不使用所述参考图片列表中的视图间/层间参考图片的情况下对所述当前视图分量/层表示进行解码。
在另一个实例中,本发明描述一种具有存储于其上的指令的计算机可读数据存储媒体(例如,非暂时性计算机可读数据存储媒体),所述指令当经执行时致使视频解码装置:从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及对所述当前视图分量/层表示进行解码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,在不使用所述参考图片列表中的视图间/层间参考图片的情况下对所述当前视图分量/层表示进行解码。
在另一个实例中,本发明描述一种视频编码装置,其包括存储媒体和耦合到所述存储媒体的一或多个处理器,所述一或多个处理器经配置以:在位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及对所述当前视图分量/层表示进行编码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,不使用所述参考图片列表中的视图间/层间参考图片对所述当前视图分量/层表示进行编码。
在另一个实例中,本发明描述一种视频编码装置,其包括用于进行以下操作的装置:在位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及对所述当前视图分量/层表示进行编码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,不使用所述参考图片列表中的视图间/层间参考图片对所述当前视图分量/层表示进行编码。
在另一个实例中,本发明描述一种具有存储于其上的指令的计算机可读数据存储媒体(例如,非暂时性计算机可读数据存储媒体),所述指令当经执行时致使视频编码装置:在位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及对所述当前视图分量/层表示进行编码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,不使用所述参考图片列表中的视图间/层间参考图片对所述当前视图分量/层表示进行编码。
在附图和下文描述中阐述本发明的一或多个实例的细节。其它特征、目标和优点将从所述描述、图式以及权利要求书而显而易见。
附图说明
图1是说明可以利用本发明中描述的技术的实例视频编码系统的框图。
图2是说明相对于当前PU的实例性在空间上相邻的预测单元(PU)的概念图。
图3是说明用于多视图译码的实例预测结构的概念图。
图4是说明多视图和3D视频译码中的高级残余预测的实例性预测结构的概念图。
图5是说明时间候选图片的对应PU中的时间相邻者的概念图。
图6是说明经配置以实施本发明的技术的实例视频编码器的框图。
图7是说明经配置以实施本发明的技术的实例视频解码器的框图。
图8A是说明根据本发明的实例的视频编码器的操作的流程图。
图8B是说明根据本发明的实例的视频解码器的操作的流程图。
图9是说明根据本发明的实例的用于剖析切片标头的实例操作的流程图。
图10是说明根据本发明的实例的基于相邻块的视差向量(NBDV)导出过程的流程图。
具体实施方式
高效率视频译码(HEVC)是新开发的视频译码标准。在HEVC和其它视频译码规范或标准中,视频编码器可每一图片产生多达两个参考图片列表。这些参考图片列表可被称为RefPicList0和RefPicList1。用于特定图片的参考图片列表可包含在与所述特定图片不同的时间实例处发生的图片。换句话说,参考图片列表可包含时间参考图片。
当视频编码器对图片进行编码时,视频译码器可产生所述图片中的块的经编码表示。视频编码器可使用帧内预测或帧间预测产生图片的块的经编码表示。换句话说,视频编码器可使用帧内预测或帧间预测来对块进行编码。当视频编码器使用帧内预测对当前图片的当前块进行编码时,视频编码器可基于当前图片中的其它样本产生预测性块。当视频编码器使用帧间预测对当前块进行编码时,视频编码器可基于当前图片的RefPicList0中的参考图片中的对应块、基于当前图片的RefPicList1中的参考图片中的对应块或基于当前图片的RefPicList0中的参考图片中的第一对应块和当前图片的RefPicList1中的参考图片中的第二对应块而确定当前块的预测性块。不管视频编码器是否使用帧内预测或帧间预测对当前块进行编码,视频编码器都可确定当前块的原始内容与预测性块之间的差异。视频编码器可变换且量化所得残余数据。视频译码器可在位流中包含指示经变换且经量化残余数据的经熵编码语法元素。
当视频解码器对图片(即,当前图片)进行解码时,视频解码器可产生当前图片的同一参考图片列表。另外,视频解码器可对当前图片的每一块进行解码。当视频解码器对当前图片的当前块进行解码且当前块是使用帧间预测经编码时,视频解码器可基于当前图片的RefPicList0和/或RefPicList1中的参考图片中的对应块而确定当前块的预测性块。视频解码器可随后通过将预测性块添加到当前块的残余数据而重构当前块。
MV-HEVC是用于多视图(MV)译码的HEVC的扩展。3D-HEVC是用于3维(3D)视频数据的HEVC的扩展。MV-HEVC和3D-HEVC提供同一场景的从不同视点的多个视图。在MV-HEVC和3D-HEVC中,可实现基于来自不同视图的经重构图片的视图间预测。在MV-HEVC和3D-HEVC中,当前图片的参考图片列表可包含视图间参考图片以及时间参考图片。视图间参考图片可在与当前图片不同的视图中。视频编码器和视频解码器可以类似于时间参考图片的方式使用参考图片列表中的视图间参考图片。
在MV-HEVC和3D-HEVC中,由视频编码器和视频解码器使用的一些译码工具假定RefPicList0和RefPicList1两者包含视图间参考图片。举例来说,用于确定块的视差向量的译码工具可假定RefPicList0和RefPicList1两者包含视图间参考图片。作为此假设的结果,此些译码工具的复杂性可增加,因为所述译码工具可能需要检查两个参考图片列表中的参考图片是否是视图间参考图片。此外,检查RefPicList1中的参考图片是否为视图间参考图片可导致对存储器的额外读取和写入请求,其可减慢编码和/或解码过程。然而,在RefPicList0和RefPicList1中包含相同视图间参考图片不会得到任何译码增益。
因此,在一些情况下,在RefPicList0中但不在RefPicList1中包含视图间参考图片可为有利的。因此,根据本发明的特定实例,如果视频编码器在位流中用信号表示RefPicList1中不包含视图间参考图片,那么由视频解码器使用的特定译码工具不需要检查RefPicList1中的参考图片是否为视图间参考图片。这可减少复杂性和对存储器的读取和写入请求的数目。此外,如果视频编码器在位流中用信号表示RefPicList1中不包含视图间参考图片,那么视频编码器可不需要在位流中用信号表示特定语法元素。举例来说,如果RefPicList1中不存在视图间参考图片,那么视频编码器可使用包含较少位的参考图片列表修改(RPLM)语法元素用信号表示如何修改RefPicList1中的参考图片的次序。
因此,根据本发明的实例,视频编码器可在位流中用信号表示语法元素,其指示当前图片的参考图片列表中是否一直包含视图间/层间参考图片。另外,视频编码器可对当前图片进行编码。类似地,视频解码器可从位流获得指示当前图片的参考图片列表中是否一直包含视图间参考图片的语法元素。另外,视频解码器可对当前图片进行解码。如本文中所描述,本发明的实例可应用于可缩放视频译码(SVC)以及多视图译码和3DV译码。
图1是说明可以利用本发明的技术的实例视频译码系统10的框图。如本文所使用,术语“视频译码器”一般是指视频编码器及视频解码器两者。在本发明中,术语“视频译码”或“译码”可一般地指代视频编码或视频解码。
如图1中所示,视频译码系统10包含源装置12和目的地装置14。源装置12产生经编码的视频数据。因此,源装置12可以被称为视频编码装置或视频编码设备。目的地装置14可以对由源装置12所产生的经编码的视频数据进行解码。因此,目的地装置14可以被称为视频解码装置或视频解码设备。源装置12以及目的地装置14可以是视频译码装置或视频译码设备的实例。
源装置12及目的地装置14可包括广泛范围的装置,包含桌上型计算机、行动计算装置、笔记型(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的“智能”电话等电话手持机、电视、摄影机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机(in-carcomputer)或其类似者。
目的地装置14可以经由信道16从源装置12接收经编码的视频数据。信道16可以包括能够将经编码的视频数据从源装置12移动到目的地装置14的一或多个媒体或装置。在一个实例中,信道16可以包括使得源装置12能够实时地将经编码的视频数据直接发射到目的地装置14的一或多个通信媒体。在此实例中,源装置12可以根据例如无线通信协议等通信标准调制经编码的视频数据,并且可以将经调制的视频数据发射到目的地装置14。一或多个通信媒体可以包含无线通信媒体和/或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。所述一或多个通信媒体可以形成基于包的网络的一部分,基于包的网络例如局域网、广域网或全球网络(例如,因特网)。所述一或多个通信媒体可包含路由器、交换器、基站或促进从源装置12到目的地装置14的通信的其它设备。
在另一实例中,信道16可以包含存储由源装置12产生的经编码的视频数据的存储媒体。在此实例中,目的地装置14可以例如经由磁盘存取或卡存取来存取存储媒体。存储媒体可包含多种本地存取的数据存储媒体,例如蓝光光盘、DVD、CD-ROM、快闪存储器或用于存储经编码的视频数据的其它合适数字存储媒体。
在另一实例中,信道16可以包含存储由源装置12产生的经编码的视频数据的文件服务器或另一中间存储装置。在此实例中,目的地装置14可以经由流式传输或下载来存取存储于文件服务器或其它中间存储装置处的经编码的视频数据。文件服务器可以是能够存储经编码的视频数据并且将经编码的视频数据发射到目的地装置14的类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、文件传输协议(FTP)服务器、网络附接存储(NAS)装置及本地磁盘驱动器。
目的地装置14可以通过标准数据连接(例如因特网连接)来存取经编码的视频数据。数据连接的实例类型可包含无线信道(例如,Wi-Fi连接)、有线连接(例如,数字订户线(DSL)、电缆调制解调器等)或适合于存取存储在文件服务器上的经编码视频数据的两者的组合。经编码的视频数据从文件服务器的发射可为流式传输发射、下载发射或两者的组合。
本发明的技术不限于无线应用或设定。所述技术可以应用于视频译码以支持多种多媒体应用,例如空中电视广播、有线电视发射、卫星电视发射、流式视频发射(例如,经由因特网)、编码视频数据以存储于数据存储媒体上、解码存储于数据存储媒体上的视频数据,或其它应用。在一些实例中,视频译码系统10可经配置以支持单向或双向视频传输以支持例如视频流式传输、视频播放、视频广播及/或视频电话等应用。
图1仅为实例,且本发明的技术可适用于未必包含编码装置与解码装置之间的任何数据通信的视频译码设定(例如,视频编码或视频解码)。在其它实例中,从本地存储器检索、在网络上流式传输或以类似方式处理数据(例如,视频数据)。视频编码装置可将数据(例如,视频数据)编码且存储到存储器,和/或视频解码装置可从存储器检索且解码数据(例如,视频数据)。在许多实例中,编码和解码是由并不彼此通信但简单地将数据(例如视频数据)编码到存储器和/或从存储器检索且解码数据(例如,视频数据)的装置执行。
在图1的实例中,源装置12包含视频源18、视频编码器20以及输出接口22。在一些情况下,输出接口22可以包含调制器/解调器(调制解调器)和/或发射器。视频源18可包含视频俘获装置(例如,摄像机)、含有先前俘获的视频数据的视频存档、用以从视频内容提供者接收视频数据的视频馈入接口,和/或用于产生视频数据的计算机图形系统,或视频数据的此些来源的组合。
视频编码器20可以对来自视频源18的视频数据进行编码。在一些实例中,源装置12经由输出接口22将经编码的视频数据直接发射到目的地装置14。在其它实例中,经编码的视频数据还可以存储到存储媒体或文件服务器上以供稍后由目的地装置14存取以用于解码和/或回放。
在图1的实例中,目的地装置14包含输入接口28、视频解码器30以及显示装置32。在一些实例中,输入接口28包含接收器和/或调制解调器。输入接口28可经由信道16接收经编码视频数据。视频解码器30可对经编码视频数据进行解码。显示装置32可显示经解码视频数据。显示装置32可与目的地装置14集成或在目的地装置14外部。显示装置32可以包括多种显示装置,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
视频编码器20和视频解码器30各自可实施为多种合适的电路中的任一者,例如一或多个微处理器、通用处理器数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、硬件或其任何组合,以执行本文所描述的功能。通用处理器可为微处理器,但在替代例中,处理器可为任何常规的处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、结合DSP核心的一或多个微处理器,或任何其它此类配置。如果部分地以软件实施技术,装置可将软件的指令存储于合适的非暂时性计算机可读存储媒体中且可使用一或多个处理器以硬件执行指令从而执行本发明的技术。可将前述内容中的任一者(包含硬件、软件、硬件与软件的组合等)视为一或多个处理器。视频编码器20及视频解码器30中的每一者可以包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可以集成为相应装置中的组合编码器/解码器(编解码器)的部分。
本发明可大体上将视频编码器20称为将某些信息“用信号表示”给例如视频解码器30的另一装置或在位流中“用信号表示”某些信息。术语“用信号表示”可大体上指代用以对经压缩视频数据进行解码的语法元素和/或其它数据的传送。此通信可以实时地或接近实时地发生。替代性地,可历时时间跨度而发生此通信,例如当在编码时,以经编码位流将语法元素存储到计算机可读存储媒体时,可发生此通信,接着,在存储到此媒体之后可由解码装置在任何时间检索所述语法元素。
在一些实例中,视频编码器20及视频解码器30根据视频压缩标准而操作,例如ISO/IECMPEG-4视觉及ITU-TH.264(也称为ISO/IECMPEG-4AVC),包含其可缩放视频译码(SVC)扩展、多视图视频译码(MVC)扩展及基于MVC的3DV扩展。此外,正在致力于产生H.264/AVC的三维视频(3DV)译码扩展,即基于AVC的3DV。H.264的MVC扩展的联合草案在2010年3月的ITU-T建议H.264“用于通用视听服务的高级视频译码”中描述。在其它实例中,视频编码器20和视频解码器30可根据ITU-TH.261、ISO/IECMPEG-1视觉、ITU-TH.262或ISO/IECMPEG-2视觉以及ITU-TH.263、ISO/IEC-4视觉来操作。
在其它实例中,视频编码器20及视频解码器30可根据由ITU-T视频译码专家组(VCEG)及ISO/IEC动画专家组(MPEG)的视频译码联合合作小组(JCT-VC)开发的高效率视频译码(HEVC)标准操作。称为“HEVC工作草案8”或“HEVC基础规范”的HEVC标准的草案在布洛斯等人的“高效率视频译码(HEVC)文字规范草案8”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的视频译码联合合作小组(JCT-VC)第10次会议,瑞典斯德哥尔摩,2012年7月)中描述。从2014年1月9日起,HEVC工作草案8可从以下处下载:http://phenix.int-evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-v8.zip。称为SHVC的HEVC的可缩放视频译码扩展在开发中。
此外,正持续努力以产生HEVC的多视图译码及3DV扩展。换句话说,VCEG及MPEG的3D视频译码联合合作小组(JCT-3V)正在开发基于HEVC的3DV标准,其标准化努力的部分包含基于HEVC的多视图视频编解码器(MV-HEVC)的标准化及用于基于HEVC的3D视频译码(3D-HEVC)的另一部分。视频编码器20和视频解码器30可根据对HEVC标准的此些扩展而操作。HEVC的多视图译码扩展可被称作MV-HEVC。格哈德技术公司(GerhardTech)等的“MV-HEVC工作草案1”(JCT3V-A1004,ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第1次会议:瑞典斯德哥尔摩,2012年7月16-20日(下文为“JCT3V-A1004”或“MV-HEVC工作草案1”))提供MV-HEVC的工作草案。格哈德技术公司等的“MV-HEVC工作草案2”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第2次会议:中国上海,2012年10月13-19(下文为“MV-HEVC工作草案2”))提供MV-HEVC的另一工作草案。
HEVC的3DV扩展可被称作3D-HEVC。技术公司等的“3D-HEVC测试模型描述草案的草案”(JCT3V-B1005,ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第1次会议:瑞典斯德哥尔摩,2012年7月16-20日(下文为“3D-HEVC测试模型1”))描述参考软件以及3D-HEVC的工作草案。另外,技术公司等的“3D-HEVC测试模型描述草案2”(JCT3V-B1005,ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第1次会议:瑞典斯德哥尔摩,2012年7月16-20日(下文为“3D-HEVC测试模型描述草案2”))描述参考软件以及3D-HEVC的工作草案。从2014年1月9日起,用于3D-HEVC的参考软件、即3DV-HTM从https://hevc.hhi.fraunhofer.de/svn/svn_3DVCSoftware/trunk可用。
HEVC提供运动补偿循环。一般来说,HEVC的运动补偿循环与H.264/AVC中的相同。举例来说,当前帧的重构可等于解量化系数r加时间预测P:
在以上公式中,P指示用于P帧的单向预测和或用于B帧的双向预测。
然而,HEVC中的运动补偿的单元不同于先前视频译码标准中的单元。举例来说,先前视频译码标准中的宏块的概念在HEVC中并不存在。而是,宏块被基于通用四叉树方案的高度灵活阶层式结构代替。在此方案内,界定三个类型的块,即,译码单元(CU)、预测单元(PU)和变换单元(TU)。CU是区分裂的基本单元。CU的概念类似于宏块的概念,但CU不限于最大大小且CU允许递归分裂为四个大小相等的CU以改善内容适应性。PU是帧间/帧内预测的基本单元且PU可在单个PU中含有多个任意形状的分区以对不规则图像模式进行有效地译码。TU是变换的基本单元。CU的TU可独立于CU的PU而界定。然而,TU的大小限于TU属于的CU。块结构成三个不同概念的此分开可允许每一者根据其作用被优化,这可导致经改善的译码效率。
在HEVC及其它视频译码规范中,视频序列通常包含一系列图片。图片也可被称作“帧”。图片可以包含三个样本阵列,表示为SL、SCb以及SCr。SL是亮度样本的二维阵列(即,块)。SCb是Cb色度样本的二维阵列。SCr是Cr色度样本的二维阵列。色度样本在本文中还可以被称为“色度”样本。在其它情况下,图片可为单色的且可仅包含亮度样本阵列。
为了产生图片的经编码的表示,视频编码器20可以产生一组译码树单元(CTU)。CTU中的每一者可包括亮度样本的译码树块、色度样本的两个对应的译码树块,以及用以对译码树块的样本进行译码的语法结构。在单色图片或具有三个单独颜色平面的图片中,CTU可包括单个译码树块及用于对所述译码树块的样本进行译码的语法结构。译码树块可以是样本的NxN块。CTU也可以被称为树块或最大译码单元(LCU)。HEVC的CTU可以广泛地类似于例如H.264/AVC等其它标准的宏块。然而,CTU不必限于特定大小且可包含一或多个CU。切片可包含按光栅扫描次序连续排序的整数数目的CTU。
经译码切片可包含切片标头及切片数据。切片的切片标头可为包含提供关于切片的信息的语法元素的语法结构。切片数据可包含切片的经译码CTU。
本发明可使用术语“视频单元”或“视频块”或“块”来指代一或多个样本块及用于译码所述一或多个样本块的样本的语法结构。实例类型的视频单元可包含CTU、CU、PU、变换单元(TU)、宏块、宏块分区等。在一些上下文中,PU或CU的论述可与宏块或宏块分区的论述互换。
为了产生经译码的CTU,视频编码器20可以对CTU的译码树块递归地执行四叉树分割,以将译码树块划分为译码块,因此命名为“译码树单元”。译码块是样本的NxN块。CU可包括具有亮度样本阵列、Cb样本阵列和Cr样本阵列的图片的亮度样本的译码块以及色度样本的两个对应的译码块,以及用以对译码块的样本进行译码的语法结构。在单色图片或具有三个单独颜色平面的图片中,CU可包括单个译码块和用以对译码块的样本进行译码的语法结构。
视频编码器20可以将CU的译码块分割成一或多个预测块。预测块是应用相同预测的样本的矩形(即,正方形或非正方形)块。CU的PU可包括亮度样本的预测块、色度样本的两个对应预测块以及用以预测预测块的语法结构。在单色图片或具有三个单独颜色平面的图片中,PU可包括单个预测块和用以预测预测块的语法结构。视频编码器20可以产生用于CU的每个PU的亮度预测块、Cb预测块以及Cr预测块的预测性亮度块、Cb块以及Cr块。因此在本发明中,CU可称为分割成一或多个PU。为便于说明,本发明可简单地将PU的预测块的大小称为PU的大小。
视频编码器20可以使用帧内预测或帧间预测来产生用于PU的预测性块。如果视频编码器20使用帧内预测产生PU的预测性块,则视频编码器20可以基于与PU相关联的图片的样本来产生PU的预测性块。在本发明中,短语“基于”可指示“至少部分基于”。
如果视频编码器20使用帧间预测产生PU的预测性块,那么视频编码器20可以基于不同于与PU相关联的图片的一或多个图片的经解码的样本来产生PU的预测性块。当使用帧间预测来产生块(例如,PU)的预测性块时,本发明可将所述块称为“经帧间译码”或“经帧间预测”。帧间预测可为单向的(即,单向预测)或双向的(即,双向预测)。为了执行单向预测或双向预测,视频编码器20可以产生用于当前图片的第一参考图片列表(RefPicList0)以及第二参考图片列表(RefPicList1)。参考图片列表中的每一者可以包含一或多个参考图片。在构造参考图片列表(即RefPicList0和RefPicList1,如果可用)之后,可使用到参考图片列表的参考索引来识别参考图片列表中包含的任何参考图片。
当使用单向预测时,视频编码器20可以搜索RefPicList0以及RefPicList1中的任一者或两者中的参考图片,以确定参考图片内的参考位置。此外,当使用单向预测时,视频编码器20可以至少部分基于对应于参考位置的样本产生用于PU的预测性块。PU的预测性块中的每一样本可与参考位置相关联。在一些实例中,PU的预测性块中的样本可当所述样本在具有与PU相同大小的样本块内且其左上角是参考位置时与参考位置相关联。预测性块中的每一样本可为参考图片的实际或经内插样本。此外,在使用单向预测时,视频编码器20可产生指示PU的预测块与参考位置之间的空间移位的单一运动向量。运动向量可包含指定PU的预测块与参考位置之间的水平移位的水平分量,且可包含指定PU的预测块与参考位置之间的垂直移位的垂直分量。
在使用双向预测来编码PU时,视频编码器20可确定RefPicList0中的参考图片中的第一参考位置及RefPicList1中的参考图片中的第二参考位置。视频编码器20可至少部分基于对应于第一及第二参考位置的样本产生PU的预测性块。预测性块中的每一样本可为参考块中的对应样本的加权平均。样本的加权可基于参考图片与含有PU的图片的时间距离。此外,当使用双向预测对PU进行编码时,视频编码器20可以产生指示PU的预测块与第一参考位置之间的空间移位的第一运动向量,以及指示PU的预测块与第二参考位置之间的空间移位的第二运动向量。因此,当视频编码器20对PU执行双向预测时,PU具有两个运动向量。
如果视频编码器20使用帧间预测产生PU的预测性块,则视频编码器20可以基于不同于与PU相关联的图片的一或多个图片的样本来产生PU的预测性块。举例来说,视频编码器20可对PU执行单向帧间预测(即,单向预测)或双向帧间预测(即,双向预测)。
视频编码器20可根据各种分割模式将CU分割为一或多个PU。举例来说,如果帧内预测用以产生CU的PU的预测性块,那么可根据PART_2Nx2N模式或PART_NxN模式分割CU。在PART_2Nx2N模式中,CU仅具有一个PU。在PART_NxN模式中,CU具有四个大小相等的具有矩形预测块的PU。如果帧间预测用以产生CU的PU的预测性块,那么可根据PART_2Nx2N模式、PART_NxN模式、PART_2NxN模式、PART_Nx2N模式、PART_2NxnU模式、PART_2NxuD模式、PART_nLx2N模式或PART_nRx2N模式分割CU。在PART_2NxN模式和PART_Nx2N模式中,CU分割成两个大小相等的具有矩形预测块的PU。在PART_2NxnU模式、PART_2NxuD模式、PART_nLx2N模式和PART_nRx2N模式中的每一者中,CU分割成两个不相等大小的具有矩形预测块的PU。在不对称分割中,不分割CU的一个方向,但是将另一方向分割成25%及75%。CU的对应于25%分割区的部分表示成“n”,接着是用“上”、“下”、“左”或“右”指示。因而,举例来说,“2NxnU”是指水平地分割的2Nx2NCU,其中顶部为2Nx0.5NPU,而底部为2Nx1.5NPU。
在视频编码器20产生CU的一或多个PU的一或多个预测性块(例如,亮度、Cb和Cr预测性块)之后,视频编码器20可产生CU的一或多个残余块。举例来说,视频编码器20可产生CU的亮度残余块。CU的亮度残余块中的每个样本指示CU的预测性亮度块中的一者中的亮度样本与CU的原始亮度译码块中对应的样本之间的差异。另外,视频编码器20可以产生CU的Cb残余块。CU的Cb残余块中的每个样本可以指示CU的预测性Cb块中的一者中的Cb样本与CU的原始Cb译码块中对应的样本之间的差异。视频编码器20还可以产生CU的Cr残余块。CU的Cr残余块中的每个样本可以指示CU的预测性Cr块中的一者中的Cr样本与CU的原始Cr译码块中对应的样本之间的差异。
此外,视频编码器20可使用四叉树分割来将CU的一或多个残余块(例如,CU的亮度、Cb和Cr残余块)分解为一或多个变换块(例如,亮度、Cb和Cr变换块)。变换块是应用同一变换的样本的矩形(例如,正方形或非正方形)块。CU的TU可包括亮度样本的变换块、色度样本的两个对应的变换块,以及用以对变换块样本进行变换的语法结构。因此,CU的每一TU可以与亮度变换块、Cb变换块以及Cr变换块相关联。与TU相关联的亮度变换块可以是CU的亮度残余块的子块。Cb变换块可以是CU的Cb残余块的子块。Cr变换块可以是CU的Cr残余块的子块。在单色图片或具有三个单独颜色平面的图片中,TU可包括单个变换块和用以对变换块的样本进行变换的语法结构。
视频编码器20可以将一或多个变换应用到TU的变换块从而产生TU的系数块。系数块可以是变换系数的二维阵列。举例来说,视频编码器20可将一或多个变换应用到TU的亮度变换块以产生TU的亮度系数块。变换系数可以是标量。视频编码器20可以将一或多个变换应用到TU的Cb变换块从而产生TU的Cb系数块。视频编码器20可以将一或多个变换应用到TU的Cr变换块从而产生TU的Cr系数块。
在产生系数块(例如,亮度系数块、Cb系数块或Cr系数块)之后,视频编码器20可量化系数块。量化通常指对变换系数进行量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。在视频编码器20量化系数块之后,视频编码器20可以对指示经量化变换系数的语法元素进行熵编码。例如,视频编码器20可以对指示经量化变换系数的语法元素执行上下文自适应二进制算术译码(CABAC)。
视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流。换句话说,视频编码器20可产生包括视频数据的经编码表示的位流。位流可包括一连串网络抽象层(NAL)单元。NAL单元为含有NAL单元中的数据类型类型的指示及含有所述数据的呈按需要穿插有模拟阻止位的原始字节序列有效负载(RBSP)的形式的字节的语法结构。NAL单元中的每一者包含NAL单元标头且囊封RBSP。NAL单元标头可包含指示NAL单元类型代码的语法元素。由NAL单元的NAL单元标头指定的所述NAL单元类型代码指示NAL单元的类型。RBSP可为含有囊封在NAL单元内的整数数目个字节的语法结构。在一些情况下,RBSP包含零个位。
不同类型的NAL单元可囊封不同类型的RBSP。举例来说,不同类型的NAL单元可囊封用于视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、经译码切片、补充增强信息(SEI)等的不同RBSP。囊封用于视频译码数据的RBSP(与用于参数集及SEI消息的RBSP相比)的NAL单元可被称为视频译码层(VCL)NAL单元。
在HEVC中,SPS可含有应用于经译码视频序列(CVS)的所有切片的信息。CVS可包括图片序列。在HEVC中,CVS可开始于瞬时解码刷新(IDR)图片,或断链存取(BLA)图片,或为位流中的第一图片的清洁随机存取(CRA)图片,包含并非IDR或BLA图片的所有后续图片。也就是说,在HEVC中,CVS可包括按解码次序由以下各项组成的存取单元序列:作为在位流中的第一存取单元的CRA存取单元,IDR存取单元或BLA存取单元,接着是零或多个非IDR和非BLA存取单元,包含直到但不包含任何后续IDR或BLA存取单元的所有后续存取单元。在HEVC中,存取单元可为按解码次序连续且含有确切一个经译码图片的NAL单元的集合。除经译码图片的经译码切片NAL单元之外,存取单元还可含有不含经译码图片的切片的其它NAL单元。存取单元的解码始终得到经解码图片。
VPS是包括应用于零个或多个(例如,一或多个)完整CVS的语法元素的语法结构。一或多个SPS可包含识别当SPS在作用中时同一VPS在作用中的语法元素。因此,VPS的语法元素可比SPS的语法元素更一般化地适用。PPS是包括应用于零个或零个以上经译码图片的语法元素的语法结构。PPS可包含识别在PPS在作用中时在作用中的SPS的语法元素。切片的切片标头可包含指示当切片正经译码时在作用中的PPS的语法元素。
视频解码器30可以接收由视频编码器20产生的位流。另外,视频解码器30可以剖析位流以获得来自位流的语法元素。视频解码器30可至少部分基于从位流获得的语法元素重构视频数据的图片。用以重构视频数据的过程大体上可以与由视频编码器20执行的过程互逆。举例来说,视频解码器30可使用PU的运动向量,以确定当前CU的PU的预测性块。另外,视频解码器30可以逆量化与当前CU的TU相关联的系数块。视频解码器30可以对系数块执行逆变换以重构与当前CU的TU相关联的变换块。通过将用于当前CU的PU的预测性块的样本增加到当前CU的TU的变换块的对应的样本上,视频解码器30可以重构当前CU的译码块。通过重构用于图片的每一CU的译码块,视频解码器30可以重构所述图片。
在一些实例中,视频编码器20可使用合并/跳过模式或高级运动向量预测(AMVP)模式用信号表示PU的运动信息。换句话说,在HEVC中,存在用于预测运动参数的两个模式,一个是合并/跳过模式且另一个是AMVP。运动预测可包括基于一或多个其它块的运动信息的块(例如,PU)的运动信息的确定。PU的运动信息(即,运动参数)可包含PU的运动向量、PU的参考索引和一或多个预测方向指示符。
当视频编码器20使用合并模式用信号发送当前PU的运动信息时,视频编码器20产生合并候选者列表。换句话说,视频编码器20可执行运动向量预测符列表构造过程。合并候选者列表包含指示在空间上或在时间上相邻于当前PU的PU的运动信息的合并候选者的集合。也就是说,在合并模式中,可构造运动参数(例如,参考索引、运动向量等)的候选者列表,其中候选者可来自空间及时间相邻块。
此外,在合并模式中,视频编码器20可从所述合并候选者列表选择合并候选者且可使用由所选择的合并候选者指示的运动信息作为当前PU的运动信息。视频编码器20可用信号表示所选择的合并候选者在合并候选者列表中的位置。举例来说,视频编码器20可通过发射指示所述选定合并候选者在候选列表内的位置的索引(即,合并候选者索引)来用信号表示所述选定运动向量参数。视频解码器30可从位流获得进入候选者列表的索引(即,合并候选者索引)。另外,视频解码器30可产生同一合并候选者列表且可基于合并候选者索引确定所述选定合并候选者。接着,视频解码器30可以使用选定的合并候选者的运动信息来产生当前PU的预测性块。也就是说,视频解码器30可至少部分基于所述候选者列表索引来确定候选者列表中的所选择的候选者,其中所选择的候选者指定当前PU的运动向量。以此方式,在解码器侧处,一旦索引被解码,索引所指向的对应块的所有运动参数便可由当前PU继承。
跳过模式类似于合并模式。在跳过模式中,视频编码器20及视频解码器30以视频编码器20及视频解码器30在合并模式中使用合并候选者列表相同的方式产生并使用合并候选者列表。然而,在视频编码器20使用跳过模式用信号表示当前PU的运动信息时,视频编码器20不用信号表示当前PU的任何残余数据。因此,视频解码器30可在不使用残余数据的情况下基于由合并候选者列表中的选定候选者的运动信息指示的参考块而确定PU的预测块。
AMVP模式类似于合并模式,类似之处在于视频编码器20可产生候选者列表并且可从候选者列表选择候选者。然而,当视频编码器20使用AMVP模式用信号表示当前PU的RefPicListX(其中X是0或1)运动信息时,视频编码器20除用信号表示当前PU的RefPicListX运动向量预测符(MVP)语法元素(例如,旗标)之外,还可用信号表示当前PU的RefPicListX运动向量差(MVD)和当前PU的RefPicListX参考索引。当前PU的RefPicListXMVP语法元素可指示AMVP候选者列表中的选定AMVP候选者的位置。当前PU的RefPicListXMVD可指示当前PU的RefPicListX运动向量与选定AMVP候选者的运动向量之间的差。以此方式,视频编码器20可通过用信号表示RefPicListXMVP语法元素、RefPicListX参考索引值和RefPicListXMVD来用信号表示当前PU的RefPicListX运动信息。换句话说,在位流中的表示当前PU的运动向量的数据可包含表示参考索引的数据、到候选者列表的索引及MVD。因此,所选择的运动向量可通过发射到候选者列表中的索引来用信号表示。另外,也可用信号表示参考索引值及运动向量差。
此外,在使用AMVP模式用信号表示当前PU的运动信息时,视频解码器30可从所述位流获得当前PU的MVD及MVP语法元素。视频解码器30可产生相同的AMVP候选者列表且可基于MVP语法元素确定所述选定AMVP候选者。换句话说,在AMVP中,基于经译码参考索引导出针对每一运动假设的运动向量预测符的候选者列表。如之前,此列表可包含与相同参考索引相关联的相邻块的运动向量以及基于时间参考图片中处于相同位置的块的相邻块的运动参数导出的时间运动向量预测符。视频解码器30可通过将MVD添加到由所述选定AMVP候选者指示的运动向量来恢复当前PU的运动向量。也就是说,视频解码器30可基于由所述选定AMVP候选者指示的运动向量和MVD确定当前PU的运动向量。视频解码器30接着可使用当前PU的所恢复的一或多个运动向量来产生当前PU的预测性块。
当视频译码器产生当前PU的合并候选者列表或AMVP候选者列表时,视频译码器可基于覆盖在空间相邻于当前PU的位置的PU(即,在空间相邻的PU)的运动信息导出一或多个候选者,且视频译码器可基于在时间上相邻于当前PU的PU的运动信息导出一或多个候选者。在本发明中,如果与PU相关联的预测块(或与所述块相关联的其它类型的样本块)包含一位置,那么所述PU(或其它类型的块)可称为“覆盖”所述位置。此外,在本发明中,当第一PU的预测块在图片中邻近于第二PU的预测块时第一PU可在空间相邻于第二PU。候选者列表可包含与相同参考索引相关联的相邻块的运动向量以及基于时间参考图片中的块的运动参数(即,运动信息)导出的时间运动向量预测符。
图2为说明相对于当前PU40的实例空间相邻PU的概念图。在图2的实例中,在空间相邻的PU可为覆盖指示为A0、A1、B0、B1及B2的位置的PU。换句话说,当前PU40与其空间相邻PU之间的实例关系在图2中描绘。
关于空间相邻PU,可界定以下符号:
-亮度位置(xP,yP)用以指定相对于当前图片的左上样本的当前PU的左上亮度样本;
-变量nPSW和nPSH表示亮度的PU的宽度和高度;
-相对于当前图片的左上样本的当前PUN的左上亮度样本是(xN,yN)。
将(xN,yN)(其中N被A0、A1、B0、B1或B2代替)分别经界定为(xP-1,yP+nPSH)、(xP-1,yP+nPSH-1)、(xP+nPSW,yP-1)、(xP+nPSW-1,yP-1)或(xP-1,yP-1)。
合并候选者列表或AMVP候选者列表中基于在时间上相邻于当前PU的PU(即,和与当前PU不同的时间实例相关联的PU)的运动信息的候选者可被称为TMVP。TMVP可用以改善HEVC的译码效率,并且不同于其它译码工具,TMVP可需要存取经解码图片缓冲器中的图片(例如,参考图片列表中的图片)的运动向量。
为了确定TMVP,视频译码器首先可识别包含与当前PU位于同一地点的PU的参考图片。换句话说,视频译码器可识别所谓的“位于同一地点的图片”。如果当前图片的当前切片是B切片(即,允许包含经双向帧间预测的PU的切片),那么视频编码器20可在切片标头中用信号发出指示相同位置图片是否来自RefPicList0或RefPicList1的语法元素(例如,collocated_from_l0_flag)。换句话说,当针对当前切片启用TMVP的使用且当前切片是B切片(例如,允许包含双向帧间预测PU的切片)时,视频编码器20可在切片标头中用信号表示语法元素(例如,collocated_from_l0_flag)以指示位于同一地点的图片是否处于RefPicList0或RefPicList1中。
切片标头中的语法元素(例如,collocated_ref_idx)可指示所识别参考图片列表中的位于同一地点的图片。因此,在视频解码器30识别包含位于同一地点的图片的参考图片列表之后,视频解码器30可使用可在切片标头中用信号表示的collocated_ref_idx来识别所识别参考图片列表中的位于同一地点的图片。视频译码器可通过检查位于同一地点的图片来识别位于同一地点的PU。TMVP可指示位于同一地点的PU的右下方PU的运动信息或位于同一地点的PU的中心PU的运动信息。
当视频译码器产生指定时间参考图片中的TMVP的运动向量的运动向量候选者(例如,AMVP候选者列表的合并列表中的候选者)时,视频译码器可基于时间参考图片的时间位置(由POC值反映)而按比例缩放TMVP的运动向量。换句话说,视频译码器可基于当前图片与参考图片之间的POC距离而按比例缩放运动向量候选者的运动向量。举例来说,当视频译码器基于第一图片与第二图片之间的POC距离而按比例缩放运动向量时,与当第一图片与第二图片的POC值之间的差异较小时相比,视频译码器可当第一图片与第二图片的POC值之间的差异较大时使运动向量的量值增加较大量。
从TMVP导出的时间合并候选者的所有可能的参考图片列表的目标参考索引可始终设定成0。目标参考索引可识别用于运动补偿的参考图片。然而,对于AMVP,所有可能的参考图片的目标参考索引设定成等于经解码参考索引。在HEVC中,SPS可包含旗标(例如,sps_temporal_mvp_enable_flag)且当sps_temporal_mvp_enable_flag等于1时切片标头可包含旗标(例如,pic_temporal_mvp_enable_flag)。当对于特定图片来说pic_temporal_mvp_enable_flag和temporal_id两者等于0时,来自按解码次序在所述特定图片之前的图片的运动向量都不会用作所述特定图片或按解码次序在所述特定图片之后的图片的解码中的TMVP。
本发明的技术潜在地适用于多视图译码和/或3DV标准和规范,包含MV-HEVC和3D-HEVC。在MV-HEVC中,可仅存在高级语法(HLS)改变,使得HEVC中在CU或PU层级的模块不需要再设计。这可允许经配置以用于HEVC的模块再用于MV-HEVC。对于3D-HEVC,可包含且支持用于纹理和深度视图两者的新译码工具(包含CU和/或PU层级中的那些译码工具)。
对HEVC(例如,MV-HEVC、3D-HEVC、SHVC等)的不同编解码器扩展可界定对HEVC中界定的各种语法结构的不同扩展。对语法结构的扩展可包含对编解码器扩展特定的语法元素。举例来说,MV-HEVC可界定用于VPS的扩展且3D-HEVC可界定用于VPS的不同扩展。
在例如MV-HEVC和3D-HEVC中界定的多视图译码中,可存在同一场景的从不同视点的多个视图。在多视图译码和3DV译码的上下文中,术语“存取单元”用以指代对应于同一时间实例的图片的集合。具体来说,在MV-HEVC和3D-HEVC中,存取单元可为按解码次序连续且含有由一或多个视图分量组成的确切一个经译码图片的NAL单元的集合。除经译码图片的经译码切片NAL单元之外,存取单元还可含有不含经译码图片的切片的其它NAL单元。在一些实例中,存取单元的解码始终得到由一或多个经解码视图分量组成的一个经解码图片。因此,视频数据可概念化为随时间过去而出现的一系列存取单元。“视图分量”可为单个存取单元中的视图的经译码表示。视图分量可包括纹理视图分量及深度视图分量。在本发明中,“视图”可指与相同视图识别符相关联的视图分量序列。
纹理视图分量(即,纹理图片)可为单一存取单元中的视图的纹理的经译码表示。纹理视图可为与视图次序索引的相同值相关联的纹理视图分量的序列。视图的视图次序索引可指示所述视图相对于其它视图的相机位置。深度视图分量(即,深度图片)可为单一存取单元中的视图的深度的经译码表示。深度视图可为与视图次序索引的相同值相关联的深度视图分量的序列。
在多视图译码、3DV译码和可缩放视频译码中,位流可具有多个层。在例如MV-HEVC和3D-HEVC中界定的多视图译码和3DV译码中,所述层可对应于不同视图。如果视频解码器(例如,视频解码器30)可对与层相关联的图片进行解码而无需参考任何其它层中的图片,那么视图可被称为“基础层”(或“基础视图”)。如果层的解码取决于与一或多个其它层相关联的图片(例如,视图)的解码,那么层可被称为非基础层(例如,非基础视图)。
在SVC中,除基础层外的层可被称为“增强层”且可提供增强从位流解码的视频数据的视觉质量的信息。在可缩放视频译码(例如,SHVC)中,“层表示”可为单个存取单元中的空间层的经译码表示。为便于阐释,本发明可将视图分量和/或层表示称为“视图分量/层表示”。
为了实施所述层,NAL单元的标头可包含nuh_reserved_zero_6bits语法元素。具有指定不同值的nuh_reserved_zero_6bit语法元素的NAL单元属于位流的不同“层”。因此,在多视图译码、3DV或SVC中,NAL单元的nuh_reserved_zero_6bits语法元素指定NAL单元的层识别符(即,层ID)。在一些实例中,如果NAL单元涉及多视图译码、3DV译码或SVC中的基础层,那么NAL单元的nuh_reserved_zero_6bits语法元素等于0。可在不参考位流的任何其它层中的数据的情况下解码位流的基础层中的数据。如果NAL单元并不涉及多视图译码、3DV或SVC中的基础层,那么nuh_reserved_zero_6bits语法元素可具有非零值。如上文所指出,在多视图译码和3DV译码中,位流的不同层可对应于不同视图。
此外,在一层内的一些视图分量/层表示可在不参考同一层内的其它视图分量/层表示的情况下进行解码。因此,囊封一层的某些视图分量/层表示的数据的NAL单元可从位流移除,而不影响所述层中的其它视图分量/层表示的可解码性。移除囊封此些视图分量/层表示的数据的NAL单元可减小位流的帧速率。可在不参考在一层内的其它视图分量/层表示的情况下解码的在所述层内的视图分量/层表示的子集可在本文中被称作“子层”或“时间子层”。
NAL单元可包含指定NAL单元的时间识别符的temporal_id语法元素。NAL单元的时间识别符识别NAL单元属于的子层。因此,位流的每一子层可具有不同时间识别符。一般来说,如果第一NAL单元的时间识别符小于第二NAL单元的时间识别符,那么可在不参考由第二NAL单元囊封的数据的情况下解码由第一NAL单元囊封的数据。
多视图译码可支持视图间预测。视图间预测类似于H.264/AVC、HEVC或其它视频译码规范中所使用的帧间预测,且可使用相同的语法元素。然而,在视频译码器对当前块(例如宏块或PU)执行视图间预测时,视频译码器可使用在与当前块相同的存取单元中但在不同视图中的图片作为参考图片。换句话说,在多视图译码中,在同一存取单元(即,同一时间实例内)的不同视图中俘获的图片当中执行视图间预测以移除视图之间的相关。相对比地,常规的帧间预测仅使用不同存取单元中的图片作为参考图片。
因此,当对非基础视图中的图片(即,当前图片)进行译码时,视频译码器(例如视频编码器20或视频解码器30)可包含参考图片列表中的视图间参考图片。视图间参考图片在与当前图片不同的视图中且在与当前图片相同的时间实例(即,存取单元)中。视频译码器可将视图间参考图片插入在参考图片列表的任何位置处。换句话说,以视图间预测经译码的图片可添加到用于另一非基础视图的视图间预测的参考图片列表中。
图3是说明用于多视图译码的实例预测结构的概念图。图3的多视图预测结构包含时间及视图间预测。在图3的实例中,每一正方形对应于视图分量。在图3的实例中,将存取单元标记为T0...T11及将视图标记为S0...S7。标记为“I”的正方形为经帧内预测视图分量。标记为“P”的正方形为经单向帧间预测视图分量。标记为“B”及“b”的正方形为经双向帧间预测视图分量。标记为“b”的正方形可将标记为“B”的正方形用作参考图片。从第一正方形指向第二正方形的箭头指示第一正方形可在帧间预测时用作第二正方形的参考图片。如由图3中的垂直箭头所指示,可将相同存取单元的不同视图中的视图分量用作参考图片。将存取单元的一个视图分量用作同一存取单元的另一视图分量的参考图片可被称作视图间预测。
在H.264/AVC的MVC扩展中,视差运动补偿支持视图间预测,所述视差运动补偿使用H.264/AVC运动补偿的语法,但允许将不同视图中的图片用作参考图片。对两个视图的译码还可受到H.264/AVC的MVC扩展支持。H.264/AVC的MVC扩展的优点中的一者是,MVC编码器可将两个以上视图视为3D视频输入且MVC解码器可解码此多视图表示。因此,具有MVC解码器的任何渲染器可预期具有两个以上视图的3D视频内容。
在多视图视频译码的上下文中,存在两个种类的运动向量。一个种类的运动向量是指向时间参考图片的正常运动向量。对应于正常时间运动向量的类型的帧间预测可被称为运动补偿预测(MCP)。当视图间预测参考图片用于运动补偿时,对应运动向量可被称为“视差运动向量”。换句话说,视差运动向量指向不同视图中的图片(即,视差参考图片或视图间参考图片)。对应于视差运动向量的类型的帧间预测可被称为“视差补偿预测”或“DCP”。
可缩放视频译码可以类似于本发明中描述的视图间预测的方式实施层间预测。一般来说,层间预测是以取决于具有与当前图片不同的nuh_layer_id的另一值的参考图片的数据元素(例如样本值或运动向量)的方式的预测。因此,在层间预测中使用的参考图片可被称为“层间参考图片”。为便于阐释,本发明可将视图间参考图片和/或层间参考图片称为“视图间/层参考图片”。
MV-HEVC和3D-HEVC可使用视图间运动预测及视图间残余预测而改善译码效率。在视图间运动预测中,视频译码器可基于在不同于当前PU的视图中的PU的运动信息而确定(即,预测)当前PU的运动信息。换句话说,通过视差向量识别当前PU的对应块,且对应块的运动向量可用作当前PU的AMVP或合并列表的额外候选者。另外,视差向量可转换成视差运动向量且添加到AMVP或合并列表中。在视图间残余预测中,视频译码器可基于与当前CU不同的视图中的残余数据确定当前CU的残余块。也就是说,在视图间残余预测中,如果当前CU的对应块含有非零残余像素,那么块的残余用以预测当前CU的残余。
为了实现视图间运动预测和视图间残余预测,视频译码器可确定块(例如,PU、CU等)的视差向量。一般来说,视差向量用作两个视图之间的位移的估计器。视频译码器可使用块的视差向量来定位用于视图间运动或残余预测的另一视图中的参考块,或视频译码器可将视差向量转换为用于视图间运动预测的视差运动向量。
L.张等人的“3D-CE5.h相关:用于多视图译码的高级残余预测”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组,第2次会议,中国上海,2012年10月13-19日,文献JCT3V-B0051(下文为“JCT3V-B0051”))提出了进一步改善视图间残余预测的译码效率的高级残余预测(ARP)方法。
图4是说明多视图和3D视频译码中的ARP的实例预测结构的概念图。图4包含四个图片:当前图片70、时间参考图片72、视差参考图片74和时间视差参考图片76。当前图片70与视图V1相关联且与时间实例Tj相关联。时间参考图片72与视图V1相关联且与时间实例Ti相关联。视差参考图片74与视图V0相关联且与时间实例Tj相关联。时间视差参考图片76与视图V0相关联且与时间实例Ti相关联。
当前图片70包含表示为“Dc”的当前PU。换句话说,Dc表示当前视图(视图1)中的当前块。Dc具有指示时间参考图片72中的位置的时间运动向量VD。视频编码器20可基于图片72中与由时间运动向量VD指示的位置相关联的样本而确定时间参考块Dr。因此,Dr表示Dc从同一视图(视图1)在时间Ti的时间预测块且VD表示从Dc到Dr的运动。
此外,视频编码器20可基于视差参考图片74中与由Dc的视差向量指示的位置相关联的样本而确定视差参考块Bc。因此,Bc表示参考块(即,参考视图(视图0)中在时间Tj的Dc的表示)。通过将所导出的视差向量添加到Dc的左上位置可以所导出的视差向量计算Bc的左上位置。由于Dc和Bc可为同一对象在两个不同视图中的投影,因此Dc和Bc应共享同一运动信息。因此,Bc在视图0中在时间Ti的时间预测块Br可通过应用VD的运动信息而从Bc定位。
视频编码器20可确定时间视差图片76中的时间视差参考块Br(Bc的预测性块)。如上文所指出,时间视差图片76与和Br相同的视图(即,视图V0)相关联且与和Dr相同的时间实例(即,时间实例Ti)相关联。视频编码器20可基于由Dc的运动向量VD指示的位置处的样本而确定Br。因此,通过将运动向量VD添加到Bc的左上位置可以再使用的运动向量VD计算Br的左上位置。Bc的左上位置可等于Dc的左上位置与视差向量的总和。因此,Br的左上位置可等于Dc的左上位置的坐标、视差向量和运动向量VD的总和。以此方式,如图4中由箭头78示出,视频编码器20可再使用运动向量VD用于确定Br。
此外,在ARP中,第一残余块中的每一样本可指示Dc中的样本与Dr的对应样本之间的差异。第一残余块可被称为Dc的原始残余块。第二残余块中的每一样本可指示Bc中的样本与Br中的对应样本之间的差异。第二残余块可被称为“残余预测符”。因为视频编码器20使用运动向量VD确定Br,所以残余预测符可不同于Bc的实际残余数据。
在视频编码器20确定残余预测符之后,视频编码器20可将残余预测符乘以加权因数。换句话说,将具有VD的运动信息的Bc的残余乘以加权因数且用作用于当前残余的残余预测符。加权因数可等于0、0.5或1。因此,在ARP中可使用三个加权因数(即,0、0.5和1)。在视频编码器20将残余预测符乘以加权因数之后,残余预测符可被称为经加权残余预测符。视频编码器20可选择产生当前CU(即,含有当前PU的CU)的最小速率失真代价的加权因数作为最终加权因数。视频编码器20可在位流中在CU层级包含指示加权索引的数据。加权索引可指示用于当前CU的最终加权因数(即,用以产生经加权残余预测符的加权因数)。在一些实例中,0、1和2的加权索引分别对应于0、1和0.5的加权因数。用于当前CU的0的加权因数的选择等效于针对当前CU的PU中的任一者不使用ARP。
视频编码器20可随后确定当前PU的最终残余块。当前PU的最终残余块中的每一样本可指示原始残余块中的样本与经加权残余预测符中的对应样本之间的差异。当前CU(即,含有当前PU的CU)的残余块可包含当前PU的最终残余块连同当前CU的其它PU的残余块(如果存在)。如在本发明中在别处所描述,视频编码器20可在一或多个变换块当中分割当前CU的残余块。变换块中的每一者可与当前CU的TU相关联。对于每一变换块,视频编码器20可将一或多个变换应用于变换块来产生变换系数块。视频编码器20可在位流中包含表示变换系数块的经量化变换系数的数据。
因此,在ARP中,为了确保两个视图的残余之间的高相关,视频编码器20可将当前PU的运动应用于参考视图图片中的对应块来产生将用于视图间残余预测的基础视图中的残余。以此方式,针对当前PU和参考视图中的对应参考块对准运动。此外,将自适应加权因数应用于残余信号以使得预测误差进一步减少。
如果当前PU是双向预测的,那么视频编码器20可执行相似过程。举例来说,视频编码器20可使用当前PU的RefPicList0和RefPicList1运动向量两者来确定RefPicList0和RefPicList1时间视差参考块。视频编码器20可通过内插RefPicList0和RefPicList1时间视差参考块的样本而确定预测性块。视频编码器20可以上文所描述的方式使用此预测性块。视频解码器30可当对双向预测PU执行ARP时执行相似过程。举例来说,视频解码器30可以上述样本方式确定当前PU的预测性块和经加权残余预测符。视频解码器30可基于在位流中用信号表示的元素来确定当前PU的最终残余块。视频解码器30可随后通过将当前PU的最终残余块、当前PU的预测性块和经加权残余预测符相加来重构当前PU的预测块。
在一些实例中,视频译码器可使用基于相邻块的视差向量(NBDV)的方法,以推导块的视差向量。3D-HEVC首先采用L.张等人的“3D-CE5.h:视差向量产生结果”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第1次会议:瑞典斯德哥尔摩,2012年7月16-20日,文献JCT3V-A0097(下文为“JCT3V-A0097”))中所提议的NBDV导出过程。NBDV导出过程已经进一步调适。举例来说,在桑(Sung)等人的“3D-CE5.h:基于HEVC的3D视频译码的视差向量导出的简化”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第1次会议:瑞典斯德哥尔摩,2012年7月16-20日,文献JCT3V-A0126(下文为“JCT3V-A0126”))中的简化NBDV包含隐式视差向量(IDV)。此外,在康(Kang)等人的“3D-CE5.h相关:视差向量导出的改进”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第2次会议:中国上海,2012年10月13-19日,文献JCT3V-B0047(下文为“JCT3V-B0047”))中,NBDV导出过程通过移除存储在经解码图片缓冲器中的IDV而进一步简化,并且还以随机存取图片(RAP)图片选择提供在译码增益方面的改进。
NBDV导出过程使用来自空间和时间相邻块的视差运动向量以导出当前块的视差向量。因为相邻块(例如,在空间上或在时间上相邻于当前块的块)很可能在视频译码中共享几乎相同的运动和视差信息,所以当前块可使用相邻块中的运动向量信息作为当前块的视差向量的预测符。换句话说,因为相邻块在视频译码中共享几乎相同的运动/视差信息,所以当前块可使用相邻块中的运动向量信息作为良好预测符以改善译码增益。依照此想法,NBDV导出过程使用相邻视差信息用于估计不同视图中的视差向量。
当视频译码器执行NBDV导出过程以确定当前块的视差向量时,视频译码器可利用相邻块的两个集合。一个集合是来自空间相邻块且另一集合是来自时间上相邻块。换句话说,首先界定若干空间和时间相邻块。视频译码器可随后按照通过当前块与相邻块之间的相关的优先级确定的预定义次序检查相邻块中的每一者。一旦视频译码器找到候选者(即,相邻块)中的视差运动向量,视频译码器便可将视差运动向量转换为当前块的视差向量。
在NBDV导出过程的一些版本中,视频译码器使用五个空间相邻块用于视差向量导出。举例来说,视频译码器可检查以下空间相邻块:当前块的左下方空间相邻的块,左边空间相邻的块,右上方空间相邻的块,上方空间相邻的块,以及左上方空间相邻的块。在NBDV导出过程的一些版本中,用于视差向量导出块的五个空间相邻块可分别覆盖位置A0、A1、B0、B1和B2,如图2中指示。在一些实例中,NBDV导出过程中使用的空间相邻块与HEVC中的合并模式中使用的那些块相同。因此,在一些此些实例中,不需要额外存储器存取。
在一些实例中,视频译码器可逐个地检查空间相邻块。此外,在一些实例中,将五个空间相邻块的检查次序界定为A1、B1、B0、A0和B2。
此外,如上所提到,作为确定当前块(例如,当前PU)的视差向量的过程的部分,视频译码器可检查时间相邻块。当视频译码器检查时间相邻块(例如,时间相邻PU)时,视频译码器可首先执行候选图片列表的构造过程。当视频译码器执行候选图片列表的构造过程时,视频译码器可将与当前视图(即,与当前块相关联的视图)相关联的所有参考图片处理为候选图片。此外,当视频译码器执行候选图片列表的构造过程时,视频译码器可首先将所谓的“位于同一地点的图片”插入候选图片列表中,接着是依参考索引的递增次序的候选图片的其余部分。也就是说,视频译码器可根据剩余候选图片在当前图片的参考图片列表(例如,RefPicList0和RefPicList1)中发生的次序而将剩余候选图片插入候选图片列表中。含有当前块的切片的切片标头中的一或多个语法元素可指示位于同一地点的图片。在一些实例中,当两个参考图片列表(例如,RefPicList0和RefPicList1)中具有同一参考索引的参考图片可用于NDBV导出过程中时,与所述位于同一地点的图片在同一参考图片列表中的参考图片在候选图片列表中在另一参考图片之前。
在产生候选图片列表之后,视频译码器可确定候选图片列表中的候选图片内的候选区。视频译码器可使用候选区来确定时间相邻块。如上文所指出,视频译码器可基于时间相邻块的视差运动向量或IDV而导出当前块的视差向量。在一些实例中,对于候选图片列表中的每一候选图片,视频译码器可确定用于导出时间相邻块的三个候选区。所述三个候选区可如下界定:
●CPU:当前PU或当前CU的位于同一地点的区。
●CLCU:覆盖当前PU的所述位于同一地点的区的最大译码单元(LCU)。
●BR:CPU的右下4x4块。
因为16x16块中的较小块可由于运动压缩而共享相同运动信息,所以视频译码器可针对视差向量仅检查一个样本块。当候选区覆盖一个以上16x16块时,视频译码器可根据光栅扫描次序检查候选区中的所有16x16块。举例来说,时间上位于同一地点的块的运动向量存储在参考图片的16x16块中,并且通常,视频译码器存取4x4块以找到运动向量。因此,在一些实例中,如果视频译码器将候选块放置于16x16块中,那么所有4x4块含有共同运动向量且视频译码器并不需要检查所有4x4块来找到不同运动向量。另一方面,如果候选区大于16x16,那么在所述16x16块外部的4x4块可含有不同运动向量。
当视频译码器检查候选区(候选区内的16x16块)时,视频译码器可确定覆盖候选区的PU是否指定视差运动向量。如果覆盖候选区的PU指定视差运动向量,那么视频译码器可基于PU的视差运动向量确定当前块的视差向量。
在一些实例中,视频译码器可执行基于优先级的视差向量确定作为执行NBDV导出过程的部分。举例来说,视频译码器可导出视差向量以使得一旦视频译码器识别出含有视差运动向量的相邻块,视频译码器便将视差运动向量转换为当前块的视差向量。视频译码器可随后使用所述视差向量用于视图间运动预测和/或视图间残余预测。在一些实例中,相邻块的检查次序是基于相邻块与当前块之间的相关而界定。举例来说,视频译码器可首先逐个地检查空间相邻块。一旦视频译码器已识别出视差运动向量,视频译码器便返回视差运动向量作为视差向量。在一些实例中,将五个空间相邻块的检查次序界定为A1、B1、B0、A0和B2。
此外,对于候选图片列表中的每一候选图片,视频译码器可按次序检查此候选图片中的三个候选区。可将三个区的检查次序界定为:对于第一非基础视图的CPU、CLCU及BR,或对于第二非基础视图的BR、CPU、CLU。在此实例中,与第一非基础视图相关联的图片的解码可取决于与基础视图相关联的图片但不是与其它视图相关联的图片的解码。此外,在此实例中,与第二非基础视图相关联的图片的解码可取决于与基础视图相关联且在一些情况下与第一非基础视图相关联的图片但不是与其它视图(如果存在)相关联的图片的解码。为简单起见,可将空间相邻块中的视差运动向量表示为空间视差向量(SDV)且可将时间相邻块中的视差运动向量表示为时间视差向量(TDV)。
当视频译码器检查块(即,空间相邻块、候选图片的候选区或候选图片的候选区的16x16块)的运动向量时,视频译码器可确定块的运动向量是否是视差运动向量。图片的块的视差运动向量是指向图片的视差参考图片内的位置的运动向量。给定图片的视差参考图片(在本文中也被称作视图间参考图片)可为与和给定图片相同的存取单元相关联但是与不同于给定图片的视图相关联的图片。当视频译码器识别出视差运动向量时,视频译码器可终止检查过程。视频译码器可将返回的视差运动向量转换为视差向量且可使用所述视差向量用于视图间运动预测和视图间残余预测。举例来说,视频译码器可将当前块的视差向量的水平分量设定为等于视差运动向量的水平分量且可将视差向量的垂直分量设定为0。在另一个实例中,视频译码器可通过将视差向量设定为等于视差运动向量而将视差运动向量转换为视差向量。
当视频译码器检查空间相邻块(例如,空间相邻PU)时,视频译码器可首先检查空间相邻块是否具有视差运动向量。如果空间相邻块均不具有视差运动向量,那么视频译码器可确定空间相邻块中的任一者是否具有IDV。此外,当视频译码器识别出视差运动向量或IDV时,视频译码器可返回识别的视差运动向量或IDV。术语“隐式视差向量”可指代曾用于视图间运动预测或视图间残余预测的视差向量。即使可以时间运动预测来译码对应块,出于对一或多个随后块进行译码的目的,视频译码器也不会丢弃所导出的视差向量。以此方式,出于视差向量导出的目的可将IDV存储到所述块。
当视频译码器确定空间相邻PU中的任一者是否具有IDV时,视频译码器可按A0、A1、B0、B1和B2的次序检查空间相邻PU。因此,视频译码器可针对视差运动向量按A1、B1、B0、A0和B2的次序检查空间相邻PU且针对IDV按A0、A1、B0、B1和B2的次序检查空间相邻PU。如果空间相邻PU中的一者具有IDV且所述IDV是作为合并/跳过模式而经译码,那么视频译码器可终止检查过程且可使用所述IDV作为当前块的最终视差向量。
如果视频译码器不能够通过执行NBDV导出过程导出当前块的视差向量(即,如果未找到视差向量),那么视频译码器可使用0视差向量作为当前块的视差向量。零视差向量是水平分量和垂直分量均等于0的视差向量。因此,甚至当NBDV导出过程返回不可用结果时,视频译码器的需要视差向量的其它译码过程也可使用零视差向量用于当前块。在一些实例中,如果视频译码器不能够通过执行NBDV导出过程导出当前块的视差向量,那么视频译码器可停用当前块的视图间残余预测。然而,不管视频译码器是否能够通过执行NBDV导出过程导出当前块的视差向量,视频译码器都可使用视图间运动预测用于当前PU。也就是说,如果在检查所有预定义相邻块之后未发现视差向量,那么零视差向量可用于视图间运动预测,而可停用针对对应CU的视图间残余预测。
在其中视频译码器检查IDV作为NBDV导出过程的部分的一些实例中,视频译码器可执行以下步骤,但在其它实例中也可以使用额外步骤。如果以下步骤中的任一者找到视差向量,那么视频译码器可终止导出过程。
●步骤1:按A1、B1、B0、A0和B2的次序检查五个空间相邻块以找到视差运动向量。一旦视频译码器找到视差运动向量,视频译码器便将视差运动向量转换为视差向量。如果空间相邻块含有IDV,那么视频译码器将其IDV旗标标记为“IDV已使用”且存储IDV旗标的相关联值。
●步骤2:当时间运动向量预测经启用时,以下适用:
a)如果当前译码模式是AMVP,那么目标参考图片列表中具有目标参考索引的参考图片用作位于同一地点的图片。界定位于同一地点的图片中的两个块(即,位于同一地点的PU的右下块(BR)和位于同一地点的PU的中心块(CB))。在此实例中,视频译码器按以下次序检查位于同一地点的图片的块:
1)检查BR以查看BR是否含有视差运动向量。如果是,那么视频译码器将视差运动向量转换为视差向量。否则,如果BR作为跳过模式经译码且BR含有IDV(即,IDV的旗标等于1),那么视频译码器将BR标记为“IDV已使用”且存储相关联IDV。视频译码器可随后执行以下步骤3。
2)检查CB以查看CB是否含有视差运动向量。如果是,那么视频译码器将视差运动向量转换为视差向量。否则,如果BR作为跳过模式经译码且BR含有IDV(即,IDV的旗标等于1),那么视频译码器将BR标记为“IDV已使用”且视频译码器存储相关联IDV。视频译码器可随后执行步骤3。
b)如果当前译码模式是跳过/合并,那么视频译码器使用每一参考图片列表中的两个位于同一地点参考图片(如果适用)。指示位于同一地点参考图片的参考索引可等于左边相邻PU的参考索引或0。对于参考图片列表0和1中的位于同一地点图片中的每一者,视频译码器按次序执行步骤2、a)1)和a)2)中的步骤。
●步骤3:如果五个空间相邻块中的一者作为跳过模式经译码且空间相邻块含有IDV(即,空间相邻块具有标记为“IDV已使用”的旗标),那么视频译码器返回IDV作为视差向量。在此实例中,IDV的空间相邻块的检查次序是A0、A1、B0、B1和B2。
●步骤4:如果时间运动向量预测经启用且位于同一地点的图片中存在标记为“IDV已使用”的一个块(即,BR或CB),那么视频译码器将与所述块相关联的IDV转换为视差向量。在一些实例中,视频译码器可通过将IDV的水平分量设定为等于视差向量的水平分量且将视差向量的垂直分量设定为等于0而将IDV转换为视差向量。在其它实例中,视频译码器可通过将视差向量设定为等于IDV而将IDV转换为视差向量。
与存取经解码图片缓冲器(DPB)中的IDV相关联的存储器带宽和复杂性要求可为大的。举例来说,视频译码器可需要执行若干存储器存取以从DPB存储和检索IDV。因此,视频译码器可执行低复杂性NBDV导出过程。当视频译码器执行低复杂性NBDV导出过程时视频译码器考虑较少块候选者。举例来说,视频译码器可在DPB中存储IDV的信息。在此实例中,IDV的信息可包含所有先前经译码图片的IDV旗标和向量。此外,在低复杂性NBDV导出过程中,移除DPB中的IDV候选者可减少存储器带宽。换句话说,视频译码器并不在DPB中存储IDV相关信息。
在一些低复杂性NBDV导出过程中,与上述NBDV导出过程中相比,视频译码器检查候选图片的较少候选区。举例来说,图5是说明时间候选图片的对应PU中的时间相邻者的概念图。在图5的实例中,视频译码器可检查覆盖由“位置A”和“位置B”指示的此位置的候选区。此外,在一些低复杂性NBDV导出过程中,视频译码器可检查仅位于同一地点的图片和随机存取图片的候选区。因此,在一些实例中,针对时间块检查(即,如图5中示出的底部下方和中心块)考虑位于同一地点的图片和随机存取图片。在HEVC和其它视频译码规范中,随机存取指代位流中从不是第一经译码图片的经译码图片开始的位流的解码。随机存取图片的实例类型包含IDR图片、CRA图片和BLA图片。
此外,在一些低复杂性NBDV导出过程中,视频译码器可执行切片或图片层级中的候选图片导出一次。换句话说,视频译码器可每图片或切片产生候选图片列表一次以用于NBDV导出过程。因此,在此些低复杂性NBDV导出过程中,视频译码器不再调用PU或CU层级处的候选图片导出过程。
每一经译码图片可具有包含可由经译码图片或在经译码图片之后(即,未来)的图片用于参考的所有图片的参考图片集。视频译码器可区分哪些图片可仅用作未来图片的参考。参考图片列表可基于可用于当前图片的参考图片集(“RPS”)(即“用于当前的RPS”)中的图片因此不基于可仅用作未来图片的参考的图片而构造。在未来RPS中的图片不会在两个参考图片列表RefPicList0或RefPicList1中的任一者中。
在一些实例中,当视频编码器20开始对当前图片进行编码时,视频编码器20可产生当前图片的参考图片的五个子集(即,参考图片子集)。在一些实例中,这五个参考图片子集为:RefPicSetStCurrBefore、RefPicSetStCurrAfter、RefPicSetStFoll、RefPicSetLtCurr及RefPicSetLtFoll。本发明可将RefPicSetStCurrBefore、RefPicSetStCurrAfter、RefPicSetStFoll中的参考图片称为“短期参考图片”、“短期图片”或“STRP”。因此,“短期参考图片”可为经标记(例如,借助处于RefPicSetStCurrBefore、RefPicSetStCurrAfter或RefPicSetStFoll中)为用于短期参考的图片。本发明可将RefPicSetLtCurr及RefPicSetLtFoll中的参考图片称为“长期参考图片”、“长期图片”或“LTRP”。视频编码器20可再产生每一图片的五个参考图片子集。
此外,当当前图片包括P切片(即,其中帧内预测和单向帧间预测经启用的切片)时,视频编码器20可使用来自当前图片的RefPicStCurrAfter、RefPicStCurrBefore及RefPicStLtCurr参考图片子集的参考图片,以产生当前图片的单一参考图片列表(RefPicList0)。当当前图片包括B切片(即,其中帧内预测、单向帧间预测和双向帧间预测经启用的切片)时,视频编码器20可使用来自当前图片的RefPicStCurrAfter、RefPicStCurrBefore及RefPicStLtCurr参考图片子集的参考图片,以产生当前图片的两个参考图片列表(RefPicList0及RefPicList1)。视频编码器20可在当前图片的第一切片的切片标头中包含视频解码器30可用来确定当前图片的参考图片子集的语法元素。当视频解码器30解码当前图片的当前切片时,视频解码器30可确定当前图片的参考图片子集且可再产生RefPicList0和/或RefPicList1。
如上文所指出,当视频译码器开始对当前图片进行译码时,视频译码器可初始化当前图片的第一参考图片列表(即,RefPicList0)。此外,如果当前图片包括B切片,那么视频译码器可初始化当前图片的第二参考图片列表(即,RefPicList1)。因此,在一些实例中,视频译码器可仅在当前视图分量/层表示包含B切片(即,双向预测切片)时才产生RefPicList1。在一些实例中,参考图片列表初始化是明确的机制,其基于参考图片的图片次序计数(POC)值的次序将参考图片存储器(即,经解码图片缓冲器)中的参考图片放入列表中。POC值为与每一图片相关联的变量,所述变量指示按输出次序相关联的图片相对于相同经译码视频序列中的其它图片的输出次序位置的位置。
为产生RefPicList0,视频译码器(例如,视频编码器或视频解码器)可产生RefPicList0的初始默认版本。在一些实例中,在RefPicList0的初始版本中,首先列出RefPicSetStCurrBefore中的参考图片,接着是RefPicSetStCurrAfter中的参考图片,接着是RefPicSetLtCurr中的参考图片。类似地,为产生RefPicList1,视频译码器可产生RefPicList1的初始版本。在一些实例中,在RefPicList1的初始版本中,首先列出RefPicSetStCurrAfter中的参考图片,接着是RefPictSetStCurrBefore中的参考图片,接着是RefPicSetLtCurr中的参考图片。
在一些实例中,在视频译码器已构造最终参考图片列表(即,RefPicList0和RefPicList1)之后,视频译码器构造用于B切片的组合列表(例如,RefPicListC)。进一步如果对于组合列表存在一或多个参考图片列表修改语法元素,那么视频译码器可进一步修改组合列表。
在视频译码器已初始化参考图片列表(例如,RefPicList0或RefPicList1)之后,视频译码器可修改所述参考图片列表中的参考图片的次序。换句话说,视频译码器可执行参考图片列表修改(RPLM)过程。视频译码器可以任何次序修改参考图片的次序,包含其中一个特定参考图片可出现在参考图片列表中的一个以上位置处的情况。因此,参考图片列表重新排序机制可将在参考图片列表初始化期间放入列表中的图片的位置修改为任何新位置,或将参考图片存储器中的任何参考图片放在任何位置,即使图片不属于初始化列表也如此。然而,如果图片的位置超过列表的有效参考图片的数目,则不将所述图片视为最终参考图片列表的条目。切片标头可包含指示参考图片列表中的有效参考图片的数目的一或多个语法元素。
为了实施RPLM过程,切片标头可包含RPLM语法结构(例如,ref_pic_list_modification())。以下表1展示HEVC工作草案8中呈现的RPLM语法结构。
表1
在以上表1的实例和本发明的其它语法表中,具有u(n)形式(其中n是非负整数)的描述符的语法元素是具有长度n的无符号值。此外,具有u(v)形式的描述符的语法元素是无符号可变长度值。此外,关于表1,将变量NumPocTotalCurr设定成等于NumPocStCurrBefore+NumPocStCurrAfter+NumPocLtCurr。NumPocStCurrBefore指示RefPicSetStBefore中的元素的数目。NumPocStCurrAfter指示RefPicSetStAfter中的元素的数目。NumPocLtCurr指示RefPicSetLtCurr中的元素的数目。
在表1中,等于1的ref_pic_list_modification_flag_l0语法元素指示RefPicList0经明确指定为list_entry_l0[i]值的列表。等于0的ref_pic_list_modification_flag_l0语法元素指示RefPicList0是隐式地确定。等于1的ref_pic_list_modification_flag_l1语法元素指示RefPicList1经明确指定为list_entry_l1[i]值的列表。等于0的ref_pic_list_modification_flag_l1语法元素指示RefPicList1是隐式地确定。
此外,在表1的实例中,list_entry_lX[i]语法元素(其中X等于0或1)指定RefPicSetCurrTempListX中的参考图片的索引将放置在参考图片列表LX(其中X等于0或1)的当前位置。RefPicSetCurrTempListX(也被称作RefPicListTempX)是RefPicListX的初始版本。X的值对于list_entry_lX、RefPicSetCurrTempListX和LX中的每一者是相同的。在此实例中,list_entry_lX[i]语法元素的长度是Ceil(Log2(NumPocTotalCurr))个位。此外,在此实例中,list_entry_lX[i]的值处于0到NumPocTotalCurr-1(包含性)的范围中。如果list_entry_lX[i]语法元素不存在,那么可推断list_entry_lX[i]语法元素等于0。
如上文所指出,当视频译码器开始对P或B切片进行译码时视频译码器可产生RefPicList0的初始版本。RefPicList0的初始版本可表示为RefPicListTemp0。在HEVC工作草案8中,视频译码器可使用由以下伪码描述的操作来产生RefPicList0的初始版本。
在以上伪码中,变量NumRpsCurrTempList0设定成等于Max(num_ref_idx_l0_active_minus1+1,NumPocTotalCurr)。变量num_ref_idx_l0_active_minus1指示RefPicList0中的有效参考图片的数目减1。
此外,在HEVC工作草案8中,RefPicList0如下构造:
for(rIdx=0;rIdx≤num_ref_idx_l0_active_minus1;rIdx++)
RefPicList0[rIdx]=ref_pic_list_modification_flag_l0?
RefPicListTemp0[list_entry_l0[rIdx]]:RefPicListTemp0[rIdx]
在以上伪码中,如果参考图片列表修改对于RefPicList0经启用,那么视频译码器可针对RefPicList0中的每一相应位置确定对应于RefPicList0中的相应位置的list_entry_l0语法元素。视频译码器可在RefPicList0中的相应位置处插入RefPicListTemp0中由所确定list_entry_l0语法元素指示的位置处的参考图片。
此外,当视频译码器开始对B切片进行译码时视频译码器可产生RefPicList1的初始版本。RefPicList1的初始版本可表示为RefPicListTemp1。在HEVC工作草案8中,视频译码器可使用由以下伪码描述的操作来产生RefPicList1的初始版本。
在以上伪码中,变量NumRpsCurrTempList1设定成等于Max(num_ref_idx_l1_active_minus1+1,NumPocTotalCurr)。变量num_ref_idx_l1_active_minus1指示RefPicList1中的有效参考图片的数目减1。
此外,在HEVC工作草案8中,RefPicList1如下构造:
for(rIdx=0;rIdx≤num_ref_idx_l1_active_minus1;rIdx++)
RefPicList1[rIdx]=ref_pic_list_modification_flag_l1?
RefPicListTemp1[list_entry_l1[rIdx]]:RefPicListTemp1[rIdx]
在以上伪码中,如果参考图片列表修改对于RefPicList1经启用,那么视频译码器可针对RefPicList1中的每一相应位置确定对应于RefPicList1中的相应位置的list_entry_l1语法元素。视频译码器可在RefPicList1中的相应位置处插入RefPicListTemp1中由所确定list_entry_l1语法元素指示的位置处的参考图片。
在特定视频译码标准(例如,HEVC)的一些编解码器扩展中,参考图片列表可含有正常时间参考图片以及来自除当前视图/层外的视图/层或从来自除当前视图/层外的视图/层的图片产生的参考图片。来自其它视图/层或从来自其它视图/层的图片产生的参考图片被命名为“视图间/层间参考图片”。从来自其它视图/层的图片产生参考图片的过程可被称为视图合成预测且以此方式产生的图片可被称为视图合成图片。
在HEVC中,两个参考图片列表(即,refPicList0和refPicList1)通常包含时间参考图片。然而,在HEVC的一些扩展(例如,3D-HEVC)中,视图间/层间参考图片通常仅存在于RefPicList0中且通常从不处于RefPicList1中。此外,在3D-HEVC中,参考图片列表可含有视图间/层间参考图片且VPS扩展中的ref_layer_id[i][j]语法元素可用信号表示视频译码器可用来预测特定视图/层的视图/层,如以下表2中示出。
表2
在表2的实例中,视频译码器将同一存取单元中由ref_layer_id[i][j]识别的每一视图间/层间参考图片插入到所谓的视图间/层间RPS中。视频译码器可使用视图间/层间RPS中的参考图片来初始化RefPicList0和/或RefPicList1。在初始化RefPicList0和/或RefPicList1之后,视频译码器可修改RefPicList0和/或RefPicList1中的参考图片的次序。换句话说,可进一步考虑视图间/层间RPS以用于RefPicList0和RefPicList1两者的参考图片列表初始化和修改。
拉马苏布拉莫尼安(Ramasubramonian)等人的“AHG7:用于MV-HEVC的参考图片列表初始化”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的3D视频译码扩展开发联合合作小组第3次会议,瑞士日内瓦,2013年1月17-23日,文献JCT3V-C0060(下文为JCT3V-C0060))提出了将视图间参考图片连续放入参考图片列表的给定地点中的参考图片列表初始化方法。具体来说,JCT3V-C0060提出了用于MV-HEVC的参考图片列表的初始化的方法,其中在切片标头中用信号表示视图间参考图片的所要初始位置。此外,在JCT3V-C0060中,参考图片列表的初始化过程经修改以使得视图间参考图片存在于初始参考图片列表中的用信号表示的开始位置。
以下表3是如JCT3V-C0060中界定的切片标头的语法的实例部分。表3中带下划线的文字指示对MV-HEVC工作草案2中界定的切片标头语法添加的文字。
表3
在以上表3的实例和本发明的其它语法表中,具有类型描述符ue(v)的语法元素可为使用左位优先的第0阶指数哥伦布(Exp-Golomb)译码而编码的可变长度无符号整数。如表3中指示,如果切片不是I切片(即,经帧内译码切片),那么切片的切片标头可包含inter_view_ref_start_position_plus1语法元素。
此外,JCT3V-C0060指示inter_view_ref_start_position_plus1语法元素指定在参考图片列表初始化之后参考图片列表0中的视图间参考图片的开始位置。inter_view_ref_start_position_plus1语法元素处于0到min(num_ref_idx_l0_active_minus1+1,NumPocStCurrBefore+NumPocStCurrAfter+NumPocLtCurr)(包含性)的范围中。当inter_view_ref_start_position_plus1语法元素等于零时,视图间参考图片存在于参考图片列表中的默认位置中。对于其它非零值,inter_view_ref_start_position_plus1语法元素减1表示初始参考图片列表中的视图间参考图片的开始位置。当不存在时,可推断inter_view_ref_start_position_plus1语法元素为默认值,其等于NumPocStCurrBefore+NumPocStCurrAfter+NumPocLtCurr+1。
JCT3V-C0060指示如下导出变量IvRefStartPos。
此外,JCT3V-C0060提出对MV-HEVC工作草案2的解码过程的以下改变。在下文中,对MV-HEVC工作草案2添加带下划线的文字且从MV-HEVC工作草案2移除双方括号中的斜体文字。
将变量NumRpsCurrTempList0设定成等于Max(num_ref_idx_l0_active_minus1+1,NumPocTotalCurr)且如下构造列表RefPicListTemp0:
如下构造列表RefPicList0:
JCT3V-C0060指示RefPicList1的导出与MV-HEVC工作草案2中所界定的相同。因此,JCT3V-C0060的方法不会帮助减少RefPicList1的复杂性,而是仅可帮助减少RefPicList0的复杂性。
在例如MV-HEVC、3D-HEVC和SHVC等一些HEVC扩展中的一些工具假定视图间/层间参考图片存在于RefPicList0和RefPicList1两者中。这可导致若干问题。举例来说,需要存取与视图间预测可存在于RefPicList1中的假设有关的信息的所有低层级译码工具需要执行冗余检查,其可导致更多操作且还可需要更多数据存储在存储器中。举例来说,低水平的译码工具(例如,在PU层级或CU层级应用的译码工具)可继续检查RefPicList1中的参考图片是否为视图间/层间参考图片,不管RefPicList1是否包含任何视图间/层间参考图片。
在另一个实例中,参考图片列表构造过程是涉及参考图片列表构造(包含参考图片列表初始化和参考图片列表修改)的过程。在此实例中,参考图片列表构造过程可假定RefPicList1包含视图间/层间参考图片。因此,在此实例中,参考图片列表构造过程可需要更多过程和存在于RefPicList0和RefPicList1中的冗余语法,但此些过程和语法可能对RefPicList1无用。
在因为某些译码工具假定视图间/层间参考图片存在于RefPicList0和RefPicList1两者中而可能出现的另一实例问题中,存在于与参考图片列表构造有关的语法表中的语法元素(例如,list_entry_l0语法元素和list_entry_l1语法元素)可为u(v)译码的。因此,对应于RefPicList1的语法元素可能不必要地长。在另一个实例中,将同一视图间/层间参考图片插入RefPicList0和RefPicList1两者不会带来任何译码增益。
本发明的实例包含经配置以停用高级语法结构中的视图间/层间预测的多视图/3D或可缩放编解码器。高级语法结构可包含非VCLNAL单元中的语法结构。举例来说,高级语法结构可包含SEI消息、参数集(例如,VPS、SPS、PPS等)等等。
在本发明的一个实例中,视频编码器20在VPS扩展中用信号表示语法元素(例如,inter_view_l1_disable_flag)。为便于阐释,本发明可将此语法元素称为inter_view_l1_disable_flag,但此语法元素在适用的编解码器中可具有不同名称。inter_view_l1_disable_flag指示对于参考VPS的CVS的任何视图分量/层表示,视图间/层间参考图片是否一直包含在RefPicList1中。
在另一个实例中,视频编码器20可用信号表示每一层的inter_view_l1_disable_flag以便指示对于参考VPS的CVS的特定视图/层的任何视图分量/层表示,视图间/层间参考图片是否一直包含在RefPicList1中。在此实例中,可在VPS中用信号表示多个此些语法元素(例如,旗标),其每一者附加到一个特定层/视图。举例来说,在此实例中,视频编码器20可为不同层中的不同CVS用信号表示单独的SPS。每一SPS可包含inter_view_l1_disable旗标,其指示参考SPS的图片的RefPicList1是否一直包含视图间参考图片/层表示。因此,在此实例中,视频解码器30可从SPS获得语法元素,所述语法元素针对多个层中的每一相应层指示相应层的相应语法元素,所述相应语法元素指示视图间/层间参考图片是否一直包含在所述相应层中的视图分量/层表示的相应参考图片列表中。
为便于阐释,本发明假定具有值1的inter_view_l1_disable_flag指示inter_view_l1_disable_flag适用于的RefPicList1从不包含视图间/层间参考图片。此外,为便于阐释,本发明假定具有值0的inter_view_l1_disable_flag指示inter_view_l1_disable_Flag适用于的RefPicList1可包含视图间/层间参考图片。然而,在其它实例中,具有值0的inter_view_l1_disable_flag指示inter_view_l1_disable_flag适用于的RefPicList1从不包含视图间/层间参考图片,且具有值1的inter_view_l1_disable_flag指示inter_view_l1_disable_flag适用于的RefPicList1可包含视图间/层间参考图片。
当inter_view_l1_disable_flag是1时,可以不同方式简化由视频解码器30执行的视频解码过程。此些简化可部分地通过减少解码过程中执行的操作的数目和/或减少在解码过程期间执行的存储器存取的次数而加速解码过程。
在当inter_view_l1_disable_flag是1时可如何简化解码过程的一个实例中,当视频解码器30执行NBDV导出过程以确定当前块的视差向量且inter_view_l1_disable_flag是1时,视频解码器30并不检查相邻块的RefPicList1运动信息。换句话说,在3D-HEVC的视差向量导出(NBDV)中,从不检查对应于RefPicList1的运动信息(例如,RefPicList1运动向量、RefPicList1参考索引等),因此在这种配置中可将复杂性降低到1/2。此外,在此实例或其它实例中,当视频解码器30执行NBDV导出过程且inter_view_l1_disable_flag是1时,当相邻块并不具有RefPicList0视差运动向量或RefPicList0IDV时视频解码器30并不存储用于相邻块的IDV。因此,视频解码器30可存储每一相邻块的至多一个视差向量。换句话说,在NBDV中,IDV候选者仅存储每一块的一个视差运动向量。以此方式,视频解码器30可执行视差向量导出过程,其检查相邻于当前视图分量/层表示的当前块的一或多个块以便确定当前块的视差向量。作为执行视差向量导出过程的部分,视频解码器30可当语法元素(例如,inter_view_l1_disable_flag)指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表(例如,RefPicList1)中时不检查对应于当前视图分量/层表示的参考图片列表的运动信息。此外,在一些实例中,当语法元素(例如,inter_view_l1_disable_flag)指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表(例如,RefPicList1)中时,针对相邻于当前块的一或多个块中的每一者存储至多一个隐式视差向量。
在当inter_view_l1_disable_flag是1时可如何简化由视频解码器30执行的视频解码过程的另一实例中,视频解码器30并不在合并候选者列表或AMVP候选者列表中包含对应于视图间/层间参考图片的运动候选者。举例来说,在3D-HEVC中,合并或AMVP列表从不要求添加对应于视图间/层间参考图片的运动候选者以使得潜在简化是可能的。对应于视图间/层间参考图片的运动候选者可指定视图间/层间参考图片中的参考位置。
在此实例中,当语法元素(例如,inter_view_l1_disable_flag)指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表(例如,RefPicList1)中时,视频解码器30可从不在候选者列表中包含对应于视图间/层间参考图片的候选者。此外,当语法元素指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表中时,视频解码器30可基于候选者列表中的特定候选者确定当前视图分量/层表示的当前块的运动向量。
在当inter_view_l1_disable_flag是1时可如何简化由视频解码器30执行的视频解码过程的另一实例中,视频解码器30可避免检查RefPicList1中的参考图片是否为视图间/层间参考图片。当前在3D-HEVC中,在运动预测或视差向量导出期间,视频译码器可检查RefPicList0中的参考图片是否为视图间/层间参考图片且可检查RefPicList1中的参考图片是否为视图间/层间参考图片。换句话说,当知道列表是RefPicList1时可避免来自参考图片列表的参考图片是否为视图间/层间参考图片的检查。因此,在此实例中,当语法元素(例如,inter_view_l1_disable_flag)指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表(RefPicList1)中时,视频解码器30可避免来自参考图片列表的参考图片是否为视图间/层间参考图片的检查。
在当inter_view_l1_disable_flag是1时可如何简化由视频解码器30执行的视频译码过程的另一实例中,可简化确定是否获得CU的视图间残余预测旗标(例如,res_pred_flag)的过程。举例来说,在3D-HEVC工作草案2中,当resPredEnableFlag变量等于1时视频解码器30可从位流获得当前CU的视图间残余预测旗标(例如,res_pred_flag)。当VPS中的语法元素指示视图间残余预测经启用、经译码块旗标指示当前CU的残余非零且anyTempRefPicFlag变量等于1时resPredEnableFlag等于1。当当前CU的一或多个PU利用时间参考图片时anyTempRefPicFlag等于1。在3D-HEVC测试模型描述草案2中,视频解码器30可初始地将anyTempRefPicFlag设定为0。当当前CU的预测模式不是帧内预测时,以下情况适用,其中X被0和1代替且Y等于1-X。
anyTempRefPicFlag=anyTempRefPicFlag||
(inter_pred_idc[x0][y0]!=Pred_LY&&refViewIdxLX[x0][y0]==ViewIdx)||
(inter_pred_idc[x0][y1]!=Pred_LY&&refViewIdxLX[x0][y1]==ViewIdx)||
(inter_pred_idc[x1][y0]!=Pred_LY&&refViewIdxLX[x1][y0]==ViewIdx)||
(inter_pred_idc[x1][y1]!=Pred_LY&&refViewIdxLX[x1][y1]==ViewIdx)
在以上等式中,Pred_LY指示当前CU的PU是从RefPicListY的预测经启用,refViewIdxLX指示当前CU的PU的RefPicListX参考图片的视图索引,且ViewIdx指示当前图片的视图索引。
当inter_view_l1_disable_flag等于1且当前CU的至少一个PU具有RefPicList1运动向量时,RefPicList1运动向量是时间运动向量。因此,如果inter_view_l1_disable_flag等于1且当前CU的至少一个PU具有RefPicList1运动向量,那么确定anyTempRefPicFlag的值可为不必要的,因为如果当前CU不是在帧内模式中经译码,那么当前CU的PU中的至少一者是使用时间参考图片经译码。因此,当inter_view_l1_disable_flag等于1且当前CU的至少一个PU是使用RefPicList1运动信息经译码(即,在Pred_L1或Bi_Pred模式中经译码)时,视频解码器30可能够确定resPredEnableFlag的值而无需确定anyTempRefPicList的值。因此,在3D-HEVC中,如果仅当前CU内的任一PU使用Pred_L1模式或Bi_Pred,那么可用信号表示视图间残余预测旗标而无需检查参考图片类型。在ARP中,如果PU是以Pred_L1或Bi_Pred模式译码,那么RefPicList1的残余预测符产生过程将始终经启用而无需检查参考图片类型以确定参考图片类型是否为视图间/层间参考。因此,在此实例中,当语法元素(例如,inter_view_l1_disable_flag)指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表(例如,RefPicList1)中时,视频解码器30可在当前视图分量/层表示的当前CU的PU具有指示特定参考图片中的位置的运动向量的情况下启用参考图片列表的残余预测符产生过程,而无需检查参考图片列表中的特定参考图片的类型。
在当inter_view_l1_disable_flag是1时可如何简化由视频解码器30执行的视频译码过程的另一实例中,视频解码器30可仅使用RefPicList0中的视图间/层间参考图片用于产生视图合成图片。此外,当inter_view_l1_disable_flag是1时,视频解码器30并不在RefPicList1中包含视图合成图片。也就是说,可扩展到未来3D-HEVC的视图合成预测仅使用插入在RefPicList0中的视图间参考图片用于视图合成,或从不考虑将视图合成图片添加到RefPicList1中。因此,在此实例中,当语法元素(例如,inter_view_l1_disable_flag)指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表(例如,RefPicList1)中时,视频解码器30可仅使用插入到不同参考图片列表(例如,RefPicList0)中的视图间/层间参考图片来执行视图合成预测。
在一些实例中,当inter_view_l1_disable_flag是1时,视频解码器30可执行简化或较有效设计的参考图片列表构造过程。举例来说,当inter_view_l1_disable_flag是1时,视频解码器30在构造RefPicList1的初始参考图片列表时并不考虑视图间/层间RPS或视图间/层间参考图片。此外,如本发明中在别处所描述,当inter_view_l1_disable_flag是1时,可以不同于RPLM语法元素list_entry_l1[i]的方式用信号表示RPLM语法元素list_entry_l0[i]。因此,在此实例中,当语法元素(例如,inter_view_l1_disable_flag)指示视图间/层间参考图片从不包含在当前视图分量/层表示的参考图片列表中时,视频解码器30在构造参考图片列表的初始版本时可不考虑视图间/层间参考图片集或视图间/层间参考图片。
此外,上文所提及的本发明的实例中的至少一些是通过单个控制旗标(即,inter_view_l1_disable_flag)来管理。然而,出于在不同地点或情形中管理关于RefPicList1的简化的目的,可使用一或多个单独的控制旗标来控制一或多个不同地点或情形。在本发明的其它实例中,在一些或所有情况中可以对RefPicList0的参考替换对RefPicList1的参考。
图6是说明经配置以实施本发明的技术的实例视频编码器20的框图。图6是出于解释的目的而提供,且不应被视为将技术限制为本发明中所大致例示及描述者。出于解释的目的,本发明在HEVC译码的上下文中描述视频编码器20。然而,本发明的技术可适用于其它译码标准或方法。
在图6的实例中,视频编码器20包含预测处理单元100、残余产生单元102、变换处理单元104、量化单元106、逆量化单元108、逆变换处理单元110、重构单元112、滤波器单元114、经解码图片缓冲器116以及熵编码单元118。预测处理单元100包含帧间预测处理单元120以及帧内预测处理单元126。帧间预测处理单元120包含运动估计单元122以及运动补偿单元124。在其它实例中,视频编码器20可以包含更多、更少或不同的功能组件。
视频编码器20可以接收视频数据。视频编码器20可对视频数据的图片的切片中的每一CTU进行编码。CTU中的每一者可以与图片的大小相等的亮度译码树块(CTB)以及对应的CTB相关联。作为对CTU进行编码的一部分,预测处理单元100可以执行四叉树分割以将CTU的CTB划分为逐渐更小的块。所述更小的块可以是CU的译码块。例如,预测处理单元100可将与CTU相关联的CTB分割成四个大小相等的子块,将子块中的一或多者分割成四个大小相等的子子块等。
视频编码器20可以对CTU的CU进行编码以产生CU的经编码的表示(即,经译码的CU)。作为对CU进行编码的一部分,预测处理单元100可以在CU的一或多个PU当中分割与CU相关联的译码块。因此,每一PU可以与亮度预测块以及对应的色度预测块相关联。视频编码器20以及视频解码器30可以支持具有各种大小的PU。如上文所指示,CU的大小可指CU的亮度译码块的大小并且PU的大小可指PU的亮度预测块的大小。假定特定CU的大小是2Nx2N,则视频编码器20以及视频解码器30可以支持用于帧内预测的2Nx2N或NxN的PU大小,以及用于帧间预测的2Nx2N、2NxN、Nx2N、NxN或类似大小的对称PU大小。视频编码器20以及视频解码器30还可以支持用于帧间预测的2NxnU、2NxnD、nLx2N以及nRx2N的PU大小的非对称分割。
帧间预测处理单元120可通过对CU的每一PU执行帧间预测产生PU的预测性数据。PU的预测性数据可以包含PU的预测性块以及PU的运动信息。取决于PU是在I切片中、P切片中或B切片中,帧间预测处理单元120可以对CU的PU执行不同操作。在I切片中,可启用帧内预测,但不启用帧间预测。因此,如果PU是在I切片中,则帧间预测处理单元120并不对PU执行帧间预测。
如果PU是在P切片中,则运动估计单元122可以对用于PU的参考区搜索参考图片列表(例如,“RefPicList0”)中的参考图片。用于PU的参考区可为参考图片内含有最接近地对应于PU的预测块的样本的区。运动估计单元122可以产生指示含有用于PU的参考区域的参考图片的RefPicList0中的位置的参考索引。另外,运动估计单元122可产生指示PU的预测块与和参考区相关联的参考位置之间的空间位移的运动向量。举例来说,运动向量可以是提供从当前图片中的坐标到参考图片中的坐标的偏移的二维向量。运动估计单元122可将参考索引及运动向量作为PU的运动信息而输出。基于由PU的运动向量指示的参考位置处的实际样本或经内插样本,运动补偿单元124可以产生PU的预测性块。
如果PU是在B切片中,则运动估计单元122可以对PU执行单向预测或双向预测。为了执行PU的单向预测,运动估计单元122可确定PU的单个运动向量和单个参考索引。在一些实例中,运动估计单元122可使用合并模式或AMVP模式来确定所述运动向量和参考索引。在一些实例中,可搜索RefPicList0或第二参考图片列表(“RefPicList1”)的参考图片是否有PU的参考区。运动估计单元122可以将指示含有参考区的参考图片的RefPicList0或RefPicList1中的位置的参考索引、指示PU的预测块与相关联于参考区的参考位置之间的空间移位的运动向量以及指示参考图片是在RefPicList0中或在RefPicList1中的一或多个预测方向指示符输出为PU的运动信息。运动补偿单元124可以至少部分基于由PU的运动向量指示的参考位置处的实际样本或经内插样本来产生PU的预测性块。
为了执行PU的双向帧间预测,运动估计单元122可确定PU的两个运动向量和两个参考索引。在一些实例中,运动估计单元122可执行合并模式或AMVP模式来确定所述运动向量和参考索引。在一些实例中,运动估计单元122可搜索RefPicList0中的参考图片是否有PU的参考区且还可搜索RefPicList1中的参考图片是否有PU的另一参考区。运动估计单元122可产生指示含有参考区的参考图片的RefPicList0及RefPicList1中的位置的参考索引。另外,运动估计单元122可产生指示与参考区相关联的参考位置与PU的预测块之间的空间移位的运动向量。PU的运动信息可包含PU的参考索引及运动向量。运动补偿单元124可至少部分基于在由PU的运动向量指示的参考位置处的实际或内插样本产生PU的预测性块。
帧内预测处理单元126可通过对PU执行帧内预测而产生PU的预测性数据。PU的预测性数据可以包含PU的预测性块以及各种语法元素。帧内预测处理单元126可以对I切片、P切片以及B切片中的PU执行帧内预测。
为了对PU执行帧内预测,帧内预测处理单元126可使用多个帧内预测模式产生PU的预测性块的多个集合。当使用特定帧内预测模式执行帧内预测时,帧内预测处理单元126可使用来自相邻块的样本的特定集合产生PU的预测性块。假定对于PU、CU及CTU采用从左到右、从上到下的编码次序,相邻块可在PU的预测块的上方、右上方、左上方或左方。帧内预测处理单元126可以使用各种数目的帧内预测模式,例如,33个定向帧内预测模式。在一些实例中,帧内预测模式的数目可以取决于PU的预测块的大小。
预测处理单元100可以从用于PU的由帧间预测处理单元120产生的预测性数据或用于PU的由帧内预测处理单元126产生的预测性数据当中选择用于CU的PU的预测性数据。在一些实例中,预测处理单元100基于预测性数据的集合的速率/失真量度选择用于CU的PU的预测性数据。选定的预测性数据的预测性块在本文中可以被称为选定的预测性块。
残余产生单元102可基于CU的译码块(例如,CU的亮度、Cb和Cr译码块)和CU的PU的选定预测性块(例如,CU的PU的亮度、Cb和Cr块)而产生CU的一或多个残余块(例如,CU的亮度、Cb和Cr残余块)。举例来说,残余产生单元102可产生CU的残余块以使得残余块中的每一样本具有等于CU的译码块中的样本与CU的PU的对应选定的预测性块中的对应样本之间的差的值。在一些实例中,残余产生单元102可包括求和器。
变换处理单元104可以执行四叉树分割以将CU的残余块分割成与CU的TU相关联的变换块。因此,TU可以与亮度变换块以及两个对应色度变换块相关联。CU的TU的亮度变换块以及色度变换块的大小和位置可以或可不基于CU的PU的预测块的大小和位置。
变换处理单元104可以通过将一或多个变换应用到TU的变换块而产生用于CU的每一TU的变换系数块。变换处理单元104可以将各种变换应用到与TU相关联的变换块。例如,变换处理单元104可以将离散余弦变换(DCT)、定向变换或概念上类似的变换应用于变换块。在一些实例中,变换处理单元104并不将变换应用于变换块。在此类实例中,变换块可以处理为变换系数块。
量化单元106可量化系数块中的变换系数。量化过程可减少与变换系数中的一些或全部相关联的位深度。举例来说,可在量化期间将n位变换系数向下舍入到m位变换系数,其中n大于m。量化可能使得信息丢失,因此经量化的变换系数可以具有比原始变换系数更低的精度。
逆量化单元108及逆变换处理单元110可分别将逆量化及逆变换应用于系数块,以从系数块重构残余块。重构单元112可以将经重构的残余块添加到来自由预测处理单元100产生的一或多个预测性块的对应样本,以产生与TU相关联的经重构变换块。通过以此方式重构用于CU的每一TU的变换块,视频编码器20可以重构CU的译码块。在一些实例中,重构单元112可包括求和器。
滤波器单元114可以执行一或多个解块操作以减少与CU相关联的译码块中的成块假象。经解码图片缓冲器116可以在滤波器单元114对经重构的译码块执行一或多个解块操作之后存储经重构的译码块。帧间预测处理单元120可使用含有经重构译码块的参考图片来对其它图片的PU执行帧间预测。另外,帧内预测处理单元126可以使用经解码图片缓冲器116中的经重构的译码块以对处于与CU相同的图片中的其它PU执行帧内预测。经解码图片缓冲器116可包括存储器或其它类型的计算机可读数据存储媒体。
熵编码单元118可以从视频编码器20的其它功能组件接收数据。例如,熵编码单元118可以从量化单元106接收系数块,并且可以从预测处理单元100接收语法元素。熵编码单元118可以对数据执行一或多个熵编码操作以产生经熵编码的数据。例如,熵编码单元118可以对数据执行上下文自适应可变长度译码(CAVLC)操作、CABAC操作、可变到可变(V2V)长度译码操作、基于语法的上下文自适应二进制算术译码(SBAC)操作、概率区间分割熵(PIPE)译码操作、指数哥伦布编码操作或另一类型的熵编码操作。视频编码器20可输出包含由熵编码单元118产生的经熵编码数据的位流。此外,根据本发明的实例,图6的视频编码器20可在位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素。
图7是说明经配置以实施本发明的技术的实例视频解码器30的框图。图7是出于解释的目的而提供,并且并不如本发明所广泛举例说明和描述来限制所述技术。出于解释的目的,本发明在HEVC译码的上下文中描述视频解码器30。然而,本发明的技术可适用于其它译码标准或方法。
在图7的实例中,视频解码器30包含熵解码单元150、预测处理单元152、逆量化单元154、逆变换处理单元156、重构单元158、滤波器单元160以及经解码图片缓冲器162。预测处理单元152包含运动补偿单元164以及帧内预测处理单元166。在其它实例中,视频解码器30可以包含更多、更少或不同的功能组件。
经译码图片缓冲器(CPB)151可接收且存储位流的经编码视频数据(例如,NAL单元)。CPB151可包括存储器或其它类型的计算机可读数据存储媒体。熵解码单元150可从CPB151接收NAL单元,并可剖析NAL单元以从位流获得语法元素。熵解码单元150可对NAL单元中的经熵编码的语法元素进行熵解码。预测处理单元152、逆量化单元154、逆变换处理单元156、重构单元158及滤波器单元160可基于从位流获得的语法元素产生经解码的视频数据。
位流的NAL单元可以包含经译码的切片NAL单元。作为解码位流的部分,熵解码单元150可获得来自经译码切片NAL单元的语法元素且对其进行熵解码。经译码的切片中的每一者可以包含切片标头以及切片数据。切片标头可含有关于切片的语法元素。此外,根据本发明的一或多个实例,熵解码单元150可从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素。
除了从位流获得语法元素之外,视频解码器30可对CU执行解码操作。通过对CU执行解码操作,视频解码器30可重构CU的译码块。
作为对CU执行解码操作的部分,逆量化单元154可逆量化(即,解量化)与CU的TU相关联的系数块。逆量化单元154可使用与TU的CU相关联的QP值来确定量化的程度,及同样逆量化单元154将应用的逆量化的程度。也就是说,可以通过调整当量化变换系数时所使用的QP的值来控制压缩比,即用以表示原始序列以及经压缩的序列的位的数目的比率。压缩比还可以取决于所采用的熵译码的方法。
在逆量化单元154逆量化系数块之后,逆变换处理单元156可以将一或多个逆变换应用于系数块以便产生与TU相关联的残余块。举例来说,逆变换处理单元156可将逆DCT、逆整数变换、逆卡忽南-拉维变换(KLT)、逆旋转变换、逆定向变换或另一逆变换应用于系数块。
如果使用帧内预测对PU进行编码,则帧内预测处理单元166可以执行帧内预测以产生用于PU的预测性块。帧内预测处理单元166可以使用帧内预测模式,以基于空间上相邻的PU的预测块产生用于PU的预测性亮度块、Cb块以及Cr块。帧内预测处理单元166可以基于从位流解码的一或多个语法元素来确定用于PU的帧内预测模式。
预测处理单元152可基于从位流提取的语法元素来构造第一参考图片列表(RefPicList0)及第二参考图片列表(RefPicList1)。此外,如果PU是使用帧间预测编码,那么熵解码单元150可获得PU的运动信息。运动补偿单元164可以基于PU的运动信息确定用于PU的一或多个参考区。运动补偿单元164可以基于PU的一或多个参考块的样本产生PU的预测性亮度块、Cb块以及Cr块。
重构单元158可使用来自与CU的TU相关联的亮度、Cb和Cr变换块以及所述CU的PU的预测性亮度、Cb和Cr块的残余值(即,在适用时的帧内预测数据或帧间预测数据)来重构所述CU的亮度、Cb和Cr译码块。例如,重构单元158可以将亮度变换块、Cb变换块以及Cr变换块的样本添加到预测性亮度块、Cb块以及Cr块的对应样本以重构CU的亮度译码块、Cb译码块以及Cr译码块。在一些实例中,重构单元158可包括求和器。
滤波器单元160可执行解块操作以减少与CU的译码块(例如,CU的亮度、Cb及Cr译码块)相关联的成块假象。视频解码器30可将CU的译码块(例如,亮度、Cb及Cr译码块)存储在经解码图片缓冲器162中。经解码图片缓冲器162可包括存储器或其它类型的计算机可读数据存储媒体。经解码图片缓冲器162可以提供参考图片用于后续运动补偿、帧内预测以及在显示装置(例如图1的显示装置32)上的呈现。例如,视频解码器30可以基于经解码的片缓冲器162中的块(例如,亮度块、Cb块以及Cr块)对其它CU的PU执行帧内预测或帧间预测操作。以此方式,视频解码器30可从位流获得有效系数块的变换系数层级,逆量化所述变换系数层级,将一或多个变换应用于所述变换系数层级以产生变换块,至少部分基于所述变换块而产生译码块,且输出所述译码块用于显示。
如上文所指出,本发明的一些实例可提供使RefPicList1中不包含视图间/层间参考图片的一或多个语法元素。举例来说,例如VPS等高级语法结构可包含inter_view_l1_disable_flag语法元素。inter_view_l1_disable_flag语法元素可指示适用的RefPicList1是否可包含视图间/层间参考图片。在此实例中,适用的RefPicList1可为参考高级语法结构的经译码图片/层表示的RefPicList1。此外,在此实例中,当inter_view_l1_disable_flag语法元素指示适用的RefPicList1可包含视图间/层间参考图片时,切片的切片标头可包含指示适用于所述切片的RefPicList1中的视图间/层间参考图片的开始位置的语法元素(例如,inter_view_ref_start_position_l1_plus)。以下表4展示根据此实例的实例切片标头语法。在表4中,带下划线的文字指示对MV-HEVC工作草案2和/或3D-HEVC测试模型描述草案2添加的文字。
表4
在表4中,inter_view_ref_start_position_l0_plus1语法元素具有与JCT3V-C0060中的inter_view_ref_start_position_plus1语法元素的语义相同的语义,如上文所描述。此外,在表4中,inter_view_ref_start_position_l1_plus1语法元素具有与JCT3V-C0060中的inter_view_ref_start_position_plus1的语义相似的语义,但适用于RefPicList1。因此,在表4的实例中,视频编码器20可用信号表示视图间/层间参考图片将插入在RefPicList1中的任意位置而不必用信号表示任何RPLM语法元素(例如,list_entry_l1语法元素)。因此,inter_view_ref_start_position_l1_plus1语法元素的使用可减少位流的大小。此外,单个inter_view_l1_disable_flag语法元素可适用于多个图片,且当适用于图片的inter_view_l1_disable_flag语法元素是0时视频编码器20仅用信号表示图片的切片的inter_view_ref_start_position_l1_plus1语法元素。因此,inter_view_l1_disable_flag语法元素的使用可通过减少用信号表示的inter_view_ref_start_position_l1_plus1语法元素的数目而进一步减少位流的大小。
因此,在表4的实例中,inter_view_l1_disable_flag可为第一语法元素且视频编码器20可在位流中用信号表示第二语法元素(例如,inter_view_ref_start_position_l0_plus1)。所述第二语法元素可指示用于当前视图分量/层表示的RefPicList0中的视图间/层间参考图片的开始位置。类似地,视频解码器30可从位流获得第二语法元素(例如,inter_view_ref_start_position_l0_plus1)。此外,在表4的实例中,当inter_view_l1_disable_flag指示视图间/层间参考图片包含在当前视图分量/层表示的第一参考图片列表(例如,RefPicList1)中时,视频译码器可从位流获得第三语法元素(例如,inter_view_ref_start_position_l1_plus1)。所述第三语法元素可指示用于当前视图分量/层表示的第一参考图片列表(例如,RefPicList1)中的视图间/层间参考图片的开始位置。
此外,本发明的技术可修改MV-HEVC工作草案2和/或3D-HEVC测试模型描述草案2中界定的参考图片列表修改语义。如本发明中在别处所描述,视频解码器30可基于list_entry_l0语法元素和list_entry_l1语法元素执行RPLM。此外,如本发明中在别处所描述,视频解码器30可基于NumPocTotalCurr变量确定每一list_entry_l0语法元素和每一list_entry_l1语法元素的长度(例如,位数目)。在HEVC工作草案8中,将NumPocTotalCurr设定成等于NumPocStCurrBefore+NumPocStCurrAfter+NumPocLtCurr。NumPocStCurrBefore指示RefPicSetStBefore中的元素的数目。NumPocStCurrAfter指示RefPicSetStAfter中的元素的数目。NumPocLtCurr指示RefPicSetLtCurr中的元素的数目。
然而,在MV-HEVC和3D-HEVC中,参考图片列表可包含视图间/层间参考图片。因此,NumPocTotalCurr的定义可为不同的。在以下文字中,带下划线的文字添加到MV-HEVC工作草案2和/或3D-HEVC测试模型描述草案2。如以下文字中示出,可如下导出变量NumPocTotalCurr。
将变量NumPocTotalCurr设定成等于NumPocStCurrBefore+NumPocStCurrAfter+
NumPocLtCurr+NumIvCurr,其中NumIvCurr是视图间/层间RPS中的条目的数目。
此外,在此实例中,list_entry_l0[i]和list_entry_l1[i]语法元素可具有以下语义:
list_entry_l0[i]指定RefPicListTemp0中的参考图片的索引将放置在参考图片列表0的当前位置。list_entry_l0[i]语法元素的长度是Ceil(Log2(NumPocTotalCurr))个位。list_entry_l0[i]的值将在0到NumPocTotalCurr-1(包含性)的范围内。如果语法元素list_entry_l0[i]不存在,那么推断其等于0。
list_entry_l1[i]指定RefPicListTemp1中的参考图片的索引将放置在参考图片列表1的当前位置。list_entry_l1[i]语法元素的长度是Ceil(Log2(NumPocTotalCurr))个位。list_entry_l1[i]的值将在0到NumPocTotalCurr-1(包含性)的范围内。如果语法元素list_entry_l1[i]不存在,那么推断其等于0。
在此实例中用于list_entry_l0[i]和list_entry_l1[i]语法元素的语义可类似于HEVC工作草案8中针对list_entry_l0[i]和list_entry_l1[i]语法元素界定的那些语义。然而,因为此实例提供NumPocTotalCurr的不同定义,所以list_entry_l0[i]和list_entry_l1[i]语法元素的长度和范围可与HEVC工作草案8中不同。
此外,本发明的一些实例可修改MV-HEVC和/或3D-HEVC的RPLM过程。举例来说,如MV-HEVC工作草案2和3D-HEVC测试模型描述草案2中界定的MV-HEVC和3D-HEVC的RPLM过程中的变量NumPocTotalCurr的定义可经修改以使得NumPocTotalCurr取决于变量NumIvCurr。如上文所指出,NumIvCurr可为视图间/层间RPS中的条目的数目。具体来说,在本发明的一个实例中,关于list_entry_l0语法元素的语义,变量NumPocTotalCurr可经界定为:
将变量NumPocTotalCurr设定成等于NumPocStCurrBefore+NumPocStCurrAfter+NumPocLtCurr+NumIvCurr。
此外,在此实例中,list_entry_l0[i]语法元素可具有以下语义:
list_entry_l0[i]指定RefPicListTemp0中的参考图片的索引将放置在参考图片列表0的当前位置。list_entry_l0[i]语法元素的长度是Ceil(Log2(NumPocTotalCurr))个位。list_entry_l0[i]的值将在0到NumPocTotalCurr-1(包含性)的范围内。如果语法元素list_entry_l0[i]不存在,那么推断其等于0。
根据此实例,如果inter_view_l1_disable_flag是1,那么关于list_entry_l1[i]语法元素的语义,进一步修改变量NumPocTotalCurr以使得NumPocTotalCurr等于NumPocStCurrBefore+NumPocStCurrAfter+NumPocLtCurr。在此实例中,list_entry_l1[i]可具有以下语义:
list_entry_l1[i]指定RefPicListTemp1中的参考图片的索引将放置在参考图片列表1的当前位置。list_entry_l1[i]语法元素的长度是Ceil(Log2(NumPocTotalCurr))个位。list_entry_l1[i]的值将在0到NumPocTotalCurr-1(包含性)的范围内。如果语法元素list_entry_l1[i]不存在,那么推断其等于0。
在本发明的另一实例中,如下修改MV-HEVC工作草案2和/或3D-HEVC测试模型描述草案2中界定的list_entry_lX[i](其中X等于0或1)的语义。在list_entry_lX[i]的语义的以下描述中,带下划线的文字是添加到MV-HEVC工作草案2和/或3D-HEVC测试模型描述草案2中的list_entry_l0和list_entry_l1的语义的文字。
list_entry_lX[i]指定RefPicListTempX中的参考图片的索引将放置在参考图片列表X的当前位置。list_entry_lX[i]语法元素的长度是Ceil(Log2(NumPocTotalCurrLX))个位。list_entry_lX[i]的值将在0到NumPocTotalCurrLX-1(包含性)的范围内。如果语法元素list_entry_lX[i]不存在,那么推断其等于0。当inter_view_l1_disable_flag等于1 时,(NumPocTotalCurrL1-NumPocTotalCurrL0)等于NumIvCurr。如下导出 NumPocTotalCurrLX:
NumPocTotalCurrLX=NumPocStCurrBefore+NumPocStCurrAfter+NumPocLtCurr+ ((inter_view_l1_disable_flag&&X)?0:NumIvCurr)。
如用于list_entry_l1(和list_entry_lX)的实例语义中示出,每一list_entry_l1语法元素的长度取决于RefPicList1中的参考图片的总数(即,NumPocTotalCurr)。因此,如果RefPicList1中存在较少参考图片,那么list_entry_l1语法元素中的每一者包含较少位。如果inter_view_l1_disable_flag是1,那么RefPicList1中存在较少参考图片,因为RefPicList1并不包含视图间/层间参考图片。因此,如果适用于图片的inter_view_l1_disable_flag是1,那么用于图片的RefPicList1的每一list_entry_l1语法元素可包含较少位。
因此,视频解码器30可从位流获得用于修改参考图片列表的参考图片列表修改(RPLM)语法元素(例如,语法元素)且当inter_view_l1_disable_flag指示视图间/层间参考图片从不包含在参考图片列表中时,RPLM语法元素包含比当语法元素指示视图间/层间参考图片包含在参考图片列表中时少的位。类似地,视频编码器20可在位流中用信号表示用于修改参考图片列表的RPLM语法元素(例如,list_entry_l1语法元素)且当inter_view_l1_disable_flag指示视图间/层间参考图片从不包含在参考图片列表中时,RPLM语法元素中的每一者可包含比当语法元素指示视图间/层间参考图片包含在参考图片列表中时少的位。至少以此方式,inter_view_l1_disable_flag的使用可减少位流的大小。
图8A是说明根据本发明的实例的视频编码器20的操作的流程图。在图8A的实例中,视频编码器20可在包括视频数据的经编码表示的位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素(200)。在一些实例中,视频编码器20可在VPS中用信号表示inter_view_l1_disable_flag语法元素。在一些此些实例中,inter_view_l1_disable_flag语法元素可针对CVS的每一相应视图分量/层表示指示视图间/层间参考图片是否一直包含相应视图分量/层表示的相应参考图片列表。此外,在一些此些实例中,视频编码器20可在位流中针对参考VPS的CVS的每一相应视图分量/层表示而用信号表示指示所述相应视图分量/层表示的相应第二参考图片列表(例如,RefPicList0)中的视图间/层间参考图片的开始位置的相应第一语法元素(例如,inter_view_ref_start_position_l0_plus1)。
在其它实例中,视频编码器20可在位流中用信号表示来自多个层的每一相应层的inter_view_l1_disable_flag语法元素。在此些实例中,用于相应层的inter_view_l1_disable_flag语法元素,所述语法元素指示视图间/层间参考图片是否一直包含在相应层中的视图分量/层表示的相应参考图片列表中。此外,在一些实例中,视频编码器20可在位流中针对所述多个层中的每一者的每一相应视图分量/层表示用信号表示指示所述相应视图分量/层表示的相应额外参考图片列表中的视图间/层间参考图片的开始位置的相应额外语法元素(例如,inter_view_ref_start_position_l1_plus1)。
另外,视频编码器20可对当前视图分量/层表示进行编码(202)。如本发明的各种实例中描述,当inter_view_l1_disable_flag语法元素是1时,视频编码器20并不使用参考图片列表(例如,RefPicList1)中的视图间/层间参考图片来编码当前视图分量/层表示。
图8B是说明根据本发明的实例的视频解码器30的操作的流程图。在图8B的实例中,视频解码器30从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素(例如,inter_view_l1_disable_flag)(210)。在一些实例中,当前视图分量/层表示可为参考VPS的CVS的部分。在此些实例中,视频解码器30可从VPS获得语法元素。此外,在此些实例中,语法元素可针对CVS的每一相应视图分量/层表示指示视图间/层间参考图片是否一直包含相应视图分量/层表示的相应参考图片列表。在一些实例中,熵解码单元150(图7)可从位流获得语法元素。
在其它实例中,当前视图分量/层表示处于位流中的多个层中的特定层中。在此些实例中,视频解码器30可针对来自所述多个层的每一相应层获得用于所述相应层的相应语法元素,所述相应语法元素指示视图间/层间参考图片是否一直包含在所述相应层中的视图分量/层表示的相应参考图片列表中。
视频解码器30可对当前视图分量/层表示进行解码(212)。当语法元素指示视图间/层间参考图片从不包含在参考图片列表中时,视频解码器30对当前视图分量/层表示进行解码而不使用参考图片列表中的视图间/层间参考图片。
图9是说明根据本发明的实例的用于剖析切片标头的实例操作的流程图。如上文关于表4的实例所指出,切片标头可自适应地包含指示RefPicList1中的视图间/层间参考图片的开始位置的语法元素(即,inter_view_ref_start_position_l1_plus1语法元素)。
具体来说,在图9的实例中,视频解码器30可从位流获得inter_view_l1_disable_flag(230)。在一些实例中,视频解码器30可从VPS获得inter_view_l1_disable_flag。在其它实例中,视频解码器30可从SPS或另一语法结构获得inter_view_l1_disable_flag。举例来说,当视频编码器20用信号表示每一视图/层的inter_view_l1_disable_flag时,视频编码器20可在适用于所述层中的每一者内的CVS的SPS中用信号表示inter_view_l1_disable_flags。在一些实例中,熵解码单元150(图7)可从位流获得语法元素。
此外,在图9的实例中,视频解码器30可剖析当前图片的切片的切片标头以获得切片标头的语法元素。在一些实例中,熵解码单元150可剖析切片标头。作为剖析切片标头的部分,视频解码器30可确定切片是否为I切片(232)。换句话说,视频解码器30可确定所述切片中是否允许帧间预测。响应于确定切片不是I切片(即,块是P或B切片)(232的“是”),视频解码器30可从切片标头获得指示当前图片的RefPicList0中的视图间/层间参考图片的开始位置的语法元素(例如,inter_view_ref_start_position_l0_plus1)(234)。
因此,在其中当前视图分量/层表示是参考VPS的CVS的部分且inter_view_l1_disable_flag在VPS中用信号表示的一些实例中,视频解码器30可针对CVS的每一相应视图分量/层表示获得指示所述相应视图分量/层表示的相应第二参考图片列表中的视图间/层间参考图片的开始位置的相应额外语法元素(例如,inter_view_ref_start_position_l0_plus1)。
此外,在其中针对位流的多个层中的每一层用信号表示inter_view_l1_disable_flag的一些实例中,视频解码器30可针对所述多个层中的每一者的每一相应视图分量/层表示获得指示所述相应视图分量/层表示的相应额外参考图片列表中的视图间/层间参考图片的开始位置的相应额外语法元素(例如,inter_view_ref_start_position_l0_plus1)。
此外,视频解码器30可基于inter_view_l1_disable_flag确定视图间/层间参考图片是否一直包含在当前图片的RefPicList1中(236)。响应于确定视图间/层间参考图片包含在当前图片的RefPicList1中“236的“是),视频解码器30可从切片标头获得指示RefPicList1中的视图间/层间参考图片的开始位置的语法元素(例如,inter_view_ref_start_position_l1_plus1)(238)。
随后,或响应于确定切片是I切片(232的“是”),或响应于确定视图间/层间参考图片从不包含在当前图片的RefPicList1中(236的“否”),视频解码器30可获得切片标头的额外语法元素(如果存在)(240)。
图10是说明根据本发明的实例的基于相邻块的视差向量(NBDV)导出过程的流程图。在图10的实例中,视频译码器(例如,视频编码器20或视频解码器30)可确定当前空间相邻块是否具有RefPicList0视差运动向量(250)。当前空间相邻块可为当前块的空间相邻块中的一者。响应于确定当前空间相邻块具有RefPicList0视差运动向量(250的“是”),视频译码器可将当前空间相邻块的RefPicList0视差运动向量转换为当前块的视差向量(252)。视频译码器可随后结束NBDV导出过程。
另一方面,响应于确定当前空间相邻块并不具有RefPicList0视差运动向量(252的“否”),视频译码器可存储用于当前空间相邻块的IDV(254)。在一些实例中,视频译码器可仅在当前空间相邻块的预测模式是使用跳过模式译码时才存储用于当前空间相邻块的IDV。在一些实例中,视频译码器可将IDV存储在经解码图片缓冲器(例如,经解码图片缓冲器116或经解码图片缓冲器162)中。此外,视频译码器可确定inter_view_l1_disable_flag是否指示视图间/层间参考图片一直包含在当前空间相邻块的RefPicList1中(256)。
响应于确定inter_view_l1_disable_flag指示视图间/层间参考图片可包含在含有当前空间相邻块的图片的RefPicList1(即,当前空间相邻块的RefPicList1)中(256的“是”),视频译码器可确定当前空间相邻块是否具有RefPicList1视差运动向量(258)。响应于确定当前空间相邻块具有RefPicList1视差运动向量(258的“是”),视频译码器可将当前空间相邻块的RefPicList1视差运动向量转换为当前块的视差向量(260)。视频译码器可随后结束NBDV导出过程。
另一方面,响应于确定当前空间相邻块并不具有RefPicList1视差运动向量(258的“否”),视频译码器可存储用于当前空间相邻块的IDV(262)。在一些实例中,视频译码器可仅在当前空间相邻块的预测模式是使用跳过模式译码时才存储用于当前空间相邻块的IDV。因此,视频译码器可潜在地存储用于当前空间相邻块的两个IDV。在一些实例中,视频译码器可将IDV存储在经解码图片缓冲器(例如,经解码图片缓冲器116或经解码图片缓冲器162)中。
响应于确定inter_view_l1_disable_flag指示视图间/层间参考图片从不包含在当前空间相邻块的RefPicList1中(256的“否”),或在262中存储用于当前空间相邻块的IDV之后,视频译码器可确定是否存在任何剩余空间相邻块待检查(264)。响应于确定存在一或多个剩余空间相邻块待检查(264的“是”),视频译码器可以剩余空间相邻块中的一者作为当前空间相邻块来重复动作252-264。因此,根据本发明的此实例,当inter_view_l1_disable_flag指示视图间/层间参考图片从不包含在当前空间相邻块的RefPicList1中时,视频译码器存储用于当前空间相邻块的至多一个IDV。
此外,响应于确定不存在剩余空间相邻块(264的“否”),视频译码器可确定当前时间相邻块是否具有RefPicList0视差运动向量(266)。当前时间相邻块可为当前块的时间相邻块中的一者。响应于确定当前时间相邻块具有RefPicList0视差运动向量(266的“是”),视频译码器可将当前时间相邻块的RefPicList0视差运动向量转换为当前块的视差向量(268)。视频译码器可随后结束NBDV导出过程。
另一方面,响应于确定当前时间相邻块并不具有RefPicList0视差运动向量(266的“否”),视频译码器可存储用于当前时间相邻块的IDV(270)。在一些实例中,视频译码器可仅在当前时间相邻块的预测模式是使用跳过模式译码时才存储用于当前时间相邻块的IDV。在一些实例中,视频译码器可将IDV存储在经解码图片缓冲器(例如,经解码图片缓冲器116或经解码图片缓冲器162)中。此外,视频译码器可确定inter_view_l1_disable_flag是否指示视图间/层间参考图片一直包含在当前时间相邻块的RefPicList1中(272)。响应于确定inter_view_l1_disable_flag指示视图间/层间参考图片可包含在当前时间相邻块的RefPicList1中(272的“是”),视频译码器可确定当前时间相邻块是否具有RefPicList1视差运动向量(274)。响应于确定当前时间相邻块具有RefPicList1视差运动向量(274的“是”),视频译码器可将当前时间相邻块的RefPicList1视差运动向量转换为当前块的视差向量(276)。视频译码器可随后结束NBDV导出过程。
另一方面,响应于确定当前时间相邻块并不具有RefPicList1视差运动向量(274的“否”),视频译码器可存储用于当前时间相邻块的IDV(278)。在一些实例中,视频译码器可仅在当前时间相邻块的预测模式是使用跳过模式译码时才存储用于当前时间相邻块的IDV。因此,视频译码器可潜在地存储用于当前时间相邻块的两个IDV。在一些实例中,视频译码器可将IDV存储在经解码图片缓冲器(例如,经解码图片缓冲器116或经解码图片缓冲器162)中。
响应于确定inter_view_l1_disable_flag指示视图间/层间参考图片从不包含在当前时间相邻块的RefPicList1中(272的“否”),或在(278)中存储用于当前时间相邻块的IDV之后,视频译码器可确定是否存在任何剩余时间相邻块待检查(280)。响应于确定存在一或多个剩余时间相邻块待检查(280的“是”),视频译码器可以剩余时间相邻块中的一者作为当前时间相邻块来重复动作266-280。因此,根据本发明的此实例,当inter_view_l1_disable_flag指示视图间/层间参考图片从不包含在当前时间相邻块的RefPicList1中时,视频译码器存储用于当前时间相邻块的至多一个IDV。
响应于确定不存在剩余时间相邻块(280的“否”),视频译码器可确定当前相邻块是否具有IDV(282)。当前相邻块可为当前块的空间相邻块中的一者或空间时间相邻块中的一者。在一些实例中,视频译码器在检查IDV的时间相邻块中的任一者之前检查IDV的空间相邻块。响应于确定当前空间相邻块具有IDV(282的“是”),视频译码器可将当前相邻块的IDV转换为当前块的视差向量(284)。然而,响应于确定当前相邻块并不具有IDV(282的“否”),视频译码器可确定是否存在任何剩余相邻块(286)。响应于确定存在一或多个剩余相邻块待检查(286的“是”),视频译码器可以剩余相邻块中的一者作为当前相邻块来重复动作282-286。另一方面,响应于确定不存在剩余相邻块(286的“否”),视频译码器可确定当前块的视差向量不可用(288)。
因此,如图10的实例中示出,当inter_view_l1_disable_flag指示RefPicList1从不包含视图间/层间参考图片时,从不检查运动信息。因此,图10的NBDV导出过程的复杂性可减小两倍。在一些实例中,图10的操作可由视频编码器20的帧间预测处理单元120(图6)或视频解码器30的预测处理单元152(图7)执行。
应认识到,取决于实例,本文中所描述的方法中的任一者的某些动作或事件可用不同顺序执行、可添加、合并或全部省略(例如,实践所述方法并不需要所有的所描述动作或事件)。此外,在某些实例中,可(例如)通过多线程处理、中断处理或多个处理器同时而非顺序地执行动作或事件。
上文实例中的任一者的任何细节可与符合本发明的其它实例组合。在一或多个实例中,所描述功能可以硬件、软件、固件或其任何组合来实施。如果用软件实施,则所述功能可以作为一或多个指令或代码在计算机可读媒体上存储或传输,并且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包含任何促进将计算机程序从一处传送到另一处的媒体(例如,根据一种通信协议)的通信媒体。以此方式,计算机可读媒体通常可对应于(1)有形计算机可读存储媒体,其是非暂时性的,或(2)通信媒体,例如信号或载波。数据存储媒体可以是可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用的媒体。计算机程序产品可包含计算机可读媒体。
所属领域的技术人员将认识到,结合本文揭示的方法、系统和设备描述的各种说明性逻辑块、模块、电路和算法步骤可实施为电子硬件、由处理器执行的计算机软件,或两者的组合。为清楚说明硬件与软件的此可互换性,上文已大体上关于其功能性而描述了各种说明性组件、块、模块、电路和步骤。此种功能性是实施为硬件还是软件取决于特定应用及施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但此类实施方案决策不应被解释为会导致脱离本发明的范围。
借助于实例而非限制,此类计算机可读存储媒体可包含RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或任何其它可用来存储指令或数据结构的形式的期望程序代码并且可由计算机存取的媒体。并且,任何连接被适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴电缆、光纤缆线、双绞线、DSL或例如红外线、无线电及微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包括连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文所使用,磁盘和光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。上文各者的组合也应包含在计算机可读媒体的范围内。
指令可以由一或多个处理器执行,所述一或多个处理器例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文所述的功能性可以在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。并且,可将所述技术完全实施于一或多个电路或逻辑元件中。
本发明的技术可在广泛多种装置或设备中实施,包括无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示技术的装置的功能方面,但未必需要通过不同硬件单元实现。实际上,如上文所描述,各种单元可以配合合适的软件和/或固件组合在一个编解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包括如上文所描述的一或多个处理器。
结合本文中所揭示的实施例而描述的方法或算法的步骤可直接体现于硬件、由处理器执行的软件模块或其两者的组合中。软件模块可驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可装卸磁盘、CD-ROM,或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息及将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。处理器及存储媒体可驻留于ASIC中。ASIC可驻留于用户终端中。在替代例中,处理器及存储媒体可作为离散组件驻留于用户终端中。已描述各种实例。这些及其它实例在所附权利要求书的范围内。
Claims (27)
1.一种用于对视频数据进行解码的方法,所述方法包括:
从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及
对所述当前视图分量/层表示进行解码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,在不使用所述参考图片列表中的视图间/层间参考图片的情况下对所述当前视图分量/层表示进行解码。
2.根据权利要求1所述的方法,其中对所述当前视图分量/层表示进行解码包括:
执行视差向量导出过程,所述视差向量导出过程检查与所述当前视图分量/层表示的当前块相邻的一或多个块以便确定所述当前块的视差向量,
其中执行所述视差向量导出过程包括:当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,不检查对应于所述当前视图分量/层表示的所述参考图片列表的运动信息。
3.根据权利要求1所述的方法,其中所述当前视图分量/层表示处于所述位流中的多个层中的特定层中,且所述方法包括:
针对来自所述多个层的每一相应层获得所述相应层的相应语法元素,所述相应语法元素指示视图间/层间参考图片是否一直包含在所述相应层中的视图分量/层表示的相应参考图片列表中。
4.根据权利要求1所述的方法,其进一步包括从所述位流获得用于修改所述参考图片列表的参考图片列表修改RPLM语法元素,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,所述RPLM语法元素中的每一者包含比当所述语法元素指示视图间/层间参考图片包含在所述参考图片列表中时少的位。
5.根据权利要求1所述的方法,其中所述语法元素是第一语法元素且所述参考图片列表是第一参考图片列表,且所述方法进一步包括从所述位流获得第二语法元素,所述第二语法元素指示所述当前视图分量/层表示的第二不同参考图片列表中的视图间/层间参考图片的开始位置。
6.根据权利要求5所述的方法,其中当所述语法元素指示视图间/层间参考图片包含在所述当前视图分量/层表示的所述第一参考图片列表中时,从所述位流获得第三语法元素,所述第三语法元素指示所述当前视图分量/层表示的所述第一参考图片列表中的视图间/层间参考图片的开始位置。
7.根据权利要求1所述的方法,其中所述当前视图分量/层表示是参考视频参数集VPS的经译码视频序列CVS的部分,且所述方法包括:
从所述VPS获得所述语法元素,所述语法元素针对所述CVS的每一相应视图分量/层表示指示视图间/层间参考图片是否一直包含在所述相应视图分量/层表示的相应参考图片列表中。
8.根据权利要求1所述的方法,其中对所述当前视图分量/层表示进行解码包括:
执行视差向量导出过程,所述视差向量导出过程检查与所述当前视图分量/层表示的当前块相邻的一或多个块以便确定所述当前块的视差向量,
其中执行所述视差向量导出过程包括:当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,存储与所述当前块相邻的所述一或多个块中的每一者的至多一个隐式视差向量。
9.根据权利要求1所述的方法,其中:
对所述当前视图分量/层表示进行解码包括:
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,从不在候选者列表中包含对应于视图间/层间参考图片的候选者;以及
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,基于所述候选者列表中的特定候选者而确定所述当前视图分量/层表示的当前块的运动向量。
10.根据权利要求1所述的方法,其进一步包括:
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,避免来自所述参考图片列表的参考图片是否为视图间/层间参考图片的检查;以及
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,在所述当前视图分量/层表示的当前译码单元CU的预测单元PU具有指示所述参考图片列表中的特定参考图片中的位置的运动向量的情况下启用用于所述参考图片列表的残余预测符产生过程而无需检查所述特定参考图片的类型。
11.根据权利要求1所述的方法,其进一步包括:
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,仅使用插入到不同参考图片列表中的视图间/层间参考图片来执行视图合成预测;以及
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,在构造所述参考图片列表的初始版本时不考虑视图间/层间参考图片集或视图间/层间参考图片。
12.一种对视频数据进行编码的方法,所述方法包括:
在位流中用信号表示指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及
对所述当前视图分量/层表示进行编码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,不使用所述参考图片列表中的视图间/层间参考图片对所述当前视图分量/层表示进行编码。
13.根据权利要求12所述的方法,
其中所述当前视图分量/层表示是参考视频参数集VPS的经译码视频序列CVS的部分,且所述方法包括:
在所述位流中用信号表示所述VPS中的所述语法元素,所述语法元素针对所述CVS的每一相应视图分量/层表示指示视图间/层间参考图片是否一直包含在所述相应视图分量/层表示的相应参考图片列表中。
14.根据权利要求12所述的方法,其中所述当前视图分量/层表示处于所述位流中的多个层中的特定层中,且所述方法包括:
在所述位流中针对来自所述多个层的每一相应层用信号表示所述相应层的相应语法元素,所述相应语法元素指示视图间/层间参考图片是否一直包含在所述相应层中的视图分量/层表示的相应参考图片列表中。
15.根据权利要求12所述的方法,其进一步包括在所述位流中用信号表示用于修改所述参考图片列表的参考图片列表修改RPLM语法元素,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,所述RPLM语法元素中的每一者包含比当所述语法元素指示视图间/层间参考图片包含在所述参考图片列表中时少的位。
16.根据权利要求12所述的方法,其中所述语法元素是第一语法元素且所述参考图片列表是第一参考图片列表,且所述方法进一步包括在所述位流中用信号表示第二语法元素,所述第二语法元素指示所述当前视图分量/层表示的第二不同参考图片列表中的视图间/层间参考图片的开始位置。
17.一种视频解码装置,其包括存储媒体和耦合到所述存储媒体的一或多个处理器,所述一或多个处理器经配置以:
从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素;以及
对所述当前视图分量/层表示进行解码,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,在不使用所述参考图片列表中的视图间/层间参考图片的情况下对所述当前视图分量/层表示进行解码。
18.根据权利要求17所述的视频解码装置,其中所述一或多个处理器经配置以:
执行视差向量导出过程,所述视差向量导出过程检查与所述当前视图分量/层表示的当前块相邻的一或多个块以便确定所述当前块的视差向量,
其中执行所述视差向量导出过程包括:当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,不检查对应于所述当前视图分量/层表示的所述参考图片列表的运动信息。
19.根据权利要求17所述的视频解码装置,其中所述当前视图分量/层表示处于所述位流中的多个层中的特定层中,且所述一或多个处理器经配置以:
针对来自所述多个层的每一相应层获得所述相应层的相应语法元素,所述相应语法元素指示视图间/层间参考图片是否一直包含在所述相应层中的视图分量/层表示的相应参考图片列表中。
20.根据权利要求17所述的视频解码装置,其中所述一或多个处理器进一步经配置以从所述位流获得用于修改所述参考图片列表的参考图片列表修改RPLM语法元素,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,所述RPLM语法元素中的每一者包含比当所述语法元素指示视图间/层间参考图片包含在所述参考图片列表中时少的位。
21.根据权利要求17所述的视频解码装置,其中所述语法元素是第一语法元素且所述参考图片列表是第一参考图片列表,且所述一或多个处理器经配置以从所述位流获得第二语法元素,所述第二语法元素指示所述当前视图分量/层表示的第二不同参考图片列表中的视图间/层间参考图片的开始位置。
22.根据权利要求17所述的视频解码装置,其中所述当前视图分量/层表示是参考视频参数集VPS的经译码视频序列CVS的部分,且所述一或多个处理器经配置以:
从所述VPS获得所述语法元素,所述语法元素针对所述CVS的每一相应视图分量/层表示指示视图间/层间参考图片是否一直包含在所述相应视图分量/层表示的相应参考图片列表中。
23.根据权利要求17所述的视频解码装置,其中所述一或多个处理器经配置以:
执行视差向量导出过程,所述视差向量导出过程检查与所述当前视图分量/层表示的当前块相邻的一或多个块以便确定所述当前块的视差向量,
其中执行所述视差向量导出过程包括:当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,存储与所述当前块相邻的所述一或多个块中的每一者的至多一个隐式视差向量。
24.根据权利要求17所述的视频解码装置,其中所述一或多个处理器经配置以:
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,从不在候选者列表中包含对应于视图间/层间参考图片的候选者;以及
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,基于所述候选者列表中的特定候选者而确定所述当前视图分量/层表示的当前块的运动向量。
25.根据权利要求17所述的视频解码装置,其中所述一或多个处理器经配置以:
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,避免来自所述参考图片列表的参考图片是否为视图间/层间参考图片的检查;以及
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,在所述当前视图分量/层表示的当前译码单元CU的预测单元PU具有指示所述参考图片列表中的特定参考图片中的位置的运动向量的情况下启用用于所述参考图片列表的残余预测符产生过程而无需检查所述特定参考图片的类型。
26.根据权利要求17所述的视频解码装置,其中所述一或多个处理器经配置以:
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,仅使用插入到不同参考图片列表中的视图间/层间参考图片来执行视图合成预测;以及
当所述语法元素指示视图间/层间参考图片从不包含在所述当前视图分量/层表示的所述参考图片列表中时,在构造所述参考图片列表的初始版本时不考虑视图间/层间参考图片集或视图间/层间参考图片。
27.一种视频解码装置,其包括:
用于从位流获得指示视图间/层间参考图片是否一直包含在当前视图分量/层表示的参考图片列表中的语法元素的装置;以及
用于对所述当前视图分量/层表示进行解码的装置,其中当所述语法元素指示视图间/层间参考图片从不包含在所述参考图片列表中时,在不使用所述参考图片列表中的视图间/层间参考图片的情况下对所述当前视图分量/层表示进行解码。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361753876P | 2013-01-17 | 2013-01-17 | |
US61/753,876 | 2013-01-17 | ||
US14/157,401 | 2014-01-16 | ||
US14/157,401 US9277200B2 (en) | 2013-01-17 | 2014-01-16 | Disabling inter-view prediction for reference picture list in video coding |
PCT/US2014/012047 WO2014113669A1 (en) | 2013-01-17 | 2014-01-17 | Disabling inter-view prediction for reference picture list in video coding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105075267A true CN105075267A (zh) | 2015-11-18 |
Family
ID=51164825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480004963.7A Pending CN105075267A (zh) | 2013-01-17 | 2014-01-17 | 在视频译码中停用用于参考图片列表的视图间预测 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9277200B2 (zh) |
EP (1) | EP2946557A1 (zh) |
JP (1) | JP5992640B2 (zh) |
KR (1) | KR101718642B1 (zh) |
CN (1) | CN105075267A (zh) |
WO (1) | WO2014113669A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110677658A (zh) * | 2018-07-01 | 2020-01-10 | 北京字节跳动网络技术有限公司 | 基于优先级的非相邻Merge设计 |
CN113366843A (zh) * | 2018-12-20 | 2021-09-07 | 瑞典爱立信有限公司 | 恢复点的规范指示 |
CN115380538A (zh) * | 2020-04-02 | 2022-11-22 | 瑞典爱立信有限公司 | 基于双向图片条件的解码 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110650336B (zh) * | 2012-01-18 | 2022-11-29 | 韩国电子通信研究院 | 视频解码装置、视频编码装置和传输比特流的方法 |
KR20140121315A (ko) * | 2013-04-04 | 2014-10-15 | 한국전자통신연구원 | 참조 픽처 리스트를 이용한 다 계층 기반의 영상 부호화/복호화 방법 및 그 장치 |
WO2014166063A1 (en) * | 2013-04-09 | 2014-10-16 | Mediatek Inc. | Default vector for disparity vector derivation for 3d video coding |
KR101761523B1 (ko) * | 2013-10-17 | 2017-07-25 | 미디어텍 인크. | 멀티뷰 및 3차원 비디오 코딩시의 모션 정보 예측 및 상속 방법 |
CN115002455A (zh) * | 2015-06-05 | 2022-09-02 | 杜比实验室特许公司 | 图像编码和解码方法和图像解码设备 |
CN106358042B (zh) * | 2015-07-17 | 2020-10-09 | 恩智浦美国有限公司 | 使用视频图像的帧间预测的并行解码器 |
EP3345396A4 (en) * | 2015-09-01 | 2019-03-27 | Telefonaktiebolaget LM Ericsson (publ) | SPATIAL IMPROVEMENT OF TRANSFORMER BLOCKS |
US10742986B2 (en) * | 2015-11-09 | 2020-08-11 | Netflix, Inc. | High dynamic range color conversion correction |
CN109005412B (zh) * | 2017-06-06 | 2022-06-07 | 北京三星通信技术研究有限公司 | 运动矢量获取的方法及设备 |
CN111418207B (zh) | 2018-11-06 | 2024-04-19 | 北京字节跳动网络技术有限公司 | 依赖块尺寸的对运动信息的存储 |
US11553210B2 (en) | 2018-12-07 | 2023-01-10 | Interdigital Vc Holdings, Inc. | Managing coding tools combinations and restrictions |
US11902584B2 (en) | 2019-12-19 | 2024-02-13 | Tencent America LLC | Signaling of picture header parameters |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101641954A (zh) * | 2007-03-23 | 2010-02-03 | Lg电子株式会社 | 用于解码/编码视频信号的方法和装置 |
CN101690220A (zh) * | 2007-04-25 | 2010-03-31 | Lg电子株式会社 | 用于解码/编码视频信号的方法和装置 |
WO2012171442A1 (en) * | 2011-06-15 | 2012-12-20 | Mediatek Inc. | Method and apparatus of motion and disparity vector prediction and compensation for 3d video coding |
-
2014
- 2014-01-16 US US14/157,401 patent/US9277200B2/en not_active Expired - Fee Related
- 2014-01-17 CN CN201480004963.7A patent/CN105075267A/zh active Pending
- 2014-01-17 EP EP14703488.8A patent/EP2946557A1/en not_active Withdrawn
- 2014-01-17 WO PCT/US2014/012047 patent/WO2014113669A1/en active Application Filing
- 2014-01-17 JP JP2015553849A patent/JP5992640B2/ja not_active Expired - Fee Related
- 2014-01-17 KR KR1020157021852A patent/KR101718642B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101641954A (zh) * | 2007-03-23 | 2010-02-03 | Lg电子株式会社 | 用于解码/编码视频信号的方法和装置 |
CN101690220A (zh) * | 2007-04-25 | 2010-03-31 | Lg电子株式会社 | 用于解码/编码视频信号的方法和装置 |
WO2012171442A1 (en) * | 2011-06-15 | 2012-12-20 | Mediatek Inc. | Method and apparatus of motion and disparity vector prediction and compensation for 3d video coding |
Non-Patent Citations (4)
Title |
---|
ADARSH K. RAMASUBRAMONIAN,等: "AHG7: Reference picture list initialization for MV-HEVC", 《JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 * |
GLENN VAN WALLENDAEL,等: "Multi-loop Quality Scalability based on High Efficiency Video Coding", 《2012 PICTURE CODING SYMPOSIUM》 * |
LI ZHANG,等: "3D-CE5.h related: Advanced residual prediction for multiview coding", 《JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 * |
TZU-DER CHUANG,等: "AHG9: Inter-layer prediction flag and inter-layer syntax prediction flag", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110677658A (zh) * | 2018-07-01 | 2020-01-10 | 北京字节跳动网络技术有限公司 | 基于优先级的非相邻Merge设计 |
CN110677658B (zh) * | 2018-07-01 | 2022-07-12 | 北京字节跳动网络技术有限公司 | 基于优先级的非相邻Merge设计 |
US11595683B2 (en) | 2018-07-01 | 2023-02-28 | Beijing Bytedance Network Technology Co., Ltd. | Priority-based non-adjacent merge design |
CN113366843A (zh) * | 2018-12-20 | 2021-09-07 | 瑞典爱立信有限公司 | 恢复点的规范指示 |
US11956471B2 (en) | 2018-12-20 | 2024-04-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Normative indication of recovery point |
CN115380538A (zh) * | 2020-04-02 | 2022-11-22 | 瑞典爱立信有限公司 | 基于双向图片条件的解码 |
Also Published As
Publication number | Publication date |
---|---|
JP5992640B2 (ja) | 2016-09-14 |
EP2946557A1 (en) | 2015-11-25 |
US20140198181A1 (en) | 2014-07-17 |
US9277200B2 (en) | 2016-03-01 |
WO2014113669A1 (en) | 2014-07-24 |
KR20150106944A (ko) | 2015-09-22 |
KR101718642B1 (ko) | 2017-03-21 |
JP2016508678A (ja) | 2016-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104365105B (zh) | 视频译码中的外部图片 | |
TWI539796B (zh) | 視差向量推導 | |
CN105009586B (zh) | 多视图或3维视频译码中的视图间残余预测 | |
CN105379282B (zh) | 用于纹理译码的先进残余预测(arp)的方法和设备 | |
CN105052145A (zh) | 剖析三维视频译码中的语法元素 | |
CN105075267A (zh) | 在视频译码中停用用于参考图片列表的视图间预测 | |
TWI526027B (zh) | 視訊寫碼中之運動向量預測 | |
TWI551121B (zh) | 視訊寫碼中之視差向量改進 | |
CN105230022A (zh) | 使用基于相邻者的视差向量导出的用于3d视频译码的并行经导出视差向量 | |
CN104769949A (zh) | 用于视差向量导出的图片的选择 | |
CN105580372A (zh) | 用于3d视频译码的组合式双向预测合并候选者 | |
CN105794209B (zh) | 用于译码深度块的方法和装置 | |
CN104205846A (zh) | 用于三维视频译码的视图合成模式 | |
JP6370891B2 (ja) | 深さブロックの視差に基づく高度な深さインターコーディング | |
CN105122812A (zh) | 用于三维(3d)视频译码的高级合并模式 | |
CN104969551A (zh) | 可缩放及多视角视频译码中的高级残差预测 | |
CN105393538A (zh) | 用于3d-hevc的简化高级运动预测 | |
CN106105212A (zh) | 简化的子预测单元(sub‑pu)运动参数继承(mpi) | |
CN104685883A (zh) | 用于3d视频的经视图间预测运动向量 | |
CN104303502A (zh) | 用于3d-hevc的视差向量建构方法 | |
CN105556974A (zh) | 基于调色板的视频译码中的调色板预测 | |
CN104365103A (zh) | 视频译码中的视差向量选择 | |
CN104838656A (zh) | 视频译码扩展中的时间运动向量预测 | |
CN104025602A (zh) | 三维视频译码中用信号通知视图合成预测支持 | |
CN105580374B (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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20190301 |