适应性感兴趣区域的制作方法

文档序号:7792277阅读:153来源:国知局
适应性感兴趣区域的制作方法
【专利摘要】本公开内容涉及适应性地确定和改善视频内容中的感兴趣区域的质量。区域检查部件检查图像的区域。检测部件确定区域中所包含的色度值。比较部件比较色度值与预定色度值的集合,并且基于比较确定帧中的感兴趣区域的集合。编码器以与图像的其余部分相比较高的或较好的质量对图像中的感兴趣区域编码。
【专利说明】适应性感兴趣区域
[0001]相关申请的交叉引用
[0002]本公开内容要求于2012年2月10日提交的题为“ADAPTIVE REG1N OF INTEREST”的U.S.专利申请N0.13/370, 530的权益。其内容通过引用合并到本文中。

【技术领域】
[0003]本公开内容总体上涉及一种促进适应性地确定和改善视频内容中的感兴趣区域的质量的系统和方法。

【背景技术】
[0004]视频会议使得位于两个或多个位置处的人们能够经由视频和音频传输同时交互。过去,视频会议很大程度上限于商业用途。然而,伴随着带宽成本的降低而出现的因特网和无线通信网络的发展使得视频会议比以往任何时候都更加可用。存在大量服务,这些服务使用因特网或无线通信网络向用户提供低带宽视频会议。此外,包括相机的移动通信设备如智能电话和平板计算机的快速发展使得用户实际上能够在世界上随时随地地进行视频会议。
[0005]通常,视频会议是一个需要发送和接收大量视频和音频信息的带宽密集型过程。低带宽视频会议部分通过对视频传输应用高压缩来缓解带宽需求。然而,严重压缩视频降低了所观察视频的整体质量。质量的降低通常很容易关于人面部是明显的。在低带宽视频会议中,人可能由于所采用的高压缩率而被呈现得不可识别。
[0006]高带宽或高清视频会议可以提供高质量的观察视频。然而,这些技术可能需要不是很容易可用或可负担的特殊的通信架构。此外,普通的用于面部检测和/或增强的技术在计算上可能是昂贵的,并且可能不能很好地适用于视频会议。


【发明内容】

[0007]以下内容呈现本说明书的简化的
【发明内容】
,以提供对本说明书的一些方面的基本理解。这个
【发明内容】
不是本说明书的广泛的概述。并非意在标识出本说明书的关键的或者至关重要的元素,或者界定本说明书的具体的实施例的任何范围或者权利要求的任何范围。其唯一目的是以简化的形式呈现本说明书的一些概念,作为稍后呈现的更详细的描述的前序。
[0008]根据主题创新的一方面,公开了一种用于适应性地确定和改善视频内容中的感兴趣区域的质量的系统和方法。确定图像的相应区域中所包含的色度值。将色度值和与人皮肤影调对应的色度值的集合进行比较,将具有与人皮肤影调对应的色度值的图像的区域包括在感兴趣区域的集合中。编码器以与图像的其余部分相比较高的或较好的质量对图像中所包括的感兴趣区域进行编码。
[0009]在一种实施例中,区域检查部件检验帧的区域,检测部件确定帧的区域中所包含的色度值。比较部件将色度值与预定色度值的集合相比较,并且基于比较确定帧中的感兴趣区域的集合。
[0010]以下描述和附图提出了本说明书的某些说明性方面。虽然这些方面指示可以使用本说明书的原理的各种方式,然而,其紧指示其中的一些方式。在结合附图考虑时,根据本说明书的以下详细描述,本说明书的其他优点和新颖特性将变得清楚。

【专利附图】

【附图说明】
[0011]图1图示根据本公开内容中所描述的各方面的用于确定图像中的感兴趣区域的示例系统;
[0012]图2图示根据本公开内容中所描述的各方面的用于确定图像中的感兴趣区域的示例系统;
[0013]图3图示根据本公开内容中所描述的各方面的用于确定图像中的感兴趣区域的示例系统;
[0014]图4图示根据本公开内容中所描述的各方面的用于确定图像中的感兴趣区域的示例系统;
[0015]图5图示根据本公开内容中所描述的各方面的提供皮肤影调图的非限制性示例的系统;
[0016]图6至图9是根据本公开内容中所描述的各方面的用于确定图像中的感兴趣区域的相应方法的示例流程图;
[0017]图10是代表其中可以实现各实施例的示例性非限制性联网环境的框图;以及
[0018]图11是代表其中可以实现各实施例的示例性非限制性计算系统或操作环境的框图。
具体实施例
[0019]MM
[0020]现在参考附图描述创新,附图中,贯穿附图,相似的附图标记用于指代相似的元素。在以下描述中,出于解释的目的,提出了大量具体细节,以提供对此创新的透彻理解。然而,可以证明,可以在没有这些具体细节的情况下来实践创新。在其他实例中,以框图形式示出了公知的结构和设备,以方便描述创新。
[0021]如“【背景技术】”部分所指出的,传统的用于面部检测和/或增强的技术可能在计算上是昂贵的并且不适用于视频会议。创新的一个非限制性实现提供用于视频会议的高效的且精确的面部检测和/或增强。这个实现适应性地确定图像的与皮肤影调对应的区域,并且将关于这些区域的数据提供给编码器。编码器以与图像的其余部分相比较高的或较好的质量对这些区域编码。
[0022]更具体地,根据一种实施例,区域检查部件检查帧的区域,并且检测部件确定帧的区域中所包含的色度值。比较部件比较色度值与预定色度值的集合,并且基于比较确定帧中的感兴趣区域的集合。
[0023]帧中的感兴趣区域的适应性确定的非限制性示例
[0024]现在转向图1,图示为根据本公开内容中所描述的各方面的用于适应性地确定图像中的感兴趣区域的示例系统100。通常,系统100可以包括存储计算机可执行部件的存储器以及执行存储器中所存储的计算机可执行部件的处理器,其示例可以参考图11找到。系统100包括适应性感兴趣区域部件102 (ROI部件102)。ROI部件102获得、获取或接收帧的集合(例如,视频)中所包括的帧(例如,图像数据、照相数据等)。例如,在一种实现方式中,ROI部件102在第一时间接收视频104 (或视频会议传输)中所包括的第一帧104A,而在第一时间之后以预定时间间隔(例如,预定帧速率)接收视频104中的其他帧。例如,ROI部件102可以在第一时间之后的第二时间接收第二帧104B,并且在第二时间之后的第三时间接收第三帧104C。ROI部件102确定视频104中所包括的相应帧中的感兴趣区域(ROI),并且将关于感兴趣区域的数据(例如,位置、身份等)提供给编码器106。应当理解,创新的方面不受视频104中所包括的帧的数量的限制。例如,视频104可以包括X个帧,其中,X为整数。
[0025]ROI部件102包括检测部件108和过滤器部件110。检测部件108检查、检验或者分析帧的区域(例如,宏块等),并且确定帧中所包括的满足ROI准则的集合114 (潜在的感兴趣区域或潜在的R0I)的区域的集合。ROI准则的集合114可以包括但不限于包括、存在或出现与待检测对象关联的预定色度值。例如,在一种实现方式中,检测部件108基于满足ROI准则的集合114对帧的区域绘图。
[0026]过滤器部件110基于过滤准则的集合滤除潜在的ROI的集合中所包括的区域,并且基于经过滤的潜在的ROI的集合生成ROI数据的集合112。过滤准则的集合可以包括但不限于具有满足预定阈值的变化(variance)。例如,在一种实现方式中,过滤器部件110滤除潜在的ROI的集合中所包括的具有在预定阈值以下的变化的区域。ROI数据112指示帧中所包括的ROI和/或非感兴趣区域(RONI)。例如,在一种实现方式中,过滤器部件110生成图像地图(例如,ROI数据112或使用ROI数据112),图像地图指示帧的相应区域是否包括ROI和/或RONI。应当理解,虽然ROI准则114被图示为保持在数据存储装置116中,然而并不限于这样的实现。例如,可以将ROI准则114保持在ROI部件102中,或者在ROI部件102可以在此处例如经由网络连接来访问ROI准则114的不同的位置处。
[0027]编码器106至少部分地基于与视频104中所包括的至少一个帧关联的ROI数据112来转换、改变或编码视频104中所包括的帧。例如,在一种实现方式中,编码器106以与帧中的RONI相比较高的、较好的或较高级的质量对帧中的ROI编码。应当理解,虽然编码器106被图示为不同于ROI部件102,然而并不限于这样的实现。例如,ROI部件102可以包括在编码器106中,与编码器106关联,或者在编码器106之上执行。
[0028]图2图示根据本公开内容中所描述的各方面的用于适应性地确定图像中的感兴趣区域的示例系统200。系统200包括适应性感兴趣区域部件102 (R0I部件102)。如所讨论的,ROI部件102接收帧(例如,视频104中所包括的帧104A),并且将关于帧中的感兴趣区域(ROI)的数据提供给编码器106。图2中的ROI部件102包括检测部件108和过滤器部件110。如所讨论的,检测部件108分析帧的区域(例如,宏块等),并且确定满足ROI准则的集合114的区域的集合。图2中的检测部件108包括区域检查部件202、色度检测部件204和比较部件206。
[0029]区域检查部件202检查、检验或者分析帧的相应区域。例如,在一种实现方式中,帧的区域被划分成相应宏块,并且区域检查部件202分析与帧关联的相应宏块。色度检测部件204标识、检测或者确定相应区域(例如宏块)的色度值/相应区域(例如宏块)中所包括的色度值。比较部件206标识、检测或者确定具有满足ROI准则的集合114的色度值的区域,并且将所确定的区域包括在潜在的ROI的集合中。例如,在一种实现方式中,ROI准则的集合114包括但不限于匹配预定色度值的集合中所包括的至少一个色度值。例如,比较部件206可以确定具有匹配预定色度值的集合中的一个或多个色度值的色度值的区域,并且将具有至少一个匹配色度值的区域包括在潜在的ROI的集合中。
[0030]过滤器部件110基于过滤准则的集合滤除潜在的ROI的集合中所包括的区域,并且基于经过滤的潜在的ROI的集合生成用于帧的ROI数据112。例如,在一种实现方式中,过滤器部件110滤除具有在预定阈值以下的变化的区域,并且使用经过滤的潜在的ROI的集合中的其余区域生成ROI数据112。如所讨论的,编码器106至少部分地基于与视频104中的至少一个帧关联的ROI数据112编码视频中的帧。
[0031]参考图3,图示为根据本公开内容中所描述的各方面的用于适应性地确定图像中的感兴趣区域的示例系统300。系统300包括适应性感兴趣区域部件102 (R0I部件102)。如所讨论的,ROI部件102接收视频中所包括的帧,并且将关于帧中的感兴趣区域(ROI)的数据提供给编码器106。例如,在一个实施例中,ROI是帧的与人脸(例如用户的脸)对应的区域。图3中的ROI部件102包括检测部件108、过滤器部件110和更新部件302。
[0032]图3中的检测部件108包括区域检查部件202、色度检测部件204和比较部件206。如所讨论的,区域检查部件202分析帧的相应区域。例如,在一种实现方式中,帧的区域对应于相应宏块,并且区域检查部件202检查帧中的相应宏块。色度检测部件204确定相应宏块的色度值/相应宏块中所包括的色度值。比较部件206确定具有满足ROI准则的集合114的色度值的宏块,并且将所确定的宏块包括在潜在的ROI的集合中。例如,图3中的ROI准则的集合114可以包括但不限于具有匹配皮肤影调图304中所包括的一个或多个色度值的色度值。例如,在一种实现方式中,皮肤影调图304(参考图5更详细地讨论)为将色度值对应于人皮肤影调进行映射的表(例如,绘图、表格等)。比较部件206确定具有匹配皮肤影调图304中的一个或多个色度值的色度值的宏块,并且将具有匹配的色度值的宏块包括在潜在的ROI的集合中。
[0033]如所讨论的,过滤器部件110基于过滤准则的集合滤除潜在的ROI的集合中的区域(例如,宏块),并且基于经过滤的潜在的ROI的集合生成用于帧的ROI数据112。图3的过滤器部件110包括低变化过滤器部件306和中值过滤器部件308。低变化过滤器部件306 (LV过滤器部件306)滤除潜在的ROI的集合中的具有不满足预定变化阈值(例如,低变化)的变化的区域(例如,宏块),和/或滤除具有在中值绝对偏差(MAD值)内的值的区域。包含与面部关联的图像数据的宏块通常包含面部的的细节,该细节提供宏块中的变化。滤除不满足某个变化(例如,低变化或MAD值)的宏块可以去除不太可能与面部关联的宏块。
[0034]中值过滤器部件308对潜在的ROI的集合应用中值过滤器,中值过滤器滤除具有一定量的不满足预定中值阈值的相关相邻宏块的宏块。例如,在一种实现方式中,中值过滤器部件308滤除具有一定量的小于预定中值阈值的相关相邻宏块的宏块。中值过滤器部件308保持具有最相关邻居的帧的区(例如,宏块),并且可以去除由具有有限可使用信息的小的区产生的误差。过滤器部件110包括感兴趣区域的集合(ROI)中的经过滤的潜在的ROI的集合中的其余宏块。例如,在一种实现方式中,过滤器部件110生成皮肤图(例如,ROI数据112或者使用ROI数据112),皮肤图指示帧中所包括的相应宏块是否被包括在ROI的集合中。
[0035]更新部件302基于更新准则的集合使用当前ROI数据112来更新、修正或取代在先生成的ROI数据112。更新准则可以包括但不限于预定差异阈值。例如,在一种实现方式中,ROI数据112针对视频104中所包括的第一帧104A被生成,并且ROI数据112被提供给编码器106。更新部件302比较针对第二帧104B生成的ROI数据112与针对第一帧104A生成的ROI数据112,并且如果用于第一帧104A的ROI数据112与用于第二帧104B的ROI数据112之间的差异不满足预定差异阈值,则更新部件302不将用于第二帧104B的ROI数据112提供给编码器106。更新和/或信令传输ROI数据112具有计算花费,并且如果ROI在差异阈值内(例如,在第一帧104A中与在第二帧104B中基本相同),则更新部件302不将经更新的ROI数据112提供给编码器106。编码器106至少部分地基于最近的ROI数据112对视频104中的帧编码。例如,如果更新部件不提供针对第二帧104B生成的ROI数据112,则编码器106至少部分地基于最近的ROI数据112例如针对第一帧104A生成的ROI数据112对第二帧104B编码。
[0036]图4图示根据本公开内容中所描述的各方面的用于适应性地确定图像中的感兴趣区域的示例系统400。系统400包括适应性感兴趣区域(ROI)部件102 (R0I部件102)。ROI部件102接收视频104中所包括的帧。ROI部件102确定帧中的感兴趣区域(ROI)。例如,在一种实现方式中,ROI为帧的与人面部的部分对应的区域。图4的ROI部件包括检测部件108、过滤器部件110、运动部件402和更新部件302。
[0037]如所讨论的,检测部件108确定帧中的潜在的ROI。图4的检测部件108包括区域检查部件202、色度检测部件204和比较部件206。区检查部件202分析帧的相应区。例如,在一种实现方式中,帧的区域与相应宏块对应,并且区域检查部件202检查帧中所包括的相应宏块。色度检测部件204确定相应宏块的色度值/相应宏块中所包括的色度值。比较部件206确定具有满足ROI准则的集合114的色度值的宏块,并且将所确定的区域包括在潜在的ROI的集合中。例如,在图4中,ROI准则的集合114例如可以包括但不限于具有在大量色度值的范围内的色度值,这些大量色度值被定义为皮肤影调图304中的皮肤影调(参考图5更详细地讨论)。例如,在一种实现方式中,比较部件206将具有与皮肤影调图304中的皮肤影调关联的色度值/被定义为皮肤影调图304中的皮肤影调的色度值的宏块包括在潜在的ROI的集合中。在视频会议期间,用户通常将相机聚焦在用户的面部上,并且包含被定义为皮肤影调的色度值的宏块很可能包括与用户的面部关联的数据。
[0038]过滤器部件110过滤由色度检测部件204生成的潜在的ROI的集合,并且基于经过滤的潜在的ROI的集合生成皮肤图。图4的过滤器部件110包括低变化过滤器部件306和中值过滤器部件308。低变化过滤器部件306 (LV过滤器部件306)滤除具有不满足预定变化阈值的变化的宏块和/或滤除具有在中值绝对偏差(MAD值)的区域内的值的宏块。如所讨论的,与人面部关联的宏块通常包含人面部的细节,这些细节提供变化,并且滤除具有低变化的宏块可以去除不太可能包含面部的细节的宏块。中值过滤器部件308应用中值过滤,中值过滤滤除具有一定数量的不满足预定中值阈值的相关相邻宏块的宏块。例如,在一种实现方式中,中值过滤器部件308过程具有一定数量的小于预定中值阈值的相关相邻宏块的宏块。如所讨论的,中值过滤器部件308保持帧的具有最相关邻居的区(例如,宏块),并且也可以帮助降低由具有有限可使用信息的小的区所产生的潜在的误差。过滤器部件110对经过滤的潜在的ROI的集合中所包括的(或其余的)宏块绘图,以生成皮肤图。皮肤图指示帧中所包括的很可能包含与面部相关联的数据的宏块(例如,感兴趣区域)。
[0039]运动部件402分析与帧中所包括的宏块关联的运动矢量。运动部件402包括绘图部件404和评分部件406。绘图部件404基于用于帧中所包括的相应宏块的已分析运动矢量生成运动图。例如,在一种实现方式中,当用非零运动矢量对宏块编码时,绘图部件404递增、增加或者添加至与运动图中的宏块对应的值。运动图聚合来自视频104中的多个帧(例如,104A至104C)的运动信息,并且指示视频104的具有高的运动发生率的区。
[0040]评分部件406根据皮肤图和运动图对帧中的宏块评分,并且使用得分生成ROI图(或ROI数据112)。例如,在一种实现方式中,评分部件406基于被包括在皮肤图中以及与运动图中的宏块关联的运动值对宏块评分。比如,如果皮肤图中包括宏块并且与运动图中的宏块关联的运动值超出预定运动阈值,则宏块在ROI图中可以被评分为“I”(例如,真等)。此外,如果宏块不被包括在皮肤图中和/或与运动图中的宏块关联的运动值没有超过预定运动阈值,则宏块在ROI图中可以被评分为“O”(例如,假等)。作为附加或备选示例,在一种实现方式中,评分部件406基于加权因子的集合对被包括在皮肤图中和/或运动图中的运动值的重要性进行调整、修改或加权。加权因子可以包括但不限于皮肤图很精确的置信度(例如,可能性等)和/或帧中的运动与面部关联的置信度(例如,可能性等)。比如,在视频会议期间,所采用的相机可能运动一定的量,这个一定的量超过预定相机运动阈值,导致帧中的运动与面部关联的置信度很低。在生成ROI图时,与应用于运动图中的宏块的运动值的重要性相比,评分部件406可以将较大的重要性(例如,权重)应用于皮肤图中包括的宏块。
[0041]更新部件302基于更新准则的集合使用与第二帧关联的ROI图更新、修正或取代与第一帧关联的ROI图。更新准则可以包括但不限于预定差异阈值。例如,在一种实现方式中,ROI图被生成用于视频104中所包括的第一帧104A,并且被提供给编码器106。更新部件302比较被生成用于第二帧104B的ROI图与该ROI图,并且如果被生成用于第二帧104B的ROI图与该ROI图之间的差异不超过预定差异阈值,则更新部件302不将被生成用于第二帧104B的ROI图传达至编码器106。
[0042]编码器106至少部分地基于最近的ROI图对视频104中的帧编码。例如,最近的ROI图可以与帧104A关联,并且编码器106可以至少部分地基于最近的ROI图对帧104C编码。比如,与被评分为不与ROI图中的人面部对应的宏块(例如,“O”)的质量相比,编码器106可以用较高的、较好的或较高级的质量对被评分为与ROI图中的人面部对应的宏块(例如,“I”)编码。
[0043]图5图示根据本公开内容中所描述的各方面的提供皮肤影调图502的非限制性示例的系统500。皮肤影调图502为与人皮肤对应的色度值的集合504的绘图。例如,在一种实现方式中,色度值的集合504根据训练数据的集合来确定。训练数据的集合包括但不限于人的图像集合。在一种实现方式中,皮肤影调图502的X轴代表蓝色色差(例如,Cb分量),皮肤影调图502的Y轴代表红色色差(例如,Cr分量)。区域506代表被定义为皮肤影调的色度值的区域。例如,区域506可以包括与人皮肤影调最普遍相关的色度值504,可以不包括可能产生误差的异常色度值。
[0044]如所讨论的,在一种实现方式中,色度检测部件204可以比较宏块中所包括的色度值与皮肤影调图(例如,502),并且确定宏块是否包括与色度值中的至少一个色度值(例如,504)匹配的一个或多个色度值和/或宏块是否包括在色度图中的与人皮肤影调对应的区域(例如,506)内的一个或多个色度值。在视频会议期间,用户通常将相机聚焦在面部上,并且包含于皮肤影调关联的色度值的宏块很可能包括用户的面部。色度检测部件204可以将具有与色度值504中的至少一个色度值匹配的和/或在区域506内的色度值的宏块标记为潜在的感兴趣区域(ROI)。应当理解,皮肤影调图502仅仅是皮肤影调图的一个示例,并且不限于这样的实现。可以基于不同的质量或不同类型的训练数据生成附加或替换皮肤影调图。
[0045]用于适应性确定图中的感兴趣区域的方法的非限制性示例
[0046]图6至图9图示根据所公开的主题的各种方法。虽然出于简化说明的目的将方法示出和描述为一系列动作,然而,所公开的主题不受动作的顺序的限制,与本文中所示出和描述的相比,一些动作可以按照不同的顺序出现和/或与其他动作同时出现。例如,本领域技术人员可以明白并且理解,备选地,方法可以表示为一系列相关状态或事件,如在状态图中。此外,实现根据所公开的主题的方法并非需要所有图示动作。另外,应当理解,本公开内容中所公开的方法能够存储在产品上,以方便将这样的方法传输和传送至计算机或其他计算设备。
[0047]现在参考图6,图示为根据本公开内容中所描述的各方面的用于感兴趣区域检测的示例方法600。在附图标记602处,(例如,使用检测部件108)分析图像的相应区域。例如,在一种实现方式中,图像为图像集合中的第一图像,如视频或视频会议传输,图像的区域与相应宏块关联(例如,被分成或编码为相应宏块),以及分析宏块。
[0048]在附图标记604处,(例如,使用检测部件108)基于感兴趣区域(ROI)准则的集合来确定图像中的感兴趣区域。例如,在一种实现方式中,ROI准则的集合可以包括与和待检测对象对应的一个或多个色度值匹配。将图像的包含至少一个匹配色度值的区域确定为感兴趣区域(例如,使用比较部件206)。
[0049]在附图标记606处,(例如,使用ORI部件102)将关于图像中的确定的感兴趣区域的数据提供给编码器。数据可以包括但不限于图像中的所确定的感兴趣区域的标识符(例如,宏块标识符)、位置和/或坐标。例如,在一种实现方式中,编码器至少部分地基于关于所确定的感兴趣区域的数据对图像进行转换或编码(例如,使用编码器106)。例如,与图像的其余部分相比,编码器可以用较高的或较好的质量对图像中的所确定的感兴趣区域进行编码。
[0050]图7图示根据本公开内容中所描述的各方面的用于检测图像中的感兴趣区域的示例方法700。在附图标记702处,(例如,使用ROI部件102)接收图像集合中所包括的图像。例如,图像可以是视频或视频会议传输中所包括的帧。在附图标记704处,(例如,使用区域检查部件202)分析图像的相应区域。例如,在一种实现方式中,使图像的区域与相应宏块关联(例如,划分成或编码为相应宏块),并且分析宏块。
[0051]在附图标记706处,(例如,使用检测部件108)基于感兴趣区域准则的集合来确定图像中的潜在的感兴趣区域的集合。例如,在一种实现方式中,感兴趣区域准则的集合可以包括与和待检测对象(例如,面部)对应的一个或多个色度值匹配。(例如,使用比较部件206)将图像的包含至少一个匹配色度值的区域包括在潜在的感兴趣区域的集合中。
[0052]在附图标记708处,(例如,使用过滤器部件110)基于过滤准则的集合滤除潜在的感兴趣区域的集合中所包括的区域的子集。例如,在一种实现方式中,过滤准则的集合包括但不限于具有满足预定变化阈值的变化和/或具有一定量的满足中值阈值的相关相邻区域。比如,可以(例如,使用LV过滤器部件306)滤除具有在预定阈值以下的变化的区域,和/或可以(例如,使用中值过滤器部件308)滤除具有一定量的在预定阈值以下的相关相邻块的区域。
[0053]在附图标记710处,(例如,使用过滤器部件110)基于经过滤的潜在的感兴趣区域的集合来生成感兴趣区域(ROI)数据的集合。数据可以包括但不限于图像中的所确定的感兴趣区域的标识符(例如,宏块标识符)、位置和/或坐标。在附图标记712处,(例如,使用ROI部件102)将ROI数据的集合提供给编码器。例如,在一种实现方式中,编码器至少部分地基于ROI数据(例如,使用编码器106)对图像进行转换或编码。比如,与图像的其余部分相比,编码器可以用较高的或较好的质量对图像中的所确定的感兴趣区域编码。
[0054]图8图示根据本公开内容中所描述的各方面的用于检测图像用的感兴趣区域的示例方法800。在附图标记802处,(例如,使用ROI部件102)接收图像集合中所包括的图像。例如,在一种实现方式中,图像为视频或视频会议传输中所包括的帧。在附图标记804处,(例如,使用区域检查部件202)分析图像中所包括的宏块,以及(例如,使用色度检测部件204)确定相应宏块中所包括的色度值。在附图标记806处,(例如,使用比较部件206)将相应宏块中所包括的色度值与皮肤影调图比较以确定图像中的潜在的感兴趣区域(ROI)。例如,在一种实现方式中,将具有在被定义为皮肤影调的皮肤影调图的区域内的色度值的宏块包括在潜在的ROI的集合中。在视频会议期间,用户通常将相机聚焦在一个或多个面部上,例如,并且包含与皮肤影调关联的色度值的宏块很可能包括用户的面部。
[0055]在附图标记808处,(例如,使用过滤器部件110)基于过滤准则的集合滤除潜在的ROI的集合中所包括的宏块的集合。例如,在一种实现方式中,过滤准则的集合包括但不限于具有满足预定变化阈值的变化和/或具有一定量的满足中值阈值的相关相邻区域。比如,可以(例如,使用LV过滤器部件306)滤除具有在预定变化阈值以下的变化的潜在的ROI的集合中的宏块,和/或可以(例如,使用中值过滤器部件308)滤除具有一定量的在预定中值阈值以下的相关相邻块的潜在的ROI的集合中的宏块。如所讨论的,滤除图像的具有少量相关相邻宏块的小的区可以帮助降低由图像的包含有限的有用信息的小的区产生的误差。在附图标记810处,(例如,使用过滤器部件110)基于经过滤的潜在的ROI的集合生成皮肤图。例如,在一种实现方式中,对经过滤的潜在的ROI的集合中所包括的(或其余的)宏块绘图以生成皮肤图。皮肤图指示帧中所包括的很可能包含与面部关联的数据的宏块(例如,感兴趣区域)。
[0056]在附图标记812处,(例如,使用绘图部件404)基于与图像中所包括的宏块关联的运行矢量来更新运动图。例如,在一种实现方式中,在用非零运动矢量对宏块编码时,增加(例如,递增等)与运动图中的宏块对应的值。运动图聚合来自图像集合中的多个图像的运动信息,并且指示图像集合中所包括的具有最大运动发生率的区。如所讨论的,在视频会议期间,用户通常将相机聚焦在一个或多个面部上,并且具有最大运动发生率的区很可能与用户面部的部分关联。
[0057]在附图标记814处,(例如,使用评分部件406)根据皮肤图和运动图生成感兴趣区域(ROI)图。例如,在一种实现方式中,基于被包括在皮肤图中和与运动图中的宏块关联的运动值来对宏块评分。比如,如果宏块包括在皮肤图中并且与运动图中的宏块关联的运动值超出预定运动阈值,则宏块在ROI图中可以被评分为“I”(例如,真等)。附加地或者备选地,如果宏块不包括在皮肤图中和/或与运动图中的宏块关联的运动值没有超过预定运动阈值,则宏块在ROI图中可以被评分为“O”(例如,假等)。
[0058]作为附加的或备选的示例,在一种实现方式中,(例如,使用评分部件406)基于加权因子的集合对被包括在皮肤图中和/或运动图中的运动值的重要性进行加权。加权因子可以包括但不限于皮肤图为精确的置信度(例如,可能性等)和/或帧中的运动与面部关联的置信度(例如,可能性等)。比如,在视频会议期间,所采用的相机可以运动一定的量,该一定的量超过预定相机运动阈值,导致帧中的运动与面部关联的置信度低。在生成ROI图时,与应用于运动图中的宏块的运动值的重要性相比,可以将较大的重要性(例如,权重)应用于被包括在皮肤图中。
[0059]图9图示根据本公开内容中所描述的各方面的用于检测图像中的感兴趣区域的示例方法900。在附图标记902处,判断图像(例如,在附图标记802处所接收的图像)是否为图像集合中的第一图像。如果确定图像为图像集合中的第一图像(附图标记902处为是),则在附图标记904处,将ROI数据提供给编码器(例如,使用更新部件302),并且方法继续进行至附图标记908。
[0060]返回附图标记902,如果确定图像不是图像集合中的第一图像(附图标记902处为否),则在附图标记906处(例如,使用更新部件302)判断ROI图是否满足更新准则的集合。更新准则可以包括但不限于差异阈值。例如,在一种实现方式中,针对视频中所包括的第一图像生成ROI图,并且将其提供给编码器。将针对第二图像生成的另一 ROI图与用于第一图像的ROI图比较,并且如果针对第二图像生成的ROI图与用于第一图像的ROI图之间的差异不满足差异阈值,则不将用于第二图像的ROI图提供给编码器。更新和/或传输ROI图可能具有计算开销,并且如果ROI在第一图像中与在第二图像中基本相同,则不将作为后者的ROI图提供给编码器。如果确定ROI图不满足更新准则(在附图标记906处为否),则不(例如,使用更新部件302)将ROI图提供给编码器,并且方法继续进行至附图标记908。如果确定ROI图满足更新准则(在附图标记906处为是),则在附图标记904处(例如,使用更新部件302)将作为后者的ROI图提供给编码器,并且方法继续进行至附图标记 908。
[0061]在附图标记908处,确定图像是否为图像集合中的最后图像。如果确定图像为图像集合中的最后图像(在附图标记908处为是),则方法结束。如果确定图像不是图像集合中的最后图像(在附图标记908处为否),则处理另一图像(例如,在附图标记802处开始)。
[0062]示例性联网分布式环境
[0063]本领域普通技术人员可以理解,可以结合任何计算机或其他客户端或服务器设备来实现本文中所描述的各种实施例,其可以被部署为计算机网络的部分或在分布式计算环境中,并且可以连接至可以在其中找到介质的任何类型的数据存储装置。在这个意义上,可以在具有任何数量的存储器或存储单元以及存在于任何数量的存储单元之间的任何数量的应用和处理的任何计算机系统或环境中实现本文中所描述的各种实施例。这包括但不限于具有部署在网络环境或分布式计算环境中的服务器计算机和客户端计算机的环境,其具有远程存储装置或本地存储装置。
[0064]分布式计算通过在计算设备和系统之间的通信交换提供对计算机资源和服务的共享。这些资源和服务包括信息的交换、用于对象如文件的高速缓存存储装置和磁盘存储装置。这些资源和服务还包括在多个处理单元之间共享处理能力以平衡负载、资源的扩展、处理的专门化等。分布式计算利用网络连接,使得客户能够使其集合能力平衡以有益于整个企业。在这个意义上,各种设备可以具有可以参与本公开内容的各实施例的应用、对象或资源。
[0065]图10提供示例性联网或分布式计算环境的示意图。分布式计算环境包括计算对象1010、1012等以及计算对象或设备1020、1022、1024、1026、1028等,其可以包括程序、方法、数据存储装置、可编程逻辑等,如用应用1030、1032、1034、1036、1038所代表的。可以理解,计算对象1010、1012等以及计算对象或设备1020、1022、1024、1026、1028等可以包括不同的设备,如个人数据助理(PDA)、音频/视频设备、移动电话、MP3播放器、个人计算机、平板计算机、笔记本电脑等。
[0066]每个计算对象1010、1012等以及计算对象或设备1020、1022、1024、1026、1028等可以借助于通信网络1040直接或间接与一个或多个其他计算对象1010、1012等以及计算对象或设备1020、1022、1024、1026、1028等通信。虽然在图10中图示为单个元件,然而网络1040可以包括向图10的系统提供服务的其他计算对象和计算设备,和/或可以代表多个互连网络,其未示出。每个计算对象1010、1012等或者计算对象或设备1020、1022、1024、1026、1028等还可以包含应用,如应用1030、1032、1034、1036、1038,其可以使用API或适合于与本公开内容的各实施例通信或实现本公开内容的各实施例的其他对象、软件、固件和/或硬件。
[0067]存在各种支持分布式计算环境的系统、部件和网络配置。例如,计算系统可以用有线或无线系统、用局域网或广域网连接在一起。当前,很多网络耦合至因特网,因特网用于广泛分布式计算的架构并且包括很多不同的网络,尽管很多网络架构都可以易于用于与各实施例中所描述的系统进行示例性通信。
[0068]因此,可以采用网络拓扑和网络架构的主机,如客户端/服务器、点对点或混合结构。“客户端”是使用与其相关的另一分类或分组的服务的多个分类或分组。客户端可以是需要由另一程序或处理提供的服务的处理,大致例如指令或任务的集合。客户端可以是或使用利用所需服务而不需要“知道”与其他程序或服务本身有关的任何工作细节的处理。
[0069]在客户端/服务器结构中,具体地,在联网系统中,客户端通常是访问由另一计算机例如服务器提供的共享网络资源的计算机。在图10的图示中,作为非限制性示例,计算对象或设备1020、1022、1024、1026、1028等可以被认为是客户端,计算对象1010、1012等可以被认为是服务器,其中,计算设备1010、1012等提供数据服务,如从客户端计算对象或设备1020、1022、1024、1026、1028等接收数据,存储数据,处理数据,将数据传输至客户端计算对象或设备1020、1022、1024、1026、1028等,虽然任何计算机都可以被认为是客户端、月艮务器、或这二者,这取决于环境。
[0070]服务器通常为通过远程或本地网络可访问的远程计算机系统,如因特网或无线网络架构。客户端处理在第一计算机系统中可以是有效的,服务器处理在第二计算机系统中可以是有效的,以通过通信介质彼此通信,从而提供分布式功能以及允许多个客户端利用服务器的信息收集能力。
[0071]在其中通信网络/总线1040为因特网的网络环境中,例如,计算对象1010、1012等可以是客户端计算对象或设备1020、1022、1024、1026、1028等经由大量已知协议中的任何协议如超文本传输协议(HTTP)与其通信的Web服务器。对象1010、1012等也可以用作客户端计算对象或设备1020、1022、1024、1026、1028等,这可以是分布式计算环境的特征。
[0072]示例性计算设备
[0073]如所提及的,有利地,本文中所描述的技术可以应用于任何适合于实现本文中所描述的各实施例的设备。打算结合各实施例使用所有类型的便携式和其他计算设备和计算对象,例如,在设备可能希望从数据存储装置读取事务或向数据存储装置中写入事务。因此,以下图11中所描述的通用远程计算机仅仅是计算设备的一个示例。
[0074]虽然不要求,但是实施例可以部分经由操作系统来实现,用于由用于设备或对象的服务的开发者来使用,和/或包括在操作以执行本文中所描述的各实施例的一个或多个功能方面的应用软件内。软件可以在由一个或多个计算机如客户端工作站、服务器或其他设备执行的计算机可执行指令如程序模块的普通上下文中来描述。本领域技术人员可以理解,计算机系统具有可以用于传输数据的各种配置和协议,因此不认为任何具体的配置或协议是限制。
[0075]图11因此图示本文中所描述的实施例的一个或多个方面可以在其中实现的合适的计算系统环境1100的示例,虽然以上清楚地给出,然而,计算系统环境1100仅仅是合适的计算环境的一个示例,并且并非意在建议对用途或功能的范围的任何限制。计算环境1100也不应当理解为具有与示例性操作环境1100中所图示的部件中的任何一个部件或组合有关的依赖或要求。
[0076]参考图11,用于实现一个或各实施例的示例性远程设备包括计算机1110形式的通用计算设备。计算机1110的部件可以包括但不限于处理单元1120、系统存储器1130和系统总线1122,系统总线1122将各种系统部件、包括系统存储器稱合至处理单兀1120。
[0077]计算机1110包括各种计算机可读介质,并且可以是可以由计算机1110来访问的任何可用介质。系统存储器1130可以包括易失性和/或非易失性存储器如只读存储器(ROM)和/或随机存取存储器(RAM)形式的计算机存储介质。举例而言而非限制,存储器1130还可以包括操作系统、应用程序、其他程序模块和程序数据。
[0078]用户可以通过输入设备1140向计算机1110中输入命令和信息。系统总线1122经由接口如输出接口 1150还连接有监视器或其他类型的显示设备。除了监视器,计算机还可以包括其他外围输出设备,如扬声器和打印机,其可以通过输出接口 1150进行连接。系统总线1122还连接有编码器1145。编码器1145使得能够对数字数据如数字视频进行压缩和/或解压缩。编码器1145接受实际上任何数字格式的视频数据,并且将视频数据转换成实际上任何数字格式,包括但不限于MPEG-1和2 (MPG)、QUICKTIME?(MOV)、REALMEDIA?、WINDOWS MEDIAtm(WMV)、H.264 (MP4)、DIVX? 和 Xvid(AVI)、FLASH VIDEOtm(FLV)、MatroskaMultimedia Container (MKV)、Theora (OGG)、3GP、视频对象(VOB)和 / 或 WebM?。
[0079]计算机1110可以使用与一个或多个其他远程计算机如远程计算机1170的逻辑连接在联网或分布式环境中操作。远程计算机1170可以是个人计算机、服务器、路由器、网络PC、对等设备或其他普通网络节点、或任何其他远程介质消耗或传输设备,并且可以包括以上关于计算机1110描述的元件中的任何或所有元件。图11中所描绘的逻辑连接包括网络1172,如局域网(LAN)或广域网(WAN),但是也可以包括其他网络/总线。这样的联网环境在家庭、办公室、企业范围的计算机网络、内联网和因特网中很常见。
[0080]如以上所提及的,虽然结合各种计算设备和网络架构描述了示例性实施例,然而潜在的概念可以应用于其中可期望以灵活方式公布或采用介质的任何网络系统和任何计算设备或系统。
[0081]词语“示例性”在本文中用于表示用作示例、实例或说明。为了避免疑惑,本文中所公开的这个主题不受这样的示例的限制。此外,不必将在本文中描述为“示例性”的任何方面或设计都理解为与其他方面或设计相比是优选的或有利的,也不表示排除本领域普通技术人员已知的等同的示例性结构或技术。另外,在用语“包括”、“具有”、“包含”和其他类似词语在详细描述或权利要求中使用的意义上,为了避免疑惑,这样的用于意在是包容性的,其方式与用语“包括”类似,其为开放式过渡性词语而不排除任何附加或其他元件。另外,贯穿本公开内容对“一种实现方式”或“实现方式”或者“一种实施例”或“实施例”的引用表示结合实现或实施例描述的具体的特征、结构或特性包括在至少一个实现或实施例中。因此,贯穿本说明书在各种场合短语“在一种实现方式中”或“在实现方式中”或者“在一种实施例中”或“在实施例中”的出现并非全部涉及相同的实现或实施例。
[0082]计算设备通常包括各种介质,其可以包括计算机可读存储介质。计算机可读存储介质可以是可以由计算机来访问的任何可用存储介质,通常具有非瞬态属性,并且可以包括易失性介质和非易失性介质二者、可移除和不可移除介质二者。举例而言而非限制,计算机可读存储介质可以结合用于存储信息如计算机可读指令、程序模块、结构化数据或非结构化数据的任何方法或技术来实现。计算机可读存储介质可以包括但不限于RAM、ROM、EEPR0M、闪存或其他存储技术、⑶-ROM、数字万用盘(DVD)或其他光盘存储装置、磁带盒、磁带、磁盘存储装置或其他磁性存储设备、或可以用于存储期望信息的其他有形和/或非瞬态介质。计算机可读存储介质可以由一个或多个本地或远程计算设备经由例如访问请求、询问或其他数据获取协议来访问,用于关于由该介质存储的信息的各种操作。
[0083]如所提及的,本文中所描述的各种技术可以结合硬件或软件或者在合适的情况下用这二者的组合来实现。如本文中所使用的,用语“部件”、“系统”等意在指代计算相关实体,该实体是硬件、硬件和软件的组合、软件或执行中的软件。例如,部件可以是但不限于在处理器上运行的处理、处理器、对象、可执行的、执行线程、程序和/或计算机。说明而言,在计算机上运行的应用和计算机二者都可以是部件。一个或多个部件可以存在于处理和/或执行的线程内,并且部件可以本地化在一个计算机上和/或分布在两个或多个计算机之间。此外,部件形式可以是特别设计的硬件;通过在其上执行使得硬件能够执行具体功能的软件(例如,编码和/或解码)而被专门化的通用硬件;存储在计算机可读介质上的硬件;或其组合。
[0084]已经关于若干部件之间的交互描述了上述系统。可以理解,这样的系统和部件可以包括这些部件或具体的子部件、具体的部件或子部件中的一些、和/或附加部件,以及根据上述内容的各种改变和组合。子部件也可以实现为通信上耦合至其他部件而非包括在父部件(分级的)中的部件。另外,应当注意,可以将一个或多个部件组合成提供聚合功能的单个部件,或者划分成若干单独的子部件,并且应当注意,可以提供任何一个或多个中间层、如管理层以在通信上耦合至这样的子部件以便提供集成功能。本文中所描述的任何部件也可以与本文中没有具体描述但本领域技术人员通常已知的一个或多个其他部件交互。
[0085]鉴于上述示例性系统,参考各个附图的流程图,可以更好地理解可以根据所描述的主题来实现的方法。虽然出于简化解释的目的将方法示出和描述为一系列块,然而要求保护的主题不受块的顺序的限制,因为根据本文中所描绘和描述的内容,一些块可以以不同的顺序出现和/或与其他块同时出现。在非顺序、或有分支的情况下,流程经由流程图来说明,可以理解,可以实现各种其他分支、流程路径和块顺序,其实现了某些或相似的结果。此外,实现下文中描述的方法并非需要所有图示块。
[0086]除了本文中所描述的各种实施例,应当理解,可以使用其他类似实施例,或者可以对所描述的实施例进行修改和添加,以执行相应实施例的相同的或等同的功能而不与其偏离。另外,多个处理芯片或多个设备可以共享本文中所描述的一个或多个功能的执行,类似地,可以跨越多个设备实现存储。因此,本发明不限于任何单个实施例,而是可以在根据所附权利要求的广度、精神和范围内来理解。
【权利要求】
1.一种系统,包括: 存储器,存储计算机可执行部件;以及 处理器,被配置成执行在所述存储器中存储的以下所述计算机可执行部件: 区域检查部件,检验帧的区域; 检测部件,确定在所述区域中包含的色度值;以及 比较部件,比较所述色度值与预定色度值的集合,并且基于所述比较来确定在所述帧中的感兴趣区域的集合。
2.根据权利要求1所述的系统,其中所述比较部件向编码器提供关于所述感兴趣区域的集合的数据集。
3.根据权利要求2所述的系统,其中所述编码器部分地基于关于所述感兴趣区域的集合的所述数据集对所述帧编码。
4.根据权利要求1所述的系统,还包括过滤器部件,所述过滤器部件基于过滤准则的集合来滤除在所述感兴趣区域的集合中包括的区域的子集。
5.根据权利要求4所述的系统,其中所述过滤准则的集合包括具有以下中的至少一个:满足预定方差阈值的方差或者一定量的满足预定中值阈值的相关邻近区域。
6.根据权利要求1所述的系统,还包括运动部件,所述运动部件使用与所述区域关联的运动矢量生成运动图。
7.根据权利要求6所述的系统,还包括评分部件,所述评分部件根据以下来对所述帧的所述区域评分:包括在所述感兴趣区域的集合中以及在所述运动图中的与所述区域关联的运动值。
8.根据权利要求7所述的系统,其中所述评分部件使用所述得分生成感兴趣区域图。
9.根据权利要求8所述的系统,还包括更新部件,所述更新部件确定所述感兴趣区域图与在先感兴趣区域图之间的差异,并且如果所述差异满足差异阈值则向编码器提供所述感兴趣区域图。
10.根据权利要求1所述的系统,其中所述预定色度值的集合包括与人皮肤影调关联的色度值。
11.一种方法,包括: 采用处理器执行在存储器中存储的计算机可执行部件以执行以下动作: 检查在帧集合中包括的第一帧; 确定与所述第一帧关联的宏块的色度值; 比较所述色度值与预定色度值的集合; 基于所述比较确定具有与在所述预定色度值的集合中的至少一个色度值匹配的至少一个色度值的宏块集合,并且将所述宏块集合包括在潜在的感兴趣区域的集合中; 至少部分地基于过滤准则的集合对所述潜在的感兴趣区域的集合过滤;以及 使用在经过滤的所述潜在的感兴趣区域的集合中包括的所述宏块生成皮肤图。
12.根据权利要求11所述的方法,还包括:以第一质量对在所述皮肤图中包括的所述宏块编码;以及以第二质量对所述第一帧的其余部分编码。
13.根据权利要求11所述的方法,还包括:使用与同所述第一帧关联的所述宏块关联的运动矢量来更新运动图。
14.根据权利要求13所述的方法,还包括:根据以下对与所述第一帧关联的宏块评分:所述皮肤图和所述运动图。
15.根据权利要求14所述的方法,还包括:将在所述第一帧中的具有满足预定阈值的得分的宏块包括在用于所述第一帧的感兴趣区域图中。
16.根据权利要求15所述的方法,还包括:确定用于在所述帧集合中的不同帧的感兴趣区域图与用于所述第一帧的所述感兴趣区域图之间的差异满足预定差异阈值,以及响应地用用于所述第一帧的所述感兴趣区域图代替用于所述不同帧的所述感兴趣区域图。
17.根据权利要求16所述的方法,还包括:基于最近的兴趣区域图对在所述帧集合中的帧编码。
18.—种方法,包括: 采用处理器执行在存储器中存储的计算机可执行部件以执行以下动作: 比较关于用于在视频中的第一帧的确定的感兴趣区域的第一数据集和关于用于在所述视频中的第二帧的确定的感兴趣区域的第二数据集; 基于所述比较确定所述第一数据集与所述第二数据集之间的差异满足预定差异阈值; 响应于所述第一数据集与所述第二数据集之间的所述差异满足所述预定差异阈值,用所述第二数据集代替所述第一数据集;以及 至少部分地基于关于确定的感兴趣区域的所述第二数据集对所述视频中的所述第二中贞编码。
19.根据权利要求18所述的方法,还包括: 基于所述比较确定所述第一数据集与所述第二数据集之间的所述差异不满足所述预定差异阈值;响应于所述第一数据集与所述第二数据集之间的所述差异不满足所述预定差异阈值,维持所述第一数据集;以及 至少部分地基于关于确定的感兴趣区域的所述第一数据集对所述视频中的所述第二中贞编码。
20.根据权利要求18所述的方法,其中所述至少部分地基于所述第二数据集对在所述视频中的所述第二帧编码包括:以第一质量对所述确定的感兴趣区域编码,以及以第二质量对所述第二帧的其余部分编码。
【文档编号】H04N7/12GK104205815SQ201380017613
【公开日】2014年12月10日 申请日期:2013年2月5日 优先权日:2012年2月10日
【发明者】S·A·皮耶蒂拉 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1