CN102714724B - 视频信息编码方法和视频信息编码系统 - Google Patents

视频信息编码方法和视频信息编码系统 Download PDF

Info

Publication number
CN102714724B
CN102714724B CN201180005397.8A CN201180005397A CN102714724B CN 102714724 B CN102714724 B CN 102714724B CN 201180005397 A CN201180005397 A CN 201180005397A CN 102714724 B CN102714724 B CN 102714724B
Authority
CN
China
Prior art keywords
coding process
information
statistical information
coding
frame
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.)
Expired - Fee Related
Application number
CN201180005397.8A
Other languages
English (en)
Other versions
CN102714724A (zh
Inventor
阿萨纳西奥斯·莱昂塔里斯
亚历山德罗斯·图拉皮斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Dolby Laboratories Licensing Corp
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 Dolby Laboratories Licensing Corp filed Critical Dolby Laboratories Licensing Corp
Priority to CN201610313462.8A priority Critical patent/CN105847806B/zh
Publication of CN102714724A publication Critical patent/CN102714724A/zh
Application granted granted Critical
Publication of CN102714724B publication Critical patent/CN102714724B/zh
Expired - Fee Related 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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
    • 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/114Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
    • 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/124Quantisation
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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

Landscapes

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

Abstract

描述了用于编码应用的方法和系统,其中为实现码率控制,进行多个编码过程。多个编码过程生成预测结构,并利用所述预测结构更新在编码过程之前生成的编码统计信息。更新的编码统计信息被用于后续的编码操作。

Description

视频信息编码方法和视频信息编码系统
相关申请的交叉引用
本申请要求2010年1月6日提交的美国专利临时申请No.61/292,700的优先权,通过引用将其内容整体包括于此。
技术领域
本公开涉及视频编码。更具体地说,本公开涉及视频编码应用的多过程码率控制系统和方法。
背景技术
码率控制是实现现代视频编码器中的关键功能的要件。它确保生成的压缩比特流(a)达到比特率目标,(b)满足最大平均比特率约束,和(c)满足假想参考解码器(缓冲延迟)约束及其它要求。一个可选但是非常合意的目的是优化压缩视频比特流的视频质量。
满足约束(a)可确保压缩视频比特流适合于通信管道或者存储空间。例如,对视频传输来说,无线网络可能只允许最高达到768kbps。这与比如说蓝光光盘相反,蓝光光盘可允许高达40Mbps的视频带宽(对传统的2D应用来说)和60Mbps的带宽(对采用基于H.264/MPEG-4AVC视频编码标准[参见在此整体引为参考的参考文献1]及其扩展,即,MPEG-4AVC的多视点视频编码(MVC)扩展的编解码器的3D应用来说)。另外,对归档应用或者带宽极高的应用(比如从硬盘驱动器读取)来说,可能只规定最终比特流文件的总大小。
约束(b)源于每秒只能保存和解码一定数目的比特的重放设备的限制。在编码处理期间,可能发生其中整个压缩比特流达到比特率目标,但是平均比特率局部(例如,持续若干秒)超过比特率目标的情形。由于难以编码通常需要的更多的比特来确保一致性或者更好的视频质量,因而这种情况经常发生。不过,这些比特流“尖峰”(只要它们足够大)会对资源受限的解码器造成问题。影响解码器的问题包括内部缓冲器的溢出,或者不能及时解码比特流以便按照正确的顺序和以恰当的定时显示各帧。
最后,约束(c)与约束(b)密切相关,可被看作比特流必须满足的一组更严格的要求。简而言之,压缩的比特流必须被编码成以使得如果以目标比特率传送,则它决不会导致解码器缓冲器上溢或下溢,结果,在重放期间,解码的视频决不会延迟或停止。
码率控制还被赋予在以上的比特率和缓冲约束的条件下,确保可能的最好视频质量的任务。
附图说明
图1表示准备和进行按照本公开的一个或多个中间编码过程的算法的流程图。
图2表示按照本公开的低复杂性多过程码率控制方法的示意图。
具体实施方式
本公开的实施例针对的是高效、低复杂性的多过程码率控制技术和方法。
按照第一实施例,提供一种在多个编码过程中编码视频信息,以控制视频信息的码率的方法,所述方法包括:提供视频信息的初始统计信息;通过一个或多个不对称编码过程,对视频信息进行一次或多次中间编码,以提供校正由初始统计信息引起的不精确性的更新统计信息;分析初始统计信息和更新统计信息;根据更新统计信息,进一步编码视频信息。
按照第二实施例,提供一种视频信息编码系统,包括:一个或多个第一类型编码器;适合于以比一个或多个第一类型编码器高的复杂性,编码视频信息的第二类型编码器;和码率控制分析模块,所述码率控制分析模块从一个或多个第一类型编码器接收关于编码视频信息的统计信息,并把更新的统计信息发送给第二类型编码器。
在本申请的说明书、附图和权利要求书中提供了本公开的更多实施例。
在本公开中,将可互换地引用“帧”和“图片”。在本公开中定义的图片可包括一帧或多帧,配对场(交错编码),或者未配对的顶场或底场。
可在单一编码过程中对视频序列编码。这里,编码过程被定义为对输入进行的、产生压缩输出的一系列的一个或多个编码步骤。在单一编码过程中对视频序列编码可归因于计算或时间约束,或者归因于内容的性质:内容是流式实况播送的,从捕捉到传送给消费者的固定延迟只允许少许超前于未来。如果这些约束被放松,那么可能希望进行不止一次编码过程以压缩视频序列。在这种情况下,码率控制受益于从先前的编码过程得到的信息。
源于先前的编码过程的信息例如可包括复杂性的度量,比如关于特定的帧类型和量化参数(QP)生成的报头比特和纹理比特的数目,局部水平或帧水平的运动补偿失真(帧间)和帧内预测失真,或者图像序列中的各帧的时间相关性等等,并且能够提高比特率精度和帮助满足比特率和缓冲约束。报头比特包括用于编码运动信息、编码模式、块类型、参数集,以及对解码处理来说并非必不可少的信息,比如视频可用性描述符的比特。纹理比特包括用于对帧间或帧内预测残差的变换系数编码的比特。通常,后者的比特数构成编码比特流的主体,尤其是对高比特率来说。
此外,从先前的编码过程得到的信息可极大地改善压缩视频比特流的质量。原因在于编码统计信息对整个视频序列的可用性。这样的知识使得能够有效地把比特用在它们将取得最好效果(通常用使码率失真性能达到最大,或者另一方面通过在复杂性更高的区域中消耗更多的比特来度量)的那些视频序列片段。通常,编码过程越多,在给定的某个固定的比特率预算下,能够获得的视频质量更好。不过,总是存在回报递减的点,这些点处,与增加的计算开销相比,编码增益的回报将微不足道。从而,在多过程编码期间,需要约束计算复杂性。
多个编码过程改善压缩视频比特流的视频质量,有助于满足比特率和缓冲约束(约束(a)、(b)和(c))。按照本公开的实施例,不仅在计算复杂性方面,而且在将被编码的一组帧方面,都可提供不对称编码过程。此外,每个编码过程的目的可以变化。编码过程的目的可包括(a)建立用于低计算复杂性相比于高计算复杂性的编码统计信息的关系(比如转换率或者比率函数),(b)建立用于固定的计算复杂性的编码参数的关系,如量化参数(QP)等,或者换句话说,对于固定复杂性来说,诸如QP之类的编码参数如何影响质量和比特率,(c)建立码率失真关系,以便利用不同的预测结构等等。
不对称编码过程以前已被用于约束计算复杂性。在开源x264H.264/MPEG-4AVC编码器中[参见整体在此引为参考的参考文献2],存在一种限制用于第一编码过程或第一批编码过程的编码工具的数目和复杂性的“快速”模式。这样做会加速执行,通常以少量的编码损失为代价。不过,取决于加速的数量级,所述编码损失可能相当大,从而不合乎需要。
在本公开中,通过设计校正由用于加速多过程编码处理的低复杂性编码过程引起的估计误差的编码过程,减轻了这种编码损失。特别地,这些中间编码过程不同于最先或最终的编码过程,采用未在编码、传输效率、或者某种可缩放性或随机存取能力方面进行过优化,而是在提取a)关于编码工具对特定内容的性能的信息,b)编码参数与比特使用和压缩视频比特流的结果质量的关系,甚至c)关于不同预测/编码结构的性能的信息方面进行了优化的编码/预测结构。按照本公开的中间编码过程实质上是一种分析工具,它们能够帮助考虑由于利用快速第一编码过程等引起的不精确性。
按照本公开的实施例,所述一个或多个中间编码过程包括在第一低复杂性编码过程和最终的完全复杂性编码过程之间。与最终的编码过程相比,第一编码过程或者第一批编码过程是在低复杂性(这通常转换成禁止编码工具,或者修改编码参数,以使得所述编码工具需要较低的计算复杂性,例如减小运动向量搜索的范围或精度)的情况下运行的。
中间编码过程允许信息的收集,以使得能够校正或更新从低复杂性过程估计的统计信息的不精确性,随后,校正/更新的统计信息可被传递给最终的编码过程。中间过程产生的信息被保存,可供所有后续编码过程(另外的中间编码过程和最终的编码过程)使用。这样的信息可包括图片或切片编码类型(I或P或B等),每种类别(纹理、报头、运动等)的比特使用,编码模式统计信息(例如,多少种跳跃或帧内编码模式),块类型统计信息,诸如方差、直方图之类的空间统计信息,编码参数(QP和使用的拉格朗日λ),编码工具设置(指示编码工具中的哪些被允许),运动向量信息,运动补偿(帧间)和帧内预测误差,加权预测参数,帧分类(例如,场景变化)等等。在本公开中,所有这样的信息被统称为“统计信息”或者“编码统计信息”。
从而,在完成一个或多个中间过程之后,收集的统计信息被提供给码率控制分析模块。码率控制分析模块还被供给来自第一低复杂性过程或者第一批低复杂性过程的信息。来自第一批低复杂性过程和中间编码过程的信息可包括可被后续过程用于加速计算的运动和帧内预测信息,以及编码模式信息。所述信息还可用于分析用途,因为它能够提供场景的复杂性的度量(例如,分类成高度运动或高度静止等)。可被传递给码率控制分析模块的其它各种信息包括比特使用统计信息,诸如QP和拉格朗日参数之类的编码参数,空间和时间统计信息,帧内和帧间预测误差统计信息等等。
码率控制分析模块随后利用该信息把从低复杂性(或者第一类型复杂性)过程获得的编码统计信息转换成如果在完全计算复杂性(或者第二类型复杂性)的情况下,运行第一编码过程或者第一批编码过程,那么理应可以得到的统计信息。中间过程在编码期间不必采用完全复杂性(或者第二类型复杂性)。相反,复杂性可以是平均起来比第二类型复杂性低的不同类型的复杂性(第三种复杂性)。
通过在中间过程中采用例如空间和/或时间子采样,能够获得一种较低的复杂性。时间子采样指的是对图像序列中的全部帧的子集编码。这样的选择可以是a)完全任意的,b)有规律的(比如说通过丢弃两帧中的一帧),或者c)特定于内容的,这种情况下,在图像序列的更“有趣”或者更有代表性(活性)部分中编码更多的帧,而在图像序列的不太“有趣”或者不太有代表性(静止)部分中编码较少的帧。空间子采样指的是考虑帧或图像序列的低分辨率版本。这样做会大大加速执行。另外选择那些如果丢失则会导致码率失真性能的最大下降的那些帧,也使得这样的选择是特定于内容的。
通过禁用某些编码工具,比如加权预测、子像素运动估计、解块、和网格优化量化等,也可限制中间过程的计算复杂性。
可以以均匀的间隔对编码帧子采样,不过也可根据某些预分析信息对编码帧采样。例如,如果存在场景频繁变化的图像序列区域,和静止的图像序列区域,即,运动信息指示非常低的运动和/或预测残差足够低,并且/或者诸如跳跃之类的预测模式被大量使用,则采样因子需要被修改:在中间过程中只需要包括来自静止区域的少许帧,而更多的帧需要被认为来自图像序列中更具活性的区域。
如果存在多个中间过程,那么可以为每个中间过程选择多组不同子采样的帧(视情况利用某些相差/相移,或者如前所述的取决于内容的采样安排),以便取回关于图像序列的附加信息。在一些实施例中,可以并行运行一些或者所有的多个中间过程。
一旦选择了待编码的一组帧,就产生对所选帧编码的预测结构。如本公开中所使用的,预测结构定义将用于压缩图像序列的图片编码类型的种类和顺序。例如,5帧可被编码成1个I帧(帧内编码)和后面的4个P帧(单向预测帧间编码),从而构成IPPPP预测结构,IPPPP预测结构是最简单的编码结构,并且其中显示顺序与编码顺序一致。为了指示显示顺序,该结构也可被写成I0P1P2P3P4。另一种可能的预测结构是IbBbP(其中B指的是双向预测帧间编码),其中小写字母表示可随意处理的帧。为了举例说明显示顺序,该编码/预测结构被写为I0P4B2b1b3。
在一个或多个中间过程中收集的统计信息应对码率控制分析模块有用,以使得如果使用这样的模块或者把具有相同复杂性的第一批编码过程用于最终的过程,则该模块随后能够估计出应会产生的统计信息。
这可通过揭示在给定编码参数,比如编码类型(例如,I、P或B)和量化参数等的情况下,低复杂性或完全复杂性的编码统计信息的关系来实现。还可以使这些转换关系取决于预测结构:最终的编码过程可能能够访问比如说由于复杂性的原因,而在第一批过程中不被允许的另外的预测结构。
于是,中间过程的任务之一是揭示这些关系,并利用这些关系把统计信息转换成在最终编码过程中使用的复杂性类型。当可以得到这些关系时,低复杂性统计信息随后可被转换成用于完全复杂性操作的对应内容。统计信息的转换可在后续中间过程中被进一步修正,另外可在最终的编码过程中被进一步修正,在最终的编码过程中,因果编码统计信息可用于校正或更新转换关系。对具有多个子采样帧组的实施例来说,一个过程中的关系和统计信息转换也可用于后续的中间过程,或者源于一组的关系和统计信息也可用于不同的、通常邻近的组。
为此,可以采用以下高级策略。后面将说明遵循这些原理的一些具体实施例。
(a)第一分析阶段估计第一批编码过程,并取回用于对序列编码的帧的类型。如果需要,这样的阶段还可收集和使用的预测结构相关的信息。例如,一些片段可能已用IPPPPP编码,一些其它片段用IbBbPbBbP编码,而再一些其它片段用IbPbPbP编码等。大写字母表示将用作后续编码的各帧的运动补偿基准的帧。这些结构是按照显示顺序表示的,不过,显示顺序和编码顺序不必一致。
(b)第二阶段创建预测结构“原子”:可能的最小预测单元(多组帧)。在一个可能的实施例中,如果上述步骤(a)的3种可能结构被用于对图像序列编码,那么本阶段会产生具有以下3种预测结构原子的列表:(i)IP,(ii)IbBbP和(iii)IbP。不过,创建的预测原子不必限制于在第一批编码过程中使用的那些预测原子。很可能希望复用简单的编码结构,比如IPPP进行第一批编码过程,随后利用更复杂的编码结构,比如说IbBbP进行最终的编码过程。在支持自适应预测结构生成的编码器中,可能还想把一组可能的预测结构之一用于最终的编码过程。在这两种情况任意之一下,除了在第一批编码过程中使用的那些预测结构之外,还考虑在最终的编码过程中可用的所有可能的预测结构,并将其添加到中间过程的原子列表中。这样做能够帮助建立还跨越不同预测结构的转换关系。另一个可能的实施例可包括专门用来确定关系并评估多个参考帧的效率的原子。例如可以使用诸如IPPP之类的结构,并收集每个P编码帧的每个参考帧的预测误差统计信息。
用于编码各帧的量化参数(QP)或者是预先确定的,或者是通过某种预分析机制设定的,以使得使参数估计更高效。此外,原子内的不同帧编码类型之间的QP的关系可按照好像最终的编码过程被调用似地设定它们的方式来设定。
在备选实施例中,原子可被扩展,以便收集和图像序列统计信息有关的附加信息,所述附加信息不仅可用于确立低复杂性关系/完全复杂性关系,而且可用于确定诸如QP与生成的比特的数目的关系之类的关键信息。例如,在一个可能的实施例中,预测结构原子被扩展,以便通过重复具有不同QP参数的最短结构:(i)IPIP,(ii)IbBbPIbBbP和(iii)IbPIbP,来使QP关系的估计成为可能。新原子的后半部中的各帧被分配与所述原子的前半部中的各帧相比,偏移某个预先确定(通过预分析等)的值的QP。在一个可能的不同实施例中,预测结构原子被扩展,以便通过把可能的原子级联成某种“超级”原子:“IPIbPIbBbP”(对上面的情况来说),来使预测结构关系的估计成为可能。注意在所有上述情况下,每个原子中被编码的各帧的显示顺序被重置,同时每个帧内预测帧,例如对IPIP来说,帧n、n+N,n,n+N将被编码。
(c)随后检查图像序列,以检测帧内预测帧,或者像在H.264/MEPG-4AVC的情况下,帧内预测帧和/或即时解码器刷新(IDR)帧。H.264中的IDR帧提供一种随机存取手段。一旦解码器收到IDR文件,解码器将清空它自己的用作运动补偿参考的先前解码帧的存储。从而能够从任意IDR帧开始重放,并且避免由参考帧的不可用引起的漂移。于是,IDR帧内预测帧确保真实的随机存取点。可以考虑的其它帧类型包括渐变,可能还有闪烁。
已被编码成IDR的各帧对通过当“原子”停止时间传播时,把“原子”放置在其位置来进行重新编码来说十分理想,并且不依赖于在其编码之前做出的编码决定。当使用时间子采样时,这会是十分重要的。从而确定所有这些位置,并集中到列表中。
(d)算法的下一个阶段涉及用于编码中间过程的预测结构的生成。已知关于在中间过程中可以使用的帧数的一些约束(比如,总帧数的10%),那么算法循环遍历在前一阶段(c)中生成的列表中找到的各个帧内/IDR帧位置。存在三种可能性:(i)列表中的位置的数目乘以原子中的帧数超过对中间过程帧的约束。在这种情况下,所述位置被均匀子采样,以使得所述约束被满足。另一方面,按照符合序列统计信息的方式对所述位置进行子采样(活性区域中位置更多)。(ii)列表中的位置的数目乘以原子中的帧数不超过对中间过程帧的约束。在这种情况下,通过尝试覆盖未被充分表现的序列区域,取回新的位置。这是以均匀方式或者通过使位置选择(采样)适应于图像序列统计信息进行的。(iii)如果期望均匀采样,那么不需要任何其它动作。如果期望按照与内容相关的方式进行采样,那么可以选择在列表之外的位置,以增大更活性区域的覆盖率。
(e)执行中间编码过程,并为每个编码帧收集统计信息。
(f)与所收集的统计信息的第一批低复杂性编码过程的对应内容相结合地对收集的统计信息进行分析。除了把统计信息从低复杂性转换为高复杂性(这种转换可以以帧编码类型,甚至是预测结构中帧的位置为条件),如在前面可能的替选实施例中描述的那样,这一阶段还能够得出使(纹理或报头)比特使用与QP相关联等的关系。
(g)最后,上面得出的关系随后被提供给最终的编码过程,该编码过程把来自低复杂性过程的编码统计信息转换和更新成高复杂性编码。
图1中表示了以上算法的流程图。图2中还表示了该方法的高级示图。
如图2中所示,可以存在任意数目的第一低复杂性编码过程,以及任意数目的中间编码过程。控制模块判定额外的低复杂性编码过程和中间过程的结构(例如,预测结构、QP、各种各样的编码参数和工具等)和数目。它还负责处理来自每个编码过程的编码统计信息,然后把它们提供给最终的高复杂性编码过程的码率控制组件。最后,预分析模块是可选的,如果存在的话,那么可帮助控制模块准备低复杂性编码过程和中间编码过程,如前所述。注意在另一个实施例中,如果低复杂性过程是按照使得它们处理图像序列的不同区域或重叠区域的方式设计的,那么低复杂性过程可被并行化。这也适用于中间过程,这种情况下,如果不止一个中间过程在运行,那么在每个中间过程中,可以考虑多组不同的(可能重叠)的帧。
步骤(a)-(d)、(f)和(g)在图2的码率控制模块中进行。该模块设立随后在编码器中执行的第一低复杂性过程,分析由这样的过程生成的统计信息,视情况使用预分析信息,随后设立在分离的编码器中执行的中间编码过程。在每个编码过程之后分析统计信息,所述统计信息可被用于扩充(任意种类的)后续过程。最后,码率控制模块设立最后的编码过程,并把该结构传递给编码器模块。
在另一个实施例中,初始编码过程还可用不产生任何压缩的比特流,而是产生可用于码率控制算法的统计信息的某些预处理器分析过程代替。在适当的中间编码过程的帮助下,码率控制分析模块仍然把这些统计信息转换成编码统计信息。
在另一个实施例中,可以使用另外的中间编码过程来提高在第一低复杂性编码过程中收集的统计信息的质量。在这个实施例中,第一编码过程利用固定的QP分配,从而避免使用码率控制来实现某个比特率目标。这种策略有益于估计将被归一化为相同的QP值进而在图像序列中的所有各帧之间相当的预测误差。这既有益于码率控制,又有益于后续编码过程中的比特分配。不过,如果预定的QP导致远离初始比特率目标的比特率,那么这会消极地影响在第一编码过程期间收集的统计信息的可靠性。这种情况下,可以进行第二低复杂性编码过程,所述第二低复杂性编码过程补偿第一低复杂性编码过程的比特率(和QP)偏差。在进行了第一过程之后,控制模块判定作为结果的比特率是否足够接近初始比特率目标。如果不是这种情况,则控制模块利用新的预定QP值进行另外的低复杂性编码过程,以使得作为结果的比特经足够接近初始比特率目标。在该另外的编码过程期间收集的统计信息随后可替换、更新或补充在先前的低复杂性编码过程期间收集的统计信息。注意可用于加速编码处理的信息,比如运动和编码模式信息可以在各个编码过程间共享。
本公开中说明的方法和系统可以用硬件、软件、固件或者它们的组合来实现。描述成块、模块或组件的特征可以一起实现(例如,用诸如集成逻辑器件之类的逻辑器件),或者单独实现(例如,分离连接的逻辑器件)。本公开的方法的软件部分可包括计算机可读介质,所述计算机可读介质包括当被执行时,至少部分实现所述方法的指令。计算机可读介质例如可包括随机存取存储器(RAM)和/或只读存储器(ROM)。指令可以由处理器(例如,数字信号处理器(DSP),专用集成电路(ASIC)或现场可编程逻辑阵列(FPGA)执行。
说明书中提及的所有专利和出版物表示本公开所属领域的技术人员的技术水平。在本公开中引用的所有参考文献在好像每个参考文献已被单独整体引为参考的相同程度上被引为参考。
应当理解,本公开并不局限于特定的方法或系统,所述方法或系统当然可以发生改变。另外要理解的是这里说明的术语只是用于描述特定的实施例,并不意图限制本公开。本说明书和随附权利要求中使用的单数形式包括复数对象,除非上下文明确地另作说明。术语“多个”包括两个以上的所指对象,除非上下文明确地另作说明。除非另作说明,否则这里使用的所有技术和科学术语具有和本公开所属领域的技术人员通常理解的相同含义。
说明了本公开的许多实施例。然而,显然可以做出各种修改而不脱离本公开的精神和范围。因而,其它实施例在以下权利要求的范围之内。
参考文献列表
[1]Advancedvideocodingforgenericaudiovisualservices(用于通用音视频服务的先进视频编码),http://www.itu.int/rec/recommendation.asp?type=folders&lang=e&parent=T-REC-H.264,2009年10月。
[2]L.Merritt和R.Vanam,“X264:AHigh-PerformanceH.264/AVCEncoder(X264:高性能H.264/AVC编码器)”,http://akuvian.org/src/x264/overview_x264_v8_5.pdf

Claims (27)

1.一种在多个编码过程中编码视频信息,以控制所述视频信息的码率的方法,所述方法包括:
通过执行一个或多个低计算复杂性编码过程,提供关于所述视频信息的初始统计信息;
通过一个或多个不对称编码过程,进行所述视频信息的中间编码过程,以提供校正由所述初始统计信息引起的不精确性的更新统计信息;
揭示所述低计算复杂性编码过程的初始统计信息和最终的完全复杂性的编码过程统计信息之间的关系,利用所述关系将所述初始统计信息转换成用于完全复杂性的编码过程的对应内容,其中所述初始统计信息的转换在所述中间编码过程中被修正和/或在最终的完全复杂性的编码过程中被修正;以及
进行所述视频信息的进一步编码过程。
2.按照权利要求1所述的方法,还包括根据视频信息,生成预测结构,其中不对称编码过程根据所述预测结构,对所述视频信息编码。
3.按照权利要求1所述的方法,其中所述不对称编码过程在编码复杂性和/或编码帧方面不对称。
4.按照权利要求1到3中任意一项所述的方法,其中通过以比中间编码过程低而且比所述进一步编码过程低的计算复杂性对所述视频信息进行的所述一个或多个低计算复杂性编码过程,提供关于所述视频信息的所述初始统计信息。
5.按照权利要求4所述的方法,其中,进行一次或多次初始编码。
6.按照权利要求1到3中任意一项所述的方法,其中每个编码过程包括对来自所述视频信息的多个帧编码。
7.按照权利要求1到3中任意一项所述的方法,其中所述中间编码过程包括时间和空间子采样。
8.按照权利要求7所述的方法,其中所述中间编码过程按照均匀地间隔开的方式或者根据预分析信息,对各帧子采样。
9.按照权利要求1到3中任意一项所述的方法,其中通过选择所述视频信息的最具代表性的各帧来根据内容进行所述中间编码过程。
10.按照权利要求1到3中任意一项所述的方法,其中通过选择如果不存在则将使码率失真性能降低最多的那些帧来根据内容进行所述中间编码过程。
11.按照权利要求1到3中任意一项所述的方法,其中所述中间编码过程包括多个编码过程,每个编码过程对所述视频信息的不同帧组编码。
12.按照权利要求11所述的方法,其中所述视频信息包括多个子采样帧组,其中:
源于一个过程的转换关系和统计信息适合于用于后续的中间编码过程。
13.按照权利要求11所述的方法,其中所述视频信息包括多个子采样帧组,其中:
源于一组的转换关系和统计信息适合于用于不同的组。
14.按照权利要求13所述的方法,其中所述不同的组是邻近的组。
15.按照权利要求1到3中任意一项所述的方法,其中源于一个过程的转换关系和统计信息适合于用于后续的中间编码过程。
16.按照权利要求11所述的方法,其中每个编码过程包括:
所述视频信息的帧子集的选择;和
所述视频信息的预测结构的选择。
17.按照权利要求2所述的方法,还包括:
获得关于在所述中间编码过程之前生成的所述预测结构的信息。
18.按照权利要求2所述的方法,其中生成所述预测结构包括:
生成预测结构原子;和
在所述视频信息内,确定应插入所述预测结构原子的位置;
使用不同的预测结构原子,生成新的预测结构;以及
根据利用所述新的预测结构对所述视频信息进行的编码,来得出转换关系,
其中每个预测结构原子是最小的可能预测单元。
19.按照权利要求18所述的方法,其中生成所述预测结构还包括:
除了所述初始预测结构原子之外,还生成从要用于所述视频信息的所述进一步编码过程的预测结构中取出的另外的预测结构原子。
20.按照权利要求18所述的方法,其中所述预测结构原子被扩展成更大的预测结构。
21.按照权利要求1到3中任意一项所述的方法,还包括在进行所述中间编码过程之前:
检查所述视频信息,以检测帧内预测帧、即时解码器刷新帧、场景变化或者渐变转换。
22.按照权利要求21所述的方法,其中检测到的帧内预测帧、即时解码器刷新帧、场景变化或渐变转换的位置被用于利用所述预测结构原子来构建所述预测结构。
23.按照权利要求1到3中任意一项所述的方法,还包括:
保存所述初始统计信息和所述更新统计信息。
24.按照权利要求1到3中任意一项所述的方法,其中所述进一步编码过程的进行发生于一定的持续时间内,进行所述进一步编码过程包括:
根据在进行所述进一步编码过程的整个持续时间内生成的因果编码统计信息,校正或更新所述转换关系;和
根据校正或更新的转换关系,进行所述进一步编码过程。
25.一种视频信息编码系统,包括:
一个或多个低计算复杂性编码器,其被配置成通过进行低计算复杂性编码过程,提供关于视频信息的初始统计信息;
一个或多个中间编码器,每个中间编码器被配置成进行所述视频信息的编码,以提供校正由所述初始统计信息引起的不精确性的更新统计信息;
码率控制分析模块,其被配置成揭示所述低计算复杂性编码过程的初始统计信息和最终的完全复杂性的编码过程统计信息之间的关系,利用所述关系将所述初始统计信息转换成用于完全复杂性的编码过程的对应内容,其中所述初始统计信息的转换在所述中间编码过程中被修正和/或在最终的完全复杂性的编码过程中被修正;和
进一步编码器,其被配置成进行所述视频信息的进一步编码。
26.按照权利要求25所述的系统,其中从所述码率控制分析模块接收的统计信息包括下述中的一个或多个:运动预测,帧内预测,编码模式信息,比特使用统计信息,编码参数,空间统计信息,时间统计信息,帧内预测误差统计信息,帧间预测误差统计信息。
27.按照权利要求25所述的系统,还包括:
预分析模块,其被配置成除了由所述一个或多个低计算复杂性编码器提供的所述初始统计信息之外,还提供所述视频信息的初始统计信息,其中所述码率控制分析模块被配置成把由所述预分析模块提供的所述初始统计信息、由所述一个或多个低计算复杂性编码器提供的所述初始统计信息和所述更新统计信息相结合地进行分析,以得出所述初始统计信息和目标统计信息之间的转换关系。
CN201180005397.8A 2010-01-06 2011-01-03 视频信息编码方法和视频信息编码系统 Expired - Fee Related CN102714724B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610313462.8A CN105847806B (zh) 2010-01-06 2011-01-03 视频信息编码方法和视频信息编码系统

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US29270010P 2010-01-06 2010-01-06
US61/292,700 2010-01-06
PCT/US2011/020030 WO2011084916A1 (en) 2010-01-06 2011-01-03 Multiple-pass rate control for video coding applications

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201610313462.8A Division CN105847806B (zh) 2010-01-06 2011-01-03 视频信息编码方法和视频信息编码系统

Publications (2)

Publication Number Publication Date
CN102714724A CN102714724A (zh) 2012-10-03
CN102714724B true CN102714724B (zh) 2016-06-08

Family

ID=43875656

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610313462.8A Expired - Fee Related CN105847806B (zh) 2010-01-06 2011-01-03 视频信息编码方法和视频信息编码系统
CN201180005397.8A Expired - Fee Related CN102714724B (zh) 2010-01-06 2011-01-03 视频信息编码方法和视频信息编码系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201610313462.8A Expired - Fee Related CN105847806B (zh) 2010-01-06 2011-01-03 视频信息编码方法和视频信息编码系统

Country Status (3)

Country Link
US (1) US9467693B2 (zh)
CN (2) CN105847806B (zh)
WO (1) WO2011084916A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8908758B2 (en) 2010-01-06 2014-12-09 Dolby Laboratories Licensing Corporation High performance rate control for multi-layered video coding applications
US9066097B2 (en) * 2011-02-01 2015-06-23 Sony Corporation Method to optimize the transforms and/or predictions in a video codec
US9197888B2 (en) 2012-03-13 2015-11-24 Dolby Laboratories Licensing Corporation Overlapped rate control for video splicing applications
GB2501495B (en) * 2012-04-24 2015-07-08 Canon Kk Methods for encoding and decoding an image with competition of coding modes, and corresponding devices
US9661329B2 (en) * 2014-04-30 2017-05-23 Intel Corporation Constant quality video coding
CN106231303B (zh) * 2016-07-22 2020-06-12 上海交通大学 一种hevc编码中使用预测模式进行复杂度控制的方法
US10567775B2 (en) * 2016-10-01 2020-02-18 Intel Corporation Method and system of hardware accelerated video coding with per-frame parameter control
US10542262B2 (en) 2016-11-15 2020-01-21 City University Of Hong Kong Systems and methods for rate control in video coding using joint machine learning and game theory
CN108040256A (zh) * 2017-12-29 2018-05-15 广州海昇计算机科技有限公司 一种基于h.265的码率控制方法、系统及装置
US11025907B2 (en) 2019-02-28 2021-06-01 Google Llc Receptive-field-conforming convolution models for video coding
US10869036B2 (en) 2018-09-18 2020-12-15 Google Llc Receptive-field-conforming convolutional models for video coding
US10674152B2 (en) * 2018-09-18 2020-06-02 Google Llc Efficient use of quantization parameters in machine-learning models for video coding
US10848765B2 (en) 2018-12-11 2020-11-24 Google Llc Rate/distortion/RDcost modeling with machine learning
WO2020140220A1 (zh) * 2019-01-02 2020-07-09 Oppo广东移动通信有限公司 帧内预测方法及装置、视频编码设备、存储介质
CN113711592B (zh) * 2019-04-01 2024-06-28 北京字节跳动网络技术有限公司 帧内块复制编码模式中的二分之一像素插值滤波器
BR112022002480A2 (pt) 2019-08-20 2022-04-26 Beijing Bytedance Network Tech Co Ltd Método para processamento de vídeo, aparelho em um sistema de vídeo, e, produto de programa de computador armazenado em uma mídia legível por computador não transitória
CN116708789B (zh) * 2023-08-04 2023-10-13 湖南马栏山视频先进技术研究院有限公司 一种基于人工智能的视频分析编码系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008051517A2 (en) * 2006-10-25 2008-05-02 Thomson Licensing Methods and apparatus for efficient first-pass encoding in a multi-pass encoder

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1136734C (zh) * 1997-07-29 2004-01-28 皇家菲利浦电子有限公司 可变比特率视频编码方法及相应的视频编码器
JP4240283B2 (ja) * 2002-10-10 2009-03-18 ソニー株式会社 復号装置及び復号方法
US8031777B2 (en) * 2005-11-18 2011-10-04 Apple Inc. Multipass video encoding and rate control using subsampling of frames
JP5427785B2 (ja) * 2007-09-28 2014-02-26 ドルビー ラボラトリーズ ライセンシング コーポレイション ビデオ圧縮技法及びビデオ伝達技法
US8681858B2 (en) * 2009-12-23 2014-03-25 General Instrument Corporation Rate control for two-pass encoder

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008051517A2 (en) * 2006-10-25 2008-05-02 Thomson Licensing Methods and apparatus for efficient first-pass encoding in a multi-pass encoder

Also Published As

Publication number Publication date
CN102714724A (zh) 2012-10-03
CN105847806A (zh) 2016-08-10
US20130128963A1 (en) 2013-05-23
CN105847806B (zh) 2019-05-03
US9467693B2 (en) 2016-10-11
WO2011084916A1 (en) 2011-07-14

Similar Documents

Publication Publication Date Title
CN102714724B (zh) 视频信息编码方法和视频信息编码系统
US10791333B2 (en) Video encoding using hierarchical algorithms
JP6318158B2 (ja) 参照ピクチャ・リスト変更情報の条件付きシグナリング
RU2502217C2 (ru) Устройство обработки изображения, способ обработки изображения и программа
CA2748374C (en) Video encoding using previously calculated motion information
CN103959794B (zh) 基于约束偏移补偿和环路滤波来编码和解码图像的方法、及其设备
CN102714725B (zh) 用于多层视频编码应用的高性能码率控制
CN103329527B (zh) 在视频编码器中参考图像的压缩和解压缩
TWI586177B (zh) 基於場景之適應性位元率控制
CN107810635A (zh) 图像编译系统中基于照度补偿预测块的方法和设备
CN105247867A (zh) 用于不同层间预测类型的参考图片的独立重新采样及选择
CN104335585A (zh) 图像解码方法和使用其的装置
CN103563378A (zh) 存储器高效的上下文建模
CN102860008A (zh) 用于多层视频系统的复杂度自适应可伸缩解码及流处理
CN102026009A (zh) 用于视频编码的方法和系统
CN105208393A (zh) 视频编码设备、视频解码设备、视频编码方法、视频解码方法以及程序
TW202335504A (zh) 視訊編碼器、視訊解碼器、用於編碼與解碼之方法及用以實現進階視訊寫碼概念之視訊資料串流
US9654791B1 (en) System and method for efficient multi-bitrate and multi-spatial resolution media encoding
CN104539948A (zh) 视频处理系统和视频处理方法
JP5768180B2 (ja) 画像復号方法及び画像復号装置
KR101353214B1 (ko) 비디오 코딩 방법 및 그 장치
KR101086724B1 (ko) 영상의 복잡도를 이용한 h.264/avc 부호화기의 양자화 파라미터 결정 방법 및 이를 구현하는 h.264/avc 부호화기
JP5472094B2 (ja) 動画像変換装置、動画像配信システム、動画像変換方法及びプログラム
KR101409852B1 (ko) 영상의 움직임 객체 분석에 따른 계위적 부호화 방법 및 장치
KR101307469B1 (ko) 비디오 인코더, 비디오 디코더, 비디오 인코딩 방법 및 비디오 디코딩 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180627

Address after: No. 18, Wu Sha seashore road, Changan Town, Dongguan, Guangdong

Patentee after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

Address before: California, USA

Patentee before: DOLBY LABORATORIES LICENSING Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160608