用于通过评估含有嵌入的参考特性的输出视频帧来测试视频硬件的系统及方法
【专利摘要】本发明描述用于评定机顶盒STB、电视接收器或其它视频装置的视频图像解码质量的方法及设备。在制造环境中对视频递送硬件的移动视频测试使用具有在不同帧间嵌入于视频信号的可见部分中的参考特性的视频序列。针对嵌入的参考对象的失真来分析所述视频的每一帧,且允许所述参考对象在不同帧间移动。通过使用易于与所述参考对象区别的背景且通过使用定位所述帧中的参考信息的帧模板来定位所述对象。
【专利说明】用于通过评估含有嵌入的参考特性的输出视频帧来测试视频硬件的系统及方法
[0001]优先权
[0002]本申请案主张对2011年6月3日提出申请的第61/493,043号美国临时专利申请案的优先权。此申请案以引用的方式并入本文中。
【技术领域】【背景技术】
[0003]已使用各种类型的装置来解压缩、解码及/或以其它方式重现视频节目内容。举例来说,常规机顶盒(STB)通常解码从有线电视、直接广播卫星(DBS)或其它广播源接收的视频信号以用于在电视或其它显示器上呈现给观看者。提供视频重现的其它装置包含其它类型的广播电视接收器,以及电视及视频显示器本身、视频卡、视频处理电路、计算机及许多其它装置。
[0004]大体来说,期望在将所制造的视频重现装置装运到消费者或经销商之前的期间检查所述装置恰当地发挥作用。经常,使用人类主观测试以在设计过程期间评估视频编码与解码稳健性,并确保在制造后的质量及恰当作用。特定来说,在制造界中,人类主观测试可为相对劳动密集且昂贵的。此外,人类测试固有地易受主观性人类评论标准的变化影响,借此潜在地导致可能极难以正规化或控制的一系列的质量波动。
[0005]尽管已开发数个类型的自动化测试方案,但所述已知技术中的每ー者在实践中展现ー个或ー个以上劣势。举例来说,一种类型的自动图片质量分析使用机器视觉来捕获响应于受测试系统而显示的预记录视频测试序列的一部分。使用数字信号处理硬件来分析显示的所捕获部分,并基于空间、时间、色彩及/或其它分析而产生较客观(例如,数值)“图片质量分级”。然而,在直接比较测试序列与參考序列以产生质量度量的情况下,可能出现问题。举例来说,测试序列与參考序列之间的空间或时间未对准可大大地影响此些測量,从而导致不准确性。此外,可由于发射错误、缓冲器溢流或下溢、或其它因素而出现时间假影(例如,重复帧取代丢失的原始帧),借此影响分析的結果。还可出现其它问题,从而导致由机器视觉系统确定的“客观”度量的不确定性、不准确性及/或变化。
[0006]因此,期望形成能够有效且高效地测试例如机顶盒、视频接收器及/或类似装置等视频解码硬件的系统、方法及/或装置。结合附图及此背景章节,依据后续详细描述及所附权利要求书,各种特征及特性将变得显而易见。
【发明内容】
[0007]各种实施例提供用以测试例如机顶盒、电视及类似装置等视频硬件的方法及系统。
[0008]根据各种示范性实施例,提供ー种用以识别由视频装置产生的视频解码错误的方法。所述方法适合地包括:从所述视频装置接收运动视频的输出流,并借助视频分析器装置处理所述输出帧中的每ー者。所述输出流适合地包括各自由视频装置响应于预定输入而产生的多个输出帧,且所述多个输出帧中的每ー者包括帧识别符及在一致背景上呈现的至少ー个对象。针对所述多个输出帧中的每ー者,所述分析涉及基于所述帧识别符而使所述输出帧与帧模板相关联,其中所述帧模板定义所述至少一个对象在所述输出帧内的预期位置。所述分析还涉及检验处于所述输出帧内及所述至少一个对象的预期位置之外的多个像素符合所述一致背景。
[0009]其它实施例可提供ー种用以识别由受测试视频装置产生的视频解码错误的系统,所述受测试视频装置包括视频数字化器及包括处理器的帧分析器。所述视频数字化器经配置以从所述受测试视频装置接收运动视频的输出流,其中所述输出流包括各自由所述视频装置响应于预定输入而产生的多个输出帧,且其中所述多个输出帧中的每ー者包括帧识别符及在一致背景上呈现的至少ー个对象。所述帧分析器经配置以针对所述多个输出帧中的每ー者基于所述帧识别符而使所述输出帧与帧模板相关联,其中所述帧模板定义所述至少一个对象在所述输出帧内的预期位置。所述帧分析器进ー步经配置以检验处于所述输出帧内及所述至少一个对象的所述预期位置之前的多个像素符合所述一致背景,并提供指示处于所述输出帧内及所述至少一个对象的所述预期位置之外的像素何时不符合所述一致背景的输出。
[0010]如下文更全面地描述,可以许多方式修改或补充这些ー股实施例。
【专利附图】
【附图说明】
[0011]下文将结合以下图式来描述示范性实施例,其中相似编号标识相似元件。
[0012]图1展示在示范性实施例中涉及的硬件块的框图。
[0013]图2展示在帧内移动但维持视频的恒定平均值的对象的实例。
[0014]图3展示示范性像素值转译方法。
[0015]图4展示可在帧中移动且用于示范性最小长度对象测试的对象的另ー实例。
[0016]图5展示示范性对象图解说明最小长度对象及用于检测错误的示范性方法。
[0017]图6展示用于逐线分析的示范性过程流程。
[0018]图7展示用于帧分析的示范性过程流程。
[0019]图8展示具有嵌入ニ进制位计数器及额外參考信息的示范性对象。
[0020]图9展示其中已知尺寸的块具有对照恒定背景的移动的示范性实施例。
[0021]图10展示其中使用帧识别符上拉唯一帧的模板的示范性实施例,所述模板识别在所述帧中均匀背景定位之处。
[0022]图11展示用于有限取样的示范性线取样序列及像素计数的定序偏移。
[0023]图12展示可在视频序列上在不同帧间改变的背景值。
【具体实施方式】
[0024]以下详细描述本质上仅为示范性且不打算限制本发明或本发明的应用及用途。此夕卜,并不打算由前述背景或以下详细描述中所呈现的任何理论来约束。
[0025]根据各种示范性实施例,引导受测试装置产生表示已知测试帧序列的运动视频流。所述测试帧中的每ー者由识别符、可在帧间移动的ー个或ー个以上所显示对象以及适合背景构成。在受测试装置的输出处解码及重现每ー测试帧,且将输出提供到帧分析器或类似装置以用于分析并与预期结果进行比较。在许多实施方案中,在预期为图像背景的部分的ー个或ー个以上输出像素实际上不同于其它背景像素时识别受测试装置中的错误。如果图像对象中的一者或一者以上失真而与背景的一部分重叠,那么通常产生此状況。
[0026]在各种实施例中,背景在色彩(例如,白色)及像素強度(例如,最大強度的大约90%左右)上为一致的,因此遍及整个帧背景为相对不改变的。接着,可分析经重现的视频帧以确定来自所显示移动对象的任何假影是否己“模糊”或以其它方式失真到本应一致的背景中。
[0027]此外,帧的数目及内容可经控制以使得帧分析更高效。所述测试帧中的每ー者适合地包含帧编号或(举例来说)含在帧图像内且可用于在后续处理期间识别所述帧的其它识别符。使用此识别符,分析器能够使输出帧与所述帧的模板或其它描述相关联,所述模板或其它描述允许分析器知晓在帧中显示的对象的所要位置。可直接地(例如,通过描述对象的位置)、间接地(例如,通过描述対象外侧的背景的位置)或视需要以其它方式定义测试帧内的对象的位置。
[0028]因此,分析器从受测试装置接收表示基于已知输入的经解码或以其它方式重现的视频帧的实际输出信号。接着,可将所接收帧与已知模板或关于每一帧的其它信息进行比较以容易地识别任何差异。
[0029]更特定来说,分析器适合地检查所接收帧数据内的一组适当像素以确定是否已出现移动对象的任何“模糊”。在各种实施例中,分析器评估一子组像素行及/或列以确保所扫描像素与共同背景一致。可从帧模板识别并视需要忽略(或以其它方式处理)对应于帧内的移动对象的像素。
[0030]分析的各种參数可在不同实施例间显著变化,且可经选择使得可执行视频输出的实时(或近实时)分析。通过设计一致的単色背景,举例来说,可使用简单的单色取样技术(例如八位单色取样)来分析各个像素。如果任何所分析像素在強度上不同于一致背景的预期值,那么可识别与所述像素相关的问题。如下文更全面地描述,可以任何方式选择在每一帧中评估的像素。可以任何方式组合多个像素的分析;举例来说,可对来自图像的共同行、列或其它部分的多个像素值进行求和及/或求平均。
[0031]因此,各种实施例提供ー种用以评估来自例如机顶盒的视频解码器装置或包含一个或ー个以上视频输出的视频终端的视频输出的方法。大体来说,提供到受测试装置的输入视频测试流含有可用于确定视频错误或质量的嵌入參考。通常可由于遗漏信息及/或解码本身的问题而出现视频错误。不同类型的视频错误的实例可包含宏块错误、错误色彩或亮度、由位于错误地点中的信息块产生的运动向量错误及/或视情况其它错误。
[0032]附图及下文描述至少一个示范性实施方案。各种其它实施例可实质上不同于本文中所陈述的实例。
[0033]现在參考图式,图1描绘示范性视频质測量试系统,其中定制视频测试流或帧序列驻存于视频假脱机程序100或类似物上。此定制视频信号可以可在受测试装置120上解码或以其它方式重现的任何标准或专有格式(例如,MPEG2、MPEG4、Quicktime, H.264、Windows Media、Flash Media及/或类似格式)来编码及调制。使用视频分布110将输入信号分布或以其它方式提供到受测试装置120。视频分布110以任何方式将所述信号路由或以其它方式提供到受测试装置120。等效地,视频分布110可提供于非暂时性数字存储媒体上,例如数字盘、数字存储器或类似装置。如下文更全面描述,输入信号通常编码以预定方式结构化及格式化的内容,以在受测试装置130正常运行的情况下产生可预测結果。
[0034]受测试装置120可表示机顶盒(STB)或其它电视接收器或者能够解码或以其它方式重现数字或模拟视频信号的任何其它装置,例如电视、视频显示器、视频处理芯片或卡、计算机系统、视频游戏系统、媒体播放器及/或类似装置。受测试装置120在本文中还可称为视频终端,或简称为“视频装置”。
[0035]来自受测试装置120的视频输出适当地输入到例如视频帧分析器130的装置(例如,帧抓取视频数字化器)中。视频帧分析器130可含有呈RAM、磁盘空间及/或类似物的形式的缓冲器或其它存储器,以存储关于每一帧的參考信息及/或模板以及所接收视频帧本身中的一者或一者以上。来自受测试装置120的视频输出可以任何模拟格式(例如,合成、分量、S视频及/或类似格式)及/或任何数字格式(例如,HDM1、DVI及/或类似格式)接收。视频帧分析器130通常一次数字化ー个视频帧,但其它实施例可视情况数字化多个帧。视情況,数字化通常涉及将每ー像素分解成三空间值,例如红-绿-蓝或Y-Pr-Pb。接着,帧分析器质测量试140分析帧像素分量以确定帧质量。在各种实施例中,可使用包含用于接收从受测试装置120输出的视频信号的适当硬件与软件接ロ(例如,视频接ロ卡)的通用计算系统(例如,个人计算机)来实施视频帧分析器130及质测量试器140。举例来说,运行常规帧抓取卡的个人计算机可接收及数字化来自受测试装置120的输出视频信号。接着,在所述个人计算机(或另ー计算机)上执行的软件可分析来自所接收信号的所接收及数字化图像。
[0036]如上文所提及,通常关于例如红色、緑色及蓝色(RGB)的三个分量值来定义像素。接着,在提及像素值时,此可视情况意指红色值、緑色值与蓝色值的总和。“像素值”还可指代在个别色彩空间(举例来说,RGB)中个别像素分量彼此相比的电平。如下文更全面描述,在其它实施例中,“像素值”可具有其它含义。
[0037]图2展示其中将參考嵌入到视频信号本身中的实例。在此图中,展示四个帧(全部为190),且在每一帧内为三个对象:矩形160、椭圆形170及/或三角形180。在此实例中,所述四个帧中的每ー者含有完全相同的对象160、170、180,只不过所述对象已在不同帧间移动。此外,每ー帧具有背景150,在此情况中,背景150在整个帧上具有一致背景色彩及強度(对象所在处除外)。色彩及亮度也在不同帧间一致,但在ー些实施例中,可容忍色彩及/或亮度的某一偏差。
[0038]如图2的实例中所展示的嵌入到每ー帧中的ー个參考为:针对对象160、170、180中所包含的所有像素的像素值的平均值或总和在不同帧间保持恒定。在此实例中,对此进行进ー步扩展且忽略背景150中的恒定色彩及振幅的像素,针对对象160、170、180中的所有像素的像素值的平均值(或总和)将在不同帧间保持恒定。此外,如果尚未出现任何错误,那么不与背景为相同值的像素的总数目将在每一帧中相同。在一个实施例中,帧分析可忽略与背景150为相同振幅的所有像素。不同于背景的剰余像素将因此表示对象160、170、180。接着,可对所有非背景150像素的总和或平均值进行求和及/或求平均以确定所述非背景像素的总像素值或平均像素值。如果未出现任何错误,那么此总值或平均值应在图2中展示的四个帧之间不改变。作为进ー步检查,还可追踪非背景像素的总数目。[0039]如果在帧中出现错误,那么此通常将改变背景150中的所有非背景150像素的平均值与非背景像素的总数目两者。举例来说,数字块化错误通常将产生与背景150不相同的ー个或ー个以上像素值,因此此将可容易检测。此外,由于在此实例中忽略背景像素150,因此仅将错误的量值与对象160、170、180进行比较。事实上,此实例将增加错误对对象像素比率,借此导致更准确的错误检测。
[0040]在图2的实例中,引入根据平均像素分析抛出背景像素的概念。如果假定相比白色电平,视频错误像素将趋于更接近于黑色电平,则将通过将背景像素值设计成相比黒色电平更接近于白色电平来利用此差异。在一个实施例中,背景电平可设计为大约90 %白色,但在其它实施例中可使用任何色彩或振幅电平。在常规单色用语中,白色像素一股视为处于全标度,且黑色像素视为处于零电平。在此实例中,通过将背景的电平设计成跨越帧为ー致的且接着从预期平均像素值忽略背景值在某种意义上是对近白色像素的背景赋予近零值(就其对平均像素值的影响来说)。
[0041]图3展示可用于像素平均值求和的值转译函数的实例。在像素分析中,帧190的区段可设计有一致地作为背景150的部分且不具有对象160、170或180的区域。接着,可通过观察維持恒定背景的此区域而快速地确定“背景像素标称抛出电平”230。容限(例如,在此实例中,+/-2%,其它实施例可使用其它值)设定背景像素抛出范围235的高像素电平及低像素电平。接着,可假定具有在此范围235内出现的像素值的像素为背景150的部分。
[0042]在一些实施例中,背景150还可具有某种纹理。举例来说,背景纹理可沿水平(及/或垂直)维度以周期性或其它可预测方式变化,使得可以等效且同相方式补偿寻找背景的过程。
[0043]在此实例中,当检验帧190中的像素时,可假定在背景像素抛出范围235中遇到的任何像素为背景150的部分且因此将其舍弃。为了强调可能出现的任何错误的影响,在进ー步分析中,可根据出现在被舍弃范围之外的像素值与背景150的差异来放大所述像素值。举例来说,如果像素值小于较低背景像素抛出范围235,那么图3展示通过简单公式来转译所述值:
[0044]经转译值=全标度-所测量值
[0045]在图3中展示针对经转译像素值的曲线225的实例。可看出,黒色像素将通常具有小像素值(对应于其暗色彩),但经转译值处于或接近全标度。在所有像素的平均值或总和中,此像素转译将较高加权赋予较暗像素,借此强调与背景范围235的偏差。
[0046]通常,对象160、170、180将不设计为具有处于比背景150更白的像素振幅的像素。然而,在白色范围中仍可出现视频错误。如果遇到具有比背景像素抛出范围235的高侧更高的像素值的像素,那么图3展示不转译此像素值且仅朝向总和或平均值应用此像素值。在此实例中,此将闻加权赋予极白像素错误。
[0047]图4展示具有三个对象260、265及270的另ー帧190。所有这三个对象均具有水平边界且在水平上也具有相同长度275。如前所述,存在恒定色彩及振幅的背景150。如先前所展示,这三个对象可在不同帧间改变位置,但其大小、色彩及纹理针对所有帧保持恒定,使得在不同帧间保留恒定平均视频电平的性质。在图4的实例中,展示三个对象260、265及270。其它实施例可在帧中包含更多或更少的对象,只要在所有帧中均为相同对象即可。应注意,在此实例中,与对象265及260相比,对象270具有额外清晰度。对于此实例中的对象来说此是可接受的,只要对象在视频的每ー帧中保持相同形状及清晰度或对象中的像素的平均值保持恒定即可。
[0048]图5展示可对恒定长度对象(例如260、265及270)进行的额外示范性质量测试。在图5中,呈现示范性对象290,且定义其中线扫描285 (例如,沿线布置的像素的扫描)将连续地看到无背景像素的最小长度280。在所图解说明的实例中,线扫描285将从对象290的左侧开始。在所述扫描中,最初,仅遇到背景150且如较早所描述,忽略或抛出背景像素。一遇到对象285,便在非背景像素分析时将所述像素包含于总和/平均值及数目中。
[0049]在图5中所图解说明的实例的下部部分中,展示其中对象292的块295已被垂直错置的错误。举例来说,此可由运动向量错误导致。如果出现此情形,那么沿两个线的扫描285及288将看到非背景像素的较短区段。可看出,扫描285将在此例子中看到对象的两个非背景区段,且此两个区段均比预期最小长度280短。还可看出,遇到区段295的线扫描288也将具有比预期最小长度280短的非背景像素水平长度。对象的最小长度的此概念可进ー步用于找出位移错误,例如块295。通过对在线扫描期间遇到的连续非背景像素的数目进行计数,且接着将此计数与预期像素的最小数目进行比较,可在比预期快地遇到背景像素时识别出错误。
[0050]图6展示用于执行线扫描(例如图5中的沿线的扫描285)的示范性过程的流程图。可使用任何种类的常规硬件与软件(包含任何种类的处理器及存储器或其它非暂时性存储装置)在通用或专用计算机系统内实施此过程。
[0051]此实例中的线分析在其中最初对最小长度错误旗标(MLEF)进行复位的“B” (300)处开始。在功能305中,使像素指针递增以观察扫描线中的下一像素。最初可将此值设定为零,因此使零值点朝向扫描线中的第一像素递增。功能310注意查看是否已完全检验所述线,且如果如此,那么所述分析在点“C”320处退出。在功能325中,检验当前像素值以查看像素是否在帧背景150的某ー预定范围(例如,图3的范围235)中。如果是,那么在功能330中忽略所述像素,且所述过程往回循环到其中以相同方法检验下一像素的功能305。
[0052]如果在功能325中像素并未被确定为背景,那么可确定已遇到“对象”(例如290)且如功能340中所展示来起始对象计数器。在此图解说明中,使用开始值“1”,但其它实施例可使用其它等效表示。接着,将此像素的像素值加到从所有非背景像素的像素值的总和导出的总和/平均值分析;如上文关于图3所论述,可缩放所述像素值。非背景像素计数也视情况递增。
[0053]在功能350中,观察下一像素且也使对象计数器递增。接着再次评估新像素以查看其是否为背景,且如果并非为背景,那么所述过程循环回到功能345,并继续观察对象中的像素且在遇到适当像素时将像素值加到分析。
[0054]如果在功能355中遇到背景像素,那么此用信号通知对象的结束且流程转到功能335。在功能360中,将对象计数器值与预定义的最小长度数字进行比较。举例来说,最小长度可能已被定义为100个像素。如果对象计数器仅为20个像素,那么功能360中的最小长度测试将已失败且所述过程转到功能365,其中设定最小长度对象错误旗标(MLEF)以指示在线扫描中遇到不满足最小长度测试的对象。如果在功能360中对象大于最小长度,那么所述过程流程跳跃回到功能305,其中继续扫描及分析所述线直到在功能310中完成线扫描为止。[0055]应注意,在线扫描中可遇到ー个以上最小长度对象错误。在图6的实例中所展示的示范性过程中,此将仅设定最小长度错误旗标一次,但此还可被设定为多达从所述过程中传出所述数目个最小长度错误的程度。
[0056]同样,图6展示一个示范性过程;任何数目个替代实施例可视需要调适此过程或使用完全不同的过程。
[0057]图7展示用于分析从帧抓取器、数字化器130或类似装置接收的视频输出的示范性过程。可使用通用或专用数字计算机140 (例如个人计算机或类似装置)来实施此过程。可使用存储于任何非暂时性存储媒体(例如,存储器、磁盘或类似装置)上且视情况由任何种类的处理器、控制器或其它硬件执行的计算机可执行指令来实施所述技木。
[0058]图7展示所述过程在功能385处开始。功能390最初分析已知仅具有背景强度像素的帧的一部分中的ー个或ー个以上像素(如上文所述),使得可确定背景像素电平230 (图3)。在功能392中,复位或视情况以其它方式初始化线错误计数器LEC。
[0059]在功能395中,现在针对平均值来分析在功能390中读取的背景像素,且还使用预定义容限(例如,图3中的范围235)来确定将被确定为背景150的像素范围。举例来说,如果背景像素为90%白色且容限为2%,那么背景像素的容限将为88%到92%白色电平。在任何数目个替代实施例中,可选择任何背景电平或容限。此外,在其中背景电平已知且不改变的实施例中,可将电平及容限“硬译码”到过程中,借此减少或消除个别地检测ー个或ー个以上帧的背景值的需要。
[0060]视情况处理从视频抓取器/数字化器130接收的每一视频帧。在各种实施方案中,可并入上文关于图6所描述的线扫描过程以分析每ー帧。举例来说,图7的功能400展示处理跳跃到图6中的点“B”且作为功能405从图6中的“C”返回。B及C两者分别在图6中定义为功能300及功能320。
[0061]在从功能405中的线扫描返回之后,所述过程检查以查看是否在功能410中设定MLEF (最小长度错误旗标)。如果设定了所述旗标,那么此指示出现了最小长度错误且在功能415中使线错误计数器LEC递增。在功能420中,对照适当预定值来检查LEC。在功能420中,此展示为“4”(指示可容忍四个错误),但可针对其它分析使用任何数目个错误。在此情况中,所述过程将转到功能455,并在线错误计数超过阈值(“4”)时报告坏的帧。使用LEC及需要具有最小长度错误的线的数目的数字允许对象(例如285)在无错误故障的情况下具有稍微锯齿状的水平边缘。其它实施例可视需要针对更紧密的容限进行检查。
[0062]如果功能420中的LEC测试小于阈值,那么过程转到功能430,其中确定是否已分析帧中的所有线。如果是,那么所述过程转到功能440。此时,线扫描全部完成且任何非背景像素均已将其像素值加到总和或平均值。此外,已积累及保持非背景像素的计数。如上文所述,将非背景像素计数的总和/平均值及数字各自与可经设计以针对所有帧保持恒定的已知參考数字进行比较。示范性实施例可经设计使得(比如说)预期将计数到640个非背景像素。可围绕此数字设定+/_3% (或任何其它所要值)的容限,在此实例中,如果非背景像素计数为621到659,那么此将导致帧“通过”。如果确定所述帧为好的,那么在功能450中报告好巾贞。如果所述巾贞为坏的,那么在功能455中报告坏中贞。
[0063]如果在功能410中未设定MLEF旗标(指示刚刚扫描的线不具有任何最小长度错误),那么在功能425中可使LEC计数器递减而不让所述计数器变为低于零。然而,功能425为任选步骤,其可取决于针对给定视频系统如何出现块化错误而由各种过程替换。
[0064]功能430注意查看是否已分析帧中的所有线。如果否,那么在功能435中可使线指针递增,且处理继续到其中观察新线的功能400。
[0065]同样,在图7中陈述的过程仅为ー个实例,其可在任何数目个替代但等效的实施例中修改或替换。
[0066]在图式(例如,图6到7)中展示的过程的各种功能及特征可借助在任何平台上存储及/或执行的任何种类的硬件、软件及/或固件逻辑来实施。举例来说,所述过程中的一些或全部可通过在图1中展示的ー个或ー个以上系统内执行的逻辑来实施。举例来说,各种功能可使用存储于存储器(及/或大容量存储装置)中且由作为ー个或ー个以上计算机系统的部分的处理器或用于实施如图1中所展示的帧抓取器130及/或帧分析器140的其它应用程序平台执行的软件或固件逻辑部分地或完全地实施。然而,实施在图中展示的各种功能中的任一者的特定硬件、软件及/或固件逻辑可根据本文中所陈述的各种特征、结构及环境而在不同情境、不同实施方案及不同实施例间变化。接着,视需要,用于实施图中所展示的各种功能中的每ー者的特定构件可为能够执行呈任何格式的软件及/或固件逻辑的任何种类的处理结构及/或任何种类的专用或通用硬件,包含驻存于任何种类的主机系统中的任何种类的离散及/或集成电路。
[0067]继续描述示范性实施方案,图8展示并入有用作识别符的八位数字的示范性对象500。在一些情况中,在帧中具有为所述帧编号的识别符是有帮助的。此可用于确定在测试过程中丢弃或添加的帧,且可用于视需要使所接收视频帧与关于所述帧的适当模板或其它信息相关联。然而,为了避免帧之间的变化,可期望使用相同类型及相同数目个像素来表示每ー测试帧的每ー识别符。此允许总/平均像素強度在帧之间保持恒定。
[0068]在图8中图解说明一种用于在不诱发帧之间的像素强度变化的情况下识别特定中贞的技术。在此实例中,姆一巾贞以处于对象500内的八位识别符515来表不。在此实例中,构成识别符的八个位由暗色及白色“位框”510展示。在图8中为方便起见图解说明位框510的值的ニ进制表示515,但这些通常将不并入到提供给受测试装置的实际图像中。
[0069]在图8的实例中,从左向右对对象500的水平线扫描505穿过第一位框510且遇到所述框的白色部分。在此实例中,白色部分可表示ニ进制“零”值。第三位框在线扫描505中为暗的,其可表示ニ进制“ I ”值。在对象500中且随着扫描505,可看出逻辑值515将被解码为“00100101”。此ニ进制数字表示十进制数字37。应注意,当位框510改变其ニ进制值时,调换顶部块部分及底部块部分。此使对象500中的所有像素的平均值及非背景像素的数目两者保持恒定,而不管所表示的ニ进制计数如何。在图8中所展示的实例中,位框510具有8个位,从而给出最大计数256。在每秒30的大致帧速率下,此将产生大致8.53秒的视频。在一个实施例中,将具有由大致每8.53秒地重复的256个唯一帧组成的视频循环。当然,其它实施例可使用以任何数目个位表示的任何数目个不同帧。其它实施例可视需要使用其它识别符方案。
[0070]当分析基于所描述测试而检测到坏视频帧时,可保存此帧且还可使用位框510来确切地告知视频循环中的哪ー帧导致所述错误。此外,ニ进制位框510可用于在逐帧基础上调整测试通过或失败阈值。
[0071]在图8中所图解说明的实施例中,对象500还包含可用于表示不同像素值的三个区段520。作为实例,三个块520可表示红色、蓝色及緑色像素色彩。视需要,此额外数据也可由质量分析使用。举例来说,可以任何方式単独地追踪及检验“红色”、“緑色”及“蓝色”像素的数目。
[0072]额外实施例可使用帧识别符对象(例如位框510)来识别也连结到附随音频信号中的唯一特性的唯一视频帧。举例来说,可在帧位框计数达到某一数字的瞬间将脉冲(impulse)或方形脉冲(pulse)作为时间识别符插入于音频流中。使用视频巾贞识别符及音频时间识别符,系统还可针对音频与视频同步进行测试。
[0073]另ー可能实施例可创建ー组帧,其中每ー帧具有參考对象但对象的參考资格可在不同帧间改变。使用帧识别符对象(例如对象500),分析可对对象应用帧相依测试。
[0074]另ー示范性实施例可利用导致所显示图像的部分的失真的解码错误。在此实施例中,可对照如图9中所展示的均匀背景150来放置已知尺寸的对象550。对象550可具有在不同帧间的运动(改变位置)且对象550可具有在对象边界内部的尽可能多的细节。此夕卜,在对象550内部的细节可在不同帧间改变。在简单示范性实施方案中,对象550内部的细节经设计成使得其绝不具有为与背景相同的值的任何像素内容。通过沿水平方向如箭头560所注记及沿垂直方向如箭头570所注记来扫描帧而确定帧的质量。由于块内细节及背景始终具有互斥的像素色彩空间值,因此可找到块的开始及结束的物理位置。接着,可确定对象的扫描长度的线性尺寸以确保所述长度匹配已知值,借此检验图像的质量。作为实例,对象550可为90像素X90像素。与块对象相交的帧的线的线性扫描应展示所遇到的非背景像素的区域在长度上应为大致90个像素。
[0075]图9中的对象580将对象失真展示为较暗色彩区域590。在此实例中,由扫描遇到的非背景150的长度将包含失真区域590,因此所扫描的非背景的长度将比上文所论述的90个像素的极限长。因此,在此实例中,此将看作失真错误。
[0076]由于失真590可沿水平或垂直维度出现,因此还可沿水平及/或垂直维度进行帧扫描。此在图9中展示为水平扫描560及垂直扫描570。举例来说,如果对象550及580为方形且具有90像素X90像素的尺寸,那么水平线扫描及垂直线扫描两者均检验此尺寸。由于在此实例中所述分析仅观察非背景尺寸,因此此实施例可不需要在不同帧间维持像素的恒定平均值。在一些情况中,可希望对象内部的内容在不同帧间改变,作为加强数字压缩解码的方法。尽管使所有对象550、580具有相同水平尺寸及垂直尺寸并非关键的,但此确实使得质量检测算法变得更简单,因为所有图像均寻求共同资格长度。
[0077]图10展示另ー示范性实施例。在此实施例中,每ー帧具有唯一识别符,例如位计数器640,其中通过ニ进制I及0值的亮及暗阴影来确定唯一帧识别符。针对此实例,位计数器640为八个位,从而允许识别256个唯一帧;可等效地实施任何长度的计数器。在图10中,在帧的顶部处展示水平像素计数630,且在此情况中其从0变为720个像素。
[0078]当使用位计数器640识别唯一帧时,从计算机存储器调用此唯一帧的模板。所述模板在逐线基础上定义唯一背景150所在之处,或替代地,也在逐线基础上定义非背景对象(例如600,605及610)定位之处。
[0079]作为实例,图10中所展示的帧的模板的一个实施例可为:
[0080]帧编号(来自位计数器640) ニ进制的10010110 =十进制的150。
[0081]扫描I 0:720[0082]扫描2 0:105,235:490,575:720
[0083]扫描3 0:305,400:720
[0084]扫描4 0:720
[0085]在此模板中,如果检验线2的模板信息,则可以称观察在0到105、235到490及575到720之间的像素。应注意,此扫描将跳过对象600中的在像素计数105到230之间的像素且也跳过对象605的在像素计数490到570之间的像素。
[0086]针对模板指示将扫描及检验的像素,关于好帧预期像素将具有背景150的值。举例来说,如果背景值为90%白色,那么可将质量准则设定为背景像素为90%白色+/-5%,或任何其它范围。如果由模板文件识别为背景150的像素展示在此范围之外的值,那么将其视为错误。
[0087]针对对象610展示错误失真的实例。针对此对象610,在对象610的底部处展示错误失真620。扫描4指示在0到720之间的所有像素应为背景150。然而,在扫描通过像素305到400时,所检验的像素将并非背景150的值且将识别出错误失真620。
[0088]在此实例中,由于帧填充有较多对象(例如600、605及610),因此背景150的面积减小。此导致检验较少像素,其中益处为在较短的时间量中完成帧评估。举例来说,如果对象的总面积为帧的50%,那么需要检验的帧的像素減少到总体的50%。
[0089]可看出,所述模板方法允许对象600、605、610在不同帧间移动,因为每ー帧存在识别对象的位置的唯一模板。此外,对象600、605、610内部的像素内容对错误分析来说无关紧要,且可在不同帧间改变。对象600、605、610的大小及形状也可在不同帧间改变,因为如刚刚所提及,由于每ー帧的唯一模板针对在所述模板中识别的每ー线给出对象的位置。
[0090]在图10中所展示的实例中,模板仅具有四个扫描线。每ー帧的模板可包含扫描线以包含帧中的所有线或总体的任何部分。每ー帧的模板还可指示针对帧中的不同区域的不同测试准则。举例来说,图10中所展示的帧150的模板的另ー可能性可为:
[0091]扫描I BG (0:720)
[0092]扫描2 BG (0:105),OBJl (106:230),BG (235:490),OBJ2 (491:570),BG (575:720)
[0093]扫描3 BG (0:305),0BJ3 (306:400),BG (405:720)
[0094]扫描4 BG (0:720)
[0095]在以上模板实例中,BG表示背景150,OBJl表示对象600,0BJ2表示对象605且0BJ3表示对象610。观看线扫描2,模板告知过程像素0到105为背景150,像素106到230为对象600,像素235到490为背景150,像素491到570为对象605且像素575到720为背景150。接着所述分析可针对沿线扫描的不同像素中的每ー者使用不同通过/失败准则。
[0096]此外,在其中仅对背景150进行取样的所提及实施例的情况下,寻找背景150像素值中的失真,且可定义将始终找到的最小大小错误。举例来说,如果称始終想要找到的最小大小错误为6X6像素,那么仅扫描每第五个线及在所述线中的每第五个像素即可足够。在此实例中,此将导致仅观察帧中的总像素的1/25,借此节省时间及处理资源。
[0097]进ー步实施例可允许始终检测到非方形形状错误。在图11中,图解说明每第五个线及每第五个像素的示范性扫描,其中每ー扫描的开始像素针对每一新线而偏移ー个计数。在图11的实例中,水平像素计数630沿水平维度且线计数660沿垂直维度。可看出实际像素编号670针对每一祥本递增五个计数,但针对每ー后续线存在一个计数偏移。在五个线之后,偏移循环回到零且所述型式重复。
[0098]针对以后续偏移来对每第五个像素及每第五个线进行取样的此情况,仍可检测到6X6像素大小的失真,如同可检测到1X25像素、2X 20像素等等的失真。
[0099]在额外实施例中,背景150可在不同帧间变化。在图12中,在水平维度上展示帧编号690,且沿垂直维度展示像素值680。应注意,在图12中,将像素值给出为单ー数字(在此情况中,256的全标度),然而,所述像素值可为三值RGB数字。在此实例中,帧I具有背景像素值20,且所述背景像素值遵循曲线700使得对于帧150,像素值为240,且接着在帧240处,背景150像素值同样为20。所述分析可使用先前所描述的用于找出例如背景150中的像素值失真的错误的方法中的任一者。如果所述帧具有允许唯一地识别帧的帧计数器(例如图10中的640),且针对每ー帧存在唯一模板,那么所述模板可包含针对特定帧的背景150的值。此外,还可通过对已知仅含有背景的帧区域中的数个像素进行取样来确定背景150值。在其中拾取像素以确定背景的区域中的失真将导致经取样像素中的ー些为不同值,或将导致背景150像素的其余部分不匹配经取样像素。
[0100]图12的示范性概念可仅用于实施在白色阴影与黑色阴影之间变化而在屏幕的可见部分中无移动对象的背景150。图12的概念还可用于在视频帧的不同部分中具有不同背景电平。帧模板可用于在逐线基础上指示背景150值,且甚至可以线性尺寸展示沿所述线改变的背景值150。许多其它增强及变化可并入到任何数目个替代但等效的实施例中。
[0101]现在应了解,前述论述提供用于在无需外部视频參考的情况下或无需在并非正常显示的视频信号的部分的数据流中传递资格信息的情况下测量所接收视频的质量的有利方法及设备。可从对本文中所描述的ー股概念的任何数目个等效变化获得替代及/或额外益处。
[0102]如本文中使用,词语“示范性”意指“充当实例、例子或图解说明”。在本文中描述为“示范性”的任何实施方案未必打算理解为比其它实施方案优选或有利。
[0103]尽管前述详细描述将为所属领域的技术人员提供用于实施本发明的各种实施例的方便路线图,但应了解,以上描述的特定实施例仅为实例,且绝不打算限制本发明的范围、适用性或配置。相反,可在不背离本发明的范围的情况下对所描述元件的功能及布置做出各种改变。
【权利要求】
1.ー种用以识别由视频装置产生的视频解码错误的方法,所述方法包括: 从所述视频装置接收运动视频的输出流,其中所述输出流包括各自由所述视频装置响应于预定输入而产生的多个输出帧,且其中所述多个输出帧中的每ー者包括帧识别符及在一致背景上呈现的至少ー个对象; 针对所述多个输出帧中的姆ー者,基于所述帧识别符而使所述输出帧与帧模板相关联,其中所述帧模板定义所述至少一个对象在所述输出帧内的预期位置,并检验处于所述输出帧内及所述至少一个对象的所述预期位置之外的多个像素符合所述一致背景。
2.根据权利要求1所述的方法,其进ー步包括在处于所述输出帧内及所述至少ー个对象的所述预期位置之外的所述多个像素中的至少ー者不符合所述一致背景时指示视频解码错误。
3.根据权利要求1所述的方法,其中通过具有实质上恒定像素值的像素来定义所述ー致背景。
4.根据权利要求3所述的方法,其中处于所述至少一个对象内的所述像素中的任一者均不具有等于所述实质上恒定像素值的像素值。
5.根据权利要求1所述的方法,其中所述至少一个对象在不同帧间不改变,但在每ー帧中的不同位置处呈现。
6.根据权利要求1所述的方法,其中所述帧识别符在视觉上表示使所述输出帧与所述帧模板相关联的二进制数字,且其中作为所述输出帧的部分来显示所述帧识别符。
7.根据权利要求1所述的方法,其中所述帧模板中的每ー者包括各自具有像素值的多个像素,且其中每ー模板的所有所述像素值的总数与其它模板的总数实质上相同。
8.根据权利要求1所述的方法,其中所述帧模板中的每ー者包括各自具有像素值的多个像素,其中所述像素值中的一者与所述一致背景相关联,且其中具有与所述一致背景相关联的所述像素值的像素的数目在所述帧模板中的每ー者中实质上相同。
9.根据权利要求1所述的方法,其进ー步包括扫描所述输出帧中的每ー者中的像素线,并在具有不同于所述一致背景的像素值的连续像素的数目小于最小长度的情况下确定存在视频解码错误。
10.根据权利要求1所述的方法,其进ー步包括扫描所述输出帧中的每ー者中的像素线,且在具有不同于所述一致背景的像素值的连续像素的数目大于最大长度的情况下确定存在视频解码错误。
11.ー种用以识别由受测试视频装置产生的视频解码错误的系统,所述系统包括: 视频数字化器,其经配置以从所述受测试视频装置接收运动视频的输出流,其中所述输出流包括各自由所述视频装置响应于预定输入而产生的多个输出帧,且其中所述多个输出帧中的每ー者包括帧识别符及在一致背景上呈现的至少ー个对象;及 帧分析器,其包括处理器,其中所述帧分析器经配置以针对所述多个输出帧中的每ー者基于所述帧识别符而使所述输出帧与帧模板相关联,其中所述帧模板定义所述至少ー个对象在所述输出帧内的预期位置,以检验处于所述输出帧内及所述至少一个对象的所述预期位置之外的多个像素符合所述一致背景,并提供指示处于所述输出帧内及所述至少ー个对象的所述预期位置之外的像素何时不符合所述一致背景的输出。
12.根据权利要求11所述的系统,其进ー步包括经配置以将所述预定输入提供到所述受测试视频装置的视频假脱机程序,其中所述预定输入为表示由所述帧模板表示的多个视频帧的视频分布。
13.根据权利要求11所述的系统,其中所述至少一个对象在不同帧间不改变,但在每一帧中的不同位置处呈现。
14.根据权利要求11所述的系统,其中所述帧模板中的每ー者包括各自具有像素值的多个像素,且其中每ー模板的所有所述像素值的总数与其它模板的总数实质上相同。
15.根据权利要求11所述的系统,其中所述帧模板中的每ー者包括各自具有像素值的多个像素,其中所述像素值中的一者与所述一致背景相关联,且其中具有与所述一致背景相关联的所述像素值的像素的数目在所述帧模板中的每ー者中实质上相同。
16.ー种可由视频分析器装置执行以确定由受测试视频硬件产生的视频帧中所含有的解码错误的方法,所述方法包括: 在所述视频分析器装置处接收由所述受测试视频硬件产生的所述输出视频帧,其中每ー输出视频帧包括在背景上呈现的至少ー个对象; 针对所述所接收输出帧中的每ー者,基于所述输出帧的视觉图像内所含有的帧识别符而确定多个模板中的与所述输出帧相关联的ー者,其中所述帧模板定义所述至少一个对象在所述输出帧内的预期位置; 针对所述所接收输出帧中的每ー者,将所述所接收输出帧与和所述输出帧相关联的所述帧模板进行比较以检验所述输出帧中处于所述至少一个对象之外的像素与所述背景一致;及 在所述比较识别处于所述至 少ー个对象之外的不与所述背景一致的像素的情况下识别解码错误。
17.根据权利要求16所述的方法,其进ー步包括将视频分布应用于所述受测试视频硬件,其中所述视频分布是基于所述模板。
18.根据权利要求16所述的方法,其中所述帧模板中的每ー者包括各自具有像素值的多个像素,且其中每ー模板的所有所述像素值的总数与其它模板的总数实质上相同。
19.根据权利要求16所述的方法,其中所述帧模板中的每ー者包括各自具有像素值的多个像素,其中所述像素值中的一者与所述帧模板的所述背景中的所有所述像素相关联。
20.根据权利要求19所述的方法,其中具有与所述一致背景相关联的所述像素值的像素的数目在所述帧模板中的每ー者中实质上相同。
【文档编号】H04N17/00GK103583042SQ201280027367
【公开日】2014年2月12日 申请日期:2012年6月1日 优先权日:2011年6月3日
【发明者】威利·E·豪尔, 米卡·摩尔, 迈克尔·卡尔顿·哈登 申请人:艾科星科技公司