CN107005715A - 图像序列编码和解码的装置、方法和计算机程序 - Google Patents

图像序列编码和解码的装置、方法和计算机程序 Download PDF

Info

Publication number
CN107005715A
CN107005715A CN201580065170.0A CN201580065170A CN107005715A CN 107005715 A CN107005715 A CN 107005715A CN 201580065170 A CN201580065170 A CN 201580065170A CN 107005715 A CN107005715 A CN 107005715A
Authority
CN
China
Prior art keywords
picture
sample
reference picture
pictures
identification symbol
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
CN201580065170.0A
Other languages
English (en)
Other versions
CN107005715B (zh
Inventor
V·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 CN107005715A publication Critical patent/CN107005715A/zh
Application granted granted Critical
Publication of CN107005715B publication Critical patent/CN107005715B/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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Abstract

一种用于用信令传递被编码在比特流中的图片序列的参考图片的方法,方法包括:将图片序列的图片分类为参考图片和非参考图片;向每个参考图片提供专用图片标识符;至少针对于图片序列的帧间编码的图片,确定图片标识符和至少一个参考图片标识符的所有专用组合,其中用于特定图片的至少一个参考图片标识符标识可以被用作用于预测特定图片的参考的所有图片;并且向帧内编码的参考图片至少分配其专用图片标识符,并向帧间编码的图片分配图片标识符和至少一个参考图片标识符的其对应的专用组合。

Description

图像序列编码和解码的装置、方法和计算机程序
技术领域
本发明涉及用于图像序列编码和解码的装置、方法和计算机程序。
背景技术
视频编解码器由编码器和解码器组成,该编码器将输入视频的图像转换成适合于存储/传输的压缩表示,解码器可将压缩的视频表示解压缩回可视形式。可以将图像序列压缩为用空间预测手段编码的静止图片序列或者用空间和时间预测手段编码的内部图片。传统上通过将序列表示为一系列独立编码的帧内图片来启用具有随机访问和支持编辑单独图片的图像序列。这样的格式包括例如Motion JPEG、动画GIF和H.264的帧内简档。
如果图像序列被表示为一系列静止图片,则编码效率通常较差,并且高分辨率序列的文件大小要求可能变得很大。为了访问预测图片,解码器需要得出哪些参考图片需要首先解码的结论。如果仅将被用作参考的图像解码,而不是从先前的IDR图片等开始解码所有图片,则可以显著地减小延迟。然而,在已知的方法中,对任何样本的随机访问可能需要从先前的IDR图片等开始解码所有参考图片,因为得出参考图片的哪个子集需要被解码的结论可能不容易。
因此,需要一种用于标识需要被解码的图片的改进方法以便正确地对期望的随机访问图片进行解码。
发明内容
根据第一实施例的方法包括用于信令传递(signaling)被编码在比特流中的图片序列的参考图片的方法,所述方法包括
将图片序列的图片分类为参考图片和非参考图片;
向每个参考图片提供专用图片标识符;
至少针对图片序列的帧间编码的图片,确定图片标识符和至少一个参考图片标识符的所有专用组合,其中用于特定图片的所述至少一个参考图片标识符标识可以被用作用于预测所述特定图片的参考的所有图片;以及
向帧内编码的参考图片至少分配其专用图片标识符,以及向帧间编码的图片分配其对应的、图片标识符和至少一个参考图片标识符的专用组合。
根据一个实施例,该方法还包括
针对帧内编码的参考图片分配具有与其专用图片标识符相同的值的参考图片标识符。
根据一个实施例,该方法还包括
向每个非参考图片提供共用图片标识符。
根据一个实施例,用于每个参考图片的专用图片标识符为非零正整数,并且用于非参考图片的共用图片标识符为零。
根据一个实施例,该方法还包括
为所述图片标识符和所述至少一个参考图片标识符的每个专用组合分配索引;以及
将图片序列的图片映射到与图片标识符和至少一个参考图片标识符的专用组合相对应的索引。
根据一个实施例,该方法还包括
在容器文件中指示所述映射,所述容器文件还包括或参考比特流。
根据一个实施例,容器文件符合ISO基本媒体文件格式(ISOBMFF),容器文件包括逻辑上包含样本的轨道,并且轨道的样本包括图片,该方法包括
在容器文件中包括作为样本组描述条目的图片标识符和至少一个参考图片标识符的专用组合,样本组描述条目被分配有相应的所述索引;以及
在容器文件中包括样本到组数据结构内的、图片被映射到样本组描述条目的相应的索引的指示。
第二实施例涉及包括至少一个处理器和至少一个存储器的装置,所述至少一个存储器上存储有代码,所述代码当由所述至少一个处理器执行时,使得该装置至少执行
将图片序列的图片分类为参考图片和非参考图片;
向每个参考图片提供专用图片标识符;
至少针对图片序列的帧间编码的图片,确定图片标识符和至少一个参考图片标识符的所有专用组合,其中用于特定图片的所述至少一个参考图片标识符标识可以被用作用于预测所述特定图片的参考的所有图片;
向帧内编码的参考图片至少分配其专用图片标识符,以及向帧间编码的图片分配其对应的、图片标识符和至少一个参考图片标识符的专用组合。
第三实施例涉及一种方法,包括:
接收包括针对用于解码图片序列的图片所需的参考图片的指示的信令(signaling);
确定针对用于帧内编码的参考图片的至少专用图片标识符和用于帧间编码的图片的图片标识符和至少一个参考图片标识符的专用组合的指示;以及
从用于特定的帧间编码的图片的至少一个参考图片标识符,确定由所述特定的帧间编码的图片参考的所有图片。
根据一个实施例,该方法还包括
获得用于随机访问所述特定的帧间编码的图片的请求;
解码由所述特定的帧间编码的图片参考的所有图片;
解码所述特定的帧间编码的图片。
第四实施例涉及包括至少一个处理器和至少一个存储器的装置,所述至少一个存储器上存储有代码,所述代码当由所述至少一个处理器执行时,使得该装置至少执行
接收包括针对用于解码图片序列的图片所需的参考图片的指示的信令;
确定针对用于帧内编码的参考图片的至少专用图片标识符和用于帧间编码的图片的图片标识符和至少一个参考图片标识符的专用组合的指示;以及
从用于所述特定的帧间编码的图片的所述至少一个参考图片标识符确定由所述特定的帧间编码的图片参考的所有图片。
附图说明
为了更好地理解本发明,现在将通过示例的方式参考附图,在附图中:
图1示意性地示出了采用本发明的一些实施例的电子设备;
图2示意性地示出了适用于采用本发明的一些实施例的用户设备;
图3进一步示出了采用本发明实施例的、使用无线网络连接和有线网络连接进行连接的示意性电子设备;
图4示意性地示出了适用于实现本发明的一些实施例的编码器;
图5显示了ISOBMFF框架结构的包含层次结构示例。
图6示出了根据本发明的实施例的用于信令传递需要用于对样本进行解码的参考样本的处理的流程图;
图7a和7b示出了以呈现顺序和以解码顺序的编码图像序列的示例;
图8示出了根据它们的sample_id以及reference_sample_id的列表列出图7a和7b的样本的表格,;
图9a示出了图7a和7b的样本的专用sample_id-reference_sample_id组合的列表;
图9b示出了根据本发明的实施例的样本到组盒中的样本到组描述索引的映射;
图10a和10b示出了以表示顺序和以解码顺序的编码图像序列的另一示例;
图11示出了根据它们的sample_id以及reference_sample_id的列表列出图10a和10b的样本的表格;
图12a示出了图10a和10b的样本的专用sample_id-reference_sample_id组合的列表;
图12b示出了根据本发明的实施例的样本到组盒中的样本到组描述索引的映射;
图13示出了适于实现本发明的一些实施例的解码器的示意图;以及
图14示出了根据本发明的实施例的用于确定对样本进行解码所需的参考样本的处理的流程图
具体实施方式
以下更详细地描述用于标识需要被解码的图片的合适的装置和可能机制以便正确地对期望的随机访问图片进行解码。在这方面,首先参考图1和图2,其中图1示出了根据示例实施例的视频编码系统的框图,作为示例性装置或电子设备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,其在本发明的实施例中可以以图像和音频数据的形式存储数据和/或还可以存储用于在控制器56上的实现的指令。控制器56还可以连接到适于执行音频数据和/或视频数据的编码和解码或辅助由控制器执行的编码和解码的编解码器电路54。
装置50还可以包括读卡器48和智能卡46,例如UICC和UICC读取器,用于提供用户信息并且适于提供用于网络上的用户的认证和授权的认证信息。
装置50可以包括连接到控制器并且适于生成例如用于与蜂窝通信网络、无线通信系统或无线局域网进行通信的无线通信信号的无线电接口电路52。装置50还可以包括连接到无线电接口电路52的天线44,用于将在无线电接口电路52处生成的射频信号发送到其他装置并用于从其他装置接收射频信号。
装置50可以包括能够记录或检测单个帧然后将其传送到编解码器54或控制器进行处理的相机。该装置可以在传输和/或存储之前接收来自另一设备的用于处理的视频图像数据。装置50还可以无线地或通过有线连接接收用于编码/解码的图像。
关于图3,示出了在其内可以利用本发明的实施例的系统的示例。系统10包括可以通过一个或多个网络通信的多个通信设备。系统10可以包括有线网络或无线网络的任何组合,包括但不限于无线蜂窝电话网络(诸如GSM、UMTS、CDMA网络等)、诸如由IEEE802.x标准的任一标准定义的无线局域网(WLAN)、蓝牙个人区域网络、以太网局域网、令牌环局域网、广域网和因特网。
系统10可以包括适于实现本发明的实施例的有线和无线通信设备或装置50。
例如,图3所示的系统示出了移动电话网络11和互联网28的表示。与互联网28的连接可以包括但不限于远程无线连接、短距离无线连接和各种有线连接包括但不限于电话线、电缆线、电源线和类似的通信路径。
系统10中示出的示例通信设备可以包括但不限于电子设备或装置50、个人数字助理(PDA)和移动电话14的组合、PDA16、集成消息设备(IMD)18、台式计算机20、笔记本计算机22。装置50可以是静止的或当由移动的个人携带时是移动的。装置50还可以位于运输模式中,包括但不限于汽车、卡车、出租车、公共汽车、火车、船、飞机、自行车、摩托车或任何类似的合适模式的运输。
实施例也可以在机顶盒(即,数字电视接收器,其可以/可以不具有显示或无线功能)中、在笔记本计算机或(膝上型)个人计算机(PC)(其具有的硬件或软件或编码器/解码器实现的组合)中、在各种操作系统中以及在提供基于硬件/软件的编码的芯片组、处理器、DSP和/或嵌入式系统中实现。
一些或其他装置可以发送和接收呼叫和消息,并且通过与基站24的无线连接25来与服务提供商进行通信。基站24可以连接到允许移动电话网络11和互联网28之间通信的网络服务器26。该系统可以包括附加通信设备和各种类型的通信设备。
通信设备可以使用各种传输技术进行通信,包括但不限于码分多址(CDMA)、全球移动通信系统(GSM)、通用移动电信系统(UMTS)、时分多址(TDMA)、频分多址(FDMA)、传输控制协议-互联网协议(TCP-IP)、短消息服务(SMS)、多媒体消息服务(MMS)、电子邮件、即时消息服务(IMS)、蓝牙、IEEE 802.11和任何类似的无线通信技术。涉及实现本发明的各种实施例的通信设备可以使用各种介质进行通信,包括但不限于无线电、红外线、激光、电缆连接以及任何合适的连接。
视频编解码器包括将输入视频转换成适合于存储/传输的压缩表示的编码器和可以将压缩视频表示解压缩回可视形式的解码器。通常,编码器丢弃原始视频序列中的一些信息,以便以更紧凑的形式(即,以较低的比特率)来表示视频。视频编码器也可以与视频解码器分开。换句话说,编码和解码可以由单独的实体执行,并且可以执行编码或解码。
典型的混合视频编解码器(例如ITU-T H.263和H.264的许多编码器实现)分两个阶段对视频信息进行编码。首先,例如通过运动补偿装置(发现并指示与正被编码的块紧密相对应的先前编码的视频帧中的一个的区域)或通过空间装置(以指定的方式使用要编码的块周围的像素值)来预测某一图片区域(或“块”)中的像素值。其次,该预测误差(即像素的预测块和像素的原始块之间的差)被编码。这通常是通过使用指定的转换(例如离散余弦转换(DCT)或其变体)转换像素值的差,量化系数,并对所量化的系数进行熵编码来进行。通过改变量化处理的保真度,编码器可以控制像素表示的精度(图片质量)和所得到的编码视频表示的大小(文件大小或传输比特率)之间的平衡。
也可以称为时间预测、运动补偿或运动补偿预测的帧间预测减少了时间冗余。在帧间预测中,预测源是先前所解码图片。帧内预测利用了相同图片中的相邻像素可能是相关的的事实。帧内预测可以在空间或转换域上被执行,即,可以预测样本值或转换系数。帧内预测通常在帧内编码中被利用,其中不应用帧间预测。
编码过程的一个结果是编码参数的集合,例如运动矢量和量化转换系数。如果许多参数首先从空间或时间上相邻的参数被预测,则可以更有效地对许多参数进行熵编码。例如,可以从空间相邻的运动矢量预测运动矢量,并且可以仅对相对于运动矢量预测器的差进行编码。编码参数的预测和帧内预测可以统称为图片中预测。
图4示出了适用于采用本发明的实施例的视频编码器的框图。图4示出了用于两层的编码器,但是应当理解,所呈现的编码器可以类似地扩展以对多于两个层进行编码。图4图示了包括用于基本层的第一编码器部分500和用于增强层的第二编码器部分502的视频编码器的实施例。第一编码器部分500和第二编码器部分502中的每一个可以包括用于对输入图像进行编码的相似元件。编码器部分500、502可以包括像素预测器302、402、预测误差编码器303、403和预测误差解码器304、404。图4还示出了像素预测器302、402的实施例,其包括帧间预测器306、406、帧内预测器308、408、模式选择器310、410、过滤器316、416和参考帧存储器318、418。第一编码器部分500的像素预测器302接收在帧间预测器306(其确定图像和运动补偿参考帧318之间的差异)和帧内预测器308(其仅基于当前帧或图片已经处理的部分来确定图像块的预测)处编码的视频流的基层图像300。帧间预测器和帧内预测器的输出被传递给模式选择器310。帧内预测器308可以具有多于一个的帧内预测模式。因此,每个模式可以执行帧内预测并将预测信号提供给模式选择器310。模式选择器310还接收基层图像300的副本。相应地,第二编码器部分502的像素预测器402接收在帧间预测器406(其确定图像和运动补偿参考帧418之间的差异)和帧内预测器408(其仅基于当前帧或图片的已处理部分来确定图像块的预测)两者处编码的视频流的增强层图像400。帧间预测器和帧内预测器两者的输出被传递给模式选择器410。帧内预测器408可以具有多于一个的帧内预测模式。因此,每个模式可以执行帧内预测,并将预测信号提供给模式选择器410。模式选择器410还接收增强层图像400的副本。
根据选择哪种编码模式来编码当前块,帧间预测器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可以过滤初步表示并输出可以保存在参考帧存储器318、418中的最终重建图像340、440。参考帧存储器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,当在第二求和设备339、439处与图像块312、412的预测表示进行组合时,其产生初步重建图像314、414。预测误差解码器可被认为包括:去量化器361、461,其去量化量化的系数值,例如DCT系数,以重建转换信号;以及逆转换单元363、463,其对重建的转换信号执行逆转换,其中逆转换单元363、463的输出包含重建块。预测误差解码器还可以包括块过滤器,该块过滤器可以根据进一步解码的信息和过滤器参数来对重建的块进行过滤。
熵编码器330、430接收预测误差编码器303、403的输出,并且可以对信号执行适当的熵编码/可变长度编码以提供错误检测和校正能力。熵编码器330,430的输出例如通过复用器508可被插入到比特流。
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)。
高效率视频编码(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)。HEVC的可扩展、多视图、三维和范围扩展的开发已经完成,并且这些扩展将作为H.265/HEVC版本2的一部分发布。目前正在进行标准化项目,以进一步扩展H.265/HEVC,包括三维和屏幕内容编码扩展。
本节中描述了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解码器的输出的基本单元是图片。作为编码器的输入给出的图片也可以称为源图片,并且由解码器解码的图像可以被称为解码图像。
源和解码图片各自由一个或多个样本阵列组成,诸如下列样本阵列集合中的一个:
-亮度(Y)(单色)。
-亮度和两个色度(YCbCr或YCgCo)。
-绿,蓝和红(GBR,也称为RGB)。
-表示其他未指定单色或三刺激颜色样本的数组(例如,YZX,也称为XYZ)。
在下文中,这些阵列可以被称为亮度(或L或Y)和色度,其中两个色度阵列可以被称为Cb和Cr;不管使用中的实际颜色表示方法如何。在使用中的实际颜色表示方法可以例如使用H.264/AVC和/或HEVC的视频可用性信息(VUI)语法在经编码的比特流中指示。组件可以被定义为来自三个样本阵列阵列(亮度和两个色度)一个的阵列或单个样本,或以单色格式构成图片的阵列或阵列的单个样本。
在H.264/AVC和HEVC中,图片可以是帧或场。帧包括亮度样本的矩阵,以及可能对应的色度样本。场是帧的交替样本行的集合,并且当源信号是隔行扫描时可以用作编码器输入。色度样本阵列可能不存在(因此可能使用单色样本),或者当与亮度样本阵列相比时,色度样本阵列可能被二次采样。色度格式可归纳如下:
-在单色样本中,只有一个样本阵列,其名义上被认为是亮度阵列。
-在4:2:0样本中,两个色度阵列中的每一个具有亮度阵列的一半高度和一半宽度。
-在4:2:2样本中,两个色度阵列中的每一个具有亮度阵列的相同的高度和一半的宽度。
-在4:4:4样本中,当不使用单独的色彩平面时,两个色度阵列中的每一个具有与亮度阵列相同的高度和宽度。
在H.264/AVC和HEVC中,可以将样本阵列作为单独的彩色平面编码到比特流中,并且分别从比特流解码单独编码的颜色平面。当使用单独的彩色平面时,它们中的每一个被单独处理(由编码器和/或解码器)作为具有单色样本的图片。
当色度子样本是在使用中(例如,4:2:0或4:2:2色度样本),色度样本关于亮度样本的位置可以在编码器侧被确定(例如,作为预处理步骤或编码的一部分)。关于亮度样本位置的色度样本位置可以例如在诸如H.264/AVC或HEVC的编码标准中被预先定义,或者可以被指示在比特流中例如作为H.264/AVC或HEVC的一部分。
划分可以被定义为将集合划分为子集,使得集合的每个元素恰好是子集中的一个。
在H.264/AVC中,宏块是亮度样本的16×16块和色度样本的对应块。例如,在4:2:0样本图案中,宏块包含每个色度分量的一个8×8色度样本块。在H.264/AVC中,将图像划分成一个或多个条带组,并且条带组包含一个或多个条带。在H.264/AVC中,条带由在特定条带组内的光栅扫描中连续排列的整数个宏块组成。
当描述HEVC编码和/或解码的操作时,可以使用以下术语。可以将编码块定义为针对N的一些值的样本的N×N个块,使得将编码树块划分成编码块是划分。编码树块(CTB)可以被定义为针对N的一些值的样本的N×N个块,使得将分量划分成编码树块是划分。编码树单元(CTU)可以被定义为亮度样本的编码树块,具有三个样本阵列的图片的亮度样本的两个对应的编码树块,或单色图片或使用三个单独的彩色平面和用于对样本进行编码的语法结构进行编码的图片的样本的编码树块。编码单元(CU)可以被定义为亮度样本的编码块,具有三个样本阵列的图片的色度样本的两个对应编码块,或单色图片或使用三个单独的彩色平面和用于对样本进行编码的语法结构进行编码的图片的样本的编码块。
在一些视频编解码器(诸如高效视频编码(HEVC)编解码器)中,视频图片被分为覆盖图片的区域编码单元(CU)。CU由定义在CU内针对样本的预测处理的一个或多个预测单元(PU)和定义针对所述CU中的样本的预测误差编码处理的一个或多个转换单元(TU)组成。通常,CU由具有可从预定义的可能CU尺寸集合中选择的尺寸的样本的方形块组成。具有最大允许尺寸的CU可以被命名为LCU(最大编码单元)或编码树单元(CTU),并且视频图片被分为不重叠的LCU。可以将LCU进一步分割为更小的CU的组合,例如通过递归地分割LCU和所得到的CU。每个所得到的CU通常具有至少一个PU和与其相关联的至少一个TU。每个PU和TU可以进一步分割成较小的PU和TU,以便分别增加预测和预测误差编码过程的粒度。每个PU具有与其相关联的预测信息,其定义要对该PU内的像素应用什么样的预测(例如,用于帧间预测PU的运动矢量信息和帧内预测PU的帧内预测方向性信息)。
在HEVC标准中,可以将图片划分成作为矩形并包含整数数量LCU的块(tile)。在HEVC标准中,划分为块形成规则网格,其中块的高度和宽度相互不同最大一个LCU。在HEVC中,条带被定义为包含在一个独立条带段以及在相同访问单元内的下一个独立条带段(如果有的话)之前的所有随后的依赖条带段(如果有的话)中的整数个编码树单元。在HEVC标准中,条带段被定义为在块扫描中连续排列且包含在单个NAL单元中的整数个编码树单元。每个图片划分成条带段是分区。在HEVC标准中,独立条带段被定义为其条带段首部的语法元素的值不从先前条带段的值推断的条带段,并且依赖条带段被定义为以解码顺序从前面的独立条带段的值推断条带段首部的一些语法元素的值的条带段。在HEVC标准中,条带首部被定义为作为当前条带段的独立条带段或者是当前依赖条带段之前的独立条带段的条带段首部,并且将条带段首部定义为包含与条带段中表示的第一或所有编码树单元有关的数据元素的编码条带段的一部分。如果不使用块,则以块内或图片内的LCU的光栅扫描顺序来扫描CU。在LCU中,CU具有特定的扫描顺序。
解码器通过应用与编码器类似的预测手段来重建输出视频,以形成像素块的预测表示(使用由编码器创建并存储在压缩表示中的运动或空间信息)和预测误差解码(在空间像素域中恢复量化的预测误差信号的预测误差编码的逆操作)。在应用预测和预测误差解码手段之后,解码器对预测和预测误差信号(像素值)求和,以形成输出视频帧。解码器(和编码器)还可以应用附加的过滤手段,以提高在将其传递用于显示和/或将其存储为用于视频序列中即将到来的帧的预测参考之前的输出视频的质量。过滤可以例如包括以下一项或多项:去块化、样本自适应偏移(SAO)和/或自适应环路过滤(ALF)。
在典型的视频编解码器中,运动信息由与每个运动补偿图像块相关联的运动矢量指示。这些运动矢量中的每一个表示要编码(在编码器侧)或解码(在解码器侧)的图片中的图像块和先前编码或解码图片的一个中的预测源块的位移。为了高效地表示运动矢量,这些通常关于块特定的预测运动矢量进行差分编码。在典型的视频编解码器中,以预定的方式创建预测运动矢量,例如计算相邻块的经编码或解码的运动矢量的中值。创建运动矢量预测的另一种方式是在时间参考图片中从相邻的块和/或共址的块生成候选预测的列表,并且信令传递选择的候选作为运动矢量预测器。除了预测运动矢量值之外,还可以预测哪些参考图片被用于运动补偿预测,并且该预测信息可以例如由先前编码/解码图像的参考索引表示。参考索引通常从时间参考图片中的相邻块和/或共址的块预测。此外,典型的高效率视频编解码器采用通常称为合并(merging)/合并(merge)模式的附加运动信息编码/解码机制,其中包括每个可用参考图片列表的运动矢量和对应参考图片索引的所有运动场信息在不需要任何修改/纠正的情况下被预测和被使用。类似地,预测运动场信息是使用时间参考图片中的相邻块和/或共址的块的运动场信息来执行的,并且在填充有可用的相邻/共址的块的运动场信息的运动场候选列表中信令传递给所使用的运动场信息。
典型的视频编解码器使得能够使用单一预测,其中单个预测块用于被编码的块和双预测,其中两个预测块被组合以形成用于被编码的块的预测。一些视频编解码器启用加权预测,其中在添加残差信息之前对预测块的样本值进行加权。例如,乘法加权因子和可以应用的附加偏移。在通过一些视频编解码器启用的显式加权预测中,加权因子和偏移可以例如在每个可允许的参考图片索引的条带首部中被编码。在由某些视频编解码器启用的隐式加权预测中,加权因子和/或偏移量不被编码,而是基于参考图片的相对图像顺序计数(POC)距离导出。
可以将用于第一图像的直接参考图片定义为参考图片,该参考图片是或可以被用作为第一图像内的预测的参考。可以将用于第一图像的间接参考图片定义为不用作第一图片内的预测的参考的参考图片,而是用于第一图片的直接或间接参考图片的直接参考图片。
在典型的视频编解码器中,运动补偿后的预测残差首先用转换核(如DCT)进行转换,然后进行编码。其原因在于,通常在残差和转换之间仍然存在一些相关性,在许多情况下有助于减少这种相关性并提供更高效的编码。
典型的视频编码器利用拉格朗日成本函数来找到最佳的编码模式,例如所需的宏块模式和相关的运动矢量。这种成本函数使用加权因子λ将由于有损编码方法导致的(精确或估计)图像失真和用于表示图像区域中的像素值所需的(精确或估计)信息量组合在一起:
C=D+λR, (1)
其中C是要被最小化的拉格朗日成本,D是考虑了模式和运动矢量的图像失真(例如均方误差),以及R是表示在解码器中重建图像块所需的数据所需的位数(包括表示候选运动矢量的数据量)。
视频编码标准和规范可以允许编码器将编码的图片划分为编码条带或类似的片段。通常跨条带边界禁用图片内预测。因此,条带可以被认为是将编码的图片分割成独立可解码片段的方式。在H.264/AVC和HEVC中,可以跨条带边界禁用图片内预测。因此,条带可以被认为是将编码的图片分割成可独立解码的片段的方式,因此片段通常被认为是用于传输的基本单元。在许多情况下,编码器可以在比特流中指示哪些类型的图片内预测在条带边界上被关闭,并且解码器操作例如在得出哪些预测源可用时考虑该信息。例如,如果相邻宏块或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单元的类型。在H.264/AVC中,NAL单元首部指示包含在NAL单元中的编码条带是参考图片还是非参考图片的一部分。
H.264/AVC NAL单元首部包括2比特nal_ref_idc语法元素,当等于0时,指示包含在NAL单元中的编码条带是非参考图片的一部分,并且当大于0时指示包含在NAL单元中的编码条带是参考图片的一部分。SVC和MVC NAL单元的首部可以另外包含与可扩展性和多视图层次结构有关的各种指示。
在HEVC标准中,两字节的NAL单元首部用于所有指定的NAL单元类型。NAL单元首部包含一个保留位、六位NAL单元类型指示、用于时间级别的三位nuh_temporal_id_plus1指示(可能需要大于或等于1)以及还可以被称为nuh_layer_id的六位保留字段。可以将temporal_id语法元素视为NAL单元的时间标识符,并且可以如下导出基于零的TemporalId变量:TemporalId=temporal_id_plus1–1。等于0的TemporalId对应于最低时间级别。temporal_id_plus1的值需要是非零,以便避免涉及两个NAL单元首部字节的开始代码仿真。六位保留字段(nuh_layer_id)被多层扩展用于携带可扩展性层次结构上的信息。
NAL单元可分为视频编码层(VCL)NAL单元和非VCL NAL单元。在H.264/AVC中,VCLNAL单元通常是编码的条带NAL单元,并且编码的条带NAL单元包含表示一个或多个编码宏块的语法元素,每个编码宏块对应于未压缩图片中的样本块。在HEVC中,VCL NAL单元包含表示一个或多个CU的语法元素。
在H.264/AVC中,编码条带NAL单元可以被指示为瞬时解码刷新(IDR)图片中的编码条带或非IDR图片中的编码条带。
在HEVC中,可以将VCL NAL单元指示为以下类型之一:
在HEVC标准中,图片类型的缩写可以定义如下:尾部(TRAIL)图片、时间子层访问(TSA)、逐步时间子层访问(STSA)、随机访问可解码前导(RADL)图片、随机访问跳过前导(RASL)图片、断开链接访问(BLA)图片、即时解码刷新(IDR)图片、清洁随机访问(CRA)图片。
也可以称为帧内随机接入点(IRAP)图片的随机接入点(RAP)图片是其中每个条带或条带段具有在16到23的范围(包括端点)内的nal_unit_type的图片。RAP图片仅包含帧内编码的条带,并且可以是BLA图片,CRA图片或IDR图片。比特流中的第一张图片是RAP图片。当需要激活必要的参数集时提供可用的必要参数集,能够以解码顺序对RAP图片和所有随后的非RASL图片进行正确解码,而无需以解码顺序对RAP图片之前的图片执行解码处理。比特流中可能只有仅包含不是RAP图片的帧内编码条带的图片。
在HEVC中,CRA图片可以是解码顺序中比特流中的第一图片,或者可以稍后在比特流中出现。HEVC中的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图片。
所有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图片,它们不会被解码器输出,并且可能不可解码,因为它们可能包含对在比特流中不存在的图片的参考。当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图片。
当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值的其他图片的可解码性。
尾部图片可以被定义为以输出顺序跟随关联的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图片能够实现(在解码顺序中)具有TemporalId等于N+1的所有后续图片的解码。TSA图片类型可以对TSA图片本身和在解码顺序中TSA图片之后的相同子层中的所有图片施加限制。这些图片中没有一个允许使用来自以解码顺序在TSA图片之前的相同子层中的任何图片的帧间预测。TSA定义可以进一步对以解码顺序在TSA图片之后的较高子层中的图片施加限制。如果该图片属于与TSA图片相同或更高的子层,则这些图片中的任何一个都不能被允许参考以解码顺序在TSA图片之前的图片。TSA图片具有大于0的TemporalId。STSA类似于TSA图片,但不对按照解码顺序跟随STSA图片的较高子层中的图片施加限制,因此只能上层切换到STSA图片驻留的子层上。
非VCL NAL单元可以是例如以下类型中的一个:序列参数集、图片参数集、补充增强信息(SEI)NAL单元、访问单元定界符、序列NAL单元结束、流NAL单元结束或填充数据NAL单元。可能需要解码图片的重建的参数集,而许多其它非VCL NAL单元对于解码的样本值的重建不是必需的。
通过编码的视频序列保持不变的参数可以被包括在序列参数集中。除了解码过程可能需要的参数之外,序列参数集可以可选地包含视频可用性信息(VUI),其包括可能对缓冲、图片输出定时、渲染和资源预留重要的参数。在H.264/AVC中指定了三个NAL单元以携带序列参数集:包含用于序列中H.264/AVC VCL NAL单元的所有数据的序列参数集NAL单元,包含用于辅助编码的图片的数据的序列参数集扩展NAL单元,以及针对MVC和SVC VCL NAL单元设置的子集序列参数。在HEVC标准中,序列参数集RBSP包括可由一个或多个图片参数集RBSP或包含缓冲周期SEI消息的一个或多个SEI NAL单元参考的参数。图片参数集包含几个编码的图片中可能不变的这些参数。图片参数集RBSP可以包括可以由一个或多个编码的图片的编码条带NAL单元参考的参数。
在HEVC中,可以将视频参数集(VPS)定义为包含适用于零或更多整个编码视频序列的语法元素的语法结构,其如由在每个条带段首部中找到的语法元素参考的PPS中发现的语法元素所参考的SPS中所发现的语法元素的内容所确定。
视频参数集RBSP可以包括可由一个或多个序列参数集RBSP参考的参数。
视频参数集(VPS)、序列参数集(SPS)和图片参数集(PPS)之间的关系和层次可以描述如下。VPS在参数集层次结构中以及可扩展性和/或3D视频的上下文中位于SPS的上一层。VPS可以包括在整个编码视频序列中跨所有(可扩展性或视图)层的所有条带共有的参数。SPS包括对于整个编码视频序列中的特定(可扩展性或视图)层中的所有片段共有并且可由多个(可扩展性或视图)层共享的参数。PPS包括对于特定层表示(一个访问单元中的一个可扩展性或视图层的表示)的所有条带是共用的并且可能被多层表示中的所有条带共享的参数。
VPS可以提供关于比特流中的层的依赖关系的信息,以及适用于整个编码视频序列中的所有(可扩展性或视图)层的所有条带的许多其它信息。在HEVC的多层扩展中,VPS可以例如包括从NAL单元首部导出的nuh_layer_id值到一个或多个可扩展性维度值的映射,例如对应于类似于SVC和MVC定义的层的dependency_id、quality_id、view_id和depth_flag。VPS可以包括用于一个或多个层的简档和级别信息以及用于层表示的一个或多个时间子层(由在某个temporal_id值处或在某个temporal_id值以下的VCL NAL单元组成)的简档和/或级别。
H.264/AVC和HEVC语法允许参数集的许多实例,并且每个实例都使用专用标识符进行标识。为了限制参数集所需的内存使用量,参数集标识符的值范围受到限制。在H.264/AVC和HEVC标准中,每个条带首部包括对包含条带的图片的解码有效的图片参数集的标识符,并且每个图片参数集包含有效序列参数集的标识符。因此,图片和序列参数集的传输不必与条带的传输精确地同步。相反,在被参考之前的任何时刻接收到有效序列和图片参数集就足够了,这允许使用比用于条带的协议更可靠的传输机制在“带外”来传输参数集。例如,在实时传输协议(RTP)会话的会话描述中可以包括作为参数的参数集。如果参数集在带内传输,则可以重复这些参数集,以提高误码鲁棒性。
参数集可以由来自条带或来自另一有效参数集或者在一些情况下由来自诸如缓冲周期SEI消息的另一语法结构的参考激活。
SEI NAL单元可以包含一个或多个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消息的过程。
编码的图片是图片的编码表示。H.264/AVC中的编码的图片包括图片解码所需的VCL NAL单元。在H.264/AVC中,编码的图片可以是主编码的图片或冗余编码的图片。主编码的图片在有效比特流的解码处理中使用,而冗余编码的图片是仅当主编码的图片不能被成功解码时才应当被解码的冗余表示。在HEVC中,没有指定冗余编码的图片。
在H.264/AVC中,访问单元包括主编码的图片和与其相关联的那些NAL单元。在H.264/AVC中,访问单元内的NAL单元的外观顺序被约束如下。可选的访问单元定界符NAL单元可以指示访问单元的开始。其后是零个或多个SEI NAL单元。接下来显示主编码的图片的编码条带。在H.264/AVC中,主编码的图片的编码条带之后可以是用于零个或多个冗余编码的图片的编码条带。冗余编码的图片是图片或图片的一部分的编码表示。如果主编码的图片例如由于传输损失或物理存储介质中的损坏而没有被解码器接收到,则可以对冗余编码的图片进行解码。
在H.264/AVC中,访问单元还可以包括辅助编码的图片,辅助编码的图片是补充主编码的图片的图片,并且可以例如在显示处理中使用。辅助编码的图片可以例如用作指定解码图片中的样本的透明度水平的α通道或α平面。α通道或平面可以用在分层组合物或渲染系统中,其中输出图片是通过重叠相互之间至少部分透明的图片来形成的。辅助编码的图片与单色冗余编码的图片具有相同的句法和语义限制。在H.264/AVC中,辅助编码的图片包含与主编码的图片相同数量的宏块。
在HEVC中,访问单元可以被定义为根据指定的分类规则彼此相关联的NAL单元的集合,在解码顺序中是连续的,并且恰好包含一个编码的图片。除了包含编码的图片的VCLNAL单元之外,访问单元还可以包含非VCL NAL单元。访问单元的解码总是导致解码图片。
在H.264/AVC中,编码视频序列被定义为在解码顺序中从IDR接入单元(包括)到下一个IDR接入单元(不包括)或到特流的末尾(出现较早的那个)连续访问单元的序列。在HEVC标准中,编码视频序列可以被定义为访问单元的序列,其以解码顺序包括作为比特流中的第一访问单元的CRA访问单元,IDR访问单元或BLA访问单元,随后是零个或多个非IDR和非BLA访问单元,其包括直到但不包括任何后续IDR或BLA访问单元的所有后续访问单元。
比特流可以被定义为以NAL单元流或字节流的形式形成构成一个或多个编码视频序列的编码的图片和相关联数据的表示的比特序列。第一比特流可以紧跟有在相同逻辑信道中的第二比特流,诸如在相同文件或通信协议的相同连接中,有时也称为相同的基本流。第一比特流的结束可以由特定NAL单元指示,其可以被称为比特流(EOB)NAL单元的结尾,并且是比特流的最后一个NAL单元。在HEVC及其当前草案扩展中,EOB NAL单元需要使nuh_layer_id等于0。
一组图片(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接入单元开始。因此,与开放GOP结构相比,封闭GOP结构具有更多的错误恢复潜能,然而以压缩效率的可能减速少为代价。由于在参考图片的选择上具有较大的灵活性,因此开放GOP编码结构在压缩中可能更高效。
H.264/AVC和HEVC包括图片顺序计数(POC)的概念。POC值针对每个图片被导出,并且以输出顺序增加图片位置而不减小。因此,POC指示图片的输出顺序。POC可以在解码过程中使用,例如用于在双重预测条带的时间直接模式中的运动矢量的隐式扩展,用于加权预测中的隐式导出加权,以及用于参考图片列表初始化。此外,POC可用于验证输出顺序一致性。在H.264/AVC中,POC相对于先前的IDR图片或者将包含将所有图片标记为“未用于参考”的存储器管理控制操作的图片来指定。
在H.265/HEVC中,当不使用多层扩展时,图片顺序计数编码(解码)和推导如下进行:
相对于具有NoRaslOutputFlag等于1的先前的IRAP图片指定POC。对于每个IDR图片、每个BLA图片、和作为解码顺序中比特流中的第一图片、在解码顺序中跟随在序列NAL单元结束的第一图片、或具有HandleCraAsBlaFlag等于1的每个CRA图片,NoRaslOutputFlag的值等于1。
POC值的最低有效位(LSB)的4到16位被编码为比特流和/或从每个图片的比特流(除了LSB以外的IDR图片)中解码。更具体地说,LSB由u(v)编码的slice_pic_order_cnt_lsb语法元素表示,该元素存在于条带段首部中(对于除了IDR图片之外的其他图片类型)。slice_pic_order_cnt_lsb语法元素的比特数由序列参数集语法结构中的ue(v)编码的log2_max_pic_order_cnt_lsb_minus4语法元素指定。在log2_max_pic_order_cnt_lsb_minus4中还如下指定了在图片顺序计数的解码过程中使用的变量MaxPicOrderCntLsb的值,如下所述:
MaxPicOrderCntLsb=2(log2_max_pic_order_cnt_lsb_minus4+4)
log2_max_pic_order_cnt_lsb_minus4的值在0到12的范围内,包括0和12。
信令传递的POC LSB用于确定当前图片的POC值小于还是大于在解码顺序中具有TemporalId等于0、并且不是RASL图片、RADL图片或子层非参考图片的先前图片的POC值。先前的图片在H.265/HEVC解码过程中被称为prevTid0Pic。
导出当前图片的图片顺序的PicOrderCntVal的解码过程如下:
当当前图片不是具有NoRaslOutputFlag等于1的IRAP图片时,变量prevPicOrderCntLsb和prevPicOrderCntMsb如下被导出:
-将prevTid0Pic作为在解码顺序中具有TemporalId等于0、且不是RASL图片、RADL图片或子图层非参考图片的先前图片。
-将变量prevPicOrderCntLsb设置为等于prevTid0Pic的slice_pic_order_cnt_lsb。
-将变量prevPicOrderCntMsb设置为等于prevTid0Pic的PicOrderCntMsb。
当前图片的变量PicOrderCntMsb被推导如下:
-如果当前图片是具有NoRaslOutputFlag等于1的IRAP图片,则PicOrderCntMsb设置为等于0。
-否则,PicOrderCntMsb推导如下:
if((slice_pic_order_cnt_lsb<prevPicOrderCntLsb)
&&((prevPicOrderCntLsb-slice_pic_order_cnt_lsb)>=
(MaxPicOrderCntLsb/2)))
PicOrderCntMsb=prevPicOrderCntMsb+
MaxPicOrderCntLsb
else if((slice_pic_order_cnt_lsb>prevPicOrderCntLsb)
&&((slice_pic_order_cnt_lsb-prevPicOrderCntLsb)>
(MaxPicOrderCntLsb/2)))
PicOrderCntMsb=prevPicOrderCntMsb–
MaxPicOrderCntLsb
else
PicOrderCntMsb=prevPicOrderCntMsb
PicOrderCntVal被推导如下:
PicOrderCntVal=PicOrderCntMsb+slice_pic_order_cnt_lsb
上述过程会具有所有IDR图片的PicOrderCntVal将等于0的影响,因为对于IDR图片推断slice_pic_order_cnt_lsb为0,并且prevPicOrderCntLsb和prevPicOrderCntMsb两者均设置为等于0。
函数PicOrderCnt(picX)被如下指定:
PicOrderCnt(picX)=PicOrderCntVal of the picture picX
函数DiffPicOrderCnt(picA,picB)被如下指定:
DiffPicOrderCnt(picA,picB)=PicOrderCnt(picA)-PicOrderCnt(picB)
在H.265/HEVC中,当没有多层扩展被使用时,要求PicOrderCntVal的值在-231到231-1的范围内,包含-231和231-1。在一个编码视频序列中,任何两个编码的图片的PicOrderCntVal值不同。此外,在H.265/HEVC中,需要比特流不包含导致在解码处理中使用的不在-215到215-1范围内(包括-215和215-1)的DiffPicOrderCnt(picA,picB)的值的数据。
H.264/AVC和HEVC的比特流语法指示特定图片是否是用于任何其他图片的帧间预测的参考图片。任何编码类型(I,P,B)的图片可以是H.264/AVC和HEVC中的参考图片或非参考图片。
H.264/AVC指定解码参考图片标记的过程,以便控制解码器中的存储器消耗。在序列参数集中确定用于帧间预测的参考图片的最大数量,称为M。当参考图片被解码时,它被标记为“用于参考”。如果参考图片的解码导致多于M个图片被标记为“用于参考”,则至少一个图片被标记为“不用于参考”。存在针对解码参考图片标记的两种类型的操作:自适应内存控制和滑动窗口。基于图片选择解码参考图片标记的操作类型。自适应存储器控制使得显式信令能够实现将哪些图片标记为“未被用于参考”,并且还可以将长期索引分配给短期参考图片。自适应存储器控制可能需要在比特流中存在存储器管理控制操作(MMCO)参数。MMCO参数可以被包括在解码的参考图片标记语法结构中。如果使用滑动窗口操作模式,并且存在标记为“用于参考”的M个图片,则作为被标记为“用于参考”的那些短期参考图片中的第一解码图片的短期参考图片被标记为“不用于参考”。换句话说,滑动窗口操作模式导致短期参考图片之间的先进先出缓冲操作。
H.264/AVC中的一个存储器管理控制操作使得除了当前图片之外的所有参考图片被标记为“未用于参考”。瞬时解码刷新(IDR)图片仅包含帧内编码的条带,并使得类似的参考图片“复位”。
在HEVC标准中,不使用参考图片标记语法结构和相关解码过程,而是使用参考图片集(RPS)语法结构和解码过程来代替类似的目的。对于图片有效或活动的参考图片集合包括用作对图片的参考的所有参考图片以及在解码顺序中针对任何后续图片被保持标记为“用于参考”的所有参考图片。参考图片集有六个子集,分别称为RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll。六个子集的标记如下。“Curr”是指包括在当前图片的参考图片列表中的参考图片,因此可以用作当前图片的帧间预测参考。“Foll”是指不包括在当前图片的参考图片列表中的参考图片,但可以在解码顺序中的后续图片中用作参考图片。“St”是指短期参考图片,通常可以通过其POC值的一定数量的最低有效位来识别。“Lt”是指长期参考图片,其具体被标识并且通常相对于当前图片具有比由所述一定数量的最低有效位表示的POC值更大的差异。“0”是指具有比当前图片的POC值更小的POC值的参考图片。“1”是指具有比当前图片的POC值更大的POC值的那些参考图片。RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0和RefPicSetStFoll1被统称为参考图片集的短期子集。RefPicSetLtCurr和RefPicSetLtFoll被统称为参考图片集的长期子集。
在HEVC标准中,参考图片集可以在序列参数集中被指定,并通过到参考图片集的索引在条带首部中被使用。也可以在条带首部中指定参考图片集。参考图片集的长期子集通常仅在条带首部中指定,而相同参考图片集的短期子集可以在图片参数集或条带首部中被指定。参考图片集可以被独立地编码,或者可以从另一个参考图片集合(称为RPS间预测)来预测。当参考图片集合被独立地编码时,语法结构包括对不同类型的参考图片迭代的多达三个循环;短期参考图片具有低于当前图片的POC值,短期参考图片具有高于当前图片和长期参考图片的POC值。每个循环条目指定要标记为“用于参考”的图片。一般来说,图片用差分POC值指定。RPS间预测利用了以下事实:可以从先前解码图片的参考图片集中预测当前图片的参考图片集。这是因为当前图片的所有参考图片是先前图片的参考图片或先前解码图片本身。只需要指示这些图片中的哪些应该是参考图片,并用于当前图片的预测。在两种类型的参考图片集合编码中,针对每个参考图片附加地发送一个标志(used_by_curr_pic_X_flag),其指示参考图片是由当前图片用于参考(包括在*Curr列表中)还是不由当前图片用于参考(包括在*Foll列表)。由当前条带使用的参考图片集中包括的图片被标记为“用于参考”,并且当前条带中使用的不在参考图片集中的图片被标记为“未用作参考”。如果当前图片是IDR图片,则RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll都设置为空。
解码图片缓冲器(DPB)可以在编码器和/或解码器中使用。缓冲解码图片有两个原因,用于帧间预测中的参考,并将解码图片重新排列成输出顺序。由于H.264/AVC和HEVC为参考图片标记和输出重排序提供了极大的灵活性,所以用于参考图片缓冲和输出图片缓冲的单独缓冲器可能浪费存储器资源。因此,DPB可以包括用于参考图片和输出重排序的统一解码图片缓冲处理。当DPB不再用作参考并且不需要输出时,解码图片可以从DPB中移除。
在H.264/AVC和HEVC的许多编码模式中,用于帧间预测的参考图片到用参考图片列表的索引指示。索引可以用可变长度编码来编码,其通常导致较小的索引对于相应的语法元素具有较短的值。在H.264/AVC和HEVC中,为每个双预测(B)条带生成两个参考图片列表(参考图片列表0和参考图片列表1),并且为每个帧间编码(P)条带形成一个参考图片列表(参考图片列表0)。
参考图片列表(诸如参考图片列表0和参考图片列表1)通常以两个步骤构成:首先,生成初始参考图片列表。可以例如基于frame_num、POC、temporal_id或关于诸如GOP结构的预测层级的信息或其任何组合来生成初始参考图片列表。第二,初始参考图片列表可以通过可能包含在条带首部中的参考图片列表重排序(RPLR)命令(也称为参考图片列表修改语法结构)重新排序。在H.264/AVC中,RPLR命令指示排序到相应参考图片列表开头的图片。该第二步骤也可以被称为参考图片列表修改处理,并且RPLR命令可以被包括在参考图片列表修改语法结构中。如果使用参考图片集,则可以将参考图片列表0初始化为首先包含RefPicSetStCurr0,后跟RefPicSetStCurr1,后跟RefPicSetLtCurr。参考图片列表1可以初始化为首先包含RefPicSetStCurr1,后跟RefPicSetStCurr0。在HEVC中,可以通过参考图片列表修改语法结构来修改初始参考图片列表,其中可以通过列表的条目索引来标识初始参考图片列表中的图片。换句话说,在HEVC中,参考图片列表修改被编码到包括在最终参考图片列表中的每个条目上的循环的语法结构,其中每个循环条目是对初始参考图片列表的固定长度编码索引,并且以最后参考图片列表中的升序位置顺序指示图片。
包括H.264/AVC和HEVC的许多编码标准可以具有解码过程,以导出到参考图片列表的参考图片索引,其可以用于指示多个参考图片中的哪一个用于特定块的帧间预测。在一些帧间编码模式中,参考图片索引可以由编码器编码到比特流中,或者在一些其他帧间编码模式中,其可以通过例如使用的相邻块导出(由编码器和解码器)。
为了在比特流中有效地表示运动矢量,运动矢量可以相对于块特定的预测运动矢量进行差分编码。在许多视频编解码器中,例如通过计算相邻块的经编码或解码的运动矢量的中值,以预定的方式创建预测的运动矢量。有时称为高级运动矢量预测(AMVP)的另一种创建运动矢量预测的方法是从时间参考图片中的相邻块和/或共址的块生成候选预测的列表,并信令传递所选择的候选作为运动矢量预测器。除了预测运动矢量值之外,还可以预测先前编码/解码图片的参考索引。参考索引通常从时间参考图片中的相邻块和/或共址的块预测。运动矢量的差分编码通常在条带边界上是禁用的。
诸如HEVC编解码器的许多高效率视频编解码器使用通常称为合并/合并模式/处理/机制的附加运动信息编码/解码机制,其中块/PU的所有运动信息被预测并使用,而不需要任何修改/校正。
可扩展视频编码是指其中一个比特流可以包含以不同比特率、分辨率或帧速率的内容的多个表示的编码结构。在这些情况下,接收机可以根据其特性(例如,与显示设备最佳匹配的分辨率)提取所需的表示。备选地,服务器或网络元件可以根据例如接收机的网络特性或处理能力来提取要发送到接收机的比特流的部分。可扩展比特流通常包括提供可用的最低质量视频的“基本层”和当与下层一起接收和解码时增强视频质量的一个或多个增强层。为了提高增强层的编码效率,该层的编码表示通常取决于较低层。例如,可以从下层预测增强层的运动和模式信息。类似地,较低层的像素数据可用于为增强层创建预测。
在一些可扩展视频编码方案中,视频信号可被编码为基本层和一个或多个增强层。增强层可以增强由另一层或其一部分表示的视频内容的时间分辨率(即,帧速率)、空间分辨率或简单的质量。每个层与其所有依赖层一起是以某种空间分辨率、时间分辨率和质量水平的视频信号的一个表示。在本文中,我们将可扩展层与所有依赖层一起称为“可扩展层表示”。可以提取和解码与可扩展层表示相对应的可扩展比特流的部分,以一定的保真度产生原始信号的表示。
一些编码标准允许创建可扩展的比特流。可以通过仅对可扩展比特流的某些部分进行解码来产生有意义的解码表示。可扩展比特流可以用于例如流传输服务器中的预编码单播流的速率适配和用于将单个比特流传输到具有不同能力和/或具有不同网络条件的终端。可以在2003年3月10日至14日在泰国芭堤雅的第64届MPEG会议ISO/IEC JTC1SC29WG11(MPEG)输出文档N5540“可扩展视频编码的应用和要求(Applications and Requirementsfor Scalable Video Coding)”中找到可扩展视频编码的其他用例的列表。
可用的媒体文件格式标准包括ISO基础媒体文件格式(ISO/IEC 14496-12,缩写为ISOBMFF)、MPEG-4文件格式(ISO/IEC 14496-14,也称为MP4格式)、AVC文件格式(ISO/IEC14496-15)和3GPP文件格式(3GPP TS 26.244,也称为3GP格式)。SVC和MVC文件格式被指定为对AVC文件格式的修改。ISO文件格式是推导所有上述文件格式(不包括ISO文件格式本身)的基础。这些文件格式(包括ISO文件格式本身)通常称为ISO系列文件格式。
ISO基础媒体文件格式的基本构建块称为盒(box)。每个盒都有一个首部和一个有效载荷。盒首部指示盒的类型和依据字节的盒的大小。盒可以包围其他盒,并且ISO文件格式指定在特定类型的盒内允许哪些盒类型。此外,每个文件中存在某些盒可能是必需的,而其他盒的存在可能是可选的。另外,对于某些盒类型,可能允许在文件中存在多于一个盒。因此,可以考虑ISO基础媒体文件格式来指定盒的层次结构。
根据ISO系列文件格式,文件包含封装在盒中的媒体数据和元数据。每个盒由四个字符代码(4CC)标识,并以首部开始,首部通知关于盒的类型和大小。图5显示了ISOBMFF盒结构的示例包含层次结构。
在示例实施例中,可以在媒体数据“mdat”盒中提供媒体数据,并且可以使用电影“moov”盒来封装元数据。在某些情况下,为了使文件可操作,可能需要存在“mdat”和“moov”两个盒。电影“moov”盒可以包括一个或多个轨道,并且每个轨道可以驻留在一个对应的轨道“trak”盒中。轨道可能是以下类型中的一个:媒体、提示、定时元数据。媒体轨道是指根据媒体压缩格式(以及其对ISO基本媒体文件格式的封装)格式化的样本。提示轨道是指提示样本,包含用于构建用于通过指示的通信协议传输的分组的食谱说明。食谱说明可以包括分组首部构建的指导,并且包括分组有效载荷构建。在分组有效载荷构建中,可以参考驻留在其他轨道或项目中的数据。因此,例如,驻留在其他轨道或项目中的数据可以通过参考来指示,参考关于特定轨道或项目中的哪条数据被指示在分组构造过程期间被复制到分组中。定时元数据轨道可以指代描述所涉及媒体的样本和/或提示样本。为了呈现一种媒体类型,通常选择一个媒体轨道。轨道的样本可能隐含地与指示的样本解码顺序中递增1的样本号相关联。轨道中的第一个样本可能与样本号1相关联。
根据ISO基本媒体文件格式的简化文件结构的示例可以描述如下。该文件可以包括“moov”盒和“mdat”盒,并且“moov”盒可以分别包括与视频和音频对应的一个或多个轨道。
根据ISO基本媒体文件格式格式化的许多文件以文件类型盒开始,也称为ftyp盒。ftyp盒包含标记文件的品牌的信息。Ftyp盒包括一个主要品牌指示和兼容品牌列表。主要品牌识别用于解析文件的最合适的文件格式规范。兼容品牌指示文件符合哪个文件格式规范和/或一致性点。文件可能符合多个规范。应列出指示与这些规范兼容的所有品牌,以便只能了解兼容品牌的一个子集的阅读者可以获得该文件可以被解析的指示。兼容品牌还可以为特定文件格式规范的文件解析器提供许可,以处理在ftyp盒中包含相同特定文件格式品牌的文件。文件播放器可以检查文件的ftyp盒是否包括它支持的品牌,并且只有文件播放器支持的任何文件格式规范列在兼容品牌之间,才能解析并播放文件。
符合ISOBMFF的文件可能包含元盒(fourCC:'meta')中的任何非定时元数据对象。元盒可以驻留在文件的顶层,在电影盒(fourCC:'moov')和轨道盒(fourCC:'trak')内,但是最多一个元盒可以在文件级别、电影级别或轨道级别中的每一个中出现。元盒可能需要包含“hdlr”盒,其指示“元”盒内容的结构或格式。元盒可以列出并表征可以被参考的任何数量的元数据项,并且它们中的每一个可以与文件名相关联,并且通过作为整数值的项目标识符(item_id)专用地标识。元数据项可以例如存储在元盒或mdat盒中或驻留在单独的文件中。如果元数据位于文件外部,那么它的位置可以由DataInformationBox(fourCC:'dinf')声明。在特定情况下,元数据使用XML语法格式化,并且需要直接存储在MetaBox中,元数据可以封装到XMLBox(fourCC:'xml')或BinaryXMLBox(fourcc:'bxml')中。
为了在层次结构的任何级别(文件、电影或轨道)支持多于一个元盒,可以将元盒容器盒('meco')用作一个ISO基本媒体文件格式。元盒容器盒可以在层次结构的任何级别(文件,电影或轨道)上携带任意数量的附加元盒。这可以允许例如相同的元数据被呈现在两个不同的、替代的元数据系统中。元盒关联盒('mere')可以使得能够描述不同的元盒如何相互关联,例如它们是否包含完全相同的元数据(但是用不同的方案描述),或者一个是否代表另一个的超集。
ISO基础媒体文件格式不限制呈现要包含在一个文件中。因此,可以在几个文件内包含呈现。作为示例,一个文件可以包括用于整个呈现的元数据,并且因此可以包括所有媒体数据以使该呈现独立。如果使用其他文件,则可能不需要将其格式化为ISO基本媒体文件格式,并可用于包括媒体数据,还可能包括未使用的媒体数据或其他信息。ISO基础媒体文件格式仅涉及呈现的结构。媒体数据文件的格式可能受到ISO基本媒体文件格式或其派生格式的约束,只因为媒体文件中的媒体数据按照ISO基本媒体文件格式或其派生格式进行格式化。
参考外部文件的能力可以通过数据参考来实现。在一些示例中,每个轨道中包括的样本描述“stsd”盒可以提供样本条目的列表,每个样本条目提供关于所使用的编码类型的详细信息,以及该编码所需的任何初始化信息。块(chunk)的所有样本和轨道片段的所有样本可以使用相同的样本条目。块可以被定义为轨道的连续的样本集合。也包括在每个轨道中的数据参考“dref”盒可以定义统一资源定位符(URL)、统一资源名称(URN))和/或包含元数据的文件的自参考的索引列表。样本条目可以指向数据参考盒的一个索引,从而指示包含相应块或轨道片段的样本的文件。
当将内容记录到ISO文件时,如果录制应用程序崩溃、内存空间不足或发生其他事件,可以使用电影片段以避免丢失数据。没有电影片段,可能会发生数据丢失,因为文件格式通常可能需要将所有元数据(例如电影盒)写入文件的一个连续区域。此外,当记录文件时,可能没有足够的存储空间量(例如,RAM)来缓冲可用存储空间大小的电影盒,并且当电影关闭时重新计算电影盒的内容可能太慢了。此外,电影片段可以使用常规的ISO文件解析器来同时录制和回放文件。最后,当使用电影片段,并且与具有相同媒体内容但没有电影片段构建的文件相比初始电影盒较小时,逐行下载可能需要较小的初始缓冲持续时间,例如同时接收和播放文件。
电影片段功能可以能够实现将传统上将驻留在电影盒中的元数据划分成多个部分。每一片可以对应于轨道的某个时间段。换句话说,电影片段特征可以能够够实现交织文件元数据和媒体数据。因此,电影盒的尺寸可能被限制,并且可以实现上述使用情况。
在一些示例中,像往常一样,电影片段的媒体样本可能驻留在mdat盒中,如果它们与moov盒在同一文件中。然而,对于电影片段的元数据,可以提供moof盒。moof盒可以包括先前已经在moov盒中的某一播放时间的持续时间的信息。moov盒可能仍然自己代表有效的电影,但另外,它可能包括一个mvex盒,指示电影片段将紧接着在相同的文件中。电影片段可以及时扩展与moov盒相关联的呈现。
在电影片段中,可能会有轨道段集合,包括每个轨道的从零到多个的任何地方。轨道段可以依次包括从零到多个轨道运行的任何地方,其中每一个文档是用于该轨道的连续运行的样本。在这些结构中,许多字段是可选的,并可以是默认的。可以包括在moof盒中的元数据可以被限制在可以包括在moov盒中的元数据的子集,并且在某些情况下可以被不同地编码。可以从ISO基础媒体文件格式规范中找到关于可以包括在moof盒中的盒的细节。
基于ISO基本媒体文件格式的样本分组及其衍生物(诸如AVC文件格式和SVC文件格式)可以被定义为基于分组标准来将轨道中每个样本分配为一个样本组的成员。样本分组中的样本组不限于连续样本,并且可以包含不相邻的样本。由于轨道中的样本可能有多于一个样本分组,每个样本分组都有用于指示分组的类型的类型字段。样本分组由两个链接的数据结构表示:(1)SampleToGroup盒(sbgp盒)表示样本对样本组的分配;和(2)SampleGroupDescription盒(sgpd盒)包含描述组的属性的每个样本组的样本组条目。基于不同的分组标准,可能有多个SampleToGroup和SampleGroupDescription盒的实例。这些通过用于指示分组类型的类型字段来区分。
样本组盒(SampleGroupDescription Box和SampleToGroup Box)驻留在样本表(stbl)盒内,其被包含在媒体信息(minf)、媒体(mdia)和电影(moov)盒子内的轨道(trak)盒内(按照该顺序)。SampleToGroup盒允许驻留在电影片段中。因此,样本分组可以逐片段地进行。
也可以被称为图像脉冲的图像序列可以用各种手段获得,或者可以用于各种目的,包括但不限于以下一项或多项:
-图像序列可以例如使用突发摄影等表示顺序捕获的图片。
-图像序列可以表示焦点堆栈、曝光堆栈等,其中相机可以被认为被保持为大致静止,并且捕获参数在图像序列的图像之间是不同的。
-图像序列可以表示相机已被移动(或诸如此类)的全景,并且在相机运动期间已经拍摄了在时间和/或平移方面的大约相等的远距离图片。
-图像序列可以表示动画或影片。影片可以被定义为其中发生次要和重复的运动的静止图片。
可以将图像序列压缩为用空间预测手段编码的静止图片序列或者用空间和时间预测手段编码的帧间图片。传统上通过将序列表示为一系列独立编码的帧内图片来启用具有随机访问和支持编辑单独图片的图像序列。这样的格式包括例如Motion JPEG、动画GIF和H.264的帧内简档。
如果图像序列被表示为一系列静止图片,则编码效率通常较差,并且高分辨率序列的文件大小要求可能变得很大。在序列被编码为具有时间预测的视频的情况下,对于序列需要如何被解码、当用户想要编辑序列中的一些图像时其可以如何被回放以及发布,存在严格的限制。
容器文件可以包含诸如媒体数据的内容和与内容有关的元数据。可以使用容器文件来识别和交织不同的数据类型。多媒体容器文件例如可以包含音频、视频和图像。多媒体容器文件可以用作多媒体内容生产、操作、传输和消费的链中使用的元素。在编码格式(也称为基本流格式或比特流格式)和容器文件格式之间可能存在实质性差异。编码格式可以涉及将内容信息编码为比特流的特定编码或压缩算法的动作。容器文件格式可以指定用于以使得其可以例如被访问用于本地解码和回放、作为文件传送或流传输(全部利用各种存储和传输架构)的方式来组织生成的一个或多个比特流的语法和语义。此外,文件格式可以促进媒体的交换和编辑以及将接收的实时流记录到文件。
ISO基础媒体文件格式指定用于定时媒体(如音频、视频和图文电视)的存储和传输的通用结构。最近,为了扩展ISOBMFF的功能,还发起了能够处理静止图像和图像序列的工作。为了能够实现图像序列的存储和传输,图像文件格式已经在ISO/IEC 23008-12(也称为MPEG-H Part 12)中定义,该定义基于ISO基础媒体文件格式。
ISO/IEC 23008-12中定义的格式能够实现使用高效率视频编码(HEVC)或任何其他图像或视频编解码器进行编码的图像的交换、编辑和显示以及与这些图像相关联的元数据的传送。图像文件格式建立在ISO基本媒体文件格式定义的工具上以定义单个图像、图像集合和图像序列的可互操作的存储格式。图像文件格式包括不限制用于对存储在文件中的图像进行编码的编解码器的结构品牌和需要将HEVC用于编码图像的基于HEVC的品牌。
通过图像文件格式支持使用HEVC视频编码器来编码静止图像,以覆盖单个图像的存储、独立编码图像的收集以及图像序列的存储,其中定时可选地使用在播放器和/或解码器处,并且其中图像可以取决其他图像。
符合图像文件格式的文件可以包括静止图像和图像序列两者,使得能够构造单个文件以满足各种需要(例如,用于打印的单个图像和用于合成该图像的图像突发的记录)。通常,静止图像支持用于诸如当既不需要定时也不需要图片间编码依赖性时的情况。如果需要来自可用于轨道的ISO基本媒体文件格式的定时或其他工具(例如,简单的动画图像),或者已经利用图片间编码依赖性对图像进行编码,则可以使用存储为轨道的图像序列。
为了图像序列的存储,使用ISOBMFF的轨道结构。然而,为了区分视频和图像序列,已经定义了叫做“pict”的新的句柄(handler)。样本(视觉访问单元)本身存储在“mdat”盒和/或与根据图像文件格式格式化的文件分离的一个或多个文件中。样本表盒'stbl'记录样本的位置、长度和解码顺序。编解码器特定的初始化信息被携带在在样本描述盒“stsd”中。
ISOBMFF及其派生规范被设计为适当地传输、编辑、解码和呈现定时的媒体内容。定时媒体内容与解码和呈现顺序相关联,并且使用ISOBMFF让客户端知道此命令。例如,所有编码样本以解码顺序存储,并且每个样本可以在媒体时间线中被给予专用的合成时间;如果组合时间与样本没有关联,则客户端可以隐含地假设解码时间也是合成时间。
编码图像序列的每个样本可以以一些最大可容忍的延迟来随机访问。一些样本可以是帧内编码的,而一些样本可以使用其他样本作为参考。当将预测编码用于被随机访问的样本时,在解码被随机访问的样本之前,必须对所有直接和间接参考样本进行解码。
在ISOBMFF中有称为独立和可自由使用样本的盒:'sdtp'盒。如果样本(a)取决于用于解码的其他样本(b)被其他样本用作参考,以及(c)是被编码的样本冗余,则针对每个样本盒进行记录。通过ISOBMFF规范被编制为文档的这个盒的使用是标识执行特技模式操作时可以独立解码的那些样本,或标识随机访问恢复点和滚动向前丢弃非参考样本直到需要呈现解码样本的时刻。随机访问任何样本不能保证仅使用其参考样本。
文件播放器可以被定义为解析、解码和渲染(例如显示)容器文件的软件、硬件或其组合。文件解析器(也可以被称为文件读取器)可以被定义为解析容器文件的结构的软件、硬件或其组合,并且可以为一个或多个解码器提供用于解码的媒体数据。
可以将文件记录器定义为捕获或获取媒体内容、将媒体内容编码为一个或多个比特流、并将一个或多个比特流封装到容器文件中的软件、硬件或其组合。文件创建器(也可以被称为文件写入器)可以被定义为将一个或多个比特流封装到容器文件中的软件、硬件或其组合。文件创建器可以附加地创建元数据并将元数据包括在容器文件中。
为了访问预测图像,解码器、文件播放器、文件解析器或其他实体需要得出结论,哪些参考图片首先被解码。如果仅将用作参考的那些图像被解码,而不是从先前的IDR图片等开始对所有图像进行解码,则可以显着减小延迟。
因此,期望引入改进的用于标识需要解码的图片以便正确地对期望的随机访问的图片进行解码的方法。
现在为了增强随机访问的实现,下面给出用于信令传递参考图片或包括参考图片的文件格式样本的改进方法。在下文中,术语样本用于指代文件格式样本,而不是图片的样本阵列的样本。
许多实施例包括以下各项:
-将标识符分配给至少每个参考图片;
-在文件中指示编号和帧间编码的图片的参考图片的标识符(如果有的话);
-将索引分配给标识符和编号以及帧间编码的图片的参考图片的标识符(如果有的话)的每个专用组合;
-在文件中指示图片到所述索引的映射。
许多实施例包括以下各项:
-从文件中解析图片到索引的映射;
-从所述文件解析与所述索引相对应的标识符和编号以及如果图片是帧间编码的图片的该图片的参考图片的标识符的组合;
-基于图片的参考图片的标识符来解析图片的参考图片。
一个实施例涉及一种用于信令传递将要编码在比特流中的图像序列的参考样本或等效地用于信令传递要被封装在容器文件中的编码图像序列的参考样本的方法,如图6所公开。该方法包括:将图像序列的样本分类为参考样本和非参考样本(600);向每个参考样本提供专用标识符(602);至少针对图像序列的帧间编码样本,确定针对图像序列的样本的样本标识符和至少一个参考样本标识符的所有专用组合(604),其中针对特定的样本标识符的至少一个参考样本标识符标识所有参考所述样本的样本;以及向帧内编码参考样本至少分配它们的专用标示符,并向帧间编码样本分配它们对应的、样本标识符和至少一个参考样本标识符的专用组合(606)。
根据一个实施例,帧内编码的参考图片可以被分配具有与其专用标识符相同值的参考样本标识符。
根据一个实施例,每个非参考样本可以被提供有共用标识符。
备选地,为每个参考样本提供专用标识符并为每个非参考样本提供共用标识符,该方法可以包括向每个样本提供样本是参考样本还是非参考样本的指示,并且向每个参考样本提供专用标识符。
因此,上述过程能够仅标识用作用于对预测图像样本进行解码的参考的那些样本,从而提供紧凑的机制来向文件读取器通知需要解码的样本,以对图像序列中的任何样本进行解码。这进而能够实现随机访问编码图像序列的任何样本。
根据一个实施例,参考样本包括帧内编码样本和/或帧间编码参考样本。从图像序列的角度来看,样本可以分为四类:(a)帧内编码参考样本,(b)帧内编码非参考样本,(c)帧间编码参考样本,(d)帧间编码非参考样本。帧内编码参考样本不需要任何其他样本进行解码,为了其被正确解码。帧间编码参考样本在解码之前需要至少一个帧内编码参考样本或至少一个帧间编码参考样本被解码。帧内编码的非参考样本与帧内编码参考样本相似,除了它们本身不用作任何其他样本的参考。帧间编码的非参考样本与帧间编码参考样本相似,除了它们本身不用作任何其他样本的参考。
帧内编码的参考样本和帧内编码的非参考样本两者均形成了一种特殊情况,即它们不需要对任何其他样本进行解码来用于它们被正确解码。这提供了在信令中如何处理帧内编码参考样本和帧内编码非参考样本的各种选项。
如上所述,帧内编码参考样本可以仅被提供有它们的专用标识符,或者备选地还具有与其专用标识符具有相同值的参考样本标识符。
根据一个实施例,帧内编码的非参考样本不包括在信令中。由于帧内编码的非参考样本不用作任何其他样本的参考,因此可以从信令中省略它们。
根据备选实施例,帧内编码非参考样本被包括在信令中,使得它们被提供与其他非参考样本相同的共用标识符。根据另一实施例,帧内编码非参考样本没有提供任何参考样本标识符。
在一些实施例中,所有帧内编码的样本被视为参考样本,因此帧内编码的样本和帧间编码的参考样本两者均可以被认为是参考样本。
根据一个实施例,每个参考样本的专用标识符是正非零整数,并且非参考样本的共用标识符为零。这提供了明确地识别参考样本并且用于区分参考样本与非参考样本的直接方法。
根据一个实施例,对于帧内编码样本,样本标识符和参考样本标识符相同。
根据一个实施例,该方法还包括:从在所有帧内编码样本和帧间编码参考样本都可以用不同标识符值分配的范围内的整数值的池中确定每个参考样本的专用标识符。因此,可以基于图像序列中的参考样本的数量来确定整数值的范围,使得可以专用地识别图像序列的所有参考样本;即,不允许相同轨道中的两个参考样本具有相同的样本标识符值。在一些实施例中,文件可以仅包括一个图像序列,并且因此可以专用地识别包括在文件中的所有参考样本。
根据一个实施例,该方法还包括为样本标识符和至少一个参考样本标识符的每个专用组合分配索引;以及将样本映射到与样本标识符和所述至少一个参考样本标识符的它们的组合相对应的索引。本文注意到,多于一个非参考样本可以具有样本标识符和至少一个参考样本标识符的相同组合,并且因此可以将多于一个样本映射到相同的索引。
根据一个实施例,该方法还包括在容器文件中指示所述映射,该容器文件也包括或参考比特流。
根据一个实施例,容器文件格式符合ISO基本媒体文件格式(ISOBMFF),容器文件包括逻辑上包括样本的轨道,并且轨道的样本包括图片,该方法包括:
在容器文件中包括图片标识符和零个或多个参考图片标识符的专用组合作为样本组描述条目,样本组描述条目被分配有相应索引;以及
在容器文件中包括将图片映射到样本组描述条目的相应索引的样本到组数据结构内的指示。
ISOMBFF提供了可以在该实施例中使用的样本分组机制。它能够以两个链接的盒数据结构的形式实现样本分组机制:(a)SampleToGroupBox,和(b)SampleGroupDescriptionBox。SampleToGroup盒表示样本到样本组的分配,SampleGroupDescription盒包含描述组的属性的每个样本组的样本组描述条目。
根据一个实施例,为ISOBMFF定义了一个新的视觉样本组条目,其可以被称为ReferencedSamplesList('refs')。该样本组条目至少包括以下字段:(a)样本标识符,其可以例如具有语法元素名称sample_id,和(b)参考样本标识符的列表,其可以例如具有语法元素名称reference_sample_id。如上所述,图像序列中的所有参考样本都被给予非零正整数标识符。参考其他样本的非参考样本被分配一个共用标识值为零。reference_sample_id值的列表是具有sample_id的样本参考的sample_id值的列表。在一些实施例中,reference_sample_id值的列表还可以包括当前样本的sample_id值,并且因此对于帧内编码的参考样本,仅将一个值编码到reference_sample_id列表中,并且该值与所述帧内编码参考样本的sample_id相同。
在一个实施例中,为了实现参考样本和非参考样本的指示作为ISO基本媒体文件格式,文件创建器编译sample_id和reference_sample_id列表的所有专用组合,专用组合的值排序在‘refs’样本组条目中,并且'refs'样本组条目作为列表插入到'refs'样本组描述盒中。然后使用样本到组盒将图像序列中的每个样本映射到适当的样本组条目。在一些实施例中,非参考帧内编码的样本将不属于该样本组条目列表中的任何条目,因此将其group_description_index值设置为零。
'refs'样本组描述条目的语法和语义可以被实现,例如如下:
应当理解,可以使用相似或等效的语法结构来类似地实现其他实施例。例如,在其他实施例中,语法元素长度可以被改变,例如从unsigned int(32)到unsigned int(64)。
语义
sample_id:该字段的值可能需要为正整数。当参考样本描述组条目的样本是参考样本时,该字段的值可能需要为非零正整数。当属于该组的样本是非参考图片时,该字段的值可能需要为零。
num_referenced_samples:用于解码预测样本所需的直接参考样本数。对于作为帧内编码样本集合的组,该字段的值应设置为1。
reference_sample_id:该字段的值应设置为属于此组的样本从其预测的直接参考样本的sample_id值。记录帧内编码参考样本的样本组条目应将该值设置为与该样本组条目中sample_id记录的值相同的值。
备选地,num_referenced_samples和reference_sample_id的语义可以指定如下:
num_referenced_samples:对预测样本进行解码所需的直接参考样本数。对于帧内编码的样本,num_referenced_samples为0。
reference_sample_id:该字段的值应设置为属于此组的样本从其预测的直接参考样本的sample_id值。
在以下示例中更详细地图示了'refs'样本分组的使用。
图7a示出了编码图像序列,其中样本以呈现顺序示出。样本之间的预测依赖性由箭头指示。图中的“I”表示样本是帧内编码的,而“P”表示样本是从单个参考样本预测的。例如,样本P1、P2和P3从帧内编码样本I0预测,其因此是样本P1、P2和P3的参考样本。样本P5、P6和P7进而从帧内编码的样本I4预测,其在样本P5、P6和P7之后具有呈现顺序,但仍然是样本P5、P6和P7的参考样本。图7b示出了已经考虑了预测依赖性的解码顺序中的编码图像序列。
编码图像序列的样本被分类为参考样本(即样本{I0,I4})和非参考样本(即{P1,P2,P3,P5,P6,P7})。应用上述规则,所有参考样本都被赋予专用标识符,所有非参考的帧间编码样本的标识符都设置为零。在该示例中,参考样本的正非零标识符从101开始。因此,使用用于设置标识符的规则,样本/样本标识符对为:
{(I0,101),(I4,102),(P1,0),(P2,0),(P3,0),(P5,0),(P6,0),(P7,0)}.
接下来,使用用于构建reference_sample_id列表的规则,首先需要考虑的是帧内编码样本的reference_sample_id值与sample_id本身相同的情况。因此,此序列中帧内编码样本的样本/reference_sample_id列表对集合为:
{(I0,101),(I4,102)}.
对于所有其他示例,reference_sample_id记录它参考的样本。因此,其余样本的样本/reference_sample_id列表对集合是:
{(P1,101),(P2,101),(P3,101),(P5,102),(P6,102),(P7,102)}.
在图8的表格中对上文进行总结,其中样本以编码/解码顺序中它们的序列号、样本的类型、与样本相关联的sample_id以及每个样本的reference_sample_id的列表列出。
从该列表中,可以确定针对图像序列的样本的样本标识符和的至少一个参考样本标识符的所有专用组合。图8的表包括四个专用sample_id/reference_sample_id组合:{(101,101),(0,101),(102,102),(0,102)}。
将sample_id/reference_sample_id列表对的专用组合作为可视样本组条目'ref'的列表被收集并被插入到为条目提供索引(Idx)的样本组描述盒中。图9a的表示出了在样本组描述盒中被编码为“refs”条目的四个专用sample_id-reference_sample_id组合的列表。最后,所有样本被分配有样本标识符和至少一个参考样本标识符的对应专用组合。图9b图示了图像序列中的样本到记录在构建的‘refs’样本组中的样本组条目的组描述索引的映射。
图10a示出了以呈现次序示出样本的另一编码图像序列。除了帧内编码的“I”样本和单个参考“P”样本之外,图像序列包括“B”样本,其从两个参考样本被编码为双预测。这里,从帧内编码样本I0预测样本P1和P2,然后从帧内编码样本I3预测样本P4和P7,并且从样本P2和P4双向预测样本B5和B6两者。图10b示出了已经考虑了预测依赖性的解码顺序中的编码图像序列。
编码图像序列的样本被分类为参考样本(即帧内编码样本{I0,I3}和帧间编码参考样本{P2,P4})和非参考样本(即{P1,B5,B6,P7})。应用上述规则,所有参考样本都被赋予专用标识符,并且所有非参考的帧内编码样本的标识符都设置为零。再一次在此示例中,参考样本的正非零标识符从101开始。应用上述规则集,样本/sample_id对的集合为:
{(I0,101),(P1,0),(P2,102),(I3,103),(P4,104),(B5,0),(B6,0),(P7,0)}.
样本的sample-reference_sample_id列表对集合是:
{(I0,101),(P1,101),(P2,101),(I3,103),(P4,103),(B5,[102,104]),(B6,[102,104]),(P7,103)}.
在图11的表中总结了该信息,其中以编码/解码顺序中它们的序列号、样本类型、与样本相关联的sample_id以及每个样本的reference_sample_id列表列出样本。
从该列表中,可以确定对于图像序列的样本的样本标识符和至少一个参考样本标识符的所有专用组合。图11的表包括七个专用sample_id/reference_sample_id组合:{(101,101),(0,101),(102,101),(103,103),(104,103),(0,[102,104]),(0,103)}。
再次,将sample_id/reference_sample_id列表对的专用组合收集为可视样本组条目'ref'的列表并插入到提供条目的索引(Idx)的样本组描述盒中。图12a的表示出了在样本组描述盒中被编码为‘refs’条目的七个专用sample_id-reference_sample_id组合的列表。最后,所有样本被分配有样本标识符和至少一个参考样本标识符的对应专用组合。图12b图示了图像序列中的样本与在构建的‘refs’样本组中记录的样本组条目的组描述索引的映射。
该方法可以多种方式实现。例如,显而易见的是,所描述的处理步骤可以以不同的顺序执行。此外,可以存在一种或多种方式来指示参考图片和/或非参考图片。还可以有一种或多种方式使解码过程将图像当作参考图片和/或非参考图片。
另一实施例描述了当解码器接收到编码比特流时的操作。图13示出了适用于采用本发明的实施例的视频解码器的框图。图13描绘了双层解码器的结构,但是应当理解,解码操作可类似地用于单层解码器。
视频解码器550包括用于基本视图组件的第一解码器部分552和用于非基本视图组件的第二解码器部分554。框556图示了用于将关于基本视图分量的信息传送到第一解码器部分552并用于将关于非基本视图分量的信息传送到第二解码器部分554的解复用器。参考P'n表示图像块的预测表示。参考D'n代表重建的预测误差信令。框704,804示出了初步重建图像(I'n)。参考R'n代表最终的重建图像。框703,803示出了逆转换(T-1)。框702,802示出了逆量化(Q-1)。框701,801示出熵解码(E-1)。块705,805示出了参考帧存储器(RFM)。框706,806示出了预测(P)(帧间预测或帧内预测)。块707,807示出了过滤(F)。块708,808可以用于将解码的预测误差信息与预测的基本视图/非基本视图分量组合以获得初步重建图像(I'n)。可以从第一解码器部分552输出709初步重建和过滤的基本视图图像,并且可以从第一解码器部分554输出809初步重建和过滤的基本视图图像。
这样的解码操作可以如常规已知的那样进行。然而,在开始编码图像序列中的样本的解码之前,文件读取器优选地确定从信令中解码样本所需的参考样本。在图14所示的这种方法中,针对帧内编码参考样本确定至少专用样本标识符,并且针对帧间编码的样本确定样本标识符和至少一个参考样本标识符的专用组合的指示(1400),并且从用于特定的帧间编码的样本的所述至少一个参考样本标识符中,确定由所述帧间编码的样本参考的所有样本(1402)。
可以通过参考图10-12中描述的示例来说明文件读取器确定从信令中解码样本所需的参考样本的过程。让我们考虑示例中的样本B5。B5已经通过样本到组盒的group_description_index(Idx=6)被映射到'refs'样本组的第六个条目。此'refs'样本组条目的字段确定sample_id=0和reference_sample_id列表=[102,104]。从字段sample_id=0的值可以得出结论,属于该组的样本不被用作图像序列中的任何其他样本的参考。reference_sample_id列表给出了对样本B5进行解码所需的样本的直接参考,即具有sample_id值102和104的样本。文件读取器然后继续检查sample_id=102的样本组描述盒,并找到sample_id 101在sample_id 102的reference_sample_id列表中。该sample_id被添加到对样本B5进行解码所需的sample_id列表中,现在列表是[101,102,104]。由于reference_sample_id列表(101)的值与sample_id(101)的值相同,所以文件读取器得出结论,这是一组帧内编码的样本,并且在该路径中不需要搜索其他参考样本。
文件读取器还检查sample_id 104的样本组描述盒,并发现它参考了sample_id103,它被添加到对样本B5进行解码所需的sample_ids列表中。文件读取器再次得出结论,这是一组帧内编码样本(因为reference_sample_id列表与sample_id相同),并停止搜索其他参考样本。该组要解码的样本列表现在是列表中具有sample_id[101,102,103,104]的样本。通过具有这些sample_id的group_description_index映射到'refs'样本组的条目的样本都是样本B5的直接和间接参考图片。换句话说,为了解码B5,需要对样本{I0,P2,I3和P4}进行解码。
解码器还可以被布置为如上所述对关于解码顺序、显示顺序或解码顺序和显示顺序的组合的指示进行解码,并且被布置为控制解码器和包括解码器的装置的操作,以相应地构造解码图像序列。
有向非循环图可以被定义为没有有向循环的有向图。有向非循环图可以被认为是通过顶点和有向边的集合形成的,每个边将一个顶点连接到另一个顶点,使得没有办法在某个顶点v处开始并且遵循最终再次循环回到v的边的序列。
根据一个实施例,可以例如由文件创建器实现的方法可以根据图像序列的图片的帧间预测依赖性来形成有向非循环图。节点(即顶点)表示图片,并且有向边表示针对在有向边的源中预测和在有向边的目的地中的预测的与参考图片的预测依赖性。每个帧内编码的图片是根节点。该图可以是森林,即可以由多于一个树组成。该方法可以为每个节点分配分支标识符。可以首先分配解码顺序中的第一图像的分支标识符,并且可以按解码顺序为每个图像分配分支标识符。
参考图片的分支标识符值可以如下确定:
-如果参考图片refPicA在帧间预测中参考彼此具有相同的分支标识符值的参考图片refPicSetA,并且如果在解码顺序中没有后续图像,则其参考参考图片refPicSetA中的至少一些,但不参考refPicA,将refPicA的分支标识符值设置为等于参考图片refPicSetA的分支标识符值。
-否则,refPicA的分支标识符值被分配先前未分配或未使用的值。
非参考图片的分支标识符值可以如下确定:
-如果非参考图片nonRefPicA参考参考图片refPicSetB,并且以解码顺序存在参考相同的参考图片refPicSetB的较早的非参考图片nonRefPicB,则将非参考图片nonRefPicA的分支标识符值设置为等于非参考图片nonRefPicB的分支标识符值。
-否则,nonRefPicA的分支标识符值被分配先前未分配或未使用的值。
根据一个实施例,该方法还包括为分支标识符的每个专用组合分配索引以及指示参考图片或非参考图片的标志(flag)。备选地,该方法还包括为每个专用分支标识符分配索引,并且该方法还包括针对指示参考和非参考图片的比特流将元数据进行编码或写入容器文件中。
根据一个实施例,容器文件格式是ISO基本媒体文件格式(ISOBMFF),其中输出图片用样本分组机制指示,使得使用ISOMBFF的轨道结构来存储图像的序列或集合。
根据一个实施例,为ISOBMFF定义了一个新的视觉样本组条目,其可以被称为依赖关系树('dptr')。该样本组条目包括至少以下字段:(a)分支标识符,其可以例如具有语法元素名称branch_id;(b)参考分支标识符值的列表(例如,具有语法元素名称reference_branch_id),其标识可用作映射到该样本组描述条目的图片的参考的图片;(c)标志,其可以例如具有语法元素名称ref_pic_flag,指示映射的样本是否是参考图片。
在一个实施例中,为了实现参考样本和非参考样本作为ISO基本媒体文件格式的指示,文件创建器编译类型“dptr”的所有专用样本组描述条目,并且将“dptr”样本组条目作为列表插入“dptr”样本组描述盒中。然后使用样本到组盒将图像序列中的每个样本映射到适当的样本组条目。在一些实施例中,非参考帧内编码的样本将不属于该样本组条目列表中的任何条目,并且因此将其group_description_index值设置为零。
'dptr'样本组描述条目的语法可以被实现,例如如下:
应当理解,其他实施例可以使用相似或等效的语法结构来类似地实现。例如,在其他实施例中,语法元素长度可以被改变。在另一示例中,可以称为first_sample_flag的另一个标志被包括在样本组描述条目语法中,并且只有在first_sample_flag等于1时才存在num_references和reference_branch_id,并且在解码顺序中只有具有特定的branch_id值的第一个样本映射到first_sample_flag等于1的样本组描述条目。
在一个实施例中,可以例如在文件播放器中实现的方法包括以下内容以执行对特定图像的随机访问,即,从没有更早的图像被解码的情况或者当解码已被重新发起时开始对特定图片进行解码。
首先,如果样本是同步样本,则立即对其进行解码,且不需要进一步的处理。否则,基于存储在文件中的信息,例如通过找到对应于样本(即对应于特定图片)的样本组描述索引(类型“dptr”的分组的),对特定图片的分支标识符和ref_pic_flag(或类似)作出结论。从样本组描述索引中,从用于对“dptr”类型进行分组的样本组描述盒来定位对应的样本组描述条目。从样本组描述条目,找到分支标识符和ref_pic_flag(或类似)。
其次,通过调查“dptr”类型的样本分组的样本组描述条目来导出用于要解码的参考图片的branch_id值decBranchIdList的列表。随机访问图片的branch_id首先包括在列表decBranchIdList中。用作为随机访问图片的branch_id值的初始输入,递归地执行以下过程:
-对样本组描述条目进行调查。对于具有reference_branch_id等于作为过程的输入给出的branch_id值的每个样本组描述条目,作为过程的输入给出的branch_id值被包括在decBranchIdList中(除非它已经存在于decBranchIdList中),并且通过给出发现的样本组描述条目的branch_id值作为输入的branch_id值来递归地重复该过程。
第三,对在解码顺序中的随机访问样本之前的、和映射到等于列表DecBranchIdList中的值的branch_id值(使用'dptr'样本分组)的所有参考样本进行解码。之后,随机访问的样本被解码。
在可以与任何其它实施例一起或独立于任何其它实施例应用的一个实施例中,存在一种方法,包括:
-确定或获得用于图像序列的帧间预测图案,其中所述帧间预测图案提供哪些图片是帧内编码、哪些图片是帧间编码、哪些图片是参考图片、哪些图片是非参考图片、以及哪些图片可以被用作预测帧间编码的图片的参考的信息,并且其中如果要编码的图片数量大于图案的长度,则重复该图案;和
-选择用于编码的参数,使得能够以所提取的比特流是一致的方式从编码的比特流中连同其直接参考图片和间接参考图片提取任何图片。
在一个实施例中,当其解码得到与当对整个比特流进行解码时相应的解码样本相同的样本值(即,像素值),并且当对提取的比特流进行解码时的图片的输出顺序与当对整个比特流被解码时的相应图片的输出顺序相同时,可以认为提取的比特流是一致的。
在一个实施例中,可以以例如由HEVC的序列参数集合的log2_max_pic_order_cnt_lsb_minus4语法元素表示的最大POC值或等价的POC周期长度以在对提取的比特流进行解码时任何图片的POC与当对整个比特流进行解码时的相应图片的POC相同的方式来设置。
在一个实施例中,该方法还包括用第一指示指示所提取的比特流是一致的,其中所提取的比特流是通过从编码的比特流连同其直接参考图片和间接参考图片中提取任何图片来形成的。
在一个实施例中,所述第一指示被包括在容器文件中,该容器文件还包括或指代编码比特流。
在一个实施例中,如其他实施例中所述,所述第一指示是图像序列的信令参考样本。当如在其他实施例中所述的文件中存在图像序列的信令参考样本时,还强制所提取的比特流是一致的,其中所提取的比特流是通过从编码的比特流连同其直接参考图片和间接参考图片中提取任何图片形成的。
在一个实施例中,如其他实施例中所述,所述第一指示是图像序列中图片的分支标识符和参考分支标识符的信令。当图像序列中的图片的信令分支标识符和参考分支标识符存在于文件中时,也强制所提取的比特流一致,其中所提取的比特流是通过从编码的比特流连同其直接参考图片和间接参考图片中提取任何图片形成的。
因此,上述方法提供用于信令传递预测编码结构的手段,其允许用最小延迟的随机访问特征以及在压缩图像序列中编辑单独图像的可能性。
已经参考术语参考样本描述了实施例。在一些实施方案中,将参考样本视为直接参考样本,并且因此不是间接参考样本。在其他实施例中,参考样本是直接参考样本和间接参考样本的集合术语。
已经参考术语参考图片描述了实施例。在一些实施例中,参考图片被视为直接参考图片,因此不是间接参考图片。在其他实施例中,参考图片是直接参考图片和间接参考图片的集合术语。
上面描述的本发明的一些实施例在单独的编码器和解码器装置方面描述了编解码器,以便于帮助对所涉及的过程的理解。然而,应当理解,装置、结构和操作可以被实现为单个编码器-解码器装置/结构/操作。此外,在本发明的一些实施例中,编码器和解码器可以共享一些或所有共用的元件。
上面描述的本发明的一些实施例描述了用于文件写入和文件读取的单独装置,以帮助理解所涉及的过程。然而,应当理解,该装置、结构和操作可以被实现为单个文件读取器装置/结构/操作。此外,在本发明的一些实施例中,文件写入器和文件读取器可以共享一些或所有共用的元素。
尽管上述示例描述了在电子设备内的编解码器、文件播放器或文件记录器中操作的本发明的实施例,但是应当理解,权利要求中定义的本发明可以被实现为任何视频编解码器的任何部分、任何文件播放器或任何文件记录器。因此,例如,本发明的实施例可以在可以通过固定或有线通信路径分别实现视频编码、文件播放或文件记录的视频编解码器、文件播放器或文件记录器中实现。
因此,用户设备可以包括诸如在上述本发明的实施例中所描述的那些视频编解码器、文件播放器或文件记录器。应当理解,术语用户设备旨在覆盖任何合适类型的无线用户设备,诸如移动电话、便携式数据处理设备或便携式web浏览器。
此外,公共陆地移动网络(PLMN)的其他元素还可以包括如上所述的视频编解码器、文件播放器或文件记录器。
通常,本发明的各种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。例如,一些实施例可以以硬件实现,而其他实施例可以在可由控制器、微处理器或其他计算设备执行的固件或软件中实现,但是本发明不限于此。尽管可以将本发明的各种实施例示出和描述为框图、流程图或使用某些其它图形表示,但是可以理解的是,本文描述的这些框、装置、系统、技术或方法可以作为非限制性示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其它计算设备、或其某些组合中实现。
本发明的实施例可以由可通过移动设备的数据处理器诸如在处理器实体中可执行的计算机软件、或通过硬件、或通过软件和硬件的组合来实现。此外,在这方面应当注意,如图所示的逻辑流程的任何框可以表示程序步骤或互连的逻辑电路、块和功能、或程序步骤和逻辑电路、块和功能的组合。该软件可以存储在诸如存储器芯片或在处理器内实现的存储器块、诸如硬盘或软盘的磁介质、以及诸如例如DVD及其数据变体CD的光学介质的物理介质上。
存储器可以是适合于本地技术环境的任何类型,并且可以使用任何合适的数据存储技术(诸如基于半导体的存储器设备、磁存储器设备和系统、光学存储器设备和系统、固定存储器和可移动存储器)来实现。数据处理器可以是适合于本地技术环境的任何类型,并且可以包括作为非限制性的例子的通用计算机、专用计算机、微处理器、数字信号处理器(DSP)和基于多核心处理器架构的处理器中的一个或多个。
本发明的实施例可以在诸如集成电路模块的各种部件中实施。集成电路的设计大体上是一个高度自动化的过程。复杂而强大的软件工具可用于将逻辑电平设计转换成准备在半导体衬底上进行蚀刻和形成的半导体电路设计。
加利福尼亚州山景城的Synopsys公司和加利福尼亚州圣荷西的Cadence Design提供的程序可以使用完善的设计规则以及预存储的设计模块库来自动路由导体和定位半导体芯片上的组件。一旦半导体电路的设计已经完成,则以标准化电子格式(例如Opus、GDSII等)的结果设计可以被传输到半导体制造设备或“晶圆厂”用于制造。
前面的描述已经通过示例性和非限制性的示例提供了本发明的示例性实施例的完整和翔实的描述。然而,鉴于前面的描述,当结合附图和所附权利要求书进行阅读时,各种修改和改编对于本领域技术人员来说可能变得显而易见。然而,本发明的教导的所有这些和类似的修改仍将落在本发明的范围内。

Claims (19)

1.一种用于用信令传递被编码在比特流中的图片序列的参考图片的方法,所述方法包括:
将所述图片序列的图片分类为参考图片和非参考图片;
向每个参考图片提供专用图片标识符;
至少针对所述图片序列的帧间编码的图片,确定所述图片标识符和至少一个参考图片标识符的所有专用组合,其中用于特定图片的所述至少一个参考图片标识符标识可以被用作用于预测所述特定图片的参考的所有图片;
向帧内编码的参考图片至少分配其专用图片标识符,以及向帧间编码的图片分配其对应的、所述图片标识符和所述至少一个参考图片标识符的专用组合。
2.根据权利要求1所述的方法,所述方法还包括:
针对所述帧内编码的参考图片分配具有与其专用图片标识符相同的值的参考图片标识符。
3.根据权利要求1或2所述的方法,还包括:
向每个非参考图片提供共用图片标识符。
4.根据权利要求3所述的方法,其中用于每个参考图片的所述专用图片标识符为非零正整数,并且用于所述非参考图片的所述共用图片标识符为零。
5.根据权利要求2-4中任一项所述的方法,所述方法还包括:
为所述图片标识符和所述至少一个参考图片标识符的每个专用组合分配索引;以及
将所述图片序列的所述图片映射到与所述图片标识符和所述至少一个参考图片标识符的其专用组合相对应的索引。
6.根据权利要求5所述的方法,所述方法还包括:
在容器文件中指示所述映射,所述容器文件还包括或参考所述比特流。
7.根据权利要求6所述的方法,其中所述容器文件符合ISO基本媒体文件格式(ISOBMFF),所述容器文件包括逻辑上包括样本的轨道,并且所述轨道的样本包括图片,所述方法包括:
在所述容器文件中包括作为样本组描述条目的所述图片标识符和至少一个参考图片标识符的专用组合,样本组描述条目被分配有相应的所述索引;以及
在所述容器文件中包括样本到组数据结构内的、图片被映射到所述样本组描述条目的相应的所述索引的指示。
8.一种装置,包括
至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,所述代码当由所述至少一个处理器执行时,使得所述装置至少执行:
将图片序列的图片分类为参考图片和非参考图片;
向每个参考图片提供专用图片标识符;
至少针对所述图片序列的帧间编码的图片,确定所述图片标识符和至少一个参考图片标识符的所有专用组合,其中用于特定图片的所述至少一个参考图片标识符标识可以被用作用于预测所述特定图片的参考的所有图片;
向帧内编码的参考图片至少分配其专用图片标识符,以及向所述帧间编码的图片分配其对应的、所述图片标识符和所述至少一个参考图片标识符的专用组合。
9.根据权利要求8所述的装置,其中所述至少一个存储器还包括代码,所述代码使得所述装置至少执行:
为所述帧内编码的参考图片分配具有与其专用图片标识符相同的值的参考图片标识符。
10.根据权利要求8或9所述的装置,其中所述至少一个存储器还包括代码,所述代码使得所述装置至少执行:
向每个非参考图片提供共用图片标识符。
11.根据权利要求10所述的装置,其中用于每个参考图片的所述专用图片标识符是非零正整数,并且用于所述非参考图片的所述共用图片标识符为零。
12.根据权利要求9至11中任一项所述的装置,其中所述至少一个存储器还包括代码,所述代码使得所述装置至少执行:
为所述图片标识符和所述至少一个参考图片标识符的每个专用组合分配索引;以及
将所述图片序列的所述图片映射到与所述图片标识符和所述至少一个参考图片标识符的其专用组合相对应的索引。
13.根据权利要求12所述的装置,其中所述至少一个存储器还包括代码,所述代码使得所述装置至少执行:
在容器文件中指示所述映射,所述容器文件还包括或参考所述比特流。
14.根据权利要求13所述的装置,其中所述容器文件符合ISO基本媒体文件格式(ISOBMFF),所述容器文件包括逻辑上包括样本的轨道,并且所述轨道的样本包括图片,其中所述至少一个存储器还包括代码,所述代码使得所述装置至少执行:
在所述容器文件中包括作为样本组描述条目的所述图片标识符和至少一个参考图片标识符的专用组合,样本组描述条目被分配有相应的所述索引;以及
在所述容器文件中包括样本到组数据结构内的、图片被映射到所述样本组描述条目的相应的所述索引的指示。
15.一种计算机可读存储介质,其上存储有代码以供装置使用,所述代码当由处理器执行时,使得所述装置执行:
将图片序列的图片分类为参考图片和非参考图片;
向每个参考图片提供专用图片标识符;
至少针对所述图片序列的帧间编码的图片,确定所述图片标识符和至少一个参考图片标识符的所有专用组合,其中用于特定图片的所述至少一个参考图片标识符标识可以被用作用于预测所述特定图片的参考的所有图片;
向帧内编码的参考图片至少分配其专用图片标识符,以及向所述帧间编码的图片分配其对应的、所述图片标识符和所述至少一个参考图片标识符的专用组合。
16.一种方法,包括:
接收包括针对用于解码图片序列的图片所需的参考图片的指示的信令;
确定针对用于帧内编码的参考图片的至少专用图片标识符和用于帧间编码的图片的图片标识符和至少一个参考图片标识符的专用组合的指示;以及
从用于特定的帧间编码的图片的所述至少一个参考图片标识符,确定由所述特定的帧间编码的图片参考的所有图片。
17.根据权利要求16所述的方法,还包括:
获得用于随机访问所述特定的帧间编码的图片的请求;
解码由所述特定的帧间编码的图片参考的所述所有图片;
解码所述特定的帧间编码的图片。
18.一种装置,包括:
至少一个处理器和至少一个存储器,所述至少一个存储器在其上存储有代码,所述代码当由所述至少一个处理器执行时,使得所述装置至少执行
接收包括针对用于解码图片序列的图片所需的参考图片的指示的信令;
确定针对用于帧内编码的参考图片的至少专用图片标识符和用于帧间编码的图片的图片标识符和至少一个参考图片标识符的专用组合的指示;以及
从用于特定的帧间编码的图片的所述至少一个参考图片标识符确定由所述特定的帧间编码的图片参考的所有图片。
19.根据权利要求18所述的装置,其中所述至少一个存储器还包括代码,所述代码使得所述装置至少执行:
获得用于随机访问所述特定的帧间编码的图片的请求;
解码由所述特定的帧间编码的图片参考的所述所有图片;
解码所述特定的帧间编码的图片。
CN201580065170.0A 2014-10-14 2015-10-08 图像序列编码和解码的装置、方法和计算机可读存储介质 Active CN107005715B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1418114.3A GB2531271A (en) 2014-10-14 2014-10-14 An apparatus, a method and a computer program for image sequence coding and decoding
GB1418114.3 2014-10-14
PCT/FI2015/050671 WO2016059290A1 (en) 2014-10-14 2015-10-08 An apparatus, a method and a computer program for image sequence coding and decoding

Publications (2)

Publication Number Publication Date
CN107005715A true CN107005715A (zh) 2017-08-01
CN107005715B CN107005715B (zh) 2020-07-24

Family

ID=52001350

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580065170.0A Active CN107005715B (zh) 2014-10-14 2015-10-08 图像序列编码和解码的装置、方法和计算机可读存储介质

Country Status (8)

Country Link
US (1) US10575010B2 (zh)
EP (1) EP3207711B1 (zh)
JP (1) JP6417039B2 (zh)
CN (1) CN107005715B (zh)
GB (1) GB2531271A (zh)
PH (1) PH12017500702A1 (zh)
WO (1) WO2016059290A1 (zh)
ZA (1) ZA201703143B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108648143A (zh) * 2018-04-17 2018-10-12 中国科学院光电技术研究所 一种利用序列图像的图像分辨率增强方法
CN108668169A (zh) * 2018-06-01 2018-10-16 北京市商汤科技开发有限公司 图像信息处理方法及装置、存储介质
CN108876882A (zh) * 2018-06-26 2018-11-23 史艳艳 一种画面非循环的gif文件播放方法及系统
CN110019865A (zh) * 2017-09-08 2019-07-16 北京京东尚科信息技术有限公司 海量图片处理方法、装置、电子设备及存储介质
CN110035331A (zh) * 2018-01-12 2019-07-19 华为技术有限公司 一种媒体信息的处理方法及装置
CN113491128A (zh) * 2018-12-26 2021-10-08 腾讯美国有限责任公司 语法控制的已解码图片缓冲器管理的方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113443B (zh) * 2014-12-26 2020-04-28 索尼公司 影像处理设备和影像处理方法
GB2539461B (en) * 2015-06-16 2020-01-08 Canon Kk Image data encapsulation
GB2560921B (en) 2017-03-27 2020-04-08 Canon Kk Method and apparatus for encoding media data comprising generated content
SG11202012942TA (en) 2018-06-26 2021-01-28 Huawei Tech Co Ltd High-level syntax designs for point cloud coding
KR102609949B1 (ko) * 2018-08-17 2023-12-04 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 코딩에서의 참조 영상 관리
US11743503B2 (en) 2020-05-14 2023-08-29 Qualcomm Incorporated Reference picture list constraints and signaling in video coding
CN113347424B (zh) * 2021-05-27 2022-08-05 上海国茂数字技术有限公司 视频编码数据存储方法、装置及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101491095A (zh) * 2006-03-30 2009-07-22 Lg电子株式会社 用于解码/编码视频信号的方法和装置
CN103814575A (zh) * 2011-09-23 2014-05-21 高通股份有限公司 译码参考图像集的参考图像
US8761255B2 (en) * 2006-08-25 2014-06-24 Lg Electronics Inc. Method and apparatus for decoding/encoding a video signal with inter-view reference picture list construction
CN104025599A (zh) * 2011-11-08 2014-09-03 诺基亚公司 参考图片处理

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1713283A2 (en) 2005-04-15 2006-10-18 Sony Corporation Video decoder with random access technique
US7903737B2 (en) 2005-11-30 2011-03-08 Mitsubishi Electric Research Laboratories, Inc. Method and system for randomly accessing multiview videos with known prediction dependency
US8374240B1 (en) * 2008-07-10 2013-02-12 Marvell International Ltd. Image frame management
JP5017223B2 (ja) 2008-09-19 2012-09-05 株式会社東芝 映像処理装置、映像圧縮符号化装置、映像復号再生装置及び映像再生方法
US8693539B2 (en) 2009-03-26 2014-04-08 Panasonic Corporation Coding method, error detecting method, decoding method, coding apparatus, error detecting apparatus, and decoding apparatus
KR101750495B1 (ko) 2010-04-16 2017-06-27 에스케이텔레콤 주식회사 인터 예측 방법 및 그 인터 예측 방법을 이용한 동영상 부호화/복호화 방법
KR101578308B1 (ko) * 2011-06-30 2015-12-16 텔레폰악티에볼라겟엘엠에릭슨(펍) 레퍼러스 픽처 시그널링
US8805098B2 (en) * 2012-01-19 2014-08-12 Sharp Laboratories Of America, Inc. Inter reference picture set signaling and prediction on an electronic device
US8867852B2 (en) * 2012-01-19 2014-10-21 Sharp Kabushiki Kaisha Decoding a picture based on a reference picture set on an electronic device
SG11201408320WA (en) * 2012-06-29 2015-01-29 Ericsson Telefon Ab L M Encoding and decoding video sequences comprising reference picture sets
CN105325003B (zh) 2013-04-17 2019-05-28 诺基亚技术有限公司 用于视频编码和解码的装置、方法
JP6397421B2 (ja) * 2013-10-08 2018-09-26 シャープ株式会社 画像復号装置及び画像符号化装置
ES2913983T3 (es) * 2014-03-17 2022-06-07 Nokia Technologies Oy Un aparato, un método y un programa informático para codificación y decodificación de vídeo
KR20150110295A (ko) * 2014-03-24 2015-10-02 주식회사 케이티 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치
JP2018050091A (ja) * 2015-02-02 2018-03-29 シャープ株式会社 画像復号装置、画像符号化装置および予測ベクトル導出装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101491095A (zh) * 2006-03-30 2009-07-22 Lg电子株式会社 用于解码/编码视频信号的方法和装置
US8761255B2 (en) * 2006-08-25 2014-06-24 Lg Electronics Inc. Method and apparatus for decoding/encoding a video signal with inter-view reference picture list construction
CN103814575A (zh) * 2011-09-23 2014-05-21 高通股份有限公司 译码参考图像集的参考图像
CN104025599A (zh) * 2011-11-08 2014-09-03 诺基亚公司 参考图片处理

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019865A (zh) * 2017-09-08 2019-07-16 北京京东尚科信息技术有限公司 海量图片处理方法、装置、电子设备及存储介质
CN110019865B (zh) * 2017-09-08 2021-01-26 北京京东尚科信息技术有限公司 海量图片处理方法、装置、电子设备及存储介质
US11395010B2 (en) 2017-09-08 2022-07-19 Beijing Jingdong Shangke Information Technology Co., Ltd. Massive picture processing method converting decimal element in matrices into binary element
CN110035331A (zh) * 2018-01-12 2019-07-19 华为技术有限公司 一种媒体信息的处理方法及装置
US11172239B2 (en) 2018-01-12 2021-11-09 Huawei Technoloies Co., Ltd. Media information processing method and apparatus
CN108648143A (zh) * 2018-04-17 2018-10-12 中国科学院光电技术研究所 一种利用序列图像的图像分辨率增强方法
CN108648143B (zh) * 2018-04-17 2022-03-29 中国科学院光电技术研究所 一种利用序列图像的图像分辨率增强方法
CN108668169A (zh) * 2018-06-01 2018-10-16 北京市商汤科技开发有限公司 图像信息处理方法及装置、存储介质
CN108668169B (zh) * 2018-06-01 2021-10-29 北京市商汤科技开发有限公司 图像信息处理方法及装置、存储介质
CN108876882A (zh) * 2018-06-26 2018-11-23 史艳艳 一种画面非循环的gif文件播放方法及系统
CN113491128A (zh) * 2018-12-26 2021-10-08 腾讯美国有限责任公司 语法控制的已解码图片缓冲器管理的方法
CN113491128B (zh) * 2018-12-26 2023-12-19 腾讯美国有限责任公司 已解码图片存储器管理的方法和相关装置

Also Published As

Publication number Publication date
GB201418114D0 (en) 2014-11-26
EP3207711A1 (en) 2017-08-23
EP3207711A4 (en) 2018-06-06
CN107005715B (zh) 2020-07-24
EP3207711B1 (en) 2021-03-10
US20170302949A1 (en) 2017-10-19
PH12017500702A1 (en) 2017-10-09
WO2016059290A1 (en) 2016-04-21
US10575010B2 (en) 2020-02-25
GB2531271A (en) 2016-04-20
JP2017536026A (ja) 2017-11-30
JP6417039B2 (ja) 2018-10-31
ZA201703143B (en) 2018-11-28

Similar Documents

Publication Publication Date Title
CN106464893B (zh) 用于视频编码和解码的装置、方法和计算机程序
CN107005715A (zh) 图像序列编码和解码的装置、方法和计算机程序
CN104205819B (zh) 用于视频编码的方法和装置
US9800893B2 (en) Apparatus, a method and a computer program for video coding and decoding
CN105580373B (zh) 用于视频编码和解码的装置和方法
CN104604236B (zh) 用于视频编码的方法和装置
CN105981387B (zh) 用于处理视频的方法、装置和计算机可读存储介质
CN108702503A (zh) 用于视频编码和解码的装置、方法及计算机程序
CN107431819A (zh) 用于可伸缩视频编码和解码的层间预测
CN109565602A (zh) 视频编码和解码
CN111327893B (zh) 用于视频编码和解码的装置、方法和计算机程序
CN105027569B (zh) 用于视频编码和解码的装置和方法
CN108293127A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN106664424A (zh) 参数集编码
CN107710762A (zh) 用于视频编码和解码的装置、方法、以及计算机程序
CN113711594A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN107431810A (zh) 用于图像编码和解码的装置、方法和计算机程序
CN104380749A (zh) 用于视频编码的方法和装置
JP2020137111A (ja) クロスチャネル残差符号化・復号のための量子化パラメータの導出
CN117597929A (zh) 一种用于跨分量参数计算的装置、方法和计算机程序

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant