多视角视频编码系统内并入视频可用性信息的方法和装置与流程

文档序号:13252735阅读:604来源:国知局
本申请是2008年09月16日提交的申请号为200880110403.4的发明专利申请“用于将视频可用性信息(VUI)结合在多视角视频(MVC)编码系统内的方法和装置”的分案申请。与相关申请的交叉引用本申请要求2007年10月5日提交的美国临时申请No.60/977,709的权益,这里通过引用将该临时申请全部结合在此。另外,本申请与标题为“METHODSANDAPPARATUSFORINCORPORATINGVIDEOUSABILITYINFORMATION(VUI)WITHINAMULTI-VIEWVIDEO(MVC)CODINGSYSTEM”、代理人案卷号为No.PU070239的非临时申请相关,该非临时申请也要求2007年10月5日提交的美国临时申请No.60/977,709的权益,并且被转让给与本申请相同的受让人、通过引用被结合在此并与本申请同时提交。技术领域本发明总地涉及视频编码和解码,更具体而言涉及用于将视频可用性信息(videousabilityinformation,VUI)结合在多视角视频编码(multi-viewvideocoding,MVC)内的方法和装置。

背景技术:
国际标准化组织/国际电工委员会(ISO/IEC)运动图片专家组-4(MPEG-4)第10部分高级视频编码(AVC)标准/国际电信联盟电信部(ITU-T)H.264推荐(以下称之为“MPEG-4AVC标准”)规定了序列参数集的视频可用性信息(VUI)参数的语法和语义。视频可用性信息包括纵横比、过扫描、视频信号类型、色度位置、定时、网络抽象层(NAL)假设参考解码器(HRD)参数、视频编码层(VCL)假设参考解码器参数、比特流限制等等的信息。视频可用性信息为相应比特流提供了额外信息,以允许用户进行更宽的应用。例如,在比特流限制信息中,视频可用性信息规定:(1)运动是否越过图片边界;(2)每图片的最大字节;(3)每宏块的最大比特;(4)最大运动向量长度(水平和垂直);(5)重排序帧的数目;(6)最大解码帧缓冲器大小。当解码器看到该信息时,解码器不是使用“级别”(level)信息来设定解码要求(这一般来说高于比特流实际所要求的),而是可以基于更严格的限度来定制其解码操作。多视角视频编码(MVC)是MPEG-4AVC标准的扩展。在多视角视频编码中,通过利用多个视角之间的相关性,可以对多个视角的视频图像进行编码。在所有视角之中,一个视角是基本视角,它是MPEG-4AVC标准兼容的,并且不能从其他视角中预测出。其他视角被称为非基本视角。非基本视角可以从基本视角和其他非基本视角中预测出。可以在时间上对每个视角进行欠采样。视角的时间子集可以由temporal_id语法元素来标识。视角的时间级别(temporallevel)是视频信号的一种表示。在多视角视频编码的比特流中,可以有视角和时间级别的不同组合。每个组合被称为一操作点。可以从比特流中提取出对应于这些操作点的子比特流。

技术实现要素:
本发明解决了现有技术的这些和其他缺陷和缺点,本发明涉及用于将视频可用性信息(VUI)结合在多视角视频编码(MVC)内的方法和装置。根据本发明的一个方面,提供了一种装置。该装置包括编码器,用于通过为各个视角、一视角中的各个时间级别以及各个操作点中的至少一种规定视频可用性信息来对多视角视频内容编码。根据本发明的另一方面,提供了一种方法。该方法包括通过为各个视角、一视角中的各个时间级别以及各个操作点中的至少一种规定视频可用性信息来对多视角视频内容编码。根据本发明的另一方面,提供了一种装置。该装置包括解码器,用于通过为各个视角、一视角中的各个时间级别以及各个操作点中的至少一种规定视频可用性信息来对多视角视频内容解码。根据本发明的另一方面,提供了一种方法。该方法包括通过为各个视角、一视角中的各个时间级别以及各个操作点中的至少一种规定视频可用性信息来对多视角视频内容解码。本发明的这些和其他方面、特征和优点将从以下的要结合附图理解的对示例性实施例的详细描述中清楚显现出来。附图说明根据以下示例性附图可以更好地理解本发明,附图中:图1是根据本发明一个实施例可以应用本发明的示例性多视角视频编码(MVC)编码器的框图;图2是根据本发明一个实施例可以应用本发明的示例性多视角视频编码(MVC)解码器的框图;图3是根据本发明一个实施例用于利用mvc_vui_parameters_extension()语法元素来对每个视角的比特流限制参数编码的示例性方法的流程图;图4是根据本发明一个实施例用于利用mvc_vui_parameters_extension()语法元素来对每个视角的比特流限制参数解码的示例性方法的流程图;图5是根据本发明一个实施例用于利用mvc_vui_parameters_extension()语法元素来对每个视角中的每个时间级别的比特流限制参数编码的示例性方法的流程图;图6是根据本发明一个实施例用于利用mvc_vui_parameters_extension()语法元素来对每个视角中的每个时间级别的比特流限制参数解码的示例性方法的流程图;图7是根据本发明一个实施例用于利用view_scalability_parameters_extension()语法元素来对每个操作点的比特流限制参数编码的示例性方法的流程图;并且图8是根据本发明一个实施例用于利用view_scalability_parameters_extension()语法元素来对每个操作点的比特流限制参数解码的示例性方法的流程图。具体实施方式本发明涉及用于将视频可用性信息(VUI)结合在多视角视频编码(MVC)内的方法和装置。本说明书说明了本发明。因此,将会明白,本领域的技术人员将能够设计出各种配置,这些配置虽然在这里没有明确描述或者示出,但却实现了本发明并被包括在其精神和范围之内。这里记载的所有示例和条件语言都意图用于教学目的,以帮助读者理解本发明和发明人对推进现有技术所贡献的思想,并且应当被解释为不限于这种具体记载的示例和条件。另外,这里的所有记载本发明的原理、方面和实施例及其具体示例的陈述,都意图包括其结构和功能等同物。此外,希望这种等同物既包括当前已知的等同物,也包括将来开发出的等同物,即所开发出的任何执行相同功能的元件,不论其结构如何。因此,例如,本领域的技术人员将会明白,这里给出的框图表示了实现本发明的示例性电路的概念性视图。类似地,将会明白,任何流程图、状态转换图、伪代码等等都表示实质上可以表示在计算机可读介质中并可以由计算机或处理器来如此执行的各种过程,不论这种计算机或处理器是否被明确地示出。图中所示的各种元件的功能可通过使用专用硬件以及能够结合适当的软件来执行软件的硬件来提供。当由处理器提供时,这些功能可由单个专用处理器提供、由单个共享处理器提供、或者由多个独立的处理器(其中一些可能被共享)提供。另外,对术语“处理器”或“控制器”的明确使用不应当被解释为只指能够执行软件的硬件,而是可以隐含地包括(但不限于)数字信号处理器(“DSP”)硬件、用于存储软件的只读存储器(“ROM”)、随机存取存储器(“RAM”)和非易失性存储设备。还可以包括其他传统的和/或定制的硬件。类似地,图中所示的任何开关都只是概念性的。它们的功能可通过程序逻辑的操作来实现、通过专用逻辑来实现、通过程序控制和专用逻辑的交互来实现,或者甚至手工实现,具体的技术可由实现者根据对上下文的更具体理解来选择。在其权利要求中,被表达为用于执行指定功能的装置的任何元件都意图涵盖执行该功能的任何方式,例如包括a)执行该功能的电路元件的组合或者b)任何形式的软件,因此包括固件、微代码等等,这种软件与用于执行该软件的适当电路相组合以执行该功能。这种权利要求所限定的本发明存在于以下事实中:由所记载的各种装置所提供的功能以权利要求所要求的方式被组合到一起。因此,认为任何能够提供这些功能的装置都与这里示出的那些是等同的。说明书中提到本发明的“一个实施例”或“实施例”意指结合该实施例描述的特定特征、结构、特性等等被包括在本发明的至少一个实施例中。因此,说明书中各处出现的短语“在一个实施例中”或者“在实施例”中不一定均指相同实施例。应当明白,例如在“A和/或B”和“A和B中的至少一个”的情况下使用术语“和/或”和“…中的至少一个”意图涵盖仅对列出的第一选项(A)的选择、或者仅对列出的第二选项(B)的选择、或者对两个选项(A和B)的选择。又例如,在“A、B和/或C”和“A、B和C中的至少一个”的情况下,这种短语意图涵盖仅对列出的第一选项(A)的选择、或者仅对列出的第二选项(B)的选择、或者仅对列出的第三选项(C)的选择、或者仅对列出的第一和第二选项(A和B)的选择、或者仅对列出的第一和第三选项(A和C)的选择、或者仅对列出的第二和第三选项(B和C)的选择、或者对所有三个选项(A和B和C)的选择。列出了多少项,这就可以扩展到多少项,这对于本领域和相关领域的普通技术人员来说是显而易见的。多视角视频编码(MVC)是多视角序列的编码的压缩框图。多视角视频编码(MVC)序列是从不同的视角点捕捉同一场景的两个或更多个视频序列的集合。这里可互换使用的“交叉视角”(cross-view)和“视角间”(inter-view)都指的是属于除当前视角外的视角的图片。另外,这里使用的“高级别语法”(highlevelsyntax)指的是存在于比特流中的、在层次上高于宏块层的语法。例如,这里使用的高级别语法可以指(但不限于)片层头部级、补充增强信息(SEI)级、图片参数集(PPS)级、序列参数集(SPS)级和网络抽象层(NAL)单元头部级的语法。另外,应当明白,虽然这里出于例示目的针对MPEG-4AVC标准的多视角视频编码扩展描述了本发明的一个或多个实施例,但是本发明并不仅限于该扩展和/或该标准,因此,可以针对其他视频编码标准、推荐及其扩展使用,同时仍维持本发明的精神。另外,应当明白,虽然这里出于例示目的针对比特流限制信息描述了本发明的一个或多个实施例,但是本发明并不仅限于使用比特流限制信息作为一类视频可用性信息,因此,根据本发明也可使用其他类型的可被扩展来针对多视角视频编码使用的视频可用性信息,同时仍维持本发明的精神。参考图1,示例性的多视角视频编码(MVC)编码器由标号100总地指示。编码器100包括组合器105,该组合器105具有与变换器110的输入发生信号通信连接的输出。变换器110的输出与量化器115的输入发生信号通信连接。量化器115的输出与熵编码器110的输入和逆量化器125的输入发生信号通信连接。逆量化器125的输出与逆变换器130的输入发生信号通信连接。逆变换器130的输出与组合器135的第一同相输入发生信号通信连接。组合器135的输出与内预测器145的输入和解块滤波器150的输入发生信号通信连接。解块滤波器150的输出与(用于视角i的)参考图片存储装置155的输入发生信号通信连接。参考图片存储装置155的输出与运动补偿器175的第一输入和运动估计器180的第一输入发生信号通信连接。运动估计器180的输出与运动补偿器175的第二输入发生信号通信连接。(用于其他视角的)参考图片存储装置160的输出与视差/照明估计器170的第一输入和视差/照明补偿器165的第一输入发生信号通信连接。视差/照明估计器170的输出与视差/照明补偿器165的第二输入发生信号通信连接。熵编码器120的输出可用作编码器100的输出。组合器105的同相输入可用作编码器100的输入,并且与视差/照明估计器170的第二输入和运动估计器180的第二输入发生信号通信连接。开关185的输出与组合器135的第二同相输入和组合器105的反相输入发生信号通信连接。开关185包括与运动补偿器175的输出发生信号通信连接的第一输入、与视差/照明补偿器165的输出发生信号通信连接的第二输入、以及与内预测器145的输出发生信号通信连接的第三输入。模式判决模块140具有连接到开关185的输出,用于控制开关185选择哪个输入。参考图2,示例性的多视角视频编码(MVC)解码器由标号200总地指示。解码器200包括熵解码器205,该熵解码器205具有与逆量化器210的输入发生信号通信连接的输出。该逆量化器的输出与逆变换器215的输入发生信号通信连接。逆变换器215的输出与组合器220的第一同相输入发生信号通信连接。组合器220的输出与解块滤波器225的输入和内预测器230的输入发生信号通信连接。解块滤波器225的输出与(用于视角i的)参考图片存储装置240的输入发生信号通信连接。参考图片存储装置240的输出与运动补偿器235的第一输入发生信号通信连接。(用于其他视角的)参考图片存储装置245的输出与视差/照明补偿器250的第一输入发生信号通信连接。熵解码器205的输入可用作解码器200的输入,用于接收残余比特流。另外,模式模块260的输入也可用作解码器200的输入,用于接收控制语法,以控制开关255选择哪个输入。此外,运动补偿器235的第二输入可用作解码器200的输入,用于接收运动向量。另外,视差/照明补偿器250的第二输入可用作解码器200的输入,用于接收视差向量和照明补偿语法。开关255的输出与组合器220的第二同相输入发生信号通信连接。开关255的第一输入与视差/照明补偿器250的输出发生信号通信连接。开关255的第二输入与运动补偿器235的输出发生信号通信连接。开关255的第三输入与内预测器230的输出发生信号通信连接。模式模块260的输入与开关255发生信号通信连接,用于控制开关255选择哪个输入。解块滤波器225的输出可用作解码器的输出。在MPEG-4AVC标准中,为视频可用性信息(VUI)规定了序列参数集的语法和语义参数。这表示可被插入到比特流中以增强视频对于许多种目的的可用性的附加信息。视频可用性信息包括纵横比、过扫描、视频信号类型、色度位置、定时、网络抽象层(NAL)假设参考解码器(HRD)参数、视频编码层(VCL)假设参考解码器参数、比特流限制等等的信息。根据本发明的一个或多个实施例,我们将现有的视频可用性信息字段用于新的、与现有技术不同的目的,并且还将其使用扩展到多视角视频编码(MVC)。在我们的多视角视频编码方案中,视频可用性信息被扩展,从而使得其在例如不同视角、一视角中的不同时间级别或者不同操作点之间可以是不同的。因此,根据一个实施例,我们根据以下各项中的一个或多个(但不限于此)来规定视频可用性信息:为各个视角规定视频可用性信息;为一视角中的各个时间级别规定视频可用性信息;以及分别为各个操作点规定视频可用性信息。在MPEG-4AVC标准中,包括视频可用性信息(VUI)的集合可在序列参数集(SPS)中传送。根据一个实施例,我们扩展了视频可用性信息的概念,以用在多视角视频编码(MVC)上下文内。有利地,这允许了为多视角视频编码中的不同视角、一视角中的不同时间级别或者不同操作点规定不同的视频可用性信息。在一个实施例中,我们在针对多视角视频编码考虑、修改和使用视频可用性信息中的视频可用性信息方面提供了一种新的方法。MPEG-4AVC标准中的比特流限制信息是在作为sequence_parameter_set()的一部分的vui_parameters()语法元素中规定的。表1示出了vui_parameters()的MPEG-4AVC标准语法。表1比特流限制信息的语法元素的语义如下:bitstream_restriction_flag等于1规定以下的经编码的视频序列比特流限制参数存在。bitstream_restriction_flag等于0规定以下的经编码的视频序列比特流限制参数不存在。motion_vectors_over_pic_boundaries_flag等于0表明,不使用在图片边界外的样本和在利用在图片边界外的一个或多个样本得出其值的分数样本位置处的样本来对任何样本进行互预测(interprediction)。motion_vectors_over_pic_boundaries_flag等于1表明,一个或多个在图片边界外的样本可用于互预测。当motion_vectors_over_pic_boundaries_flag语法元素不存在时,motion_vectors_over_pic_boundaries_flag值应当被推断为等于1。max_bytes_per_pic_denom指示出与经编码的视频序列中的任何经编码的图片相关联的虚拟编码层(VCL)网络抽象层(NAL)单元的大小的总和所不超过的字节数目。就此而言,表示网络抽象层单元流中的图片的字节的数目被规定为该图片的虚拟编码层网络抽象层单元数据的字节的总数(即,虚拟编码层网络抽象层单元的NumBytesInNALunit变量的总计)。max_bytes_per_pic_denom的值应当在0至16的范围中,包括0和16。取决于max_bytes_per_pic_denom,以下适用:—如果max_bytes_per_pic_denom等于0,则没有指示限度。—否则(max_bytes_per_pic_denom不等于0),则不应当用多于以下数目的字节在经编码视频序列中表示经编码图片:(PicSizeInMbs*RawMbBits)÷(8*max_bytes_per_pic_denom)当max_bytes_per_pic_denom语法元素不存在时,max_bytes_per_pic_denom的值应当被推断为等于2。变量PicSizeInMbs是图片中的宏块的数目。变量RawMbBits是像MPEG-4AVC标准的子条款7.4.2.1中那样得出的。max_bits_per_mb_denom指示出在经编码视频序列的任何图片中任何宏块的macroblock_layer()数据的经编码比特的最大数目。max_bits_per_mb_denom的值应当在0至16的范围中,包括0和16。取决于max_bits_per_mb_denom,以下适用:—如果max_bits_per_mb_denom等于0,则没有指示限度。—否则(max_bits_per_mb_denom不等于0),则不应当用多于以下数目的比特在比特流中表示经编码的macroblock_layer():(128+RawMbBits)÷max_bits_per_mb_denom取决于entropy_coding_mode_flag,macroblock_layer()数据的比特如下计数:—如果entropy_coding_mode_flag等于0,则macroblock_layer()数据的比特数目由宏块的macroblock_layer()语法结构中的比特数目给出。—否则(entropy_coding_mode_flag等于1),则宏块的macroblock_layer()数据的比特数目由当解析与该宏块相关联的macroblock_layer()时在MPEG-4AVC标准的子条款9.3.3.2.2和9.3.3.2.3中调用read_bits(1)的次数给出。当max_bits_per_mb_denom不存在时,max_bits_per_mb_denom的值应当被推断为等于1。log2_max_mv_length_horizontal和log2_max_mv_length_vertical分别指示出,对于经编码视频序列中的所有图片,以1/4亮度样本为单位,经解码的水平和垂直运动向量分量的最大绝对值。值n断言,以1/4亮度样本位移为单位,运动向量分量的值不应当超过从-2n至2n-1的范围(包括-2n和2n-1)。log2_max_mv_length_horizontal的值应当在0至16的范围中,包括0和16。log2_max_mv_length_vertical的值应当在0至16的范围中,包括0和16。当log2_max_mv_length_horizontal不存在时,log2_max_mv_length_horizontal和log2_max_mv_length_vertical的值应当被推断为等于16。应当注意,经解码的垂直或水平运动向量分量的最大绝对值也由MPEG-4AVC标准的附录A中规定的档次(profile)和级别限度来约束。num_reorder_frames指示在解码顺序上分别在经编码视频序列中的任何帧、互补场对或非成对场之前、而在输出顺序上则在其之后的帧、互补场对或非成对场的最大数目。num_reorder_frames的值应当在0至max_dec_frame_buffering的范围中,包括0和max_dec_frame_buffering。当num_reorder_frames语法元素不存在时,num_reorder_frames的值应当被如下推断:—如果profile_idc等于44、100、110、122或244,并且constraint_set3_flag等于1,则num_reorder_frames的值应当被推断为等于0。—否则(profile_idc不等于44、100、110、122或244,或者constraint_set3_flag等于0),num_reorder_frames的值应当被推断为等于max_dec_frame_bufferingMaxDpbSize。max_dec_frame_buffering规定以帧缓冲器为单位的假设参考解码器解码图片缓冲器(DPB)的必需大小。经编码视频序列不应当需要大小大于Max(1,max_dec_frame_buffering)帧缓冲器的经解码图片缓冲器来使得能够在图片定时补充增强信息(SEI)消息的dpb_output_delay所规定的输出时间输出经解码图片。max_dec_frame_buffering的值应当在num_ref_frames至MaxDpbSize(在MPEG-4AVC标准中的子条款A.3.1或A.3.2中规定)的范围中,包括num_ref_frames和MaxDpbSize。当max_dec_frame_buffering语法元素不存在时,max_dec_frame_buffering的值应当被如下推断:—如果profile_idc等于44或244,并且constraint_set3_flag等于1,则max_dec_frame_buffering的值应当被推断为等于0。—否则(profile_idc不等于44或244,或者constraint_set3_flag等于0),max_dec_frame_buffering的值应当被推断为等于MaxDpbSize。在多视角视频编码中,比特流限制参数基于更严格的限度定制了子流的解码操作。因此,应当允许为多视角视频编码的比特流每个可提取的子流规定比特流限制参数。根据一个实施例,我们提出了为每个视角、为一视角中的每个时间级别和/或为每个操作点规定比特流限制信息。为每个视角规定比特流限制参数可以为每个视角规定比特流限制参数。我们提出了mvc_vui_parameters_extension的语法,其是subset_sequence_parameter_set的一部分。表2示出了mvc_vui_parameters_extension的语法。表2mvc_vui_parameters_extension()在与此subset_sequence_parameter_set相关联的所有视角上循环。每个视角的view_id和每个视角的比特流限制参数在该循环内规定。比特流限制语法元素的语义如下:bitstream_restriction_flag[i]规定具有等于view_id的view_id[i]的视角的bitstream_restriction_flag的值。motion_vectors_over_pic_boundaries_flag[i]规定具有等于view_id的view_id[i]的视角的motion_vectors_over_pic_boundaries_flag的值。当motion_vectors_over_pic_boundaries_flag[i]语法元素不存在时,具有等于view_id的view_id[i]的视角的motion_vectors_over_pic_boundaries_flag应当被推断为等于1。max_bytes_per_pic_denom[i]规定具有等于view_id的view_id[i]的视角的max_bytes_per_pic_denom值。当max_bytes_per_pic_denom[i]语法元素不存在时,具有等于view_id的view_id[i]的视角的max_bytes_per_pic_denom的值应当被推断为等于2。max_bits_per_mb_denom[i]规定具有等于view_id的view_id[i]的视角的max_bits_per_mb_denom值。当max_bits_per_mb_denom[i]不存在时,具有等于view_id的view_id[i]的视角的max_bits_per_mb_denom的值应当被推断为等于1。log2_max_mv_length_horizontal[i]和log2_max_mv_length_vertical[i]分别规定具有等于view_id的view_id[i]的视角的log2_max_mv_length_horizontal和log2_max_mv_length_vertical的值。当log2_max_mv_length_horizontal[i]不存在时,具有等于view_id的view_id[i]的视角的log2_max_mv_length_horizontal和log2_max_mv_length_vertical的值应当被推断为等于16。num_reorder_frames[i]规定具有等于view_id的view_id[i]的视角的num_reorder_frames的值。num_reorder_frames[i]的值应当在0至max_dec_frame_buffering的范围中,包括0和max_dec_frame_buffering。当num_reorder_frames[i]语法元素不存在时,具有等于view_id的view_id[i]的视角的num_reorder_frames的值应当被推断为等于max_dec_frame_buffering。max_dec_frame_buffering[i]规定具有等于view_id的view_id[i]的视角的max_dec_frame_buffering的值。max_dec_frame_buffering[i]的值应当在num_ref_frames[i]至MaxDpbSize(在MPEG-4AVC标准中的子条款A.3.1或A.3.2中规定)的范围中,包括num_ref_frames[i]和MaxDpbSize。当max_dec_frame_buffering[i]语法元素不存在时,具有等于view_id的view_id[i]的视角的max_dec_frame_buffering的值应当被推断为等于MaxDpbSize。参考图3,用于利用mvc_vui_parameters_extension()语法元素来对每个视角的比特流限制参数编码的示例性方法由标号300总地指示。方法300包括开始块305,该开始块将控制传递到功能块310。功能块310设定变量M等于视角数目减1,并将控制传递到功能块315。功能块315将该变量M写入到比特流,并将控制传递到功能块320。功能块320设定变量i等于零,并将控制传递到功能块325。功能块325写入view_id[i]语法元素,并将控制传递到功能块330。功能块330写入bitstream_restriction_flag[i]语法元素,并将控制传递到判决块335。判决块335判定bitstream_restriction_flag[i]语法元素是否等于零。如果是,则控制被传递到判决块345。否则,控制被传递到功能块340。功能块340写入视角i的比特流限制参数,并将控制传递到判决块345。判决块345判定变量i是否等于变量M。如果是,则控制被传递到结束块399。否则,控制被传递到功能块350。功能块350设定变量i等于i加1,并将控制返回到功能块325。参考图4,用于利用mvc_vui_parameters_extension()语法元素来对每个视角的比特流限制参数解码的示例性方法由标号400总地指示。方法400包括开始块405,该开始块将控制传递到功能块407。功能块407从比特流中读取变量M,并将控制传递到功能块410。功能块410设定视角数目等于变量M加1,并将控制传递到功能块420。功能块420设定变量i等于零,并将控制传递到功能块425。功能块425读取view_id[i]语法元素,并将控制传递到功能块430。功能块430读取bitstream_restriction_flag[i]语法元素,并将控制传递到判决块435。判决块435判定bitstream_restriction_flag[i]语法元素是否等于零。如果是,则控制被传递到判决块445。否则,控制被传递到功能块440。功能块440读取视角i的比特流限制参数,并将控制传递到判决块445。判决块445判定变量i是否等于变量M。如果是,则控制被传递到结束块499。否则,控制被传递到功能块450。功能块450设定变量i等于i加1,并将控制返回到功能块425。为每个视角的每个时间级别规定比特流限制参数可以为每个视角的每个时间级别规定比特流限制参数。我们提出了mvc_vui_parameters_extension的语法,其是subset_sequence_parameter_set的一部分。表3示出了mvc_vui_parameters_extension的语法。表3比特流限制语法元素的语义如下:bitstream_restriction_flag[i][j]规定在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的bitstream_restriction_flag的值。motion_vectors_over_pic_boundaries_flag[i][j]规定在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的motion_vectors_over_pic_boundaries_flag的值。当motion_vectors_over_pic_boundaries_flag[i]语法元素不存在时,在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的motion_vectors_over_pic_boundaries_flag应当被推断为等于1。max_bytes_per_pic_denom[i][j]规定在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的max_bytes_per_pic_denom值。当max_bytes_per_pic_denom[i]语法元素不存在时,在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的max_bytes_per_pic_denom的值应当被推断为等于2。max_bits_per_mb_denom[i][j]规定在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的max_bits_per_mb_denom值。当max_bits_per_mb_denom[i]不存在时,在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的max_bits_per_mb_denom的值应当被推断为等于1。log2_max_mv_length_horizontal[i][j]和log2_max_mv_length_vertical[i][j]分别规定在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的log2_max_mv_length_horizontal和log2_max_mv_length_vertical的值。当log2_max_mv_length_horizontal[i]不存在时,在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的log2_max_mv_length_horizontal和log2_max_mv_length_vertical的值应当被推断为等于16。num_reorder_frames[i][j]规定在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的num_reorder_frames的值。num_reorder_frames[i]的值应当在0至max_dec_frame_buffering的范围中,包括0和max_dec_frame_buffering。当num_reorder_frames[i]语法元素不存在时,在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的num_reorder_frames的值应当被推断为等于max_dec_frame_buffering。max_dec_frame_buffering[i][j]规定在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的max_dec_frame_buffering的值。max_dec_frame_buffering[i]的值应当在num_ref_frames[i]至MaxDpbSize(在MPEG-4AVC标准中的子条款A.3.1或A.3.2中规定)的范围中,包括num_ref_frames[i]和MaxDpbSize。当max_dec_frame_buffering[i]语法元素不存在时,在具有等于view_id的view_id[i]的视角中具有等于temporal_id的temporal_id[i][j]的时间级别的max_dec_frame_buffering的值应当被推断为等于MaxDpbSize。在mvc_vui_parameters_extension()中,执行两个循环。外循环是在与subset_sequence_parameter_set相关联的所有视角上循环。在外循环中规定针对每个视角的时间级别的数目的view_id。内循环在一视角的所有时间级别上循环。在内循环中规定比特流限制信息。参考图5,用于利用mvc_vui_parameters_extension()语法元素来对每个视角中的每个时间级别的比特流限制参数编码的示例性方法由标号500总地指示。方法500包括开始块505,该开始块将控制传递到功能块510。功能块510设定变量M等于视角数目减1,并将控制传递到功能块515。功能块515将该变量M写入到比特流,并将控制传递到功能块520。功能块520设定变量i等于零,并将控制传递到功能块525。功能块525写入view_id[i]语法元素,并将控制传递到功能块530。功能块530设定变量N等于视角i中的时间级别的数目减1,并将控制传递到功能块535。功能块535将该变量N写入到比特流,并将控制传递到功能块540。功能块540设定变量j等于零,并将控制传递到功能块545。功能块545写入temporal_id[i][j]语法元素,并将控制传递到功能块550。功能块550写入bitstream_restriction_flag[i][j]语法元素,并将控制传递到判决块555。判决块555判定bitstream_restriction_flag[i][j]语法元素是否等于零。如果是,则控制被传递到判决块565。否则,控制被传递到功能块560。功能块560写入视角i中的时间级别j的比特流限制参数,并将控制传递到判决块565。判决块565判定变量j是否等于变量N。如果是,则控制被传递到判决块570。否则控制被传递到功能块575。判决块570判定变量i是否等于变量M。如果是,则控制被传递到结束块599。否则,控制被传递到功能块580。功能块580设定变量i等于i加1,并将控制返回到功能块525。功能块575设定变量j等于j加1,并将控制返回到功能块545。参考图6,用于利用mvc_vui_parameters_extension()语法元素来对每个视角中的每个时间级别的比特流限制参数解码的示例性方法由标号600总地指示。方法600包括开始块605,该开始块将控制传递到功能块607。功能块607从比特流中读取变量M,并将控制传递到功能块610。功能块610设定视角数目等于变量M加1,并将控制传递到功能块620。功能块620设定变量i等于零,并将控制传递到功能块625。功能块625读取view_id[i]语法元素,并将控制传递到功能块627。功能块627从比特流中读取变量N,并将控制传递到功能块630。功能块630设定视角i中的时间级别的数目等于N加1,并将控制传递到功能块640。功能块640设定变量j等于零,并将控制传递到功能块645。功能块645读取temporal_id[i][j]语法元素,并将控制传递到功能块650。功能块650读取bitstream_restriction_flag[i][j]语法元素,并将控制传递到判决块655。判决块655判定bitstream_restriction_flag[i][j]语法元素是否等于零。如果是,则控制被传递到判决块665。否则,控制被传递到功能块660。功能块660读取视角i中的时间级别j的比特流限制参数,并将控制传递到判决块665。判决块665判定变量j是否等于变量N。如果是,则控制被传递到判决块670。否则,控制被传递到功能块675。判决块670判定变量i是否等于变量M。如果是,则控制被传递到结束块699。否则,控制被传递到功能块680。功能块680设定变量i等于i加1,并将控制返回到功能块625。功能块675设定变量j等于j加1,并将控制返回到功能块645。为每个操作点规定比特流限制参数可以为每个操作点规定比特流限制参数。我们提出了在视角可缩放性信息SEI消息中传达每个操作点的比特流限制参数。视角可缩放性信息SEI消息的语法可如表4那样被修改。比特流限制信息的语法被插入在一个在所有操作点上循环的循环中。表4比特流限制语法元素的语义如下:bitstream_restriction_flag[i]规定具有等于operation_point_id的operation_point_id[i]的操作点的bitstream_restriction_flag的值。motion_vectors_over_pic_boundaries_flag[i]规定具有等于operation_point_id的operation_point_id[i]的操作点的motion_vectors_over_pic_boundaries_flag的值。当motion_vectors_over_pic_boundaries_flag[i]语法元素不存在时,具有等于operation_point_id的operation_point_id[i]的操作点的motion_vectors_over_pic_boundaries_flag应当被推断为等于1。max_bytes_per_pic_denom[i]规定具有等于operation_point_id的operation_point_id[i]的操作点的max_bytes_per_pic_denom值。当max_bytes_per_pic_denom[i]语法元素不存在时,具有等于operation_point_id的operation_point_id[i]的操作点的max_bytes_per_pic_denom的值应当被推断为等于2。max_bits_per_mb_denom[i]规定具有等于operation_point_id的operation_point_id[i]的操作点的max_bits_per_mb_denom值。当max_bits_per_mb_denom[i]不存在时,具有等于operation_point_id的operation_point_id[i]的操作点的max_bits_per_mb_denom的值应当被推断为等于1。log2_max_mv_length_horizontal[i]和log2_max_mv_length_vertical[i]分别规定具有等于operation_point_id的operation_point_id[i]的操作点的log2_max_mv_length_horizontal和log2_max_mv_length_vertical的值。当log2_max_mv_length_horizontal[i]不存在时,具有等于operation_point_id的operation_point_id[i]的操作点的log2_max_mv_length_horizontal和log2_max_mv_length_vertical的值应当被推断为等于16。num_reorder_frames[i]规定具有等于operation_point_id的operation_point_id[i]的操作点的num_reorder_frames的值。num_reorder_frames[i]的值应当在0至max_dec_frame_buffering的范围中,包括0和max_dec_frame_buffering。当num_reorder_frames[i]语法元素不存在时,具有等于operation_point_id的operation_point_id[i]的操作点的num_reorder_frames的值应当被推断为等于max_dec_frame_buffering。max_dec_frame_buffering[i]规定具有等于operation_point_id的operation_point_id[i]的操作点的max_dec_frame_buffering的值。max_dec_frame_buffering[i]的值应当在num_ref_frames[i]至MaxDpbSize(在MPEG-4AVC标准中的子条款A.3.1或A.3.2中规定)的范围中,包括num_ref_frames[i]和MaxDpbSize。当max_dec_frame_buffering[i]语法元素不存在时,具有等于operation_point_id的operation_point_id[i]的操作点的max_dec_frame_buffering的值应当被推断为等于MaxDpbSize。参考图7,用于利用view_scalability_parameters_extension()语法元素来对每个操作点的比特流限制参数编码的示例性方法由标号700总地指示。方法700包括开始块705,该开始块将控制传递到功能块710。功能块710设定变量M等于操作点数目减1,并将控制传递到功能块715。功能块715将该变量M写入到比特流,并将控制传递到功能块720。功能块720设定变量i等于零,并将控制传递到功能块725。功能块725写入operation_point_id[i]语法元素,并将控制传递到功能块730。功能块730写入bitstream_restriction_flag[i]语法元素,并将控制传递到判决块735。判决块735判定bitstream_restriction_flag[i]语法元素是否等于零。如果是,则控制被传递到判决块745。否则,控制被传递到功能块740。功能块740写入操作点i的比特流限制参数,并将控制传递到判决块745。判决块745判定变量i是否等于变量M。如果是,则控制被传递到结束块799。否则,控制被传递到功能块750。功能块750设定变量i等于i加1,并将控制返回到功能块725。参考图8,用于利用view_scalability_parameters_extension()语法元素来对每个操作点的比特流限制参数解码的示例性方法由标号800总地指示。方法800包括开始块805,该开始块将控制传递到功能块807。功能块807从比特流中读取变量M,并将控制传递到功能块810。功能块810设定操作点数目等于变量M加1,并将控制传递到功能块820。功能块820设定变量i等于零,并将控制传递到功能块825。功能块825读取opeartion_point_id[i]语法元素,并将控制传递到功能块830。功能块830读取bitstream_restriction_flag[i]语法元素,并将控制传递到判决块835。判决块835判定bitstream_restriction_flag[i]语法元素是否等于零。如果是,则控制被传递到判决块845。否则,控制被传递到功能块840。功能块840读取操作点i的比特流限制参数,并将控制传递到判决块845。判决块845判定变量i是否等于变量M。如果是,则控制被传递到结束块899。否则,控制被传递到功能块850。功能块850设定变量i等于i加1,并将控制返回到功能块825。现在将描述本发明的许多伴随优点/特征中的一些,其中一些已经在上文中提及了。例如,一个优点/特征是一种装置,该装置包括一编码器,用于通过为各个视角、一视角中的各个时间级别和各个操作点中的至少一种规定视频可用性信息来对多视角视频内容编码。另一个优点/特征在于如上所述的具有编码器的装置,其中参数是在至少一个高级别语法元素中规定的。另外,另一个优点/特征在于如上所述的具有编码器的装置,其中至少高级别语法元素包括mvc_vui_parameters_extension()语法元素、mvc_scalability_info补充增强信息语法消息、序列参数集、图片参数集以及补充增强信息的至少一部分中的至少一种。此外,另一个优点/特征在于如上所述的具有编码器的装置,其中所述视频可用性信息的至少一部分包括比特流限制参数。有关领域的普通技术人员基于这里的教导可以很容易确定本发明的这些和其他特征和优点。应当理解,本发明的教导可以用各种形式的硬件、软件、固件、专用处理器或其组合来实现。最优选的是本发明的教导被实现为硬件和软件的组合。另外,软件可以实现为有形地包含在程序存储单元上的应用程序。应用程序可以被上载到包括任何适当的体系结构的机器并被该机器所执行。优选地,该机器是在具有诸如以下硬件的计算机平台上实现的:一个或多个中央处理单元(“CPU”)、随机存取存储器(“RAM”)以及输入/输出(“I/O”)接口。该计算机平台还可包括操作系统和微指令代码。这里描述的各种过程和功能可以是微指令代码的一部分或者应用程序的一部分,或者是其任何组合(可由CPU执行)。此外,各种其他的外围单元可连接到该计算机平台,例如附加的数据存储单元和打印单元。还应当理解,因为附图中示出的构成系统组件和方法中的一些优选地是用软件实现的,因此系统组件或过程功能块之间的实际连接可能根据对本发明编程的方式而有所不同。有了这里的教导,有关领域的普通技术人员将能够想出本发明的这些和类似实现方式或配置。虽然这里已经参考附图描述了示例性的实施例,但是应当理解,本发明并不限于这些确切的实施例,有关领域的普通技术人员可在其中实现各种变化和修改,而不脱离本发明的精神或范围。所有这种变化和修改都意图被包括在权利要求所限定的本发明的范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1