用于面部识别应用中的误判最小化的方法和设备与流程

文档序号:15104738发布日期:2018-08-04 16:36阅读:223来源:国知局

本申请要求2015年10月21日提交的、标题为“METHODS AND APPARATUS FOR FALSE POSITIVE MINIMIZATION IN FACIAL RECOGNITION APPLICATIONS”的美国临时申请第62/244,419号的优先权和权益。前述申请的全部内容通过引用明确地并入本文。

技术领域

本文所描述的实施例大体上涉及面部识别和视频分析,更具体地,涉及用于面部识别应用中的误判(false positive)最小化的设备和方法。



背景技术:

电子装置(比如照相机、平板、智能电话等)的可用性和能力的提高已经使得一些人可以拍摄他们的经历的图片和/或捕获他们的经历的视频。例如,智能电话、平板和/或其他类似装置中的照相机的包含和改进已经导致正被用来拍摄图片(例如,摄影数据、图像数据等)和视频(例如,视频流数据)的那些装置增加。虽然使一些人拍摄他们的经历的图片和/或视频变得更加容易,但是在一些情况下,包括期望的当事方(包括要不然将拍摄图片或视频的人)可能仍存在挑战。而且,一个人一般必须记得和/或有机会拍摄图片和/或视频,并且未做成可能导致机会丢失。

在一些情况下,场地和/或事件(比如体育赛事、音乐会、集会、毕业典礼等)具有可以拍摄出席的那些人的图片和/或视频的照相机。然而,在一些情况下,分析、解析图片和/或视频流和/或以其他方式使图片和/或视频流可用可能会使用相对较多的资源,可能是不准确的,和/或可能未能提供相关联的上下文数据等。更具体地说,在一些情况下,由于仅使用面部识别来标识图片中的人而获得的误判,可能难以验证图片中检测到的特定人实际上处于在图片中捕获的地点中。

因此,存在对于用于使用上下文数据和地点数据来最小化例如公共事件中的误判的改进设备和方法的需要。



技术实现要素:

在一些实施方式中,一种设备可以包括存储器和处理器,处理器操作地耦合到存储器。处理器可以在第一时间处从用户装置接收地点数据,并且可以将地点数据存储在用户简档数据结构中。用户简档数据结构可以包括与用户相关联的用户装置的该用户的面部识别数据,该面部识别数据是基于二维面部识别分析、三维面部识别分析或卷积神经网(CNN)中的至少一个的。处理器可以在不同于第一时间的第二时间处从图像捕获装置接收至少一个图像。处理器可以至少部分地基于接收的至少一个图像内的一组特性来标识地点,并且可以从数据库检索包括用户简档数据结构的多个用户简单数据结构。处理器可以对于多个用户简档数据结构中的每个用户简档数据结构,将该用户简档数据结构中的地点数据与地点进行比较。当用户简档数据结构的地点数据和地点彼此在预定距离内时,处理器可以确定与用户简档数据结构相关联的用户是否可以在所述至少一个图像中被标识。例如,处理器可以基于二维面部识别分析、三维面部识别分析或CNN中的至少一个关于用户的面部识别数据对所述至少一个图像进行分析以标识面部识别置信得分。处理器然后可以基于面部识别置信得分满足预定准则来将所述至少一个图像与用户简档数据结构相关联。

附图说明

图1A是根据实施例的识别系统的示意图。

图1B是根据另一实施例的识别系统的示意图。

图2是图1的识别系统中包括的主机装置的示意图。

图3是例示说明根据实施例的使用视频识别系统的方法的流程图。

图4是例示说明根据另一实施例的使用视频识别系统的方法的流程图。

图5是根据实施例的捕获媒体中的上下文信息的图像捕获装置的例示说明。

图6是例示说明根据实施例的使用媒体中的上下文信息和地点数据来标识媒体中的用户的逻辑流程图。

具体实施方式

在一些实施方式中,一种设备可以包括存储器和处理器,处理器操作地耦合到存储器。处理器可以在第一时间处从用户装置接收地点数据,并且可以将地点数据存储在用户简档数据结构中。用户简档数据结构可以包括与用户相关联的用户装置的用户的面部识别数据,该面部识别数据是基于二维面部识别分析、三维面部识别分析或卷积神经网(CNN)中的至少一个的。处理器可以在不同于第一时间的第二时间处从图像捕获装置接收至少一个图像。处理器可以至少部分地基于接收的至少一个图像内的一组特性来标识地点,并且可以从数据库检索包括用户简档数据结构的多个用户简单数据结构。处理器可以对于多个用户简档数据结构中的每个用户简档数据结构,将该用户简档数据结构中的地点数据与地点进行比较。当用户简档数据结构的地点数据和地点在彼此的预定距离内时,处理器可以确定与用户简档数据结构相关联的用户是否可以在所述至少一个图像中被标识。例如,处理器可以基于二维面部识别分析、三维面部识别分析或CNN中的至少一个关于用户的面部识别数据对所述至少一个图像进行分析以标识面部识别置信得分。处理器然后可以基于面部识别置信得分满足预定准则来将所述至少一个图像与用户简档数据结构相关联。

本文所描述的实施例涉及基于面部识别数据和地点信息来检测媒体中的用户。在一些实施例中,图像分析方法包括在主机装置处经由网络从客户端装置接收指示用户在一地点处签到的信号。用户可以经由她的移动装置签到。图像捕获装置可以捕获可能包括用户的媒体(例如,相片、视频、音频和/或类似内容)。主机装置可以使用媒体中的风景和/或其他背景信息(例如,在经由图像处理技术对媒体进行处理之后)来确定媒体被捕获的特定地点。主机装置还可以接收图像捕获装置的地点信息,例如,以验证图像捕获装置的地点和/或媒体检测到的地点。主机装置可以将在媒体中检测到的地点与已经签到的用户的地点数据进行匹配,以确定哪些用户已经在靠近媒体被捕获的地方的地点处签到。主机装置然后可以对媒体执行图像处理以确定靠近媒体中的地点签到的用户是否出现在媒体中。主机装置可以向主机装置在媒体中检测到的用户发送通知。以这种方式,主机装置可以减少在特定媒体文件中搜索的用户的数量,并且通过将用户的地点和用户的出现这二者捆绑到从媒体获得的数据来减少误判。

如本说明书中所使用的,单数形式“一”、“一个”和“该”包括复数指示物,除非上下文另有明确指示。因此,例如,术语“模块”意图意指单个模块或模块组合,“网络”意图意指一个或多个网络或它们的组合。

如本文所使用的,术语“模块”是指操作地耦合的电气组件的任何组装和/或集合,操作地耦合的电气组件可以包括例如存储器、处理器、电气走线、光学连接器、软件(在硬件中执行)等。例如,在处理器中执行的模块可以是能够执行与该模块相关联的一个或多个特定功能的基于硬件的模块(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理器(DSP))和/或基于软件的模块(例如,存储在存储器中的和/或在处理器处执行的计算机代码模块)的任何组合。

本文所描述的实施例和方法可以使用面部识别数据来(1)在视频流中搜索登记的用户(例如,其面部识别数据预先确定的人)的一个或多个图像并且(2)将包括上下文数据的视频流提供给与该用户相关联的客户端装置(例如,智能电话、平板、计算机、可穿戴电子装置等)。面部识别一般包含:对一个人的面部的一个或多个图像进行分析以确定例如他或她的面部结构的显著特征(例如,颧骨、下巴、耳朵、眼睛、下颌、鼻子、发际线等),然后定义与显著特征相关联的和/或以其他方式表示显著特征的定性和/或定量数据集合。一种方法例如包括:提取与一个人的面部的显著特征相关联的数据,并且定义包括几何信息和/或基于坐标的信息的数据集合(例如,面部识别数据的三维(3-D)分析)。另一方法例如包括:将图像数据提炼成定性值,并且将这些值与模板等进行比较(例如,面部识别数据的二维(2-D)分析)。在一些情况下,另一方法可以包括3-D分析和2-D分析的任何合适的组合。

一些面部识别方法和/或算法包括使用特征脸(例如,与面部识别相关联的特征脸)的主成分分析、线性判别分析、使用费舍脸(Fisherface)算法的弹性束图匹配、隐马尔可夫模型、使用张量表示的多线性子空间学习、神经元激励的动态链接匹配、卷积神经网(CNN)等或它们的组合。本文所描述的实施例和/或方法中的任何一个都可以使用和/或实施任何合适的面部识别方法和/或算法或它们的组合,比如上述那些。

图1A是根据实施例的视频识别系统100的示意图。在一些情况下,视频识别系统100(在本文中也被称为“系统”)可以用于至少部分地基于面部识别数据来呈现用户的视频流。系统100的至少一部分可以例如用指令集或代码来表示和/或描述,该指令集或代码存储在存储器中并且在电子装置(例如,主机装置、一个服务器或一组服务器、个人计算机(PC)、网络装置等)的处理器中执行。例如,在一些实施例中,主机装置可以接收与登记关联于用户的面部识别数据的请求相关联的信号,并且作为响应,可以将面部识别数据存储在数据库中。类似地,主机装置可以接收与视频流数据相关联的信号。在一些情况下,主机装置的一个或多个处理器然后可以执行存储在主机装置的存储器中的指令集或代码,该指令集或代码与对视频流数据进行分析以至少部分地基于面部识别数据和/或地点信息(比如地标数据)来确定用户的一个或多个图像是否存在于视频流中相关联。如果图像被发现在视频流数据中,则一个或多个处理器可以隔离视频流数据的相关联的部分。而且,一个或多个处理器可以执行指令集或代码以:(1)将上下文数据(比如时间、地点、事件等)与视频流数据相关联,并且(2)定义用户的上下文视频流。一个或多个处理器然后可以将指示在与用户相关联的客户端装置的显示器上呈现用户的上下文视频流(例如,通过在该客户端装置上实例化的界面上图形化地渲染上下文视频流)的指令的信号发送到该客户端装置。

系统100包括与数据库140通信的主机装置110、客户端装置150和图像捕获系统160。主机装置110可以是与数据库140、客户端装置150和图像捕获系统160进行电子通信的任何合适的主机装置,比如一个服务器或一组服务器、网络管理装置、个人计算机(PC)、处理单元等。例如,在该实施例中,如本文更详细地描述的,主机装置110可以是经由网络105与数据库140、客户端装置150和图像捕获系统160进行电子通信的一个服务器或一组服务器(设置在基本上相同的地点和/或设施中和/或分布在多于一个的地点中)。

客户端装置150可以是任何合适的装置,比如PC、膝上型电脑、可变型膝上型电脑、平板、个人数字助理(PDA)、智能电话、可穿戴电子装置(例如,智能手表等)等。尽管在图1中未示出,但是在一些实施例中,客户端装置150可以是至少包括存储器、处理器、通信接口、显示器和一个或多个输入的电子装置。存储器、处理器、通信接口、显示器和(一个或多个)输入可以彼此连接和/或电耦合,比如以允许信号在它们之间发送。例如,在一些实施例中,存储器可以是随机存取存储器(RAM)、存储器缓冲器、硬盘驱动器、只读存储器(ROM)、可擦可编程只读存储器(EPROM)等。处理器可以是被配置为运行或执行指令集或代码(例如,存储在存储器中)的任何合适的处理装置,比如通用处理器(GPP)、中央处理单元(CPU)、加速处理单元(APU)、图形处理器单元(GPU)、专用集成电路(ASIC)等。这样的处理器可以运行或执行存储在存储器中的与使用PC应用、移动应用、互联网网络浏览器、蜂窝和/或无线通信(经由网络)等相关联的指令集或代码。更具体地说,如本文更详细地描述的,处理器可以执行存储在存储器中的与将面部识别数据发送到主机装置110和/或从主机装置100接收面部识别数据和/或上下文视频流数据相关联的指令集或代码。

客户端装置150的通信接口可以是可以使资源与主机装置110通信的任何合适的模块和/或装置,比如一个或多个网络接口卡等。这样的网络接口卡可以包括例如可以使客户端装置150经由网络(例如,网络105)等与主机装置110通信的以太网端口、无线电、无线电、近场通信(NFC)无线电和/或蜂窝无线电。就这一点而论,通信接口可以将信号发送到经由网络105与主机装置110电子通信相关联的处理器和/或从该处理器接收信号。

客户端装置150的显示器可以例如是可以图形化地表示系统100的任何合适的部分(例如,与网页、PC应用、移动应用等相关联的图形用户界面(GUI))的阴极射线管(CRT)监视器、液晶显示器(LCD)监视器、发光二极管(LED)监视器等。在一些实施例中,这样的显示器可以是和/或可以包括被配置为接收触觉用户输入的触摸屏。在一些情况下,如本文更详细地描述的,显示器可以被配置为图形化地表示与面部识别过程相关联的数据和/或与视频流相关联的数据。

客户端装置150的(一个或多个)输入可以是可以接收一个或多个输入(例如,用户输入)并且可以将信号发送到与一个或多个输入相关联的处理器和/或从该处理器接收信号的任何合适的模块和/或装置。在一些实施例中,(一个或多个)输入可以是和/或可以包括被配置为被置于与装置进行电子通信的端口、插头和/或其他接口。例如,这样的输入可以是通用串行总线(USB)端口、电气和电子工程师协会(IEEE)1394(火线(FireWire))端口、雷电(Thunderbolt)端口、闪电(Lightning)端口等。在一些实施例中,显示器可以包括在被配置为接收触觉用户输入的触摸屏等中。

在一些实施例中,输入可以是照相机和/或其他成像装置。例如,在一些实施例中,这样的照相机可以集成到客户端装置150中(例如,如智能电话、平板、膝上型电脑等中)和/或可以经由端口等(比如上述那些)与客户端装置150通信。照相机可以是任何合适的成像装置,比如举例来说,包括在智能电话或平板中的网络摄像头或面向前的照相机(例如,基本上在与显示器相同的方向上指向的照相机)。以这种方式,用户可以操纵客户端装置150来使照相机捕获图像(例如,相片)或视频。而且,在一些情况下,显示器可以被配置为图形化地渲染与照相机捕获的图像相关联的数据。举例来说,在一些实施例中,客户端装置150可以是包括面向前的照相机的智能电话、平板或可穿戴电子装置。在一些情况下,用户可以操纵客户端装置150来经由照相机拍摄他自己或她自己的图片或视频(例如,也被称为“自拍”)。

在一些情况下,客户端装置150中包括的照相机(例如,输入)可以用于捕获用户的面部的图像,该图像继而可以用于登记与用户相关联的面部识别数据。具体地说,用户可以操纵客户端装置150以使得照相机捕获用户的面部的图像。在一些情况下,显示器可以被配置为图形化地渲染可以将与用户的面部的图像的期望对齐相关联的指示提供给用户的数据的指示、边框、边界、指南和/或任何其他合适的图形表示。一旦照相机捕获到期望的图像,处理器就可以接收和/或检索与用户的面部的图像相关联的数据,并且继而,可以执行与面部识别过程的至少一部分相关联的指令集或代码(例如,存储在存储器中)。例如,在一些情况下,处理器可以执行与验证在显示器上图形化地渲染的指示、边框、边界等和用户面部的捕获图像之间的对齐相关联的指令集或代码。在一些情况下,如本文更详细地描述的,客户端装置150可以被配置为当对齐被验证时经由网络105将与表示用户的图像的数据相关联的信号发送到主机装置110,并且作为响应,主机装置110可以对该数据执行任何合适的一个面部识别过程或多个面部识别过程。

图像捕获系统160可以是和/或可以包括被配置为捕获图像数据的任何合适的一个装置或多个装置。例如,图像捕获系统160可以是和/或可以包括被配置为捕获图像(例如,相片)和/或记录视频流的一个或多个照相机和/或图像记录装置。在一些实施例中,图像捕获系统160可以包括与中央计算装置(比如服务器、个人计算机、数据存储装置(例如,网络附加存储(NAS)装置、数据库等)等)通信的多个照相机。在这样的实施例中,照相机可以是自主的(例如,可以在没有用户提示和/或输入的情况下捕获图像数据),并且均可以将图像数据发送到中央计算装置(例如,经由有线或无线连接、端口、串行总线、网络等),该中央计算装置继而可以将图像数据存储在存储器和/或其他数据存储装置中。而且,中央计算装置可以与主机装置110通信(例如,经由网络105),并且可以被配置为将图像数据的至少一部分发送到主机装置110。尽管在图1中被示为经由网络105与主机装置110通信,但是在其他实施例中,这样的中央计算装置可以包括在主机装置110的一部分中和/或以其他方式耦合到主机装置110。在还有的其他的实施例中,照相机可以在没有这样的中央计算装置的情况下与主机装置110通信(例如,经由网络105)。

在一些实施例中,图像捕获系统160可以与场地等(比如举例来说,运动场、主题公园、剧场和/或任何其他合适的场地)相关联和/或由场地等所拥有。在其他实施例中,图像捕获系统160可以用在场地中或场地处,但是是由不同的实体(例如,被许可和/或被以其他方式授权在场地中或在场地处使用图像捕获系统160(比如举例来说,在体育赛事中使用电视摄像机)的实体)所拥有的。在还有的其他实施例中,图像捕获系统160可以包括可以用作照相机或记录器的任何数量的客户端装置(例如,用户装置)等,比如智能电话、平板等。在这样的实施例中,客户端装置中的至少一些可以与与场地相关联的中央计算装置(例如,如上所述的中央计算装置)和/或主机装置110通信。

例如,在一些实施例中,如图1B所示,集成到客户端装置150中的照相机可以形成和/或包括图像捕获系统160的至少一部分。以这种方式,用户可以操纵客户端装置150来捕获图片和/或视频记录,并且作为响应,客户端装置150可以将图片(例如,图像数据、摄影数据等)和/或视频记录数据上传到和/或以其他方式发送到主机装置110。在一些情况下,图片和/或视频记录数据可以存储在客户端装置150上达任何合适的时间,并且在后来的时间上传到和/或发送到主机装置110。而且,图片和/或视频记录数据可以在图片和/或视频记录数据发送到主机装置110之后存储在客户端装置150上。也就是说,发送图片和/或视频记录数据不从客户端装置150删除和/或移除图片和/或视频记录数据(例如,该数据的副本发送到主机装置110)。因此,如图1B所示,图像捕获系统160无需与特定的事件和/或场地相关联。在这样的情况下,用户可以操纵客户端装置150(例如,客户端装置150的应用)来经由集成到客户端装置150中的照相机和/或记录装置(例如,图像捕获系统160)捕获用户产生的内容(例如,图片、图像数据、摄影数据、视频流数据等)。

在一些情况下,图像捕获系统160被配置为捕获与场地和/或事件相关联的图像数据。换句话说,图像捕获系统160被配置为在预定的、已知的和/或给定的上下文内捕获图像数据。例如,在一些情况下,图像捕获系统160可以包括安装在场所等处的一个或多个图像捕获装置(例如,照相机和/或录像机),这些图像捕获装置被配置为捕获与场所处的赞助人、客人、表演者等相关联的图像数据。以这种方式,图像捕获系统160被配置为在场所和/或在场所处发生的事件的上下文内捕获图像数据。因此,捕获的图像数据可以例如是“上下文图像数据”。也就是说,图像数据与上下文数据相关联。如本文更详细地描述的,主机装置110可以从图像捕获系统160接收图像数据和/或视频流数据,并且从任何合适的数据源等接收与上下文相关联的数据(例如,与场所和/或在场所处发生的事件相关联的“上下文数据”,和/或任何其他合适的上下文和/或元数据);可以将上下文数据与例如图像数据相关联;可以定义与例如客户端装置150的用户相关联的用户特定的上下文图像和/或用户特定的上下文视频流;并且可以将与用户相关联的用户特定的上下文图像和/或用户特定的上下文视频流发送到客户端装置150。

如上所述,客户端装置150和图像捕获系统160可以经由一个或多个网络与主机装置110通信。例如,如图1A所示,客户端装置150和图像捕获系统160可以经由其通信接口和网络105与主机装置110通信。网络105可以是任何类型的网络,比如举例来说,局域网(LAN)、虚拟网(比如虚拟局域网(VLAN))、广域网(WAN)、城域网(MAN)、全球微波接入互操作性(WIMAX)、蜂窝网络、互联网和/或实现为有线和/或无线网络的任何其他合适的网络。举例来说,网络105可以被实施为基于电气和电气工程师协会(IEEE)802.11标准的无线局域网(WLAN)(也被称为)。而且,网络105可以包括任何类型的网络的组合,比如举例来说,LAN或WLAN和互联网。在一些实施例中,客户端装置150可以经由可以类似于或不同于网络105的中间网络和/或替代网络(未示出)与主机装置110和网络105通信。就这一点而论,客户端装置150可以使用多种通信模式(例如,与上述网络中的任何一个相关联)来将数据发送到主机装置110和/或从主机装置110接收数据,数据可以使用公共网络发送到主机装置110,或者可以不使用公共网络发送到主机装置110。例如,客户端装置150可以是经由蜂窝网络和互联网(例如,网络105)连接到主机装置110的移动电话(例如,智能电话)。

在一些情况下,网络可以促进例如对等联网会话等。在这样的情况下,对等联网会话可以包括例如客户端装置和/或任何其他合适的电子装置,其中每个均共享共有特性。例如,在一些情况下,对等联网会话可以包括在地点、事件、场地等的预定接近度内的任何合适的客户端装置(例如,登记在数据库140中的电子装置等)。例如,在一些情况下,这样的对等联网会话可以包括场地处(例如,体育赛事中)存在的任何数量的登记的客户端装置。在一些情况下,对等联网会话可以基于与用户和/或客户端装置相关联的上下文数据自动建立。在其他情况下,对等联网会话可以基于一个或多个用户“签到”和/或以其他方式公布他或她存在于场地等处(例如,“大声说出”用户的存在)来自动建立。在一些情况下,用户可以在用户到达事件等(例如,体育赛事、音乐会、婚礼、生日派对、集会等)时、在登记时、在捕获图像或视频流时、和/或在类似时候“签到”。此外,“签到”可以包括标识信息,比如举例来说,地理地点数据、日期和时间数据、个人或用户标识数据等。在一些实施方式中,用户还可以经由他们的客户端装置150上的应用来搜索其上下文视频流数据已经被捕获的事件和/或地点。用户可以向从搜索返回的事件和/或地点“签到”。如本文所描述的,向事件和/或地点签到可以发起对与该事件和/或地点相关联的上下文视频流数据的处理,例如以确定用户是否可以与上下文视频流数据匹配。

在其他情况下,用户可以手动地建立包括例如预定的一组或一群用户的对等联网会话。在一些情况下,这样的对等联网会话可以是公共网络、私有网络和/或以其他方式受限的接入网络。例如,在一些情况下,用户可以请求加入联网会话,和/或可以接收加入联网会话的邀请,等等。在一些情况下,建立对等联网会话可以例如促进通信(例如,群组聊天会话等)和/或对等联网会话中包括的用户之间的图像和/或视频数据的共享。

主机装置110可以是被配置为将数据发送到数据库140、客户端装置150和/或图像捕获系统160和/或从数据库140、客户端装置150和/或图像捕获系统160接收数据的任何合适的装置。在一些实施例中,主机装置110可以用作例如服务器装置(例如,网络服务器装置)、网络管理装置、管理员装置等。在一些实施例中,主机装置110可以是一起容纳在同一个刀片、机架和/或设施中或上的或者分布在多个刀片、机架和/或设施中或上的一组服务器或装置。主机装置110至少包括存储器115、处理器120和通信接口125(参见例如图2)。在一些实施例中,存储器115、处理器120和通信接口125是连接的和/或电耦合的以使得信号可以在存储器115、处理器120和通信接口125之间发送。主机装置110还可以包括数据库140和/或可以以其它方式可操作地耦合到数据库140,数据库140被配置为存储用户数据、面部识别数据、上下文数据(例如,与时间、地点、场地、事件等相关联)、视频流等。

存储器115可以例如是RAM、存储器缓冲器、硬盘驱动器、数据库、ROM、EPROM、EEPROM等。在一些情况下,主机装置110的存储器115包括用于执行一个或多个面部识别动作和/或用于使用一种或多种合适的通信模式与至少一个装置(例如,客户端装置150)传送(例如,发送和/或接收)数据的指令集或代码。处理器120可以是任何合适的处理器,比如举例来说,GPP、CPU、APU、GPU、网络处理器、前端处理器、ASIC、FPGA等。因此,处理器120可以被配置为执行和/或运行存储在存储器115中的指令集、模块和/或代码。例如,如本文进一步描述的,处理器120可以被配置为执行与尤其是以下处理相关联的指令集和/或模块:接收面部识别数据(例如,从客户端装置150),对面部识别数据进行分析,登记和/或存储面部识别数据,接收视频流数据(例如,从图像捕获系统160),对视频流数据进行分析并且将视频流数据与面部识别数据进行比较,发送视频流数据(例如,发送到客户端装置150),接收和/或分析视频流数据的特性(例如,基于比如视频流数据中包括的背景地标和/或背景风景数据确定的地点信息、等等)、和/或任何其他合适的处理。通信接口125可以是可以使主机装置110与数据库140、客户端装置150、图像捕获装置160和/或与网络105通信的任何其他合适的装置和/或服务(例如,被配置为采集和/或至少暂时地存储数据(比如面部识别数据、视频流等)的任何装置)通信的任何合适的装置。在一些实施例中,通信接口125可以包括一个或多个有线和/或无线接口,比如举例来说,网络接口卡(NIC)、以太网接口、光学载体(OC)接口、异步传输模式(ATM)接口、和/或无线接口(例如,无线电、无线电、NFC无线电等)。

返回到图1A,与主机装置110相关联的数据库140可以是任何合适的数据库,比如举例来说,关系数据库、对象数据库、对象-关系数据库、分层数据库、网络数据库、实体-关系数据、结构化查询语言(SQL)数据库、可扩展标记语言(XML)数据库、数字知识库、媒体库、云服务器或储存器等。在一些实施例中,主机装置110可以经由通信接口125、通过任何合适的网络(例如,网络105)与数据库140通信。在这样的实施例中,数据库140可以包括在网络附加存储(NAS)装置中或者由NAS装置存储,NAS装置可以通过网络105和/或(一个或多个)任何其他网络与主机装置110通信。在其他实施例中,数据库可以存储在主机装置110的存储器115中。在还有的其他的实施例中,数据可以经由电缆、总线、服务器机架等可操作地耦合到主机装置110。

数据库140可以存储和/或至少暂时性地保持与视频识别系统100相关联的数据。例如,在一些情况下,数据库140可以存储与用户简档、资源列表、面部识别数据、模式和/或方法、上下文数据(例如,与时间、地点、场地、事件等相关联)、视频流或其部分、地点信息(比如地标数据)等相关联的和/或以其他方式表示这些的数据。换句话说,数据库140可以存储与其面部图像数据已经被系统100登记的用户(例如,“登记的用户”)相关联的数据。在一些实施例中,数据库140可以是和/或可以包括关系数据库,在该关系数据库中,数据可以根据关系模型存储在例如表、矩阵、向量等中。举例来说,在一些情况下,主机装置110可以被配置为将从视频或图像源(例如,图像捕获系统160)接收的视频流数据和与视频流数据相关联的上下文数据存储在数据库140中。在一些情况下,如本文更详细地描述的,视频流数据和与其相关联的上下文数据可以共同定义上下文视频流等。在其他情况下,视频流数据可以在没有上下文数据等的情况下存储在数据库140中。

在一些实施方式中,用户简档可以是包括与用户访问视频流数据相关的信息的用户简档数据结构。例如,用户简档数据结构可以包括用户简档标识符、面部识别数据(例如,从用户的图像获得的可以用于使用户与来自上下文视频流数据的图像匹配的数据(例如,面部特性数据))、与存储在数据库140中的上下文视频流数据结构相关联并且与用户相关联的标识符的列表、与用户所关联的其他用户(例如,作为朋友和/或联系人)的用户简档数据结构相关联的标识符的列表、等等。

在一些实施方式中,用户可以将彼此作为朋友添加在他们通过其访问上下文视频流数据的应用内。用户也可以自动地彼此关联,例如,当与第一用户简档相关联的用户是与第二用户简档相关联的另一个用户的联系人时。例如,操作客户端装置的用户可以具有存储在该客户端装置处的联系人列表和/或其他联系人信息。应用可以检索并导入联系人信息,可以使联系人信息与数据库中的至少一个用户简档中的信息匹配,并且可以自动地将所述至少一个用户简档与该用户相关联。在一些实施方式中,用户可以通过将朋友和/或联系人列表(例如,将被作为特定用户的朋友添加的用户简档的标识符的列表)存储在每个用户的每个用户简档内来彼此关联。当用户添加朋友和/或联系人时,用户可以自动地被通知该朋友和/或联系人何时记录和/或接收上下文视频流数据等。在一些实施方式中,主机装置110也可以使用用户之间的所存关系来自动地对与用户相关联的上下文视频流数据进行处理(例如,以确定用户的朋友和/或联系人是否可以在上下文视频流数据内找到)。例如,当上下文视频流数据被接收到时,当朋友和/或联系人与用户相关联时,和/或在类似时候,主机装置110可以自动地对上下文视频流数据进行处理以确定与用户的朋友和/或联系人相关联的面部图像数据是否与上下文视频流数据匹配。

尽管主机装置110参照图1被示出和描述为包括数据库140和/或以其他方式可操作地耦合到数据库140(例如,单个数据库),但是在一些实施例中,主机装置110可以可操作地耦合到任何数量的数据库。这样的数据库可以被配置为存储与系统100相关联的数据集合的至少一部分。例如,在一些实施例中,主机装置110可以可操作地耦合到第一数据库和第二数据库和/或以其他方式与第一数据库和第二数据库通信,第一数据库被配置为接收并至少暂时性地存储用户数据、用户简档等,第二数据库被配置为存储并至少暂时性地存储视频流数据和与该视频流数据相关联的上下文数据。在一些实施例中,主机装置110可以可操作地耦合到存储在客户端装置150和/或图像捕获系统160中或上的数据库和/或以其他方式与该数据库通信。换句话说,数据库的至少一部分可以在客户端装置150和/或图像捕获系统160中实施和/或由客户端装置150和/或图像捕获系统160存储。以这种方式,主机装置110,在一些情况下,还有数据库140,可以在与主机装置110(例如,经由网络105)通信的同时与可以物理地设置在与主机装置110不同的地点中的任何数量的数据库通信。

在一些实施例中,数据库140可以是可搜索数据库和/或知识库。例如,在一些情况下,数据库140可以存储与用户相关联的视频流数据(例如,上下文视频流数据)。在一些情况下,用户可以搜索数据库140来检索和/或查看存储在数据库140中的与用户相关联的一个或多个上下文视频流。在一些情况下,用户可以具有有限的访问权和/或特权来更新、编辑、删除和/或添加与他或她的用户简档相关联的视频流(例如,用户特定的上下文视频流等)。在一些情况下,用户可以例如更新和/或修改与该用户所关联的用户特定的视频流相关联的许可和/或访问权。例如,在一些情况下,用户可以重新分布、共享和/或保存与该用户相关联的数据。在其他情况下,用户可以阻止对用户特定的数据等的访问。在一些情况下,用户可以重新分布和/或共享以其他方式与该用户共享的(例如,可以与该用户相关联的或者可以不与该用户相关联的)内容、数据和/或视频流。

返回到图2,如上所述,主机装置110的处理器120可以被配置为执行特定的模块。模块可以例如是硬件模块、存储在存储器115中和/或在处理器120中执行的软件模块、和/或它们的任何组合。例如,如图2所示,处理器120包括和/或执行分析模块121、数据库模块122、呈现模块123和定位模块124。如图2所示,分析模块121、数据库模块122、呈现模块123和定位模块可以是连接的和/或电耦合的。就这一点而论,信号可以在分析模块121、数据库模块122、呈现模块123和定位模块124之间发送。

分析模块121包括可以由处理器120(或其部分)执行的指令集,该指令集关联于接收和/或收集与用户的面部识别和/或视频流相关联的数据。更具体地说,分析模块121可以可操作地耦合到通信接口125和/或以其他方式与通信接口125通信,并且可以从其接收数据。这样的数据可以例如与用户相关联(例如,面部识别信息、简档信息、偏好、活动日志、地点信息、联系人信息、日历信息、社交媒体活动信息等)、与场地相关联(例如,地点数据、资源数据、事件日程)、与事件相关联等。如本文更详细地描述的,分析模块121可以从通信接口125接收与用于执行和/或运行关联于面部识别的任何数量的处理的指令和/或请求相关联的信号。

在一些情况下,分析模块121可以基本上实时地从通信接口125接收数据。也就是说,在一些情况下,系统100中包括的电子装置(例如,客户端装置150)可以被用户操纵来定义和/或更新与用户的面部识别相关联的数据,并且一旦被定义和/或被更新,就可以经由网络105将数据发送到主机装置110。因此,通信接口125可以在接收到数据时将信号发送到分析模块121,分析模块121在电子装置进行定义和/或更新之后的非常短的时间段内接收数据。在其他实施例中,分析模块121可以基于例如聚合过程、当前的和/或预测的处理器、存储器和/或网络负载等以预定的速率等从通信接口125接收数据。

如上所述,分析模块121可以被配置为接收、聚合、分析、整理、解析、改变和/或更新与面部识别过程等相关联的数据。更具体地说,在一些情况下,用户可以操纵客户端装置150来捕获他或她的面部的一个或多个图像或视频流(如本文更详细描述的那样),并且继而,可以将与图像数据相关联的和/或表示图像数据的信号发送到主机装置110,例如,经由网络105发送。在一些情况下,通信接口125可以接收图像数据,并且可以将相关联的信号发送到分析模块121。在接收时,分析模块121可以执行与聚合、分析、整理、更新、解析和/或以其他方式处理图像数据相关联的指令集或代码(例如,存储在分析模块121中和/或存储器115中)。更具体地说,分析模块121可以执行任何合适的面部识别过程和/或算法,比如举例来说,使用特征脸(例如,与面部识别相关联的特征向量)的主成分分析、线性判别分析、使用费舍脸算法的弹性束图匹配、隐马尔可夫模型、使用张量表示的多线性子空间学习、神经元激励的动态链接匹配、卷积神经网(CNN)等或它们的组合。在一些实施方式中,可以在后面的面部识别过程中使用用户提供给主机装置110的图像数据来经由分析模块121标识用户。

分析模块121可以定义包括用户的图像数据以及与用户相关联的任何其他合适的信息或数据的用户简档等,与用户相关联的任何其他合适的信息或数据比如举例来说图片、视频记录和/或音频记录、个人和/或标识信息(例如,姓名、年龄、性别、生日、爱好等)、日历信息、联系人信息(例如,与用户和/或用户的朋友、家庭、同事等相关联)、装置信息(例如,介质访问控制(MAC)地址、互联网协议(IP)地址等)、地点信息(例如,当前地点数据和/或历史地点数据)、社交媒体信息(例如,简档信息、用户名、密码、朋友或联系人列表等)、和/或任何其他合适的信息或数据。就这一点而论,如本文更详细地描述的,分析模块121可以将指示用于将用户简档数据存储在数据库140中的指令的信号发送到数据库模块122。

在一些情况下,分析模块121可以接收视频流数据(或图像数据,例如从相片接收),并且可以被配置为对视频流数据进行分析和/或处理以确定视频流数据的一部分是否与用户的图像数据的任何合适的部分匹配。也就是说,分析模块121可以使用先前存储的用户图像数据作为与视频流中包括的数据进行比较的模板。换句话说,分析模块121至少部分地基于先前存储的用户图像数据来对视频流数据执行面部识别过程和/或分析。在一些实施例中,主机装置110,更具体地说是通信接口125,要么直接地(例如,经由网络105从一个或多个照相机)、要么间接地(例如,经由网络105从计算装置,该计算装置继而与一个或多个照相机通信)从图像捕获系统160接收视频流数据。在一些实施例中,分析模块121可以被配置为至少部分地基于将视频流数据划分、解析、整理和/或以其他方式解构为其单个的帧(例如,视频流期间预定时间处的静态图像)来对视频流数据进行分析和/或处理。就这一点而论,分析模块121可以相对于先前存储的用户图像数据来比较和/或分析视频流帧中包括的数据。

在一些情况下,分析模块121还可以对视频流数据进行分析以确定与视频流相关联的上下文信息,比如举例来说,地点、场地、时间、同时发生的事件(例如,在“亲吻镜头”上正捕获到运动队进球、等等)、和/或任何其他合适的上下文信息。在一些情况下,分析模块121可以被配置为将视频流的至少一部分与上下文数据匹配、聚合和/或以其他方式关联。例如,在一些情况下,视频流数据可以表示例如体育赛事中的用户。在这样的情况下,上下文数据可以例如是体育赛事或游戏的视频流,并且可以包括与时间、地点、场地、团队等相关联的数据。就这一点而论,分析模块121可以被配置为聚合视频流数据和上下文数据以使得视频流数据和上下文数据基本上是一致的(例如,出现和/或捕获与基本上相同的时间相关联的数据)。在其他情况下,上下文数据可以包括与任何其他合适的上下文相关联的数据。在一些情况下,分析模块121可以被配置为使用与视频流相关联的上下文信息以及与用户的地点相关的数据来进一步将视频流连接到特定用户。分析模块121可以被配置为在将视频流中包括的数据与先前存储的用户图像数据进行比较之前将上下文信息与用户的地点进行比较(更多详情参见图5和图6)。

如果分析模块121确定视频流中的数据的至少一部分满足准则(例如,与先前存储的用户图像数据的匹配达到预定的和/或可接受的概率),则分析模块121可以将指示如下指令的一个或多个信号发送到数据库模块122:将图像和/或视频流的至少一部分存储在数据库140中,并且将该数据与先前存储的用户图像数据相关联和/或以其他方式将该数据与先前存储的用户图像数据一起存储。在一些情况下,分析模块121可以将使得单个的帧存储在数据库140中的信号发送到数据库模块122,数据库140继而可以随后被检索并且被处理以定义视频流。在其他情况下,分析模块121可以将使得视频流数据的部分存储在数据库140中的一个或多个信号发送到数据库模块122。也就是说,分析模块121可以根据单个的帧(这些帧是如上所述那样划分或解构的)至少部分地重新定义和/或重构视频流。

在一些情况下,主机装置110可以接收视频流数据(例如,经由网络105和通信接口125从图像捕获系统160接收),并且分析模块121和/或图2中未示出的任何其他合适的模块可以在执行面部识别过程(刚刚描述过)之前执行一个或多个预处理和/或预整理进程。例如,在一些实施例中,分析模块121(或其他模块)可以对视频流数据进行分析以确定和/或定义数据集合,该数据集合包括例如标识信息和/或上下文信息,比如地点、时间、事件等。一旦被定义,分析模块121就可以对存储在数据库140中的用户数据进行分析(例如,经由将指示查询数据库140等的指令的信号发送到数据库模块122)以确定与用户相关联的数据的一部分是否满足准则,比如与包括与视频流相关联的上下文信息的数据集合匹配。

在一些情况下,准则可以与以任何合适的方式(例如,比如小数、百分比等的值)表示的置信水平和/或匹配阈值相关联。例如,在一些情况下,准则可以是比如以下的阈值等:视频流数据与存储在数据库中的数据的至少一部分的70%匹配、视频流数据与存储在数据库中的数据的至少一部分的75%匹配、视频流数据与存储在数据库中的数据的至少一部分的80%匹配、视频流数据与存储在数据库中的数据的至少一部分的85%匹配、视频流数据与存储在数据库中的数据的至少一部分的90%匹配、视频流数据与存储在数据库中的数据的至少一部分的95%匹配、视频流数据与存储在数据库中的数据的至少一部分的97.5%匹配、视频流数据与存储在数据库中的数据的至少一部分的99%匹配、或之间的任何百分比。

在一些情况下,与用户相关联的数据可以包括例如日历数据、地点数据、偏好数据等。如果例如该数据不满足准则,则分析模块121可以定义与该用户相关联的数据可以从例如面部识别过程排除的指示。以这种方式,预处理和/或预整理可以减小面部识别过程期间的处理负荷量等。尽管在上面被描述为在数据库140中查询用户数据,但是在一些实施例中,主机装置110可以将如下信号发送到与用户相关联的装置(例如,客户端装置150),该信号指示对于与该装置相关联的地点数据等的请求。当接收到地点数据(例如,装置的全球定位服务(GPS)数据,使用图像或视频内的地点信息和/或特性,比如地标和/或背景场景,等等)等时,分析模块121可以如上所述那样确定地点数据是否与和视频流相关联的地点数据匹配。

举例来说,在一些情况下,分析模块121可以从体育赛事接收视频流数据,该视频流数据还包括与例如场所相关联的地点数据。作为响应,分析模块121可以从与用户相关联的客户端装置(例如,客户端装置150)发送对于地点数据的请求。如果例如与视频流相关联的地点数据和与客户端装置相关联的地点数据基本上是类似的(例如,与视频流相关联的地点数据和与客户端装置相关联的地点数据指示视频流的源和客户端装置在和/或已经在彼此的预定距离内)和/或与客户端装置相关联的地点数据在地点数据值等的预定范围内,则分析模块121可以提高置信得分和/或否则认为结果有助于满足阈值和/或以其他方式满足准则。地点数据可以例如是基于GPS的地理地点数据、网络地点和/或数据(例如,经由NFC验证、蓝牙验证、蜂窝三角剖分、认知网络交换和/或协议等)、社交网络数据(比如“签到”)等。例如,定位模块124可以对地点数据进行处理以便标识视频流和/或用户的地点并且将数据提供给分析模块121以便使得分析模块121可以修改置信得分。以这种方式,可以基于地点数据来计算置信得分。

在其他实施方式中,定位模块124可以对地点数据进行处理,并且当与视频流相关联的地点数据和与用户相关联的地点数据基本上类似(例如,与视频流相关联的地点数据和与用户相关联的地点数据指示视频流的源和客户端装置在和/或已经在彼此的预定距离内)时,可以将经处理的地点数据提供给分析模块121。分析模块121然后可以基于地点数据和视频流的面部识别分析来产生和/或修改置信得分。以这种方式,当与视频流相关联的地点数据和与用户相关联的地点数据被确定为基本上类似时,可以产生和/或修改置信得分,并且当与视频流相关联的地点数据和与用户相关联的地点数据不是基本上类似时,可以不产生和/或修改置信得分。此外,以这种方式,可以作为地点数据分析和面部识别分析这二者的结果来计算置信得分。关于定位模块124的更多详情可以至少在图5-6中找到。以这种方式,主机装置110(例如,经由分析模块121)可以确定例如客户端装置到视频流数据被捕获的地点的接近度。

尽管被描述为分析地点数据,但是在其他情况下,分析模块121可以对与任何合适的源、活动、地点、模式、购买等相关联的数据进行分析。例如,在一些情况下,分析模块121可以对与场地相关联的售票进行分析。在其他情况下,分析模块121可以对社交媒体帖子、评论、点赞等进行分析。在一些情况下,分析模块121可以收集和/或分析与用户相关联的数据(如上所述),并且可以定义例如用户简档,该用户简档可以包括尤其是用户标识数据、面部识别数据、客户端装置数据、购买数据、互联网网络浏览数据、地点数据、社交媒体数据、偏好数据等。因此,可以对用户的简档数据进行分析来确定置信得分、值和/或指示符,该置信得分、值和/或指示符可以被相对于阈值得分、值和/或指示符评估以确定用户数据和/或视频流数据是否满足准则。因此,在这样的实施例中,非面部识别数据(例如,售票数据、社交媒体帖子、和/或比如视频或图像中的个人的衣柜的特性、地点数据(比如图像内的地标)、背景风景数据等)可以用于确证面部识别数据和/或提高/降低置信得分。

尽管分析模块121在上面被描述为对视频流数据进行分析以定义与视频流相关联的面部识别数据和上下文数据,但是在其他实施例中,可以单独地和/或独立地执行面部识别过程和上下文数据过程。例如,在一些实施例中,分析模块121可以被配置为执行面部识别过程,而不同的模块、处理器、装置、服务器等可以被配置为执行上下文数据过程。例如,定位模块124可以基于地点数据、图像的特性等来执行图像和/或视频流的分析。因此,当与由同一个模块执行面部识别过程和上下文数据过程相比时,可以缩短分析视频流的时间,和/或可以分布处理负荷。

如上所述,数据库模块122包括由处理器120(或其部分)执行的与监视数据库140和/或更新存储于其中的数据相关联的指令集。例如,数据库模块122可以包括使处理器120用从分析模块121接收的面部识别数据的至少一部分更新存储在数据库140中的数据的指令。更具体地说,数据库模块122可以从分析模块121接收例如与用户相关联的用户图像数据,并且作为响应,可以将用户图像数据存储在数据库140中。在一些情况下,如上所述,数据库模块122可以从分析模块121接收指示查询数据库140的请求的信号以确定存储在数据库140中的与用户的用户图像数据相关联的数据是否与视频流数据的任何合适部分匹配。如果例如视频流数据的至少一部分满足准则(此后为简单起见被称为“准则”,并且不排除多个“准则”),则数据库模块122可以被配置为更新存储在数据库140中的与该用户相关联的数据。也就是说,如果视频流数据的至少一部分在预定概率等内与用户图像数据匹配。然而,如果视频流数据与存储在数据库140中的用户图像数据不匹配,则数据库模块122可以例如在数据库140中查询下一个条目(例如,与下一个用户相关联的数据),和/或可以要不然不更新数据库140。而且,数据库模块122可以被配置为将数据以基于关系的方式(例如,数据库140可以是关系数据库等)和/或以任何其他合适的方式存储在数据库140中。

如上所述,呈现模块123包括由处理器(或其部分)执行的与定义上下文视频流和/或呈现相关联的指令集,该呈现表示在面部识别过程期间满足准则的视频流数据的至少一部分。更具体地说,呈现模块123可以被配置为定义上下文视频流和/或呈现,该呈现表示在事件中、在场地处、在地点处等标识的用户(例如,经由面部识别)。一旦上下文视频流被定义,呈现模块123就可以将与上下文视频流相关联的信号发送到通信接口125,通信接口125继而可以将指示在其显示器上图形化地渲染上下文视频流的指令的信号发送到客户端装置150(例如,经由网络105)。

尽管呈现模块123和/或主机装置110的其他部分在上面被描述为将指示在客户端装置150的显示器上呈现上下文视频流的指令的信号发送到客户端装置150,但是在其他情况下,呈现模块123可以定义上下文视频流,并且可以将指示将上下文视频流存储在数据库140中的指令的信号发送到数据库模块122。在这样的情况下,与上下文视频流相关联的数据可以存储在数据库140中,和/或以他方式与存储在在数据库140中的用户数据相关联。在一些情况下,主机装置110可以响应于来自客户端装置150(和/或任何其他合适的装置)的请求从数据库140检索上下文视频流。更具体地说,在一些实施例中,用户可以操纵客户端装置150来在互联网上访问网页。在被认证(例如,键入证书等)之后,用户可以与网页交互以使得对于访问上下文视频流的请求从客户端装置150发送到主机装置110。因此,主机装置110(例如,数据库模块122)可以从数据库140检索上下文视频流,并且可以将在显示器上呈现上下文视频流中可用的信号发送到客户端装置150(例如,通过经由互联网和网页渲染上下文视频流)。换句话说,上下文视频流可以存储在“云”中,并且经由网络浏览器和互联网访问。

尽管分析模块121、数据库模块122和呈现模块123在上面被描述为存储在主机装置110中和/或在主机装置110中执行,但是在其他实施例中,这些模块中的任何一个可以存储在例如客户端装置150和/或图像捕获系统160中和/或在例如客户端装置150和/或图像捕获系统160中执行。例如,在一些实施例中,客户端装置150可以包括、定义和/或存储呈现模块(例如,作为本机应用)。呈现模块与主机装置110的呈现模块123可以是基本上类似的或相同的。在这样的实施例中,客户端装置150的呈现模块可以取代否则包括在主机装置110中和/或在主机装置110中执行的呈现模块123的功能。因此,客户端装置150的呈现模块可以接收例如与上下文视频流相关联的数据集合,并且在接收时,可以定义将呈现在客户端装置150的显示器上的呈现。

图3是例示说明根据实施例的定义上下文视频流的方法300的流程图。方法300包括在302,在主机装置处经由网络从客户端装置接收指示登记与用户相关联的面部图像数据的请求的信号。例如,在一些实施例中,网络可以是任何合适的网络或网络组合,比如举例来说,上面参照图1描述的网络105。主机装置与上面参照图1和图2描述的主机装置110可以是基本上类似的或相同的。类似地,客户端装置与上面参照图1-2描述的客户端装置150可以是基本上类似的或相同的。在一些情况下,客户端装置可以被配置为捕获初始面部图像数据,并且可以将初始面部图像数据发送到主机装置。具体地说,在一些实施例中,客户端装置可以被配置为以任何合适的方式捕获用户的一个面部图像或多个面部图像。因此,主机装置可以从客户端装置接收面部图像数据,并且可以执行与登记用户和/或用户的面部图像数据相关联的任何合适的过程等。

方法300包括在304,登记与用户相关联的面部识别数据并且将面部识别数据存储在与主机装置通信的数据库中。数据库可以是任何合适的数据库,比如举例来说,上面参照图1描述的数据库140。面部识别数据的登记可以包括与面部识别相关联的任何合适的过程、方法和/或算法,比如上述那些。在一些情况下,主机装置可以被配置为基于面部识别来定义用户图像数据等,并且可以将用户图像数据的至少一部分存储在数据库中。

在306,主机装置接收与事件和/或地点相关联的上下文视频流数据。主机装置可以从图像捕获系统(比如上面参照图1描述的图像捕获系统160(例如,照相机和/或客户端装置))接收上下文视频流数据。更具体地说,主机装置可以直接地(例如,经由网络从一个或多个照相机)或间接地(例如,经由网络从计算装置,该计算装置继而与一个或多个照相机通信)接收上下文视频流数据。

在一个例子中,照相机可以记录上下文视频流数据,并且可以将上下文视频流数据发送到主机装置。在另一个例子中,用户可以通过在客户端装置上运行的正被用户操作的应用来记录视频(例如,经由在客户端装置上运行的应用内的用户产生内容(UGC)界面)。通过经由应用发起记录(例如,通过点击UGC界面中的“记录”和/或类似按钮),用户可以记录上下文视频流,客户端装置可以将地点数据(例如,地理地点、来自近场通信(NFC)的数据、来自与其他装置的蓝牙通信的数据、蜂窝三角剖分、事件和/或地点签到数据、和/或网络Wi-Fi连接信息)与该上下文视频流相关联。具体地说,上下文视频流可以用地点数据标记,和/或可以与封装地点数据的数据结构相关联。

在308,对上下文视频流数据进行分析以确定上下文视频流数据是否满足与上下文视频流数据中的面部图像数据的面部识别相关联的准则。例如,主机装置可以接收上下文视频流数据(或图像数据,例如从相片接收),并且可以对上下文视频流数据进行分析和/或处理以确定上下文视频流数据的一部分是否与面部图像数据的任何合适的部分匹配。也就是说,主机装置可以使用面部图像数据作为与上下文视频流中包括的数据进行比较的模板。换句话说,主机装置至少部分地基于面部图像数据来对上下文视频流执行面部识别过程和/或分析。在一些情况下,准则可以例如与上下文视频流数据和面部图像数据的匹配达到预定的和/或可接受的概率相关联。在一些实施例中,主机装置可以被配置为至少部分地基于将上下文视频流数据划分、解析、整理和/或以其他方式解构为其单个的帧(例如,视频流期间的预定时间处的静态图像)来对上下文视频流数据进行分析和/或处理。就这一点而论,主机装置可以相对于面部图像数据来比较和/或分析上下文视频流帧中包括的数据。

在一些情况下,上下文视频流数据的分析还包括对上下文视频流数据进行分析以确定与视频流相关联的上下文信息,比如举例来说,地点、场地、时间、同时发生的事件(例如,在“亲吻镜头”上正捕获到运动队进球、等等)、图像内的地标、和/或任何其他合适的上下文信息。在一些情况下,主机装置可以被配置为匹配、聚合视频流的至少一部分和/或以其他方式将视频流的至少一部分与上下文数据相关联。例如,在一些情况下,视频流数据可以表示例如体育赛事中的用户。在这样的情况下,上下文数据可以例如是体育赛事或游戏的视频流,并且可以包括与时间、地点、场地、团队等相关联的数据。就这一点而论,主机装置可以被配置为聚合视频流数据和上下文数据以使得视频流数据和上下文数据基本上是一致的(例如,出现和/或捕获与基本上相同的时间相关联的数据)。在其他情况下,上下文数据可以包括与任何其他合适的上下文相关联的数据。

在310,当满足与上下文视频流数据中的面部图像数据的面部识别相关联的准则时,定义用户的上下文视频流。例如,当主机装置确定上下文视频流中的数据的至少一部分满足准则(例如,与面部图像数据的匹配达到预定的和/或可接受的概率)时,主机装置可以定义用户的上下文视频流,并且可以将用户的上下文视频流存储在数据库中。在用户的上下文视频流被定义的情况下,在312,主机装置发送指示在客户端装置的显示器上呈现用户的上下文视频流的指令的信号(例如,通过在客户端装置上实例化的界面中图形化地渲染上下文视频流)。例如,在一些实施例中,主机装置可以经由网络将在客户端装置的显示器上呈现用户的上下文视频流中可用的信号发送到客户端装置。在其他实施例中,主机装置可以存储上下文视频流(例如,存储在数据库等中),并且可以被配置为响应于来自客户端装置(和/或任何其他合适的装置)的请求从数据库检索用户的上下文视频流。更具体地说,在一些实施例中,用户可以操纵客户端装置来在互联网上访问网页。在被认证(例如,键入证书等)之后,用户可以与网页交互以使得对于访问上下文视频流的请求从客户端装置发送到主机装置。因此,主机装置可以从数据库检索上下文视频流,并且可以将在显示器上呈现上下文视频流中可用的信号发送到客户端装置(例如,通过经由互联网和网页图形化地渲染上下文视频流)。换句话说,上下文视频流可以存储在“云”中,并且经由网络浏览器和互联网访问。

在其他实施方式中,当上下文视频流满足准则时(例如,当上下文视频流与用户的面部图像数据的匹配达到预定概率时,和/或类似时候),主机装置可以自动地将上下文视频流数据发送给用户。例如,在一些实施方式中,用户还可以操作客户端装置,使正在跟踪该用户的用户地点数据的应用实例化。当图像捕获装置(例如,比如自主照相机和/或另一个用户)记录上下文视频流数据时,主机装置可以基于上下文视频流的面部分析和与用户相关联的面部图像数据来确定上下文视频流与用户匹配。用户的客户端装置还可以将与用户和客户端装置相关联的地点数据发送到主机装置。主机装置可以使用面部分析和地点信息这二者来改善用户出现在上下文视频流中的概率。如果用户出现在上下文视频流中的概率满足准则(例如,超过预定阈值、等等),则主机装置可以将上下文视频流数据发送给用户。可替代地,主机装置可以基于地点信息来对上下文视频流进行预滤波,以使得当用户的地点信息与上下文视频流的地点信息基本上类似时计算概率,并且当上下文视频流的地点数据与用户的地点信息不是基本上类似时不计算概率。

在其他实施方式中,当上下文视频流满足准则时(例如,当上下文视频流与用户的面部图像数据的匹配达到预定概率时,和/或类似时候),主机装置可以存储上下文视频流数据,并且基于用户与视频的交互来将上下文视频流数据与用户相关联。例如,在一些实施方式中,用户可以访问与该用户相关联的客户端装置上实例化的应用,以搜索和/或访问上下文视频流数据。用户可以例如查看与该用户相关联的另一个用户的用户简档内的上下文视频流数据,和/或可以搜索上下文视频流数据以在应用的界面内查看。当用户在应用内访问上下文视频流数据时,应用可以将指示用户正在访问上下文视频流数据的信号发送到主机装置。主机装置可以基于与该用户相关联的面部图像数据来自动地确定上下文视频流数据的面部分析是否已经被执行,并且可以基于用户的面部图像数据来自动地执行上下文视频流数据的面部分析,如果用户的面部图像数据先前尚未被与上下文视频流数据进行比较的话。以这种方式,主机装置可以延迟对上下文视频流数据进行处理以标识上下文视频流数据内的用户,直到用户尝试访问上下文视频流数据为止。

在一些情况下,用户可以搜索事件并且在事件之后向该事件“签到”。例如,用户可以标识事件(例如,通过查看事件列表,通过查看地图上事件的地点,等等),并且可以选择事件。基于事件的用户选择,主机装置可以基于该用户的面部图像数据来执行与该事件相关联的视频流和/或图像的面部分析。如果主机装置标识包括用户的视频流和/或图像(例如,以预定的概率),则主机装置可以将这样的视频流和/或图像提供给用户。

虽然方法300在上面被描述为发送和/或接收视频流、图像数据、上下文数据等并且呈现和/或与一个或多个用户共享用户特定的视频流和/或图像数据,但是应理解,系统可以被布置为使得视频流数据和/或图像数据可以以任何合适的方式捕获、由任何合适的装置分析、并且发送到任何合适的用户或用户装置和/或与任何合适的用户或用户装置共享。举例来说,在一些情况下,用户可以操纵用户装置(例如,客户端装置,比如客户端装置150)来捕获用户的面部图像。例如,用户可以打开移动应用(例如,当用户或客户端装置是智能电话或其他移动或可穿戴电子装置时),并且可以经由客户端装置的照相机捕获面部图像(例如,“自拍”)。换句话说,用户可以经由应用来控制客户端装置的照相机以捕获自拍。可以提供这样的自拍来登记用户,以使得应用可以标识该用户的面部识别数据(例如,面部特征特性)。该面部识别数据可以用于在随后接收的视频和/或图像中标识该用户。

在一些情况下,用户可以经由应用来捕获内容(例如,图像数据和/或视频流)。如上所述,内容可以是给定上下文下的一个或多个人(比如举例来说,体育赛事中的一个或多个人、等等)的视频流。在一些情况下,用户捕获的(例如,产生的)内容可以与上下文数据(比如时间、日期、地点、场地、事件等)相关联,和/或可以要不然用数据和/或元数据标记。在其他情况下,用户产生的内容无需与上下文数据相关联。可以经由通过客户端装置或主机装置的面部识别和/或其他图像分析来对用户产生的内容(例如,视频流数据等)进行分析以确定任何登记的用户(例如,具有存储在数据库中的用户简档的任何用户)的存在。如果登记的用户在视频流中被标识,则用户、客户端装置和/或主机装置可以定义与标识的用户中的一个或多个相关联的用户特定的视频流。用户、客户端装置和/或主机装置然后可以确定是否与每个标识的用户共享用户特定的视频流。在一些情况下,用户特定的(一个或多个)视频流的共享可以基于用户简档和/或偏好和/或基于移动应用或账户内的设置等自动进行。在其他情况下,用户特定的(一个或多个)视频流的共享可以基于来自用户的手动或其他输入(例如,基于选择等)。在还有的其他的情况下,用户特定的(一个或多个)视频流的共享可以基于对等联网会话,在对等联网会话中,每个用户(或对等联网会话中所用的每个客户端装置)接收用户特定的视频流。以这种方式,用户产生的内容(例如,用户捕获的视频流和/或图像数据)可以以与本文所描述的那些类似的方式捕获、分析和/或共享。

图4是例示说明根据实施例的向例如与用户相关联的移动装置呈现上下文视频流的方法的流程图。在一些情况下,(一个或多个)视频文件和/或(一个或多个)相片文件可以被上传到媒体上传器485。媒体上传器485可以是被配置为接收和/或处理视频和/或图像文件的任何合适的装置,比如举例来说,上面参照图1A、图1B和图2描述的主机装置110。主视频和/或相片文件然后被存储在主媒体储存器486中。主媒体储存器486可以是任何合适的存储装置。例如,主媒体储存器486可以包括在媒体上传器485中和/或是媒体上传器485中包括的存储器的一部分。在其他实施例中,主媒体储存器486可以是数据库等,比如举例来说,上面参照图1A和图1B描述的数据库140。

在一些情况下,主视频文件可以从主媒体储存器486发送到视频编码器487。视频编码器487可以是被配置为将主视频文件转换为一个或多个期望格式的任何合适的装置或装置部分。例如,如图4所示,视频编码器487可以将主视频文件转换为面部识别视频和移动兼容的视频文件,其中每个均存储在主媒体储存器486中。如本文更详细地描述的,一个或多个面部识别视频文件和/或相片文件的列表然后被发送到工作流引导器488,工作流引导器488可以按优先次序排列、组织和/或以其他方式控制文件随后被处理的次序,并且可以将在发起(一个或多个)面部识别视频文件和/或(一个或多个)相片文件的处理中可用的信号发送到面部检测和匹配处理器491(例如,处理器、模块、装置等,比如举例来说,上面参照图2描述的分析模块121)。另外,如本文更详细地描述的,与工作流相关联的指示可以从工作流引导器488发送到数据库493,数据库493可以存储与工作流相关联的指示,并且可以将与该指示相关联的数据发送到网络服务处理器494(例如,互联网网站服务提供商、处理器、模块和/或装置)。

如图4所示,如本文更详细地描述的,移动兼容的视频文件从主媒体储存器486发送到视频片段剪切器489,视频片段剪切器489还可以接收与识别事件相关联的数据。如本文更详细地描述的,主视频文件或相片文件从主媒体储存器486发送到缩略图大小重调器490,缩略图大小重调器490还可以接收与识别事件相关联的数据。面部识别视频或相片文件(一个或多个文件)从主媒体储存器486发送到面部检测和匹配处理器491,面部检测和匹配处理器491继而可以执行任何合适的面部识别过程来定义识别事件。而且,面部检测和匹配处理器491可以根据工作流引导器488定义的优先权和/或次序来对面部识别视频和/或相片文件进行分析和/或处理。

如上所述,与识别事件相关联的数据然后可以从面部检测和匹配处理器491发送到视频片段剪切器489和缩略图大小重调器490。视频片段剪切器489可以是可以接收移动兼容的视频文件并且随后可以修剪、剪切、提取、划分和/或以其他方式定义面部识别视频和/或相片内的用户的识别事件所关联的视频片段的任何合适的处理器、模块和/或装置。与用户的识别事件相关联的视频片段然后可以从视频片段剪切器489发送到移动兼容媒体储存器492。缩略图大小重调器490可以是可以接收主视频和/或相片文件(一个或多个文件)并且随后可以定义一个或多个缩略图(例如,具有相对较小的文件大小的小图像,这些小图像又可以与更大的图像和/或视频相关联和/或指示更大的图像和/或视频)的任何合适的处理器、模块和/或装置。在该实施例中,缩略图可以与识别事件相关联和/或指示识别事件,并且可以从缩略图大小重调器490发送到移动兼容媒体储存器492。

如图4所示,视频片段和缩略图可以从移动兼容媒体储存器492发送到例如一个或多个移动应用和/或网站495。例如,在一些情况下,视频片段和缩略图可以发送到互联网服务器等,该互联网服务器继而可以在网站等上呈现视频片段和缩略图。在其他情况下,视频片段和缩略图可以发送到与用户相关联的客户端装置,该客户端装置继而可以在显示器上呈现视频片段和缩略图(例如,当移动应用被打开、被选择、运行等等时)。而且,与工作流(上面描述过)的指示相关联的元数据(例如,用户身份、事件的身份、事件的地点、客户端装置的地点等)等可以从网络服务处理器494发送到移动应用和/或网站495。以这种方式,用户的视频片段和与其相关联的任何上下文和/或元数据可以经由移动应用和/或网站发送给用户和/或被用户访问。

图5是根据实施例的捕获媒体中的上下文信息的图像捕获系统560(例如,类似于图1所示的图像捕获系统160)的例示说明。最初,图像捕获系统560可以捕获场地的图像和/或视频。图像捕获系统560可以标识场地的图像和/或视频内的特性,比如背景地标、墙壁、地板、设计元素、家具的独特特征等。图像捕获系统560可以将这些特性(在本文中也被称为地标数据和/或信息)发送到主机装置510,主机装置510可以存储该信息(例如,存储在数据库内)。主机装置510可以将该信息与场地的地点信息相关联地存储。类似地说,主机装置510可以存储地标信息以使得它与场地内的地标的地点相关联。

在一些实施方式(如在图1-4中所述)中,图像捕获系统560可以捕获包括用户502的媒体(例如,视频流、相片和/或其他媒体)。用户502可以使用包括移动应用的移动装置504,该移动应用被配置为将地点数据506(例如,全球定位系统(GPS)坐标、指示处于接入点的范围内的Wi-Fi信号、NFC信号信息、指示处于低功耗蓝牙(iBeacon)的范围内的蓝牙通信、蜂窝三角剖分信息、估计离内容捕获点的距离的认知网络交换和协议信息、与场地中的位置相关联的地点数据(比如座位号或座位区)、和/或类似的地点数据)发送到主机装置110,例如,当移动装置检测到与场地相关联的信号和/或Wi-Fi网络时。在一些实施方式中,移动应用可以被配置为与iBeacon(和/或被配置为将信息发送到其他装置的类似装置)进行交互,并且可以被配置为将地点数据发送到主机装置110(例如,比如iBeacon标识符、移动装置GPS数据和/或其他这样的信息)。

图像捕获系统160捕获的媒体508(例如,相片、视频和/或相关媒体文件)可以包括用户502的图像或视频以及建筑物、场地的特征、物体、背景地标和/或场景的背景510的其他方面。例如,媒体可以不仅包括用户502,而且还包括在体育场里挨着用户502的座位、媒体的背景中的与特定地点相关联的(例如,在场地内的)地标、标牌和/或其他这样的信息(例如,墙壁、地板、设计元素、家具的独特特征等)。主机装置110可以使用背景与用户的地点数据来进一步验证用户502有可能出现在媒体中。更具体地说,在一些情况下,主机装置510的分析模块(例如,类似于图2所示的分析模块121)可以对视频流执行图像处理,例如以从视频流提取风景和/或其他背景、非人数据(也被称为地标数据)。例如,分析模块可以使用图像处理技术来检测媒体中的座位号200。主机装置510的定位模块(例如,类似于图2所示的124)可以将提取的数据与数据库中的地点数据匹配(例如,通过使用元数据、关键字和/或先前存储的地点图像的图像处理)以估计视频流的地点。例如,定位模块可以使用座位号200来估计用户502在媒体中出现所坐的座位514,并且可以基于场地内座位的地点来确定媒体被捕获的近似地点。另举一例,定位模块可以将视频流中的地标数据与主机装置510先前捕获并存储的图像和/或视频进行比较。因为地点和主机装置510存储的地标数据之间的关联,主机装置510可以标识视频流的地点。

在一些情况下,用户还可以向场地签到。具体地说,用户的移动装置可以发送包括用户的地点信息(例如,用户的移动装置的GPS坐标、NFC标签、蜂窝网络、Wi-Fi和/或其他网络、邻近移动装置的类似装置和/或iBeacon的标识符等等)的消息。定位模块可以将地点数据存储在用户的账户数据中。在定位模块已经确定视频流和用户的地点之后,定位模块可以将座位208与用户的移动装置提供的地点数据进行比较以确定用户502实际上坐在座位208上的可能性。例如,定位模块可以检索其最近的地点数据与媒体的估计地点紧密匹配(例如,其最近的地点数据在离媒体的估计地点预定米数内等)的用户的记录。对于检索的每个用户记录,分析模块可以对媒体执行面部识别(例如,通过使用用户的图像数据进行比较),以确定用户是否出现在媒体中。基于该信息,主机装置可以确定其图像可能已经在特定地点的媒体中被捕获的用户的列表,并且可以从该缩小的用户池确定媒体中的人和用户列表中的用户502中的任何一个之间的肯定匹配是否已经被做出。在一些情况下,然后可以对图像执行面部识别以标识缩小的用户池中的哪些用户(例如,被标识为在基于地标信息和/或用户装置地点信息的大体区域中的用户)在媒体中被标识。使用地标数据和用户装置地点信息缩小用户池减少了使用面部识别时的误判的数量。在一些实施方式中,主机装置可以使用面部识别分析和地点数据来确定是否将视频流存储在数据库中和/或丢弃(例如,删除和/或不存储)视频流。在其他实施方式中,不管视频流是否可以与特定用户匹配,主机装置都可以存储视频流。主机装置然后可以在用户装置地点与地标和/或其他地点数据组合使用以及在与用户相关联的面部识别数据与地标和/或其他地点数据组合使用以确定用户是否可以在视频流中被标识时将视频流与特定用户相关联。

图6是例示说明根据实施例的使用媒体中的上下文信息和地点数据来标识媒体中的用户的逻辑流程图。在一些实施方式中,例如,用户的移动装置504可以在602向场地和/或其他地点“签到”(例如,通过将地点数据和/或iBeacon标识符发送到主机装置110(图1中示出))。这可以向场地和/或与视频识别系统相关联的主机装置(例如,图1的主机装置110)提供用户在场地内和/或在事件中的指示。另外,这可以提供用户的地点在场地内和/或在事件中的指示。在一些实施方式中,移动装置504经由存储在该装置上的移动应用,可以被配置为周期性地将更新的GPS数据发送到主机装置110,和/或当移动装置504紧邻iBeacon、Wi-Fi热点和/或类似装置时,可以被提示将地点数据发送到主机装置110。主机装置110可以将地点数据存储604在数据库140中。

在一些实施方式中,不是用户的移动装置签到,而是场地处的售票和/或票务处理装置可以将指示用户已经在场地处购买了和/或使用了特定事件的票、票被购买和/或被兑换的时间等的消息发送到主机装置110。在其他实施方式中,可以例如基于用户的先前存储的地点数据、基于用户已经为特定场地处的事件买好的票等来推断用户的地点。

图像捕获系统160(在图1中示出)可以在606捕获媒体(例如,包括但不限于,记录录像和/或捕获至少一个相片),并且可以在608将该媒体发送到主机装置110(在图1中示出)。图像捕获系统160还可以将其地点数据(例如,图像捕获系统160的GPS坐标等)发送到主机装置110。主机装置110可以在610标识媒体中的地点(例如,通过使用媒体的风景和/或背景中的地标数据)。例如,在一些实施方式中,主机装置110(例如,经由图1所示的分析模块121)可以使用图像识别处理技术来检测背景中的特定物体(座位、当地地标等),以检测背景中的标识信息(例如,标牌、座位号、场地特征等),和/或估计图像捕获装置160和用户502之间的距离(例如,通过相对于图像捕获系统的地点和/或用户502使用媒体中的物体的大小来估计该距离)。主机装置110(例如,经由定位模块124)然后可以使用标识信息、物体和/或距离来标识媒体中捕获的地点。例如,如果分析模块121在体育场中检测到座位号,则定位模块124可以使用图像捕获系统的地点数据来确定图像捕获系统160所在的体育场,并且可以检索场地的地图和/或其他数据来确定具有座位号的座位将在场地中的哪里。作为另一个例子,定位模块124可以检测国家地标(例如,著名的雕像)和/或州标牌,并且可以基于国家地标和/或州标牌的已知地点数据来确定用户的GPS地点。如果图像捕获装置160提供地点数据,则定位模块124可以基于来自图像捕获装置的地点数据来验证检测到的地点。

在一些实施方式中,定位模块124还可以基于先前存储在主机装置110处的其他媒体来确定地点。例如,图像捕获系统160可以记录包括著名的雕像的视频,定位模块124可以确定该雕像的GPS坐标,并且存储所述坐标,例如,作为存储在数据库140中的视频数据的元数据。如果图像捕获装置160之后发送也包括该雕像的后续媒体,则定位模块124可以使用与本文所公开的那些图像处理技术类似的图像处理技术来使用先前接收的视频数据检测雕像的身份,并且可以使用先前的视频数据来确定雕像的地点(例如,经由与视频数据一起存储的元数据、等等)。另举一例,定位模块可以使用场地内的地标的预先捕获的图像数据(该图像数据将地标与场地内的地点相关联)来标识媒体中捕获的场地内的地点。

定位模块124然后可以在612在数据库140中检索用户的用户地点数据(例如,GPS数据、iBeacon数据、买票数据等)。对于每个用户614,主机装置可以在616将用户的地点数据映射到场地中和/或事件中的地点。例如,如果用户地点数据指示用户在特定的体育场处,则定位模块124可以将用户的地点数据映射到该场地内的地点,例如,通过使用场地的地图和/或类似数据来映射。定位模块124然后可以确定618用户在场地中的地点是否与定位模块124在媒体中标识的地点匹配。例如,主机装置110可以确定媒体中检测到的座位号是否与靠近用户移动装置的签到消息中标识的iBeacon的座位号匹配、和/或座位号是否紧邻与用户的票相关联的座位号。如果这两个地点不匹配,则定位模块124确定用户可能不在媒体被记录的地点,并且定位模块124可以对下一个用户的地点数据进行分析620。

如果所述两个地点匹配,则分析模块121(例如,在图2中示出)可以对媒体执行面部识别622,例如,通过使用用户的先前存储的图像数据和从图像捕获系统160接收的媒体。如果分析模块121检测到用户和媒体中的人匹配624,则主机装置可以存储626媒体(例如,包括元数据,比如媒体被记录的地点、与用户相关联的标识符和/或其他信息)。主机装置110然后可以向用户通知(例如,经由电子邮件、文本(例如,短消息服务(SMS)和/或多媒体消息传送服务(MMS))消息、移动装置应用通知等)图像捕获系统160捕获到了包括用户的媒体。用户然后可以访问该媒体。如果所述两个地点不匹配,则分析模块可以不执行面部分析,并且可以结束用户与媒体的匹配过程。

在一些实施方式中,定位模块124可以在对媒体执行面部识别之前执行地点分析。在其他实施方式中,主机装置110可以在对媒体执行面部识别之后执行地点分析。在面部识别之前执行地点分析可以使所做比较的数量减少(因此使用于执行面部识别的时间量和资源减少),并且可以使从数据库140检索和处理的数据量减少。这还可以使从面部识别过程产生的误判的数量减少,因为可以对其地点与图像的地点匹配的那些个人执行面部识别分析,而对于其地点与图像的地点不匹配的个人不执行面部识别分析。

在一些情况下,可以基于通过媒体中的地标数据标识的地点信息来计算面部识别置信得分。例如,如果媒体中的地标指示视频是场地的特定部分的并且用户的装置指示用户在场地的该部分内,则用户在该媒体内的置信得分可以提高。相反,如果媒体中的地标指示视频是场地的特定部分的并且用户的装置指示用户不在场地的该部分内,则用户在该媒体内的置信得分可以降低。因此,虽然不限制对其执行面部识别的个人的数量,但是地标数据可以通过影响用户的置信得分来减少误判。

虽然在上面被描述为结合面部识别使用,但是在其他实施例中,可以在不进行面部识别的情况下使用从用户的装置接收的地点信息和从图像和/或视频中的地标数据推导的地点信息来标识视频中的用户。具体地说,例如,定位模块(例如,在图2中示出)可以使用视频中的信息(例如,使用媒体的风景和/或背景中的信息)来确定视频的地点。如果用户装置指示用户在该特定地点处,则用户可以被标识为包括在视频中。如上所述,视频然后可以提供给用户。

虽然在上面被描述为从图像捕获装置接收地点信息(例如,场地内的位置),但是在其他实施例中,不接收这样的地点信息,并且可以仅基于媒体中的地标数据来标识图像捕获装置的地点(例如,通过使用媒体的风景和/或背景中的信息)。在这样的实施例中,与视频识别系统(例如,图1的视频识别系统100)没有关联的图像捕获装置和/或与视频识别系统不通信耦合的图像捕获装置可以用于捕获图像和/或视频。可以在图像捕获装置不提供地点特定数据(除了图像本身之外)的情况下标识这样的图像的地点。

虽然上面描述了各种实施例,但是应理解它们仅仅是作为例子呈现,而并非限制。例如,虽然实施例和方法在本文中被描述为定义事件等中的用户的上下文视频流并且将上下文视频流发送到客户端装置和/或以其他方式允许经由例如网络浏览器和互联网访问上下文视频流,但是在其他实施例中,主机装置可以将与用户相关联的任何数量的上下文视频流存储在数据库中。在一些情况下,主机装置可以被配置为定义可以包括用户的任何数量的上下文视频流的用户简档等。在一些情况下,用户可以经由移动应用、计算机应用、网络浏览器和互联网等来访问他或她的用户简档。而且,在一些情况下,用户可以与不同的用户和/或经由社交媒体站点共享或以其他方式请求主机装置共享用户的任何数量的上下文视频流。在一些情况下,用户可以允许访问他或她的用户简档的一部分以使得其他用户可以查看其中包括的上下文视频流。

虽然上面特别地描述了具体例子,但是本文所描述的实施例和方法可以以任何合适的方式使用。例如,虽然系统100在上面被描述为定义体育赛事中的用户的上下文视频流,但是在其他实施例中,本文所描述的方法可以用于使用例如任何合适的设置、场地、场所、事件等中的视频分析和面部识别来标识个人。例如,在一些实施例中,上述方法可以用于捕获音乐会、集会、毕业典礼、派对、购物中心、营地所等处的上下文视频流。在一个例子中,主机装置可以从例如毕业典礼接收上下文视频流。在一些情况下,如上所述,主机装置可以执行任何合适的面部识别和/或视频分析来标识毕业生(和/或任何个人和/或用户)。而且,主机装置可以被配置为对上下文信息进行分析,上下文信息比如与毕业生相关联的用户简档、走过舞台的学生的次序、与毕业生的客户端装置相关联的地点数据、和/或任何其他合适的数据。就这一点而论,主机装置可以对数据进行分析以验证毕业生的身份(例如,当数据满足准则时),并且可以定义毕业生的上下文视频流,例如,当他或她走过舞台来接收毕业证书等时的上下文视频流。在其他情况下,主机装置可以标识毕业生的家庭成员或朋友,并且可以以类似的方式定义他或她的上下文视频流。

虽然实施例在上面被描述为在特定装置上和/或装置的特定部分中执行,但是在其他实施例中,本文所描述的实施例和/或方法中的任何一个可以在任何合适的装置上执行。例如,虽然上下文视频流在上面被描述为被发送到主机装置(例如,主机装置110)以用于面部识别和/或图像分析,但是在其他实施例中,可以在客户端装置上或处执行任何合适的分析。例如,在一些情况下,用户可以经由客户端装置的照相机来捕获视频流(例如,上下文视频流),并且作为响应,客户端装置可以对视频进行分析以标识视频流中的任何数量的登记的用户等。在一些情况下,分析可以经由发送到客户端装置的和/或存储在客户端装置上的(例如,存储在存储器中的与系统应用相关联的)卷积神经网。在一些情况下,如上所述,可以基于例如用户的联系人列表、朋友列表、建立的连接等来预先处理和/或预先整理分析。在一些情况下,如上所述,客户端装置可以将用户特定的视频流发送到任何标识的用户。在其他实施例中,客户端装置可以将经分析的视频流和/或用户特定的(一个或多个)视频流上传和/或发送到主机装置110和/或数据库140。

虽然视频流和/或图像数据在上面被描述为“上下文的”,但是应理解,视频流数据和/或图像数据可以独立于“上下文数据”和/或与“上下文数据”没有关联。例如,在一些情况下,用户可以捕获视频流和/或图像,并且可以上传视频流和/或图像以用于在没有定义和/或发送与视频流和/或图像数据相关联的上下文数据的情况下进行处理。在一些情况下,主机装置等(例如,主机装置110)可以接收用户产生的视频流和/或图像数据,并且作为响应,可以对数据执行一个或多个面部识别过程和/或任何其他合适的分析以定义例如独立于上下文数据的用户特定的视频流或用户特定的图像。

虽然具体示出和描述了实施例,但是将理解可以做出形式和细节上的各种改变。尽管各种实施例被描述为具有特定的特征和/或组件组合,但是具有来自如上面所讨论的任何一个实施例的任何特征和/或组件的组合的其他实施例是可能的。

在上述方法和/或事件指示按某个次序发生的某些事件和/或进程的情况下,某些事件和/或进程的排序是可以修改的。另外,某些事件和/或进程在可能时可以在并行的过程中同时执行,并且可以如上所述那样顺序地执行。虽然上面根据特定的实施例描述了特定的面部识别方法,但是在一些情况下,可以组合、扩增、增强和/或以其他方式对面部识别数据集合共同执行面部识别方法中的任何一个。例如,在一些情况下,面部识别方法可以包括使用特征向量、特征脸和/或其他2-D分析以及任何合适的3-D分析(比如举例来说,多个2-D图像的3-D重构)来对面部识别数据进行分析。在一些情况下,2-D分析方法和3-D分析方法的使用与要不然仅由3-D分析或仅由2-D分析将得到的结果相比,可以例如在资源(例如,处理装置)上的负荷更小的情况下得到更准确的结果。在一些情况下,可以经由卷积神经网(CNN)和/或经由与任何合适的二维(2-D)和/或三维(3-D)面部识别分析方法组合的CNN来执行面部识别。而且,多种分析方法的使用可以例如用于冗余、错误检查、负荷均衡等。在一些情况下,多种分析方法的使用可以使得系统可以至少部分地基于面部识别数据集合中包括的特定数据来选择性地对该面部识别数据集合进行分析。

本文所描述的一些实施例涉及具有非暂时性计算机可读介质(也可以被称为非暂时性处理器可读介质)的计算机存储产品,该非暂时性计算机可读介质上具有用于执行各种计算机实施操作的指令或计算机代码。从计算机可读介质(或处理器可读介质)本身不包括暂时性传播信号(例如,在传输介质(比如空间或电缆)上传载信息的传播电磁波)的意义上来说,计算机可读介质(或处理器可读介质)是非暂时性的。所述介质和计算机代码(也可以被称为代码)可以是出于特定的一个目的或多个目的设计和构造的那些。非暂时性计算机可读介质的例子包括但不限于,磁性存储介质,比如硬盘、软盘和磁带;光学存储介质,比如,紧凑盘/数字视频盘(CD/DVD)、紧凑盘只读存储器(CD-ROM)和全息装置;磁光存储介质,比如光盘;载波信号处理模块;以及被专门配置为存储并执行程序代码的硬件装置,比如专用集成电路(ASIC)、可编程逻辑器件(PLD)、只读存储器(ROM)和随机存取存储器(RAM)器件。本文所描述的其他实施例涉及一种计算机程序产品,该计算机程序产品可以包括例如本文所讨论的指令和/或计算机代码。

本文所描述的一些实施例和/或方法可以由软件(在硬件上执行)、硬件或它们的组合执行。硬件模块可以包括例如通用处理器、现场可编程门阵列(FPGA)、和/或专用集成电路(ASIC)。软件模块(在硬件上执行)可以用各种软件语言(例如,计算机代码)表达,包括C、C++、JavaTM、Ruby、Visual BasicTM、和/或其他面向对象的、过程式的或其他的程序设计语言和开发工具。计算机代码的例子包括但不限于,微代码或微指令、比如编译器生成的机器指令、用于生成网络服务的代码以及包含计算机使用解释器执行的更高级指令的文件。例如,实施例可以使用命令式程序设计语言(例如,C、Fortran等)、函数式程序设计语言(Haskell、Erlang等)、逻辑程序设计语言(例如,Prolog)、面向对象的程序设计语言(例如,Java、C++等)或其他合适的程序设计语言和/或开发工具来实施。计算机代码的另外的例子包括但不限于,控制信号、加密的代码和压缩的代码。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1