CN107431804A - 识别在编码过程中引入的错误的技术 - Google Patents

识别在编码过程中引入的错误的技术 Download PDF

Info

Publication number
CN107431804A
CN107431804A CN201680014666.XA CN201680014666A CN107431804A CN 107431804 A CN107431804 A CN 107431804A CN 201680014666 A CN201680014666 A CN 201680014666A CN 107431804 A CN107431804 A CN 107431804A
Authority
CN
China
Prior art keywords
block
data
frame difference
derived
correlation
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
CN201680014666.XA
Other languages
English (en)
Other versions
CN107431804B (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.)
Netflix Inc
Original Assignee
Netflix Inc
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 Netflix Inc filed Critical Netflix Inc
Publication of CN107431804A publication Critical patent/CN107431804A/zh
Application granted granted Critical
Publication of CN107431804B publication Critical patent/CN107431804B/zh
Active 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/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems
    • 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/176Methods 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 block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

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

Description

识别在编码过程中引入的错误的技术
相关申请的交叉引用
本申请要求2015年2月13日提交的美国专利申请序列号14/622,771的权益,该申请通过引用并入本文。
技术领域
本发明的实施例总体涉及计算机科学,更具体地,涉及用于识别在编码期间引入的错误(error)的技术。
背景技术
高效准确地编码源视频对于视频内容的实时传送至关重要。在经编码的视频内容被接收到之后,源视频被进行解码和观看或以其他方式操作。一些编码过程采用无损压缩算法(如霍夫曼编码)来实现源的精确复制。相比之下,为了提高压缩率和/或减小编码视频内容的大小,其他编码过程利用有损数据压缩技术,该技术消除了选定的信息,通常只能实现源的近似重构。
为了优化编码时间,一些编码过程并行化跨多个计算实例的编码工作。在并行编码的一种方法中,编码引擎将源视频分解为单独的分块,在多个计算实例之间分布每块编码,然后配置最终的计算实例以将多个编码的分块组合成聚合编码。
与传统技术相比,并行化编码工作可以显著降低总体解码时间,但这种“分治”法所固有的复杂性为错误带来了额外的机会。例如,如果编码引擎没有正确地组合编码的分块,则可能引入同步错误,从而降低所得到的视频的质量。值得注意的是,观众观众可能会遇到同步错误,因为电影的视频和音频组成之间具有不可接受且恼人的滞后。不幸的是,因为源视频通常在编码引擎将源视频分解成分块之后不可用,将源视频与后编码视频进行比较的常规验证技术在上述并行编码范例中具有有限的应用或是不适用的。因此,并行编码引擎通常不能确保编码视频的质量,或者不能以高效的、系统的方式这样做。
如上所述,本领域需要用于识别编码过程中引入的错误的更有效的技术。
发明内容
本发明的一个实施例提出了一种用于识别编码期间引入的错误的计算机实现的方法。该方法包括:接收从源数据导出的帧差分数据;接收从源数据导出的聚合编码数据;对聚合编码数据进行解码以产生聚合解码数据;生成从聚合解码数据导出的帧差数据;对从源数据导出的帧差数据和从聚合解码数据导出的帧差数据执行至少一个相位相关运算,以产生相位相关值;并且基于相位相关值检测包含在聚合编码数据中的低相位相关错误。
所公开的错误识别技术的一个优点是,这些技术使得能够验证从源数据导出的编码数据,而不管源数据的可用性如何。此外,由于所公开的技术对从源数据导出的帧差数据进行操作而不是对源数据进行操作,所以并行编码系统可以由聚合编码数据中所识别的错误引导来进行有效的调试。
附图说明
为了能够详细地理解本发明的上述特征的方式,可以通过参考实施例来简要总结上述本发明的更具体的描述,其中一些实施例在附图中示出。然而,应当注意,附图仅示出了本发明的典型实施例,因此不应将其视为限制本发明的范围,因为本发明可以承认其他同等有效的实施例。
图1是被配置为实现本发明的一个或多个方面的系统的概念图;
图2是示出根据本发明的一个实施例的图1的编码验证器的框图;
图3是根据本发明的一个实施例的用于生成视频源的经验证的聚合编码的方法步骤的流程图;以及
图4A-4B示出了根据本发明的一个实施例的用于在对视频源进行编码时识别和分类错误的方法步骤的流程图。
具体实施方式
在下面的描述中,阐述了许多具体细节以提供对本发明的更彻底的理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节中的一个或多个的情况下实践本发明。
系统概述
图1是被配置为实现本发明的一个或多个方面的系统100的概念图。如图所示,系统100包括连接到能够发送输入数据和/或显示视频的各种设备的虚拟私有云(即,封装的共享资源、软件、数据等)102。这样的设备包括但不限于智能电话104和笔记本电脑106。在替代实施例中,系统100可以包括任何组合形式的任何数量和/或类型的输入、输出和/或输入/输出设备。
虚拟专用云(VPC)100包括但不限于任何数量和类型的计算实例110。VPC 100从输入设备(例如,笔记本电脑106)接收输入用户信息,一个或多个计算机实例110对用户信息进行操作,并且VPC 100将经处理的信息发送给用户。VPC 100通过诸如常规阴极射线管、液晶显示器、发光二极管等任意数量的器件的显示能力将输出信息传送给用户。
在替代实施例中,VPC 100可以被任何类型的云计算环境(诸如公共云或混合云)替代。其他实施例中,系统100可以包括代替VPC 100的任何分布式计算机系统。在其他实施例中,系统100不包括VPC 100,而是,系统100包括实现多个处理单元(例如,任何组合形式的中央处理单元和/或图形处理单元)的单个计算单元。
如对于计算实例1100所示,每个计算实例110包括中央处理单元(CPU)112、图形处理单元(GPU)114和存储器116。在操作中,CPU 122是计算实例110的主处理器,控制和协调包括在计算实例110中的其它组件的操作。具体地,CPU 122发出控制GPU 144的操作的命令。GPU 114包含针对图形和视频处理优化的电路,例如包括视频输出电路。在各种实施例中,GPU 114可以与计算实例110的一个或多个其他元件集成。存储器116存储供计算实例110的CPU 112和GPU 114使用的诸如软件应用和数据的内容。
通常,包括在VPC 100中的计算实例110被配置为实现一个或多个应用。更具体地,包括在VPC 100中的计算实例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中的不同的一个(例如,计算实例110N+2)配置作为编码验证器140。
作为处理源105的一部分,源检查器110计算每对相邻帧之间的平均亮度差,并将帧差值存储作为源帧差数据137。小帧差值表示两个相邻帧比较相似-反映静态场景或几乎没有运动的场景。相比之下,大帧差值表示两个相邻帧之间的急剧变化,通常反映大的运动或场景切换(即,场景变化)。源检查器110可以以任何技术上可行的方式生成源帧差数据137。
相应地,编码验证器140解码聚合编码135,然后计算每对相邻帧之间的平均亮度差,产生“编码帧差数据”。随后,编码验证器140利用源帧差数据137和编码帧差数据来验证聚合编码135,而不访问源105。更具体地,编码验证器140在源帧差数据137和编码帧差数据之间执行相位相关操作。这些相位相关操作使得编码验证器140能够检测聚合编码135中归因于帧丢失和编码误行为的不期望的低相位相关错误。
值得注意的是,编码验证器140还使用相位相关操作来消除“假”错误。更具体地,作为编码处理的一部分,编码验证器140识别指示被接受的孤立的错误的各种情形,然后修剪这些错误。这些假错误包括归因于在并行分块编码器120中实现的有损数据压缩技术的具有伪像(artifact)的孤立的帧块和/或坏的编码器速率控制。有利的是,区别由编码过程引入的真(即无意的)错误和假(即,预期的)错误使得编码验证器140能够最佳地引导聚合编码135的分类以及源分块器121、并行分块编码器120和多分块组装器130的检错(triage)。
识别“真”错误
图2是示出根据本发明的一个实施例的图1的编码验证器140的框图。如图所示,编码验证器140包括但不限于解码器和帧差生成器210以及错误识别引擎220。
在接收到聚合编码135时,解码器和帧差生成器210解码聚合编码135,然后产生编码帧差数据237。如前所述,编码帧差数据237是解码的聚合编码135中的每对相邻帧之间的平均亮度差。解码器和帧差生成器210可以以任何技术上可行的方式生成编码帧差数据237。在一些实施例中,可以使用相同的算法来产生源帧差数据137和编码帧差数据237。
如图所示,错误识别引擎220接收编码帧差数据237和源帧差数据137两者。值得注意的是,错误识别引擎220既不接收源105也不接收聚合编码135。错误识别引擎220不是依赖于直接比较,而是基于编码帧差数据237和源帧差数据137之间的比较来间接地识别聚合编码135中的错误。
通常,错误识别引擎220被设计为间接地识别聚合编码135中的错误,修剪任何假错误,然后生成反映剩余(即真)错误的数量和/或类型的验证结果295,如“良好编码””或“不良编码”。错误识别引擎220包括但不限于帧范围检查器230、低互相关块检测器240、扩展互相关分析器250、场景切换对准分析器260、低互相关持续分析器270、隔离低互相关分析器280和低比特率编码分析器290。
在替代实施例中,错误识别引擎220可以以基于编码帧差数据237和源帧差数据137的任何技术上可行的方式识别错误。此外,错误识别引擎220可以以任何顺序组合任何数量的验证技术以确定验证结果295。例如,在一些实施例中,省略了场景切换对准分析器260和相关联的功能。验证功能可以组合或分成任何数量的单个组件,例如,低互相关持续分析器270和隔离低互相关分析器280可以组合成单个“低互相关分析器”。
通常,错误识别引擎220可以通过执行任何类型和数量的相位相关操作来识别错误。例如,在替代实施例中,可以修改编码验证器140的组件以用附加类型的相位相关操作替换或增强互相关操作。
在其他实施例中,源检查器110被修改为在源帧差数据137中包括附加信息,诸如色度信息。类似地,解码器和帧差生成器210包括编码帧差数据237中的色度信息。在这样的实施例中,错误识别引擎220被扩展以包括基于色度信息的错误分析。例如,错误识别引擎220可以基于亮度和色度信息生成颜色直方图,然后分析颜色直方图以识别归因于色移和色度编码伪像的错误。
错误识别引擎220引导错误检测和修剪过程,其中不同的算法在不同的组件中实现。有利地,错误识别引擎220被配置为在达成关于聚合编码135中存在“真”错误的结论的情况下使评估过程短路,从而避免不必要地使用计算资源。
首先,错误识别引擎220运行帧范围检查器230。帧范围检查器230计算源帧差数据137的帧计数与编码帧差数据230的帧计数之间的差。如果该帧计数差超过可配置阈值,则错误识别引擎220得出结论:存在真错误,错误识别引擎220发出“不良编码”的验证结果295,并且错误识别引擎220成功终止。在这种情况下,错误识别引擎220使评估处理短路,不调用低互相关块检测240、扩展互相关分析器250、场景切换对准分析器260、低互相关持续分析器270、隔离低互相关分析器280和低比特率编码分析器290。
帧范围检查器230可以实现任何可配置的阈值。例如,通常在聚合编码235的结尾发生一些帧丢失(即,结束处的黑色帧)。由于这种帧丢失并不显著地影响聚合编码235的质量,在一些实施例中,可配置阈值被设置为10帧。
如果帧计数差异不超过可配置阈值,则错误识别引擎220继续进行分析,并且调用低互相关块检测器240。低互相关块检测器240计算源帧差数据137和编码帧差数据237之间的逐块互相关。每个块中包括的帧的数量在块之间是一致的,并且可以任何技术上可行的方式确定。在一些实施例中,作为适应本地视频内容变化和检测场景切换检测之间的权衡,块大小设置为1000帧。
如本领域技术人员将认识到的,互相关是用于检测两个信号源之间的相移的稳健且有效的工具。通常,对于给定的块(一组帧),如果源帧差数据137和编码帧差数据230比较相似,则视频内容可能比较相似-两个块之间的互相关高。相反,如果源帧差数据137和编码帧差数据230显著不同,则聚合编码135的视频内容可能与源105的视频内容不同步。在这种情况下,两个块之间的互相关相对较低,通常在编码过程中反映为帧丢失。
在计算互相关数据之后,低互相关块检测器240产生相对低互相关的块的列表。对于每个块,低互相关块检测器240评估源帧差数据137和编码帧差数据230之间的互相关。如果块的互相关低于预定阈值,则低互相关块检测器240将该块加到低互相关块列表中。可以基于任何试探法将阈值设置为任何值。在一些实施例中,将阈值设置为0.78。在其他实施例中,将阈值设置为更高或更低的值。
在进行下一个评估阶段之前,错误识别引擎220确定低互相关块列表是否为空(即,低互相关块检测器240没有识别出低互相关块)。如果错误识别引擎220确定没有低互相关块,则错误识别引擎220发出“良好编码”的验证结果295,并且错误识别引擎220成功终止。在这种情况下,错误识别引擎220使评估过程短路,不调用扩展互相关分析器250、场景切换对准分析器260、低互相关持续分析器270、隔离低互相关分析器280和低比特率编码分析器290。
否则,作为识别同步错误的一部分,扩展互相关分析器250评估低互相关块的列表。对于每个低互相关块,扩展互相关分析器250对于围绕低互相关块的一组帧在源帧差数据137和编码帧差数据237之间施加小的相移。扩展互相关分析器250然后计算相应的经移位的互相关,并且确定源105的块和聚合编码135之间的匹配是否在施加相移的情况下比不施加相移的情况下更好。
如果扩展互相关分析器250确定经移位的互相关显著优于原始互相关,则扩展互相关分析器250确定聚合编码135在块处不同步。在识别出这种不同步块时,扩展互相关分析器250认为聚合编码235包括真错误,错误识别引擎220发出“不良编码”的验证结果295,并且错误识别引擎220成功终止。
相反,如果扩展互相关分析器250确定原始互相关显著优于经移位的互相关,则扩展互相关分析器250确定聚合编码135在块处是同步的,并从低互相关列表中移除该块。
扩展互相关分析器250可以以任何技术上可行的方式实现经移位的互相关比较。在一个实施例中,扩展互相关分析器250实现以下算法:
对于源帧差数据137中的给定低互相关块,扩展互相关分析器250将块相对于对应的编码帧差数据237在预设的相位窗内(例如[-5,+5])移位。扩展互相关分析器250然后逐相移对互相关进行如下分析:
1)如果通过将编码帧差数据237中的块移位离开原始位置而发现最大值,并且最大值显著大于所有其他互相关值,则当前块被标识为“不同步”。分析结束,并且“不良编码”的验证结果295被发出。
2)否则,如果最大值仍然对应于原始位置(即,无移位),并且由移位产生的所有其他值保持显著低于最大值,则扩展互相关分析器250认为该块“同步”并且从低互相关块列表中移除该块。
注意,如果从统计学角度看,某相关值位于远离数据中心标准偏差的两倍以上,则该相关值与其他相关值“显著”不同。
在扩展互相关分析器250完成对每个低互相关块的扩展互相关分析之后,错误识别引擎220确定在低互相关块列表中是否存在剩余的低互相关块。如果错误识别引擎220确定没有剩余的低互相关块,则错误识别引擎220发出“良好编码”的验证结果295,并且错误识别引擎220成功终止。在这种情况下,错误识别引擎220使评估过程短路,不调用场景切换对准分析器260、低互相关持续分析器270、隔离低互相关分析器280和低比特率编码分析器290。
相反地,如果低互相关块列表仍然包括任何低互相关块,则场景切换对准分析器260识别通过场景切换产生的基本上不可察觉的任何错误。一般来说,场景改变和场景切换表示视频序列中的关键阶段信息。如本领域技术人员将认识到的是,如果聚合编码135中的场景改变/切换与源105中的场景改变/切换完全对准,则紧接在场景改变/切换之前的图像通常是同步的。通常,场景切换对准分析器260检查源帧差数据137和编码帧差数据237,以确定场景切换对准。场景切换对准分析器260然后紧在场景切换之前从低相关块列表移除任何低相关块-修剪假错误。在一个实施例中,场景切换对准分析器260实现以下算法:
1)源105和聚合编码135中只有那些“显著”场景改变/切换被间接识别以供对准分析。场景改变/切换在以下情形中被认为是“显著”的:(1)相应的帧差数据是大值(例如,>=15),以及(2)当前帧的帧差数据显著大于紧在当前帧前面的帧的帧差数据(例如,在大小上>=5)。
2)如果显著的场景切换/改变被间接地确定为在源105和聚合编码135之间对准,则仅紧在对准的切换/改变之前的低相关块被视为“同步”并从低互相关块列表被移除。
如果低互相关块列表现在为空,则错误识别引擎220发出“良好编码”的验证结果295,并且错误识别引擎220成功终止,有效地使评估过程短路。通常,任何剩余的低互相关块代表源105和聚合编码135之间的显着量的低视觉相似性,归因于以下之一:
1)视频序列中没有尖锐的场景改变或时间模式,这使得逐块互相关对于任何时间移位不那么敏感并且降低了场景切换对准检查的有效性。
2)在聚合编码135上存在显著的编码伪像,当在一段时间内延伸时,这可以显着地降低了源105与聚合编码之间的结构相关性,从而使得扩展互相关和场景切换对准分析不太可靠。
低互相关持续分析器270能够对这两种情况进行错误检测。低互相关持续分析器270基于两个经验观察实现试探法:
1)如果低互相关块不同步(即由于帧丢失),那么缺少同步通常会持续一定数量的块,直到按顺序到达下一个同步分块。
2)如果低互相关块遭受严重的编码降级,那么这种降级往往在当前的分块结束之前都有效。
在操作中,低互相关持续分析器270扫描低互相关块列表中的剩余块并识别相邻低互相关块的序列。如果相邻低互相关块的序列中任一个包括多于预定阈值的块(例如4),则低互相关持续分析器270确定聚合编码235有缺陷。然后,错误识别引擎220返回“不良编码”的验证结果295并成功终止,而不执行任何附加的错误分析。
隔离低互相关分析器280被配置为确定性地识别与各种复杂情形相对应的错误,包括以下情形:
1)帧在编码分块的中间或视频序列的末尾丢失。
2)帧在场景渐隐/淡入/淡出期间丢失。
3)显着的编码是在相机平移和/或缩放期间引入的伪像。
4)由于编码器速率控制不良,时间性视频质量下降发生。
在操作中,隔离低互相关分析器170基于统计假设测试来区分假错误和真错误。特别地,隔离低互相关分析器170将格拉布斯(Grubbs)测试应用于低互相关块列表,并且基于互相关数据的分布来识别异常值。在一个实施例中,隔离互相关分析器170将具有95%置信区之外的相关值的低互相关块视为“异常值”。如果隔离互相关分析器170确定异常值的总数小于预定的最大值(例如3),则隔离互相关分析器170认为聚合编码135为具有临界码伪像的正常/良好的视频。在操作中,如果隔离互相关分析器170确定聚合编码135为“正常”,则错误识别引擎220发出“良好编码”的验证结果295,并且错误识别引擎220成功终止。在这种情况下,错误识别引擎220使评估过程短路,并且不调用低比特率编码分析器290。
低比特率编码分析器290执行比特率评估以确定低互相关块列表中的剩余块是否可能归因于低编码比特率。特别地,如果编码比特率相对较低(例如,<=500kbps,包含大多数低速率H263、H264和VC1编码),则低比特率编码分析器290将聚合编码135认为是“正常”-具有低编码比特率的伪像。否则,低比特率编码分析器290认为聚合编码135是有缺陷的。
如果低比特率编码分析器290确定聚合编码135是“正常”,则错误识别引擎220发出“良好编码”的验证结果295。如果低比特率编码分析器290确定聚合编码135有缺陷,则错误识别引擎220发出“不良编码”的验证结果295。不管从低比特率编码分析器290获得的结果如何,错误识别引擎220然后成功终止。
图3是根据本发明的一个实施例的用于生成视频源的经验证的聚合编码的方法步骤的流程图。尽管参照图1-2的系统描述了方法步骤,但是本领域技术人员将理解,配置为以任何顺序实现方法步骤的任何系统都在本发明的范围内。
如图所示,方法300从步骤304开始,其中源检查器110和源分块器121接收源105。源检查器110生成源帧差数据137,源分块器112将源105分解成源分块115。在步骤306,并行分块编码器120将源分块115中的每一个分配到包括在并行分块编码器120中的单独计算实例110。这些计算实例110中的每一个然后生成相应的编码分块125。在替代实施例中,并行分块编码器120可以以技术上可行的能够实现源分块115中的至少两个的并发处理的方式来分配源分块115。例如,并行分块编码器120可以在并行分块编码器120中包括的两个计算实例110之间分割源分块115。
在步骤308,多分块组装器130将编码分块125组装成聚合编码135。编码验证器140然后对聚合编码135进行解码,并生成编码帧差数据237(即,解码的聚合编码的帧差数据)。
在步骤310,包含在编码验证器140中的错误识别引擎220执行源帧差数据137和编码帧差数据237之间的各种互相关操作。这些相互关操作被设计为识别归因于编码过程中的缺陷的“真”错误,而不会标记有损压缩算法的预期伪像的“假”错误。基于所识别的错误,编码验证器140生成聚合编码135的验证结果295。通常,编码验证器140和错误识别引擎220在其他操作以外还可以以任何组合、以任何顺序、以任何技术上可行的方式执行任何数量和类型的互相关操作。例如,在一些实施例中,编码验证器140(包括错误识别引擎220)执行下面结合图4A-4B概述的方法步骤。
在步骤312,编码验证器140确定验证结果295是否反映“良好编码”。如果在步骤312,如果编码验证器140确定验证结果295反映“良好编码”,则该方法进行到步骤314。在步骤314,包括编码验证器140的虚拟私有云(VPC)102被配置为将聚合编码135递送给指定用户以供消费(例如,观看),随之方法300结束。
如果在步骤312,编码验证器140确定验证结果295反映“不良编码”,则该方法进行到步骤316。在步骤316,编码验证器140发出指示聚合编码135包括“真”错误的错误消息,并且方法300结束。作为步骤316的一部分,编码验证器140可选择地提交聚合编码135以进行验错来识别编码过程(即,源分块器121、并行分块编码器120和多分块组装器130)中的缺陷。有利地,因为编码验证器140在确定验证结果295之前消除了假错误,调试工作可以优化地集中于分析真缺陷的根本原因,而不是无效地追踪归因于所实施的压缩算法的预期伪像。
图4A-4B示出了根据本发明的一个实施例的用于在对视频源进行编码时识别和分类错误的方法步骤的流程图。尽管参照图1-2的系统描述了方法步骤,但是本领域技术人员将理解,配置为以任何顺序实现方法步骤的任何系统都在本发明的范围内。
如图所示,方法400在步骤406开始,其中编码验证器140接收源帧差数据137和编码帧差数据237。源帧差数据137是源105中每对相邻帧之间的平均亮度差,编码帧差数据237是解码的聚合编码中每对相邻帧之间的平均亮度差。
在步骤408,帧范围检查器230计算源帧差数据137的帧计数与编码帧差数据230的帧计数之间的差。在步骤410,帧范围检查器230确定所计算的帧计数差是否超过可配置阈值。如果在步骤410,帧范围检查器230确定所计算的帧计数差异超过可配置阈值,则帧范围检查器230得出结论:帧计数差是不可接受的,并且方法400进行到步骤412。在步骤412,错误识别引擎220发出“检测到帧丢失,不良编码”的验证结果295,并且方法400结束。
如果在步骤410,帧范围检查器230确定所计算的帧计数差不超过可配置阈值,则帧范围检查器230得出结论:帧计数差是可接受的,并且方法400进行到步骤414。在步骤414,低互相关块检测器240计算源帧差数据137和编码帧差数据237之间的逐块互相关,并生成相对低互相关的块的列表。具体地,对于每个块,低互相关块检测器240比较源帧差数据137和编码帧差数据230之间的互相关。如果块的互相关低于预定阈值,则低互相关块检测器240将该块加到低互相关块列表中。
在步骤416,错误识别引擎220将低互相关块的数量(即,包括在低互相关块列表中的块的数量)与可接受的低互相关块数量进行比较。如果在步骤416,错误识别引擎220确定低互相关块的数量不超过可接受的低互相关块数量,则方法400进行到步骤418。在步骤418,错误识别引擎220发出“良好编码,无帧丢弃”的验证结果295,并且方法400结束。
如果在步骤416,错误识别引擎220确定低互相关块的数量超过可接受的低互相关块数量,则方法400进行到步骤420。在步骤420,作为识别同步错误的一部分,扩展互相关分析器250评估每个低互相关块。对于每个低互相关块,扩展互相关分析器250对于围绕该低互相关块的一组帧在源帧差数据137和编码帧差数据237之间施加小的相移。
对于每个低互相关块,如果扩展互相关分析器250确定经移位的互相关显著优于原始互相关,那么扩展互相关分析器250认为聚合编码135是在该块上是不同步的。在步骤422,扩展互相关分析器确定聚合编码135是否在任何低互相关块处不同步。如果在步骤422,扩展互相关分析器确定聚合编码135在任何低互相关块处不同步,则方法400进行到步骤424。在步骤424,错误识别引擎220发出“检测到帧丢失,不良编码”的验证结果295,并且错误识别引擎220成功终止
如果在步骤422,扩展互相关分析器250确定没有一个移位操作产生显著改善的互相关,则方法400进行到步骤426。在替代实施例中,为了提高验证过程的效率,扩展互相关分析器250可以基于经移位的互相关分析来修剪低互相关块列表。扩展互相关分析器250可以以技术上可行的方式实现这种修剪,例如结合图2详细描述的算法。
在步骤426,场景切换对准分析器260识别由场景切换产生的基本上不可察觉的任何错误,并且从低互相关块列表中移除相关联的块。更具体地,场景切换对准分析器260基于源帧差数据137和编码帧差数据237来识别场景切换。随后,场景切换对准分析器260识别在时间上位于紧在场景切换之前的任何低相关块,然后从低相关块列表中移除所识别的块。
在步骤428,错误识别引擎220将“剩余”低互相关块的数量(即,仍然包括在低互相关块列表中的块的数量)与可接受的低互相关块数量进行比较。如果在步骤428,错误识别引擎220确定剩余低互相关块的数量不超过可接受数量的低互相关块,则方法400进行到步骤430。在步骤430,错误识别引擎220发出“良好编码,无帧丢弃”的验证结果295,并且方法400结束。
如果在步骤428,错误识别引擎220确定剩余的低互相关块的数量超过可接受的低互相关块数量,则方法400进行到步骤432。在步骤432,低互相关持续分析器270扫描低互相关块列表中的剩余块,识别相邻低互相关块的序列。在步骤434,低互相关持续分析器270确定所识别的相邻低互相关块序列中的任何一个是否包括多于预定阈值的块。
如果在步骤434,低互相关持续分析器270确定所识别的相邻低互相关块序列中的任何一个包括大于预定阈值的块,则低互相关持续分析器270得出结论:聚合编码235有缺陷,方法400进行到步骤435。在步骤435,错误识别引擎220返回“发现不良编码分块”的验证结果295,并且方法400结束。
如果在步骤434,低互相关持续分析器270确定所识别的相邻低互相关块序列中没有一个包括大于预定阈值的块,则方法400进行到步骤436。在步骤436,隔离低互相关分析器170基于统计假设测试来区分假错误和真错误。特别地,隔离低互相关分析器170将Grubbs测试应用于低互相关块列表,并且基于互相关数据的分布来识别异常值。在步骤438中,低互相关持续分析器270基于异常值的总数确定低互相关块的范围。如果在步骤438,低互相关持续分析器270确定低互相关块的范围是受限制的,则方法400进行到步骤440。在步骤440,错误识别引擎220发出“良好编码,具有编码伪像”的确认结果295,并且方法400结束。
在步骤438中,如果低互相关持续分析器270确定低互相关块的范围没有被充分限制,则方法400进行到步骤442。在步骤442,低比特率编码分析器290将编码比特率与预定阈值进行比较。如果在步骤442,低比特率编码分析器290确定编码比特率低于预定阈值,则方法400进行到步骤444。在步骤444,错误识别引擎220发出“良好编码,低编码比特率”的验证结果295,方法400结束。
如果在步骤442,低比特率编码分析器290确定编码比特率不低于预定阈值,则方法400进行到步骤444。在步骤444中,由于低互相关块列表不为空,所以错误识别引擎220发出“不良编码”的验证结果295,并且方法400结束。
总之,所公开的技术可以用于有效地和正确地识别在编码期间无意地引入的错误。在操作中,在对源进行编码之前,源检查器为源创建帧差数据,源分块器将源分解成分块。并行分块编码器然后在多个计算实例上基本并行地处理分块,并且多分块组装器从编码块组装聚合编码。编码验证器接收源的帧差数据和聚合编码。在对聚合编码进行解码之后,编码验证器生成聚合编码的帧差数据(即,针对解码的聚合编码的帧差数据)。
随后,编码验证器在源的帧差数据和聚合编码的帧差数据之间执行互相关操作。编码验证器实施各种算法,这些算法被设计用于识别归因于编码过程中的缺陷的错误,同时抑制编码的预期伪像的错误,例如由于低比特率编码导致的差的转换。通常,编码验证器可以以任何顺序实现任意数量的错误检测和/或伪错误抑制算法。作为这种区分错误检测的一部分,编码验证器识别低互相关块列表,然后修剪该列表,去除对可感知同步错误没有显著贡献的低互相关块。例如,紧接在场景切换之前的块不会导致持续的同步问题,因此,编码验证器考虑这些“假”错误。
有利地,与传统编码验证技术不同,本文公开的基于帧差的技术能够验证聚合编码而不访问原始源文件。通常,并行编码器在多个计算实例之间实现-不同的计算实例独立地对每个分块进行编码,并且最终的计算实例组装分块并验证编码。尽管在这种分治方法中执行编码减少了编码时间,但是与不分散源的常规技术相比,最终聚合编码可能包括非预期错误的可能性增加。这里概述的技术能够有效地检测可归因于编码过程中的缺陷的错误(例如,编码块到聚合编码的错误组装)。此外,由于编码验证器实现各种复杂的比较算法以识别用于进一步调试的错误而不标记“预期”错误,编码验证器减少了对聚合编码验错和调试源分块、并行分块编码器和多分块组装器所需的工作。
已经为了说明的目的呈现了各种实施例的描述,但并不旨在穷举或限于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。
本实施例的各方面可以体现为系统、方法或计算机程序产品。因此,本公开的各方面可以采取完全硬件实施例的形式、完全软件实施例(包括固件、驻留软件、微代码等)或组合软件和硬件方面的实施例(他们可以在本文中都通常被称为“电路”、“模块”或“系统”)。此外,本公开的各方面可以采用体现在具有计算机可读程序代码的一个或多个计算机可读介质中的计算机程序产品的形式。
可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电子、磁、光、电磁、红外或半导体系统、装置或设备,或前述的任何合适的组合。计算机可读存储介质的更具体的示例(非详尽列表)将包括以下内容:具有一条或多条电线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式致密盘只读存储器(CD-ROM)、光学存储设备、磁存储设备或上述内容的任何合适的组合。在本文档的上下文中,计算机可读存储介质可以是可以包含或存储供指令执行系统、装置或设备使用或结合指令执行系统、装置或设备使用的程序的任何有形介质。
以上参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图来描述本公开的各方面。应当理解,流程图和/或框图的每个块以及流程图和/或框图中的块的组合可以由计算机程序指令来实现。这些计算机程序指令可以向通用计算机、专用计算机或其他可编程数据处理装置的处理器提供指令以产生机器,使得指令在经由计算机或其他可编程数据处理装置的处理器执行时使得能够执行流程图和/或一个或多个框图块中指定的功能/动作。这样的处理器可以是但不限于通用处理器、专用处理器、特定于应用的处理器或现场可编程的处理器。
附图中的流程图和框图示出了根据本公开的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这方面,流程图或框图中的每个块可以表示代码模块、代码段或代码部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。还应当注意,在一些替代实施方式中,块中所述的功能可能不按照附图中所示的顺序进行。例如,依次示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意到,框图和/或流程图的每个块和方框图和/或流程图说明中的块的组合可以由执行指定功能或动作的基于硬件的专用系统或专用硬件和计算机指令的组合来实现。
虽然前面涉及本公开的实施例,但是可以设计本公开的其他和进一步的实施例而不脱离本发明的基本范围,并且其范围由随后的权利要求来确定。

Claims (20)

1.一种用于识别在编码期间引入的错误的计算机实现的方法,所述方法包括:
解码从源数据导出的聚合编码数据,以生成聚合解码数据;
生成从所述聚合解码数据导出的帧差数据;
对从所述源数据导出的帧差数据和从所述聚合解码数据导出的帧差数据执行至少一个相位相关运算,以产生相位相关值;并且
基于所述相位相关值检测包含在所述聚合编码数据中的低相位相关错误。
2.根据权利要求1所述的计算机实现的方法,其中,检测所述低相位相关错误包括:确定与从所述源数据导出的帧差数据相关联的帧计数从与从所述聚合解码数据导出的帧差数据相关联的帧计数变化了超过预定阈值。
3.根据权利要求1所述的计算机实现的方法,其中,执行所述至少一个相位相关操作包括:
将从所述源数据导出的帧差数据和从解码的聚合编码导出的帧差数据分成多个块,其中所述多个块中的每个块包括从所述源数据导出的帧差数据的子集以及相应的从解码的聚合编码数据导出的帧差数据的子集;并且
对于每个块,将从所述源数据导出的帧差数据与从解码的聚合编码数据导出的帧差数据进行比较,以确定该块的相位相关值。
4.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:
识别第一数量的块,其中包括在所述第一数量的块中的每个块具有小于第一预定阈值的相位相关值;以及
确定所述第一数量的块大于第二预定阈值。
5.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:
对于第一块,对从所述源数据导出的帧差数据执行相移操作;
对于所述第一块,将从所述源数据导出的经移位的帧差数据与从解码的聚合编码数据导出的相应帧数据进行比较,以确定经移位的相位相关值;并且
确定所述经移位的相位相关值比所述第一块的相位相关值大至少第一预定量。
6.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:
基于所述相位相关值识别场景切换;
识别第一数量的块,其中包括在所述第一数量的块中的每个块不立即进行所述场景切换并且具有小于第一预定阈值的相位相关值;并且
确定所述第一数量的块大于第二预定阈值。
7.根据权利要求3所述的计算机实现的方法,其中,检测所述低相位相关错误包括:
识别具有小于第一预定阈值的相位相关值的第一块;并且
确定所述聚合编码数据的编码比特率大于第二预定阈值。
8.根据权利要求3所述的计算机实现的方法,其中,检测低相位相关错误包括:
识别一组低相关块,其中包括在所述一组低相关块中的每个块具有小于第一预定阈值的相位相关值;
基于所述一组低相关块的相位相关值确定分布;
基于所述分布计算置信区;
识别第一数量的块,其中包括在所述第一数量的块中的每个块被包括在所述一组低相关块中并且具有位于置信区之外的相位相关值;并且
确定所述第一数量的块大于第二预定阈值。
9.根据权利要求8所述的计算机实现的方法,其中,识别具有位于所述置信区之外的相位相关值的第一块包括对所述分布应用格拉布斯Grubbs测试。
10.一种包括指令的计算机可读存储介质,所述指令在由处理单元执行时使所述处理单元通过执行以下步骤来识别在编码期间引入的错误:
解码从源数据导出的聚合编码数据,以生成聚合解码数据;
生成从所述聚合解码数据导出的帧差数据;
对从所述源数据导出的帧差数据和从所述聚合解码数据导出的帧差数据执行至少一个相位相关运算,以产生相位相关值;并且
基于所述相位相关值检测包含在所述聚合编码数据中的低相位相关错误。
11.根据权利要求10所述的计算机可读存储介质,其中,检测所述低相位相关错误包括:确定与从所述源数据导出的帧差数据相关联的帧计数从与从所述聚合解码的导出的帧差数据相关联的帧计数变化了超过预定阈值。
12.根据权利要求10所述的计算机可读存储介质,其中,执行所述至少一个相位相关操作包括:
将从所述源数据导出的帧差数据和从解码的聚合编码导出的帧差数据分成多个块,其中所述多个块中的每个块包括从所述源数据导出的帧差数据的子集以及相应的从解码的聚合编码数据导出的帧差数据的子集;并且对于每个块,将从所述源数据导出的帧差数据与从解码的聚合编码数据导出的帧差数据进行比较,以确定该块的互相关值。
13.根据权利要求12所述的计算机实现的方法,其中,检测所述低相位相关错误包括:
识别第一数量的连续块,其中包括在所述第一数量的连续块中的每个块具有小于第一预定阈值的互相关值;以及
确定所述第一数量的连续块超过第二预定阈值。
14.根据权利要求12所述的计算机可读存储介质,其中,检测所述低相位相关错误包括:
确定所述聚合编码数据的编码比特率大于第二预定阈值;
识别第一数量的块,其中包括在所述第一数量的块中的每个块具有小于第一预定阈值的互相关值;以及
确定所述第一数量的块大于第二预定阈值。
15.根据权利要求12所述的计算机可读存储介质,其中,检测所述低相位相关错误包括:
识别一组低互相关块,其中包括在所述一组低互相关块中的每个块具有小于第一预定阈值的互相关值;
对所述一组低互相关块应用Grubbs测试以识别第一数量的块;并且
确定所述第一数量的块大于第二预定阈值。
16.根据权利要求12所述的计算机可读存储介质,其中,检测所述低相位相关错误包括:
对于第一块,对从所述源数据导出的帧差数据执行相移操作;
对于所述第一块,将从所述源数据导出的经移位的帧差数据与从解码的聚合编码数据导出的相应帧数据进行比较,以确定经移位的互相关值;并且
确定所述经移位的互相关值比所述第一块的互相关值大至少第一预定量。
17.根据权利要求12所述的计算机可读存储介质,其中,检测所述低相位相关错误包括:
基于所述互相关值识别场景切换;以及
识别第一块,其中所述第一块不立即进行所述场景切换并且具有小于第一预定阈值的互相关值。
18.根据权利要求17所述的计算机可读存储介质,其中,识别所述场景切换包括:
检测具有从所述源数据导出的超过第一阈值的帧差数据的第一帧;并且
确定紧在所述第一帧前面的第二帧具有从所述源数据导出的帧差数据,该帧差数据与所述第一帧的从所述源数据导出的帧差数据相差至少第二阈值。
19.一种被配置为识别在编码期间引入的错误的系统,所述系统包括:
并行编码引擎,其被配置为从源数据导出聚合编码数据;
验证发生器,被配置为:
解码从所述源数据导出的聚合编码数据,以产生聚合解码数据;
生成从所述聚合解码数据导出的帧差数据;
对从所述源数据导出的帧差数据和从所述聚合解码数据导出的帧差数据执行至少一个相位运算,以产生相位相关值;并且
基于所述相位相关值检测包含在所述聚合编码数据中的低相位相关错误。
20.根据权利要求19所述的系统,其中,检测所述低相位相关错误包括:确定与从所述源数据导出的帧差数据相关联的帧计数从与从所述聚合解码数据导出的帧差数据相关联的帧计数变化了多于预定阈值。
CN201680014666.XA 2015-02-13 2016-02-10 识别在编码过程中引入的错误的技术 Active CN107431804B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/622,771 US10674180B2 (en) 2015-02-13 2015-02-13 Techniques for identifying errors introduced during encoding
US14/622,771 2015-02-13
PCT/US2016/017376 WO2016130696A1 (en) 2015-02-13 2016-02-10 Techniques for identifying errors introduced during encoding

Publications (2)

Publication Number Publication Date
CN107431804A true CN107431804A (zh) 2017-12-01
CN107431804B CN107431804B (zh) 2021-08-27

Family

ID=55629093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680014666.XA Active CN107431804B (zh) 2015-02-13 2016-02-10 识别在编码过程中引入的错误的技术

Country Status (8)

Country Link
US (1) US10674180B2 (zh)
EP (1) EP3257243B1 (zh)
JP (1) JP6578009B2 (zh)
KR (1) KR102184664B1 (zh)
CN (1) CN107431804B (zh)
AU (2) AU2016219320B2 (zh)
CA (1) CA2976246C (zh)
WO (1) WO2016130696A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166808A (zh) * 2019-06-13 2019-08-23 深圳市拔超科技有限公司 一种解决晶振误差导致视频不同步的方法、装置及解码设备
CN111480344A (zh) * 2017-12-13 2020-07-31 奈飞公司 用于优化编码任务的技术

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10970753B2 (en) * 2017-06-01 2021-04-06 Walmart Apollo, Llc Systems and methods for matching products in the absence of unique identifiers
US10880211B2 (en) 2019-05-06 2020-12-29 Seth Gregory Friedman Transaction encoding and verification by way of data-link layer fields
US10868707B1 (en) 2019-09-16 2020-12-15 Liquid-Markets-Holdings, Incorporated Zero-latency message processing with validity checks
WO2021252423A1 (en) 2020-06-08 2021-12-16 Liquid-Markets-Holdings, Incorporated Hardware-based transaction exchange

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03231532A (ja) * 1990-02-06 1991-10-15 Fujitsu Ltd デジタル信号の誤り訂正処理装置及びその誤り訂正処理方法
US5576767A (en) * 1993-02-03 1996-11-19 Qualcomm Incorporated Interframe video encoding and decoding system
CN1340923A (zh) * 2000-07-07 2002-03-20 国际商业机器公司 软纠错代数解码器
US20020181408A1 (en) * 2001-05-30 2002-12-05 Sudheer Sirivara Delivery of streaming media
CN1920582A (zh) * 2005-08-25 2007-02-28 联发科技股份有限公司 相位检测器以及相关相位检测方法
CN1921560A (zh) * 2005-08-26 2007-02-28 电子科技大学 一种视频对象外边界提取方法
EP1903809A1 (en) * 2005-07-11 2008-03-26 Nippon Telegraph and Telephone Corporation Video matching deice, method, and program
CN104022784A (zh) * 2013-02-28 2014-09-03 国际商业机器公司 纠正突发错误的解码方法、解码设备和解码器
US20140301468A1 (en) * 2013-04-08 2014-10-09 Snell Limited Video sequence processing of pixel-to-pixel dissimilarity values
JP2014527778A (ja) * 2011-08-29 2014-10-16 アイ.シー.ブイ.ティー リミテッド ビデオコンテンツシステムの制御

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529631B1 (en) 1996-03-29 2003-03-04 Sarnoff Corporation Apparatus and method for optimizing encoding and performing automated steerable image compression in an image coding system using a perceptual metric
JP3739274B2 (ja) 2000-10-31 2006-01-25 Kddi株式会社 2系統映像の位置ずれ補正装置
KR100824711B1 (ko) 2003-08-22 2008-04-24 니뽄 덴신 덴와 가부시키가이샤 영상 정합 장치, 영상 정합 방법, 및 영상 정합 프로그램을기록한 기록매체
CN101036399B (zh) 2004-10-18 2010-05-05 日本电信电话株式会社 视频质量客观评价设备及评价方法
EP1862017A4 (en) 2005-03-25 2011-03-23 Algolith Inc DEVICE AND METHOD FOR OBJECTIVELY EVALUATING THE DCT-CODED VIDEO QUALITY WITH OR WITHOUT AN ORIGINAL VIDEOS SEQUENCE
KR20090004658A (ko) * 2007-07-02 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
EP2408206A1 (en) 2010-07-15 2012-01-18 SwissQual License AG Method for video quality estimation
EP2670151A1 (en) 2012-05-28 2013-12-04 Tektronix Inc. Heuristic method for drop frame detection in digital baseband video

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03231532A (ja) * 1990-02-06 1991-10-15 Fujitsu Ltd デジタル信号の誤り訂正処理装置及びその誤り訂正処理方法
US5576767A (en) * 1993-02-03 1996-11-19 Qualcomm Incorporated Interframe video encoding and decoding system
CN1340923A (zh) * 2000-07-07 2002-03-20 国际商业机器公司 软纠错代数解码器
US20020181408A1 (en) * 2001-05-30 2002-12-05 Sudheer Sirivara Delivery of streaming media
EP1903809A1 (en) * 2005-07-11 2008-03-26 Nippon Telegraph and Telephone Corporation Video matching deice, method, and program
CN1920582A (zh) * 2005-08-25 2007-02-28 联发科技股份有限公司 相位检测器以及相关相位检测方法
CN1921560A (zh) * 2005-08-26 2007-02-28 电子科技大学 一种视频对象外边界提取方法
JP2014527778A (ja) * 2011-08-29 2014-10-16 アイ.シー.ブイ.ティー リミテッド ビデオコンテンツシステムの制御
CN104022784A (zh) * 2013-02-28 2014-09-03 国际商业机器公司 纠正突发错误的解码方法、解码设备和解码器
US20140301468A1 (en) * 2013-04-08 2014-10-09 Snell Limited Video sequence processing of pixel-to-pixel dissimilarity values

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
STEPHEN WOLF: "A No Reference (NR) and Reduced Reference (RR) Metric for Detecting Dropped Video Frames", 《NTIA TECHNICAL MEMORANDUM TM-09-456》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111480344A (zh) * 2017-12-13 2020-07-31 奈飞公司 用于优化编码任务的技术
CN111480344B (zh) * 2017-12-13 2022-08-02 奈飞公司 用于优化编码任务的计算机实现的方法、存储介质及系统
CN110166808A (zh) * 2019-06-13 2019-08-23 深圳市拔超科技有限公司 一种解决晶振误差导致视频不同步的方法、装置及解码设备

Also Published As

Publication number Publication date
AU2016219320A1 (en) 2017-08-24
EP3257243B1 (en) 2022-09-07
JP2018509083A (ja) 2018-03-29
KR20170117129A (ko) 2017-10-20
KR102184664B1 (ko) 2020-11-30
WO2016130696A1 (en) 2016-08-18
AU2018241047A1 (en) 2018-10-25
CA2976246A1 (en) 2016-08-18
US10674180B2 (en) 2020-06-02
EP3257243A1 (en) 2017-12-20
US20160241878A1 (en) 2016-08-18
AU2016219320B2 (en) 2018-07-05
JP6578009B2 (ja) 2019-09-18
CA2976246C (en) 2021-11-02
CN107431804B (zh) 2021-08-27

Similar Documents

Publication Publication Date Title
CN107431804A (zh) 识别在编码过程中引入的错误的技术
JP6149076B2 (ja) イメージ、および、ビデオ符号化のパレットインデックスシグナリングの方法および装置
CN111026915B (zh) 视频分类方法、视频分类装置、存储介质与电子设备
CN103415870A (zh) 测量场景中的深度值的方法
US9215471B2 (en) Bitstream manipulation and verification of encoded digital media data
KR20110066609A (ko) 다시점 영상에서 코드북 기반의 전경 및 배경 분리 장치 및 방법
CN114663335A (zh) 图像瑕疵检测方法、装置、电子设备及介质
US20150195570A1 (en) Method of Texture Dependent Depth Partition
MX2013013874A (es) Sistema y metodos para probar hardware de video al evaluar tramas de video de salida que contienen caracteristicas de referencia integradas.
Ferrara et al. Unsupervised fusion for forgery localization exploiting background information
CN114550300A (zh) 视频数据分析方法、装置、电子设备及计算机存储介质
US11936830B2 (en) Computer implemented method for embedding a marker in an image or video content and corresponding marker detection method
EP3244622A1 (en) System, encoder and decoder for verification of image sequences
CN101299820B (zh) 视频解码方法、装置及视频修补装置
KR101461513B1 (ko) 디지털 시네마의 이미지 품질 검사 자동화 장치 및 방법
EP0930787A2 (en) Image coding apparatus and method using pattern coding
KR101009371B1 (ko) 비디오 테스트 비트스트림 생성 장치와 그를 이용한 방법, 그리고 그 방법이 실행 가능한 프로그램으로 기록된 기록매체, 상기 프로그램을 생성하는 프로그램 생성장치 및테스트 비트스트림 디버깅 편의 장치
US20140253751A1 (en) Method of compression of images using a natural mode and a graphics mode
CN113784131A (zh) 视频编码自动化辅助系统及方法
Kataoka et al. Color-Tone Similarity Evaluation in Image Quality Assessment
CN112911273A (zh) 一种检验被测解码器的方法和装置
Hsieh et al. Investigation on Error-Tolerability Enhancement of Videos via Re-Encoding for Computer Vision: A Case Study on Object Detection
KR101470191B1 (ko) 지역적 극대 필터 및 지역적 극소 필터를 이용한 비디오 내의 블록 오류 고속 검출 방법 및 장치
CN115767073A (zh) 转码性能测试方法、装置、电子设备及可读存储介质
EP2798846B1 (en) Assessing packet loss visibility in video

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant