具体实施方式
在下文中,将通过描述优选实施例以及通过参考附图来讨论本发明。然而,本领域的技术人员将意识到在如所附独立权利要求定义的本发明的范围内的其他应用和修改。
当流送/存档服务器记录(或存档)视频会议时,视频中的人是最常见和重要的要素。因此,自动确定会议中出现的任何人的身份是将包括在用于会议记录的元数据中的有用度量,并且将为用户搜索提供有用途径。
本发明提供了一种用于使存档的多媒体流(例如视频会议和/或展示的数据)在存档(记录)在流送/存档服务器后可查询的新颖流送/存档服务器以及新颖方法。根据本发明,将(例如,根据H.323或SIP编码)一个或多个视频会议格式编码数据流传送到转换引擎,用于将视频会议格式编码数据流转换成标准的多媒体流送格式,其可以是文件簇,每一个表示特定媒体(音频、视频、数据)和/或将不同媒体合成和关联在一起的结构文件。在下文中将文件簇称为多媒体流。人脸识别单元分析视频流(所述多媒体流的视频部分),检测人脸并且将人脸识别算法应用于检测到的人脸以标识在所记录的会议中的参会者。本发明利用由视频会议装置本身提供的特定领域知识来减少由人脸识别单元需要执行的比较的数目。本发明还可以使用通信解决方案的其他常见组件来提供用于缩小人脸检测算法的搜索空间,由此进一步增加结果的鲁棒性和降低计算开销的进一步信息。根据本发明的人脸识别单元被配置成将内容数据库中的所检测到的人脸的身份和图像与多媒体流关联地存储。在该人脸识别处理之后,由图形用户界面(GUI)中的常规搜索引擎可容易地执行对存档会议中的参会者的搜索。此外,也使得更容易人工浏览包含特定人的存档会议,因为在图形用户界面中可以显示会议参会者的特写图像。
图3是图示能够以多媒体流送格式记录视频会议、自动地标识在多媒体流中出现的个人和将所标识的人的身份(通常是姓名)存储为可搜索元数据并且使选择的多媒体流(实况或按需)流送至一个或多个网络终端(通常是连接到互联网的个人计算机)的新颖流送/存档服务器301的示意图。图4是示出所述新颖流送/存档服务器301的不同模块之间的交互的流程图。
根据本发明的一个示例性实施例,流送/存档服务器301包括呼叫处理单元302、文件转换引擎303、内容数据库304、人脸识别单元305、用户数据库306和网络服务器307。
为了将视频会议记录在流送/存档服务器上,存档/流送服务器301作为常规端点包括在视频会议中。流送/存档服务器充当任何其他视频会议端点(也称为视频会议终端),因为它能发起和接收通信会话(也称为会议呼叫)S1;唯一的区别在于流送/存档服务器将其接收到的数据处理成其他有用输出,而不是将该输出显示在屏幕上。由呼叫处理单元302处理所有通信会话,并且作为视频会议端点,流送/存档服务器使用用于建立通信会话和与远程端点通信的特定(以及标准化)协议,例如H.323和SIP。
H.323是来自ITU电信标准部的综合(umbrella)建议,其定义了用于在任何分组网络上提供音频-可视通信会话的协议。会话发起协议(SIP)是广泛用于建立和拆除诸如互联网上的话音和视频呼叫的多媒体通信会话的信令协议。
当在流送/存档服务器301和视频会议端点或MCU(未示出)之间建立通信会话时,将输入视频会议格式编码数据流(视频、音频、数据)发送S2到文件转换引擎302。文件转换引擎将视频会议格式编码数据流转换(也称为转码)成以定义的多媒体流送格式(和/或可下载文件格式),例如Windows Media、MPEG4和实媒体格式中的至少一个多媒体流。
文件转换引擎将多媒体流存储S3在内容数据库304中。内容数据库304可以驻留在本地存储介质上或网络服务器/数据库上,并且使得稍后按需分发到计算机网络(通常是互联网)上的远程网络终端的请求者。文件转换引擎303还自动地将元数据与多媒体流(或多个流,如果生成多个流送格式的话)关联存储。该自动存储的元数据通常包括基本文件数据,例如多媒体流存储在数据库中的日期和/或多媒体流的持续时间和/或缺省预设标题。
将视频会议格式编码数据流转换成定义的多媒体流送格式的多媒体流以及存储所述多媒体流的过程称为记录会议。
用户数据库306是包含已知个人集的身份、所述已知个人集的人脸图像,以及视频会议终端的一个或多个唯一地址,以及个人和终端如何建立关系的数据库。每一个身份和唯一地址与一个或多个组相关联。例如,用户数据库306可以包含公司或组织的所有雇员和视频会议终端的记录。用户雇员的每一个记录包括雇员的人脸图像、该雇员的姓名(身份)、登记到该雇员的视频会议端点的一个或多个唯一地址(H.323ID、SIP地址、E.164别名)。此外,每一个雇员的记录包括有关该雇员(以及他们的端点)与哪些组关联的信息,例如,他/她为哪个公司或组织工作、他/她在哪个部门或办公室工作,或其他有用分组,例如地理位置、他/她在哪个楼宇工作等等。并非所有终端均登记到特定个人,例如位于会议室中的终端。然而,终端可以具有与个人相同的分组方案。用户数据库可以看起来如图5所示的示例性用户数据库的片断。用户数据库306可能需要手动地建立,然而,标准公司/组织雇员数据库和/或电话簿当然也可以用作用于输入数据的基础。记录可以包括雇员的人脸的不至一个人脸图像,例如一个图像表示正视图的人脸,以及一个图像表示侧视图的人脸。在下文中,在用户数据库中存储的雇员人脸的图像通常称为人脸图像。用户数据库可以驻留在本地存储介质或网络服务器/数据库上。
根据本发明的一个实施例,人脸识别单元305被配置成检测视频流(多媒体流的视频部分)中的一个或多个个人的人脸,并且根据规则集将一个或多个检测到的人脸与用户数据库中的已知个人的人脸图像集的人脸图像的一个或多个子集进行比较。然后,人脸识别单元305将估计该比较步骤是否导致所述检测到的人脸与人脸图像中的一个相匹配。如果是这种情况,则将与所述人脸图像相关联的身份存储为所述内容数据库中的可搜索元数据。
下面更详细地讨论人脸识别单元的步骤,然而,为了简化,在下文中,当引用与所述用户数据库中的人脸图像比较的人脸时,使用术语“检测到的人脸”。
当找到人脸匹配时,从用户数据库提取所识别的个人的身份,并且与多媒体流(多个)和自动存储的元数据(日期和持续时间)一起,相关联地存储为内容数据库中的元数据。人脸识别处理可以应用在所存储的多媒体流上,作为后转换处理,或其可以在转换期间实时执行。后者是资源需求的,因为流送/存档单元需要同时运行转换处理(转码)和人脸识别处理。然而,执行人脸识别处理和转换处理的顺序不限于本发明的范围。稍后,将更详细地讨论人脸识别单元,以及人脸检测和人脸跟踪的可能实现。
根据本发明的一个实施例,Web服务器307为流送/存档服务器提供基于Web的图形用户界面(GUI)308,如图6所示。GUI提供在流送/存档服务器的内容数据库中当前存档(或存储)的多媒体流(记录的会议)的列表201。根据本发明的一个实施例,GUI列表由几个列表或列或字段601(在下文中,称为列表)组成,其中,每一个所述列表表示在数据库中存储的一个存档会议(其可以存储为一个或多个多媒体流送文件格式和/或可下载文件格式603)。根据本发明的一个实施例,每一个列表601包括自动生成的元数据605和由人脸识别单元生成的参会者606的身份。GUI还可以包括搜索引擎607,允许用户搜索与存档会议相关联的元数据(包括参会者的身份)。根据本发明的另一个实施例,每一个列表601进一步包括在存档会议中检测到的一个或多个个人人脸的图像604。如果检测到不止一个人脸,则所述缩略图可以是将检测到的用户的所有图像示出为图像序列(幻灯片)的动画,例如,当GUI用户将鼠标指针保持在图像区上时。
由于预期这种处理的多种可能状况,人脸识别是困难的处理。这些困难的例子包括:不同头部姿势、改变和喧闹背景、低质量图像和变化亮度。另外,所依赖的基础技术通常必须能够区分类似人脸之间的细微差别。
此外,诸如生物信息测定和监视的人脸识别的典型应用使用人脸识别来确定来自能潜在地包含上千人的数据库的人脸的身份。本发明中的人脸识别的新颖实现利用由视频会议装置本身提供的特定领域知识。这种信息(也称为协议信息)形成通信处理的主要部分并且是操作所必需的。然而,这种信息也能被开发以改善人脸识别处理,由此潜在地改善它们的鲁棒性和降低它们的计算成本。另外,本申请概述其他常用组件的使用,通常是可视通信解决方案的一部分,以提供对简化人脸识别处理和增加人脸识别结果的鲁棒性有用的进一步信息。
根据本发明的流送/存档服务器主要尽可能利用更多信息来定义在记录的会议中可能出现的个人的子集。因此,服务器能通过将在记录的会议中的所检测到的人脸与在会议中最可能出现的个人的人脸图像的第一子集进行比较来开始,给定所有可用知识。如果在第一子集中未找到人脸匹配,则服务器继续前进到排名为下一个在会议中最可能出现的个人的人脸图像的第二子集。然后,一旦确信已经找到所检测到的人脸和用户数据库中的个人的人脸图像之间的人脸匹配,则该系统能停止。平均起来,先验知识将显著地降低所需比较的数目以及通过仅数十次而不是上百或上千的比较,该系统将潜在地收敛到真正的身份。由于两个原因,这是很有利的:首先,其减少了识别处理的计算负担,因为需要更少的比较以找出检测到的人脸的真正身份。其次,减少比较次数增加了所记录的人脸与来自数据库的正确人脸之间的比较产生最确信结果的可能性;这减少了错误匹配的机会并因此改善了可靠性。
在端对端视频会议解决方案中,许多信息源可用,可以帮助根据本发明的流送/存档服务器确定在给定记录的会议中出现的最可能用户。根据本发明的一个实施例,利用了用于建立通信会话(或会议呼叫)的协议信息。如前所述,流送/存档服务器充当任何其他视频会议端点(或终端),因为它能进行和接收呼叫(或通信会话)。作为端点,内容服务器将特定(和标准化)协议用于建立呼叫和与远程端点通信。这些协议可以用来确定哪个端点(或哪些终端)用于记录。尽管用于给定组织中的端点的精确寻址方案专用于公司决定如何管理他们的网络,但视频会议端点总是具有唯一地址。如前所述,视频会议端点通常支持多个协议,诸如会议发起协议(SIP)或H.323,因此通常存在与每一个端点相关联的多个唯一地址,诸如SIP地址、H.323 ID和E.164别名。对个人端点,定义为用户桌上或用户办公室中的端点,其用意主要由给定用户使用,地址通常合并了用户的姓名,例如John.doeACME.com。在这种情况下,可以从端点唯一地址直接地提取用户的姓名。即使该地址未明确地合并用户的姓名,端点唯一地址仍然对给定用户唯一,并且可以在用户数据库中找到该参会者的身份(或姓名)。因此,在记录中涉及哪个端点的知识可以用于预测在记录中看到谁。
如果流送/存档服务器处于经由MCU与一个或多个视频会议端点的会议呼叫中,则流送/存档服务器可以(经由H.243标准协议)从MCU接收有助于从MCU接收到的混合视频会议格式编码数据流的每一个端点的唯一地址。
此外,基础通信架构提供了端点的逻辑分组。例如,在大公司中,可以基于它们位于哪个办公室或楼宇来分组端点。替代地,分组可以基于端点所登记的用户的角色,例如,可以将来自会计部门的所有用户分组在一起,尽管处于物理上不同的位置。因此,端点在网络中位于何地的知识暗指有关其他端点和驻留在相同分组中的个人的知识。通常,从网络管理观点看,使这些分组基于端点的地理位置是最佳的。然而,任何分组暗示对识别处理的另外的约束,以及进一步减少了问题的复杂性。
根据本发明的一个实施例的人脸识别单元产生检测到的人脸的缩略图像S7。缩略图像是视频流的视频帧中的区域的副本,所述区域仅表示该视频帧中的个人的人脸。人脸识别单元将缩略图像的一个或多个人脸特征与用户数据库中的已知身份的人脸图像的一个或多个子集的一个或多个特征进行比较,直到找到匹配为止。更具体地说,人脸识别单元定义了多个子集,其中,根据个人将在视频流中出现的可能性来排名子集。然后,人脸识别单元以连续顺序将所检测到的人脸与子集进行比较,从最可能子集开始,直到找到匹配为止。
基于协议信息和用户数据库中的信息来执行所述排名(ranking)。例如,登记(建立关系)为端点的主要用户的个人将最可能出现在从该端点记录的多媒体流中。因此,该个人被定义为具有最高排名的子集。如果该个人不与所检测到的人脸相匹配,则下一最可能子集可能是例如在与该端点相同的部门(分组)中工作的个人。如果这些个人中没有一个与所检测到的人脸相匹配,则下一最可能子集可能是例如在相同办公楼中工作的个人等等。
第一子集可能仅由已知人脸集的一个已知人脸组成,第二子集可能仅由10个已知人脸集组成,第三子集可能是50个已知人脸集组成等等,直到找到匹配为止。
根据本发明的一个示例性实施例,人脸识别单元305被配置成从呼叫处理单元302接收协议信息,至少包括在会议(或通信会话)中包括的端点的唯一地址,以及基于协议信息和用户数据库中的数据,根据下述规则,连续地排名子集:
1.将包括登记到/建立关系到唯一地址的个人的第一子集排名为最高,
2.将包括与第一组相关联并且还与唯一地址相关联的所有个人的第二子集排名为第二最高,例如所述组是部门和/或办公室和/或地理位置,
3.将包括与第二组相关联并且还与所述唯一地址相关联的所有个人的第三子集排名为第三最高,例如,所述组是公司和/或组织,
4.将包括用户数据库中的所有个人的第四子集排名为第四最高。
取决于用户数据库中的信息(分组的数目和类型),子集的数目当然可能变化。一些公司、组织或视频会议网络拥有者可以具有按良好组织的层次方式的许多组,给出了非常详细的用户数据库组划分方案的可能性。可以由管理员配置流送/存档服务器以根据组划分的数目和它们的层次顺序来调整人脸识别单元的排名过程。例如,组排名方案可能是:大的全球公司的(1)登记的个人,(2)部门,(3)办公楼宇,(4)地理位置,(5)公司,(5)所有。
如果特定用户未登记到端点,例如,该端点是会议室端点或通常可用的其他端点,则人脸检测单元正好跳转到第二子集。如果找到匹配,则人脸检测单元不必继续到下一子集。如果未找到匹配,即使人脸检测单元已经将所检测到的人脸与用户数据库中的完整图像集进行比较,人脸检测单元也将那一人脸的人脸轨迹标记S5为“未知”。
当估计和尝试确定检测到的人脸的身份时,为了进一步缩小搜索空间,合并了学习能力以帮助预测在来自给定端点的会议记录中可能看到谁。因此,根据本发明的一个实施例,流送/存档服务器基于谁先前使用过给定端点而为每一个端点创建直方图。换句话说,这种直方图(histogram)是频率直方图,因为它存储给定身份已经使用特定端点的次数,例如John使用端点A 5次,Jacob使用端点A 10次,Julie使用端点A 3次等等。在进一步的记录中,当尝试识别个人时,能使用该现有的直方图来确定最可能看到谁,例如,将所检测到的人脸首先与Jacob比较,其次是John,第三是Julie。即使端点A是会议室系统,其仍然能了解谁最可能使用端点A,并且因此,在后续记录中,谁最可能使用它。因此,用于端点的端点直方图包括已经在来自给定端点的先前记录中识别出的用户并且在来自给定端点的记录中已经识别该用户次数的列表。端点直方图可以是例如最频繁用户的前十名列表,或可以包括在预定时间段期间(例如,在去年期间)识别出的所有用户。端点直方图可以存储在本地存储介质上,例如,在用户数据库中,或网络服务器/数据库上。根据一个示例性实施例,在给定端点直方图中的个人和所述给定端点与用户数据库中的相同组(直方图组)相关联(见图5)。
因此,根据本发明的另一个实施例,人脸检测单元被配置成基于协议信息、端点直方图和用户数据库中的数据来生成用于每一个终端的用户直方图组,其中,终端的最频繁用户与所述用户直方图组相关联。然后,人脸识别单元可以使包括与用户直方图组相关联并且还与唯一地址相关联的所有个人的子集等级高于其他关联组。一个示例性实施例包括根据下面规则来排名子集:
1.将包括登记到/建立关系到唯一地址的个人的第一子集排名为最高,
2.将包括与用于所述端点的直方图组相关联的所有个人的第二子集排名为第二最高,
3.将包括与第一组相关联并且还与唯一地址相关联的所有个人的第三子集排名为第三最高,例如所述组是部门和/或办公室和/或地理位置,
4.将包括与第二组相关联并且还与所述唯一地址相关联的所有个人的第四子集排名为第四最高,例如,所述组是公司和/或组织,
5.将包括用户数据库中的所有个人的第五子集排名为第五最高。
如果特定用户未登记到该端点,例如端点是会议室端点或常用的其他端点,则人脸检测单元正好跳转到第二子集。
当在给定办公室中有许多人时,这样的方法特别有用,在这种情况下,如果对登记到该端点的用户的识别失败,则系统通常将必须对来自同一办公室的人中的许多人脸做比较。通过利用有关端点的最频繁用户的知识,可以显著地缩小搜索空间,因为用户经常使用他们的位置的地理限制内的相同端点(例如,离他们的办公室最近的会议室端点)。学习能力将随时间流逝和随系统学习得越多而缩小搜索参数,由此使用该系统越多,越改善结果。
此外,在这种学习处理中可以使用其他信息以进一步缩小在人脸识别期间的搜索空间。例如,如果用户1每周一的上午10点使用端点A,则很可能在周一的上午10:15从端点A记录的会议中检测到的人脸中的一个属于用户1。因此,在该处理中,人脸识别单元应当将所检测到的人脸先与用户1的人脸的图像进行比较。基本上,学习处理可能不仅利用谁使用过给定端点,还利用他们何时使用它。这提供了将附加度量合并到缩小搜索空间的处理中,因此在没有将人脸与整个数据库进行比较的情况下,增加了确定用户的身份的可能性。
另一可能性是开发流送/存档服务器在操作期间使用的机制。作为端点,流送/存档服务器具有允许它从标准视频会议端点呼叫的寻址。该寻址可以指定定义任何输出流或可下载文件应当采用的格式的特定输出配置。通常,这些地址(也称为记录别名)对个人来说是唯一的,并且基于他们的个人偏好和需要。可以使用这些别名来确定谁最可能出现在记录会议中。基于谁使用给定记录别名,可能形成直方图或某种其他类似的方法。当记录会议时,所使用的记录别名的知识可以用来预测谁可能出现在记录会议中。在美国专利申请US 2008-0072159中更详细地描述了该记录别名机制。
此外,视频会议装置通常与微软的办公通信服务器(OCS)集成。OCS提供即时状态信息以及对日历信息的访问。即时状态和日历信息可以用于生成在记录会议中可能出现的个人的子集,即,如果我们知道Jim在下午4-5点在特定会议室中开会(并且我们知道哪个端点在那个房间中),则非常有可能的是,Jim在与从那一端点、在那一时间记载的记录有关的视频流中。此外,将其他人的知识调度成与Jim一起在会议室中,则人脸识别单元可以定义可能出现在记录中的个人的子集。
替代地,视频通信解决方案通常合并视频会议管理系统(VCMS)(或管理套件(MS)),以管理视频会议网络中的所有端点和其他通信装置。这包括诸如端点调度和资源分配的功能,意思是VCMS有时知道哪个个人已经预订了给定端点。这对诸如会议室视频会议端点的被视为共用资源的端点特别是如此。VCMS允许用户将端点预订用于调度的会议,因此VCMS可能向流送/存档服务器和人脸识别单元提供有关哪个(哪些)用户当前具有所预订的给定端点的信息。该信息可以帮助确定在记录会议中出现的可能的个人。此外,VCMS允许建立重新发生的会议。这些会议每天、每周或每月同时发生,因此很可能人脸识别结果可以用在连续重新发生的会议上,为识别系统提供良好起点。预订会议室类型端点的VCMS的能力意指当应对未登记到特定个人的端点时,VCMS可能能够指示谁正在使用该端点,因此人脸识别首先应用于该个人的人脸图像。这是对人脸识别应用于个人系统的方法的补充,因为识别首先应用于登记该端点的个人的人脸图像。
一些个人具有工作时和在家时的个人端点,意思是他们的身份与多个设备相关联。当联系个人时,可以呼叫属于该用户的任何端点。因此,如果个人未应答他的办公室端点(即他们在家而不在办公室),诸如FindMeTM的自动服务切换呼叫处理并且尝试通过自动呼叫与该个人相关联的其他端点来定位该个人。因此,通过“找到我”服务,人脸识别单元可确定唯一地址与哪个个人相关联,而与在工作还是在家拔叫该人无关。
端点甚至可以要求使用认证,这将提供有关正在记录谁的甚至更大的确定性。然而,当已经由一些其他人认证了它们时,即使没有该知识也能确保个人的身份。然而,其确实为人脸识别单元提供了良好起点。
最鲁棒的解决方案很可能是组合所有可用知识并且基于该人脸在当前处理的记录会议中出现的可能程度而在数据库中形成对每一个人脸的概率估计。然后,可以将人脸与用户的图像进行比较,从最可能的用户开始并且按其方法进行到最不可能的用户。
在下文中,通过例子说明了本发明。图7图示了用于本发明的四种示例性使用情况。
为了说明可能如何使用这种信息,下面的章节详述使用协议信息来减少问题的复杂性的简单使用情况。该例子涉及具有六个办公室以及在每一个办公室中具有多个个人的假想公司。该例子图示了许多个人,每个个人具有个人端点。在下面的例子中,我们将个人端点描述为登记到给定个人,因为他们是主用户,但并不一定是仅有的用户。
首先,在呼叫1中,“用户5”呼叫流送/存档服务器来进行会议记录。会议呼叫被转换并在内容数据库上被存储为多媒体流。流送/存档服务器从通信会话找到呼叫端点的唯一地址。在用户数据库中,端点的唯一地址与组“办公室A”相关联,意指端点位于办公室A中,并且登记(建立关系)到身份“用户5”。用户数据库进一步包括与组“办公室A”相关联的6个身份,“用户1-6”;与组“办公室B”相关联的6个身份,“用户7-12”等等。所有身份(用户1-42)和端点与组“公司”相关联,并且对每个个人存储人脸图像。基于该信息,流送/存档服务器(经由用户数据库)知道该端点位于“办公室A”中并且登记到“用户5”。人脸识别单元创建视频流中的检测到的人脸的缩略图像,并且开始将该缩略图像与来自用户数据库的人脸图像的子集进行比较。“用户5”在所述多媒体流中是最可能的,因为该端点登记到“用户5”。然后,将“用户5”的人脸图像定义为包括1个人脸图像的第一子集。办公室A中的另一人正在使用“用户5”的端点也是可能的,因为他们在同一办公室中工作。将与组“办公室A”相关联的6个个人定义为包括6个人脸图像的第二子集,排名为第二最高。此外,与组“公司”相关联的任何个人正在使用“用户5”的端点是可能的,因为他们工作在同一公司。将与“公司”相关联的42个用户定义为包括42个人脸图像的第三子集,并且排名为第三最高。第一子集排名为最高,因此,人脸识别单元将缩略图像与在用户数据库中存储的“用户5”的人脸图像进行比较,并且断定在视频流中检测到的人脸与“用户5”相匹配。人脸识别单元将“用户5”的身份(通常是“用户5”的姓名)以及“用户5”的缩略图像与内容数据库中的相应多媒体流一起关联存储为元数据。
在呼叫2中,“用户35”从登记到“用户41”(并且与组“总部”和“公司”相关联)的端点呼叫流送/存档服务器以进行会议记录。现在,第一子集将是“用户41”的人脸图像,第二子集将是与组“总部”相关联的个人的人脸图像,并且第三子集是与组“公司”相关联的个人的人脸图像,相应地排名。人脸识别单元首先将缩略图像与“用户41”的人脸图像进行比较,因为这是最高排名的子集,并且确定它们不匹配。然后,人脸识别单元将人脸图像与第二最高排名子集进行比较,即与用户数据库中的“总部”组相关联的所有个人的人脸图像进行比较,并且确定缩略图像与“用户35”的人脸图像相匹配。因此,在会议记录中检测到的参会者的正确身份是“用户35”。
在呼叫3中,来自“办公室C”的“用户16”到访“办公室D”,并且从登记到“用户19”的端点对流送/存档服务器进行呼叫。在人脸识别期间,人脸识别单元首先将所检测到的人脸的缩略图像与最可能的个人——内容数据库中的“用户19”——的人脸图像进行比较,并且确定它们不匹配。然后,人脸识别单元将缩略图像与下一排名子集、与用户数据库中的组“办公室D”相关联的所有用户的人脸图像进行比较,并且确定没有匹配。然后迫使人脸识别单元将缩略图像与用户数据库中的组“公司”相关联的用户的所有人脸图像进行比较,通常是除已经比较过的办公室(在这种情况下是“办公室D”)外的所有办公室,并且确定人脸图像与“用户16”的图像相匹配。
呼叫4涉及一个呼叫中的三个用户(用户25,26,27)。这可能是通过多点控制单元(MCU)或共享单个会议室端点的三个用户的呼叫。在这些情况中的任一情况下,内容服务器检测所记录的视频中的三个人脸,并且尝试标识它们中的每一个。用于确定这些人脸中的每一个的身份的过程与针对单个人脸的过程相同。人脸识别单元首先将每一个人脸与登记(建立关系)到给定端点的用户的图像进行比较,然后其在所有用户登记到同一组织之后,进行到与同一办公室或部门(或其他适当的预先配置的分组)相关联的用户。在呼叫4中,所有三个用户来自“办公室E”,并且因此,其快速地确定他们的身份。
随着时间流逝,流送/存档系统可以跟踪谁使用给定端点最频繁(直方图)。根据一个示例性实施例,“用户1”、“用户8”和“用户14”最频繁地使用具有唯一地址“End1comp.org”的端点。用户数据库可以通过更新例如“HistEnd1”的直方图组并且将唯一地址“End1comp.org”与具有组“HistEnd1”的身份“用户1”、“用户8”和“用户14”相关联来反映该信息。当人脸识别单元将在来自该端点的多媒体流中的检测到的人脸与唯一地址“End1comp.org”进行比较时,所定义的子集中的一个可以是与组“HistEnd1”相关联的个人的人脸图像,在此是“用户1”、“用户8”和“用户14”。当端点的使用随时间改变,以及其他个人进入最频繁用户列表时,用户数据库持续更新直方图组来对此进行反映。
为了对视频中的人脸执行人脸识别,必须首先检测并优选地跟踪该人脸,使得可以将所检测到的人脸的图像一起传递到人脸识别步骤。根据本发明,这些步骤与人脸识别方法无关,但它们的鲁棒性能显著地提高识别步骤的成功率。在下面的章节中,讨论了在由人脸识别单元执行的处理中涉及的每一个步骤的一个示例性实施例。然而,应当注意,存在实现人脸检测、人脸跟踪和人脸识别的若干公知的方法,并且以下方法是示例性实施例,而不是限制本发明的范围。
根据本发明的一个实施例,人脸识别单元305被配置成接收视频流S8,例如多媒体流的视频部分(存储的多媒体流,或直接来自转换引擎)。对视频流中的每一个帧,人脸检测单元在视频帧中搜索人脸。图8示出了由人脸检测单元产生的输出的种类,即其标识认为是人脸的图像中的区域。存在实现此的多种已知技术,一个例子使用一系列(称为级联)训练分类器[Paul Viola和Michael J.Jones,“Rapid ObjectDetection using a Boosted Cascade of Simple Features”,IEEE CVPR,2001]。在具有和不具有人脸(称为肯定样本和否定样本)的大量图像集上训练这些级联,并且主要学习人脸的区别特征。当应用于图像时(在这种情况下,来自视频流的单个帧),将来自级联的每一个分类器应用于每一次迭代时尺寸增加的图像区。如果级联的任何阶段拒绝给定区中的人脸的概念,则该处理停止。该级联被构造成使得先前阶段使用可以快速地拒绝清楚地不是人脸的区域的简单特征,因此使得该方法在计算上高效。
如果在视频流中检测(S4)到一个或多个人脸,则人脸跟踪单元启动使用如由人脸检测单元提供的初始人脸位置(多个)来跟踪(S5)所检测到的人脸(多个)。跟踪允许贯穿视频流的剩余部分跟踪所检测到的人脸。因此,对在视频流中出现的每一个人脸,仅需要一个成功的识别。最小化执行识别的数目很重要,因为人脸识别可能是计算上昂贵的操作。图9演示了跟踪的处理。图像9a中的圆示出了人脸检测的结果。这初始化示为矩形的用于那一人脸的跟踪器。其他图像(9b-9f)描述了在后续帧中跟踪的这个人脸。
与对每一个帧朴素地应用人脸检测相比,跟踪算法更适合于在整个视频流上定位给定人脸。这是因为人脸检测对姿势变化并不与跟踪算法一样地鲁棒,并且在其重新检测所有帧中的所有人脸的能力方面是间歇的。另外,人脸检测处理没有关于相继检测之间哪个人脸是哪个的概念,由此不适合于跟踪。相比较,跟踪算法考虑了人脸的先前位置,并且因此,从视频流中的先前帧搜索与人脸区相似的邻近区。此外,跟踪算法在计算上比执行每一个帧的人脸检测开销更低。
在跟踪所检测到的人脸之后,定期执行人脸检测以检查可能已经出现在视频流中的任何新人脸。因为已知当前跟踪的人脸的位置,所以系统可以确定后续检测是新还是已经被跟踪的人脸的简单重新检测。
当建立人脸的跟踪时,然后,人脸识别单元产生所检测到和跟踪的人脸的缩略图像(副本),其中,人脸图像仅是由跟踪矩形限制的视频帧的一部分。然后,主要仅包含被跟踪用户的人脸的缩略图像可以用于人脸识别并与用户数据库中的已知个人的所存储的人脸图像进行比较(或匹配)。
已经获得在视频流中出现的个人的人脸的缩略图像,现在,人脸识别可以应用于确定他们的身份。人脸识别可以应用于在给定帧中已经成功检测到的任何数目的人脸。根据该操作是执行后转换还是实时执行,规定了可以专用于该处理的处理时间量。当操作后转换时,在识别处理可能花费多少时间方面,具有更大灵活性,因此可将识别应用于帧中的每一个人脸(足够大可用来跟踪并且产生适用于人脸识别的缩略图像的每一个人脸)。给定足够的计算资源,甚至能实时执行该处理,然而,对给定帧可识别的最大人脸数目将是有限的,因为当在实时设置中操作时存在的时间约束。然而,应当注意,通常并非被跟踪的所有人脸需要把识别应用于单个帧中。通常将仅间歇地产生非常本地化并且正面定向的缩略图像,因此不可能对一个帧中的所有个人需要应用识别,并且相反,贯穿呼叫的持续时间,将分散识别操作。此外,一旦对被跟踪个人已经提取了缩略图像,则在背景中可以应用该识别处理,同时对其他个人,跟踪实时继续。替代地,如果不立即需要识别结果,则能排队缩略图并在稍后阶段(离线地)处理。另外,当与必须将每一个人脸与整个人脸数据库相比的典型人脸识别系统相比时,根据本发明的搜索空间的减少增加了实时执行的人脸识别的可能性。还应当注意,仅需要成功地识别被跟踪的人脸一次,在此之后,简单跟踪该人脸以确保识别不会再次应用于该人脸。
为了应用人脸识别,必须通过提供每一个个人的图像集和他们的身份来首先训练人脸识别单元。训练的处理仅需要执行一次。
当对缩略图像执行识别时,根据上述方法,该系统通过将缩略图像与用户数据库中的已知个人的人脸图像进行比较来开始。一旦该系统确信它已经找到匹配,则处理停止。人脸识别系统中的确信的度量通常基于计算任何两个人脸的类似程度。
如果不能建立人脸的身份,则将人脸的身份分类为未知人。如果存在未知人,则视频会议拥有者(或负责记录会议的用户)可手动地指定该人的身份。如果对他/她可能出现的未来会议记录,要求该人的身份,可提供该个人的附加训练图像,因此将该个人添加到用户数据库的已知个人的列表中。如果该人出现在未来会议记录中,则通过人脸识别单元将找到他们的身份。替代地,先前定义为未知的人脸的图像来自作为训练图像的视频,因此不要求用户输入更多训练图像。
另一可能的增强是使用对已知个人的用户数据库的任何新添加以便与来自先前会议的任何未知人脸进行比较。因此,如果该未知人脸已经出现在先前会议中,则将更新该个人出现的所有会议,因此允许未来搜索更精确。
流送/存档服务器能是独立的设备或其他网络设备的一部分,诸如MCU、网闸等等。