用于视频译码的对非正方形块的解块的制作方法

文档序号:7991197阅读:236来源:国知局
用于视频译码的对非正方形块的解块的制作方法
【专利摘要】在一个实例中,一种视频译码装置经配置以:对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。视频数据的非正方形块可包括,例如,由于非对称运动分割、对称运动分割的非正方形变换,或其它四叉树变换分裂程序而产生的分区(例如,预测单元或变换单元)。在所述块中的任一者或两者是非正方形时,所述视频译码装置可将经调适的解块决策函数和/或经调适的解块滤波器应用于所述共同边缘。
【专利说明】用于视频译码的对非正方形块的解块
[0001]本发明主张2011年7月19日申请的美国临时申请案61/509,489、2011年8月17日申请的美国临时申请案61/524,491、2011年9月13日申请的美国临时申请案61/534,284以及2011年11月3日申请的美国临时申请案61/555,388,所述申请案中的每一者的全部内容在此以引用的方式并入本文中。
【技术领域】
[0002]本发明涉及视频译码。
【背景技术】
[0003]数字视频能力可并入到大范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频会议装置等等。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)定义的标准和所述标准的扩展部分中所描述的那些视频压缩技术,以更有效地发射和接收数字视频信息。
[0004]视频压缩技术执行空间预测和/或时间预测以减少或移除视频序列中所固有的冗余。对于基于块的视频译码,可将一视频帧或切片分割成若干宏块。可进一步分割每一宏块。使用关于相邻宏块的空间预测编码经帧内译码的(I)帧或切片中的宏块。经帧间译码的(P或B)帧或切片中的宏块可使用关于同一帧或切片中的相邻宏块的空间预测或关于其它参考帧的时间预测。

【发明内容】

[0005]一般来说,本发明描述用于视频译码的对非正方形块的解块的技术。块可由于多种因素而为非正方形的,例如非对称运动分割、短距离帧内预测以及在非正方形变换中的四叉树变换分裂。边缘一般出现在视频数据的块(例如,变换单元(TU))之间。本发明的技术可改进应用于此类边缘的解块决策和解块函数。同样,本发明的技术可避免在处理边缘以用于解块时对边缘的过多处理以及存储要求上的显著增加。
[0006]在一个实例中,一种对视频数据进行译码的方法包含:对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。
[0007]在另一实例中,一种用于对视频数据进行译码的设备包含:用于对视频数据的第一块和视频数据的第二块进行解码的装置,其中所述第一块和所述第二块共享共同边缘;以及用于至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块的装置。
[0008]在另一实例中,一种用于对视频数据进行译码的设备包含:视频译码装置,其经配置以对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。
[0009]在另一实例中,一种计算机程序产品包含上面存储有指令的计算机可读存储媒体,所述指令在被执行时致使可编程处理器:对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。
[0010]一个或一个以上实例的细节陈述于附图及以下描述中。其它特征、目标及优势将从描述及附图和从权利要求书中显而易见。
【专利附图】

【附图说明】
[0011]图1为说明可利用用于对非正方形块之间的边缘进行解块的技术的实例性视频编码和解码系统的框图。
[0012]图2为说明可实施用于对非正方形块之间的边缘进行解块的技术的视频编码器的实例的框图。
[0013]图3是说明对经编码视频序列进行解码的视频解码器的实例的框图。
[0014]图4是说明实例性解块器的组件的框图。
[0015]图5A到5C是说明相对于两个块之间的边缘的各种块定向的概念图。
[0016]图6是说明根据本发明的技术的用于对两个块之间的边缘进行解块的实例性方法的流程图。
[0017]图7是说明在两个块之间的共同边缘附近的两个实例性块的像素位置的概念图。
[0018]图8是说明其中可使用自适应解块决策函数和解块滤波器的例子的各种实例的概念图。
[0019]图9是说明用于非正方形四叉树分割的实例性分割结构的概念图。
[0020]图10是说明非对称运动分割(AMP)经分割块的各种实例的概念图。
[0021]图11A到111是说明短距离帧内预测(SDIP)经分割块的各种实例的概念图。
【具体实施方式】
[0022]一般来说,视频数据包含帧序列,可在帧内预测模式或帧间预测模式中对所述帧序列进行译码。可将帧划分为若干视频数据块,且可针对每一块选择编码模式。在帧间预测模式中,可相对于一个或一个以上先前经译码帧的数据来预测块。在帧内预测模式中,可相对于同一帧的一个或一个以上相邻的先前经译码块来预测块。
[0023]当前正在努力开发新的视频译码标准(当前被称作高效视频译码(HEVC))。即将到来的标准还被称作H.265。标准化工作是基于被称作HEVC测试模型(HM)的视频译码装置模型。HM假设优于根据例如ITU-T H.264/AVC等先前译码标准的视频译码装置的若干能力。举例来说,尽管H.264提供九种帧内预测编码模式,但HM提供多达三十四种帧内预测编码模式。
[0024]根据高效率视频译码(HEVC),可将帧划分为若干最大译码单元(LCU),所述最大译码单元可包括(例如)32X32像素块或64X64像素块。一般来说,可将IXU分割为若干子译码单元(子CU),可对子译码单元中的每一者进行进一步分割。一般来说,术语译码单元(⑶)可指代IXU或其任何子⑶(例如,IXU的子⑶或另一子⑶的子⑶)。可将⑶分割为四个正方形、非重叠的块。LCU可对应于包含一个或一个以上节点的四叉树结构,其中所述四叉树的根节点对应于LCU本身,且其它节点对应于LCU的子CU。未经分割的CU —般对应于四叉树的叶节点(即,四叉树的不具有任何子节点的节点)。因此,未经分割的CU可被称作叶节点CU。叶节点CU —般包含描述CU的数据如何被预测的一个或一个以上预测单元(PU),以及对应于残余数据(即,CU的所预测数据与CU的原始数据之间的逐像素差异)的一个或一个以上变换单兀(TU)。
[0025]未经分割的⑶的叶节点可包含指示⑶的PU的预测模式的信息。在一些实例中,可为叶节点CU提供残余四叉树(RQT)(还被称作TU四叉树)。所述残余四叉树还可包含根节点以及一个或一个以上叶节点。所述RQT可包含信息,例如指示预测模式的信息和/或对应于对应的叶节点CU的一部分的TU的其它预测信息。在任何情况下,用于CU的信息可指示用于CU的一个或一个以上部分的预测模式。
[0026]关于帧内预测模式,RQT中提供的信息可指示特定类型的帧内预测模式。举例来说,RQT中提供的信息可指示是否使用了 DC预测模式,或是否使用了方向帧内预测模式。在DC预测模式中,先前经译码块的相邻像素的值可经夸示且用于形成当前CU的像素的所预测值。在方向预测模式中,可在特定方向上应用先前经译码块的相邻像素的值以形成当前⑶的像素的所预测值。
[0027]HM使用解块滤波器来实现解块以移除“成块性”假影。也就是说,在将帧划分为若干块(LCU及其子CU)、对所述块进行译码且随后对所述块进行解码之后,可能在块之间的边缘处出现可感知的假影。因此,视频编码器可对帧的视频数据进行编码,随后对经编码视频数据进行解码,且随后将解块滤波器应用于经解码视频数据以用作参考视频数据。参考数据可为来自一个或一个以上帧的视频编码器可用于(例如)对随后译码的视频数据的帧间预测的数据。视频编码器可将一个或一个以上帧存储在参考帧存储装置内以用于帧间预测。
[0028]在存储经解码视频数据以用作参考数据之前由例如视频编码器或视频解码器等视频译码装置执行的此类解块滤波一般被称作“环路内”滤波。在“环路内”滤波中,视频编码器或解码器可在视频环路内执行解块。视频编码器可开始于接收原始视频数据、对视频数据进行编码、对数据进行解块,以及将经解块的帧存储在参考帧存储装置中。视频解码器可经配置以对所接收的视频数据进行解码,且随后将相同的解块滤波器应用于经解码视频数据,以用于显示视频数据且用作用于将被解码的后续视频数据的参考。通过配置编码器和解码器以应用相同的解块技术,可使编码器和解码器同步,使得解块将经解块视频数据用于参考不会对随后译码的视频数据弓I入错误。
[0029]如上所述,未经分割的⑶(B卩,叶节点⑶)可包含一个或一个以上I3U和/或TU,所述和/或TU可各自被进一步细分。和/或TU可被划分为由边缘分离的矩形或正方形区,所述边缘可引入可感知的成块性假影。根据HM中所描述的技术而配置的视频编码器或解码器可一般针对分离两个PU或TU的每一边缘来确定是否应用解块滤波器对边缘进行解块。根据HM的技术而配置的视频编码器或解码器可经配置以基于对垂直于边缘的一条或一条以上像素线(例如,8个像素的线)的分析来确定是否对边缘进行解块。因此,例如,对于垂直边缘,HM可通过检查沿着共同线的边缘的左边的四个像素以及右边的四个像素来确定是否对边缘进行解块。所选择的像素的数目一般对应于用于解块的最小块,例如8X8像素。以此方式,用于分析的像素线可进入仅两个PU或TU,即,紧接在边缘的左边和右边的PU或TU。用于分析是否针对边缘执行解块的像素线还被称作一组支持像素,或简称为“支
士土”
f寸ο
[0030]根据ΗΜ的技术而配置的装置可实施例如AMP (非对称运动分割)等运动预测技术以及例如NSQT(用于对称运动分区的非正方形变换或非正方形四叉树变换)等在非正方形变换中的四叉树变换分裂,从而将CU分裂为若干非正方形像素区,例如64X 16、64X48、16X64、48X16、32X8、32X24、8X32、24X32、16X4、16X12、4X16、12X 16、8X4、4X8、8X2、2X8、1X16、16X1、32X2、2X32 等。
[0031]根据HM中所描述的技术而配置的装置还可实施帧内预测技术,例如短距离帧内预测(SDIP),其将PU分裂为若干非正方形区,例如64X16、64X48、16X64、48X16、32X8、32X24、8X32、24X32、16X4、16X 12、4X 16、12X 16、8X4、4X8、8X2、2X8、1X 16、16X1、32X2、2X32等。例如经配置以实施SDIP的视频编码器或视频解码器等视频译码单元可从相邻的非正方形区的像素值来预测非正方形块的值。
[0032]JCT-VC标准化工作的HM软件测试模型中的目前的解块滤波器解决了基于8 X 8最小块的成块性假影,且不对位于不是8像素位置的倍数的位置处的假影边缘进行解块。另夕卜,HM解块滤波器支持对解块决策的并行实施以及对垂直或水平边缘的独立滤波。
[0033]HM解块滤波器没有必要处理具有小于8X8像素的用于解块的最小大小的尺寸(例如,16X4和4X 16的PU和TU)的NSQT和AMP的非正方形分区或变换,这可导致块边缘假影可见。也就是说,出现在不是8像素的倍数的块边界处的边缘可能具有未被HM编码器或解码器的解块滤波器适当地处置的成块性假影。另外,目前的HM解块决策和滤波器具有在边缘的每一侧上最大使用4个像素的支持(用于计算的像素的数目和/或将被更换或修改的像素的数目)。在当非正方形块具有小于8的尺寸时的情况下,解块决策和滤波器潜在地重叠,且引入了破坏HM解块滤波器并行度的相依性。除了破坏HM解块滤波器并行度之外,如果HM解块滤波器与小于8个像素的块并行地使用,那么可导致竞态条件和/或非确定性行为。举例来说,视频编码器的第一解块滤波器可检查一组支持像素,同时同一组支持像素被与第一解块滤波器并行地执行的另一解块滤波器修改。以此方式,可能将解块决策函数应用于跨越块边界的支持,且因此,导致关于是否对边缘进行解块的不适当的决策,且另外,可干扰原本可实现的并行度。
[0034]视频译码装置可经配置以相对于用于特定边缘的支持来执行解块决策函数。一般来说,解块决策函数可经配置以检测支持内的高频率变化。高频率变化可出现在两个块之间的边缘处。通过检查像素值,视频编码器或解码器可检测可影响相对于特定边缘的成块性假影的高频率变化。
[0035]通常,当检测到高频率变化时,解块决策函数提供应进行解块的指示。因此,解块决策函数可提供应对两个块(例如,使用SDIP或AMP而预测的非正方形块或对应于NSQT块的变换块)之间的边缘进行解块的不适当的指示。举例来说,解块决策函数可在分析边缘时检测所述组支持像素内的高频率变化,但高频率变化可能发生在两个PU或TU之间的边界处,而不是当前正考虑的边缘处。
[0036]本发明提供用于对出现在非正方形块(例如非对称运动经分割(AMP)块、SDIP块和非正方形四叉树变换(NSQT)块)之间的边缘进行解块的技术。例如视频编码器或视频解码器等视频译码装置可经配置以调适用于应用于此些块之间的边缘的解块决策函数和/或解块滤波器的像素支持。以此方式,可调适用于对非正方形NSQT变换块、SDIP块和/或具有小于8个像素的尺寸的AMP分区的边缘进行解块的解块决策和滤波器。举例来说,可通过修改决策函数、滤波器类型和滤波器强度,以便避免将用于对其它附近的边缘进行解块的支持包含在对解块决策和/或滤波的计算之内,且避免附近的边缘之间的滤波器结果相依性,而调适此些块的像素支持区。
[0037]当窄的非正方形分区具有垂直于将被解块的边缘的一个或一个以上边缘时,无论存在于将被解块的边缘的两侧上还是仅存在于一侧上且另一侧上是正方形分区,可将常规的HM解块用于将被解块的边缘。如上所述,非正方形分区可位于两个PU或TU之间,已用NSQT、AMP和/或SDIP对PU或TU进行分割。根据HM的当前版本,对特定译码单元的解块首先进行对垂直边缘进行解块,且随后对水平边缘进行解块。虽然对垂直边缘进行解块,但解块器可改变稍后用于对一个或一个以上水平边缘进行解块中的一些支持,但这样做将不一定产生水平与垂直解块之间的竞态条件。虽然对垂直边缘进行解块,但解块器可改变稍后用于对一个或一个以上水平边缘进行解块中的一些支持,但这样做将不一定产生水平与垂直解块之间的竞态条件。
[0038]当至少一个窄的非正方形分区或变换与被视为用于解块的边缘平行时,可调适解块决策和滤波器以避免对附近的边缘的滤波之间的相互相依性,且避免在解块决策和滤波中包含附近的边缘。另外,在当至少一个窄的非正方形分区或变换与被视为用于解块的边缘平行时的情况下,可将目前的HM的解块决策(还被称作“解块开/关决策”)应用于将被解块的当前边缘。可基于沿着与在考虑解块的边缘平行的八像素区段的位置二和五的边缘的两侧上的三个样本来计算解块开/关决策。
[0039]本发明的技术一般针对于至少部分基于块中的一者或两者是否为非正方形而确定是否对两个视频块(例如,两个CU、两个PU或两个TU)之间的边缘进行解块。举例来说,视频译码装置可确定两个PU中的任一者或两者是否为非对称运动分区(例如,非对称PU)、使用SDIP进行帧内预测,或是否两个TU中的任一者或两者是NSQT块。在一些实例中,当所述组支持像素跨越一个或一个以上块边缘时,简单地跳过解块。在其它实例中,可使用替代性支持区来作出是否执行解块的决策,所述替代性支持区可经选择以使得所述支持区不跨越块边缘。举例来说,可将块边缘之间的距离(以像素计)映射到经调适的支持区,使得经调适的支持区横跨减小数目的像素且因此不跨越额外的块边缘。
[0040]在一些实例中,本发明的技术包含除了确定共享共同边缘的任一或两个块是否为非正方形之外还确定所述块的较长(例如,较窄)区段是否平行于所述块之间的共同边缘。一般来说,如果块垂直于针对其作出解块确定的共同边缘,那么分析不需要与常规的解块确定有变化。也就是说,因为在这些情形中,支持像素线平行于块而延伸,所以标准组的支持像素将不跨越块之间的额外边缘,且因此,导致对是否对共同边缘进行解块的正确确定。
[0041]在一些实例中,视频译码装置可基于块中的至少一者是否例如归因于使用AMP、NSQT或SDIP来用于对块进行译码而为非正方形,来确定是否对两个块之间的共同边缘进行解块。在一些实例中,视频译码装置可经配置以在两个块中的至少一者是非正方形时跳过对所述块之间的边缘的解块。在其它实例中,视频译码装置可经配置以将经修改的解块决策函数或滤波器应用于边缘附近的像素,使得解块决策函数不跨越多个块边界,或使得向其应用滤波器的像素不重叠。
[0042]本发明提供经修改的解块决策函数和解块滤波器,其可避免跨越多个边界以及向其应用滤波器的像素的重叠。以此方式,这些经修改的滤波器可在执行解块过程时产生更准确的解块决策,且还可实现并行度。举例来说,可将所述解块过程执行为并行执行的两个或两个以上软件线程,且/或由并行操作的两个或两个以上硬件单元执行。
[0043]图1为说明可利用用于对非正方形块之间的边缘进行解块的技术的实例性视频编码和解码系统10的框图。如图1中所示,系统10包含源装置12,所述源装置经由通信信道16将经编码的视频发射到目的地装置14。源装置12及目的地装置14可包括各种各样的装置中的任一者。在一些情况下,源装置12和目的地装置14可包括无线通信装置,例如无线手持机、所谓的蜂窝式或卫星无线电电话,或可在通信信道16上(在此情况下,通信信道16为无线的)传送视频信息的任何无线装置。
[0044]然而,涉及对非正方形块之间的边缘进行解块的本发明的技术不一定受限于无线应用或环境。举例来说,这些技术可适用于空中电视广播、有线电视发射、卫星电视发射、因特网视频发射、经编码到存储媒体上的经编码的数字视频,或其它情况。因此,通信信道16可包括适合于发射或存储经编码的视频数据的无线、有线或存储媒体的任何组合。
[0045]在图1的实例中,源装置12包含视频源18、视频编码器20、调制器/解调器(调制解调器)22和发射器24。目的地装置14包含接收器26、调制解调器28、视频解码器30,和显示装置32。根据本发明,源装置12的视频编码器20可经配置以应用用于对非正方形块之间的边缘进行解块的技术。在其它实例中,源装置和目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如,外部相机)接收视频数据。同样,目的地装置14可与外部显示装置介接,而不是包含集成式显示装置。
[0046]图1的所说明的系统10仅为一个实例。可通过任何数字视频编码和/或解码装置来执行用于对非正方形块之间的边缘进行解块的技术。尽管一般来说,本发明的技术是由视频编码装置来执行,但所述技术还可由视频编码器/解码器(通常被称作“CODEC”)来执行。另外,本发明的技术还可由视频预处理器来执行。源装置12及目的地装置14仅为此些译码装置的实例,其中源装置12产生用于发射到目的地装置14的经译码视频数据。在一些实例中,装置12、14可以大体上对称的方式操作以使得装置12、14中的每一者包含视频编码和解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频发射,例如用于视频流式传输、视频回放、视频广播或视频电话。
[0047]源装置12的视频源18可包含视频俘获装置,例如摄像机、含有先前所俘获的视频的视频档案,和/或来自视频内容提供者的视频馈送。作为另一替代方案,视频源18可产生基于计算机图形的数据作为源视频,或直播视频、存档视频与计算机产生的视频的组合。在一些情况下,如果视频源18为视频相机,那么源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,一般来说,本发明中所描述的技术可适用于视频译码,且可适用于无线及/或有线应用。在每一情况下,可由视频编码器20来编码经俘获的、经预先俘获的或计算机产生的视频。经编码的视频信息可接着由调制解调器22根据通信标准来调制,且经由发射器24而发射到目的地装置14。调制解调器22可包含各种混频器、滤波器、放大器或经设计以用于信号调制的其它组件。发射器24可包含经设计以用于发射数据的电路,包含放大器、滤波器及一个或一个以上天线。
[0048]目的地装置14的接收器26经由信道16接收信息,且调制解调器28解调所述信息。再次地,视频编码过程可实施本文中所描述的用以对非正方形块之间的边缘进行解块的技术中的一者或一者以上。经由信道16传送的信息可包含由视频编码器20定义的语法信息,所述语法信息还由视频解码器30使用,所述语法信息包含描述宏块和其它经译码单元(例如,图片群组(GOP))的特性和/或处理的语法元素。显示装置32向用户显示经解码的视频数据,且可包含多种显示装置中的任一者,例如阴极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
[0049]在图1的实例中,通信信道16可包括任一无线或有线通信媒体,例如,射频(RF)频谱或一个或一个以上物理传输线、或无线和有线媒体的任一组合。通信信道16可形成例如局域网、广域网或例如因特网的全球网络的基于包的网络的部分。通信信道16 —般表示用于将视频数据从源装置12发射到目的地装置14的任何合适的通信媒体或不同通信媒体的集合,包含有线或无线媒体的任何合适组合。通信信道16可包含可用于促进从源装置12到目的地装置14的通信的路由器、交换器、基站或任何其它设备。在其它实例中,源装置12可将经编码数据存储到存储媒体上,而不是发射所述数据。同样,目的地装置14可经配置以从存储媒体检索经编码数据。
[0050]视频编码器20和视频解码器30可根据视频压缩标准来操作,例如即将到来的ITU-T高效率视频译码(HEVC)标准,还被称作“H.265”。视频编码器20和视频解码器30可遵照高效率视频译码测试模型(HM)。然而,本发明的技术不限于任何特定译码标准。其它实例包含MPEG-2和ITU-T H.263以及ITU-T H.264/AVC(高级视频译码)。尽管图1中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解码器集成,且可包含适当的MUX-DEMUX单元或其它硬件及软件,以处置对共同数据流或单独数据流中的音频与视频两者的编码。如果适用,MUX-DEMUX单元可遵照ITUH.223多路复用器协议或例如用户数据报协议(UDP)等其它协议。
[0051 ] HEVC当前是由ITU-T视频译码专家组(VCEG)连同IS0/IEC运动图片专家组(MPEG)制定以作为被称为视频译码联合合作小组(JVT-VC)的集体伙伴关系的产品。HM假设优于根据例如ITU-T H.264/AVC等先前译码标准的视频译码装置的若干能力。举例来说,尽管H.264提供九种帧内预测编码模式,但HM提供多达三十四种帧内预测编码模式。
[0052]视频编码器20和视频解码器30各自可经实施为例如一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、包含例如编码器或解码器等视频译码装置的无线通信装置、离散逻辑、软件、硬件、固件或其任何组合的多种合适的编码器电路中的任一者。视频编码器20和视频解码器30中的每一者可包含于一个或一个以上编码器或解码器中,所述视频编码器和视频解码器中的任一者可作为组合式编码器/解码器(CODEC)的一部分而集成于相应相机、计算机、移动装置、订户装置、广播装置、机顶盒、服务器等中。
[0053]一视频序列通常包含一系列视频帧。图片群组(GOP) —般包括一系列一个或一个以上视频帧。GOP可在GOP的标头、GOP的一个或一个以上帧的标头或其它地方中包含语法数据,所述语法数据描述包含于GOP中的帧的数目。每一帧可包含帧语法数据,所述帧语法数据描述相应帧的编码模式。频编码器20通常对个别视频帧内的视频块(还被称作CU)进行操作以便编码视频数据。视频块可对应于LCU或LCU的分区。所述视频块可具有固定的或变化的大小,且可根据指定的译码标准而大小不同。每一视频帧可包含多个切片。每一切片可包含多个IXU,所述多个IXU可布置在若干分区(还被称作子⑶)中。
[0054]作为一实例,ITU-T H.264标准支持各种块大小(例如,针对亮度分量的16乘16、8乘8或4乘4,和针对色度分量的8X8)的帧内预测,以及各种块大小(例如,针对亮度分量的16X16、16X8、8X16、8X8、8X4、4X8和4X4,和针对色度分量的对应缩放的大小)的帧间预测。在本发明中,“NXN”与“N乘N”可以可互换地使用,以在垂直和水平尺寸方面指代块的像素尺寸,例如16X 16像素或16乘16像素。一般来说,16X16块将具有在垂直方向上的16个像素(y = 16)和在水平方向上的16个像素(x = 16)。同样地,NXN块一般具有在垂直方向上的N个像素和在水平方向上的N个像素,其中N表示非负整数值。一块中的像素可布置在若干行和若干列中。此外,块无需一定在水平方向上具有与在垂直方向上相同数目的像素。举例来说,块可包括NXM个像素,其中Μ不一定等于Ν。
[0055]视频块可包含像素域中的像素数据的块,或(例如)在对表示经译码的视频块与预测视频块之间的像素差异的残余视频块数据应用例如离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换等变换之后的在变换域中的变换系数的块。在一些情况下,视频块可包括变换域中的经量化的变换系数的块。
[0056]较小视频块可提供较好分辨率,且可用于包含高等级的细节的视频帧的位置。一般来说,可将块和有时被称作子块的各种分区视为视频块。另外,可将切片视为多个视频块,例如若干块和/或若干子块。每一切片可为视频帧的可独立解码单元。或者,帧自身可为可解码单元,或可将帧的其它部分定义为可解码单元。术语“经译码单元”可指代视频帧的任何可独立解码的单元,例如完整的帧、帧的切片、图片群组(G0P)(还称作序列),或根据可适用的译码技术定义的另一可独立解码的单元。
[0057]在用以产生预测数据和残余数据的帧内预测或帧间预测译码之后,且在用以产生变换系数的任何变换(例如,Η.264/AVC中所使用的4X4或8X8整数变换或离散余弦变换DCT)之后,可执行对变换系数的量化。量化一般指代其中将变换系数量化以可能地减少用于表示系数的数据量的过程。量化过程可减少与系数中的一些或全部相关联的位深度。举例来说,η位值可在量化期间下舍入到m位值,其中η大于m。
[0058]HEVC将视频数据块称作译码单元(⑶),所述译码单元可包含一个或一个以上预测单元(PU)和/或一个或一个以上变换单元(TU)。位流内的语法数据可定义最大译码单元(LCU),其为在像素数目方面的最大译码单元。一般来说,CU具有与H.264的宏块类似的目的,只不过⑶不具有大小区别。因此,⑶可被分裂为若干子⑶。一般来说,在本发明中对CU的参考可涉及图片的最大译码单元或LCU的子CU。LCU可被分裂成若干子CU,且每一子CU可进一步被分裂成若干子CU。位流的语法数据可定义LCU可被分裂的最大倍数,被称作CU深度。因此,位流还可定义最小译码单元(SCU)。本发明还使用术语“块”来指代CU、TO或TU中的任一者。
[0059]IXU可与四叉树数据结构相关联。一般来说,四叉树数据结构每个⑶包含一个节点,其中根节点对应于LCU。如果将CU分裂为四个子CU,那么对应于CU的节点包含四个叶节点,所述四个叶节点中的每一者对应于子CU中的一者。所述四叉树数据结构的每一节点可提供对应CU的语法数据。举例来说,四叉树中的节点可包含分裂旗标,从而指示对应于所述节点的CU是否被分裂为子CU。可递归地定义CU的语法元素,且所述语法元素可取决于CU是否被分裂为子CU。如果CU未进一步分裂,那么其被称作叶CU。在本发明中,叶CU的4个子CU也将被称作叶CU,虽然不存在对原始叶CU的明确分裂。举例来说,如果16 X 16
大小的⑶未进一步分裂,那么四个8X8子⑶也将被称作叶⑶,虽然16X 16的⑶从未分
[0060]另外,叶⑶的TU还可与相应的四叉树数据结构相关联。也就是说,叶⑶可包含指示叶CU如何被分割为TU的四叉树。本发明涉及指示LCU如何被分割为CU四叉树的四叉树以及指示叶CU如何被分割为TU以作为TU四叉树的四叉树。TU的根节点一般对应于叶CU,而⑶四叉树的根节点一般对应于IXU。TU四叉树的未分裂的TU被称作叶TU。
[0061]叶⑶可包含一个或一个以上预测单元(PU)。一般来说,PU表示对应⑶的全部或一部分,且可包含用于检索PU的参考样本的数据。举例来说,在对PU进行帧间模式编码时,PU可包含定义PU的运动向量的数据。定义运动向量的数据可描述(例如)运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考帧,和/或运动向量的参考列表(例如,列表0或列表1)。定义ro的叶CU的数据还可描述(例如)将CU分割为一个或一个以上ro。分割模式可取决于CU是未被译码、被帧内预测模式编码还是被帧间预测模式编码而不同。对于帧内译码,可将PU视为与下文所描述的叶变换单元相同。
[0062]叶⑶可包含一个或一个以上变换单元(TU)。可使用TU四叉树结构来指定变换单元,如上文所论述。也就是说,分裂旗标可指示叶CU是否被分裂为四个变换单元。随后,每一变换单元可进一步分裂为4个子TU。当TU不进一步分裂时,其可被称作叶TU。一般来说,分裂旗标可指示叶TU被分裂为正方形TU。为了指示TU被分裂为非正方形TU,可包含其它语法数据,例如,指示将根据NSQT分割TU的语法数据。
[0063]一般来说,对于帧内译码,属于叶CU的所有叶TU共享同一帧内预测模式。也就是说,一般应用同一帧内预测模式来计算叶CU的所有TU的预测值。对于帧内译码,视频编码器可使用帧内预测模式来计算每一叶TU的残余值以作为对应于TU和原始块的预测性值的部分之间的差。可变换、量化和扫描所述残余值。对于帧间译码,视频编码器可在PU层级处执行预测且可计算每一 PU的残差。可变换、量化和扫描对应于叶CU的残余值。对于帧间译码,叶TU可大于或者小于PU。对于帧内译码,ro可与对应的叶TU并置。在一些实例中,叶TU的最大大小可为对应的叶CU的大小。
[0064]—般来说,本发明使用术语⑶和TU来分别指代叶⑶和叶TU,除非另有注释。一般来说,本发明的技术涉及变换、量化、扫描以及熵编码CU的数据。作为一实例,本发明的技术包含基于用于预测块的帧内预测模式来选择用以变换经帧内预测块的残余值的变换。本发明还使用术语“方向性变换”或“所设计的变换”来指代取决于帧内预测模式方向的此类变换。也就是说,视频编码器可选择方向性变换来应用于变换单元(TU)。如上文所述,帧内预测包含从同一图片的先前经译码CU和TU来预测图片的当前CU的TU。更具体来说,视频编码器可使用特定帧内预测模式来对图片的当前TU进行帧内预测。
[0065]在量化之后,可根据(例如)内容自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、概率区间分割熵译码(PIPE)或另一熵译码方法来执行对经量化数据的熵译码。经配置以用于熵译码的处理单元,或其它处理单元可执行其它处理功能,例如经量化系数的零游程长度译码和/或语法信息的产生,所述语法信息例如为经译码块模式(CBP)值、宏块类型、译码模式、经译码单元(例如,帧、切片、宏块或序列)的最大宏块大小,
坐坐寸寸ο
[0066]可一般在对视频数据的反量化和反变换之后执行解块。视频编码器20可经配置以执行反量化和反变换以存储经解码块来用作用于预测例如在同一帧或将被时间预测的帧中的后续块的参考。根据本发明的技术,视频编码器20和/或视频解码器30可经配置以执行解块技术。举例来说,视频编码器20和视频解码器30可经配置以对数据的第一块和视频数据的第二块进行解码。所述第一和第二块两者可共享共同边缘。在视频编码器20的情况下,视频编码器20可对所述第一块和所述第二块进行编码,编码器20可稍后对其解码。视频编码器20或视频解码器30可至少部分基于所述第一和第二块中的至少一者是非正方形来确定是否与所述第一块与第二块之间的共同边缘进行解块。
[0067]在一实例中,视频编码器20和视频解码器30可经配置以调适解块决策函数和/或解块滤波器以用于至少部分基于两个块是否为非正方形而对所述块之间的边缘进行解块。作为另一实例,视频编码器20和视频解码器30可经配置以调适解块决策函数和/或解块滤波器以用于至少部分基于两个块是否具有比用于解块决策函数和/或解块滤波器的一组支持滤波器的对应长度短的至少一个尺寸而对所述块之间的边缘进行解块。
[0068]在一些实例中,视频编码器20和视频解码器30 (其可一般被称作视频译码装置)可调适解块决策函数和/或解块滤波器以用于具有小于8个像素的至少一个尺寸的块。用于对非正方形四叉树变换块、SDIP分区或具有小于8个像素的尺寸的AMP分区的边缘进行解块的解块决策和滤波器可经修改以调适它们的像素支持区。举例来说,视频编码器20和/或视频解码器30可经配置以修改解块决策函数、滤波器类型和/或滤波器强度,以便避免将附近的边缘包含在对解块决策或滤波的计算之内,且避免附近的边缘之间的滤波器结果相依性。
[0069]视频编码器20和/或视频解码器30还可经配置以当窄的非正方形分区垂直于将被解块的边缘,在将被解块的边缘的两侧上垂直或仅在一侧上垂直且另一侧是正方形分区时,将常规的HM解块用于考虑中的边缘。当至少一个窄的非正方形分区或变换与将被解块的边缘平行时,视频编码器20和/或视频解码器30可调适解块决策函数和/或解块滤波器以避免对附近的边缘的滤波之间的相互相依性,且避免在解块决策和滤波中包含附近的边缘。
[0070]在一些实例中,视频编码器20或视频解码器30可获得关于第一块的信息,所述信息指示所述块是使用非对称运动分割进行分割且所述块是母块的分区,例如CU。因为在此实例中,第一块是使用AMP进行分割,所以将第一块视为非正方形。更具体来说,视频编码器20可确定使用AMP对母块进行分割,或视频解码器30可从例如视频编码器20等视频编码器接收指示母块是使用AMP进行分割的信息。所述信息可指示所述母块是使用非对称运动分割进行分割以形成第一块。在另一实例中,视频编码器20和视频解码器30可经配置以获得指示母块的第一块包括母块的非正方形四叉树变换块的信息。视频编码器20或视频解码器30可基于指示第一块包括母块的非正方形四叉树变换块的所获得的信息来确定第一块是非正方形。更具体来说,视频编码器20可确定使用NSQT对母块进行分割,或视频解码器30可从例如视频编码器20等视频编码器接收指示母块是使用NSQT进行分割的信息。所述信息可指示所述母块是使用非正方形四叉树变换进行分割以形成第一块。
[0071]在一实例中,视频编码器20和视频解码器30可经配置以获得指示母块的第一块包括母块的短距离帧内预测块的信息。视频编码器20或视频解码器30可基于指示第一块包括母块的短距离帧内预测块的所获得的信息来确定第一块是非正方形。更具体来说,视频编码器20可确定使用SDIP对母块进行分割,或视频解码器30可从例如视频编码器20等视频编码器接收指示母块是使用SDIP进行分割的信息。所述信息可指示所述母块是使用非正方形四叉树变换进行分割以形成第一块。
[0072]根据本发明的技术的一些实例,视频编码器20和视频解码器30可基于第一块和第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的共同边缘进行解块。在一些实例中,,视频编码器20和视频解码器30可在确定第一块和第二块中的至少一者为非正方形之后进一步确定非正方形块的窄部分是否垂直于共同边缘。在第一块是非正方形时,且在一些实例中,在第一块的窄部分不垂直于共同边缘时,视频编码器20或解码器30可进一步将第一经调适解块决策函数应用于第一块和第二块的像素。在第二块是非正方形时,且在一些实例中,在第二块的窄部分不垂直于共同边缘时,视频编码器20和视频解码器30可将第二经调适解块决策函数应用于第一块和第二块的像素。在第一块是非正方形时,在第一块的窄部分不垂直于共同边缘时,在第二块是非正方形时,且在第二块的窄部分不垂直于共同边缘时,视频编码器20或解码器30可将第三经调适解块决策函数应用于第一块和第二块的像素。在第一块是正方形或第一块的窄部分垂直于共同边缘时,且在第二块是正方形或第二块的窄部分垂直于共同边缘时,视频编码器20和解码器30可进一步将常规的解块决策函数应用于第一块和第二块的像素。
[0073]在一些实例中,在共同边缘具有八个像素的长度的情况下,将第三经调适解块决策函数应用于第一块和第二块的像素包含,在距共同边缘的末端两个像素的第一位置处将第三经调适解块决策函数应用于垂直于共同边缘的第一组像素。另外,视频编码器20或视频解码器30在距共同边缘的末端五个像素的第二位置处将第三经调适解块决策函数应用于垂直于共同边缘的不同的第二组像素。
[0074]视频编码器20可进一步在例如帧标头、块标头、切片标头或G0P标头中将例如基于块的语法数据、基于帧的语法数据和基于G0P的语法数据等语法数据发送到视频解码器
30。所述G0P语法数据可描述相应G0P中的帧的数目,且帧语法数据可指示用于编码对应帧的编码/预测模式。
[0075]视频编码器20和视频解码器30各自可在可适用时经实施为例如一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合等多种合适编码器和解码器电路中的任一者。视频编码器20和视频解码器30中的每一者可包含于一个或一个以上编码器或解码器中,视频编码器20和视频解码器30中的任一者可被集成为组合式视频编码器/解码器(CODEC)的一部分。包含视频编码器20和/或视频解码器30的设备可包括集成电路、微处理器和/或无线通信装置,例如蜂窝式电话。
[0076]图2为说明可实施用于对非正方形块之间的边缘进行解块的技术的视频编码器20的实例的框图。视频编码器20可执行对视频帧内的块(包含CU或CU的子CU)的帧内译码和帧间译码。帧内译码依赖于空间预测以减少或移除给定视频帧内的视频中的空间冗余。帧间译码依赖于时间预测以减少或移除视频序列的邻近帧内的视频中的时间冗余。帧内模式(I模式)可指代若干基于空间的压缩模式中的任一者,且帧间模式(例如,单向预测(P模式)或双向预测(B模式))可指代若干基于时间的压缩模式中的任一者。虽然在图2中描绘用于帧间模式编码的组件,但应理解,视频编码器20可进一步包含用于帧内模式编码的组件。然而,出于简明和清楚起见而未说明此些组件。
[0077]如图2所示,视频编码器20接收视频帧内的待编码的当前视频块。在图2的实例中,视频编码器20包含运动补偿单元44、运动估计单元42、参考帧存储装置64、求和器50、变换处理单元52、量化单元54、熵译码单元56以及解块器66。对于视频块重构,视频编码器20还包含反量化单元58、反变换单元60,和求和器62。
[0078]在编码过程期间,视频编码器20接收待译码的视频帧或切片。可将帧或切片划分为多个视频块。运动估计单元42和运动补偿单元44相对于一个或一个以上参考帧中的一个或一个以上块执行对所接收的视频块的帧间预测译码以提供时间压缩。帧内预测单元还可相对于在与待译码的块相同的帧或切片中的一个或一个以上相邻块执行对所接收视频块的帧内预测译码,以提供空间压缩。
[0079]模式选择单元40可(例如)基于误差结果而选择译码模式(帧内或帧间)中的一者,且将所得的经帧内译码或经帧间译码的块提供到求和器50以产生残余块数据,且提供到求和器62以重构经编码块以用作参考帧。
[0080]运动估计单元42与运动补偿单元44可高度集成,但出于概念上的目的而分开予以说明。运动估计是产生估计视频块的运动的运动向量的过程。运动向量(例如)可指示预测参考帧(或其它经译码单元)内的预测块相对于当前帧(或其它经译码单元)内正被译码的当前块的位移。预测块是经发现在像素差异方面密切地匹配待译码的块的块,其可通过绝对差总和(SAD)、平方差总和(SSD)或其它差度量来确定。运动向量还可指示宏块的分区的移位。运动补偿可涉及基于运动估计所确定的运动向量来获取或产生预测块。再次地,在一些实例中,运动估计单元42与运动补偿单元44可在功能上集成。
[0081]运动估计单元42通过将经帧间译码的帧的视频块与参考帧存储装置64中的参考帧的视频块进行比较来计算经帧间译码的帧的视频块的运动向量。运动补偿单元44还可内插参考帧(例如,I帧或P帧)的子整数像素。作为一实例,可从两个参考帧列表来预测运动向量:列表0,其包含具有比正被编码的当前帧早的显示次序的参考帧;以及列表1,其包含具有比正被编码的当前帧晚的显示次序的参考帧。因此,存储于参考帧存储装置64中的数据可根据这些列表进行组织。
[0082]运动估计单元42将来自参考帧存储装置64的一个或一个以上参考帧的块与当前帧(例如,P帧或B帧)的待编码的块进行比较。当参考帧存储装置64中的参考帧包含用于子整数像素的值时,由运动估计单元42计算的运动向量可指代参考帧的子整数像素位置。运动估计单元42和/或运动补偿单元44还可经配置以在没有子整数像素位置的值存储于参考巾贞存储装置64中时计算存储于参考巾贞存储装置64中的参考巾贞的子整数像素位置的值。运动估计单元42将计算出的运动向量发送到熵译码单元56和运动补偿单元44。由运动向量识别的参考帧块可称作预测块。[0083]运动补偿单元44可基于预测块计算预测数据。视频编码器20通过从正经译码的原始视频块减去来自运动补偿单元44的预测数据而形成残余视频块。求和器50表示执行此减法运算的组件。变换处理单元52可对残余块应用变换(例如,离散余弦变换(DCT)或概念上类似的变换),从而产生包括残余变换系数值的视频块。变换处理单元52可执行概念上类似于DCT的其它变换,例如由H.264标准定义的变换。也可使用子波变换、整数变换、子带变换或其它类型的变换。在任何情况下,变换处理单元52对残余块应用所述变换,从而产生残余变换系数块。所述变换可将残余信息从像素值域转换到变换域(例如,频域)。量化单元54量化残余变换系数以进一步减小位率。量化过程可减少与系数中的一些或全部相关联的位深度。可通过调整量化参数来修改量化程度。
[0084]在量化之后,熵译码单元56对经量化变换系数进行熵译码。举例来说,熵译码单元56可执行内容自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、概率区间分割熵译码(PIPE)或另一熵译码技术。在熵译码单元56进行的熵译码之后,可将经编码视频发射到另一装置或加以存档以用于稍后发射或检索。在上下文自适应二进制算术译码的情况下,上下文可基于相邻的宏块。
[0085]在一些情况下,除熵译码之外,视频编码器20的熵译码单元56或另一单元可经配置以执行其它译码功能。举例来说,熵译码单元56可经配置以确定宏块和分区的CBP值。而且,在一些情况下,熵译码单元56可执行对IXU或IXU的子⑶中的系数的游程长度译码。具体来说,熵译码单元56可应用z形扫描或其它扫描模式来扫描LCU或分区中的变换系数且对零游程进行编码以用于进一步压缩。熵译码单元56还可用适当的语法元素建构标头信息以用于在经编码视频位流中进行发射。
[0086]反量化单元58和反变换单元60分别应用反量化和反变换,以重构像素域中的残余块,(例如)以用于稍后用作参考块。运动补偿单元44可通过将残余块加到参考帧存储装置64的帧中的一者的预测块来计算参考块。运动补偿单元44还可将一个或一个以上内插滤波器应用于经重构的残余块以计算子整数像素值以在运动估计中使用。加法器62将经重构残余块添加到由运动补偿单元44产生的运动补偿预测块以产生经重构视频块以供存储于参考帧存储装置64中。经重构的视频块可由运动估计单元42和运动补偿单元44用作用以对后续视频帧中的块进行帧间译码的参考块。
[0087]根据本发明的技术,视频编码器20包含解块器66,所述解块器选择性地对求和器62的输出进行滤波。具体来说,解块器66从求和器62接收经重构的视频数据,所述经重构的视频数据对应于添加到经反量化且经反变换的残余数据的从运动补偿单元44或帧内预测单元46接收的预测数据。以此方式,解块器66接收经解码的视频数据块,例如LCU的⑶、切片或帧的IXUXU的PU,和/或⑶的TU。一般来说,解块器66 (例如)基于视频数据块中的任一者或两者是否为非正方形而选择性地对所述块进行滤波。解块器66可经配置以基于两个块是否为作为非对称运动分区、短距离帧内预测分区的PU、将⑶分裂为非正方形区的NSQT TU,或其它此类非正方形块,来确定是否对所述块之间的边缘进行解块。在一些实例中,解块器66可一般经配置以确定用于解块决策和/或解块滤波器的支持是否将延伸超过形成将被解块的边缘的两个块,且如果是,那么相应地修改解块决策函数和/或解块滤波器中的任一者或两者。
[0088]解块器66 —般经配置以分析在两个块之间的边缘附近的两个相邻块(例如,两个CU、PU或TU)的像素以确定是否对所述边缘进行解块。更特定来说,解块器66可在检测到边缘附近的像素的值上的高频率变化时更改所述值。解块器66还可经配置以执行本发明的技术中的任一者或全部。举例来说,解块器66可经配置以调适用于解块决策函数和/或解块滤波器的支持,以用于针对于非正方形NSQT变换块、SDIP分区和/或具有小于8个像素的尺寸的AMP分区的边缘的解块过程。
[0089]解块器66可包含经调适的预定义组支持,或在运行中计算出经调适的组的支持。解块器66可进而避免将附近的边缘包含在对解块决策或解块滤波的计算之内,且避免附近的边缘之间的滤波器结果相依性。解块器66还可在考虑被解块的边缘的任一侧或两侧上的窄块垂直于边缘时跳过支持调适。当至少一个窄的非正方形分区或变换与将被解块的边缘平行时,解块器66可调适解块决策函数和/或解块滤波器以避免对附近的边缘的滤波之间的相互相依性,且避免在解块决策和滤波中包含附近的边缘。
[0090]图3是说明对经编码视频序列进行解码的视频解码器30的实例的框图。在图3的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、反量化单元76、反变换单元78、参考帧存储装置82、求和器80以及解块器84。视频解码器30在一些实例中可执行一般与关于视频编码器20 (图2)所描述的编码回合互逆的解码回合。运动补偿单元72可基于从熵解码单元70接收的运动向量而产生预测数据。
[0091]运动补偿单元72可使用在位流中所接收的运动向量来识别参考帧存储装置82中的参考帧中的预测块。帧内预测单元74可使用在位流中所接收的帧内预测模式以从空间上邻近的块形成预测块。反量化单元76将提供于位流中且由熵解码单元70解码的经量化的块系数反量化(即,解量化)。反量化过程可包含(例如)如通过H.264解码标准定义的常规过程。反量化过程还可包含使用由编码器50针对每一宏块计算的用以确定量化的程度且同样应该应用的反量化的程度的量化参数QPY。
[0092]反变换单元58对变换系数应用反变换(例如,反DCT、反整数变换,或概念上类似的反变换过程),以便在像素域中产生残余块。运动补偿单元72产生经运动补偿的块,可能执行基于内插滤波器的内插。待用于具有子像素精度的运动估计的内插滤波器的识别符可包含在语法元素中。运动补偿单元72可使用如由视频编码器20在视频块的编码期间所使用的内插滤波器来计算参考块的子整数像素的内插值。运动补偿单元72可根据所接收的语法信息来确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测块。
[0093]运动补偿单元72使用语法信息中的一些来确定用于对经编码视频序列的帧进行编码的宏块的大小、描述经编码视频序列的帧的每一宏块如何被分割的分区信息、指示如何对每一分区进行编码的模式、用于每一经巾贞间编码宏块或分区的一个或一个以上参考中贞(以及参考帧列表),以及用以对经编码视频序列进行解码的其它信息。
[0094]求和器80将残余块与由运动补偿单元72或帧内预测单元产生的对应预测块求和以形成经解码的块。解块器84根据本发明的技术中的任一者或全部选择性地对从求和器80接收到的⑶(包含⑶的TU和PU)进行解块。解块器84实质上符合解块器66 (图2),其中解块器84可经配置以执行关于解块器66所描述的技术中的任一者或全部。
[0095]图4是说明实例性解块器90的组件的框图。一般来说,解块器66 (图2)和解块器84(图3)中的任一者或两者可包含实质上类似于解块器90的组件的组件。例如视频编码器、视频解码器、视频编码器/解码器(CODEC)等其它视频译码装置也可包含实质上类似于解块器90的组件。解块器90可实施于硬件、软件或固件中。当实施于软件或固件中时,还可提供对应的硬件(例如,一个或一个以上处理器或处理单元以及用于存储用于软件或固件的指令的存储器)。
[0096]在图4的实例中,解块器90包含解块确定单元94、支持定义92、解块滤波单元96、解块滤波器定义98、边缘定位单元93以及边缘位置数据结构95。解块器90的组件中的任一者或全部可在功能上集成。仅出于说明的目的而单独地说明解块器90的组件。一般来说,解块器90 (例如)从将块的预测数据与残余数据进行组合的求和组件接收经解码块的数据。所述数据可进一步包含如何预测块的指示。在下文所描述的实例中,解块器90经配置以接收包含经解码的LCU和LCU的CU四叉树的数据,其中CU四叉树描述LCU如何被分割为CU且描述叶节点CU的预测模式。所述数据还可包含指示将叶节点CU分割为PU和TU,其可进一步指示PU是否为非对称运动分区和/或TU是否为NSQT分区。TU四叉树可指示TU是否为NSQT分区和/或TU是否对应于非对称运动分区TO。
[0097]解块器90可将边缘位置数据结构95维持在解块器90的存储器中,或由对应的视频译码装置提供的外部存储器中。在一些实例中,边缘定位单元93可接收指示如何将LCU分割为CU的对应于LCU的CU四叉树。边缘定位单元93可随后分析CU四叉树以确定作为解块的候选者的LCU中的CU之间的边缘。
[0098]边缘位置数据结构95可包括具有水平尺寸、垂直尺寸和表示水平边缘和垂直边缘的尺寸的阵列。一般来说,CU之间的边缘可出现在LCU的两个最小大小的CU之间。因此,假设IXU具有ΝX N的大小,且假设IXU的两个最小大小的⑶具有大小ΜX M,阵列可包括[Ν/Μ] X [Ν/Μ] Χ2的大小,其中‘2’表示⑶之间的边缘的两个可能方向(水平和垂直)。举例来说,假设IXU具有64X64个像素和8X8个最小大小的CU,阵列可包括[8] X [8] X [2]个条目。
[0099]边缘位置数据结构95的每一条目可一般对应于两个⑶之间的可能边缘。边缘可能实际上不存在于LCU内的对应于边缘位置数据结构95的条目中的每一者的位置中的每一者处。举例来说,并非LCU的所有CU —定会被向下划分为最小大小的CU的大小(其可为8X8个像素)。然而,边缘位置数据结构95可包含足以表示例如在IXU被完全划分为最小大小的CU时的所有可能的边缘位置的条目数。边缘定位单元93可分析LCU的四叉树数据结构以确定实际的边缘存在于LCU的子CU之间的哪里,且将表示LCU中的对应于边缘位置数据结构95的条目的位置是否实际上为LCU的两个子块之间的边缘的信息存储在边缘位置数据结构95中。
[0100]因此,对应于不存在的边缘的数据结构的值可被初始化为假。一般来说,边缘定位单元93可分析CU四叉树以确定LCU的两个CU之间的边缘的位置,且将边缘位置数据结构95中的对应值设定为真。在一些实例中,边缘定位单元93可执行⑶四叉树的遍历,且可使用并行硬件、多线程技术和/或用以利用并行度的另一机制来并行地执行所述遍历。
[0101]一般来说,边缘位置数据结构95的条目可描述是否对应的边缘存在于IXU中以作为解块的候选者。也就是说,当边缘定位单元93确定LCU的两个相邻CU之间的边缘存在时,边缘定位单元93可设定边缘位置数据结构95中的对应条目的值以指示边缘存在(例如,设定为值“真”)。在一些实例中,可使用硬件、多线程和/或用以利用并行度的另一机制来并行地执行对边缘是否为解块的候选者的确定。通过使用多线程,多个线程可存取边缘位置数据结构95以确定垂直边缘是否为解块的候选者。在其中边缘位置数据结构95是阵列的实例中,每一线程可存取阵列中的一个或一个以上行或列。一旦已识别所有垂直边缘候选者,可针对水平边缘候选者重复相同过程,或反之亦然。
[0102]在一些实例中,当使用SDIP预测两个⑶中的一者时,边缘定位单元93可存储指示用于边缘位置数据结构95的对应位置中的CU的SDIP分区的类型的值。以此方式,边缘位置数据结构95不需要包含额外条目来表示LCU内的额外可能边缘。而是,可根据本发明的技术来修改可存储于边缘位置数据结构95中的值的类型,以存储布尔值或SDIP旗标。
[0103]解块确定单元94 一般针对两个相邻块(例如,两个CU、PU或TU)来确定所述两个块之间的边缘是否应被解块。解块确定单元94可使用边缘位置数据结构95来确定边缘的位置。在一些实例中,当边缘位置数据结构95的值具有布尔值时,解块确定单元94可确定“真”值指示边缘的存在,且“假”值指示不存在边缘。
[0104]一般来说,解块确定单元94经配置有一个或一个以上解块确定函数。解块确定函数可基于函数的结果来确定是否将解块应用于特定边缘。所述函数可包含应用于跨越块(例如,两个⑶)之间的边缘的像素线的多个系数。举例来说,可将所述函数应用于垂直于边缘的八个像素的线,其中所述像素中的四个像素位于两个块中的一者中,且另外四个像素位于两个块中的另一者中。取决于支持函数的形状和大小,可调适所述函数以使用更大或更少的像素。支持定义92定义函数的支持。一般来说,“支持”对应于向其应用所述函数的像素。
[0105]解块确定单元94可经配置以将一个或一个以上解块确定函数应用于由支持定义92定义的一组或一组以上支持,以确定视频数据的两个块之间的特定边缘是否应被解块。然而,在一些实例中,解块确定单元94经配置以跳过将解块确定函数应用于特定边缘,或经配置以调适解块决策函数和/或解块滤波器以用于特定边缘。解块确定单元94可经配置以在块是非正方形时且/或在块具有小于8个像素的尺寸时跳过应用解块确定函数,或调适解块决策函数。以此方式,解块器90 (且同样,包含解块器90的对应视频译码装置)可经配置以至少部分基于两个块中的至少一者是否为非正方形(例如,AMP PU、SDIP PU或NSQT TU)来确定是否对两个块之间的边缘进行解块。
[0106]在其它实例中,解块器90可经配置以使用其它技术至少部分基于两个块中的至少一者是否为非正方形来确定是否对两个块之间的边缘进行解块。举例来说,解块器90可经配置以调适解块决策函数和/或解块滤波器以用于对非正方形NSQT变换块、SDIP PU和/或具有小于8个像素的尺寸或在对应于切片、帧、GOP或包含多个LCU的其它单元的信息中所指示的最小⑶大小的AMP分区的边缘进行解块。解块器90可经配置以修改决策函数、滤波器类型和/或滤波器强度,以便避免将附近的边缘包含在对解块决策或滤波的计算之内,且避免附近的边缘之间的滤波器结果相依性。
[0107]当窄的非正方形分区垂直于将被解块的边缘,在将被解块的边缘的两侧上垂直或仅在一侧上垂直且另一侧上是正方形分区时,可将常规的HM解块用于将被解块的边缘。在一些实例中,对特定译码单元的解块可首先进行对垂直边缘进行解块,且随后对水平边缘进行解块,但对水平边缘解块然后对垂直边缘解块也是可能的。在不失一般性的情况下,本发明描述对垂直边缘然后对水平边缘进行解块。虽然对垂直边缘进行解块,但解块器90可改变稍后用于对一个或一个以上水平边缘进行解块中的一些支持,但这样做将不一定产生水平与垂直解块之间的竞态条件。当至少一个窄的非正方形分区或变换与将被解块的边缘平行时,解块器90可调适解块决策函数和/或解块滤波器以避免对附近的边缘的滤波之间的相互相依性,且避免在解块决策和滤波中包含附近的边缘。下文更详细地论述的图5提供与当前边缘平行和垂直的窄块的各种实例。
[0108]源自解块确定单元94的虚线表示块的数据在不被滤波的情况下输出。在其中解块确定单元94确定两个块之间的边缘不应被滤波的情况下,解块器90可输出块的数据而不更改数据。也就是说,所述数据可绕过解块滤波单元96。作为实例,如果两个块具有重叠组的支持来用于解块函数和/或用于解块函数,那么解块器90可确定不应对所述两个块进行滤波。另一方面,当解块确定单元94确定边缘应被滤波时,解块确定单元94可致使解块滤波单元96对边缘附近的像素的值进行滤波,以对边缘进行解块。
[0109]解块滤波单元96从解块滤波器定义98检索解块滤波器的定义以用于将被解块的边缘,如由解块确定单元94指示。对于非正方形块之间的边缘,解块滤波单元96可从解块滤波器定义98检索经调适的解块滤波器,使得所述滤波器不跨越额外的边界。一般来说,对边缘的滤波使用来自将被解块的当前边缘的相邻者的像素的值。因此,解块决策函数和解块滤波器可在边缘的两侧上具有某一支持区。通过将解块滤波器应用于边缘的相邻者中的像素,解块滤波单元96可将像素的值平滑化,使得减弱边缘附近的高频率转变。以此方式,将解块滤波器应用于边缘附近的像素可减少边缘附近的成块性假影。
[0110]在一实例中,例如图1到3的视频编码器20或视频解码器30等视频解码装置可包含实质上符合解块器90的实例的解块单元。视频编码器20或视频解码器30可经配置以在经调适的决策函数指示应对两个块之间的共同边缘进行解块时应用解块函数。所述解块函数可包括:
[0111]Δ = (9*(qO-pO)-3*(ql-pl)+8)/16
[0112]Δ =Clip(_tc,tc,Λ),其中tc是取决于第一块和第二块中的至少一者的量化参数(QP)的HM解块阈值
[0113]ρΟ' = ρΟ+Δ
[0114]qO' =q0_A。
[0115]在此实例中,delta(A)指代用于修改像素值(例如,p0和qO)的值。也就是说,在此实例中,p0'和qO'分别是通过将计算出的增量值加到p0以及从qO减去计算出的增量值来计算。另外,在此实例中,基于P0、q0、pl和ql的值来计算增量值。下文关于图7来论述p0、qO、pi和ql的实例位置。
[0116]作为另一实例,解块函数可包括:
[0117]Δ = (9* (q0-p0)-3* (ql-pl)+8)/16
[0118]Δ =Clip(_tc,tc,Λ),其中tc是取决于第一块和第二块中的至少一者的量化参数(QP)的HM解块阈值
[0119]ρΟ' = ρΟ+Δ
[0120]qO' = qO-Δ
[0121]pi' = ρΙ+Δ/2
[0122]ql' =ql-A/2。[0123]在此实例中,delta(A)再次指代用于修改像素值的值。然而,在此实例中,计算出的增量值用于修改边缘附近的四个像素值,例如P0、q0、pl和ql。更具体来说,在此实例中,p0'和qO'分别是通过将计算出的增量值加到p0以及从qO减去计算出的增量值来计算。此外,pi'和ql'分别是通过将计算出的增量值的一半加到pl以及从ql减去计算出的增量值的一半来计算。
[0124]在以上实例中,仅使用边缘的任一侧上的两个像素(S卩,p0、pl、qO和ql)来计算增量。因此,如果存在相隔四个像素的两个边缘,那么可无重叠地计算每一边缘的增量值。因此,可安全地维持边缘的任一侧上的像素值,而不关注此类操纵可能影响正应用于相邻、附近边缘的滤波的结果。以此方式,本发明的技术的这些实例可改进对用于视频译码的非正方形块的解块滤波的并行过程。
[0125]图5A到5C是说明相对于两个块之间(例如,两个TO、TU或⑶之间)的边缘的各种块定向的概念图。虽然展示了并排的块的实例,但应理解,可相对于顶部-底部相邻块来应用类似的解块技术。图5A描绘具有边缘151的块150、152。在此实例中,块150和152两者都是正方形。因此,可处理边缘151以正常地进行解块(即,不需要由于是非正方形而进一步考虑或调适)。正常的解块可一般对应于在HEVC的当前草案中定义的标准解块滤波器。
[0126]图5B描绘具有边缘155的块154、156。在此实例中,块154包含两个非正方形分区170、172。举例来说,分区170、172可包括自适应运动分区PU(或与其对应的TU)、两个NSQT TU,或四叉树变换分裂中的其它非正方形变换。虽然块156包含非正方形分区170、172,但在此实例中,非正方形分区170、172垂直于边缘155。也就是说,分区170、172的窄部分垂直于边缘155而延伸。因此,支持线(其一般垂直于边缘155)将平行于块156的分区170、172之间的边缘。因此,也可处理边缘155以正常地进行解块。应理解,出于本发明的目的,可为PU、TU或⑶的分区170、172还可被视为“块”。具体来说,分区170、172是非正方形块的实例。
[0127]图5C描绘具有边缘159的块158和160。在此实例中,块160包含两个非正方形分区174、176。在此情况下,取决于块160的分区174、176的宽度,支持区可跨越分区174、176之间的边界。因此,用于解块的对边缘159的处理可包含利用经调适的解块决策函数、支持和/或解块滤波器。在处理边缘159以用于解块时,可执行所述调适以避免跨越分区174、176之间的边界。应理解,出于本发明的目的,可为PU、TU或⑶的分区的分区174、176还可被视为“块”。具体来说,分区174、176是非正方形块的实例。
[0128]图6是说明根据本发明的技术的实例性方法的流程图。虽然图6的技术被描述为由解块器90(图4)执行,但应理解,这些技术可由任何视频译码装置执行,例如视频编码器20、视频解码器30、视频编码器/解码器(CODEC)、执行用以编码或解码视频数据的指令的处理器,或其它此类装置。此外,不一定以所说明的次序来执行图6的步骤,而是在一些实例中,可以其它序列或并行地执行。
[0129]起初,解块器90可确定第一块的大小(200)。作为实例,解块器90可通过分析IXU四叉树结构或通过查看CU的数据(包含与CU的PU或TU相关联的分区信息)来确定第一块的大小。解块器90还可确定与第一块相邻的第二块的大小(202)。解块器90可以类似于确定第一块的大小的方式来确定第二块的大小。因为第二块与第一块相邻,所以第一块和第二块共享共同边缘。因此,解块器90可建构边缘位置数据结构95以指示第一块与第二块之间的共同边缘的存在。包含解块器90的视频译码装置(例如,视频编码器或视频解码器)可对第一块和第二块进行解码(204)。视频编码器和视频解码器两者可经配置以对块进行解码,其中视频编码器可对块进行解码以用于产生在对后续视频数据进行编码时使用的参考数据。
[0130]在对块进行解码之后,解块器90可确定是否对第一块与第二块之间的共同边缘进行解块。根据本发明的技术,解块器90的解块确定单元94可基于第一块和第二块的所确定的大小来确定是否对第一块与第二块之间的共同边缘进行解块(206)。在一些实例中,视频编码器(例如,图1和3的视频编码器20)还可在对第一块和第二块进行解码之前对第一块和第二块进行编码。
[0131]在另一实例中,解块器90还可接收指示第一块和/或第二块为非正方形(例如,以作为非对称运动分区、SDIP分区,或母块的非正方形变换分区)的信息。解块器90可基于所接收的信息来确定第一块和/或第二块为非正方形。解块器90可进一步基于第一块和第二块中的至少一者为非正方形来确定是否对第一块与第二块之间的共同边缘进行解块。在一些实例中,解块器90可通过视频解码器而获得信息以作为用于包括第一块和第二块的经编码位流的语法信息。
[0132]解块器90可另外利用一个或一个以上解块确定函数来确定是否对第一块与第二块之间的边缘进行解块。解块决策函数可基于边缘附近的一个或一个以上高频率转变的存在来决定是否对所述边缘进行解块。在一实例中,解块器90可经配置以基于第一块和第二块中的任一者或两者是否为非正方形(例如,由于非对称运动分割、短距离帧内预测、由对称运动分割引起的非正方形变换,或可导致非正方形变换的其它四叉树变换分裂)来确定是否对所述共同边缘进行解块。
[0133]在一些实例中,解块确定单元94可经配置以在第一块和第二块中的任一者或两者是非正方形时调适解块决策函数。解块确定单元94可通过在运行中修改函数和/或支持,或通过选定的先前经调适的解块决策函数,来调适解块决策函数。在一些实例中,解块确定单元94可经配置以在非正方形块的窄部分平行于(且因此不垂直于)第一块与第二块之间的共同边缘时来调适解块决策函数。
[0134]此外,解块滤波单元96可经配置以在作出对边缘进行解块的决策时将经调适的解块滤波器应用于边缘。举例来说,解块滤波单元96可选择经调适的解块滤波器或在运行中调适解块滤波器。经调适的解块滤波器可对应于经调适的滤波器类型和/或滤波器强度。一般来说,与经调适的解块确定函数一样,经调适的解块滤波器可避免将附近的边缘包含在对解块决策(或滤波)的计算之内,且避免附近的边缘之间的滤波器结果相依性。以此方式,解块器90可基于确定对块进行滤波(208)。解块器90可随后存储经解码的、潜在边缘被解块的块(210),例如,以用作用于后续经译码视频块的参考。也就是说,当视频编码器或解码器正执行帧间预测或帧内预测时,后续译码的块可依赖于潜在经滤波的参考块。当解块器90包含在视频解码器中时,视频解码器可随后将经解码的块输出到(例如)等显示装置(例如显示装置32 (图1))。
[0135]以此方式,图6表示用于对视频数据进行译码的方法的实例,所述方法包含:对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。
[0136]图7是说明在块230和232之间的边缘234附近的两个实例性块230、232的像素位置的概念图。在此实例中,边缘234具有八个像素的长度。使用格式[?|9]1:来标示像素位置中的每一者,其中P对应于块230,且q对应于块232,I对应于距边缘234的距离,且J对应于从块230和232的顶部到底部的行指示符。在一些实例中,用于解块决策函数和解块滤波器的支持具有八个像素的线。在此些实例中,对于给定线X,其中0 < X < 7,像素p3x到q3x中的每一者可用作支持。相应地,对于这些实例,如果使用SDIP来预测块230或232中的每一者,且SDIP模式在小于四的分区宽度下是垂直的,那么八像素支持将跨越SDIP PU边界。在其它实例中,可使用另一窄的非正方形分区来预测块230、232,或使用窄的非正方形变换进行变换。
[0137]可从来自相邻的⑶或相邻的SDIP分区的像素的值来预测使用SDIP预测的⑶的PU的数据。SDIP TO可为非正方形区,例如矩形。分区可为垂直的或水平的,即,界定⑶内的分区的边缘可垂直或水平定向。因此,如果SDIP分区具有小于4个像素的宽度且邻近于垂直边缘而定位,那么使用标准的HM解块滤波器将跨越垂直SDIP分区的PU边界。然而,如果SDIP分区具有垂直于垂直边缘的边缘,那么便可使用常规的HM解块滤波器。
[0138]将块230和232说明为正方形块。应理解,块230和232可表示译码单元(⑶),且可根据SDIP或AMP进行分割,使得PU边界存在于块230和/或232内,例如,在像素p2x与plx和/或qlx与q2x之间。替代地或者另外,可根`据NSQT对块230和/或232进行分割,使得TU边界存在于块230和/或232内,例如,在像素p2x与plx和/或qlx与q2x之间。
[0139]在一些实例中,可存在平行于边缘234的至少一个窄非正方形分区或变换,所述边缘在此实例中为考虑进行解块的边缘。也就是说,视频编码器20和/或视频解码器30可经配置以确定是否对边缘234进行解块,这可至少部分基于决策函数是否将跨越窄的非正方形分区或变换之间的边界。当存在平行于边缘234的至少一个窄的非正方形分区或变换时,视频编码器20和/或视频解码器30可经配置以调适解块决策和滤波器以避免对附近的边缘的滤波之间的相互相依性,且避免在解块决策和滤波中包含附近的边缘。
[0140]另外,在此情况下,可将来自常规的HM的解块开/关决策函数应用于边缘234 (更特定来说,边缘234附近的块230、232的像素)以确定是否对边缘234进行解块。举例来说,视频编码器20和/或视频解码器30可经配置以将解块决策函数应用于边缘234的两侧上的三个样本,以用于沿着长度8个样本的边缘234的位置2和5。举例来说,视频编码器20和/或视频解码器30可首先将解块决策函数应用于像素p22、pl2、p022、q02、ql2和q22,且随后应用于像素p25、pl5、p025、q05、ql5和q25。以此方式,视频编码器20和/或视频解码器30可在距共同边缘234的末端两个像素的第一位置处将解块决策函数应用于垂直于共同边缘234的第一组像素,且在距共同边缘234的相同末端五个像素的第二位置处将解块决策函数应用于也垂直于共同边缘234的第二组像素。所述样本可为经重构类型或预解块滤波。
[0141]在解块决策对于当前边缘234是“开”的情况下(例如,解块决策函数,或将解块决策应用于一组或一组以上像素,可能进行聚集、平均化,或其它操作以产生最终结果的结果指示应对边缘234进行解块),可应用以下解块滤波器,其包含概念上类似于采用到来自JCTVC-F118的HEVC中的弱亮度滤波器的元素:
[0142]Δ = (9* (qO-pO)—3* (ql-pl)+8)/16
[0143]Δ = Clip (-tc, tc, Δ ) (tc是取决于QP的例如在JCTVC-F803中所描述的HM解块阈值)
[0144]ρΟ' = ρ0+ Δ
[0145]qO' = qO-Δ
[0146]此滤波器修改了当前边缘234的两侧上的一个样本。所述滤波器是基于边缘(Λ)的两侧上的两个样本来计算,所述两个样本均在来自边缘的两个像素内。以此方式,至少在其中在分区中存在至少四个像素的情况下,可避免附近的边缘的过滤之间的相依性,且可保留并行过滤性质。解块器90可能不能够与在⑶230或⑶232的另一不同垂直边缘上操作的另一滤波器并行地利用标准的HM解块滤波器。解块器90可能够将上文所描述的弱滤波器应用于相隔至少4个像素的边缘上。通过对相隔至少4个像素的边缘进行解块,解块器可检查和/或修改第一边缘的一侧上的两个像素,和第二边缘的相对侧上的两个像素,而不会有竞态条件或相互相依性。
[0147]在此实例中,读取边缘234的任一侧上的两个像素来计算Λ,Δ表示将最靠近边缘的像素(即,pOj和qOj)的值偏移的值。值pOj '和qOj '表示在添加Δ之后pOj和qOj的经调整的值。
[0148]替代地,可应用以下滤波器,其修改边缘的两侧上的两个样本:
[0149]Δ = (9* (q0-p0)—3* (ql-pl)+8)/16
[0150]Δ = Clip (-tc, tc, Δ ) (tc是取决于QP的例如在JCTVC-F803中所描述的HM解块阈值)
[0151]ρΟ' = ρΟ+Δ
[0152]qO' = qO-Δ
[0153]pl1 = pl+ Δ /2
[0154]ql' = ql-A/2
[0155]在此实例中,读取边缘234的任一侧上的两个像素来计算Λ,Δ再次表示将最靠近边缘234的像素的值偏移的值。使用Λ的一半来偏移远离边缘234 —个像素的像素(SP,像素plj和qlj)的值。
[0156]可计算额外的解块决策以在修改边缘的任一侧上的一个或两个样本之间进行决定,例如来自JCTVC-F118的JCTVC-F803中所描述。
[0157]上文所论述的滤波器是根据本发明的经修改的解块滤波器的两个实例。可应用类似的修改对决策函数进行解块以避免跨越多个ro或TU边界。
[0158]图8是说明其中可使用自适应解块决策函数和解块滤波器的例子的各种实例的概念图。具体来说,图8说明包含两个相邻块(对250中的每一者中标记为“P”和“Q”)的块对250A-250I (块对250)。在对250中的每一者中,块“P”可一般对应于块230 (图7),而块“Q”可一般对应于块232 (图7)。相应地,对250中的每一者包含分离块P和Q的边界线252A-252I(边界线252)中的相应一者。
[0159]关于上文所描述的非对称运动分割(AMP)技术来描述图8的实例。假设对250中的每一者中的块P和Q具有16X 16像素的大小,但根据本发明的技术,还可使用其它大小的块。另外,在确定是否对垂直对的块之间的水平边界进行解块时,可以类似方式分析垂直对的块。
[0160]具体来说,图8的实例性对250表示经AMP分割的块的各种组合,以及是否将针对块之间的AMP边界和边界来调适解块决策函数和解块滤波器。也就是说,图8说明用于左边/右边相邻块P和Q的各种AMP情况。假设块P和Q是16 X 16⑶,如果所述块中的每一者是使用AMP进行分割,且AMP边界平行于且邻近于边界252的对应一者,那么可使用经调适的解块决策函数和解块滤波器来避免在应用解块决策函数和解块滤波器时的重叠。
[0161]举例来说,关于对250A,块P和Q未使用AMP进行分割。因此,可使用常规的解块决策函数和解块滤波器来用于确定是否对边界252A进行解块。如果确定对边界252A进行解块,那么可将常规的解块滤波器应用于边界252A附近的像素以对边界252A进行解块。
[0162]关于对250B的实例,边界251表示水平AMP边界。也就是说,块250B中的块Q表示使用2NXnU AMP分割方案进行分割的块的实例,其中边界251是由2NXnU分割产生。在2NXnU AMP分割中,2NX2N块包含顶部上的2NX (N/2)分区以及底部上的2NX (3N/2)分区。替代地,对250B的块Q可使用2NXnD分割进行分割,其将产生边界253。在2NXnD中,2NX2N块包含底部上的2NX (N/2)分区以及顶部上的2NX (3N/2)分区。在任一情况下,边界251和253均垂直于边界252B。因此,应用于边界252B的解块决策函数和解块滤波器将平行于边界251和253。因此,不需要调适应用于边界252B的解块决策函数和解块滤波器。
[0163]类似地,对250D表示其中块P使用2NXnU AMP分割方案(产生边界256)或2NXnD分割方案(产生边界258)进行分割的实例。与在对250B的情况一样,边界256和258垂直于边界252D,且因此,不需要调适应用于边界252D的解块决策函数和解块滤波器。同样,对于对250E,因为边界260、262、264和266垂直于边界252E,所以可将常规的解块决策函数和解块滤波器应用于边界252E。因此,当块P和Q是使用2NXnU或2NXnD AMP分割方案进行分割时,没有必要调适应用于垂直边界252E的解块决策函数和解块滤波器。
[0164]对250C表示其中使用nLX2N分割方案对块Q进行分割的实例。以此方式,块Q包含边界254。另外,边界254平行于划分对250C的实例的块Q和P的边界252C而延伸。再次假设块P和Q是16 X 16像素块,块Q将在左边包含4X16分区,且在右边包含12 X 16分区。因此,常规的解块决策函数和解块滤波器可能在并行地应用于边界252C和254时遇到重叠。因此,根据本发明的技术,不使用常规的解块决策函数和解块滤波器,可将经调适的解块决策函数和解块滤波器应用于边界252C和254。
[0165]类似地,对于对250G,可将经调适的解块决策函数和解块滤波器应用于边界276和252G。在此情况下,块P表示使用nRX2N AMP分割方案而分割的块的实例。因此,假设块P具有16X 16像素,块P的4X 16像素分区接触边界252G,如图8中所说明。同样,对于对2501,可调适应用于边界280、2521和282中的每一者的解块决策函数和解块滤波器以避
免重叠。
[0166]一般来说,对解块决策函数和解块滤波器的调适可为单向的。举例来说,可仅调适朝向平行边界延伸的原本会在并行应用时导致重叠的解块决策函数和解块滤波器的侧。因此,对于边界252C,在一些实例中,可仅调适解块决策函数和解块滤波器的右侧,而在一些实例中,可仅调适应用于边界254的解块决策函数和解块滤波器的左侧。同样,对于边界252G,在一些实例中,可仅调适解块决策函数和解块滤波器的左侧,而在一些实例中,可仅调适应用于边界276的解块决策函数和解块滤波器的右侧。关于对2501,可调适应用于边界280的解块决策函数和解块滤波器的右侧,可调适应用于边界282的解块决策函数和解块滤波器的左侧,且可调适应用于边界2521的解块决策函数和解块滤波器的两侧。替代地,在其中确定将使用调适的所有情况下,可调适解块决策函数和解块滤波器的两侧。
[0167]在对250F和250H的剩余实例中,使用2NXnU或2NXnD AMP分割方案对块P和Q中的一者进行分割,而使用nRX2N或nLX2N AMP分割方案对所述块中的另一者进行分害I]。因此,可将对解块决策函数和解块滤波器的调适应用于使用2NXnU或2NXnD AMP分割方案而分割的块的垂直边界而不应用于水平边界。举例来说,可将经调适的解块决策函数和解块滤波器应用于对250F的边界252F和272,但是可将常规的解块决策函数和解块滤波器应用于边界268和270。作为另一实例,可将经调适的解块决策函数和解块滤波器应用于对250H的边界252H和278,但是可将常规的解块决策函数和解块滤波器应用于边界277和 279。
[0168]再次,在一些实例中,对于边界252F,可在一些实例中仅调适解块决策函数和解块滤波器的右侧,而可在一些实例中仅调适应用于边界272的解块决策函数和解块滤波器的左侧。同样,对于边界252H,在一些实例中,可仅调适解块决策函数和解块滤波器的左侧,而在一些实例中,可仅调适应用于边界276的解块决策函数和解块滤波器的右侧。再次,替代地,可调适这些解块决策函数和解块滤波器的两侧。
[0169]以此方式,图8说明用于左边/右边相邻块P和Q的AMP情况。可针对顶部/底部P和Q块形成类似情况。如果一个块(P或Q)是AMP类型的16X 16CU,而另一块是任何其它帧内/帧间类型,包含AMP类型的16 X 16CU,那么在存在与块P与块Q之间的边缘平行的至少一个邻近的16X4或4X16AMP分区时(如在对250C、250F、250G、250H和2501中),可调适块P与块Q之间的共同边缘的解块滤波器。图8中的箭头指示所述边缘,包含内部AMP分区边缘,可针对所述边缘调适解块滤波器以便避免附近的边缘之间的滤波相依性。在一些实例中,对于图8的对250,可如根据以上论述所确定的那样而仅调适解块滤波器,而不针对对于其指示调适的那些边缘来调适解块决策函数和解块滤波器两者。
[0170]图9是说明用于非正方形四叉树分割的实例性分割结构的概念图。如图9中所示,可使用非正方形四叉树变换(NSQT)对块300进行分割。一般来说,NSQT允许将例如⑶的TU等块分割为第一层级的四个非正方形矩形,可进一步将所述四个非正方形矩形中的任一者或全部分割为额外层级的四个更小的、相等大小的非正方形矩形。在图9的实例中,块300具有大小2NX2N。可将所述块分割为四个2NX (N/2)或(N/2) X2N矩形302A-302D。可进一步将这些第一层级块302中的任一者分割为第二层级的四个具有大小NX (N/4)或(N/4) XN的更小的、相等大小的非正方形块304A-304D(块304)。虽然在图9中将块300说明为分割为两个层级的子块(302、304),但可将例如块300等块分割为一个层级的块,其不进一步分割。NSQT—般用于分割块的变换单元(TU),其中TU包含与残余数据相关联的变换系数。可应用本发明的技术对由NSQT分区(例如图9中所说明的NSQT分区)产生的边界进行解块。
[0171]在一些实例中,解块器可将经调适的解块决策函数和/或解块滤波器应用于图9中所描绘的经NSQT分割的块的一个或一个以上边缘。与以上在图8中所说明的块一样,在对两个边缘进行解块可导致滤波器或决策函数的支持的重叠时,解块器(例如,图4的解块器90)可应用经调适的解块决策函数和/或解块滤波器。通常,在两个边缘一起近于8个像素时,可出现支持的重叠。在两个边缘彼此垂直时,解块器90可将标准的决策函数和/或解块滤波器应用于所述边缘。在NSQT分割产生彼此定位成近于8个像素的两个平行边缘时,解块器90可根据本发明的技术来调适决策函数和/或解块滤波器。
[0172]图10是说明经AMP分割的块320到326的各种实例的概念图。AMP分割一般涉及将例如PU等块分割为两个或两个以上更小的块。在AMP分割方案中,可垂直地或水平地将大小2NX2N的块分割为两个矩形。在图10的实例中,将每一块320、322、324和326分割为两个矩形。一个矩形具有N/2像素的尺寸(S卩,长度或宽度),且另一矩形具有3N/2像素的相同尺寸。
[0173]在此实例中,块320、322、324和326中的每一者是64X64像素块,但可以类似方式分割其它大小的块。块320包含左边缘328A,且使用2NXnU AMP分割方案进行分割,使得块320包含被边缘330A划分的顶部上的64X 16分区以及底部上的64X48分区。块322包含左边缘328B,且使用2NXnD AMP分割方案进行分割,使得块322包含被边缘330B划分的底部上的64X16分区以及顶部上的64X48分区。块324包含左边缘328D,且使用nLX2N AMP分割方案进行分割,使得块324包含被边缘330C划分的左边上的16X64分区以及右边上的48X64分区。块326使用nRX2N AMP分割方案进行分割,使得块326包含被边缘330D划分的右边上的16X64分区以及左边上的48X64分区。取决于块320到326内的AMP边界的位置以及块320到326与相邻块之间的边界的位置,可将经调适的解块决策函数和/或经调适的解块滤波器应用于内部AMP边界以及块320到326与相邻块之间的边界中的任一者或全部。
[0174]在一些实例中,视频译码装置(例如视频编码器或视频解码器)可将经调适的解块决策函数和/或经调适的解块滤波器应用于图10中所说明的块中的一者或一者以上。图4的解块器90可尝试对块320的边缘328A进行解块。在块320的情况下,边缘330A垂直于边缘328A,因此解块器90可将来自HM的当前版本的标准解块滤波器应用于块320。因为边缘330B垂直于边缘328B,所以解块器90可类似地将标准的HM解块滤波器应用于块322的边缘238B。在块324和326的情况下,虽然有两个块具有彼此平行的边缘的事实,但解块器90可仍能够应用标准的HM解块滤波器。在块324的情况下,边缘328C是来自边缘328C的16像素。标准的HM解块滤波器具有8X8像素支持,利用将被解块的边缘的任一侧上的支持的4X8像素区。当对边缘328C进行解块时,解块器90可将边缘328C的任一侧上的四个像素用于支持。如果边缘330C正与边缘328C被并行地解块,那么将边缘330C的左边和右边的仅四个像素用于支持。因此,当对边缘328C和330C进行解块时,将不会出现重叠。类似地,在对边缘328D进行解块的情况下,将不会发生解块,因为边缘328D与边缘330D之间的距离更大。
[0175]图11A到111是说明相对于两个块之间的边缘的各种SDIP PU定向的概念图。虽然展示了并排的块的实例,但应理解,可相对于顶部-底部相邻块来应用类似的技术。图11A描绘具有边缘341的块340、342。在此实例中,使用除了 SDIP之外的预测模式来预测块340和340。因此,可处理边缘341以正常地进行解块(即,不需要由于是SDIP预测而进一步考虑或调适)。
[0176]图11B描绘具有边缘345的块344、346。在此实例中,使用除了 SDIP之外的预测模式来预测块344。在此实例中,虽然使用SDIP来预测块346,但346的SDIP TO垂直于边缘345。因此,支持线(其一般垂直于边缘345)将平行于块346的SDIP PU之间的边缘。因此,也可处理边缘345以正常地进行解块。类似地,对于其中块352和354具有边缘353的图11D,使用垂直于边缘353的SDIP TO来SDIP预测块352,且因此,可处理边缘353以正常地进行解块。同样,对于其中块366和368具有边缘367的图11E,使用垂直于边缘367的SDIP TO来预测块366和368两者,且因此,可处理边缘367以正常地进行解块。
[0177]图11C描绘具有边缘349的块348和350。在此情况下,取决于块350的SDIP PU的宽度,支持区可跨越块350的SDIP TO之间的PU边界。因此,用于解块的对边缘349的处理可包含利用经调适的解块决策函数、支持和/或解块滤波器。在处理边缘349以用于解块时,可执行所述调适以避免跨越块350的SDIP PU边界。类似地,在处理在块374与376之间形成的图11G的边缘375时,可使用经调适的决策函数和解块滤波器,因为块374是使用平行于边缘375的SDIP PU来预测。在图111的情况下,具有边缘383的块382和384两者都是使用平行于边缘383的SDIP TO来预测。因此,对决策函数和支持的调适可避免跨越块382和384中的SDIP PU边界。
[0178]同样,可将经调适的组的支持、决策函数和/或解块滤波器应用于在图11F的块370与372之间形成的边缘371以及在图11H的块378与380之间形成的边缘379。虽然块370和380是使用SDIP TO来预测,但这些SDIP PU分别垂直于边缘371和边缘379。因此,经调适的支持、函数和滤波器不需要考虑块370和380中的边缘。然而,因为块372和378分别是使用平行于边缘371和379的SDIP TO来预测,所以可选择经调适的支持、函数和滤波器以避免跨越块372和378中的SDIP PU边界。
[0179]在一个或一个以上实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件实施,那么所述功能可作为一个或一个以上指令或代码存储在计算机可读媒体上或经由计算机可读媒体进行传输且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体(其对应于例如数据存储媒体等有形媒体)或通信媒体,通信媒体包含促进(例如)根据通信协议将计算机程序从一处传递到另一处的任何媒体。以此方式,计算机可读媒体一般可对应于(1)非暂时性的有形计算机可读存储媒体或(2)例如信号或载波等通信媒体。数据存储媒体可为可由一个或一个以上计算机或一个或一个以上处理器存取以检索指令、代码和/或数据结构来用于实施本发明中所描述的技术的任何可用媒体。计算机程序产品可包含计算机可读媒体。
[0180]举例来说且并非限制,所述计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,快闪存储器,或可用于存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。同样,可适当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电及微波的无线技术从网站、服务器或其它远程源传输软件,则同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电及微波的无线技术包含于媒体的定义中。然而,应理解,计算机可读存储媒体和数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而是针对于非暂时的有形存储媒体。如本文中所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软磁盘及蓝光光盘,其中磁盘通常磁性地再现数据,而光盘使用激光光学地再现数据。以上各者的组合也应包含在计算机可读媒体的范围内。
[0181]可由例如一个或一个以上数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一个或一个以上处理器来执行所述指令。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可提供于经配置以用于编码及解码的专用硬件模块和/或软件模块内,或并入组合式编解码器中。并且,可将所述技术完全实施于一个或一个以上电路或逻辑元件中。
[0182]本发明的技术可实施于广泛多种装置或设备中,包含无线手持机、集成电路(1C)或1C组(例如,芯片组)。本发明中描述各种组件、模块或单元来强调经配置以执行所揭示的技术的装置的若干功能性方面,但不一定需要通过不同的硬件单元来实现。而是,如上文所描述,各种单元可联合合适的软件和/或固件而组合于编解码器硬件单元中或通过互操作的硬件单元的集合(包含如上文所描述的一个或一个以上处理器)来提供。
[0183]已描述了各种实例。这些及其它实例属于所附权利要求书的范围内。
【权利要求】
1.一种对视频数据进行译码的方法,所述方法包括: 对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及 至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。
2.根据权利要求1所述的方法,其中所述方法进一步包括对所述第一块和所述第二块进行编码。
3.根据权利要求1所述的方法,其进一步包括: 获得指示所述第一块包括母块的非对称运动分区的信息;以及 基于指示所述第一块包括所述非对称运动分区的所述所获得的信息来确定所述第一块是非正方形。
4.根据权利要求3所述的方法,其进一步包括使用非对称运动分割来分割所述母块以形成所述第一块,其中获得所述信息包括通过视频编码器产生所述信息,且通过所述视频编码器的解块滤波器接收所述信息。
5.根据权利要求3所述的方法,其中获得所述信息包括通过视频解码器获得所述信息,以作为包括所述第一块和所述第二块的经编码位流的语法信息。
6.根据权利要求3所述的方法,其进一步包括: 获得指示所述第二块包括第二不同母块的第二非对称运动分区的信息;以及 基于指示所述第二块包括所述第二非对称运动分区的所述所获得的信息来确定所述第二块是非正方形。
7.根据权利要求1所述的方法,其进一步包括: 获得指示所述第一块包括母块的对称运动分区的非正方形变换的信息;以及 基于指示所述第一块包括所述母块的所述对称运动分区的所述非正方形变换的所述所获得的信息来确定所述第一块是非正方形。
8.根据权利要求7所述的方法,其进一步包括使用对称运动分割来将所述母块分割为非正方形对称分区以形成所述第一块,其中所述第一块包括所述母块的所述对称非正方形分区中的一者,其中获得所述信息包括通过视频编码器产生所述信息,且通过所述视频编码器的解块滤波器接收所述信息。
9.根据权利要求7所述的方法,其中获得所述信息包括通过视频解码器获得所述信息,以作为包括所述第一块和所述第二块的经编码位流的语法信息。
10.根据权利要求1所述的方法,其中确定是否对所述共同边缘进行解块包括: 确定所述第一块和所述第二块中的至少一者是否为非正方形;以及 在确定所述第一块和所述第二块中的至少一者为非正方形之后,将经调适的解块决策函数应用于所述第一块和所述第二块的像素。
11.根据权利要求1所述的方法,其中确定是否对所述共同边缘进行解块包括 确定所述第一块和所述第二块中的至少一者是否为非正方形; 在确定所述第一块是非正方形之后,确定所述第一块的窄部分是否垂直于所述共同边缘; 在确定所述第二块是非正方形之后,确定所述第二块的窄部分是否垂直于所述共同边缘;在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时,将第一经调适的解块决策函数应用于所述第一块和所述第二块的像素;在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时,将第二经调适的解块决策函数应用于所述第一块和所述第二块的像素;在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时,且在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时,将第三经调适的解块决策函数应用于所述第一块和所述第二块的像素;以及在所述第一块是正方形或所述第一块的所述窄部分垂直于所述共同边缘时,且在所述第二块是正方形或所述第二块的所述窄部分垂直于所述共同边缘时,将常规的解块决策函数应用于所述第一块和所述第二块的像素。
12.根据权利要求11所述的方法,其进一步包括在所述第一经调适的解块决策函数、所述第二经调适的解块决策函数以及所述第三解块决策函数指示将对所述共同边缘进行解块时,将经调适的解块滤波器应用于所述共同边缘。
13.根据权利要求11所述的方法,其中所述共同边缘包括八个像素的长度,且其中将所述第三经调适的解块决策函数应用于所述第一块和所述第二块的所述像素包括:在距所述共同边缘的末端两个像素的第一位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第一组像素;以及在距所述共同边缘的所述末端五个像素的第二位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第二不同组像素。
14.根据权利要求13所述的方法`,其进一步包括在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后,使用包括以下各者的解块滤波器对所述共同边缘进行解块:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ = Clip(_tc,tc,Λ),其中tc是取决于所述第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO1 = qO- Δ。
15.根据权利要求13所述的方法,其进一步包括在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后,使用包括以下各者的解块滤波器对所述共同边缘进行解块:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ = Clip(_tc,tc,Λ),其中tc是取决于所述第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO' = qO-Δpi' = ρΙ+Δ/2ql' = ql- Δ /2。
16.一种用于对视频数据进行译码的设备,所述设备包括:视频译码装置,其经配置以对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。
17.根据权利要求16所述的设备,其中所述设备包括以下各者中的至少一者: 集成电路; 微处理器;以及 包含所述视频译码装置的无线通信装置。
18.根据权利要求16所述的设备,其中所述视频译码装置进一步经配置以对所述第一块和所述第二块进行编码。
19.根据权利要求16所述的设备,其中所述视频译码装置进一步经配置以获得指示所述第一块包括母块的非对称运动分区的信息,且基于指示所述第一块包括所述非对称运动分区的所述所获得的信息来确定所述第一块是非正方形。
20.根据权利要求19所述的设备,其中为了获得所述信息,所述视频译码装置进一步经配置以通过视频解码器获得所述信息,以作为包括所述第一块和所述第二块的经编码位流的语法信息。
21.根据权利要求19所述的设备,其中所述视频译码装置进一步经配置以获得指示所述第二块包括第二不同母块的第二非对称运动分区的信息,且基于指示所述第二块包括所述第二非对称运动分区的所述所获得的信息来确定所述第二块是非正方形。
22.根据权利要求16所述的设备,其中所述视频译码装置进一步经配置以获得指示所述第一块包括母块的对称运动分区的非正方形变换的信息,且基于指示所述第一块包括所述母块的所述对称运动分·区的所述非正方形变换的所述所获得的信息来确定所述第一块是非正方形。
23.根据权利要求22所述的设备,其中为了获得所述信息,所述视频译码装置进一步经配置以通过视频解码器获得所述信息,以作为包括所述第一块和所述第二块的经编码位流的语法信息。
24.根据权利要求16所述的设备,其中为了确定是否对所述共同边缘进行解块,所述视频译码装置进一步经配置以确定所述第一块和所述第二块中的至少一者是否为非正方形,且在确定所述第一块和所述第二块中的至少一者为非正方形之后,将经调适的解块决策函数应用于所述第一块和所述第二块的像素。
25.根据权利要求16所述的设备,其中为了确定是否对所述共同边缘进行解块,所述视频解码器经配置以:确定所述第一块和所述第二块中的至少一者是否为非正方形;在确定所述第一块是非正方形之后,确定所述第一块的窄部分是否垂直于所述共同边缘;在确定所述第二块是非正方形之后,确定所述第二块的窄部分是否垂直于所述共同边缘;在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时,将第一经调适的解块决策函数应用于所述第一块和所述第二块的像素;在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时,将第二经调适的解块决策函数应用于所述第一块和所述第二块的像素;在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时,且在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时,将第三经调适的解块决策函数应用于所述第一块和所述第二块的像素;以及在所述第一块是正方形或所述第一块的所述窄部分垂直于所述共同边缘时,且在所述第二块是正方形或所述第二块的所述窄部分垂直于所述共同边缘时,将常规的解块决策函数应用于所述第一块和所述第二块的像素。
26.根据权利要求25所述的设备,其中所述共同边缘包括八个像素的长度,且其中为了将所述第三经调适的解块决策函数应用于所述第一块和所述第二块的所述像素,所述视频解码器进一步经配置以:在距所述共同边缘的末端两个像素的第一位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第一组像素;以及在距所述共同边缘的所述末端五个像素的第二位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第二不同组像素。
27.根据权利要求26所述的设备,其中所述视频译码装置进一步经配置以在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后,使用包括以下各者的解块滤波器对所述共同边 缘进行解块:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ =Clip(_tc,tc, Λ),其中tc是取决于第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO1 = qO- Δ。
28.根据权利要求27所述的设备,其中所述设备进一步经配置以在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后,使用包括以下各者的解块滤波器对所述共同边缘进行解块:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ = Clip(_tc,tc,Λ),其中tc是取决于所述第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO' = qO-Δpi' = ρΙ+Δ/2ql' = ql- Δ /2。
29.一种用于对视频数据进行译码的设备,所述设备包括:用于对视频数据的第一块和视频数据的第二块进行解码的装置,其中所述第一块和所述第二块共享共同边缘;以及用于至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块的装置。
30.根据权利要求29所述的设备,其中所述设备进一步经配置以对所述第一块和所述第二块进行编码。
31.根据权利要求29所述的设备,其中所述设备进一步包括:用于获得指示所述第一块包括母块的非对称运动分区的信息的装置;以及用于基于指示所述第一块包括所述非对称运动分区的所述所获得的信息来确定所述第一块是非正方形的装置。
32.根据权利要求31所述的设备,其中所述用于获得所述信息的装置包括用于通过视频解码器获得所述信息以作为包括所述第一块和所述第二块的经编码位流的语法信息的 装直。
33.根据权利要求31所述的设备,其中所述设备进一步包括:用于获得指示所述第二块包括第二不同母块的第二非对称运动分区的信息的装置;以及 用于基于指示所述第二块包括所述第二非对称运动分区的所述所获得的信息来确定所述第二块是非正方形的装置。
34.根据权利要求29所述的设备,其中所述设备进一步包括: 用于获得指示所述第一块包括母块的对称运动分区的非正方形变换的信息的装置;以及 用于基于指示所述第一块包括所述母块的所述对称运动分区的所述非正方形变换的所述所获得的信息来确定所述第一块是非正方形的装置。
35.根据权利要求34所述的设备,其中所述用于获得所述信息的装置包括用于通过视频解码器获得所述信息以作为包括所述第一块和所述第二块的经编码位流的语法信息的 装直。
36.根据权利要求29所述的设备,其中所述设备进一步包括: 用于确定所述第一块和所述第二块中的至少一者是否为非正方形的装置;以及用于在确定所述第一块和所述第二块中的至少一者为非正方形之后将经调适的解块决策函数应用于所述第一块和所述第二块的像素的装置。
37.根据权利要求29所述的设备,其中所述用于确定是否对所述共同边缘进行解块的装置包括用于确定所述第一块和所述第二块中的至少一者是否为非正方形的装置; 其中所述设备进一步包括: 用于在确定所述第一块是非正方形之后确定所述第一块的窄部分是否垂直于所述共同边缘的装置; 用于在确定所述第二块是非正方形之后确定所述第二块的窄部分是否垂直于所述共同边缘的装置; 用于在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时将第一经调适的解块决策函数应用于所述第一块和所述第二块的像素的装置; 用于在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时将第二经调适的解块决策函数应用于所述第一块和所述第二块的像素的装置; 用于在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时且在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时将第三经调适的解块决策函数应用于所述第一块和所述第二块的像素的装置;以及用于在所述第一块是正方形或所述第一块的所述窄部分垂直于所述共同边缘时且在所述第二块是正方形或所述第二块的所述窄部分垂直于所述共同边缘时将常规的解块决策函数应用于所述第一块和所述第二块的像素的装置。
38.根据权利要求37所述的设备,其中所述共同边缘包括八个像素的长度; 其中所述用于将所述第三经调适的解块决策函数应用于所述第一块和所述第二块的所述像素的装置包括用于在距所述共同边缘的末端两个像素的第一位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第一组像素的装置;且其中所述设备进一步包括用于在距所述共同边缘的所述末端五个像素的第二位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第二不同组像素的装置。
39.根据权利要求38所述的设备,其中所述设备进一步包括:用于在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后使用包括以下各者的解块滤波器对所述共同边缘进行解块的装置:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ =Clip(_tc,tc, Λ),其中tc是取决于第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO1 = qO- Δ。
40.根据权利要求38所述的设备,其中所述设备进一步包括:用于在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后使用包括以下各者的解块滤波器对所述共同边缘进行解块的装置:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ = Clip(_tc,tc,Λ),其中tc是取决于所述第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO' = qO-Δpi' = ρΙ+Δ/2ql' = ql-Δ/2。
41.一种计算机程序产品,其包括计算机可读存储媒体,所述计算机可读存储媒体具有存储于其上的指令,所述指令在被执行时致使用于对视频数据进行译码的装置的处理器:对视频数据的第一块和视频数据的第二块进行解码,其中所述第一块和所述第二块共享共同边缘;以及至少部分基于所述第一块和所述第二块中的至少一者是否为非正方形而确定是否对所述第一块与所述第二块之间的所述共同边缘进行解块。
42.根据权利要求41所述的计算机程序产品,其中所述计算机可读媒体进一步包括致使所述处理器对所述第一块和所述第二块进行编码的指令。
43.根据权利要求41所述的计算机程序产品,其中所述计算机可读媒体进一步包括致使所述处理器进行以下操作的指令:获得指示所述第一块包括母块的非对称运动分区的信息;以及基于指示所述第一块包括所述非对称运动分区的所述所获得的信息来确定所述第一块是非正方形。
44.根据权利要求43所述的计算机程序产品,其中所述致使所述处理器获得所述信息的指令包括致使所述处理器获得所述信息以作为包括所述第一块和所述第二块的经编码位流的语法信息的指令。
45.根据权利要求43所述的计算机程序产品,其进一步包括致使所述处理器进行以下操作的指令:获得指示所述第二块包括第二不同母块的第二非对称运动分区的信息;以及基于指示所述第二块包括所述第二非对称运动分区的所述所获得的信息来确定所述第二块是非正方形。
46.根据权利要求41所述的计算机程序产品,其中所述计算机可读媒体进一步包括致使所述处理器进行以下操作的指令: 获得指示所述第一块包括母块的对称运动分区的非正方形变换的信息;以及基于指示所述第一块包括所述母块的所述对称运动分区的所述非正方形变换的所述所获得的信息来确定所述第一块是非正方形。
47.根据权利要求46所述的计算机程序产品,其中所述致使所述处理器获得所述信息的指令包括致使所述处理器获得所述信息以作为包括所述第一块和所述第二块的经编码位流的语法信息的指令。
48.根据权利要求41所述的计算机程序产品,其中所述致使所述处理器确定是否对所述共同边缘进行解块的指令进一步致使所述处理器: 确定所述第一块和所述第二块中的至少一者是否为非正方形; 以及在确定所述第一块和所述第二块中的至少一者为非正方形之后,将经调适的解块决策函数应用于所述第一块和所述第二块的像素。
49.根据权利要求41所述的计算机程序产品,其中所述致使所述处理器确定是否对所述共同边缘进行解块的指令进一步致使所述处理器: 确定所述第一块和所述第二块中的至少一者是否为非正方形; 其中所述计算机程序产品进一步包括`致使所述处理器进行以下操作的指令: 在确定所述第一块是非正方形之后,确定所述第一块的窄部分是否垂直于所述共同边缘; 在确定所述第二块是非正方形之后,确定所述第二块的窄部分是否垂直于所述共同边缘; 在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时,将第一经调适的解块决策函数应用于所述第一块和所述第二块的像素; 在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时,将第二经调适的解块决策函数应用于所述第一块和所述第二块的像素; 在所述第一块是非正方形时且在所述第一块的所述窄部分不垂直于所述共同边缘时,且在所述第二块是非正方形时且在所述第二块的所述窄部分不垂直于所述共同边缘时,将第三经调适的解块决策函数应用于所述第一块和所述第二块的像素;以及 在所述第一块是正方形或所述第一块的所述窄部分垂直于所述共同边缘时,且在所述第二块是正方形或所述第二块的所述窄部分垂直于所述共同边缘时,将常规的解块决策函数应用于所述第一块和所述第二块的像素。
50.根据权利要求49所述的计算机程序产品,其中所述共同边缘包括八个像素的长度; 其中所述致使所述处理器将所述第三经调适的解块决策函数应用于所述第一块和所述第二块的所述像素的指令进一步致使所述处理器: 在距所述共同边缘的末端两个像素的第一位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第一组像素;且其中所述计算机程序产品进一步包括致使所述处理器在距所述共同边缘的所述末端五个像素的第二位置处将所述第三经调适的解块决策函数应用于垂直于所述共同边缘的第二不同组像素的指令。
51.根据权利要求50所述的计算机程序产品,其中所述指令进一步致使所述处理器:在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后使用包括以下各者的解块滤波器对所述共同边缘进行解块:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ =Clip(_tc,tc, Λ),其中tc是取决于第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO1 = qO- Δ。
52.根据权利要求50所述的计算机程序产品,其中所述指令进一步致使所述处理器:在确定所述第三经调适的解块决策函数指示应对所述共同边缘进行解块之后使用包括以下各者的解块滤波器对所述共同边缘进行解块:Δ = (9*(qO-pO)-3*(ql-pl)+8)/16Δ = Clip(_tc,tc,Δ),其中tc是取决于所述第一块和第二块中的至少一者的量化参数QP的HM解块阈值ρΟ' = ρΟ+ΔqO' = qO-Δpi' = ρΙ+Δ/2ql' = ql-Δ/2。
【文档编号】H04N19/134GK103718552SQ201280035553
【公开日】2014年4月9日 申请日期:2012年5月30日 优先权日:2011年7月19日
【发明者】格尔特·范德奥维拉, 马尔塔·卡切维奇 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1