CN104160704A - B切片中的预测单元限于单向帧间预测 - Google Patents

B切片中的预测单元限于单向帧间预测 Download PDF

Info

Publication number
CN104160704A
CN104160704A CN201380008272.XA CN201380008272A CN104160704A CN 104160704 A CN104160704 A CN 104160704A CN 201380008272 A CN201380008272 A CN 201380008272A CN 104160704 A CN104160704 A CN 104160704A
Authority
CN
China
Prior art keywords
candidate
list
video
unidirectional
way
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201380008272.XA
Other languages
English (en)
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
Priority claimed from US13/628,562 external-priority patent/US9451277B2/en
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN104160704A publication Critical patent/CN104160704A/zh
Pending legal-status Critical Current

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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal 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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

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

Abstract

一种视频译码装置产生分割为四个相等大小的预测单元PU的译码单元CU的PU的运动向量MV候选者列表。所述视频译码装置将所述MV候选者列表中的双向MV候选者转换为单向MV候选者。另外,所述视频译码装置确定合并候选者列表中的选定MV候选者,且至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块。

Description

B切片中的预测单元限于单向帧间预测
本申请案是2012年9月27日申请的第13/628,562号美国专利申请案的部分接续案,其主张2012年2月8日申请的第61/596,597号美国临时专利申请案以及2012年4月11日申请的第61/622,968号美国临时专利申请案的权益,所述专利申请案的每一者的全部内容以引用的方式并入本文中。另外,本申请案主张2012年5月7日申请的第61/643,806号美国临时专利申请案的权益,所述临时专利申请案的全部内容以引用的方式并入本文中。本申请案还主张2012年10月5日申请的第61/710,556号美国临时专利申请案的权益,所述临时专利申请案的全部内容以引用的方式并入本文中。
技术领域
本发明涉及视频译码,且特定来说涉及视频译码中的帧间预测。
背景技术
数字视频能力可并入到广泛装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、平板计算机、电子书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电信会议装置、视频串流装置等。数字视频装置实施视频压缩技术,例如MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分、先进视频译码(AVC)、当前开发中的高效视频译码(HEVC)标准所界定的标准以及此类标准的扩展中描述的技术。视频装置可通过实施此类视频压缩技术更有效地发射、接收、编码、解码和/或存储数字视频信息。
视频压缩技术执行空间(图片内)预测和/或时间(图片间)预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码,视频切片(即,视频帧或视频帧的一部分)可分割为视频块,其也可称为树块、译码单元(CU)和/或译码节点。使用空间预测相对于同一图片中的相邻块中的参考样本编码图片的帧内译码(I)切片中的视频块。图片的帧间译码(P或B)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测,或相对于其它参考图片中的参考样本的时间预测。图片可称为帧,且参考图片可称为参考帧。
空间或时间预测结果产生待译码的块的预测视频块。残余数据表示待译码的原始块与预测视频块之间的像素差。帧间译码块根据指向形成预测视频块的参考样本的块的运动向量以及指示经译码块与预测视频块之间的差的残余数据而编码。帧内译码块根据帧内译码模式和残余数据而编码。为了进一步压缩,残余数据可从像素域变换到变换域,从而产生残余变换系数,残余变换系数接着可量化。初始布置在二维阵列中的经量化变换系数可经扫描以便产生变换系数的一维向量,且可应用熵译码来实现更多压缩。
发明内容
大体来说,本发明描述用于视频译码过程中的帧间预测的技术。视频译码装置产生分割为四个相等大小的预测单元(PU)的译码单元(CU)的PU的运动向量(MV)候选者列表。视频译码装置将MV候选者列表中的双向MV候选者转换为单向MV候选者。另外,视频译码装置确定合并候选者列表中的选定MV候选者,且至少部分基于选定MV候选者指定的运动信息所指示的一或多个参考块产生PU的预测视频块。
在一个实例中,本发明描述一种用于对视频数据进行译码的方法。所述方法包括产生B切片中的CU的PU的MV候选者列表。CU分割为四个相等大小的PU。所述方法还包括将MV候选者列表中的双向MV候选者转换为单向MV候选者。另外,所述方法包括确定合并候选者列表中的选定MV候选者。此外,所述方法包括至少部分基于选定MV候选者指定的运动信息所指示的一或多个参考块产生PU的预测视频块。
在另一实例中,本发明描述一种视频译码装置,其包括经配置以产生B切片中的CU的PU的MV候选者列表的一或多个处理器。CU分割为四个相等大小的PU。所述一或多个处理器还经配置以将MV候选者列表中的双向MV候选者转换为单向MV候选者。此外,所述一或多个处理器经配置以确定MV候选者列表中的选定MV候选者。所述一或多个处理器还经配置以至少部分基于选定MV候选者指定的运动信息所指示的一或多个参考块产生PU的预测视频块。
在另一实例中,本发明描述一种视频译码装置,其包括用于产生B切片中的CU的PU的MV候选者列表的装置。所述视频译码装置还包括用于将MV候选者列表中的双向MV候选者转换为单向MV候选者的装置。另外,所述视频译码装置包括用于确定MV候选者列表中的选定MV候选者的装置。所述视频译码装置还包括用于至少部分基于选定MV候选者指定的运动信息所指示的一或多个参考块产生PU的预测视频块的装置。
在另一实例中,本发明描述一种计算机程序产品,其包括存储指令的一或多个计算机可读存储媒体,所述指令当执行时配置一或多个处理器以产生B切片中的CU的PU的MV候选者列表。CU分割为四个相等大小的PU。所述指令还配置所述一或多个处理器以将MV候选者列表中的双向MV候选者转换为单向MV候选者。此外,所述指令配置所述一或多个处理器以确定MV候选者列表中的选定MV候选者。所述指令还配置所述一或多个处理器以至少部分基于选定MV候选者指定的运动信息所指示的一或多个参考块产生PU的预测视频块。
一或多个实例的细节在附图和以下描述中陈述。从描述内容和图式并从权利要求书将明白其它特征、目的和优点。
附图说明
图1是说明可利用本发明中描述的技术的实例视频译码系统的框图。
图2是说明经配置以实施本发明中描述的技术的实例视频编码器的框图。
图3是说明经配置以实施本发明中描述的技术的实例视频解码器的框图。
图4是说明实例运动补偿操作的流程图。
图5是说明另一实例运动补偿操作的流程图。
图6是说明用于产生合并候选者列表的实例操作的流程图。
图7是说明用于产生人为合并候选者的实例过程的流程图。
图8是说明用于使用先进运动向量预测模式确定预测单元的运动信息的实例操作的流程图。
图9是说明根据本发明的一或多个技术的实例视频译码操作的流程图。
图10是说明根据本发明的一或多个技术的实例候选者列表产生操作的流程图。
具体实施方式
如下文描述,图片可划分为一或多个切片。切片的每一者可包含整数数目的译码单元(CU)。每一CU可包含一或多个预测单元(PU)。切片可为I切片、P切片或B切片。在I切片中,所有PU经帧内预测。视频编码器可对P切片中的PU执行帧内预测或单向帧间预测。当视频编码器对P切片中的PU执行单向帧间预测时,视频编码器可识别或合成参考图片的第一列表(“列表0”)中列举的参考图片中的参考样本。参考块可为参考图片内的参考样本的块。参考样本可对应于参考块中的实际像素,或例如通过使用实际像素进行内插而合成的像素。视频编码器可接着基于PU的参考块产生PU的预测视频块。
视频编码器可执行基于列表0的单向帧间预测、基于列表1的单向帧间预测,或基于列表1和列表0的B切片中的双向帧间预测。此类单向或双向帧间预测可对CU内的PU执行。当视频编码器对PU执行列表0单向帧间预测时,视频编码器可识别列表0中列举的参考图片中的参考块或基于列表0中列举的参考图片中的参考样本合成参考块。视频编码器可接着基于参考块产生PU的预测视频块。当视频编码器对PU执行列表1单向帧间预测时,视频编码器可识别第二参考图片列表(“列表1”)中列举的参考图片中的参考块或可基于列表1中列举的参考图片中的参考样本合成参考块。视频编码器可接着基于参考块产生PU的预测视频块。当视频编码器对PU执行双向帧间预测时,视频编码器可识别列表0中列举的参考图片中的参考块或基于列表0中列举的参考图片中的参考样本合成参考块。另外,当视频编码器对PU执行双向帧间预测时,视频编码器可识别列表1中列举的参考图片中的参考块或基于列表1中列举的参考图片中的参考样本合成参考块。视频编码器可接着基于两个参考块产生PU的预测视频块。
视频编码器可信令经译码位流内的PU的运动信息以使视频解码器能够识别或合成视频编码器用于产生PU的预测视频块的参考块。PU的运动信息可包含一或多个运动向量、参考图片索引,和指示帧间预测是否基于列表0和/或列表1的旗标。在一些例子中,视频编码器可使用合并模式信令PU的运动信息。当视频编码器使用合并模式信令PU的运动信息时,视频编码器可产生PU的合并候选者列表。合并候选者列表可包含多个合并候选者,其每一者指定运动信息的集合。
如果合并候选者指定识别列表0或列表1中列举的参考图片中的单一位置的运动信息,那么合并候选者可包括单向合并候选者。如果参考块中的样本基于运动信息识别的参考图片中的运动信息所识别的位置处的样本来确定,那么参考块可与运动信息的集合相关联。举例来说,如果参考块中的样本与运动信息识别的参考图片中的运动信息所识别的位置处的视频块中的样本相同,那么参考块可与运动信息的集合相关联。如果参考块中的样本从运动信息识别的参考帧中的运动信息所识别的位置处的视频块中的样本合成(例如,内插),那么参考块也可与运动信息的集合相关联。
如果合并候选者指定识别列表0中列举的参考图片中的位置和列表1中列举的参考图片中的位置的运动信息,那么合并候选者可包括双向合并候选者。视频编码器可基于空间上与不同图片中的当前PU和/或协同定位PU相邻的PU的运动信息产生合并候选者指定的运动信息。在产生当前PU的合并列表之后,视频编码器可选择合并候选者列表中的合并候选者的一者,且信令选定合并候选者的合并候选者列表内的位置。视频解码器可基于选定合并候选者指定的运动信息确定当前PU的运动信息。
依据操作和所需存储器带宽,基于两个参考块产生PU的预测视频块可比基于单一参考块产生PU的预测视频块要复杂。与基于两个参考块产生预测视频块相关联的复杂性可随B切片中的双向帧间预测PU的数目增加而增加。当小双向帧间预测PU的数目增加时,可能尤其如此。因此,可有利地将B切片中的一些PU限于单向帧间预测。
视频编码器可通过仅从PU的合并候选者列表选择单向合并候选者而将B切片中的PU限于单向帧间预测。然而,在一些例子中,合并候选者列表可不包含任何单向合并候选者。在此类例子中,视频编码器可不能使用合并模式信令PU的运动信息。这可使译码性能降级。此外,即使合并候选者列表包含至少一个单向合并候选者,如果与单向合并候选者指定的运动信息相关联的参考块不充分类似于与PU相关联的视频块,那么译码效率也可减小。
根据本发明的技术,视频译码器(例如,视频编码器或视频解码器)可确定B切片中的PU是否限于单向帧间预测。举例来说,视频译码器可确定在PU的大小特性小于特定阈值的情况下PU限于单向帧间预测。PU的大小特性可为与PU相关联的视频块的大小的特性,例如与PU相关联的视频块的高度、宽度、对角长度等。另外,视频译码器可产生PU的合并候选者列表且确定合并候选者列表中的选定合并候选者。如果PU限于单向帧间预测,那么视频译码器可基于与选定合并候选者指定的运动信息相关联的不超过一个参考块产生PU的预测视频块。如果PU不限于单向帧间预测,那么视频译码器可基于与选定合并候选者指定的运动信息相关联的一或多个参考块产生PU的预测视频块。通过以此方式将一些PU限于单向帧间预测,视频译码器可减小与基于多个参考块产生预测视频块相关联的复杂性。这可增加视频译码器能够对视频数据进行译码的速度且可减小数据(即,存储器)带宽要求。
为便于阐释,本发明可将位置或视频块描述为具有与CU或PU的各种空间关系。此描述可解释为意味着位置或视频块具有与同CU或PU相关联的视频块的各种空间关系。此外,本发明可提到视频译码器当前正作为当前PU译码的PU。本发明可提到视频译码器当前正作为当前CU译码的CU。本发明可提到视频译码器当前正作为当前图片译码的图片。
附图说明实例。附图中的参考数字指示的元件对应于以下描述中的相同参考数字指示的元件。本发明中,具有以序数词(例如,“第一”、“第二”、“第三”等)开始的名称的元件不一定暗示所述元件具有特定次序。而是,此类序数词仅用于指代相同或类似类型的不同元件。
图1是说明可利用本发明的技术的实例视频译码系统10的框图。如本文所使用,术语“视频译码器”一股指代视频编码器和视频解码器两者。在本发明中,术语“视频译码”或“译码”可一股指代视频编码或视频解码。
如图1所示,视频译码系统10包含源装置12和目的地装置14。源装置12产生经编码视频数据。因此,源装置12可称为视频编码装置或视频编码设备。目的地装置14可解码源装置12产生的经编码视频数据。因此,目的地装置14可称为视频解码装置或视频解码设备。源装置12和目的地装置14可为视频译码装置或视频译码设备的实例。
源装置12和目的地装置14可包括广范围的装置,包含台式计算机、移动计算装置、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的“智能”电话等电话手持机、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机等。在一些实例中,源装置12和目的地装置14可经装备用于无线通信。
目的地装置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的实例中,源装置12包含视频源18、视频编码器20和输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)和/或发射器。在源装置12中,视频源18可包含例如视频俘获装置(例如,视频相机)、含有先前俘获的视频数据的视频档案、用以从视频内容提供者接收视频数据的视频馈送接口,和/或用于产生视频数据的计算机图形系统等源,或此类源的组合。
视频编码器20可编码所俘获、预先俘获或计算机产生的视频数据。经编码视频数据可经由源装置12的输出接口22直接发射到目的地装置14。经编码视频数据还可存储到存储媒体或文件服务器上以供随后由目的地装置14存取用于解码和/或重放。
在图1的实例中,目的地装置14包含输入接口28、视频解码器30和显示装置32。在一些情况下,输入接口28可包含接收器和/或调制解调器。目的地装置14的输入接口28经由信道16接收经编码视频数据。经编码视频数据可包含视频编码器20产生的表示视频数据的多种语法元素。此类语法元素可与在通信媒体上发射、存储在存储媒体上或存储在文件服务器上的经编码视频数据一起包含。
显示装置32可与目的地装置14集成或可在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还可经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一股来说,显示装置32向用户显示经解码视频数据。显示装置32可包括例如液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置等多种显示装置的任一者。
视频编码器20和视频解码器30可根据例如当前在开发中的高效视频译码(HEVC)标准等视频压缩标准操作,且可遵循HEVC测试模式(HM)。称为“HEVC工作草案7”或“WD7”的即将到来的HEVC标准的最近草案在Bross等人的文献JCTVC-I1003_d54“高效视频译码(HEVC)文本规范草案7”中描述,ITU-T SG16WP3和ISO/IECJTC1/SC29/WG11的视频译码联合协作团队(JCT-VC),第九次会议:瑞士日内瓦,2012年5月,其截至2012年9月27日可从http://phenix.int-evry.fr/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v6.zip下载,其全部内容以引用的方式并入本文中。
称为“HEVC工作草案8”或“WD8”的新兴HEVC标准的另一草案在Bross等人的文献JCTVC-J1003“高效视频译码(HEVC)文本规范草案8”中描述,ITU-T SG16WP3和ISO/IEC JTC1/SC29/WG11的视频译码联合协作团队(JCT-VC),第十次会议:瑞典斯特哥尔摩,2012年7月,其截至2013年1月17日可从http://phenix.it-sudparis.eu/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-v8.zip下载,其全部内容以引用的方式并入本文中。或者,视频编码器20和视频解码器30可根据其它专有或工业标准操作,例如ITU-T H.264标准,或者称为MPEG-4,第10部分,先进视频译码(AVC),或此类标准的扩展。然而,本发明的技术不限于任何特定译码标准或技术。视频压缩标准和技术的其它实例包含MPEG-2、ITU-T H.263和专有或开放源压缩格式(例如,VP8和相关格式)。
尽管图1的实例中未图示,但视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当MUX-DEMUX单元,或其它硬件和软件来处置共同数据流或单独数据流中音频和视频两者的编码。如果适用,那么在一些实例中,MUX-DEMUX单元可遵循ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
再次,图1仅为实例,且本发明的技术可适用于不必包含编码与解码装置之间的任何数据通信的视频译码设置(例如,视频编码或视频解码)。在其它实例中,数据可从本地存储器检索、经由网络串流等。编码装置可编码数据并将数据存储到存储器,且/或解码装置可从存储器检索和解码数据。在许多实例中,编码和解码由不彼此通信而是仅将数据编码到存储器和/或从存储器检索和解码数据的装置执行。
视频编码器20和视频解码器30各自可实施为多种适宜电路的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、硬件,或其任何组合。当所述技术部分实施在软件中时,装置可将软件的指令存储在适宜的非暂时性计算机额可读存储媒体中且可使用一或多个处理器执行硬件中的指令以执行本发明的技术。以上各项(包含硬件、软件、硬件与软件的组合等)的任一者可视为一或多个处理器。视频编码器20和视频解码器30的每一者可包含在一或多个编码器或解码器中,其任一者可作为组合式编码器/解码器(CODEC)的一部分集成在相应装置中。
本发明可一股提及视频编码器20向例如视频解码器30等另一装置“信令”特定信息。然而应理解,视频编码器20可通过使特定语法元素与视频数据的各种经编码部分相关联而信令信息。即,视频编码器20可通过将特定语法元素存储到视频数据的各种经编码部分的标头而“信令”数据。在一些情况下,此类语法元素可在由视频解码器30接收和解码之前编码和存储(例如,在存储系统中)。因此,术语“信令”可一股指代用于解码经压缩视频数据的语法或其它数据的通信。此通信可实时或近实时发生。或者,此通信可在一时间跨度上发生,例如可能当编码时将语法元素在经编码位流中存储到媒介时发生,所述语法元素接着可由解码装置在存储到此媒介之后的任何时间检索。
如上文简要提及,视频编码器20编码视频数据。视频数据可包括一或多个图片,图片的每一者可为形成视频的一部分的静止图像。在一些例子中,图片可称为视频“帧”。当视频编码器20编码视频数据时,视频编码器20可产生位流。位流可包含形成视频数据的经译码表示的位的序列。位流可包含经译码图片和相关联数据。经译码图片是图片的经译码表示。
为产生位流,视频编码器20可对视频数据中的每一图片执行编码操作。当视频编码器20对图片执行编码操作时,视频编码器20可产生一系列经译码图片和相关联数据。相关联数据可包含序列参数集、图片参数集、调适参数集和其它语法结构。序列参数集(SPS)可含有适用于零个或多个图片序列的参数。图片参数集(PPS)可含有适用于零个或多个图片的参数。调适参数集(APS)可含有适用于零个或多个图片的参数。APS中的参数可为比PPS中的参数更可能改变的参数。
为产生经译码图片,视频编码器20可将图片分割为相等大小的视频块。视频块可为样本的二维阵列。视频块的每一者与树块(treeblock)相关联。在一些例子中,树块可称为最大译码单元(LCU)或“译码树块”。HEVC的树块可广义上类似于例如H.264/AVC等先前标准的宏块。然而,树块不必限于特定大小且可包含一或多个译码单元(CU)。视频编码器20可使用四叉树分割将树块的视频块分割为与CU相关联的视频块,因此称为“树块”。
在一些实例中,视频编码器20可将图片分割为多个切片。切片的每一者可包含整数数目的CU。在一些例子中,切片包括整数数目的树块。在其它例子中,切片的边界可在树块内。
作为对图片执行编码操作的一部分,视频编码器20可对图片的每一切片执行编码操作。当视频编码器20对切片执行编码操作时,视频编码器20可产生与切片相关联的经编码数据。与切片相关联的经编码数据可称为“经译码切片”。
为产生经译码切片,视频编码器20可对切片中的每一树块执行编码操作。当视频编码器20对树块执行编码操作时,视频编码器20可产生经译码树块。经译码树块可包括树块的经编码表示。
当视频编码器20产生经译码切片时,视频编码器20可根据光栅扫描次序对切片中的树块(其在此情况下表示最大译码单元)执行编码操作(即,编码)。换句话说,视频编码器20可以在切片中的树块的最顶部行上从左向右接着从树块的下一较低行上从左向右以此类推直到视频编码器20已对切片中的树块的每一者编码的次序对切片的树块编码。
由于根据光栅扫描次序对树块编码,所以给定树块上方以及左侧的树块可已编码,但给定树块下方以及右侧的树块尚未编码。因此,视频编码器20可能够存取通过在编码给定树块时编码给定树块上方以及左侧的树块产生的信息。然而,视频编码器20可不能存取通过在编码给定树块时编码给定树块下方以及右侧的树块产生的信息。
为产生经译码树块,视频编码器20可对树块的视频块递归执行四叉树分割以将视频块分割为逐渐变小的视频块。较小视频块的每一者可与不同CU相关联。举例来说,视频编码器20可将树块的视频块分割为四个相等大小的子块,将子块的一或多者分割为四个相等大小的子子块,以此类推。经分割CU可为视频块分割为与其它CU相关联的视频块的CU。未分割CU可为视频块未分割为与其它CU相关联的视频块的CU。
位流中的一或多个语法元素可指示视频编码器20可分割树块的视频块的最大次数。CU的视频块可为正方形形状。CU的视频块的大小(即,CU的大小)范围可从8x8像素到树块的视频块的大小(即,树块的大小),最大64x64像素或更大。
视频编码器20可根据z扫描次序对树块的每一CU执行编码操作(即,编码)。换句话说,视频编码器20可以所述次序编码左上CU、右上CU、左下CU且接着右下CU。当视频编码器20对经分割CU执行编码操作时,视频编码器20可根据z扫描次序对与经分割CU的视频块的子块相关联的CU进行编码。换句话说,视频编码器20可以所述次序编码与左上子块相关联的CU、与右上子块相关联的CU、与左下子块相关联的CU,且接着与右下子块相关联的CU。
由于根据z扫描次序对树块的CU编码,给定CU的上方、上方以及左侧、上方以及右侧、左侧和下方以及左侧的CU可已经编码。给定CU的下方或右侧的CU尚未编码。因此,视频编码器20可能够存取通过当编码给定CU时编码与给定CU相邻的一些CU而产生的信息。然而,视频编码器20可不能存取通过当编码给定CU时编码与给定CU相邻的其它CU而产生的信息。
当视频编码器20编码未经分割CU时,视频编码器20可产生CU的一或多个预测单元(PU)。CU的PU的每一者可与CU的视频块内的不同视频块相关联。视频编码器20可产生CU的每一PU的预测视频块。PU的预测视频块可为样本的块。视频编码器20可使用帧内预测或帧间预测来产生PU的预测视频块。
当视频编码器20使用帧内预测产生PU的预测视频块时,视频编码器20可基于与PU相关联的图片的经解码样本产生PU的预测视频块。如果视频编码器20使用帧内预测产生CU的PU的预测视频块,那么CU为经帧内预测的CU。
当视频编码器20使用帧间预测产生PU的预测视频块时,视频编码器20可基于除与PU相关联的图片的一或多个图片的经解码样本产生PU的预测视频块。如果视频编码器20使用帧间预测产生CU的PU的预测视频块,那么CU为经帧间预测的CU。
此外,当视频编码器20使用帧间预测产生PU的预测视频块时,视频编码器20可产生PU的运动信息。PU的运动信息可指示PU的一或多个参考块。PU的每一参考块可为参考图片内的视频块。参考图片可为除与PU相关联的图片以外的图片,在一些例子中,PU的参考块也可称为PU的“参考样本”。视频编码器20可基于PU的参考块产生PU的预测视频块。
如上文论述,切片可为I切片、P切片或B切片。在I切片中,所有PU经帧内预测。在P切片和B切片中,PU可经帧内预测或帧间预测。P切片可包含单向预测PU,而B切片可包含单向预测PU和双向预测PU两者。当视频编码器20对P切片中的PU执行帧间预测时,视频编码器20可产生识别单一参考图片中的位置的运动信息。换句话说,PU可经单向帧间预测。运动信息可包含参考图片索引和运动向量。参考图片索引可指示参考图片的第一参考图片列表(“列表0”)中的位置。运动向量可指示与PU相关联的视频块与参考图片内的参考块之间的空间位移。例如视频编码器20或视频解码器30等视频译码器可随后基于与PU的运动信息相关联的单一参考块产生PU的预测视频块。举例来说,视频译码器可产生PU的预测视频块使得所述预测视频块与参考块匹配。
B切片中的PU可基于列表0单向帧间预测、基于第二参考图片列表(“列表1”)单向帧间预测,或双向帧间预测。如果B切片中的PU基于列表0单向帧间预测,那么PU的运动信息可包含列表0参考图片索引和列表0运动向量。列表0参考图片索引可通过指示参考图片的列表0中的位置而识别参考图片。列表0运动向量可指示与PU相关联的视频块与参考图片内的参考块之间的空间位移。视频编码器20可基于与列表0运动向量相关联的参考块产生PU的预测视频块。换句话说,视频编码器20可基于列表0运动向量识别的参考样本的块产生PU的预测视频块,或可基于从列表0运动向量识别的参考样本的块合成(例如,内插)的参考样本的块产生PU的预测视频块。
如果B切片中的PU基于列表1单向帧间预测,那么PU的运动信息可包含列表1参考图片索引和列表1运动向量。列表1参考图片索引可通过指示参考图片的列表1中的位置而识别参考图片。列表1运动向量可指示PU与参考图片内的参考块之间的空间位移。视频编码器20可基于与列表1运动向量相关联的参考样本的块产生PU的预测视频块。举例来说,视频编码器20可基于列表1运动向量识别的参考样本的块产生PU的预测视频块,或可基于从列表1运动向量识别的参考样本的块合成(例如,内插)的参考样本的块产生PU的预测视频块。
如果B切片中的PU双向帧间预测,那么PU的运动信息可包含列表0参考图片索引、列表0运动向量、列表1参考图片索引和列表1运动向量。在一些例子中,列表0和列表1参考图片索引可识别同一图片。视频编码器20可基于与列表0和列表1运动向量相关联的参考块产生PU的预测视频块。在一些实例中,视频编码器20可通过从与列表0运动向量相关联的参考块中的样本和与列表1运动向量相关联的参考块中的样本内插预测视频块而产生PU的预测视频块。
在视频编码器20产生CU的一或多个PU的预测视频块之后,视频编码器20可基于CU的PU的预测视频块产生CU的残余数据。CU的残余数据可指示CU的PU的预测视频块与CU的原始视频块中的样本之间的差异。
此外,作为对未经分割CU执行编码操作的一部分,视频编码器20可对CU的残余数据执递归行四叉树分割以将CU的残余数据分割为与CU的变换单元(TU)相关联的残余数据的一或多个块(即,残余数据块)。
视频译码器20可将一或多个变换应用于同TU相关联的残余视频块以产生与TU相关联的变换系数块(即,变换系数的块)。概念上,变换系数块可为变换系数的二维(2D)矩阵。
在产生变换系数块之后,视频编码器20可对变换系数块执行量化过程。量化通常指代变换系数经量化以可能减少用于表示变换系数的数据量从而提供进一步压缩的过程。量化过程可减小与一些或所有变换系数相关联的位深度。举例来说,n位变换系数可在量化期间下舍入到m位变换系数,其中n大于m。
视频编码器20可使每一CU与量化参数(QP)值相关联。与CU相关联的QP值可确定视频编码器20如何量化与CU相关联的变换系数块。视频编码器20可通过调整与CU相关联的QP值而调整施加到与CU相关联的变换系数块的量化程度。
在视频编码器20量化变换系数块之后,视频编码器20可产生表示经量化变换系数块中的变换系数的语法元素的集合。视频编码器20可向这些语法元素中的一些应用熵编码操作,例如上下文自适应二进制算术译码(CABAC)操作。
视频编码器20产生的位流可包含一系列网络抽象层(NAL)单元。NAL单元的每一者可为含有NAL单元中数据的类型和含有所述数据的字节的指示的语法结构。举例来说,NAL单元可含有表示序列参数集、图片参数集、经译码切片、补充增强信息(SEI)、存取单元限定符、填充数据,或另一类型的数据的数据。NAL单元中的数据可包含各种语法结构。
视频解码器30可接收视频编码器20产生的位流。位流可包含由视频编码器20编码的视频数据的经译码表示。当视频解码器30接收位流时,视频解码器30可对位流执行解析操作。当视频解码器30执行解析操作时,视频解码器30可从位流提取语法元素。视频解码器30可基于从位流提取的语法元素重建视频数据的图片。基于语法元素重建视频数据的过程可通常与由视频编码器20执行以产生语法元素的过程互逆。
在视频解码器30提取与CU相关联的语法元素之后,视频解码器30可基于语法元素产生CU的PU的预测视频块。另外,视频解码器30可反向量化与CU的TU相关联的变换系数块。视频解码器30可对变换系数块执行反向变换以重建与CU的TU相关联的残余视频块。在产生预测视频块且重建残余视频块之后,视频解码器30可基于预测视频块和残余视频块重建CU的视频块。以此方式,视频解码器30可基于位流中的语法元素重建CU的视频块。
如上文描述,视频编码器20可使用帧间预测产生与CU的PU的运动信息相关联的预测视频块。在许多例子中,给定PU的运动信息可能与一或多个附近PU(即,视频块在空间或时间上在给定PU的视频块附近的PU)的运动信息相同或类似。因为附近PU频繁地具有类似运动信息,所以视频编码器20可参考一或多个附近PU的运动信息编码给定PU的运动信息。参考所述一或多个附近PU的运动信息编码给定PU的运动信息可减少位流中指示给定PU的运动信息所需的位的数目。
视频编码器20可以各种方式参考一或多个附近PU的运动信息编码给定PU的运动信息。举例来说,视频编码器20可使用合并模式或先进运动向量预测(AMVP)模式编码给定PU的运动信息。为使用合并模式编码PU的运动信息,视频编码器20可产生PU的合并候选者列表。合并候选者列表可包含一或多个合并候选者。合并候选者的一者指定运动信息的集合。视频编码器20可基于空间上与同一图片中的PU相邻的PU所指定的运动信息(其可称为空间合并候选者)或基于另一图片中协同定位的PU(其可称为时间合并候选者)产生合并候选者的一或多者。如果合并候选者指定的运动信息与两个参考块相关联,那么合并候选者可在本文中称为双向合并候选者或双向的合并候选者。否则,如果合并候选者指定的运动信息与仅单一参考块相关联,那么合并候选者可在本文中称为单向合并候选者或单向的合并候选者。视频编码器20可从合并候选者列表选择合并候选者的一者,且信令PU的候选者索引值。候选者索引值可指示选定合并候选者在合并候选者列表中的位置。
当视频编码器20使用合并模式编码PU的运动信息时,视频解码器30可产生与视频编码器20针对PU产生的相同的PU的合并候选者列表。视频解码器30可接着基于PU的候选者索引值确定合并候选者列表中的合并候选者的哪一者由视频编码器20选择。视频解码器30可接着采用选定合并候选者指定的运动信息作为PU的运动信息。选定候选者指定的运动信息可包含一或多个运动向量和一或多个参考图片索引。
当视频编码器20使用AMVP信令PU的运动信息时,视频编码器20可在PU基于列表0单向帧间预测的情况下或在PU基于列表0和列表1中的参考图片双向帧间预测的情况下产生PU的列表0MV预测器候选者列表。列表0MV预测器候选者列表可包含一或多个MV预测器候选者。MV预测器候选者的每一者指定运动信息的集合。视频编码器20可从列表0MV预测器候选者列表选择列表0MV预测器候选者。视频编码器20可信令指示选定列表0MV预测器候选者在列表0MV预测器候选者列表中的位置的列表0MV预测器旗标。列表0MV预测器旗标可表示为“mvp_10_flag”。
另外,当视频编码器20使用AMVP信令PU的运动信息时,视频编码器20可在PU基于列表1单向帧间预测的情况下或在PU双向帧间预测的情况下产生PU的列表1MV预测器候选者列表。列表1MV预测器候选者列表可包含一或多个MV预测器候选者。MV预测器候选者的每一者指定运动信息的集合。视频编码器20可接着从列表1MV预测器候选者列表选择列表1MV预测器候选者。视频编码器20可信令指示选定列表1MV预测器候选者在列表1MV预测器候选者列表中的位置的列表1MV预测器旗标。列表1MV预测器旗标可表示为“mvp_11_flag”。
另外,当视频编码器20使用AMVP信令PU的运动信息时,视频编码器20可在PU基于列表0单向帧间预测的情况下或在PU双向帧间预测的情况下计算PU的列表0运动向量差(MVD)。列表0MVD指示PU的列表0运动向量与选定列表0MV预测器候选者指定的列表0运动向量之间的差。另外,视频编码器20可在PU基于列表1单向帧间预测的情况下或在PU双向帧间预测的情况下输出PU的列表1MVD。列表1MVD指示PU的列表1运动向量与选定列表1MV预测器候选者指定的列表1运动向量之间的差。视频编码器20可信令列表0MVD和/或列表1MVD。
当视频编码器20使用AMVP模式信令PU的运动信息时,视频解码器30可独立地产生视频编码器20产生的相同列表0和/或列表1MV预测器候选者列表。在其它实例中,视频编码器20可编码指定列表0和列表1MV预测器候选者列表的语法元素。如果PU基于列表0单向帧间预测或如果PU双向帧间预测,那么视频解码器30可从列表0MV预测器候选者列表确定选定列表0MV预测器候选者。视频解码器30可接着基于PU的选定列表0MV预测器候选者和列表0MVD确定PU的列表0运动向量。举例来说,视频解码器30可通过将选定列表0MV预测器候选者和列表0MVD指定的列表0运动向量相加而确定PU的列表0运动向量。如果PU基于列表1单向帧间预测或如果PU双向帧间预测,那么视频解码器30可从列表1MV预测器候选者列表确定选定列表1MV预测器候选者。视频解码器30可接着基于选定列表1MV候选者和列表1MVD指定的列表1运动向量确定PU的列表1运动向量。举例来说,视频解码器30可通过将选定列表1MV候选者和列表1MVD指定的列表1运动向量相加而确定PU的列表1运动向量。
如上文简要论述,当视频编码器20对B切片中的PU执行帧间预测时,视频编码器20可产生与PU的一个或两个参考块相关联的运动信息。例如视频编码器20或视频解码器30等视频译码器可接着基于与PU的运动信息相关联的参考块产生PU的预测视频块。为基于两个参考块产生预测视频块,视频译码器可从存储器检索参考块的两者。因为存储器带宽(即,数据可从存储器转移的速率)可能有限,所以可能与从存储器检索单一参考块将花费的时间相比花费较长时间从存储器检索两个参考块。因此,如果B切片包含许多小双向帧间预测PU,那么检索PU的每一者的两个参考块所需的额外时间可减缓视频译码器能够产生B切片中的PU的预测视频块的速度。
根据本发明的技术的各个实例,例如视频编码器20或视频解码器30等视频译码器可确定B切片中的PU是否限于单向帧间预测。在一些实例中,视频译码器可基于PU的大小特性或某一参数确定PU限于单向帧间预测。另外,视频译码器可产生PU的合并候选者列表且确定合并候选者列表中的选定合并候选者。如果PU限于单向帧间预测,那么视频译码器可基于与选定合并候选者指定的运动信息相关联的不超过一个参考块产生PU的预测视频块。另一方面,如果PU不限于单向帧间预测,那么视频译码器可基于与选定合并候选者指定的运动信息相关联的一或多个参考块产生PU的预测视频块。因为视频译码器在基于单一参考块产生预测视频块时比在基于两个参考块产生预测视频块时从存储器转移更少数据,所以由视频编码器和解码器将B切片中的特定PU限于单向帧间预测可增加视频编码器和解码器能够产生B切片中的PU的预测视频块的速度。
视频译码器(即,视频编码器或视频解码器)可基于各种准则确定B切片中的PU限于单向帧间预测。举例来说,如果PU的大小特性低于特定阈值,那么视频译码器可确定B切片中的PU限于单向帧间预测。在此实例中,如果PU的大小特性不低于特定阈值,那么视频译码器可确定PU不限于单向帧间预测。举例来说,在此实例中,如果与PU相关联的视频块的高度或宽度低于阈值,那么视频译码器可确定PU限于单向帧间预测。举例来说,如果与PU相关联的视频块的高度和/或宽度小于N(例如,N=8)像素,那么视频译码器可确定PU限于单向帧间预测。
在另一实例中,如果与PU相关联的视频块的第一尺寸小于阈值且与PU相关联的视频块的第二尺寸小于或等于所述阈值,那么视频译码器可确定B切片中的PU限于单向帧间预测。视频块的尺寸可指代视频块的宽度或高度。举例来说,如果阈值等于8,那么在视频块的宽度等于4但视频块的高度等于16的情况下,视频译码器可确定PU不限于单向帧间预测。然而,如果阈值等于8,那么在视频块的宽度等于4但视频块的高度等于8的情况下,视频译码器可确定PU限于单向帧间预测。或者可使用其它基于大小的尺寸(例如,对角尺寸或二维量度)来更好地区分正方形块与非正方形的矩形块。
在另一实例中,如果与PU相关联的视频块的第一尺寸小于第一阈值且与PU相关联的视频块的第二尺寸小于第二阈值,那么视频译码器可确定B切片中的PU限于单向帧间预测。举例来说,如果视频块的宽度小于8且视频块的高度小于16,那么视频译码器可确定PU限于单向帧间预测。在一些例子中,第一阈值可与第二阈值相同。
在另一实例中,如果与PU相关联的CU(例如,当前CU)的大小特性等于特定大小且PU的大小特性低于阈值,那么视频译码器可确定PU限于单向帧间预测。在此实例中,如果CU的大小特性不等于特定大小或PU的大小特性不低于阈值,那么视频译码器可确定PU不限于单向帧间预测。在此实例中,特定大小可等于N(例如,N=8)像素,且阈值也可等于N(例如,N=8)像素。在此实例中,对于具有8x8大小的CU,CU的具有小于8x8的大小的任何PU可被抑制进行双向帧间预测。
在另一实例中,如果参数指示B切片中的PU将限于单向帧间预测,那么视频译码器可确定B切片中的PU限于单向帧间预测。
视频译码器可以各种方式将B切片中的PU限于单向帧间预测。举例来说,视频译码器可忽略与PU的运动信息相关联的参考块的一者且基于与PU的运动信息相关联的参考块的另一者产生PU的预测视频块。举例来说,视频译码器可产生合并候选者列表,且如果选定合并候选者是双向合并候选者,那么视频译码器可基于与选定合并候选者的列表0参考图片索引以及选定合并候选者的列表0运动向量相关联的参考块产生PU的预测视频块。在类似实例中,视频译码器可基于与选定合并候选者的列表1参考图片索引以及选定合并候选者的列表1运动向量相关联的参考块产生PU的预测视频块。
在关于视频译码器可如何将B切片中的PU限于单向帧间预测的另一实例中,视频译码器可在PU的合并候选者列表中包含单向合并候选者,而不在PU的合并候选者列表中包含双向合并候选者。在此实例中,视频译码器不将双向合并候选者转换为单向合并候选者。在此实例中,如果可用单向合并候选者的数目不足以填充合并候选者列表,那么视频译码器可在合并候选者列表中包含人为单向合并候选者。人为合并候选者可为基于一或多个PU的运动信息产生但不指定所述一或多个PU的运动信息的合并候选者。
在关于视频译码器可如何将B切片中的PU限于单向帧间预测的另一实例中,视频译码器可将双向合并候选者转换为一或多个单向合并候选者,且在合并候选者列表中包含所述一或多个单向合并候选者。在一些此类实例中,视频译码器可将双向合并候选者转换为与列表0中的参考图片或列表1中的参考图片相关联的单一单向合并候选者。在一些此类情况下,不论何时视频译码器将双向合并候选者转换为单向合并候选者,所述单向合并候选者均与特定参考列表中的参考图片相关联。举例来说,视频译码器可仅将双向合并候选者转换为与列表0中的参考图片相关联的单一单向合并候选者。或者,视频译码器可仅将双向合并候选者转换为与列表1中的参考图片相关联的单一单向合并候选者。在其它此类实例中,视频译码器可将双向合并候选者转换为两个单向合并候选者,其中一者与列表0中的参考图片相关联且其中另一者与列表1中的参考图片相关联。因此,在一些实例中,在产生合并候选者列表之后,视频译码器可将合并候选者列表中的双向合并候选者转换为单向合并候选者,且将所述单向合并候选者包含在合并候选者列表中代替双向合并候选者。
在一些实例中,视频译码器可在将双向合并候选者转换为单向合并候选者之前从合并候选者列表移除复制的合并候选者。在其它实例中,视频译码器可在将双向合并候选者转换为单向合并候选者之后从合并候选者列表移除复制的合并候选者。
当视频编码器20使用AMVP编码B切片中的PU的运动信息时,视频编码器20可产生、熵编码和输出PU的帧间预测模式指示符。所述帧间预测模式指示符可表示为“inter_pred_idc”。所述帧间预测模式指示符可指示PU基于列表0单向帧间预测、基于列表1单向帧间预测,还是双向帧间预测。视频解码器30可在对PU执行帧间预测时使用帧间预测模式指示符。因为帧间预测模式指示符具有三个可能值,所以帧间预测模式指示符可常规行使用两个位表示。
然而,如果B切片中的PU限于单向帧间预测,那么帧间预测模式指示符可具有两个可能值:基于列表0的单向帧间预测和基于列表1的单向帧间预测。因此,根据本发明的技术,如果B切片中的PU限于单向帧间预测,那么帧间预测模式指示符可使用单一位表示。否则,如果PU不限于单向帧间预测,那么帧间预测模式指示符可使用两个位表示。当PU限于单向帧间预测时使用单一位表示帧间预测模式指示符可增加译码效率。
此外,可在PU限于单向帧间预测的情况下使用与PU不限于单向帧间预测的情况下不同的上下文对B切片中的PU的帧间预测模式指示符进行熵译码。这可进一步增加译码效率。
图2是说明经配置以实施本发明的技术的实例视频编码器20的框图。图2出于阐释的目的而提供且不应视为限制如本发明广义上例证且描述的技术。出于阐释的目的,本发明在HEVC译码的上下文中描述视频编码器20。然而,本发明的技术可适用于其它译码标准或方法。
在图2的实例中,视频编码器20包含多个功能组件。视频编码器20的功能组件包含预测处理单元100、残余产生单元102、变换处理单元104、量化单元106、反向量化单元108、反向变换处理单元110、重建单元112、滤波器单元113、经解码图片缓冲器114,和熵编码单元116。预测处理单元100包含帧内预测处理单元121、运动估计单元122、运动补偿单元124和帧内预测处理单元126。在其它实例中,视频编码器20可包含更多、更少或不同功能组件。此外,运动估计单元122和运动补偿单元124可高度集成,但在图2的实例中出于阐释的目的单独表示。
视频编码器20可接收视频数据。视频编码器20可从各个源接收视频数据。举例来说,视频编码器20可从视频源18(图1)或另一源接收视频数据。视频数据可表示一系列图片。为编码视频数据,视频编码器20可对图片的每一者执行编码操作。作为对图片执行编码操作的一部分,视频编码器20可对图片的每一切片执行编码操作。作为对切片执行编码操作的一部分,视频编码器20可对切片中的树块执行编码操作。
作为对树块执行编码操作的一部分,预测处理单元100可对树块的视频块执行四叉树分割以将视频块划分为逐渐变小的视频块。较小视频块的每一者可与不同CU相关联。举例来说,预测处理单元100可将树块的视频块分割为相等大小的子块,将子块的一或多者分割为相等大小的子子块,以此类推。
与CU相关联的视频块的大小范围可从8x8样本到具有最大64x64样本或更大的树块的大小。在本发明中,“NxN”和“N乘N”可互换使用以指代在垂直和水平尺寸方面视频块的样本尺寸(例如,16x16样本或16乘16样本)。一股来说,16x16视频块具有垂直方向上(y=16)十六个样本且水平方向上(x=16)十六个样本。同样,N乘N块通常具有垂直方向上N个样本以及水平方向上N个样本,其中N表示非负整数值。
此外,作为对树块执行编码操作的一部分,预测处理单元100可产生树块的层级四叉树数据结构。举例来说,树块可对应于四叉树数据结构的根节点。如果预测处理单元100将树块的视频块分割为四个子块,那么根节点具有四叉树数据结构中的四个子节点。子节点的每一者对应于与子块的一者相关联的CU。如果预测处理单元100将子块的一者分割为四个子子块,那么对应于与子块相关联的CU的节点可具有四个子节点,其每一者对应于与子子块的一者相关联的CU。
四叉树数据结构的每一节点可含有对应树块或CU的语法数据(例如,语法元素)。举例来说,四叉树中的节点可包含分离旗标,其指示对应于节点的CU的视频块是否分割(即,分离)为四个子块。CU的语法元素递归地界定,且可取决于CU的视频块是否分离为子块。视频块不分割的CU可对应于四叉树数据结构中的叶节点。经译码树块可包含对应树块的基于四叉树数据结构的数据。
视频编码器20可对树块的每一未经分割CU执行编码操作。当视频编码器20对未经分割CU执行编码操作时,视频编码器20可产生未经分割CU的经编码表示。
作为对CU执行编码操作的一部分,预测处理单元100可在CU的一或多个PU之间分割CU的视频块。视频编码器20和视频解码器30可支持各种PU大小。假定特定CU的大小为2Nx2N,视频编码器20和视频解码器30可支持用于帧内预测的2Nx2N或NxN的PU大小,以及用于帧间预测的2Nx2N、2NxN、Nx2N、NxN或类似的对称PU大小。视频编码器20和视频解码器30还可支持用于帧间预测的2NxnU、2NxnD、nLx2N和nRx2N的PU大小的非对称分割。在一些实例中,预测处理单元100可执行几何分割以沿着不以直角与CU的视频块的侧边相遇的边界在CU的PU之间分割CU的视频块。
帧间预测处理单元121可对CU的PU的每一者执行帧间预测。帧间预测可提供时间压缩。当帧间预测处理单元121对PU执行帧间预测时,帧间预测处理单元121可产生PU的预测数据。PU的预测数据可包含对应于PU和PU的运动信息的预测视频块。运动估计单元122可产生PU的运动信息。在一些例子中,运动估计单元122可使用合并模式或AMVP模式来信令PU的运动信息。运动补偿单元124可基于除当前图片(即,参考图片)外的一或多个图片的样本产生PU的预测视频块。
切片可为I切片、P切片或B切片。运动估计单元122和运动补偿单元124可依据PU在I切片、P切片还是B切片中而执行CU的PU的不同操作。在I切片中,所有PU经帧内预测。因此,如果PU在I切片中,那么运动估计单元122和运动补偿单元124不对PU执行帧间预测。
如果PU在P切片中,那么含有PU的图片与称为“列表0”的参考图片的列表相关联。在一些实例中,列表0中列举的每一参考图片在显示次序中的当前图片之前发生。列表0中参考图片的每一者含有可用于其它图片的帧间预测的样本。当运动估计单元122相对于P切片中的PU执行运动估计操作时,运动估计单元122可搜索列表0中的参考图片以寻找PU的参考块。PU的参考块可为样本的集合,例如最紧密对应于PU的视频块中的样本的样本的块。运动估计单元122可使用多种量度来确定参考图片中的样本的集合与PU的视频块中的样本对应的紧密程度。举例来说,运动估计单元122可通过绝对差之和(SAD)、均方差之和(SSD)或其它差值量度确定参考图片中的样本的集合与PU的视频块中的样本对应的紧密程度。
在识别或合成P切片中的PU的参考块之后,运动估计单元122可产生指示含有参考块的列表0中的参考图片的参考图片索引,和指示PU与参考块之间的空间位移的运动向量。运动估计单元122可产生不同精度的运动向量。举例来说,运动估计单元122可产生四分之一样本精度、八分之一样本精度或其它分数样本精度的运动向量。在分数样本精度的情况下,参考块值可从参考图片中的整数位置样本值内插。运动估计单元122可输出参考图片索引和运动向量作为PU的运动信息。运动补偿单元124可基于与PU的运动信息相关联的参考块产生PU的预测视频块。
如果PU在B切片中,那么含有PU的图片可与参考图片的两个列表相关联,称为“列表0”和“列表1”。在一些实例中,含有B切片的图片可与作为列表0与列表1的组合的列表组合相关联。在一些实例中,列表1中列举的每一参考图片在显示次序中的当前图片之后发生。
此外,如果PU在B切片中,那么运动估计单元122可执行PU的单向帧间预测或双向帧间预测。当运动估计单元122执行PU的单向帧间预测时,运动估计单元122可搜索列表0或列表1的参考图片以寻找PU的参考块。运动估计单元122可接着产生指示含有参考块的列表0或列表1中的参考图片的参考图片索引,和指示PU与参考块之间的空间位移的运动向量。
当运动估计单元122执行PU的双向帧间预测时,运动估计单元122可搜索列表0的参考图片以寻找PU的参考块,且还可搜索列表1的参考图片以寻找PU的另一参考块。运动估计单元122可接着产生指示含有参考块的列表0和列表1中的参考图片的参考图片索引,和指示参考块与PU之间的空间位移的运动向量。PU的运动信息可包含参考图片索引和PU的运动向量。运动补偿单元124可基于PU的运动信息指示的参考块产生PU的预测视频块。
运动补偿单元124可基于与PU的运动信息相关联的一或多个参考块产生PU的预测视频块。根据本发明的技术,运动补偿单元124可确定PU是否限于单向帧间预测。另外,运动补偿单元124可产生PU的合并候选者列表,且确定合并候选者列表中的选定合并候选者。如果PU限于单向帧间预测,那么运动补偿单元124可基于与选定合并候选者指定的运动信息相关联的不超过一个参考块产生PU的预测视频块。如果PU不限于单向帧间预测,那么运动补偿单元124可基于与选定合并候选者指定的运动信息相关联的一或多个参考块产生PU的预测视频块。
作为对CU执行编码操作的一部分,帧内预测处理单元126可对CU的PU执行帧内预测。帧内预测可提供空间压缩。当帧内预测处理单元126对PU执行帧内预测时,帧内预测处理单元126可基于同一图片中其它PU的经解码样本产生PU的预测数据。PU的预测数据可包含预测视频块和各种语法元素。帧内预测处理单元126可对I切片、P切片和B切片中的PU执行帧内预测。
为对PU执行帧内预测,帧内预测处理单元126可使用多个帧内预测模式来产生PU的预测数据的多个集合。当帧内预测处理单元126使用帧内预测模式来产生PU的预测数据的集合时,帧内预测处理单元126可在与帧内预测模式相关联的方向和/或梯度上在PU的视频块上延伸来自相邻PU的视频块的样本。相邻PU可在所述PU上方、上方以及右侧、上方以及左侧,或左侧,假定PU、CU和树块的从左向右、自顶向下编码次序。帧内预测处理单元126可使用各种数目的帧内预测模式,例如33个定向帧内预测模式。在一些实例中,帧内预测模式的数目可取决于PU的大小。
预测处理单元100可从运动补偿单元124针对PU产生的预测数据或帧内预测处理单元126针对PU产生的预测数据中选择PU的预测数据。在一些实例中,预测处理单元100基于预测数据的集合的速率/失真量度选择PU的预测数据。
如果预测处理单元100选择帧内预测处理单元126产生的预测数据,那么预测处理单元100可信令用于产生PU的预测数据的帧内预测模式,即选定帧内预测模式。预测处理单元100可以各种方式信令选定帧内预测模式。举例来说,可存在选定帧内预测模式与相邻PU的帧内预测模式相同的高概率。换句话说,相邻PU的帧内预测模式可为当前PU的最可能模式。因此,预测处理单元100可产生语法元素以指示选定帧内预测模式是最可能模式,例如其可指示选定帧内预测模式与相邻PU的帧内预测模式相同。在其它实例中,最可能模式可由其它上下文信息界定,且可基于若干相邻者的模式或其它因素。
在预测处理单元100选择CU的PU的预测数据之后,残余产生单元102可通过从CU的视频块减去CU的PU的预测视频块而产生CU的残余数据。CU的残余数据可包含对应于CU的视频块中的样本的不同样本组件的2D残余视频块。举例来说,残余数据可包含对应于CU的PU的预测视频块中的样本的亮度组件与CU的原始视频块中的样本的亮度组件之间的差的残余视频块。另外,CU的残余数据可包含对应于CU的PU的预测视频块中的样本的色度组件与CU的原始视频块中的样本的色度组件之间的差的残余视频块。
预测处理单元100可执行四叉树分割以将CU的残余视频块分割为子块。每一未划分残余视频块可与CU的不同TU相关联。与CU的TU相关联的残余视频块的大小和位置可或可不基于与CU的PU相关联的视频块的大小和位置。称为“残余四叉树”(RQT)的四叉树结构可包含与残余视频块的每一者相关联的节点。CU的TU可对应于RQT的页节点。
变换处理单元104可通过将一或多个变换应用于与TU相关联的残余视频块而产生CU的每一TU的一或多个变换系数块。变换系数块的每一者可为变换系数的2D矩阵。变换处理单元104可将各种变换应用于与TU相关联的残余视频块。举例来说,变换处理单元104可将离散余弦变换(DCT)、定向变换或概念上类似的变换应用于与TU相关联的残余视频块。
在变换处理单元104产生与TU相关联的变换系数块之后,量化单元106可量化变换系数块中的变换系数。量化单元106可基于与CU相关联的QP值量化与CU的TU相关联的变换系数块。
视频编码器20可以各种方式使QP值与CU相关联。举例来说,视频编码器20可对与CU相关联的树块执行速率-失真分析。在速率-失真分析中,视频编码器20可通过对树块执行编码操作多次而产生树块的多个经译码表示。当视频编码器20产生树块的不同经编码表示时,视频编码器20可使不同QP值与CU相关联。当给定QP值与树块的经译码表示中具有最低位速率和失真量度的CU相关联时,视频编码器20可信令给定QP值与CU相关联。
反向量化单元108和反向变换处理单元110可分别将反向量化和反向变换应用于变换系数块以从变换系数块重建残余视频块。重建单元112可将经重建残余视频块与来自预测处理单元100产生的一或多个预测视频块的对应样本相加以产生与TU相关联的经重建视频块。通过以此方式重建CU的每一TU的视频块,视频编码器20可重建CU的视频块。
在重建单元112(表示为加法器)重建CU的视频块之后,滤波器单元113可执行解块操作以减少与CU相关联的视频块中的成块假影。在执行所述一或多个解块操作之后,滤波器单元113可将CU的经重建视频块存储在经解码图片缓冲器114中。运动估计单元122和运动补偿单元124可使用含有经重建视频块的参考图片对后续图片的PU执行帧间预测。另外,帧内预测处理单元126可使用经解码图片缓冲器114中的经重建视频块对与CU相同图片中的其它PU执行帧内预测。
熵编码单元116可从视频编码器20的其它功能组件接收数据。举例来说,熵编码单元116可从量化单元106接收变换系数块且可从预测处理单元100接收语法元素。当熵编码单元116接收数据时,熵编码单元116可执行一或多个熵编码操作以产生经熵编码数据。举例来说,视频编码器20可对数据执行上下文自适应可变长度译码(CAVLC)操作、CABAC操作、变量到变量(V2V)长度译码操作、基于语法的上下文自适应二进制算术译码(SBAC)操作、概率间隔分割熵(PIPE)译码操作,或另一类型的熵编码操作。熵编码单元116可输出包含经熵编码数据的位流。
作为对数据执行熵编码操作的一部分,熵编码单元116可选择上下文模式。如果熵编码单元116正执行CABAC操作,那么上下文模式可指示具有特定值的特定bin的概率的估计值。在CABAC的上下文中,术语“bin”用于指代语法元素的二值化(binarized)版本的位。
图3是说明经配置以实施本发明的技术的实例视频解码器30的框图。图3出于阐释的目的而提供且不限制如本发明广义上例证且描述的技术。出于阐释的目的,本发明在HEVC译码的上下文中描述视频解码器30。然而,本发明的技术可适用于其它译码标准或方法。
在图3的实例中,视频解码器30包含多个功能组件。视频解码器30的功能组件包含熵解码单元150、预测处理单元152、反向量化单元154、反向变换处理单元156、重建单元158、滤波器单元159和经解码图片缓冲器160。预测处理单元152包含运动补偿单元162和帧内预测处理单元164。在一些实例中,视频解码器30可执行通常与相对于图2的视频编码器20描述的编码遍次互逆的解码遍次。在其它实例中,视频解码器30可包含更多、更少或不同功能组件。
视频解码器30可接收包括经编码视频数据的位流。所述位流可包含多个语法元素。当视频解码器30接收位流时,熵解码单元150可对位流执行解析操作。作为对位流执行解析操作的结果,熵解码单元150可从位流提取语法元素。作为执行解析操作的一部分,熵解码单元150可对位流中的经熵编码语法元素进行熵解码。预测处理单元152、反向量化单元154、反向变换处理单元156、重建单元158和滤波器单元159可执行重建操作,其基于从位流提取的语法元素产生经解码视频数据。
如上文论述,位流可包括一系列NAL单元。位流的NAL单元可包含序列参数集NAL单元、图片参数集NAL单元、SEI NAL单元等。作为对位流执行解析操作的一部分,熵解码单元150可执行解析操作,其从序列参数集NAL单元提取序列参数集,从图片参数集NAL单元提取图片参数集且从SEI NAL单元提取SEI数据,并对所述序列参数集、图片参数集和SEI数据进行熵解码。
另外,位流的NAL单元可包含经译码切片NAL单元。作为对位流执行解析操作的一部分,熵解码单元150可执行解析操作,其从经译码切片NAL单元提取经译码切片并对所述经译码切片进行熵解码。经译码切片的每一者可包含切片标头和切片数据。切片标头可含有关于切片的语法元素。切片标头中的语法元素可包含识别与含有切片的图片相关联的图片参数集的语法元素。熵解码单元150可对经译码切片标头中的语法元素执行熵解码操作(例如,CABAC解码操作)以恢复切片标头。
作为从经译码切片NAL单元提取切片数据的一部分,熵解码单元150可执行解析操作,其从切片数据中的经译码CU提取语法元素。所提取的语法元素可包含与变换系数块相关联的语法元素。熵解码单元150可接着对一些语法元素执行CABAC解码操作。
在熵解码单元150对未经分割CU执行解析操作之后,视频解码器30可对未经分割CU执行重建操作。为对未经分割CU执行重建操作,视频解码器30可对CU的每一TU执行重建操作。通过对CU的每一TU执行重建操作,视频解码器30可重建与CU相关联的残余视频块。
作为对TU执行重建操作的一部分,反向量化单元154可对与TU相关联的变换系数块进行反向量化,即解量化。反向量化单元154可以与针对HEVC所提议或由H.264解码标准界定的反向量化过程类似的方式对变换系数块进行反向量化。反向量化单元154可使用视频编码器20针对变换系数块的CU计算的量化参数QP来确定量化程度以及同样反向量化单元154应用的反向量化程度。
在反向量化单元154对变换系数块进行反向量化之后,反向变换处理单元156可产生与变换系数块相关联的TU的残余视频块。反向变换处理单元156可对变换系数块应用反向变换以便产生TU的残余视频块。举例来说,反向变换处理单元156可对变换系数块应用反向DCT、反向整数变换、反向卡洛(Karhunen-Loeve)变换(KLT)、反向旋转变换、反向定向变换,或另一反向变换。
在一些实例中,反向变换处理单元156可基于来自视频编码器20的信令确定应用于变换系数块的反向变换。在此类实例中,反向变换处理单元156可基于与变换系数块相关联的树块的四叉树的根节点处的所信令变换确定反向变换。在其它实例中,反向变换处理单元156可从例如块大小、译码模式等一或多个译码特性推断反向变换。在一些实例中,反向变换处理单元156可应用级联反向变换。
如果PU在跳过模式中编码或使用合并模式编码PU的运动信息,那么运动补偿单元162可产生PU的合并候选者列表。运动补偿单元162可接着识别合并候选者列表中的选定合并候选者。在识别合并候选者列表中的选定合并候选者之后,运动补偿单元162可基于与选定合并候选者指定的运动信息相关联的所述一或多个参考块产生PU的预测视频块。
根据本发明的技术,运动补偿单元162可确定PU是否限于单向帧间预测。此外,运动补偿单元162可产生PU的合并候选者列表,且确定合并候选者列表中的选定合并候选者。如果PU限于单向帧间预测,那么运动补偿单元162可基于与选定合并候选者指定的运动信息相关联的不超过一个参考块产生PU的预测视频块。否则,如果PU不限于单向帧间预测,那么运动补偿单元162可基于与选定合并候选者指定的运动信息相关联的一或多个参考块产生PU的预测视频块。
如果使用AMVP模式对PU的运动信息进行编码,那么运动补偿单元162可产生列表0MV预测器候选者列表和/或列表1MV预测器候选者列表。运动补偿单元162可接着确定选定列表0MV预测器候选者和/或选定列表1MV预测器候选者。接下来,运动补偿单元162可基于列表0MVD、列表1MVD、选定列表0MV预测器候选者指定的列表0运动向量和/或选定列表1MV预测器候选者指定的列表1运动向量确定PU的列表0运动向量和/或PU的列表1运动向量。运动补偿单元162可接着基于与列表0运动向量和列表0参考图片索引以及/或列表1运动向量和列表1参考图片索引相关联的参考块产生PU的预测视频块。
在一些实例中,运动补偿单元162可通过基于内插滤波器执行内插而改善PU的预测视频块。待用于具有子样本精度的运动补偿的内插滤波器的识别符可包含在语法元素中。运动补偿单元162可使用与视频编码器20在产生PU的预测视频块期间使用的相同的内插滤波器来计算参考块的子整数样本的内插值。运动补偿单元162可根据所接收的语法信息确定视频编码器20使用的内插滤波器,且使用所述内插滤波器产生预测视频块。
如果使用帧内预测对PU进行编码,那么帧内预测处理单元164可执行帧内预测以产生PU的预测视频块。举例来说,帧内预测处理单元164可基于位流中的语法元素确定PU的帧内预测模式。位流可包含帧内预测处理单元164可用于确定PU的帧内预测模式的语法元素。
在一些例子中,语法元素可指示帧内预测处理单元164将使用另一PU的帧内预测模式来确定当前PU的帧内预测模式。举例来说,有可能当前PU的帧内预测模式与相邻PU的帧内预测模式相同。换句话说,相邻PU的帧内预测模式可为当前PU的最可能模式。因此,在此实例中,位流可包含指示PU的帧内预测模式与相邻PU的帧内预测模式相同的小语法元素。帧内预测处理单元164可接着使用帧内预测模式基于空间上相邻PU的视频块产生PU的预测数据(例如,预测样本)。
重建单元158可使用与CU的TU相关联的残余视频块和CU的PU的预测视频块,即帧内预测数据或帧间预测数据(视需要),来重建CU的视频块。特定来说,重建单元158可将残余数据添加到预测数据以重建经译码视频数据。因此,视频解码器30可基于位流中的语法元素产生预测视频块和残余视频块,且可基于预测视频块和残余视频块产生视频块。
在重建单元158重建CU的视频块之后,滤波器单元159可执行解块操作以减少与CU相关联的成块假影。在滤波器单元159执行解块操作以减少与CU相关联的成块假影之后,视频解码器30可将CU的视频块存储在经解码图片缓冲器160中。经解码图片缓冲器160可提供用于后续运动补偿、帧内预测和显示装置(例如,图1的显示装置32)上的呈现的参考图片。举例来说,视频解码器30可基于经解码图片缓冲器160中的视频块对其它CU的PU执行帧内预测或帧间预测操作。
图4是说明实例运动补偿操作200的流程图。例如视频编码器20或视频解码器30的视频译码器可执行运动补偿操作200。视频译码器可执行运动补偿操作200以产生当前PU的预测视频块。
在视频译码器开始运动补偿操作200之后,视频译码器可确定当前PU的预测模式是否为跳过模式(202)。如果当前PU的预测模式不是跳过模式(202的“否”),那么视频译码器可确定当前PU的预测模式为帧间模式且当前PU的帧间预测模式为合并模式(204)。如果当前PU的预测模式是跳过模式(202的“是”),或如果当前PU的预测模式为帧间模式且当前PU的帧间预测模式为合并模式(204的“是”),那么视频译码器可产生当前PU的合并候选者列表(206)。合并候选者列表可包含多个合并候选者。合并候选者的每一者指定运动信息的集合,例如一或多个运动向量、一或多个参考图片索引、列表0预测旗标和列表1预测旗标。合并候选者列表可包含一或多个单向合并候选者或双向合并候选者。在一些实例中,视频译码器可执行下文关于图6描述的实例操作以产生合并候选者列表。
在产生合并候选者列表之后,视频译码器可确定合并候选者列表中的选定合并候选者(208)。如果视频译码器是视频编码器,那么视频译码器可基于速率-失真分析从合并候选者列表选择合并候选者。如果视频译码器是视频解码器,那么视频译码器可基于识别合并候选者列表中的选定合并候选者的位置的语法元素(例如,merge_idx)选择合并候选者。编码器可在编码过程中产生语法元素(例如,merge_idx)作为经译码位流的一部分,而解码器可接收并解译语法元素作为解码过程的一部分。
在任一情况下,视频译码器可接着基于选定合并候选者指定的运动信息确定当前PU的运动信息(210)。运动信息可包含一或多个运动向量和参考图片索引。视频译码器可以各种方式基于选定合并候选者指定的运动信息确定当前PU的运动信息。举例来说,视频译码器可确定当前PU的运动信息与选定合并候选者指定的运动信息相同。
如果当前PU的帧间预测模式不是合并模式(204的“否”),那么视频译码器可使用AMVP模式确定当前PU的运动信息(212)。下文详细描述的图8是说明用于使用AMVP模式确定PU的运动信息的实例操作。
在确定当前PU的运动信息之后,视频译码器可确定当前PU是否限于单向帧间预测(214)。视频译码器可以各种方式确定当前PU是否限于单向帧间预测。举例来说,如果当前PU的大小特性小于阈值,那么视频译码器可确定当前PU限于单向帧间预测。在此实例中,如果PU的大小为或8x4、4x8或更小,那么视频译码器可确定当前PU限于单向帧间预测。在另一实例中,如果视频译码器为视频解码器,那么视频解码器可基于所接收位流中的语法元素确定当前PU限于单向帧间预测。
响应于确定当前PU限于单向帧间预测(214的“是”),视频译码器可基于与当前PU的运动信息相关联的不超过一个参考块产生当前PU的预测视频块(216)。如上文指示,参考块可由选定合并候选者指定的运动信息识别或从选定合并候选者指定的运动信息所识别的参考样本合成。
另一方面,响应于确定当前PU不限于单向帧间预测(214的“否”),视频译码器可基于与当前PU的运动信息相关联的一或多个参考块产生当前PU的预测视频块(218)。如上文指示,所述一或多个参考块可由选定合并候选者指定的运动信息识别和/或从选定合并候选者指定的运动信息所识别的参考样本合成。
图5是说明另一实例运动补偿操作270的流程图。例如视频编码器20或视频解码器30等视频译码器可执行运动补偿操作270以产生当前PU的预测视频块。视频译码器可执行运动补偿操作270作为执行运动补偿操作200的替代。
在视频译码器开始运动操作270之后,视频译码器可确定当前PU的预测模式是否为跳过模式(272)。如果当前PU的预测模式不是跳过模式(272的“否”),那么视频译码器可确定当前PU的预测模式为帧间模式且当前PU的帧间预测模式为合并模式(273)。如果当前PU的预测模式为跳过模式(272的“是”)或如果当前PU的预测模式为帧间模式且当前PU的帧间预测模式为合并模式(273的“是”),那么视频译码器可确定当前PU是否限于单向帧间预测(274)。如果当前PU限于单向帧间预测(274的“是”),那么视频译码器可产生当前PU的合并候选者列表使得合并候选者列表不包含双向合并候选者(276)。视频译码器可使用图6中说明的实例操作产生当前PU的合并候选者列表。
另一方面,如果当前PU不限于单向帧间预测(274的“否”),那么视频译码器可产生可包含单向和双向合并候选者的合并候选者列表(278)。在一些实例中,视频译码器可执行下文参看图6描述的实例操作以产生合并候选者列表。因此,如果当前PU不限于单向帧间预测,那么合并候选者列表可包含单向合并候选者和双向合并候选者。
在产生当前PU的合并候选者列表之后,视频译码器可确定合并候选者列表中的选定合并候选者(280)。如果视频译码器是视频编码器,那么视频译码器可基于速率-失真分析从合并候选者列表选择合并候选者。如果视频译码器是视频解码器,那么视频译码器可基于识别合并候选者列表中的选定合并候选者的位置的语法元素(例如,merge_idx)选择合并候选者。
视频译码器可接着基于选定合并候选者指定的运动信息确定当前PU的运动信息(282)。选定合并候选者指定的运动信息可指定一或多个运动向量和一或多个参考图片索引。视频译码器可以各种方式基于选定合并候选者指定的运动信息确定当前PU的运动信息。举例来说,视频译码器可确定当前PU的运动信息与选定合并候选者指定的运动信息相同。
如果当前PU的帧间预测模式不是合并模式(273的“否”),那么视频译码器可使用AMVP模式确定当前PU的运动信息(284)。下文详细描述的图8是说明用于使用AMVP模式确定PU的运动信息的实例操作。
在确定当前PU的运动信息之后,视频译码器可产生当前PU的预测视频块(286)。因为在当前PU限于单向帧间预测的情况下合并候选者列表仅包含单向合并候选者,所以选定合并候选者仅与单一参考块相关联。因此,如果当前PU在B切片中且限于单向帧间预测,那么当前PU的预测视频块可基于与选定合并候选者指定的运动信息相关联的不超过一个参考块。
另一方面,如果当前PU不限于单向帧间预测,那么合并候选者列表可包含单向合并候选者和双向合并候选者。因为合并候选者列表可包含单向合并候选者和双向合并候选者,所以选定合并候选者可与一个或两个参考块相关联。因此,如果当前PU在B切片中且不限于单向帧间预测,那么当前PU的预测视频块可基于与选定合并候选者相关联的一或多个参考块。
图6是说明用于产生合并候选者列表的实例操作300的流程图。例如视频编码器20或视频解码器30等视频译码器可执行操作300以产生当前PU的合并候选者列表。视频译码器可在当前PU的预测模式为跳过模式时或当当前PU的预测模式为帧间模式且当前PU的帧间预测模式为合并模式时执行操作300。
在视频译码器开始操作300之后,视频译码器可确定空间合并候选者的运动信息和可用性(302)。视频译码器可基于覆盖空间上与当前PU相邻的位置的PU的运动信息确定空间合并候选者的运动信息。举例来说,视频译码器可基于覆盖当前PU的左侧、左下侧、左上侧和右上侧的PU的运动信息确定空间合并候选者的运动信息。
视频译码器可以各种方式确定空间合并候选者的可用性。举例来说,如果空间合并候选者对应于经帧内预测的位于当前帧外部或位于当前切片外部的PU,那么视频译码器可确定空间合并候选者不可用。此外,如果空间合并候选者的运动信息与另一空间合并候选者的运动信息相同,那么视频译码器可确定所述空间合并候选者不可用。
另外,视频译码器可确定时间合并候选者的运动信息和可用性(304)。时间合并候选者可指定与当前PU搭配但在与当前PU不同的图片中的PU的运动信息。视频译码器可以各种方式确定时间合并候选者的可用性。举例来说,如果时间合并候选者对应于经帧内预测的PU,那么视频译码器可确定所述时间合并候选者不可用。
在产生空间合并候选者和时间合并候选者之后,视频译码器可将空间合并候选者和时间合并候选者的可用者包含在当前PU的合并候选者列表中(306)。如果合并候选者可用,那么视频译码器可将空间或时间合并候选者包含在合并候选者列表中,且如果合并候选者不可用,那么视频译码器可从合并候选者列表排除所述合并候选者。通过从合并候选者列表排除不可用合并候选者,视频译码器可实际上执行从合并候选者列表删除(例如,省略)不可用合并候选者的删除过程。所述删除可由编码器和解码器两者执行使得编码器和解码器使用相同合并候选者列表,且相对于所述相同合并候选者列表产生并解译语法元素。
在一些实例中,视频译码器产生合并候选者列表使得合并候选者列表仅包含单向合并候选者。在一些此类实例中,视频译码器可确定双向合并候选者不可用。即,如果合并候选者指定列表0运动向量和列表1运动向量,那么视频译码器可确定合并候选者不可用。因此,如果当前PU限于单向预测,那么视频译码器可确定单向合并候选者可用,而双向合并候选者不可用。因为视频译码器不可将不可用合并候选者包含在合并候选者列表中,所以合并候选者列表可在一些实例中仅包含单向合并候选者。在此实例中,视频译码器可实际上执行从合并列表删除双向合并候选者的删除过程。
在其中视频译码器产生合并候选者列表使得合并候选者列表仅包含单向合并候选者的其它实例中,视频译码器可将双向合并候选者转换为单向合并候选者,且接着将单向合并候选者的可用者包含在合并候选者列表中。在此类实例中,如果单向合并候选者与已添加到合并候选者列表的单向合并候选者相同,那么视频译码器可不将所述单向合并候选者添加到合并候选者列表。以此方式,视频译码器可从合并候选者列表删除复制的单向合并候选者。通过在从合并候选者列表删除复制的单向合并候选者之前将双向合并候选者转换为单向合并候选者,视频译码器可能够在删除之后避免合并候选者列表中的冗余合并候选者。在删除复制的单向合并候选者之前将双向合并候选者转换为单向合并候选者可增加视频译码器的硬件复杂性。另外,视频译码器可将相同的多个双向合并候选者转换为单向合并候选者。
在其它实例中,视频译码器可初始将可用双向合并候选者包含在当前PU的合并候选者列表中。视频译码器可接着从合并候选者列表删除复制的合并候选者。在视频译码器已产生合并候选者列表之后,视频译码器可从合并候选者列表确定选定合并候选者,并在选定合并候选者为双向合并候选者的情况下将选定合并候选者转换为单向合并候选者。在此实例中,视频译码器可通过仅使用列表0运动向量或列表1运动向量指示的参考块产生当前PU的预测视频块而将选定双向合并候选者转换为单向合并候选者。
与在从合并候选者列表删除复制的合并候选者之前将双向合并候选者转换为单向合并候选者相比,在从合并候选者列表删除复制的合并候选者之后将选定双向合并候选者转换为单向合并候选者可仅涉及单一转换,与多次转换形成对比。举例来说,如果转换在删除复制的合并候选者之后发生,选定合并候选者是合并候选者列表中的第三合并候选者,且第三合并候选者是双向合并候选者,那么视频译码器可仅将第三合并候选者转换为单向合并候选者。在此实例中,如果转换在删除复制的合并候选者之前发生,选定合并候选者是合并候选者列表中的第三合并候选者,且第三合并候选者是双向合并候选者,那么视频译码器可归因于在转换之后执行删除操作而必须在视频译码器能够确定选定合并候选者之前转换三个双向合并候选者。
视频译码器可依据视频译码器在从合并候选者列表删除复制的合并候选者之前还是之后将双向合并候选者转换为单向合并候选者而产生不同合并候选者列表。举例来说,视频译码器可通过取双向合并候选者的列表0运动向量并忽略双向合并候选者的列表1运动向量而将双向合并候选者转换为单向合并候选者。在此实例中,第一合并候选者可为单向的且可指定等于值MV1的列表0运动向量。在此实例中,第二合并候选者可为双向的且可指定等于值MV1的列表0运动向量和等于值MV2的列表1运动向量。第一和第二合并候选者可指定相同列表0参考图片索引。在此实例中,如果视频译码器在从合并候选者列表删除复制的合并候选者之前将第二合并候选者转换为单向合并候选者,那么可存在等于MV1的两个单向合并候选者。因此,视频译码器可删除从第二合并候选者产生的单向合并候选者,因为其在第一合并候选者上是冗余的。因此,视频译码器可将仅一个合并候选者(例如,第一合并候选者)包含在合并候选者列表中。
然而,在前一段落的实例中,如果视频译码器在从合并候选者列表删除复制的合并候选者之后将第二合并候选者转换为单向合并候选者,那么视频译码器可将第一和第二合并候选者两者包含在合并候选者列表中。在将第一和第二合并候选者包含在合并候选者列表中之后,视频译码器可通过取(即,保持)第二合并候选者的列表0运动向量且忽略第二合并候选者的列表1运动向量而将第二合并候选者转换为单向合并候选者。因此,合并候选者列表可实际上包含两个合并候选者,其两者均指定等于MV1的列表0运动向量。
在将可用合并候选者包含在合并候选者列表中之后,视频译码器可确定当前PU是否在B切片中(308)。响应于确定当前PU在B切片中(308的“是”),视频译码器可执行产生零个或多个人为合并候选者且将人为合并候选者包含在合并候选者列表中的过程(310)。下文详细描述的图7说明用于产生人为合并候选者的实例过程。
响应于确定当前PU不在B切片中(308的“否”),或在执行产生人为合并候选者的过程之后,视频译码器可确定合并候选者列表中的合并候选者的数目小于合并候选者的最大数目(312)。如果合并候选者列表中的合并候选者的数目不小于合并候选者的最大数目(312的“否”),那么视频译码器已完成合并候选者列表。
然而,响应于确定合并候选者列表中的合并候选者的数目小于合并候选者的最大数目(312的“是”),视频译码器可产生零值合并候选者(314)。如果当前PU在P切片中,那么零值合并候选者可指定具有等于零的量值的列表0运动向量。如果当前PU在B切片中且当前PU不限于单向帧间预测,那么零值合并候选者可指定具有等于零的量值的列表0运动向量和具有等于零的量值的列表1运动向量。在一些实例中,如果当前PU在B切片中且当前PU限于单向帧间预测,那么零值合并候选者可指定具有等于零的量值的列表0运动向量或列表1运动向量。视频译码器可接着将零值合并候选者包含在合并候选者列表中(316)。
在将零值合并候选者包含在合并候选者列表中之后,视频译码器可再次确定合并候选者列表中的合并候选者的数目是否小于合并候选者的最大数目(312),且如果否,那么视频译码器可产生额外零值合并候选者。以此方式,视频译码器可继续产生零值合并候选者且将零值合并候选者包含在合并候选者列表中,直到合并候选者列表中的合并候选者的数目等于合并候选者的最大数目为止。
图7是说明用于产生人为合并候选者的实例过程350的流程图。例如视频编码器20或视频解码器30等视频译码器可执行产生人为合并候选者以供包含在当前PU的合并候选者列表中的过程350。
在视频译码器开始过程350之后,视频译码器可确定是否产生人为合并候选者(352)。视频译码器可以各种方式确定是否产生人为合并候选者。举例来说,视频译码器可确定合并候选者列表中的人为合并候选者的数目是否等于可基于合并候选者列表中的原始合并候选者产生的唯一人为候选者的总数目。原始合并候选者可为指定除当前PU以外的PU的运动信息的合并候选者。此外,在此实例中,视频译码器可确定合并候选者列表是否包含最大数目的合并候选者。在此实例中,如果这些条件两者均为假,那么视频译码器可作出产生人为合并候选者的确定。
如果视频译码器作出产生人为合并候选者的确定(352的“是”),那么视频译码器可确定当前PU是否限于单向帧间预测(354)。如上文描述,视频译码器可以各种方式确定当前PU是否限于单向帧间预测。举例来说,视频译码器可基于当前PU的大小特性确定当前PU是否限于单向帧间预测。在另一实例中,视频译码器可基于当前树块、当前CU或当前PU的语法元素中或切片标头、PPS、APS、SPS中或另一参数集中指示的参数确定当前PU是否限于单向帧间预测。在一些实例中,树块中的参数可指定与树块相关联的所有PU限于单向帧间预测。在一些实例中,CU中的参数可指定与CU相关联的所有PU限于单向帧间预测。在一些实例中,PPS中的参数可指定与PPS相关联的所有PU限于单向帧间预测。在一些实例中,APS中的参数可指定与APS相关联的所有PU限于单向帧间预测。在一些实例中,SPS中的参数可指定与同SPS相关联的序列中的图片相关联的所有PU限于单向帧间预测。
响应于确定当前PU限于单向帧间预测(354的“是”),视频译码器可产生人为单向合并候选者(356)。在产生人为单向合并候选者之后,视频译码器可将人为单向合并候选者包含在合并候选者列表中(358)。在将人为单向合并候选者包含在合并候选者列表中之后,视频译码器可确定是否产生另一人为合并候选者(352),且如果是,那么产生另一人为合并候选者。
视频译码器可以各种方式产生人为单向合并候选者。举例来说,视频译码器可通过首先取已在候选者列表中的一对单向合并候选者而产生人为单向合并候选者。第一和第二单向合并候选者可分别指定运动向量MV1和MV2。在此实例中,视频译码器可接着根据第一单向合并候选者指定的参考帧与第二单向合并候选者指定的参考帧之间的时间差缩放MV2。在此实例中,视频译码器可产生指定MV2的经缩放版本的人为单向合并候选者。举例来说,在此实例中,与第一单向合并候选者相关联的参考图片可在当前图片之后一个图片发生,且与第二单向合并候选者相关联的参考图片可在当前图片之后四个图片发生。在此实例中,视频译码器可将MV2的水平和垂直分量两者除以四且使用此经缩放MV2与对应于MV1的参考图片索引一起作为人为候选者。可基于MV2对MV1执行类似缩放。
在另一实例中,视频译码器可产生指定双向合并候选者指定的运动向量的一者的人为单向合并候选者。举例来说,双向合并候选者可指定列表0运动向量和列表1运动向量。在此实例中,视频译码器可产生指定列表0运动向量但不指定列表1运动向量的人为单向合并候选者。在此实例中,视频译码器可产生指定列表1运动向量但不指定列表0运动向量的另一人为单向合并候选者。以此方式,视频译码器可通过将双向合并候选者分离为两个单向合并候选者(一个来自列表0运动向量且另一个来自列表1运动向量)而从双向空间或时间合并候选者产生单向人为合并候选者。视频译码器可将单向合并候选者的任一者或两者包含在合并候选者列表中。换句话说,视频译码器可产生人为单向合并候选者使得人为单向合并候选者指定双向合并候选者指定的运动向量。
在其中视频译码器基于双向合并候选者指定的运动向量产生人为单向合并候选者的实例中,视频译码器可根据各种次序将人为单向合并候选者添加到合并候选者列表。举例来说,视频译码器可基于第一双向合并候选者的列表0运动向量添加人为单向合并候选者,接着基于第一双向合并候选者的列表1运动向量添加人为单向合并候选者,接着基于第二双向合并候选者的列表0运动向量添加人为单向合并候选者,接着基于第二双向合并候选者的列表1运动向量添加人为单向合并候选者。以此类推。
如果当前PU不限于单向帧间预测(354的“否”),那么视频译码器可产生人为双向合并候选者(360)。如上文提及,视频译码器可基于例如PU的大小特性、参数等各种因素确定当前PU是否限于单向帧间预测。视频译码器可以各种方式产生人为双向合并候选者。举例来说,视频译码器可选择合并候选者列表中的两个合并候选者的组合。在此实例中,视频译码器可确定是否选定合并候选者的第一者指定列表0中的参考图片,是否选定合并候选者的第二者指定列表1中的参考图片,以及是否所指定参考图片具有不同图片次序计数。如果这些条件的每一者为真,那么视频译码器可产生指定组合中的第一合并候选者的列表0运动向量和组合中的第二合并候选者的列表1运动向量的人为双向合并候选者。在一些实例中,例如图4的实例中,其中合并候选者列表可包含单向合并候选者和双向合并候选者,过程350不包含动作354、356和358。而是,视频译码器可产生B切片中的PU的合并候选者列表中的人为双向合并候选者。
在产生人为双向合并候选者之后,视频译码器可将人为双向合并候选者包含在当前PU的合并候选者列表中(362)。视频译码器可接着确定是否产生另一人为合并候选者(352),等等。
图8是说明用于使用AMVP模式确定PU的运动信息的实例操作400的流程图。例如视频编码器20或视频解码器30等视频译码器可执行操作400以使用AMVP模式确定PU的运动信息。
在视频译码器开始操作400之后,视频译码器可确定当前PU的帧间预测是否基于列表0(402)。如果当前PU的帧间预测基于列表0(402的“是”),那么视频译码器可产生当前PU的列表0MV预测器候选者列表(404)。列表0MV预测器候选者列表可包含两个列表0MV预测器候选者。列表0MV预测器候选者的每一者可指定列表0运动向量。
在产生列表0MV预测器候选者列表之后,视频译码器可确定列表0MV预测器候选者列表中的选定列表0MV预测器候选者(406)。视频译码器可基于列表0MV预测器旗标(“mvp_10_flag”)确定选定列表0MV预测器候选者。视频译码器可接着基于当前PU的列表0MVD以及选定列表0MV预测器候选者指定的列表0运动向量确定当前PU的列表0运动向量(408)。
此外,在确定当前PU的帧间预测不基于列表0(402的“否”)之后,或在确定当前PU的列表0运动向量(408)之后,视频译码器可确定当前PU的帧间预测是否基于列表1或PU是否经双向帧间预测(410)。如果当前PU的帧间预测不基于列表1且当前PU未经双向帧间预测(410的“否”),那么视频译码器已完成使用AMVP模式确定当前PU的运动信息。响应于确定当前PU的帧间预测基于列表1或当前PU经双向帧间预测(410的“是”),视频译码器可产生当前PU的列表1MV预测器候选者列表(412)。列表1MV预测器候选者列表可包含两个列表1MV预测器候选者。列表0MV预测器候选者的每一者可指定列表1运动向量。
在产生列表1MV预测器候选者列表之后,视频译码器可确定列表1MV预测器候选者列表中的选定列表1MV预测器候选者(414)。视频译码器可基于列表1MV预测器旗标(“mvp_11_flag”)确定选定列表1MV预测器候选者。视频译码器可接着基于当前PU的列表1MVD以及选定列表1MV预测器候选者指定的列表1运动向量确定当前PU的列表1运动向量(416)。
在一些实例中,视频译码器可不将双向MV预测器候选者添加到列表0和列表1MV预测器候选者列表。换句话说,如果MV预测器候选者指定列表0运动向量和列表1运动向量,那么视频译码器可从列表0和列表1MV预测器候选者列表排除MV预测器候选者。而是,视频译码器可仅将单向MV预测器候选者添加到列表0和列表1MV预测器候选者列表。视频译码器可通过检查每一可能且可用MV预测器候选者均为单向的且仅将单向MV预测器候选者包含在MV预测器候选者列表中而实现此目的。
图9是说明根据本发明的一或多个技术的实例视频译码操作450的流程图。例如视频编码器20或视频解码器30等视频译码器可执行操作450以对视频数据进行译码。
如上文描述,许多应用的带宽或计算能力可能有限。因此,可能需要限制双向预测的使用。在HEVC工作草案8中,合并/AMVP模式针对P和B切片两者应用且可涉及单向和双向运动向量两者。然而,出于带宽减小的目的,针对8x4和4x8PU,双向MV可转换为单向L0MV。另外,针对8x4和4x8PU,AMVP模式中的帧间预测信令可仅限于单向。此外,在HEVC工作草案8中,仅针对最小CU(SCU)大小的CU且在SCU大小不等于8x8的情况下应用Inter_NxN模式。在Inter_NxN分割模式中,CU分割为四个相等大小的PU,其每一者经帧间预测。
然而,如果SCU大小不是8x8,那么可针对根据Inter_NxN分割模式分割的CU中的每一PU信令双向MV。针对根据Inter_NxN分割模式分割的CU中的每一PU信令双向MV可使Inter_NxN分割模式在存储器带宽方面为最差情况。本发明的技术可解决此间题。
如图9的实例中说明,视频译码器可产生B切片中的CU的PU的MV候选者列表,其中CU分割为四个相等大小的PU(452)。MV候选者列表当在合并模式中信令PU的运动信息时可为合并候选者列表,或当在AMVP模式中信令PU的运动信息时可为MV预测器候选者列表。CU的每一PU可经帧间预测。因此,CU根据Inter_NxN分割模式分割为PU。
视频译码器可将MV候选者列表中的双向MV候选者转换为单向MV候选者(454)。即,视频译码器可针对Inter_NxN模式(例如,针对Inter_NxN模式中的第一PU)将PU的双向MV转换为单向MV。
当视频译码器将双向MV候选者转换为单向MV候选者时,MV候选者列表包含单向MV候选者。依据MV候选者列表为合并候选者列表还是MV预测器候选者列表,双向MV候选者可为双向合并候选者或MV预测器候选者。同样,依据MV候选者列表为合并候选者列表还是MV预测器候选者列表,单向MV候选者可为单向合并候选者或单向MV预测器候选者。
视频译码器可使用上文描述的技术的任一者将双向MV候选者转换为单向MV候选者。此外,在一些实例中,视频译码器可限制参考图片索引使得经Inter_NxN分割的CU的所有PU的所有MV候选者相同。换句话说,Inter_NxN的PU中使用的参考索引可限于对于Inter_NxN模式中的所有PU相同以进一步减小带宽。视频译码器可使用上文描述的技术限制参考图片索引。
在一些实例中,视频译码器可仅当使用AMVP模式信令PU的运动信息时将双向MV候选者转换为单向MV候选者。以此方式,帧间方向信令可仅针对AMVP模式限于单向。举例来说,双向MV可在构建合并列表之后转换为单L0MV,且可针对AMVP模式限制双预测应用,且另外,针对AMVP模式的帧间方向的信令可仅限于单向。此限制到Inter_NxN分割模式的扩展可能合乎需要,因为视频译码器可再使用针对8x4和4x8PU的实施逻辑。
在一些实例中,视频译码器可响应于确定CU具有等于SCU大小的大小而将双向MV候选者转换为单向MV候选者。即,双到单转换(以及在一些实例中,参考图片索引限制)可针对Inter_NxN模式对于等于SCU大小的CU执行。或者,针对Inter_NxN模式,双到单转换可针对所有CU的Inter_NxN模式执行,而不管CU大小如何。
在一些实例中,视频译码器可依据CU的分割模式和SCU大小选择性地将双向MV候选者转换为单向MV候选者。换句话说,可根据或依据分割模式结合SCU大小进行双向MV限制。举例来说,双向MV限制可依据分割模式为2Nx2N、2NxN、Nx2N、NxN还是不对称运动分割。举例来说,如果SCU大小为32x32,那么视频译码器可针对Inter_NxN转换双向MV,且另外在CU大小等于SCU大小的情况下针对2NxN和Nx2N转换双向MV。此限制的实施可比比较PU大小简单,因为可仅需要检查分割模式和CU大小。
在此类实例中,视频译码器可响应于确定CU根据2Nx2N、2NxN或Nx2N分割模式分割为PU或在AMVP模式中信令CU的PU的运动信息,将CU的PU的MV候选者列表中的双向MV候选者转换为单向MV候选者。视频译码器可确定CU的PU的MV候选者列表中的选定MV候选者,且至少部分基于CU的PU的MV候选者列表中的选定MV候选者指定的运动信息所指示的一或多个参考块产生CU的PU的预测视频块。
在一些实例中,视频译码器可将PU的MV候选者列表中的每一双向MV候选者转换为单向MV候选者。此外,在一些实例中,视频译码器可针对Inter_NxN模式中的所有四个PU执行此转换。即,视频译码器可将根据Inter_NxN分割模式分割的CU的PU的每一者的MV候选者列表中的每一双向MV候选者转换为单向MV候选者。在一些实例中,视频译码器可针对视频序列的每一Inter_NxN CU的每一PU将MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
随后,视频译码器可确定MV候选者列表中的选定MV候选者(456)。视频译码器可使用上文描述的技术的任一者确定选定MV候选者。此外,视频译码器可至少部分基于选定MV候选者指定的运动信息所指示的一或多个参考块产生PU的预测视频块(458)。视频译码器可根据上文描述的技术的任一者产生预测视频块。在其中视频译码器对视频数据进行解码的实例中,视频译码器可至少部分基于所预测的视频块输出经解码视频数据。在其中视频译码器对视频数据进行编码的实例中,视频译码器可至少部分基于预测视频块输出经编码视频数据。
图10是说明根据本发明的一或多个技术的实例候选者列表产生操作500的流程图。如上文描述,存在单向和双向预测模式。单向预测模式和双向预测模式可分别称为单预测和双预测。单预测与双预测之间的差异是,在单预测中,仅一个方向(即,列表0或列表1的一者)用于帧间预测。在双预测中,两个方向(即,列表0和列表1)用于帧间预测,且帧间预测可界定为从两个单向运动向量获得的预测器之和。
在特定例子中,MV候选者列表(即,合并候选者列表或MV预测器候选者列表)中的双向MV候选者(即,双向合并候选者或双向MV预测器候选者)指定列表0和列表1中相同的参考图片,且另外,双向MV候选者的运动向量相等。在此类例子中,对应于列表0和列表1的预测器相同,且双预测模式中的预测器的加权和提供与来自从列表0或列表1的单预测的结果几乎相同的结果。在此类例子中,双预测与从列表0或列表1的单预测之间的唯一差异可归因于舍入误差。
一些视频译码器在运动补偿期间将双预测简化为单预测。即,如果视频块(例如,PU)经双预测,视频块的运动信息指示列表0和1中的相同参考图片且视频块的运动向量相等,那么视频译码器可基于列表0参考图片索引和列表0运动向量或基于列表1参考图片索引和列表1运动向量产生预测视频块。然而,运动补偿期间此双预测到单预测的转换不会将视频块的状态从经双预测块改变为经单预测块。因此,另一视频块的MV候选者列表可包含基于视频块的运动信息的双向MV候选者。换句话说,此转换不会改变指派到当前块的模式(即,双预测模式),其用作稍后译码块的运动向量候选者或预测器。
根据本发明的一或多个技术,如果双向MV候选者指示列表0和列表1中相同的参考图片且双向MV候选者的运动向量彼此相等,那么视频译码器可在MV候选者列表构建期间将双向MV候选者转换为单向MV候选者。如果原先双向MV候选者的一者经选择用于当前视频块的运动信息中,那么将单向运动信息指派到当前视频块,而非双向运动信息。以此方式,所述转换针对合并和AMVP预测模式两者对当前视频块中的MV候选者列表中的每一候选者的实际预测模式和运动向量执行。因此,可不需要在运动补偿阶段执行双向到单向转换。此外,当此类转换发生时,源自此类转换的单预测运动向量可指派到当前块且可用于下一块合并或AMVP运动向量候选者列表构建。
当视频译码器将双向MV候选者转换为单向MV候选者时,视频译码器可保持MV候选者的列表0信息或MV候选者的列表1信息。换句话说,可应用到列表0或列表1的转换。在一些实例中,视频译码器可根据各种条件在保持MV候选者的列表0信息与MV候选者的列表1信息之间切换。即,可根据一些条件在PU层级下切换到列表0或列表1的转换。
如图10的实例中说明,视频译码器(例如,视频编码器20或视频解码器30)可产生MV候选者列表的初始版本(502)。MV候选者列表可为合并候选者列表或AMVP预测器候选者列表。视频译码器可接着确定是否MV候选者列表中的每一双向MV候选者已经检查(504)。如果MV候选者列表中的每一双向MV候选者尚未经检查(504的“否”),那么视频译码器可确定MV候选者列表中的先前未经检查双向MV候选者是否具有相等运动向量且指示在列表0和列表1两者中相同参考图片(506)。响应于确定双向MV候选者不具有相等运动向量或双向MV候选者在列表0和列表1中的参考图片不相同(506的“否”),视频译码器可再次确定是否每一双向MV候选者已经检查(504)。
另一方面,如果双向MV候选者的运动向量相等且双向MV候选者在列表0和列表1中的参考图片相同(506的“是”),那么视频译码器可将双向MV候选者转换为单向MV候选者(508)。单向MV候选者替代MV候选者列表中的双向MV候选者。视频译码器可根据本发明中描述的技术的任一者将双向MV候选者转换为单向MV候选者。在将双向MV候选者转换为单向MV候选者之后,视频译码器可再次确定是否每一双向MV候选者已经检查(504)。
响应于确定MV候选者列表中的每一双向MV候选者已经检查(504的“是”),视频译码器可删除MV候选者列表(510)。视频译码器可以各种方式删除MV候选者列表,包含本发明中其它地方描述的方式。视频译码器可在合并模式和AMVP模式两者中执行删除过程。尽管图10的实例展示视频译码器在将适用的双向MV候选者转换为单向MV候选者之后删除MV候选者列表,但视频译码器可在其它实例中在将适用的双向MV候选者转换为单向MV候选者之前删除MV候选者列表。在删除之前或之后执行转换之间的差异可从本发明中其它地方对删除的论述了解。
图10的技术可结合本发明中描述的其它技术或与所述其它技术分离实施。以此方式,视频译码器可确定对于视频块的列表0和列表1中的参考帧相同,其中视频块为经双向预测视频块。此外,视频译码器可产生视频块的运动向量候选者列表且转换所述运动向量候选者列表使得运动向量候选者列表中的一或多个双向运动向量候选者转换为单向运动向量候选者。另外,视频译码器可从经转换的运动向量候选者列表确定运动向量候选者。视频译码器可使用所确定的运动向量候选者对视频块执行运动补偿,借此在运动补偿期间不执行双向到单向转换。举例来说,在运动补偿期间不执行双向到单向转换以产生PU的预测视频块,且在PU用作用于对另一视频块进行译码的运动向量候选者块的情况下,PU具有单向运动信息而非双向运动信息。在视频块用作用于对另一视频块进行译码的运动向量候选者块的情况下,所述视频块具有单向运动信息而非双向运动信息。视频译码器可删除运动向量候选者列表使得运动向量候选者列表中没有运动向量候选者是相同的。
在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果实施在软件中,那么所述功能可作为一或多个指令或代码存储在计算机可读媒体上或经由计算机可读媒体发射,且由基于硬件的处理单元执行。计算机可读媒体可包含对应于例如数据存储媒体等有形媒体的计算机可读存储媒体,或包含促进将计算机程序从一处转移到另一处(例如,根据通信协议)的任何媒体的通信媒体。以此方式,计算机可读媒体通常可对应于(1)非暂时性有形计算机可读存储媒体,或(2)例如信号或载波等通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索指令、代码和/或数据结构以用于实施本发明中描述的技术的任何可用媒体。计算机程序产品可包含计算机可读媒体。
借助实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置,或其它磁性存储装置、快闪存储器,或可用于存储指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。同样,恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源发射指令,那么同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。然而,应理解,计算机可读存储媒体和数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而是针对非暂时性有形存储媒体。如本文中所使用,磁盘和光盘包含紧密光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘使用激光以光学方式再现数据。上文的组合也应包含在计算机可读媒体的范围内。
指令可由例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA),或其它等效集成或离散逻辑电路等一或多个处理器执行。因此,如本文中所使用的术语“处理器”可指代上述结构或适于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文描述的功能性可提供在经配置用于编码和解码的专门硬件和/或软件模块内,或并入在组合式编解码器中。并且,可将所述技术完全实施于一或多个电路或逻辑元件中。
本发明的技术可实施在广泛多种装置或设备中,包含无线手持机、集成电路(IC)或IC组(例如,芯片组)。本发明中描述各个组件、模块或单元以强调经配置以执行所揭示的技术的装置的功能方面,且不一定要求由不同硬件或软件单元实现。而是,如上所述,各个组件、模块和单元可组合在编解码器硬件单元中或由互操作硬件单元(包含如上文描述的一或多个处理器)结合适宜的软件和/或固件的集合提供。
已描述各个实例。这些和其它实例均在所附权利要求书的范围内。

Claims (41)

1.一种用于对视频数据进行编码的方法,所述方法包括:
产生B切片中的译码单元CU的预测单元PU的运动向量MV候选者列表,其中所述CU分割为四个相等大小的PU;
将所述MV候选者列表中的双向MV候选者转换为单向MV候选者;
确定合并候选者列表中的选定MV候选者;以及
至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块。
2.根据权利要求1所述的方法,其进一步包括将所述MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
3.根据权利要求1所述的方法,其进一步包括针对所述CU的所述PU的每一者将MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
4.根据权利要求1所述的方法,其进一步包括针对视频序列的每一Inter_NxN CU的每一PU将MV候选者列表中的每一双向MV候选者转换为单向MV候选者,其中每一Inter_NxN CU分割为四个相等大小的PU且使用帧间预测译码。
5.根据权利要求1所述的方法,其中将所述双向MV候选者转换为所述单向MV候选者包括响应于确定所述CU具有等于最小译码单元SCU大小的大小将所述双向MV候选者转换为所述单向MV候选者。
6.根据权利要求1所述的方法,其中所述CU是第一CU,且所述方法进一步包括:产生第二CU的PU的MV候选者列表;
响应于确定所述第二CU根据2Nx2N、2NxN或Nx2N分割模式分割为PU或所述第二CU的所述PU的运动信息在先进运动向量预测AMVP模式中信令,将所述第二CU的所述PU的所述MV候选者列表中的双向MV候选者转换为第二单向MV候选者;
确定所述第二CU的所述PU的所述MV候选者列表中的选定MV候选者;以及
至少部分基于所述第二CU的所述PU的所述MV候选者列表中的所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述第二CU的所述PU的预测视频块。
7.根据权利要求1所述的方法,其中转换所述双向MV候选者包括仅当使用AMVP模式信令所述PU的运动信息时将所述双向MV候选者转换为所述单向MV候选者。
8.根据权利要求1所述的方法,其进一步包括至少部分基于所述预测视频块输出经编码视频数据。
9.根据权利要求1所述的方法,其中所述方法在移动计算装置上执行。
10.根据权利要求1所述的方法,其中:
所述双向MV候选者是第一双向MV候选者,所述单向MV候选者是第一单向MV候选者,
产生所述MV候选者列表包括响应于确定所述MV候选者列表中的第二双向MV候选者具有相等运动向量且指示列表0和列表1中相同的参考图片,将所述第二双向MV候选者转换为第二单向MV候选者,
在运动补偿期间不执行双向到单向转换以产生所述预测视频块,且
当所述PU用作用于对另一视频块进行译码的运动向量候选者块时,所述PU具有单向运动信息而非双向运动信息。
11.一种视频编码装置,其包括经配置以进行以下操作的一或多个处理器:
产生B切片中的译码单元CU的预测单元PU的运动向量MV候选者列表,其中所述CU分割为四个相等大小的PU;
将所述MV候选者列表中的双向MV候选者转换为单向MV候选者;
确定所述MV候选者列表中的选定MV候选者;以及
至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块。
12.根据权利要求11所述的视频编码装置,其中所述一或多个处理器经配置以将所述MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
13.根据权利要求11所述的视频编码装置,其中所述一或多个处理器经配置以将所述CU的所述PU的每一者的MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
14.根据权利要求11所述的视频编码装置,其中所述一或多个处理器经配置以针对视频序列的每一Inter_NxN CU的每一PU将MV候选者列表中的每一双向MV候选者转换为单向MV候选者,其中每一Inter_NxN CU分割为四个相等大小的PU且使用帧间预测译码。
15.根据权利要求11所述的视频编码装置,其中所述一或多个处理器经配置以响应于确定所述CU具有等于最小译码单元SCU大小的大小将所述双向MV候选者转换为所述单向MV候选者。
16.根据权利要求11所述的视频编码装置,其中所述CU是第一CU,且所述一或多个处理器进一步经配置以:
产生第二CU的PU的MV候选者列表;
响应于确定所述第二CU根据2Nx2N、2NxN或Nx2N分割模式分割为PU或所述第二CU的所述PU的运动信息在先进运动向量预测AMVP模式中信令,将所述第二CU的所述PU的所述MV候选者列表中的双向MV候选者转换为第二单向MV候选者;
确定所述第二CU的所述PU的所述MV候选者列表中的选定MV候选者;且
至少部分基于所述第二CU的所述PU的所述MV候选者列表中的所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述第二CU的所述PU的预测视频块。
17.根据权利要求11所述的视频编码装置,其中所述一或多个处理器经配置以仅当使用先进运动向量预测AMVP模式信令所述PU的运动信息时将所述双向MV候选者转换为所述单向MV候选者。
18.根据权利要求11所述的视频编码装置,其中所述一或多个处理器进一步经配置以至少部分基于所述预测视频块输出经编码视频数据。
19.根据权利要求11所述的视频编码装置,其中:
所述双向MV候选者是第一双向MV候选者,所述单向MV候选者是第一单向MV候选者,
所述一或多个处理器经配置使得产生所述MV候选者列表包括响应于确定所述MV候选者列表中的第二双向MV候选者具有相等运动向量且指示列表0和列表1中相同的参考图片,将所述第二双向MV候选者转换为第二单向MV候选者,
在运动补偿期间不执行双向到单向转换以产生所述预测视频块,且
当所述PU用作用于对另一视频块进行译码的运动向量候选者块时,所述PU具有单向运动信息而非双向运动信息。
20.一种视频编码装置,其包括:
用于产生B切片中的译码单元CU的预测单元PU的运动向量MV候选者列表的装置,其中所述CU分割为四个相等大小的PU;
用于将所述MV候选者列表中的双向MV候选者转换为单向MV候选者的装置;
用于确定所述MV候选者列表中的选定MV候选者的装置;以及
用于至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块的装置。
21.一种计算机程序产品,其包括存储指令的一或多个计算机可读存储媒体,所述指令当执行时配置一或多个处理器以:
产生B切片中的译码单元CU的预测单元PU的运动向量MV候选者列表,其中所述CU分割为四个相等大小的PU;
将所述MV候选者列表中的双向MV候选者转换为单向MV候选者;
确定所述MV候选者列表中的选定MV候选者;以及
至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块。
22.一种用于对视频数据进行解码的方法,所述方法包括:
产生B切片中的译码单元CU的预测单元PU的运动向量MV候选者列表,其中所述CU分割为四个相等大小的PU;
将所述MV候选者列表中的双向MV候选者转换为单向MV候选者;
确定合并候选者列表中的选定MV候选者;以及
至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块。
23.根据权利要求22所述的方法,其进一步包括将所述MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
24.根据权利要求22所述的方法,其进一步包括将所述CU的所述PU的每一者的MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
25.根据权利要求22所述的方法,其进一步包括针对视频序列的每一Inter_NxN CU的每一PU将MV候选者列表中的每一双向MV候选者转换为单向MV候选者,其中每一Inter_NxN CU分割为四个相等大小的PU且使用帧间预测译码。
26.根据权利要求22所述的方法,其中将所述双向MV候选者转换为所述单向MV候选者包括响应于确定所述CU具有等于最小译码单元SCU大小的大小将所述双向MV候选者转换为所述单向MV候选者。
27.根据权利要求22所述的方法,其中所述CU是第一CU,且所述方法进一步包括:产生第二CU的PU的MV候选者列表;
响应于确定所述第二CU根据2Nx2N、2NxN或Nx2N分割模式分割为PU或所述第二CU的所述PU的运动信息在先进运动向量预测AMVP模式中信令,将所述第二CU的所述PU的所述MV候选者列表中的双向MV候选者转换为第二单向MV候选者;
确定所述第二CU的所述PU的所述MV候选者列表中的选定MV候选者;以及
至少部分基于所述第二CU的所述PU的所述MV候选者列表中的所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述第二CU的所述PU的预测视频块。
28.根据权利要求22所述的方法,其中转换所述双向MV候选者包括仅当使用AMVP模式信令所述PU的运动信息时将所述双向MV候选者转换为所述单向MV候选者。
29.根据权利要求22所述的方法,其中所述方法进一步包括至少部分基于所述预测视频块输出经解码视频数据。
30.根据权利要求22所述的方法,其中所述方法在移动计算装置上执行。
31.根据权利要求22所述的方法,其中:
所述双向MV候选者是第一双向MV候选者,所述单向MV候选者是第一单向MV候选者,
产生所述MV候选者列表包括响应于确定所述MV候选者列表中的第二双向MV候选者具有相等运动向量且指示列表0和列表1中相同的参考图片,将所述第二双向MV候选者转换为第二单向MV候选者,
在运动补偿期间不执行双向到单向转换以产生所述预测视频块,且
当所述PU用作用于对另一视频块进行译码的运动向量候选者块时,所述PU具有单向运动信息而非双向运动信息。
32.一种视频解码装置,其包括经配置以进行以下操作的一或多个处理器:
产生B切片中的译码单元CU的预测单元PU的运动向量MV候选者列表,其中所述CU分割为四个相等大小的PU;
将所述MV候选者列表中的双向MV候选者转换为单向MV候选者;
确定所述MV候选者列表中的选定MV候选者;以及
至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块。
33.根据权利要求32所述的视频解码装置,其中所述一或多个处理器经配置以将所述MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
34.根据权利要求32所述的视频解码装置,其中所述一或多个处理器经配置以将所述CU的所述PU的每一者的MV候选者列表中的每一双向MV候选者转换为单向MV候选者。
35.根据权利要求32所述的视频解码装置,其中所述一或多个处理器经配置以针对视频序列的每一Inter_NxN CU的每一PU将MV候选者列表中的每一双向MV候选者转换为单向MV候选者,其中每一Inter_NxN CU分割为四个相等大小的PU且使用帧间预测译码。
36.根据权利要求32所述的视频解码装置,其中所述一或多个处理器经配置以响应于确定所述CU具有等于最小译码单元SCU大小的大小将所述双向MV候选者转换为所述单向MV候选者。
37.根据权利要求32所述的视频解码装置,其中所述CU是第一CU,且所述一或多个处理器进一步经配置以:
产生第二CU的PU的MV候选者列表;
响应于确定所述第二CU根据2Nx2N、2NxN或Nx2N分割模式分割为PU或所述第二CU的所述PU的运动信息在先进运动向量预测AMVP模式中信令,将所述第二CU的所述PU的所述MV候选者列表中的双向MV候选者转换为第二单向MV候选者;
确定所述第二CU的所述PU的所述MV候选者列表中的选定MV候选者;且
至少部分基于所述第二CU的所述PU的所述MV候选者列表中的所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述第二CU的所述PU的预测视频块。
38.根据权利要求32所述的视频解码装置,其中所述一或多个处理器经配置以仅当使用先进运动向量预测AMVP模式信令所述PU的运动信息时将所述双向MV候选者转换为所述单向MV候选者。
39.根据权利要求32所述的视频解码装置,其中所述一或多个处理器进一步经配置以至少部分基于所述预测视频块输出经解码视频数据。
40.根据权利要求32所述的视频解码装置,其中:
所述双向MV候选者是第一双向MV候选者,所述单向MV候选者是第一单向MV候选者,
所述一或多个处理器经配置使得产生所述MV候选者列表包括响应于确定所述MV候选者列表中的第二双向MV候选者具有相等运动向量且指示列表0和列表1中相同的参考图片,将所述第二双向MV候选者转换为第二单向MV候选者,
在运动补偿期间不执行双向到单向转换以产生所述预测视频块,且
当所述PU用作用于对另一视频块进行译码的运动向量候选者块时,所述PU具有单向运动信息而非双向运动信息。
41.一种视频解码装置,其包括:
用于产生B切片中的译码单元CU的预测单元PU的运动向量MV候选者列表的装置,其中所述CU分割为四个相等大小的PU;
用于将所述MV候选者列表中的双向MV候选者转换为单向MV候选者的装置;
用于确定所述MV候选者列表中的选定MV候选者的装置;以及
用于至少部分基于所述选定MV候选者指定的运动信息所指示的一或多个参考块产生所述PU的预测视频块的装置。
CN201380008272.XA 2012-02-08 2013-02-08 B切片中的预测单元限于单向帧间预测 Pending CN104160704A (zh)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US201261596597P 2012-02-08 2012-02-08
US61/596,597 2012-02-08
US201261622968P 2012-04-11 2012-04-11
US61/622,968 2012-04-11
US201261643806P 2012-05-07 2012-05-07
US61/643,806 2012-05-07
US13/628,562 2012-09-27
US13/628,562 US9451277B2 (en) 2012-02-08 2012-09-27 Restriction of prediction units in B slices to uni-directional inter prediction
US201261710556P 2012-10-05 2012-10-05
US61/710,556 2012-10-05
US13/761,924 US9426463B2 (en) 2012-02-08 2013-02-07 Restriction of prediction units in B slices to uni-directional inter prediction
US13/761,924 2013-02-07
PCT/US2013/025331 WO2013119937A1 (en) 2012-02-08 2013-02-08 Restriction of prediction units in b slices to uni-directional inter prediction

Publications (1)

Publication Number Publication Date
CN104160704A true CN104160704A (zh) 2014-11-19

Family

ID=48902867

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380008272.XA Pending CN104160704A (zh) 2012-02-08 2013-02-08 B切片中的预测单元限于单向帧间预测

Country Status (6)

Country Link
US (1) US9426463B2 (zh)
EP (1) EP2813081A1 (zh)
JP (1) JP2015510358A (zh)
KR (1) KR20140130466A (zh)
CN (1) CN104160704A (zh)
WO (1) WO2013119937A1 (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106416245A (zh) * 2014-06-19 2017-02-15 高通股份有限公司 用于块内复制的系统和方法
CN107534711A (zh) * 2015-06-16 2018-01-02 华为技术有限公司 用于高效视频编码(hevc)屏幕图像编码(scc)扩展的高级编码技术
CN110326296A (zh) * 2017-01-03 2019-10-11 交互数字Vc控股公司 用于对运动信息进行编码和解码的方法和装置
CN111010572A (zh) * 2018-12-04 2020-04-14 北京达佳互联信息技术有限公司 一种视频编码方法和装置及设备
CN111147847A (zh) * 2018-11-02 2020-05-12 北京字节跳动网络技术有限公司 几何分割模式中基于历史的运动矢量预测候选的使用
CN111201793A (zh) * 2017-10-11 2020-05-26 高通股份有限公司 用于fruc的低复杂度设计
WO2020181543A1 (zh) * 2019-03-13 2020-09-17 北京大学 视频处理方法和设备
CN111726632A (zh) * 2019-03-18 2020-09-29 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN112887711A (zh) * 2015-07-27 2021-06-01 联发科技股份有限公司 一种视频编解码方法及系统
CN112956202A (zh) * 2018-11-06 2021-06-11 北京字节跳动网络技术有限公司 利用几何分割的帧间预测的扩展
CN113170183A (zh) * 2018-11-22 2021-07-23 北京字节跳动网络技术有限公司 用于具有几何分割的帧间预测的修剪方法
CN113170191A (zh) * 2018-11-16 2021-07-23 联发科技股份有限公司 用于视频编码的运动向量差值改良式合并方法和装置
CN113170110A (zh) * 2018-12-03 2021-07-23 北京字节跳动网络技术有限公司 候选的最大数量的指示方法
CN114982230A (zh) * 2019-12-31 2022-08-30 北京达佳互联信息技术有限公司 用于使用三角形分区的视频编解码的方法和装置
US11671586B2 (en) 2018-12-28 2023-06-06 Beijing Bytedance Network Technology Co., Ltd. Modified history based motion prediction
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 (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2658263B1 (en) * 2010-12-22 2022-12-14 LG Electronics Inc. Intra prediction method and apparatus using the method
US9451277B2 (en) 2012-02-08 2016-09-20 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
US9591312B2 (en) * 2012-04-17 2017-03-07 Texas Instruments Incorporated Memory bandwidth reduction for motion compensation in video coding
US10721487B2 (en) 2012-04-17 2020-07-21 Texas Instruments Incorporated Converting a bi-predicted merging candidate in a merging candidate list for a prediction unit of a picture
US20130343459A1 (en) * 2012-06-22 2013-12-26 Nokia Corporation Method and apparatus for video coding
AU2013285746B2 (en) * 2012-07-02 2015-09-24 Samsung Electronics Co., Ltd. Method and apparatus for encoding video and method and apparatus for decoding video determining inter-prediction reference picture list depending on block size
WO2014050948A1 (ja) * 2012-09-28 2014-04-03 シャープ株式会社 画像復号装置及び画像符号化装置
WO2015113245A1 (en) * 2014-01-29 2015-08-06 Mediatek Singapore Pte. Ltd. Methods for merging candidates list construction
WO2015135473A1 (en) * 2014-03-11 2015-09-17 Mediatek Inc. Method and apparatus of single sample mode for video coding
JP2015216632A (ja) * 2014-04-22 2015-12-03 ソニー株式会社 符号化装置および符号化方法
US10200711B2 (en) * 2015-03-27 2019-02-05 Qualcomm Incorporated Motion vector derivation in video coding
JP6527460B2 (ja) * 2015-12-25 2019-06-05 日本電信電話株式会社 映像符号化装置、映像符号化方法及び映像符号化プログラム
JP6495835B2 (ja) * 2016-01-06 2019-04-03 日本電信電話株式会社 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法、映像符号化プログラム及び映像復号プログラム
US11317099B2 (en) 2018-10-05 2022-04-26 Tencent America LLC Method and apparatus for signaling an offset in video coding for intra block copy and/or inter prediction
CN117615125A (zh) * 2018-10-08 2024-02-27 华为技术有限公司 用于译码块的几何划分块的帧间预测的装置及方法
CN111418207B (zh) 2018-11-06 2024-04-19 北京字节跳动网络技术有限公司 依赖块尺寸的对运动信息的存储
JP7416781B2 (ja) 2018-11-08 2024-01-17 オッポ広東移動通信有限公司 ビデオ信号符号化/復号方法及びその機器
US11470340B2 (en) * 2018-12-10 2022-10-11 Tencent America LLC Simplified merge list construction for small coding blocks
CN116582666A (zh) * 2018-12-13 2023-08-11 Jvc建伍株式会社 图像解码装置和方法、以及图像编码装置和方法
CN113366853B (zh) 2019-02-02 2024-08-02 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的缓冲区初始化
WO2020156541A1 (en) 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Data storage in buffers for intra block copy in video coding
US11140406B2 (en) * 2019-02-20 2021-10-05 Qualcomm Incorporated Signalling for merge mode with motion vector differences in video coding
CN113545068B (zh) 2019-03-01 2023-09-15 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的基于顺序的更新
EP3915265A4 (en) 2019-03-01 2022-06-22 Beijing Bytedance Network Technology Co., Ltd. DIRECTION-BASED PREDICTION FOR INTRA BLOCK COPY IN VIDEO CODING
EP3915252A4 (en) 2019-03-04 2022-03-23 Beijing Bytedance Network Technology Co., Ltd. IMPLEMENTATION OF ASPECTS IN AN INTRA BLOCK COPY IN VIDEO ENCODING
FI3915254T3 (fi) * 2019-03-12 2023-12-28 Beijing Dajia Internet Information Tech Co Ltd Videokoodauksen menetelmät ja laitteistot kolmion muotoista ennustuskenttää varten
WO2020231953A1 (en) * 2019-05-10 2020-11-19 Beijing Dajia Internet Information Technology Co., Ltd. Methods and apparatuses for video coding with triangle prediction
CN117221544A (zh) 2019-05-19 2023-12-12 字节跳动有限公司 数字视频中的变换旁路编解码残差块
KR102677020B1 (ko) 2019-07-06 2024-06-19 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 카피를 위한 가상 예측 버퍼
JP7359934B2 (ja) 2019-07-10 2023-10-11 北京字節跳動網絡技術有限公司 映像符号化におけるイントラブロックコピーのためのサンプル識別
KR102695788B1 (ko) 2019-07-11 2024-08-14 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 복사를 위한 비트스트림 적합 제약
KR20220070530A (ko) * 2019-10-10 2022-05-31 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 삼각형 분할을 이용한 비디오 코딩을 위한 방법 및 장치
JP7499854B2 (ja) * 2019-12-30 2024-06-14 鴻穎創新有限公司 ビデオデータをコーディングするデバイス及び方法
US11889057B2 (en) * 2021-02-02 2024-01-30 Novatek Microelectronics Corp. Video encoding method and related video encoder
US11831909B2 (en) * 2021-03-11 2023-11-28 Qualcomm Incorporated Learned B-frame coding using P-frame coding system
US11838498B2 (en) 2021-06-28 2023-12-05 Tencent America LLC Harmonized design for intra bi-prediction and multiple reference line selection

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110194609A1 (en) * 2010-02-05 2011-08-11 Thomas Rusert Selecting Predicted Motion Vector Candidates

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026232A (en) 1995-07-13 2000-02-15 Kabushiki Kaisha Toshiba Method and system to replace sections of an encoded video bitstream
US7321626B2 (en) 2002-03-08 2008-01-22 Sharp Laboratories Of America, Inc. System and method for predictive motion estimation using a global motion predictor
EP1427216A1 (en) 2002-07-02 2004-06-09 Matsushita Electric Industrial Co., Ltd. Image encoding method and image decoding method
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
US8565307B2 (en) * 2005-02-01 2013-10-22 Panasonic Corporation Picture encoding method and picture encoding device
US9215475B2 (en) 2006-02-02 2015-12-15 Thomson Licensing Method and apparatus for motion estimation using combined reference bi-prediction
RU2426267C2 (ru) 2007-01-08 2011-08-10 Нокиа Корпорейшн Усовершенствованное межуровневое предсказание для расширенной пространственной масштабируемости при кодировании видеосигнала
JP4325708B2 (ja) 2007-07-05 2009-09-02 ソニー株式会社 データ処理装置、データ処理方法およびデータ処理プログラム、符号化装置、符号化方法および符号化プログラム、ならびに、復号装置、復号方法および復号プログラム
EP2262267A1 (en) 2009-06-10 2010-12-15 Panasonic Corporation Filter coefficient coding scheme for video coding
US9398308B2 (en) 2010-07-28 2016-07-19 Qualcomm Incorporated Coding motion prediction direction in video coding
US9319716B2 (en) 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
US8934552B2 (en) 2011-03-31 2015-01-13 Qualcomm Incorporated Combined reference picture list construction and mapping
US9247266B2 (en) 2011-04-18 2016-01-26 Texas Instruments Incorporated Temporal motion data candidate derivation in video coding
US9282338B2 (en) 2011-06-20 2016-03-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
US10070152B2 (en) 2011-08-24 2018-09-04 Texas Instruments Incorporated Sample adaptive offset (SAO) parameter signaling
JP5972888B2 (ja) * 2011-09-29 2016-08-17 シャープ株式会社 画像復号装置、画像復号方法および画像符号化装置
US8964845B2 (en) 2011-12-28 2015-02-24 Microsoft Corporation Merge mode for motion information prediction
JPWO2013111596A1 (ja) * 2012-01-26 2015-05-11 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 動画像符号化方法および動画像符号化装置
US9451277B2 (en) 2012-02-08 2016-09-20 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
US20130272409A1 (en) 2012-04-12 2013-10-17 Qualcomm Incorporated Bandwidth reduction in video coding through applying the same reference index

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110194609A1 (en) * 2010-02-05 2011-08-11 Thomas Rusert Selecting Predicted Motion Vector Candidates

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HUI YONG KIM.: "Motion Compensation Complexity Reduction for Bi-Prediction", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC),DOCUMENT: JCTVC-F356》 *
KEN MCCANN.: "HM5: High Efficiency Video Coding (HEVC) Test Model 5 Encoder Description", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC),DOCUMENT: JCTVC-G1102》 *
TOMOHIRO IKAI.: "Bi-prediction restriction in small PU", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC),DOCUMENT: JCTVC-G307》 *

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106416245A (zh) * 2014-06-19 2017-02-15 高通股份有限公司 用于块内复制的系统和方法
CN106416245B (zh) * 2014-06-19 2019-08-02 高通股份有限公司 用于对视频数据进行编码和解码的方法和设备
CN107534711A (zh) * 2015-06-16 2018-01-02 华为技术有限公司 用于高效视频编码(hevc)屏幕图像编码(scc)扩展的高级编码技术
CN107534711B (zh) * 2015-06-16 2019-04-19 华为技术有限公司 用于高效视频编码(hevc)屏幕图像编码(scc)扩展的高级编码技术
CN112887711B (zh) * 2015-07-27 2023-06-30 寰发股份有限公司 一种视频编解码方法及系统
CN112887711A (zh) * 2015-07-27 2021-06-01 联发科技股份有限公司 一种视频编解码方法及系统
CN110326296A (zh) * 2017-01-03 2019-10-11 交互数字Vc控股公司 用于对运动信息进行编码和解码的方法和装置
CN110326296B (zh) * 2017-01-03 2023-05-23 交互数字麦迪逊专利控股公司 用于对运动信息进行编码和解码的方法和装置
CN111201793A (zh) * 2017-10-11 2020-05-26 高通股份有限公司 用于fruc的低复杂度设计
CN111201793B (zh) * 2017-10-11 2023-11-21 高通股份有限公司 用于fruc的低复杂度设计
CN111147847A (zh) * 2018-11-02 2020-05-12 北京字节跳动网络技术有限公司 几何分割模式中基于历史的运动矢量预测候选的使用
CN111147847B (zh) * 2018-11-02 2024-05-10 北京字节跳动网络技术有限公司 几何分割模式中基于历史的运动矢量预测候选的使用
CN112956202B (zh) * 2018-11-06 2024-07-12 北京字节跳动网络技术有限公司 利用几何分割的帧间预测的扩展
CN113056917B (zh) * 2018-11-06 2024-02-06 北京字节跳动网络技术有限公司 为视频处理使用具有几何分割的帧间预测
CN113056917A (zh) * 2018-11-06 2021-06-29 北京字节跳动网络技术有限公司 为视频处理使用具有几何分割的帧间预测
CN112956202A (zh) * 2018-11-06 2021-06-11 北京字节跳动网络技术有限公司 利用几何分割的帧间预测的扩展
CN113170191A (zh) * 2018-11-16 2021-07-23 联发科技股份有限公司 用于视频编码的运动向量差值改良式合并方法和装置
US11381838B2 (en) 2018-11-16 2022-07-05 Hfi Innovation Inc. Method and apparatus of improved merge with motion vector difference for video coding
CN113170183A (zh) * 2018-11-22 2021-07-23 北京字节跳动网络技术有限公司 用于具有几何分割的帧间预测的修剪方法
US11924421B2 (en) 2018-11-22 2024-03-05 Beijing Bytedance Network Technology Co., Ltd Blending method for inter prediction with geometry partition
CN113170183B (zh) * 2018-11-22 2024-04-02 北京字节跳动网络技术有限公司 用于具有几何分割的帧间预测的修剪方法
US11677941B2 (en) 2018-11-22 2023-06-13 Beijing Bytedance Network Technology Co., Ltd Construction method for inter prediction with geometry partition
US11856185B2 (en) 2018-12-03 2023-12-26 Beijing Bytedance Network Technology Co., Ltd Pruning method in different prediction mode
CN113170110A (zh) * 2018-12-03 2021-07-23 北京字节跳动网络技术有限公司 候选的最大数量的指示方法
CN113170110B (zh) * 2018-12-03 2024-05-14 北京字节跳动网络技术有限公司 候选的最大数量的指示方法
CN111010572A (zh) * 2018-12-04 2020-04-14 北京达佳互联信息技术有限公司 一种视频编码方法和装置及设备
US11671586B2 (en) 2018-12-28 2023-06-06 Beijing Bytedance Network Technology Co., Ltd. Modified history based motion prediction
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
WO2020181543A1 (zh) * 2019-03-13 2020-09-17 北京大学 视频处理方法和设备
CN111726632B (zh) * 2019-03-18 2022-08-26 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN111726632A (zh) * 2019-03-18 2020-09-29 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN114982230A (zh) * 2019-12-31 2022-08-30 北京达佳互联信息技术有限公司 用于使用三角形分区的视频编解码的方法和装置

Also Published As

Publication number Publication date
WO2013119937A1 (en) 2013-08-15
JP2015510358A (ja) 2015-04-02
KR20140130466A (ko) 2014-11-10
US20130202038A1 (en) 2013-08-08
US9426463B2 (en) 2016-08-23
EP2813081A1 (en) 2014-12-17

Similar Documents

Publication Publication Date Title
CN104160704A (zh) B切片中的预测单元限于单向帧间预测
CN104094605A (zh) B切片中的预测单元限于单向帧间预测
CN103797799A (zh) 用于视频译码的运动向量确定
CN103621095A (zh) 用于视频译码中的帧内预测的边界像素填补
CN103988505A (zh) 在视频数据的波前并行处理中的受约束参考图片集合
CN104040900A (zh) 用于上下文自适应二进制算术译码的上下文数目缩减
CN104335586A (zh) 运动向量舍入
CN103975595A (zh) 用于视频译码的分段参数集
CN104471946A (zh) 视频译码中用信号发送无损译码模式和脉码调制(pcm)模式的统一
CN104185990A (zh) 视频译码中的系数的译码
CN103959781A (zh) 填补经译码切片nal单元中的片段
CN104126302A (zh) 产生额外合并候选者
CN103609118A (zh) 用于视频译码的并行化友好合并候选者
CN105556974A (zh) 基于调色板的视频译码中的调色板预测
CN104205829A (zh) 合并信令及环路滤波器开/关信令
CN104365105A (zh) 视频译码中的外部图片
CN103430539A (zh) 经解码图片缓冲器管理
CN103609123A (zh) 统一合并模式和自适应运动向量预测模式候选者选择
CN104737538A (zh) 执行量化以促进解块滤波
CN103299621A (zh) 用于视频译码中的一般化p/b帧的参考图片列表构造
CN105519116A (zh) 产生用于增强层中的运动预测的经调适运动向量候选者列表的可缩放hevc装置和方法
CN103329530A (zh) 视频译码中的子切片
CN104756499A (zh) 用于视频译码的参考图片状态
CN105075272A (zh) 在基于调色板的视频译码中确定调色板索引
CN103975596A (zh) 用于视频译码的瓦片的分组

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20141119