CN103339934A - 视频编码 - Google Patents

视频编码 Download PDF

Info

Publication number
CN103339934A
CN103339934A CN2011800610929A CN201180061092A CN103339934A CN 103339934 A CN103339934 A CN 103339934A CN 2011800610929 A CN2011800610929 A CN 2011800610929A CN 201180061092 A CN201180061092 A CN 201180061092A CN 103339934 A CN103339934 A CN 103339934A
Authority
CN
China
Prior art keywords
bit rate
quality
video
coding
bit
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
CN2011800610929A
Other languages
English (en)
Other versions
CN103339934B (zh
Inventor
迈克尔·埃尔林·尼尔森
罗里·斯图尔特·特恩布尔
C·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.)
British Telecommunications PLC
Original Assignee
British Telecommunications PLC
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 British Telecommunications PLC filed Critical British Telecommunications PLC
Publication of CN103339934A publication Critical patent/CN103339934A/zh
Application granted granted Critical
Publication of CN103339934B publication Critical patent/CN103339934B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/177Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
    • 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
    • H04N19/194Methods 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 involving only two passes

Landscapes

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

Abstract

本发明公开了一种视频编码的方法和装置,特别涉及与视频压缩相关的应用。许多商用的视频编码器支持固定比特率编码,但不支持恒定质量编码。本方面的方面涉及视频编码的方法和装置,所述方法包括确定固定比特率编码器可以工作的比特率,从而能够从以这样确定的比特率编码的文件中选择视频片段,以生成质量几乎恒定的输出比特流。从用于易压缩的场景的低比特率比特流中选择比特流片段,而从用于难压缩的场景的高比特率比特流中选择比特流片段。

Description

视频编码
技术领域
本发明涉及视频编码。特别地,本发明的各方面涉及视频编码的方法和装置。优选实施方式涉及视频压缩,并且特别地,涉及在“几乎恒定”的感知质量的情况下的视频编码。
背景技术
由于在对图片进行编码时生成的比特数取决于图片内容(该图片与之前编码的图片的相似度如何以及图片中包含多少细节),因此编码的视频通常具有可变比特率(VBR)。一些视频场景能够被以小数目的比特编码为给定的质量,而其他场景可能要求多得多的比特来实现同样的质量。当使用固定比特率(CBR)编码时,视频被以随时间变化的质量进行编码以满足比特率约束。这对于用户来说是次优的,用户更偏好恒定的质量。而且,通过独立于视频内容的类型而固定比特率,一些类型的内容(如新闻和戏剧)能够被效果很好地编码,而其他类型的内容(例如,快速移动的运动类节目、音乐视频和音乐会),只能够效果很差地进行编码。
视频序列的总体感知质量(通常来说)并不是整个视频序列中的各小块的质量的平均值,而是偏向整个视频序列或其一部分中观察到的最差的质量。因此,通过以几乎恒定质量进行编码(与以足够高以确保所有场景都被编码为特定感知质量级别以上的固定比特率进行编码相反),没有浪费比特来将一些场景编码为高于其它场景可以被编码的质量所需的质量,并且与使用固定比特率编码的情况相比,能够实现更小的整体编码文件大小。
然而,以恒定感知质量进行编码没有得到商用视频编码平台的广泛支持,这样的常用视频编码平台通常支持固定比特率编码。
现有技术
国际专利申请WO2009/112801(“Nilsson”)描述了一种以恒定感知质量进行编码的方法。使用具有可变参数的编码算法对图片进行编码,从而编码的质量是变化的。更详细地总结该方法,首先为质量测量参数指定目标值。而后,对于待编码的每个图片(或图片的一部分)独立于其它图片地,基于a)图片区域的目标值和b)依赖于该图片区域的图片内容的掩蔽量C来估计可变参数QP的值。然后,使用所估计的值对图片进行编码。可以针对编码质量对于掩蔽效果的影响而对掩蔽量进行补偿。
国际专利申请WO2009/060178(“Nilsson”)描述了一种方法,其从多个编码视频流中选择视频块,以生成具有几乎恒定的感知质量的单个视频流,该视频流可以被以指定的客户端视频缓冲大小以固定比特率进行传输。需要注意的是,该文献涉及了当以固定比特率传输时在编码比特流之间进行选择以满足缓冲限制。
美国专利申请US2008/260042(“Shah等”)描述了一种技术,其用于控制多媒体序列的感知质量,以试图达到想要的恒定感知质量,而与序列的内容无关。特别地,编码装置可以执行质量控制技术,以基于序列片段的内容将序列片段与内容“分类”关联,而后确定序列片段的感知质量度量,并调整至少一个用于对该片段进行编码的编码参数,从而序列片段的感知质量收敛于想要的质量。
简要参考其它引用的现有技术:Dongdong Zhang等“A Two-Pass Rate ControlAlgorithm for H.264/AVC High-Definition Video Coding”(“H.264/AVC高分辨率视频编码的双通路码率控制算法”)(Signal Processing:Image Communication(信号处理:图像通信),第24卷,第5期,(2009年5月1日),第357-367页),涉及一种双通路码率控制算法,其用于为H.264/AVC高清晰度视频编码实现恒定质量编码。
美国专利US6278735(“Mohsenian”)涉及一种实时单通路可变比特率控制策略和编码器。其涉及利用单通路的编码,并且特别涉及为每组帧预先确定目标比特数。
诸如BTVision的各种当前使用的因特网协议电视(IPTV)服务使用固定比特率编码和网络上的带宽预留。显然可能的是,这些服务的未来版本将允许更多的灵活性,包括放弃带宽预留,并提供以除了固定比特率之外的比特率进行编码的可能性。使用几乎恒定感知质量的编码将能够减少编码文件大小同时保持感知质量目标,从而可以减少内容传输开销,特别是在依赖于字节量的情况下。
发明内容
根据本发明的第一方面,提供了一种视频编码的方法,包括:
(a)获得以一个或多个初始固定比特率编码的视频序列;
(b)将所编码的视频序列划分为临时部分;
(c)对各临时部分进行分析,从而对于多个所述临时部分中的每一个确定固定比特率,所述临时部分能够以所述固定比特率进行编码,以满足预定感知质量要求;
(d)将所确定的固定比特率的范围划分为多个子范围,每个子范围具有多个不同比特率中选择的与其相关的比特率;
(e)将各临时部分分配给所述子范围之一,从而如果以与分配给所述临时部分的子范围相关的比特率进行编码,则所述临时部分将满足所述预定感知质量要求;
(f)对于所述序列建立第一比特计数量和第二比特计数量,第一比特计数量指示是所述临时部分分别以分配给所述临时部分的子范围的比特率进行编码所要求的数据量,并且第二比特计数量指示所述临时部分被均以足以满足恒定感知质量要求的比特率进行编码所要求的数据量;
(g)确定指示所述第一比特计数量和所述第二比特计数量之间的差的级别的差值量;
(h)使用更新后的比特率组对固定比特率的范围进行至少一次再划分,从而至少一个子区域具有不同的与之相关的比特率,所述更新后的比特率组使得步骤(e)、(f)和(g)的随后的执行导致确定指示所述差的减少的差值量;以及
(i)创建输出视频序列,该输出视频序列包括分别以所述更新后的比特率组中的不同比特率编码的临时部分。
可以接收已经被以初始固定比特率进行了编码的视频序列或者可以在接收视频序列后,对其进行编码以获得以初始固定比特率编码的视频序列。
根据优选实施方式,所获得的视频序列可以初始以单一预定初始固定比特率进行编码。例如,其可以初始以最大码率进行编码,可以以该最大码率对内容进行编码以用于给定视频服务,这可以使得允许初始固定比特率编码用作可以最终在创建输出视频序列时使用的最高的固定比特率编码。
替选地,所获得的视频序列或其部分可以初始以不同的初始固定比特率进行编码。例如,所获得的视频序列的各部分可以识别为具有不同的特性(使用已知的视频分析技术或其他方法),并且可以以不同的初始固定比特率进行编码,依据在各部分中识别出的各自特性来确定各部分的初始比特率。“特性”可以与视频的不同“类型”(例如,新闻、戏剧、运动、音乐视频和音乐会等等)相关,从其导出或被选择为指示所述“类型”,并且可以允许使用适当选择的不同初始编码来单独处理整个视频序列的不同部分。
根据优选实施方式,可以执行固定比特率的范围的再划分的步骤,使得所述更新后的比特率组包括初始固定比特率,或者如果使用了多于一个的比特率,则所述更新后的比特率组包括(一个或多个)初始比特率中的至少一个。这可以使整个处理更加高效,因为初始编码可以然后在创建输出视频序列时使用。在这些实施方式中,固定比特率的范围的再划分可以包括识别具有大于与其相关的特定初始固定比特率的比特率的子范围的最优数量以及具有低于与其相关的所述至少一个初始固定比特率的比特率的子范围的最优数量的步骤。
优选地,用于编码的固定比特率的数量处于2和10之间,优选为大约4。
根据一些实施方式,所述固定比特率的范围的再划分可以包括将固定比特率的范围划分为与初始使用的数量不同的数量的子范围,每个子范围具有与其相关的多个不同比特率中的选择的一个。这可以用于发现选择的初始数量(例如4)不能导向满足的终止标准,或者发现不能导致足够快地导致终止标准的情况。可以然后在继续处理时使用更多数量的子范围(例如6个或8个),以便于进一步的迭代可以(更快地)导向满足的终止标准。
根据一些实施方式,用于编码的固定比特率可以受到预定的最大比特率限制。这是由于能够在内容的任意点开始(常常已知为随机接入)传输内容,同时将所要求的传递比特率限制到最大比特率,或者也可以是其他的原因。
本发明的其他方面涉及执行第一方面的方法的装置和计算机程序,以及载体,最优选的是有形载体,例如载有这些程序的磁盘或光盘(例如硬盘驱动器、CD ROM或DVD等)或盘或固态存储装置。
上面提到的与第一方面相关的多种选项和优选实施方式也可应用于这些其他的方面。
如在本文档的“摘要”中所陈述的,这里公开了视频编码的方法和装置,特别用于视频压缩。而许多商用的视频编码器支持固定比特率编码,通常不支持恒定质量编码。本发明的各方面涉及视频编码的方法和装置,所述方法包括确定固定比特率编码器工作的比特率,从而能够从以如上确定的比特率编码的文件中选择视频的片段,以生成质量几乎恒定的输出比特流,而没有以不必要的高比特率编码不必要大量的视频。对于易压缩的场景,可以从低比特率比特流中选择比特流片段,并且对于难压缩的场景,可以从高比特率比特流中选择比特流片段。
再次简单地参考前文中提到的WO2009/060178,需要注意的是,当以固定的比特率传输时,在已编码的比特流之间进行选择,以满足缓冲限制,而本发明的优选实施方式选择进行固定比特率编码的比特率。
附图说明
将参考附图对本发明的优选实施方式进行说明,其中:
图1为视频编码器的框图;
图2至图10是示出一些参数的推导的图;且
图11是解释执行根据本发明的优选实施方式的方法时的诸如图1中所示的编码器的编码器的操作的流程图。
具体实施方式
参考图1-11,将描述根据优选实施方式的视频编码的方法和设备。然而,首先简要地概述几个相关的概念。
如前文中所述,由于在对图片进行编码时生成的比特数取决于图片内容(该图片与之前编码的图片的相似度如何以及图片中包含多少细节),因此编码的视频通常具有可变比特率(VBR)。一些视频场景能够被以小数目的比特编码为给定的质量,而其他场景可能要求多得多的比特来实现同样的质量。
视频序列的总体感知质量(并不是整个视频序列中的各小块的质量的平均值,而是偏向整个视频序列或其一部分中观察到的最差的质量。因此,通过以几乎恒定质量进行编码(与以足够高以确保所有场景都被编码为特定感知质量级别以上的固定比特率进行编码相反),没有浪费比特来将一些场景编码为高于其它场景可以被编码的质量所需的质量,并且与使用固定比特率编码的情况相比,能够实现更小的整体编码文件大小。
如前文中指出的,本申请发明者意识到商用视频编码平台通常支持固定比特率编码,但是没有广泛支持恒定感知质量的编码。本发明的优选实施方式以多个固定的比特率值对内容进行编码,分析编码的统计数据,并且通过从分别以固定码率编码的视频流中选择视频块来创建几乎恒定质量的视频流。特别地,本发明涉及固定比特率编码情况下使用的比特率的选择,通常对这样的编码的数量存在限制,以降低或最小化最终几乎恒定质量编码的文件的大小,同时确保视频中每块被以目标质量级别或更高级别进行编码。
现在参考图1,示出的装置包括视频接口1,其在视频输入2处接收未压缩形式的数字编码的视频信号。处理器3在盘存储器4中存储的程序控制下操作并且访问内存5和馈送视频输出7的视频输出缓冲器6。内存5包括内存区域51,用于暂存图片参数。所述程序包括通用操作系统40和视频编码软件,所述视频编码软件执行一个或多个下文中描述的方法。该软件包括多个程序(或多组程序),即:
-控制软件41;
-压缩软件42:在该示例中,压缩软件执行符合ITU H.264标准的编码算法;及
-感知质量评估软件43。
图2示出了以恒定质量编码视频序列的结果,该恒定质量为4.0,是“良好”质量。为了达到该示例的目的,使用前文介绍的WO2009/112801中描述的恒定感知质量编码技术进行编码,这里通过引用将其内容合并到本申请中,但是可以理解的是,这只是众多固定视觉感知质量编码的可能的技术中的一种。在该示例中随后使用国际专利申请WO2007/066066(“Davis”)中描述的度量来进行视频质量的测量,该国际申请的内容也通过引用而合并到本申请中,但是可以理解的是,可以使用其他技术来对视频质量进行测量。
为了方便起见,这里简要介绍WO2007/066066,其涉及一种视频质量测量技术,特别用于视频信号具有下述形式的情况,其中所述形式包括:代表多个帧的“原始形式”;“编码形式”,其中使用利用可变量化器步长大小的适合的压缩算法对视频信号进行编码使得编码后的信号包括量化器步长大小参数;以及“解码形式”,其中,编码后的视频信号已经被至少部分地重转换为原始形式。WO2007/066066的技术包括:a)生成第一质量测量值,其是量化器步长大小参数的函数;b)生成第二质量测量值,其为由解码形式的视频信号代表的帧的空间复杂性的函数;和c)组合第一和第二测量值。
现在返回到图2,一旦视频序列被编码(例如使用WO2009/112801中所述的技术),且一旦确定了质量度量(例如使用WO2007/066066中所述的技术),则用于编码每组图片((在该示例中)为以“帧内”编码帧(即,“I帧”)开始的24个帧)的比特数也就确定了。这些比特数随后从低到高地排序以生成图2中所示的累积频率曲线。需要记住的是,该图表示出了恒定质量“累积频率”曲线,并且因此,x轴表示刻度为0-100%的“累积频率”(与简单表示“频率”相反),可以认为x轴表示组成视频块的图片组的视频内容的“变化性”,其中“变化性”指的是在关注的块期间随着时间发生的空间变化量、色度变化量和/或强度变化量。因此,范围从易于压缩的简单的静止图像(位于范围的0%端或接近0%端)到不易压缩的包含快速的移动及色度和/或强度的大的变化的高度复杂的场景的场景(位于范围的100%端或接近100%端)。
可见,图片组所需要的比特率从153KBit/s变化到4551KBit/s,平均值为900KBit/s。
当然,可以通过对在恒定质量编码操作模式中操作的编码器所生成的比特流进行分析来生成该曲线。如前文中所述,恒定质量编码在实际中并没有广泛地实施,而固比特率编码则已经得到了广泛的应用。因此我们的目标在于通过组合以不同的固定比特率编码同一视频内容(或其部分)而生成的比特流中的数据块来生成几乎恒定质量编码的比特流。显然,想要得到完全恒定的质量,我们需要以与视频内容的数据块同样多的比特率级别对视频内容进行编码,这是每个块要求不同的比特率以实现完全相同的质量。这通常是不可行的。代替地,我们将固定比特率级别的数量限制到合理的较低的数目,其至少为2,并且在该示例中为4级。以下的讨论将解释我们如何解决下述问题,即怎样确定固定比特率级别的值以能够在不低于目标很顶质量级别的质量级别表示各视频块同时降低或或最小化最终编码的几乎恒定质量视频文件中的数据量。
现在我们将描述一种确定这样的固定比特率级别的算法。
我们首先选择我们将要使用的固定比特率级别的数量。如前文提到的,在本示例中,这个数量是4,为方便起见而选择这个数,因为它提供适当的灵活性,不会给系统施加特别高的处理要求或增加不必要的复杂度(理论上级别的数量可以小到2,但是优选的是大于2)。我们然后沿着水平轴将图2中的累积曲线划分成该数量的部分,并且识别每个部分实现想要的目标质量所需要的最高比特率。由于所述数据已经按照比特率要求增大的次序进行了排序,因此识别出的恒定比特率级别是各部分的右手端处该累积频率曲线上的比特率的值(即垂直轴)。图3中示出了用该方式选择的固定比特率级别以及要实现想要的目标质量的视频块(从图3中可见这样选择的初始固定比特率级别分别是595KBit/s、900KBit/s、1553KBit/s和4551KBit/s-确切的值实际上取自表1,将在后文中示出和讨论)。
我们发现对于任意的特别的视频块,在固定比特率编码中使用的比特率至少要达到恒定质量编码要求的比特率,两条曲线之间的垂直距离表示恒定质量编码要求的额外的比特率。注意的是,该额外的比特率由于导致以高于目标质量的质量对特定的视频块进行编码因而被视为是“浪费的”,并且因此,质量的这样的增加是不需要的。因此我们认为两条曲线之间(即,“实线”上方但是“阶梯状的虚线”下方)的面积代表了使用固定比特编码时总的“浪费的”比特率。
为了最小化这种浪费,我们因此需要最小化两条曲线之间的面积。
为了达到这一目的,我们首先需测量两条曲线之间总的面积(即,在该示例中,四块单独的面积之和),然后将该总面积除以固定比特率级别的数量(即,该示例中是4)以获得面积分数。接下来,在高比特率端开始,我们将视频块分配或指定(通过标记或其他方法)给固定比特率级别,直到与每个固定比特率级别相关的面积大于或等于面积分数。这样确定的第一固定比特率级别必须等于视频序列中观察到的任何块所要求的最高比特率(即,在该示例中,4551KBit/s)。接下来的固定比特率级别被为针对还没有与与固定比特率级别相关的块的最高比特率。一般来说,与最低固定比特率级别相关的面积(即,在图3中,0-25%范围内的两条曲线之间的面积)小于面积分数,并且因此,在实际中,我们并不在单次迭代中就使与各固定比特率级别相关的面积相等。因此,我们进行迭代操作,直到与各固定比特率级别相关的面积满足预定的“终止标准”,该标准在被满足时指示面积在预定的容差内是相等的。
显然的是,其他的算法也可以用于提供该问题的解决方案,从而找到最小化曲线之间的面积的固定比特率级别——其他的实施方式可以使用其他的算法。
图4示出了该算法的一次迭代的结果,并且图5示出了该算法两次迭代的结果。从这些图表中可以很明显地看出,随着各连续的迭代,四个面积的和(代表着“浪费的”比特率)减小。
下面的表1示出了初始设置和四次上述迭代算法中的每次之后的固定比特率级别(单位KBit/s)、与各级别相关的面积和总面积(单位均为MByte)以及相对于初始设置的节省的百分比。
Figure BPA00001751688400091
表1
当然可以使用许多可用的迭代终止标准。一个优选的标准是,在迭代引起总面积增加时停止并且当总面积的减少百分比的增量少于预定阈值(例如1%)时停止。替选地,当面积1处于其他面积的给定容差内(例如处于其他面积的5%内时)终止。
在该示例中,我们在四次迭代之后终止,并选择了码率799KBit/s、1457KBit/s、2454KBit/s和4551KBit/s用于固定比特率编码。
固定比特率编码
在上文的示例中,我们首先使用恒定质量编码的统计数据来确定恒定质量编码所要求的比特率的累积频率曲线,并且然后计算出合适的固定比特率级别能够用于创建几乎恒定质量编码同时使浪费的比特率最小化。
然而,在实践中,我们仅当不能通过其他处理(例如使用被构造为以恒定质量编码的编码器)来实现恒定质量编码时才执行固定比特率编码以创建几乎恒定质量的编码。
鉴于上述,现在我们描述避免了一开始就需要以恒定质量进行编码的根据优选实施方式的处理。
首先,我们以预定的固定比特率级别进行编码。举例来说,可以根据内容的类型来决定为各编码的视频内容使用使用相同的比特率还是不同的比特率。所选择的比特率也可以是为给定的视频服务对内容进行编码的最高比特率。
在该示例中,我们以2MBit/s进行编码。随后我们分析编码的视频中的各组图片的质量,并且确定使用的我们期望几乎通常固定的比特率。我们还对于各独立编码帧计算各组图片的平均质量(在该示例中,通过应用在WO2007/066066中定义的度量来进行确定),并且将所获得的值对于图片组取平均。我们还记录用于编码这组图片的平均量化参数以及这组图片的平均对比度,平均对比度是这组图片的空间复杂度的度量,并且平均量化参数和平均对比度是使用WO2007/066066的技术来计算度量时所需要的参数。
我们选择目标质量,并希望将所有内容编码到该目标质量或或者以上。在该示例中,我们选择值4.0,其对应于“良好”质量。随后我们使用计算出的固定比特率编码的参数来估计以目标质量对每组图片进行编码所需要的比特率。具体方法如下。
WO2009/112801公开了一种技术,能够在平均对比度已知时通过下述方式确定实现给定的目标质量所要求的平均量化参数:识别对于例如可以使用诸如在WO2007/066066中描述的技术的计数来确定的度量的二次方程近似并且对平均量化参数的二次方程求解。可以使用本实施方式中涉及的技术来确定需要的平均量化参数,但是可以理解的是,本发明的实施方式不仅仅限制于使用这些技术,当然也可以使用其他的技术。
WO2007/066066的质量度量的二次方程近似如下,其中Q是所述平均量化参数,而C是平均对比度。
可以通过已知的解二次等式的方法进行求解,下文中给出的解用于实现目标质量所需要的平均量化指数从而获得平均对比度。
Q = 0.174177 + ( 0.174177 ) 2 - 4 × 0.00503 × ( quality - 2.649382 - 0.072 × C ) 2 × 0.00503
随后我们估计利用量化参数的该值进行编码所需要的比特率。注意公知的是,在利用H.264进行编码时,比特率大致根据以下等式随着量化参而变化。当利用其他视频编码标准进行编码时,可以使用其他的等式,并且相应的等式也都是已知的。
bit rate 2 = bit rate 1 × 2 Q 1 - Q 2 K
参数K随着内容类型而变化,并且随着质量变化到一定程度,并且通常处于4.0到5.0的范围中。在该示例中,我们设置K=4.4。
因此,我们可以从固定比特编码估计以恒定质量编码序列中的各组图片所需的比特数。然后,我们能够通过下述方式如具有实际恒定质量编码的原始情况那样继续:按照估计的以恒定质量对各组图片进行编码所需要的比特数的顺序,从最低到最高地,对图片组进行排序,并且绘制累积频率分布。
图6示出了初始恒定质量编码的累积频率分布和根据对固定比特率编码的分析而得到的估计的累积频率分布。
能够看到的是,估计的恒定质量累积频率与实际的曲线非常接近,因此非常适合用于以固定比特率编码的固定比特率级别的选择。
注意的是,虽然用于估计以修改后的量化指数对于给定图片组进行编码时所要求的比特率的上述处理会频繁地给出不准确的结果,但是当一起考虑很多图片组的结果时,整体结果得到了很大的改进。
所估计的恒定质量累积频率曲线然后能够用于计算前文中所述的固定比特率编码级别。如果完全按照前文的描述进行计算,则可能的是,用于估计恒定质量累积频率曲线的内容已经被编码所使用的比特率将不会是选择的比特率中的一个。在一些情况下,这是可以接受的,但是在另外的情况下,会希望将其用作固定比特率编码中的一个。
在这种情况下,所述过程可以进行如下修改。
如前文所述,我们首先选择将要使用的固定比特率级别的数目。在该示例中,该数目还是4。然后,我们比特率是在原始固定比特率编码中使用的比特率的点将累积曲线划分成两部分。
如图7中所示,曲线的低于原始固定比特率编码时所用的比特率2MBit/s的部分被示出为实线,曲线的高于原始固定比特率编码时所用的比特率的部分被示出为虚线。
然后我们如前面针对整个曲线所描述的那样对两个曲线部分中的每一个进行处理,因为我们不知道每个线部分的固定比特率编码级别的最优的数目(我们仅知道总数),因此我们进行了额外的迭代。因此我们对每个线部分的所有可能的固定比特率编码级别的数目进行迭代。在该示例中,我们将对于第一部分进行三级迭代,对于第二部分进行一次迭代,并且然后对于两部分均进行两次迭代,最后对于第一部分进行一次迭代,而对于第二部分进行三次迭代。我们将选择给出最低总面积的方案。
在其他的申请方案中,我们希望限制用作固定比特率编码级别的最大比特率,原因是能够在内容的任意点开始传输内容(常常已知为随机接入),同时将所要求的传输比特率限制到所述最大比特率。
在这种情况下,以该最大比特率执行初始编码是可行的。以该比特率以低于目标质量的质量对图片组进行编码将在最终的“几乎恒定”质量编码文件中以该较低质量进行编码。其他图片组将以该目标质量以上的质量进行编码。
在这种情况下,在第一编码中,我们不需要估计以比目标质量低的质量进行编码的图片组所需的比特率,因为该比特率将用于编码那些图片组。因此我们能够在初始编码时使用的比特率终止恒定质量累积频率曲线(在该情况下,是前面提到的图中的实线),并且,如前所述地进行处理以找到固定比特率编码级别;或者我们可以在初始编码所使用的比特率将比特率固定在恒定质量编码累积频率曲线上,并且允许曲线继续到所有图片组,如图8所示,并且如前所述地进行处理以找到固定比特率编码级别。
现在我们来描述一个示例,其中我们选择用于高于和低于初始固定比特率编码时使用的比特率的比特率的固定比特率编码级别。
如前文中所述,我们考虑三种情况:1)对于第一部分选择三个固定比特率级别,并且对于第二部分选择一个;2)对于每个部分选择两个固定比特率级别;以及3)对于第一部分选择一个固定比特率级别并且对于第二部分选择三个。
图9示出了三种情况的每一种的固定比特率级别的初始设置,其中每部分的水平范围被划分成相等的百分数,除数是用于各部分的固定比特率级别的数量。
图10示出了每种情况的迭代处理都结束后的三种情况中的每一种的所选择的固定比特率级别。
下文中的表格示出了三种情况中每一种的选择的比特率以及每次迭代后的相关面积。注意的是,在所有情况下,最高的比特率始终是图片组的最大估计比特率,并且估计的累积频率曲线的最低的部分使用的最高比特率始终是初始编码比特率。
情况1:对于第一部分选择三个固定比特率级别并且对于第二部分选择一个:
Figure BPA00001751688400121
情况2:对于每个部分使用两个固定比特率级别:
Figure BPA00001751688400122
情况3:对于第一部分选择一个固定比特率级别并且对于第二部分选择三个
我们看到,情况2收敛到最低总面积,因此最佳解决方案是具有原始编码率以上的两个固定比特率级别和不高于初始编码率两个固定比特率级别,注意后者之一为初始编码率。
我们注意到,如果按升序考虑各种情况,则不需要情况3的迭代,因为即使在该情况下进行迭代之前,与估计的累积频率曲线的最低部分相关的面积大于情况2中的总面积,并且因此,由于在情况3中最低部分不会发生变化,所以情况3绝对不会比情况2好。
图11为解释例如执行根据优选实施方式的方法的图1中所示的编码器的操作的流程图。参照图11,例如,在图1的装置的视频接口1的输入2接收将要编码的视频序列(步骤100)。序列可以被接收为是数字编码视频帧的流或文件。使用方便的固定比特率(CBR)编码率对所述序列进行初始编码(步骤105)。然后将该编码后的序列划分成多个视频块,并对各个块进行分析(步骤110)以确定其需要以什么样的固定比特率来进行编码从而满足目标感知质量级别(步骤115)。这时,能够通过对这样确定的比特数进行排序来绘制如图2中所示的图表(步骤120),并且通过将这样确定的固定比特率的范围划分成四(或者其他选择的数字)个子范围来绘制如图3中所示的图表,其边界是初始(即,迭代之前)的固定比特率(步骤125)。可以通过将该曲线沿其x轴划分成四个相等部分或者以其他方式来完成上述划分。
如前文所述,对于图3的沿x轴的任一点处示出的视频块来说,该点位于恒定质量曲线之上且阶梯状的虚线以下的垂直距离表示恒定质量编码所要求的额外的比特率,该额外的比特率由于导致以不必要高的质量(例如,目标质量以上但是质量的增加能够视为没有导致适合的整体感知质量)对视频的特定块进行编码而将被“浪费”。往回参考图3、4和5,下一步的处理包括执行迭代以减少将以该方式“浪费”的额外的比特率的总量,而无需曲线划分为超过所选择的数量(即,在该情况下为4)的恒定比特率子范围。
由于恒定质量累积频率曲线通常是不规则延伸的S形曲线,因此初始设定(沿x轴等分的区域)通常会导致图表的右端的面积部分显著大于其它面积部分。通过对各部分进行再划分(例如,减少该最大的面积部分),其他面积部分会增加,但增加的程度显著少于最大面积部分的减小。随着连续的各次迭代,总面积(即,各面积部分之和)可以因此减少。
图11的步骤130到步骤150表示如何完成上述处理。在步骤130,计算总面积(如图3中所示,各部分的位置处于初始设置)。在步骤135,该总面积划分为选择的数量(这里是4),随后在步骤140,重新确定这些部分的位置,从而右边区域的面积(原先较大)仅为先前总面积的四分之一。在步骤145中重新计算总面积(即,利用如图4中所示的重新划分的各部分)。在步骤150,确定是否满足例如先前讨论的预定终止条件。如果没有满足,则在步骤150重新检查结果是否满足终止条件之前,重复步骤135、140和145以执行进一步的迭代。如果满足了终止条件,则处理可以继续下一阶段。
从固定比特率视频比特流创建几乎恒定质量视频比特流
特别参照图11的步骤100至150,我们已经描述了如何选择对视频进行编码的固定比特率级别,使得能够从每个比特流中选择块来生成视频比特流,其中,所有块被以目标质量或者更高的质量进行编码,同时尽量最小化创建的视频比特流的大小。
在选择了这些固定比特率级别之后,视频内容(根据需要为整个序列或序列的各个部分)被然后以这些选择的级别的固定比特率进行编码(步骤155),除非已经执行了这种编码。如前文所述,对于每组图片分析固定比特率编码的视频比特流(步骤160)以确定质量度量。然后,我们相应地为视频内容中的每组图片创建新的视频比特流(步骤165),从已经以目标质量或更高的质量编码的最低比特率视频比特流中选择比特,或在任何编码中都无法实现目标质量的情况下从最高比特率视频比特流中选择比特。
能够如下面描述的说明性流程图那样从步骤200开始执行图11的最后步骤(步骤165)。
200以选择的固定比特率级别Lr(r=1…R)编码的源视频内容被划分成块g(g=1…G)(典型地,从帧内编码的图片开始的图片组),并且对于每个编码视频流中的块,确定感知质量Qrg。
210目标质量QT设置为用于输出几乎恒定质量编码比特流文件的目标质量。
220设置块索引g=1。
230设置比特率索引r=0。
240设置r=r+1。
250如果(Qrg≤QT)且(r≤R),则跳转到步骤240。
260为块g设置输出比特流文件的比特率索引Fg=r。
270设置g=g+1,如果g≤G,则跳转到步骤230,否则,结束。
当然,明显地,使用从多个均具有不同比特率的固定比特率视频比特流中取出的视频内容的临时部分(或“块”)(例如以前文中所述的方式进行选择)来创建最后的几乎恒定质量视频比特流的最终处理可以根据上述流程图步骤执行,或根据其他方式的变形执行。

Claims (12)

1.一种视频编码的方法,所述方法包括:
(a)获得以一个或多个初始固定比特率编码的视频序列;
(b)将所编码的视频序列划分为临时部分;
(c)对各临时部分进行分析,从而对于多个所述临时部分中的每一个确定固定比特率,所述临时部分能够以所述固定比特率进行编码,以满足预定感知质量要求;
(d)将所确定的固定比特率的范围划分为多个子范围,每个子范围具有多个不同比特率中选择的与其相关的比特率;
(e)将各临时部分分配给所述子范围之一,从而如果以与分配给所述临时部分的子范围相关的比特率进行编码,则所述临时部分将满足所述预定感知质量要求;
(f)对于所述序列建立第一比特计数量和第二比特计数量,所述第一比特计数量指示所述临时部分分别以分配给所述临时部分的所述子范围的比特率进行编码所要求的数据量,并且所述第二比特计数量指示所述临时部分被均被以足以满足恒定感知质量要求的比特率进行编码所要求的数据量;
(g)确定指示所述第一比特计数量和所述第二比特计数量之间的差的级别的差值量;
(h)使用更新后的比特率组对固定比特率的范围进行至少一次再划分,从而至少一个子区域具有不同的与之相关的比特率,所述更新后的比特率组使得步骤(e)、(f)和(g)的随后的执行导致确定指示所述差的减少的差值量;以及
(i)创建输出视频序列,所述输出视频序列包括分别以所述更新后的比特率组中的不同比特率编码的临时部分。
2.如权利要求1所述的方法,其中,所获得的视频序列被以预定的初始固定比特率进行初始编码。
3.如权利要求1或2所述的方法,其中,所获得的视频序列被以可以为给定视频服务对内容进行编码的最大码率进行初始编码。
4.如前述权利要求中的任一项所述的方法,其中,所获得的视频序列的各部分被识别为具有不同的特性,并且被以不同的初始固定比特率进行编码,依据各部分中识别出的各自的特性来确定各部分的初始比特率。
5.如前述权利要求中的任一项所述的方法,其中,执行固定比特率的范围的再划分的各步骤使得更新后的比特率组包括所述一个或多个初始比特率中的至少一个。
6.如权利要求5所述的方法,其中,对固定比特率的范围的再划分包括下述步骤,该步骤识别具有大于与其相关的所述至少一个初始固定比特率的比特率的子范围的最优数量以及具有低于与其相关的所述至少一个初始固定比特率的比特率的子范围的最优数量。
7.如前述权利要求中的任一项所述的方法,其中,用于编码的固定比特率的数量处于2和10之间,优选为4。
8.如前述权利要求中的任一项所述的方法,其中,对固定比特率的范围的再划分可以包括将固定比特率的范围划分为不同数量的子范围,每个子范围具有与其相关的多个不同比特率中的选择的一个。
9.如前述权利要求中的任一项所述的方法,其中,用于编码的固定比特率受到预定的最大比特率限制。
10.一种执行如权利要求1至9中的任一项所述的装置。
11.一种处理器可执行指令,所述处理器可执行指令使数字处理器执行如权利要求1至9中的任一项所述的方法。
12.一种承载如权利要求11所述的处理器可执行命令的载体。
CN201180061092.9A 2010-12-29 2011-12-20 视频编码 Active CN103339934B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP10252239A EP2472868A1 (en) 2010-12-29 2010-12-29 Video coding
EP10252239.8 2010-12-29
PCT/GB2011/001745 WO2012089991A1 (en) 2010-12-29 2011-12-20 Video coding

Publications (2)

Publication Number Publication Date
CN103339934A true CN103339934A (zh) 2013-10-02
CN103339934B CN103339934B (zh) 2016-06-22

Family

ID=43971386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180061092.9A Active CN103339934B (zh) 2010-12-29 2011-12-20 视频编码

Country Status (6)

Country Link
US (1) US8824547B2 (zh)
EP (2) EP2472868A1 (zh)
JP (1) JP5507770B2 (zh)
KR (1) KR101583896B1 (zh)
CN (1) CN103339934B (zh)
WO (1) WO2012089991A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2373049A1 (en) * 2010-03-31 2011-10-05 British Telecommunications Public Limited Company Video quality measurement
WO2016183251A1 (en) 2015-05-11 2016-11-17 Mediamelon, Inc. Systems and methods for performing quality based streaming
US11076187B2 (en) 2015-05-11 2021-07-27 Mediamelon, Inc. Systems and methods for performing quality based streaming
JP2017157903A (ja) * 2016-02-29 2017-09-07 富士ゼロックス株式会社 情報処理装置
CA3178565A1 (en) * 2020-05-14 2021-11-18 Abdul REHMAN Perceptual quality assessment metric based content and viewer aware encoding
US11870833B2 (en) * 2021-08-31 2024-01-09 Google Llc Methods and systems for encoder parameter setting optimization

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009112801A1 (en) * 2008-03-11 2009-09-17 British Telecommunications Public Limited Company Video coding
CN101562740A (zh) * 2009-06-02 2009-10-21 北京大学 视频编码处理方法和装置
CN101658035A (zh) * 2007-04-23 2010-02-24 高通股份有限公司 用于质量受控编码的方法和系统
CN101855907A (zh) * 2007-11-07 2010-10-06 英国电讯有限公司 视频编码
CN101882316A (zh) * 2010-06-07 2010-11-10 深圳市融创天下科技发展有限公司 一种图像区域划分/编码方法、装置及系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3107620B2 (ja) * 1991-12-18 2000-11-13 沖電気工業株式会社 音声符号化方法
JPH07202820A (ja) * 1993-12-28 1995-08-04 Matsushita Electric Ind Co Ltd ビットレート制御システム
US5612900A (en) * 1995-05-08 1997-03-18 Kabushiki Kaisha Toshiba Video encoding method and system which encodes using a rate-quantizer model
US6278735B1 (en) * 1998-03-19 2001-08-21 International Business Machines Corporation Real-time single pass variable bit rate control strategy and encoder
KR100585932B1 (ko) * 2001-08-29 2006-06-01 한국전자통신연구원 실시간 동적 가변 비트율 전송 장치 및 그 방법
RU2329616C2 (ru) * 2003-10-20 2008-07-20 Самсунг Электроникс Ко., Лтд. Способ управления расходом битов и устройство для нормализации качества визуального изображения
US8254438B2 (en) 2005-12-05 2012-08-28 British Telecommunications Public Limited Company Video quality measurement
GB0706424D0 (en) 2007-04-02 2007-05-09 British Telecomm Video streaming
US8165204B2 (en) 2008-02-29 2012-04-24 Michael Bronstein Resource allocation for frame-based controller
US8325800B2 (en) 2008-05-07 2012-12-04 Microsoft Corporation Encoding streaming media as a high bit rate layer, a low bit rate layer, and one or more intermediate bit rate layers
US8265140B2 (en) 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101658035A (zh) * 2007-04-23 2010-02-24 高通股份有限公司 用于质量受控编码的方法和系统
CN101855907A (zh) * 2007-11-07 2010-10-06 英国电讯有限公司 视频编码
WO2009112801A1 (en) * 2008-03-11 2009-09-17 British Telecommunications Public Limited Company Video coding
CN101562740A (zh) * 2009-06-02 2009-10-21 北京大学 视频编码处理方法和装置
CN101882316A (zh) * 2010-06-07 2010-11-10 深圳市融创天下科技发展有限公司 一种图像区域划分/编码方法、装置及系统

Also Published As

Publication number Publication date
EP2472868A1 (en) 2012-07-04
US20130279565A1 (en) 2013-10-24
JP5507770B2 (ja) 2014-05-28
JP2014504818A (ja) 2014-02-24
EP2659677B1 (en) 2015-01-28
KR101583896B1 (ko) 2016-01-08
KR20130135268A (ko) 2013-12-10
EP2659677A1 (en) 2013-11-06
CN103339934B (zh) 2016-06-22
US8824547B2 (en) 2014-09-02
WO2012089991A1 (en) 2012-07-05

Similar Documents

Publication Publication Date Title
US9313529B2 (en) Video streaming
US8824546B2 (en) Buffer based rate control in video coding
CN101185337B (zh) 具有预见的准恒定质量速率控制
US5677969A (en) Method, rate controller, and system for preventing overflow and underflow of a decoder buffer in a video compression system
EP3354035B1 (en) Abr allocation for statistical multiplexing
US6522693B1 (en) System and method for reencoding segments of buffer constrained video streams
US8996713B2 (en) Video streaming
CN102334341B (zh) 用于控制媒体流的编码的系统及方法
CN101658035B (zh) 用于质量受控编码的方法和系统
US7760801B2 (en) Transmission of video
US6587508B1 (en) Apparatus, method and computer program product for transcoding a coded moving picture sequence
CN103339934A (zh) 视频编码
US20110243223A1 (en) Multiplexed video streaming
Hoang et al. Lexicographic bit allocation for MPEG video
CN1266335A (zh) 用在多路复用系统中调节比特率的装置和方法
CN1286874A (zh) 具有几个数据压缩信道的数据压缩组件
US7957309B1 (en) Utilizing multiple distortion measures
CN100486335C (zh) 比特率自动调整装置
AU678927C (en) Method, rate controller, and system for preventing overflow and underflow of a decoder buffer
EP2408204A1 (en) Video streaming
Yu et al. Selective quality control of multiple video programs for digital broadcasting services
EP2239947A1 (en) Method for allocating bit rates to video programs transmitted within a fixed rate channel
MXPA99001880A (en) Device and method for controlling image encoding, encoding system, transmission system and broadcast system

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