一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

视频和影像编码中的高阶信息传输技术的制作方法

2022-06-12 04:40:56 来源:中国专利 TAG:
视频和影像编码中的高阶信息传输技术1.交叉引用2.本发明要求分别于2019年11月4日、2019年11月4日、2019年12月9日、2019年12月27日、2020年1月6日提交的序号为62/930,086、62/930,088、62/945,282、62/954,023、62/957,759、62/958,624、63/000,537的美国临时专利申请的优先权。所述美国临时专利申请在此通过引用将其全文并入。
技术领域
:3.本揭示通常涉及视频编解码的传送。尤其,本揭示关于对用于编解码影像与视频数据的高阶信息的发信加以改善压缩效率。
背景技术
::4.除非此处另有说明外,本小节所描述的方法相对于下面列出的请求项而言不是先前技术,并且不因纳入于本小节而被认为承认是先前技术。5.高效率视频编解码(highefficiencyvideocoding,hevc)的标准,是由视频编码联合协作小组(jointcollaborativeteamonvideocoding,jct-vc)所开发的最新国际视频编解码标准。输入的视频信号是从重构后信号加以预测,而此重构后信号是从编解码画面区域所加以推导。预测残差信号是通过一线性转换加以处理。转换系数以及其他边信息一起被量化与熵编码于比特流中。在对去量化转换系数进行逆转换之后,重构后信号是由预测信号与重构后残差信号所产生。重构后信号进一步通过环路滤波器加以处理来去除编解码伪影。解码后画面被储存于帧缓冲器中以用于预测输入视频信号中的后续画面。6.在hevc中,一编码的画面被分割成以相关联的编码树单元(codingtreeunit,ctu)来表示的非重迭的方形块区域。一个经过编码的画面可以通过一些切片的集合来表示,每一画面包括多个整数的ctu。在一切片中的多个个别ctu是以逐行扫描的顺序(rasterscanningorder)来处理。一双向预测(bi-predictive,b)切片可以用帧内预测或帧间预测来解码,其使用最多两个运动向量与参考索引来预测每一块的样本值。一预测(predictive,p)切片可以用帧内预测或帧间预测来解码,其使用最多一个运动向量与参考索引来预测每一块的样本值。一帧内(intra,i)切片则仅用帧内预测来解码。7.使用递回的四叉树(qt)结构,一ctu可被分割成多个非重迭的编解码单元(cus),以适应于各种当地局部的运动与组织结构的特征。对于每一cu则会具体指定一或多个预测单元pu。pu(与相关联的cu语法)是作为发信预测子信息的一基本单元。然后使用所指定的预测程序,来预测pu内相关联像素样本的值。使用残差的四叉树(rqt)结构,一cu可进一步被分割来代表相关联的预测残差信号。rqt结构的树叶节点(leafnodes)对应于转换单元(tus)。一转换单元包含有数个亮度样本(lumasamples,大小为8x8、16x16或32x32)的一转换块(tb)或是数个亮度样本(大小为4x4)的四个转换块,以及数个彩度样本(chroma样本,4:2:0颜色形式的一画面)的二个相对应转换块。一整数转换会应用在一转换块,而量化系数水平的数值会与其他边信息一起熵编解码于比特流中。图2示出一块分割(左方)与其相对应的四叉树qt表示(右方)的例子。实线表示cu的边界而虚线表示tu的边界。8.编码树单元(ctu)、编码块(cb)、预测块(pb)与转换块(tb)名词定义是用来表明各自相关联于ctu、cu、pu与tu的一个颜色成分的二维样本阵列。因此一ctu是由一亮度ctb、二彩度ctb与相关联的语法元素所组成。相似的关系也适用于cu、pu与tu。树分割通常同时应用于亮度与彩度二者,虽然当彩度达到了某些最小大小限制时会有些例外情况。9.在通用视频编解码(versatilevideocoding,简称vvc)中,一编码画面也可以被分割成通过ctu来代表的非重迭的方形块区域。通过具有巢状式多重-类型树的一四叉树使用二叉与三叉树分割,每一ctu可以被分割为一或多个尺寸较小的编解码单元(cu)。所生成的cu分割可以是方形或长方形的形状。技术实现要素:10.以下
发明内容仅是说明性的,不打算以任何方式加以限制。也就是说,以下
发明内容被提供以介绍此处所描述的新且非显而易知的技术的概念、重点、好处和优势。选择性而不是将所有的实施方式在下面的详细说明中进行进一步描述。因此,以下
发明内容不用于决定所要求主题的本质特征,也不用于决定所要求主题的范围。11.视频解码器接收来自一比特流的数据以解码作为一视频的一当前画面。视频解码器剖析该当前画面的一画面标头,该画面标头包括一组一或多个切片信息语法元素在该画面标头,以指示出存在于该当前画面中的一或多个切片类型的存在。该组切片信息语法元素可以指示出一特定类型的切片是否存在于该当前画面中。该组切片信息语法元素可以包括一或多个语法元素:用以指示出(i)一第一切片类型是否存在于该当前画面中,以及(ii)一第二且不相同的切片类型是否存在于该当前画面中;其中该第一切片类型的一切片并未参考除了该当前画面之外的画面的信息,以及该第二切片类型的一切片有参考除了该当前画面之外的画面的信息。12.当剖析画面标头时,视频解码器可以旁路与编解码工具相关的画面标头语法元素而不加以剖析,当该编解码工具与存在于通过该组切片信息语法元素所识别出的当前画面中的一或多个切片类型不相关联。13.视频解码器通过使用该组切片信息语法元素来重构该当前画面的切片。在一些实施例中,该组切片信息语法元素包括一多-切片-类型语法元素来指示出该当前画面是否包括多于一种切片类型的切片。在一些实施例中,当该多-切片-类型语法元素指示出该当前画面包括多于一种切片类型的切片时,该当前画面的一切片的一切片标头指示出一切片类型。在一些实施例中,该当前画面参考一画面参数组(pictureparameterset,pps),该pps包括一pps语法元素来指示出不同切片类型的切片是否被允许于该当前画面中。当该pps语法元素指示出多于一种切片类型的切片是被允许时,该当前画面的画面标头包括该多-切片-类型语法元素。附图说明14.下列图式用以提供本发明的进一步理解,并被纳入且构成本发明的一部分。这些图式说明了本发明的实施方式,并与说明书一起用以解释本发明的原理。为了清楚地说明本发明的概念,与实际实施方式中的尺寸相比,一些元件可以不按照比例被示出,这些图式无需按照比例绘制。15.图1概念性绘示出一编码视频的一部分,其中在画面标头的语法元素被用来指示出某个或某些切片类型是否存在于相对应的画面中。16.图2绘示出一示例的视频编码器。17.图3概念性绘示出一程序来发信在一画面标头的一或多个语法元素以指示出可能存在于当前画面中的切片类型。18.图4绘示出一示例的视频解码器。19.图5概念性绘示出一程序来使用在一画面标头的一或多个语法元素以指示出可能存在于当前画面中的切片类型。20.图6概念性地绘示出本揭示的一些实施例可以于其中加以施行实作的一电子系统。具体实施方式21.在下面详细的说明书中,为了透彻理解相关教示内容,透过举例的方式进行说明大量具体的细节。基于本文所描述的教示内容的任何改变、推导和/或拓展均在本发明的保护范围内。为了避免不必要地混淆本发明的教示内容的方面,关于此处所公开的一个或者多个示例性实施方式中已知的方法、程式、元件和/或电路,在有些时候会用相对较高的层次加以描述而不细说。22.i.于高阶语法指示出切片类型23.本揭示的一些实施例对用于编解码影像与视频数据的高阶信息发信(signalinghigh-levelinformation)提供方法来改善压缩效率。在一些实施例中,一或多个高阶语法(high-levelsyntax,hls)组,例如视频参数组(videoparameterset,vps)、序列参数组(sequenceparameterset、sps)、画面参数组(pictureparameterset、pps)以及画面标头组,可以进一步包括多个语法元素以指示出可能存在于相关联数据结构的切片类型。如此一来,一视频编解码器可以对在一当前hls组中的语法元素跳过而不加以编码或解码,当所述当前hls组中的语法元素是关于与相关联数据结构中所存在的任何切片类型不相关联的编解码器工具。例如,在一些实施例中,一视频编解码器可以进一步包括在一当前sps中的一或多个语法元素,来指示出通过该当前sps所参考的相关联编解码视频序列中可能存在的切片类型。当该sps中的一或多个语法元素指示出i切片是在相关联编解码视频序列中唯一存在的切片类型时,一视频编解码器可以对与i切片不相关的所有sps语法元素跳过而不编解码(例如,帧间预测工具以及于一i切片中不适用的其他工具)。24.a)对切片类型(一或多个)的存在加以发信25.在一些实施例中,一画面标头被发信用于每一编解码画面。该画面标头可以包括一或多个语法元素,以指示出可能存在于该当前画面中的切片类型。如此一来,一视频编解码器可以跳过以下的画面标头语法元素而不加以编码或解码:与当前画面中所存在的任何切片类型不相关联的编解码工具的相关画面标头语法元素。例如,当该画面标头指示出i切片是在当前编解码画面中唯一存在的切片类型时,一视频编解码器可以对与i切片不相关的所有画面标头语法元素跳过而不编解码(例如,帧间预测工具以及于一i切片中不适用的其他工具)。26.在一些实施例中,画面标头可以进一步包括一或多个语法元素,以指示出可能存在于一当前画面中的切片类型的集合(collection)。在一些实施例中,一视频编解码器于该画面标头中发信一语法元素ph_slice_types。表格1与2提供二个示例性表格来解释ph_slice_types的语法数值。尤其,这些表格显示可能存在于相关联数据结构中的ph_slice_types的语法数值的映射。27.表格1:[0028][0029]表格2:[0030][0031]在一些实施例中,画面标头可以包括多个语法元素以指示出可能存在于当前画面中的某一些切片类型。在一些实施例中,sps可以包括三个语法旗标sps_slice_b_present、sps_slice_p_present、与sps_slice_i_present以指示出b切片、p切片、与i切片是否分别存在于来自当前sps所参考的一编解码器视频序列的编解码画面中。相似地,pps可以包括三个语法旗标pps_slice_b_present、pps_slice_p_present、与pps_slice_i_present以指示出b切片、p切片、与i切片是否分别存在于来自参考当前sps的编解码画面中。在一些实施例中,画面标头可以包括三个语法旗标在画面标头中:ph_slice_b_present、ph_slice_p_present、与ph_slice_i_present,以分别指示出b切片、p切片、与i切片是否存在于当前画面中。[0032]在一些实施例中,一视频编解码器于该画面标头中发信信息,以推导出变数phpictype来指示出可能存在于当前画面中的切片类型。表格3与4提供二个示例性表格来映射或解释phpictype的语法数值。[0033]表格3:[0034][0035]表格4:[0036][0037]表格4是从表格3加以延伸用以解释在一访问单元分隔符(accessunitdelimiter,aud)中的语法元素pic_type。因此,对信息加以发信用以推导出变数phpictype可以用发信于相关联aud中phpictype的数值(当存在时)为前提条件。在一些实施例中,aud被约束为对每一访问单元(accessunit)总是发信。对信息加以发信用以推导出变数phpictype可以用发信于相关联aud中phpictype的数值为前提条件。例如,当发信于相关联aud中的phpictype等于0时,一视频编解码器可以跳过而不编码或解码用来推导在当前画面标头中变数phpictype的信息,而且phpictype被推论等于0。[0038]在一些实施例中,一视频编解码器可以有多于一个高阶语法组(包括多个语法元素)用来对切片类型加以发信,而前述切片类型是可能存在于具有相同语法元素数值解释的分别相关联的数据结构中。例如,一视频编解码器可以包含sps与aud二者,在sps与aud都具有一语法元素用来对切片类型加以指示,而前述切片类型是可能存在于具有相同语法元素解释(如表格1-4)的分别相关联的数据结构中。[0039]在一些实施例中,一语法元素intra_only_constraint_flag被发信来对被允许切片类型的约束加以指明。在一些实施例中,将信息发信以推导出语法元素来对在分别相关联的数据结构中可能存在的切片类型加以发信,可以进一步用语法元素intra_only_constraint_flag的数值为条件。在一些实施例中,当intra_only_constraint_flag等于1时,一视频编解码器可以跳过以下的语法元素而不加以编码或解码:关于与i切片类型不相关联的编解码工具的语法元素。[0040]在一些实施例中,一或多个高阶语法(high-levelsyntax,hls)组,例如视频参数组(videoparameterset,vps)、序列参数组(sequenceparameterset、sps)、画面参数组(pictureparameterset、pps)与/或画面标头(pictureheader,ph),可以包括一或多个语法元素以指示出可能存在于当前画面中的网络抽象层(networkabstractionlayer,nal)单元类型。如此一来,一视频编解码器可以跳过以下的画面标头语法元素而不加以编码或解码:关于与相关联数据结构中所存在的nal单元类型不相关联的编解码器工具的画面标头语法元素。例如,当该画面标头指示出即时解码刷新(instantaneousdecodingrefresh,idr)单元类型存在时,一视频编解码器可以跳过当前画面中的参考画面列表语法元素而不加以编码或解码。[0041]在一些实施例中,一视频编解码器可以在一或多个高阶语法(hls)组(例如vps、sps、pps、与/或画面标头)中,发信一或多个关于使用逐渐解码刷新(gradualdecodingrefresh,gdr)的信令语法元素(signalsyntaxelement)。在一些实施例中,在通过当前画面所参考的高阶语法组中gdr-相关的语法元素的数值的条件下,关于gdr的语法元素被发信于一画面标头。在一些实施例中,在画面标头中,指明所选择pps索引的语法元素ph_pic_parameter_set_id在指明当前画面是否为一gdr画面的语法元素gdr_pic_flag之前被发信。在被一当前画面标头中所选择pps所参考的sps中,当语法元素gdr_enabled_flag等于0时,在该当前画面标头中会跳过对gdr_pic_flag的编解码。当语法元素gdr_pic_flag不存在时会被推论等于0。下面表格5显示一画面标头的一示例性语法表格来显示关于gdr的语法元素:[0042]表格5:[0043][0044]在一些实施例中,一hls组(例如vps、sps、与pps)可以进一步包括一或多个语法元素以指示出可能存在于相关联数据结构中的切片类型。如此一来,可以跳过对下列hls元素的编解码:与相关联数据结构中所存在的任何切片类型不相关联的编解码工具的相关hls元素。例如,一视频编解码器可以编码或解码于一当前pps中的一或多个语法元素,以指示出可能存在于相关联编解码画面(称为当前pps)中的切片类型。当于pps中一或多个所增加的语法元素指示出i切片是在相关联编解码画面中唯一存在的切片类型时,一视频编解码器可以对与i切片不相关的所有pps语法元素跳过而不编解码(例如,帧间预测工具以及于一i切片中不适用的其他工具)。在一些实施例中,pps可以进一步包括通过pps_pic_type所表示的一语法元素。pps_pic_type的数值的解释可以依据上面表格1-4通过其中示例性映射之一来加以指明。[0045]在一些实施例中,在通过当前画面标头所参考的高阶语法组中的相关信息(当存在时)的条件下,一视频编解码器可以编码或解码画面标头语法元素以指示出可能存在于一当前画面的切片类型。在一例子中,一视频编解码器可以编码或解码在画面标头中的三个语法旗标(表示为ph_slice_b_present_flag、ph_slice_p_present_flag、与ph_slice_i_present_flag),以分别指示出b切片、p切片、与i切片是否存在于当前画面中。当被一当前画面标头所参考的pps指示出只有i切片类型存在于当前画面中时,视频编解码器可以推论ph_slice_i_present_flag等于1、ph_slice_b_present_flag与ph_slice_p_present_flag二者皆等于0,并且跳过此三个语法旗标而不加以编码或解码。视频编解码器可以进一步跳过当前画面标头中关于帧间预测的语法元素而不加以编码或解码。备选地,pps可以包括三个语法旗标(表示为pps_slice_b_present、pps_slice_p_present、与pps_slice_i_present),以指示出b切片、p切片、与i切片是否分别存在于参考当前pps的编解码画面中。[0046]在一些实施例中,一视频编解码器可以于一画面标头发信或推导信息,以指示出在一当前画面中是否存在多于一种切片类型。当指示出只有一种切片类型存在于该当前画面中时,视频编解码器可以进一步对存在于当前画面中的切片类型(b、p、或i)加以编码或解码。视频编解码器可以进一步跳过关于当前画面相关联切片中的切片类型的信息而不加以编码或解码,其中当前画面相关联切片中的切片类型被推论为与画面标头中的编解码切片类型相同。当指示出有多于一种切片类型存在于该当前画面中时,视频编解码器可以进一步对用于推导可能存在于当前画面中的可能切片类型的信息加以编码或解码。视频编解码器可以进一步跳过仅适用于无使用的(unused)切片类型的编解码工具的语法元素,而不对其数值加以编码或解码。[0047]在一些实施例中,视频编解码器可以于一或多个hls组(例如sps与pps)发信一或多个语法元素,以指示出以下是否被允许:在一画面中存在有多于一种切片类型以用于参考上述一或多个hls组的所有相关联画面。当被发信的hls信息指示出在每一相关联画面中存在有多于一种切片类型是不被允许时,视频编解码器可以推论在一当前画面中存在只有一种切片类型以用于参考上述一或多个hls组的所有相关联画面;以及进一步跳过在画面标头中关于用来指示出在一当前画面中是否存在有多于一种切片类型的语法元素,而不加以编码或解码。视频编解码器可以进一步于上述一或多个hls组发信另一个或多个语法元素,以指示出参考上述一或多个hls组的每一画面被进一步分割为多于一个切片。此一或多个语法元素是在用来指示出每一相关联画面是否可存在有多于一种切片类型的前述一或多个语法元素之前(于解码顺序中)被发信。当另一或多个编解码语法元素指示出参考该一或多个hls组的每一相关联画面包含只有一个切片时,视频编解码器可以推论在相关联画面中只存在有一种切片类型,而且跳过用来指示出每一相关联画面是否可存在有多于一种切片类型的前述一或多个语法元素,而不加以编码或解码。[0048]在一些实施例中,一视频编解码器可以于一画面标头或其他hls组中发信或推导信息,以指示出在一当前画面中是否存在多于一种vclnal类型。当该当前画面包含只有一个切片首先被发信时,视频编解码器可以推论在当前画面中存在只有一种vclnal类型。例如,一视频编解码器可以发信语法元素mixed_nalu_types_in_pic_flag,来指明参考pps的每一画面是否有相同的nal_unit_type数值。在一些实施例中,语法元素mixed_nalu_types_in_pic_flag被移动至(被放置于)语法元素no_pic_partition_flag之后,而且只有在语法元素no_pic_partition_flag等于0时才加以编解码,如下面表格6所示。由于mixed_nalu_types_in_pic_flag是关于以长方形切片分割模式来使用次画面分割,对语法元素mixed_nalu_types_in_pic_flag进行编解码可以进一步以下列为条件:长方形切片分割是否在使用以及当前画面中切片的数目。[0049]对一些实施例,下面表格6-8分别提供用于pps、画面标头、与切片标头的示例性的hls语法表格。[0050]表格6:一pps的示例性高阶语法表格[0051][0052]表格7:一画面标头的示例性高阶语法表格[0053][0054][0055]表格8:一切片标头的示例性高阶语法表格[0056][0057]在一pps中的语法元素pps_mixed_slice_types_in_pic_flag指示出在一画面中存在有多于一种切片类型以用于参考该pps的所有画面是否被允许。在一当前画面标头中的语法元素ph_mixed_slice_types_in_pic_flag指示出在一当前画面中是否存在有多于一种切片类型。当pps_mixed_slice_types_in_pic_flag的数值等于0时,在参考该pps的一当前画面中存在有多于一种切片类型是不被允许的。ph_mixed_slice_types_in_pic_flag的数值不被编解码而且被推论等于0。当ph_mixed_slice_types_in_pic_flag的数值等于0时,在切片标头中的语法元素slice_type的数值不被编解码而且被推论等于ph_slice_type的数值。在切片标头中关于仅适用于无使用的(unused)切片类型的编解码工具的语法元素的数值可以被进一步跳过。当ph_mixed_slice_types_in_pic_flag等于1时,在当前画面中可能的切片类型是通过表示为ph_slice_b_present_flag、ph_slice_p_present_flag、与ph_slice_i_present_flag的语法元素加以发信,来分别指示出在该当前画面中b切片、p切片、与i切片是否可存在。[0058](b)发信多种切片类型[0059]在一些实施例中,在一pps中的语法元素mixed_slice_types_in_pic_flag指示出在一画面中存在有多于一种切片类型以用于参考该pps的所有画面是否被允许。当pps_mixed_slice_types_in_pic_flag等于0时,语法元素ph_slice_type指明在当前标头中只有一种切片类型存在。在切片标头中关于仅适用于无使用的(unused)切片类型的编解码工具的语法元素的数值被进一步跳过。在切片标头中语法元素slice_type的数值可以从ph_slice_type的编解码数值加以推论。表格9-11分别显示使用pps_mixed_slice_types_in_pic_flag的pps、画面标头、与切片标头的语法表格。[0060]表格9:[0061][0062][0063]表格10:[0064][0065][0066][0067]表格11:[0068][0069]在ppsrbsp(如表格9所示)中,语法元素mixed_nalu_types_in_pic_flag等于1指明参考该pps的每一画面具有多于一个vclnal单元,以及vclnal单元没有与nal_unit_type相同的数值,以及该画面不是一irap画面。mixed_nalu_types_in_pic_flag的数值等于0指明参考该pps的每一画面具有一或多个vclnal单元,以及参考该pps的每一画面的vclnal单元具有与nal_unit_type相同的数值。当不存在时,mixed_nalu_types_in_pic_flag的数值被推论等于0。当no_mixed_nalu_types_in_pic_constraint_flag等于1时,mixed_nalu_types_in_pic_flag的数值必须等于0。[0070]对具有一nal_unit_type数值nalunittypea在idr_w_radl到cra_nut的范围(包含)的每一切片,在也包含具有另一nal_unit_type数值的一或多个切片的一画面pica中(即,对画面pica,mixed_nalu_types_in_pic_flag的数值的等于1),应用以下:[0071]–切片必须属于一次画面subpica,其中相对应subpic_treated_as_pic_flag[i]的数值等于1。[0072]–切片不可以属于pica的一次画面,其中该次画面包含具有不等于nalunittypea的nal_unit_type的vclnal单元。[0073]–对在clvs中按解码顺序的后续所有pu,在subpica中任一切片的参考画面清单refpiclist[0]或refpiclist[1]都不可以包括在当前条目(activeentry)中解码顺序早于pica的任何画面。[0074]mixed_slice_types_in_pic_flag的数值等于1指明参考该pps的每一画面可存在有多于一种切片类型在当前画面中。mixed_slice_types_in_pic_flag的数值等于0指明参考该pps的每一画面存在有一种类型在当前画面中。当不存在时,mixed_slice_types_in_pic_flag的数值被推论等于0。[0075]在画面标头rbsp(如表格10所示)中,当mixed_slice_types_in_pic_flag等于0时,语法元素ph_slice_type指明在当前画面的所有切片标头中slice_type的数值。[0076]在切片标头(如表格11所示)中,语法元素slice_type指明切片的编解码类型。当不存在时,slice_types的数值被推论等于ph_slice_type的数值。(与不同切片类型相关联的slice_type的数值如下面表格23所示)。[0077](c)对不同切片类型的一混和加以发信画面标头[0078]在一些实施例中,视频编解码器指示出帧间切片类型(b或p)与帧内切片类型(i)是否可存在于一当前画面中。语法元素ph_mixed_slice_types_in_pic_flag被进一步加入于画面标头中,以指示出在一当前画面中是否可存在有多于一种切片类型。当ph_mixed_slice_types_in_pic_flag等于1时,一语法元素ph_intra_slice_present_flag被进一步发信,以指示出切片类型i是否可存在于该当前画面中。变数interslicepresent与intraslicepresent分别指示出在一当前画面中是否存在有任何帧间切片(切片类型b或p)与任何帧内切片(切片类型i)。变数interslicepresent与intraslicepresent可以从ph_mixed_slice_types_in_pic_flag、ph_intra_slice_present_flag、与ph_slice_type的数值加以推导。在切片标头中,slice_type上信息的发信取决于ph_mixed_slice_types_in_pic_flag与intraslicepresent的数值。下面表格12与13分别显示一画面标头与一切片标头,其中语法元素指示出帧间切片与帧内切片是否存在:[0079]表格12:[0080][0081][0082][0083]表格13:[0084][0085][0086]ph_mixed_slice_types_in_pic_flag的数值为1指明在当前画面中可存在有多于一种的切片类型。ph_mixed_slice_types_in_pic_flag的数值为0指明在一当前画面中的所有切片必须有相同slice_type的数值。当ph_mixed_slice_types_in_pic_flag不存在时,ph_mixed_slice_types_in_pic_flag的数值被推论等于0。[0087]ph_intra_slice_present_flag的数值为1指示出切片类型i可存在于一当前画面中。ph_intra_slice_present_flag的数值为0指示出切片类型i不存在于一当前画面中。当ph_mixed_slice_types_in_pic_flag等于0时,语法元素ph_slice_type指明在当前画面的所有切片标头中slice_type的数值。[0088]变数interslicepresent与intraslicepresent如以下加以推导:[0089]–如果ph_mixed_slice_types_in_pic_flag等于1时,interslicepresent被设定等于1而且intraslicepresent被设定等于ph_intra_slice_present_flag[0090]–否则,interslicepresent被设定等于(ph_slice_type=i)而且intraslicepresent被设定等于(ph_slice_type==i)。[0091]依据下面表格23,语法元素slice_type指明切片的编解码类型。当slice_type不存在时,slice_types的数值如以下加以推导:[0092]–如果ph_mixed_slice_types_in_pic_flag等于1时,slice_type的数值被设定等于p_slice_flag。[0093]–否则,slice_type的数值被设定等于ph_slice_type。[0094]当ph_mixed_slice_types_in_pic_flag等于1而且intraslicepresent等于0时,语法元素p_slice_flag为1指明slice_type的数值等于p。当ph_mixed_slice_types_in_pic_flag等于1而且intraslicepresent等于0时,p_slice_flag等于0指明slice_type的数值等于b。[0095](d)对个别切片类型的存在加以发信[0096]在一些实施例中,视频编解码器指示出每一切片类型(b、p、与i)是否可存在于一当前画面中。在一当前画面标头中的语法元素ph_mixed_slice_types_in_pic_flag指示出在一当前画面中是否可存在有多于一种切片类型。当ph_mixed_slice_types_in_pic_flag等于1时,一语法元素ph_present_slice_types被进一步发信,以指示出可存在于一当前画面中的切片类型。尤其,变数bslicepresent、pslicepresent、与islicepresent分别指示出切片类型b、p、与i是否可存在于该当前画面中。变数bslicepresent、pslicepresent、与islicepresent可以从ph_mixed_slice_types_in_pic_flag、ph_slice_type、与ph_present_slice_types的数值中加以推导。在切片标头中,slice_type上信息的发信取决于ph_mixed_slice_types_in_pic_flag与ph_present_slice_types的数值。下面表格14与15显示一画面标头与一切片标头,其中语法包括对于指示出每一切片类型是否可存在加以发信。[0097]表格14:[0098][0099][0100][0101][0102]表格15:[0103][0104]ph_mixed_slice_types_in_pic_flag的数值为等于1指明在当前画面中可存在有多于一种的切片类型。ph_mixed_slice_types_in_pic_flag的数值为等于0指明在一当前画面中的所有切片必须有相同slice_type的数值。当ph_mixed_slice_types_in_pic_flag不存在时,ph_mixed_slice_types_in_pic_flag的数值被推论等于0。[0105]当ph_mixed_slice_types_in_pic_flag等于1时,语法元素ph_present_slice_types指示出可存在于一当前画面的切片类型。当ph_mixed_slice_types_in_pic_flag等于0时,语法元素ph_slice_type指明在当前画面的所有切片标头中slice_type的数值。[0106]变数bslicepresent、pslicepresent、与islicepresent如以下加以推导:[0107]–如果ph_mixed_slice_types_in_pic_flag等于1,bslicepresent被设定等于(ph_slice_type==b)、pslicepresent被设定等于(ph_slice_type==p)、而且islicepresent被设定等于(ph_slice_type==i)[0108]–否则,bslicepresent被设定等于(ph_present_slice_types=0)、pslicepresent被设定等于(ph_present_slice_types=1)、而且islicepresent被设定等于(ph_present_slice_types=2)。[0109]依据下面表格23,语法元素slice_type指明切片的编解码类型。当语法元素slice_type不存在时,其数值如以下加以推导:[0110]–如果ph_mixed_slice_types_in_pic_flag等于1时,slice_type的数值被设定等于(slice_type_flag》=ph_present_slice_types?slice_type_flag 1:slice_type_flag)。[0111]否则,slice_type的数值被设定等于ph_slice_type。[0112]当ph_mixed_slice_types_in_pic_flag当ph_mixed_slice_types_in_pic_flag等于1而且ph_present_slice_types的数值不等于3时,语法元素slice_type_flag指明slice_type的数值。[0113]在一些实施例中,语法元素ph_inter_slice_allowed_flag与ph_intra_slice_allowed_flag被发信来分别指示出帧间切片与帧内切片是否可被允许存在于该画面中。当ph_inter_slice_allowed_flag等于0,仅关于帧内编解码工具的语法元素不被发信。当ph_intra_slice_allowed_flag等于0,仅关于帧间编解码工具的语法元素不被发信。当ph_inter_slice_allowed_flag等于0,在切片标头的语法元素slice_type的数值被推论等于2而且不被编码进比特流中。[0114](e)对帧间切片与帧内切片是否可能存在加以发信[0115]在一些实施例中,视频编解码器对信息加以发信用以推导出帧间切片类型(b或p)与帧内切片类型(i)是否可分别存在于一编解码画面中。在一些实施例中,一语法元素ph_multiple_slice_types_in_pic_flag被进一步加入于画面标头中,以指示出该画面的编解码切片中是否可存在有多于一种的切片类型。ph_multiple_slice_types_in_pic_flag的数值等于1指明在画面中的编解码切片可以有不同的slice_type数值。ph_multiple_slice_types_in_pic_flag的数值等于0指明画面中所有编解码切片都有相同的slice_type数值。当ph_multiple_slice_types_in_pic_flag等于1,一语法元素ph_intra_slice_allowed_flag被进一步发信以指示出切片类型i是否可被允许于该当前画面中。当ph_multiple_slice_types_in_pic_flag等于0,一语法元素ph_slice_type被进一步发信以指明用于画面中所有切片的slice_type数值。变数intersliceallowed与intrasliceallowed分别指示出帧间切片类型(切片类型b或p)与帧内切片类型(切片类型i)是否被允许于该画面中。变数intersliceallowed与intrasliceallowed的数值可以从ph_multiple_slice_types_in_pic_flag、ph_intra_slice_allowed_flag、与ph_slice_type的数值加以推导。关于仅适用于无使用的(unused)切片类型的编解码工具的ph语法元素的数值不被编解码。当no_pic_partition_flag等于1或rect_slice_flag等于1而且num_slices_in_pic_minus1等于1时,ph_multiple_slice_types_in_pic_flag被推论等于0而且不被显性地编解码于比特流中。备选地,一新的语法元素pps_multiple_slice_types_in_pic_flag可以进一步被发信于pps中,来指示出在参考该pps的每一画面中是否可存在有多于一种切片类型。当pps_multiple_slice_types_in_pic_flag等于0时,ph_multiple_slice_types_in_pic_flag被推论为等于0而且不被编码进比特流中。下面表格16与17显示一画面标头与一切片标头,其中语法包括对于指示出帧间切片与帧内切片是否存在加以发信。[0116]表格16:[0117][0118][0119][0120]表格17:[0121][0122]ph_multiple_slice_types_in_pic_flag的数值为1指明在画面中编解码切片可以有不同的slice_type数值。ph_multiple_slice_types_in_pic_flag的数值为0指明在画面中所有编解码切片都有相同的slice_type数值。当ph_multiple_slice_types_in_pic_flag不存在时,其数值被推论为0。[0123]ph_intra_slice_allowed_flag的数值等于0指明在画面中所有编解码切片都具有slice_type等于0或1。ph_intra_slice_allowed_flag的数值等于1指明在画面中可能有或可能没有一或多个slice_type等于2的编解码切片。当ph_multiple_slice_types_in_pic_flag等于0时,语法元素ph_slice_type指明在画面中所有切片的slice_type数值。[0124]变数intersliceallowed与intrasliceallowed如以下加以推导:[0125]–如果ph_multiple_slice_types_in_pic_flag等于1时,intersliceallowed被设定等于1而且intrasliceallowed被设定等于ph_intra_slice_present_flag[0126]–否则,intersliceallowed被设定等于(ph_slice_type=i)而且intrasliceallowed被设定等于(ph_slice_type==i)。[0127]在一些实施例中,对于支援基于次画面比特流合并(subpicture-basedbitstreammerging)而不需要改变phnal单元的比特流,编码器设定intersliceallowed与intrasliceallowed二者的数值为1。[0128](f)对每一切片类型是否可能存在加以发信[0129]在一些实施例中,视频编解码器对信息加以发信用以推导出每一切片类型(b、p、与i)是否可存在于该编解码画面中。在一些实施例中,一语法元素ph_multiple_slice_types_in_pic_flag被进一步加入于画面标头中,以指示出该画面的编解码切片中是否可存在有多于一种的切片类型。语法元素ph_multiple_slice_types_in_pic_flag等于1指示出在画面中的编解码切片可以有不同的slice_type数值。语法元素ph_multiple_slice_types_in_pic_flag等于0指示出画面中所有编解码切片都有相同的slice_type数值。[0130]当ph_multiple_slice_types_in_pic_flag等于1时,一语法元素ph_allowed_slice_types_idc被进一步发信用以推导出用于画面切片中所允许的切片类型。当ph_multiple_slice_types_in_pic_flag等于0时,一语法元素ph_slice_type被进一步发信以指明用于画面中所有切片的slice_type数值。变数bsliceallowed、psliceallowed、与isliceallowed的数值分别指示出切片类型b、p、与i是否可被允许于该画面中。变数bsliceallowed、psliceallowed、与isliceallowed可以从ph_multiple_slice_types_in_pic_flag、ph_allowed_slice_types_idc、与ph_slice_type的数值推导。关于仅适用于无使用的(unused)切片类型的编解码工具的ph语法元素的数值不被编解码。当no_pic_partition_flag等于1或rect_slice_flag等于1而且num_slices_in_pic_minus1等于1时,ph_multiple_slice_types_in_pic_flag被推论等于0而且不被显性地编解码于比特流中。[0131]备选地,一语法元素pps_multiple_slice_types_in_pic_flag可以进一步被发信于pps中,来指示出在参考该pps的每一画面中是否存在有多于一种切片类型。当pps_multiple_slice_types_in_pic_flag的数值等于0时,语法元素ph_multiple_slice_types_in_pic_flag被推论为等于0而且不被编码进比特流中。下面表格18与19显示一画面标头与一切片标头,其中语法包括对于指示出每一切片类型是否可能存在加以发信。[0132]表格18:[0133][0134][0135][0136]表格19:[0137][0138][0139]语法元素pred_weight_table是通过以下表格20所示的语法表格来加以提供。[0140]表格20:[0141][0142][0143]当pps_weighted_bipred_flag与wp_info_in_ph_flag二者皆等于1时,语法元素num_l1_weights指明thenumberofweights发信用于参考画面列表1中栏位(entries)的权重的数目。num_l1_weights的数值被约束为在0到min(15,num_ref_entries[1][rplsidx[1]])的范围(包含)。变数numweightsl1如以下加以推导:[0144]如果(pps_weighted_bipred_flag)[0145]numweightsl1=0[0146]否则如果(wp_info_in_ph_flag)[0147]numweightsl1=bsliceallowed?num_l1_weights:0[0148]否则numweightsl1=numrefidxactive[1][0149]在上面表格18所示的画面标头中,语法元素ph_multiple_slice_types_in_pic_flag等于1指示出画面中的编解码切片可以有不同的slice_type数值。ph_multiple_slice_types_in_pic_flag的数值等于0指明在画面中所有编解码切片都有相同的slice_type数值。当语法元素ph_multiple_slice_types_in_pic_flag不存在时,其数值被推论为等于0。当ph_multiple_slice_types_in_pic_flag等于1时,语法元素ph_allowed_slice_types_idc指明用于画面中编解码切片所被允许的slice_type数值。下面表格21显示通过ph_allowed_slice_types_idc所指明被允许的slice_type。(切片的编解码类型依据下面表格23通过slice_type加以指明)。[0150]表格21:[0151][0152]当ph_muliple_slice_types_in_pic_flag等于0时,语法元素ph_slice_type指明用于画面中所有切片标头的slice_type数值。变数bsliceallowed、psliceallowed、与isliceallowed如以下加以推导:[0153]–如果ph_multiple_slice_types_in_pic_flag等于0时,bsliceallowed被设定等于(ph_slice_type==b),psliceallowed被设定等于(ph_slice_type==p)而且isliceallowed被设定等于(ph_slice_type==i)[0154]–否则,bsliceallowed被设定等于(ph_allowed_slice_types_idc=0)、psliceallowed被设定等于(ph_allowed_slice_types_idc=1)而且isliceallowed被设定等于(ph_allowed_slice_types_idc=2)。[0155]在一些实施例中,对于支援基于次画面比特流合并(subpicture-basedbitstreammerging)而不需要改变phnal单元的比特流,编码器设定ph_inter_slice_allowed_flag与ph_intra_slice_allowed_flag二者的数值等于1。[0156](g)基于ph信息的条件来对切片类型加以发信[0157]在一些实施例中,当ph_inter_slice_allowed_flag等于1而且ph_intra_slice_allowed等于0,slice_type的数值只被允许等于0或1,而且可以通过一位元(onebin)所发信的语法旗标加以发信。在一些实施例中,基于ph_inter_slice_allowed_flag的数值等于1以及在ph中的ph_intra_slice_allowed的条件,视频编解码器对信息加以发信用以推导出在切片标头中slice_type的数值。在一些实施例中,当ph_inter_slice_allowed_flag等于1而且ph_intra_slice_allowed等于0,语法元素p_slice_flag指明slice_type的数值是否等于0或1。如此一来,具有ph_intra_slice_allowed等于0而且slice_type等于2的一比特流可以被避免(avoided)。下面表格22显示基于ph信息的条件对切片类型加以发信的一切片标头:[0158]表格22:[0159][0160](h)切片标头的语意(sliceheadersemantics)[0161]表格23:[0162]slice_typeslice_type的名字0b(b切片)1p(p切片)2i(i切片)[0163]在一些实施例中,当ph_multiple_slice_types_in_pic_flag等于0,slice_type的数值(当不存在时)被推论等于ph_slice_type,否则被推论等于p_slice_flag的数值。当ph_multiple_slice_types_in_pic_flag等于1而且intrasliceallowed等于0时,p_slice_flag等于1指明slice_type的数值等于p。当ph_multiple_slice_types_in_pic_flag等于1而且intrasliceallowed等于0时,p_slice_flag等于0指明slice_type的数值等于b。[0164]在一些实施例中,当ph_inter_slice_allowed_flag等于0,slice_type的数值(当不存在时)被推论等于2,否则被推论等于p_slice_flag。p_slice_flag等于1指明当ph_inter_slice_allowed_flag等于1而且ph_intra_slice_allowed等于0时,slice_type的数值等于p。p_slice_flag等于0指明当ph_inter_slice_allowed_flag等于1而且ph_intra_slice_allowed等于0时,slice_type的数值等于b。[0165]在一些实施例中,slice_type的数值(当不存在时)依据下列来加以决定:[0166]–如果ph_multiple_slice_types_in_pic_flag等于1,slice_type的数值被设定等于(slice_type_flag》=ph_allowed_slice_types_idc?slice_type_flag 1:slice_type_flag)。[0167]–否则,slice_type的数值被设定等于ph_slice_type。[0168]当ph_multiple_slice_types_in_pic_flag等于1而且ph_allowed_slice_types_idc的数值不等于3时,语法元素slice_type_flag指明slice_type的数值。[0169]在一些实施例中,当nal_unit_type是在idr_w_radl到cra_nut的范围(包含),而且vps_independent_layer_flag[generallayeridx[nuh_layer_id]]等于1,slice_type被约束为等于2。[0170]图1概念性绘示出一编码视频的一部分,其中在画面标头与pps的语法元素被用来指示出某个或某些切片类型是否存在于相对应的画面中。如所绘示,编码视频100包括画面111-114。这些画面参考一画面参数组(pictureparameterset,pps)105。编码视频100包括分别与视频画面111-114相关联的画面标头121-124。每一视频画面111-114包括一或多个切片,而且每一切片有一相对应切片标头。例如,视频画面114的切片是相关联于切片标头151-154。[0171]如所绘示,用于画面114的画面标头124发信一或多个切片信息语法元素,来指示出存在于该当前画面中的一或多种切片类型的存在。在一些实施例中,这些切片信息语法元素可以包括ph_mixed_slice_types_in_pic_flag、与ph_intra_slice_present_flag(如图1与上面表格12所示)。在一些实施例中,这些切片信息语法元素可以包括ph_slice_b_present_flag、ph_slice_p_present_flag、ph_slice_i_present_flag(如第上面表格7所示)。此一切片信息语法元素可以指示出一种特定的切片类型(帧间、帧内、b、p、或i)是否存在于当前画面中。[0172]此外,切片信息语法元素包括数个语法元素以指示出(i)一第一切片类型是否存在于该当前画面中,以及(ii)一第二且不相同的切片类型是否存在于该当前画面中。该第一切片类型的一切片(例如,帧内切片,i切片类型)并未参考除了该当前画面之外的其他画面的信息。该第二切片类型的一切片(例如,帧间切片,b或p切片类型)有参考除了该当前画面之外的其他画面的信息。例如,切片信息语法元素ph_mixed_slice_type_in_pic_flag与ph_intra_slice_present_flag可以被用来决定帧内切片与/或帧间切片是否被允许于视频画面114中(通过决定变数intrasliceallowed与intersliceallowed)。[0173]一视频编解码器可以对画面标头语法元素进行旁路而不加以编码或解码,该画面标头语法元素与存在于通过一或多个切片信息语法元素所识别出的当前画面中的一或多种切片类型不相关联。例如,如果intrasliceallowed为假,画面标头124中的语法元素160被跳过或旁路;而且如果intersliceallowed为假,画面标头140中的语法元素162被跳过或旁路。[0174]在一些实施例中,一画面标头的切片信息语法元素包括一多-切片-类型语法元素,来指示出该当前画面是否包括多于一种切片类型的切片。当该多-切片-类型语法元素指示出该当前画面包括多于一种切片类型的切片时,该当前画面的一切片的一切片标头发信或指示出一切片类型。在画面标头124中,语法元素ph_mixed_slice_types_in_pic_flag是一多-切片-类型语法元素,来指示出在画面中可以有不同切片类型的不同切片的一混和(例如,画面114中的一切片可以是i切片,而另一切片可以是b切片等)。在切片标头153中,多-切片-类型语法元素ph_mixed_slice_types_in_pic_flag被使用来决定语法元素“slice_type”是否被发信。[0175]pps105包括一pps语法元素来指示出不同切片类型的切片是否被允许(例如,pps_mixed_slice_types_in_pic_flag)。当该pps语法元素指示出多于一种切片类型的切片是被允许时,画面标头140对该多-切片-类型语法元素ph_mixed_slice_types_in_pic_flag加以发信。[0176]任何前述所提议方法可以于编码器与/或解码器中加以施行实作。例如,任何所提议方法可以于一编码器的一高阶语法编码模组与/或解码器的一高阶语法解码模组中加以施行实作。备选地,任何所提议方法可以以一电路整合于编码器的高阶语法编码模组与/或解码器的高阶语法解码模组中加以施行实作。任何前述所提议方法也可以于影像编码器与/或解码器中加以施行实作,其中所产生的比特流相对应于仅使用帧内画面预测的一个编解码帧。[0177]ii.示例性的视频编码器[0178]图2绘示出一示例性的视频编码器200。如图所示,视频编码器200从一视频源205接收输入视频信号并将该信号编码进比特流295。视频编码器200具有若干组件或模组以将来自视频源205的信号加以编码,至少包括有些组件是选择自转换模组210、量化模组211、逆量化模组214、逆转换模组215、帧内-画面估计模组320、帧内-预测模组225、运动补偿模组230、运动估计模组235、回路滤波器245、已重构画面缓冲器250、mv缓冲器265、mv预测模组275以及熵编码器290。运动补偿模组230与运动估计模组235是帧间-预测模组240的一部份。[0179]在一些实施例中,模组210-290是由计算设备或电子装置的一个或多个处理单元(例如,处理器)所执行的软体指令的模组。在一些实施例中,模组210-290是由电子装置的一个或多个积体电路(integratedcircuit,ic)所实现的硬体电路的模组。虽然模组210-290被示出为分开的模组,但是一些模组可以被组合成单一个模组。[0180]视频源205提供原始视频信号,其呈现没有压缩的每个视频帧的像素数据。减法器208计算视频源205的原始视频像素数据与来自于运动补偿模组230或者帧内-预测模组225的已预测像素数据213之间的差。转换模组210将此差(或残差像素数据或残差信号209)转换为转换系数(例如,透过执行离散余弦转换,或dct)。量化模组211将转换系数量化为已量化数据(或已量化系数)212,其由熵编码器290编码进比特流295中。[0181]逆量化模组214逆量化已量化数据(或已量化系数)212,以获得转换系数,而逆转换模组215对转换系数执行逆转换以产生已重构残差219。已重构残差219与已预测像素数据213相加以生成已重构像素数据217。在一些实施例中,已重构像素数据217被暂时存储在一线缓冲器(未示出)中以用于帧内-画面预测和空间mv预测。已重构像素由回路滤波器245进行滤波并被存储在已重构画面缓冲器250中。在一些实施例中,已重构画面缓冲器250是在视频编码器200之外的一记忆体。在一些实施例中,已重构画面缓冲器250是在视频编码器200之内的一记忆体。[0182]帧内-画面估计模组220基于已重构像素数据217执行帧内-预测,以产生帧内预测数据。帧内-预测数据被提供给熵编码器290以被编码进比特流295中。帧内-预测数据也被帧内-预测模组225使用,以产生已预测像素数据213。[0183]运动估计模组235通过提供mv给存储在已重构画面缓冲器250中的先前已解码视频帧的参考像素数据,来执行帧间-预测。这些mv被提供给运动补偿模组230以产生已预测像素数据。[0184]不用将完整实际mv编码进比特流中,视频编码器200使用mv预测来产生已预测mv,并且将用于运动补偿的mv与已预测mv之间的差被编码为残差运动数据并被存储在比特流295中。[0185]mv预测模组275基于参考mv来产生已预测mv,所述参考mv是在编码先前视频帧所产生的,也就是用于执行运动补偿的运动补偿mv。mv预测模组275从mv缓冲器265中取回来自先前视频帧的参考mv。视频编码器200将所产生以用于当前视频帧的mv存储在mv缓冲器265中,以作为用于产生已预测mv的参考mv。[0186]mv预测模组275使用参考mv来创建已预测mv。已预测mv可以由空间mv预测或时间mv预测来加以计算。当前视频帧(残差运动数据)的已预测mv与运动补偿mv(mcmv)之间的差值由熵编码器290编码进比特流295中。[0187]熵编码器290透过使用诸如上下文适应性二进制算术编码(context-basedadaptivebinaryarithmeticcoding,cabac)或霍夫曼编码(huffmanencoding)的熵编解码技术,将各种参数和数据编码进比特流295中。熵编码器290将各种标头元素、旗标、以及已量化转换系数212与残差运动数据,一起编码为语法元素进入比特流295中。然后比特流295被存储于存储装置中或透过诸如网络的通信介质被传输至一解码器。[0188]回路滤波器245对已重构像素数据217进行滤波运算或平滑操作运算以减少编解码伪影,特别是在像素块的边界处。在一些实施例中,所执行的滤波操作包括取样自适应偏移(sampleadaptiveoffset,sao)。在一些实施例中,滤波操作包括自适应回路滤波器(adaptiveloopfilter,alf)。[0189]在一些实施例中,熵编码器290将切片信息语法元素发信或编码进入比特流295中。切片信息语法元素,例如ph_slice_b_present_flag、ph_slice_p_present_flag、ph_slice_i_present_flag、与ph_mixed_slice_types_in_pic_flag,被编码进与视频画面相关联的画面标头中。依据所发信的切片信息语法元素,熵编码器290可以基于存在或不存在其中的切片类型,来对编码某些语法元素加以旁路或省略(bypassoromit)。[0190]图3概念性绘示出一程序300来发信在一画面标头的一或多个语法元素以指示出可能存在于当前画面中的切片类型。在一些实施例中,通过执行储存于一电脑可读取媒介上的指令,实施编码器200的一计算装置上的一个或多个处理单元(例如,处理器)会执行程序300。在一些实施例中,实施编码器200的一电子装置会执行程序300。[0191]编码器接收(于区块310)原始像素数据以被编码作为一视频的一当前画面进入一比特流中。编码器发信(于区块320)该当前画面的一画面标头,该画面标头包括一组一或多个切片信息语法元素在该画面标头,以指示出存在于该当前画面中的一或多个切片类型的存在。[0192]该组切片信息语法元素可以指示出一特定类型的切片是否存在于该当前画面中(例如ph_slice_b_present_flag指示出b-类型的切片存在于该当前画面中,等)。该组切片信息语法元素可以包括一或多个语法元素,用以指示出(i)一第一切片类型是否存在于该当前画面中,以及(ii)一第二且不相同的切片类型是否存在于该当前画面中。该第一切片类型的一切片并未参考除了该当前画面之外的画面的信息(例如,帧内切片或i切片),以及该第二切片类型的一切片有参考除了该当前画面之外的画面的信息(例如,帧间切片,b或p切片)。[0193]当发信画面标头时,视频解码器可以对相关于编解码工具的画面标头语法元素进行旁路而不加以剖析,当该编解码工具与存在于通过该组切片信息语法元素所识别出的当前画面中的一或多个切片类型不相关联。[0194]编码器通过使用该组切片信息语法元素来编码(于区块330)该当前画面的切片。在一些实施例中,该组切片信息语法元素包括一多-切片-类型语法元素来指示出该当前画面是否包括多于一种切片类型的切片(例如,ph_mixed_slice_types_in_pic_flag指示出多种切片类型的一混合可能存在于该当前画面中)。在一些实施例中,当该多-切片-类型语法元素指示出该当前画面包括多于一种切片类型的切片时,该当前画面的一切片的一切片标头指示出一切片类型。在一些实施例中,该当前画面参考一画面参数组(pps),该pps包括一pps语法元素来指示出不同切片类型的切片是否被允许于该当前画面中(例如,pps_mixed_slice_types_in_pic_flag)。当该pps语法元素指示出多于一种切片类型的切片是被允许时,该当前画面的画面标头包括该多-切片-类型语法元素。[0195]iii.示例性的视频解码器[0196]图4绘示出一示例性的视频解码器400。如图所示,视频解码器400是一影像-解码或视频-解码电路,其接收一比特流495并将比特流的内容解码为视频帧的像素数据以用于显示。视频解码器400具有用于解码比特流495的若干组件或模组,包括有些组件是选择自一逆量化模组411、一逆转换模组410、一帧内-预测模组425、一运动补偿模组430、一回路滤波器445、一已解码画面缓冲器450、一mv缓冲器465、一mv预测模组475与一剖析器490。运动补偿模组430是帧间-预测模组440的一部份。[0197]在一些实施例中,模组410-490是由计算设备的一个或多个处理单元(例如,处理器)所执行的软体指令的模组。在一些实施例中,模组410-490是由电子设备的一个或多个积体电路所实现的硬体电路的模组。虽然模组410-490被表示为分开的模组,但是一些模组可以被组合成单一个模组。[0198]剖析器490(或熵解码器)接收比特流495,并且根据由视频-编解码或影像-编解码标准所定义的语法来进行初步剖析。所剖析的语法元素包括各种标头元素、旗标、以及已量化数据(或已量化系数)412。剖析器490通过使用诸如上下文适应性二进制算术编码(context-adaptivebinaryarithmeticcoding,cabac)或霍夫曼编码的熵编解码技术来剖析出各种语法元素。[0199]逆量化模组411对已量化数据(或已量化系数)412进行去量化(de-quantize)以获得转换系数,并且逆转换模组410对转换系数416执行逆转换运算以产生已重构残差信号419。已重构残差信号419与来自于帧内-预测模组425或运动补偿模组430的已预测像素数据413相加,以产生已解码像素数据417。已解码像素数据由回路滤波器445滤波并被存储在已解码画面缓冲器450中。在一些实施例中,已解码画面缓冲器450是在视频解码器400之外的一记忆体。在一些实施例中,已解码画面缓冲器450是在视频解码器400之内的一记忆体。[0200]帧内-预测模组425从比特流495接收帧内-预测数据,并且据此从存储在已解码画面缓冲器450中的已解码像素数据417来产生已预测像素数据413。在一些实施例中,已解码像素数据417也被存储在用于帧内-画面预测和空间mv预测的一线缓冲器(未示出)中。[0201]在一些实施例中,已解码画面缓冲器450的内容被用于显示。显示装置455直接取出已解码画面缓冲器450的内容以进行显示,或将已解码画面缓冲器的内容取回到一显示缓冲器。在一些实施例中,显示装置透过一像素传输从已解码画面缓冲器450来接收像素值。[0202]运动补偿模组430根据运动补偿mv(mcmv),从存储在已解码画面缓冲器450中的已解码像素数据417来产生已预测像素数据413。这些运动补偿mv透过将自比特流495接收的残差运动数据与自mv预测模组475接收的预测mv相加而被解码。[0203]mv预测模组475基于参考mv来产生已预测mv,所述参考mv是在解码先前视频帧所产生的,也就是用于执行运动补偿的运动补偿mv。mv预测模组475从mv缓冲器465中取回先前视频帧的参考mv。视频解码器400将产生用来解码当前视频帧的运动补偿mv存储在mv缓冲器465中,以作为用于产生已预测mv的参考mv。[0204]回路滤波器445对已解码像素数据417执行滤波操作或平滑操作,以减少编解码伪影,特别是在像素块的边界处。在一些实施例中,所执行的滤波操作包括取样自适应偏移(sampleadaptiveoffset,sao)。在一些实施例中,滤波操作包括自适应回路滤波器(adaptiveloopfilter,alf)。[0205]在一些实施例中,熵解码器490将切片信息语法元素剖析或解码进入比特流495中。切片信息语法元素,例如ph_slice_b_present_flag、ph_slice_p_present_flag、ph_slice_i_present_flag、与ph_mixed_slice_types_in_pic_flag,从与视频画面相关联的画面标头中加以剖析。依据所发信于画面标头的切片信息语法元素,熵解码器490可以基于存在或不存在其中的切片类型,来对解码或剖析某些语法元素加以旁路或省略(bypassoromit)。[0206]图5概念性绘示出一程序500来使用在一画面标头的一或多个语法元素以指示出可能存在于当前画面中的切片类型。在一些实施例中,通过执行储存于一电脑可读取媒介上的指令,实施解码器400的一计算装置上的一个或多个处理单元(例如,处理器)会执行程序500。在一些实施例中,实施解码器400的一电子装置会执行程序500。[0207]解码器接收(于区块510)来自一比特流的数据以被解码作为一视频的一当前画面。解码器剖析(于区块520)该当前画面的一画面标头,该画面标头包括一组一或多个切片信息语法元素在该画面标头,以指示出存在于该当前画面中的一或多个切片类型的存在。该组切片信息语法元素可以指示出一特定类型的切片是否存在于该当前画面中(例如ph_slice_b_present_flag指示出b-类型的切片存在于该当前画面中,等)。该组切片信息语法元素可以包括一或多个语法元素,用以指示出(i)一第一切片类型是否存在于该当前画面中,以及(ii)一第二且不相同的切片类型是否存在于该当前画面中;其中该第一切片类型的一切片并未参考除了该当前画面之外的画面的信息(例如,切片类型i),以及该第二切片类型的一切片有参考除了该当前画面之外的画面的信息(例如,切片类型b与p)。[0208]当剖析画面标头时,视频解码器可以对相关于编解码工具的画面标头语法元素进行旁路而不加以剖析,该编解码工具与存在于通过该组切片信息语法元素所识别出的当前画面中的一或多个切片类型不相关联。[0209]视频解码器通过使用该组切片信息语法元素来重构(于区块530)该当前画面的切片。在一些实施例中,该组切片信息语法元素包括一多-切片-类型语法元素来指示出该当前画面是否包括多于一种切片类型的切片(例如,ph_mixed_slice_types_in_pic_flag指示出多种切片类型的一混合可能存在于该当前画面中)。在一些实施例中,当该多-切片-类型语法元素指示出该当前画面包括多于一种切片类型的切片时,该当前画面的一切片的一切片标头指示出一切片类型。在一些实施例中,该当前画面参考一画面参数组(pps),该pps包括一pps语法元素来指示出不同切片类型的切片是否被允许于该当前画面中(例如,pps_mixed_slice_types_in_pic_flag)。当该pps语法元素指示出多于一种切片类型的切片是被允许时,该当前画面的画面标头包括该多-切片-类型语法元素。[0210]iv.示例的电子系统[0211]很多上述的特征和应用可以被实现为软体处理,其被指定为记录在电脑可读存储介质(computerreadablestoragemedium)(也被称为电脑可读介质)上的指令集。当这些指令由一个或者多个计算单元或者处理单元(例如,一个或者多个处理器、处理器核或者其他处理单元)来执行时,则这些指令使得该处理单元执行这些指令所表示的动作。电脑可读介质的示例包括但不限于cd-rom、快闪记忆体驱动器(flashdrive)、随机存取记忆体(randomaccessmemory,ram)晶片、硬碟、可读写可程式设计唯读记忆体(erasableprogrammablereadonlymemory,eprom),电可擦除可程式设计唯读记忆体(electricallyerasableprogrammableread-onlymemory,eeprom)等。该电脑可读介质不包括透过无线或有线连接的载波和电信号。[0212]在本说明书中,术语“软体”意味着包括唯读记忆体中的韧体或者存储在磁存储装置中的应用程式,该应用程式可以被读入到记忆体中以用于处理器进行处理。同时,在一些实施例中,多个软体发明可以作为更大程式的子部分来实现,而保留不同的软体发明。在一些实施例中,多个软体发明可以作为分开的程式来实现。最后,一起实现此处所描述的软体发明的分开的程式的任何结合是在本发明的范围内。在一些实施例中,当被安装以在一个或者多个电子系统上进行操作时,软体程式定义了一个或者多个特定的机器实现方式,该机器实现方式执行和实施该软体程式的操作。[0213]图6概念性地绘示一电子系统600,本揭示的一些实施例可以于其中加以实施。电子系统600可以是电脑(例如,台式电脑、个人电脑、平板电脑等)、电话、pda或者其他种类的电子设备。这个电子系统包括各种类型的电脑可读媒质和用于各种其他类型的电脑可读媒质的介面。电子系统600包括汇流排605、处理单元610、影像处理单元(graphics-processingunit,gpu)615、系统记忆体620、网络625、唯读记忆体(read-onlymemory,rom)630、永久存储装置635、输入设备640和输出设备645。[0214]汇流排605集体表示与大量的电子系统600通信连接的内部设备的所有系统汇流排、外设汇流排和晶片组汇流排。例如,汇流排605透过影像处理单元615、唯读记忆体630、系统记忆体620和永久存储装置635,与处理单元610通信连接。[0215]对于这些各种记忆体单元,处理单元610取回执行的指令和处理的数据,以为了执行本发明的处理。在不同实施例中,该处理单元可以是单个处理器或者多核处理器。某些指令被传输影像处理单元615和并被其执行。该影像处理单元615可以卸载各种计算或补充由处理单元610提供的影像处理。[0216]唯读记忆体630存储处理单元610或者电子系统的其他模组所需要的静态数据和指令。另一方面,永久存储装置635是一种读写记忆体设备(read-and-writememory)。这个设备是一种非易失性(non-volatile)记忆体单元,其即使在电子系统600关闭时也存储指令和数据。本发明的一些实施例使用大容量存储设备(例如磁片或光碟及其相应的磁碟机)作为永久存储装置635。[0217]其他实施例使用卸载式存储装置设备(如软碟、快闪记忆体设备等,以及其相应的磁碟机)作为该永久存储装置。与永久存储装置635一样,系统记忆体620是一种读写记忆体设备。但是,与存储装置635不一样的是,该系统记忆体620是一种易失性(volatile)读写记忆体,例如随机读取记忆体。系统记忆体620存储一些处理器在运行时需要的指令和数据。在一些实施例中,根据本发明的处理被存储在该系统记忆体620、永久存储装置635和/或唯读记忆体630中。例如,各种记忆体单元包括用于根据一些实施例的处理多媒体剪辑的指令。对于这些各种记忆体单元,处理单元610取回执行的指令和处理的数据,以为了执行某些实施例的处理。[0218]汇流排605也连接到输入设备640和输出设备645。该输入设备640使得使用者沟通资讯并选择指令到该电子系统上。该输入设备640包括字母数位元键盘和指点设备(也被称为“游标控制设备”),摄像机(如网络摄像机(webcam)),用于接收语音命令的麦克风或类似的设备等。输出设备645显示由电子系统生成的图像或以其他方式输出的数据。输出设备645包括印表机和显示装置,例如阴极射线管(cathoderaytube,crt)或液晶显示器(liquidcrystaldisplay,lcd),以及扬声器或类似的音讯输出设备。一些实施例包括诸如同时用作输入设备和输出设备的触控式萤幕等设备。[0219]最后,如第6图所示,汇流排605也透过网络介面卡(未示出)将电子系统600耦接到网络625。在这个方式中,电脑可以是电脑网络(例如,局域网(localareanetwork,lan)、广域网络(wideareanetwork,wan)或者内联网)或者网络的网络(例如互联网)的一部分。电子系统600的任一或者所有元件可以与本发明结合使用。[0220]一些实施例包括电子元件,例如,微处理器、存储装置和记忆体,其将电脑程式指令存储到机器可读介质或者电脑可读介质(可选地被称为电脑可读存储介质、机器可读介质或者机器可读存储介质)。电脑可读介质的一些实例包括ram、rom、唯读光碟(read-onlycompactdisc,cd-rom),可烧录光碟(recordablecompactdisc,cd-r)、可读写光碟(rewritablecompactdisc,cd-rw)、唯读数位通用光碟(read-onlydigitalversatiledisc)(例如,dvd-rom,双层dvd-rom)、各种可记录/可读写dvd(例如dvdram、dvd-rw、dvd rw等)、快闪记忆体(如sd卡、迷你sd卡,微sd卡等)、磁性和/或固态硬碟、唯读和rw等)、快闪记忆体(如sd卡、迷你sd卡,微sd卡等)、磁性和/或固态硬碟、唯读和盘、超高密度光碟和其他任何光学介质或磁介质,以及软碟。电脑可读介质可以存储由至少一个处理单元执行的电脑程式,并且包括用于执行各种操作的指令集。电脑程式或电脑代码的示例包括机器代码,例如编译器产生的机器代码,以及包含由电脑、电子元件或微处理器使用注释器(interpreter)而执行的高级代码的文档。[0221]当以上讨论主要是指执行软体的微处理器或多核处理器时,很多上述的功能和应用程式由一个或多个积体电路执行,如特定应用的积体电路(applicationspecificintegratedcircuit,asic)或现场可程式设计闸阵列(fieldprogrammablegatearray,fpga)。在一些实施例中,这种积体电路执行存储在该电路本身上的指令。此外,一些实施例执行存储在可程式设计逻辑器件(programmablelogicdevice,pld),rom或ram设备中的软体。[0222]如本发明的说明书和任一请求项中所使用,术语“电脑”、“伺服器”、“处理器”和“记忆体”均指电子设备或其他技术设备。这些术语不包括人或群体。为了本说明书的目的,术语显示或显示装置指在电子设备上进行显示。如本发明的说明书和任一请求项中所使用,术语“电脑可读介质”、“电脑可读媒质”和“机器可读介质”完全局限于有形的、实体的物体,其以电脑可读的形式存储资讯。这些术语不包括任何无线信号、有线下载信号和其他任何短暂信号。[0223]在结合许多具体细节的情况下描述了本发明时,本领域通常知识者将认识到,本发明可以以其他具体形式而被实施,而不脱离本发明的精神。此外,大量的图(包括第3图和第5图)概念性示出了处理。这些处理的具体操作可以不以所示以及所描述的确切顺序来被执行。这些具体操作可用不在一个连续的操作系列中被执行,并且不同的具体操作可以在不同的实施例中被执行。另外,该处理透过使用几个子处理而被实现,或者作为更大巨集处理的部分。因此,本领域通常知识者将能理解的是,本发明不受前述说明性细节的限制,而是由请求项加以界定。[0224]附加的说明[0225]本文所描述的主题有时表示不同的元件,其包含在或者连接到其他不同的元件。可以理解的是,所描述的结构仅是示例,实际上可以由许多其他结构来实施,以实现相同的功能。从概念上讲,任何实现相同功能的组件的排列实际上是“相关联的”,以便实现所需的功能。因此,不论结构或中间部件,为实现特定的功能而组合的任何两个元件被视为“相互关联”,以实现所需的功能。同样,任何两个相关联的元件被看作是相互“可操作连接”或“可操作耦接”,以实现特定功能。能相互关联的任何两个组件也被视为相互“可操作地耦合”以实现特定功能。可操作连接的具体例子包括但不限于物理可配对和/或物理上相互作用的元件,和/或无线可交互和/或无线上相互作用的元件,和/或逻辑上相互作用和/或逻辑上可交互的元件。[0226]此外,关于基本上任何复数和/或单数术语的使用,本领域的技术人员可以根据上下文和/或应用从复数转换为单数和/或从单数到复数。为清楚起见,本文明确规定了不同的单数/复数排列。[0227]此外,本领域的通常知识者可以理解,通常,本发明所使用的术语特别是请求项中的,根据权利要求的主题,通常用作“开放”术语,例如,“包括”应解释为“包括但不限于,“有”应理解为“至少有”“包括”应解释为“包括但不限于”等。本领域的通常知识者可以进一步理解,若计画介绍特定数量的请求项内容,将在请求项内明确表示,并且,在没有这类内容时将不显示。例如,为帮助理解,下面请求项可能包含短语“至少一个”和“一个或多个”,以介绍请求项内容。然而,这些短语的使用不应理解为暗示使用不定冠词“a”或“an”介绍请求项内容,而限制了任何特定的请求项。甚至当相同的请求项包括介绍性短语“一个或多个”或“至少有一个”,不定冠词,例如“a”或“an”,则应被解释为表示至少一个或者更多,对于用于介绍请求项的明确描述的使用而言,同样成立。此外,即使明确引用特定数量的介绍性内容,本领域通常知识者可以认识到,这样的内容应被解释为表示所引用的数量,例如,没有其他修改的“两个引用”,意味着至少两个引用,或两个或两个以上的引用。此外,在使用类似于“a、b和c中的至少一个”的表述的情况下,通常如此表述是为了本领域通常知识者可以理解该表述,[0228]例如,“系统包括a、b和c中的至少一个”将包括但不限于单独具有a的系统,单独具有b的系统,单独具有c的系统,具有a和b的系统,具有a和c的系统,具有b和c的系统,和/或具有a、b和c的系统,等。本领域通常知识者进一步可理解,无论在说明书中、请求项中或者附图中,由两个或两个以上的替代术语所表现的任何分隔的单词和/或短语应理解为,包括这些术语中的一个,其中一个,或者这两个术语的可能性。例如,“a或b”应理解为,“a”,或者“b”,或者“a和b”的可能性。[0229]从前述可知,为了说明目的,此处已描述了各种实施方案,并且在不偏离本发明的范围和精神的情况下,可以进行各种变形。因此,此处所公开的各种实施方式不用于限制,专利申请范围表示真实的范围和精神。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献