CN107736022A - 帧内预测及帧内模式译码 - Google Patents

帧内预测及帧内模式译码 Download PDF

Info

Publication number
CN107736022A
CN107736022A CN201680034469.4A CN201680034469A CN107736022A CN 107736022 A CN107736022 A CN 107736022A CN 201680034469 A CN201680034469 A CN 201680034469A CN 107736022 A CN107736022 A CN 107736022A
Authority
CN
China
Prior art keywords
intra prediction
block
prediction mode
mpm
video data
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.)
Granted
Application number
CN201680034469.4A
Other languages
English (en)
Other versions
CN107736022B (zh
Inventor
赵欣
陈建乐
张莉
马尔塔·卡切维奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN107736022A publication Critical patent/CN107736022A/zh
Application granted granted Critical
Publication of CN107736022B publication Critical patent/CN107736022B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供一种装置,所述装置包含一或多个处理器,其经配置以从多个帧内预测模式当中导出用于帧内预测视频数据块的M个最可能模式MPM。解码指示是MPM索引还是非MPM索引用以指示所述多个帧内预测模式中用于帧内预测所述视频数据块的选定帧内预测模式的语法元素。基于所述MPM索引或所述非MPM索引中的所述所指示者为所述MPM索引,所述一或多个处理器针对所述MPM索引的一或多个经上下文建模的二进制数中的每一者,基于用以解码一或多个相邻块的帧内预测模式而选择所述经上下文建模的二进制数的上下文索引。所述一或多个处理器基于所述选定帧内预测模式而重构建所述视频数据块。

Description

帧内预测及帧内模式译码
本申请案请求2015年6月18日申请的美国临时申请案第62/181,744号及2015年7月14日申请的美国临时专利申请案第62/192,310号的权利,所述申请案中的每一者的全部内容以引用的方式并入本文中。
技术领域
本发明涉及视频编码及解码。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌面计算机、平板计算机、电子书阅读器、数字相机、数字记录装置、数字媒体播放器、视频游戏设备、视频游戏控制面板、蜂窝式或卫星无线电电话、所谓的“智能型手机”、视频电话会议装置、视频流式发射装置及其类似者。数字视频装置实施视频压缩技术,诸如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分先进视频译码(AVC)定义的标准、高效率视频译码(HEVC)标准及这些标准的扩展中所描述的技术。视频装置可通过实施这些视频压缩技术而更有效地发射、接收、编码、解码及/或存储数字视频信息。
视频压缩技术执行空间(图片内)预测及/或时间(图片间)预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的一部分)分割为视频块。可使用相对于同一图片中的相邻块中的参考样本的空间预测来编码图片的经帧内译码(I)切片中的视频块。图片的经帧间译码(P或B)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。
空间或时间预测产生待译码的块的预测性块。残余数据表示待译码的原始块与预测性块之间的像素差。经帧间译码块根据指向形成预测性块的参考样本的块的运动向量来编码,且残余数据指示经译码块与预测性块之间的差。经帧内译码块根据帧内译码模式及残余数据来编码。为进行进一步压缩,可将残余数据从像素域变换至变换域,从而产生可接着进行量化的残余系数。可扫描最初布置成二维阵列的经量化系数以便产生系数的一维向量,且可应用熵译码以实现甚至更多压缩。
发明内容
一般来说,本发明描述可用于先进视频编码解码器的上下文中的用于帧内预测及帧内预测模式译码的技术,诸如高效率视频译码(HEVC)标准的扩展或下一代视频译码标准。
在一个实例中,本发明描述一种编码视频数据块的方法,其可包含:从多个帧内预测模式当中导出用于帧内预测视频数据块的M个最可能模式(MPM),其中M大于3;编码指示是最可能模式索引还是非最可能模式索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素,其中MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且其中非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式;基于MPM索引或非MPM索引中的所指示者为MPM索引,针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引;及基于选定帧内预测模式而编码视频数据块。
在另一实例中,本发明描述一种解码视频数据块的方法,其可包含:从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM,其中M大于3;解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素,其中MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且其中非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式;基于MPM索引或非MPM索引中的所指示者为MPM索引,针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引;及基于选定帧内预测模式而重构建视频数据块。
在另一实例中,本发明描述一种用于编码视频数据的装置,其可包含:存储器,其经配置以存储视频数据;及一或多个处理器,其经配置以进行以下操作:从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM,其中M大于3;编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素,其中MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且其中非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式;基于MPM索引或非MPM索引中的所指示者为MPM索引,针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引;及基于选定帧内预测模式而编码视频数据块。
在另一实例中,本发明描述一种用于解码视频数据的装置,其可包含:存储器,其经配置以存储视频数据;及一或多个处理器,其经配置以进行以下操作:从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM,其中M大于3;解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素,其中MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且其中非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式;基于MPM索引或非MPM索引中的所指示者为MPM索引,针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引;及基于选定帧内预测模式而重构建视频数据块。
在另一实例中,本发明描述一种用于译码视频数据块的视频译码装置,其可包含:用于从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM的装置,其中M大于3;用于译码指示是最可能模式索引还是非最可能模式索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素的装置,其中MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且其中非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式;用于针对MPM索引的一或多个经上下文建模二进制数中的每一者基于MPM索引或非MPM索引中的所指示者为MPM索引且基于用以译码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引的装置;及用于基于选定帧内预测模式而译码视频数据块的装置。
在另一实例中,本发明描述一种计算机可读媒体,其存储在由一或多个处理器执行时使所述一或多个处理器进行以下操作的指令:从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM,其中M大于3;译码指示是最可能模式索引还是非最可能模式索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素,其中MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且其中非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式;基于MPM索引或非MPM索引中的所指示者为MPM索引,针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以译码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引;及基于选定帧内预测模式而译码视频数据块。
在以下随图及描述中阐述一或多个实例的细节。其它特征、目标及优点将从所述描述及诸图以及权利要求书显而易见。
附图说明
图1为说明可利用本发明中所描述的技术的实例视频译码系统的框图。
图2为说明帧内预测视频数据块的实例的概念图。
图3为说明帧内预测模式及对应模式索引的实例的概念图。
图4为说明用于根据平面帧内预测模式产生视频数据块的预测样本的实例技术的概念图。
图5为说明用于根据角度帧内预测模式产生视频数据块的预测样本的实例技术的概念图。
图6为说明可实施本发明中所描述的技术的实例视频编码器的框图。
图7为说明可实施本发明中所描述的技术的实例视频解码器的框图。
图8为说明根据本发明的技术的帧内预测模式及对应模式索引的实例的概念图。
图9为说明根据本发明的技术的实例帧内预测角度的概念图。
图10为说明根据本发明的技术的编码视频数据的方法的流程图。
图11为说明根据本发明的技术的解码视频数据的方法的流程图。
图12为说明根据本发明的技术的编码视频数据的方法的流程图。
图13为说明根据本发明的技术的解码视频数据的方法的流程图。
图14为说明根据本发明的技术的编码视频数据的方法的流程图。
图15为说明根据本发明的技术的解码视频数据的方法的流程图。
图16为说明根据本发明的技术的编码视频数据的方法的流程图。
图17为说明根据本发明的技术的解码视频数据的方法的流程图。
图18为说明根据本发明的技术的编码视频数据的方法的流程图。
图19为说明根据本发明的技术的解码视频数据的方法的流程图。
图20为说明根据本发明的技术的编码视频数据的方法的流程图。
图21为说明根据本发明的技术的解码视频数据的方法的流程图。
具体实施方式
一般来说,本发明描述可用于先进视频编码解码器的上下文中的用于帧内预测及帧内预测模式译码的技术,诸如HEVC标准的扩展或下一代视频译码标准。举例来说,本发明描述用于导出、选择及/或用信号表示用于帧内预测的最可能模式(MPM)的技术。本发明中所描述的实例亦包含用于使用增加数目个角度模式的帧内预测的技术。用于使用增加数目个角度模式的帧内预测的技术可包含用于应用N分接头帧内内插滤波器的技术,其中N大于2。本发明亦描述每块可允许多个帧内预测方向(例如,用于块的子块的相应方向)的技术,其可能不需要多个帧内预测模式的额外信令。
帧内预测及帧内模式译码为可用于先进视频编码解码器的上下文中的技术,诸如高效率视频译码(HEVC)标准的扩展或下一代视频译码标准。
在HEVC中的帧内模式译码中,对于每一帧内预测单元(PU),用信号表示选定帧内预测模式。为选择帧内预测模式,首先识别被假定为具有实际上被选择的较高机率的三个帧内模式,即,最可能模式(MPM)。在HEVC中,存在用于帧内预测明度块的35个模式,包含平面帧内预测模式、DC帧内预测模式及分别与角度帧内预测模式相关联的33个不同预测方向。
HEVC中的现存帧内预测设计的35个固定预测角度对于捕捉非常灵活的边缘方向分布可为低效的。然而,应用更多预测角度可导致非所要的编码器复杂度增加。举例来说,基于HEVC参考软件而直接扩展到65个预测角度可能需要大致加倍数目个SATD检查。此外,使用HEVC中的三个MPM的当前帧内模式译码的效率可受限制,这是因为其可能无法准确地对应于所有可用帧内预测模式的实际机率分布。
本发明描述可补救HEVC中的这些缺陷中的一或多者的技术。举例来说,根据本发明的一些技术,视频译码器可导出超过三个MPM。在一些这些实例中,视频译码器可使用上下文建模以用于解码指示MPM中的哪一者为当前PU的选定MPM的MPM索引的一或多个二进制数(bin)。在视频译码器导出超过三个MPM的一些实例中,在MPM当中,视频译码器可定义左方相邻列的代表性帧内预测模式且将左方相邻列的代表性帧内预测模式用作左方相邻列的MPM,及/或定义上方相邻行的代表性帧内预测模式且将上方相邻行的代表性帧内预测模式用作上方相邻行的MPM。此外,在视频译码器导出超过三个MPM的一些实例中,视频译码器可基于与已在MPM当中的角度模式的类似性而选择一或多个额外角度MPM。在此实例中,类似性是基于帧内预测模式索引差或帧内预测角度差中的至少一者而确定。此外,在本发明的一些实例技术中,若非MPM索引满足准则,则非MPM索引可在位流中经编码为短于个位的码字,且否则,经编码为具有个位的固定长度代码,其中存在非MPM索引的总计N个可用值。
在视频译码器可使用超过33个角度帧内预测模式的本发明的一些实例中,视频译码器可对相邻经重构建样本使用内插滤波器,其中内插具有1/32像元准确度。在本发明的一些实例中,视频译码器可通过将N分接头帧内内插滤波器应用于相邻经重构建样本以在经确定分数位置处内插值而计算相应样本的值,其中N大于2。
图1为说明可利用本发明的技术的实例视频译码系统10的框图。如本文中所使用,术语“视频译码器”大体上是指视频编码器及视频解码器两者。在本发明中,术语“视频译码”或“译码”可大体上是指视频编码或视频解码。
如图1中所展示,视频译码系统10包含源装置12及目的地装置14。源装置12产生经编码视频数据。因此,源装置12可被称作视频编码装置或视频编码设备。目的地装置14可解码由源装置12所产生的经编码视频数据。因此,目的地装置14可被称作视频解码装置或视频解码设备。源装置12及目的地装置14可为视频译码装置或视频译码设备的实例。源装置12及目的地装置14可包括广泛范围的装置,包含桌面计算机、移动计算设备、笔记型(例如,膝上型)计算机、平板计算机、机顶盒、诸如所谓的“智能型”手机的电话手机、电视、相机、显示装置、数字媒体播放器、视频游戏控制面板、车载计算机(in-car computer)或其类似者。
目的地装置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集成或可在目的地装置外部。显示装置32可包括多种显示装置,诸如液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
视频编码器20及视频解码器30各自可实施为多种合适电路中的任一者,诸如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、硬件或其任何组合。若所述技术以软件部分地实施,则装置可将用于软件的指令存储于合适的非暂时性计算机可读存储媒体中,且可使用一或多个处理器以硬件执行所述指令从而执行本发明的技术。前述各者(包含硬件、软件、硬件与软件的组合等)中的任一者可被视为一或多个处理器。视频编码器20及视频解码器30中的每一者可包含于一或多个编码器或解码器中,编码器或解码器中的任一者可集成为相应装置中的组合式编码器/解码器(编码解码器)的部分。包含视频编码器20及/或视频解码器30的设备可包括集成电路、微处理器及/或无线通信装置,诸如蜂窝式电话。
源装置12的视频源18可包含视频捕捉装置(诸如,视频相机)、含有先前所捕捉的视频的视频存档及/或用以从视频内容提供商接收视频的视频馈入接口。作为另一替代例,视频源18可产生基于计算机图形的数据作为源视频,或实况视频、存档视频及计算机产生的视频的组合。在一些情况下,若视频源18为视频相机,则源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明中所描述的技术一般可适用于视频译码,且可适用于无线及/或有线应用。在每一情况下,所捕捉、所预先捕捉或计算机产生的视频可通过视频编码器20编码。经编码视频信息可接着通过输出接口22输出到信道16上。
本发明中所描述的许多技术可由视频编码器20及视频解码器30两者执行。因此,为易于解释,可关于视频译码器来描述所述技术,所述视频译码器可为视频编码器及/或视频解码器,诸如视频编码器20及视频解码器30。本发明可大体上是指视频编码器20将某些信息“用信号表示”到诸如视频解码器30的另一装置。术语“用信号表示”可大体上是指用以解码经压缩视频数据的语法元素及/或其它数据的通信。此通信可实时地或近乎实时地发生。替代地,可历时时间跨度而发生此通信,诸如当在编码时,将经编码位流中的语法元素存储到计算机可读存储媒体时,可发生此通信,接着,在存储到此媒体之后可由解码装置在任何时间检索所述语法元素。
视频译码标准包含ITU-T H.261、ISO/IEC MPEG-1Visual、ITU-T H.262或ISO/IECMPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual及ITU-T H.264(也称为ISO/IECMPEG-4AVC),包含其可调式视频译码(SVC)及多视图视频译码(MVC)扩展。此外,高效率视频译码(HEVC)最近已由ITU-T视频译码专家组(VCEG)及ISO/IEC动画专家组(MPEG)的视频译码联合协作小组(JCT-VC)开发。HEVC规格的草案可获自:http://phenix.int-evry.fr/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1003-v1.zip,(下文中,“JCTVC-N1003”)。
在HEVC及其它视频译码规格中,视频序列通常包含一系列图片。图片也可被称作“帧”。图片可包含三个样本阵列,指示为SL、SCb及SCr。SL为明度样本的二维阵列(即,块)。SCb为Cb彩度样本(chrominance sample)的二维阵列。SCr为Cr彩度样本的二维阵列。彩度样本在本文中也可被称作“色度(chroma)”样本。在其它情况下,图片可为单色的,且可仅包含明度样本阵列。
为产生图片的经编码表示,视频编码器20可产生译码树型单元(CTU)的集合。CTU中的每一者可包括明度样本的译码树块、色度样本的两个对应译码树块及用以译码所述译码树块的样本的语法结构。在单色图片或具有三个单独色彩平面的图片中,CTU可包括单一译码树块及用以译码所述译码树块的样本的语法结构。译码树块可为样本的N×N块。CTU也可被称作“树块”或“最大译码单元”(LCU)。HEVC的CTU可广泛地类似于诸如H.264/AVC的其它标准的宏块。然而,CTU未必限于特定大小,且可包含一或多个译码单元(CU)。切片可包含以光栅扫描次序连续排序的整数数目个CTU。举例来说,切片可为含于同一存取单元内的一个独立切片分段及先于下一独立切片分段(若存在)的所有后续相依切片片段(若存在)中的整数数目个CTU。
为产生经译码CTU,视频编码器20可对CTU的译码树块递归地执行四分树分割,以将译码树块划分成译码块,因此命名为“译码树型单元”。译码块为样本的NxN块。CU可包括具有明度样本阵列、Cb样本阵列及Cr样本阵列的图片的明明度样本的译码块及色度样本的两个对应译码块,以及用以译码所述译码块的样本的语法结构。在单色图片或具有三个单独色彩平面的图片中,CU可包括单一译码块及用以译码所述译码块的样本的语法结构。
视频编码器20可将CU的译码块分割为一或多个预测块。预测块为供应用相同预测的样本的矩形(即,正方形或非正方形)块。CU的预测单元(PU)可包括明度样本的预测块、色度样本的两个对应预测块及用以预测所述预测块的语法结构。在单色图片或具有三个单独色彩平面的图片中,PU可包括单一预测块及用以预测所述预测块的语法结构。视频编码器20可产生CU的每一PU的明度、Cb及Cr预测块的预测性明度、Cb及Cr块。
视频编码器20可使用帧内预测或帧间预测来产生PU的预测性块。若视频编码器20使用帧内预测产生PU的预测性块,则视频编码器20可基于与PU相关联的图片的经解码样本而产生PU的预测性块。
若视频编码器20使用帧间预测来产生PU的预测性块,则视频编码器20可基于不同于相关联于PU的图片的一或多个图片的经解码样本而产生PU的预测性块。帧间预测可为单向帧间预测(即,单向预测)或双向帧间预测(即,双向预测)。为执行单向预测或双向预测,视频编码器20可产生当前切片的第一参考图片列表(RefPicList0)及第二参考图片列表(RefPicList1)。参考图片列表中的每一者可包含一或多个参考图片。当使用单向预测时,视频编码器20可搜索RefPicList0及RefPicList1中的任一者或两者中的参考图片,以确定参考图片内的参考位置。此外,当使用单向预测时,视频编码器20可至少部分地基于对应于参考位置的样本而产生PU的预测性样本块。此外,当使用单向预测时,视频编码器20可产生指示PU的预测块与参考位置之间的空间位移的单一运动向量。为指示PU的预测块与参考位置之间的空间位移,运动向量可包含指定PU的预测块与参考位置之间的水平位移的水平分量,且可包含指定PU的预测块与参考位置之间的垂直位移的垂直分量。
当使用双向预测来编码PU时,视频编码器20可确定RefPicList0中的参考图片中的第一参考位置,及RefPicList1中的参考图片中的第二参考位置。视频编码器20可接着至少部分地基于对应于第一参考位置及第二参考位置的样本而产生PU的预测性块。此外,当使用双向预测来编码PU时,视频编码器20可产生指示PU的样本块与第一参考位置之间的空间位移的第一运动向量,及指示PU的预测块与第二参考位置之间的空间位移的第二运动向量。
通常,B图片的第一参考图片列表或第二参考图片列表(例如,RefPicList0或RefPicList1)的参考图片列表构建包含两个步骤:参考图片列表初始化及参考图片列表重排序(修改)。参考图片列表初始化为显式机制,其基于POC(图片次序计数,其与图片的显示次序对准)次序值而将参考图片存储器(也称为经解码图片缓冲器)中的参考图片置入列表中。参考图片列表重排序机制可将在参考图片列表初始化期间置于列表中的图片的位置修改为任何新位置,或甚至在图片不属于初始化列表的情况下仍将参考图片存储器中的任何参考图片置于任何位置中。可将参考图片列表重排序(修改)之后的一些图片置于列表中的更进一步的位置中。然而,若图片的位置超过列表的作用中参考图片的数目,则并不将所述图片视为最终参考图片列表的条目。可在每一列表的切片标头中用信号表示作用中参考图片的数目。在构建参考图片列表(即,RefPicList0及RefPicList1,若可用)之后,到参考图片列表的参考索引可用以识别包含于参考图片列表中的任何参考图片。
视频编码器20可使用帧内预测模式编码来编码某些视频数据块,且提供指示用以编码块的选定帧内预测模式的信息。视频编码器20可使用帧内预测模式来帧内预测编码任何类型的帧或切片(例如,I帧或I切片,外加P帧或P切片及B帧或B切片)的块。当视频编码器20确定块应经帧内预测模式编码时,视频编码器20可执行速率-失真分析以选择最适当的帧内预测模式。帧内预测模式也可被称作“帧内模式”。举例来说,视频编码器20可计算一或多个帧内预测模式的速率-失真值,且选择所述模式中具有可接受速率-失真特性的一个模式。
在一些实例中,视频编码器20可经配置以基于上下文而开始以最可能模式分析对帧内预测模式的选择。在一些实例中,当最可能模式实现合适的速率-失真特性时,视频编码器20可选择所述最可能模式。在其它实例中,视频编码器20无需以最可能模式开始选择过程。
在视频编码器20产生CU的一或多个PU的预测性块(例如,预测性明度块、Cb块及Cr块)之后,视频编码器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的明度残余块、Cb残余块及Cr残余块分解成一或多个明度变换块、Cb变换块及Cr变换块。变换块为供应用相同变换的样本的矩形(例如,正方形或非正方形)块。CU的变换单元(TU)可包括明度样本的变换块、色度样本的两个对应变换块及用以变换所述变换块样本的语法结构。因此,CU的每一TU可与明度变换块、Cb变换块及Cr变换块相关联。与TU相关联的明度变换块可为CU的明度残余块的子块。Cb变换块可为CU的Cb残余块的子块。Cr变换块可为CU的Cr残余块的子块。在单色图片或具有三个单独色彩平面的图片中,TU可包括单一变换块及用以变换所述变换块的样本的语法结构。
视频编码器20可将一或多个变换应用于TU的明度变换块,以产生TU的明度系数块。系数块可为变换系数的二维阵列。变换系数可为纯量。视频编码器20可将一或多个变换应用于TU的Cb变换块,以产生TU的Cb系数块。视频编码器20可将一或多个变换应用于TU的Cr变换块,以产生TU的Cr系数块。
在产生系数块(例如,明度系数块、Cb系数块或Cr系数块)之后,视频编码器20可量化系数块。量化大体上是指变换系数经量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。
因此,在进行帧内预测性或帧间预测性译码以产生预测性数据及残余数据之后,且在进行任何变换(诸如,用于H.264/AVC中的4×4或8×8整数变换,或离散余弦变换DCT)以产生变换系数之后,可执行变换系数的量化。量化大体上是指变换系数经量化以可能减少用以表示系数的数据的量的过程。量化过程可减少与一些或所有系数相关联的位深度。举例来说,可在量化期间将n位值向下舍入到m位值,其中n大于m。
在视频编码器20量化系数块之后,视频编码器20可熵编码指示经量化变换系数的语法元素。举例来说,视频编码器20可对指示经量化变换系数的语法元素执行上下文自适应性二进制算术译码(CABAC)。举例来说,在量化之后,可(例如)根据内容自适应性可变长度译码(CAVLC)、CABAC或另一熵译码方法执行对经量化数据的熵译码。经配置以用于熵译码的处理单元或另一处理单元可执行其它处理功能,诸如经量化系数的零延行长度译码及/或诸如以下各者的语法信息的产生:译码块型样(CBP)值、宏块类型、译码模式、经译码单元的最大宏块大小(诸如,帧、切片、宏块或序列)或其类似者。
视频编码器20也可经配置以确定块的编码上下文。上下文可基于诸如以下各者的块的各种特性而确定:块的大小,其可依据像素尺寸而确定;预测单元(PU)类型,诸如在HEVC的实例中,2N×2N、N×2N、2N×N、N×N;短距离帧内预测(SDIP)类型,诸如2N×N/2、N/2×2N、2N×1、1×2N;在H.264的实例中的宏块类型;块的译码单元(CU)深度;或视频数据块的大小的其它量测。在一些实例中,视频编码器20可基于帧内预测模式中的任一者或全部如何用于上方相邻块、左方相邻块、左上方相邻块、右上方相邻块或其它相邻块而确定上下文。在一些实例中,视频编码器20基于一或多个块的帧内预测模式以及正经编码的当前块的大小信息两者而确定上下文。
视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流。位流可包括网络抽象层(NAL)单元的序列。NAL单元为含有NAL单元中的数据的类型的指示及含有所述数据的呈按需要穿插有仿真阻止位的原始字节序列有效负载(RBSP)的形式的字节的语法结构。NAL单元中的每一者包含NAL单元标头且囊封RBSP。NAL单元标头可包含指示NAL单元类型码的语法元素。通过NAL单元的NAL单元标头指定的NAL单元类型码指示NAL单元的类型。RBSP可为含有囊封于NAL单元内的整数数目个字节的语法结构。在一些情况下,RBSP包含零个位。
不同类型的NAL单元可囊封不同类型的RBSP。举例来说,第一类型的NAL单元可囊封图片参数集(PPS)的RBSP,第二类型的NAL单元可囊封经译码切片的RBSP,第三类型的NAL单元可囊封SEI消息的RBSP,等等。囊封视频译码数据的RBSP(与参数集及SEI消息的RBSP相对)的NAL单元可被称作视频译码层(VCL)NAL单元。含有参数集(例如,视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)等)的NAL单元可被称作参数集NAL单元。
视频解码器30可接收由视频编码器20产生的位流。此外,视频解码器30可剖析位流以从所述位流获得语法元素。视频解码器30可至少部分地基于从位流获得的语法元素而重构建视频数据的图片。重构建视频数据的过程可与由视频编码器20执行的过程大体上互逆。举例来说,视频解码器30可使用PU的运动向量来确定当前CU的PU的预测性块。此外,视频解码器30可反量化与当前CU的TU相关联的系数块。视频解码器30可对系数块执行反变换以重构建与当前CU的TU相关联的变换块。视频解码器30可通过将当前CU的PU的预测性块的样本加到当前CU的TU的变换块的对应样本而重构建当前CU的译码块。通过重构建图片的每一CU的译码块,视频解码器30可重构建图片。
因此,在本发明的一些实例中,视频解码器30可最终(例如)从输入接口28接收经编码视频数据。根据本发明的一些技术,视频解码器30可接收表示用以编码视频数据块的帧内预测模式的码字或其它语法。视频解码器30可经配置而以大体上类似于视频编码器20的方式确定块的译码上下文。
如上文所提及,位流的特定NAL单元可包含VPS、SPS及PPS。在一些实例中,VPS为包括应用于零个或多个完整经译码视频序列(CVS)的语法元素的语法结构。在一些实例中,SPS为含有应用于零或多个完整CVS的语法元素的语法结构。SPS可包含识别在SPS处于作用中时在作用中的VPS的语法元素。因此,VPS的语法元素可比SPS的语法元素更一般地适用。在一些实例中,PPS为含有应用于如通过在每一切片片段标头中找到的语法元素确定的零或多个完整经译码图片的语法元素的语法结构。
参数集(例如,VPS、SPS、PPS等)可含有直接或间接地从切片的切片标头参考的识别符。在一些实例中,切片标头为独立切片片段的切片片段标头,所述独立切片片段为当前切片片段或在解码次序上先于当前相依切片片段的最近独立切片片段。在这些实例中,切片片段标头为在图片块扫描中连续排序且含于单一NAL单元中的整数数目个译码树型单元。参考过程被称为“启动”。因此,当视频解码器30正解码特定切片时,由所述特定切片的切片标头中的语法元素直接或间接参考的参数集据称为“经启动”。取决于参数集类型,启动可基于每一图片或基于每一序列而发生。举例来说,切片的切片标头可包含识别PPS的语法元素。因此,当视频译码器译码切片时,可启动PPS。此外,PPS可包含识别SPS的语法元素。因此,当识别SPS的PPS经启动时,可启动SPS。SPS可包含识别VPS的语法元素。因此,当识别VPS的SPS经启动时,启动VPS。
如上文简要提到,视频编码器20可使用CABAC编码来编码语法元素。为了将CABAC编码应用于语法元素,视频编码器20可对语法元素进行二进制化以形成被称作“二进制数”的一系列一或多个位。此外,视频编码器20可识别译码上下文。译码上下文可识别译码具有特定值的二进制数的机率。举例来说,译码上下文可指示译码0值二进制数的0.7机率,及译码1值二进制数的0.3机率。在识别译码上下文之后,视频编码器20可将间隔划分成下部子间隔及上部子间隔。所述子间隔中的一者可与值0相关联且另一子间隔可与值1相关联。所述子间隔的宽度可与由经识别译码上下文针对相关联值所指示的机率成比例。若语法元素的二进制数具有与下部子间隔相关联的值,则经编码值可等于下部子间隔的下边界。若语法元素的同一二进制数具有与上部子间隔相关联的值,则经编码值可等于上部子间隔的下边界。为了编码语法元素的下一个二进制数,视频编码器20可重复这些步骤,其中间隔为与经编码位的值相关联的子间隔。当视频编码器20针对下一个二进制数重复这些步骤时,视频编码器20可使用基于由经识别译码上下文所指示的机率及经编码的二进制数的实际值的经修改机率。在一些实例中,当视频编码器20针对下一二进制数重复这些步骤时,视频编码器20可选择另一译码上下文。
当视频解码器30对语法元素执行CABAC解码时,视频解码器30可识别译码上下文。视频解码器30可接着将间隔划分成下部子间隔及上部子间隔。所述子间隔中的一者可与值0相关联且另一子间隔可与值1相关联。所述子间隔的宽度可与由经识别译码上下文针对相关联值所指示的机率成比例。若经编码值在下部子间隔内,则视频解码器30可解码具有与下部子间隔相关联的值的二进制数。若经编码值在上部子间隔内,则视频解码器30可解码具有与上部子间隔相关联的值的二进制数。为解码语法元素的下一个二进制数,视频解码器30可重复这些步骤,其中间隔为含有经编码值的子间隔。当视频解码器30针对下一个二进制数重复这些步骤时,视频解码器30可使用基于由经识别译码上下文所指示的机率及经解码二进制数的经修改机率。视频解码器30可接着对二进制数进行解二进制化以恢复语法元素。
视频编码器20可使用旁路CABAC译码来编码一些二进制数而非对所有语法元素执行常规CABAC编码。相比于对二进制数执行常规CABAC译码,对二进制数执行旁路CABAC译码在计算上可花费较少。此外,执行旁路CABAC译码可允许较高的并行化度及吞吐量。使用旁路CABAC译码而编码的二进制数可被称作“旁路二进制数”。将旁路二进制数分组在一起可使视频编码器20及视频解码器30的吞吐量增加。旁路CABAC译码引擎可能够在单一循环中译码若干二进制数,而常规CABAC译码引擎可能够在一循环中译码仅单一二进制数。旁路CABAC译码引擎可更简单,这是因为旁路CABAC译码引擎不选择上下文且可针对两个符号(0及1)采用1/2的机率。因此,在旁路CABAC译码中,间隔直接分裂成两半。
图2为说明帧内预测视频数据块的实例的概念图。对于帧内预测,使用空间上相邻的经重构建图像样本来预测视频数据块(例如,PU)。图2中展示图像块40(例如,16×16图像块)的帧内预测的典型实例。在帧内预测的情况下,通过沿选定预测方向(如由箭头42所指示)的上方及左方相邻经重构建样本(参考样本)而预测图像块40。
图3为说明帧内预测模式及对应模式索引的实例的概念图。在HEVC中,如图3中所指示,存在用于帧内预测明度块的35个模式,包含平面模式(即,平面帧内预测模式)、DC模式及33个角度模式(即,角度帧内预测模式)。如定义于HEVC中的35个帧内预测模式如下表而经索引化:
表1—帧内预测模式及相关联名称的规格
帧内预测模式 相关联名称
0 INTRA_PLANAR
1 INTRA_DC
2..34 INTRA_ANGULAR2..INTRA_ANGULAR34
图4为说明用于根据平面帧内预测模式产生视频数据块的预测样本的实例技术的概念图。平面模式通常为最常使用的帧内预测模式。为执行对N×N块的平面预测,如图4中所说明,针对位于(x,y)处的每一样本pxy,通过双线性滤波器使用四个特定相邻经重构建样本(即,参考样本)而计算预测值。四个参考样本包含右上方经重构建样本TR(50)、左下方经重构建样本BL(52)及位于当前样本的同一列(rx,-1)及行(r-1,y)处的两个经重构建样本(54、56),如图4中所说明。平面模式可公式化为:pxy=(N-x-1)·L+(N-y-1)·T+x·TR+y·BL。在此公式中,N为块的高度及宽度。
对于DC模式,简单地用相邻经重构建样本的平均值填充预测块。举例来说,为使用DC帧内预测模式产生PU的预测性块,视频译码器可将PU的预测性块的每一样本设置为等于相邻经重构建样本的平均值。一般来说,应用平面帧内预测模式及DC帧内预测模式两者以用于建模平稳地变化及恒定的图像区。
HEVC指定其角度帧内预测模式的33个不同预测方向。对于每一给定角度帧内预测,可(例如)根据图3识别帧内预测方向。在图3的实例中,帧内预测模式10对应于纯水平预测方向,且帧内预测模式26对应于纯垂直预测方向。
给定特定帧内预测方向,对于预测块的每一样本,首先沿预测方向将每一样本的坐标(x,y)投射到相邻经重构建样本的行/列,如图3中的实例中所展示。假设(x,y)经投射到两个相邻经重构建样本L与R之间的分数位置α,则使用两分接头双线性内插滤波器计算(x,y)的预测值,如下公式化:pxy=(1-α)·L+α·R。为避免浮点运算,在HEVC中,实际上使用如pxy=((32-a)·L+a·R+16)>>5的整数算术来近似前述计算,其中a为等于32*α的整数。
对于HEVC中的帧内模式译码,针对每一帧内PU,用信号表示选定帧内预测模式。为用信号表示选定帧内预测模式,首先识别假定为具有实际上被选择的较高机率的三个帧内预测模式,即,最可能模式(MPM)。在HEVC中,如下导出MPM,标记为candModeList[x],x=0、1、2。
首先,如下根据JCTVC-N1003的子条款8.4.2导出左方相邻模式(candIntraPredModeA)及上方相邻模式(candIntraPredModeB):
至此过程的输入为相对于当前图片的左上方明度样本指定当前明度预测块的左上方样本的明度位置(xPb,yPb)。
1.将相邻位置(xNbA,yNbA)及(xNbB,yNbB)设置为分别等于(xPb-1,yPb)及(xPb,yPb-1)。
2.对于由A或B替代的X,如下导出变量candIntraPredModeX:
-如子条款6.4.1中指定的z扫描次序中的块的可用性导出过程以设置为等于(xPb,yPb)的位置(xCurr,yCurr)及设置为等于(xNbX,yNbX)的相邻位置(xNbY,yNbY)作为输入而调用,且输出经指派给availableX。
-如下导出候选帧内预测模式candIntraPredModeX:
-若availableX等于假,则将candIntraPredModeX设置为等于INTRA_DC。
-否则,若CuPredMode[xNbX][yNbX]不等于MODE_INTRA或pcm_flag[xNbX][yNbX]等于1,则将candIntraPredModeX设置为等于INTRA_DC,
-否则,若X等于B且yPb-1小于((yPb>>CtbLog2SizeY)<<CtbLog2SizeY),则将candIntraPredModeB设置为等于INTRA_DC。
-否则,将candIntraPredModeX设置为等于IntraPredModeY[xNbX][yNbX]。
因此,若当前PU的明度预测块的左上方样本左方的相邻样本不可用,若不使用帧内预测来预测当前PU的明度预测块的左上方样本左方的相邻样本,或若当前PU的明度预测块的左上方样本左方的相邻样本系使用脉码调制(PCM)编码,则将candIntraPredModeA设置为DC帧内预测模式。否则,将candIntraPredModeA设置为预测块含有当前PU的明度预测块的左上方样本左方的相邻样本的PU的帧内预测模式。类似地,若PU的明度预测块的左上方样本上方的相邻样本不可用,若不使用帧内预测来预测当前PU的明度预测块的左上方样本上方的相邻样本,若当前PU的明度预测块的左上方样本上方的相邻样本使用PCM编码,或若当前PU的明度预测块的左上方样本上方的相邻样本在与当前PU不同的译码树块中,则将candIntraPredModeB设置为DC帧内预测模式。否则,将candIntraPredModeB设置为预测块含有当前PU的明度预测块的左上方样本上方的相邻样本的PU的明度帧内预测模式(即,IntraPredModeY[xNbX][yNbX])。
接着,在JCTVC-N1003的子条款8.4.2中,使用所导出的左方相邻模式(candIntraPredModeA)及上方相邻模式(candIntraPredModeB),如下导出三个MPM:
3.如下导出candModeList[x],其中x=0..2:
-若candIntraPredModeB等于candIntraPredModeA,则以下情形适用:
-若candIntraPredModeA小于2(即,等于INTRA_PLANAR或INTRA_DC),则如下导出candModeList[x],其中x=0..2:
candModeList[0]=INTRA_PLANAR (8-15)
candModeList[1]=INTRA_DC (8-16)
candModeList[2]=INTRA_ANGULAR26 (8-17)
-否则,如下导出candModeList[x],其中x=0..2:
candModeList[0]=candIntraPredModeA (8-18)
candModeList[1]=2+((candIntraPredModeA+29)%32) (8-19)
candModeList[2]=2+((candIntraPredModeA-2+1)%32) (8-20)
-否则(candIntraPredModeB不等于candIntraPredModeA),以下情形适用:
-如下导出candModeList[0]及candModeList[1]:
candModeList[0]=candIntraPredModeA (8-21)
candModeList[1]=candIntraPredModeB (8-22)
-若candModeList[0]及candModeList[1]两者皆不等于INTRA_PLANAR,则将candModeList[2]设置为等于INTRA_PLANAR,
-否则,若candModeList[0]及candModeList[1]两者皆不等INTRA_DC,则将candModeList[2]设置为等于INTRA_DC,
-否则,将candModeList[2]设置为等于INTRA_ANGULAR26。
在决定三个MPM之后,在JCTVC-N1003的子条款8.4.2中,对于每一PU,首先用信号表示一位旗标prev_intra_luma_pred_flag[xPb][yPb]以指示当前PU的选定帧内模式是否与三个MPM中的一者相同。
-若prev_intra_luma_pred_flag[xPb][yPb]用信号表示为1,即,选择3个MPM中的一者用于译码当前PU,则进一步用信号表示指示选择哪一MPM用于译码当前PU的索引mpm_idx(可等于0、1或2)。使用截断一元码对mpm_idx进行二进制化,且不使用上下文建模而旁路译码mpm_idx
-否则(prev_intra_luma_pred_flag[xPb][yPb]用信号表示为0),即,非MPM用于当前PU,则进一步用信号表示指示选择哪一非MPM用于当前PU的索引rem_intra_luma_pred_mode[xPb][yPb]。rem_intra_luma_pred_mode[xPb][yPb]的值可为0、1、......、31,且固定长度(5个位)二进制化供旁路译码使用。
如先前所论述,视频编码器20选择当前PU的帧内预测模式。选择PU的帧内预测模式的过程可被称作编码器侧帧内模式决策。当选择当前PU的帧内预测模式时,视频编码器20可选择针对当前PU确定的三个MPM中的一者或非MPM帧内预测模式中的一者。若视频编码器20选择当前PU的三个MPM中的一者作为当前PU的帧内预测模式,则视频编码器20可在位流中用信号表示当前PU的MPM索引。在JCTVC-N1003中,在坐标(x,y)处具有左上方明度样本的PU的MPM索引经指示为mpm_ind[x][y]。否则,若视频编码器20并不选择当前PU的三个MPM中的一者作为当前PU的帧内预测模式,则视频编码器20可在位流中用信号表示当前PU的非MPM索引。在JCTVC-N1003中,在坐标(x,y)处具有左上方明度样本的PU的非MPM索引经指示为rem_intra_pred_mode[x][y]。此外,视频编码器20在位流中用信号表示指示是否针对当前PU用信号表示MPM索引或非MPM索引的语法元素。在JCTVC-N1003中,在坐标(x,y)处具有左上方明度样本的PU的此语法元素经指示为prev_intra_luma_pred_flag[x][y]。
在JCTVC-N1003中,MPM索引可仅具有三个可能的不同值,而非MPM索引可具有更多可能值。因此,相比用信号表示非MPM索引,可需要较少位来用信号表示MPM索引。
为尽可能高效地选择当前PU的帧内预测模式,在HEVC参考软件(被称作“HM”)的设计中,已集成若干快速帧内模式决策方法。HM参考软件可从https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/tags/HM-14.0/下载。
由于存在明度块的多达35个可用帧内预测模式,因此基于全速率-失真优化的编码器模式决策对于实务实施方案可能耗费过大。在HM的最新版本中,帧内模式决策作为两个阶段执行。在第一阶段中,首先使用通常被称为“绝对变换差和”(SATD)的耗费小得多的成本准则粗略地决定N个帧内模式候选者列表。N的值取决于块大小,且HM中的默认设置为:对于4×4及8×8大小,N等于8,且对于16×16及更大块大小,N等于3。此后,左方及上方相邻模式,即,candIntraPredModeA或candIntraPredModeA及candIntraPredModeB两者(若candIntraPredModeA不等于candIntraPredModeA)在尚未包含的情况下被附加到帧内模式候选者列表。在第二阶段中,将帧内模式候选者列表馈送到耗费大的速率-失真成本计算过程,且决定当前PU的最终的最好帧内预测模式。在使用此两阶段帧内模式决策过程的情况下,跳过针对大部分帧内预测模式的耗费大的速率-失真成本计算,且仍选择最好帧内预测模式而无过多译码效能降低惩罚。
在Matsuo等人的“Improved intra angular prediction by DCT-basedinterpolation filte”(信号处理会议(EUSIPCO),2012年第20届欧洲会议记录,第1568至1572页。IEEE,2012年)中,提议针对4×4及8×8块大小应用基于DCT的4分接头内插滤波器,且当应用4分接头滤波器时还断开帧内平滑滤波器,针对大于或等于16×16的块大小,应用2分接头双线性内插滤波器。在2011年12月6日申请的Maani、Ehsan的美国专利申请案13/312,946“用于HEVC的帧内预测的内插滤波器(Interpolation filter for intraprediction of HEVC)”中,可在帧内平滑滤波器断开时使用4分接头内插滤波器,而4分接头内插滤波器可基于CUBIC内插过程、基于DCT的内插过程或厄米特(Hermite)内插过程而获得。在M.Guo、X.Guo及S.Lei的“改进的帧内模式译码(Improved Intra Mode Coding)”(ITU-T SG16WP3及ISO/IEC JTC1/SC29/WG11的视频译码联合协作小组(JCT-VC),第4次会议:韩国大邱,2011年1月20至28日)中,帧内模式的二进制化根据其相邻块的模式而从预定义译码树的集合自适应性地选择。
可存在与用于(例如)根据HEVC标准译码视频数据的现存帧内预测技术相关联的数个问题。举例来说,HEVC中的现存帧内预测设计的35个固定预测角度对于捕捉非常灵活的边缘方向分布可为低效的。然而,应用更多预测角度可导致非所要的编码器复杂度增加。举例来说,相对于HEVC中的现存帧内预测设计的35个固定预测角度,基于HEVC参考软件而直接扩展到65个预测角度可能需要大致加倍数目个SATD检查。另外,(例如)使用HEVC中的三个MPM的当前帧内模式译码的效率可受限制,这是因为其可能无法准确地对应于所有可用帧内预测模式的实际机率分布。换句话说,在HEVC中针对特定PU确定的三个MPM实际上可能并非将最可能用于特定PU的帧内预测模式。
本发明的技术可解决与用于(例如)根据HEVC标准译码视频数据的现存帧内预测技术相关联的上文所识别的问题,以及在帧内预测及视频译码以及压缩的技术领域中的其它问题。可个别地应用以下详细列举的方法。替代地,可应用其任何组合。
根据本发明的一些技术,超过三个MPM可用于用信号表示帧内预测模式。举例来说,由M指示的MPM数目的典型实例可为4、5或6。使用额外MPM可减小使用非MPM索引用信号表示PU的帧内预测模式的机率。因为相比非MPM索引,MPM索引通常系使用较少位表示,所以使用额外MPM可增加减小位流大小。
在超过三个MPM用于用信号表示PU的帧内预测模式的一些实例中,视频编码器20可使用诸如CABAC的熵编码过程编码MPM索引,且视频解码器30可使用诸如CABAC的熵解码过程解码MPM索引。PU的MPM索引可为识别MPM中的哪一者为PU的帧内预测模式的数值。作为使用熵编码过程编码索引的部分,视频编码器20可对MPM索引进行二进制化。换句话说,视频编码器20可将MPM索引转换成二进制代码。在不同实例中,视频编码器20可使用各种二进制化方法将MPM索引转换成二进制代码。举例来说,视频译码器可使用以下中的至少一者对MPM索引进行二进制化:固定截断一元码或固定霍夫曼码。此外,在一些实例中,当译码MPM索引时,二进制化方法可为固定截断一元码或固定霍夫曼码,或基于经译码相邻帧内模式而决定。举例来说,视频译码器可基于用以译码一或多个相邻块的帧内预测模式而确定二进制化方法。举例来说,对于PU的MPM索引,视频译码器可基于用以译码邻近于PU的一或多个相邻块的帧内预测模式而确定二进制化方法。在对MPM索引进行二进制化之后,视频编码器20可CABAC编码经二进制化MPM索引,且将经CABAC编码的经二进制化MPM索引包含于位流中。作为解码MPM索引的部分,视频解码器30可从位流获得经CABAC编码的经二进制化MPM索引,将CABAC解码应用于经CABAC编码的经二进制化MPM索引以恢复经二进制化MPM索引,且对MPM索引进行解二进制化以恢复MPM索引。在本发明中,词组“MPM索引的二进制数”可指经二进制化MPM索引的二进制数。
在本发明的一些实例中,当译码(例如,CABAC译码)MPM索引的一或多个二进制数时,视频编码器20及视频解码器30可使用上下文建模。换句话说,对于MPM索引的一或多个二进制数中的每一相应二进制数,视频编码器20及视频解码器30可选择相应二进制数的相应译码上下文。视频编码器20及视频解码器30可使用相应二进制数的相应译码上下文来译码相应二进制数。举例来说,当译码MPM索引时,可使用上下文建模来译码前N个或选定N个经译码二进制数,而使用经译码相邻帧内预测模式来决定上下文索引。举例来说,对于当前图片中的PU的MPM索引,视频译码器可基于用以译码当前图片中邻近于PU的一或多个相邻PU的帧内预测模式而确定上下文索引。在此实例中,N为整数。在一些各种实例中,N可等于1、2或3。因此,在一些实例中,一或多个经上下文建模二进制数由MPM索引的第一二进制数组成。在其它实例中,一或多个经上下文建模二进制数由MPM索引的选定N个二进制数组成,其中N设置为等于M-K,其中K为预定义数目。
在视频编码器20及视频解码器30在译码当前PU的MPM索引的一或多个二进制数时使用上下文建模的一个实例中,上下文索引取决于左方及上方相邻帧内预测模式的情况。在此实例的情况0中,左方帧内预测模式及上方帧内预测模式相同,且所述帧内预测模式两者皆非DC或平面。在此实例的情况1中,左方相邻帧内预测模式及上方相邻帧内预测模式相同,且所述帧内预测模式中的至少一者为DC或平面。在此实例的情况2中,左方相邻帧内预测模式及上方相邻帧内预测模式不同且两者皆非平面。在此实例的情况3中,左方相邻帧内预测模式及上方相邻帧内预测模式不同,且所述帧内预测模式中的至少一者为平面。左方相邻帧内预测模式及上方相邻帧内预测模式可为当前PU左方及上方的PU的帧内预测模式。在此实例中,视频编码器20及视频解码器30可基于预定义映射表而计算上下文索引,所述预定义映射表从情况索引(例如,情况0、情况1、情况2或情况3)映射至上下文索引编号。换句话说,视频译码器可使用情况索引到上下文索引映射表以从情况索引确定上下文索引。上下文索引编号可识别预定义译码上下文的集合中的预定义译码上下文。
因此,在此实例中,当视频译码器选择MPM索引的经上下文建模二进制数的上下文索引时,若用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码左方相邻块及上方相邻块的帧内预测模式两者皆非DC或平面,则视频译码器可选择第一上下文索引。此外,在此实例中,若用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码左方相邻块及上方相邻块的帧内预测模式中的至少一者为DC或平面,则视频译码器可选择第二上下文索引。在此实例中,若用以解码左方相邻块及上方相邻块的帧内预测模式不同且用以解码左方相邻块及上方相邻块的帧内预测模式两者皆非平面,则视频译码器可选择第三上下文索引。在此实例中,若用以解码左方相邻块及上方相邻块的帧内预测模式不同且用以解码左方相邻块及上方相邻块的帧内预测模式中的至少一者为DC或平面,则视频译码器可选择第四上下文索引。
在一些实例中,针对不同二进制数使用不同的情况索引至上下文索引映射表。举例来说,诸如视频编码器20或视频解码器30的视频译码器可针对MPM索引的二进制数0使用第一情况索引至上下文索引映射表,针对MPM索引的二进制数1使用第二情况索引至上下文索引映射表,针对MPM索引的二进制数2使用第三情况索引至上下文索引映射表,等等。此实例的不同情况索引至上下文索引映射表可将不同上下文指派至上文所描述的情况(例如,情况0、情况1、情况2及情况3)。举例来说,先前段落中所描述的映射可适用于MPM索引的第一二进制数,但对于MPM索引的第二二进制数,视频译码器可进行以下操作:若用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码左方相邻块及上方相邻块的帧内预测模式两者皆非DC或平面,则选择第二上下文索引;若用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码左方相邻块及上方相邻块的帧内预测模式中的至少一者为DC或平面,则选择第三上下文索引;等等。
在视频编码器20及视频解码器30在译码当前PU的MPM索引的一或多个二进制数时使用上下文建模的一些实例中,仅应用一个上下文用于译码前N个或选定N个二进制数中的每一者,且上下文可不取决于相邻帧内预测模式。举例来说,在这些实例中,视频编码器20及视频解码器30对MPM索引执行译码上下文选择过程一次,且并不针对MPM索引的后续二进制数重复译码上下文选择过程。换句话说,视频译码器可针对MPM索引的一或多个经上下文建模二进制数选择共同上下文索引。
如上文所提及,在一些实例中,视频编码器20及视频解码器30可在译码MPM索引的N个经译码二进制数时使用上下文建模。在一个此实例中,N设置为等于(M-K),其中K为预定义数目且M为MPM的数目。举例来说,K可等于1、2或3。
因此,在以上实例中,视频编码器20可从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM。在此实例中,M大于3。此外,编码指示是最可能模式索引还是非最可能模式索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素。MPM索引指示M个MPM中的哪一者为选定帧内预测模式,非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。基于MPM索引或非MPM索引中的所指示者为MPM索引,视频编码器20可针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引。视频编码器20可基于选定帧内预测模式而编码视频数据块。
在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。在此实例中,为编码指示是MPM索引还是非MPM索引用以指示选定帧内预测模式的语法元素,视频编码器20可编码指示是MPM索引(例如,mpm_idx)还是非MPM索引(例如,rem_intra_luma_pred_mode)用以指示多个帧内预测模式中用于帧内预测PU的选定帧内预测模式的语法元素(例如,prev_intra_luma_pred_flag)。视频编码器20可针对MPM索引的一或多个经上下文建模二进制数中的每一者而使用经上下文建模二进制数的选定上下文索引以执行经上下文建模二进制数的CABAC编码。此外,作为基于选定帧内预测模式而编码视频数据块的部分,视频编码器20可基于当前PU的选定帧内预测模式而产生当前PU的预测性块。视频编码器20可产生表示当前CU与预测性块之间的像素差的残余数据。在此实例中,视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流,经译码图片包含当前图片。
类似地,在一些实例中,视频解码器30可从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM。在此实例中,M大于3。此外,视频解码器30可解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素。MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。基于MPM索引或非MPM索引中的所指示者为MPM索引,视频解码器30可针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引。此外,视频解码器30可基于选定帧内预测模式而重构建视频数据块。
举例来说,在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。在此实例中,为解码指示是MPM索引还是非MPM索引用以指示选定帧内预测模式的语法元素,视频解码器30可从位流解码指示是MPM索引(例如,mpm_idx)还是非MPM索引(例如,rem_intra_luma_pred_mode)用以指示多个帧内预测模式中用于帧内预测当前PU的选定帧内预测模式的语法元素(例如,prev_intra_luma_pred_flag)。在此实例中,对于MPM索引的一或多个经上下文建模二进制数中的每一者,视频解码器30可使用经上下文建模二进制数的选定上下文索引以执行MPM索引的经上下文建模二进制数的CABAC解码。此外,作为基于选定帧内预测模式而重构建视频数据块的部分,视频解码器30可使用选定帧内预测模式产生当前PU的预测性块。在此实例中,视频解码器30可通过将CU的PU的预测性块的样本加至当前CU的TU的变换块的对应样本而使用残余值重构建当前CU。在此实例中,视频解码器30可接收包含形成经译码图片及相关联数据的表示的位序列的位流,经译码图片包含当前图片。
如上文所简要论述,使用在HEVC中指定的三个MPM的帧内预测模式译码的效率可受限制,这是因为在HEVC中指定的三个MPM时常无法准确地对应于所有可用帧内预测模式的实际机率分布。举例来说,PU的帧内预测模式为特定非MPM帧内预测模式的机率可大于PU的帧内预测模式为在HEVC中指定的三个MPM中的任一者的机率。
因此,根据本发明的一些实例,当导出MPM时,针对左方(上方)相邻列(或行)定义代表性帧内预测模式,且将所述代表性帧内预测模式用作来自左方(或上方)相邻列的MPM候选者。举例来说,视频译码器可定义左方相邻列的代表性帧内预测模式,且将左方相邻列的代表性帧内预测模式用作MPM候选者。除在HEVC中针对左方相邻块定义的MPM外或代替在HEVC中针对左方相邻块定义的MPM(candIntraPredModeA),视频译码器也可将左方相邻列的代表性模式用作MPM候选者。此外,视频译码器可定义上方相邻行的代表性帧内预测模式,且将上方相邻行的代表性模式用作MPM候选者。除在HEVC中针对上方相邻块定义的MPM外或代替在HEVC中针对上方相邻块定义的MPM(candIntraPredModeB),视频译码器也可将上方相邻行的代表性模式用作MPM候选者。
左方相邻列可包含在图片中紧接在含有图片的CU的当前PU的当前样本的样本列左方的样本列。举例来说,左方相邻列可包含紧接在当前PU左方的每一样本(或由每一样本组成)。上方相邻行可包含在图片中紧接在含有图片的CU的当前PU的当前样本的样本行上方的样本行。举例来说,上方相邻行可包含紧接在当前PU上方的每一样本(或由每一样本组成)。
举例来说,作为编码视频数据的部分,视频编码器20可部分地通过从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM而编码视频数据块。在一些实例中,M大于3。在此实例中,MPM可包含左方相邻列的MPM及上方相邻行的MPM。在一些实例中,视频编码器20定义左方相邻列的代表性帧内预测模式,且将左方相邻列的代表性帧内预测模式用作左方相邻列的MPM。在一些实例中,视频编码器20定义上方相邻行的代表性帧内预测模式,且将上方相邻行的代表性帧内预测模式用作上方相邻行的MPM。
此外,视频编码器20可编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素,且编码MPM索引或非MPM索引中的所指示者。举例来说,视频编码器20可将指示prev_intra_luma_pred_flag语法元素的数据报括于位流中,所述语法元素指示位流是否包含指示mpm_index或rem_intra_luma_pred_mode语法元素的数据。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。视频编码器20基于选定帧内预测模式而编码视频数据块。
在此实例中,视频数据块为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。为基于选定帧内预测模式而编码视频数据块,视频编码器20可部分地通过使用选定帧内预测模式产生当前PU的预测性块而重构建视频数据块。此外,视频编码器20可通过将CU的PU的预测性块的样本加至当前CU的TU的变换块的对应样本而使用残余值重构建当前CU。
在选择待用于帧内预测(用于译码视频数据)的帧内预测模式的类似实例中,视频解码器30可部分地通过从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM而解码视频数据块。在此实例中,M可大于3。MPM可包含左方相邻列的MPM及上方相邻行的MPM。在一些实例中,视频解码器30定义左方相邻列的代表性帧内预测模式,且将左方相邻列的代表性帧内预测模式用作左方相邻列的MPM。在一些实例中,视频解码器30定义上方相邻行的代表性帧内预测模式,且将上方相邻行的代表性帧内预测模式用作上方相邻行的MPM。
此外,视频解码器30可解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素,且解码最可能模式索引或非最可能模式索引中的所指示者。举例来说,视频解码器30可从位流获得prev_intra_pred_flag。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。
视频解码器30可接着基于所得选定帧内预测模式而重构建视频块。在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。在此实例中,作为基于所得选定帧内预测模式而重构建视频块的部分,视频解码器30可使用选定帧内预测模式产生视频块的预测性块。举例来说,视频块可为CU,且视频解码器30可使用选定帧内预测模式产生CU的PU的预测性块。此外,视频解码器30可通过将预测性块的样本加至视频块的对应残余样本而重构建视频块的至少一些样本。举例来说,视频块可为CU,且视频解码器30可将预测性块的样本加至CU的TU的一或多个变换块中的对应残余样本。
在各种实例中,视频译码器可以不同方式确定代表性帧内预测模式。在一个实例中,代表性帧内预测模式系依据由相邻块使用的所有帧内预测模式而定义。举例来说,以最小PU大小(例如,4)为单位对实际上使用的左方(或上方)相邻列(或行)的帧内预测模式的数目进行计数,且将最常使用的一者定义为代表性帧内预测模式。因此,在以上实例中,视频编码器20及视频解码器30可基于左方相邻列的最频繁帧内预测模式而定义左方相邻列的代表性帧内预测模式,且基于上方相邻行的最频繁帧内预测模式而定义上方相邻列的代表性帧内预测模式。
替代地,所述计数是基于当前块的PU大小。举例来说,视频译码器可基于以下中的至少一者而确定相邻块的最频繁帧内预测模式:(i)最小预测单元大小,或(ii)视频数据块的预测单元大小。在一个实例中,替代基于最小PU大小(例如,4×4)的单位进行计数,不同单位大小可用于当前块的不同PU大小。举例来说,若当前块的PU大小为64×64,则所述计数是基于8×8PU大小或16×16PU大小而非最小PU大小(4×4)。
在一些实例中,代表性帧内预测模式可定义为由左方(或上方)相邻列(或行)中的选定相邻块使用的帧内预测模式中的一者。举例来说,位于并非最左(最上)或最右(最下)者的左方(右方)相邻列(行)的中间位置处的样本(或等于最小PU大小的块)的帧内预测模式定义为左方(或上方)相邻模式的代表性帧内预测模式。此外,在以上实例中,可基于最小预测单元大小或视频数据块的预测单元大小中的至少一者而确定相邻块的最频繁帧内预测模式。在另一实例中,视频编码器20及视频解码器30可将左方相邻列的代表性帧内预测模式用作由左方相邻列中的选定相邻块使用的帧内预测模式,且可将上方相邻行的代表性帧内预测模式定义为由上方相邻行中的选定相邻块使用的帧内预测模式。
如上文所提及,本发明的特定实例考虑M个MPM,其中M大于3。因此,根据本发明的这些实例,视频编码器20可从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM。换句话说,视频编码器20可从多个帧内预测模式当中导出用于帧内预测视频数据的当前图片的CU的PU的M个MPM。在此实例中,M大于3。在此实例中,M小于多个帧内预测模式中的帧内预测模式的总数。此外,在此实例中,视频编码器20可编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素。在此实例中,视频编码器20可编码MPM索引或非MPM索引中的所指示者。MPM索引指示M个MPM中的哪一者为选定帧内预测模式,且非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。视频编码器20可基于选定帧内预测模式而编码视频数据块。
在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。在此实例中,视频编码器20可编码指示是MPM索引还是非MPM索引用以指示选定帧内预测模式的语法元素,视频编码器20可编码指示是MPM索引(例如,mpm_idx)还是非MPM索引(例如,rem_intra_luma_pred_mode)用以指示多个帧内预测模式中用于帧内预测PU的选定帧内预测模式的语法元素(例如,prev_intra_luma_pred_flag)。此外,作为基于选定帧内预测模式而编码视频数据块的部分,视频编码器20可基于当前PU的选定帧内预测模式而产生当前PU的预测性块。视频编码器20可产生表示当前CU与预测性块之间的像素差的残余数据。在此实例中,视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流,经译码图片包含当前图片。
此外,根据本发明的这些实例,视频解码器30可从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM。在此实例中,M大于3。M可小于多个帧内预测模式中的帧内预测模式的总数。此外,在此实例中,视频解码器30可解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素。在此实例中,视频解码器30可解码MPM索引或非MPM索引中的所指示者。视频解码器30可基于选定帧内预测模式而重构建视频数据块。
举例来说,在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。在此实例中,为解码指示是MPM索引还是非MPM索引用以指示选定帧内预测模式的语法元素,视频解码器30可从位流解码指示是MPM索引(例如,mpm_idx)还是非MPM索引(例如,rem_intra_luma_pred_mode)用以指示多个帧内预测模式中用于帧内预测当前PU的选定帧内预测模式的语法元素(例如,prev_intra_luma_pred_flag)。此外,作为基于选定帧内预测模式而重构建视频数据块的部分,视频解码器30可使用选定帧内预测模式产生当前PU的预测性块。在此实例中,视频解码器30可通过将CU的PU的预测性块的样本加至当前CU的TU的变换块的对应样本而使用残余值重构建当前CU。在此实例中,视频解码器30可接收包含形成经译码图片及相关联数据的表示的位序列的位流,经译码图片包含当前图片。
在一些实例中,当决定M(M>3)个MPM时,HEVC中定义的原始的三个MPM维持于M个MPM中,且添加额外(M-3个)帧内预测模式。举例来说,在一些实例中,可选择额外三个帧内预测模式使得平面及DC模式始终包含于MPM中。换句话说,导出M个MPM的过程可包括将平面模式及DC模式包含于M个MPM当中。
替代地,在一些实例中,可选择额外(M-3个)帧内预测模式使得平面、DC、垂直(即,INTRA_ANGULAR26)及/或水平(即,INTRA_ANGULAR10)及/或对角(即,INTRA_ANGULAR18)模式始终包含于MPM中。换句话说,导出M个MPM的过程可包括将平面模式、DC模式以及垂直模式、水平模式或对角模式中的至少一者包含于M个MPM当中。
在一些实例中,可从最接近已包含于前三个MPM中的角度模式的角度模式中选择额外(M-3个)帧内预测模式。在此实例中,术语“最接近”系通过帧内预测模式索引的差或帧内预测模式索引的差的绝对值或帧内预测角度的差而量测。举例来说,在此实例中,作为导出M个MPM的部分,视频译码器(例如,视频编码器20或视频解码器30)可导出三个MPM,其中三个MPM包含至少一个角度模式。此外,在此实例中,视频译码器可基于与至少角度模式的类似性而选择一或多个额外角度MPM。在此实例中,类似性是基于帧内预测模式索引差或帧内预测角度差中的至少一者而确定。
根据本发明的一些实例,为了减少用于译码索引值的位的数目,可在译码非MPM索引时包含用以译码索引值的位的数目的某些变化。因此,诸如视频编码器20及视频解码器30的视频译码器可确定是MPM索引还是非MPM索引正用以指示多个帧内预测模式中的选定帧内预测模式,且当识别到非MPM索引时,取决于是否满足一或多个准则,使用固定长度代码表示非MPM索引或使用可变长度代码表示非MPM索引。在各种实例中,视频译码器可以不同方式确定各种准则。举例来说,若非MPM索引为多个帧内预测模式之前预定数目个非MPM索引中的一者,则准则可满足。在一些实例中,若非MPM索引为后预定数目个非MPM索引中的一者,则准则满足。在一些实例中,若非MPM索引为预定数目个选定非MPM索引中的一者,则准则满足。
因此,根据本发明的一个实例,视频编码器20可从多个帧内预测模式当中导出用于帧内预测视频数据块的M个最可能模式。在此实例中,M可大于3。此外,视频编码器20可编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素。此外,在此实例中,视频编码器20可基于语法元素指示非MPM索引用以指示选定帧内预测模式而编码非MPM索引。在此实例中,若非MPM索引满足准则,则非MPM索引可在位流中编码为短于个位的码字,且否则编码为具有个位的固定长度代码。在此实例中,可存在非MPM索引的总计N个可用值。此外,视频编码器20可基于选定帧内预测模式而编码视频数据块。在本发明中,表示升值舍位运算。
在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式可为当前CU的当前PU的选定帧内预测模式。此外,在此实例中,为编码指示是MPM索引还是非MPM索引用以指示选定帧内预测模式的语法元素,视频编码器20可将指示语法元素(例如,prev_intra_luma_pred_flag)的数据报括于位流中,所述语法元素指示是MPM索引(例如,mpm_idx)还是非MPM索引(例如,rem_intra_luma_pred_mode)用以指示多个帧内预测模式中用于当前PU的选定帧内预测模式。此外,在一些这些实例中,为基于选定帧内预测模式而编码视频数据块,视频编码器20可使用选定帧内预测模式产生PU的预测性块,且视频编码器20可产生表示当前CU与预测性块之间的像素差的残余数据。在一些实例中,视频编码器20可变换及量化残余数据,且将表示所得经量化变换系数的经熵编码语法元素包含于位流中。
在一个实例中,若非MPM索引为多个帧内预测模式的前预定数目个非MPM索引中的一者,则准则可满足。举例来说,对于非MPM模式,编码器及解码器两者可将索引值指派至可用非MPM模式中的每一者。通过经解码索引值,解码器将知晓哪一非MPM模式经用信号表示。在一个实例中,当非MPM索引为前M个索引值中的一者时,非MPM索引可在0~(M-1)的范围内。在另一实例中,若非MPM索引为后预定数目个非MPM索引中的一者,则准则可满足。在另一实例中,若非MPM索引为预定数目个选定非MPM索引中的一者,则准则可满足。
在类似实例中,视频解码器30可从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM。在此实例中,M可大于3。此外,在此实例中,视频解码器30可解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素。如前所述,MPM索引指示M个最可能模式中的哪一者为选定帧内预测模式,且非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。此外,在此实例中,基于MPM索引指示选定帧内预测模式,视频解码器30可解码非MPM索引。在此实例中,若非MPM索引满足准则,则非MPM索引可在位流中编码为短于个位的码字,且否则在位流中编码为具有个位的固定长度代码。在此实例中,存在非MPM索引的总计N个可用值。视频解码器30可基于选定帧内预测模式而重构建视频数据块。
在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式可为当前CU的当前PU的选定帧内预测模式。此外,在此实例中,为解码指示是MPM索引还是非MPM索引用以指示用于帧内预测当前PU的选定帧内预测模式的语法元素,视频解码器30可从位流解码或以其它方式获得指示是MPM索引(例如,mpm_idx)还是非MPM索引(例如,rem_intra_luma_pred_mode)用以指示当前PU的选定帧内预测模式的语法元素(例如,prev_intra_luma_pred_flag)。此外,在一些实例中,作为基于选定帧内预测模式而重构建视频数据块的部分,视频解码器30可使用选定帧内预测模式产生当前PU的预测性块。在这些实例中,视频解码器30可通过将CU的PU的预测性块的样本加至当前CU的TU的变换块的对应样本而使用残余值重构建当前CU。
在一个实例中,若非MPM索引为多个帧内预测模式的前预定数目个非MPM索引中的一者,则准则可满足。举例来说,准则可为:非MPM索引为多个帧内预测模式的前X个非MPM索引中的一者,X为整数。在另一实例中,若非MPM索引为后预定数目个非MPM索引中的一者,则准则可满足。举例来说,准则可为:非MPM索引为多个帧内预测模式的后X个非MPM索引中的一者,X为整数。在另一实例中,若非MPM索引为预定数目个选定非MPM索引中的一者,则准则可满足。举例来说,准则可为:非MPM索引为多个帧内预测模式的X个选定非MPM索引中的一者,X为整数。
因此,当译码非MPM索引(除前M个或后M个或选定M个外的所有可用N个非MPM索引)时,可使用具有个位的固定长度代码来译码索引值,而使用短于个位的码字来用信号表示M个索引值。在此实例中,M可等于或可不等于MPM的数目。替代地,使用具有个位的固定长度代码来译码所有可用N个非MPM索引。
替代地,在一些实例中,首先通过上下文建模而用信号表示指示非MPM索引是否参考水平或垂直模式的一位旗标,接着进一步用信号表示进一步指定选择了哪一非MPM的索引。因此,在此实例中,视频编码器20可基于语法元素(例如,prev_intra_luma_pred_flag)指示非MPM索引(例如,rem_intra_luma_pred_mode)用以指示视频数据块的选定帧内预测模式而编码指示非MPM索引是否参考水平模式或垂直模式中的一者的语法元素。类似地,视频解码器30可基于语法元素(例如,prev_intra_luma_pred_flag)指示使用非MPM索引而从位流解码指示非MPM索引是否参考水平模式或垂直模式中的一者的第二语法元素。
在一些实例中,当超过三个MPM用于用信号表示帧内预测模式时,在编码器模式决策期间,对于每一PU,将前K(K>=2)个MPM插入至待利用比特率-失真优化检查中的候选帧内预测模式列表中。K的值可取决于左方相邻帧内预测模式IntraModeL与上方相邻帧内预测模式IntraModeA是否相同。举例来说,K=(IntraModeL==IntraModeA)?2:3。换句话说,在此实例中,若IntraModeL等于IntraModeA,则将K设置为等于2,否则设置为等于3。
在一些实例中,MPM的数目可取决于CU或PU大小。举例来说,MPM的数目对于较大CU或PU大小可较大。替代地,在一些实例中,可在序列参数集、图片参数集或切片标头中用信号表示MPM的数目。
根据本发明的一些实例,诸如视频编码器20及视频解码器30的视频译码器可使用超过33个角度帧内预测模式。举例来说,视频译码器可使用65个角度模式。在此实例中,65个预测角度(方向)可经定义使得以1/32像元(像素)准确度执行内插。如上文所论述,当使用角度帧内预测模式编码PU时,视频译码器可通过沿与角度帧内预测模式相关联的预测方向投射PU的预测性块的样本的坐标而确定两个经重构建相邻样本之间的分数位置。当以1/32像元准确度执行内插时,在两个邻近经重构建相邻像素之间定义31个等距位置,且视频译码器将经确定分数位置设置为经重构建相邻像素或31个位置中的最接近者。使用有限数目个位置而非实数线可简化执行内插计算中所涉及的处理。如上文所简要描述,不管超过33个角度帧内预测模式可用而使用1/32像元准确度执行内插可提高准确度,同时将复杂度等级保持为相同。详言的,为以提高的准确度执行内插,将需要设计增加数目个不同内插滤波器且将其存储于编码器及解码器两者处。因此,例如,通过避免需要提高内插准确度,视频译码器的复杂度(仍利用仅32个不同内插滤波器)在使用1/32像元内插的情况下可保持相同。
因此,在使用超过33个角度帧内预测模式(例如,使用65个角度帧内预测模块)且以1/32像元准确度执行内插的以上实例中,作为编码视频数据块的部分,视频编码器20可编码指示来自包含超过33个角度帧内预测模式的多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息(例如,mpm_idx或rem_intra_luma_pred_mode)。在此实例中,角度帧内预测模式经定义使得以1/32像元准确度执行内插。此外,在此实例中,视频编码器20可基于选定帧内预测模式而编码视频数据块。
在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。此外,在此实例中,作为编码视频数据块的部分,视频编码器20可针对当前PU的预测性块的每一相应样本确定当前图片的两个相邻经重构建样本之间的分数位置。图5为说明用于根据角度帧内预测模式产生视频数据块的预测样本的实例技术的概念图。举例来说,在图5的实例中,视频编码器20可确定相邻样本L与R之间的分数位置α。两个相邻经重构建样本与当前PU相邻。视频编码器20可通过沿与选定帧内预测模式相关联的预测方向将相应样本的坐标投射到含有两个相邻经重构建样本的相邻经重构建样本行或列而确定分数位置。举例来说,在图5的实例中,线60展示与选定帧内预测模式相关联的预测方向,且(x,y)为相应样本62的坐标。在此实例中,视频编码器20可使用内插滤波器计算相应样本的预测值,所述内插滤波器使用两个相邻经重构建样本的值在经确定分数位置处内插值。此内插系以1/32像元准确度进行。另外,在此实例中,作为编码视频数据块的部分,视频编码器20可产生表示当前块与预测性块之间的像素差的残余数据。视频编码器20可变换及量化残余数据,且将表示所得经量化变换系数的经熵编码语法元素包含于位流中。
类似地,在一个实例中,视频解码器30可解码指示多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息(例如,mpm_idx或rem_intra_luma_pred_mode)。在此实例中,多个帧内预测模式包含超过33个角度帧内预测模式。角度帧内预测模式可经定义使得以1/32像元准确度执行内插。视频解码器30可基于选定帧内预测模式而重构建视频数据块。
因此,在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式可为当前CU的当前PU的选定帧内预测模式。作为重构建视频数据块的部分,针对当前PU的预测性块的每一相应样本,视频解码器30可通过沿与选定帧内预测模式相关联的预测方向将相应样本的坐标投射到含有当前图片的两个相邻经重构建样本的相邻经重构建样本行或列而确定两个相邻经重构建样本之间的分数位置。另外,视频解码器30可使用内插滤波器计算相应样本的预测值,所述内插滤波器使用两个相邻经重构建样本的值在经确定分数位置处内插值。在此实例中,此内插系以1/32像元准确度进行。视频解码器30可通过将CU的PU的预测性块的样本加至当前CU的TU的变换块的对应样本而使用残余值重构建当前CU的译码块。
在以上实例中,视频编码器20及视频解码器30可使用超过33个角度帧内预测模式。举例来说,多个角度帧内预测模式可包含65个角度帧内预测模式。此外,在以上实例中,内插滤波器可为两分接头双线性内插滤波器。在一些这些实例中,将内插滤波器公式化为:
pxy=(1-α)·L+α·R
其中pxy为相应样本的经计算值,L及R为两个经重构建相邻样本的值,且α为经确定分数位置。
如上文所指示,根据本发明的一些实例,视频译码器可使用超过33个角度帧内预测模式。在一个此实例中,对于每一PU,限制仅N个角度模式可供使用,所述角度模式系使用左方及上方相邻块的经译码信息而从所有可用角度模式自适应性地选择。举例来说,在此实例中,当编码图片的块(例如,PU)时,禁止(即,限制)视频编码器20选择特定角度帧内预测模式。在此实例中,不管特定角度帧内预测模式可供视频编码器20用于编码同一图片的其它块且不管特定角度帧内预测模式相比允许视频编码器20用于编码块的角度帧内预测模式可提供较好压缩效能的事实,可禁止视频编码器20选择特定角度帧内预测模式。
因此,在仅N个角度帧内预测模式可供使用的实例中,视频编码器20及视频解码器30可基于用以解码一或多个相邻块的帧内预测模式而从多个角度帧内预测模式当中选择N个角度帧内预测模式的子集。在此实例中,指示当前PU的选定帧内预测模式的语法信息可包括指示选定帧内预测模式的索引。在此实例中,索引为由个位组成的固定长度代码。在此实例中,N可为各种整数,诸如33。
在一些实例中,总体帧内预测模式的数目取决于CU或PU大小。举例来说,视频译码器(例如,视频编码器20或视频解码器30)可基于CU大小或PU大小中的至少一者而确定多个帧内预测模式中的帧内预测模式的总数。举例来说,如果CU大小或PU大小小于特定临限值,则仅具有小于特定数目的索引值的角度帧内预测模式可用。在一些实例中,可在SPS、PPS或切片标头中用信号表示帧内预测模式的总数。
如上文所论述,视频编码器20及视频解码器30可将内插滤波器应用于经重构建相邻样本以确定预测性块中的样本的值。根据本发明的一些技术,可应用N分接头帧内内插滤波器,其中N大于2。举例来说,N可为3及4。当诸如视频编码器20或视频解码器30的视频译码器使用N分接头帧内内插滤波器以确定预测性块中的样本的值时,视频译码器可基于N个经重构建相邻样本的值而计算所述值。使用N分接头(N>2)内插可优于现存2分接头内插,这是因为其可通过在内插期间包含更多参考样本(N个参考样本)而提供更准确的内插结果。在统计上,使用更多参考样本将引入较好内插准确度与较高复杂度。N分接头帧内内插滤波器可包含辛克内插滤波器、高斯内插滤波器及使用图像相关模型导出的内插滤波器。辛克滤波器移除高于给定截止频率的所有频率分量而不影响低频,且具有线性相位响应。因此,N分接头内插滤波器可包括辛克内插滤波器、高斯内插滤波器及使用图像相关模型导出的内插滤波器中的至少一者。
以此方式,视频编码器20可编码指示多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息。举例来说,视频编码器20可在位流中用信号表示当前PU的mpm_idx或rem_intra_luma_pred_mode语法元素。此外,视频编码器20可根据选定帧内预测模式而将N分接头帧内内插滤波器应用于视频数据块的相邻经重构建样本,其中N大于2。视频编码器20可应用N分接头帧内内插滤波器以确定可对应于全像元相邻经重构建样本之间的位置的经滤波的相邻经重构建样本。视频编码器20可根据选定帧内预测模式基于经滤波的相邻经重构建样本而编码视频数据块。举例来说,视频编码器20可使用经滤波的相邻经重构建样本产生预测性块,且基于预测性块而产生视频数据块的残余数据。
在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。此外,在此实例中,针对当前PU的预测块的每一相应样本,视频编码器20可通过沿与选定帧内预测模式相关联的预测方向将相应样本的坐标投射到含有两个相邻经重构建样本的相邻经重构建样本行或列而确定相邻经重构建样本集合中的两个相邻经重构建样本之间的分数位置。相邻经重构建样本集合包含当前图片中在当前PU上方及左方的经重构建样本。此外,视频编码器20可通过将N分接头帧内内插滤波器应用于相邻经重构建样本以在经确定分数位置处内插值而计算相应样本的值,其中N大于2。作为基于经滤波的相邻经重构建样本而编码视频数据块的部分,视频编码器20可产生表示当前CU与预测性块之间的像素差的残余数据。视频编码器20可变换及量化残余数据,且将表示所得经量化变换系数的经熵编码语法元素包含于位流中。
类似地,视频解码器30可解码指示多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息。举例来说,视频解码器30可从位流获得mpm_idx或rem_intra_luma_pred_mode语法元素。此外,视频解码器30可根据选定帧内预测模式而将N分接头帧内内插滤波器应用于视频数据块的相邻经重构建样本,其中N大于2。此外,视频解码器30可根据选定帧内预测模式基于经滤波的相邻经重构建样本而重构建视频数据块。
在此实例中,视频数据块可为视频数据的当前图片中的当前CU,且视频数据块的选定帧内预测模式为当前CU的当前PU的选定帧内预测模式。在此实例中,针对当前PU的预测性块的每一相应样本,视频解码器30可通过沿与选定帧内预测模式相关联的预测方向将相应样本的坐标投射到含有两个相邻经重构建样本的相邻经重构建样本行或列而确定相邻经重构建样本集合中的两个相邻经重构建样本之间的分数位置。相邻经重构建样本集合包含当前图片中在当前PU上方及左方的经重构建样本。视频解码器30可通过将N分接头帧内内插滤波器应用于相邻经重构建样本以在经确定分数位置处内插值而计算相应样本的预测值,其中N大于2。在此实例中,作为重构建视频数据块(例如,当前CU)的部分,视频解码器30可通过将CU的PU的预测性块的样本加至当前CU的TU的变换块的对应样本而使用残余值重构建当前CU的译码块。
当使用图像相关模型导出内插滤波器时,可应用基于广义高斯函数的图像相关函数,且进一步使用最小均方估计导出用于每一分数位置的内插函数。举例来说,当使用图像相关模型导出内插滤波器时,假定图像相关模型为R(i,i)=ρx |i|·ρy |j|,其中i及j指示两个图像样本之间在水平及垂直轴在线的距离,ρx为在水平方向上的图像相关因子,ρy为在垂直方向上的图像相关因子,ρx及ρy两者可在[0,1]的范围内,意谓较大图像距离输出较小相关度。在另一实例中,假定存在四个样本a、b、c及d,且待内插分数样本e。为导出所要内插滤波器[f0,f1,f2,f3],内插过程[a,b,c,d]*[f0f1,f2,f3]T=[e]可重写为A*F=E,其中A=[a,b,c,d]、F=[f0f1,f2,f3]T且E=[e]。根据最小均方估计,最佳滤波器F为F*=(AT*A)-1*ATE,且“(AT*A)-1*ATE”可由所假定的图像相关模型确定。因此,在使用图像相关模型的情况下,可使用最小均方估计导出用于每一分数样本的内插滤波器。
因此,在视频译码器使用图像相关模型导出帧内内插滤波器的一些实例中,视频译码器可基于广义高斯函数而应用图像相关函数。另外,视频译码器可使用最小均方估计导出用于每一分数位置的内插函数。
在一些实例中,当视频译码器应用高斯内插滤波器时,控制滤波器的平滑强度的参数可取决于块大小而变化。因此,在这些实例中,帧内内插滤波器可包括高斯内插滤波器,且控制高斯内插滤波器的平滑强度的参数基于块大小而变化。举例来说,高斯内插滤波器可公式化为:
其中
G(x,σ),x指示分数位置且σ控制平滑强度。因此,较大σ值产生具有增加的平滑强度的高斯内插滤波器。
此外,在一些实例中,视频译码器可选择将应用的内插滤波器。在这些实例中,滤波器的选择可取决于块大小及块内的相对样本位置。因此,在这些实例中,视频译码器可基于块大小或块内的相对样本位置中的至少一者而选择帧内内插滤波器。举例来说,假定已设计一组不同的内插滤波器,即,f1、f2、......fy,则不同内插滤波器可用于当前块内的不同像素位置。举例来说,内插滤波器f1可用于当前块内的前两行像素,且内插滤波器f2可用于剩余行像素。
不同内插滤波器可用于帧内预测单一块,且可显式地用信号表示或从包含经重构建样本值及帧内预测模式的相邻经解码信息导出内插滤波器的选择。因此,在这些实例中,视频译码器可基于相邻块的经重构建样本值或帧内预测模式中的至少一者而选择帧内内插滤波器。举例来说,假定已设计一组不同的内插滤波器,即,f1、f2、......fy,则不同内插滤波器可用于不同帧内预测模式。举例来说,内插滤波器f1可用于对角帧内预测模式,且内插滤波器f2可用于垂直帧内预测模式。
根据本发明的一些实例,多个帧内预测方向可允许用于一个PU而无需多个帧内预测模式的额外信令。举例来说,视频解码器30可解码指示多个帧内预测模式当中用于视频数据块(例如,PU)的选定帧内预测模式的语法信息。此外,视频解码器30可在不解码指示额外帧内预测模式的额外语法信息的情况下确定块的一或多个额外帧内预测模式。在此实例中,视频解码器30可根据选定帧内预测模式及一或多个额外帧内预测模式而重构建视频数据块。举例来说,视频解码器30可基于含有块的CU的残余数据以及基于选定帧内预测模式及一或多个额外帧内预测模式产生的块的预测性块而重构建CU。
在多个帧内预测方向允许用于一个PU而无需多个帧内预测模式的额外信令的一些实例中,PU包括多个子块且PU内的每一子块可具有其自身的帧内预测模式。在此实例中,PU内的子块为4×4块。以此方式,在一个实例中,作为上文所提及的确定视频数据块的一或多个额外帧内预测模式的部分,视频解码器30可在不解码指示额外帧内预测模式的额外语法信息的情况下针对视频数据块的多个子块中的每一者确定相应帧内预测模式。此外,在此实例中,作为重构建视频数据块的部分,视频解码器30可根据相应经确定帧内预测模式重构建子块。
此外,在一些实例中,可导出一个子块的帧内预测方向作为最接近的上方或左方参考块的帧内预测模式。以此方式,作为针对视频数据块的多个子块中的每一者确定相应帧内预测模式的部分,视频解码器30可导出子块中的至少一者的相应帧内预测模式作为最接近的上方或左方参考块的帧内预测模式。在一些实例中,对于当前PU的每一子块,预测为来自上方参考行及左方参考列中的最接近块的两个预测方向的加权和。以此方式,作为针对视频数据块的多个子块中的每一者确定相应帧内预测模式的部分,视频解码器30可基于上方参考块及左方参考块中的一者或两者而导出子块中的至少一者的相应帧内预测模式。
类似地,作为编码视频数据的过程的部分,视频编码器20可编码指示多个帧内预测模式当中用于视频数据块(例如,PU)的选定帧内预测模式的语法信息。视频编码器20可在不编码指示额外帧内预测模式的额外语法信息的情况下确定视频数据块的一或多个额外帧内预测模式。视频编码器20可根据选定帧内预测模式及一或多个额外帧内预测模式而编码视频数据块。在一些实例中,作为确定视频数据块的一或多个额外帧内预测模式的部分,视频编码器20可在不编码指示额外帧内预测模式的额外语法信息的情况下针对视频数据块的多个子块中的每一者确定相应帧内预测模式,且作为编码视频数据块的部分,视频编码器20可根据相应经确定帧内预测模式而编码子块。在一些实例中,作为针对视频数据块的多个子块中的每一者确定相应帧内预测模式的部分,视频编码器20可导出子块中的至少一者的相应帧内预测模式作为最接近的上方或左方参考块的帧内预测模式。在一些实例中,作为针对视频数据块的多个子块中的每一者确定相应帧内预测模式的部分,视频编码器20可基于上方参考块及左方参考块中的一者或两者而导出子块中的至少一者的相应帧内预测模式。
如上文所提及,视频编码器20可执行决定为PU选择哪一帧内预测模式的过程。因为针对HEVC中的所有35个可用帧内预测模式执行全速率-失真优化过程在一些情况下可为不切实际的,所以视频编码器20可通过使用“绝对变换差和”(SATD)准则检查帧内预测模式而确定N个帧内预测模式的列表。当如在本发明的一些实例中的情况,超过35个帧内预测模式可用时,甚至使用SATD准则检查帧内预测模式仍可变得过于耗时或资源密集的。
因此,根据本发明的实例,为减少(例如,大大减少)在视频编码器20处针对帧内角度预测的SATD检查的数目,提议K级SATD检查方案。在此实例中,K大于2。在此实例中,对于SATD检查的每一级,可依据SATD成本检查来自帧内预测角度的预定义子集的选定数目个帧内预测模式。举例来说,在SATD检查的第一级中,视频编码器20可依据SATD成本检查来自帧内预测模式的预定义子集的帧内预测角度中的每一者,且可决定最好的N个帧内预测模式。在此实例中,取决于块大小,N为预定义恒定值。此后,对于SATD检查的每一剩余级,视频编码器20仅检查就预测角度差而言接近在先前级中依据SATD成本决定的最好的N个帧内预测模式的帧内预测角度,且视频编码器20针对下一级决定最好的N个帧内预测模式。
在一个实例中,当应用所提议的65个角度模式时,视频编码器20应用两级SATD检查方案以决定在编码器侧将依据更高效成本准则(例如,速率-失真(R-D)成本)进一步检验帧内预测模式中的哪一者。在第一级中,视频编码器20依据SATD成本仅检查如HEVC中所定义的原始35个帧内预测模式,包含平面、DC及33个角度模式,接着决定最好的N个(N可与HEVC参考软件中所使用相同)帧内预测模式。在第二级中,视频编码器20进一步依据SATD成本仅检查为最好的N个角度模式的直接相邻者(角度模式索引±1)(即,邻近于所述角度模式)的帧内角度模式。视频编码器20可决定进一步依据R-D成本检查最终最好的N个帧内预测模式。
因此,在一些实例中,视频编码器20可根据帧内预测模式的第一子集中的每一者确定编码视频数据块的相应SATD成本。另外,视频编码器20可基于帧内预测模式的第一子集的经确定SATD成本而确定帧内预测模式的第二子集。视频编码器20可根据帧内预测模式的第二子集中的每一者确定编码视频数据块的相应SATD成本。此外,视频编码器20可基于帧内预测模式的第一子集及第二子集的经确定SATD成本而选择帧内预测模式中的一者。视频编码器20可根据帧内预测模式中的选定者编码视频数据块。
在此实例中,作为基于帧内预测模式的第一子集的经确定SATD成本确定帧内预测模式的第二子集的部分,视频编码器20可识别帧内预测模式的第一子集中具有经确定SATD成本中的最低N个成本的N个帧内预测模式。视频编码器20可将帧内预测角度接近于所识别N个帧内预测模式的帧内预测角度的帧内预测模式包含于帧内预测模式的第二子集中。作为将帧内预测角度接近于所识别N个帧内预测模式的帧内预测角度的帧内预测模式包含于帧内预测模式的第二子集中的部分,视频编码器20可将帧内预测角度邻近于所识别N个帧内预测模式的帧内预测角度的帧内预测模式包含于帧内预测模式的第二子集中。
此外,在一些实例中,作为基于帧内预测模式的第一子集及第二子集的经确定SATD成本而选择帧内预测模式中的一者的部分,视频编码器20可识别帧内预测模式的第一子集及第二子集中具有经确定SATD成本中的最低N个成本的N个帧内预测模式。在此实例中,视频编码器20可针对所识别N个帧内预测模式中的每一者确定相应速率-失真成本。此外,在此实例中,视频编码器20可基于经确定速率-失真成本而选择所识别N个帧内预测模式中的一者。
在关于SATD检查的本发明的实例中,N的值取决于视频数据块的块大小。此外,在一些这些实例中,帧内预测模式的第一子集可包含平面帧内预测模式、DC帧内预测模式及33个角度预测模式。
在关于SATD检查的本发明的一些实例中,帧内预测模式的第一子集及第二子集包括帧内预测模式的K个子集中的第一者及第二者,且K大于或等于2。在这些实例中,对于帧内预测模式的K个子集中的每一当前子集,视频编码器20可根据帧内预测模式的当前子集中的每一帧内预测模式而确定编码视频数据块的相应SATD成本。另外,视频编码器20可基于帧内预测模式的当前子集的经确定SATD成本而确定帧内预测模式的K个子集中的下一子集。
图6为说明可实施本发明的技术的实例视频编码器20的框图。出于解释的目的而提供图6,且不应将所述图视为对如本发明中所广泛例示及描述的技术的限制。本发明的技术可适用于多种译码标准或方法中的任一者。
在图6的实例中,视频编码器20包含预测处理单元100、视频数据存储器101、残余产生单元102、变换处理单元104、量化单元106、反量化单元108、反变换处理单元110、重构建单元112、滤波器单元114、经解码图片缓冲器116及熵编码单元118。预测处理单元100包含帧间预测处理单元120及帧内预测处理单元126。帧间预测处理单元120包含运动估计(ME)单元122及运动补偿(MC)单元124。在其它实例中,视频编码器20可包含更多、更少或不同功能组件。
视频数据存储器101可存储待由视频编码器20的组件编码的视频数据。可(例如)从视频源18获得存储于视频数据存储器101中的视频数据。经解码图片缓冲器116可为存储用于由视频编码器20在(例如)以帧内或帧间译码模式编码视频数据时使用的参考视频数据的参考图片存储器。视频数据存储器101及经解码图片缓冲器116可由多种存储器装置中的任一者形成,诸如动态随机存取存储器(DRAM),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。可通过相同存储器装置或单独存储器装置来提供视频数据存储器101及经解码图片缓冲器116。
视频编码器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的大小为2N×2N,则视频编码器20及视频解码器30可支持用于帧内预测的2N×2N或N×N的PU大小,及用于帧间预测的2N×2N、2N×N、N×2N、N×N或类似大小的对称PU大小。视频编码器20及视频解码器30也可支持用于帧间预测的2N×nU、2N×nD、nL×2N及nR×2N的PU大小的非对称分割。
帧间预测处理单元120可通过对CU的每一PU执行帧间预测而产生PU的预测性数据。PU的预测性数据可包含PU的预测性块及PU的运动信息。帧内预测处理单元126可通过对PU执行帧内预测而产生PU的预测性数据。PU的预测性数据可包含PU的预测性块及各种语法元素。帧内预测处理单元126可对I切片、P切片及B切片中的PU执行帧内预测。
为对PU执行帧内预测,帧内预测处理单元126可使用多个帧内预测模式以产生PU的预测性块的多个集合。当使用特定帧内预测模式执行帧内预测时,帧内预测处理单元126可使用来自相邻块的样本的特定集合产生PU的预测性块。假定对于PU、CU及CTU采用从左向右、从上而下的编码次序,则邻近块可在PU的预测块的上方、右上方、左上方或左方。帧内预测处理单元126可使用各种数目个帧内预测模式,例如,DC、平面或方向/角度预测模式,如本文中所描述。在一些实例中,帧内预测模式的数目可取决于PU的预测块的大小。
预测处理单元100可从由帧间预测处理单元120产生的PU的预测性数据或由帧内预测处理单元126产生的PU的预测性数据当中选择CU的PU的预测性数据。在一些实例中,预测处理单元100基于数个预测性数据集合的速率/失真量度而选择CU的PU的预测性数据。选定预测性数据的预测性块在本文中可被称作选定预测性块。
残余产生单元102可基于CU的明度译码块、Cb译码块及Cr译码块及CU的PU的选定预测性明度块、预测性Cb块及预测性Cr块而产生CU的明度残余块、Cb残余块及Cr残余块。举例来说,残余产生单元102可产生CU的残余块,使得残余块中的每一样本的值等于CU的译码块中的样本与CU的PU的对应选定预测性样本块中的对应样本之间的差。
变换处理单元104可执行四分树分割以将CU的残余块分割成与CU的TU相关联的变换块。因此,TU可与明度变换块及两个对应色度变换块相关联。CU的TU的明度及色度变换块的大小及位置可基于或可不基于CU的PU的预测块的大小及位置。
变换处理单元104可通过将一或多个变换应用于TU的变换块而产生CU的每一TU的变换系数块。变换处理单元104可将各种变换应用至与TU相关联的变换块。举例来说,变换处理单元104可将离散余弦变换(DCT)、定向变换或概念上类似的变换应用于变换块。在一些实例中,变换处理单元104并不将变换应用于变换块。在这些实例中,变换块可被视为变换系数块。
量化单元106可量化系数块中的变换系数。量化过程可减少与变换系数中的一些或全部相关联的位深度。举例来说,n位变换系数可在量化期间被向下舍入至m位变换系数,其中n大于m。量化单位106可基于与CU相关联的量化参数(QP)值量化与CU的TU相关联的系数块。视频编码器20可通过调整与CU相关联的QP值来调整应用于与CU相关联的系数块的量化程度。量化可引入信息的损失,因此经量化变换系数可具有比原始变换系数低的精确度。
反量化单元108及反变换处理单元110可分别将反量化及反变换应用于系数块,以从系数块重构建残余块。重构建单元112可将经重构建的残余块加至来自由预测处理单元100所产生的一或多个预测性块的对应样本,以产生与TU相关联的经重建变换块。通过以此方式重构建CU的每一TU的变换块,视频编码器20可重构建CU的译码块。
滤波器单元114可执行一或多个解块操作以减少与CU相关联的译码块中的块假影。在滤波器单元114对经重构建译码块执行一或多个解块操作之后,经解码图片缓冲器116可存储经重构建译码块。帧间预测处理单元120可使用含有经重构建译码块的参考图片,以对其它图片的PU执行帧间预测。此外,帧内预测处理单元126可使用经解码图片缓冲器116中的经重构建译码块,以对处于与CU相同的图片中的其它PU执行帧内预测。
熵编码单元118可从视频编码器20的其它功能组件接收数据。举例来说,熵编码单元118可从量化单元106接收系数块,且可从预测处理单元100接收语法元素。熵编码单元118可对数据执行一或多个熵编码操作以产生经熵编码数据。举例来说,熵编码单元118可对数据执行上下文自适应性可变长度译码(CAVLC)操作、CABAC操作、可变至可变(V2V)长度译码操作、基于语法的上下文自适应性二进制算术译码(SBAC)操作、机率区间分割熵(PIPE)译码操作、指数哥伦布(Exponential-Golomb)编码操作或另一类型的熵编码操作。视频编码器20可输出包含由熵编码单元118所产生的经熵编码数据的位流。
视频编码器20为经配置以执行本发明中描述的技术中的任一者的视频编码器的实例。根据本发明的一或多种技术,视频编码器20内的一或多个单元可执行本文中所描述的技术作为视频编码过程的部分。举例来说,帧内预测处理单元126及/或熵编码单元118可经配置以执行本文中所描述的技术作为视频编码过程的部分。在一些实例中,帧内预测处理单元126可经配置以执行本文中所描述的用于导出或选择用于帧内预测的帧内预测模式及/或MPM的技术、使用增加数目个MPM及/或角度模式的技术,及用于应用N分接头帧内内插滤波器的技术,其中N大于2。帧内预测处理单元126可经配置以执行本文中所描述的用于每块允许多个帧内预测方向(例如,用于块的子块的相应方向)的技术,其可能不需要多个帧内预测模式的额外信令。
帧内预测处理单元126可将诸如用于帧内预测的选定帧内预测模式及/或MPM索引的语法信息提供至熵编码单元118。帧内预测处理单元126及/或熵编码单元118可经配置以实施本文中所描述的用于在经编码视频位流中编码或用信号表示关于帧内预测的语法信息(例如,用于帧内预测的选定帧内预测模式及/或MPM索引)的技术,所述经编码视频位流可由视频解码器30解码。
图7为说明经配置以实施本发明的技术的实例视频解码器30的框图。出于解释的目的而提供图7,且其并不限制如本发明中所广泛例示及描述的技术。本发明的技术可适用于多种译码标准或方法。
在图7的实例中,视频解码器30包含熵解码单元150、视频数据存储器151、预测处理单元152、反量化单元154、反变换处理单元156、重构建单元158、滤波器单元160,及经解码图片缓冲器162。预测处理单元152包含运动补偿单元164及帧内预测处理单元166。在其它实例中,视频解码器30可包含更多、更少或不同功能组件。
视频数据存储器151可存储待由视频解码器30的组件解码的视频数据,诸如经编码视频位流。可(例如)从计算机可读媒体16(例如,从本地视频源(诸如,相机))经由视频数据的有线或无线网络通信或通过存取物理数据存储媒体而获得存储于视频数据存储器151中的视频数据。视频数据存储器151可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。经解码图片缓冲器162可为存储用于视频解码器30(例如)以帧内译码或帧间译码模式解码视频数据的参考视频数据的参考图片存储器。视频数据存储器151及经解码图片缓冲器162可由多种存储器装置中的任一者形成,诸如动态随机存取存储器(DRAM),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。可通过相同存储器装置或单独存储器装置来提供视频数据存储器151及经解码图片缓冲器162。
由视频数据存储器151形成的经译码图片缓冲器(CPB)可接收并存储位流的经编码视频数据(例如,NAL单元)。熵解码单元150可从由视频数据存储器151形成的CPB接收NAL单元,且剖析NAL单元以从位流获得语法元素。熵解码单元150可熵解码NAL单元中的经熵编码语法元素。预测处理单元152、反量化单元154、反变换处理单元156、重构建单元158及滤波器单元160可基于从位流提取的语法元素而产生经解码视频数据。
位流的NAL单元可包含经译码切片NAL单元。作为解码位流的部分,熵解码单元150可从经译码切片NAL单元提取语法元素且熵解码所述语法元素。经译码切片中的每一者可包含切片标头及切片数据。切片标头可含有关于切片的语法元素。
除解码来自位流的语法元素之外,视频解码器30可对CU执行解码操作。通过对CU执行解码操作,视频解码器30可重构建CU的译码块。
作为对CU执行解码操作的部分,反量化单元154可反量化(即,解量化)与CU的TU相关联的系数块。反量化单元154可使用与TU的CU相关联的QP值来确定反量化单元154应用的量化程度及(同样地)反量化程度。即,可通过调整在量化变换系数时使用的QP值来控制压缩比,即,用以表示原始序列及压缩序列的位计数的比率。压缩比也可取决于所使用的熵译码的方法。
在反量化单元154反量化系数块之后,反变换处理单元156可将一或多个反变换应用于系数块以便产生与TU相关联的残余块。举例来说,反变换处理单元156可将反DCT、反整数变换、反卡忽南-拉维(Karhunen-Loeve)变换(KLT)、反旋转变换、反定向变换或另一反变换应用于系数块。
如果使用帧内预测来编码PU,则帧内预测处理单元166可执行帧内预测以产生PU的预测性块。帧内预测处理单元166可使用帧内预测模式以基于空间相邻块的经重构建样本值而产生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译码块。
滤波器单元160可执行解块操作以减少与CU的明度译码块、Cb译码块及Cr译码块相关联的块假影。视频解码器30可将CU的明度译码块、Cb译码块及Cr译码块存储于经解码图片缓冲器162中。经解码图片缓冲器162可提供参考图片以用于后续运动补偿、帧内预测及在显示装置(诸如,图1的显示装置32)上的呈现。举例来说,视频解码器30可基于经解码图片缓冲器162中的明度块、Cb块及Cr块对其它CU的PU执行帧内预测或帧间预测操作。以此方式,视频解码器30可从位流提取大量明度系数块的变换系数级别、反量化变换系数级别、将变换应用于变换系数级别以产生变换块、至少部分基于变换块产生译码块及输出译码块以供显示。
视频解码器30为经配置以执行本发明中所描述的技术中的任一者的视频解码器的实例。根据本发明的一或多种技术,视频解码器30内的一或多个单元可执行本文中所描述的技术作为视频解码过程的部分。举例来说,帧内预测处理单元166及/或熵解码单元150可经配置以执行本文中所描述的技术作为视频解码过程的部分。在一些实例中,帧内预测处理单元166可经配置以执行本文中所描述的用于导出或选择用于帧内预测的帧内预测模式及/或MPM的技术、使用增加数目个MPM及/或角度模式的技术,及用于应用N分接头帧内内插滤波器的技术,其中N大于2。帧内预测处理单元166可经配置以执行本文中所描述的用于每块允许多个帧内预测方向(例如,用于块的子块的相应方向)的技术,其可能不需要多个帧内预测模式的额外信令。
帧内预测处理单元166可从熵解码单元150接收语法信息,诸如用于帧内预测的选定帧内预测模式及/或MPM索引。帧内预测处理单元166及/或熵解码单元150可经配置以实施本文中所描述的用于从经编码视频位流解码关于帧内预测的语法信息(例如,用于帧内预测的选定帧内预测模式及/或MPM索引)的技术。
在以下子部分中,提供本发明的特定技术的实例实施。实务上,实例的任何部分的任何组合可被用作新实例。实例实施系以对JCTVC-N1003的编辑的形式展示。在下文中,添加至JCTVC-N1003的文字展示于卷标<ins>与</ins>之间,“ins”为“插入”的缩写。从JCTVC-N1003删除的文字展示于卷标<dlt>与</dlt>之间,“dlt”为“删除”的缩写。
上文描述视频编码器20及视频解码器30使用超过三个MPM来用信号表示PU的帧内预测模式的若干实例。在一些这些实例中,视频编码器20及视频解码器30使用CABAC译码来编码及解码MPM索引。作为CABAC编码的部分,视频编码器20将二进制化过程应用于MPM索引以将MPM索引转换成二进制代码,且视频解码器30对所述二进制代码进行解二进制化以恢复MPM索引。根据本发明的技术,如下表9-32所展示,使用截断赖斯(Rice)二进制化过程(TR)对MPM索引(mpm_idx)进行二进制化,且输入参数cMax从2改变至5以适应MPM索引的较大值。JCTVC-N1003的第9.3.3.2章描述截断赖斯二进制化过程的实施。
表9-32—语法元素及相关联二进制化
此外,如上文所描述,视频编码器20及视频解码器30可在译码(例如,CABAC译码)MPM索引的一或多个二进制数时使用上下文建模。在JCTVC-N1003中,经二进制化MPM索引(即,mpm_idx)由三个二进制数组成。然而,在本发明中,在具有较大数目个MPM的情况下,经二进制化MPM索引可包含五个或超过五个二进制数。如在JCTVC-N1003的子条款9.3.4.2.1中所指定,变数ctxInc系通过表9-37中的对应条目指定,且当在表9-37中针对binIdx列出超过一个值时,进一步在括号中所给出的子条款中指定用于彼binIdx的ctxInc的指派过程。如进一步在JCTVC-N1003的子条款9.3.4.2.1.中所描述,ctxInc用以确定ctxIdx的值,ctxIdx为译码上下文的索引。如在下表9-37的编辑版本中所展示,可使用译码上下文(使用以下附加子条款9.3.4.x.x的上下文建模方法选择)来译码MPM索引的前三个二进制数,且可使用旁路译码来译码MPM索引的剩余二进制数。
表9-37—ctxInc至具有经上下文译码二进制数的语法元素的指派
<ins>9.3.3.x用于rem_intra_luma_pred_mode的二进制化过程
至此过程的输入为对语法元素rem_intra_luma_pred_mode的二进制化的请求。
此过程的输出为语法元素的二进制化。
-若rem_intra_luma_pred_mode等于28,则二进制化字符串为“111”;
-否则,二进制化为具有5个二进制数的固定长度代码。
9.3.4.x.x用于语法元素mpm_idx的ctxInc的导出过程
至此过程的输入为左方相邻块的帧内模式candIntraPredModeA及上方相邻块的帧内模式candIntraPredModeB。
此过程的输出为变量ctxInc。
如下使用当前位置(xS,yS)、在扫描次序上语法元素coded_sub_block_flag的两个先前经解码二进制数及变换块大小log2TrafoSize来导出变数csbfCtx:
-当candIntraPredModeA等于candIntraPredModeB时,如下导出ctxInc ctxInc=candIntraPredModeA>1?0:1
-否则
ctxInc=(candIntraPredModeA&&candIntraPredModeB)?2:3</ins>
根据本发明的一些实例,定义超过三个MPM。以下文字描述JCTVC-N1003的实例改变以实施六个MPM。
8.4.2用于明度帧内预测模式的导出过程
至此过程的输入为相对于当前图片<ins>预测块大小nPbS</ins>的左上方明度样本指定当前明度预测块的左上方样本的明度位置(xPb,yPb)。
在此过程中,导出明度帧内预测模式IntraPredModeY[xPb][yPb]。
表8-1指定用于帧内预测模式的值及相关联名称。
表8-1—帧内预测模式及相关联名称的规格
帧内预测模式 相关联名称
0 INTRA_PLANAR
1 INTRA_DC
2..34 INTRA_ANGULAR2..INTRA_ANGULAR34
标记为0..34的IntraPredModeY[xPb][yPb]表示如为本发明的图8的图8-1中所说明的预测的方向。
通过以下有序步骤导出IntraPredModeY[xPb][yPb]:
4.将相邻位置(xNbA,yNbA)及(xNbB,yNbB)设置为分别等于(xPb-1,yPb)及(xPb,yPb-1)。
5.对于由A或B替代的X,如下导出变量candIntraPredModeX:
<ins>
-将candIntraPredModeX初始化为INTRA_DC。
-将帧内模式使用量的计数初始化为0:cntIntraPredModeX[i]=0,i=0、 1、…...、34
-将帧内模式使用量的最大计数初始化为0:cntMaxIntraPredModeX=0;
-对于x=0..nPbS-1,以下情形适用
-(xCurr,yCurr)=(X==A)?(xNbA+x,yNbA)?(xNbA,yNbA+x)
-如子条款6.4.1中指定的z扫描次序中的块的可用性导出过程系以设置为等于 (xPb,yPb)的位置(xCurr,yCurr)及设置为等于(xNbX,yNbX)的相邻位置(xNbY,yNbY)作为 输入而调用,且输出经指派给availableX。
-若availableX等于真且CuPredMode[xNbX][yNbX]等于MODE_INTRA,则以下情形 适用:
-cntIntraPredModeX[CuPredMode[xCurr][yCurr]]++
-若cntIntraPredModeX[CuPredMode[xCurr][yCurr]]>cntMaxIntraPredModeX, 则以下情形适用:
-cntMaxIntraPredModeX=cntIntraPredModeX[CuPredMode[xCurr][yCurr]];
-candIntraPredModeX=CuPredMode[xCurr][yCurr]</ins>
<dlt>
-如子条款6.4.1中指定的z扫描次序中的块的可用性导出过程系以设置为等于(xPb,yPb)的位置(xCurr,yCurr)及设置为等于(xNbX,yNbX)的相邻位置(xNbY,yNbY)作为输入而调用,且输出经指派给availableX。
-如下导出候选帧内预测模式candIntraPredModeX:
-若availableX等于假,则将candIntraPredModeX设置为等于INTRA_DC。
-否则,若CuPredMode[xNbX][yNbX]不等于MODE_INTRA或pcm_flag[xNbX][yNbX]等于1,则将candIntraPredModeX设置为等于INTRA_DC,
-否则,若X等于B且yPb-1小于((yPb>>CtbLog2SizeY)<<CtbLog2SizeY),则将candIntraPredModeB设置为等于INTRA_DC。
-否则,将candIntraPredModeX设置为等于IntraPredModeY[xNbX][yNbX]。
</dlt>
6.如下导出candModeList[x],其中x=0..<dlt>2</dlt><ins>5</ins>:
-<ins>将idxPlanar设置为0,将idxDC设置为1;</ins>
-若candIntraPredModeB等于candIntraPredModeA,则以下情形适用:
-若candIntraPredModeA小于2(即,等于INTRA_PLANAR或INTRA_DC),则如下导出candModeList[x],其中x=0..<dlt>2</dlt><ins>5</ins>:
-否则,如下导出candModeList[x],其中x=0..5:
-否则(candIntraPredModeB不等于candIntraPredModeA),以下情形适用:
-如下导出candModeList[0]及candModeList[1]:
candModeList[0]=candIntraPredModeA (8-21)
candModeList[1]=candIntraPredModeB (8-22)
-若candModeList[0]及candModeList[1]两者皆不等于INTRA_PLANAR,则将candModeList[2]设置为等于INTRA_PLANAR,<ins>且以下情形适用:
-maxDir=max(candModeList[0],candModeList[1])
-minDir=min(candModeList[0],candModeList[1])
-idxPlanar=2
-若candModeList[0]及candModeList[1]中的任一者等于INTRA_DC,
则以下情形适用:
-否则,
candModeList[3]=INTRA_DC (8-21)
candModeList[4]=2+((maxDir-1)%32) (8-22)
-若candModeList[4]等于minDir,则candModeList[4]++
candModeList[5]=2+((candModeList[4]+29)%32) (8-22)
-若candModeList[5]等于maxDir,则candModeList[5]--
-若candModeList[5]等于candModeList[4],则candModeList[5]=
minDir+1
idxDC=3</ins>
-否则,若candModeList[0]及candModeList[1]两者皆不等于INTRA_DC,
则将candModeList[2]设置为等于INTRA_DC,<ins>且以下情形适用:
candModeList[3]=2+((candIntraPredModeA+29)%32)
candModeList[4]=2+((candIntraPredModeA-1)%32)
candModeList[5]=2+((candModeList[4]-1)%32)
idxPlanar=(candModeList[0]==INTRA_PLANAR)?0:1
idxDC=2</ins>
-否则,将candModeList[2]设置为等于INTRA_ANGULAR26,以下情形适用:
<ins>candModeList[3]=INTRA_ANGULAR10
candModeList[4]=INTRA_ANGULAR2
candModeList[5]=INTRA_ANGULAR18
idxPlanar=(candModeList[0]==INTRA_PLANAR)?0:1
idxDC=1-idxPlanar</ins>
7.通过应用以下程序导出IntraPredModeY[xPb][yPb]:
-若prev_intra_luma_pred_flag[xPb][yPb]等于1,则将IntraPredModeY[xPb][yPb]设置为等于candModeList[mpm_idx]。
-否则,通过应用以下有序步骤导出IntraPredModeY[xPb][yPb]:
1)如以下有序步骤修改阵列candModeList[x],x=0...<dlt>2</dlt><ins>5</ins>:
i.candModeList[idxPlanar]=candModeList[0]
ii.candModeList[idxDC]=candModeList[1]
iii.candModeList[0]=INTRA_PLANAR
iv.candModeList[1]=INTRA_DC</ins>
v.当candModeList[<dlt>0</dlt><ins>2</ins>]大于candModeList
[<dlt>1</dlt><ins>3</ins>]时,如下调换两个值:
(candModeList[<dlt>0</dlt><ins>2</ins>],
candModeList[<dlt>1</dlt><ins>3</ins>])=
Swap(candModeList[<dlt>0</dlt><ins>2</ins>],
candModeList[<dlt>1</dlt><ins>3</ins>]) (8-23)
vi.当candModeList[<dlt>0</dlt><ins>2</ins>]大于
candModeList[<dlt>2</dlt><ins>4</ins>]时,如下调换两个值:
(candModeList[<dlt>0</dlt><ins>2</ins>],
candModeList[<dlt>2</dlt><ins>4</ins>])=
Swap(candModeList[<dlt>0</dlt><ins>2</ins>],
candModeList[<dlt>2</dlt><ins>4</ins>]) (8-24)
vii.<ins>当candModeList[2]大于candModeList[5]时,如下调换两个值:
(candModeList[2],candModeList[5])=Swap(candModeList[2],
candModeList[5])</ins>
viii.当candModeList[<dlt>1</dlt><ins>3</ins>]大于candModeList[<dlt>2</dlt><ins>4</ins>]时,如下调换两个值:
(candModeList[<dlt>1</delete><ins>3</ins>],
candModeList[<dlt>2</dlt><ins>4</ins>])=
Swap(candModeList[<dlt>1</dlt><ins>3</ins>],
candModeList[<dlt>2</dlt><ins>4</ins>]) (8-25)
ix.<ins>当candModeList[3]大于candModeList[5]时,如下调换两个值:(candModeList[3],candModeList[5])=Swap(candModeList[3],candModeList[5])
x.当candModeList[4]大于candModeList[5]时,如下调换两个值:(candModeList[4],candModeList[5])=Swap(candModeList[4],candModeList[5])</ins>
2)通过以下有序步骤导出IntraPredModeY[xPb][yPb]:
i.将IntraPredModeY[xPb][yPb]设置为等于rem_intra_luma_pred_mode[xPb][yPb]。
ii.对于i等于0至<dlt>2</dlt><ins>5</ins>(包含0及<dlt>2</dlt><ins>5</ins>),当IntraPredModeY[xPb][yPb]大于或等于candModeList[i]时,将IntraPredModeY[xPb][yPb]的值递增1。
在上文所展示的JCTVC-N1003的子条款8.4.2的实例改编版本中,用于当前PU的MPM的导出过程包含左方相邻列的代表性帧内预测模式(candIntraPredModeA)及上方相邻行的代表性帧内预测模式(candIntraPredModeB)的导出过程。在此实例中,左方相邻列对应于样本(xNbA,yNbA+x),其中x=x..nPbs,且上方相邻行对应于样本(xNbA+x,yNbA),其中x=0..nPbs,其中nPbs为当前PU的预测块的宽度及高度。
此外,在上文所展示的JCTVC-N1003的子条款8.4.2的实例改编版本中,若candIntraPredModeA与candIntraPredModeB相同且candIntraPredModeA为平面或DC,则MPM候选者的列表(即,candModeList)始终包含平面、DC、垂直(即,INTRA_ANGULAR26)、水平(即,INTRA_ANGULAR10)及对角(即,INTRA_ANGULAR18)帧内预测模式。然而,在此实例中,若candIntraPredModeA并非平面且并非DC,则MPM候选者的列表包含candIntraPredModeA、平面帧内预测、最接近candIntraPredModeA的三个角度帧内预测模式及DC帧内预测模式。最接近candIntraPredModeA的三个角度帧内预测模式被计算为:
2+((candIntraPredModeA-1)%32),
(2+((candIntraPredModeA+29)%32)且
2+((candModeList[2]-1)%32)
在以上公式中,%指示取模运算。
类似地,在上文所展示的JCTVC-N1003的子条款8.4.2的实例改编版本中,若candIntraPredModeA不等于candIntraPredModeB,视频译码器可将使用展示于JCTVC-N1003的子条款8.4.2的实例改编版本中的包含取模运算的公式确定为最接近candIntraPredModeA或candIntraPredModeB的其它角度帧内预测模式包含于MPM候选者的列表中。
如上文所描述,在本发明的一些实例中,视频编码器20及视频解码器30可使用超过33个角度帧内预测模式。以下文字描述JCTVC-N1003的实例改变以实施65个角度帧内预测模式。
8.4.4.2.6 在INTRA_ANGULAR2..INTRA_ANGULAR34的范围内的帧内预测模式的规格
至此过程的输入为:
-帧内预测模式predModeIntra,
-相邻样本p[x][y],其中x=-1,y=-1..nTbS*2-1且x=0..nTbS*2-1,y=-1,
-指定变换块大小的变数nTbS,
-指定当前块的色彩分量的变数cIdx。
此过程的输出为预测样本predSamples[x][y],其中x,y=0..nTbS-1。
为本发明的图9的图8-2说明总计33个帧内角度,且表8-4指定predModeIntra与角度参数intraPredAngle之间的映射表。
<dlt>表8-4—intraPredAngle的规格
</dlt>
<ins>表8-4—intraPredAngle的规格
predModeIntra 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
intraPredAngle - - 32 29 26 23 21 19 17 15 13 11 9 7 5 3 2
predModeIntra 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
intraPredAngle 1 0 1 2 3 5 7 9 11 13 15 17 19 21 23 26 29
predModeIntra 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
intraPredAngle 32 29 26 23 21 19 17 15 13 11 9 7 5 3 2 1 0
predModeIntra 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
intraPredAngle 1 2 3 5 7 9 11 13 15 17 19 21 23 26 29 32 -
</ins>
表8-5进一步指定predModeIntra与反角度参数invAngle之间的映射表。
表8-5—invAngle的规格
predModeIntra 11 12 13 14 15 16 17 18
invAngle -4096 -1638 -910 -630 -482 -390 -315 -256
predModeIntra 19 20 21 22 23 24 25 26
invAngle -315 -390 -482 -630 -910 -1638 -4096 -
如下导出预测样本predSamples[x][y]的值,其中x,y=0..nTbS-1:
-若predModeIntra等于或大于18,则以下有序步骤适用:
1.如下指定参考样本阵列ref[x]:
-以下情形适用:
ref[x]=p[-1+x][-1],其中x=0..nTbS (8-47)
-若intraPredAngle小于0,则如下扩展主参考样本阵列:
-当(nTbS*intraPredAngle)>>5小于-1时,
ref[x]=p[-1][-1+((x*invAngle+128)>>8)],
其中x=-1..(nTbS*intraPredAngle)>>5 (8-48)
-否则,
ref[x]=p[-1+x][-1],其中x=nTbS+1..2*nTbS (8-49)
2.如下导出预测样本predSamples[x][y]的值,其中x,y=0..nTbS-1:
a.如下导出索引变量iIdx及乘法因子iFact:
iIdx=((y+1)*intraPredAngle)>>5 (8-50)
iFact=((y+1)*intraPredAngle)&31 (8-51)
b.取决于iFact的值,以下情形适用:
-若iFact不等于0,则如下导出预测样本predSamples[x][y]的值:
predSamples[x][y]=((32-iFact)*ref[x+iIdx+1]+iFact*ref[x+iIdx+2]+16)>>5 (8-52)
-否则,如下导出预测样本predSamples[x][y]的值:
predSamples[x][y]=ref[x+iIdx+1] (8-53)
c.当predModeIntra等于26(垂直),cIdx等于0且nTbS小于32时,应用以下滤波,其中x=0,y=0..nTbS-1:
predSamples[x][y]=Clip1Y(p[x][-1]+((p[-1][y]-p[-1][-1])>>1))(8-54)
-否则(predModeIntra小于18),则以下有序步骤适用:
1.如下指定参考样本阵列ref[x]:
-以下情形适用:
ref[x]=p[-1][-1+x],其中x=0..nTbS (8-55)
-若intraPredAngle小于0,则如下扩展主参考样本阵列:
-当(nTbS*intraPredAngle)>>5小于-1时,
ref[x]=p[-1+((x*invAngle+128)>>8)][-1],
其中x=-1..(nTbS*intraPredAngle)>>5 (8-56)
-否则,
ref[x]=p[-1][-1+x],其中x=nTbS+1..2*nTbS (8-57)
2.如下导出预测样本predSamples[x][y]的值,其中x,y=0..nTbS-1:
a.如下导出索引变量iIdx及乘法因子iFact:
iIdx=((x+1)*intraPredAngle)>>5 (8-58)
iFact=((x+1)*intraPredAngle)&31 (8-59)
b.取决于iFact的值,以下情形适用:
-若iFact不等于0,则如下导出预测样本predSamples[x][y]的值:
predSamples[x][y]=((32-iFact)*ref[y+iIdx+1]+iFact*ref[y+iIdx+2]+16)>>5 (8-60)
-否则,如下导出预测样本predSamples[x][y]的值:
predSamples[x][y]=ref[y+iIdx+1] (8-61)
c.当predModeIntra等于10(水平),cIdx等于0且nTbS小于32时,应用以下滤波,其中x=0..nTbS-1,y=0:
predSamples[x][y]=Clip1Y(p[-1][y]+((p[x][-1]-p[-1][-1])>>1))(8-62)
表8-5进一步指定predModeIntra与反角度参数invAngle之间的映射表。
表8-5—invAngle的规格
predModeIntra 11 12 13 14 15 16 17 18
invAngle -4096 -1638 -910 -630 -482 -390 -315 -256
predModeIntra 19 20 21 22 23 24 25 26
invAngle -315 -390 -482 -630 -910 -1638 -4096 -
如下导出预测样本predSamples[x][y]的值,其中x,y=0..nTbS-1:
-若predModeIntra等于或大于18,则以下有序步骤适用:
……
7.4.9.11残余译码语义
对于帧内预测,使用不同扫描次序。变量scanIdx指定使用哪一扫描次序,其中scanIdx等于0指定右上对角扫描次序,scanIdx等于1指定水平扫描次序,且scanIdx等于2指定垂直扫描次序。如下导出scanIdx的值:
-若CuPredMode[x0][y0]等于MODE_INTRA且以下条件中的一或多者为真,则
-log2TrafoSize等于2。
-log2TrafoSize等于3且cIdx等于0。
如下导出predModeIntra:
-若cIdx等于0,则将predModeIntra设置为等于IntraPredModeY[x0][y0]。
-否则,将predModeIntra设置为等于IntraPredModeC。
如下导出scanIdx:
-若predModeIntra在<dlt>6</dlt><ins>10</ins>至<dlt>14</dlt><ins>26</ins>的范围(包含<dlt>6</dlt><ins>10</ins>及<dlt>14</dlt><ins>26</ins>)内,则将scanIdx设置为等于2。
-否则,若predModeIntra在<dlt>22</dlt><ins>42</ins>至<dlt>30</dlt><ins>58</ins>的范围(包含<dlt>22</dlt><ins>42</ins>及<dlt>30</dlt><ins>58</ins>)内,则将scanIdx设置为等于1。
-否则,将scanIdx设置为等于0。
-否则,将scanIdx设置为等于0。
8.4.4.2.3相邻样本的滤波过程
至此过程的输入为:
-相邻样本p[x][y],其中x=-1,y=-1..nTbS*2-1且x=0..nTbS*2-1,y=-1,
-指定变换块大小的变数nTbS。
此过程的输出为经滤波样本pF[x][y],其中x=-1,y=-1..nTbS*2-1且x=0..nTbS*2-1,y=-1。
如下导出变量filterFlag:
-若以下条件中的一或多者为真,则将filterFlag设置为等于0:
-predModeIntra等于INTRA_DC。
-nTbS等于4。
-否则,以下情形适用:
-将变量minDistVerHor设置为等于Min(Abs(predModeIntra-26),Abs(predModeIntra-10))。
-在表8-3中指定变数intraHorVerDistThres[nTbS]。
-如下导出变量filterFlag:
-若minDistVerHor大于intraHorVerDistThres[nTbS],则将filterFlag设置为等于1。
-否则,将filterFlag设置为等于0。
7.4.9.11残余译码语义
对于帧内预测,使用不同扫描次序。变量scanIdx指定使用哪一扫描次序,其中scanIdx等于0指定右上对角扫描次序,scanIdx等于1指定水平扫描次序,且scanIdx等于2指定垂直扫描次序。如下导出scanIdx的值:
-若CuPredMode[x0][y0]等于MODE_INTRA且以下条件中的一或多者为真,则
-log2TrafoSize等于2。
-log2TrafoSize等于3且cIdx等于0。
如下导出predModeIntra:
-若cIdx等于0,则将predModeIntra设置为等于IntraPredModeY[x0][y0]。
-否则,将predModeIntra设置为等于IntraPredModeC。
如下导出scanIdx:
-若predModeIntra在<dlt>6</dlt><ins>10</ins>至<dlt>14</dlt><ins>26</ins>的范围(包含<dlt>6</dlt><ins>10</ins>及<dlt>14</dlt><ins>26</ins>)内,则将scanIdx设置为等于2。
-否则,若predModeIntra在<dlt>22</dlt><ins>42</ins>至<dlt>30</dlt><ins>58</ins>的范围(包含<dlt>22</dlt><ins>42</ins>及<dlt>30</dlt><ins>58</ins>)内,则将scanIdx设置为等于1。
-否则,将scanIdx设置为等于0。
-否则,将scanIdx设置为等于0。
8.4.4.2.3相邻样本的滤波过程
至此过程的输入为:
-相邻样本p[x][y],其中x=-1,y=-1..nTbS*2-1且x=0..nTbS*2-1,y=-1,
-指定变换块大小的变数nTbS。
此过程的输出为经滤波样本pF[x][y],其中x=-1,y=-1..nTbS*2-1且x=0..nTbS*2-1,y=-1。
如下导出变量filterFlag:
-若以下条件中的一或多者为真,则将filterFlag设置为等于0:
-predModeIntra等于INTRA_DC。
-nTbS等于4。
-否则,以下情形适用:
-将变量minDistVerHor设置为等于Min(Abs(predModeIntra-26),Abs(predModeIntra-10))。
-在表8-3中指定变数intraHorVerDistThres[nTbS]。
-如下导出变量filterFlag:
-若minDistVerHor大于intraHorVerDistThres[nTbS],则将filterFlag设置为等于1。
-否则,将filterFlag设置为等于0。
表8-3—用于各种变换块大小的intraHorVerDistThres[nTbS]的规格
当filterFlag等于1时,以下情形适用:
如上文所描述,根据本发明的一些技术,视频编码器20及视频解码器30可应用N分接头帧内内插滤波器。以下文字描述JCTVC-N1003的实例改变以实施4分接头帧内内插滤波器的应用。
<ins>x.x.x帧内内插滤波器系数初始化过程</ins>
此过程的输出为阵列filterCubic[sFrac][pos]。阵列索引sFrac指定在0至31的范围内的分数位置,pos指定用于第pos个样本的滤波器系数。如下导出阵列filterCubic及filterGaussian:
8.4.4.2.6在INTRA_ANGULAR2..INTRA_ANGULAR34的范围内的帧内预测模式的规格
至此过程的输入为:
-帧内预测模式predModeIntra,
-相邻样本p[x][y],其中x=-1,y=-1..nTbS*2-1且x=0..nTbS*2-1,y=-1,
-指定变换块大小的变数nTbS,
-指定当前块的色彩分量的变数cIdx。
此过程的输出为预测样本predSamples[x][y],其中x,y=0..nTbS-1。
如下导出预测样本predSamples[x][y]的值,其中x,y=0..nTbS-1:
-若predModeIntra等于或大于18,则以下有序步骤适用:
3.如下指定参考样本阵列ref[x]:
-以下情形适用:
ref[x]=p[-1+x][-1],其中x=0..nTbS (8-47)
-若intraPredAngle小于0,则如下扩展主参考样本阵列:
-当(nTbS*intraPredAngle)>>5小于-1时,
ref[x]=p[-1][-1+((x*invAngle+128)>>8)],
其中x=-1..(nTbS*intraPredAngle)>>5 (8-48)
-否则,
ref[x]=p[-1+x][-1],其中x=nTbS+1..2*nTbS (8-49)
4.如下导出预测样本predSamples[x][y]的值,其中x,y=0..nTbS-1:
a.如下导出索引变量iIdx及乘法因子iFact:
iIdx=((y+1)*intraPredAngle)>>5 (8-50)
iFact=((y+1)*intraPredAngle)&31 (8-51)
b.取决于iFact的值,以下情形适用:
-若iFact不等于0,则如下导出预测样本predSamples[x][y]的值:
<dlt>predSamples[x][y]=((32-iFact)*ref[x+iIdx+1]+iFact*ref[x
+iIdx+2]+16)>>5 (8-52)</dlt>
<ins>For p=0,..,3,pF[p]=(cIdx==0&&nTbS<=8)?
filterCubic[iFact][p]:filterGaussian[iFact][p]
P[1]=ref[x+iIdx+1]
P[2]=ref[x+iIdx+2]
P[0]=(x==0)?ref[x+iIdx+1]:ref[x+iIdx]
P[3]=(x==nTbS-1)?ref[x+iIdx+2]:ref[x+iIdx+3]
predSamples[x][y]=(pF[0]*P[0]+pF[1]*P[1]+pF[2]*P[2]+pF[3]
*P[3]+128)>>8(8-52)</ins>
-否则,如下导出预测样本predSamples[x][y]的值:
predSamples[x][y]=ref[x+iIdx+1] (8-53)
c.当predModeIntra等于26(垂直),cIdx等于0且nTbS小于32时,应用以下滤波,其中x=0,y=0..nTbS-1:
predSamples[x][y]=Clip1Y(p[x][-1]+((p[-1][y]-p[-1][-1])>>1)) (8-54)
-否则(predModeIntra小于18),则以下有序步骤适用:
3.如下指定参考样本阵列ref[x]:
-以下情形适用:
ref[x]=p[-1][-1+x],其中x=0..nTbS (8-55)
-若intraPredAngle小于0,则如下扩展主参考样本阵列:
-当(nTbS*intraPredAngle)>>5小于-1时,
ref[x]=p[-1+((x*invAngle+128)>>8)][-1],
其中x=-1..(nTbS*intraPredAngle)>>5 (8-56)
-否则,
ref[x]=p[-1][-1+x],其中x=nTbS+1..2*nTbS (8-57)
4.如下导出预测样本predSamples[x][y]的值,其中x,y=0..nTbS-1:
d.如下导出索引变量iIdx及乘法因子iFact:
iIdx=((x+1)*intraPredAngle)>>5 (8-58)
iFact=((x+1)*intraPredAngle)&31 (8-59)
e.取决于iFact的值,以下情形适用:
-若iFact不等于0,则如下导出预测样本predSamples[x][y]的值:
predSamples[x][y]=((32-iFact)*ref[y+iIdx+1]+iFact*ref[y+iIdx+
2]+16)>>5 (8-60)
-否则,如下导出预测样本predSamples[x][y]的值:
predSamples[x][y]=ref[y+iIdx+1] (8-61)
f.当predModeIntra等于10(水平),cIdx等于0且nTbS小于32时,应用以下滤波,其中x=0..nTbS-1,y=0:
predSamples[x][y]=Clip1Y(p[-1][y]+((p[x][-1]-p[-1][-1])>>1)) (8-62)
图10为说明根据本发明的技术的编码视频数据的方法的流程图。参考一般视频编码器来描述图10。一般视频编码器可(例如)对应于视频编码器20,但本发明的技术不限于任何特定类型的视频编码器。视频编码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(200)。在一个实例中,M可大于3。视频编码器编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(202)。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。基于MPM索引或非MPM索引中的所指示者为MPM索引,视频编码器针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引(204)。视频编码器基于选定帧内预测模式而编码视频数据块(206)。
图11为说明根据本发明的技术的解码视频数据的方法的流程图。参考一般视频解码器来描述图11。一般视频解码器可(例如)对应于视频解码器30,但本发明的技术不限于任何特定类型的视频解码器。视频解码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(220)。在一个实例中,M可大于3。视频解码器编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(222)。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。基于MPM索引或非MPM索引中的所指示者为MPM索引,视频解码器针对MPM索引的一或多个经上下文建模二进制数中的每一者基于用以解码一或多个相邻块的帧内预测模式而选择经上下文建模二进制数的上下文索引(224)。视频解码器基于选定帧内预测模式而重构建视频数据块(226)。
图12为说明根据本发明的技术的编码视频数据的方法的流程图。参考一般视频编码器来描述图12。一般视频编码器可(例如)对应于视频编码器20,但本发明的技术不限于任何特定类型的视频编码器。视频编码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(300)。在一个实例中,M可大于3,且MPM可包含左方相邻列的MPM及上方相邻行的MPM。在一个实例中,M个MPM可通过以下步骤中的至少一者导出:(i)定义左方相邻列的代表性帧内预测模式且将左方相邻列的代表性帧内预测模式用作左方相邻列的MPM(302),或(ii)定义上方相邻行的代表性帧内预测模式且将上方相邻行的代表性帧内预测模式用作上方相邻行的MPM(304)。
视频编码器可编码指示是MPM索引还是MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(306)。另外,视频编码器可编码MPM索引或非MPM索引中的所指示者(308)。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。视频编码器可基于选定帧内预测模式而编码视频数据块(310)。
图13为说明根据本发明的技术的解码视频数据的方法的流程图。参考一般视频解码器来描述图13。一般视频解码器可(例如)对应于视频解码器30,但本发明的技术不限于任何特定类型的视频解码器。视频解码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(350)。在一个实例中,M可大于3,且MPM可包含左方相邻列的MPM及上方相邻行的MPM。M个最可能模式可通过以下步骤中的至少一者导出:(i)定义左方相邻列的代表性帧内预测模式且将左方相邻列的代表性帧内预测模式用作左方相邻列的MPM(352),或(ii)定义上方相邻行的代表性帧内预测模式且将上方相邻行的代表性帧内预测模式用作上方相邻行的MPM(354)。
视频解码器可解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(356)。另外,视频解码器可解码MPM索引或非MPM索引中的所指示者(358)。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。视频解码器可基于选定帧内预测模式而编码视频数据块(360)。
图14为说明根据本发明的技术的编码视频数据的方法的流程图。参考一般视频编码器来描述图14。一般视频编码器可(例如)对应于视频编码器20,但本发明的技术不限于任何特定类型的视频编码器。视频编码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(400)。在一个实例中,M可大于3。视频编码器编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(402)。在图12的实例中,MPM索引指示M个MPM中的哪一者为选定帧内预测模式。此外,非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。基于MPM索引指示选定帧内预测模式,视频编码器编码非MPM索引(404)。在图14的实例中,若非MPM索引满足准则,则非MPM索引在位流中编码为短于个位的码字,且否则在位流中编码为具有个位的固定长度代码。在图14的实例中,存在非MPM索引的总计N个可用值。视频编码器基于选定帧内预测模式而编码视频数据块(406)。
图15为说明根据本发明的技术的解码视频数据的方法的流程图。参考一般视频解码器来描述图15。一般视频解码器可(例如)对应于视频解码器30,但本发明的技术不限于任何特定类型的视频解码器。视频解码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(450)。在一个实例中,M可大于3。视频解码器解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(452)。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。基于MPM索引指示选定帧内预测模式,视频解码器解码非MPM索引(454)。在图15的实例中,若非MPM索引满足准则,则非MPM索引在位流中编码为短于个位的码字,且否则在位流中编码为具有个位的固定长度代码。在图15的实例中,存在非MPM索引的总计N个可用值。此外,在图15的实例中,视频解码器基于选定帧内预测模式而重构建视频数据块(456)。
图16为说明根据本发明的技术的编码视频数据的方法的流程图。参考一般视频编码器来描述图16。一般视频编码器可(例如)对应于视频编码器20,但本发明的技术不限于任何特定类型的视频编码器。视频编码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(600)。在图16的实例中,M大于3。视频编码器编码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(602)。视频编码器编码MPM索引或非MPM索引中的所指示者(604)。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式。视频编码器基于选定帧内预测模式而编码视频数据块(606)。
图17为说明根据本发明的技术的解码视频数据的方法的流程图。参考一般视频解码器来描述图17。一般视频解码器可(例如)对应于视频解码器30,但本发明的技术不限于任何特定类型的视频解码器。视频解码器从多个帧内预测模式当中导出用于帧内预测视频数据块的M个MPM(650)。在图17的实例中,M大于3。视频解码器解码指示是MPM索引还是非MPM索引用以指示多个帧内预测模式中用于帧内预测视频数据块的选定帧内预测模式的语法元素(652)。视频解码器解码MPM索引或非MPM索引中的所指示者(654)。MPM索引指示M个MPM中的哪一者为选定帧内预测模式。非MPM索引指示多个帧内预测模式中除M个MPM外的哪一者为选定帧内预测模式(654)。视频解码器基于选定帧内预测模式而重构建视频数据块(656)。
图18为说明根据本发明的技术的编码视频数据的方法的流程图。参考一般视频编码器来描述图18。一般视频编码器可(例如)对应于视频编码器20,但本发明的技术不限于任何特定类型的视频编码器。视频编码器编码指示多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息(700)。在一个实例中,多个帧内预测模式可包含超过33个角度帧内预测模式。角度帧内预测模式可经定义使得以1/32像元准确度执行内插。视频编码器基于选定帧内预测模式而编码视频数据块(702)。
图19为说明根据本发明的技术的解码视频数据的方法的流程图。参考一般视频解码器来描述图19。一般视频解码器可(例如)对应于视频解码器30,但本发明的技术不限于任何特定类型的视频解码器。视频解码器解码指示多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息(750)。在一个实例中,多个帧内预测模式可包含超过33个角度帧内预测模式,角度帧内预测模式可经定义使得以1/32像元准确度执行内插。视频解码器可基于选定帧内预测模式而重构建视频数据块(752)。
图20为说明根据本发明的技术的编码视频数据的方法的流程图。参考一般视频编码器来描述图20。一般视频编码器可(例如)对应于视频编码器20,但本发明的技术不限于任何特定类型的视频编码器。视频编码器编码指示多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息(800)。视频编码器根据选定帧内预测模式将N分接头帧内内插滤波器应用于视频数据块的相邻经重构建样本(802)。在一个实例中,N可大于2。视频编码器可根据选定帧内预测模式基于经滤波的相邻经重构建样本而编码视频数据块(804)。
图21为说明根据本发明的技术的解码视频数据的方法的流程图。参考一般视频解码器来描述图21。一般视频解码器可(例如)对应于视频解码器30,但本发明的技术不限于任何特定类型的视频解码器。视频解码器解码指示多个帧内预测模式当中用于视频数据块的选定帧内预测模式的语法信息(850)。视频解码器根据选定帧内预测模式将N分接头帧内内插滤波器应用于视频数据块的相邻经重构建样本(852)。在一个实例中,N可大于2。视频解码器可根据选定帧内预测模式基于经滤波的相邻经重构建样本而重构建视频数据块(854)。
在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合实施。若以软件实施,则所述功能可作为一或多个指令或程序代码而存储于计算机可读媒体上或经由计算机可读媒体进行发射,且通过基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体(诸如,数据存储媒体),或包含有助于将计算机程序从一处传送到另一处(例如,根据通信协议)的任何媒体的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)诸如信号或载波的通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、程序代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
通过实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、闪存或可用于存储呈指令或数据结构形式的所要程序代码且可由计算机存取的任何其它媒体。又,任何连接被适当地称为计算机可读媒体。举例来说,若使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或无线技术(诸如,红外线、无线电及微波)而从网站、服务器或其它远程源发射指令,则同轴缆线、光纤缆线、双绞线、DSL或无线技术(诸如,红外线、无线电及微波)包含于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而是有关于非暂时性有形存储媒体。如本文中所使用,磁盘及光盘包含紧密光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘使用激光以光学方式再现数据。以上各者的组合还应包含于计算机可读媒体的范围内。
可由诸如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路的一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任何其它结构中的任一者。此外,在一些方面中,本文中所描述的功能性可提供于经配置用于编码及解码的专用硬件及/或软件模块内,或并入组合式编码解码器中。又,所述技术可完全实施于一或多个电路或逻辑组件中。
本发明的技术可实施于广泛多种装置或设备中,所述装置或设备包含无线手机、集成电路(IC)或IC的集合(例如,芯片组)。本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但未必要求由不同硬件单元来实现。确切地说,如上文所描述,可将各种单元组合于编码解码器硬件单元中,或通过互操作性硬件单元(包含如上文所描述的一或多个处理器)的集合结合合适的软件及/或固件来提供所述单元。
已描述各种实例。这些及其它实例在以下权利要求书的范围内。

Claims (32)

1.一种解码视频数据块的方法,所述方法包括:
从多个帧内预测模式当中导出用于帧内预测所述视频数据块的M个最可能模式MPM,其中M大于3;
解码指示是MPM索引还是非MPM索引用以指示所述多个帧内预测模式中用于帧内预测所述视频数据块的选定帧内预测模式的语法元素,其中所述MPM索引指示所述M个MPM中的哪一者为所述选定帧内预测模式,且其中所述非MPM索引指示所述多个帧内预测模式中除所述M个MPM外的哪一者为所述选定帧内预测模式;
基于所述MPM索引或所述非MPM索引中的所述所指示者为所述MPM索引,针对所述MPM索引的一或多个经上下文建模的二进制数中的每一者,基于用以解码一或多个相邻块的帧内预测模式而选择所述经上下文建模的二进制数的上下文索引;及
基于所述选定帧内预测模式而重构建所述视频数据块。
2.根据权利要求1所述的方法,其中:
所述视频数据块为所述视频数据的当前图片中的当前译码单元CU,
所述视频数据块的所述选定帧内预测模式为所述当前CU的当前预测单元PU的选定帧内预测模式,
所述方法进一步包括:针对所述MPM索引的所述一或多个经上下文建模的二进制数中的每一者,使用所述经上下文建模的二进制数的所述选定上下文索引以执行所述MPM索引的所述经上下文建模二进制数的上下文自适应性二进制算术译码CABAC解码,且
重构建所述视频数据块包括:
使用所述选定帧内预测模式产生所述当前PU的预测性块;及
通过将所述CU的PU的所述预测性块的样本加到所述当前CU的变换单元TU的变换块的对应样本而使用残余值重构建所述当前CU。
3.根据权利要求1所述的方法,其中所述MPM索引使用以下中的至少一者而二进制化:固定截断一元码或固定霍夫曼码。
4.根据权利要求3所述的方法,其进一步包括基于用以解码所述一或多个相邻块的帧内预测模式而选择所述固定截断一元码或所述固定霍夫曼码中的一者。
5.根据权利要求1所述的方法,其中所述一或多个经上下文建模的二进制数由所述MPM索引的第一二进制数组成。
6.根据权利要求1所述的方法,其中所述一或多个经上下文建模的二进制数由所述MPM索引的选定N个二进制数组成,其中N设置为等于M-K,其中K为预定义数目。
7.根据权利要求1所述的方法,其中选择所述经上下文建模的二进制数的上下文索引包括:
如果用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非DC或平面,则选择第一上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为DC或平面,则选择第二上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非平面,则选择第三上下文索引;及
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为平面,则选择第四上下文索引。
8.一种编码视频数据块的方法,所述方法包括:
从多个帧内预测模式当中导出用于帧内预测所述视频数据块的M个最可能模式MPM,其中M大于3;
编码指示是最MPM索引还是非MPM索引用以指示所述多个帧内预测模式中用于帧内预测所述视频数据块的选定帧内预测模式的语法元素,其中所述MPM索引指示所述M个MPM中的哪一者为所述选定帧内预测模式,且其中所述非MPM索引指示所述多个帧内预测模式中除所述M个MPM外的哪一者为所述选定帧内预测模式;
基于所述MPM索引或所述非MPM索引中的所述所指示者为所述MPM索引,针对所述MPM索引的一或多个经上下文建模的二进制数中的每一者,基于用以解码一或多个相邻块的帧内预测模式而选择所述经上下文建模二进制数的上下文索引;及
基于所述选定帧内预测模式而编码所述视频数据块。
9.根据权利要求8所述的方法,其中:
所述视频数据块为所述视频数据的当前图片中的当前译码单元CU,
所述视频数据块的所述选定帧内预测模式为所述当前CU的当前预测单元PU的选定帧内预测模式,
所述方法进一步包括:针对所述MPM索引的所述一或多个经上下文建模二进制数中的每一者,使用所述经上下文建模二进制数的所述选定上下文索引以执行所述MPM索引的所述经上下文建模二进制数的上下文自适应性二进制算术译码CABAC编码,且
基于所述选定帧内预测模式而编码所述视频数据块包括:
基于所述PU的所述选定帧内预测模式而产生所述PU的预测性块;及
产生表示所述当前CU与所述预测性块之间的像素差的残余数据。
10.根据权利要求8所述的方法,其中所述MPM索引使用以下中的至少一者而二进制化:固定截断一元码或固定霍夫曼码。
11.根据权利要求10所述的方法,其进一步包括基于用以解码所述一或多个相邻块的帧内预测模式而选择所述固定截断一元码或所述固定霍夫曼码中的一者。
12.根据权利要求8所述的方法,其中所述一或多个经上下文建模二进制数由所述MPM索引的第一二进制数组成。
13.根据权利要求8所述的方法,其中所述一或多个经上下文建模二进制数由所述MPM索引的选定N个二进制数组成,其中N设置为等于M-K,其中K为预定义数目。
14.根据权利要求8所述的方法,其中选择所述经上下文建模二进制数的上下文索引包括:
如果用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非DC或平面,则选择第一上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为DC或平面,则选择第二上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非平面,则选择第三上下文索引;及
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为平面,则选择第四上下文索引。
15.根据权利要求8所述的方法,其进一步包括:
使用绝对变换差和SATD确定帧内预测模式的预定义子集的帧内预测角度;
基于帧内预测模式的所述预定义子集的所述经确定帧内预测角度而确定N个所要帧内预测模式;
确定相对于经确定的所述N个所要帧内预测模式的预测角度差;及
基于相对于经确定的所述N个所要帧内预测模式的所述经确定预测角度差而确定帧内预测模式。
16.一种用于解码视频数据的装置,所述装置包括:
存储器,其经配置以存储所述视频数据;及
一或多个处理器,其经配置以进行以下操作:
从多个帧内预测模式当中导出用于帧内预测所述视频数据的块的M个最可能模式MPM,其中M大于3;
解码指示是MPM索引还是非MPM索引用以指示所述多个帧内预测模式中用于帧内预测所述视频数据块的选定帧内预测模式的语法元素,其中所述MPM索引指示所述M个MPM中的哪一者为所述选定帧内预测模式,且其中所述非MPM索引指示所述多个帧内预测模式中除所述M个MPM外的哪一者为所述选定帧内预测模式;
基于所述MPM索引或所述非MPM索引中的所述所指示者为所述MPM索引,针对所述MPM索引的一或多个经上下文建模二进制数中的每一者,基于用以解码一或多个相邻块的帧内预测模式而选择所述经上下文建模二进制数的上下文索引;及
基于所述选定帧内预测模式而重构建所述视频数据块。
17.根据权利要求16的装置,其中:
所述视频数据块为所述视频数据的当前图片中的当前译码单元CU,
所述视频数据块的所述选定帧内预测模式为所述当前CU的当前预测单元PU的选定帧内预测模式,
所述一或多个处理器经进一步配置以使得针对所述MPM索引的所述一或多个经上下文建模二进制数中的每一者,所述一或多个处理器使用所述经上下文建模二进制数的所述选定上下文索引以执行所述MPM索引的所述经上下文建模二进制数的上下文自适应性二进制算术译码CABAC解码,且
所述一或多个处理器经配置以使得作为重构建所述视频数据块的部分,所述一或多个处理器进行以下操作:
使用所述选定帧内预测模式产生所述当前PU的预测性块;及
通过将所述CU的PU的所述预测性块的样本加到所述当前CU的变换单元TU的变换块的对应样本而使用残余值重构建所述当前CU。
18.根据权利要求16所述的装置,其中所述一或多个处理器经配置以使用以下中的至少一者而对所述MPM索引进行二进制化:固定截断一元码或固定霍夫曼码。
19.根据权利要求18所述的装置,其中所述一或多个处理器经配置以基于用以解码所述一或多个相邻块的帧内预测模式而选择所述固定截断一元码或所述固定霍夫曼码中的一者。
20.根据权利要求16所述的装置,其中所述一或多个经上下文建模二进制数由所述MPM索引的第一二进制数组成。
21.根据权利要求16所述的装置,其中所述一或多个经上下文建模二进制数由所述MPM索引的选定N个二进制数组成,其中N设置为等于M-K,其中K为预定义数目。
22.根据权利要求16所述的装置,其中所述一或多个处理器经配置以使得作为选择所述经上下文建模二进制数的上下文索引的部分,所述一或多个处理器进行以下操作:
如果用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非DC或平面,则选择第一上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为DC或平面,则选择第二上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非平面,则选择第三上下文索引;及
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为平面,则选择第四上下文索引。
23.一种用于编码视频数据的装置,所述装置包括:
存储器,其经配置以存储所述视频数据;及
一或多个处理器,其经配置以进行以下操作:
从多个帧内预测模式当中导出用于帧内预测视频数据块的M个最可能模式MPM,其中M大于3;
编码指示是MPM索引还是非MPM索引用以指示所述多个帧内预测模式中用于帧内预测所述视频数据块的选定帧内预测模式的语法元素,其中所述MPM索引指示所述M个MPM中的哪一者为所述选定帧内预测模式,且其中所述非MPM索引指示所述多个帧内预测模式中除所述M个MPM外的哪一者为所述选定帧内预测模式;
基于所述MPM索引或所述非MPM索引中的所述所指示者为所述MPM索引,针对所述MPM索引的一或多个经上下文建模二进制数中的每一者,基于用以解码一或多个相邻块的帧内预测模式而选择所述经上下文建模二进制数的上下文索引;及
基于所述选定帧内预测模式而编码所述视频数据块。
24.根据权利要求23所述的装置,其中:
所述视频数据块为所述视频数据的当前图片中的当前译码单元CU,
所述视频数据块的所述选定帧内预测模式为所述当前CU的当前预测单元PU的选定帧内预测模式,
所述一或多个处理器经进一步配置以使得针对所述MPM索引的所述一或多个经上下文建模二进制数中的每一者,所述一或多个处理器使用所述经上下文建模二进制数的所述选定上下文索引以执行所述MPM索引的所述经上下文建模二进制数的上下文自适应性二进制算术译码CABAC编码,且
所述一或多个处理器经配置以使得作为基于所述选定帧内预测模式而编码所述视频数据块的部分,所述一或多个处理器进行以下操作:
基于所述PU的所述选定帧内预测模式而产生所述PU的预测性块;及
产生表示所述当前CU与所述预测性块之间的像素差的残余数据。
25.根据权利要求23所述的装置,其中所述一或多个处理器经配置以使用以下中的至少一者而对所述MPM索引进行二进制化:固定截断一元码或固定霍夫曼码。
26.根据权利要求25所述的装置,其中所述一或多个处理器经配置以基于用以解码所述一或多个相邻块的帧内预测模式而选择所述固定截断一元码或所述固定霍夫曼码中的一者。
27.根据权利要求23所述的装置,其中所述一或多个经上下文建模二进制数由所述MPM索引的第一二进制数组成。
28.根据权利要求23所述的装置,其中所述一或多个经上下文建模二进制数由所述MPM索引的选定N个二进制数组成,其中N设置为等于M-K,其中K为预定义数目。
29.根据权利要求23所述的装置,其中所述一或多个处理器经配置以使得作为选择所述经上下文建模二进制数的上下文索引的部分,所述一或多个处理器进行以下操作:
如果用以解码左方相邻块及上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非DC或平面,则选择第一上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式相同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为DC或平面,则选择第二上下文索引;
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式两者皆非平面,则选择第三上下文索引;及
如果用以解码所述左方相邻块及所述上方相邻块的帧内预测模式不同且用以解码所述左方相邻块及所述上方相邻块的所述帧内预测模式中的至少一者为平面,则选择第四上下文索引。
30.根据权利要求23所述的装置,其中所述一或多个处理器经配置以进行以下操作:
使用绝对变换差和SATD确定帧内预测模式的预定义子集的帧内预测角度;
基于帧内预测模式的所述预定义子集的所述经确定帧内预测角度而确定N个所要帧内预测模式;
确定相对于经确定的所述N个所要帧内预测模式的预测角度差;及
基于相对于经确定的所述N个所要帧内预测模式的所述经确定预测角度差而确定一帧内预测模式。
31.一种用于译码视频数据块的视频译码装置,所述视频译码装置包括:
用于从多个帧内预测模式当中导出用于帧内预测所述视频数据块的M个最可能模式的装置,其中M大于3;
用于译码指示是最可能模式索引还是非最可能模式索引用以指示所述多个帧内预测模式中用于帧内预测所述视频数据块的选定帧内预测模式的语法元素的装置,其中所述MPM索引指示所述M个MPM中的哪一者为所述选定帧内预测模式,且其中所述非MPM索引指示所述多个帧内预测模式中除所述M个MPM外的哪一者为所述选定帧内预测模式;为所述MPM索引,针对所述的一或多个经上下文建模二进制数中的每一者而选择
用于针对所述MPM索引的一或多个经上下文建模二进制数中的每一者基于所述MPM索引或所述非MPM索引中的所述所指示者为所述MPM索引且基于用以译码一或多个相邻块的帧内预测模式而选择所述经上下文建模二进制数的上下文索引的装置;及
用于基于所述选定帧内预测模式而译码所述视频数据块的装置。
32.一种计算机可读媒体,其存储在由一或多个处理器执行时使所述一或多个处理器进行以下操作的指令:
从多个帧内预测模式当中导出用于帧内预测视频数据块的M个最可能模式,其中M大于3;
译码指示是最可能模式索引还是非最可能模式索引用以指示所述多个帧内预测模式中用于帧内预测所述视频数据块的选定帧内预测模式的语法元素,其中所述MPM索引指示所述M个MPM中的哪一者为所述选定帧内预测模式,且其中所述非MPM索引指示所述多个帧内预测模式中除所述M个MPM外的哪一者为所述选定帧内预测模式;
基于所述MPM索引或所述非MPM索引中的所述所指示者为所述MPM索引,针对所述MPM索引的一或多个经上下文建模二进制数中的每一者,基于用以译码一或多个相邻块的帧内预测模式而选择所述经上下文建模二进制数的上下文索引;及
基于所述选定帧内预测模式而译码视频数据块。
CN201680034469.4A 2015-06-18 2016-06-17 帧内预测及帧内模式译码 Active CN107736022B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201562181744P 2015-06-18 2015-06-18
US62/181,744 2015-06-18
US201562192310P 2015-07-14 2015-07-14
US62/192,310 2015-07-14
US15/184,033 US10142627B2 (en) 2015-06-18 2016-06-16 Intra prediction and intra mode coding
US15/184,033 2016-06-16
PCT/US2016/038145 WO2016205693A2 (en) 2015-06-18 2016-06-17 Intra prediction and intra mode coding

Publications (2)

Publication Number Publication Date
CN107736022A true CN107736022A (zh) 2018-02-23
CN107736022B CN107736022B (zh) 2020-04-24

Family

ID=56264091

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680034469.4A Active CN107736022B (zh) 2015-06-18 2016-06-17 帧内预测及帧内模式译码

Country Status (9)

Country Link
US (1) US10142627B2 (zh)
EP (1) EP3311568B1 (zh)
JP (1) JP6543736B2 (zh)
KR (1) KR102005661B1 (zh)
CN (1) CN107736022B (zh)
AU (1) AU2016278972A1 (zh)
ES (1) ES2854699T3 (zh)
TW (1) TW201717624A (zh)
WO (1) WO2016205693A2 (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020020221A1 (en) * 2018-07-24 2020-01-30 Mediatek Singapore Pte. Ltd. Methods and apparatus for entropy coding and decoding aspects of video data
CN111108749A (zh) * 2018-09-25 2020-05-05 北京大学 编码方法、解码方法、编码设备和解码设备
CN111279699A (zh) * 2019-04-26 2020-06-12 深圳市大疆创新科技有限公司 视频编解码的方法和装置
WO2020143742A1 (en) * 2019-01-10 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Simplified context modeling for context adaptive binary arithmetic coding
CN111903130A (zh) * 2018-03-28 2020-11-06 鸿颖创新有限公司 在多参考列预测中编码视频数据的设备及方法
CN112005549A (zh) * 2018-11-14 2020-11-27 腾讯美国有限责任公司 用于编码块标志(cbf)和预测模式的改进的上下文设计的方法和装置
CN112567740A (zh) * 2018-08-29 2021-03-26 华为技术有限公司 用于帧内预测的方法和装置
CN112689999A (zh) * 2018-09-11 2021-04-20 Lg 电子株式会社 基于内预测模式处理图像的方法及其设备
CN112840654A (zh) * 2018-10-12 2021-05-25 韦勒斯标准与技术协会公司 使用多假设预测的视频信号处理方法和装置
US11070820B2 (en) 2018-11-06 2021-07-20 Beijing Bytedance Network Technology Co., Ltd. Condition dependent inter prediction with geometric partitioning
CN113287311A (zh) * 2018-12-22 2021-08-20 北京字节跳动网络技术有限公司 两步交叉分量预测模式的指示
CN114173115A (zh) * 2019-03-23 2022-03-11 华为技术有限公司 进行帧内预测的编码器、解码器和对应方法
US11956431B2 (en) 2018-12-30 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Conditional application of inter prediction with geometric partitioning in video processing

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11463689B2 (en) 2015-06-18 2022-10-04 Qualcomm Incorporated Intra prediction and intra mode coding
US10841593B2 (en) 2015-06-18 2020-11-17 Qualcomm Incorporated Intra prediction and intra mode coding
CN112272298B (zh) * 2015-06-23 2023-07-18 联发科技(新加坡)私人有限公司 转换系数编解码的方法及装置
WO2017138393A1 (en) 2016-02-08 2017-08-17 Sharp Kabushiki Kaisha Systems and methods for intra prediction coding
CN110572649B (zh) * 2016-04-29 2023-04-07 世宗大学校产学协力团 用于对图像信号进行编码和解码的方法和装置
US10715818B2 (en) 2016-08-04 2020-07-14 Intel Corporation Techniques for hardware video encoding
US20180146191A1 (en) * 2016-11-22 2018-05-24 Futurewei Technologies, Inc. System and Method for Coding Intra Prediction Mode using a Second Set of Most Probable Modes
CN117041564A (zh) 2016-11-29 2023-11-10 成均馆大学校产学协力团 影像编码/解码方法、装置以及对比特流进行存储的记录介质
HUE062025T2 (hu) * 2016-12-23 2023-09-28 Huawei Tech Co Ltd Kódoló berendezés egy kiterjesztési irányú intra-predikciós mód jelzésére irányított intra-predikciós módok csoportján belül
EP3399754A1 (en) * 2017-05-04 2018-11-07 Thomson Licensing Method and apparatus for most probable mode (mpm) reordering for intra prediction
US10630974B2 (en) * 2017-05-30 2020-04-21 Google Llc Coding of intra-prediction modes
JP6886528B2 (ja) 2017-05-31 2021-06-16 エルジー エレクトロニクス インコーポレイティド 映像コーディングシステムにおけるイントラ予測による映像のデコーディング方法及び装置
US10764587B2 (en) * 2017-06-30 2020-09-01 Qualcomm Incorporated Intra prediction in video coding
JP7147145B2 (ja) * 2017-09-26 2022-10-05 富士通株式会社 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
IL273437B1 (en) 2017-10-18 2024-02-01 Samsung Electronics Co Ltd Method and device for video decoding, and method and device for video encoding
US10484695B2 (en) 2017-10-23 2019-11-19 Google Llc Refined entropy coding for level maps
WO2019096221A1 (en) * 2017-11-17 2019-05-23 Fg Innovation Ip Company Limited Device and method for coding video data based on adjusted intra mode list
WO2019138998A1 (ja) * 2018-01-12 2019-07-18 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
CN110049339B (zh) * 2018-01-16 2023-02-17 腾讯科技(深圳)有限公司 图像编码中的预测方向选取方法、装置和存储介质
US10869060B2 (en) * 2018-01-30 2020-12-15 Google Llc Efficient context model computation design in transform coefficient coding
KR102618498B1 (ko) * 2018-03-08 2023-12-27 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2019194441A1 (ko) * 2018-04-02 2019-10-10 엘지전자 주식회사 적응적으로 도출되는 mpm 리스트에 기반한 영상 코딩 방법 및 그 장치
US10645381B2 (en) 2018-04-30 2020-05-05 Google Llc Intra-prediction for smooth blocks in image/video
US11277644B2 (en) 2018-07-02 2022-03-15 Qualcomm Incorporated Combining mode dependent intra smoothing (MDIS) with intra interpolation filter switching
CN117729327A (zh) * 2018-09-03 2024-03-19 华为技术有限公司 用于帧内预测的方法和装置
WO2020050697A1 (ko) * 2018-09-06 2020-03-12 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
CN110891180B (zh) 2018-09-10 2023-11-17 华为技术有限公司 视频解码方法及视频解码器
CA3112324A1 (en) * 2018-09-19 2020-03-26 Fujitsu Limited Video coding and decoding method and apparatus which change the prediction mode according to the combination of the shape of a coding target block and the shape of a block adjacent to the coding target block
JP7323014B2 (ja) * 2018-09-19 2023-08-08 富士通株式会社 映像復号方法
EP3629579A1 (en) * 2018-09-27 2020-04-01 Ateme Method for image processing and apparatus for implementing the same
CN117915085A (zh) * 2018-10-07 2024-04-19 三星电子株式会社 用于编码或解码视频信号的视频信号处理方法和设备
US11303885B2 (en) 2018-10-25 2022-04-12 Qualcomm Incorporated Wide-angle intra prediction smoothing and interpolation
CN111435993B (zh) * 2019-01-14 2022-08-26 华为技术有限公司 视频编码器、视频解码器及相应方法
WO2020171647A1 (ko) * 2019-02-21 2020-08-27 엘지전자 주식회사 영상 코딩 시스템에서 인트라 예측을 사용하는 영상 디코딩 방법 및 그 장치
US11025913B2 (en) 2019-03-01 2021-06-01 Intel Corporation Encoding video using palette prediction and intra-block copy
CN116668715A (zh) * 2019-03-23 2023-08-29 Lg电子株式会社 解码设备、编码设备和发送设备
MX2021012230A (es) 2019-04-12 2021-11-03 Beijing Bytedance Network Tech Co Ltd Construccion de lista de modos mas probables para intraprediccion basada en matriz.
JP7403555B2 (ja) 2019-04-16 2023-12-22 北京字節跳動網絡技術有限公司 イントラコーディングモードにおけるマトリクスの導出
CN117241018A (zh) 2019-05-01 2023-12-15 北京字节跳动网络技术有限公司 使用滤波的基于矩阵的帧内预测
WO2020221372A1 (en) * 2019-05-01 2020-11-05 Beijing Bytedance Network Technology Co., Ltd. Context coding for matrix-based intra prediction
WO2020224660A1 (en) * 2019-05-09 2020-11-12 Beijing Bytedance Network Technology Co., Ltd. Most probable mode list construction for screen content coding
CN117560489A (zh) 2019-05-14 2024-02-13 北京字节跳动网络技术有限公司 用于残差编解码的上下文建模
BR112021022868A2 (pt) 2019-05-22 2022-01-04 Beijing Bytedance Network Tech Co Ltd Método de processamento de vídeos, aparelho para processar dados de vídeo e meios de armazenamento e gravação não transitórios legíveis por computador
WO2020239018A1 (en) 2019-05-31 2020-12-03 Beijing Bytedance Network Technology Co., Ltd. Restricted upsampling process in matrix-based intra prediction
JP2022534320A (ja) 2019-06-05 2022-07-28 北京字節跳動網絡技術有限公司 マトリクスベースイントラ予測のためのコンテキスト決定
US10855983B2 (en) * 2019-06-13 2020-12-01 Intel Corporation Encoding video using two-stage intra search
KR102232246B1 (ko) * 2019-06-21 2021-03-25 삼성전자주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2021032113A1 (en) 2019-08-19 2021-02-25 Beijing Bytedance Network Technology Co., Ltd. Updating for counter-based intra prediction mode
EP4042689A4 (en) 2019-10-28 2023-06-07 Beijing Bytedance Network Technology Co., Ltd. SIGNALING AND SYNTAX ANALYSIS BASED ON A COLOR COMPONENT
CN114731430A (zh) * 2019-12-05 2022-07-08 交互数字Vc控股法国有限公司 与多个变换选择、矩阵加权帧内预测或多参考线帧内预测结合的用于视频编码和解码的帧内子分区

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140086323A1 (en) * 2011-06-17 2014-03-27 Mediatek Inc. Method and apparatus for coding of intra prediction mode
CN103959775A (zh) * 2011-11-04 2014-07-30 高通股份有限公司 帧内模式视频译码
CN104170379A (zh) * 2011-10-24 2014-11-26 码间私人有限公司 用于图像解码的方法和装置
CN104221374A (zh) * 2012-04-11 2014-12-17 高通股份有限公司 在视频译码中分群经旁路译码语法元素

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101791242B1 (ko) 2010-04-16 2017-10-30 에스케이텔레콤 주식회사 영상 부호화/복호화 장치 및 방법
EP2947878B1 (en) 2010-04-23 2017-02-15 M&K Holdings Inc. Apparatus for encoding an image
US20120106640A1 (en) 2010-10-31 2012-05-03 Broadcom Corporation Decoding side intra-prediction derivation for video coding
US20120183041A1 (en) 2011-01-14 2012-07-19 Sony Corporation Interpolation filter for intra prediction of hevc
US9654785B2 (en) 2011-06-09 2017-05-16 Qualcomm Incorporated Enhanced intra-prediction mode signaling for video coding using neighboring mode
CN103636220B (zh) * 2011-06-28 2017-10-13 寰发股份有限公司 编码/解码帧内预测模式的方法及装置
JP2013012995A (ja) * 2011-06-30 2013-01-17 Sony Corp 画像処理装置および方法
PL3139596T3 (pl) * 2011-09-13 2020-03-31 Hfi Innovation Inc. Sposób i urządzenie do kodowania wewnątrzklatkowego w HEVC
KR101768401B1 (ko) * 2012-01-13 2017-08-14 샤프 가부시키가이샤 화상 복호 장치
KR20140129423A (ko) 2013-04-29 2014-11-07 인텔렉추얼디스커버리 주식회사 인트라 예측 방법 및 장치
US10368098B2 (en) 2014-06-20 2019-07-30 Samsung Electronics Co., Ltd. Method and device for transmitting prediction mode of depth image for interlayer video encoding and decoding
US20160373782A1 (en) 2015-06-18 2016-12-22 Qualcomm Incorporated Intra prediction and intra mode coding
US20160373770A1 (en) 2015-06-18 2016-12-22 Qualcomm Incorporated Intra prediction and intra mode coding
US20160373742A1 (en) 2015-06-18 2016-12-22 Qualcomm Incorporated Intra prediction and intra mode coding
US11463689B2 (en) 2015-06-18 2022-10-04 Qualcomm Incorporated Intra prediction and intra mode coding
US10841593B2 (en) 2015-06-18 2020-11-17 Qualcomm Incorporated Intra prediction and intra mode coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140086323A1 (en) * 2011-06-17 2014-03-27 Mediatek Inc. Method and apparatus for coding of intra prediction mode
CN104170379A (zh) * 2011-10-24 2014-11-26 码间私人有限公司 用于图像解码的方法和装置
CN103959775A (zh) * 2011-11-04 2014-07-30 高通股份有限公司 帧内模式视频译码
CN104221374A (zh) * 2012-04-11 2014-12-17 高通股份有限公司 在视频译码中分群经旁路译码语法元素

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIANLE CHEN ET AL.: "Further improvements to HMKTA-1.0", 《VIDEO CODING EXPERTS GROUP (VCEG) MEETING》 *
SHIPING ZHU ET AL.: "Fast intra-prediction mode decision algorithm for high efficieny video coding", 《2014 9TH IEEE CONFERENCE ON INDUSTRIAL ELECTRONICS AND APPLICATIONS》 *
周银河等: "一种基于MPM的帧内预测模式快速选择算法在HEVC中的应用", 《中国科技论文在线》 *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111903130A (zh) * 2018-03-28 2020-11-06 鸿颖创新有限公司 在多参考列预测中编码视频数据的设备及方法
CN111903130B (zh) * 2018-03-28 2022-06-17 鸿颖创新有限公司 在多参考列预测中编码视频数据的设备及方法
US11509890B2 (en) 2018-07-24 2022-11-22 Hfi Innovation Inc. Methods and apparatus for entropy coding and decoding aspects of video data
WO2020020221A1 (en) * 2018-07-24 2020-01-30 Mediatek Singapore Pte. Ltd. Methods and apparatus for entropy coding and decoding aspects of video data
CN112385214A (zh) * 2018-07-24 2021-02-19 联发科技(新加坡)私人有限公司 熵编码和解码视频数据的方法和装置
TWI722498B (zh) * 2018-07-24 2021-03-21 新加坡商聯發科技(新加坡)私人有限公司 熵編碼和解碼視訊資料的方法和裝置
CN112567740A (zh) * 2018-08-29 2021-03-26 华为技术有限公司 用于帧内预测的方法和装置
CN112567740B (zh) * 2018-08-29 2023-03-10 华为技术有限公司 用于帧内预测的方法和装置
CN112689999A (zh) * 2018-09-11 2021-04-20 Lg 电子株式会社 基于内预测模式处理图像的方法及其设备
CN111108749A (zh) * 2018-09-25 2020-05-05 北京大学 编码方法、解码方法、编码设备和解码设备
CN112840654A (zh) * 2018-10-12 2021-05-25 韦勒斯标准与技术协会公司 使用多假设预测的视频信号处理方法和装置
CN112840654B (zh) * 2018-10-12 2024-04-16 韦勒斯标准与技术协会公司 使用多假设预测的视频信号处理方法和装置
US11457226B2 (en) 2018-11-06 2022-09-27 Beijing Bytedance Network Technology Co., Ltd. Side information signaling for inter prediction with geometric partitioning
US11070820B2 (en) 2018-11-06 2021-07-20 Beijing Bytedance Network Technology Co., Ltd. Condition dependent inter prediction with geometric partitioning
US11070821B2 (en) 2018-11-06 2021-07-20 Beijing Bytedance Network Technology Co., Ltd. Side information signaling for inter prediction with geometric partitioning
US11159808B2 (en) 2018-11-06 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Using inter prediction with geometric partitioning for video processing
US11611763B2 (en) 2018-11-06 2023-03-21 Beijing Bytedance Network Technology Co., Ltd. Extensions of inter prediction with geometric partitioning
US11166031B2 (en) 2018-11-06 2021-11-02 Beijing Bytedance Network Technology Co., Ltd. Signaling of side information for inter prediction with geometric partitioning
US11570450B2 (en) 2018-11-06 2023-01-31 Beijing Bytedance Network Technology Co., Ltd. Using inter prediction with geometric partitioning for video processing
CN112005549B (zh) * 2018-11-14 2022-08-16 腾讯美国有限责任公司 一种帧内-帧间预测控制方法、装置、设备及存储介质
CN112005549A (zh) * 2018-11-14 2020-11-27 腾讯美国有限责任公司 用于编码块标志(cbf)和预测模式的改进的上下文设计的方法和装置
CN113287311A (zh) * 2018-12-22 2021-08-20 北京字节跳动网络技术有限公司 两步交叉分量预测模式的指示
CN113287311B (zh) * 2018-12-22 2024-03-12 北京字节跳动网络技术有限公司 两步交叉分量预测模式的指示
US11956431B2 (en) 2018-12-30 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Conditional application of inter prediction with geometric partitioning in video processing
WO2020143742A1 (en) * 2019-01-10 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Simplified context modeling for context adaptive binary arithmetic coding
CN113170139B (zh) * 2019-01-10 2023-12-05 北京字节跳动网络技术有限公司 上下文自适应二进制算数编码的简化上下文建模
CN113170139A (zh) * 2019-01-10 2021-07-23 北京字节跳动网络技术有限公司 上下文自适应二进制算数编码的简化上下文建模
CN114173115A (zh) * 2019-03-23 2022-03-11 华为技术有限公司 进行帧内预测的编码器、解码器和对应方法
CN111279699A (zh) * 2019-04-26 2020-06-12 深圳市大疆创新科技有限公司 视频编解码的方法和装置

Also Published As

Publication number Publication date
AU2016278972A1 (en) 2017-11-30
TW201717624A (zh) 2017-05-16
ES2854699T3 (es) 2021-09-22
EP3311568B1 (en) 2020-11-18
JP6543736B2 (ja) 2019-07-10
US20160373741A1 (en) 2016-12-22
CN107736022B (zh) 2020-04-24
WO2016205693A2 (en) 2016-12-22
US10142627B2 (en) 2018-11-27
KR102005661B1 (ko) 2019-07-30
EP3311568A2 (en) 2018-04-25
KR20180019562A (ko) 2018-02-26
WO2016205693A3 (en) 2017-02-02
JP2018523376A (ja) 2018-08-16

Similar Documents

Publication Publication Date Title
CN107736022A (zh) 帧内预测及帧内模式译码
CN107771393A (zh) 帧内预测及帧内模式译码
CN107743705A (zh) 帧内预测及帧内模式译码
CN107750455A (zh) 帧内预测及帧内模式译码
CN107750457A (zh) 帧内预测及帧内模式译码
CN107736023A (zh) 帧内预测及帧内模式译码
CN106105203B (zh) 块自适应颜色空间转换译码
CN106464881B (zh) 块自适应颜色空间转换译码的方法和装置
CN105493507B (zh) 用于帧内块复制的残余预测
CN105474645B (zh) 对视频数据进行解码的方法、对视频数据进行编码的方法、视频解码装置及视频编码装置
CN105379266B (zh) 停用帧内预测滤波
CN110100439A (zh) 用于视频译码的帧内预测技术
CN106105206B (zh) 用于使用置零系数的低复杂度正变换的系统和方法
CN105308959B (zh) 用于视频译码的自适应颜色变换
CN105532007B (zh) 在视频译码中用于非亮度分量的自适应解块滤波
CN103947207B (zh) 用于图片分割方案的统一设计
CN106537916B (zh) 编码和解码视频数据的方法和装置及计算机可读存储介质
CN106664425A (zh) 视频译码中的跨分量预测
CN104471942B (zh) 重新使用参数集用于视频译码
CN106797468B (zh) 高效视频编码(hevc)屏幕内容编码(scc)中改进的调色板模式
CN104704843B (zh) 视频性质的指示
CN110100436A (zh) 使用导出色度模式译码视频数据
CN107660341A (zh) 切片级帧内块复制及其它视频译码改进
CN106464885A (zh) 块自适应颜色空间转换译码
CN107409217A (zh) 用于视频编码的自适应模式检查次序

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant