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

识别在编码过程中引入的错误的技术制造技术

技术编号:16709228 阅读:28 留言:0更新日期:2017-12-03 00:54
在本发明专利技术的一个实施例中,编码验证器识别并分类在源到对应的聚合编码的并行且基于分块的转换期间引入的错误。在操作中,在接收到供编码的源时,帧差生成器为源创建帧差文件。并行编码器然后在机器间分布每块编码操作并创建聚合编码。编码验证器解码聚合编码并创建相应的帧差文件。随后,编码验证器在两个帧差文件之间执行相位相关操作,以检测因编码处理故障(即,丢帧等)产生的错误,同时抑制编码固有的差异,例如归因于低比特率编码的差异。有利的是,由于编码验证器利用帧差文件,这种间接验证技术使得能够对并行编码处理进行有效的调试,其中完整的源不可用于后编码分析。

【技术实现步骤摘要】
【国外来华专利技术】识别在编码过程中引入的错误的技术相关申请的交叉引用本申请要求2015年2月13日提交的美国专利申请序列号14/622,771的权益,该申请通过引用并入本文。
本专利技术的实施例总体涉及计算机科学,更具体地,涉及用于识别在编码期间引入的错误(error)的技术。
技术介绍
高效准确地编码源视频对于视频内容的实时传送至关重要。在经编码的视频内容被接收到之后,源视频被进行解码和观看或以其他方式操作。一些编码过程采用无损压缩算法(如霍夫曼编码)来实现源的精确复制。相比之下,为了提高压缩率和/或减小编码视频内容的大小,其他编码过程利用有损数据压缩技术,该技术消除了选定的信息,通常只能实现源的近似重构。为了优化编码时间,一些编码过程并行化跨多个计算实例的编码工作。在并行编码的一种方法中,编码引擎将源视频分解为单独的分块,在多个计算实例之间分布每块编码,然后配置最终的计算实例以将多个编码的分块组合成聚合编码。与传统技术相比,并行化编码工作可以显著降低总体解码时间,但这种“分治”法所固有的复杂性为错误带来了额外的机会。例如,如果编码引擎没有正确地组合编码的分块,则可能引入同步错误,从而降低所得到的视频的质量。值得注意的是,观众观众可能会遇到同步错误,因为电影的视频和音频组成之间具有不可接受且恼人的滞后。不幸的是,因为源视频通常在编码引擎将源视频分解成分块之后不可用,将源视频与后编码视频进行比较的常规验证技术在上述并行编码范例中具有有限的应用或是不适用的。因此,并行编码引擎通常不能确保编码视频的质量,或者不能以高效的、系统的方式这样做。如上所述,本领域需要用于识别编码过程中引入的错误的更有效的技术。
技术实现思路
本专利技术的一个实施例提出了一种用于识别编码期间引入的错误的计算机实现的方法。该方法包括:接收从源数据导出的帧差分数据;接收从源数据导出的聚合编码数据;对聚合编码数据进行解码以产生聚合解码数据;生成从聚合解码数据导出的帧差数据;对从源数据导出的帧差数据和从聚合解码数据导出的帧差数据执行至少一个相位相关运算,以产生相位相关值;并且基于相位相关值检测包含在聚合编码数据中的低相位相关错误。所公开的错误识别技术的一个优点是,这些技术使得能够验证从源数据导出的编码数据,而不管源数据的可用性如何。此外,由于所公开的技术对从源数据导出的帧差数据进行操作而不是对源数据进行操作,所以并行编码系统可以由聚合编码数据中所识别的错误引导来进行有效的调试。附图说明为了能够详细地理解本专利技术的上述特征的方式,可以通过参考实施例来简要总结上述本专利技术的更具体的描述,其中一些实施例在附图中示出。然而,应当注意,附图仅示出了本专利技术的典型实施例,因此不应将其视为限制本专利技术的范围,因为本专利技术可以承认其他同等有效的实施例。图1是被配置为实现本专利技术的一个或多个方面的系统的概念图;图2是示出根据本专利技术的一个实施例的图1的编码验证器的框图;图3是根据本专利技术的一个实施例的用于生成视频源的经验证的聚合编码的方法步骤的流程图;以及图4A-4B示出了根据本专利技术的一个实施例的用于在对视频源进行编码时识别和分类错误的方法步骤的流程图。具体实施方式在下面的描述中,阐述了许多具体细节以提供对本专利技术的更彻底的理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节中的一个或多个的情况下实践本专利技术。系统概述图1是被配置为实现本专利技术的一个或多个方面的系统100的概念图。如图所示,系统100包括连接到能够发送输入数据和/或显示视频的各种设备的虚拟私有云(即,封装的共享资源、软件、数据等)102。这样的设备包括但不限于智能电话104和笔记本电脑106。在替代实施例中,系统100可以包括任何组合形式的任何数量和/或类型的输入、输出和/或输入/输出设备。虚拟专用云(VPC)100包括但不限于任何数量和类型的计算实例110。VPC100从输入设备(例如,笔记本电脑106)接收输入用户信息,一个或多个计算机实例110对用户信息进行操作,并且VPC100将经处理的信息发送给用户。VPC100通过诸如常规阴极射线管、液晶显示器、发光二极管等任意数量的器件的显示能力将输出信息传送给用户。在替代实施例中,VPC100可以被任何类型的云计算环境(诸如公共云或混合云)替代。其他实施例中,系统100可以包括代替VPC100的任何分布式计算机系统。在其他实施例中,系统100不包括VPC100,而是,系统100包括实现多个处理单元(例如,任何组合形式的中央处理单元和/或图形处理单元)的单个计算单元。如对于计算实例1100所示,每个计算实例110包括中央处理单元(CPU)112、图形处理单元(GPU)114和存储器116。在操作中,CPU122是计算实例110的主处理器,控制和协调包括在计算实例110中的其它组件的操作。具体地,CPU122发出控制GPU144的操作的命令。GPU114包含针对图形和视频处理优化的电路,例如包括视频输出电路。在各种实施例中,GPU114可以与计算实例110的一个或多个其他元件集成。存储器116存储供计算实例110的CPU112和GPU114使用的诸如软件应用和数据的内容。通常,包括在VPC100中的计算实例110被配置为实现一个或多个应用。更具体地,包括在VPC100中的计算实例110被配置为对诸如视频文件的源105进行编码。如图所示,计算实例1100被配置作为源检查器110和源分块器112,计算实例1101-110N被配置作为并行分块编码器120,并且计算实例110N+1被配置作为多分块组装器130和编码验证器140。源分块器121接收源105并将源分解成N个不同的源分块115,其中N对应于并行分块编码器120中包括的计算实例110的数量。随后,源分块器121将源分块151-15N中的每一个路由到计算实例1101-110N中的不同的一者,并且计算实例110各自执行编码操作以创建相应的编码分块1251-125N。多分块组装器130然后将编码分块1251-125N组合成聚合编码135。并发编码操作不仅减少编码源105所需的时间,而且跨多个计算实例110分布编码操作可减少任何单个计算实例110对编码过程的影响。例如,如果计算实例110N失败,则并行分块编码器120仅重新处理单个编码分块125N。然而,分解源105、分布源分块115、编码源分块115以及将编码分块125重组成聚合编码135中的每个过程都容易出错。例如,编码分块125的重组中的错误可能导致源105的一个或多个帧在聚合编码135中被丢弃,当聚合编码135解码时潜在地导致显著的同步错误。为此,计算实例110N+1也被配置作为编码验证器140。如本领域技术人员将认识到的那样,完整的源105对于并行分块编码器120、多分块组装器130和编码验证器140是不可用的。因此,编码验证器140不实现计算和比较诸如源150和聚合编码135两者的峰值信噪比(PSNR)的度量的常规验证技术。而是,源检查器110和编码验证器140协同工作以间接地将源105与聚合编码135进行比较。在替代实施例中,计算实例110N+1被配置作为多分块组装器130,但不被配置作为编码验证器140。在这样的实施例中,将计算实例110中的不同的一个(例如,本文档来自技高网
...
识别在编码过程中引入的错误的技术

【技术保护点】
一种用于识别在编码期间引入的错误的计算机实现的方法,所述方法包括:解码从源数据导出的聚合编码数据,以生成聚合解码数据;生成从所述聚合解码数据导出的帧差数据;对从所述源数据导出的帧差数据和从所述聚合解码数据导出的帧差数据执行至少一个相位相关运算,以产生相位相关值;并且基于所述相位相关值检测包含在所述聚合编码数据中的低相位相关错误。

【技术特征摘要】
【国外来华专利技术】2015.02.13 US 14/622,7711.一种用于识别在编码期间引入的错误的计算机实现的方法,所述方法包括:解码从源数据导出的聚合编码数据,以生成聚合解码数据;生成从所述聚合解码数据导出的帧差数据;对从所述源数据导出的帧差数据和从所述聚合解码数据导出的帧差数据执行至少一个相位相关运算,以产生相位相关值;并且基于所述相位相关值检测包含在所述聚合编码数据中的低相位相关错误。2.根据权利要求1所述的计算机实现的方法,其中,检测所述低相位相关错误包括:确定与从所述源数据导出的帧差数据相关联的帧计数从与从所述聚合解码数据导出的帧差数据相关联的帧计数变化了超过预定阈值。3.根据权利要求1所述的计算机实现的方法,其中,执行所述至少一个相位相关操作包括:将从所述源数据导出的帧差数据和从解码的聚合编码导出的帧差数据分成多个块,其中所述多个块中的每个块包括从所述源数据导出的帧差数据的子集以及相应的从解码的聚合编码数据导出的帧差数据的子集;并且对于每个块,将从所述源数据导出的帧差数据与从解码的聚合编码数据导出的帧差数据进行比较,以确定该块的相位相关值。4.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:识别第一数量的块,其中包括在所述第一数量的块中的每个块具有小于第一预定阈值的相位相关值;以及确定所述第一数量的块大于第二预定阈值。5.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:对于第一块,对从所述源数据导出的帧差数据执行相移操作;对于所述第一块,将从所述源数据导出的经移位的帧差数据与从解码的聚合编码数据导出的相应帧数据进行比较,以确定经移位的相位相关值;并且确定所述经移位的相位相关值比所述第一块的相位相关值大至少第一预定量。6.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:基于所述相位相关值识别场景切换;识别第一数量的块,其中包括在所述第一数量的块中的每个块不立即进行所述场景切换并且具有小于第一预定阈值的相位相关值;并且确定所述第一数量的块大于第二预定阈值。7.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:识别具有小于第一预定阈值的相位相关值的第一块;并且确定所述聚合编码数据的编码比特率大于第二预定阈值。8.根据权利要求3所述的计算机实现的方法,其中,检测低相位相关错误包括:识别一组低相关块,其中包括在所述一组低相关块中的每个块具有小于第一预定阈值的相位相关值;基于所述一组低相关块的相位相关值确定分布;基于所述分布计算置信区;识别第一数量的块,其中包括在所述第一数量的块中的每个块被包括在所述一组低相关块中并且具有位于置信区之外的相位相关值;并且确定所述第一数量的块大于第二预定阈值。9.根据权利要求8所述的计算机实现的方法,其中,识别具有位于所述置信区之外的相位相关值的第一块包括对所述分布应用格拉布斯Grubbs测试。10.一种包括指令的计算机可读存储介质,所述指令在由处理单元执行时使所述处理单元通过执行以下步骤来识别在编码期间引入的错误:解码从源数据导出的聚合编码数据,以生成聚合解码数据;生成从所述聚合解码数据导出的帧差数据;对从所述源数据导出的帧差数据和从所述聚合解码数据导出的帧差数据执行至少一个相位相关运算,...

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

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

1