当前位置: 首页 > 专利查询>谷歌公司专利>正文

视频编码的速率‑失真‑复杂性优化制造技术

技术编号:10284944 阅读:187 留言:0更新日期:2014-08-06 09:25
一种用于为视频托管服务优化编码比特率、失真和复杂性的视频编码系统。该系统包括编码模块,编码模块被配置用于:用比特率控制策略、一对复杂性分配控制参数和包括目标分辨率、目标比特率和目标质量信息的一个或者多个目标输出视频格式规范对多个视频进行编码。编码模块从编码中获得编码比特率、失真和复杂性性能采样。编码模块被配置用于从编码比特率、失真和复杂性性能采样选择最优编码比特率、失真和复杂性性能采样。编码计算简档映射模块被配置用于从最优编码比特率、失真和复杂性性能采样获得多个计算级别。对于每个计算级别,选择一对优化的复杂性分配控制参数和编码通道的数目。

【技术实现步骤摘要】
【国外来华专利技术】视频编码的速率-失真-复杂性优化
本专利技术主要地涉及视频托管系统,并且更具体地涉及一种用于在编码时间和比特率约束之下用优化的视觉质量对视频进行转码的视频编码系统。
技术介绍
视频托管服务、比如YOUTUBE,允许用户发表视频。多数视频托管服务将原有源视频从它的原生编码格式(例如MOV)转码成一个或者多个输出格式(例如ADOBEFLASH或者WindowsMediaVideo(WMV))。转码包括使用用于原生格式的视频编码解码器将源视频从原生格式解码成未编码的表示、然后利用用于输出格式的视频编码解码器对未编码的表示进行编码。转码可以用来减少存储要求并且也减少用于向客户端供应视频的带宽要求。在为具有数以百万计的视频的视频托管服务设计视频编码系统时的一个挑战是用可接受的视觉质量并且在合理计算成本对视频进行转码和存储。一个具体问题是高效分配编码比特和计算以实现源视频的优化的速率失真(R-D)和计算时间。一般而言,给定目标分辨率和帧速率,视频的视觉质量由它的使用速率控制算法而计算的编码比特率确定。常规视频编码系统使用多种编码策略以获得源视频的优化的速率失真,这些编码策略包括单通道(one-pass)和多通道(multi-pass)平均比特率编码(ABR)、恒定比特率编码(CBR)、恒定量化器编码(CQP)和恒定速率因子编码(CRF)。常规编码策略无法向编码的视频提供恒定视觉质量而又满足与视频关联的比特率约束并且未联合地优化比特率、失真和复杂性。例如ABR编码策略使用伸缩因子以及长期和短期补偿以实现目标比特率并且满足网络带宽约束。但是ABR编码的视觉质量可能在视频场景改变时波动。CBR编码策略被设计用于由具有固定大小的存储缓冲器控制的具有恒定比特率的实时流式传输。CBR在以上提到的常规编码策略之中提供最高编码速度、但是最低R-D性能。CQP编码策略维持恒定量化器并且使用相同量化参数(QP)来压缩每个帧。CQP可能尤其在它对具有密集场景改变的视频使用大型量化器时引起编码的视频的时间感知波动。CRF编码策略以用恒定速率因子实现恒定视觉质量为目标。CRF用标称量化器对视频进行编码、但是在场景具有大量动作和运动时增加QP并且反之亦然。CRF编码的缺点在于输出视频文件大小由于视频内容中的可变场景而不可预测。因此难以选择适当恒定速率因子值以满足网络或者存储系统的所需比特率约束。
技术实现思路
一种方法、系统和计算机程序产品为视频托管服务用适当编码计算简档提供速率-失真-复杂性优化的转码。在一个实施例中,与实际编码比特率和失真一起用比特率控制策略以及一个或者多个复杂性分配控制参数、目标比特率对视频集合进行编码。从编码中获得复杂性性能采样。从这一信息确定最优编码比特率、失真和复杂性性能采样,并且从所有编码比特率、失真和复杂性性能采样获得多个计算级别。对于每个计算机级别,选择优化的复杂性分配控制参数和编码通道的数目。另一实施例包括计算机系统,该计算机系统包括用于为视频托管服务优化编码比特率、失真和复杂性的包括编码模块和编码计算简档映射模块。另一实施例包括一种存储用于用以上描述的方式压缩视频的可执行计算机程序指令的非瞬态计算机可读介质。在说明书中描述的特征和优点并非总括,并且具体而言,许多附加特征和优点将鉴于附图、说明书和权利要求而为本领域普通技术人员所清楚。另外,应当注意在说明书中使用的言语已经主要出于可读性和指导目的而加以选择,并且可以尚未被选择用于界定或者限制公开的主题内容。附图说明图1是图示具有视频编码系统的视频托管服务的系统概况的框图,该视频编码系统具有速率-失真-复杂性(RDC)优化。图2是图示利用RDC优化在比特率约束之下的由视频描述长度引导的恒定质量视频编码策略的流程图。图3是利用RDC优化在比特率约束之下的输入视频的由视频描述长度引导的恒定质量视频编码的流程图。图4是在比特率约束之下的多通道恒定质量视频编码策略的编码步骤的流程图。图5是调整用于示例视频的修正的CRF比特率模型的因子、目标比特率、实际比特率的示例数据。图6是用于RDC优化的离线训练编码计算简档(ECP)映射模块的流程图。图7是用于训练CRF参考比特率模型的相对于恒定速率因子(CRF)和空间分辨率的平均比特率的示例数据。各图仅出于示例的目的而描绘本专利技术的各种实施例,并且本专利技术不限于这些所示实施例。本领域技术人员将从以下讨论容易认识可以运用这里所示结构和方法的备选实施例而未脱离这里描述的本专利技术的原理。具体实施方式I.系统概述图1是图示具有基于速率-失真-复杂性(RDC)的视频编码系统102的视频托管服务100的系统视图的框图。多个用户/查看者使用客户端110A-N以向视频托管服务100发送视频托管请求、比如向视频托管网站上传视频、并且从视频托管服务100接收请求的服务。视频托管服务100经由网络130与一个或者多个客户端110A-N通信。视频托管服务100从客户端110A-N接收视频托管服务请求、通过基于RDC的视频编码系统102对源视频进行转码并且向客户端110A-N返回转码的源视频。视频托管服务100可以驻留于云计算网络内。转向图1中所示个别实体,每个客户端110由用户用来请求视频托管服务。例如用户使用客户端110以发送对于上传视频用于共享或者播放视频的请求。客户端110可以是任何类型的计算机设备、比如个人计算机(例如桌面型、笔记本、膝上型)以及设备、比如移动电话、个人数字助理、具有IP功能的视频播放器。客户端110通常包括处理器、显示设备(或者向显示设备的输出)、客户端110将用户在执行任务时使用的数据存储到的本地存储装置、比如硬驱动器或者闪存设备和用于经由网络130耦合到视频托管服务100的网络接口。客户端110也具有用于播放视频流的视频播放器120(例如来自AdobeSystems,Inc.的FlasherTM播放器等)。视频播放器120可以是单独应用或者是另一应用、比如网络浏览器的插件。可以在硬件或者硬件和软件的组合中实现播放器120。所有这些实现方式关于本专利技术在功能上等效。播放器120包括用于选择视频馈送、开始、停止和倒回视频馈送的用户界面控件(和对应应用编程接口)。播放器120也可以在它的用户界面中包括被配置用于指示哪个视频显示格式(例如标准清晰度TV或者高清晰度TV)的视频显示格式选择。其它类型的用户界面控件(例如按钮、键盘控件)也可以用来控制播放器120的回放和视频格式选择功能。网络130实现在客户端110与视频托管服务100之间的通信。在一个实施例中,网络130是因特网并且使用现在已知或者随后开发的标准化的网间通信技术和协议,这些网间通信技术和协议使客户端110能够与视频托管服务100通信。视频托管服务100包括基于RDC的视频编码系统102、视频服务器104、摄取服务器106和视频数据库108。摄取服务器106接收用户上传的视频并且在视频数据库108中存储视频。视频服务器104响应于用户视频托管服务请求从视频数据库108供应视频。视频数据库108存储用户上传的视频和基于RDC视频编码系统102转码的视频。在一个实施例中,视频数据库108存储用于基于RDC的视频编码系统102的大型视频全集(例如20,000个由用户上传的视频本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/62/201280060744.html" title="视频编码的速率‑失真‑复杂性优化原文来自X技术">视频编码的速率‑失真‑复杂性优化</a>

【技术保护点】
一种用于为视频托管服务优化编码比特率、失真和复杂性的计算机系统,所述系统包括:编码模块,所述编码模块被配置用于:用比特率控制策略、一对复杂性分配控制参数和一个或者多个目标输出视频格式规范对多个视频进行编码;从所述多个视频的所述编码中获得编码比特率、失真和复杂性性能采样;从所述编码比特率、失真和复杂性性能采样中选择最优编码比特率、失真和复杂性性能采样;以及编码计算简档映射模块,所述编码计算简档映射模块耦合到所述编码模块,被配置用于:从选择的所述最优编码比特率、失真和复杂性性能采样获得多个计算级别;以及对于每个计算级别,选择与选择的所述最优编码比特率、失真和复杂性采样对应的一对优化的复杂性分配控制参数和编码通道的数目。

【技术特征摘要】
【国外来华专利技术】2011.10.17 US 13/275,0841.一种用于为视频托管服务优化编码比特率、失真和复杂性的计算机系统,所述系统包括:编码模块,所述编码模块被配置用于:用比特率控制策略、一对复杂性分配控制参数和一个或者多个目标输出视频格式规范对多个视频进行编码;从所述多个视频的所述编码中获得编码比特率、失真和复杂性性能采样,所述复杂性性能采样代表对由每帧编码时间所测量的复杂性进行编码;从所述编码比特率、失真和复杂性性能采样中选择最优编码比特率、失真和复杂性性能采样,其中选择最优编码比特率、失真和复杂性性能采样包括:在针对每对复杂性分配控制参数的所述编码比特率上,对所述编码失真和编码复杂性进行插值;和基于插值选择最优编码比特率、失真和复杂性性能采样;以及编码计算简档映射模块,所述编码计算简档映射模块耦合到所述编码模块,被配置用于:从选择的所述最优编码比特率、失真和复杂性性能采样获得多个计算级别;和对于每个计算级别,选择与选择的所述最优编码比特率、失真和复杂性采样对应的一对优化的复杂性分配控制参数和编码通道的数目。2.根据权利要求1所述的系统,其中所述复杂性分配控制参数对于选择的比特率控制策略对编码视频的编码计算-效率折衷进行建模。3.根据权利要求1所述的系统,其中所述多个视频中的视频的编码比特率、失真和复杂性性能采样包括:对所述视频进行编码的编码比特率;对所述视频进行编码的失真测量,所述失真借助于所述视频的帧的亮度分量的均方误差来测量;以及由每帧编码时间代表的编码复杂性。4.根据权利要求1所述的系统,其中所述编码模块还被配置用于:找到帕雷托最优编码比特率、失真和复杂性性能采样。5.根据权利要求1所述的系统,其中所述计算级别包括以下五个计算级别中的至少一个计算级别:最快、快速、中等、慢速和最慢,其中所述最快计算级别用于在所述多个计算级别之中用最快转码时间对视频进行编码,并且所述最慢计算级别用于在所述多个计算级别之中用最高感知视觉质量生成视频。6.根据权利要求5所述的系统,其中用于比特率控制策略的所述最快计算级别的编码通道的数目为1。7.根据权利要求1所述的系统,其中所述编码计算简档映射模块还被配置用于验证用于所述比特率控制策略的选择的所述复杂性分配控制参数和编码通道的数目的有效性。8.根据权利要求1所述的系统,其中一对复杂性分配控制参数代表双通道比特率编码中的第一通道的计算复杂性和双通比特率编码中的第二通道的计算复杂性。9.一种用于为视频托管服务优化编码比特率、失真和复杂性的方法,所述方法包括:用比特率控制策略、一对复杂性分配控制参数和一个或者多个目标输出视频格式规范对多个视频进行编码;从所述多个视频的所述编码中获得编码比特率、失真和复杂性性能采样,所述复杂性性能采样代表对由每帧编码时间所测量的复杂性进行编码;从所述编码比特率、失真和复杂性性能采样中选择最优编码比特率、失真和复杂性性能采样,其中选择最优编码比特率、失真和复杂性性能采样包括:在针对每对复杂性分配控制参数的所述编码比特率上,对所述编码失真和编码复杂性进行插值;和基于插值选择最优编码比特率、失真和复杂性性能采样;以及从选择的所述最优编码比特率、失真和复杂性性能采样获得多个计算级别;和对于每个计算级别,选择与选择的所述最优编码比特率、失真和复杂性性能采样对应的一对优化的复杂性分配控制参数和编码通道的数目。10.根据权利要求9所述的方法,其中所述复杂性分配控制参数对于选择的比特率控制策略对编码视频的编码计算-效率折衷进行建模。11.根据权利...

【专利技术属性】
技术研发人员:杨蕾D·穆克赫吉
申请(专利权)人:谷歌公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利