CN106105220A - 用于视频编码和解码的方法和装置 - Google Patents

用于视频编码和解码的方法和装置 Download PDF

Info

Publication number
CN106105220A
CN106105220A CN201480076847.6A CN201480076847A CN106105220A CN 106105220 A CN106105220 A CN 106105220A CN 201480076847 A CN201480076847 A CN 201480076847A CN 106105220 A CN106105220 A CN 106105220A
Authority
CN
China
Prior art keywords
picture
layer
instruction
bit stream
output layer
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.)
Granted
Application number
CN201480076847.6A
Other languages
English (en)
Other versions
CN106105220B (zh
Inventor
K·雨居尔
M·安尼克塞拉
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.)
Nokia Technologies Oy
Original Assignee
Nokia Technologies Oy
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
Application filed by Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of CN106105220A publication Critical patent/CN106105220A/zh
Application granted granted Critical
Publication of CN106105220B publication Critical patent/CN106105220B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/187Methods 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 a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission

Landscapes

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

Abstract

公开了用于视频编码和解码的各种方法、装置和计算机程序产品。在一些实施例中,为了指示不同时刻的图片的构成,一些可用性信息可以被嵌入视频比特流,以指示在多于一个层被使用时的预期显示行为和使用这一信息的相关联的显示行为。更具体地,所嵌入的信息可以指示这些层需要如何在视频比特流中被构成。该信息可以指示预期显示行为是否为组合(覆叠)基础层和增强层解码图片。该信息可以指示基础层和增强层解码图片允许被覆叠。另外地或备选地,该信息可以指示在显示期间增强层图片不应当与基础层图片组合。

Description

用于视频编码和解码的方法和装置
技术领域
本申请一般性地涉及用于视频编码和解码的装置、方法和计算机程序。
背景技术
这一章节意图为提供权利要求中记载的发明的背景或上下文。本文的描述可以包括能够追求的构思,但不必然是之前已设想到或追求到的构思。因此,除非本文另有指示,这一章节所描述的内容不是本申请中的说明书和权利要求的现有技术并且没有通过包括在这一章节中而被承认是现有技术。
视频编码***可以包括编码器和解码器,编码器将输入视频变换为适合于存储/传输的压缩表示,解码器能够将压缩的视频表示解压缩回到可观看的形式。编码器可以丢弃源视频序列中的一些信息以便以更紧凑的形式表示视频,例如以使得能够以相比否则可能需要的比特率较低的比特率来存储/传输视频信息。
当前调研和开发了用于提供三维(3D)视频内容的各种技术。特别地,集中的研究已经关注于各种多视图应用,其中观看者能够从特定的视点看到仅一对立体视频并且从不同的视点看到另一对立体视频。针对这种多视图应用的最可行方法之一已经被发现是这样的:其中仅有限数目的输入视图(例如,单一视频或立体视频加上一些补充数据)被提供给解码器侧,并且所有要求的视图然后由解码器本地渲染(即,合成)以被显示在显示器上。
在3D视频内容的编码中,能够使用视频压缩***,诸如高级视频编码标准H.264/AVC或H.264/AVC的多视图视频编码MVC扩展。
发明内容
一些实施例提供了一种用于编码和解码视频信息的方法。在许多实施例中,为了指示不同时刻的图片的构成,一些可用性信息可以被嵌入视频比特流,以指示在多于一个层被使用时的预期显示行为和使用这一信息的相关联的显示行为。更具体地,所嵌入的信息可以指示这些层需要如何在视频比特流中被构成。在一些实施例中,将被嵌入的信息包括下列一项或多项:该信息可以指示预期显示行为是否为组合基础层和增强层解码图片。该信息可以指示基础层和增强层解码图片允许被覆叠。另外地或备选地,该信息可以指示在显示期间增强层图片不应当与基础层图片组合。一种另外的选择是该信息指示预期显示行为是根据与由辅助图片的类型和所指示特性所确定的初级图片相关联的解码辅助图片来修改解码的初级图片、或者这种修改是否被允许但不总是被要求。在一些实施例中,该信息应用到的辅助图片层和/或辅助图片类型可以被指示。
在详细描述中提供了本发明的示例的各种方面。
根据第一方面,提供了一种方法,该方法包括:
将图片编码到比特流中,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
将指示编码到该比特流中,该指示指示在该至少两个可缩放性层为输出层时的预期显示行为。
根据本发明的第二方面,提供了一种方法,该方法包括:
从比特流解码图片,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
从该比特流解码指示,该指示指示在该至少两个可缩放性层为输出层时的预期显示行为;以及
根据该指示来显示该至少两个可缩放性层。
根据本发明的第三方面,提供了一种装置,该装置包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得装置至少执行下列:
将图片编码到比特流中,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
将指示编码到该比特流中,该指示指示在该至少两个可缩放性层为输出层时的预期显示行为。
根据本发明的第四方面,提供了一种装置,该装置包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得装置至少执行下列:
从比特流解码图片,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
从该比特流解码指示,该指示指示在该至少两个可缩放性层是输出层时的预期显示行为;以及
根据该指示来显示该至少两个可缩放性层。
根据本发明的第五方面,提供了一种具体化在非瞬态计算机可读介质上的计算机程序产品,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在至少一个处理器上被执行时使得装置或***:
将图片编码到比特流中,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
将指示编码到该比特流中,该指示指示在该至少两个可缩放性层为输出层时的预期显示行为。
根据本发明的第六方面,提供了一种计算机程序产品,该计算机程序产品包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得装置或***至少执行下列:
从比特流解码图片,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
从该比特流解码指示,该指示指示在该至少两个可缩放性层是输出层时的预期显示行为;以及
根据该指示来显示该至少两个可缩放性层。
本发明的许多实施例,一些可用性信息可以被嵌入视频比特流,以指示在多于一个层被使用时的预期显示行为和使用这一信息的相关联的显示行为。因此,解码器可以在解码和输出视频比特流的图片时利用该信息。
附图说明
为了更完整地理解本发明的示例实施例,现在结合附图对以下描述作出参考,在附图中:
图1示意性地示出了采用本发明的一些实施例的电子设备;
图2示意性地示出了适合于采用本发明的一些实施例的用户设备;
图3进一步示意性地示出了使用无线和/或有线网络连接被连接的采用本发明的实施例的电子设备;
图4a示意性地示出了编码器的实施例;
图4b示意性地示出了根据一些实施例的空间可缩放性编码装置的实施例;
图5a示意性地示出了解码器的实施例;
图5b示意性地示出了根据一些实施例的空间可缩放性解码装置的实施例;
图6图示了在显示器上显示两个图片的示例;
图7示出了由两个区块构成的图片的示例;
图8示出了基于DIBR的3DV***的简化模型;
图9示出了立体摄像机设置的简化2D模型;
图10描绘了当前块和可使用作为运动预测候选的五个空间邻居的示例;
图11a描绘了针对将参考层的区域进行增强的增强层的经缩放的参考层偏移的示例;
图11b描绘了针对与参考层图片相对应的增强层的区域的经缩放的参考层偏移的示例;
图12示出了编码方法的高级别流程图;
图13示出了解码方法的高级别流程图;
图14a至图14d图示了一些辅助图片类型;
图15a图示了两个不同场景的图像帧在场景转变期间如何被放置在可缩放性层上的示例;
图15b图示了在具有两层的访问单元中提供的图片流的一部分的示例;
图16图示了在编码器处的示例方法;
图17图示了在解码器处的示例方法;以及
图18示出了能够借助于不同层的图像帧的放置来构成的场景转变。
具体实施例
在下文中,将在一个视频编码布置的上下文中描述本发明的若干实施例。然而,要注意本发明不限于这种特定布置。事实上,不同的实施例宽泛地在需要改进参考图片处置的任何环境中具有应用。例如,本发明可以可应用于视频编码***,如流***、DVD播放器、数字电视接收器、个人视频录像机、个人计算机上的***和计算机程序、手持式计算机和通信设备、以及网络元件,诸如代码转换器和视频数据在其中被处置的云计算布置。
在下文中,使用参考编码(解码)的惯例来描述若干实施例,这指示实施例可以应用于解码和/或编码。
H.264/AVC标准由国际电信联盟(ITU-T)的电信标准化部门的视频编码专家组(VCEG)的联合视频工作组(JVT)和国际标准化组织(ISO)/国际电工技术委员会(IEC)的运动图片专家组(MPEG)所开发。H.264/AVC标准由这两个母标准化组织颁布,并且它也被称为ITU-T推荐H.264和ISO/IEC国际标准14496-10,也作为MPEG-4第10部分高级视频编码(AVC)而已知。已经存在H.264/AVC标准的多个版本,每个版本都将新扩展或特征整合到规范。这些扩展包括可缩放视频编码(SVC)和多视图视频编码(MVC)。
高效率视频编码(其可以缩写为HEVC或H.265/HEVC)标准由VCEG和MPEG的联合协作工作组-视频编码(JCT-VC)所开发。当前,H.265/HEVC标准的就绪版本正在ISO/IEC和ITU-T中被批准。最终标准将由这两个母标准化组织来颁布,并且它被称为ITU-T推荐H.265和ISO/IEC国际标准23008-2,也作为MPEG-H第2部分高效率视频编码(HEVC)而已知。当前正在进行的标准化项目是开发H.265/HEVC的扩展,包括可缩扩展放、多视图扩展、三维扩展和保真度范围扩展,它们可以分别被称为SHVC、MV-HEVC、3D-HEVC和REXT。本描述中为了理解H.265/HEVC、SHVC、MV-HEVC、3D-HEVC和REXT的定义、结构或概念的目的而对这些标准规范作出的参考,将被理解为是对在本申请的日期之前可得到的这些标准的最新版本的参考,除非另有指示。
在描述H.264/AVC和HEVC时以及在示例实施例中,可以使用算术运算符、逻辑运算符、关系运算符、按位运算符、赋值运算符的通用符号和例如在H.264/AVC或HEVC中规定的范围符号。此外,可以使用例如在H.264/AVC或HEVC中规定的通用数学函数,并且可以使用例如在H.264/AVC或HEVC中规定的运算符的通用优先级顺序和执行顺序(从左到右或从右到左)。
可以如下作出根据本发明的编解码器中使用的一些定义:
-语法元素:比特流中表示的数据的元素。
-语法结构:以规定的顺序一起存在于比特流中的零个或多个语法元素。
-参数:参数集合的语法元素。
-参数集合:包含参数的语法结构,并且其能够例如使用标识符从另一语法结构被参考。
-图片参数集合:包含语法元素的语法结构,这些语法元素应用于由在每个条带(slice)头部中找到的语法元素确定的零个或多个完整编码图片。
-序列参数集合:包含语法元素的语法结构,这些语法元素应用于由在图片参数集合中找到的语法元素确定的零个或多个完整编码的视频序列,该图片参数集合由在每个条带头部中找到的另一语法元素所参考。
-条带:在编码图片内包含整数个基元编码单元的编码单元。
-基元编码单元:图片根据其能够被划分为条带的单元;例如在一些方案中,编码图片中的宏块或宏块对;例如在一些方案中,编码树单元。
-条带头部:包含数据元素的编码条带的一部分,这些数据元素属于条带中表示的第一或所有基元编码单元。
-编码图片:图片的编码表示。编码图片可以是编码场或编码帧。
-编码表示:以其编码形式来表示的数据元素。
在描述H.264/AVC和HEVC时以及在示例实施例中,以下描述符可以用于规定每个语法元素的解析过程。
-b(8):具有比特串的任何模式的字节(8比特)。
-se(v):从左边比特开始的有符号整数的指数哥伦布编码的语法元素。
-u(n):使用n比特的无符号整数。当n是语法表中的“v”时,比特数以依赖于其他语法元素的值的方式变化。这一描述符的解析过程由来自被解释为最高有效位先写的无符号整数的二进制表示的比特流的n个接下来的比特所规定。
-ue(v):从左边比特开始的无符号整数的指数哥伦布编码的语法元素。
指数哥伦布比特串可以例如使用下表而被转换成代码编号(codeNum):
与指数哥伦布比特串相对应的代码编号可以例如使用下表而被转换成se(v):
codeNum 语法元素值
0 0
1 1
2 -1
3 2
4 -2
5 3
6 -3
... ...
在描述H.264/AVC和HEVC时以及在示例实施例中,语法结构、语法元素的语义和解码过程可以被规定如下。比特流中的语法元素可以用粗体类型表示。每个语法元素通过其名称(具有下划线字符的所有小写字母)、任选地是其一个或两个语法范畴、以及用于其编码表示方法的一个或两个描述符来描述。解码过程根据语法元素的值和之前解码的语法元素的值进行行为。当语法元素的值被使用在语法表或文本中时,它以正常(即,非粗体)类型出现。在一些情况中,语法表可以使用从语法元素值推导的其他变量的值。这些变量出现在语法表或文本中,由小写字母和大写字母的混合来命名并且没有任何下划线字符。以大写字母开始的变量可以被推导用于解码当前的语法结构和所有依赖的语法结构。以大写字母开始的变量可以在解码过程中被用于后面的语法结构而不需要提及变量的原始语法结构。以小写字母开始的变量可以仅在它们被推导的上下文中被使用。在一些情况中,用于语法元素值或变量值的“助记”名称与它们的数值可互换地被使用。有时使用“助记”名称而不需要任何相关联的数值。值和名称的关联可以在文本中规定。这些名称可以由通过下划线字符分开的一组或多组字母构成。每组可以以大写字母开始并且可以包含更多的大写字母。
在描述H.264/AVC和HEVC时以及在示例实施例中,可以使用以下各项来规定语法结构。用花括号围住的一组语句是复合语句并且在功能上被当作单个语句。“while”结构规定了条件是否为真的测试,并且如果为真,则反复地规定对语句(或复合语句)的评估直到条件不再为真。“do...while”结构一次规定语句的评估,之后是条件是否为真的测试,并且如果为真,则规定对语句的反复评估直到条件不再为真。“if...else”结构规定了条件是否为真的测试,并且如果条件为真,则规定对初级语句的评估,否则规定对备选语句的评估。如果不需要备选语句评估,则省略该结构的“else”部分和相关联的备选语句。“for”结构规定了对初始语句的评估,之后是条件的测试,并且如果条件为真,则规定对跟随有后续语句的初级语句的反复评估直到条件不再为真。
在这一章节中,作为实施例可以被实施在其中的视频编码器、解码器、编码方法、解码方法和比特流结构的示例,描述了一些密钥定义、比特流和编码结构、以及H.264/AVC和HEVC的概念。一些密钥定义、比特流和编码结构、以及H.264/AVC的概念与草案HEVC标准相同,因此它们在下文联合地被描述。本发明的各方面不限于H.264/AVC或HEVC,而是针对本发明可以部分地或完全地被实现在其上的一个可能基础给出本描述。
类似于许多较早的视频编码标准,H.264/AVC和HEVC中规定了比特流语法和语义以及用于无误比特流的解码过程。编码过程未被规定,但是编码器必须生成一致的比特流。比特流和解码器一致性能够利用假想参考解码器(HRD)来验证。这些标准包含有助于应对传输误差和损耗的编码工具,但是这些工具在编码中的使用是可选的并且未针对错误比特流规定解码过程。
对于向H.264/AVC或HEVC编码器的输入、以及H.264/AVC或HEVC解码器的输出而言的基元单元分别是图片。在H.264/AVC和HEVC中,图片可以是帧或场。帧包括亮度样本和对应色度样本的矩阵。场是帧的交替样本行的集合并且在源信号被交错时可以被用作编码器输入。当与亮度图片相比时,色度图片可以被子采样。例如,在4:2:0采样模式中,沿着两个坐标轴,色度图片的空间分辨率是亮度图片的空间分辨率的一半。
分割可以被定义为将集合划分成子集以使得该集合的每个元素恰好在这些子集之一中。图片分割可以被定义为将图片划分成较小的非重叠单元。块分割可以被定义为将块划分成较小的非重叠单元,诸如子块。在一些情况中,术语“块分割”可以被考虑为覆盖多个级别的分割,例如将图片分割成条带、以及将每个条带分割成更小单元,诸如H.264/AVC的宏块。注意,相同的单元(诸如,图片)可以具有多于一次的分割。例如,草案HEVC标准的编码单元可以被分割成预测单元并且分离地通过另一四叉树分割成变换单元。
在H.264/AVC中,宏块是16x16的亮度样本块和对应的色度样本块。例如,在4:2:0采样模式中,宏块每色度分量包含一个8x8的色度样本块。在H.264/AVC中,图片被分割成一个或多个条带组,并且条带组包含一个或多个条带。在H.264/AVC中,条带由在特定条带组内的光栅扫描中连续排序的整数个宏块构成。
在HEVC标准化进程中,例如关于图片分割单元的术语已经演变。在接下来的段落中,提供了HEVC术语的一些非限制性示例。
在HEVC标准的一个草案版本中,图片被划分成覆盖图片区域的编码单元(CU)。CU由一个或多个预测单元(PU)和一个或多个变换单元(TU)构成,PU定义针对CU内的样本的预测过程,TU定义针对CU中的样本的预测误差编码过程。通常,CU由方形样本块构成,方形样本块具有从预定义的可能CU尺寸集合可选择的尺寸。具有最大允许尺寸的CU通常被命名为LCU(最大编码单元),并且视频图片被划分成非重叠的LCU。LCU能够进一步被拆分成更小CU的组合,例如,通过递归地拆分LCU和所产生的CU。每个所产生的CU可以具有至少一个PU以及与其相关联的至少一个TU。每个PU和TU能够进一步被拆分成更小的PU和TU,以便分别增加预测和预测误差编码过程的粒度。每个PU可以具有与其相关联的定义什么种类的预测将被应用于该PU内像素的预测信息(例如,用于帧间预测的PU的运动矢量信息和用于帧内预测的PU的帧内预测方向信息)。类似地,每个TU可以与描述用于TU内样本的预测误差解码过程的信息(包括例如DCT系数信息)相关联。可以在CU级别处用信号通知是否针对每个CU应用预测误差编码。在没有与CU相关联的预测误差残留的情况中,能够考虑为没有用于CU的TU。在一些实施例中,通过将CU拆分成四个相等大小的方形PU或者以对称或非对称方式垂直地或水平地将CU拆分成两个矩形PU,能够实现PU拆分。将图像划分成CU以及将CU划分成PU和TU可以在比特流中用信号被通知,以允许解码器再现这些单元的预期结构。
解码器通过应用类似于编码器的预测手段以形成像素块的预测表示(使用由编码器创建并且以压缩表示存储的运动或空间信息)和预测误差解码(预测误差编码的逆操作恢复空间像素域中的量化预测误差信号)来重构输出视频。在应用预测和预测误差解码手段之后,解码器对预测和预测误差信号(像素值)求和以形成输出视频帧。解码器(和编码器)还能够应用附加的滤波手段,以在传递输出视频用于显示和/或将它作为即将到来的帧的预测参考存储在视频序列中之前提高输出视频的质量。输出过程可以被考虑为是解码器提供解码的且裁剪的图片作为解码过程输出的过程。输出过程通常是视频编码标准的一部分,通常作为假想参考解码器规范的一部分。显示过程可以被考虑为是作为其输入而具有裁剪的解码图片(它们是解码过程的输出)并且在屏幕等上渲染这些图片的过程。显示过程通常未在视频编码标准中规定。
在草案HEVC标准中,图片能够被分割成区块(tile),区块为矩形并且包含整数个LCU。在草案HEVC标准中,分割成区块形成规则网格,其中区块的高度和宽度彼此以最大一个LCU而不同。在草案HEVC中,条带被定义为一个独立条带段和在相同访问单元内位于下一独立条带段(如果有的话)之前的所有后续从属条带段(如果有的话)中包含的整数个编码树单元。在草案HEVC标准中,条带段被定义为在区块扫描中连续排序并且包含在单个NAL单元中的整数个编码树单元。将每个图片划分成条带段是一种分割。在草案HEVC标准中,独立条带段被定义为条带段头部的语法元素的值不是从在前条带段的值推断出的条带段,并且从属条带段被定义为条带段头部的一些语法元素的值从按解码顺序的在前独立条带段的值推断的条带段。在草案HEVC标准中,条带头部被定义为如下的独立条带段的条带段头部,该独立条带段是当前的条带段或者是位于当前的从属条带段之前的独立条带段,并且条带段头部被定义为包含属于以条带段表示的第一或所有编码树单元的数据元素的编码条带段的一部分。在草案HEVC中,条带由整数个CU构成。CU按区块内或图片(如果区块没有在使用中)内的LCU的光栅扫描顺序被扫描。在LCU内,CU具有特定的扫描顺序。
HEVC工作草案5(WD5)中的基本编码单元是树块(treeblock)。树块是具有三个样本阵列的图片的NxN亮度样本块和两个对应的色度样本块、或者是单色图片或使用三个单独颜色平面所编码的图片的NxN样本块。树块可以被分割用于不同的编码和解码过程。树块分割是从分割具有三个样本阵列的图片的树块而产生的亮度样本块和两个对应的色度样本块、或者是从分割单色图片或使用三个单独颜色平面所编码的图片的树块而产生的亮度样本块。每个树块被指配有分割信令以识别用于帧内或帧间预测和用于变换编码的块大小。该分割是递归的四叉树分割。四叉树的根与树块相关联。四叉树被拆分直至到达叶,叶被称为编码节点。编码节点是两个树(预测树和变换树)的根节点。预测树规定了预测块的位置和大小。预测树和相关联的预测数据被称为预测单元。变换树规定了变换块的位置和大小。变换树和相关联的变换数据被称为变换单元。用于亮度和色度的拆分信息对于预测树是相同的,并且对于变换树可能相同或可能不相同。编码节点以及相关联的预测单元和变换单元一起形成编码单元。
在HEVC WD5中,图片被划分成条带和区块。条带可以是树块序列,但是(在参考所谓的精细粒度条带时)还可以在变换单元和预测单元重合的地方处的树块内具有其边界。条带内的树块按光栅扫描顺序被编码和解码。对于初级编码图片,将每个图片划分成条带是一种分割。
在HEVC WD5中,区块被定义为在该区块内的光栅扫描中连续排序的在一列和一行中共现的整数个树块。对于初级编码图片,将每个图片划分成区块是一种分割。区块在图片内的光栅扫描中连续排序。尽管条带包含在区块内的光栅扫描中连续的树块,但是这些树块在图片内的光栅扫描中不必然是连续的。条带和区块不需要包含相同的树块序列。区块可以包括多于一个条带中所包含的树块。类似地,条带可以包括若干区块中所包含的树块。
编码单元与编码树块之间的区别可以例如被定义如下。条带可以被定义为区块内或图片(如果区块没有在使用中)内按光栅扫描顺序的一个或多个编码树单元(CTU)的序列。每个CTU可以包括一个亮度编码树块(CTB)和可能(依赖于正被使用的色度格式)两个色度CTB。CTU可以被定义为具有三个样本阵列的图片的亮度样本的编码树块、色度样本的两个对应的编码树块,或者定义为单色图片或使用三个单独颜色平面和用于对样本进行编码的语法结构所编码的图片的样本的编码树块。将条带划分成编码树单元可以被认为是分割。CTB可以被定义为针对某一值N的N×N样本块。将构成具有三个样本阵列的图片的阵列之一或者构成单色格式的图片或使用三个单独颜色平面所编码的图片的阵列划分成编码树块可以被认为是分割。编码块可以被定义为针对某一值N的N×N样本块。将编码树块划分成编码块可以被认为是分割。
在HEVC中,条带可以被定义为一个独立条带段和位于相同访问单元内的下一独立条带段(如果有的话)之前的所有后续从属条带段(如果有的话)中所包含的整数个编码树单元。独立条带段可以被定义为条带段头部的语法元素的值不是从在前的条带段的值推断出的条带段。从属条带段可以被定义为条带段头部的一些语法元素的值从按解码顺序的在前独立条带段的值推断出的条带段。换句话说,仅独立条带段可以具有“完整的”条带头部。独立条带段可以在一个NAL单元中被传达(相同NAL单元中没有其他条带段),并且相似地,从属条带段可以在一个NAL单元中被传达(相同NAL单元中没有其他条带段)。
在HEVC中,编码条带段可以被考虑为包括条带段头部和条带段数据。条带段头部可以被定义为编码条带段的一部分,该部分包含属于在条带段中表示的第一或所有编码树单元的数据元素。条带头部可以被定义为如下的独立条带段的条带段头部,该独立条带段是当前条带段或者按解码顺序在当前从属条带段之前的最近独立条带段。条带段数据可以包括整数个编码树单元语法结构。
图7示出了由被分割成方形编码单元(实线)的两个区块构成的图片的示例,这些方形编码单元已经进一步被分割成矩形预测单元(虚线)。
在H.264/AVC和HEVC中,图片内预测可以跨条带边界被禁用。因此,条带能够被认为是将编码图片拆分成独立可解码的片断(piece)的一种方式,并且因此条带经常被认为是用于传输的基元单元。在许多情况中,编码器可以在比特流中指示哪些类型的图片内预测跨条带边界被关闭,并且解码器操作例如在推论哪些预测源可用时考虑这一信息。例如,如果相邻宏块或CU位于不同的条带中,则来自相邻宏块或CU的样本可以被认为对于帧内预测不可用。
语法元素可以被定义为在比特流中表示的数据元素。语法结构可以被定义为按所规定的顺序一起存在于比特流中的零个或多个语法元素。
分别用于H.264/AVC或HEVC编码器输出和H.264/AVC或HEVC解码器输入的基元单元是网络抽象层(NAL)单元。对于面向分组网络上的传送或存储到结构化文件中,NAL单元可以被封装成分组或类似的结构。已经在H.264/AVC和HEVC中为了不提供成帧结构的传输或存储环境规定了字节流格式。字节流格式通过在每个NAL单元前面附着起始码将NAL单元彼此分开。为了避免NAL单元边界的错误检测,编码器运行面向字节的起始码仿真防止算法,如果起始码以其他方式出现则该算法将仿真防止字节添加至NAL单元有效载荷。为了例如在面向分组***与面向流***之间使能简单明了的网关操作,起始码仿真防止可以总是被执行而不管字节流格式是否在使用中。NAL单元可以被定义为如下的语法结构和如下的字节,该语法结构包含要遵循的数据类型的指示,这些字节包含在必要时被散布有仿真防止字节的RBSP形式的数据。原始字节序列有效载荷(RBSP)可以被定义为包含封装在NAL单元中的整数个字节的语法结构。RBSP是空的或者具有数据比特串的形式,该数据比特串包含跟随有RBSP停止比特并且跟随有等于0的零个或多个后续比特的语法元素。
NAL单元由头部和有效载荷构成。在H.264/AVC和HEVC中,NAL单元头部指示NAL单元的类型和NAL单元中所包含的编码条带是否为参考图片或非参考图片的一部分。
H.264/AVC NAL单元头部包括2-比特nal_ref_idc语法元素,其在等于0时指示NAL单元中所包含的编码条带是非参考图片的一部分,并且在大于0时指示NAL单元中所包含的编码条带是参考图片的一部分。用于SVC和MVC NAL单元的头部可以附加地包含与可缩放性和多视图层级结构相关的各种指示。
在HEVC中,两字节NAL单元头部用于所有规定的NAL单元类型。NAL单元头部包含一个保留比特、六比特NAL单元类型指示(称为nal_unit_type)、六比特保留字段(称为nuh_layer_id)和三比特用于时间级别的temporal_id_plus1指示。temporal_id_plus1语法元素可以被认为是用于NAL单元的时间标识符,并且基于零的TemporalId变量可以被推导如下:TemporalId=temporal_id_plus1-1。TemporalId等于0对应于最低时间级别。temporal_id_plus1的值被要求为非零以便避免起始码仿真涉及两个NAL单元头部字节。比特流通过排除具有大于或等于所选值的TemporalId的所有VCL NAL单元并且通过包括保持遵从的所有其他VCL NAL单元而被创建。结果,具有等于TID的TemporalId的图片不使用具有大于TID的TemporalId的任何图片作为帧间预测参考。子层或时间子层可以被定义为时间可缩放比特流的时间可缩放层,由具有特定值的TemporalId变量的VCL NAL单元和相关联的非VCL NAL单元构成。不失一般性,在一些示例实施例中,变量LayerId例如从nul_layer_id的值被推导如下:LayerId=nuh_layer_id。在下文中,层标识符LayerId、nuh_layer_id和layer_id可互换地被使用,除非另有指示。
期望在HEVC扩展中,NAL单元头部中的nuh_layer_id和/或类似的语法元素携带与可缩放性层级结构有关的信息。例如,LayerId值nuh_layer_id和/或类似的语法元素可以被映射到描述不同可缩放性维度的变量或语法元素的值,诸如qulity_id或类似物、dependency_id或类似物、任何其他类型的层标识符、视图顺序索引或类似物、视图标识符、NAL单元涉及深度还是纹理的指示(即depth_flag或类似物)、或者类似于如果大于特定标识符值的所有NAL单元从比特流被移除则指示有效子比特流提取的SVC的priority_id的标识符。nuh_layer_id和/或类似的语法元素可以被分割成指示可缩放性属性的一个或多个语法元素。例如,nuh_layer_id和/或类似的语法元素之中的某一数目的比特可以用于dependency_id或类似物,而nuh_layer_id和/或类似的语法元素中的另一数目的比特可以用于quality_id或类似物。备选地,可以例如在视频参数集合、序列参数集合或另外的语法结构中提供将LayerId值或类似物映射到描述不同可缩放性维度的变量或语法元素的值。
NAL单元能够被分类为视频编码层(VCL)NAL单元和非VCL NAL单元。VCL NAL单元通常为编码条带NAL单元。在H.264/AVC中,编码条带NAL单元包含表示一个或多个编码宏块的语法元素,每个编码宏块对应于未压缩图片中的样本块。在草案HEVC标准中,编码条带NAL单元包含表示一个或多个CU的语法元素。
在H.264/AVC中,编码条带NAL单元能够被指示为是即时解码刷新(IDR)图片中的编码条带或者非IDR图片中的编码条带。
在草案HEVC标准中,编码条带NAL单元能够被指示为是下列类型之一。
用于图片类型的缩写可以被定义如下:后置(TRAIL)图片、时间子层访问(TSA)、步进式时间子层访问(STSA)、随机访问可解码前导(RADL)图片、随机访问跳过前导(RASL)图片、打断链接访问(BLA)图片、即时解码刷新(IDR)图片、清洁随机访问(CRA)图片。
随机访问点(RAP)图片,其也可以或备选地被称为帧内随机访问点(IRAP)图片,是每个条带或条带段具有16至23(含16和23)的范围中的nal_unit_type的图片。RAP图片仅包含帧内编码条带(在独立编码的层中),并且可以是BLA图片、CRA图片或IDR图片。比特流中的第一图片为RAP图片。假设必要的参数集合在它们需要被激活时是可用的,按解码顺序的RAP图片和所有后续非RASL图片能够被正确地解码而无需执行按解码顺序位于RAP图片之前的任何图片的解码过程。比特流中可以存在仅包含不为RAP图片的帧内编码条带的图片。
在HEVC中,CRA图片按解码顺序可以为比特流中的第一图片,或者可以在比特流中稍后出现。HEVC中的CRA图片允许按解码顺序跟随在CRA图片之后但按输出顺序位于CRA图片之前的所谓前导图片。一些前导图片(所谓的RASL图片)可以使用在CRA图片之前解码的图片作为参考。如果在CRA图片处执行随机访问则按解码顺序和输出顺序这两者跟随在CRA图片之后的图片是可解码的,并且因此清洁随机访问类似于IDR图片的清洁随机访问功能那样被实现。
CRA图片可以具有相关联的RADL或RASL图片。当CRA图片按解码顺序为比特流中的第一图片时,CRA图片按解码顺序为编码视频序列的第一图片,并且任何相关联的RASL图片不被解码器输出并且可能不是可解码的,因为它们可能包含对不存在于比特流中的图片的参考。
前导图片是按输出顺序位于相关联的RAP图片之前的图片。相关联的RAP图片按解码顺序为之前的RAP图片(如果存在的话)。前导图片为RADL图片或RASL图片。
所有RASL图片为相关联的BLA或CRA图片的前导图片。当相关联的RAP图片为BLA图片或为比特流中的第一编码图片时,RASL图片不被输出并且可能不是正确地可解码的,因为RASL图片可能包含对不存在于比特流中的图片的参考。然而,如果解码已经从RASL图片的相关联RAP图片之前的RAP图片开始,则RASL图片能够被正确地解码。RASL图片不被使用作为用于非RASL图片的解码过程的参考图片。当存在时,所有RASL图片按解码顺序位于相同的相关联RAP图片的所有后置图片之前。在HEVC标准的一些较早草案中,RASL图片曾经被称为贴标签用于丢弃(TFD)的图片。
所有RADL图片为前导图片。RADL图片不被使用作为用于相同的相关联RAP图片的后置图片的解码过程的参考图片。当存在时,所有RADL图片按解码顺序位于相同的相关联RAP图片的所有后置图片之前。RADL图片不参考按解码顺序在相关联RAP图片之前的任何图片,并且因此在解码从相关联RAP图片开始时能够被正确地解码。在HEVC标准的一些较早草案中,RADL图片曾经被称为可解码前导图片(DLP)。
当比特流的从CRA图片开始的部分被包括在另一比特流中时,与CRA图片相关联的RASL图片可能不是正确地可解码的,因为它们的参考图片中的一些参考图片可能不存在于组合的比特流中。为了简单明了地进行这样的拼接操作,CRA图片的NAL单元类型能够被改变以指示它是BLA图片。与BLA图片相关联的RASL图片可能不是正确地可解码的,因此不被输出/显示。此外,与BLA图片相关联的RASL图片可以从解码中被省略。
BLA图片按解码顺序可以为比特流中的第一图片,或者可以在比特流中稍后出现。每个BLA图片开始新的编码视频序列,并且对解码过程具有与IDR图片类似的效果。然而,BLA图片包含规定非空参考图片集合的语法元素。当BLA图片具有等于BLA_W_LP的nal_unit_type时,它可以具有相关联的RASL图片,这些RASL图片不被解码器输出并且可能不是可解码的,因为它们可能包含对不存在于比特流中的图片的参考。当BLA图片具有等于BLA_W_LP的nal_unit_type时,它还可以具有被指定为将被解码的相关联的RADL图片。当BLA图片具有等于BLA_W_DLP的nal_unit_type时,它不具有相关联的RASL图片但可以具有被指定为将被解码的相关联的RADL图片。当BLA图片具有等于BLA_N_LP的nal_unit_type时,它不具有任何相关联的前导图片。
具有等于IDR_N_LP的nal_unit_type的IDR图片不具有存在于比特流中的相关联的前导图片。具有等于IDR_W_LP的nal_unit_type的IDR图片不具有存在于比特流中的相关联的RASL图片,但是可以具有比特流中的相关联的RADL图片。IDR_W_DLP也可以被称为IDR_W_RADL。
在HEVC中,存在用于许多图片类型的两个NAL单元类型(例如,TRAIL_R、TRAIL_N),区别在于图片是否可以被使用作为相同子层中按解码顺序的后续图片中的帧间预测的参考。子层非参考图片(经常由图片类型缩略词中的_N表示)可以被定义为包含如下样本的图片,这些样本不能被用于相同子层的按解码顺序的后续图片的解码过程中的帧间预测。子层非参考图片可以用作具有较大TemporalId值的图片的参考。子层参考图片(经常由图片类型缩略词中的_R表示)可以被定义为如下的图片,该图片可以用作相同子层的按解码顺序的后续图片的解码过程中的帧间预测的参考。
当nal_unit_type的值等于TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、或RSV_VCL_N14时,解码图片不被用作相同时间子层的任何其他图片的参考。也就是说,在草案HEVC标准中,当nal_unit_type的值等于TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、或RSV_VCL_N14时,解码图片不被包括在具有相同TemporalId值的任何图片的RefPicSetStCurrBefore、RefPicSetStCurrAfter和RefPicSetLtCurr中的任何一个中。具有等于TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、或RSV_VCL_N14的nal_unit_type的编码图片可以被丢弃而不影响具有相同TemporalId值的其他图片的可解码性。
任何编码类型(I、P、B)的图片都能够是H.264/AVC和HEVC中的参考图片或者非参考图片。图片内的条带可以具有不同的编码类型。
后置图片可以被定义为按输出顺序跟随在相关联的RAP图片之后的图片。作为后置图片的任何图片不具有等于RADL_N、RADL_R、RASL_N或RASL_R的nal_unit_type。作为前导图片的任何图片可以被约束为按解码顺序位于与相同RAP图片相关联的所有后置图片之前。比特流中不存在与具有等于BLA_W_DLP或BLA_N_LP的nal_unit_type的BLA图片相关联的RASL图片。比特流中不存在与具有等于BLA_N_LP的nal_unit_type的BLA图片相关联或者与具有等于IDR_N_LP的nal_unit_type的IDR图片相关联的RADL图片。与CRA或BLA图片相关联的任何RASL图片可以被约束为按输出顺序位于与CRA或BLA图片相关联的任何RADL图片之前。与CRA图片相关联的任何RASL图片可以被约束为按输出顺序跟随在按解码顺序位于CRA图片之前的任何其他RAP图片之后。
在HEVC中,存在两个图片类型,TSA和STSA图片类型,它们能够用于指示时间子层切换点。如果具有多至N的TemporalId的时间子层已经被解码直到TSA或STSA图片(排他)并且TSA或STSA图片具有等于N+1的TemporalId,则TSA或STSA图片使得能够解码具有等于N+1的TemporalId的所有后续图片(按解码顺序)。TSA图片类型可以对TSA图片自身和相同子层中按解码顺序跟随在TSA图片之后的所有图片施加限制。这些图片都不被允许使用来自相同子层中按解码顺序位于TSA图片之前的任何图片的帧间预测。TSA定义可以进一步对更高子层中按解码顺序跟随在TSA图片之后的图片施加限制。这些图片都不被允许参考按解码顺序位于TSA图片之前的图片,如果该图片属于与TSA图片相同或更高的子层。TSA图片具有大于0的TemporalId。STSA类似于TSA图片但是不对更高子层中按解码顺序跟随在STSA图片之后的图片施加限制,并且因此使得能够仅向上切换至STSA图片所位于的子层上。
在可缩放和/或多视图视频编码中,至少可以支持以下用于编码图片和/或具有随机访问属性的访问单元的原理:
-层内的RAP图片可以是不具有层间/视图间预测的帧内编码图片。这样的图片使能对其所位于的层/视图的随机访问能力。
-增强层内的RAP图片可以是不具有帧间预测(即,时间预测)但具有所允许的层间/视图间预测的图片。假设所有参考层/视图是可用的,则这样的图片使得能够启动图片所位于的层/视图的解码。在单回路解码中,如果编码的参考层/视图是可用的则是足够的(这可能是例如SVC中具有大于0的dependency_id的IDR图片的情况)。在多回路解码中,可能需要参考层/视图被解码。这样的图片可以例如被称为步进式层访问(STLA)图片或增强层RAP图片。
-锚访问单元或完整RAP访问单元可以被定义为仅包括所有层中的(多个)帧内编码图片和STLA图片。在多回路解码中,这样的访问单元使得能够随机访问到所有层/视图。这样的访问单元的示例为MVC锚访问单元(在该类型之中,IDR访问单元是特殊情况)。
-步进式RAP访问单元可以被定义为在基础层中包括RAP图片但是不需要在所有增强层中包含RAP图片。步进式RAP访问单元使得能够启动基础层解码,而增强层解码可以在增强层包含RAP图片时被启动,并且(在多回路解码的情况中)其所有参考层/视图在该点处被解码。
在HEVC的可缩放扩展或类似于HEVC的单层编码方案的任何可缩放扩展中,RAP图片可以被规定为具有以下属性中的一个或多个属性:
-具有大于0的nul_layer_id的RAP图片的NAL单元类型值可以用于指示增强层随机访问点。
-增强层RAP图片可以被定义为如下的图片,该图片使得能够在其所有参考层在ELRAP图片之前已经被解码时启动该增强层的解码。
-对于具有大于0的nuh_layer_id的CRA NAL单元,层间预测可以被允许,而帧间预测不被允许。
-CRA NAL单元不需要跨多层对齐。换句话说,CRA NAL单元类型能够用于具有特定值的nuh_layer_id的所有VCL NAL单元,而另一NAL单元类型能够用于相同访问单元中具有另一特定值的nuh_layer_id的所有VCL NAL单元。
-BLA图片具有等于0的nuh_layer_id。
-IDR图片可以具有大于0的nuh_layer_id并且它们可以被层间预测,而帧间预测不被允许。
-没有层中的访问单元中存在IDR图片或者IDR图片存在于所有层中的访问单元中,即IDR nal_unit_type指示所有层的解码能够被启动的完全IDR访问单元。
-STLA图片(STLA_W_DLP和STLA_N_LP)可以分别利用NAL单元类型BLA_W_DLP和BLA_N_LP来指示,并且nuh_layer_id大于0。STLA图片在其他方面可以等同于具有大于0的nuh_layer_id的IDR图片,但不需要跨层对齐。
-在基础层处的BLA图片之后,当增强层包含RAP图片并且其所有参考层的解码已经被启动时增强层的解码被启动。
-当增强层的解码从CRA图片开始时,其RASL图片类似于BLA图片的RASL图片被处置。
-参考图片的层向下切换或意外损失从丢失的参考图片被识别,在该情况下,相关增强层的解码仅从该增强层上的下一RAP图片继续。
非VCL NAL单元可以例如为下列类型之一:序列参数集合、图片参数集合、补充增强信息(SEI)NAL单元、访问单元定界符、序列NAL单元的结尾、流NAL单元的结尾、或填充符数据NAL单元。可能需要参数集合用于重构解码的图片,而许多其他非VCL NAL单元不是必然用于重构解码的样本值。
通过编码的视频序列而保持不变的参数可以被包括在序列参数集合中。除了可能被解码过程需要的参数以外,序列参数集合可以可选地包含视频可用性信息(VUI),VUI包括对于缓冲、图片输出计时、渲染和资源预留而言重要的参数。H.264/AVC中规定了三个NAL单元来携带序列参数集合:序列参数集合NAL单元(具有等于7的NAL单元类型),其包含针对序列中的H.264/AVC VCL NAL单元的所有数据;序列参数集合扩展NAL单元,其包含用于辅助编码图片的数据;以及用于MVC和SVC VCL NAL单元的子集序列参数集合。H.264/AVC的序列参数集合NAL单元(具有等于7的NAL单元类型)中包括的语法结构可以被称为序列参数集合数据(seq_parameter_set_data)或基础SPS数据。例如,基础SPS数据中可以包括简档、级别、图片大小和色度采样格式。图片参数集合包含可能在若干编码图片中不变的这些参数。
HEVC还包括另一类型的参数集合,称为视频参数集合(VPS)。视频参数集合RBSP可以包括能够由一个或多个序列参数集合RBSP参考的参数。
VPS、SPS和PPS之间的关系和层级结构可以被描述如下。在参数集合层级结构中并且在可缩放性和/或3DV的上下文中,VPS位于SPS上方的一个级别。VPS可以包括跨整个编码视频序列中的所有(可缩放性或视图)层的所有条带共用的参数。SPS包括整个编码视频序列中的特定(可缩放性或视图)层中的所有条带共用并且可以由多个(可缩放性或视图)层共享的参数。PPS包括特定层表示(一个访问单元中的一个可缩放性或视图层的表示)中的所有条带共用并且可能由多个层表示中的所有层共享的参数。
VPS可以提供与比特流中的层的依赖关系有关的信息、以及可应用于跨整个编码视频序列中的所有(可缩放性或视图)层的所有条带的许多其他信息。在HEVC的可缩放扩展中,VPS可以例如包括从NAL单元头部推导的LayerId值到一个或多个可缩放性维度值的映射,例如对应于针对与SVC和MVC相类似地定义的层的dependency_id、quality_id、view_id和depth_flag。VPS可以包括针对一个或多个层的简档和级别信息、以及针对层表示的一个或多个时间子层(由位于并且低于某些TemporalId值的VCL NAL单元构成)的简档和/或级别。
下面提供了意图为VPS一部分的VPS扩展的示例语法。除了其他事物之外,所提出的VPS扩展提供了依赖关系。
可以如下面的段落中所描述地规定所提出的VPS扩展的语义。
vps_extension_byte_alignment_reserved_one_bit等于1并且用于实现字节对齐。等于1的scalability_mask[i]指示与下表中的第i个可缩放性维度相对应的dimension_id语法元素存在。等于0的scalability_mask[i]指示与第i个可缩放性维度相对应的dimension_id语法元素不存在。
dimension_id_len_minus1[j]加1规定了dimension_id[i][j]语法元素以比特为单位的长度。vps_nuh_layer_id_present_flag规定了layer_id_in_nuh[i]语法是否存在。layer_id_in_nuh[i]规定了第i层的VCL NAL单元中的nuh_layer_id语法元素的值。当不存在时,layer_id_in_nuh[i]的值被推断为等于i。变量LayerIdInVps[layer_id_in_nuh[i]]被设置为等于i。dimension_id[i][j]规定了第i层的第j个可缩放性维度类型的标识符。当不存在时,dimension_id[i][j]的值被推断为等于0。用于dimension_id[i][j]的表示的比特数目为dimension_id_len_minus1[j]+1比特。变量ScalabilityId[layerIdInVps][scalabilityMaskIndex]、DependencyId[layerIdInNuh]、DepthFlag[layerIdNuh]、以及ViewOrderIdx[layerIdInNuh]被推导如下:
num_direct_ref_layers[i]规定了第i层直接参考的层的数目。
H.264/AVC和HEVC语法允许参数集合的许多实例,并且每个实例利用唯一的标识符被识别。为了限制参数集合所需要的存储器使用,用于参数集合标识符的值范围已经被限制。在H.264/AVC和草案HEVC标准中,每个条带头部包括对于包含条带的图片的解码是活动的图片参数集合的标识符,并且每个图片参数集合包含活动序列参数集合的标识符。在HEVC标准中,条带头部另外地包含APS标识符。结果,图片和序列参数集合的传输不是必须与条带的传输精确同步。替代地,活动序列和图片参数集合在它们被参考之前的任何时刻被接收到就足够了,这允许使用与用于条带数据的协议相比更可靠的传输机制来传输“带外”参数集合。例如,参数集合能够被包括作为用于实时传送协议(RTP)会话的会话描述中的参数。如果参数集合在带内被传输,则它们能够被重复以提高误差鲁棒性。
参数集合可以被来自条带或来自另一活动参数集合或在一些情况中来自另一语法结构(诸如,缓冲时段SEI消息)的参考所激活。在下文中,给出了草案HEVC标准中的参数集合的激活的非限制性示例。
每个自适应参数集合RBSP最初被考虑为在解码过程的操作开始时不是活动的。至多一个自适应参数集合RBSP被考虑为在解码过程的操作期间在任何给定时刻是活动的,并且任何特定自适应参数集合RBSP的激活导致之前活动的自适应参数集合RBSP(如果有的话)的去激活。
当自适应参数集合RBSP(具有特定值的aps_id)不是活动的,并且它被编码的条带NAL单元(使用该值的aps_id)参考时,它被激活。这一自适应参数集合RBSP被称为活动的自适应参数集合RBSP,直到它通过另一自适应参数集合RBSP的激活而被去激活。具有该特定值的aps_id的自适应参数集合RBSP在其激活之前可用于解码过程,被包括在temporal_id等于或小于自适应参数集合NAL单元的temporal_id的至少一个访问单元中,除非自适应参数集合通过外部手段被提供。
每个图片参数集合RBSP最初被考虑为在解码过程的操作开始时不是活动的。至多一个图片参数集合RBSP被考虑为在解码过程的操作期间在任何给定时刻是活动的,并且任何特定图片参数集合RBSP的激活导致之前活动的图片参数集合RBSP(如果有的话)的去激活。
当图片参数集合RBSP(具有特定值的pic_parameter_set_id)不是活动的,并且它被编码的条带NAL单元或编码的条带数据分割A NAL单元(使用该值的pic_parameter_set_id)参考时,它被激活。这一图片参数集合RBSP被称为活动的图片参数集合RBSP,直到它通过另一图片参数集合RBSP的激活而被去激活。具有该特定值的pic_parameter_set_id的图片参数集合RBSP在其激活之前可用于解码过程,被包括在temporal_id等于或小于图片参数集合NAL单元的temporal_id的至少一个访问单元中,除非图片参数集合通过外部手段被提供。
每个序列参数集合RBSP最初被考虑为在解码过程的操作开始时不是活动的。至多一个序列参数集合RBSP被考虑为在解码过程的操作期间在任何给定时刻是活动的,并且任何特定序列参数集合RBSP的激活导致之前活动的序列参数集合RBSP(如果有的话)的去激活。
当序列参数集合RBSP(具有特定值的seq_parameter_set_id)不是活动的,并且它通过图片参数集合RBSP(使用该值的seq_parameter_set_id)的激活被参考或者被包含缓冲时段SEI消息的SEI NAL单元(使用该值的seq_parameter_set_id)参考时,它被激活。这一序列参数集合RBSP被称为活动的序列参数集合RBSP,直到它通过另一序列参数集合RBSP的激活而被去激活。具有该特定值的seq_parameter_set_id的序列参数集合RBSP在其激活之前可用于解码过程,被包括在具有等于0的temporal_id的至少一个访问单元中,除非序列参数集合通过外部手段被提供。激活的序列参数集合RBSP对于整个编码的视频序列保持活动。
每个视频参数集合RBSP最初被考虑为在解码过程的操作开始时不是活动的。至多一个视频参数集合RBSP被考虑为在解码过程的操作期间在任何给定时刻是活动的,并且任何特定视频参数集合RBSP的激活导致之前活动的视频参数集合RBSP(如果有的话)的去激活。
当视频参数集合RBSP(具有特定值的video_parameter_set_id)不是已经活动的并且它通过序列参数集合RBSP(使用该值的video_parameter_set_id)的激活而被参考时,它被激活。这一视频参数集合RBSP被称为活动的视频参数集合RBSP,直到它通过另一视频参数集合RBSP的激活而被去激活。具有该特定值的video_parameter_set_id的视频参数集合RBSP在其激活之前可用于解码过程,被包括在具有等于0的temporal_id的至少一个访问单元中,除非视频参数集合通过外部手段被提供。激活的视频参数集合RBSP对于整个编码的视频序列保持活动。
在草案HEVC标准中的解码过程的操作期间,活动的视频参数集合、活动的序列参数集合、活动的图片参数集合RBSP和活动的自适应参数集合RBSP的参数值被考虑为生效。为了解释SEI消息,用于相同访问单元中的编码图片的VCL NAL单元的解码过程的操作的活动的视频参数集合、活动的序列参数集合、活动的图片参数集合RBSP和活动的自适应参数集合RBSP的值被考虑为生效,除非在SEI消息语义中另有规定。
SEI NAL单元可以包含一个或多个SEI消息,该一个或多个SEI消息不被要求用于解码输出图片但是可以帮助相关的过程,诸如图片输出计时、渲染、误差检测、误差掩盖和资源预留。在H.264/AVC和HEVC中规定了若干SEI消息,并且用户数据SEI消息使得组织和公司能够规定用于他们自己使用的SEI消息。H.264/AVC和HEVC包含用于规定的SEI消息的语法和语义,但是用于在接收方中处置消息的过程没有被定义。结果,编码器在它们创建SEI消息时被要求遵循H.264/AVC标准或HEVC标准,并且分别符合H.264/AVC标准或HEVC标准的解码器不被要求用以处理SEI消息用于输出顺序一致性。在H.264/AVC和HEVC中包括SEI消息的语法和语义的原因之一是,允许不同的***规范以相同地解释补充信息并且因此交互操作。预期的是,***规范能够要求在编码端和解码端这两者中都使用特定的SEI消息,并且另外地能够规定用于在接收方中处置特定SEI消息的过程。
已经在AVC和HEVC标准或另外提议的其他标准中规定了若干嵌套SEI消息。嵌套SEI消息的思想是在嵌套SEI消息内包含一个或多个SEI消息并且提供用于将包含的SEI消息与比特流的子集和/或解码数据的子集相关联的机制。可能要求嵌套SEI消息包含本身不是嵌套SEI消息的一个或多个SEI消息。嵌套SEI消息中包含的SEI消息可以被称为嵌套的SEI消息。嵌套SEI消息中未包含的SEI消息可以被称为非嵌套的SEI消息。HEVC的可缩放嵌套SEI消息使得能够识别比特流子集(从子比特流提取过程产生)或嵌套的SEI消息所应用的层集合。比特流子集也可以被称为子比特流。
编码图片为图片的编码表示。H.264/AVC中的编码图片包括对于解码图片所要求的VCL NAL单元。在H.264/AVC中,编码图片能够是初级编码图片或冗余编码图片。初级编码图片被使用在有效比特流的解码过程中,而冗余编码图片是仅应当在初级编码图片不能被成功解码时被解码的冗余表示。在草案HEVC中,没有规定冗余编码图片。
术语“时间瞬间”或“时刻”或“时间实例”或“时间实体”可以被定义为表示相同的捕获时间或输出时间或输出顺序。例如,如果第一视图的第一视图分量与第二视图中的第二视图分量同时被捕获,则这两个视图分量可以被考虑为具有相同的时刻。访问单元可以被定义为包含相同时刻的图片(或视图分量),并且因此在这种情况中位于访问单元中的图片可以被考虑为具有相同的时刻。相同时刻的图片可以(例如,由编码器)使用多个手段被指示,并且可以(例如,通过解码)使用多个手段(诸如,图片顺序计数(POC)值或时间戳(例如,输出时间戳))被识别。
在H.264/AVC中,访问单元包括初级编码图片以及与其相关联的那些NAL单元。在H.264/AVC中,访问单元内的NAL单元的出现顺序被约束如下。可选的访问单元定界符NAL单元可以指示访问单元的开始。它后面跟着零个或多个SEI NAL单元。初级编码图片的编码条带接着出现。在H.264/AVC中,初级编码图片的编码条带的后面可以跟着用于零个或多个冗余编码图片的编码条带。冗余编码图片是图片或图片一部分的编码表示。如果初级编码图片例如归因于传输中的损失或物理存储介质中的损坏没有被解码器接收到,则冗余编码图片可以被解码。
在H.264/AVC中,访问单元还可以包括辅助编码图片,辅助编码图片是补充初级编码图片的图片并且可以例如被使用在显示过程中。辅助编码图片可以例如用作规定解码图片中的样本的透明级别的阿尔法通道或阿尔法平面。阿尔法通道或平面可以被使用在分层构成或渲染***中,其中输出图片通过将至少部分透明的图片覆叠在彼此之上而被形成。辅助编码图片具有与单色冗余编码图片相同的语法和语义限制。在H.264/AVC中,辅助编码图片包含与初级编码图片相同数目的宏块。
在HEVC中,编码图片可以被定义为包含图片的所有编码树单元的该图片的编码表示。在HEVC中,访问单元(AU)可以被定义为根据规定的分类规则彼此相关联、按解码顺序连续、并且包含具有不同值的nuh_layer_id的一个或多个编码图片的NAL单元集合。除了包含编码图片的VCL NAL单元之外,访问单元还可以包含非VCL NAL单元。
在目前的MV-HEVC草案中,可以使用辅助图片层在比特流中编码辅助图片。辅助图片层与其自己的可缩放性维度值AuxId(类似于例如视图顺序索引)相关联。具有大于0的AuxId的层包含辅助图片。层携带仅一种类型的辅助图片,并且层中包括的辅助图片的类型由其AuxId值来指示。换句话说,AuxId值被映射到辅助图片的类型。例如,等于1的AuxId可以指示阿尔法平面,并且等于2的AuxId可以指示深度图片。辅助图片可以被定义为对初级图片的解码过程不具有规范作用的图片。换句话说,初级图片(具有等于0的AuxId)不从辅助图片进行预测。辅助图片可以例如基于AuxId值从初级图片进行预测,尽管可能存在不允许这种预测的约束。SEI消息可以用于传达辅助图片层的更多详细特性,诸如由深度辅助层表示的深度范围。目前的MV-HEVC草案包括对深度辅助层的支持。
可以使用不同类型的辅助图片,包括但不限于以下各项:深度图片、阿尔法图片、覆叠图片和标签图片。在深度图片中,样本值表示深度图片的视点(或摄影机位置)或深度或距离之间的视差。在阿尔法图片(也称为阿尔法平面和阿尔法磨砂(matte)图片)中,样本值表示透明性或不透明性。阿尔法图片可以为每个像素指示透明度或等效地指示不透明度。阿尔法图片可以为单色图片,或者阿尔法图片的色度分量可以被设置为不指示色度(例如,当色度样本值被考虑为是有符号时为0,或者当色度样本值为8比特并且被考虑为是无符号时为128)。
覆叠图片可以在显示时被覆叠在初级图片之上。覆叠图片可以包含若干区域和背景,其中所有区域或区域的子集可以在显示时被覆叠并且背景不被覆叠。
标签图片包含用于不同覆叠区域的不同标签,它们能够用于识别单个覆叠区域。
一些辅助图片类型在图14a至图14d中被图示。图14a描绘了2D视频图片180的示例,2D视频图片180中描绘了包括湖和山的风景182。图14b图示了用于图14a的图片的覆叠图片的示例。一些感兴趣的区域184、186被示出为在其内具有一些文本。图14c图示了与图14b的感兴趣区域相对应的标签图片的示例。图14d图示了用于图14a的图片和图14b的感兴趣区域的阿尔法磨砂图片的示例。
许多视频编码标准规定了用于比特流的缓冲模型和缓冲参数。这样的缓冲模型可以被称为假想参考解码器(HRD)或视频缓冲验证器(VBV)。顺应于标准的比特流符合于具有在对应标准中规定的缓冲参数集合的缓冲模型。用于比特流的这种缓冲参数可以显式地或隐式地用信号通知。“隐式地用信号通知”意指例如应用根据简档和级别的默认缓冲参数值。除了其他事物之外,HRD/VBV参数用于对顺应式比特流的比特率变化施加约束。
视频编码标准使用可变比特率编码,该可变比特率编码例如由编码器的灵活性引起以在用于压缩视频帧的帧内编码技术与帧间编码技术之间进行自适应选择。为了处置压缩视频的比特率变化的波动,可以在编码器和解码器侧使用缓冲。假想参考解码器(HRD)可以被认为是一种假想解码器模型,其规定了对编码过程可以产生的一致性比特流、一致性NAL单元流、或一致性字节流内的可变性的约束。
如果比特流能够被HRD解码而没有缓冲区上溢或下溢(在一些情况中)则该比特流是顺应性的。如果在缓冲区满时更多的比特被放置于缓冲区中,则发生缓冲区上溢。如果在从缓冲区提取一些比特用于解码/回放时所述比特不在该缓冲区中,则发生缓冲区下溢。
HRD可以是编码器的一部分或可操作地连接至编码器的输出。缓冲占用和有可能是HRD的其他信息可以用于控制编码过程。例如,如果HRD中的编码数据缓冲区即将上溢,则编码比特率可以例如通过增加量化器步长而被降低。
HRD的操作可以由诸如(多个)缓冲区大小和(多个)初始延迟之类的HRD参数来控制。HRD参数值可以被创建作为包括编码的或可操作地连接到编码的HRD过程的一部分。备选地,HRD参数可以与编码分离地被生成,例如在HRD验证器中被生成,该HRD验证器利用规定的HRD过程处理输入比特流并且生成比特流在一致化时所根据的这种HRD参数值。HRD验证器的另一用途是验证给定的比特流和给定的HRD参数实际导致一致的HRD操作和输出。
HRD一致性检查可能涉及例如以下两种类型的比特流:第一这样的类型的比特流(称为类型1比特流)是仅包含用于比特流中的所有访问单元的VCL NAL单元和填充符数据NAL单元的NAL单元流。第二类比特流(称为类型2比特流)除了用于比特流中的所有访问单元的VCL NAL单元和填充符数据NAL单元之外,还可以包含除了填充符数据NAL单元以外的附加非VCL NAL单元和/或形成来自NAL单元流的字节流的语法元素,诸如leading_zero_8bits、zero_byte、start_code_prefix_one_3bytes和trailing_zero_8bits。
可以使用两种类型的HRD参数(NAL HRD参数和VCL HRD参数)。HRD参数可以通过序列参数集合语法结构中包括的视频可用性信息而被指示。HRD参数可以例如包括缓冲区大小和输入比特率。
缓冲和图片计时参数(例如,被包括在VCL NAL单元中和缓冲时段和图片计时SEI消息中所参考的序列参数集合和图片参数集合中)可以用及时的方式在比特流中(通过非VCL NAL单元)或通过从比特流之外的带外手段(例如,使用信令机制,诸如根据例如会话描述协议(SDP)格式化的会话描述的媒体线中所包括的媒体参数)被传达至HRD。为了对HRD中的比特进行计数的目的,仅实际存在于比特流中的适当比特可以被计数。当非VCL NAL单元的内容通过除了存在于比特流内之外的一些手段被传达用于应用时,非VCL NAL单元的内容的表示可以使用或可以不使用与在非VCL NAL单元位于比特流中的情况下将使用的相同语法。
HRD可以包含编码图片缓冲区(CPB)、即时解码过程、解码图片缓冲区(DPB)和输出裁剪。
CPB可以基于解码单元进行操作。解码单元可以是访问单元或者它可以是访问单元的子集,诸如整数个NAL单元。编码器可以确定解码单元为例如区块或CTU行(当使能波前处理的编码约束已经被应用时)。当解码单元为图片子集时,可以实现编码和解码中的较低时延。解码单元的选择可以由编码器在比特流中指示。例如,解码单元SEI消息可以指示解码单元如下:与解码单元信息SEI消息相关联的NAL单元集合按解码顺序由包含该解码单元信息SEI消息的SEI NAL单元和访问单元中的所有后续NAL单元构成,直至但不包括包含解码单元信息SEI消息的任何后续SEI NAL单元。每个解码单元可以被要求包括至少一个VCLNAL单元。与VCL NAL单元相关联的所有非VCL NAL单元可以被包括在包含VCL NAL单元的解码单元中。
HRD可以操作如下。与解码单元相关联的根据规定的到达调度流入CPB的数据可以由假想流调度器(HSS)来递送。到达调度可以由编码器确定并且例如通过图片计时SEI消息被指示,和/或到达调度可以例如基于可被指示为例如视频可用性信息(其可以被包括在序列参数集合中)中的HRD参数的一部分的比特率而被推导。视频可用性信息中的HRD参数可以包含许多参数集合,每个参数集合用于不同的比特率或递送调度。与每个解码单元相关联的数据可以被移除并且在CPB移除时间通过即时解码过程被即时解码。CPB移除时间可以例如使用初始CPB缓冲延迟和例如通过图片计时SEI消息为每个图片指示的差分移除延迟而被确定,其中初始CPB缓冲延迟可以由编码器确定并且例如通过缓冲时段SEI消息被指示。恰好第一解码单元的初始到达时间(即,第一比特的到达时间)可以被确定为0。任何后续解码单元的初始到达时间可以被确定为等于之前解码单元的最终到达时间。每个解码图片被放置于DPB中。解码图片可以在DPB输出时间或它变得不再需要用于帧间预测参考的时间的后期从DPB被移除。因此,HRD的CPB的操作可以包括解码单元初始到达(当解码单元的第一比特进入CPB时)的计时、解码单元移除和解码单元的解码的计时,而HRD的DPB的操作可以包括从DPB移除图片、图片输出、以及当前编码图片标记和存储。
HRD中的基于AU的编码图片缓冲的操作能够以简化方式描述如下。假设比特以恒定的到达比特率到达CPB中(当所谓的低延迟模式没有在使用中时)。因此,编码图片或访问单元与初始到达时间相关联,初始到达时间指示编码图片或访问单元的第一比特何时进入CPB。此外,在低延迟模式中,假设编码图片或访问单元在编码图片或访问单元的最后比特被***到CPB中并且相应的解码图片然后被***到DPB时被即时移除,因此仿真了即时解码。这个时间被称为编码图片或访问单元的移除时间。编码视频序列的第一编码图片的移除时间通常例如通过缓冲时段补充增强信息(SEI)消息来控制。这种所谓的初始编码图片移除延迟确保编码比特率的任何变化关于用来填充CPB的恒定比特率而言没有导致CPB的匮乏或上溢。将理解,CPB的操作稍微比这里描述的操作更复杂,具有例如低延迟操作模式和以许多不同的恒定比特率进行操作的能力。此外,CPB的操作可以在不同标准中不同地被规定。
当比特率例如作为随机地访问文件或流和从IRAP图片开始解码或调谐到广播中的结果而在IRAP图片开始时,可能存在前导图片(RADL和/或RASL图片),前导图片按解码顺序跟随在IRAP图片之后并且按输出顺序位于它之前。有可能丢弃或忽略跟随在RAP图片之后的这些前导图片的解码而不影响解码操作,因为这些前导图片对任何其他图片的解码过程没有作用。
HEVC的缓冲时段SEI消息支持指示初始缓冲延迟和初始缓冲延迟偏移参数的两个集合,其能够例如在IRAP图片处用信号通知。一个值集合规定了当与IRAP图片(其与缓冲时段SEI消息相关联)相关联的前导图片存在于比特流中时所需要的初始缓冲。另一值集合规定了当前导图片不存在于比特流中时或者在利用HSS调度它们和/或将它们输入到CPB中之前被丢弃时所需要的初始缓冲。HRD操作可能被要求针对缓冲时段SEI消息中提供的缓冲参数的两个集合利用HRD而被验证。
除了其他事物之外,DPB被用来控制用于解码一致的比特流所要求的存储器资源。缓冲解码图片有两个原因,为了预测中的参考和为了将解码图片重排序为输出顺序。由于H.264/AVC和HEVC为参考图片标记和输出重排序提供了大量的灵活性,用于参考图片缓冲和输出图片缓冲的分离缓冲区可能是存储器资源的浪费。因此,DPB包括用于参考图片和输出重排序的统一的解码图片缓冲过程。解码图片可以在它不再被用作参考并且被需要用于输出时从DPB被移除。
在输出裁剪中,样本的行和/或列可以根据裁剪矩形从解码图片被移除以形成输出图片。在HEVC中,裁剪的解码图片被定义为基于由对应的编码图片参考的SPS中规定的一致性裁剪窗口来裁剪解码图片的结果。一致的解码器被要求产生与HEVC中规定的解码过程在数字上相等的裁剪解码图片。HEVC的输出裁剪产生裁剪的解码图片。
HRD可以用于检查比特流和解码器的一致性。
HRD的比特流一致性要求可以包括例如以下和/或类似物。CPB被要求不上溢(相对于可以例如在视频可用性信息的HRD参数内被指示的大小)或下溢(即,解码单元的移除时间不能小于该解码单元的最后比特的到达时间)。DPB中的图片的数目可以被要求小于或等于可以例如在序列参数集合中被指示的某个最大数目。被用作预测参考的所有图片可以被要求存在于DPB中。可以要求用于输出来自DPB的连续图片的间隔不小于某个最小值。
HRD的解码器一致性要求可以包括例如以下或类似物。假设在VCL NAL单元中参考的所有序列参数集合和图片参数集合、以及适当的缓冲时段和图片计时SEI消息以及时的方式在比特流中(通过非VCL NAL单元)或通过外部手段被传达至解码器,则需要符合于特定简档和级别的解码器可以被要求成功地解码为了解码器一致性所规定的所有一致的比特流。可能存在能够由解码器需要的两种类型的一致性:输出计时一致性和输出顺序一致性。
为了检查解码器的一致性,符合于所需要的简档和级别的测试比特流可以由假想流调度器(HSS)递送至HRD和测试下的解码器(DUT)这两者。由HRD输出的所有图片还可以被要求由DUT输出,并且对于由HRD输出的每个图片,由用于对应图片的DUT输出的所有样本的值还可以被要求等于由HRD输出的样本的值。
为了输出计时解码器一致性,HSS可以例如利用从视频可用性信息的HRD参数中指示的那些递送调度选择的递送调度或者利用“内插的”递送调度进行操作。相同的递送调度可以用于HRD和DUT这两者。对于输出计时解码器一致性,图片输出的计时(相对于第一比特的递送时间)可以被要求对于HRD和DUT两者来说是相同的,上至固定延迟。
为了输出顺序解码器一致性,HSS可以按照来自DUT的“需求”将比特流递送至DUT,这意味着HSS仅在DUT要求更多比特继续其处理时(按解码顺序)递送比特。HSS可以通过比特流中规定的调度之一将比特流递送至HRD以使得比特率和CPB大小被限制。图片输出的顺序可以被要求对于HRD和DUT这两者来说是相同的。
HEVC使得编码器和/或其他实体(诸如,拼接器)能够利用如下文描述的pic_output_flag和/或no_output_of_prior_pics_flag语法元素的值来控制来自解码过程和/或HRD的图片输出。
可以存在于条带段头部中的pic_output_flag语法元素影响变量PicOutputFlag的推导。每个解码图片与PicOutputFlag的值(其可以不同于其他图片的PicOutputFlag的值)相关联。对于不是与具有等于1的NoRaslOutputFlag的IRAP图片相关联的RASL图片的图片,PicOutputFlag被设置为1。否则,PicOutputFlag被设置为等于pic_output_flag。具有等于0的PicOutputFlag的图片不被输出。具有等于1的PicOutputFlag的图片被输出,除非它们变为被如下面所解释的NoOutputOfPriorPicsFlag所影响。
条带段头部中为了IRAP图片而存在的no_output_of_prior_pics_flag语法元素如下地影响在不是比特流中的第一图片的IDR或BLA图片的解码之后在解码图片缓冲区中的之前解码的图片的输出:在当前图片的解码之前(但在解析当前图片的第一条带的条带头部之后)从DPB移除图片在(包含当前图片的)访问单元n的第一解码单元的CPB移除时间处即时地发生并且继续如下:
-当前图片的参考图片集合被解码。
-在当前图片为不是图片0的具有等于1的NoRasOutputFlag的IRAP图片时,以下排序的步骤被应用:
○变量NoOutputOfPriorPicsFlag被推导如下:
·如果当前图片为CRA图片,则NoOutputOfPriorPicsFlag被设置为等于1(不管no_output_of_prior_pics_flag的值)。
·否者,如果当前图片的宽度、高度或DPB容量不同于之前图片的宽度、高度或DPB容量,则NoOutputOfPriorPicsFlag可以被设置为等于1但是不需要被设置为等于1,或者可以被设置为no_output_of_prior_pics_flag。
·否则,NoOutputOfPriorPicsFlag被设置为等于no_output_of_prior_pics_flag。
○针对测试下的解码器推导的NoOutputOfPriorPicsFlag的值被应用于HRD,从而当NoOutputOfPriorPicsFlag值等于1时,DPB中的所有图片存储缓冲区被清空而不输出它们包含的图片,并且DPB充满度被设置为等于0。
-当下面两个条件对于DPB中的任何图片k为真时,DPB中的所有这些图片k从DPB被移除:
○图片k被标记为“不用于参考”。
○图片k具有等于0的PicOutputFlag或者其DPB输出时间小于或等于当前图片n的第一解码单元(表示为解码单元m)的CPB移除时间。
-对于从DPB移除的每个图片,DPB充满度减一。
例如当拼接的编码视频序列的输出可以与之前的编码视频序列中的一些图片的输出重叠时,级连编码视频序列或比特流的拼接器或其他实体可以设置no_output_of_prior_pics_flag等于1。
图像或图片的空间分辨率可以被定义为表示水平和垂直方向上的图像/图片的像素或样本的数目。在本文中,诸如“用不同分辨率的图像”之类的表达可以被解释为两个图像在水平方向上、或在垂直方向上、或在两个方向上具有不同数目的像素。
在信号处理中,图像的重采样通常被理解为改变水平和/或垂直方向上的当前图像的采样率。重采样产生新图像,该新图像利用水平和/或垂直方向上的不同数目的像素来表示。在一些应用中,图像重采样的过程等同于图像大小调整。一般而言,重采样被分类为两个过程:下采样和上采样。
下采样或子采样过程可以被定义为减小信号的采样率,并且它通常导致减小水平和/或垂直方向上的图像大小。在图像下采样中,输出图像的空间分辨率(即,输出图像中的像素数目)与输入图像的空间分辨率相比被减小。下采样比率或因子可以被定义为下采样图像的水平或垂直分辨率除以用于下采样的输入图像的相应分辨率。下采样比率可以备选地被定义为下采样图像中的样本数目除以用于下采样的输入图像中的样本数目。由于两种定义不同,术语“下采样比率”可以进一步通过指示它是沿着一个坐标轴还是两个坐标轴(并且因此作为图像中的像素的数目比)被指示来表征。水平和垂直下采样比率不需要相同。图像下采样可以例如通过基于下采样比率从原始图像中的全部数目的像素中选择出特定数目的像素而被执行。
上采样过程可以被定义为增大信号的采样率,并且它通常导致增大水平和/或垂直方向上的图像大小。在图像上采样中,输出图像的空间分辨率(即,输出图像中的像素数目)与输入图像的空间分辨率相比增大。上采样比率或因子可以被定义为上采样图像的水平或垂直分辨率除以输入图像的相应分辨率。上采样比率可以备选地被定义为上采样图像中的样本数目除以输入图像中的样本数目。由于两种定义不同,术语“上采样比率”可以进一步通过指示它是沿着一个坐标轴还是两个坐标轴被指示(因而通过图像中像素的数目比)来表征。水平和垂直上采样比率不需要相同。
下采样和/或上采样可以被考虑为包括滤波和/或可以与滤波有联系。例如,下采样可以包括低通滤波。
下采样能够在图像/视频编码中被利用以提高已有编码方案的编码效率或降低这些解决方案的计算复杂度。例如,与纹理图片相比的四分之一分辨率(沿着两个坐标轴的一半分辨率)的深度映射可以用作基于变换的编码(诸如,H.264/AVC、MVC、MVC+D、HEVC、MV-HEVC、它们的组合和/或推导、或者任何类似的编码方案)的输入。
备选地,上采样过程通常被使用在最高级的视频编码技术中以便提高它们的编码效率。例如,归因于能够由运动矢量参考的1/4像素网格的子像素值的1/4像素运动矢量精度和插值,编码视频数据的4x分辨率上采样可以使用在H.264/AVC、MVC、MVC+D、HEVC、MV-HEVC、它们的组合和/或推导、或者任何类似的编码方案的编码回路中。
可缩放视频编码指代一种编码结构,其中一个比特流能够包含用不同比特率、分辨率、帧速率和/或其他类型的可缩放性的内容的多种表示。在这些情况中,接收器能够依赖于其特性(例如,最佳匹配于显示设备的分辨率)来提取所期望的表示。备选地,服务器或网络元件能够依赖于例如接收器的网络特性或处理能力来提取比特流的将被传输至接收器的部分。
可缩放比特流可以由提供可用的最低质量视频的基础层以及在被接收并且与较低层一起被解码时增强视频质量的一个或多个增强层构成。为了提高增强层的编码效率,该层的编码表示可以依赖于较低层。例如,增强层的运动和模式信息能够从较低层被预测。类似地,较低层的像素数据能够用来创建用于增强层的预测。每个层与其所有从属层一起是在某一空间分辨率、时间分辨率、质量级别、和/或其他类型的可缩放性的操作点处的视频信号的一种表示。在本文中,我们将可缩放层与所有其从属层一起称为“可缩放层表示”。可缩放比特流的与可缩放层表示相对应的部分能够被提取和解码以产生某一保真度的原始信号的表示。
可缩放的视频编码和/或解码方案可以使用多回路编码和/或解码,其可以被表征如下。在编码/解码中,基础层图片可以被重构/解码以用作相同层内按编码/解码顺序的后续图片的运动补偿参考图片或者作为层间(或视图间或分量间)预测的参考。重构/解码的基础层图片可以被存储在DPB中。增强层图片可以相似地被重构/解码以用作相同层内按编码/解码顺序的后续图片的运动补偿参考图片或者作为较高增强层(如果有的话)的层间(或视图间或分量间)预测的参考。除了重构/解码的样本值以外,基本/参考层的语法元素值或者从基本/参考层的语法元素值推导的变量可以被使用在层间/分量间/视图间预测。多回路解码使得解码器能够按时刻或访问单元输出多于一个解码图片,例如解码的基础层图片和解码的增强层图片。
用于质量可缩放性(也被称为信噪比或SNR)和/或空间可缩放性的可缩放视频编码器可以被实施如下。对于基础层,可以使用常规的不可缩放的视频编码器和解码器。基础层的重构/解码图片被包括在用于增强层的参考图片缓冲区和/或参考图片列表中。在空间可缩放性的情况中,重构/解码的基础层图片可以在其***用于增强层图片的参考图片列表中之前被上采样。类似于增强层的解码参考图片,基础层解码图片可以被***到用于增强层图片的编码/解码的(多个)参考图片列表中。结果,编码器可以选取基础层参考图片作为帧间预测参考并且利用编码比特流中的参考图片索引指示其用途。解码器从比特流(例如从参考图片索引)解码基础层图片用作增强层的帧间预测参考。当解码的基础层图片用作增强层的预测参考时,它被称为层间参考图片。
另一类型的可缩放性为标准可缩放性,其也可以被称为混合编解码可缩放性。当编码器200在基础层中使用除了HEVC(203)以外的其他编码器时,这样的编码器用于标准可缩放性。在这种类型中,基础层和增强层属于不同的视频编码标准。示例情况是基础层利用H.264/AVC被编码而增强层利用HEVC被编码。以这种方式,相同的比特流能够由基于旧有H.264/AVC的***和基于HEVC的***这两者来解码。
其他类型的可缩放性和可缩放视频编码包括:比特深度可缩放性,其中基础层图片以每亮度和/或色度样本相比增强层图片(例如,10或12比特)较低的比特深度(例如,8比特)被编码;色度格式可缩放性,其中基础层图片提供相比增强层图片(例如,4:2:0格式)较高的保真度和/或较高的色度上的空间分辨率(例如,以4:4:4色度格式被编码);以及色域可缩放性,其中增强层图片具有相比基础层图片更富裕/更宽的颜色表示范围—例如增强层可以具有UHDTV(ITU-R BT.2020)色域并且基础层可以具有ITU-R BT.709色域。
尽管之前的段落描述了具有增强层和基础层的两个可缩放性层的可缩放视频编解码,但是需要理解该描述能够被推广至具有多于两层的可缩放性层级结构中的任何两层。在这种情况中,第二增强层在编码和/或解码过程中可以依赖于第一增强层,并且第一增强层因此可以被认为是用于编码和/或解码第二增强层的基础层。此外,需要理解,可能存在来自增强层的参考图片缓冲区或参考图片列表中的多于一个层的层间参考图片,并且这些层间参考图片中的每个参考图片可以被考虑为位于针对正被编码和/或解码的增强层的基础层或参考层中。
在可缩放的多视图编码中,相同的比特流可以包含多视图的编码视图分量,并且至少一些编码视图分量可以使用质量和/或空间可缩放性被编码。
可缩放的视频编码和/或解码方法可以支持增强层,这些增强层增强参考层图片的区域(图11a中所图示),和/或增强参层图片区域的超集(图11b中所图示)。在后者的情况中,基础层图片可以被考虑为对应于增强层图片的区域。这样的空间可缩放性可以被称为扩展的空间可缩放性。
增强层图片110与参考层区域112、或类似地增强层区域114与基础层图片116之间的空间对应性可以由编码器指示和/或由解码器使用例如所谓的缩放的参考层偏移来解码。缩放的参考层偏移可以被考虑为规定了上采样的参考层图片的拐角样本相对于增强层图片的相应拐角样本的位置。缩放的参考层偏移可以由四个语法元素(例如,增强层及其参考层的每配对)指示,四个语法元素可以被称为scaled_ref_layer_top_offset 118、scaled_ref_layer_bottom_offset 120、scaled_ref_layer_right_offset 122和scaled_ref_layer_left_offset 124。偏移值可以是有符号的,这使得偏移值的使用能够被用在两种类性的扩展空间可缩放性中(图11a和图11b中所图示)。在感兴趣区域的可缩放性的情况(图11a)中,增强层图片110对应于参考层图片116的区域112,并且缩放的参考层偏移指示了上采样的参考层图片的扩展增强层图片区域的拐角。可以由编码器和/或解码器通过分别根据增强层图片高度或宽度与上采样的参考层图片高度或宽度之间的比率来缩减被缩放的参考层偏移,以推断被上采样的参考层区域。经缩减的被缩放的参考层偏移然后可以用于获得被上采样的参考层区域和/或确定参考层图片的哪些样本搭配为增强层图片的某些样本。假使参考层图片对应于增强层图片的区域(图11b),则缩放的参考层偏移指示上采样的参考层图片的位于增强层图片的区域内的拐角。缩放的参考层偏移可以用于确定上采样的参考层图片的哪些样本搭配为增强层图片的某些样本。还有可能混合扩展的空间可缩放性的类型,即水平地应用一个类型并且垂直地应用另一类型。缩放的参考层偏移可以由编码器在例如序列级别语法结构(诸如SPS和/或VPS)中指示,和/或由解码器从例如序列级别语法结构(诸如SPS和/或VPS)解码。缩放的参考偏移的精确度可以例如在编码标准中被预定义,和/或由编码器规定和/或由解码器从比特流解码。例如,可以使用增强层中的亮度样本大小的1/16精确度。当两个层之间没有发生层间预测时,缩放的参考层偏移可以在编码、解码和/或显示过程中被指示、解码和/或使用。
编码器和/或解码器可以例如基于用于增强层及其参考层的配对的缩放的参考层偏移来推导用于该配对的水平缩放因子(例如,被存储在变量ScaleFactorX中)和垂直缩放因子(例如,被存储在变量ScaleFactorY中)。如果任一或两个缩放因子不等于1,则参考层图片可以被重采样以生成用于预测增强层图片的参考图片。被用于重采样的过程和/或滤波器可以例如在编码标准中被预定义,和/或由编码器在比特流中被指示(例如,作为预定义的重采样过程或滤波器之中的索引),和/或由解码器从比特流解码。不同的重采样过程可以由编码器指示,和/或由解码器解码,和/或由编码器和/或解码器依赖于缩放因子的值来推断。例如,当两个缩放因子都小于1时,预定义的下采样过程可以被推断;并且当两个缩放因子都大于1时,预定义的上采样过程可以被推断。另外地或备选地,不同的重采样过程可以由编码器指示,和/或由解码器解码,和/或由编码器和/或解码器依赖于哪个样本阵列被处理来推断。例如,第一重采样过程可以被推断以用于亮度样本阵列,并且第二重采样过程可以被推断以用于色度样本阵列。
下面提供了用于获得重采样的亮度样本值的层间重采样过程的示例。通过变量rlPicSample来推断输入亮度样本阵列,其也可以被称为亮度参考样本阵列。针对相对于增强层图片的左上亮度样本的亮度样本位置(xP,yP)来推导重采样的亮度样本值。作为结果,该过程生成通过变量intLumaSample访问的重采样的亮度样本。在这一示例中,下面具有系数fL[p,x]的8抽头滤波器(p=0...15并且x=0...7)被用于亮度重采样过程。
内插亮度样本IntLumaSample的值可以通过应用下面排序的步骤被推导:
1.可以例如基于缩放的参考层偏移来推导与(xP,yP)对应或搭配的参考层样本位置。这一参考层样本位置被称为1/16样本的单元中的(xRef16,yRef16)。
2.变量xRef和xPhase推导如下:
xRef=(xRef16>>4)
xPhase=(xRef16)%16
其中“>>”是向右移位操作,即x的补码整数表示的算术右移位y个二进制数字。这个函数可以仅定义用于y的非负整数值。作为右移位结果的移位到MSB(最高有效位)中的比特具有等于移位操作之前x的MSB的值。“%”是模运算,即x除以y的余数,仅定义用于整数x和y,其中x>=0并且y>0。
3.变量yRef和yPhase推导如下:
yRef=(yRef16>>4)
yPhase=(yRef16)%16
4.变量shift1、shift2和offset推导如下:
shift1=RefLayerBitDepthY-8
shift2=20-BitDepthY
offset=1<<(shift2-1)
其中RefLayerDepthY是参考层中每亮度样本的比特数目。BitDepthY是增强层中每亮度样本的比特数目。“<<”是向左移位操作,即x的补码整数表示的算术左移位y个二级制数字。这个函数可以仅定义用于y的非负整数值。作为左移位结果的移位到LSB(最低有效位)中的比特的具有等于0的值。
5.样本值termArray[n],其中n=0...7,推导如下:
其中RefLayerPicHeightInSamplesY是亮度采样中的参考层图片的高度。RefLayerWidthInSamplesY是亮度样本中的参考层图片的宽度。
6.内插的亮度样本值intLumaSample推导如下:
等同于或类似于上面描述的用于亮度样本值的过程,可以规定用于获得重采样的色度样本值的层间重采样过程。例如,具有不同数目的抽头的滤波器可以用于色度样本而非亮度样本。
可以例如以图片方式(对于将被重采样的整个参考层图片或区域)、按条带地(例如,对于与增强层条带相对应的参考层区域)或按块地(例如,对于与增强层编码树单元相对应的参考层区域)执行重采样。重采样针对确定区域的参考层图片(例如,增强层图片中的图片、条带、或编码树单元)可以例如通过在确定区域的所有样本位置进行循环并且针对每个样本位置执行按样本的重采样过程(诸如在上面示例中提供的那些)而被执行。然而,将理解存在用于重采样确定区域的其他可能性—例如,某一样本位置的滤波可以使用之前样本位置的变量值。
用于可缩放视频比特流的HRD可以类似于用于单层比特流的HRD进行操作。然而,可能要求或希望一些变化,特别是当涉及到可缩放比特流的多回路解码中的DPB操作时。有可能以多种方式规定用于可缩放比特流的多回路解码的DPB操作。在按层的方法中,每个层可以在概念上具有它自己的DPB,其可以用其他方式独立地操作,但是一些DPB参数可以联合地被提供用于所有按层的DPB并且图片输出可以同步地进行操作,从而具有相同输出时间的图片被同时输出,或者在输出顺序一致性检查中,来自相同访问单元的图片彼此紧挨着被输出。在被称为特定于分辨率方法的另一方法中,具有相同关键属性的层共享相同的子DPB。关键属性可以包括下列项中的一个或多个:图片宽度、图片高度、色度格式、比特深度、颜色格式/色域。
有可能利用相同的DPB模型来支持以层方式的DPB方法和特定于分辨率DPB方法这两者,其中该DPB模型可以被称为子DPB模型。DPB被分割为若干子DPB,并且每个子DPB以其他方式独立地被管理,但是一些DPB参数可以联合地被提供用于所有子DPB并且图片输出可以同步地进行操作,从而具有相同输出时间的图片被同时输出,或者在输出顺序一致性检查中,来自相同访问单元的图片彼此紧挨着被输出。
帧包装
帧包装是指一种方法,其中在编码器侧将多于一个帧包装成单个帧作为用于编码的预处理步骤,并且然后利用常规的2D视频编码方案对经帧包装的帧进行编码。解码器产生的输出帧因此可以包含组成帧,组成帧对应于在编码器侧在空间上被包装成一个帧的输入帧。帧包装可以例如用于立体视频,其中一对帧(一个对应于左眼/摄像机/视图并且另一个对应于右眼/摄像机/视图)被包装成单个帧。帧包装还可以或备选地用于深度或视差增强视频,其中组成帧之一表示与包含正常色彩信息(亮度和色度信息)的另一组成帧相对应的深度或视差信息。帧包装的使用可以在视频比特流中例如使用H.264/AVC或类似物的帧包装布置SEI消息用信号通知。帧包装的使用也可以或备选地通过视频接口(诸如高清晰度多媒体接口(HDMI))被指示。帧包装的使用也可以或备选地使用各种能力交换和模式协商协议(诸如会话描述协议(SDP))被指示和/或协商。
尽管之前的段落描述了具有增强层和基础层的两个可缩放性层的可缩放视频编解码,但是需要理解该描述能够被推广至具有多于两层的可缩放性层级结构中的任何两层。在这种情况中,第二增强层在编码和/或解码过程中可以依赖于第一增强层,并且第一增强层因此可以被认为是用于第二增强层的编码和/或解码的基础层。此外,需要理解,可以存在来自增强层的参考图片缓冲区或参考图片列表中的多于一个层的层间参考图片,并且这些层间参考图片中的每个参考图片可以被考虑为位于用于正被编码和/或解码的增强层的基础层或参考层中。
在一些实施例中,一种覆叠两个或更多可缩放性层以用于显示的方法可以被描述如下。视频材料(诸如新闻报道、音乐视频和电影预告片)可以包括分离图像材料场景之间的快速切分。有时切分是突然的,但是一些其他时候可以使用被称为场景转变的过程,其中通过变暗、擦拭、马赛克叠化(dissolving)或滚动之前场景的图像帧,并且对应地通过呈现稍后场景的图像帧,而发生从一个场景到另一场景的转移。一种类型的场景转变,淡入淡出,可以通过逐渐将第一场景的图像帧的强度或亮度减少至0、同时逐渐将第二场景的图像帧的强度增加至其最大值来执行。这一场景转变可以被称为同时淡入淡出场景转变。淡入淡出的示例在图18中描绘,其中帆船的图片逐渐被脸的图形被覆叠并且替换。
一般来说,计算机制作的图像能够被认为由层、或图像对象构成。每个对象能够参考至少三个信息类型被定义:图像对象的结构、其形状和透明度、以及与图像背景和其他图像对象相关的分层顺序(深度)。形状和透明度可以使用被称为阿尔法平面的事物被确定,阿尔法平面测量不透明度并且其值通常单独针对每个图像对象被确定,有可能排除可能被确定为非透明的背景。非透明图像对象(诸如背景)的阿尔法平面值因此能够被设置为例如1.0,而完全透明图像对象的阿尔法平面值可以是例如0.0。中间的值定义与背景并且与具有比所讨论的图像对象较高的深度值的至少部分重叠的其他图像对象成比例的图片中的特定图像对象的可见度的强度。
层中的图像对象根据它们的形状、透明度和深度位置的叠加可被称为场景构成。实际上,该过程可以基于加权平均的使用,并且可以例如操作如下。首先,最接近于背景(即根据其深度位置最深)的图像对象被放置到背景上并且组合的图像由这两者形成。组合图像的像素值被形成为通过背景图像和所讨论的图像对象的阿尔法平面值被加权的平均。组合图像的阿尔法平面值然后可以被设置为1.0,此后它充当用于下一图像对象的背景图像。该过程可以继续直到所有图像对象被附加到该图像。
在下文中,将描述一种过程,其中视频序列可缩放性层与图像帧的上面描述的图像对象及它们的信息类型进行组合,以向场景转变提供也可以具有良好压缩效率的可缩放视频编码。
这个过程在下面以示例和简化方式一方面通过使用同时淡入淡出场景转变、并且另一方面作为示例通过使用突然场景转变而被图示。在场景转变期间将被显示的图像帧可以由两个叠加的图像帧形成,其中第一图像帧包括第一图像场景并且第二图像帧包括第二场景。图像帧之一充当背景图像,而被称为前景图像的另一图像帧被放置于背景图像上面。背景图像的不透明性(即其非透明度值)为恒量。换句话说,其特定于像素的阿尔法平面值未被调整。
在这个过程中,背景图像和前景图像均根据可缩放性层被定义。这在图15a中被图示,图15a示出了两个不同场景的图像帧在场景转变期间如何能够被放置于可缩放性层上的示例。
图15a示出了被定位在基础层上的第一(终止)场景的第一图像帧190。图像帧190可以是I帧,I帧包含没有使用运动补偿时间预测确定的图像信息;或者它可以是P帧,P帧是从之前图像帧预测的运动补偿图像帧。第二(起始)场景的编码在时间上跟随的图像帧期间开始,并且场景的图像帧也可被放置于基础层上。第二(终止)场景的剩余图像帧192、194然后可以被放置于增强层1上。这些图像帧可以是例如P帧。
至少针对场景转变的持续期,第二(起始)场景的图像帧因此被放置于基础层上。场景的第一图像帧196可以是I帧,并且它用于在时间上预测该场景的随后图像帧。结果,第二场景的随后图像帧是在时间上预测的帧,通常是P帧,诸如图15a中所示出的帧198和199。
图像帧在可缩放性层上的这一放置能够用于通过确定位于一直作为最大不透明度(100%)或非透明度值的背景图像的基础层上的图像层来实施同时淡入淡出场景转变。在场景转变期间,位于增强层上的图像帧被放置于背景图像上并且它们的不透明度例如借助于适合的滤波器被调节以使得帧逐渐从非透明变为透明。
在图15a的视频序列中,在第一基础层图像帧190期间,较低可缩放性层上不存在图像帧。对于这个时刻,第一图像帧190仅被编码到视频序列中。
基础层的下一图像帧196发起新的(第二)场景,在该场景期间,图像帧196被提供有将其放置作为背景图像的深度定位,并且其不透明度值被设置为最大值。与基础层的图像帧196在时间上同时地,存在增强层1上的终止(第一)场景的图像帧192。为了允许产生同时淡入淡出场景转变,帧192的透明度必须增加。图15a的示例假设图像帧192的不透明度被设置为67%,并且另外地,图像帧192被提供有将其确定为前景图像的深度定位。对于这个时刻,组合了图像帧196和192的图像被编码到视频序列中,图像196作为背景上的较弱图像是可见的并且图像192作为在前面的较强图像是可见的,因为其不透明度值实质上为高(67%)。
在时间上跟随的图像帧期间,基础层上存在第二场景的第二图像帧198,帧198因此对应地被提供有将其确定为背景图像的深度定位,并且其不透明度值被设为最大值。增强层1进一步包括在时间上同时终止(第一)场景的最后图像帧194,该帧的不透明度值被设置为33%,并且另外地,图像帧194也被提供有将其确定为前景图像的深度定位。结果,对于这个时刻,由图像帧198和194组合的图像被编码到视频序列中,图像198被显示为背景上的较强图像,并且图像194被显示为前景上的较弱图像,因为图194的不透明度值不再大于33%。
在时间上跟随的图像帧期间,基础层包括第二场景的第三图像帧199。由于第一场景已经终止,仅图像帧199被编码到视频序列中,并且第二场景的显示从帧199继续。
图15a图示了场景转变时段内在可缩放性层中布置图片的一种可能性。需要理解,还存在着在场景转变时段内在可缩放性层中布置图片的其他可能性。例如,第一场景的所有图片可以在第一层中,并且第二场景的所有图片可以在第二层中。
上面的公开通过示例描述了将图像帧定位在可缩放性层上,从而以从编码效率的视点来看可能有利的方式实施同时淡入淡出场景转变。然而,当视频序列被传输或解码时有可能出现如下情形:视频序列的比特率应当根据带宽的最大值和/或可用于数据传送的终端设备解码速率而被调节。
一个或多个可缩放性层、或者它们中包括的独立可解码的子序列可以从视频序列被移除,由此视频序列的比特率可以降低,并且同时视频序列还可以被解码而不减小图像频率。在根据图15a的图像帧定位中,这可以通过从视频序列移除增强层1来实施。视频序列因此仅用于显示基础层的图像帧190、196、198和710。换句话说,从第一(终止)场景到第二(起始)场景的直接转变以突然场景转变的形式发生,即直接从第一场景的图像帧190到发起第二场景的I图像帧706。该转变因此不是同时淡入淡出场景转变,而是突然场景转变。然而,该场景转变可以以有利的方式被执行而不影响视频序列图像的质量,并且观看者通常可以不经历以烦扰的或错误的任何方式替代同时淡入淡出场景转变被执行的突然场景转变。
在相关的标准化贡献JVT-C076中,覆叠操作的信令被提议基于如下的新条带类型,覆叠(O)条带。如果O条带被指示,则条带头部中存在下面的附加字段。
条带编码类型(SCT)。这个字段指示条带编码类型(帧内、帧间、B等)。覆叠条带不应该再次被指示。
源方向(SDIR)。如果这个字段为0,则用于滤波的源图片早于当前图片被编码,并且其图片编号应该通过从当前图片编号减去SPND(以模MAX_PN算术)而被计算。如果这个字段为一,则源图片晚于当前图片被编码,并且其图片编号应该通过将当前图片编号增加SPND(以模MAX_PN算术)而被计算。
源图片编号差异(SPND)。码字索引等于SPND-1。SDIR和SPND指示用于转变的源图片。
滤波器标识符(FID)。该字段指示要使用的滤波器。
0:交叉叠化。
1:附加叠化。
2:加权附加叠化。
其他值暂时被保留。
滤波参数的数目(NFP)。这个字段指示跟随在当前码字之后并且定义用于滤波的特定参数的码字数目。码字的语义依赖于滤波器标识符。
交叉叠化滤波器包括一个滤波参数,即当前条带的不透明度。它是一与255之间的值,并且它被编码为8比特的固定长度代码。等于零的不透明度指示非透明条带并且256将指示完全透明条带,而0与256之间的值指示如下定义的从非透明到透明的线性转变。如果A为源图片中的像素并且B为当前条带中在空间上的对应像素,则从交叉叠化操作产生的像素应该等于(A×不透明度+(256-B)×不透明度)/256,其中/为截断除法。
附加叠化滤波器不包括滤波参数。如果A为源图片中的像素并且B为当前条带中在空间上的对应像素,则从附加叠化操作产生的像素应该等于min(A+B,255)。
当在编码之前针对源序列应用了振幅加权时,附加叠化可能是有用的。否则,交叉叠化可能是用以获得同时淡入淡出场景转变的选择。
加权的附加叠化滤波器包括两个滤波参数WA和WB,它们是被解释为无符号整数的自然二进制表示的7比特固定长度代码。7比特精度被选择为将中间计算限制为16比特精度。亮度和色度输出(分别为OY和OC)如下地从输入像素A和B以及它们的亮度分量(AY,BY)和色度分量(AC,BC)而被计算。
O Y = max ( 0 , m i n ( 255 , A Y &times; W A + B Y &CenterDot; &times; W B 128 ) )
O C = max ( 0 , min ( 255 , ( A C - 128 ) &times; W A + ( B C - 128 ) &times; W B 128 + 128 ) )
输出层集合和备选的输出层
编码标准或***可以参考术语操作点或类似术语,操作点可以指示解码在其下进行操作的可缩放层和/或子层,和/或可以与包括正被解码的可缩放层和/或子层的子比特流相关联。下面提供了操作点的一些非限制性定义。
在HEVC中,操作点被定义为如下的比特流,该比特流以另一比特流、目标最高TemporalId和目标层标识符列表作为输入而通过子比特流提取过程的操作从该另一比特流被创建。
HEVC的VPS规定了层集合和用于这些层集合的HRD参数。层集合可以用作子比特流提取过程中的目标层标识符列表。
在SHVC和MV-HEVC中,操作点定义可以包括考虑目标输出层集合。在SHVC和MV-HEVC中,操作点可以被定义为如下的比特流,该比特流以另一比特流、目标最高TemporalId和目标层标识符列表作为输入而通过子比特流提取过程的操作从该另一比特流被创建,并且该比特流与目标输出层的集合相关联。
MV-HEVC/SHVC草案规范(分别在文献JCT3V-E1004和JCTVC-N1008中)针对VPS中规定的每个层集合推导了默认输出层集合。VPS扩展标志default_one_target_output_layer_flag在等于0时可以规定每个层为输出层,并且在等于1时可以规定仅最高层为输出层。另外,对默认输出层集合,VPS扩展使得能够规定附加的输出层集合,其中所选择的层被指示为输出层。
尽管恒定的输出层集合很好地适合最高层在每个访问单元中保持不变的使用情况和比特流,但是它们可能不支持最高层从一个访问单元到另一访问单元发生变化的使用情况。因此,已经提议了输出层集合中的每个输出层与最小备选输出层相关联。用于每个输出层集合的每个输出层的最小备选输出层可以按序列级别语法结构(例如,H.264/HEVC及其扩展中的VPS)中被指示。它用来规定能够替代规定的输出层而被输出的图片的最小层标识符值,如果在输出层处的图片未存在于访问单元中的话。可以输出以下降的层标识符顺序下至所指示的最小备选输出层而存在于访问单元中的第一直接或间接层间参考图片。对于默认输出层集合,最小输出层可以被规定为与输出层相同;即,当默认输出层集合在使用中时,解码器可以仅输出规定的输出层。对于附加的输出层集合,一个或多个语法元素可以控制备选输出层的指配。例如,VPS扩展可以包括u(1)编码的alt_output_layer_flag。当alt_output_layer_flag等于0时,未在目标输出层处的图片不被输出。当alt_output_layer_flag等于1并且目标输出层处的图片未存在于访问单元中时,访问单元的PicOutputFlag等于1并且不在目标输出层之中的那些图片之中的具有最高nuh_layer_id的图片被输出。在另一示例中,语法元素min_alt_output_idx[i][j]被添加至用于非默认输出层集合的每个输出层的VPS扩展语法,并且针对第i个输出层集合内的第j层规定了备选输出层索引。
感兴趣区域(ROI)编码是指对较高保真度的视频内的特定区域进行编码。存在用于编码器和/或其他实体从将被编码的输入图片确定ROI的若干方法。例如,可以使用面部检测并且面部可以被确定为ROI。另外地或备选地,在另一示例中,处于焦点中的对象可以被检测并且确定为ROI,而焦点之外的对象被确定为在ROI外。另外地或备选地,在另一示例中,与对象的距离可以例如基于深度传感器被估计或是已知的,并且ROI可以被确定为相对接近于摄像机而非位于背景中的那些对象。
存在针对具有不同要求的ROI的若干不同应用。例如,增强层能够被传输以增强基础层中的区域的质量和/或分辨率。接收到增强层和基础层比特流两者的解码器可以解码这两个层并且将解码的图片覆叠在彼此之方并显示最终的图片。
然而,存在其他应用,其中将ROI增强层覆叠在基础层上可能不是在显示中所希望的。例如,ROI增强层可以增强多方视频会议中的参与者视频馈送,所以当以全屏观看时,EL可以用于实现全分辨率。在这些情况中,预期显示行为是独立地或在单独的窗口中显示EL,而不是覆叠在基础层上。
图6图示了一种示例,其中感兴趣区域被显示器210显示为另一图片211之上的单独窗口213。在一些实施例中,图片213可以被考虑为显示在与图片211的窗口分离的窗口上,即使窗口可以被重叠在屏幕上。与视频解码过程和输出过程有关联的显示过程可以将图片213和图片211考虑为分离的图片,并且将它们输出到例如由操作***提供的逻辑上分离的显示窗口中。逻辑上分离的显示窗口可以正好如图6所描绘的那样重叠。在一些实施例中,图片211可以被编码为例如从基础层进行预测的增强层。可以例如使用如在本专利申请中的其他地方描述的缩放的参考层偏移来规定图片211在图片213的图片区域上的相对位置。图片213可以被考虑为在显示过程中将被覆叠在图片211上,即从图片213和211两者的覆叠操作产生的图片可以被考虑为显示在例如由操作***提供的一个逻辑显示窗口上。
类似于ROI层,与辅助图片相关的预期显示行为可能不清楚。例如,如果要求覆叠图片被显示或如果播放器能够选取是否显示覆叠图片,则它是不清楚的。在另一示例中,初级图片与阿尔法图片相关联,但是如果内容创建器允许显示初级图片而无需通过阿尔法图片的存在所建议的阿尔法混合,则它可能不是清楚的。
可缩放的视频编码方案(诸如,SHVC/MV-HEVC)可以允许访问单元包含用于比特流中存在的一些层但非所有层的图片。例如,不同层中的图片速率可能不同。在一些应用中,在ROI EL可以被更频繁地编码时保持BL图片不变可能是有利的。例如,画中画(PIP)EL可以具有比基础层的图片速率较高的图片速率。在另一示例中,叠加有阿尔法混合的初级图片的背景图片保持不变一段时间。这也可以相反地进行考虑:背景图片可以被叠加在初级图片之上。
H.264/AVC的SVC扩展包括如下的可能性:增强层图片仅表示其对应参考层图片的所选择的矩形区域,其以较高或相同的空间分辨率被编码。备选地,增强层图片可以包含超出参考层图片边界外的附加部分。这一参考和增强层裁剪(其也可以被组合)能够甚至在逐个图片的基础上被修改。所规定的SVC解码过程使用单个运动补偿回路,即仅最高解码EL的图片被保持在DPB中。因此,SVC能够被考虑为是编解码的示例,其中可能要求显示EL而不具有BL。
当多个层被解码器输出时,预期显示行为已经被层之间的可缩放性维度所支配。例如,如果输出层表示不同视图,则预期显示行为可以是显示所有输出层(或按适合于显示装备尽量多的输出层)。在上面提出的示例中,如由EL的可缩放性类型(O条带)所支配的,可缩放性层将被重叠作为解码或显示过程的一部分。
MV-HEVC/SHVC设计允许如下的访问单元,在这些访问单元中,图片可以表示存在于比特流中的层子集。这一特性能够例如用于下面的目的:
-不同层中的不同图片速率,例如,在具有60Hz的较低空间分辨率处的基础层和在具有30Hz的较高空间分辨率处的增强层;
-SHVC的使用,用于使能否则为单层比特流的自适应分辨率变化;
-按层启动,其中在比特流开始之后层的数目步进式增加。
MV-HEVC/SHVC设计包括在VPS扩展中规定的输出层集合,其中的每个输出层集合规定了当该输出层集合在使用中时由解码器输出的层。类似于例如选择目标时间级别,对使用中的输出层集合的选择被意图为(例如,通过通向解码的接口)由外部手段执行。每个规定的输出层集合可以利用HRD在一致性检查中被测试。为了使能HRD中的一致性检查,所选择的输出层集合必须针对整个编码视频序列(CVS)保持不变。术语“目标输出层集合”可以用于已经被选择为由外部手段或由HRD使用的输出层集合。术语“目标输出层”可以用于目标输出层集合中包括的每个输出层。
MV-HEVC/SHVC草案规范(分别在文献JCT3V-E1004和JCTVC-N1008中)针对VPS中规定的每个层集合推导了默认输出层集合。VPS扩展标志default_one_target_output_layer_flag在等于0时可以规定每个层是输出层,并且在等于1时可以规定仅最高层是输出层。另外,对默认输出层集合,VPS扩展使得能够规定附加的输出层集合,其中所选择的层被指示为输出层。
目标输出层集合影响来自解码过程和/或HRD的图片输出。仅有位于目标输出层上的图片可以(依赖于它们的PicOutputFlag值并且依赖于具有等于1的NoOutputOfPriorPicsFlag的图片(如果有的话)的影响)被输出。不位于目标输出层上的图片不被输出。这可以例如通过针对不包括在任何目标输出层中的图片设置等于0的PicOutputFlag而被实施。
使用可缩放性维度(SVC中的quality_id)用于指示可能存在于或可能不存在于访问单元中的层的SVC方法将层输出行为与可缩放性维度相耦合。结果,可缩放性维度值它自身将不足以例如在空间可缩放性与SNR可缩放性之间进行区分,因为在涉及到输出和对层进行输出的优先顺序(例如,具有最高当前quality_id的层表示被解码和输出)时它仅指示层是备选的。此外,SVC方法要求基础层表示(quality_id等于0)存在于每个访问单元中,这在例如时间可缩放性使用情况中可能是不可取的。
在一些实施例中,输出层集合中的每个输出层可以与最小备选输出层相关联。针对每个输出层集合的每个输出层的最小备选输出层可以在序列级别语法结构(例如,H.264/HEVC中的VPS及其扩展)中被指示。它用来规定能够替代所规定的输出层而被输出的图片的最小层标识符值,如果输出层处的图片不存在于访问单元中的话。可以输出以下降的层标识符顺序下至所指示的最小备选输出层而存在于访问单元中的第一直接或间接层间参考图片。
在图12中所示出的示例方法中,图片被编码到比特流中1040。该比特流包括与访问单元相关联的至少两个可缩放性层和图片。第一指示和第二指示被编码到比特流中1042、1044。第一指示被配置为指示输出层,并且第二指示被配置为指示至少一个备选输出层。第一指示和第二指示联合地具有如下影响:当没有输出层的图片在包含所述至少一个备选输出层的第一图片的访问单元中时,所述至少一个备选输出层的所述第一图片通过比特流的解码过程被输出。在进一步的实施例中,这些层与一个或多个可缩放性维度相关联并且与该一个或多个可缩放性维度的不同值集合相关联。第二指示独立于该一个或多个可缩放性维度被编码。
在图13中所示出的示例方法中,图片可以从比特流被解码1050。该比特流包括与访问单元相关联的至少两个可缩放性层和至少两个图片。第一指示和第二指示可以从比特流被解码1052、1054。第一指示可以指示输出层,并且第二指示可以指示至少一个备选输出层。当没有输出层的图片在包含所述第一图片的第一访问单元中时,该至少一个备选层的第一图片可以被输出1056。在进一步的实施例中,输出层的第二图片可以被输出,第二图片与第二访问单元相关联。在进一步的实施例中,这些层可以与一个或多个可缩放性维度相关联并且与该一个或多个可缩放性维度的不同值集合相关联。第二指示可以独立于该一个或多个可缩放性维度被编码。因此,一个或多个可缩放性维度以及它们的值到层的指配可以独立于解码第二指示而被解码,以推断至少一个备选输出层。
再换句话说,每个输出层可以与最小备选输出层相关联。对于默认输出层集合,最小输出层可以与输出层相同,即当默认输出层集合在使用中时,解码器可以仅输出规定的输出层。对于附加的输出层集合,语法元素min_alt_output_layer_idx[i][j]被添加至用于非默认输出层集合的每个输出层的VPS扩展语法。
if(output_layer_flag[i][j])
min_alt_output_layer_idx[i][j] ue(v)
它用来规定能够替代所规定的输出层而被输出的图片的最小nuh_layer_id值,如果输出层处的图片不存在于访问单元中的话。以下降的nuh_layer_id顺序下至从min_alt_output_layer_idx[i][j]推导的最小值而存在于访问单元中的第一直接或间接层间参考图片被输出。
变量NumRecursiveRefLayers[i]和RecursiveRefLayerFlag[i][j]被推导并且分别指示针对层i的直接和间接参考层的数目以及直接和所指示的参考层掩码。变量NumRecursiveRefLayers[i]和RecursiveRefLayerFlag[i][j]推导如下:
-对于0至63的范围(包括0和63)中的所有i和j值,NumRecursiveRefLayers[i]和RecursiveRefLayerFlag[i][j]首先被初始化为0。
-函数setRefLayerFlags(currLayerId)被规定如下。该函数用于修改RecursiveRefLayerFlag[i][j]。
-函数setRefLayerFlags(currLayerId)如下被调用:
用于具有索引i并且针对层j的输出层集合的变量OutputLayerFlag[i][j]被推导并且指示该层是否为输出层。
如果输出层处的图片不存在于访问单元中,则用于具有索引i并且针对层j的输出层集合的变量MinAltOutputLayerId[i][j]被推导并且指示能够替代所规定的输出层而被输出的图片的最小nuh_layer_id值。min_alt_output_layer_idx[i][j]用于推导变量MinAltOutputLayerId[i][j]。min_alt_output_layer_idx[i][j]的值应该在0至NumRecursiveRefLayer[LayerSetLayerIdList[1sIdx][j]-1的范围中(包括0和NumRecursiveRefLayer[LayerSetLayerIdList[1sIdx][j]-1)。
变量OutputLayerFlag[i][j]和MinAltOutputLayerId[i][j]推导如下,其中i是输出层集合的索引,并且j是nuh_layer_id值:
变量TargetOutputLayerSetIdx由外部手段设置,或者(如果不由外部手段设置)由HRD设置,或者(如果不由前两者设置)被设置为0。
-如果某一外部手段可用于设置TargetOutputLayerSetIdx,则TargetOutputLayerSetIdx由外部手段设置。
-否则,如果解码过程在比特流一致性测试中被调用。
-否则,TargetOutputLayerSetIdx被设置为等于0。
在一种实施例中,当每个图片被解码时,与当前MV-HEVC和SHVC草案(分别为文献JCT3V-E1004和JCTVC-N1008)相比,PicOutputFlag的推导保持不变。这一过程基本上设置PicOutputFlag的值就像图片属于被输出的层。当访问单元的所有图片已经被解码时,依赖于使用中的输出层集合中的输出层并且如果输出层存在于访问单元中,PicOutputFlag的值被更新。
当访问单元的最后图片的解码已经完成时,针对访问单元中的每个图片的PicOutputFlag如下被更新:
在一些实施例中,以下各项可以应用于一个或多个解码访问单元:
-如果访问单元不包含目标输出层处的图片并且alt_output_layer_flag等于1,则应用下面排序的步骤:
-列表nonOutputLayerPictures是具有等于1的PicOutputFlag并且具有TargetDecLayerIdList(即,正被解码的层的层标识符值)中包括的nuh_layer_id值的并且不在目标输出层上的访问单元图片的列表。
-列表nonOutputLayerPictures之中具有最高nuh_layer_id值的图片从列表nonOutputLayerPictures被移除。
-针对列表nonOutputLayerPictures中包括的每个图片的PicOutputFlag被设置为等于0。
-否则,针对未包括在目标输出层中的图片的PicOutputFlag被设置为等于0。
在一些实施例中,为了指示不同时刻的图片的构成,一些可用性信息可以被嵌入到视频比特流,以指示当多于一个层被使用时的预期的显示行为以及使用这一信息的相关联的显示行为。更具体地,所嵌入的信息可以指示这些层需要如何在视频比特流中被构成。在一些实施例中,将被嵌入的信息包括下列中的一项或多项:该信息可以指示预期显示行为是否将组合基础层和增强层解码图片。该信息可以指示基础层和增强层解码图片允许被覆叠。另外地或备选地,该信息可以指示增强层图片不应当在显示期间与基础层图片组合。一个进一步的选项是该信息指示预期显示行为是根据与辅助图片的类型和指示的特性所确定的初级图片相关联的解码的辅助图片来修改解码的初级图片,或者这种修改是否被允许但不总是被要求。在一些实施例中,该信息所应用到的辅助图片层和/或辅助图片类型可以被指示。
在缺少输出层处的图片时,并且在一些实施例中,在缺少用于输出层的任何备选输出层中的图片时,该信息可以指示下列之一:预期显示行为是在访问单元内将存在于访问单元中的输出层处的图片与不存在于访问单元中的那些输出层的之前图片(按输出顺序)进行组合;
预期显示行为是在访问单元内将来自其他图片的图片内插在输出层中;或者
预期显示行为是在访问单元内使用基于深度图像的渲染来合成用于输出层的视点的图片。
在一些实施例中,组合输出层处的图片以形成将被显示的图片的方法可以例如在编码标准中或者在用于指示的信令的语义中(诸如,在用于指示显示行为的SEI消息的语义中)被预定义。例如,组合输出层处的图片可以被规定为意指根据各种实施例将图片覆叠在彼此之上。备选地,组合图片的方法可以由编码器和/或解码器例如从输出层的类型或可缩放性维度来推断。例如,如果第一输出层是阿尔法平面,则当第二输出层和另一层(其可以在相同的比特流中例如作为第三输出层,或者在不同的比特流中)被覆叠时,它可以被推断为规定第二输出层与另一层相比的透明度。备选地,组合图片的方法可以由编码器在比特流中指示和/或由解码器从比特流解码。该方法可以例如被指示为预定义的方法集合的索引或标识符,其可以例如在编码标准中或者在用于指示的信令的语义中(诸如,在SEI消息的语义中)被规定。预定义的方法可以例如包括:覆叠输出层处的图片;覆叠具有由(多个)阿尔法平面确定的权重的输出层处的图片。
在一些实施例中,还可以实施用于上述指示的相关联的显示行为:如果比特流中的指示是覆叠基础层和增强层解码图片并且解码器接收基础层和增强层两者,则显示的最终图片是覆叠在解码的基础层图片上的解码的增强层图片。如果比特流中的指示是基础层和增强层解码图片允许被覆叠并且解码器接收基础层和增强层两者,则显示在显示器上的最终图片是解码的增强层图片或解码的基础层图片。
在一些实施例中,该指示还可以指示输出图片或输出层之中是否存在辅助图片(例如,阿尔法平面),这些输出图片/层中的哪些图片/层应当在生成将被显示的图片时被处理(例如,应用的阿尔法混合);或者这些输出图片/层中的哪些图片/层不要求被处理(但可以被处理)。
在一些实施例中,该指示还可以指示输出层是否从访问单元丢失、丢失的图片是否应当被来自相同层的之前图片(按输出顺序)替换、是否推荐不利用来自相同层的之前图片(按输出顺序)替换丢失的图片、或者是任一动作均可。
在深度增强的多视图编码中,该指示还可以指示输出层是否从访问单元丢失、丢失的图片是否应当被使用基于深度图片的渲染合成的图片替换、是否推荐不替换丢失的合成图片、或者是任一动作均可。
需要理解,尽管上面的实施例和一些其他实施例(以单数形式)提及指示,但是当存在若干指示时实施例可以类似地被实现。指示可以是一个或多个语法元素(每个都与某一助记名称相关联)和/或一个或多个语法元素值。
在一些实施例中,编码器或另一实体(诸如文件创建器)通过接口来接收将被编码的不同层的预期显示行为。预期显示行为可以是例如由用户或多个用户通过用户接口创建内容,用户接口的设置然后影响编码器通过接口接收的预期显示行为。
在一些实施例中,编码器或另一实体(诸如文件创建器)基于输入内容和/或编码设置来确定预期显示行为。例如,如果两个视图被提供作为输入以被编码为层,则编码器可以确定预期显示行为是(例如,在立体显示器上)分离地显示这些视图。在另一示例中,编码器接收感兴趣区域增强层(EL)将被编码的编码设置。编码器可以例如具有启发式规则,即如果ROI增强层与其参考层(RL)之间的缩放因子小于或等于某一限制,例如2,则预期显示行为是将EL图片覆叠在相应的上采样的RL图片之上。
基于接收的和/或确定的显示行为,编码器或另一实体(诸如文件创建器)将两个或更多层的预期显示行为的指示编码到比特流中,例如以序列级别语法结构,诸如VPS和/或SPS(其中该指示可以位于它们的VUI部分内),或者作为SEI,例如在SEI消息中。备选地或另外地,编码器或另一实体(诸如文件创建器)将两个或更多层的预期显示行为的指示编码到包括编码图片的容器文件中。备选地或另外地,编码器或另一实体(诸如文件创建器)将两个或更多层的预期显示行为的指示编码到描述中,诸如MIME媒体参数、SDP或MPD。
编码器或另一实体(诸如,媒体播放器或文件解析器)从比特流,例如从序列级别语法结构,诸如VPS和/或SPS(其中该指示可以位于它们的VUI部分内),或者通过SEI机制(例如从SEI消息),来解码两个或更多层的预期显示行为的指示。备选地或另外地,解码器或另一实体(诸如,媒体播放器或文件解析器)从包括编码图片的容器文件来解码两个或更多层的预期显示行为的指示。备选地或另外地,解码器或另一实体(诸如,媒体播放器或文件解析器)从描述(诸如,MIME媒体参数、SDP或MPD)来解码两个或更多层的预期显示行为的指示。基于解码的显示行为,解码器或另一实体(诸如,媒体播放器或文件解析器)从两个或更多层的解码的(并且可能经裁剪的)图片来创建将被显示的一个或多个图片。解码器或另一实体(诸如,媒体播放器或文件解析器)还可以对将被显示的一个或多个图片进行显示。
指示针对ROI层的预期显示行为的示例实施方式利用补充增强信息(SEI)机制,并且包括上文描述的一些指示的SEI消息的细节被示出如下:
当两个或更多层是输出层集合中的输出层、并且缩放的参考层偏移被规定在这些层之间或所有这些层具有j值不等于2的ScalabilityId[i][j]值的相同值时,这个SEI消息指示预期显示行为。
display_composition_id包含可以用于识别显示构成层SEI消息的使用的识别数字。可以要求display_composition_id值在某一范围内,诸如在0至232-2的范围中(包含0和232-2)。
display_composition_id的值范围可以被保留用于不同的目的和/或组织。例如,从0至255和从512至231-1的display_composition_id值可以用作由应用确定,和/或从256至511和从231至232-2的display_composition_id值被保留用于将来使用。解码器可以被要求忽略包含被保留用于将来使用的display_composition_id值的所有显示构成层SEI消息,并且可以要求比特流不包含这些值。
display_composition_cancel_flag等于1指示显示构成层SEI消息按输出顺序取消任何之前的显示构成层SEI消息的留存,display_composition_cancel_flag等于0指示有显示构成提示信息跟随。
display_composition_persistence_flag规定了显示构成层SEI消息的留存。
display_composition_persistence_flag等于0规定了显示构成层SEI消息仅应用于当前的访问单元。
display_composition_persistence_flag等于1规定了显示构成层SEI消息按输出顺序留存直到下列条件中的任何条件为真:
-新CVS开始。
-比特流结束。
-包含具有相同display_composition_id值的显示构成层SEI消息的访问单元中的图片按输出顺序跟随在当前图片之后被输出,该条件在HEVC和/或其扩展中可以与具有相比PicOrderCnt(CurrPic)较大的PicOrderCntVal相同。
num_display_composition_hints规定了存在于SEI消息中的显示构成提示的数目。
display_composition_layer_id[i]规定了如下的nuh_layer_id值,针对该nuh_layer_id值规定了display_composition_idc[i]。当图片具有等于display_composition_layer_id[i]的nuh_layer_id时,该图片与display_composition_layer_id[i]相关联。在一些实施例中,当访问单元没有具有等于display_composition_layer_id[i]的nuh_layer_id的图片时,在图片位于等于display_composition_layer_id[i]的nuh_layer_id的备选输出层中时,该图片与display_composition_idc[i]相关联。在HEVC和/或其扩展中,当alt_output_layer_flag等于1并且访问单元没有具有等于display_composition_layer_id[i]的nuh_layer_id的图片时,与display_composition_idc[i]相关联的图片被选择为从列表nonOutputLayerPictures被输出。当j在1至MaxLayersMinus1的范围中(包含1和MaxLayersMinus1)时,display_composition_layer_id[i]的值可以被要求在layer_id_in_nuh[j]值之中,并且应该为在活动VPS中规定的至少一个输出层集合的输出层。
display_composition_idc[display_composition_layer_id[i]]规定了如在下表中规定的相关联图片的预期显示行为。当不存在时,display_composition_idc[display_composition_layer_id[i]]的值可以被推断等于0。
需要理解,上面描述的SEI消息仅是非限制性示例实施例。SEI消息的其他类似实施例可以例如通过忽略所提出的SEI消息的一些语法元素和/或语法元素值或者添加其他语法元素和/或语法元素值而被实现。
根据一种实施例的解码器或播放器可以包括输出图片覆叠过程或类似物,其可以将来自表示相同输出时间或相同输出顺序的不同层的两个或更多图片作为输入。所述两个或更多图片可以例如位于相同访问单元中的不同可缩放性层上,并且两个可缩放性层可以是输出层集合中的输出层。
在一些实施例中,z-顺序或覆叠顺序可以由编码器或另一实体在比特流中指示。在一些实施例中,z-顺序或覆叠顺序可以被推断为例如上升的层标识符顺序。
在输出图片覆叠过程中,缩放的参考层偏移和/或采样网格偏移和/或类似物被应用以将所述可缩放性层的所述两个或更多图片定位在相同坐标系上。缩放的参考层偏移(它们可以由例如编码器在例如SPS和/或VPS中指示)可以指示当前层的当前图片与重采样的参考层图片之间的上、左、下和右偏移值,其中参考层能够例如是按z-顺序位于当前层之前的层。水平和垂直缩放因子可以基于缩放的参考层偏移或类似物被计数。如果水平缩放因子和垂直缩放因子之一或两者不等于1,则参考层图片可以被重采样。例如,可以使用早前描述的上采样过程。
输出图片覆叠过程的输出图片可以以如下方式通过将两个或更多图片的可能重采样的样本阵列按z-顺序定位在彼此之上而被形成,该方式是按z-顺序稍后的样本阵列覆盖或替换按z-顺序较早的样本阵列的已搭配位置中的样本值。例如,表示基础层的感兴趣区域(ROI)的增强层图片将在输出覆叠过程中替换基础层的该ROI。
除了覆叠所述两个或更多图片以外,输出图片覆叠过程可以包括对齐所述两个或更多图片的解码表示。例如,如果一个图片由YUV 4:2:0色度格式表示并且按z-顺序较后的另一图片由YUV 4:4:4色度格式表示,则作为该过程的一部分,第一图片可以被上采样至YUV 4:4:4。相似地,如果一个图片由第一色域或格式(诸如ITU-R BT.709)表示并且按z-顺序较后的另一图片由第二色域或格式(诸如ITU-R BT.2020)表示,则作为该过程的一部分,第一图片可以被转换为第二色域或格式。
另外,输出图片覆叠过程可以包括从颜色表示格式到另一颜色表示格式(或等同地,从一个初级颜色集合到另一初级颜色集合)的一个或多个转换。目标颜色表示格式可以例如基于使用中的显示器被选择。例如,输出图片覆叠过程可以包括从YUV到RGB的转换。
最终,当所有的所述两个或更多图片如上面所描述的被覆叠和被处理时,所产生的图片可以形成将被显示的图片。
需要理解,输出图片覆叠过程可以另外包含上面所描述的那些步骤以外的某些其他步骤,并且可以缺少来自上面所描述的那些步骤中的一些步骤。备选地或另外地,输出图片覆叠过程的所描述步骤可以按除了上面所描述的顺序以外的另一顺序被执行。
在另一示例实施例中,根据实施例的解码器或播放器可以响应于上面所提出的SEI消息来操作如下。当SEI消息留存时,下面排序的步骤按解码和输出的图片的nuh_layer_id的升序被应用于访问单元的每个解码和输出的图片,以构成将被显示的一个或多个图片。对于下面的示例过程,当前图片被定义为这些步骤所应用于的访问单元的解码和输出的图片。将被显示的每个图片与称为compositionLayer[layerId]的nuh_layer_id值列表相关联,其中layerId是用于构成将被显示的图片的解码和输出的图片的最小nuh_layer_id。
在当前图片与具有等于0的display_composition_idc[display_composition_layer_id[i]]相关联时,可以在比特流内或通过其他手段提供的任何备选指示被用于推断display_composition_idc[display_composition_layer_id[i]]针对当前图片等于1或2。变量currLayerId被设置为等于当前图片的nuh_layer_id值。如果当前图片具有等于0的nuh_layer_id或者与等于2的display_composition_idc[display_composition_layer_id[i]]相关联,则compositionLayers[currLayerId]被设置为等于currLayerId并且与compositionLayers[currLayerId]相关联的将被显示的图片由当前图片形成。另一方面,如果当前图片不具有等于0的nuh_layer_id并且不与等于2的display_composition_idc[display_composition_layer_id[i]]相关联,则以下可以应用。
如果缩放的参考层偏移参数应用于当前图片与相同访问单元中具有小于当前图片的nuh_layer_id的nuh_layer_id的任何解码和输出的图片之间,则refLayerId被设置为等于相同访问单元中的解码和输出的图片的nuh_layer_id值之中的最大nuh_layer_id值,其中相对于该最大nuh_layer_id值为当前图片提供缩放的参考层偏移参数。否则,refLayerId被设置为等于相同访问单元的解码和输出的图片的相比currLayerId较小的nuh_layer_id值之中的最大nuh_layer_id值。baseLayerId的值被设置为如下值,对于该值,列表compositionLayers[baseLayerId]包括refLayerId。列表compositionLayers[baseLayerId]被附加有currLayerId。
在需要时,当前图片或与compositionLayers[baseLayerId]相关联的将被显示的图片或它们的两者可以被重采样,以使得当前图片和将被显示的图片的样本大小相匹配并且当前图片和将被显示的图片的采样网格位置被对齐。与当前图片搭配的与compositionLayers[baseLayerId]相关联的将被显示的图片的样本可以被设置为等于当前图片的搭配样本。
存在对上述实施方式描述的若干备选方式,其中的一些在下面被简要讨论。
替代传输SEI消息,信息可以从存在于比特流中的其他信息推导。例如,如果增强层具有较高分辨率但仅对应于基础层图片中的小区域,则可以推断EL图片不应该覆叠到BL图片。
当前EL图片覆叠到BL图片时,用于从BL样本构成覆叠图片的上采样滤波器可能不同于在EL图片的解码过程中使用的上采样滤波器。备选地,用于构成覆叠图片的上采样滤波器能够由编码器在比特流中用信号通知和/或由解码器从比特流解码。
应当理解,即使一些实施例参考ROI EL被描述,但是这些实施例能够相似地被应用于任何类型的EL(不必然是ROI)。例如,这些实施例可以被应用以指示场景转变的预期显示行为。
在一些实施例中,display_composition_idc的语义(或用于指示优选显示操作的任何其他类似指示)可以被附加以指示辅助图片是否应当被应用在显示过程中或者播放器(或类似物)能够选取是否在显示过程中应用辅助图片。例如,语义可以被规定如下:
在一些实施例中,语法可以包括哪些辅助图片层和/或辅助图片类型被要求在生成将被显示的图片中使用的(多个)指示。例如,可以使用以下语法:
添加的语法元素的语义可以被规定如下。num_aux_types[i]规定了在为具有等于display_composition_layer_id[i]的nuh_layer_id的初级图片生成将被显示的图片时应当被处理的辅助图片类型的数目。req_aux_id[i]规定了与初级图片相关联并且为了从初级图片生成将被显示的图片而要求被处理的辅助图片的AuxId值。
在一些实施例中,编码器或另一实体可以在比特流中,例如在显示构成层SEI消息中,指示当输出层的图片不存在于访问单元中时预期的显示行为是什么。在一些实施例中,编码器或另一实体可以在比特流中,例如在显示构成层SEI消息中,指示当输出层或输出层的任何备选输出层的图片不存在于访问单元中时预期显示行为是什么。相似地,在一些实施例中,解码器(或另一实体,诸如播放器)可以从比特流,例如从显示构成层SEI消息,解码当输出层的图片不存在于访问单元中时预期显示行为是什么。在一些实施例中,解码器(或另一实体,诸如播放器)可以从比特流,例如从显示构成层SEI消息,解码当输出层或输出层的任何备选输出层的图片不存在于访问单元中时预期显示行为是什么。
图16图示了编码器处的示例方法。编码器或另一实体可以将图片编码160成比特流,其中比特流包括与访问单元相关联的至少两个可缩放性层。编码器可以将指示第一输出层和第二输出层的至少第一指示编码162成比特流。编码器还可以将指示第一输出层的至少一个备选输出层的第二指示编码164成比特流。在一些实施例中,步骤164被省略。编码器可以进一步将指示第一输出层和第二输出层的预期显示行为的第三指示编码166成比特流。当两个或更多层为输出层集合中的输出层时,第三指示一般可以指示预期显示行为。
图17图示了解码器处的示例方法。解码器或另一实体可以从比特流解码170图片,其中比特流包括与访问单元相关联的至少两个可缩放性层。解码器可以从比特流解码172至少第一指示,其指示第一输出层和第二输出层。解码器还可以从比特流解码174第二指示,其指示第一输出层的至少一个备选输出层。如果第一输出层的图片不存在,则解码器随后可以替代地使用至少一个备选输出层的图片。在一些实施例中,步骤174被省略。解码器可以进一步从比特流解码176第三指示,其指示第一输出层和第二输出层的预期显示行为。当两个或更多层为输出层集合中的输出层时,第三指示一般可以指示预期显示行为。解码器可以依赖于由第三指示所揭示的指导来显示178第一输出层的第一图片和第二输出层的第二图片这两者、或者组合的图片。
继续之前段落中提出的示例实施例,预期的显示行为可以是(但不限于)下列中的一项或多项:
当输出层的图片不存在于访问单元中时,在从访问单元生成将被显示的图片的过程中按输出层的输出顺序的之前图片的角色在比特流中被指示(或从比特流被解码)或者被推断。该角色可以从下列中的一项或多项中选出:之前的图片应当使用、可以使用或可以不使用、或者不应当使用在生成将被显示的图片的过程中。之前的图片可以进一步被约束例如使得仅是具有等于0的TemporalId的子层参考图片可以被考虑为是之前的图片。
当输出层的图片不存在于具有某一图片顺序计数(POC)的访问单元中时,在从访问单元生成将被显示的图片的过程中的输出层的在相对于访问单元的POC的POC方面的最接近图片的角色在比特流中被指示(或从比特流被解码)或者被推断。如果存在等同接近的若干图片,例如按解码顺序较早的图片可以被选择。最接近图片的角色可以从下列中的一项或多项中选出:最接近图片应当使用、可以使用或可以不使用、或者不应当使用在生成将被显示的图片的过程中。最接近图片可以进一步被约束例如使得仅是具有等于0的TemporalId的子层参考图片可以被考虑为是之前的图片。
当输出层的图片不存在于访问单元中时,替代地将被使用的图片可以例如使用其POC值、POC LSB值、或长期参考图片索引而在比特流中被指示或从比特流被解码。例如,背景图片可以以这种方式被识别。在这个实施例和一个或多个图片和/或访问单元通过一个值被识别的其他实施例中,可以使用下列语法元素或变量中的一个或多个、或者它们的组合:
-图片顺序计数值;
-图片顺序计数值的一部分;
-帧编号值;
-从帧编号值推导的变量;
-时间参考值;
-解码时间戳;
-构成时间戳;
-输出时间戳;
-展示时间戳;
-长期参考图片的索引。
当输出层的图片不存在于访问单元中并且以立体或多视图比特流表示视图时,以及当深度视图或深度辅助图片存在时,用于生成将被显示的图片的过程的相同访问单元中的其他图片的角色在比特流中被指示(或从比特流被解码)或者被推断。该角色可以从下列中的一项或多项中选出:这些其他图片应当使用、可以使用或可以不使用、或者不应当使用在生成将被显示的图片的过程中。生成将被显示的图片的过程可以使用基于深度图像的渲染方法,其中表示另一视点的一个或多个纹理和深度图片可以在生成输出层处的图片(表示某一视点)中使用。在另一示例中,深度图片可以存在或被合成用于输出层的视点,并且向后卷绕(也称为向后视图合成)用于生成输出层处的图片。
在一些实施例中,当输出层或任何其备选输出层的图片不存在于访问单元中时,在从访问单元生成将被显示的图片的过程中按输出层或任何其备选输出层的输出顺序的之前图片的角色在比特流中被指示(或从比特流被解码)或者被推断。该角色可以从下列中的一项或多项中选出:之前的图片应当使用、可以使用或可以不使用、或者不应当使用在生成将被显示的图片的过程中。之前的图片可以进一步被约束例如使得仅是具有等于0的TemporalId的子层参考图片可以被考虑为是之前的图片。
在一些实施例中,当输出层或任何其备选输出层的图片不存在于具有某一图片顺序计数(POC)的访问单元中时,在从访问单元生成将被显示的图片的过程中的输出层或任何其备选输出层的依据相对于访问单元的POC的POC方面的最接近图片的角色在比特流中被指示(或从比特流被解码)或者被推断。如果存在等同接近的若干图片,例如按解码顺序较早的图片可以被选择。最接近图片的角色可以从下列中的一项或多项中选出:最接近图片应当使用、可以使用或可以不使用、或者不应当使用在生成将被显示的图片的过程中。最接近图片可以进一步被约束例如使得仅是具有等于0的TemporalId的子层参考图片可以被考虑为是之前的图片。
在一些实施例中,当输出层或任何其备选输出层的图片不存在于访问单元中时,替代地将被使用的图片可以例如使用其POC值、POC LSB值、或长期参考图片索引而在比特流中被指示或从比特流被解码。例如,背景图片可以以这种方式被识别。
在一些实施例中,当输出层或任何其备选输出层的图片不存在于访问单元中并且以立体或多视图比特流表示视图时,以及当深度视图或深度辅助图片存在时,用于生成将被显示的图片的过程的相同访问单元中的其他图片的角色在比特流中被指示(或从比特流被解码)或者被推断。该角色可以从下列中的一项或多项中选出:这些其他图片应当使用、可以使用或可以不使用、或者不应当使用在生成将被显示的图片的过程中。生成将被显示的图片的过程可以使用基于深度图像的渲染方法,其中表示另一视点的一个或多个纹理和深度图片可以在生成输出层处的图片(表示某一视点)中使用。在另一示例中,深度图片可以存在或被合成用于输出层的视点,并且向后卷绕(也称为向后视图合成)用于生成输出层处的图片。
图15b图示了在具有两层的访问单元中提供的图片流的一部分的示例,但是在一个访问单元204中较高层图片丢失。
下面提出了指示当输出层的图片(或者在一些实施例中是输出层或任何其备选输出层的图片)不存在于访问单元中时的预期显示行为的示例实施例。语法可以与其他实施例相同或类似,但是temporal_composition_idc语法元素被添加如下:
temporal_compostion_idc可以被规定如下。设prevAu为按输出顺序的之前访问单元,包括与display_composition_layer_id[i]相关联的图片。设prevPic为与display_composition_layer_id[i]相关联的preAu内的图片。temporal_composition_idc[display_composition_layer_id[i]]等于0规定了当与display_composition_layer_id[i]相关联的图片不存在于访问单元中时,prevPic可以在或可以不在覆叠图片以生成将被显示的图片时被使用。temporal_composition_idc[display_composition_layer_id[i]]等于1规定了当与display_composition_layer_id[i]相关联的图片不存在于访问单元中时,prevPic应当在覆叠图片以生成将被显示的图片时被使用。temporal_composition_idc[display_composition_layer_id[i]]等于2规定了当与display_composition_layer_id[i]相关联的图片不存在于访问单元中时,prePic不应当在覆叠图片以生成将被显示的图片时被使用。
在一些实施例中,(多个)上面描述的SEI消息可以与某一层或某些层相关联。SEI消息可以被包括在如下的SEI NAL单元中,在该SEI NAL单元中,层标识符(例如,H.265/HEVC及其扩展中的nuh_layer_id)将等于display_composition_layer_id的最低值。结果,当基于层标识符的子比特流被执行时,当它涉及的所有层已经被提取出时SEI消息被移除。
在一些实施例中,(多个)上面描述的SEI消息可以特定于某一输出层集合。SEI消息可以被包括在如下的嵌套SEI消息中,该嵌套SEI消息被指示仅涉及该输出层集合。
在一些实施例中,(多个)上面描述的SEI消息的语法可以被附加以识别该输出层集合或提供显示构成提示所应用到的输出层集合。
在H.264/AVC中,编码的视频序列被定义为从IDR访问单元(包含该IDR访问单元)至下一IDR访问单元(不包含该下一IDR访问单元)、或至比特流的结尾(无论哪个较早出现)的按解码顺序的连续访问单元的序列。
在HEVC标准的一个草案中,编码的视频序列被定义为按解码顺序由作为比特流中第一访问单元的CRA访问单元、IDR访问单元或BLA访问单元、之后是零个或多个非IDR和非BLA访问单元构成的访问单元序列,其中该零个或多个非IDR和非BLA访问单元包括所有后续访问单元直到但不包括任何后续IDR或BLA访问单元。
在HEVC中,编码的视频序列(CVS)可以例如被定义为按解码顺序由具有等于1的NoRas1OutputFlag的IRAP访问单元、之后为不是具有等于1的NoRas1OutputFlag的IRAP访问单元的零个或多个访问单元构成的访问单元序列,其中该零个或多个访问单元包括所有后续访问单元直到但不包括为具有等于1的NoRas1OutputFlag的IRAP访问单元的任何后续访问单元。IRAP访问单元可以为IDR访问单元、BLA访问单元、或CRA访问单元。对于每个IDR访问单元、每个BLA访问单元,NoRas1OutputFlag的值等于1,并且按解码顺序为比特流中第一访问单元的每个CRA访问单元是按解码顺序跟随在序列NAL单元结尾之后的第一访问单元、或者具有等于1的HandleCraAsBlaFlag。NoRas1OutputFlag等于1具有如下影响:与NoRas1OutputFlag针对其而被设置的IRAP图片相关联的RASL图片不被解码器输出。HandleCraAsBlaFlag可以例如被播放器设置为1,该播放器在比特流中寻找新位置或调谐至广播并且开始解码并然后从CRA图片开始解码。
HEVC的多视图和可缩放扩展中的编码的视频序列(CVS)可以被规定如下:编码的视频序列是按解码顺序由包含具有等于0的nuh_layer_id和等于1的NoRaslOutputFlag的IRAP图片的IRAP访问单元、之后为不是包含具有等于0的nuh_layer_id和等于1的NoRas1OutputFlag的IRAP图片的IRAP访问单元的零个或多个访问单元构成的访问单元序列,该零个或多个访问单元包括所有后续访问单元直到但不包括为包含具有等于0的nuh_layer_id和等于1的NoRas1OutputFlag的RAP图片的IRAP访问单元的任何后续访问单元。
图片组(GOP)及其特性可以被定义如下。GOP能够被解码而不管任何之前的图片是否被解码。开放式GOP是这样的图片组,在该图片组中,当解码从开放式GOP的初始帧内图片开始时,按输出顺序在初始帧内图片之前的图片可能不是正确地可解码的。换句话说,开放式GOP的图片可以(在帧间预测中)指代属于之前GOP的图片。H.264/AVC编码器能够从H.264/AVC比特流中的恢复点SEI消息识别启动开放式GOP的帧内图片。HEVC解码器能够识别启动开放式GOP的帧内图片,因为特定NAL单元类型、CRA NAL单元类型可以用于其编码条带。封闭式GOP是这样的图片组,在该图片组中,当解码从封闭式GOP的初始帧内图片开始时所有图片能够正确地被解码。换句话说,封闭式GOP中没有图片指代之前GOP中的任何图片。在H.264/AVC和HEVC中,封闭式GOP从IDR访问单元开始。在HEVC中,封闭式GOP还可以从BLA_W_DLP或BLA_N_LP图片开始。作为结果,封闭式GOP结构与开放式GOP相比具有更大的抗误差潜能,然而以压缩效率上的可能降低为代价。归因于选择参考图片的较大灵活性,开放式GOP编码结构潜在地在压缩上更有效率。
许多混合视频编解码(包括H.264/AVC和HEVC)在两个阶段中编码视频信息。在第一阶段中,某一图片区域或“块”中的像素或样本值被预测。这些像素或样本值能够例如通过运动补偿机制被预测,其中运动补偿机制涉及找出和指示与正被编码的块紧密对应的之前编码的视频帧之一中的区域。另外,像素或样本值能够通过空间机制被预测,其中这些空间机制涉及找出和指示空间区域关系。
使用来自之前编码的图像的图像信息的预测方法也能够被称为帧间预测方法,它们也可以被称为时间预测和运动补偿。使用相同图像内的图像信息的预测方法也能够被称为帧内预测方法。
第二阶段是对预测的像素或样本块与原始的像素或样本块之间的误差进行编码之一。这可以通过使用规定的变换来变换像素或样本值中的差异来完成。这一变换可以是离散余弦变换(DCT)或其变型。在对差异进行变换之后,经变换的差异被量化和熵编码。
通过改变量化过程的保真度,编码器能够控制像素或样本表示的精确度(即,图片的视觉质量)与所产生的编码视频表示的大小(即,文件大小或传输比特率)之间的平衡。
解码器通过应用与编码器所使用的预测机制相类似的预测机制来重构输出视频,以便形成像素或样本块的预测表示(使用由编码器创建且存储在图像的压缩表示中的运动或空间信息)和预测误差解码(用以恢复空间域中的量化的预测误差信号的预测误差编码的逆向操作)。
如上面解释的,许多混合视频编解码(包括H.264/AVC和HEVC)在两个阶段中编码视频信息,其中第一阶段可以被称为预测编码并且可以包括下列中的一项或多项。在所谓的样本预测中,某一图片区域或“块”中的像素或样本值被预测。这些像素或样本值能够例如使用下列方式中的一个或多个被预测:
-运动补偿机制(它们也可以被称为时间预测或运动补偿的时间预测),它们涉及找出和指示与正被编码的块紧密对应的之前编码的视频帧之一中的区域;
-视图间预测,其涉及找出和指示与正被编码的块紧密对应的之前编码的视图分量之一中的区域;
-视图合成预测,其涉及对预测块或图像区域进行合成,其中预测块基于重构/解码的测距(ranging)信息被推导;
-使用重构/解码的样本的层间预测,诸如SVC的所谓的IntraBL模式;以及
-帧内预测,其中像素或样本值能够通过空间机制被预测,这些空间机制涉及找出和指示空间区域关系。
在所谓的语法预测(其也可被称为参数预测)中,语法元素和/或语法元素值和/或从语法元素推导的变量从较早被编码(被解码的)语法元素和/或较早推导的变量被预测。下面提供了语法预测的非限制性示例。
-在运动矢量预测中,例如用于帧间和/或视图间预测的运动矢量可以关于特定于块的预测的运动矢量而不同地被编码。预测的运动矢量可以以预定义的方式(例如通过计算相邻块的编码或解码的运动矢量的中值)而被创建。创建运动矢量预测的另一方式(其也可被称为高级运动矢量预测(AMVP))是从时间参考图片中的相邻块和/或共址块来生成候选预测的列表,并且用信号通知作为运动矢量预测器的所选取的候选。除了预测运动矢量值以外,之前编码/解码的图片的参考索引也能够被预测。参考索引可以从时间参考图片中的相邻块和/或共址块被预测。运动矢量的差分编码可以跨条带边界被禁用。
-块分割(例如,从CTU至CU并且下至PU)可以被预测。
-在滤波器参数预测中,滤波参数(例如,用于样本自适应偏移)可以被预测。
将不同预测类型分类的另一方式是考虑预测跨哪些域或可缩放性类型而交叉(cross)。这种分类可能导致下列预测类型(它们有时也可以被称为预测方向)中的一个或多个:
-例如来自通常是相同可缩放性层、视图和分量类型(纹理或深度)的较早图片的样本值或运动矢量的时间预测;
-视图间预测,其也可以被称为交叉视图预测,指代发生在通常是相同时刻或访问单元和相同分量类型的视图分量之间的预测;
-层间预测,指代发生在通常是相同时刻、相同分量类型和相同视图的层之间的预测;以及
-分量间预测,其可以被定义为包括在解码过程中使用的语法元素值、样本值、变量值的预测,或者从一个类型的分量图片到另一类型的分量图片的任何相似预测。例如,分量间预测可以包括从深度视图分量的纹理视图分量的预测,或反之亦然。
使用来自之前编码图像的图像信息的预测方法也能够被称为帧间预测方法。帧间预测有时可以被考虑为仅包括运动补偿的时间预测,而它有时可以被考虑为包括使用样本的重构/解码块作为预测源的所有类型的预测,因此包括例如常规的视图间预测。帧间预测可以被考虑为仅包括样本预测,但是它可以备选地被考虑为包括样本和语法预测两者。
作为语法和样本预测的结果,预测的样本的像素块可以被获得。
在应用像素或样本预测和误差解码过程之后,解码器组合预测信号和预测误差信号(像素或样本值)以形成输出视频帧。
解码器(和编码器)还可以应用附加的滤波过程,以便在传递输出视频用于显示和/或存储作为用于视频序列中的即将到来的图片的预测参考之前提高输出视频的质量。
滤波可以用于减少来自参考图像的各种伪影(artifact),诸如方块化、环状化等。在后面是添加逆变换残差的运动补偿之后,重构的图片被获得。这个图片可能具有各种伪影,诸如方块化、环状化等。为了消除伪影,各种后处理操作可以被应用。如果后处理的图片被用作运动补偿回路中的参考,则后处理操作/滤波器通常被称为回路滤波器。通过采用回路滤波器,参考图片的质量提高。作为结果,能够实现更好的编码效率。滤波可以包括例如去方块滤波器、样本自适应偏移(SAO)滤波器、和/或自适应回路滤波器(ALF)。
去方块滤波器可以被用作回路滤波器之一。去方块滤波器在H.264/AVC标准和HEVC标准这两者中是可用的。去方块滤波器的目标是移除发生在方块边界上的方块化伪影。这可以通过沿着方块边界进行滤波来实现。
在许多视频编解码(包括H.264/AVC和HEVC)中,运动信息由与每个经运动补偿的图像块相关联的运动矢量来指示。这些运动矢量中的每个运动矢量表示将(在编码器中)被编码或将(在解码器处)被解码的图片中的图像块和之前编码或解码的图像(或图片)之一中的预测源块的位移。H.264/AVC和HEVC如许多其他视频压缩标准那样将图片划分成矩形网,对于每个矩形,参考图片之一中的类似块被指示用于帧间预测。预测块的位置被编码为运动矢量,该运动矢量指示预测块相对于正被编码的块的位置。
帧间预测过程可以例如使用下列因子中的一个或多个而被表征。
运动矢量表示的精确度
例如,运动矢量可以具有四分之一像素精确度、半像素精确度或全像素精确度,并且可以使用有限冲击响应(FIR)滤波器来获得分数像素位置中的样本值。
用于帧间预测的块分割
许多编码标准(包括H.264/AVC和HEVC)允许选择为了编码器中的运动补偿预测应用的运动矢量所针对的块的大小和形状,并且在比特流中指示所选择的大小和形状以使得解码器能够再现编码器中进行的运动补偿预测。
用于帧间预测的参考图片数目
帧间预测的源是之前解码的图片。许多编码标准(包括H.264/AVC和HEVC)使得能够存储用于帧间预测的多个参考图片并且基于块来选择所使用的参考图片。例如,参考图片可以在H.264/AVC中基于宏块或宏块分割被选择并且在HEVC中基于PU或CU被选择。许多编码方案(诸如H.264/AVC和HEVC)在比特流中包括语法结构,这些语法结构使得解码器能够创建一个或多个参考图片列表。对参考图片列表的参考图片索引可以用来指示多个参考图片中的哪个参考图片被用于针对特定块的帧间预测。参考图片索引可以由编码器以一些帧间编码模式编码到比特流中,或者它可以(由编码器和解码器)以一些其他帧间编码模式例如使用相邻块来推导。
许多编码标准允许使用多个参考图片用于帧间预测。许多编码标准(诸如H.264/AVC和HEVC)在比特流中包括语法结构,这些语法结构使得解码器能够在多于一个参考图片可以被使用时创建将在帧间预测中使用的一个或多个参考图片列表。对参考图片列表的参考图片索引可以用来指示多个参考图片中的哪个参考图片被用于针对特定块的帧间预测。识别参考图片的参考图片索引或任何其他类似信息因此可以与运动矢量的一部分相关联或者被考虑为是运动矢量的一部分。参考图片索引可以由编码器利用一些帧间编码模式编码到比特流中,或者它可以(由编码器和解码器)以一些其他帧间编码模式例如使用相邻块来推导。在H.264/AVC和HEVC的许多编码模式中,用于帧间预测的参考图片利用对参考图片列表的索引来指示。该索引可以利用可变长度编码而被编码,这可以引起较小的索引以具有用于对应语法元素的较短值。
多假设运动补偿预测
H.264/AVC和HEVC使得能够使用P条带(在本文中被称为单向预测性条带)中的单个预测块或用于双向预测性条带(其也被称为B条带)的两个运动补偿预测块的线性组合。B条带中的个体块可以被双向预测、单向预测、或帧内预测,并且P条带中的个体块可以被单向预测或帧内预测。用于双向预测性图片的参考图片可以不限于是按输出顺序的后续图片和之前图片,而是可以使用任何参考图片。在许多编码标准(诸如H.264/AVC和HEVC)中,被称为参考图片列表0的一个参考图片列表被构造用于P条带,并且两个参考图片列表(列表0和列表1)被构造用于B条带。对于B条带,当前向方向上的预测可以指代从参考图片列表0中的参考图片的预测时,并且后向方向上的预测可以指代从参考图片列表1中的参考图片的预测,即使用于预测的参考图片可以关于彼此或关于当前图片具有任何解码或输出顺序。
加权预测
许多编码标准使用预测权重1用于帧间(P)图片的预测块,并且0.5用于B图片的每个预测块(导致求平均)。H.264/AVC允许用于P条带和B条带两者的加权预测。在隐式加权预测中,权重与图片顺序计数成比例,而在显式加权预测中,预测权重显式地被指示。用于显式加权预测的权重可以例如在下列语法结构中的一个或多个中被指示:条带头部、图片头部、图片参数集合、适配参数集合、或任何类似的语法结构。
在许多视频编解码中,运动补偿之后的预测残差首先利用变换核(如DCT)被变换然后被编码。其原因是残差之间仍然经常存在某种相关性,并且在许多情况中变换能够帮助降低这种相关性且提供更高效的编码。
在草案HEVC中,每个PU具有与其相关联的预测信息(例如,用于帧间预测的PU的运动矢量信息和用于帧内预测的PU的帧内预测方向性信息),该预测信息定义了什么种类的预测将被应用于该PU内的像素。类似地,每个TU与描述用于TU内样本的预测误差解码过程的信息(包括例如DCT系数信息)相关联。可以在CU级别处用信号通知预测误差编码是否被应用于每个CU。在没有与CU相关联的预测误差残差的情况中,能够考虑不存在用于CU的TU。
在一些编码格式和编解码中,在所谓的短期参考图片与长期参考图片之间作出区分。这一区分可能影响一些解码过程,诸如时间直接模式或隐式加权预测中的运动矢量缩放。如果用于时间直接模式的两个参考图片都是短期参考图片,则预测中使用的运动矢量可以根据当前图片与每个参考图片之间的图片顺序计数(POC)差异而被缩放。然而,如果用于时间直接模式的至少一个参考图片是长期参考图片,则可以使用运动矢量的默认缩放,例如可以使用将运动缩放至一半。类似地,如果短期参考图片被用于隐式加权预测,则预测权重可以根据当前图片的POC与参考图片的POC之间的POC差异而被缩放。然而,如果长期参考图片被用于隐式加权预测,则可以使用默认的预测权重,诸如在隐式加权预测中用于双向预测块的0.5。
一些视频编码格式(诸如H.264/AVC)包括frame_num语法元素,其用于与多个参考图片相关的各种解码过程。在H.264/AVC中,用于IDR图片的frame_num值为0。用于非IDR图片的frame_num值等于按解码顺序的之前参考图片的frame_num递增1(在模算术中,即frame_num值在最大frame_num值之后回卷至0)。
H.264/AVC和HEVC包括图片顺序计数(POC)的概念。POC的值针对每个图片被推导并且通过按输出顺序增加图片位置而为非减的。POC因此指示图片的输出顺序。POC可以在解码过程中被使用例如用于以双向预测性条带的时间直接模式中的运动矢量的隐式缩放、用于加权预测中的隐式推导的权重、以及用于参考图片列表初始化。此外,POC可以在输出顺序一致性的验证中被使用。在H.264/AVC中,POC相对于之前的IDR图片或包含将所有图片标记为“不用于参考”的存储器管理控制操作的图片而被规定。
H.264/AVC规定了用于解码参考图片标记的过程以便控制解码器中的存储器消耗。被用于帧间预测的参考图片的最大数目(被称为M)在序列参数集合中被确定。当参考图片被解码时,它被标记为“被用于参考”。如果参考图片的解码导致多于M个图片被标记为“被用于参考”,则至少一个图片被标记为“不用于参考”。存在用于解码参考图片标记的两种类型的操作:自适应存储器控制和滑动窗口。用于解码参考图片标记的操作模式基于图片而被选择。自适应存储器控制使得能够显式地用信号通知哪些图片被标记为“不用于参考”,并且还可以将长期索引指配给短期参考图片。自适应存储器控制可以要求存储器管理控制操作(MMCO)参数存在于比特流中。MMCO参数可以被包括在解码参考图片标记语法结构中。如果滑动窗口操作模式在使用中并且存在M个被标记为“用于参考”的图片,则在被标记为“被用于参考”的那些短期参考图片之中为第一解码图片的短期参考图片被标记为“不用于参考”。换句话说,滑动窗口操作模式导致了短期参考图片之中的先入先出缓冲操作。
H.264/AVC中的存储器管理控制操作之一导致除了当前图片以外的所有参考图片被标记为“不用于参考”。瞬时解码刷新(IDR)图片仅包含帧内解码条带并且导致参考图片的类似“复位”。
在草案HEVC标准中,参考图片标记语法结构和相关的解码过程未被使用,但是替代地,参考图片集合(RPS)语法结构和解码过程替代地被用于类似的目的。针对一个图片有效或活动的参考图片集合包括被用作该图片的参考的所有参考图片和针对按解码顺序的任何后续图片保持被标记为“被用于参考”的所有参考图片。存在参考图片集合的六个子集,它们被称为RefPicSetStCuur0(其也可以或备选地被称为RefPicSetStCurrBefore)、RefPicSetStCurr1(其也可以或备选地被称为RefPicSetStCurrAfter)、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll。在一些HEVC草案规范中,RefPicSetStFoll0和RefPicSetStFoll1被认为是一个子集,其可以被称为RefPicSetStFoll。六个子集的符号如下。“Curr”指代被包括在当前图片的参考图片列表中并且因此可以用作当前图片的帧间预测参考的参考图片。“Foll”指代如下的参考图片,它们未包括在当前图片的参考图片列表中但可以按解码顺序在后续图片中用作参考图片。“St”指代短期参考图片,它们一般可以通过它们的POC值的某个数目的最低有效位而被识别。“Lt”指代长期参考图片,它们特别地被识别并且相比通过所提及的某个数目的最低有效位能够表示的而言一般具有较大的相对于当前图片的POC值差异。“0”指代具有相比当前图片的POC值的较小POC值的那些参考图片。“1”指代具有相比当前图片的POC值的较大POC值的那些参考图片。RefPicSetStCuur0、RefPicSetStCurr1、RefPicSetStFoll0和RefPicSetStFoll1被统称为参考图片集合的短期子集。RefPicSetLtCurr和RefPicSetLtFoll被统称为参考图片集合的长期子集。
在草案HEVC标准中,参考图片集合可以在序列参数集合中被规定,并且通过对参考图片集合的索引而在条带头部中投入使用。参考图片集合也可以在条带头部中被规定。参考图片集合的长期子集一般仅在条带头部中被规定,而相同参考图片集合的短期子集可以在图片参数集合或条带头部中被规定。参考图片集合可以独立地被编码或者可以从另一参考图片集合被预测(称为RPS间预测)。当参考图片集合独立地被编码时,语法结构包括在不同类型的参考图片(具有相比当前图片的较低POC值的短期参考图片、具有相比当前图片的较高POC值的短期参考图片、以及长期参考图片)上进行迭代的多达三个循环。每个循环入口规定了将被标记为“被用于参考”的图片。一般而言,图片被规定具有差分的POC值。RPS间预测利用了如下事实:当前图片的参考图片集合能够从之前解码图片的参考图片集合被预测。这是因为当前图片的所有参考图片为之前图片的参考图片或者之前解码的图片它自身。仅有必要指示这些图片中的哪些应当是参考图片并且被用作当前图片的预测。在两种类型的参考图片集合编码中,标志(used_by_curr_pic_X_flag)附加地被发送用于每个参考图片,以指示参考图片被用于当前图片的参考(被包括在*Curr列表中)与否(被包括在*Foll列表中)。被包括在由当前条带使用的参考图片集合中的图片被标记为“被用于参考”,并且不在由当前条带使用的参考图片集合中的图片被标记为“不用于参考”。如果当前图片为IDR图片,则RefPicSetStCuur0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll均被设置为空。
可以在编码器和/或解码器中使用解码图片缓冲区(DPB)。缓冲解码图片有两个原因:用于帧间预测中的参考和用于将解码的图片重排序为输出顺序。当H.264/AVC和HEVC为参考图片标记和输出重排序这两者提供了大量的灵活性时,用于参考图片缓冲和输出图片缓冲的分离缓冲区可能浪费存储器资源。因此,DPB可以包括用于参考图片和输出重排序的统一的解码图片缓冲过程。解码图片可以在它不再被用作参考并且不需要用于输出时从DPB被移除。
在H.264/AVC和HEVC的许多编码模式中,用于帧间预测的参考图片利用对参考图片列表的索引来指示。该索引可以利用可变长度编码被编码,这通常导致较小索引以具有用于对应语法元素的较短值。在H.264/AVC和HEVC中,针对每个双向预测(B)条带生成两个参考图片列表(参考图片列表0和参考图片列表1),并且针对每个帧间编码的(P)条带形成一个参考图片列表(参考图片列表0)。
参考图片列表(诸如,参考图片列表0和参考图片列表1)可以按两个步骤被构造:首先,初始参考图片列表被生成。初始参考图片列表可以例如基于frame_num、POC、temporal_id、或与预测层级结构(诸如GOP结构)有关的信息、或它们的任何组合而被生成。第二,可以通过参考图片列表重排序(RPLR)命令来重排序初始参考图片列表,其中RPLR命令也被称为参考图片列表修改语法结构,其可以被包含在条带头部中。RPLR命令指示被排序到相应参考图片列表开头的图片。这个第二步骤也可以被称为参考图片列表修改过程,并且RPLR命令可以被包括在参考图片列表修改语法结构中。如果参考图片集合被使用,则参考图片列表0可以被初始化以首先包含RefPicSetStCurr0,之后是RefPicSetStCurr1,之后是RefPicSetLtCurr。参考图片列表1可以被初始化以首先包含RefPicSetStCurr1,之后是RefPicSetCurr0。初始参考图片列表可以通过参考图片列表修改语法结构而被修改,其中初始参考图片列表中的图片可以通过对列表的条目索引而被识别。
高级运动矢量预测(AMVP)可以例如如下进行操作,而例如利用不同的候选位置集合和具有候选位置集合的候选地点,高级运动矢量预测的其他类似实现也是可能的。两个空间运动矢量预测器(MVP)可以被推导并且时间运动矢量预测器(TMVP)可以被推导。它们可以在图10中所示出的位置之中被选择:定位在当前预测块100(B0,B1,B2)上方的三个空间运动矢量预测器候选位置103、104、105和位于左侧的(A0,A1)的两个101、102。按每个候选位置集合(B0,B1,B2)或(A0,A1)的预定义顺序可用(例如,位于相同条带中、被帧间编码等)的第一运动矢量预测器可以被选择以表示运动矢量竞争中的预测方向(上或左)。用于时间运动矢量预测器的参考索引可以由编码器在条带头部中指示(例如,作为collocated_ref_idx语法元素)。从共址的图片获得的运动矢量可以根据时间运动矢量预测器的参考图片、共址图片和当前图片的图片顺序计数差异的比例而被缩放。此外,可以在候选之间执行冗余检查以移除相同的候选,这可能导致候选列表中包括零运动矢量。运动矢量预测器可以在比特流中被指示,例如通过指示空间运动矢量预测器的方向(上或左)或者时间运动矢量预测器候选的选择。
除了预测运动矢量值以外,之前编码/解码的图片的参考索引能够被预测。参考索引可以从时间参考图片中的相邻块和/或共址块被预测。
许多高效视频编解码(诸如草案HEVC编解码)采用附加的运动信息编码/解码机制,经常称为合并/融合模式/过程/机制,其中块/PU的所有运动信息被预测和使用而无需任何修改/校正。前述用于PU的运动信息可以包括:1)是‘仅使用参考图片列表0来单向预测PU’还是‘仅使用参考图片列表1来单向预测PU’还是‘使用两个参考图片列表0和列表1来双向预测PU’的信息;2)与参考图片列表0相对应的运动矢量值;3)参考图片列表0中的参考图片索引;4)与参考图片列表1相对应的运动矢量值;以及5)参考图片列表1中的参考图片索引。运动场可以被定义为包括编码图片的运动信息。
类似地,使用时间参考图片中的相邻块和/或共址块的运动信息来执行运动信息预测。列表(经常被称为合并列表)可以通过包括与可用的相邻块/共址块相关联的运动预测候选而被构造,并且该列表中所选择的运动预测候选的索引用信号被通知,并且所选择的候选的运动信息被拷贝至当前PU的运动信息。当合并机制被采用用于整个CU、并且用于CU的预测信号被用作重构信号(即,预测残差未被处理)时,这种类型的编码/解码CU通常被命名为跳过模式或基于合并的跳过模式。除了跳过模式以外,合并机制还可以被采用用于个体的PU(不必然是如跳过模式中的整个CU),并且在这种情况中,预测残差可以被利用以提高预测质量。这种类型的预测模式通常被命名为帧间合并模式。
用于解码参考图片标记的语法结构可以存在于视频编码***中。例如,当图片的解码已经完成时,解码参考图片标记语法结构(如果存在)可以用于自适应地将图片标记为“不用用参考”或“被用于长期参考”。如果解码参考图片标记语法结构不存在并且被标记为“被用于参考”的图片数目能够不再增加,则滑动窗参考图片标记可以被使用,其基本上将最早(按解码顺序)解码的参考图片标记为不用于参考。
图片间运动矢量预测及其与可缩放视频编码的关系
多视图编码已经被实现为多回路可缩放视频编码方案,其中视图间参考图片被添加到参考图片列表中。在MVC中,被包括在参考图片列表中的视图间参考分量和视图间仅参考分量可以被考虑为不被标记为“被用于短期参考”或“被用于长期参考”。
在HEVC时间运动矢量预测(TMVP)中,将被用于获得搭配分割的参考图片列表根据条带头部中的collocated_from_l0_flag语法元素被选取。当该标志等于1时,它规定包含搭配分割的图片从列表0得到,否则图片从列表1得到。当collocated_from_l0_flag不存在时,它被推断为等于1。条带头部中的collocated_ref_idx规定包含搭配分割的图片的参考索引。在当前条带为P条带时,collocated_ref_idx指代列表0中的图片。在当前条带为B条带时,如果collocated_from_l0为1则collocated_ref_idx指代列表0中的图片,否则它指代列表1中的图片。collocated_ref_idx总是指代有效的列表条目,并且所产生的图片对于编码图片的所有条带是相同的。当collocated_ref_idx不存在时,它被推断为等于0。
在HEVC中,在当前PU使用合并模式时,用于TMVP的目标参考索引被设置为0(对于参考图片列表0和1两者)。在AMVP中,目标参考索引在比特流中被指示。
在HEVC中,用于合并模式的候选预测运动矢量(PMV)的可用性可以被确定如下(对于空间候选和时间候选两者)(SRTP=短期参考图片,LRTP=长期参考图片)
运动矢量缩放可以在目标参考图片和用于候选PMV的参考索引两者均为短期参考图片的情况中被执行。该缩放可以通过利用与候选运动矢量有关并且是目标参考图片相对于当前图片的适当POC差异(例如,利用当前图片和目标参考图片的POC差异除以当前图片的POC差异和包含候选PMV及其参考图片的图片的POC差异)来缩放运动矢量而被执行。
SVC使用层间预测机制,其中某些信息能够从除了当前重构层以外的层或下一较低层而被预测。可以被层间预测的信息包括帧内纹理、运动和残差数据。层间运动预测包括块编码模式、头部信息等的预测,其中来自较低层的运动可以被用于较高层的预测。在帧内编码的情况中,从周围宏块或从较低层的共址宏块的预测是可能的。这些预测技术不采用来自较早编码的访问单元的信息,并且因此被称为帧内预测技术。此外,来自较低层的残差数据也能够被采用用于当前层的预测。
SVC规定了被称为单回路解码的概念。它通过使用受约束的帧内纹理预测模式而被使能,由此层间帧内纹理预测能够被应用于如下的宏块(MB),对于这些宏块,基础层的对应块被定位在帧内MB内。同时,基础层中的那些帧内MB使用受约束的帧内预测(例如,具有等于1的语法元素“contrained_intra_pred_flag”)。在单回路解码中,解码器执行仅针对所期望用于回放的可缩放层(称为“期望层”或“目标层”)的运动补偿和完全图片重构,由此极大地降低解码复杂度。除了期望层以外的所有层不需要被完全解码,因为不被用于层间预测(不管是层间帧内纹理预测、层间运动预测还是层间残差预测)的MB的所有数据或部分数据不需要用于期望层的重构。单个解码回路需要用于大多数图片的解码,而第二解码回路选择性地被应用以重构基础表示,这些基础表示需要作为预测参考但是不用于输出或显示,并且仅针对所谓的关键图片(对于关键图片,“store_ref_base_pic_flag”等于1)被重构。
在可缩放视频编码或可缩放视频比特流处理的一些情况中,增强层中的数据能够在某一地点、或甚至在任何位置被截断,其中每个截断位置可以包括表示逐渐增强的视觉质量的附加数据。这种可缩放性被称为细粒(粒度)可缩放性(FGS)。FGS被包括在SVC标准的一些草案版本中,但是它最后从最终的SVC标准被排除。FGS随后在SVC标准的一些草案版本的上下文中被讨论。由不能被截断的那些增强层所提供的可缩放性被称为粗粒(粒度)可缩放性(CGS)。它总地包括传统质量(SNR)可缩放性和空间可缩放性。SVC标准支持所谓的中粒可缩放性(MGS),其中质量增强图片类似于SNR可缩放层图片被编码,但通过具有大于0的quality_id语法元素类似于FGS层图片由高级别语法元素来指示。
SVC草案中的可缩放性结构由三个语法元素来表征:“temporal_id”、“dependency_id”和“quality_id”。语法元素“temporal_id”用于指示时间可缩放性层级结构,或间接地指示帧速率。包括较小最大“temporal_id”值的图片的可缩放层表示具有相比包括较大最大“temporal_id”的图片的可缩放层表示而言较小的帧速率。给定的时间层通常依赖于较低时间层(即,具有较小“temporal_id”值的时间层)但是不依赖于任何较高时间层。语法元素“dependency_id”用于指示CGS层间编码依赖性层级结构(如早前提到的,其包括SNR和空间可缩放性两者)。在任何时间级别位置,较小“dependency_id”值的图片可以被用于层间预测以用于编码具有较大“dependency_id”值的图片。语法元素“quality_id”用于指示FGS或MGS层的质量级别层级结构。在任何时间位置并且利用相同的“dependency_id”值,具有等于QL的“quality_id”的图片使用具有等于QL-1的“quality_id”的图片以用于层间预测。具有大于0的“quality_id”的编码条带可以被编码为可截断FGS条带或不可截断MGS条带。
为了简单,具有相同“dependency_id”值的一个访问单元中的所有数据单元(例如,SVC上下文中的网络抽象层单元或NAL单元)被称为依赖性单元或依赖性表示。在一个依赖性单元内,具有相同“quality_id”值的所有数据单元被称为质量单元或层表示。
基础表示(也称为解码的基础图片)是从对如下依赖性单元的视频编码层(VCL)NAL单元进行解码产生的解码图片,该依赖性单元具有等于0的“quality_id”并且“store_ref_base_pic_flag”被设置为等于1。增强表示(也被称为解码的图片)从正常解码过程产生,在普通解码过程中,针对最高依赖性表示而存在的所有的层表示被解码。
如早前提到的,CGS包括空间可缩放性和SNR可缩放性两者。空间可缩放性最初被设计为支持具有不同分辨率的视频的表示。对于每个时间实例,VCL NAL单元在相同的访问单元中被编码并且这些VCL NAL单元能够对应于不同的分辨率。在解码期间,低分辨率VCLNAL单元提供运动场和残差,其可能由高分辨率图片的最终解码和重构可选地被继承。当与较旧视频压缩标准相比较时,SVC的空间可缩放性已经被推广以使得基础层能够是增强层的经裁剪和伸缩的版本。
类似于GFS质量层,利用“quality_id”来指示MGS质量层。对于每个依赖性单元(具有相同的“dependency_id”),存在具有等于0的“quality_id”的层并且能够存在具有大于0的“quality_id”的其他层。具有大于0的“quality_id”的这些层为MGS层或FGS层,这依赖于条带是否被编码成可截断条带。
在FGS增强层的基本形式中,仅层间预测被使用。因此,FGS增强层能够自由地被截断而不引起解码序列中的任何误差传播。然而,FGS的基本形式遭受到低压缩效率。这个问题的出现是因为仅低质量图片被用于帧间预测参考。因此,提议了FGS增强图片被用作帧间预测参考。然而,当一些FGS数据被丢弃时,这可能导致编码-解码不匹配,也被称为漂移。
草案SVC标准的一个特征是FGS NAL单元能够自由地被丢掉或截断,并且SVCV标准的特征是MGS NAL单元能够自由地被丢掉(但不能被截断)而不影响比特流的一致性。如上面所讨论的,当那些FGS或MGS数据在编码期间已经被用于帧间预测参考时,数据的丢掉或截断将导致解码器侧和编码器侧的解码图片之间的不匹配。这种不匹配也被称为漂移。
为了控制归因于FGS或MGS数据的丢掉或截断所致的漂移,SVC应用了下列解决方案:在某一依赖性单元中,基础表示(通过仅解码具有等于0的“quality_id”的CGS图片和所有依赖的较低层数据)被存储在解码图片缓冲区中。当编码具有相同“dependency_id”值的后续依赖性单元时,所有的NAL单元(包括FGS或MGS NAL单元)使用基础表示用于帧间预测参考。结果,归因于早前访问单元中的FGS或MGS NAL单元的丢掉或截断所致的所有漂移在这一访问单元处被停止。对于具有相同“dependency_id”值的其他依赖性单元,为了高编码效率,所有的NAL单元使用解码图片用于帧间预测参考。
每个NAL单元在NAL单元头部中包括语法元素“use_ref_base_pic_flag”。当这个元素的值等于1时,NAL单元的解码在帧间预测过程期间使用参考图片的基础表示。语法元素“store_ref_base_pic_flag”规定了存储(当等于1时)还是不存储(当等于0时)用于将来图片的当前图片的基础表示以用于帧间预测。
具有大于0的“quality_id”的NAL单元不包含与参考图片列表构造和加权预测有关的语法元素,即语法元素“num_ref_active_lx_minus1”(x=0或1)、参考图片列表重排序语法表、以及加权预测语法表不存在。结果,MGS层或FGS层必须在需要时从相同的依赖性单元的具有等于0的“quality_id”的NAL单元继承这些语法元素。
在SVC中,参考图片列表仅由基础表示(当“use_ref_base_pic_flag”等于1时)构成或者仅由未被标记为“基础表示”(当“use_ref_base_pic_flag”等于0时)的解码图片构成,但是从不两者同时。
在H.264/AVC比特流中,一个编码视频序列中的编码图片使用相同的序列参数集合,并且在解码过程期间的任何时间实例,仅一个序列参数集合是活动的。在SVC中,来自不同可缩放层的编码图片可以使用不同的序列参数集合。如果不同的序列参数集合被使用,则在解码过程期间的任何时刻,可以存在多于一个活动的序列图片参数集合。在SVC规范中,用于顶层的序列图片参数集合被标识为活动的序列图片参数集合,而其余序列图片参数集合被称为层活动的序列图片参数集合。任何给定的活动序列参数集合贯穿于活动的序列参数集合所参考的层中的编码视频序列而保持不变。
已经在SVC中规定了可缩放嵌套SEI消息。可缩放嵌套SEI消息提供用于将SEI消息与比特流子集相关联的机制,诸如所指示的依赖性表示或其他可缩放层。可缩放嵌套SEI消息包含自身不为可缩放嵌套SEI消息的一个或多个SEI消息。被包含在可缩放嵌套SEI消息中的SEI消息被称为嵌套的SEI消息。没有被包含在可缩放嵌套SEI消息中的SEI消息被称为非嵌套的SEI消息。
如早前所指出的,MVC是H.264/AVC的扩展。H.264/AVC包括多视图编码扩展MVC。在MVC中,帧间预测和视图间预测两者都使用类似的运动补偿预测过程。视图间参考图片(以及仅视图间参考图片,它们不被用于时间运动补偿预测)被包括在参考图片列表中并且在一些限制下类似于常规的(“视图内”)参考图片被处理。存在进行中的规定对HEVC的多视图扩展的标准化活动,被称为MV-HEVC,其在功能上将类似于MVC。
H.264/AVC的许多定义、概念、语法结构、语义和解码过程也像这样或以某些泛化或约束而适用于MVC。MVC的一些定义、概念、语法结构、语义和解码过程在下文中被描述。
MVC中的访问单元被定义成如下NAL单元的集合,这些NAL单元按解码顺序是连续的并且确切地包含由一个或多个视图分量构成的一个初级编码图片。除了初级编码图片以外,访问单元还可以包含一个或多个冗余编码图片、一个辅助编码图片、或不包含编码图片的条带或条带数据分割的其他NAL单元。访问单元的解码导致由一个或多个解码视图分量构成的一个解码图片,当解码误差时,可能影响解码的比特流误差或其他误差不会发生。换句话说,MVC中的访问单元包含针对一个输出时间实例的视图的视图分量。
MVC中的视图分量被称为单个访问单元中视图的编码表示。
视图间预测可以被使用在MVC中并且指代如下视图分量的预测,该视图分量来自相同访问单元的不同视图分量的解码样本。在MVC中,视图间预测类似于帧间预测被实现。例如,视图间参考图片被放置于(多个)相同的参考图片列表中作为用于帧间预测的参考图片,并且对于视图间参考图片和帧间参考图片,参考索引以及运动矢量类似地被编码或推断。
锚图片是一种编码图片,其中所有条带可以仅参考相同访问单元内的条带,即可以使用视图间预测但是不使用帧间预测,并且按输出顺序的所有随后编码图片不使用来自按解码顺序在编码图片之前的任何图片的帧间预测。视图间预测可以被用于作为非基础视图的一部分的IDR视图分量。MVC中的基础视图是在编码视频序列中具有最小值的视图顺序索引的视图。基础视图能够独立于其他视图被解码并且不使用视图间预测。基础视图能够由仅支持单视图简档(诸如,H.264/AVC的基线简档或高简档)的H.264/AVC解码器来解码。
在MVC标准中,MVC解码过程的许多子过程通过分别将H.264/AVC的子过程规范中的术语“图片”、“帧”和“场”替换为“视图分量”、“帧视图分量”和“场视图分量”来使用H.264/AVC标准的相应子过程。相似地,术语“图片”、“帧”和“场”经常在下文中被用于分别意指“视图分量”、“帧视图分量”和“场视图分量”。
如早前所提到的,MVC比特流的非基础视图可以指代子集序列参数集合NAL单元。用于MVC的子集序列参数集合包括基础SPS数据结构和序列参数集合MVC扩展数据结构。在MVC中,来自不同视图的编码图片可以使用不同的序列参数集合。MVC中的SPS(具体地是MVC中的SPS的序列参数集合MVC扩展部分)能够包含用于视图间预测的视图依赖性信息。这可以例如由信令感知媒体网关使用以构造视图依赖性树。
在多视图视频编码的上下文中,视图顺序索引可以被定义为一种索引,该索引指示访问单元中的视图分量的解码或比特流顺序。在MVC中,视图间依赖性关系在序列参数集合MVC扩展中被指示,序列参数集合MVC扩展被包括在序列参数集合中。根据MVC标准,由编码视频序列参考的所有序列参数集合MVC扩展被要求是相同的。
在MVC中,操作点可以定义如下:操作点由表示目标时间级别的temporal_id值和表示目标输出视图的view_id值集合来识别。一个操作点与比特流子集相关联,其中该比特流子集由目标输出视图和目标输出视图所依赖的所有其他视图构成,使用具有等于temporal_id值的tIdTarget并且由view_id值集合构成的viewIdTargetList作为输入的子比特流提取过程来推导该比特流子集。多于一个操作点可以与相同的比特流子集相关联。当“操作点被解码”时,与操作点相对应的比特流子集可以被解码,并且随后目标输出视图可以被输出。
在可缩放多视图编码中,相同比特流可以包含多个视图的编码视图分量,并且至少一些编码视图分量可以使用质量和/或空间可缩放性被编码。
在所谓的深度增强视频编码中,纹理视图和深度视图这两者都被编码。
纹理视图指代表示普通视频内容的视图,例如使用普通摄像机被捕获,并且通常适合用于在显示器上渲染。纹理视图通常包括具有三个分量的图片,一个亮度分量和两个色度分量。在下文中,纹理图片通常包括其所有分量图片或颜色分量,除非例如利用术语“亮度纹理图片”和“色度纹理图片”另有指示。
针对特定视图的测距信息表示来自摄像机传感器的纹理样本的距离信息、纹理样本与另一视图中的相应纹理样本之间的视差或视觉差异信息、或类似信息。
真实世界3D场景的测距信息依赖于内容并且可以例如从0到无穷而变化。这种测距信息的不同表示类型能够被利用。下面给出了这种表示的一些非限制性示例。
-深度值。真实世界3D场景测距信息能够利用浮动点或固定点算术表示中的固定比特数目的深度值(Z)直接表示。这一表示(类型和精确度)能够是特定于内容和应用的。如它下面被示出的,Z值能够被转换为深度图和视差。
-深度图值。为了利用有限比特数目(例如,8比特)来表示真实世界深度值,深度值Z可以非线性地被量化以产生如下面所示出的深度图值d,并且所表示的Z的动态范围以深度范围参数Znear/Zfar而被限制。
在这种表示中,N是表示用于当前深度图的量化级别的比特数目,最接近和最远离的真实世界深度值Znear和Zfar分别对应于深度图中的深度值(2N-1)和0。上面的等式可以通过用量化级别数目替换2N而被适配用于任何数目的量化级别。为了执行深度与深度图之间的前向和后向转换,可能需要深度图参数(Znear/Zfar,表示量化级别的比特数目N)。
-视差图值。测距数据的每个样本能够被表示成两个给定立体视图之间的当前图像样本位置的视差值或矢量(差异)。对于从深度到视差的转换,可能要求某些摄像机设置参数(即,焦距f和两个摄像机之间的平移距离l):
D = f &CenterDot; l Z
视差D可以利用以下等式从深度图值v计算出:
D = f &CenterDot; l &CenterDot; ( d ( 2 2 - 1 ) ( 1 Z n e a r - 1 Z f a r ) + 1 Z f a r )
视差D可以利用以下等式从深度图值v计算出:
D=(w*v+o)>>n,
其中w是缩放因子,o是偏移值,并且n是依赖于所要求的视差矢量精确度的位移参数。对于每对视图,可能要求针对这一转换所要求的参数w、o和n的独立集合。
将真实世界3D场景纳入考虑的其他形式的测距信息表示能够被部署。
深度视图指代如下的视图,该视图表示来自摄像机传感器的纹理样本的距离信息、纹理样本与另一视图中的相应纹理样本之间的视差或视觉差异信息、或类似信息。深度视图可以包括具有与纹理视图的亮度分量相类似的一个分量的深度图片(也称为深度图)。深度图是具有每像素深度信息或类似信息的图像。例如,深度图中的每个样本表示来自摄像机所在平面的相应纹理样本或多个样本的距离。换句话说,如果z轴沿着摄像机的拍摄轴(并且因此与摄像机所在的平面正交),则深度图中的样本表示z轴上的值。深度图值的语义可以例如包括下列:
1.编码深度视图分量中的每个亮度样本值表示真实世界距离(Z)值的倒数,即1/Z,其被归一化在亮度样本的动态范围中,诸如对于8比特亮度表示,被归一化到0至255的范围(包含0和255)。归一化可以以量化1/Z在视差方面均匀的方式来进行。
2.编码深度视图分量中的每个亮度样本值表示真实世界距离(Z)值的倒数,即1/Z,其使用映射函数f(1/Z)或表(诸如,按片断的线性映射)而被映射到亮度样本的动态范围,诸如对于8比特亮度表示,被映射到0至255的范围(包含0和255)。换句话说,深度图值导致了应用函数f(1/Z)。
3.编码深度视图分量中的每个亮度样本值表示真实世界距离(Z)值,其被归一化在亮度样本的动态范围中,诸如对于8比特亮度表示,被归一化到0至255的范围(包含0和255)。
4.编码深度视图分量中的每个亮度值表示从目前的深度视图至另一所指示的或推导的深度视图或视图位置的视差或视觉差异值。
尽管诸如深度视图、深度视图分量、深度图片和深度图之类的短语被用于描述各种实施例,但是将理解,深度图值的任何语义可以被使用在各种实施例中,包括但不限于上面描述的实施例。例如,本发明的实施例可以被应用于样本值指示视差值的深度图片。
创建或修改包括编码深度图的比特流的编码***或任何其他实体可以创建并在比特流中包括与深度样本的语义有关并且与深度样本的量化方案有关的信息。与深度样本的语义有关并且与深度样本的量化方案有关的这种信息可以例如被包括在视频参数集合结构中、序列参数集合结构中、或SEI消息中。
深度增强视频指代具有一个或多个视图的纹理视频,该一个或多个视图与具有一个或多个深度视图的深度视频相关联。许多方法可以用于表示深度增强视频,包括视频加深度(V+D)、多视图视频加深度(MVD)、以及分层的深度视频(LDV)的使用。在视频加深度(V+D)表示中,单个纹理视图和相应的深度视图被分别表示为纹理图片序列和深度图片序列。MVD表示包含多个纹理视图和相应的深度视图。在LDV表示中,中央视图的纹理和深度常规地被表示,而其他视图的纹理和深度部分地被表示并且仅覆盖为了中间视图的正确视图合成所要求的非咬合区域。
纹理视图分量可以被定义为单个访问单元中的视图纹理的编码表示。深度增强视频比特流中的纹理视图分量可以以与单视图纹理比特流或多视图纹理比特流兼容的方式被编码,从而单视图或多视图解码器能够解码纹理视图,即使它不具有解码深度视图的能力。例如,H.264/AVC解码器可以从深度增强的H.264/AVC比特流解码单个纹理视图。纹理视图分量可以备选地以如下的方式被编码:能够进行单视图或多视图纹理解码的解码器(诸如H.264/AVC或MVC解码器)不能解码纹理视图分量,例如因为它使用基于深度的编码工具。深度视图分量可以被定义为单个访问单元中的视图深度的编码表示。视图分量对可以被定义为相同访问单元内的相同视图的纹理视图分量和深度视图分量。
深度增强视频可以以纹理和深度独立于彼此而被编码的方式被编码。例如,纹理视图可以被编码成一个MVC比特流,并且深度视图可以被编码成另一MVC比特流。深度增强视频还可以以纹理和深度联合被编码的方式被编码。在纹理和深度视图的联合编码的形式中,纹理图片的一些解码样本或用于解码纹理图片的数据元素从深度图片的一些解码样本或在深度图片的解码过程中获得的数据元素而被预测或推导。备选地或另外地,深度图片的一些解码样本或用于解码深度图片的数据元素从纹理图片的一些解码样本或在纹理图片的解码过程中获得的数据元素而被预测或推导。在另一选项中,纹理的编码视频数据和深度的编码视频数据不从彼此预测,或者一个不在另一个的基础上被编码/解码,但是编码的纹理和深度视图可以在编码中被复用到相同比特流中并且在解码中从该比特流解复用。在又另一选项中,尽管纹理的编码视频数据不从例如低于条带层中的深度的编码视频数据被预测,但是纹理视图和深度视图的一些高级别编码结构可以被共享或从彼此预测。例如,编码的深度条带的条带头部可以从编码的纹理条带的条带头部被预测。此外,一些参数集合可以由编码的纹理视图和编码的深度视图两者使用。
深度增强视频格式使得能够在摄像机位置处生成不由任何编码视图表示的虚拟视图或图片。一般而言,任何基于深度图像的渲染(DIBR)算法可以用于对视图进行合成。
图8中示出了基于DIBR的3DV***的简化模型。3D视频编解码的输入包括立体视频和具有立体基线b0的对应深度信息。然后,3D视频编解码合成在具有基线(bi<b0)的两个输入视图之间的多个虚拟视图。DIBR算法还可以使得能够外推在两个输入视图之外并且不在它们之间的视图。类似地,DIBR算法可以使得能够从单个纹理视图和相应的深度视图进行视图合成。然而,为了使得能够进行基于DIBR的多视图渲染,纹理数据以及对应的深度数据应当在解码器侧是可用的。
在这样的3DV***中,深度信息在编码器侧以用于纹理视图的深度图片(也称为深度图)的形式被产生。
深度信息能够通过各种手段获得。例如,3D场景的深度可以从由进行捕获的摄像机或彩色图像传感器登记的视差被计算。深度估计方法(其也可以称为立体匹配)采取立体视图作为输入并且计算该视图的两个偏移图片之间的局部视差。由于两个输入视图表示不同的视点或视角,所以视觉差异依赖于场景点的距离创建了成像平面上场景点的相对位置之间的视差。立体匹配的目标是通过找出或检测图像之间的对应点来提取那些视差。存在用于立体匹配的若干方法。例如,在块或模板匹配方法中,每个图像在重叠块中逐像素地被处理,并且对于每个像素块,针对偏移图像中的匹配块的水平局部化搜索被执行。一旦按像素的视差被计算,对应的深度值z通过等式(1)被运算:
z = f &CenterDot; b d + &Delta; d - - - ( 1 ) ,
其中如图9中所示出的,f是摄像机的焦距,并且b是摄像机之间的基线距离。进一步地,d可以被考虑为指代在两个摄像机之间观察到的视差或在两个摄像机中对应像素之间估计的视差。摄像机偏移Δd可以被考虑为反映了两个摄像机的光学中心的可能水平错位或归因于预处理所致的摄像机框架中的可能水平裁剪。然而,由于该算法基于块匹配,所以“通过视差的深度”估计质量依赖于内容并且非常经常地不精确。例如,对于以不具有纹理或大噪声级别的非常平滑的区域为特征的图像片段,没有可能的用于深度估计的直接明了的解决方案。
备选地或者除了上面描述的立体视图深度估计之外,可以使用飞行时间(TOF)原理例如通过使用可以被提供有用于照明场景的光源(例如红外发射器)的摄像机来获得深度值。这样的照明器可以被布置为产生针对例如在10-100MHz之间的频率的强度调制电磁发射,其可能要求LED或激光二极管被使用。红外光可以用于使得照明不显眼。从场景中的对象反射的光被图像传感器检测到,其可以在与照明器相同的频率处同步地被调制。图像传感器可以被提供有光学器件;聚集反射光的镜头和用于仅通过具有与照明器相同波长的光的光学带通滤波器,因此帮助抑制背景光。图像传感器可以针对每个像素测量光从照明器行进到对象并返回所花费的时间。与对象的距离可以被表示成照明调制中的相移,其能够针对场景中的每个像素同时从采样的数据被确定。
备选地或者除了上面描述的立体视图深度估计和/或TOF原理深度感测以外,可以使用结构化光方法来获得深度值,结构化光方法可以例如近似地如下进行操作。光发射器(诸如红外激光发射器或红外LED发射器)可以发射如下的光,该光可以具有在3D空间中的某个方向(例如,遵循光栅扫描或伪随机扫描顺序)和/或在光发射器阵列中的位置以及某种模式(例如,某种波长和/或振幅模式)。发射的光从对象反射回来并且可以使用传感器(诸如,红外图像传感器)而被捕获。由传感器获得的图像/信号可以关于发射的光的方向和发射的光的模式被处理,以例如使用三角测量原理来检测接收的信号与发射的光的方向/位置以及发射的光的模式之间的对应性。从这种对应性,可以推断像素的距离和位置。
将理解,上面描述的深度估计和感测方法作为非限制性示例被提供,并且实施例可以利用所描述的或任何其他的深度估计和感测方法和装置而被实现。
视差或视觉差异图(诸如ISO/IEC国际标准23002-3中规定的视觉差异图)可以类似于深度图被处理。深度和视差具有直接明了的对应性并且它们能够从彼此通过数学等式而被计算。
纹理视图和深度视图可以被编码到单个比特流中,其中一些纹理视图可以与一个或多个视频标准(诸如,H.264/AVC和/或MVC)兼容。换句话说,解码器可以能够解码这种比特流的一些纹理视图并且能够忽略剩余的纹理视图和深度视图。
分量间预测可以被定义为包括解码过程中使用的语法元素值、样本值、变量值的预测,或者从一种类型的分量图片至另一类型的分量图片的任何类似预测。例如,分量间预测可以包括从深度视图分量来预测纹理视图分量,或反之亦然。
在对HEVC标准的深度增强视频编码扩展(其可以被称为3D-HEVC)中,纹理视图和深度视图可以被编码到单个比特流中,其中一些纹理视图可以与HEVC兼容。换句话说,HEVC解码器可以能够解码这种比特流的一些纹理视图并且能够忽略剩余的纹理视图和深度视图。
深度图片和/或(多个)深度视图的特性可以由编码器在比特流中指示和/或可以由解码器从比特流解码。这些特性可以例如在使用DIBR合成中间图片或视图时被使用。下面呈现的草案MVC+D标准(JCT-3V文献JCT2-A1001)的深度表示信息SEI消息可以被认为是与深度表示格式有关的信息可以如何被表示的示例。SEI消息的语法如下:
深度表示SEI消息的语义可以规定如下。深度表示信息SEI消息中的语法元素规定了针对深度视图的各种深度表示以用于在3D显示器上渲染之前处理解码的纹理和深度视图分量的目的,诸如视图合成。所推荐的是SEI消息(当存在时)与IDR访问单元相关联以用于随机访问的目的。在SEI消息中用信号发送的信息应用于从SEI消息相关联的访问单元到排他地包含相同类型的SEI消息的按解码顺序的下一访问单元、或者到编码视频序列的结尾(无论哪个按解码顺序较早)的所有访问单元。
继续深度表示SEI消息的示例性语义,depth_representation_type规定了如下表中规定的深度视图的编码帧中的亮度像素的表示定义。在下表中,视差规定了两个纹理视图之间的水平位移,并且Z值规定了与摄像机的距离。
继续深度表示SEI消息的示例性语义,all_views_equal_flag等于0规定了深度表示基础视图可以不等同于针对目标视图中每个视图的相应值。all_views_equal_flag等于1规定了深度表示基础视图等同于针对所有目标视图的相应值。depth_representation_base_view_id[i]规定了第i个view_id的编码深度帧的视差从(depth_representation_type等于1或3)推导的基础视图或第i个view_id的编码深度帧的Z轴被定义为(depth_representation_type等于0或2)的光轴的基础视图的NAL单元的视图标识符。depth_nonlinear_representation_num_minus1+2规定了用于将深度值映射至依据视差均匀量化的标度的分段线性片段的数目。depth_nonlinear_representation_model[i]规定了用于将深度值映射至依据视差均匀量化的标度的分段线性片段。当depth_representation_type等于3时,深度视图分量包含非线性地变换的深度样本。如下面规定的,变量DepthLUT[i]用于将编码深度样本值从非线性表示变换为线性表示—归一化在从0至255的范围中的视差。这一变换的形状借助于二维“线性视差至非线性视差”空间中的线段近似而被定义。曲线的第一(0,0)节点和最后(255,255)节点被预定义。另外节点的位置以从直线曲线的偏差(depth_nonlinear_representation_model[i])的形式被传输。这些偏差沿着0至255(包含0和255)的整个范围均匀地分布,并且间距依赖于non_depth_representation_num的值。
变量DepthLUT[i],对于i在0至255(包含0和255)的范围中,被规定如下。
在称为不成对多视图视频加深度(MVD)的方案中,可以存在不相等数目的纹理视图和深度视图,和/或一些纹理视图可能不具有共址的深度视图,和/或一些深度视图可能不具有共址的纹理视图,一些深度视图分量可能不与纹理视图分量在时间上相符或反之亦然,共址的纹理视图和深度视图可能覆盖不同的空间区域,和/或可以存在多于一种类型的深度视图分量。可以通过深度增强视频编码、解码和处理方案来促进不成对MVD信号的编码、解码和/或处理。
术语“共址”、“搭配”和“重叠”可以可互换地被用来指示纹理视图分量中的某一样本或区域将3D场景的相同物理对象或片段表示成深度视图分量中的某一共址/搭配/重叠的样本或区域。在一些实施例中,纹理视图分量的采样网格可以与深度视图分量的采样网格相同,即纹理视图分量的分量图像(诸如,亮度图像)的一个样本对应于深度视图分量的一个样本,即样本的物理尺寸在纹理视图分量与对应的深度视图分量的分量图像(诸如,亮度图像)之间相匹配。在一些实施例中,纹理视图分量的分量图像(诸如,亮度图像)的采样网格的样本尺寸(twidth×theight)可以是深度视图分量的采样网格的样本尺寸(dwidth×dheight)的整数倍,即twidth=m×dwidth并且theight=n×dheight,其中m和n是正整数。在一些实施例中,dwidth=m×twidth并且dheight=n×theight,其中m和n是正整数。在一些实施例中,twidth=m×dwidth并且theight=n×dheight或备选地dwidth=m×twidth并且dheight=n×theight,其中m和n是正值并且可以是非整数。在这些实施例中,插值方案可以使用于编码器和解码器中并且使用于视图合成过程和其他过程中,以推导纹理与深度之间的共址样本值。在一些实施例中,纹理视图分量的分量图像(诸如,亮度图像)的采样网格的物理位置可以匹配于对应深度视图的分量图像的采样网格的物理位置,并且纹理视图分量的分量图像(诸如,亮度图像)的样本尺寸可以为深度视图分量的采样网格的样本尺寸(dwidth×dheight)的整数倍(或反之亦然)—然后,纹理视图分量和深度视图分量可以被考虑为是共址的并且表示相同的视点。在一些实施例中,纹理视图分量的分量图像(诸如,亮度图像)的采样网格的位置可以相对于深度视图分量的采样网格位置具有整数样本偏移,或反之亦然。换句话说,纹理视图分量的分量图像(诸如,亮度图像)的采样网格的左上样本可以对应于深度视图分量的采样网格中的位置(x,y)处的样本,或反之亦然,其中x和y是仅具有非负值并且起点位于左上角的二维笛卡尔坐标***中的非负整数。在一些实施例中,x和/或y的值可以是非整数,并且结果是插值方案可以使用于编码器和解码器中并且使用于视图合成过程和其他过程中,以推导纹理与深度之间的共址样本值。在一些实施例中,纹理视图分量的分量图像(诸如,亮度图像)的采样网格与深度视图分量的采样网格的广度(extent)相比可以具有不相等的广度。换句话说,纹理视图分量的分量图像(诸如,亮度图像)的采样网络的水平方向和/或垂直方向上的样本数目可以分别不同于深度视图分量的采样网格中的水平方向和/或垂直方向上的样本数目,和/或纹理视图分量的分量图像(诸如,亮度图像)的采样网络的物理宽度和/或高度可以分别不同于深度视图分量的采样网格的物理宽度和/或高度。在一些实施例中,非均匀和/或非匹配的样本网格能够被用于纹理和/或深度分量。当纹理视图分量的分量图像(诸如,亮度图像)的采样网格不是深度视图分量的采样网格的样本尺寸(dwidth×dheight)的整数倍时,或者纹理视图分量的分量图像(诸如,亮度图像)的采样网格位置与深度视图分量的采样网格位置相比具有非整数偏移时,或者深度视图分量和纹理视图分量的采样网格未被对齐/纠正时,深度视图分量的样本网格与纹理视图分量的样本网格不匹配。这可能是为了例如减少分量之一中的数据冗余而发生,或者归因于深度传感器与彩色图像传感器之间的校准/纠正过程的不精确而发生。
编码的深度增强视频比特流(诸如,MVC+D比特流或AVC-3D比特流)可以被考虑为包括两种类型的操作点:纹理视频操作点,诸如MVC操作点;以及包括纹理视图和深度视图两者的纹理加深度操作点。编码的深度增强视频比特流(诸如,MVC+D比特流或AVC-3D比特流)包含深度视图,并且因此整个比特流以及子比特流能够提供所谓的3DVC操作点,其在草案MVC+D和AVC-3D规范中包含用于每个目标输出视图的深度或纹理或者深度和纹理两者。
纹理视图分量和深度视图分量的编码和/或解码顺序可以确定与分量间预测有关的语法元素的存在以及与分量间预测有关的语法元素的允许值。
在用于深度增强视频的纹理和深度的联合编码的情况中,视图合成能够被用于编解码回路中,因此提供视图合成预测(VSP)。在VSP中,预测信号(诸如,VSP参考图片)使用DIBR或视图合成算法利用纹理和深度信息而被形成。例如,合成的图片(即,VSP参考图片)可以以利用视图间参考图片和仅视图间参考图片进行的那样的类似方式被引入参考图片列表中。备选地或另外地,用于某些预测块的特定VSP预测模式可以由编码器确定,由编码器在比特流中指示,并且如由解码器从比特流所推断的那样被使用。
在MVC中,帧间预测和视图间预测这两者使用类似的运动补偿预测过程。视图间参考图片和仅视图间参考图片实质上在不同的预测过程中当作长期参考图片。类似地,视图合成预测可以以这样的方式被实现:它实质上使用与帧间预测和视图间预测相同的运动补偿预测过程。为了区别于仅在单个视图内发生而无需任何VSP的运动补偿预测,包括且能够灵活地选择混合帧间预测、帧间预测和/或视图合成预测的运动补偿预测在本文中被称为混合方向的运动补偿预测。
由于在MVC和用于MVD的编码方案以及类似编码方案中的参考图片列表可以包含多于一种类型的参考图片,即帧间参考图片(也称为视图内参考图片)、视图间参考图片、仅视图间参考图片、以及VSP参考图片,所以术语“预测方向”可以被定义为指示对视图内参考图片(时间预测)、视图间预测、或VSP的使用。例如,编码器可以针对特定块选取指向视图间参考图片的参考索引,因此该块的预测方向是视图间。
VSP参考图片也可以被称为合成参考分量,其可以被定义为包含可以用于视图合成预测的样本。合成参考分量可以被使用作为用于视图合成预测的参考图片但是通常不被输出或显示。关于正被编码或解码的图片假设相同的摄像机参数,可以针对相同的摄像机位置生成视图合成图片。
视图合成图片可以以与利用视图间参考图片进行的类似方式被引入参考图片列表中。在视图合成预测的情况中的利用参考图片列表的信令和操作可以保持与在H.264/AVC或HEVC中规定的那些相同或类似。
从VSP产生的合成图片可以被包括在例如跟随在时间和视图间参考帧之后的初始参考图片列表Lsit0和List1中。然而,参考图片列表修改语法(即,RPLR命令)可以被扩展以支持VSP参考图片,因此编码器能够以任何顺序来排序参考图片列表,在比特流中利用RPLR命令来指示最终顺序,以使得解码器重构具有相同的最终顺序的参考图片列表。
用于从视图合成参考图片进行预测的过程(诸如,运动信息推导)可以保持与针对H.264/AVC或HEVC的帧间、层间和视图间预测所规定的过程相同或类似。备选地或另外地,用于视图合成预测的特定编码模式可以由编码器在比特流中规定和用信号通知。换句话说,VSP可以备选地或者还作为与帧内、帧间、视图间和其他编码模式分离的模式使用于一些编码和解码布置中。例如,在VSP跳过/直接模式中,例如使用基于变换的编码的运动矢量差异编码(解码)和残差预测误差的编码(解码)也可以被省略。例如,如果宏块可以在比特流内被指示为将使用跳过/直接模式被编码,则可以进一步在比特流内指示VSP帧是否被用作参考。备选地或另外地,视图合成参考块(而非完整视图合成参考图片或者除了完整视图合成参考图片以外)可以由编码器和/或解码器生成并且被使用作为用于各种预测过程的预测参考。
为了使能用于当前纹理视图分量的编码的视图合成预测,相同访问单元的之前编码的纹理和深度视图分量可以用于视图合成。这种使用相同访问单元的之前编码的纹理和深度视图分量的视图合成可以被称为前向视图合成或前向投影视图合成,并且类似地,使用这种视图合成的视图合成预测可以被称为前向视图合成预测或前向投影视图合成预测。
前向视图合成预测(VSP)可以被执行如下。视图合成可以利用合成目标图像t(x+D,y)中的新像素位置中的源图片s(x,y)的以下映射像素通过深度图(d)至视差(D)转换而被实施。
D ( s ( x , y ) ) = f &CenterDot; l z
z = ( d ( s ( x , y ) ) 255 ( 1 Z n e a r - 1 Z f a r ) + 1 Z f a r ) - 1 - - - ( 2 )
在纹理图片的投影的情况中,s(x,y)是纹理图像的样本,并且d(s(x,y))是与s(x,y)相关联的深度图值。
在深度图值的投影的情况中,s(x,y)=d(x,y)并且这个样本使用其自己的值d(s(x,y))=d(x,y)而被投影。
前向视图合成过程可以包括两个概念性步骤:前向扭曲(warping)和孔洞填充。在前向扭曲中,参考图像的每个像素被映射至合成图像。当来自参考帧的多个像素被映射至合成视图中的相同样本位置时,与较大深度值(距摄像机较接近)相关联的像素可以在映射竞争中被选择。在扭曲所有像素之后,可能留下不具有从参考帧映射的样本值的一些孔洞像素,并且这些孔洞像素可以例如利用基于线的定向孔洞填充而被填充,其中“孔洞”被定义为两个非孔洞像素之间的水平线中的连续孔洞像素。孔洞像素可以被填充有两个相邻非孔洞像素之一,这两个相邻非孔洞像素具有较小的深度样本值(距摄像机较远)。
在被称为后向视图合成或后向投影视图合成或后向扭曲的方案中,与合成视图共址的深度图被使用于视图合成过程中。使用后向视图合成的视图合成预测可以被称为后向视图合成预测或后向投影视图合成预测或B-VSP。为了使能用于当前纹理视图分量的编码的后向视图合成预测,当前编码/解码的纹理视图分量的深度视图分量被要求是可用的。换句话说,当深度视图分量的编码/解码顺序领先于相应纹理视图分量的编码/解码顺序时,后向视图合成预测可以使用于纹理视图分量的编码/解码中。
利用B-VSP,从属视图的纹理像素能够不从合成的VSP帧被预测,但是能够从基础视图或参考视图的纹理像素直接预测。为了这个过程所要求的位移矢量可以从该从属视图的深度图数据产生,即与当前正被编码/解码的纹理视图分量相对应的深度视图分量。
B-VSP的概念可以被解释如下。让我们假设以下编码顺序被利用:(T0,D0,D1,T1)。纹理分量T0是基础视图,并且T1是使用B-VSP作为一个预测工具被编码/解码的从属视图。深度图分量D0和D1分别是与T0和T1相关联的相应深度图。在从属视图T1中,当前编码的块Cb的样本值可以从由基础视图T0的样本值构成的参考区域R(Cb)而被预测。从与当前编码的纹理样本相关联的深度图值,编码样本与参考样本之间的位移矢量(运动矢量)可以被发现是T1与T0之间的视差。
深度(1/Z)表示到视差的转换过程可以例如利用以下等式而被执行:
Z ( C b ( j , i ) ) = 1 d ( C b ( j , i ) ) 255 &CenterDot; ( 1 Z n e a r - 1 Z f a r ) + 1 Z f a r ; D ( C b ( j , i ) ) = f &CenterDot; b Z ( C b ( j , i ) ) ; - - - ( 3 )
其中j和i是Cb内的局部空间坐标,d(Cb(j,i))是视图#1的深度图图像中的深度图值,Z是其实际深度值,以及D是与特定视图#0的视差。参数f、b、Znear和Zfar是规定摄像机设置的参数;即,表示深度图转换的参数的所使用的焦距(f)、视图#1与视图#0之间的摄像机分离(b)和深度范围(Znear,Zfar)。
许多视频编码器利用拉格朗日代价函数来找出率失真优化编码模式,例如期望的宏块模式和相关联的运动矢量。这种类型的代价函数使用加权因子或λ以将归因于有损编码方法所致的确切或估计的图像失真与表示图像区域中的像素/样本值所要求的确切或估计的信息量捆绑在一起。拉格朗日代价函数可以由等式表示:
C=D+λR
其中C是将被最小化的拉格朗日代价,D是具有当前考虑的模式和运动矢量的图像失真(例如,原始图像块和编码图像块中的像素/样本值之间的均方误差),λ是拉格朗日系数以及R是表示在解码器中重构图像块被要求的数据所需要的比特数目(包括表示候选运动矢量的数据量)。
在下文中,术语“层”使用在任何类型的可缩放性(包括视图可缩放性和深度增强)的上下文中。增强层指代任何类型的增强,诸如SNR、空间、多视图、深度、比特深度、色度格式、和/或色域增强。基础层也指代任何类型的基础操作点,诸如基础视图、用于SNR/空间可缩放性的基础层、或用于深度增强视频编码的纹理基础视图。
存在进行中的标准化活动规定HEVC的多视图扩展(其可以被称为MV-HEVC)、HEVC的深度增强多视图扩展(其可以被称为3D-HEVC)和HEVC的可缩放扩展(其可以被称为SHVC)。已经设想到多回路解码操作将被用于所有这些规范中。
在利用多回路编码(解码)的可缩放视频编码方案中,用于每个编码(解码)层的解码参考图片可以被维持在解码图片缓冲区(DPB)中。用于DPB的存储器消耗因此可能显著高于用于具有单回路编码(解码)操作的可缩放视频编码方案的存储器消耗。然而,多回路编码(解码)可以具有其他优点,诸如与单层编码相比的相对少的附加部分。
为了减少具有多回路编码(解码)操作的可缩放视频编码中的DPB存储器消耗,被标记为用于参考的图片不需要源自所有层中的相同访问单元。例如,与基础层相比,增强层中可以维持较小数目的参考图片。在一些实施例中,时间层间预测(其也可以被称为对角层间预测或对角预测)能够用来提高这种编码情景中的压缩效率。
与在深度增强多视图视频编码中使用锚访问单元相比,逐渐视图刷新(GVR)(也称为视图随机访问VRA、或者步进式视图访问SVA)可以提高压缩效率。当解码从GVR访问单元开始时,多视图比特流中视图的子集可以精确地被解码,而剩余的视图仅能够近似地被重构。所有视图的精确解码可以在后续锚或GVR访问单元中完成。当逐渐视图刷新时段为短时,一些编码视图不精确地被重构的事实可能几乎不可察觉。当解码在GVR访问单元之前已经开始时,与常规的立体视频编码相比,所有视图可以在GVR访问单元处精确地被重构并且在主观质量上可能不存在降低。GVR方法还能够使用在单播流中以用于快速启动。
GVR访问单元以如下的方式被编码:帧间预测选择性地被使能并且因此可以达到与锚访问单元相比的压缩改进。编码器选择哪些视图在GVR访问单元中被刷新并且在GVR访问单元中对这些视图分量进行编码而无需帧间预测,而剩余的未刷新的视图可以使用帧间预测和视图间预测这两者。刷新的视图可以被编码为GVR访问单元内的IRAP图片,而未刷新的视图可以被编码为例如GVR访问单元内的后置图片。对刷新的视图的选择可以以每个视图在合理时段内被刷新的方式来进行,该合理时段可以依赖于目标应用但是可以高达最多几秒。编码器可以具有不同的策略来刷新每个视图,例如在随之而来的GVR访问单元中对刷新的视图的轮询选择或锚访问单元的定期编码。
当解码从GVR访问单元开始时,不使用帧间预测的纹理和深度视图分量被解码。然后,DIBR可以用于重构不能被解码的那些视图,因为帧间预测曾经被用于它们。注意,基础视图与合成视图之间的分离可以基于所使用的显示环境的渲染偏好而被选择,并且因此不需要与编码视图之间的摄像机分离相同。未刷新视图的解码能够在后续锚或GVR访问单元处开始。
当开始单播视频流式操作时或者当用户在流式操作期间寻求新位置时,快速启动策略可以被使用(诸如与传输比特率相比的较小媒体比特率),以便建立接收缓冲区占用级别(其使得能够消除一些吞吐量变化)并且在合理时间内为用户开始回放。当深度增强多视图视频被流式操作时,逐渐视图刷新能够被用作快速启动策略。更确切地说,纹理和深度视图的子集在开始时被发送以具有与吞吐量相比相当小的媒体比特率。如早前所解释的,解码器能够使用DIBR在立体或多视图显示器上渲染内容。
在一种实施例中,编码器将图片编码到比特流中,其中该比特流包括至少两个可缩放性层,表示至少第一纹理视图和第二纹理视图以及至少第一深度视图,该图片与访问单元相关联。编码器将第一指示编码到该比特流中,以指示用于第一纹理视图和第二纹理视图的层是输出层,例如通过包括这些层作为在VPS中编码的输出层集合中的输出层。编码器将第三指示编码到该比特流中,以指示DIBR不应当、可以、还是应当被用于在访问单元中缺少第一纹理视图的图片时在显示过程中推导表示第一纹理视图的合成图片。编码器将一个或多个访问单元编码到该比特流中,在该一个或多个访问单元中不存在表示第一纹理视图的图片,而第二纹理视图的图片和第一纹理视图存在于那些访问单元中。例如,编码器可以针对第一纹理视图使用相比针对第二纹理视图较不频繁的IRAP图片间隔,或者编码器可以将第一纹理视图的IRAP图片和第二纹理视图的IRAP图片交错以使得IRAP图片在所有访问单元中不对齐(即,可以针对第一纹理视图或第二纹理视图存在但是不针对两者存在)。编码器可以进一步将第一深度视图的一些或所有IRAP图片与第二纹理视图的IRAP图片对齐。
在一种实施例中,解码器从比特流解码图片,其中该比特流包括至少两个可缩放性层,表示至少第一纹理视图和第二纹理视图以及至少第一深度视图,图片与访问单元相关联。解码器从该比特流解码第一指示,其指示用于第一纹理视图和第二纹理视图的层是输出层,例如通过从VPS解码这些层是输出层集合中的输出层。解码器从该比特流解码不存在表示第一纹理视图的图片的访问单元,而第二纹理视图的图片和第一纹理视图存在于该访问单元中。例如,在这个访问单元中,IRAP图片可以存在用于第二纹理视图和第一深度视图。解码器或另一实体(诸如后处理器)从该比特流解码第三指示,其指示DIBR不应当、可以、还是应当被用于在访问单元中缺少第一纹理视图的图片时在显示过程中推导表示第一纹理视图的合成图片。如果第三指示指示DIBR可以或应当被用于推导合成图片,则解码器或另一实体(诸如后处理器)可以应用DIBR在显示过程中创建表示该访问单元的针对该时刻的第一纹理视图的合成图片。来自该访问单元的第二纹理视图和/或第一深度视图的解码图片可以被用作DIBR过程的输入。
在一些实施例中,相同访问单元的由解码器输出的两个或更多输出图片或输出层的显示行为可以通过上面描述的利用比特流中的指示的过程来规定。例如,这可以被用于存在两个显示窗口的多点会议中,一个窗口用于每个参与者可以具有小分辨率“区块”的BL图片,并且另一窗口用于包含正说话的人物的高分辨率图片的EL图片(被编码成ROI EL)。这两个显示窗口不可以被覆叠,因为BL图片和ROI EL中的“区块”的相对空间分辨率可能非常不同,并且因此如果BL图片被放大则没有说话的人物可能看起来糟糕。两个显示窗口的布置还可以节省屏幕上的空间(当相比于对BL图片上采样并且在其之上覆叠ROI EL时)。
在上面描述的多点会议使用情况中,可以存在中央单元、中间箱、媒体感知网络元件(MANE)、从端点接收编码图片的多点会议控制单元(MCU)或类似物(随后被称为中间箱)。中间箱可以将一个端点的编码图片选择性地转发给其他端点。中间箱可以构成分区块的图片并且将分区块的图片转发给一个或多个端点,其中每个区块独立于来自端点的编码图片的其他区块。中间箱可以将来源于一个端点的空间增强层图片转发给其他端点。该空间增强层图片可以增强分区块图片的一个区块或区域。
图4a示出了适合于采用本发明的实施例的视频编码器的框图。图4a呈现了用于两层的编码器,但是将意识到,所呈现的编码器可以类似地被扩展以编码多于两个层。图4a图示了视频编码器的实施例,其包括用于基础层的第一编码器部分500和用于增强层的第二编码器部分502。第一编码器部分500和第二编码器部分502中的每个可以包括用于编码传入的图片的类似元件。编码器部分500、502可以包括像素预测器302、402、预测误差编码器303、403和预测误差解码器304、404。图4a还将像素预测器302、402的实施例示出为包括帧间预测器306、406、帧内预测器308、408、模式选择器310、410、滤波器316、416和参考帧存储器318、418。第一编码器部分500的像素预测器302接收300将在帧间预测器306(其确定图像与运动补偿参考帧318之间的差异)和帧内预测器308(其仅基于当前帧或图片的已经处理部分来确定针对图像块的预测)两者处被编码的视频流的基础层图像。帧间预测器和帧内预测器两者的输出被传递至模式选择器310。帧内预测器308可以具有多于一个帧内预测模式。因此,每个模式可以执行帧内预测并且将预测的信号提供给模式选择器310。模式选择器310还接收基础层图片300的副本。对应地,第二编码器部分502的像素预测器402接收400将在帧间预测器406(其确定图像与运动补偿参考帧418之间的差异)和帧内预测器408(其仅基于当前帧或图片的已经处理部分来确定针对图像块的预测)两者处被编码的视频流的增强层图像。帧间预测器和帧内预测器两者的输出被传递至模式选择器410。帧内预测器408可以具有多于一个帧内预测模式。因此,每个模式可以执行帧内预测并且将预测的信号提供给模式选择器410。模式选择器410还接收增强层图片400的副本。
模式选择器310可以在代价评估器块382中通常基于块地使用例如拉格朗日代价函数在编码模式与它们的参数值(诸如运动矢量、参考索引和帧内预测方向)之间进行选取。这一种类的代价函数可以使用加权因子lambda将归因于有损编码方法所致的(确切或估计的)图像失真和表示图像区域中的像素值所要求的(确切或估计的)信息量捆绑在一起:C=D+lambda×R,其中C是将被最小化的拉格朗日代价,D是在该模式和它们的参数情况下的图像失真(例如,均方误差),以及R是表示在解码器中重构图像块要求的数据所需要的比特数目(例如,包括表示候选运动矢量的数据量)。
依赖于哪种编码模式被选择来编码当前块,帧间预测器306、406的输出、或可选的帧内预测器模式之一的输出、或模式选择器内的表面编码器的输出被传递至模式选择器310、410的输出。模式选择器的输出被传递至第一求和设备321、421。第一求和设备可以从基础层图片300/增强层图片400减去像素预测器302、402的输出以产生第一预测误差信号320、420,第一预测误差信号320、420被输入至预测误差编码器303、403。
像素预测器302、402进一步从初步重构器339、439接收图像块的预测表示312、412和预测误差解码器304、404的输出338、438的组合。初步重构的图像314、414可以被传递至帧内预测器308、408和滤波器316、416。接收初步表示的滤波器316、416可以对初步表示进行滤波并且输出最终重构图像340、440,最终重构图像340、440可以被保存在参考帧存储器318、418中。参考帧存储器318可以连接至帧间预测器306以用作将来的基础层图片300在帧间预测操作中被比较所针对的参考图像。服从于根据一些实施例基础层被选择和指示为用于增强层的层间样本预测和/或层间运动信息预测的源,参考帧存储器318还可以连接至帧间预测器406以用作将来的增强层图片400在帧间预测操作中被比较所针对的参考图像。此外,参考帧存储器418可以连接至帧间预测器406以用作将来的增强层图片400在帧间预测操作中被比较所针对的参考图像。
服从于根据一些实施例基础层被选择和指示为用于预测增强层的滤波参数的源,来自第一编码器部分500的滤波器316的滤波参数可以被提供给第二编码器部分502。
预测误差编码器303、403包括变换单元342、442和量化器344、444。变换单元342、442将第一预测误差信号320、420变换至变换域。该变换例如为DCT变换。量化器344、444对变换域信号(例如DCT系数)进行量化以形成量化的系数。
预测误差解码器304、404接收来自预测误差编码器303、403的输出并且执行预测误差编码器303、403的相反过程以产生解码的预测误差信号338、438,解码的预测误差信号338、438在第二求和设备339、439处与图像块的预测表示312、412组合时产生初步重构图像314、414。预测误差解码器可以被考虑为包括:反量化器361、461,其对量化的系数值(例如DCT系数)进行反量化以重构变换信号;以及逆变换单元363、463,其对重构的变换信号执行逆变换,其中逆变换单元363、463的输出包含(多个)重构块。预测误差解码器还可以包括块滤波器,其可以根据进一步解码的信息和滤波器参数对(多个)重构块进行滤波。
熵编码器330、430接收预测误差编码器303、403的输出,并且可以对信号执行适合的熵编码/可变长度编码以提供误差检测和校正能力。熵编码器330、430的输出可以例如通过复用器508被***到比特流中。
图4b描绘了包括基础层编码元件203和增强层编码元件207的空间可缩放性编码装置200的实施例。基础层编码元件203将输入视频信号201编码到基础层比特流204,并且分别地,增强层编码元件207将输入视频信号201编码到增强层比特流208。空间可缩放性编码装置200还可以包括下采样器202,其用于在基础层表示和增强层表示的分辨率彼此不同的情况下对输入视频信号进行下采样。例如,基础层与增强层之间的缩放因子可以为1:2,其中增强层的分辨率是基础层的分辨率的两倍(在水平和垂直方向两者上)。空间可缩放性编码装置200可以进一步包括用于滤波的滤波器205和上采样器206,上采样器206用于在基础层表示和增强层表示的分辨率彼此不同的情况下对编码的视频信号进行下采样。
基础层编码元件203和增强层编码元件207可以包括与图4a中描绘的编码器相类似的元件,或者它们可以是彼此不同的。
在许多实施例中,参考帧存储器318可以能够存储不同层的解码图片,或者可以存在用于存储不同层的解码图片的不同参考帧存储器。
像素预测器302、402的操作可以被配置为执行任何像素预测算法。
像素预测器302、402还可以包括滤波器385以在从像素预测器302、402输出预测值之前对它们进行滤波。
滤波器316、416可以用于减少来自参考图像的各种伪影,诸如方块化、环状化等。
滤波器316、416可以包括例如去方块滤波器、样本自适应偏移(SAO)滤波器和/或自适应回路滤波器(ALF)。在一些实施例中,编码器基于例如RDO确定图片的哪个区域将被滤波和滤波器系数,并且这一信息用信号被发送给解码器。
当增强层编码元件420对增强层(例如CTU)的图像的区域进行编码时,它确定基础层中的哪个区域对应于增强层中将被编码的区域。例如,对应区域的位置可以通过利用基础层与增强层之间的空间分辨率缩放因子来缩放CTU的坐标而被计算。增强层编码元件420还可以检查样本自适应滤波器和/或自适应回路滤波器是否应当在对增强层上的当前CTU进行编码时被使用。如果增强层编码元件420决定针对这个区域使用样本自适应滤波器和/或自适应回路滤波器,则增强层编码元件420还可以在针对当前增强层块来构造参考块时使用样本自适应滤波器和/或自适应回路滤波器对基础层的样本值进行滤波。当滤波模式和基础层的对应块已经被确定时,基础层的重构样本然后例如从参考帧存储器318被取回并且被提供给滤波器440用于滤波。然而,如果增强层编码元件420决定针对这个区域不使用样本自适应滤波器和自适应回路滤波器,则增强层编码元件420也可以不使用样本自适应滤波器和自适应回路滤波器对基础层的样本值进行滤波。
预测误差编码器303、403包括变换单元342、442和量化器344、444。变换单元342、442将第一预测误差信号320、420变换至变换域。该变换例如为DCT变换。量化器344、444对变换域信号(例如DCT系数)进行量化以形成量化的系数。
预测误差解码器304、404接收来自预测误差编码器303、403的输出,并且执行预测误差编码器303、403的相反过程以产生解码的预测误差信号338、438,解码的预测误差信号338、438在第二求和设备339、439处与图像块的预测表示312、412组合时产生初步重构图像314、414。预测误差解码器可以被考虑为包括:反量化器361、461,其对量化的系数值(例如DCT系数)进行反量化以重构变换信号;以及逆变换单元363、463,其对重构的变换信号执行逆变换,其中逆变换单元363、463的输出包含(多个)重构块。预测误差编码器还可以包括宏块滤波器,其可以根据进一步解码的信息和滤波器参数对重构的宏块进行滤波。
熵编码器330、430接收预测误差编码器303、403的输出,并且可以对信号执行适合的熵编码/可变长度编码以提供误差检测和校正能力。熵编码器330、430的输出可以例如通过复用器508被***到比特流中。
在一些实施例中,滤波器440包括样本自适应滤波器,在一些其他实施例中,滤波器440包括自适应回路滤波器,并且在又一些其他实施例中,滤波器440包括样本自适应滤波器和自适应回路滤波器两者。
如果基础层和增强层的分辨率彼此不同,则滤波的基础层样本值可能需要被上采样器450上采样。上采样器450的输出(即上采样的滤波的基础层样本值)然后被提供给增强层编码元件420作为用于预测增强层上的当前块的像素值的参考。
为了完整,后文描述了适合的解码器。然而,一些解码器可能不能处理增强层数据,其中它们可能不能解码所有接收的图像。
在解码器侧,类似的操作被执行以重构图像块。图5a示出了适合于采用本发明的实施例的视频解码器550的框图。在这个实施例中,视频解码器550包括用于基础视图分量的第一解码器部分552和用于非基础视图分量的第二解码器部分554。块556图示了解复用器,其用于将与基础视图分量有关的信息递送至第一解码器部分552,并且用于将与非基础视图分量有关的信息递送至第二解码器部分554。该解码器示出了对接收的信号执行熵解码(E-1)的熵解码器700、800。熵解码器因此执行上面描述的编码器的熵编码器330、430的逆操作。熵解码器700、800将熵解码的结果输出至预测误差解码器701、801和像素预测器704、804。参考P’n代表图像块的预测表示。参考D’n代表重构的预测误差信号。块705、805图示了初步的重构图像或图像块(I’n)。参考R’n代表最终的重构图像或图像块。块703、803图示了逆变换(T-1)。块702、802图示了逆量化(Q-1)。块706、806图示了参考帧存储器(RFM)。块707、807图示了预测(P)(帧间预测或帧内预测)。块708、808图示了滤波(F)。块709、809可以用于将解码的预测误差信息与预测的基础视图/非基础视图分量进行组合以获得初步的重构图像(I’n)。初步重构和滤波的基础视图图像可以是来自第一解码器部分552的输出710,并且初步重构和滤波的基础视图图像可以是来自第二解码器部分554的输出810。
像素预测器704、804接收熵解码器700、800的输出。熵解码器700、800的输出可以包括与在编码当前块时使用的预测模式有关的指示。像素预测器704、804内的预测器选择器707、807可以确定将被解码的当前块为增强层块。因此,预测器选择器707、807可以选择使用来自另一层(诸如,基础层)上的对应块的信息,以在解码当前增强层块的同时对基础层预测块进行滤波。基础层预测块在由编码器在增强层预测中使用之前已经被滤波的指示可能已经被解码器接收,其中像素预测器704、804可以使用该指示以将重构的基础层块值提供给滤波器708、808并且确定哪个种类的滤波器被使用,例如SAO滤波器和/或自适应回路滤波器,或者可以存在其他方式来确定修改的解码模式是否应当被使用。
预测器选择器可以将图像块的预测表示P’n输出至第一组合器709。图像块的预测表示结合重构的预测误差信号D’n被使用以生成初步重构图像I’n。初步重构图像可以在预测器704、804中被使用或者可以被传递至滤波器708、808。滤波器应用滤波,其输出最终重构信号R’n。最终重构信号R’n可以被存储在参考帧存储器706、806中,参考帧存储器706、806进一步连接至用于预测操作的预测器707、807。
预测误差解码器702、802接收熵解码器700、800的输出。预测误差解码器702、802的反量化器702、802可以反量化熵解码器700、800的输出,并且逆变换块703、803可以对反量化器702、802输出的反量化信号执行逆变换操作。熵解码器700、800的输出还可以指示预测误差信号不被应用,并且在这种情况中,预测误差解码器产生全零输出信号。
应当理解,针对图5a中的各种块,层间预测可以被应用,即使图5a中未图示。层间预测可以包括样本预测和/或语法/参数预测。例如,来自一个解码器部分的参考图片(例如,RFM 706)可以用于另一解码器部分的样本预测(例如,块807)。在另一示例中,来自一个编码器部分的语法元素或参数(例如,来自块708的滤波器参数)可以用于另一解码器部分的语法/参数预测(例如,块808)。
图5b图示了与图4b中所示出的编码器200相对应的空间可缩放性解码装置210的框图。在这个实施例中,该解码装置包括基础层解码元件212和增强层解码元件217。基础层解码元件212将编码的基础层比特流解码成基础层解码视频信号213,并且分别地,增强层解码元件217将编码的增强层比特流216解码成增强层解码视频信号218。空间可缩放性解码装置210还可以包括用于对重构的基础层像素值进行滤波的滤波器214和用于上采样滤波的重构基础层像素值的上采样器215。
基础层解码元件212和增强层解码元件217可以包括与图5a中描绘的解码器相类似的元件,或者它们可以彼此不同。换句话说,基础层解码元件212和增强层解码元件217两者可以包括图5a中所示出的解码器的所有元件或一些元件。在一些实施例中,相同的解码器电路可以用于实施基础层解码元件212和增强层解码元件217的操作,其中该解码器意识到它当前正解码的层。
假设解码器已经解码了对应的基础层块,来自该对应的基础层块,用于修改的信息可以由解码器使用。与增强层块相对应的基础层中的像素的当前块可以由解码器搜索,或者解码器可以从比特流接收和解码信息,该信息指示基本块和/或基本块的哪些信息要使用在修改过程中。
当滤波214被应用时,定义基础层样本如何被处理的滤波器参数可以被包括在例如被考虑为是增强层一部分的数据单元(诸如,增强层图片的编码条带NAL单元或用于增强层图片的适配参数集合)中。结果,导致基础层比特流的子比特流提取过程仅可以忽略来自比特流的滤波器参数。解码基础层比特流的解码器或解码基础层的解码器仅可以因此忽略由滤波器参数控制的滤波过程。
在基础层空间分辨率小于增强层空间分辨率的情形中,针对基础层的处理能够在基础层经历上采样过程之前或之后被应用。滤波和上采样过程也能够通过基于所指示的滤波参数来修改上采样过程而联合地被执行。这一过程还能够被应用于基础层和增强层两者都利用HEVC被编码的相同标准可缩放性情况。
在许多视频通信或传输***、传送机制和多媒体容器文件格式中,存在与(多个)增强层分离地传输或存储基础层的机制。可以考虑到,层被存储在分离的逻辑通道中或者通过分离的逻辑通道被传输。下面提供了示例:
1.ISO基础媒体文件格式(ISOBMFF、ISO/IEC国际标准14496-12):基础层能够被存储为轨道,并且每个增强层能够被存储在另一轨道中。类似地,在混合编解码可缩放性情况中,非HEVC编码的基础层能够被存储为轨道(例如,具有样本条目类型‘avc1’),而(多个)增强层能够被存储为另一轨道,该另一轨道使用所谓的轨道参考链接到基础层轨道。
2.实时传送协议(RTP):RTP会话复用或同步源(SSRC)复用能够用于逻辑地分离不同的层。
3.MPEG-2传送流(TS):每个层能够具有不同的分组标识符(PID)值。
许多视频通信或传输***、传送机制和多媒体容器文件格式提供了将分离逻辑通道(诸如具有不同的轨道或会话)的编码数据彼此进行关联的手段。例如,存在将相同访问单元的编码数据关联在一起的机制。例如,解码或输出时间可以按容器文件格式或传送机制而被提供,并且具有相同的解码或输出时间的编码数据可以被考虑为形成访问单元。
可用的媒体文件格式标准包括ISO基础媒体文件格式(ISO/IEC 14496-12,其可以缩写为ISOMFF)、MPEG-4文件格式(ISO/IEC 14496-14,也称为MP4格式)、用于NAL单元结构化视频的文件格式(ISO/IEC 14496-15)和3GPP文件格式(3GPP TS 26.244,也称为3GPP格式)。SVC和MVC文件格式被规定为对AVC文件格式的修订。ISO文件格式是用于衍生所有上面提到的文件格式(不包括ISO文件格式自身)的基础。这些文件格式(包括ISO文件格式自身)一般被称为文件格式的ISO族。
ISO基础媒体文件格式中的基本构建块被称为盒子(box)。每个盒子具有头部和有效载荷。盒子头部指示盒子的类型和按照字节的盒子的大小。盒子可以装有其他盒子,并且ISO文件格式规定了在某一类型的盒子内允许哪些盒子类型。此外,在每个文件中一些盒子的存在可能是强制的,而其他盒子的存在可能是可选的。另外,对于一些盒子类型,可以可允许具有多于一个盒子存在于文件中。因此,ISO基础媒体文件格式可以被考虑为规定了盒子的层级结构。
根据文件格式的ISO族,文件包括被装入分离盒子中的媒体数据和元数据。在示例实施例中,媒体数据可以被提供在媒体数据(mdat)盒子中,并且电影(moov)盒子可以用于装入元数据。在一些情况中,对于将可操作的文件,mdat盒子和moov盒子两者必须存在。电影(moov)盒子可以包括一个或多个轨道,并且每个轨道可以位于一个对应的轨道盒子中。轨道可以是下列类型之一:媒体、提示、定时元数据。媒体轨道指代根据媒体压缩格式(及其对ISO基础媒体文件格式的封装)被格式化的样本。提示轨道指代提示样本,包含用于构造通过所指示的通信协议传输的分组的食谱(cookbook)指令。食谱指令可以包括用于分组头部构造的指导并且包括分组有效载荷构造。在分组有效载荷构造中,位于其他轨道或项目中的数据可以被参考。如此,例如,位于其他轨道或项目中的数据可以通过如下参考而被指示,该参考有关于特定轨道或项目中的数据的哪个片断被指令为将在分组构造过程期间被拷贝到分组中。定时元数据轨道可以指代描述所参考的媒体和/或提示样本的样本。对于一种媒体类型的展示(presentation),通常一个媒体轨道被选择。轨道的样本可以隐含地与所指示的样本解码顺序中被递增1的样本数目相关联。
根据ISO基础媒体文件格式的简化文件结构的示例可以被描述如下。该文件可以包括moov盒子和mdat盒子,并且moov盒子可以包括分别与视频和音频相对应的一个或多个轨道。
ISO基础媒体文件格式不限制展示被包含在一个文件中。如此,展示可以被包括在若干文件内。作为一种示例,一个文件可以包括用于整个展示的元数据,并且可以由此包括所有媒体数据以自含式地(self-contained)进行展示。其他文件(如果被使用)可以不要求被格式化为ISO基础媒体文件格式,并且可以用于包括媒体数据,并且还可以包括未使用的媒体数据或其他信息。ISO基础媒体文件格式仅涉及展示文件的结构。媒体数据文件的格式可能被ISO基础媒体文件格式及其衍生格式约束,这仅在于媒体文件中的媒体数据如在ISO基础媒体文件格式或其衍生格式中规定的那样被格式化。
参考外部文件的能力可以通过数据参考来实现。在一些示例中,被包括在每个轨道中的样本描述盒子可以提供样本条目的列表,每个样本条目提供与所使用的编码类型有关的详细信息、以及用于该编码所需要的任何初始化信息。块(chunk)的所有样本和轨道片段的所有样本可以使用相同的样本条目。块可以被定义为用于一个轨道的连续样本集合。也被包括在每个轨道中的数据参考(dref)盒子可以定义以下各项的编索引列表:统一资源定位符(URL)、统一资源名称(URN)、和/或对包含元数据的文件的自参考。样本条目可以指向数据参考盒子的一个索引,由此指示包含相应块或轨道片段的样本的文件。
电影片段可以在将内容记录到ISO文件时被使用,以便避免在记录应用崩溃、耗尽存储器空间、或一些其他事故发生的情况下丢失数据。不利用电影片段,可能发生数据丢失,因为文件格式可能通常要求所有元数据(例如,电影盒子)被写入文件的一个连续区域中。此外,在记录文件时,对于可用存储的大小,可能没有足够量的存储器空间(例如RAM)来缓冲电影盒子,并且在电影被关闭时重新计算电影盒子的内容可能太慢。此外,电影片段可以使得能够使用普通ISO文件解析器同时记录和回放文件。最终,当电影片段被使用并且初始电影盒子与具有相同媒体内容但没有利用电影片段被构造的文件相比而言较小时,为了渐进式下载(例如,文件的同时接收和回放)可以要求较小的初始缓冲持续期。
电影片段特征可以使得能够把常规地将位于电影盒子中的元数据拆分成多个片断。每个片断可以对应于针对轨道的某一时间段。换句话说,电影片段特征可以使得能够将文件元数据和媒体数据进行交错。结果,电影盒子的大小可以被限制并且上面提到的使用情况被实现。
在一些示例中,如果用于电影片段的媒体样本在与moov盒子相同的文件中,则像往常一样它们可以位于mdat盒子中。然而,对于电影片段的元数据,可以提供moof盒子。moof盒子可以包括之前已经在moov盒子中的用于回放时间的某个持续期的信息。moov盒子可以仍然表示关于其本身的有效电影,但是另外地,它可以包括mvex盒子,mvex盒子指示相同文件中将跟随的电影片段。电影片段可以在时间上延长与moov盒子相关联的展示。
在电影片段内可能存在轨道片段集合,包括每轨道从零至多个的任何地方。轨道片段可以进而包括从零至多个轨道槽(track run)的任何地方,每个轨道槽文档是用于该轨道的样本的连续槽。在这些结构内,许多字段是可选的并且能够是默认的。可以被包括在moof盒子中的元数据可以被限制于如下元数据的子集,该元数据可以被包括在moov盒子中并且可以在一些情况中不同地被编码。与能够被包括在moof盒子中的盒子有关的细节可以从ISO基础媒体文件格式规范中找到。
在一些实施例中,编码器或另一实体(诸如文件创建器)将两个或更多层的预期显示行为的指示编码到容器文件中,该容器文件符合于ISO基础媒体文件格式和可能它的一些衍生文件格式。容器文件可以包括编码图片和/或可以参考包括编码图片的另外的文件或多个文件。例如,样本条目描述内的盒子可以包括用于由包含样本条目描述的轨道所表示的层的display_composition_idc或类似指示。
在一些实施例中,解码器或另一实体(诸如,媒体播放器或文件解析器)从容器文件解码两个或更多层的预期显示行为的指示,该容器文件符合于ISO基础媒体文件格式和可能它的一些衍生文件格式。该容器文件可以包括编码图片和/或可以参考包括编码图片的另外的文件或多个文件。例如,该指示可以从样本条目描述内的盒子被解码,其中该盒子可以包括用于由包含样本条目描述的轨道所表示的层的display_composition_idc或类似指示。
在通过HTTP的动态自适应流式操作(DASH)或类似物中,多媒体内容可以被捕获和存储在HTTP服务器上并且可以使用HTTP被递送。内容可以在服务器上被存储在两个部分中:媒体展示描述(MPD)(或类似的描述或文件,其也可以被称为清单),其描述可用内容的清单、它的各种备选、它们的URL地址、和其他特性;以及单个或多个文件中的片段,这些片段包含块形式的实际多媒体比特流。为了播放内容,DASH客户端可以例如通过使用HTTP、电子邮件、拇指驱动器、广播、或其他传送方法来获得MPD。通过解析MPD,DASH客户端可以感知程序时序、媒体内容可用性、媒体类型、分辨率、最小和最大带宽、以及多媒体组件的各种编码备选的存在、可访问性特征和所要求的数字权限管理(DRM)、网络上的媒体组件位置、以及其他内容特性。使用这一信息,DASH客户端可以选择适当的编码备选并且通过使用例如HTTP GET请求取回片段而开始对内容进行流式操作。在适当的缓冲以允许网络吞吐量变化之后,客户端可以继续取回后续片段,并且还监视网络带宽波动。客户端可以通过取回不同备选(具有较低或较高比特率)的片段来决定如何适配于可用的带宽以维持充足的缓冲区。
媒体展示描述(MPD)可以为客户端提供信息以建立通过HTTP的动态自适应流式操作。MPD可以包含描述媒体展示的信息(诸如每个片段的HTTP-统一资源定位符(URL)),以制作GET片段请求。
DASH服务可以被提供作为点播(on-demand)服务或直播(live)服务。在前者中,MPD是静态的并且媒体展示的所有片段在内容供应商公布MPD时已经是可用的。然而,在后者中,依赖于由MPD所采用的片段URL构造方法,MPD可以是静态的或动态的,并且随着内容由内容供应商产生并公布给DASH客户端,片段可以连续地被创建。片段URL构造方法可以是基于模板的片段URL构造方法或片段列表生成方法。在前者中,DASH客户端可以能够构造片段URL而无需在请求片段之前更新MPD。在后者中,DASH客户端可能需要定期地下载更新的MPD以得到片段URL。因此,对于直播服务,基于模板的片段URL构造方法可以优于片段列表生成方法。
互联网媒体类型(其也可以被称为多目的互联网邮件扩展(MIME)类型)是在互联网上用于指示文件或资源(例如,URL)包含的数据类型的标准标识符。媒体类型由类型、子类型、以及零个或多个参数(其也可以被称为MIME媒体参数)构成。类型可以例如为应用、文本、图像、视频或音频。子类型可以用于例如识别编码方案。参数可以被指定给类型和子类型。一些参数可以是强制的而其他参数可以是可选的。互联网媒体类型可以使用在许多上下文中,诸如在SDP描述内,以识别媒体内容的格式和设置、指示端点的媒体能力、和/或用于类似目的。
图1示出了根据示例实施例的视频编码***的框图,其作为示例性装置或电子设备50的示意性框图,装置或电子设备50可以内含根据本发明的实施例的编解码器。图2示出了根据示例实施例的装置的布局。图1和图2的元件接下来将被解释。
电子设备50可以例如为无线通信***的移动终端或用户设备。然而,将意识到本发明的实施例可以被实施在可能要求编码和解码、或者编码或解码视频图像的任何电子设备或装置内。
装置50可以包括用于内含和保护设备的壳体30。装置50可以进一步包括液晶显示器形式的显示器32。在本发明的其他实施例中,显示器可以是适合于显示图像或视频的任何适合的显示器技术。装置50可以进一步包括小键盘34。在本发明的其他实施例中,任何适合的数据或用户接口机构可以被采用。例如,用户接口可以被实施为虚拟键盘或数据输入***作为触敏显示器的一部分。该装置可以包括麦克风36或者包括可以为数字或模拟信号输入的任何适合的音频输入。装置50可以进一步包括音频输出设备,其在本发明的实施例中可以为以下任一项:耳机38、扬声器、或模拟音频或数字音频输出连接。装置50还可以包括电池40(或者在本发明的其他实施例中,设备可以由任何适合的移动能量设备(诸如,太阳能电池、燃料电池或发条发电器)供电)。该装置可以进一步包括能够记录或捕获图像和/或视频的摄像机42。在一些实施例中,装置50可以进一步包括用于与其他设备的直视通信的短程线的红外端口。在其他实施例中,装置50可以进一步包括任何适合的短程通信解决方案,诸如,例如蓝牙无线连接或USB/火线有线连接。
装置50可以包括用于控制装置50的控制器56或处理器。控制器56可以连接至存储器58,存储器58在本发明的实施例中可以存储图像形式的数据和音频数据这两者,和/或还可以存储用于在控制器56上实施的指令。控制器56可以进一步连接至编解码电路54,编解码电路54适合用于执行音频和/或视频数据的编码和解码,或者辅助由控制器56执行的编码和解码。
装置50可以进一步包括卡读取器48和智能卡46,例如UICC和UICC读取器,以用于提供用户信息并且适合用于提供认证信息用于用户在网络处的认证和授权。
装置50可以包括无线电接口电路52,无线电接口电路52连接至控制器并且适合用于生成无线通信信号,例如以用于与蜂窝通信网络、无线通信***或无线局域网络的通信。装置50可以进一步包括天线44,天线44连接至无线电接口电路52以用于将在无线电接口电路52处生成的射频信号发射至(多个)其他装置,并且用于从(多个)其他装置接收射频信号。
在本发明的一些实施例中,装置50包括能够记录或检测个体帧的摄像机,这些个体帧然后被传递至编解码器54或控制器用于处理。在本发明的一些实施例中,该装置可以在传输和/或存储之前从另一设备接收用于处理的视频图像数据。在本发明的一些实施例中,装置50可以无线地或通过有线连接接收图像以用于编码/解码。
图3示出了根据示例实施例的用于视频编码的布置,其包括多个装置、网络和网络元件。关于图3,示出了其内能够利用本发明的实施例的***的示例。***10包括能够通过一个或多个网络进行通信的多个通信设备。***10可以包括有线或无线网络的任何组合,包括但不限于无线蜂窝电话网络(诸如,GSM、UMTS、CDMA网络等)、诸如由任何IEEE 802.x标准定义的无线局域网(WLAN)、蓝牙个域网、以太网局域网、令牌环局域网、广域网、以及互联网。
***10可以包括适合用于实施本发明的实施例的有线和无线这两者的通信设备或装置50。例如,图3中所示出的***示出了移动电话网络11和互联网28的表示。与互联网28的连接可以包括但不限于长程无线连接、短程无线连接、以及各种有线连接,有线连接包括但不限于电话线、电缆线、电力线和类似的通信路径。
***10中所示出的示例通信设备可以包括但不限于电子设备或装置50、个人数字助理(PDA)和移动电话14的组合、PDA 16、综合消息收发设备(IMD)18、台式计算机20、笔记本计算机22。装置50可以是静止的或者在由移动的个人携带时是移动的。装置50还可以位于运输模式中,包括但不限于小汽车、卡车、出租车、公共汽车、火车、船、飞机、自行车、摩托车、或任何类似适合的运输模式。
一些装置或进一步的装置可以发送和接收呼叫和消息,并且通过到基站24的无线连接25与服务供应商进行通信。基站24可以连接至网络服务器26,网络服务器26允许移动电话网络11与互联网28之间的通信。该***可以包括另外的通信设备和各种类型的通信设备。
通信设备可以使用各种传输技术进行通信,传输技术包括但不限于码分多址(CDMA)、全球移动通信***(GSM)、通用移动电信***(UMTS)、时分多址(TDMA)、频分多址(FDMA)、传输控制协议-互联网协议(TCP-IP)、短消息服务(SMS)、多媒体消息服务(MMS)、电子邮件、即时消息服务(IMS)、蓝牙、IEEE 802.11和任何类似的无线通信技术。在实施本发明的各种实施例时涉及的通信设备可以使用各种介质(包括但不限于无线电、红外、激光、电缆连接和任何适合连接)进行通信。
在上文中,关于特定类型的参数集合描述了一些实施例。然而,需要理解,实施例可以利用任何类型的参数集合或比特流中的其他语法结构而被实现。
在上文中,关于将指示、语法元素、和/或语法结构编码到比特流或编码视频序列中、和/或从比特流或编码视频序列解码指示、语法元素、和/或语法结构描述了一些实施例。然而,需要理解,可以在将指示、语法元素、和/或语法结构编码到比特流之外的语法结构或数据单元、或包括视频编码层数据(诸如编码条带)的编码视频序列、和/或从比特流之外的语法结构或数据单元或包括视频编码层数据(诸如编码条带)的编码视频序列解码指示、语法元素、和/或语法结构时实现实施例。例如,在一些实施例中,根据上述任何实施例的指示可以被编码到视频参数集合或序列参数集合中,其中视频参数集合或序列参数集合例如使用控制协议(诸如SDP)在编码视频序列外部被传达。继续相同的示例,接收器可以例如使用控制协议获得视频参数集合或序列参数集合,并且提供视频参数集合或序列参数集合用于解码。
在上文中,在比特流的语法的帮助下描述了示例实施例。然而,需要理解,对应的结构和/或计算机程序可以位于编码器处用于生成比特流和/或位于解码器处用于解码比特流。相似地,在参考编码器描述示例实施例的场合,需要理解所产生的比特流和解码器在它们中具有对应的元素。相似地,在参考解码器描述示例实施例的场合,需要理解编码器具有用于生成将由解码器解码的比特流的结构和/或计算机程序。
在上文中,参考增强层和基础层描述了一些实施例。需要理解,基础层也可以是任何其他层,只要它是用于增强层的参考层。还需要理解,编码器可以将多于两个层生成到比特流中,并且解码器可从比特流解码多于两个层。实施例可以利用增强层及其参考层的任何配对而被实现。相似地,许多实施例可以在考虑多于两层的情况下被实现。
在上文中,参考增强层和参考层描述了一些实施例,其中参考层可以例如为基础层。
本发明的实施例可以被实施在软件、硬件、应用逻辑、或软件、硬件和应用逻辑的组合中。在一种示例实施例中,应用逻辑、软件或指令集被保持在各种常规计算机可读介质中的任一个上。在本文的上下文中,“计算机可读介质”可以是能够包含、存储、通信、传播或传送用于由指令执行***、装置、或设备(诸如计算机,图1和图2中描述和描绘的计算机为一个示例)使用或与之相关的指令的任何介质或部件(means)。计算机可读介质可以包括计算机可读存储介质,计算机可读存储介质可以是能够包含或存储用于由指令执行***、装置、或设备(诸如计算机)使用或与之相关的指令的任何介质或部件。
如果需要,本文中讨论的不同功能可以按不同的顺序执行和/或彼此同时执行。此外,如果需要,上面描述的功能中的一个或多个功能可以是可选的或可以被组合。
尽管上述示例描述了在电子设备内的编解码器内进行操作的本发明的实施例,但是将意识到下面描述的本发明可以被实施为任何视频编解码器的一部分。因此,例如,本发明的实施例可以被实施在视频编解码器中,该视频编解码器可以通过固定或有线通信路径来实施视频编码。
因此,用户设备可以包括视频编解码器,诸如上述的本发明实施例中所描述的那些。应该意识到,术语“用户设备”旨在覆盖任何适合类型的无线用户设备,诸如移动电话、便携式数据处理设备或便携式web浏览器。
此外,公共陆地移动网络(PLMN)的元件还可以包括如上文描述的视频编解码器。
一般而言,本发明的各种实施例可以被实施在硬件或专用电路、软件、逻辑或它们的任何组合中。例如,一些方面可以被实施在硬件中,而其他方面可以被实施在固件或软件中,该固件或软件可以由控制器、微处理器或其他计算设备执行,但是本发明不限于此。尽管本发明的各种方面可能被图示和描述为框图、流程图、或使用一些其他图画表示,但是也理解,本文描述的这些块、装置、***、技术或方法可以被实施在作为非限制性示例的硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备、或它们的某种组合中。
本发明的实施例可以通过由移动设备的数据处理器(诸如在处理器实体中)可执行的计算机软件、或通过硬件、或通过软件和硬件的组合来实施。进一步地,在这个方面,应当注意到,附图中的逻辑流的任何块可以表示程序步骤、或互连的逻辑电路、块和功能、或程序步骤和逻辑电路、块和功能的组合。软件可以被存储在如存储芯片这样的物理介质上、或在处理器内实施的存储器块、磁介质(诸如,硬盘或软盘)和光学介质(诸如,例如DVD及其数据变型CD)上。
本发明的各种实施例能够在位于存储器中并且使得相关装置执行本发明的计算机程序代码的帮助下被实施。例如,终端设备可以包括用于处置、接收和传输数据、存储器中的计算机程序代码的电路和电子器件、以及在运行计算机程序代码时使得终端设备执行实施例的特征的处理器。更进一步地,网络设备可以包括用于处置、接收和传输数据、存储器中的计算机程序代码的电路和电子器件、以及在运行计算机程序代码时使得网络设备执行实施例的特征的处理器。
存储器可以具有适合于本地技术环境的任何类型,并且可以使用任何适合的数据存储技术(诸如,基于半导体的存储器设备、磁存储器设备和***、光学存储器设备和***、固定存储器和可移除存储器)而被实施。数据处理器可以具有适合于本地技术环境的任何类型,并且作为非限制性示例可以包括以下一项或多项:通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、和基于多核处理器层级结构的处理器。
本发明的实施例可以被实行在各种组件中,诸如集成电路模块。集成电路的设计总的来说是高度自动化过程。复杂且强大的软件工具可用于将逻辑级别设计转换为准备好被蚀刻和形成于半导体基板上的半导体电路设计。
程序,诸如由加利福尼亚的山景城的Synopsys公司和加利福尼亚的圣何塞的Cadence Design提供的那些程序,使用良好建立的设计规则以及预存储的设计模块库在半导体芯片上自动地对导体进行路由和定位组件。一旦针对半导体电路的设计已经完成,所产生的以标准化电子格式(例如,Opus、GDSII等)的设计可以被传输至半导体制作设施或“fab”用于制作。
前述描述通过示例性和非限制示例的方式提供了本发明的示例性实施例的完整且信息性描述。然而,鉴于前述描述,当结合附图和所附权利要求阅读时,各种修改和适配对相关领域的技术人员可以变得明显。然而,本发明的教导的所有这些和类似修改将仍然落入本发明的范围内。
下面将提供一些示例。
根据第一示例,提供了一种方法,该方法包括:
将图片编码到比特流中,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
将指示编码到该比特流中,该指示指示在该至少两个可缩放性层为输出层时的预期显示行为。
在一些实施例中,该方法包括:
将另一指示编码到该比特流中,该另一指示指示第一输出层和第二输出层。
在一些实施例中,该方法包括:
将另外的指示编码到该比特流中,该另外的指示指示至少一个备选输出层,该另外的指示规定如果输出层的图片从访问单元丢失则使用该至少一个备选层的图片。
在该方法的一些实施例中,该指示指示预期显示行为是下列至少一项:
组合该至少两个可缩放性层的图片;
覆叠该至少两个可缩放性层的图片;
分离地显示该至少两个可缩放性层的图片;
允许预期显示行为从上述的子集中被选择。
在该方法的一些实施例中,在访问单元内缺少在输出层处的图片时,该指示指示预期显示行为是下列至少一项:
显示存在于访问单元中的输出层的一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于访问单元中的输出层的另一图片;
通过将其他图片内插在输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
在该方法的一些实施例中,不存在于访问单元中的输出层的另一图片是以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
在一些实施例中,该方法包括:
针对与预期显示行为有关的指示,提供该指示可应用到该至少两个可缩放性层中的哪些层的信息。
在一些实施例中,该方法包括:
将指示编码成补充增强信息消息。
在该方法的一些实施例中,第一输出层为基础层并且第二输出层为增强层。
在该方法的一些实施例中,该至少两个可缩放性层的图片表示相同的输出时间或相同的输出顺序。
根据第二示例,提供了一种方法,该方法包括:
从比特流解码图片,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
从该比特流解码指示,该指示指示在该至少两个可缩放性层为输出层时的预期显示行为;以及
根据该指示来显示该至少两个可缩放性层。
在一些实施例中,该方法包括:
从该比特流解码另一指示,该另一指示指示第一输出层和第二输出层。
在一些实施例中,该方法包括:
从该比特流解码另外的指示,该另外的指示指示至少一个备选输出层;
响应于该另外的指示,如果输出层的图片从访问单元丢失,则使用该至少一个备选输出层的解码图片。
在一些实施例中,响应于该指示,该方法包括下列至少一项:
分离地显示该至少两个可缩放性层的图片;
组合该至少两个可缩放性层的图片;
覆叠该至少两个可缩放性层的图片。
在该方法的一些实施例中,在访问单元内缺少在输出层处的图片时,响应于该指示,该方法包括下列至少一项:
显示存在于访问单元中的输出层的一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于访问单元中的输出层的另一图片;
通过将其他图片内插在输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
在该方法的一些实施例中,不存在于访问单元中的输出层的另一图片为以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
在一些实施例中,该方法包括:
基于该指示确定预期显示行为是覆叠该至少两个可缩放性层的图片;
解码第一输出层的图片;以及
显示第一输出层的解码图片。
在一些实施例中,该方法包括:
基于该指示确定预期显示行为是覆叠该至少两个可缩放性层的图片;
解码第二输出层的图片;以及
显示第二输出层的解码图片。
根据第三示例,提供了一种装置,该装置包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得装置至少执行下列:
将图片编码到比特流中,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
将指示编码到该比特流中,该指示指示在该至少两个可缩放性层为输出层时的预期显示行为。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置至少执行下列:
将另一指示编码到该比特流中,该另一指示指示第一输出层和第二输出层。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置至少执行下列:
将另外的指示编码到该比特流中,该另外的指示指示至少一个备选输出层,该另外的指示规定如果输出层的图片从访问单元丢失,则使用该至少一个备选层的图片。
在该装置的一些实施例中,该指示指示预期显示行为是下列至少一项:
组合该至少两个可缩放性层的图片;
覆叠该至少两个可缩放性层的图片;
分离地显示该至少两个可缩放性层的图片;
允许预期显示行为从上述的子集中被选择。
在该装置的一些实施例中,该指示指示在访问单元内缺少在输出层处的图片时预期显示行为是下列至少一项:
显示存在于访问单元中的输出层的一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于访问单元中的输出层的另一图片;
通过将其他图片内插在输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
在该装置的一些实施例中,不存在于访问单元中的输出层的另一图片是以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置至少执行下列:
针对与预期显示行为有关的指示,提供该指示可应用到该至少两个可缩放性层中的哪些层的信息。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置至少执行下列:
将指示编码成补充增强信息消息。
根据第四示例,提供了一种装置,该装置包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得装置至少执行下列:
从比特流解码图片,该比特流包括与访问单元相关联的至少两个可缩放性层和图片,其中该至少两个层之一是输出层并且该至少两个层中的另一层是备选层;
从该比特流解码指示,该指示指示在该至少两个可缩放性层为输出层集合中的输出层时的预期显示行为;以及
输出该输出层的图片、备选层的图片、或组合图片。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置至少执行下列:
从该比特流解码另一指示,该另一指示指示第一输出层和第二输出层。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置至少执行下列:
从该比特流解码另外的指示,该另外的指示指示至少一个备选输出层,
响应于该另外的指示,如果输出层的图片从访问单元丢失,则使用该至少一个备选输出层的解码图片。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置响应于该指示至少执行下列:
分离地显示该至少两个可缩放性层的图片;
组合该至少两个可缩放性层的图片;
覆叠该至少两个可缩放性层的图片。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置响应于该指示至少执行下列至少一项:
显示存在于访问单元中的输出层的一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于访问单元中的输出层的另一图片;
通过将其他图片内插在输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得该装置在访问单元内缺少在输出层处的图片时至少执行下列至少一项:
通过使用访问单元内的图片的图片顺序计数来确定按输出顺序的之前图片。
根据第五示例,提供了一种具体化在非瞬态计算机可读介质上的计算程序产品,该计算程序产品包括计算机程序代码,该计算机程序代码被配置为在至少一个处理器上被执行时使得装置或***:
将图片编码到比特流中,该比特流包括与访问单元相关联的至少两个可缩放性层和图片;
将指示编码到该比特流中,该指示指示在该至少两个可缩放性层为输出层集合中的输出层时的预期显示行为。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在由所述至少一个处理器执行时使得该装置或该***至少执行下列:
将另一指示编码到该比特流中,该另一指示指示第一输出层和第二输出层。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在由所述至少一个处理器执行时使得该装置或该***至少执行下列:
将另外的指示编码到该比特流中,该另外的指示指示至少一个备选输出层,该另外的指示规定如果输出层的图片从访问单元丢失,则使用该至少一个备选层的图片。
在该计算机程序产品的一些实施例中,该指示指示预期显示行为是下列至少一项:
组合该至少两个可缩放性层的图片;
覆叠该至少两个可缩放性层的图片;
分离地显示该至少两个可缩放性层的图片;
允许预期显示行为从上述的子集中被选择。
在该计算机程序产品的一些实施例中,该指示指示在访问单元内缺少在输出层处的图片时预期显示行为是下列至少一项:
显示存在于访问单元中的输出层的一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于访问单元中的输出层的另一图片;
通过将其他图片内插在输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
在该计算机程序产品的一些实施例中,不存在于访问单元中的输出层的另一图片是以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在由所述至少一个处理器执行时使得该装置或该***至少执行下列:
针对与预期显示行为有关的指示,提供该指示可应用到该至少两个可缩放性层中的哪些层的信息。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在由所述至少一个处理器执行时使得该装置或该***至少执行下列:
将指示编码成补充增强信息消息。
根据第六示例,提供了一种计算机程序产品,该计算机程序产品包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时使得装置或***至少执行下列:
从比特流解码图片,该比特流包括与访问单元相关联的至少两个可缩放性层和图片,其中该至少两个层之一是输出层并且该至少两个层中的另一层是备选层;
从该比特流解码指示,该指示指示在该至少两个可缩放性层为输出层集合中的输出层时的预期显示行为;以及
输出该输出层的图片、备选层的图片、或组合图片。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在由所述至少一个处理器执行时使得该装置或该***至少执行下列:
将另一指示编码到该比特流中,该另一指示指示第一输出层和第二输出层。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在由所述至少一个处理器执行时使得该装置或该***至少执行下列:
将另外的指示编码到该比特流中,该另外的指示指示至少一个备选输出层,该另外的指示规定如果输出层的图片从访问单元丢失,则使用该至少一个备选层的图片。
在该装置的一些实施例中,该指示指示预期显示行为是下列至少一项:
组合该至少两个可缩放性层的图片;
覆叠该至少两个可缩放性层的图片;
分离地显示该至少两个可缩放性层的图片;
允许预期显示行为从上述的子集中被选择。
在该计算机程序代码的一些实施例中,该指示指示在访问单元内缺少在输出层处的图片时预期显示行为是下列至少一项:
显示存在于访问单元中的输出层的一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于访问单元中的输出层的另一图片;
通过将其他图片内插在输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
在该计算机程序产品的一些实施例中,不存在于访问单元中的输出层的另一图片是以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置为在由所述至少一个处理器执行时使得该装置或该***至少执行下列:
针对与预期显示行为有关的指示,提供该指示可应用到该至少两个可缩放性层中的哪些层的信息。

Claims (42)

1.一种方法,包括:
确定比特流的至少两个可缩放性层的预期显示行为,所述至少两个可缩放性层包括图片;
将指示编码到所述比特流、容器文件和所述比特流的描述中的至少一项中,所述指示指示在所述至少两个可缩放性层为解码所述比特流的输出层时的所述预期显示行为;以及
执行下列至少一项:将图片编码到比特流中,所述比特流包括至少两个可缩放性层;以及将所述比特流封装到容器文件中。
2.根据权利要求1所述的方法,包括:
将另一指示编码到所述比特流中,所述另一指示指示所述至少两个可缩放性层为输出层集合的输出层。
3.根据权利要求1或2所述的方法,其中自适应流的媒体展示描述包括所述比特流的所述描述。
4.根据权利要求1、2或3所述的方法,其中所述指示指示预期显示行为是下列至少一项:
组合所述至少两个可缩放性层的图片;
覆叠所述至少两个可缩放性层的图片;
分离地显示所述至少两个可缩放性层的所述图片;
允许所述预期显示行为从上述的子集中被选择。
5.根据权利要求1至4中任一项所述的方法,其中图片与访问单元相关联,并且在访问单元内缺少在输出层处的图片时,所述指示指示预期显示行为是下列至少一项:
显示存在于所述访问单元中的输出层的所述一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于所述访问单元中的所述输出层的另一图片;
通过将其他图片内插在所述输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
6.根据权利要求5所述的方法,其中不存在于所述访问单元中的所述输出层的所述另一图片是以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
7.根据权利要求1至6中任一项所述的方法,包括:
针对与所述预期显示行为有关的所述指示,提供所述指示可应用到所述至少两个可缩放性层中的哪些层的信息。
8.根据权利要求1至7中任一项所述的方法,包括:
将所述指示编码成补充增强信息消息。
9.根据权利要求1至8中任一项所述的方法,其中所述第一输出层是基础层,并且所述第二输出层是增强层。
10.根据权利要求1至9中任一项所述的方法,其中所述至少两个可缩放性层的图片表示相同的输出时间或相同的输出顺序。
11.一种方法,包括:
从比特流解码图片,所述比特流包括与访问单元相关联的至少两个可缩放性层和图片;
从所述比特流、封装所述比特流的容器文件和所述比特流的描述中的至少一项解码指示,所述指示指示在所述至少两个可缩放性层为输出层时的预期显示行为;以及
根据所述指示来显示所述至少两个可缩放性层。
12.根据权利要求11所述的方法,包括:
从所述比特流解码另一指示,所述另一指示指示所述至少两个可缩放性层为输出层集合的输出层。
13.根据权利要求11或12所述的方法,其中自适应流的媒体展示描述包括所述比特流的所述描述。
14.根据权利要求11、12或13所述的方法,响应于所述指示,包括下列至少一项:
分离地显示所述至少两个可缩放性层的图片;
组合所述至少两个可缩放性层的图片;
覆叠所述至少两个可缩放性层的图片。
15.根据权利要求11至14中任一项所述的方法,其中图片与访问单元相关联,并且在访问单元内缺少在所述输出层处的图片时,并且响应于所述指示,所述方法包括下列至少一项:
显示存在于所述访问单元中的输出层的一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于所述访问单元中的所述输出层的另一图片;
通过将其他图片内插在所述输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
16.根据权利要求15所述的方法,其中不存在于所述访问单元中的所述输出层的所述另一图片是以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
17.根据权利要求11至16中任一项所述的方法,包括:
基于所述指示确定预期显示行为是覆叠所述至少两个可缩放性层的图片;
其中所述方法进一步包括下列之一:
解码第一输出层的图片;并且显示所述第一输出层的解码图片;
解码第二输出层的图片;并且显示所述第二输出层的解码图片。
18.一种装置,包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得装置至少执行下列:
确定比特流的至少两个可缩放性层的预期显示行为,所述至少两个可缩放性层包括图片;
将指示编码到所述比特流、容器文件和所述比特流的描述中的至少一项中,所述指示指示在所述至少两个可缩放性层为解码所述比特流的输出层时的预期显示行为;以及
执行下列至少一项:将图片编码到比特流中,所述比特流包括至少两个可缩放性层;以及将所述比特流封装到容器文件中。
19.根据权利要求18所述的装置,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置至少执行下列:
将所述至少两个可缩放性层为输出层集合的输出层的另一指示编码到所述比特流中。
20.根据权利要求18或19所述的装置,其中自适应流的媒体展示描述包括所述比特流的所述描述。
21.根据权利要求18、19或20所述的装置,其中所述指示指示所述预期显示行为是下列至少一项:
组合所述至少两个可缩放性层的图片;
覆叠所述至少两个可缩放性层的图片;
分离地显示所述至少两个可缩放性层的所述图片;
允许所述预期显示行为从上述的子集中被选择。
22.根据权利要求18至21中任一项所述的装置,其中图片与访问单元相关联,并且所述指示指示在访问单元内缺少在输出层处的图片时所述预期显示行为是下列至少一项:
显示存在于所述访问单元中的输出层的所述一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于所述访问单元中的所述输出层的另一图片;
通过将其他图片内插在所述输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
23.根据权利要求22所述的装置,其中不存在于所述访问单元中的所述输出层的所述另一图片是以下之一:按输出顺序的之前图片、按图片顺序计数的最接近图片、或所指示的图片。
24.根据权利要求18至23中任一项所述的装置,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置至少执行下列:
针对与所述预期显示行为有关的所述指示,提供所述指示可应用到所述至少两个可缩放性层中的哪些层的信息。
25.根据权利要求18至24中任一项所述的装置,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置至少执行下列:
将所述指示编码成补充增强信息消息。
26.一种装置,包括至少一个处理器和至少一个存储器,所述至少一个存储器其上存储有代码,所述代码在由所述至少一个处理器执行时使得装置至少执行下列:
从比特流解码图片,所述比特流包括与访问单元相关联的至少两个可缩放性层和图片,其中所述至少两个层之一是输出层并且所述至少两个层中的另一层是备选层;
从所述比特流、封装所述比特流的容器文件和所述比特流的描述中的至少一项解码指示,所述指示指示在所述至少两个可缩放性层是输出层集合中的输出层时的预期显示行为;以及
输出所述输出层的图片、所述备选层的图片、或组合的图片。
27.根据权利要求26所述的装置,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置至少执行下列:
从所述比特流解码另一指示,所述另一指示指示所述至少两个可缩放性层是输出层集合的输出层。
28.根据权利要求26或27所述的装置,其中自适应流的媒体展示描述包括所述比特流的所述描述。
29.根据权利要求26、27或28所述的装置,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置响应于所述指示至少执行下列:
分离地显示所述至少两个可缩放性层的图片;
组合所述至少两个可缩放性层的图片;
覆叠所述至少两个可缩放性层的图片。
30.根据权利要求26至29中任一项所述的装置,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置响应于所述指示至少执行下列:
显示存在于所述访问单元中的输出层的所述一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于所述访问单元中的所述输出层的另一图片;
通过将其他图片内插在所述输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
31.根据权利要求26至30中任一项所述的装置,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置响应于所述指示至少执行下列:
通过使用所述访问单元内的所述图片的图片顺序计数来确定按输出顺序的所述之前图片。
32.一种具体化在非瞬态计算机可读介质上的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在至少一个处理器上被执行时使得装置或***:
将图片编码到比特流中,所述比特流包括与访问单元相关联的至少两个可缩放性层和图片;
将指示编码到所述比特流中,所述指示指示在所述至少两个可缩放性层为输出层集合中的输出层时的预期显示行为。
33.根据权利要求32所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***至少执行下列:
将另一指示编码到所述比特流中,所述另一指示指示第一输出层和第二输出层。
34.根据权利要求32或33所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***至少执行下列:
将另外的指示编码到所述比特流中,所述另外的指示指示至少一个备选输出层,所述另外的指示规定如果所述输出层的图片从访问单元丢失则使用所述至少一个备选层的图片。
35.根据权利要求32、33或34所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***至少执行下列:
针对与所述预期显示行为有关的所述指示,提供所述指示可应用到所述至少两个可缩放性层中的哪些层的信息。
36.根据权利要求32至35中任一项所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***至少执行下列:
将所述指示编码成补充增强信息消息。
37.一种计算机程序产品,包括至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时,使得装置或***至少执行下列:
从比特流解码图片,所述比特流包括与访问单元相关联的至少两个可缩放性层和图片,其中所述至少两个层之一是输出层并且所述至少两个层中的另一层是备选层;
从所述比特流、封装所述比特流的容器文件和所述比特流的描述中的至少一项解码指示,所述指示指示在所述至少两个可缩放性层是输出层集合中的输出层时的预期显示行为;以及
输出所述输出层的图片、所述备选层的图片、或组合的图片。
38.根据权利要求37所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***至少执行下列:
从所述比特流解码另一指示,所述另一指示指示所述至少两个可缩放性层是输出层集合的输出层。
39.根据权利要求37或38所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***至少执行下列:
将另外的指示编码到所述比特流中,所述另外的指示指示至少一个备选输出层,所述另外的指示规定如果所述输出层的图片从访问单元丢失则使用所述至少一个备选层的图片。
40.根据权利要求37、38或39所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***响应于所述指示至少执行下列:
组合所述至少两个可缩放性层的图片;
覆叠所述至少两个可缩放性层的图片;
分离地显示所述至少两个可缩放性层的所述图片;
允许所述预期显示行为从上述的子集中被选择。
41.根据权利要求37至40中任一项所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***响应于所述指示至少执行下列:
显示存在于所述访问单元中的输出层的所述一个或多个图片;
组合存在于访问单元中的在输出层处的图片与下列至少一项:
不存在于所述访问单元中的所述输出层的另一图片;
通过将其他图片内插在所述输出层中获得的内插图片;
通过基于深度图像的渲染获得的合成图片。
42.根据权利要求37至41中任一项所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为在由所述至少一个处理器执行时使得所述装置或所述***响应于所述指示至少执行下列:
通过使用所述访问单元内的所述图片的图片顺序计数来确定按输出顺序的所述之前图片。
CN201480076847.6A 2014-01-07 2014-12-23 用于视频编码和解码的方法和装置 Active CN106105220B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461924516P 2014-01-07 2014-01-07
US61/924,516 2014-01-07
PCT/FI2014/051053 WO2015104451A1 (en) 2014-01-07 2014-12-23 Method and apparatus for video coding and decoding

Publications (2)

Publication Number Publication Date
CN106105220A true CN106105220A (zh) 2016-11-09
CN106105220B CN106105220B (zh) 2019-07-05

Family

ID=53523567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480076847.6A Active CN106105220B (zh) 2014-01-07 2014-12-23 用于视频编码和解码的方法和装置

Country Status (4)

Country Link
US (1) US10123027B2 (zh)
EP (1) EP3092806A4 (zh)
CN (1) CN106105220B (zh)
WO (1) WO2015104451A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110537373A (zh) * 2017-04-25 2019-12-03 索尼公司 信号处理装置和方法以及程序
WO2020062700A1 (zh) * 2018-09-27 2020-04-02 华为技术有限公司 处理媒体数据的方法、客户端和服务器
CN112383774A (zh) * 2020-10-30 2021-02-19 网宿科技股份有限公司 编码方法、编码器以及服务器
CN112740282A (zh) * 2018-09-18 2021-04-30 Vid拓展公司 用于点云压缩比特流格式的方法和装置
CN113099232A (zh) * 2021-03-25 2021-07-09 杭州网易云音乐科技有限公司 视频解码方法、装置、电子设备及计算机存储介质
CN116325743A (zh) * 2021-06-28 2023-06-23 腾讯美国有限责任公司 基于扭曲的解码图片重采样辅助增强信息消息

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104885450B (zh) * 2012-12-27 2017-09-08 日本电信电话株式会社 图像编码方法、图像解码方法、图像编码装置、图像解码装置、图像编码程序、以及图像解码程序
EP3562170A1 (en) 2013-07-29 2019-10-30 Koninklijke KPN N.V. Providing tile video streams to a client
US10203399B2 (en) 2013-11-12 2019-02-12 Big Sky Financial Corporation Methods and apparatus for array based LiDAR systems with reduced interference
MX360947B (es) 2014-01-03 2018-10-29 Arris Entpr Llc Sintaxis de extensión condicionalmente analizada para procesamiento de extensión hevc.
US9794558B2 (en) 2014-01-08 2017-10-17 Qualcomm Incorporated Support of non-HEVC base layer in HEVC multi-layer extensions
US20150256600A1 (en) * 2014-03-05 2015-09-10 Citrix Systems, Inc. Systems and methods for media format substitution
WO2015138979A2 (en) * 2014-03-14 2015-09-17 Sharp Laboratories Of America, Inc. Dpb capacity limits
CA2943121C (en) 2014-03-18 2020-09-08 Arris Enterprises Llc Scalable video coding using reference and scaled reference layer offsets
US9360554B2 (en) 2014-04-11 2016-06-07 Facet Technology Corp. Methods and apparatus for object detection and identification in a multiple detector lidar array
WO2015168581A1 (en) * 2014-05-01 2015-11-05 Arris Enterprises, Inc. Reference layer and scaled reference layer offsets for scalable video coding
CA2950749C (en) 2014-05-30 2019-02-19 Arris Enterprises Llc Reference layer offset parameters for inter-layer prediction in scalable video coding
US9699480B2 (en) * 2014-06-13 2017-07-04 Sharp Laboratories Of America, Inc. Level limits
WO2015194183A1 (en) * 2014-06-18 2015-12-23 Sharp Kabushiki Kaisha Slice Type and Decoder Conformance
JP6440747B2 (ja) 2014-06-27 2018-12-19 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ Hevcでタイル化されたビデオ・ストリームに基づく関心領域の決定
US10694192B2 (en) 2014-06-27 2020-06-23 Koninklijke Kpn N.V. HEVC-tiled video streaming
WO2016098056A1 (en) * 2014-12-18 2016-06-23 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
GB201502205D0 (en) * 2015-02-10 2015-03-25 Canon Kabushiki Kaisha And Telecom Paris Tech Image data encapsulation
US10033930B2 (en) * 2015-02-16 2018-07-24 Hangzhou Closeli Technology Co., Ltd. Method of reducing a video file size for surveillance
US10036801B2 (en) 2015-03-05 2018-07-31 Big Sky Financial Corporation Methods and apparatus for increased precision and improved range in a multiple detector LiDAR array
US9924157B2 (en) * 2015-04-08 2018-03-20 Canon Kabushiki Kaisha Image processing device, image pickup apparatus, image processing method, and storage medium
GB2538997A (en) * 2015-06-03 2016-12-07 Nokia Technologies Oy A method, an apparatus, a computer program for video coding
EP3273692A4 (en) * 2015-06-10 2018-04-04 Samsung Electronics Co., Ltd. Method and apparatus for encoding or decoding image using syntax signaling for adaptive weight prediction
US20170019679A1 (en) * 2015-07-15 2017-01-19 Mediatek Inc. Hybrid video decoding apparatus for performing hardware entropy decoding and subsequent software decoding and associated hybrid video decoding method
WO2017029400A1 (en) 2015-08-20 2017-02-23 Koninklijke Kpn N.V. Forming one or more tile streams on the basis of one or more video streams
US10057078B2 (en) * 2015-08-21 2018-08-21 Samsung Electronics Company, Ltd. User-configurable interactive region monitoring
US10693936B2 (en) * 2015-08-25 2020-06-23 Qualcomm Incorporated Transporting coded audio data
US10546421B2 (en) * 2015-09-23 2020-01-28 Koninklijke Philips N.V. Generation of triangle mesh for a three dimensional image
US10674185B2 (en) * 2015-10-08 2020-06-02 Koninklijke Kpn N.V. Enhancing a region of interest in video frames of a video stream
US20170105023A1 (en) * 2015-10-08 2017-04-13 Qualcomm Incorporated Signaling of updated video regions
EP3373578A4 (en) * 2015-12-15 2019-04-24 Nippon Telegraph and Telephone Corporation IMAGE DIFFERENCE DETECTION DEVICE, METHOD FOR DETECTING IMAGE DIFFERENCE, AND COMPUTER PROGRAM
EP3404927A4 (en) * 2016-01-13 2018-11-21 Sony Corporation Information processing device and information processing method
GB2547053B (en) * 2016-02-08 2020-07-08 Canon Kk Methods, devices, and computer programs for combining the use of intra-layer prediction and inter-layer prediction with scalability & screen content features
US9866816B2 (en) 2016-03-03 2018-01-09 4D Intellectual Properties, Llc Methods and apparatus for an active pulsed 4D camera for image acquisition and analysis
US10979691B2 (en) * 2016-05-20 2021-04-13 Qualcomm Incorporated Circular fisheye video in virtual reality
US10587934B2 (en) * 2016-05-24 2020-03-10 Qualcomm Incorporated Virtual reality video signaling in dynamic adaptive streaming over HTTP
US20170359596A1 (en) * 2016-06-09 2017-12-14 Apple Inc. Video coding techniques employing multiple resolution
US10178394B2 (en) * 2016-06-10 2019-01-08 Apple Inc. Transcoding techniques for alternate displays
KR101713492B1 (ko) * 2016-06-27 2017-03-07 가천대학교 산학협력단 영상 복호화 방법, 영상 부호화 방법, 영상 복호화 장치, 및 영상 부호화 장치
CN107767838B (zh) 2016-08-16 2020-06-02 北京小米移动软件有限公司 色域映射方法及装置
US10440361B2 (en) * 2016-11-22 2019-10-08 Pixvana, Inc. Variable image data reduction system and method
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
EP3349459A1 (en) * 2017-01-11 2018-07-18 Thomson Licensing A method and a device for image encoding and decoding
US10242654B2 (en) 2017-01-25 2019-03-26 Microsoft Technology Licensing, Llc No miss cache structure for real-time image transformations
US9978118B1 (en) 2017-01-25 2018-05-22 Microsoft Technology Licensing, Llc No miss cache structure for real-time image transformations with data compression
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
US10514753B2 (en) * 2017-03-27 2019-12-24 Microsoft Technology Licensing, Llc Selectively applying reprojection processing to multi-layer scenes for optimizing late stage reprojection power
US10410349B2 (en) 2017-03-27 2019-09-10 Microsoft Technology Licensing, Llc Selective application of reprojection processing on layer sub-regions for optimizing late stage reprojection power
GB2560921B (en) 2017-03-27 2020-04-08 Canon Kk Method and apparatus for encoding media data comprising generated content
US10255891B2 (en) 2017-04-12 2019-04-09 Microsoft Technology Licensing, Llc No miss cache structure for real-time image transformations with multiple LSR processing engines
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
US10754242B2 (en) 2017-06-30 2020-08-25 Apple Inc. Adaptive resolution and projection format in multi-direction video
CN109327699B (zh) * 2017-07-31 2021-07-16 华为技术有限公司 一种图像的处理方法、终端和服务器
CN109587501B (zh) * 2017-09-28 2022-07-12 腾讯科技(深圳)有限公司 进行运动估计的方法、装置及存储介质
CN111183651A (zh) * 2017-10-12 2020-05-19 索尼公司 图像处理设备、图像处理方法、发送设备、发送方法和接收设备
KR102030983B1 (ko) * 2017-11-29 2019-10-11 전자부품연구원 분할 영상 기반의 라이브 스트리밍 서비스 운용 방법 및 이를 지원하는 전자 장치
CN108307248B (zh) 2018-02-01 2019-10-29 腾讯科技(深圳)有限公司 视频播放方法、装置、计算设备及存储介质
US10904577B2 (en) * 2018-02-07 2021-01-26 Mediatek Inc. Video compression system with post-processing of bitstream generated by hardware video encoding and associated video compression method
US11218706B2 (en) * 2018-02-26 2022-01-04 Interdigital Vc Holdings, Inc. Gradient based boundary filtering in intra prediction
US10861215B2 (en) * 2018-04-30 2020-12-08 Qualcomm Incorporated Asynchronous time and space warp with determination of region of interest
US11606575B2 (en) 2018-07-10 2023-03-14 Qualcomm Incorporated Multiple history based non-adjacent MVPs for wavefront processing of video coding
US11032541B2 (en) * 2018-10-22 2021-06-08 Tencent America LLC Method and apparatus for video coding
US11412260B2 (en) 2018-10-29 2022-08-09 Google Llc Geometric transforms for image compression
GB201817781D0 (en) 2018-10-31 2018-12-19 V Nova Int Ltd Mehods, apparatuses, computer programs and computer-readable media
WO2020125754A1 (en) * 2018-12-21 2020-06-25 Beijing Bytedance Network Technology Co., Ltd. Motion vector derivation using higher bit-depth precision
CN109819272B (zh) * 2018-12-26 2022-09-16 平安科技(深圳)有限公司 视频发送方法、装置、计算机可读存储介质及电子设备
US11778171B2 (en) 2019-01-02 2023-10-03 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
CN111416976B (zh) 2019-01-08 2023-12-08 浙江大学 视频解码方法、视频编码方法、装置、设备及存储介质
US11670039B2 (en) 2019-03-04 2023-06-06 Dolby Laboratories Licensing Corporation Temporal hole filling for depth image based video rendering
FR3096540A1 (fr) * 2019-05-20 2020-11-27 Orange Restitution d’un contenu en arrière-plan ou sous forme d’incrustation dans le cadre d’un téléchargement progressif adaptatif de type HAS
US11523185B2 (en) 2019-06-19 2022-12-06 Koninklijke Kpn N.V. Rendering video stream in sub-area of visible display area
US11539957B2 (en) * 2019-06-20 2022-12-27 Tencent America LLC Layered random access with reference picture resampling
AU2020326881A1 (en) 2019-08-06 2022-03-24 Op Solutions, Llc Block-based adaptive resolution management
BR112022002204A2 (pt) 2019-08-06 2022-10-18 Op Solutions Llc Redimensionamento de previsão de gerenciamento de resolução adaptativa
JP2022544164A (ja) 2019-08-06 2022-10-17 オーピー ソリューションズ, エルエルシー フレームタイプに基づく適応分解能管理の暗示的信号伝達
BR112022002195A2 (pt) * 2019-08-06 2022-10-18 Op Solutions Llc Sinalização de gerenciamento de resolução adaptativa
CN116781914A (zh) * 2019-09-24 2023-09-19 华为技术有限公司 用于所有层的可伸缩嵌套式sei消息
WO2021125703A1 (ko) * 2019-12-20 2021-06-24 엘지전자 주식회사 영상/비디오 코딩 방법 및 장치
WO2021134020A1 (en) 2019-12-26 2021-07-01 Bytedance Inc. Constraints on signaling of hypothetical reference decoder parameters in video bitstreams
EP4062640A4 (en) * 2019-12-26 2023-01-11 ByteDance Inc. PROFILE, ROW AND LAYER INDICATION IN VIDEO CODING
CN114902566A (zh) 2019-12-27 2022-08-12 字节跳动有限公司 参数集中的子图片信令
US11356698B2 (en) * 2019-12-30 2022-06-07 Tencent America LLC Method for parameter set reference constraints in coded video stream
CN117395441A (zh) 2020-01-09 2024-01-12 字节跳动有限公司 视频流中的填充数据单元的处理
JP7457143B2 (ja) 2020-02-14 2024-03-27 北京字節跳動網絡技術有限公司 映像ビットストリームにおける一般的な制約フラグの使用
CN111339193B (zh) * 2020-02-21 2023-06-27 腾讯云计算(北京)有限责任公司 类别的编码方法及装置
CN111314697B (zh) * 2020-02-25 2021-10-15 中南大学 一种针对光字符识别的码率设置方法、设备及存储介质
CN115336277A (zh) * 2020-03-17 2022-11-11 字节跳动有限公司 在视频编解码中使用视频参数集
US11722656B2 (en) 2020-03-31 2023-08-08 Tencent America LLC Method for output layer set mode
US11677979B2 (en) 2020-08-24 2023-06-13 Tencent America LLC Freeview video coding
US11831920B2 (en) * 2021-01-08 2023-11-28 Tencent America LLC Method and apparatus for video coding
US20220279185A1 (en) * 2021-02-26 2022-09-01 Lemon Inc. Methods of coding images/videos with alpha channels
JP2024522908A (ja) * 2021-06-28 2024-06-21 北京字節跳動網絡技術有限公司 深度表現情報補足エンハンスメント情報の拡張シグナリング
US20230097425A1 (en) * 2021-09-29 2023-03-30 Tencent America LLC Techniques for signaling multiview view positions in sei message
US20230108426A1 (en) * 2021-10-05 2023-04-06 Tencent America LLC Method and apparatus for dynamic dash picture-in-picture streaming
US20230171405A1 (en) * 2021-11-30 2023-06-01 Tencent America LLC Scene transition detection based encoding methods for bcw
WO2023203423A1 (en) * 2022-04-20 2023-10-26 Nokia Technologies Oy Method and apparatus for encoding, decoding, or displaying picture-in-picture
US20240022786A1 (en) * 2022-07-12 2024-01-18 Tencent America LLC Signaling for Picture In Picture In Media Container File and In Streaming Manifest
WO2024072753A1 (en) * 2022-09-26 2024-04-04 Bytedance Inc. Enhanced signalling of picture-in-picture in media files

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060153295A1 (en) * 2005-01-12 2006-07-13 Nokia Corporation Method and system for inter-layer prediction mode coding in scalable video coding
CN1917647A (zh) * 2005-04-19 2007-02-21 三星电子株式会社 自适应地选择用于熵编码的上下文模型的方法和设备
US20080008247A1 (en) * 2006-07-10 2008-01-10 Segall Christopher A Methods and Systems for Residual Layer Scaling
US20080013621A1 (en) * 2006-07-12 2008-01-17 Nokia Corporation Signaling of region-of-interest scalability information in media files
US20080095228A1 (en) * 2006-10-20 2008-04-24 Nokia Corporation System and method for providing picture output indications in video coding
CN101401440A (zh) * 2006-01-09 2009-04-01 诺基亚公司 可伸缩视频编码中的差错恢复模式判决
CN102685556A (zh) * 2007-04-18 2012-09-19 汤姆森许可贸易公司 编码***

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI114527B (fi) 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
FI114433B (fi) 2002-01-23 2004-10-15 Nokia Corp Otossiirtymän koodaaminen videokoodauksessa
US9532001B2 (en) * 2008-07-10 2016-12-27 Avaya Inc. Systems, methods, and media for providing selectable video using scalable video coding
CA2758237C (en) * 2009-04-09 2017-08-15 Telefonaktiebolaget Lm Ericsson (Publ) Media container file management
US9282343B2 (en) * 2011-08-31 2016-03-08 Dolby Laboratories Licensing Corporation Multiview and bitdepth scalable video delivery
US9674519B2 (en) * 2012-11-09 2017-06-06 Qualcomm Incorporated MPEG frame compatible video coding
US9398293B2 (en) * 2013-01-07 2016-07-19 Qualcomm Incorporated Gradual decoding refresh with temporal scalability support in video coding
EP3058747B1 (en) 2013-10-15 2019-11-20 Nokia Technologies Oy Scalable video encoding and decoding using syntax element

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060153295A1 (en) * 2005-01-12 2006-07-13 Nokia Corporation Method and system for inter-layer prediction mode coding in scalable video coding
CN1917647A (zh) * 2005-04-19 2007-02-21 三星电子株式会社 自适应地选择用于熵编码的上下文模型的方法和设备
CN101401440A (zh) * 2006-01-09 2009-04-01 诺基亚公司 可伸缩视频编码中的差错恢复模式判决
US20080008247A1 (en) * 2006-07-10 2008-01-10 Segall Christopher A Methods and Systems for Residual Layer Scaling
US20080013621A1 (en) * 2006-07-12 2008-01-17 Nokia Corporation Signaling of region-of-interest scalability information in media files
CN101507281A (zh) * 2006-07-12 2009-08-12 诺基亚公司 媒体文件中的兴趣区域可缩放性信息的信号发送
US20080095228A1 (en) * 2006-10-20 2008-04-24 Nokia Corporation System and method for providing picture output indications in video coding
CN102685556A (zh) * 2007-04-18 2012-09-19 汤姆森许可贸易公司 编码***

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110537373A (zh) * 2017-04-25 2019-12-03 索尼公司 信号处理装置和方法以及程序
CN110537373B (zh) * 2017-04-25 2021-09-28 索尼公司 信号处理装置和方法以及存储介质
CN112740282A (zh) * 2018-09-18 2021-04-30 Vid拓展公司 用于点云压缩比特流格式的方法和装置
CN112740282B (zh) * 2018-09-18 2024-05-24 Vid拓展公司 用于点云压缩比特流格式的方法和装置
WO2020062700A1 (zh) * 2018-09-27 2020-04-02 华为技术有限公司 处理媒体数据的方法、客户端和服务器
CN112383774A (zh) * 2020-10-30 2021-02-19 网宿科技股份有限公司 编码方法、编码器以及服务器
CN112383774B (zh) * 2020-10-30 2023-10-03 网宿科技股份有限公司 编码方法、编码器以及服务器
CN113099232A (zh) * 2021-03-25 2021-07-09 杭州网易云音乐科技有限公司 视频解码方法、装置、电子设备及计算机存储介质
CN113099232B (zh) * 2021-03-25 2024-01-19 杭州网易云音乐科技有限公司 视频解码方法、装置、电子设备及计算机存储介质
CN116325743A (zh) * 2021-06-28 2023-06-23 腾讯美国有限责任公司 基于扭曲的解码图片重采样辅助增强信息消息

Also Published As

Publication number Publication date
US10123027B2 (en) 2018-11-06
CN106105220B (zh) 2019-07-05
WO2015104451A1 (en) 2015-07-16
EP3092806A1 (en) 2016-11-16
EP3092806A4 (en) 2017-08-23
US20150304665A1 (en) 2015-10-22

Similar Documents

Publication Publication Date Title
CN106105220B (zh) 用于视频编码和解码的方法和装置
CN104813669B (zh) 用于视频编码的方法和装置
CN104604236B (zh) 用于视频编码的方法和装置
CN105981387B (zh) 用于处理视频的方法、装置和计算机可读存储介质
CN105531999B (zh) 涉及用于信号传输运动信息的语法的视频编码方法及装置
CN104396244B (zh) 用于视频编码和解码的装置、方法和计算机可读存储介质
CN104205819B (zh) 用于视频编码的方法和装置
CN105325003B (zh) 用于视频编码和解码的装置、方法
CN104521238B (zh) 用于3d视频编码的装置和方法
CN106464893B (zh) 用于视频编码和解码的装置、方法和计算机程序
CN105556965B (zh) 用于视频编码和解码的方法、装置和计算机程序产品
CN109155861A (zh) 用于编码媒体内容的方法和装置以及计算机程序
CN106464891B (zh) 用于视频编码和解码的方法和装置
CN104584549B (zh) 用于视频编码的方法和装置
CN105637878B (zh) 在视频译码中用于基于子解码图片缓冲器(sub-dpb)的dpb操作的传信
JP5916266B2 (ja) ビデオコーディング方法および装置
CN105308965B (zh) 用于3d视频编码的协调视图间和视图合成预测
CN105580373B (zh) 用于视频编码和解码的装置和方法
CN108702503A (zh) 用于视频编码和解码的装置、方法及计算机程序
CN108886620A (zh) 用于视频编码和解码的装置、方法及计算机程序
CN110419219A (zh) 用于视频编码和解码的装置、方法和计算机程序
JP6417039B2 (ja) 画像シーケンスのコーディングおよびデコーディングのための装置、方法およびコンピュータ・プログラム
CN104380749A (zh) 用于视频编码的方法和装置
CN106416250A (zh) 视频编码和解码
CN108293127A (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
GR01 Patent grant
GR01 Patent grant