本地实时面部识别的制作方法

文档序号:13288296阅读:198来源:国知局


背景技术:
诸如具有图像捕获能力的眼镜或其他设备的图像捕获设备正变得更加普遍。这些图像捕获设备能够捕获他们周围的图像并且允许用户基于所捕获到的图像更加智能地与周围进行交互。在一些实例中,图像捕获设备能够捕获附近用户(例如,在所述图像捕获设备的视野中)的图像。操作图像捕获设备的用户通常与维持和所述用户的联系人有关的信息的多种服务(例如,社交网络服务)相关联。可以使用所述信息辅助操作图像捕获设备的用户与附近的用户进行交互。

技术实现要素:
所公开的主题涉及用于在图像捕获设备处进行实时面部识别的机器实现的方法,所述方法包括在图像捕获设备处捕获图像,所述图像包含至少第一人。所述方法可以进一步包括分析所述图像以辨识与所述第一人对应的一个或多个数据点。所述方法可以进一步包括确定与所述一个或多个数据点对应的映射信息在所述图像捕获设备处是否是本地能够获得的。所述方法可以进一步包括当确定了与所述一个或多个数据点对应的映射信息在所述图像捕获设备处不是本地能够获得的时,向远程设备发送对该映射信息的请求。所述方法可以进一步包括响应于所述请求,接收与所述一个或多个数据点对应的映射信息。所述方法可以进一步包括在所述图像捕获设备处本地存储该映射信息。所公开的主题还涉及被配置成捕获图像的图像捕获设备,所述图像捕获设备包括本地数据存储以及识别模块。所述识别模块可以被配置成分析由所述图像捕获设备所捕获的图像,以辨识与所述图像内的第一人对应的一个或多个数据点。所述识别模块可以被配置成确定与所述一个或多个数据点对应的映射信息在所述图像捕获设备处是否是本地能够获得的。所述识别模块可以被配置成当确定了与所述一个或多个数据点对应的映射信息在所述图像捕获设备处不是本地能够获得的时,向远程设备发送对该映射信息请求。所述识别模块可以被配置成响应于所述请求,接收与所述一个或多个数据点对应的映射信息,以及在所述本地数据存储处本地存储该映射信息。所公开的主题还涉及一种包括其中所存储的指令的机器可读介质,所述指令当由机器执行时,使得所述机器执行包括分析在图像捕获设备处捕获到的图像的操作。所述操作可以进一步包括基于所述分析,辨识与第一人对应的一个或多个数据点。所述操作可以进一步包括确定与所述一个或多个数据点对应的映射信息在所述图像捕获设备处是否是本地能够获得的,映射信息包括数据点的集合到人的映射。所述操作可以进一步包括当确定了与所述一个或多个数据点对应的映射信息在所述图像捕获设备处是本地能够获得的时,向远程设备发送对该映射信息的请求,以及如果与所述一个或多个数据点对应的映射信息在所述图像捕获设备处是本地能够获得的,则在所述图像捕获设备处提供与所述第一人相关联的标识符信息。应理解,根据下面的具体实施方式,主题技术的其他配置对于本领域技术人员将变得显而易见,其中,主题技术的各种配置通过图示说明的方式被示出并描述。如将被实现的,在全部不背离主题技术的范围的情况下,主题技术能够实现其他和不同的配置并且它的一些细节能够实现多种其他方面的修改。因此,附图和具体实施方式应被视为本质上是说明性的而非限制性的。附图说明主题技术的某些特征在所附的权利要求中被阐明。然而,出于解释的目的,主题技术的一些实施例在下列图中被阐明。图1图示了示例客户端-服务器网络环境,其提供对使用图像捕获设备捕获到的图像的实时面部识别。图2图示了用于对使用图像捕获设备捕获到的图像进行实时面部识别的示例过程200的流程图。图3概念性地图示了可以用来实现主题技术的一些实施方式的电子系统。具体实施方式下面所描述的具体实施方式旨在作为对主题技术的多种配置的描述并且不旨在表示可以实践主题技术被的唯一配置。附图被合并于本文中并构成具体实施方式的一部分。具体实施方式包括出于提供对主题技术的透彻理解的目的的特定细节。然而,主题技术不限于本文中所阐述的特定细节并且可以在没有这些特定细节的情况下被实践,这对于本领域技术人员而言是清楚并且显而易见的。在一些实例中,众所周知的结构和组件以框图的形式被示出以便避免模糊主题技术的概念。本公开提供了用于对使用图像捕获设备所捕获的图像进行实时面部识别的方法和系统。在一个示例中,图像捕获设备可以包括图像捕获眼镜或其他类似的图像捕获设备,其被配置为捕获图像捕获设备的视野中的项的图像。在一个示例中,图像捕获设备可以是可穿戴便携式图像捕获设备。在一个示例中,图像捕获设备捕获图像并将所述图像发送至服务器进行处理以用于促进对在图像捕获设备的附近和/或其视野中的一个或多个人(“用户”)进行实时和/或本地面部识别。在一个示例中,图像捕获设备可以扫描它的周围并捕获它周围(例如,它的视野之内的对象)的图像。可以周期地(例如,根据捕获速度)、持续地捕获图像、和/或一旦在图像捕获设备的视野内检测到对象便捕获图像。图像捕获设备与本地数据库和/或远程服务器通信。在一些实施方式中,本地数据库和/或远程服务器(例如,在远程数据库处)存储了映射信息,所述映射信息定义了面部(或其他用户特征)数据点(索引)到对应用户的映射。在一些示例中,在捕获到图像之后,图像捕获设备将捕获到的图像内的数据点与本地数据库中的映射信息比较。在一些实施方式中,将从捕获到的图像中提取出的数据点与为每个用户所存储的数据点比较。响应于所述对比,如果辨识出了对应于数据点的映射(例如,与和捕获到的图像数据点相匹配的数据点相关联的映射),则将与所述映射相关联的用户辨识为与捕获到的图像(或捕获到的数据点)相对应的用户。否则,如果本地数据库不包括与捕获到的图像内的数据点对应的映射,则将数据点发送至远程服务器用于分析。远程服务器具有对一个或多个用户的映射信息的数据库的访问权。每个用户的映射信息包括数据点(索引)到用户的映射(例如,将从一个或多个图像中提取出的数据点的集合映射到所述数据点表示的人)。在一个示例中,通过访问具有图像和标签数据的一个或多个数据源(例如,一个或多个社交网络服务)来构建数据库。图像和标签数据提供多个图像(例如,照片、视频)和指示与特定用户(通过用户标识符所辨识的特定用户)对应的图像的标签信息。每个用户的图像可以被扫描以构建与该用户对应的数据点的集合并且可以被存储在数据库内作为数据点与对应于所述数据点的用户的映射。在一些实例中,还可以通过其他源获取用户信息,其他源诸如电子邮件、日历信息、地图或具有用户信息(包括图像和标签数据,或其他用户辨识信息)的其他服务。在从图像捕获设备接收到图像之后,服务器将图像内的数据点与存储在数据库中的映射比较,以找到与捕获到的图像内的数据点对应的映射信息。在一个示例中,可以将图像捕获设备的位置与用户的位置比较以确定和/或确认捕获到的图像的数据点到用户的映射(例如,如果用户靠近图像捕获设备,则捕获到的图像更有可能与该用户对应)。例如,响应于比较数据点(例如,捕获到的数据点和与映射相关联的数据点),可以将所辨识的用户的位置与图像捕获设备的位置相比较以确认辨识出了正确的用户。如果辨识出了与数据点对应的映射信息(例如,与映射相关联的数据点和捕获到的图像的数据点相匹配),则包含该用户的索引(例如,与映射相对应的索引)被发送至图像捕获设备并且被存储在本地数据库处。图像捕获设备接着可以访问本地数据库以通过访问存储在本地数据库中的映射信息来辨识用户(例如,只要用户处于图像捕获设备的视野中)。在一个示例中,一旦辨识出了用户,关于用户的信息可以被提供用于在图像捕获设备处显示。例如,可以在用户(例如,当用户仍处于视线中)周围放置一个框和/或提供用户的标识符信息以用于显示。在一些实施方式中,还可以以其他方式提供关于用户的标识符信息,所述方式包括例如宣告所述标识符信息的音频、或用户处于图像捕获设备的视野内的其他信号或指示。在一些实施方式中,如果远程服务器确定捕获到的图像的数据点不与任何映射信息对应,则远程服务器可以对图像加索引并存储索引信息连同一些附加场境信息(例如,在第二数据库中)。例如,场境信息可以包括图像的新近性(recency)、交互的长度、以及交互的频率、或指示所捕获的用户相对于与图像捕获设备相关联的用户(例如,握持或穿戴图像捕获设备的用户)的可能的重要性或相关性的其他信息。在一个示例中,基于场境信息计算分值。可以将计算出的分值与存储在数据库中的(例如,一个或多个其他捕获到的图像的)其他图像数据和/或阈值分值进行比较。在一些示例中,如果基于比较,该分值满足预定义的条件,则存储捕获到的图像(例如,用户面部)的索引信息。在一些示例中,可以使用图像捕获设备或其他源(例如,社交网络服务等等)的附加输入(例如,音频、用户输入等等)以辨识与未知的捕获到的图像对应的用户。响应于指示附近用户可能处于图像捕获设备邻近的地理位置信息,还可以提供用户的索引信息。用户(例如,除了图像捕获设备的操作者之外的用户、联系人等等)到图像捕获设备的接近度增加了图像捕获设备不久的将来将在某一点捕获到附近用户的图像的可能性,并且因此,要求与用户相对应的索引以识别用户。在一个示例中,关于多个用户的位置信息可以被确定并与图像捕获设备(或操作设备的用户)的位置进行比较,所述多个用户包括例如与操作图像捕获设备的用户相关联的用户(例如,联系人)。当确定了用户处于图像捕获设备邻近时,服务器可以提供与附近用户对应的映射信息(例如,索引)到图像捕获设备以用于在本地数据库处存储。以这种方式,图像捕获设备具有映射信息,使得一旦用户进入图像捕获设备的视野,便使用存储在本地数据库处的本地信息来实时地辨识附近的用户(例如,当用户仍处于视野中时)。以这种方式,在图像捕获设备处本地地促进了实时面部识别。图1图示了示例客户端-服务器网络环境,其提供对使用图像捕获设备捕获到的图像的实时面部识别。网络环境100包括由网络130被可通信地连接的图像捕获设备110和服务器120。网络130可以是公共通信网络(例如,互联网、蜂窝数据网络、通过电话网络的拨号调制解调器)或专用通信网络(例如,专用LAN、租用线路)。进一步地,网络130可以包括但不限于下列以下网络拓扑中的一个或多个,包括总线网络、星型网络、环形网络、网状网络、星型总线网络、树形或分级网络等等。在一些示例实现实施方式中,图像捕获设备110可以是计算设备,诸如眼镜、膝上型或桌面型计算机、智能电话、PDA、便携式媒体播放器、平板计算机、或者具有图像捕获能力的其他合适的计算设备。在一些示例中,图像捕获设备110包括识别模块112和本地数据存储114。识别模块112可以被配置成促进对使用图像捕获设备110捕获到的图像的实时面部识别。本地数据存储114(例如,高速缓存)可以存储映射信息的本地副本以用于促进对使用图像捕获设备110捕获到的图像的实时面部识别。服务器120可以是诸如计算机服务器或其它计算设备的基于处理器的计算设备,包括识别模块122、映射模块124、地理位置模块126、和未知用户模块128。在一些示例服务器120(包括模块122、124、126和128中的一个或多个)中可以具有对索引存储123、地理位置历史存储125、和未知索引存储127的访问权。在一个示例中,识别模块122与图像捕获设备110通信(例如,通过网络130)并且被配置为从图像捕获设备接收捕获到的图像信息。识别模块122被配置为确定用户到捕获到的图像的映射并且将映射信息提供至图像捕获设备以用于促进对使用图像捕获设备捕获到的图像的实时面部识别。映射服务124可以被配置为接收与捕获到的图像或捕获到的图像的部分(例如,表示面部的部分)相对应的数据点,并确定捕获到的图像或捕获到的图像的部分内的数据点到用户的映射。在一个示例中,索引存储123包括映射信息。在一些示例中,映射信息为多个用户定义了从数据点的集合到用户的映射。在一个示例中,存储在索引存储123处的信息是从存储在图像和标签信息源140处的图像和标签数据生成的。图像和标签信息源140可以包括存储了与一个或多个用户对应的图像和标签数据的一个或多个服务或数据存储(例如,社交网络服务)。在一个示例中,服务器120(例如,映射模块124处)被配置为从图像和标签信息源140接收图像和标签数据并生成映射信息(例如,索引)以用于在索引存储123中存储。地理位置模块126可以被配置为确定与图像捕获设备110相关联(例如,操作图像捕获设备)的用户的地理位置和邻近的一个或多个其他用户之间的地理匹配。在一个示例中,位置信息可以由图像捕获设备110提供并且与关于一个或多个其他用户的位置的数据相比较。这样的信息可以从一个或多个远程服务访问和/或可以在地理位置历史存储125处存储。在一些示例中,地理位置历史存储125还可以存储位置信息(例如,基于图像和用户之间的匹配或者以其他方式对服务器可用的由位置服务所生成的地理数据)以用于将来使用。在一个示例中,地理位置模块126可以被配置为比较由映射模块124所生成的映射以使用地理位置数据来确认映射。在另一个示例中,地理位置模块126可以被配置为确定可能会出现在图像捕获设备110邻近的用户,使得用户的映射信息可以被发送至图像捕获设备110。未知用户模块128被配置为确定和/或存储与由图像捕获设备110捕获到的图像有关的信息(例如,用户),其中,映射信息不是现成的(例如,在索引存储内)。在一些示例中,未知用户模块128可以被配置为将一个或多个未知用户的用户信息存储在未知索引存储127内。在一些示例中,未知用户模块128可以被配置为根据多种准则确定未知用户数据点到用户的映射。在一些示例方面,服务器120可以是诸如计算机服务器的单个计算设备。在其他实施方式中,服务器120可以表示一起工作以执行服务器计算机(例如,云计算)的动作的多于一个计算设备。可以将服务器120与各种远程数据库或存储服务耦合。虽然服务器120被显示为互相远离,应理解为由这些服务器执行的功能可以在单个服务器内或跨多个服务器执行。可以通过多种通信协议促进图像捕获设备110、服务器120、和/或图像和标签信息源140之间的通信。在一些方面中,图像捕获设备110、服务器120、和/或图像和标签信息源140中的一个或多个,和/或一个或多个远程服务可以通过通信接口(未示出)无线地通信,其中必要的情况下可以包括数字信号处理电路。通信接口可以提供按照多种模式或协议进行的通信,包括全球移动通信系统(GSM)语音呼叫、短消息服务(SMS)、增强型消息服务(EMS)、或多媒体消息服务(MMS)消息、码分多址(CDMA)、时分多址(TDMA)、个人数字蜂窝(PDC)、宽带码分多址(WCDMA)、CDMA2000、或通用分组无线电系统(GPRS)等。例如,通信可以通过射频收发器(未示出)发生。此外,包括使用蓝牙、WiFi、或其他这样的收发器的近距离通信可以发生。例如,网络130可以包括个域网(PAN)、局域网(LAN)、校园网络(CAN)、城域网(MAN)、广域网(WAN)、宽带网络(BBN)、互联网等等中的任意一个或多个。进一步地,网络130可以包括但不限于下列网络拓扑中的任意一个或多个,包括:总线网络、星型网络、环形网络、网状网络、星型总线网络、树形或分级网络等等。在一些实施方式中,图像捕获设备110被配置为捕获它周围的图像(例如,它的视野之内的对象)。可以周期地(例如,根据捕获速度)捕获图像、持续地捕获图像、和/或一旦在图像捕获设备的视野内检测到对象便捕获图像。当在图像捕获设备110处捕获到图像时,识别模块112可以接收捕获到的图像并可以被促进以生成与用户的图像对应的数据点(例如,与捕获到的图像内的人脸对应的数据点)。识别模块112可以被进一步配置为将所生成的数据点与存储在本地数据存储114中的映射信息进行比较以确定所述数据点是否与存储在数据存储114中的映射对应,例如,通过将所述数据点与每个映射的数据点相比较。如果这样的话,检索映射并且辨识图像内的用户。否则,如果本地数据存储114内没有可获得的与捕获到的图像内的数据点有关的映射信息,则将数据点发送至服务器120用于分析。识别模块122向映射模块124提供对与捕获到的图像内的数据点对应的映射的请求。映射模块124可以访问索引存储123以确定具有与数据点匹配的索引的映射是否在索引存储123处可获得。此外,在一些实施方式中,可以确定图像捕获设备的位置。识别服务122可以发送请求至地理位置模块126,所述请求用于将所确定的图像捕获设备或操作设备的用户的位置与用户的位置进行比较,以确定和/或确认捕获到的图像的数据点与映射至用户的数据点匹配(例如,如果用户靠近图像捕获设备,则捕获到的图像更有可能与该用户对应)。在一些实施方式中,如果由映射模块124和/或地理位置模块126辨识出了映射,则将所述映射提供至识别模块122。在一些示例中,识别模块122将映射信息(例如,包含与图像对应的用户的索引)发送至图像捕获设备110。在一个示例中,映射信息在图像捕获设备处被接收并且在本地数据存储114处存储。在一些示例中,识别模块112可以访问本地数据存储114以使用映射信息辨识用户(例如,只要用户处于图像捕获设备110的视野中)。在一些实施方式中,除了响应于来自图像捕获设备110的请求(例如,响应于由图像捕获设备捕获到的用户图像)将映射信息提供给图像捕获设备110,服务器120还可以响应于指示用户可能处于图像捕获设备的邻近的地理位置信息,提供映射信息用于在本地数据存储114内存储。也就是说,可以例如在地理位置模块126处将图像捕获设备的地理位置与其他用户的位置进行比较,以确定是否有一个或多个其他用户处于图像捕获设备110的邻近,这增加了图像捕获设备110不久的将来将在某一点捕获到附近用户的图像的可能性并且因此要求与用户相对应的映射信息以识别用户。在一些示例中,用户和/或图像捕获设备的位置信息可以从地理位置历史存储125来检索并且可以包括诸如日历数据或指示了用户的位置的其他类似的数据的多种信息。在其他示例中,可以从一个或多个第三方服务(例如,GPS服务、用户移动设备定位服务等等)检索与图像捕获设备110和/或一个或多个用户(或由用户操作的设备)的位置有关的信息。当确定了用户处于图像捕获设备110的邻近,地理位置模块126可以将与附近的用户对应的映射信息提供至图像捕获设备110(例如,经由识别模块122)以用于在本地数据存储114处存储。在一个示例中,识别模块112被配置为一旦用户被辨识出便在图像捕获设备110处提供有关用户的信息。例如,可以在用户(例如,当用户仍处于视线中)周围放置一个框并且提供用户的标识符信息用于显示。在其他示例中,还可以以多种其他方式(例如,音频或其他信号)将标识符信息提供至操作图像捕获设备的用户。在一些实施方式中,基于映射模块124和/或地理位置模块126的查找,如果由图像捕获设备110发送至服务器120的数据点不与任何映射索引相对应,则可以将捕获到的图像的数据点提供至未知用户模块126。未知用户模块126可以对图像和/或数据点加索引并将索引信息连同一些附加场境信息一起存储在未知索引存储127处。在一个示例中,未知用户模块126可以基于场境信息计算分值。可以将计算出的分值与存储在未知索引存储数据库127中的其他图像的分值和/或阈值分值进行比较。在一些示例中,如果基于比较,所述分值满足预定义的条件,则将来自捕获到的图像(例如,用户面部)的索引数据存储在未知索引存储128中。在一些示例中,可以使用图像捕获设备110的附加输入(例如,音频)或其他源来辨识与捕获到的图像中未知的用户对应的用户。图2图示了用于对使用图像捕获设备捕获到的图像进行实时面部识别的示例过程200的流程图。在步骤201中,在图像捕获设备处捕获图像。在一个示例中,图像捕获设备可以扫描它的周围环境并捕获它的周围环境(例如,它的视野之内的对象)的图像。可以周期地(例如,根据捕获速度)捕获图像、持续地捕获图像、和/或一旦在图像捕获设备的视野内检测到对象便捕获图像。在步骤202中,分析捕获到的图像以辨识与图像内的第一人对应的一个或多个数据点。在一个示例中,可以使用多种技术用于识别图像内的一个或多个人的面部。可以接着分析每个识别出的面部以确定表示面部特征的一个或多个数据点,使得可以针对识别出的面部图像来执行面部识别。在步骤203中,确定与数据点对应的映射信息是否在本地可获得。在一个示例中,本地存储(例如,高速缓存)可以存储与数据点(索引)到对应用户的映射有关的映射信息。在一些示例中,捕获到图像之后,图像捕获设备便将捕获到的图像内的数据点与本地数据库中的映射的数据点进行比较。本地数据库可以包括响应于发送至存储了映射信息的远程服务器的先前请求而提供的映射信息,如下面关于过程200更加细节地描述的。响应于指示用户可能处于图像捕获设备的邻近的地理位置信息,用户的映射信息还可以被提供用于本地存储,并且因此在本地数据库内可获得,这增加了图像捕获设备不久的将来将在某一点捕获到用户的图像的可能性并且因此要求与用户相对应的索引以识别用户。在步骤203中,如果确定了存在本地存储的与数据点对应的映射信息,则过程继续至步骤204。在步骤204中,根据映射信息检索与图像中所捕获到的人有关的信息。在一个示例中,信息可以包括人的标识符(例如,姓名、ID等等)。在一些实施方式中,信息可以包括与用户有关的其他人口统计信息。信息可以进一步包括简档、账户、页面、或与用户对应的其他数据。在步骤205中,在图像捕获设备处将信息提供至用户。在一个示例中,一旦识别出与捕获到的面部对应的用户,就可以提供与用户有关的信息以用于在图像捕获设备处显示。例如,可以在包括用户的面部的图像的部分周围放置一个框(例如,当用户仍处于视线中)并且提供用户的标识符信息用于显示。在另一个示例中,可以在图像捕获设备处提供指示辨识出的用户处于图像捕获设备的视野内的音频通知。否则,如果在步骤203中,确定了本地数据库不包含与捕获到的图像内的数据点对应的映射信息,则在步骤206中,发送对与数据点对应的映射信息的请求至远程服务器。在一个示例中,所述请求包括步骤202中辨识出的数据点。在另一个示例中,可以将捕获到的图像发送至远程服务器并且远程服务器可以分析该图像以辨识一个或多个数据点。远程服务器具有到与用户的集合对应的映射信息的数据库的访问权。在一些实施方式中,每个用户的映射信息可以包括数据点的集合,所述数据点被映射至所述数据点表示的用户。在一个示例中,通过访问具有图像和标签数据的一个或多个数据源(例如,一个或多个社交网络服务)来构建数据库。图像和标签数据提供图像(例如,照片、视频)和指示与特定用户(例如由用户标识符所辨识的特定用户)对应的每个图像的标签信息。每个用户的图像可以被扫描以构建与每个用户对应的数据点的集合并且可以被存储在数据库内。在从图像捕获设备接收到与人对应的图像和/或数据点之后,服务器将图像内的数据点与存储在数据库中的数据点进行比较,以找到与捕获到的图像内的数据点对应的映射。在一个示例中,除了比较数据点,可以将图像捕获设备的位置与用户的位置进行比较,以确定和/或确认数据点到用户的映射(例如,如果用户靠近图像捕获设备,则捕获到的图像更有可能与用户对应)。在一些示例中,如果辨识出了与捕获到的数据点对应的映射信息,则将辨识出的映射信息(例如,包含由图像所表示的用户的索引)发送至图像捕获设备。在一些实施方式中,如果服务器确定了服务器发送的数据点不与服务器数据库中的任何映射信息对应,则服务器可以对图像加索引并将索引信息连同一些附加场境信息一起存储。在步骤207中,确定是否响应于所述请求接收与图像和/或图像内的数据点对应的映射信息。如果是,在步骤208中,将映射信息存储在本地数据库中。图像捕获设备然后可以访问本地数据库以辨识与数据点对应的用户(例如,只要用户处于图像捕获设备的视野中)。否则,如果没有接收到映射信息,则过程在步骤209中结束。在一些示例中,可以提供关于用户无法被识别的警告或指示以用于显示。以这种方式,在图像捕获设备处本地地促进了实时面部识别。很多上述特征和应用被实现为软件过程,所述软件过程被指定为被记录在计算机可读存储介质(也被称为计算机可读介质)上的指令集合。当这些指令被一个或多个处理单元(例如,一个或多个处理器、处理器的核、或其他处理单元)执行时,他们使得处理单元执行指令中指示的动作。计算机可读介质的示例包括,但不限于,CD-ROM、闪存盘、RAM芯片、硬盘驱动、EPROM等等。计算机可读介质不包括无线地或通过有线连接传播的载波和电信号。在本说明书中,术语“软件”意味着包括位于只读存储器中的固件或存储在磁性存储中的应用,其可被读进存储器中用于由处理器处理。而且,在一些实施方式中,主题公开的多个软件方面可被实现为更大的程序的子部分同时保持主题公开的独特的软件方面。在一些实施方式中,多个软件方面还可被实现为单独的程序。最后,在一起实现了此处描述的软件方面的单独的程序的任意组合在主题公开的范围之内。在一些实施方式中,当软件程序在一个或多个电子系统上被安装以操作时,定义执行并进行软件程序的操作的一个或多个特定的机器实施方式。计算机程序(也被称为程序、软件、软件应用、脚本或代码)可以以任意形式的编程语言写出,包括编译或解释型语言、说明或过程语言,并且它可以以任意形式部署,包括适合用户在计算环境中使用的作为独立程序或作为模块、组件、子例程、对象或者其他单元。计算机程序可以,但不是需要,与文件系统中的文件对应。程序可被存储在保持了其它程序或数据的文件的部分中(例如,存储在标记语言文档中的一个或多个脚本),在专用于正在讨论的程序的单个文件中,或在多个协调的文件(例如,存储了一个或多个模块、子程序、或代码的部分的文件)中。计算机程序可以被部署以在一个计算机或在位于一个场所或跨多个场所分布并通过通信网络被互相连接的多个计算机上执行。图3概念性地图示了可以用来实现主题技术的一些实施方式的电子系统。电子系统300可以是服务器、计算机、电话、PDA、膝上型计算机、平板计算机、带有嵌入在其中或与其耦合的一个或多个处理器的电视机、或任意其他类型的电子设备。这样的电子系统包括各种类型的计算机可读介质和用于各种其他类型的计算机可读介质的接口。电子系统300包括总线308、处理单元312、系统存储器304、只读存储器(ROM)310、永久存储设备302、输入设备接口314、输出设备接口306、和网络接口316。总线308共同表示可通信地连接电子系统300的多个内部设备的所有系统、外围设备、以及芯片集总线。诸如,总线308可通信地将处理单元312与ROM310、系统存储器304、和永久存储设备302连接。处理单元12从这些各种存储器单元检索要执行的指令和要处理的数据以便执行主题公开的过程。在不同的实施方式中处理单元可以是单个处理器或多核处理器。ROM310存储处理单元312和电子系统的其他模块所需要的静态数据和指令。另一方面,永久存储设备302是读写存储器设备。该设备是即使当电子系统300关闭时也存储指令和数据的非易失性存储器单元。主题公开的一些实施方式使用大容量存储设备(诸如磁或光盘以及它的对应磁盘驱动)作为永久存储设备302。其他实施方式使用可移除存储设备(诸如软盘、闪存驱动、和它的对应磁盘驱动)作为永久存储设备302。类似于永久存储设备302,系统存储器304是读写存储器设备。然而,不同于存储设备302,系统存储器304是易失性读写存储器,诸如随机存取存储器。系统存储器304存储处理器在运行时需要的指令和数据中的一些。在一些实施方式中,主题公开的过程被存储在系统存储器304、永久存储设备302、和/或ROM310中。例如,根据主题技术的一些实施方式,各种存储器单元包括用于促进实时面部识别的指令。处理单元312从这些各种存储器单元检索要执行的指令和要处理的数据以便执行一些实施方式的过程。总线308还连接至输入设备接口314和输出设备接口306。输入设备接口314使得用户能够通信信息并选择命令至电子系统。例如,与输入设备接口314一起使用的输入设备包括例如字母数字键盘和指示设备(也被称为“光标控制设备”)。例如,输出设备接口306使得例如电子系统300生成的图像能够显示。例如,与输出设备接口306一起使用的输出设备包括例如打印机和显示器设备,诸如阴极射线管(CRT)或液晶显示器(LCD)。一些实施方式包括用作输入和输出设备两者的诸如触摸屏的设备。最后,如图3中所示出的,总线308还通过网络接口316将电子系统300耦合至网络(未示出)。以这种方式,计算机可以是计算机的网络的一部分(诸如局域网(“LAN”)、广域网(“WAN”)、或内联网、或网络的网络(诸如互联网))。可以结合主题公开使用电子系统300的任意或所有组件。上面所描述的这些功能可被实现在数字电子电路中,实现在计算机软件、固件或硬件中。所述技术可使用一个或多个计算机程序产品来实现。可编程处理器和计算机可被包括在移动设备中或被封装为移动设备。过程和逻辑流程可由一个或多个可编程处理器以及由一个或多个可编程逻辑电路来执行。一般和专用计算设备和存储设备可通过通信网络互连。一些实施方式包括电子组件,诸如将计算机程序指令存储在机器可读或计算机可读介质中的微处理器、存储、和存储器(替选地被称为计算机可读存储介质、机器可读介质、或机器可读存储介质)。这样的机器可读介质的一些示例包括RAM、ROM、只读光盘(CD-ROM)、可记录光压缩盘(CD-R)、可重写压缩盘(CD-RW)、只读数字通用盘(例如,DVD-ROM、双层DVD-ROM)、多种可记录/可重写DVD(例如,DVD-RAM、DVD-RW、DVD+RW等等),闪速存储器(例如,SD卡、迷你SD卡、微型SD卡等等)、磁性或固态硬件驱动、只读和可记录盘、高密度光盘、任意其他光或磁介质、以及软盘。计算机可读介质可存储可由至少一个处理单元执行并包括用于执行多种操作的指令集的计算机程序。计算机程序或计算机代码的示例包括机器代码,诸如,由编译器产生以及包括由计算机执行的更高级别代码的文件、电子组件、或使用解释器的微处理器。尽管上面的讨论主要指执行软件的微处理器或多核处理器,但是一些实施方式由一个或多个集成电路来执行,诸如专用集成电路(ASIC)或现场可编程门阵列(FPGA)。在一些实施方式中,这样的集成电路执行存储在电路自己上面的指令。如在本说明书中和本申请的任意权利要求中使用的,术语“计算机”、“服务器”、“处理器”和“存储器”都指电子或其他技术设备。这些术语不包括人或人群。为了说明的目的,术语“显示”或“正在显示”意思是在电子设备上显示。如在本说明书中和本申请的任意权利要求中使用的,术语“计算机可读介质”和“计算机可读介质”被完全限于以计算机可读的形式存储信息的有形的物理对象。这些术语不包括任意无线信号、有线下载信号、以及任意其他瞬时信号。为了提供与用户的交互,本说明书中所描述的主题的实施方式可被实现在计算机上,所述计算机具有用于将信息显示给用户的诸如CRT(阴极射线管)或LCD(液晶显示器)监视器的显示设备,以及用户通过其可以提供输入至计算机的键盘和指示设备(诸如鼠标或轨迹球)。其他类型的设备也可被使用以提供与用户的交互;例如,提供给用户的反馈可以是任意形式的感知反馈,例如视觉反馈、听觉反馈、或触觉反馈;并且可以以任意形式接收来自用户的输入,包括声学的、语音的、或触觉输入。此外,计算机可以通过发送文档至用户使用的设备或从用户使用的设备接收文档与用户交互;例如,通过响应于从web浏览器接收的请求,将网页发送至用户的客户端设备上的web浏览器。本说明书中所描述的主题的实施例可在计算系统中实现,所述计算系统包括后端组件(例如,如数据服务器)、或包括中间件组件(例如应用服务器)、或包括前端组件(例如具有图形用户界面或web浏览器的客户端计算机,用户通过其可以与本说明书中描述的主题的实现交互),或包括一个或多个这样的后端、中间件、或前端组件的任意组合。系统的组件可由诸如通信网络的任意形式或介质的数字数据通信来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、互联网络(例如,互联网)、以及对等网络(例如,对等点对点网络)。计算系统可包括客户端和服务器。客户端和服务器一般互相远离并通常通过通信网络交互。客户端和服务器的关系通过运行在相应的计算机上并相互具有客户端-服务器的关系的计算机程序产生。在一些实施例中,服务器将数据(例如,HTML页面)传输至客户端设备(例如,为了将数据显示给用户并从与客户端设备交互的用户处接收用户输入的目的)。可以在服务器处从客户端设备接收在客户端设备处生成的数据(例如,用户交互的结果)。应该理解,公开的过程中步骤的任意特定的顺序或层级是示例性办法的说明。基于设计偏好,应理解,过程中的操作的特定的顺序或层级可被重新布置,或者一些图示的步骤可以不被执行。步骤中的一些可以被同时执行。例如,在某些环境下,多任务和并行处理可以是有益的。此外,上述描述的实施例中的多个系统组件的分离不应被理解为在所有实施例中都要求这种分离,并且应理解被描述的程序组件和系统通常可以在单个软件产品中被整合在一起或被封装在多个软件产品中。提供上面的说明以使得任意本领域技术人员能够实践本文中描述的多个方面。对这些方面的各种修改对于本领域技术人员将是显而易见的,本文中定义的通用原则可被应用至其他方面。因此,权利要求不旨在限于本文中示出的方面,而是与语言权利要求全部范围符合,其中,除非特别阐明,否则对单数元件的引用不旨在意味着“一个且唯一的一个”,而是“一个或多个”。除非特别阐明,否则术语“一些”指一个或多个。男性代词(例如,他的)包括女性和中性(例如她的或它的),反之亦然。标题和子标题,如果有,是为了方便被使用并不限于主题公开。诸如“方面”的短语不暗示这样的方面对主题技术是必要的或这样的方面适用于主题技术的所有配置。涉及方面的公开可适用于所有配置、或一个或多个配置。诸如方面的短语可指一个或多个方面,反之亦然。诸如“配置”的短语不暗示这样的配置对主题技术是必要的或这样的配置适用于主题技术的所有配置。涉及配置的公开可适用于所有配置、或一个或多个配置。诸如配置的短语可指一个或多个配置,反之亦然。词语“示例性”被用于本文中以表示“充当示例或图示”。本文中被描述为“示例性”的任意方面或设计不是必要地被认为相较于其他方面或设计是优选的或有利的。对本领域技术人员而言是已知的或随后便可得知的在整个公开中所描述的各种方面的元件的所有结构性和功能性等价物被清楚地通过引用合并于本文中,并且旨在被权利要求所包含。此外,无论这样的公开有没有在权利要求中明确记载,本文中所公开的任何内容都不是旨在奉献给公众。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1