在高效率视频译码及其扩展中的运动矢量译码及双向预测的制作方法

文档序号:7791975阅读:208来源:国知局
在高效率视频译码及其扩展中的运动矢量译码及双向预测的制作方法
【专利摘要】在一个实例中,一种装置包括视频译码器(例如,视频编码器或视频解码器),所述视频译码器经配置以确定视频数据块将根据高效率视频译码HEVC的三维扩展而译码,且基于所述块将根据HEVC的所述三维扩展而译码的所述确定,禁用将时间运动矢量预测用于译码所述块。所述视频译码器可经进一步配置以在所述块包含经双向预测块(B块)时,确定所述B块参考第一参考图片列表及第二参考图片列表中的预定对图片,且基于所述B块参考所述预定对的所述确定,在计算所述块的预测性块时对来自所述对图片的贡献相等地进行加权。
【专利说明】在高效率视频译码及其扩展中的运动矢量译码及双向预测
[0001]本申请案主张以下美国临时专利申请案的权利,所述申请案中的每一者的全部内容特此以引用的方式并入:
[0002]2012年3月16日申请的美国临时申请案第61/611,959号;
[0003]2012年4月16日申请的美国临时申请案第61/624,990号;
[0004]2012年6月11日申请的美国临时申请案第61/658,344号;及
[0005]2012年6月22日申请的美国临时申请案第61/663,484号。

【技术领域】
[0006]本发明是关于视频译码。

【背景技术】
[0007]可将数字视频能力并入到广泛范围的装置中,所述装置包括数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、便携式计算机或台式计算机、平板计算机、电子书阅读器、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝或卫星无线电话、所谓的“智能手机”、视频电话会议装置、视频流式处理装置,及其类似者。数字视频装置实施视频译码技术,诸如在以下各者中所描述的技术:由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4 第 10 部分(高级视频译码(AVC))所定义的标准、目前在开发中的高效率视频译码(HEVC)标准,及这些标准的扩展,诸如可缩放视频译码(SVC)及多视图视频译码(MVC)。HEVC的工作草案(WD)的版本6可得自http://phenix.1nt-evry.fr/jct/doc_end_user/documents/8_San % 20Jose/wg II/JCTVC-H1003-v21.zip。视频装置可通过实施这些视频译码技术而更有效地传输、接收、编码、解码及/或存储数字视频信息。
[0008]视频译码技术包括空间(图片内)预测及/或时间(图片间)预测,以缩减或移除视频序列中所固有的冗余。对于基于块的视频译码,可将视频切片(例如,视频帧或视频帧的部分)分割为多个视频块,所述视频块也可被称为树块、译码单元(CU)及/或译码节点。图片的经帧内译码⑴切片中的视频块是相对于同一图片中的相邻块中的参考样本使用空间预测而编码。图片的经帧间译码(P或B)切片中的视频块可相对于同一图片中的相邻块中的参考样本使用空间预测,或相对于其它参考图片中的参考样本使用时间预测。图片可被称为帧,且参考图片可被称为参考帧。
[0009]空间或时间预测产生待译码的块的预测性块。残余数据表示在待译码的原始块与预测性块之间的像素差。根据运动矢量及残余数据来编码经帧间译码块,所述运动矢量指向形成预测性块的参考样本的块,所述残余数据指示在经译码块与预测性块之间的差。根据帧内译码模式及残余数据来编码帧内译码块。为了进一步压缩,可将残余数据从像素域变换到变换域,从而产生接着可量化的残余变换系数。可扫描最初以二维阵列而排列的经量化变换系数,以便产生变换系数的一维矢量,且可应用熵译码以实现甚至更大程度的压缩。


【发明内容】

[0010]一般而言,本发明描述用于译码运动矢量且用于在高效率视频译码(HEVC)及其扩展(诸如,多视图或三维视频(3DV)扩展)中执行双向预测的技术。本发明的技术可支持与在基础编解码器设计中的多视图视频编解码器及/或3D视频代码的较佳前向兼容性。
[0011]在一个实例中,一种解码视频数据的方法包括:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而解码所述当前运动矢量。
[0012]在另一实例中,一种编码视频数据的方法包括:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而编码所述当前运动矢量。
[0013]在另一实例中,一种用于解码视频数据的装置包括经配置以执行以下操作的视频解码器:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而解码所述当前运动矢量。
[0014]在另一实例中,一种用于编码视频数据的装置包括经配置以执行以下操作的视频编码器:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而编码所述当前运动矢量。
[0015]在另一实例中,一种用于解码视频数据的装置包括:用于确定视频数据的当前块的当前运动矢量的第一类型的装置;用于确定所述当前块的相邻块的候选运动矢量预测值的第二类型的装置;用于在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值的装置;及用于至少部分地基于所述变量的所述值而解码所述当前运动矢量的装置。
[0016]在另一实例中,一种用于编码视频数据的装置包括:用于确定视频数据的当前块的当前运动矢量的第一类型的装置;用于确定所述当前块的相邻块的候选运动矢量预测值的第二类型的装置;用于在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值的装置;及用于至少部分地基于所述变量的所述值而编码所述当前运动矢量的装置。
[0017]在另一实例中,一种计算机可读存储媒体(例如,非暂时性计算机可读存储媒体)在其上存储有指令,所述指令在执行时使处理器执行以下操作:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而解码所述当前运动矢量。
[0018]在另一实例中,一种计算机可读存储媒体(例如,非暂时性计算机可读存储媒体)在其上存储有指令,所述指令在执行时使处理器执行以下操作:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而编码所述当前运动矢量。
[0019]在随附图式及以下描述中阐述一或多个实例的细节。其它特征、目标及优点将从所述描述及所述图式以及从权利要求书显而易见。

【专利附图】

【附图说明】
[0020]图1为说明实例视频编码及解码系统的框图,所述系统可利用用于译码运动矢量且用于在高效率视频译码(HEVC)及其扩展(诸如,多视图或三维视频(3DV)扩展)中执行双向预测的技术。
[0021]图2为说明视频编码器的实例的框图,所述视频编码器可实施用于译码运动矢量且用于在HEVC及其扩展(诸如,多视图或3DV扩展)中执行双向预测的技术。
[0022]图3为说明视频解码器30的实例的框图,视频解码器30可实施用于译码运动矢量且用于在HEVC及其扩展(诸如,多视图或3DV扩展)中执行双向预测的技术。
[0023]图4为说明实例MVC预测样式的概念图。
[0024]图5为说明根据本发明的技术的用于编码当前块的实例方法的流程图。
[0025]图6为说明根据本发明的技术的用于解码视频数据的当前块的实例方法的流程图。

【具体实施方式】
[0026]一般而言,本发明描述用于译码多视图视频译码(MVC)数据的技术。当前,动画专家组(MPEG)正基于即将到来的高效率视频译码(HEVC)标准来开发三维视频(3DV)标准。标准化努力的部分也包括基于HEVC的多视图视频编解码器的标准化。在二维视频译码中,视频数据(即,图片的序列)是逐图片地(未必以显示顺序)译码。视频译码装置将每一图片划分为多个块,且个别地译码每一块。基于块的预测模式包括也称为帧内预测的空间预测及也称为帧间预测的时间预测。
[0027]对于诸如基于HEVC的3DV的三维视频数据,块也可被视图间预测。即,可从另一视图的图片预测块,其中每一视图一般对应于相应相机位置。如此,在基于HEVC的3DV中,可启用基于来自不同视图的经重建视图分量的视图间预测。本发明使用术语“视图分量”来指特定视图的经编码图片。即,视图分量可包含在特定时间(依据显示顺序或输出顺序)的特定视图的经编码图片。视图分量(或视图分量的切片)可具有图片顺序计数(POC)值,所述值一般指示视图分量的显示顺序(或输出顺序)。
[0028]在时间帧间预测或视图间预测中,视频译码装置可译码指示一或多个运动矢量(时间帧间预测)及/或一或多个位移矢量(视图间预测)的数据。在一些实例中,用一个运动矢量或一个位移矢量译码的块被称为P块,而用两个运动矢量或两个位移矢量译码的块被称为双向预测性块或B块。适用于运动矢量的技术也一般适用于位移矢量,且因此,本发明主要描述运动矢量译码技术。然而,应理解,这些技术也适用于位移矢量,且同样地,关于位移矢量所描述的技术也适用于运动矢量,除非另有指示。
[0029]一般而言,指示运动矢量或位移矢量可参考的参考图片的数据存储在参考图片列表中。因此,运动矢量数据(或位移矢量数据)可不仅包括运动矢量的X分量及y分量的数据,而且包括参考图片列表的条目的指示,这个指示被称为参考图片索引。视频译码装置可构造多个参考图片列表。举例来说,视频译码装置可构造第一参考图片列表(列表O或RefPicListO)以存储POC值早于当前图片的参考图片的数据,且构造第二参考图片列表(列表I或RefPicListl)以存储POC值晚于当前图片的参考图片的数据。此外,应注意,图片的显示或输出顺序未必与译码顺序值(例如,帧号码或“frame_nUm”值)相同。因此,图片可以不同于图片被显示(或捕获)的顺序的顺序而译码。
[0030]通常,针对B图片的第一参考图片列表或第二参考图片列表的参考图片列表构造包括两个步骤:参考图片列表初始化及参考图片列表重排(修改)。参考图片列表初始化为显式机制,其基于P0C(图片顺序计数,其与图片的显示顺序对齐)值的顺序将参考图片存储器(也称为经解码图片缓冲器)中的参考图片放到列表中。参考图片列表重排机制可将在参考图片列表初始化期间放在列表中的图片的位置修改为任何新位置,或将参考图片存储器中的任何参考图片放在任何位置,甚至在所述图片不属于初始化列表的情况下也如此。一些图片在参考图片列表重排(修改)之后可放在列表中的另一位置。然而,如果图片的位置超出列表的活动参考图片的数目,那么图片不被视为最终参考图片列表的条目。可针对每一列表在切片标头中发信活动参考图片的数目。在参考图片列表被构造(例如,RefPicListO及RefPicListl,如果可用)之后,参考索引可用以识别在任何参考图片列表中的图片。
[0031]如上文所提到,运动矢量数据也可包括水平分量(或X分量)及垂直分量(或y分量)。因此,运动矢量可定义为<x,y>。视频译码装置可相对于运动矢量预测值译码运动矢量,而非直接地译码运动矢量的X分量及I分量。在各种实例中,运动矢量预测值可选自当前块的空间相邻者、时间上分离的图片的同置块(即,先前经译码图片中的同置块),或在同一时间例项的另一视图中的图片的同置块。时间上分离的图片的运动矢量预测值被称为时间运动矢量预测值(TMVP)。
[0032]为了确定当前块(例如,HEVC中的当前译码单元(CU)的当前预测单元(PU))的TMVP,视频译码装置可首先识别同置图片。术语“同置”图片是指包括特定同置块的图片。同置块也可包括在“同置分区”中,如HEVC的WD6中所指示。如果当前图片为B切片,那么可在当前图片的切片的切片标头中发信collocated_from_10_flag,以指示同置图片是来自RefPicListO还是RefPicListl。在参考图片列表被识别之后,视频译码装置可使用在切片标头中发信的collocatecLrefjdx,以在参考图片列表中识别同置图片。接着通过检查同置图片来识别同置PU。可将含有当前PU的CU的右下PU的运动矢量或含有这个I3U的CU的中心PU内的右下I3U的运动矢量视为当前I3U的TMVP。当通过以上进程所识别的运动矢量用以针对AMVP或合并模式产生运动候选者时,其可基于时间位置(由参考图片的POC值反映)而缩放。根据本发明的技术,如下文所描述,TMVP可来自同一视图或来自不同视图。
[0033]在HEVC 中,图片参数集(PPS)包括标志 enable_temporal_mvp_flag。当temporal_id等于O的特定图片参考具有等于O的enable_temporal_mvp_flag的PPS时,DPB中的所有参考图片可标记为“不用于时间运动矢量预测”,且来自在解码顺序上处于那个特定图片之前的图片的运动矢量在解码特定图片或在解码顺序上处于所述特定图片之后的图片时将不会用作时间运动矢量预测值。
[0034]在H.264/AVC或HEVC中,对于P切片,当允许加权预测时,通过将weighted_pred_flag设置为I,显式地发信预测权重。语法元素weighted_pred_flag是在切片标头中发信且其语义如下:
[0035]在一些实例中,weighted_pred_flag等于O可指定,不应将加权预测应用于P切片。weighted_pred_flag等于I指定,应将加权预测应用于P切片。
[0036]对于B切片,当启用加权预测时,通过将weighted_bipred_idc设置为非零,可显式地发信或隐式地导出预测权重。语法也可在切片标头中发信且其语义如下:
[0037]在一些实例中,weighted_bipred_idc等于O指定,将默认加权预测应用于B切片。在一些实例中,weighted_bipred_idc等于I指定,将显式加权预测应用于B切片。在一些实例中,weighted_bipred_idc等于2指定,应将隐式加权预测应用于B切片。weighted_bipred_idc的值可在O到2(包括O及2)的范围内。
[0038]当weighted_bipred_idc等于I时,可通过计算POC距离基于两个参考巾贞的时间距离而导出权重。
[0039]当前HEVC设计可能会阻碍未来扩展(诸如,多视图或3DV扩展)的开发,尤其在这些扩展的开发者想要提供仅进行高级别语法改变的能力时。举例来说,如果待用于TMVP的参考图片来自不同视图,那么其可具有与当前图片相同的P0C。用于运动矢量缩放的HEVC的当前设计可能不能够准确地识别在这种情形下用于TMVP的参考图片。当隐式加权预测应用于B切片且一个参考图片来自不同视图时,计算预测权重的进程可遇到问题,这是因为所述进程仅基于POC距离而设计。
[0040]本发明的技术可解决这些问题。一般而言,本发明提供用于在HEVC设计上仅改变高级别语法以支持MVC或3DV的技术。解决方案中的一些用于HEVC基础规范,且由此用于前向兼容性目的。视频译码器(诸如,视频编码器或视频解码器)可经配置以单独地或以任何组合实施本发明的各种技术中的任一者或全部。下文更详细地描述各种技术。
[0041]作为一个实例,视频译码器可经配置以执行以下操作:确定视频数据的当前块的当前运动矢量的第一类型;确定当前块的相邻块的候选运动矢量预测值的第二类型;在第一类型不同于第二类型时将表示候选运动矢量预测值是否可用的变量设置为指示候选运动矢量预测值不可用的值;及至少部分地基于变量的所述值而译码当前运动矢量。不同类型的运动矢量可包含(例如)视差运动矢量及时间运动矢量。
[0042]多种技术中的任一者可用以确定运动矢量的类型。举例来说,视频编码器可基于在当前图片与运动矢量所参考的参考图片之间的POC值的比较而确定所述运动矢量的类型(例如,时间对视差)。如果POC值不同,那么视频译码器可确定运动矢量为时间运动矢量。另一方面,如果POC值相同,那么视频译码器可确定运动矢量为视差运动矢量。
[0043]作为另一实例,视频译码器可比较当前图片及运动矢量所参考的参考图片出现的层(例如,视图或可缩放性层)。如果当前图片及参考图片出现于同一层中,那么视频译码器可确定运动矢量为时间运动矢量。另一方面,如果当前图片及参考图片出现于不同的层中,那么视频译码器可确定运动矢量为视差运动矢量。
[0044]作为又一实例,视频译码器可确定运动矢量所参考的参考图片为长期参考图片还是短期参考图片。如果参考图片为短期参考图片,那么视频译码器可确定运动矢量为视差运动矢量。然而,如果参考图片为长期参考图片,那么视频译码器可确定运动矢量为时间运动矢量。
[0045]此外,根据本发明的某些技术,在当前运动矢量具有不同于候选运动矢量预测值的类型时,视频译码器可经配置以确定候选运动矢量预测值不可用。举例来说,视频译码器可将指示候选运动矢量预测值是否可用作当前运动矢量的预测值的“可用”标志(或变量)设置为在当前运动矢量与候选运动矢量预测值之间的类型不同时指示候选运动矢量预测值不可用的值。
[0046]图1为说明实例视频编码及解码系统10的框图,所述系统10可利用用于译码运动矢量且用于在HEVC及其扩展(诸如,多视图或3DV扩展)中执行双向预测的技术。如图1中所展示,系统10包括源装置12,源装置12提供待在稍后时间由目的地装置14解码的经编码视频数据。详言之,源装置12经由计算机可读媒体16将视频数据提供到目的地装置
14。源装置12及目的地装置14可包含广泛范围的装置中的任一者,所述装置包括台式计算机、笔记本(即,便携式)计算机、平板计算机、机顶盒、诸如所谓的“智能”手机的电话手机、所谓的“智能”垫、电视、相机、显示装置、数字媒体播放器、视频游戏控制台、视频流式处理装置,或其类似者。在一些状况下,可配备源装置12及目的地装置14以用于无线通信。
[0047]目的地装置14可经由计算机可读媒体16接收待解码的经编码视频数据。计算机可读媒体16可包含能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,计算机可读媒体16可包含通信媒体,使得源装置12能够实时地将经编码视频数据直接传输到目的地装置14。可根据通信标准(诸如,无线通信协议)来调制经编码视频数据,且将经编码视频数据传输到目的地装置14。通信媒体可包含任何无线或有线通信媒体,诸如射频(RF)频谱或一或多个物理传输线。通信媒体可形成诸如局域网、广域网或全局网络(诸如,因特网)的基于数据包的网络的部分。通信媒体可包括路由器、交换机、基站,或可用以促进从源装置12到目的地装置14的通信的任何其它设备。
[0048]在一些实例中,可将经编码数据从输出接口 22输出到存储装置。类似地,可由输入接口从存储装置访问经编码数据。存储装置可包括多种分布式或本地访问式数据存储媒体中的任一者,诸如硬盘驱动器、蓝光光盘、DVD、CD-ROM、闪速存储器、易失性或非易失性存储器,或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置可对应于文件服务器,或可存储由源装置12所产生的经编码视频的另一中间存储装置。目的地装置14可经由流式处理或下载从存储装置访问所存储视频数据。文件服务器可为能够存储经编码视频数据且将那个经编码视频数据传输到目的地装置14的任何类型的服务器。实例文件服务器包括web服务器(例如,用于网站)、FTP服务器、网络连接存储(NAS)装置,或本地磁盘驱动器。目的地装置14可经由任何标准数据连接(包括因特网连接)访问经编码视频数据。这种数据连接可包括适合于访问存储在文件服务器上的经编码视频数据的无线信道(例如,W1-Fi连接)、有线连接(例如,DSL、电缆调制解调器等等),或两者的组合。经编码视频数据从存储装置的传输可为流式处理传输、下载传输,或其组合。
[0049]本发明的技术未必限于无线应用或设置。所述技术可应用于支持诸如以下应用的多种多媒体应用中的任一者的视频译码:空中电视广播、有线电视传输、卫星电视传输、诸如HTTP动态自适应流式处理(DASH)的因特网流式处理视频传输、经编码到数据存储媒体上的数字视频、存储在数据存储媒体上的数字视频的解码,或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频传输,以支持诸如视频流式处理、视频播放、视频广播及/或视频电话的应用。
[0050]在图1的实例中,源装置12包括视频源18、视频编码器20及输出接口 22。目的地装置14包括输入接口 28、视频解码器30及显示装置32。根据本发明,源装置12的视频编码器20可经配置以应用用于译码运动矢量且用于在HEVC及其扩展(诸如,多视图或3DV扩展)中执行双向预测的技术。在其它实例中,源装置及目的地装置可包括其它组件或排列。举例来说,源装置12可从外部视频源18(诸如,外部相机)接收视频数据。同样地,目的地装置14可与外部显示装置界接,而非包括整合式显示装置。
[0051]图1的所说明系统10仅为一个实例。用于译码运动矢量且用于在HEVC及其扩展(诸如,多视图或3DV扩展)中执行双向预测的技术可由任何数字视频编码及/或解码装置执行。尽管一般由视频编码装置执行本发明的技术,但也可由通常称为“编解码器(CODEC) ”的视频编码器/解码器执行所述技术。此外,也可由视频预处理器执行本发明的技术。源装置12及目的地装置14仅为这些译码装置的实例,其中源装置12产生经译码视频数据以供传输到目的地装置14。在一些实例中,装置12、14可以大体上对称的方式操作,使得装置12,14中的每一者包括视频编码及解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频传输,(例如)以用于视频流式处理、视频播放、视频广播或视频电话。
[0052]源装置12的视频源18可包括诸如视频相机的视频捕获装置、含有先前捕获的视频的视频存档,及/或从视频内容提供者接收视频的视频馈送接口。作为另一替代例,视频源18可产生基于计算机图形的数据作为源视频,或实况视频、经存档视频与计算机产生的视频的组合。在一些状况下,如果视频源18为视频相机,那么源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明中所描述的技术一般可适用于视频译码,且可应用于无线及/或有线应用。在每一状况下,可由视频编码器20编码所捕获、预捕获或计算机产生的视频。经编码视频信息可接着由输出接口 22输出到计算机可读媒体16上。
[0053]计算机可读媒体16可包括:暂时性媒体,诸如无线广播或有线网络传输;或存储媒体(即,非暂时性存储媒体),诸如硬盘、闪存驱动器、压缩光盘、数字视频光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器(未图示)可从源装置12接收经编码视频数据,且(例如)经由网络传输将经编码视频数据提供到目的地装置14。类似地,媒体生产设施(诸如,光盘压印设施)的计算装置可从源装置12接收经编码视频数据且产生含有经编码视频数据的光盘。因此,在各种实例中,可将计算机可读媒体16理解为包括各种形式的一或多个计算机可读媒体。
[0054]目的地装置14的输入接口28从计算机可读媒体16接收信息。计算机可读媒体16的信息可包括由视频编码器20所定义的语法信息(其也由视频解码器30使用),所述语法信息包括描述块及其它经译码单元(例如,G0P)的特性及/或处理的语法元素。显示装置32向用户显示经解码视频数据,且可包含多种显示装置中的任一者,诸如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器,或另一类型的显示装置。
[0055]视频编码器20及视频解码器30可根据诸如目前在开发中的高效率视频译码(HEVC)标准的视频译码标准而操作,且可符合HEVC测试模型(HM)。同样地,视频编码器20及视频解码器30可根据HEVC标准的扩展(例如,多视图扩展或三维视频(3DV)扩展)而配置。替代地,视频编码器20及视频解码器30可根据诸如ITU-T H.264标准(替代地称为MPEG-4第10部分(高级视频译码(AVC)))的其它专有或工业标准或这些标准的扩展而操作。然而,本发明的技术不限于任何特定译码标准。视频译码标准的其它实例包括MPEG-2及ITU-T H.263。尽管图1中未图示,但在一些方面,视频编码器20及视频解码器30可各自与音频编码器及解码器整合,且可包括适当的MUX-DEMUX单元或其它硬件及软件,以处置通用数据流或单独数据流中的音频及视频两者的编码。在适用时,MUX-DEMUX单元可符合ITU H.223多路复用器协议,或诸如用户数据报协议(UDP)的其它协议。
[0056]ITU-T H.264/MPEG-4(AVC)标准由 ITU-T视频译码专家组(VCEG)连同 IS0/IEC动画专家组(MPEG) —起阐明为称为联合视频小组(JVT)的集体合作的产品。在一些方面,本发明中所描述的技术可应用于一般符合H.264标准的装置。H.264标准由ITU-T研究组且在日期为2005年3月描述在ITU-T国际标准H.264 (用于一般视听服务的高级视频译码)中,其在本文中可称为H.264标准或H.264规范,或H.264/AVC标准或规范。联合视频小组(JVT)继续致力于对H.264/MPEG-4AVC的扩展。
[0057]可将视频编码器20及视频解码器30各自实施为多种合适的编码器电路中的任一者,诸如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当所述技术部分地以软件予以实施时,装置可将用于软件的指令存储在合适的非暂时性计算机可读媒体中,且使用一或多个处理器在硬件中执行所述指令以执行本发明的技术。视频编码器20及视频解码器30中的每一者可包括在一或多个编码器或解码器中,其中的任一者可整合为相应装置中的组合式编码器/解码器(编解码器)的部分。
[0058]JCT-VC正致力于HEVC标准的开发。HEVC标准化努力是基于视频译码装置的演进模型,其被称为HEVC测试模型(HM)。HM推测视频译码装置相对于根据(例如)ITU_TH.264/AVC的现有装置的若干额外能力。举例来说,H.264提供九个帧内预测编码模式,而HM可提供多达三十三个帧内预测编码模式。
[0059]一般而言,HM的工作模型描述,视频帧或图片可划分为包括亮度样本及色度样本两者的树块或最大译码单元(LCU)的序列。位流内的语法数据可定义LCU的大小,LCU为就像素的数目而言的最大译码单元。切片包括按译码顺序的数个连续树块。可将视频帧或图片分割为一或多个切片。每一树块可根据四叉树拆分为多个译码单元(CU)。一般而言,四叉树数据结构每CU包括一个节点,其中根节点对应于树块。如果CU拆分为四个子CU,那么对应于所述CU的节点包括四个叶节点,所述叶节点中的每一者对应于子CU中的一者。
[0060]四叉树数据结构的每一节点可提供对应CU的语法数据。举例来说,四叉树中的节点可包括拆分标志,其指示对应于所述节点的CU是否拆分为多个子CU。CU的语法元素可被递归地定义,且可取决于CU是否拆分为多个子CU。如果CU并不进一步拆分,那么其被称为叶CU。在本发明中,叶CU的四个子CU也将被称为叶CU,即使不存在原始叶CU的显式拆分也如此。举例来说,如果16X16大小的CU并不进一步拆分,那么尽管16X16CU决不拆分,但四个8 X 8子⑶也将被称为叶⑶。
[0061]除⑶不具有大小区别以外,CU具有与H.264标准的宏块类似的目的。举例来说,树块可拆分为四个子节点(也称为子CU),且每一子节点又可为父节点且拆分为另外四个子节点。称为四叉树的叶节点的最终未拆分子节点包含译码节点,所述译码节点也被称为叶CU。与经译码位流相关联的语法数据可定义可拆分树块的最大次数(称为最大CU深度),且也可定义译码节点的最小大小。因此,位流也可定义最小译码单元(SCU)。本发明使用术语“块”来指在HEVC的上下文中的CU、PU或TU中的任一者,或在其它标准的上下文中的类似数据结构(例如,在H.264/AVC中的宏块及其子块)。
[0062]CU包括译码节点及与所述译码节点相关联的预测单元(PU)及变换单元(TU)。CU的大小对应于译码节点的大小,且形状必须为正方形。CU的大小的范围可从8X8像素直到具有最大64X64像素或大于64X64像素的树块的大小。每一⑶可含有一或多个PU及一或多个TU。与CU相关联的语法数据可描述(例如)CU成为一或多个PU的分割。分割模式可取决于CU被跳过或直接模式编码、被帧内预测模式编码还是被帧间预测模式编码而不同。PU的形状可分割为非正方形。与CU相关联的语法数据也可描述(例如)CU根据四叉树而成为一或多个TU的分割。TU的形状可为正方形或非正方形(例如,矩形)。
[0063]HEVC标准允许根据TU的变换,所述变换对于不同⑶可不同。通常基于针对经分割IXU所定义的给定⑶内的PU的大小而设置TU大小,但可能并非总是如此状况。TU通常具有与PU相同的大小,或小于PU。在一些实例中,可使用称为“残余四叉树”(RQT)的四叉树结构将对应于CU的残余样本再分为较小单元。RQT的叶节点可被称为变换单元(TU)。可变换与TU相关联的像素差值以产生可量化的变换系数。
[0064]叶⑶可包括一或多个预测单元(PU)。一般而言,I3U表示对应于对应⑶的全部或部分的空间区域,且可包括用于检索PU的参考样本的数据。此外,PU包括与预测有关的数据。举例来说,当PU被帧内模式编码时,PU的数据可包括在残余四叉树(RQT)中,残余四叉树可包括描述对应于PU的TU的帧内预测模式的数据。作为另一实例,当PU被帧间模式编码时,可包括定义所述PU的一或多个运动矢量的数据。定义PU的运动矢量的数据可描述(例如)运动矢量的水平分量、运动矢量的垂直分量、运动矢量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动矢量所指向的参考图片,及/或运动矢量的参考图片列表(例如,列表O、列表1,或列表C)。
[0065]具有一或多个I3U的叶⑶也可包括一或多个变换单元(TU)。可使用RQT (也称为TU四叉树结构)指定变换单元,如上文所论述。举例来说,拆分标志可指示叶CU是否拆分为四个变换单元。接着,每一变换单元可进一步拆分为其它子TU。当TU并不进一步拆分时,其可被称为叶TU。一般而言,对于帧内译码,属于叶CU的所有叶TU共享相同帧内预测模式。即,一般应用相同帧内预测模式以计算叶CU的所有TU的预测值。对于帧内译码,视频编码器20可使用帧内预测模式将每一叶TU的残余值计算为在对应于TU的CU的部分与原始块之间的差。TU未必限于PU的大小。因此,TU可大于或小于PU。对于巾贞内译码,PU可与同一⑶的对应叶TU同置。在一些实例中,叶TU的最大大小可对应于对应叶⑶的大小。
[0066]此外,叶⑶的TU也可与称为残余四叉树(RQT)的相应四叉树数据结构相关联。gp,叶CU可包括指示叶CU分割为TU的方式的四叉树。TU四叉树的根节点一般对应于叶CU,而⑶四叉树的根节点一般对应于树块(或LCU)。RQT的不拆分的TU被称为叶TU。一般而言,除非另有指示,否则本发明分别使用术语CU及TU来指叶CU及叶TU。
[0067]视频序列通常包括一系列视频帧或图片。图片组(GOP) —般包含一系列一或多个视频图片。GOP可在GOP的标头、图片中的一或多者的标头中或在其它位置包括语法数据,所述语法数据描述包括在GOP中的图片的数目。图片的每一切片可包括描述所述相应切片的编码模式的切片语法数据。视频编码器20通常对个别视频切片内的视频块操作,以便编码视频数据。视频块可对应于CU内的译码节点。视频块可具有固定或变化的大小,且可根据所指定的译码标准而在大小上不同。
[0068]作为实例,HM支持以各种I3U大小进行预测。假设特定⑶的大小为2NX 2N,那么HM支持以2N X 2N或N X N的PU大小进行帧内预测,及以2N X 2N、2N X N、N X 2N或N X N的对称PU大小进行帧间预测。HM也支持以2NXnU、2NXnD、nLX 2N及nRX 2N的PU大小进行帧间预测的非对称分割。在非对称分割中,CU的一个方向未分割,而另一方向分割为25%及75%。⑶的对应于25%分区的部分是由“η”后跟着“上”、“下”、“左”或“右”的指示进行指示。因此,举例来说,“2NXnU”是指被水平分割的2NX2NCU,其中2NX0.5N PU是在顶部且2NX1.5N I3U是在底部。
[0069]在本发明中,“NXN”及“N乘N”可互换地使用以依据垂直维度及水平维度而指视频块的像素尺寸,例如,16X16像素或16乘16像素。一般而言,16X16块在垂直方向上将具有16个像素(y = 16),且在水平方向上将具有16个像素(x = 16)。同样地,NXN块一般在垂直方向上具有N个像素且在水平方向上具有N个像素,其中N表示非负整数值。可以行及列来排列块中的像素。此外,块未必需要在水平方向上及在垂直方向上具有相同数目个像素。举例来说,块可包含NXM个像素,其中M未必等于N。
[0070]视频编码器20及视频解码器30可经配置以单独地或以任何组合执行本发明的各种技术中的一或多者。举例来说,根据本发明的某些技术,视频编码器20及视频解码器30可经配置以执行与多视图视频译码(MVC)或三维视频(3DV)译码(例如,作为H.264/AVC或HEVC的扩展)有关的各种技术。在一些例子中,可使用对基础标准的高级别语法(HLS)改变来实现视频译码标准的MVC及/或3DV扩展。举例来说,可重新定义或以不同方式使用某些现有译码结构以实现仅HLS扩展,而非引入新译码结构。
[0071]作为实例,为了根据MVC及3DV扩展译码视频数据,视频编码器20及视频解码器30可经配置以执行层间或视图间预测。即,视频编码器20及视频解码器30可经配置以使用先前经译码视图的先前经译码图片的数据来预测当前视图中的当前图片的块。通常,先前经译码图片(即,视图间参考图片)及当前图片具有相同的图片顺序计数(POC)值,使得视图间参考图片及当前图片出现于同一访问单元中,且同样地,具有大体上相同的输出顺序(或显示顺序)。
[0072]视频编码器20及视频解码器30可经配置以利用视差运动矢量来使用视图间预测译码当前图片的当前块。因此,在一些实例中,视差运动矢量可据称为包含如下运动矢量:对于包括使用所述运动矢量所预测的当前块的当前图片,当前POC值等于由所述运动矢量所参考的参考图片的POC值。因此,视频编码器20及视频解码器30可经配置以在由运动矢量所预测的块的POC值等于运动矢量所参考的参考图片的POC值时,确定所述运动矢量为视差运动矢量。类似地,视频编码器20及视频解码器30可经配置以在由运动矢量所预测的块的POC不等于运动矢量所参考的参考图片的POC值时,确定所述运动矢量包含时间运动矢量。
[0073]另外或替代地,视频编码器20及视频解码器30可经配置以在包括使用运动矢量所预测的当前块的当前图片处于不同于由运动矢量所参考的参考图片的层中时,确定所述运动矢量包含视差运动矢量。类似地,视频编码器20及视频解码器30可经配置以在包括使用运动矢量所预测的当前块的当前图片处于与由运动矢量所参考的参考图片相同的层中时,确定所述运动矢量包含时间运动矢量。
[0074]作为又一实例,HEVC区分长期参考图片与短期参考图片。在HEVC的技术中,与短期参考图片相比,长期图片存储在经解码图片缓冲器(DPB)中的时间较长。另外,语法元素用以指示参考图片为长期参考图片还是短期参考图片。在一些实例中,在MVC及3DV中,长期参考图片可代替地对应于时间参考图片(即,与正译码的当前图片相同的层或视图的图片),而短期参考图片可代替地对应于视图间参考图片(即,与正译码的当前图片不同的层或视图的图片)。因此,长期及短期参考图片的使用也可提供参考图片为时间参考图片还是视图间参考图片的指示。同样地,参考长期参考图片的运动矢量可包含时间运动矢量,而参考短期参考图片的运动矢量可包含视差运动矢量。
[0075]根据本发明的某些技术,视频编码器20及视频解码器30可经配置以禁用不同类型的运动矢量作为彼此的运动矢量预测值的使用。举例来说,如果当前运动矢量为时间运动矢量,那么视频编码器20及视频解码器30可经配置以不将视差运动矢量用作运动矢量预测值来预测时间运动矢量。同样地,如果当前运动矢量为视差运动矢量,那么视频编码器20及视频解码器30可经配置以不将时间运动矢量用作运动矢量预测值来预测视差运动矢量。
[0076]视频编码器20及视频解码器30可经配置以执行各种模式的运动矢量预测。在一个实例(合并模式)中,视频编码器20及视频解码器30可经配置以译码合并标志,其表示从多个相邻块中的哪一者继承运动参数,诸如参考图片所选自的参考图片列表、指示参考列表中的参考图片的参考索引、水平运动矢量分量及垂直运动矢量分量。
[0077]在另一实例(高级运动矢量预测(AMVP))中,视频编码器20及视频解码器30可经配置以译码以下各者的指示:参考图片所选自的参考图片列表、指示参考图片列表中的参考图片的参考索引、运动矢量差值,及表示运动矢量预测值所选自的相邻块的AMVP索引。
[0078]在合并模式及/或AMVP模式或其它此类运动矢量译码模式中,视频编码器20及视频解码器30可经配置以不使用来自相邻块的运动信息,所述相邻块使用不同于当前块的运动矢量的类型的运动矢量。即,视频编码器20及视频解码器30可经配置以执行以下操作:确定当前运动矢量的第一类型;确定候选运动矢量预测值的第二类型;及如果第一类型与第二类型不相同,那么禁用候选运动矢量预测值作为当前运动矢量的运动矢量预测值的使用。
[0079]为了禁用候选运动矢量预测值,视频编码器20及视频解码器30可设置表示候选运动矢量预测值是否可用作当前运动矢量的运动矢量预测值的变量。视频编码器20及视频解码器30可设置这个变量的值以指示候选运动矢量预测值不可用,甚至在候选运动矢量预测值先前已基于指示候选运动矢量预测值可用的其它条件而视为可用时也如此。举例来说,如下文更详细地所解释,视频编码器20及视频解码器30可使变量与候选运动矢量预测值相关联,其中所述变量的值指示候选运动矢量预测值是否可用作当前运动矢量的运动矢量预测值。
[0080]详言之,视频编码器20可经配置以确定可用以预测当前运动矢量的运动矢量预测值的集合。视频解码器30也可经配置以构造这个集合,或替代地,视频编码器20可发信可用的运动矢量预测值的集合。在任何状况下,视频编码器20及视频解码器30可确定可用运动矢量预测值的集合,且选择运动矢量预测值的集合中的一者作为实际运动矢量预测值来用以译码当前运动矢量。
[0081]在AMVP模式中,视频编码器20可计算在当前运动矢量与运动矢量预测值之间的运动矢量差值,且译码运动矢量差值。同样地,视频解码器30可组合运动矢量差值与所确定的运动矢量预测值,以重建当前运动矢量(即,视频数据的当前块(例如,当前PU)的运动矢量)。在合并模式中,实际运动矢量预测值可用作当前运动矢量。因此,在合并模式中,视频编码器20及视频解码器30可将运动矢量差值视为零值。
[0082]根据本发明的某些技术,视频编码器20及视频解码器30可经配置以执行以下操作:基于候选运动矢量预测值(其中的任一者或全部先前可能已基于其它准则而确定为可用)的列表中的一或多个候选运动矢量预测值是否具有不同于当前运动矢量的类型,确定所述一或多个候选运动矢量预测值是否不可用于预测当前运动矢量。视频编码器20及视频解码器30可经进一步配置以执行以下操作:(例如)通过将不可用候选运动矢量预测值的可用标志(或变量)设置为指示不可用候选运动矢量预测值不可用的值,禁用使用经确定为不可用的那些候选运动矢量预测值的运动矢量预测。
[0083]另外或替代地,在从可用候选运动矢量预测值的集合选择运动矢量预测值之后,视频编码器20及视频解码器30可经配置以确定选定运动矢量预测值是否为视差运动矢量(即,选定运动矢量预测值是否参考视图间参考图片)。如果选定运动矢量预测值为视差运动矢量,那么视频编码器20及视频解码器30可在译码当前运动矢量时禁用运动矢量预测值的缩放。即,假设当前运动矢量及运动矢量预测值皆为视差运动矢量(即,参考视图间参考图片),那么在当前图片与视图间参考图片之间的POC值的差将为零(因为视图间参考图片一般出现于与正译码的当前图片相同的访问单元内),且因此,缩放为不必要的。此外,根据本发明的技术,尝试缩放运动矢量预测值可引起误差,所述误差可通过禁用缩放而避免。
[0084]在一些实例中,在HEVC的MVC或3DV扩展中,对于任何活动PPS,始终将enable—temporal_mvp_flag设置为O。即,视频编码器20可经配置以将HEVC的MVC或3DV扩展中的活动PPS的enable_temporal_mvp_flag设置为O。同样地,视频解码器30可经配置以解码enable_temporal_mvp_flag,或在解码符合HEVC的MVC或3DV扩展的位流时推断enable_temporal_mvp_flag 的值为 O。
[0085]在一些实例中,在HEVC的MVC或3DV扩展中,在仅具有高级别语法(HLS)改变的配置文件中,视频编码器20及视频解码器30以同置图片决不对应于来自不同视图的参考图片的方式设置collocatecLrefjdx的值。此外,视频编码器20及视频解码器30可经配置以译码表示HEVC的MVC或3DV扩展的指示的数据,使得利用低级别改变的配置文件能够具有同置图片的更大灵活性。
[0086]在一些实例中,视频编码器20及视频解码器30可经配置以在切片标头中译码表示对根据HEVC译码的切片的指示的数据,以在TMVP期间显式地禁用经识别同置图片的运动矢量的缩放。这个同置图片可标记为“不用于时间运动矢量预测”。
[0087]在一些实例中,在HEVC中,当相邻块的运动矢量具有不同于当前参考索引的参考索引,且也具有不同于当前参考图片的图片顺序计数(POC)值的POC值时,视频编码器20及视频解码器30可在高级运动矢量预测期间禁用运动矢量缩放。视频编码器20及视频解码器30可经配置以可在切片标头、适配参数集(APS)、图片参数集(PPS)、序列参数集(SPS)、视频参数集(VPS)或其它数据结构中译码表示指示的数据,以发信禁用AMVP是开启还是关闭。
[0088]在一些实例中,在HEVC中,视频编码器20及视频解码器30可在来自空间相邻块的运动矢量及待预测的运动矢量中的一者且仅一者是来自具有与当前图片相同的POC值的图片时,将来自空间相邻块的这个运动矢量确定为不可用。这些技术可适用于AMVP及合并模式中的任一者或两者。替代地,这些技术可仅适用于AMVP及合并模式的时间运动矢量预测(TMVP)方面。视频编码器20及视频解码器30可在切片标头、APS、SPS、PPS或VPS中译码表示对启用或禁用这种技术的指示的数据。
[0089]在HEVC的一些实例中,当待预测的运动矢量的参考索引指向时间参考图片(来自同一视图/层)时,参考索引指向来自不同视图/层的图片的运动矢量可被视为不可用作运动矢量预测值。这种情形可适用于AMVP及合并模式两者。替代地,这种情形可仅适用于AMVP及合并模式的TMVP部分。
[0090]在一些实例中,在HEVC中,视频编码器20及视频解码器30可译码表示对每一参考图片集(RPS)子集的指示的数据,以在来自特定RPS子集的任何同置图片在TMVP期间被识别为同置图片时,发信所述同置图片是否将用于运动矢量缩放。RPS子集中的每一图片可标记为“不用于时间运动矢量预测”。
[0091 ] 在一些实例中,在HEVC中,视频编码器20及视频解码器30可译码表示对每一 RPS子集的指示的数据,以在这个运动矢量及待预测的运动矢量属于具有相同指示的RPS子集时,发信从特定RPS子集中的图片的任何空间相邻运动矢量预测在AMVP期间是否将被视为不可用。
[0092]在一些实例中,在HEVC中,视频编码器20及视频解码器30可译码表示B切片的新类型的隐式加权预测的数据,使得对于RefPicListO及RefPicListl中的某些参考图片对,如果对中的参考图片中的任一者用于PU的加权双向预测,那么用于两个参考图片的权重可相同。对于来自RefPicListO及RefPiclistl的图片的其它组合,HEVC或H.264/AVC中的当前隐式加权预测可适用。视频编码器20及视频解码器30可在切片标头中译码表示哪些组合被启用或禁用的数据。
[0093]在一些实例中,视频编码器20及视频解码器30可经配置以不使用视差运动矢量来预测正常(即,时间)运动矢量,且不使用时间运动矢量来预测视差运动矢量。此外,视频编码器20及视频解码器30可经配置以不缩放视差运动矢量。在一些实例中,在当前PU的一个或两个参考图片为视图间参考图片,且隐式加权预测模式开启时,用于当前PU的这两个参考图片的权重可设置为相同(例如,1/2、1/2)。
[0094]在一些实例中,作为RPS子集的性质的导出,对于RefPicSetLtCurr、RefPicSetLtFolI> RefPicSetStCurrBefore> RefPicSetStCurrAfter 及 RefPicSetStFoll的每一 RPS子集,视频译码器可将RefTypeIdc导出为等于O。包括在RPS子集中的每一图片可具有设置为等于RPS子集的RefTypeIdc的RefPicTypeIdc。作为这种情形在HEVC的可能MVC扩展中的实例使用,Interview RPS子集可设置为具有等于I的RefTypeldc。
[0095]本发明定义函数RefPicTypeFundpic),所述函数将传递到所述函数的参考图片“pic”的RefPicTypeldc值作为自变量而返回。这个函数可作为解码进程的部分(例如)由视频编码器20在解码先前经编码视频数据以用作参考视频数据时或由视频解码器30在视频解码进程期间执行。
[0096]本发明也提供用于运动矢量预测值候选者的导出进程的技术。除习知HEVC的过程以外或作为所述过程的替代例,诸如视频编码器20及视频解码器30的视频译码器也可使用以下过程导出运动矢量mvLXA及可用性标志availableFlagLXA。当对于从(xAQ, yA0)到(XApyA1)的(xAk, yAk)(其中 YA1 = yA0-MinPuSize), availableFlagLXA 等于 O 时,以下内容可重复地适用,直到avaiIableFlagLXA等于I为止(其中在这个实例中,呈格式#_###的数字是指即将到来的HEVC标准的特定章节):
[0097]?如果覆盖亮度位置(xAk,yAk)的预测单元可用,那么PredMode并非M0DE_INTRA,predFlagLX[xAk] [yAk]等于 I, availableFlagLXA 设置为等于 I,运动矢量 mvLXA 设置为等于运动矢量mvLX[xAk] [yAk], ref IdxA 设置为等于 ref IdxLX[xAk] [yAk], ListA 设置为等于LX。
[0098]?否则,如果覆盖亮度位置(xAk,yAk)的预测单元可用,那么PredMode并非M0DE_INTRA,predFlagLY[xAk] [yAk](其中 Y = ! X)等于 I, availableFlagLXA 设置为等于 I,运动矢量mvLXA设置为等于运动矢量mvLY[xAk] [yAk], ref IdxA设置为等于ref IdxLY[xAk][yAk],ListA设置为等于LY。
[0099]?如果 availableFlagLXA 等于 I,且 RefPicTypeFunc (RefPicListListA(refIdx
A))不等于 RefPicTypeFunc (RefPicListLX (ref IdxLX)),那么 availableFlagLXA 设置为 0。
[0100]#当 availableFlagLXA 等于 I,且 RefPicTypeFunc (RefPicListListA(refIdxA))及 RefPicTypeFunc (RefPicListLX (ref IdxLX))皆等于 O 时,mvLXA 可如下文所指定而导出:
[0101]tx = (16384+ (Abs (td) > > I)) /td(8-136)
[0102]DistScaleFactor = Clip3 (-4096,4095, (tb*tx+32) >>6) (8-137)
[0103]mvLXA = Clip3(-8192,8191.75, Sign(DistScaleFactor*mvLXA)*((Abs(DistScaleFactor*mvLXA)+127) >>8))(8-138)
[0104]其中td及tb可导出为:
[0105]td = Clip3 (-128,127,PicOrderCntVal-PicOrderCnt(RefPicListListA(refIdxA)))
[0106](8-139)
[0107]tb = Clip3 (-128,127, PicOrderCntVal-PicOrderCnt(RefPicListLX (refldxLX)))
[0108](8-140)
[0109]#当 availableFlagLXA 等于 I,且 RefPicTypeFunc (RefPicListListA(refIdxA))及 RefPicTypeFunc (RefPicListLX (ref IdxLX))皆等于非零值时,mvLAX 设置为 mvLXA 而不缩放。
[0110]除习知HEVC的过程以外或作为所述过程的替代例,诸如视频编码器20及视频解码器30的视频译码器也可使用以下过程导出运动矢量mvLXB及可用性标志availableFlagLXB。当 isScaledFlagLX 等于 O 时,availableFlagLXB 可设置为等于 0,且对于从(xB0,yB0)到(xB2,yB2)的(XBk, yBk)(其中 xB0 = xP+nPSW, XB1 = XB0-MinPuSize 且xB2 = xP-MinPuSize)时,以下内容可重复地适用,直到availableFlagLXB等于I为止:
[0111]?如果覆盖亮度位置(xBk,yBk)的预测单元可用,那么PredMode并非MODE—INTRA,predFlagLX[xBk] [yBk]等于 I,availableFlagLXB 设置为等于 I,运动矢量 mvLXB 设置为等于运动矢量mvLX[xBk] [yBk],ref IdxB 设置为等于 ref IdxLX[xBk] [yBk],ListB 设置为等于LX。
[0112]?否则,如果覆盖亮度位置(xBk,yBk)的预测单元可用,那么PredMode并非MODE—INTRA, predFlagLY [xBk] [yBk](其中 Y = ! X)等于 1,availableFlagLXB 设置为等于 I,运动矢量mvLXB设置为等于运动矢量mvLY[xBk] [yBk],refldxB设置为等于refIdxLY[xBk][yBk],ListB设置为等于LY。
[0113]?如果 availableFlagLXA 等于 1,且 RefPicTypeFunc (RefPicListListB (ref IdxB))不等于 RefPicTypeFunc (RefPicListLX (ref IdxLX)),那么 availableFlagLXB 设置为 O。
[0114]?当 availableFlagLXB 等于 I 且 RefPicTypeFunc (RefPicListListA (ref IdxA))及 RefPicTypeFunc (RefPicListLX (ref IdxLX))皆等于 0,且 PicOrderCnt (RefPicListListB (ref IdxB))不等于 PicOrderCnt (RefPicListLX (ref IdxLX))时,mvLXB 可如下文所指定而导出。
[0115]tx = (16384+(Abs (td) >> l))/td(8—144)
[0116]DistScaleFactor = Clip3 (-4096,4095,(tb*tx+32) >>6)(8-145)
[0117]mvLXB = Clip3(-8192,8191.75,Sign(DistScaleFactor*mvLXA)* ((Abs (DistScaleFactor*mvLXA)+127) >> 8))(8—146)
[0118]其中td及tb可导出为
[0119]td = Clip3 (-128,127,PicOrderCntVal-PicOrderCnt(RefPicListListB(refIdx
B)))
[0120](8-147)
[0121]tb = Clip3 (-128,127,PicOrderCntVal-PicOrderCnt(RefPicListLX (refIdxLX)))
[0122](8-148)
[0123]籲当 availableFlagLXB 等于 1,且 RefPicTypeFunc (RefPicListListB (ref IdxB))及 RefPicTypeFunc (RefPicListLX (ref IdxLX))皆等于非零值时,mvLAX 设置为 mvLXA 而不缩放。
[0124]诸如视频编码器20及视频解码器30的视频译码器可根据本发明的技术导出时间亮度运动矢量预测值。举例来说,视频译码器可如下导出变量mvLXCol及ava iIabIeFIagLXCoI:
[0125]?如果以下条件中的一者成立,那么mvLXCol的两个分量可设置为等于0,且ava i I ab I eF I agLXCo I 可设置为等于 O:
[0126]O colPu是以帧内预测模式而译码。
[0127]O colPu标记为“不可用”。
[0128]O colPic标记为“不用于时间运动矢量预测”。
[0129]O enable_temporal_mvp_flag 等于 O。
[0130]?否则,可如下导出运动矢量mvCol、参考索引refldxCol及参考列表标识符IistCol0
[0131]O如果 PredFlagLO [xPCol] [yPCol]等于 0,那么 mvCoKrefldxCol 及 IistCol 可分别设置为等于 MvLl[xPCol] [yPCol] ^ RefIdxLl [xPCol] [yPCol]及 LI。
[0132]〇否则(PredFlagLO[xPCol] [yPCol]等于1),以下内容可适用:
[0133]■如果 PredFlagLl [xPCol] [yPCol]等于 0,那么 mvCoKrefldxCol 及 IistCol 可分别设置为等于 MvL0[xPCol] [yPCol]、RefIdxLO [xPCol] [yPCol]及 LO。
[0134]■否则(PredFlagLl [xPCol] [yPCol]等于 I),可进行以下指派。
[0135]?如果每一参考图片列表中的每一图片pic的PicOrderCnt (pic)小于或等于 PicOrderCntVal,那么 mvCol、refIdxCol 及 IistCol 可分别设置为等于 MvLX[xPCol][yPCol]、RefIdxLX [xPCol] [yPCol]及LX,其中X为调用这种进程时X的值。
[0136]?否则(至少一个参考图片列表中的至少一个图片pic的PicOrderCnt (pic)大于 PicOrderCntVal),mvCol、refIdxCol 及 IistCol 可分别设置为等于 MvLN[xPCol][yPCol] λ RefIdxLN[xPCol] [yPCol]及 LN,其中 N 为 collocated—from—10—flag 的值。
[0137]且变量availableFlagLXCol可设置为等于1,且以下情形可适用:
[0138]■如果 RefPicTypeFunc (RefPicListLX (ref IdxLX))不等于 RefPicTypeFunc (IistCol (ref IdxCol)),那么 ava i I ab I eF I agLXCo I 设置为等于 O。注意,IistCol (ref IdxCol)返回时间运动矢量的参考图片。
[0139]O如果 availableFlagLXCol 为 I 且 RefPicTypeFunc (RefPicListLX (ref IdxLX))及 RefPicTypeFunc (IistCol (ref IdxCol))皆等于非零值,或 PicOrderCnt (colPic) -RefPicOrderCnt (colPic,ref IdxCoI,IistCoI)等于 PicOrderCntVal-PicOrderCnt (RefPicListLX (refIdxLX)),
[0140]■那么 mvLXCol = mvCol(8-153)
[0141]〇否则,如果 RefPicTypeFunc (RefPicListLX (ref IdxLX))及 RefPicTypeFunc (listCol (refIdxCol))皆等于0,那么mvLXCol可如下文所指定导出为运动矢量mvCol的缩放版本:
[0142]tx = (16384+(Abs (td) >> l))/td(8—154)
[0143]DistScaleFactor = Clip3 (-4096,4095,(tb*tx+32) >>6) (8-155)
[0144]mvLXCol = Clip3(-8192,8191.75,Sign(DistScaleFactor*mvCol)* ((Abs (DistScaleFactor*mvCol)+127) > > 8))(8-156)
[0145]其中td及tb可导出为:
[0146]td = Clip3 (-128,127,PicOrderCnt (colPic)-RefPicOrderCnt (colPic,refldxCol, IistCol))(8-157)
[0147]tb = Clip3 (-128,127,PicOrderCntVal-PicOrderCnt(RefPicListLX (refIdxLX)))
[0148](8-158)
[0149]可针对隐式加权预测而导出本文所描述的变量。
[0150]本发明也提供用于视频编码器20及视频解码器30可经配置以执行的加权样本预测进程的技术。对进程的输入可包括:
[0151]?位置(xB,yB),其指定相对于当前译码单元的左上样本的当前预测单元的左上样本,
[0152]?这个预测单元的宽度nPSW及高度nPSH,
[0153]?两个(nPSW) X (nPSH)阵列 predSamplesLO 及 predSamplesLl,
[0154]?预测列表利用标志 predFlagLO 及 predFlagLl,
[0155]?参考索引 refldxLO 及 refldxLl,
[0156]?运动矢量 mvLO 及 mvLl,
[0157]?色度分量的位深度bitD印th。
[0158]这种进程的输出可包括:
[0159]?预测样本值的(nPSW) X (nPSH)阵列 predSamples。
[0160]在一个实例中,如下导出变量shiftl、shift2、offsetl 及 offset2:
[0161]?变量shiftl设置为等于14-bitD印th,且变量shift2设置为等于15-bitDepth,
[0162]?变量offsetl设置为等于I << (shiftl-Ι),且变量offset2设置为等于I<< (shift2-l)。
[0163]在P切片中,如果predFlagLO的值等于I,那么以下内容可适用:
[0164]?如果weighted_pred_flag等于O,那么调用如子条款8.5.2.2.3.1中所描述的默认加权样本预测进程,其中输入及输出与这个子条款中所描述的进程相同。
[0165]?否则(weighted_pred_flag等于I),调用如子条款8.5.2.2.3.2中所描述的显式加权样本预测进程,其中输入及输出与这个子条款中所描述的进程相同。
[0166]?在B切片中,如果predFlagLO或predFlagLl等于I,那么以下内容可适用:
[0167]?如果weighted_bipred_idc等于O,那么调用如子条款8.5.2.2.3.1中所描述的默认加权样本预测进程,其中输入及输出与这个子条款中所描述的进程相同。
[0168]?否则,如果 weighted_bipred_idc 等于 I 且如果 predFlagLO 或 predFlagLl 等于1,那么调用如子条款8.5.2.2.3.2中所描述的显式加权样本预测进程,其中输入及输出与这个子条款中所描述的进程相同。
[0169]?否则(weighted_bipred_idc等于2),以下内容可适用:
[0170]〇如果predFlagLO 等于 I 且 predFlagLl 等于 I,且 RefPicTypeFunc (RefPicListLO (ref IdxLO))及 RefPicTypeFunc (RefPicListLl (ref IdxLl))两者等于 O,那么调用如当前HEVC工作草案的子条款8.5.2.2.3.2中所描述的隐式加权样本预测进程,其中输入及输出与这个子条款中所描述的进程相同。
[0171]〇否则(predFlagLO或predFlagLl等于I但并非皆等于I),调用如子条款8.5.2.2.3.1中所描述的默认加权样本预测进程,其中输入及输出与这个子条款中所描述的进程相同。
[0172]本发明也提供用于默认加权样本预测进程的技术。对这种进程的输入及从这种进程的输出可与上文针对加权样本预测进程所描述的输入及输出相同。取决于predFlagLO及predFlagLl的值,可如下导出预测样本predSamples [x, y],其中x = 0..(nPSW) -1且y=0..(nPSH)-l:
[0173]?如果 predFlagLO 等于 I 且 predFlagLl 等于 O,
[0174]〇那么predSamples [x, y] = Clip3 (O, (I << bitDepth) -1, (predSamplesLO [x,y]+offsetl) >> shiftl)(8-211)
[0175]?否则,如果 predFlagLO 等于 0 且 predFlagLl 等于 I,
[0176]〇那么predSamples[X,y] = Clip3 (O, (I << bitDepth)_l, (predSamplesLl [x,y]+offsetl) >> shiftl)(8-212)
[0177]?否则(predFlagLO 及 predFlagLl 两者等于 I),如果 RefPicOrderCnt (currPic,refIdxLO, LO)等于 RefPicOrderCnt (currPic,refIdxLl, LI)且 mvLO 等于 mvLl,且 RefPicTypeFunc (RefPicListLO (ref IdxLO))及 RefPicTypeFunc (RefPicListLl (ref IdxLl))两者等于0,
[0178]〇那么predSamples [x, y] = Clip3 (O, (I << bitDepth) -1, (predSamplesLO [x,y]+offsetl) >> shiftl)(8-213)
[0179]?否则,
[0180]〇predSamples[x, y] = Clip3 (0, (I < < bitDepth)-1, (predSamplesLO[x,y]+predSamplesLl [x, y]+offset2) >> shift2)(8-214)
[0181]在另一实例中,可如下执行加权预测。可执行新类型的隐式加权,其可对应于修改的隐式加权预测。以下改变可在图片参数集RBSP语义中进行:
[0182]weighted_bipred_idc等于O可指定,将默认加权预测应用于B切片。weighted_bipred_idc等于I可指定,将显式加权预测应用于B切片。weighted_bipred_idc等于2可指定,应将隐式加权预测应用于B切片。weighted_bipred_idc等于3可指定,将受约束隐式加权预测应用于B切片。weighted_bipred_idc的值可在O到3 (包括O及3)的范围内。
[0183]在一些实例中,本发明的技术可包括(例如)在解码进程期间执行的以下加权样本预测进程。对加权样本预测进程的输入可包括:
[0184]?位置(xB,yB),其指定相对于当前译码单元的左上样本的当前预测单元的左上样本,
[0185]?这个预测单元的宽度nPSW及高度nPSH,
[0186]?两个(nPSW) X (nPSH)阵列 predSamplesLO 及 predSamplesLl,
[0187]?预测列表利用标志 predFlagLO 及 predFlagLl,
[0188]?参考索引 refldxLO 及 refldxLl,
[0189]?运动矢量 mvLO 及 mvLl,
[0190]?色度分量的位深度bitD印th。
[0191]这种进程的输出可包括:
[0192]?预测样本值的(nPSW) X (nPSH)阵列 predSamples。
[0193]可如下导出变量shiftl、shift2、offsetl 及 offset2:
[0194]?变量shiftl设置为等于14-bitD印th,且变量shift2设置为等于15-bitDepth,
[0195]?变量offsetl设置为等于I << (shiftl-1),且变量offset2设置为等于I<< (shift2-l)。
[0196]在P切片中,如果predFlagLO的值等于I,那么以下内容可适用:
[0197]?如果weighted_pred_flag等于O,那么可调用如当前HEVC工作草案的子条款8.5.2.2.3.1中所描述的默认加权样本预测进程,其中输入及输出与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0198]?否则(weighted_pred_flag等于I),可调用如当前HEVC工作草案的子条款
8.5.2.2.3.2中所描述的显式加权样本预测进程,其中输入及输出与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0199]在B切片中,如果predFlagLO或predFlagLl等于I,那么以下内容可适用:
[0200]?如果weighted_bipred_idc等于O,那么可调用如当前HEVC工作草案的子条款
8.5.2.2.3.1中所描述的默认加权样本预测进程用,其中输入及输出与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0201]?否则,如果 weighted_bipred_idc 等于 I 且如果 predFlagLO 或 predFlagLl 等于1,那么可调用如当前HEVC工作草案的子条款8.5.2.2.3.2中所描述的显式加权样本预测进程,其中输入及输出与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0202]?否则,如果weighted_bipred_idc等于2,那么以下内容可适用:
[0203]〇如果predFlagLO等于I且predFlagLl等于I,那么可调用如当前HEVC工作草案的子条款8.5.2.2.3.2中所描述的隐式加权样本预测进程,其中输入及输出与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0204]〇否则(predFlagLO或predFlagLl等于I但并不皆等于I),可调用如当前HEVC工作草案的子条款8.5.2.2.3.1中所描述的默认加权样本预测进程,其中输入及输与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0205]?否则(weighted_bipred_idc等于3),以下内容可适用:
[0206]〇如果predFlagLO 等于 I 且 predFlagLl 等于 I,且 RefPicTypeFunc (RefPicListLO (refldxLO))及 RefPicTypeFunc (RefPicListLl (refldxLl))两者等于 O,那么可调用如当前HEVC工作草案的子条款8.5.2.2.3.2中所描述的隐式加权样本预测进程,其中输入及输出与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0207]〇否则(predFlagLO或predFlagLl等于I但并不皆等于I),可调用如当前HEVC工作草案的子条款8.5.2.2.3.1中所描述的默认加权样本预测进程,其中输入及输出与这个子条款(例如,子条款4.2.2)中所描述的进程相同。
[0208]在一些实例中,视频编码器20及视频解码器30可经配置以译码标志,以禁用正针对AMVP缩放的空间相邻块的缩放。下文的表1提供这个标志的实例序列参数集RBSP语法:
[0209]表1

【权利要求】
1.一种解码视频数据的方法,所述方法包含: 确定视频数据的当前块的当前运动矢量的第一类型; 确定所述当前块的相邻块的候选运动矢量预测值的第二类型; 在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及 至少部分地基于所述变量的所述值而解码所述当前运动矢量。
2.根据权利要求1所述的方法,其中在所述第一类型包含视差运动矢量,所述第二类型包含视差运动矢量,且所述候选运动矢量预测值用以预测所述当前运动矢量时,解码所述当前运动矢量包含在不缩放所述候选运动矢量预测值的情况下解码所述当前运动矢量。
3.根据权利要求1所述的方法, 其中确定所述当前运动矢量的所述第一类型包含基于第一参考图片子集确定所述第一类型,由所述当前运动矢量所参考的第一参考图片属于所述第一参考图片子集,且 其中确定所述候选运动矢量的所述第二类型包含基于第二参考图片子集确定所述第二类型,由所述候选运动矢量预测值所参考的第二参考图片属于所述第二参考图片子集。
4.根据权利要求2所述的方法,其中所述当前块包括在当前层的图片内,且其中在所述第一参考图片包括在所述当前层中且所述第二参考图片包括在除所述当前层以外的层中时,确定所述第二类型包含确定所述第二类型不同于所述第一类型。
5.根据权利要求2所述的方法,其中所述当前块包括在当前层的图片内,且其中在所述第二参考图片包括在所述当前层中且所述第一参考图片包括在除所述当前层以外的层中时,确定所述第二类型包含确定所述第二类型不同于所述第一类型。
6.根据权利要求1所述的方法,其进一步包含在设置所述变量之前,基于除所述第一类型是否不同于所述第二类型以外的准则确定所述候选运动矢量可用。
7.根据权利要求1所述的方法, 其中所述当前运动矢量的所述第一类型表示由所述当前运动矢量所参考的第一参考图片的当前参考图片顺序计数POC值是否与包括所述当前块的当前图片的当前POC值相同,且 其中所述候选运动矢量预测值的所述第二类型表示由所述候选运动矢量预测值所参考的第二参考图片的候选参考POC值是否与所述当前POC值相同。
8.根据权利要求7所述的方法,其进一步包含解码指示以下情形的信息:在所述当前参考POC值及所述候选参考POC值中的至少一者与所述当前POC值相同时,将包括所述候选运动矢量预测值的相邻块设置为不可用于参考。
9.根据权利要求8所述的方法,其中解码所述当前运动矢量包含:在由所述当前运动矢量所参考的第一参考图片的类型不同于由所述候选运动矢量预测值所参考的第二参考图片的类型时,在不缩放所述候选运动矢量预测值的情况下解码所述当前运动矢量。
10.根据权利要求1所述的方法,其中解码所述当前运动矢量包含使用高级运动矢量预测AMVP模式及合并模式中的至少一者解码所述当前运动矢量,所述方法进一步包含:在使用AMVP解码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,避免将所述运动矢量预测值添加至所述当前运动矢量的AMVP候选者列表中,及在使用合并模式解码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,避免将所述运动矢量预测值添加至所述当前运动矢量的合并候选者列表中。
11.根据权利要求1所述的方法,其进一步包含解码指示以下情形的数据:对于所述视频数据的经解码视频序列中的所有切片,是否决不将视图间参考选择为时间运动矢量预测TMVP模式的同置图片。
12.根据权利要求11所述的方法,其中解码所述数据包含解码disable_inter_view_as_tmvp_flag。
13.根据权利要求11所述的方法,其中解码所述数据包含用以下各者中的至少一者解码所述数据:用于多视图视频解码MVC扩展的扩展位、用于三维视频3DV扩展的扩展位、子集序列参数集SPS,及视频参数集VPS。
14.根据权利要求1所述的方法,其进一步包含确定包括所述当前运动矢量所参考的参考图片的参考图片集RPS子集的类型,其中确定所述当前运动矢量的所述第一类型包含确定所述第一类型等于所述RPS子集的所述类型。
15.一种编码视频数据的方法,所述方法包含: 确定视频数据的当前块的当前运动矢量的第一类型; 确定所述当前块的相邻块的候选运动矢量预测值的第二类型; 在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及 至少部分地基于所述变量的所述值而编码所述当前运动矢量。
16.根据权利要求15所述的方法,其中在所述第一类型包含视差运动矢量,所述第二类型包含视差运动矢量,且所述候选运动矢量预测值用以预测所述当前运动矢量时,编码所述当前运动矢量包含在不缩放所述候选运动矢量预测值的情况下编码所述当前运动矢量。
17.根据权利要求15所述的方法, 其中确定所述当前运动矢量的所述第一类型包含基于第一参考图片子集确定所述第一类型,由所述当前运动矢量所参考的第一参考图片属于所述第一参考图片子集,且 其中确定所述候选运动矢量的所述第二类型包含基于第二参考图片子集确定所述第二类型,由所述候选运动矢量预测值所参考的第二参考图片属于所述第二参考图片子集。
18.根据权利要求17所述的方法,其中所述当前块包括在当前层的图片内,且其中在所述第一参考图片包括在所述当前层中且所述第二参考图片包括在除所述当前层以外的层中时,确定所述第二类型包含确定所述第二类型不同于所述第一类型。
19.根据权利要求17所述的方法,其中所述当前块包括在当前层的图片内,且其中在所述第二参考图片包括在所述当前层中且所述第一参考图片包括在除所述当前层以外的层中时,确定所述第二类型包含确定所述第二类型不同于所述第一类型。
20.根据权利要求15所述的方法,其进一步包含在设置所述变量之前,基于除所述第一类型是否不同于所述第二类型以外的准则确定所述候选运动矢量可用。
21.根据权利要求15所述的方法, 其中所述当前运动矢量的所述第一类型表示由所述当前运动矢量所参考的第一参考图片的当前参考图片顺序计数POC值是否与包括所述当前块的当前图片的当前POC值相同,且 其中所述候选运动矢量预测值的所述第二类型表示由所述候选运动矢量预测值所参考的第二参考图片的候选参考POC值是否与所述当前POC值相同。
22.根据权利要求21所述的方法,其进一步包含编码指示以下情形的信息:在所述当前参考POC值及所述候选参考POC值中的至少一者与所述当前POC值相同时,将包括所述候选运动矢量预测值的相邻块设置为不可用于参考。
23.根据权利要求22所述的方法,其中编码所述当前运动矢量包含:在由所述当前运动矢量所参考的第一参考图片的类型不同于由所述候选运动矢量预测值所参考的第二参考图片的类型时,在不缩放所述候选运动矢量预测值的情况下编码所述当前运动矢量。
24.根据权利要求15所述的方法,其中编码所述当前运动矢量包含使用高级运动矢量预测AMVP模式及合并模式中的至少一者编码所述当前运动矢量,所述方法进一步包含:在使用AMVP编码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,避免将所述运动矢量预测值添加至所述当前运动矢量的AMVP候选者列表中,及在使用合并模式编码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,避免将所述运动矢量预测值添加至所述当前运动矢量的合并候选者列表中。
25.根据权利要求15所述的方法,其进一步包含编码指示以下情形的数据:对于所述视频数据的经编码视频序列中的所有切片,是否决不将视图间参考选择为时间运动矢量预测TMVP模式的同置图片。
26.根据权利要求25所述的方法,其中编码所述数据包含编码disable_inter_view_as_tmvp_flag。
27.根据权利要求25所述的方法,其中编码所述数据包含用以下各者中的至少一者编码所述数据:用于多视图视频编码MVC扩展的扩展位、用于三维视频3DV扩展的扩展位、子集序列参数集SPS,及视频参数集VPS。
28.根据权利要求15所述的方法,其进一步包含确定包括所述当前运动矢量所参考的参考图片的参考图片集RPS子集的类型,其中确定所述当前运动矢量的所述第一类型包含确定所述第一类型等于所述RPS子集的所述类型。
29.一种用于解码视频数据的装置,所述装置包含经配置以执行以下操作的视频解码器:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而解码所述当前运动矢量。
30.根据权利要求29所述的装置,其中在所述第一类型包含视差运动矢量,所述第二类型包含视差运动矢量,且所述候选运动矢量预测值用以预测所述当前运动矢量时,所述视频解码器经配置以在不缩放所述候选运动矢量预测值的情况下解码所述当前运动矢量。
31.根据权利要求29所述的装置,其中所述视频解码器经配置以基于第一参考图片子集确定所述当前运动矢量的所述第一类型,由所述当前运动矢量所参考的第一参考图片属于所述第一参考图片子集,且其中所述视频解码器经配置以基于第二参考图片子集确定所述第二类型,由所述候选运动矢量预测值所参考的第二参考图片属于所述第二参考图片子集。
32.根据权利要求29所述的装置,其中所述视频解码器经进一步配置以在设置所述变量之前,基于除所述第一类型是否不同于所述第二类型以外的准则确定所述候选运动矢量可用。
33.根据权利要求29所述的装置, 其中所述当前运动矢量的所述第一类型表示由所述当前运动矢量所参考的第一参考图片的当前参考图片POC值是否与包括所述当前块的当前图片的当前POC值相同,且 其中所述候选运动矢量预测值的所述第二类型表示由所述候选运动矢量预测值所参考的第二参考图片的候选参考POC值是否与所述当前POC值相同。
34.根据权利要求33所述的装置,其中所述视频解码器经进一步配置以解码指示以下情形的信息:在所述当前参考POC值及所述候选参考POC值中的至少一者与所述当前POC值相同时,将所述相邻块设置为不可用于参考。
35.根据权利要求29所述的装置,其中为了解码所述当前运动矢量,所述视频解码器经配置以使用高级运动矢量预测AMVP模式及合并模式中的至少一者解码所述当前运动矢量,其中在使用AMVP解码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,所述视频解码器经配置以避免将所述运动矢量预测值添加至所述当前运动矢量的AMVP候选者列表中,及在使用合并模式解码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,所述视频解码器经配置以避免将所述运动矢量预测值添加至所述当前运动矢量的合并候选者列表中。
36.根据权利要求29所述的装置,其中所述视频解码器经配置以解码指示以下情形的数据:对于所述视频数据的经解码视频序列中的所有切片,是否决不将视图间参考选择为时间运动矢量预测TMVP模式的同置图片。
37.根据权利要求36所述的装置,其中所述数据包含disable_inter_view_as_tmvp_flag。
38.根据权利要求29所述的装置,其中所述视频解码器经配置以确定包括所述当前运动矢量所参考的参考图片的参考图片集RPS子集的类型,其中为了确定所述当前运动矢量的所述第一类型,所述视频解码器经配置以确定所述第一类型等于所述RPS子集的所述类型。
39.根据权利要求29所述的装置,其中所述视频解码器包含经配置以执行以下操作的视频解码器:解码所述当前运动矢量;解码所述当前块的残余数据;至少部分地基于所述当前运动矢量而形成所述当前块的经预测数据;及组合所述经预测数据与所述残余数据以重建所述当前块。
40.根据权利要求29所述的装置,其中所述视频解码器包含经配置以执行以下操作的视频编码器:编码所述当前运动矢量;至少部分地基于所述当前运动矢量而形成所述当前块的经预测数据;基于所述当前块与所述经预测数据之间的差而计算所述当前块的残余数据;及编码所述残余数据。
41.根据权利要求29所述的装置,其中所述装置包含以下各者中的至少一者: 集成电路; 微处理器;及 无线通信装置,其包括所述视频解码器。
42.一种用于编码视频数据的装置,所述装置包含经配置以执行以下操作的视频编码器:确定视频数据的当前块的当前运动矢量的第一类型;确定所述当前块的相邻块的候选运动矢量预测值的第二类型;在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及至少部分地基于所述变量的所述值而编码所述当前运动矢量。
43.根据权利要求42所述的装置,其中在所述第一类型包含视差运动矢量,所述第二类型包含视差运动矢量,且所述候选运动矢量预测值用以预测所述当前运动矢量时,所述视频编码器经配置以在不缩放所述候选运动矢量预测值的情况下编码所述当前运动矢量。
44.根据权利要求42所述的装置,其中所述视频编码器经配置以基于第一参考图片子集确定所述当前运动矢量的所述第一类型,由所述当前运动矢量所参考的第一参考图片属于所述第一参考图片子集,且其中所述视频编码器经配置以基于第二参考图片子集确定所述第二类型,由所述候选运动矢量预测值所参考的第二参考图片属于所述第二参考图片子集。
45.根据权利要求42所述的装置,其中所述视频编码器经进一步配置以在设置所述变量之前,基于除所述第一类型是否不同于所述第二类型以外的准则确定所述候选运动矢量可用。
46.根据权利要求42所述的装置, 其中所述当前运动矢量的所述第一类型表示由所述当前运动矢量所参考的第一参考图片的当前参考POC值是否与包括所述当前块的当前图片的当前POC值相同,且 其中所述候选运动矢量预测值的所述第二类型表示由所述候选运动矢量预测值所参考的第二参考图片的候选参考POC值是否与所述当前POC值相同。
47.根据权利要求46所述的装置,其中所述视频编码器经进一步配置以编码指示以下情形的信息:在所述当前参考POC值及所述候选参考POC值中的至少一者与所述当前POC值相同时,将所述相邻块设置为不可用于参考。
48.根据权利要求42所述的装置,其中为了编码所述当前运动矢量,所述视频编码器经配置以使用高级运动矢量预测AMVP模式及合并模式中的至少一者编码所述当前运动矢量,其中在使用AMVP编码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,所述视频编码器经配置以避免将所述运动矢量预测值添加至所述当前运动矢量的AMVP候选者列表中,及在使用合并模式编码所述运动矢量时且在所述变量指示所述候选运动矢量预测值不可用时,所述视频编码器经配置以避免将所述运动矢量预测值添加至所述当前运动矢量的合并候选者列表中。
49.根据权利要求42所述的装置,其中所述视频编码器经配置以编码指示以下情形的数据:对于所述视频数据的经编码视频序列中的所有切片,是否决不将视图间参考选择为时间运动矢量预测TMVP模式的同置图片。
50.根据权利要求49所述的装置,其中所述数据包含disable_inter_view_as_tmvp_flag。
51.根据权利要求42所述的装置,其中所述视频编码器经配置以确定包括所述当前运动矢量所参考的参考图片的参考图片集RPS子集的类型,其中为了确定所述当前运动矢量的所述第一类型,所述视频编码器经配置以确定所述第一类型等于所述RPS子集的所述类型。
52.根据权利要求42所述的装置,其中所述视频编码器包含经配置以执行以下操作的视频解码器:解码所述当前运动矢量;解码所述当前块的残余数据;至少部分地基于所述当前运动矢量而形成所述当前块的经预测数据;及组合所述经预测数据与所述残余数据以重建所述当前块。
53.根据权利要求42所述的装置,其中所述视频编码器包含经配置以执行以下操作的视频编码器:编码所述当前运动矢量;至少部分地基于所述当前运动矢量而形成所述当前块的经预测数据;基于所述当前块与所述经预测数据之间的差而计算所述当前块的残余数据;及编码所述残余数据。
54.一种用于编码视频数据的装置,所述装置包含: 用于确定视频数据的当前块的当前运动矢量的第一类型的装置; 用于确定所述当前块的相邻块的候选运动矢量预测值的第二类型的装置; 用于在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值的装置;及 用于至少部分地基于所述变量的所述值而编码所述当前运动矢量的装置。
55.一种计算机可读存储媒体,其上存储有在执行时使处理器执行以下操作的指令: 确定视频数据的当前块的当前运动矢量的第一类型; 确定所述当前块的相邻块的候选运动矢量预测值的第二类型; 在所述第一类型不同于所述第二类型时将表示所述候选运动矢量预测值是否可用的变量设置为指示所述候选运动矢量预测值不可用的值;及 至少部分地基于所述变量的所述值而解码所述当前运动矢量。
【文档编号】H04N19/139GK104170381SQ201380014234
【公开日】2014年11月26日 申请日期:2013年3月14日 优先权日:2012年3月16日
【发明者】陈颖, 王益魁, 张莉 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1