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

用于分布式编码的恒定斜率比特率分配制造技术

技术编号:21781929 阅读:35 留言:0更新日期:2019-08-04 00:46
在本发明专利技术的一个实施例中,比特率分配引擎为源数据的分布式编码分配比特率。在接收到源数据的组块时,比特率分配引擎基于多个点生成曲线,每个点指定不同的视觉质量等级和用于对该组块进行编码的对应编码比特率。随后,比特率分配引擎基于所生成的曲线和优化因子来计算优化的编码比特率,该优化因子与不同的视觉质量等级和针对源数据的多个组块的对应编码比特率相关联。然后,比特率分配引擎使得组块以优化的编码比特率被编码。有利地,得到的编码组块相对于针对源数据的多个组块的优化因子被优化。

Constant Slope Bit Rate Allocation for Distributed Coding

【技术实现步骤摘要】
【国外来华专利技术】用于分布式编码的恒定斜率比特率分配相关申请的交叉引用本申请要求于2016年10月18日提交的、序列号为15/296,580的美国专利申请的权益,该美国专利申请据此通过引用合并于本文。
本专利技术的实施例一般地涉及计算机科学,并且更具体地,涉及用于分布式编码的恒定斜率比特率分配。
技术介绍
有效地编码源数据对于视频内容的实时传送是必不可少的。为了优化编码时间,分布式编码处理跨多个计算实例对编码工作进行并行化。在分布式编码的一种方法中,编码子系统将源数据(例如,视频)分解为单独的源组块(chunk)并跨多个计算实例分发每个组块编码。因为计算实例独立于其他源组块并且与其他源组块并行地编码每个源组块,所以优化了编码时间。但是,由于在每个组块编码期间计算实例之间没有反馈,因此难以在编码处理期间全局优化跨组块的编码决策。因此,用于分配用于编码每个源组块的比特数(在本文中也称为比特率)的传统方法经常导致比特率和视觉质量之间的次优权衡。例如,在分配比特率的一种方法中,编码子系统基于源数据的复杂度来计算单个比特率。然后,编码子系统配置计算实例以将比特率应用于每个源组块。然而,在其中源数据的复杂度在源组块之间明显不同的情况下,由单个比特率表示的权衡可能是次优的。更具体地,假设编码子系统基于简单动画的平均复杂度来计算比特率,但是特定源组块包括详细的动作序列。该计算出的比特率导致对包括详细的动作序列的源组块的比特过低分配,这导致动画的该组块与构成动画的其他组块相比具有相对差的视觉质量。相反,假设编码子系统基于详细动作电影的平均复杂度来计算比特率,但是特定源组块包括滚动信用(credit)。这里,计算出的比特率导致对包括滚动信用的源组块的比特过度分配,其从构成详细动作电影的其他组块中夺走资源(例如,存储和带宽使用),而不显着增加电影的总体视觉质量。为了改进跨构成源数据的不同组块的比特分配,一些编码方法计算表示视觉质量的目标总体等级的单个恒定速率因子。对于每个源组块,计算实例估计源组块中所包括的每个帧的复杂度,并且然后基于估计的复杂度和恒定速率因子分配用于编码每个帧的比特数。因此,与如上所述的基于单个比特率的编码所产生的跨组块的视觉质量相比,基于这种类型的恒定速率因子的编码通常导致跨组块的视觉质量更加均匀。然而,因为不同的计算实例彼此独立地计算每个源组块的比特率,所以恒定速率因子通常不会导致全局优化的比特率,该全局优化的比特率在跨不同组块的资源分配与视觉质量之间进行平衡。具体地,利用恒定速率因子方法,在编码期间计算实例分配的每个附加比特仍然可能导致过度分配比特到一个组块以及过低分配比特到不同组块。因此,对于用于编码源数据的总比特数,可能不会优化聚合编码的总体视觉质量。此外,恒定速率因子编码仅在某些编码器中可用。例如,恒定速率因子编码在VP9的libvpx实施方式中不可用。如前所述,本领域需要的是用于在分布式编码处理期间分配比特率的更有效的方法。
技术实现思路
本专利技术的一个实施例阐述了一种用于在分布式编码处理期间分配比特率的计算机实现的方法。该方法包括:基于多个点生成曲线,其中,每个点指定不同视觉质量等级和用于对被包括在源数据的多个组块中的第一组块进行编码的对应编码比特率;基于生成的曲线和计算出的优化因子,计算用于对第一组块进行编码的第一编码比特率,该优化因子与不同视觉质量等级和针对组块的对应编码比特率相关联;和使得第一组块以第一编码比特率被编码。所公开的技术的一个优点是基于组块特定的计算出的比特率对每个组块进行编码导致如下的聚合编码:该聚合编码相对于单个计算出的优化因子跨组块地被优化。因此,与用于分布式编码的传统比特率分配技术不同,对于任何给定比特率,恒定斜率比特率分配器优化聚合编码的总体视觉质量。附图说明因此,本专利技术的上述特征可以被详细理解的方式、上面简要概述的本专利技术的更具体的描述可以通过参考实施例来获得,其中一些实施例在附图中示出。然而,应注意,附图仅示出了本专利技术的典型实施例,并且因此不应视为限制本专利技术的范围,因为本专利技术可允许其他同等有效的实施例。图1是被配置为实现本专利技术的一个或多个方面的编码系统的概念图示;图2是根据本专利技术的各种实施例的图1的恒定斜率比特率分配器的更详细的图示;图3是根据本专利技术的各种实施例的由图2的比特率优化引擎执行的操作的示例性图示;图4是根据本专利技术的各种实施例的用于在编码源数据时分配比特率的方法步骤的流程图;和图5是根据本专利技术的各种实施例的用于计算因子的方法步骤的流程图,该因子被设计为在编码源数据时优化比特率分配和总体图像质量。具体实施方式在以下描述中,阐述了许多具体细节以提供对本专利技术的更透彻的理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节中的一个或多个的情况下实践本专利技术。系统概述图1是被配置为实现本专利技术的一个或多个方面的编码系统100的概念图示。如图所示,编码系统100包括虚拟私有云(即,封装的共享资源、软件、数据等)102,该虚拟私有云102连接到能够发送输入数据和/或显示视频内容的各种设备。这些设备包括但不限于游戏控制台103、智能电话104、智能电视105、膝上型电脑106、平板电脑107和台式计算机108。在可选实施例中,编码系统100可包括任何数量和/或类型的输入、输出、和/或输入/输出设备的任何组合。虚拟私有云102包括但不限于任何数量和类型的计算实例110。虚拟私有云102从输入设备(例如,膝上型电脑106)接收输入用户信息,一个或多个计算实例110对用户信息进行操作,并且虚拟私有云102将处理后的信息发送给用户。虚拟私有云102通过任何数量的设备的显示能力(例如,传统的阴极射线管、液晶显示器、发光二极管等)将输出信息传送给用户。在可选实施例中,虚拟私有云102可以用任何类型的云计算环境来替换,例如公共云或混合云。在其他实施例中,编码系统100可以包括任何分布式计算机系统而不是虚拟私有云102。在其他实施例中,编码系统100不包括虚拟私有云102,并且替代地,编码系统100包括单个计算单元,该单个计算单元实现多个处理单元(例如,以任何组合的中央处理单元和/或图形处理单元)。出于解释的目的,类似对象的多个实例利用标识对象的参考标号和标识实例的括号里的标号(需要的话)来表示。如针对计算实例110(P)所示,每个计算实例110包括但不限于处理器112和存储器116。处理器112可以是能够执行指令的任何指令执行系统、装置或设备。例如,处理器112可以包括中央处理单元(CPU)、图形处理单元(GPU)、控制器、微控制器、状态机或它们的任何组合。存储器116存储内容(例如,软件应用和数据),以供计算实例110的处理器112使用。存储器116可以是容易获得的存储器中的一个或多个,例如,随机存取存储器(RAM)、只读存储器(ROM)、软盘、硬盘、或者本地或远程的任何其他形式的数字存储装置。在一些实施例中,存储装置(未示出)可以补充或替换存储器116。存储装置可以包括处理器112可访问的任何数量和类型的外部存储器。例如但不限于,存储装置可以包括安全数字卡、外部闪存、便携式光盘只读存储器(CD-ROM)、光学存储设备、磁存储设备或前述的任何合适的组合。通常,被包括在虚拟私有云102本文档来自技高网
...

【技术保护点】
1.一种计算机实现的方法,包括:基于多个点生成曲线,其中,每个点指定不同视觉质量等级和用于对被包括在源数据的多个组块中的第一组块进行编码的对应编码比特率;基于所生成的曲线和计算出的优化因子,计算用于对所述第一组块进行编码的第一编码比特率,所述优化因子与不同视觉质量等级和针对所述多个组块的对应编码比特率相关联;以及使得所述第一组块以所述第一编码比特率被编码。

【技术特征摘要】
【国外来华专利技术】2016.10.18 US 15/296,5801.一种计算机实现的方法,包括:基于多个点生成曲线,其中,每个点指定不同视觉质量等级和用于对被包括在源数据的多个组块中的第一组块进行编码的对应编码比特率;基于所生成的曲线和计算出的优化因子,计算用于对所述第一组块进行编码的第一编码比特率,所述优化因子与不同视觉质量等级和针对所述多个组块的对应编码比特率相关联;以及使得所述第一组块以所述第一编码比特率被编码。2.根据权利要求1所述的计算机实现的方法,其中,生成所述曲线包括基于所述多个点执行一个或多个曲线拟合操作。3.根据权利要求1所述的计算机实现的方法,还包括:在生成所述曲线之前,计算被包括在所述多个点中的第一点,以及计算被包括在所述多个点中的第二点,计算所述第二点与计算所述第一点基本上并行进行。4.根据权利要求3所述的计算机实现的方法,其中,计算所述第一点包括:将编码器配置为基于第一视觉质量等级对所述第一组块进行编码,以及基于经编码的第一组块来确定对应编码比特率。5.根据权利要求1所述的计算机实现的方法,其中,计算所述第一编码比特率包括:确定所生成的曲线的切线,以及基于所生成的曲线确定与所述切线相对应的编码比特率的值。6.根据权利要求1所述的计算机实现方法,其中,计算所述第一编码比特率包括:基于所述计算出的优化因子对所生成的曲线执行一个或多个拉格朗日优化操作。7.根据权利要求1所述的计算机实现的方法,其中,对所述计算出的优化因子进行计算包括:生成代表性曲线,所述代表性曲线与对被包括在所述多个组块中的代表性组块进行编码相关联;计算与代表性编码比特率相对应的所述代表性曲线的切线;以及确定所述切线的斜率。8.根据权利要求1所述的计算机实现的方法,其中,使得所述第一组块以所述第一编码比特率被编码包括:将编码器配置为以所述第一编码比特率对所述第一组块进行编码,并且还包括:将所述编码器配置为以第二编码比特率对被包括在所述多个组块中的第二组块进行编码,并且对所述第二组块进行编码与对所述第一组块进行编码基本上并行进行。9.一种包括指令的计算机可读存储介质,所述指令在由处理器执行时,使得所述处理器来执行以下步骤:执行一个或多个曲线计算操作以生成第一曲线,所述第一曲线指定不同视觉质量等级和用于对被包括在源数据的多个组块中的第一组块进行编码的对应编码比特率;基于所述第一曲线和拉格朗日乘数,执行一个或多个优化操作以计算第一编码比特率,所述第一编码比特率用于对所述第一组块进行编码,所述拉格朗日乘数与不同视觉质量等级和在对所述多个组块进行编码时的对应编码比特率相关联;基于第二曲线和所述拉格朗日乘数,执行一个或多个优化操作以计算第二编码比特率,所述第二编码比特率用于对被包括在所述多个组块中的第二组块进行编码;使得以所述第一编码比特率编码所述第一组块;以及使得以所述第二编码比特率编码所述第二组块,并且编码所述第二组块与编码所述第一组块基本上并行进行。10.根据权利要求9所述的计算机可读存储介质,其中,所述第一...

【专利技术属性】
技术研发人员:简·德考克安妮·亚伦
申请(专利权)人:奈飞公司
类型:发明
国别省市:美国,US

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

1