CN114332975A - 识别利用模拟覆盖物部分覆盖的对象 - Google Patents
识别利用模拟覆盖物部分覆盖的对象 Download PDFInfo
- Publication number
- CN114332975A CN114332975A CN202111080203.2A CN202111080203A CN114332975A CN 114332975 A CN114332975 A CN 114332975A CN 202111080203 A CN202111080203 A CN 202111080203A CN 114332975 A CN114332975 A CN 114332975A
- Authority
- CN
- China
- Prior art keywords
- person
- face
- image
- determining
- user device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/457—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by analysing connectivity, e.g. edge linking, connected component analysis or slices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/98—Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
- G06V10/993—Evaluation of the quality of the acquired pattern
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Evolutionary Biology (AREA)
- Quality & Reliability (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
本公开涉及识别利用模拟覆盖物部分覆盖的对象。本发明公开了用于基于面部特征来确定特定人的存在的技术。例如,设备可基于确定第一图像中示出的面部未被面部覆盖物覆盖而将该第一图像包括在参考图像集中。该设备的经训练的模型可根据该第一图像确定第一组特征,由此利用模拟面部覆盖物来训练该经训练的模型将特定人的被部分覆盖面部与该特定人的未被覆盖面部匹配。该设备还可基于第二图像来确定与第二人的面部相关联的第二组特征。然后,该经训练的模型可确定对应于两组特征之间的相似性水平的得分,然后基于该得分来确定该第一人是否是该第二人。
Description
相关申请的交叉引用
本申请要求于2020年9月25日提交的名称为“IDENTIFYING PARTIALLY COVEREDOBJECTS UTILIZING SIMULATED COVERINGS”的美国临时专利申请序列第63/083360号;和于2021年9月8日提交的名称为“IDENTIFYING PARTIALLY COVERED OBJECTS UTILIZINGSIMULATED COVERINGS”的美国专利申请第17/469630号的优先权,这两个申请中的每个申请都全文以引用方式并入本文并且用于所有目的。本申请还涉及于2020年6月3日提交的名称为“IDENTIFYING OBJECTS WITHIN IMAGES FROM DIFFERENT SOURCES”的美国临时申请第63/034114号。本申请还涉及于2020年6月3日提交的名称为“ACTIVITY ZONE FOR CAMERAVIDEO”的美国临时申请第63/034262号。本申请还涉及于2020年6月3日提交的名称为“IDENTIFYING REACHABILITY OF NETWORK-CONNECTED DEVICES”的美国临时申请第63/034110号。这些申请的所有公开全文以引用方式并入本文以用于所有目的。
背景技术
存在用于使用人的面部的图像执行面部识别的技术。例如,移动电话相机可捕获示出人的面部的一部分的图像。应用程序可分析图像以确定人的面部的特征,然后尝试将该人的面部与其他已知的面部匹配。然而,面部识别是一个不断发展的领域,并且存在与执行识别相关的各种挑战。例如,存在可捕获多种图像的许多类型的相机。有时,当提供来自不同相机的图像作为输入时,可能难以准确地识别面部。另外,当提供被部分覆盖(例如,被口罩、太阳镜、头部覆盖物等部分覆盖)的面部的图像时,可能难以识别面部。
附图说明
图1是根据一些实施方案的示例性系统的简化框图;
图2是示出根据一些实施方案的用于基于从图像库中选择的图像来检测特定人的存在的至少一些示例性技术的另一个简化框图;
图3是示出根据一些实施方案的用于检测特定人的存在的至少一些示例性技术的另一个简化框图;
图4是示出根据一些实施方案的用于训练用于执行面部识别的模型的至少一些示例性技术的另一个简化框图;
图5是示出根据一些实施方案的用于检测特定人的存在的系统的示例性架构的另一个简化框图;
图6是示出根据一些实施方案的用于检测特定人的存在的示例性过程的简化流程图;并且
图7是示出根据一些实施方案的用于训练用于执行面部识别的模型的示例性过程的另一个简化流程图。
具体实施方式
在以下描述中,将描述各种示例。为了解释的目的,阐述了很多具体配置和细节以便提供对示例的彻底理解。但是,对本领域的技术人员也将显而易见的是,一些示例可在没有这些具体细节的情况下被实施。此外,可省略或简化熟知的特征部以防止对本文所述的示例造成混淆。
本公开的实施方案可提供用于在特定人的面部被面部覆盖物部分覆盖时检测该特定人的存在的技术。在一个示例中,如果在住宅前门处检测到特定人,则计算设备可提供通知。佩戴着面部覆盖物(例如,口罩)的人的视频或静态图像可由(例如,至少包括相机的)计算设备接收。该计算设备可利用经训练的模型来将静态图像中的一个或多个图像与特定人的参考图像集相关联(例如,将它们互相关联为匹配)。该参考图像集可仅包含示出未被口罩覆盖的特定人的面部的图像。该模型可被配置为将静态图像中的被遮蔽的(或未被遮蔽的)面部与来自参考图像集的未被覆盖面部相关联(例如,匹配)。还可至少部分地通过利用模拟面部覆盖物来训练该模型。通过扩展训练数据集、使用模拟面部覆盖物来包括更多样的种类和质量的训练样品以用于训练该模型,以及通过确保模型的运行时执行将被遮蔽的(或未被遮蔽的)面部与仅包含未被遮蔽的面部的参考集进行比较,实施方案可提高检测人的面部的准确性。
在例示性示例中,考虑其中在家庭环境内的驻留设备提供关于住宅附近(或住宅内)的人的存在的通知的场景。在该示例中,该驻留设备可以是通信地连接到相机的家庭自动化设备(例如,智能扬声器、智能数字媒体播放器)。在一个示例中,该相机可被设置为观察住宅前门周围的区域(例如,以捕获可能敲门和/或按门铃的人的图像)。因此,该驻留设备可被配置为接收和处理来自观察相机的一个或多个图像。该驻留设备还可被配置为接收并存储来自一个或多个用户设备(例如,移动电话)的图像(例如,图像裁剪)。例如,用户设备可包括相机部件,该相机部件可用于捕获(例如,与该用户设备的用户相关联的联系人(例如,人)的)图像。这些图像可存储在该用户设备的本地存储库(例如,本地内存存储库,诸如照片库)中。在一些示例中,由用户设备相机捕获的图像可(例如,由于不同的图像分辨率、照明差异等)具有与由观察相机捕获的图像不同的质量水平(例如,更高的质量水平)。另外,由用户设备相机捕获的图像可能是出于娱乐和/或乐趣而拍摄的,并且不是出于安全目的或为了用于识别由观察相机拍摄的人的任何意图而存储的。因此,这些照片库图像可以是偷拍场景、特殊场景等,并且可能并不总是包括人的面部的直接图像。例如,在一些情况下,照片库可包括人的被面部覆盖物诸如口罩、帽子、围巾、太阳镜等部分覆盖的面部的图像。
继续以上说明,该驻留设备可接收从用户设备的照片库中选择和生成的一个或多个图像裁剪。该一个或多个图像裁剪可分别包括作为用户设备的用户的联系人的第一人的面部的一部分。例如,一个图像裁剪可示出在一个设置(例如,棒球游戏)中拍摄的联系人的面部的侧视图,同时另一个图像裁剪可示出该联系人的(例如,作为室内人像拍摄的)面部的前视图。在该示例中,应当理解,可存在来自照片库的图像中示出的处于不同情景内的第一人的面部的许多不同部分(例如,视图)。因此,可至少部分地基于确定特定的一组一个或多个图像裁剪产生可用于对联系人的面部进行后续面部识别的更高水平的信息增益,从联系人的面部的更大的一组图像裁剪中选择该一个或多个图像裁剪。例如,在一些实施方案中,用户设备可(例如,经由经训练的模型)确定照片库中哪些图像包含被面部覆盖物覆盖(例如,部分覆盖)的面部的图像。然后,该用户设备可确定不选择那些图像用于发送到驻留设备,因为这些图像提供了比示出面部覆盖物的图像更低水平的信息增益。应当理解,包括第一人的面部的一部分的每个图像(例如,非裁剪图像)还可包括其他对象(例如,其他人的面部、物理对象、环境等)。因此,从用户设备接收的一组一个或多个图像裁剪可能已被分别裁剪以排除该第一人的面部的该部分之外的其他对象。
在从用户设备接收到示出联系人的面部的未被覆盖部分的该一个或多个图像裁剪时,驻留设备可确定与该用户设备相关联的联系人的面部的第一组特征。在一个示例中,该驻留设备可利用经训练的面部特征模型(其还可被称为“经训练的模型”)来至少部分地基于该一个或多个图像裁剪来确定该第一组特征。在一些实施方案中,在驻留设备上执行的该经训练的模型可以是也在用户设备上执行的相同的经训练的模型(例如,该经训练的模型用于确定将哪些图像裁剪发送到驻留设备的经训练的模型),由远程服务器将该经训练的模型部署到多个设备(包括驻留设备和用户设备)。返回到在驻留设备上执行的该经训练的模型,该经训练的面部特征模型可生成联系人的第一面纹。例如,该第一面纹可对应于多维向量(例如,包括128个维度),由此每个维度与联系人的面部的第一组特征中的至少一个特征相关联。
在一些示例中,如本文进一步所述,可训练该面部特征模型至少部分地基于从不同相机接收到的图像(例如,和/或图像裁剪)来生成面纹。例如,该面部特征模型可接收由用户设备(例如,移动电话)的相机捕获的第一训练图像集和由观察相机捕获的第二训练图像集。每个集合中的每个训练图像可包括人(例如,同一人)的面部的一部分。在一些示例中,该第一训练图像集可具有与该第二训练图像集不同(例如,更高)的质量水平。如本文进一步所述,可至少部分地基于两个图像集之间的质量差异(和/或相机源差异)来训练该面部特征模型生成该人的面纹。
在一些实施方案中,还可至少部分地基于利用示出模拟面部覆盖物、真实面部覆盖物的图像和/或示出面部的未被覆盖部分的图像来训练该面部特征模型。例如,远程服务器可收集示出第一人的面部的不同部分的图像以用于训练面部特征模型。这些图像中的一些图像可示出具有面部覆盖物(例如,佩戴着口罩)的第一人,同时其他图像可示出该第一人的未被覆盖面部。远程服务器可通过针对图像的示出该第一人的未被覆盖面部的一部分生成模拟面部覆盖物来补充该第一人的训练图像。远程服务器可部分地基于识别在面部上的面部标志(例如,嘴角、上鼻部边界、外眼、内眼、眉毛等)来生成模拟面部覆盖物。这些面部标志可用于识别边界多边形,由此远程服务器可根据该边界多边形的参数在嘴部区域上方模拟(例如,渲染)口罩。在一些实施方案中,远程服务器可根据一个或多个参数(包括但不限于颜色、纹理和口罩在面部上的放置)来改变模拟口罩。应当理解,图像的任何合适的组合(例如,任何合适的选择)(例如,在图像质量和/或真实面部覆盖物或模拟面部覆盖物的包括/省略方面)可用于训练模型。例如,可训练模型将第一面纹与第二面纹相关联,该第一面纹是从示出特定人的未被覆盖面部的高质量图像(例如,由移动电话的相机捕获的)生成的,该第二面纹是从示出覆盖特定人的面部的真实覆盖物的更低质量的图像(例如,由观察相机捕获的)生成的。在另一个示例中,可训练模型将第一面纹与第二面纹相关联,该第一面纹是从示出特定人的未被覆盖面部的高质量图像(例如,由移动电话的相机捕获)生成的,该第二面纹是从示出模拟面部覆盖物的高质量图像生成的。
在一些实施方案中,可训练该经训练的模型执行多个确定。例如,如本文所述,作为确定面部的一组特征的一部分,可训练该经训练的模型输出面部的面纹(例如,多维向量)。还可训练该经训练的模型确定图像中示出的面部是可识别(或不可识别)的第一置信水平。例如,该模型可利用指示与面部的一组特征相关联的质量水平的面部质量度量(例如,由面纹向量部分地表示)。该面部质量度量可考虑变量,这些变量包括例如模糊度、对比度、照明、遮挡等。在另一个示例中,可训练该经训练的模型确定图像中示出的面部被面部覆盖物覆盖的第二置信水平。这些确定可由本文进一步所述的一个或多个设备使用。例如,如上所述,用户设备可利用该经训练的模型来确定要包括哪些图像(例如,图像裁剪)用于发送到驻留设备,以将这些图像包括在参考图像集中(例如,因此排除具有面部覆盖物的图像)。在另一个示例中,该驻留设备可在运行时利用该经训练的模型来确定是否要在通知内包括由在前门处的观察相机捕获的人的面部的图像。该驻留设备可确定例如不包括示出被遮蔽的面部的图像。在另一个示例中,该驻留设备可包括在被发送到用户设备的通知内的被遮蔽的图像,但是可能无法使得用户设备能够标记要包括在参考图像集中的图像,如本文进一步所述。应当理解,经训练的模型可基于所生成的面纹来执行其他确定,这些确定包括但不限于估计人的年龄、性别、他们是否正在微笑等。
继续对家庭环境中的驻留设备的以上说明,在运行时,该驻留设备还可从观察相机接收一个或多个图像(例如,视频帧序列),如上所述。例如,人可接近住宅前门,由此在观察相机的可视区域内示出该人的面部。在该示例中,该驻留设备可至少部分地基于捕获在前门处的人的视频帧序列来确定与在前门处的人的面部相关联的第二组特征。例如,该驻留设备的经训练的面部特征模型可确定在前门处的人的面部的第二面纹。
然后,该驻留设备可确定对应于第一人的面部的第一组特征(例如,对应于从示出未被覆盖面部的参考图像生成的第一面纹,)和在前门处的人的面部的第二组特征(例如,对应于第二面纹)之间的相似性水平的得分。例如,该驻留设备可基于第一面纹和第二面纹之间的所确定的相似性(例如,余弦相似性)来确定得分。应当理解,驻留设备可利用任何合适的方法(例如,经由经训练的模型的子模型、用于计算向量相似性的算法等)来确定得分。然后,基于该得分,驻留设备可确定在前门处的人是否与第一人(联系人)相同。在一些实施方案中,如本文所述,该驻留设备可利用面部质量度量来确定在前门处的人的面部是否是可识别的。例如,在人的面部背对观察相机的情况下,该驻留设备可能能够识别到人在门口前方,但可能无法识别到该人的面部。在确定该面部是可识别的情况下(例如,人的面部面向相机),那么驻留设备可随后进一步确定在前门处的人的面部是否与该用户设备的联系人中的一个联系人(例如,第一人)匹配。
在一些实施方案中,驻留设备可至少部分地基于确定在前门处的人是否是可识别的/不可识别的,并且/或者在前门处的人是否与该用户设备的联系人中的一个联系人(例如,第一人)匹配来提供通知。例如,继续以上说明,在驻留设备确定在前门处的人是可识别的并且是第一人的情况下,该驻留设备(例如,智能扬声器)可经由音频信号提供通知,播报该联系人已到达住宅。在另一个示例中,该驻留设备可经由包括文本、音频、图像、视频或它们的任何合适的组合的消息向用户设备(例如,移动电话)提供通知。在另一个示例中,该驻留设备可被配置为仅在非联系人已到达时才播报(否则保持静音)。在该示例中,在确定在前门处的人不是已知联系人(例如,不是第一人)时,该驻留设备可播报非联系人的人已到达。如本文进一步所述,可利用用于提供通知的其他信道和/或条件。
在一些实施方案中,驻留设备可在通知内(和/或与该通知一起)提供与在从观察相机接收的帧序列(例如,图像)之间确定的最高质量图像对应的图像。例如,如上所述,该驻留设备可接收分别捕获接近前门的同一人的帧序列(例如,来自摄像机的帧序列)。与其他帧相比,每个帧可具有不同的质量水平。例如,一个帧可从侧面角度而不是直视视角示出人的面部。另一帧也可示出同一人的面部,但具有图像伪影、不良照明质量或降低图像质量的其他特征。该驻留设备可针对示出人的面部的每个帧,部分地基于面部质量度量来确定面部质量得分,如本文所述。然后,该驻留设备可对得分进行排序并选择具有最高面部质量得分的图像。然后,该驻留设备可向用户设备提供示出在前门处的人的面部的最高质量图像(例如,作为通知的一部分)。然后,该用户设备可在显示器(例如,移动电话显示器、电视显示器等)上呈现该图像以用于视觉识别。这样,可向用户呈现人的面部的最高质量图像,这可提供更好的用户体验。
在一些实施方案中,作为通知的一部分被提供给用户设备的图像还可由用户设备在接收到用户的输入时进行标记。例如,假设驻留设备检测到在前门处的人,并且确定该人不是用户的已知联系人中的一个联系人(例如,在用户的照片库中不存在该人的图像)。在这种情况下,在接收到通知时,用户设备可向用户提供标记照片的机会,例如,在用户将在门口处的人识别为该用户的联系人的情况下。在接收到标记(例如,标注照片)的输入时,用户设备可将照片添加到可用于未来检测该人的参考图像集,如本文进一步所述。应当理解,虽然本文所述的实施方案可主要是指从用户设备(例如,移动电话)接收参考图像(例如,用于执行面部识别)的场景,但是实施方案不应被理解为受限于此。例如,由观察相机(例如,其与家庭环境中的驻留设备相关联)捕获的(例如,未被覆盖面部的)可接受质量的图像可被标记为联系人,并且稍后被包括在该联系人的参考图像集中。可针对参考集内的新标记照片生成面纹,并且经训练的面部特征模型可将该面纹与同一人的面部的其他(例如,稍后接收的)照片的面纹相关联(例如,面部是否被覆盖)。
在一些实施方案中,虽然即使在存在口罩的情况下也可识别面部,但是具有口罩的面部的图像可不包括在被发送到用户设备的通知内。在一些实施方案中,具有口罩的面部的图像可包括在通知内,但可能不会给用户随后对图像进行标记的机会。在一些实施方案中,可向用户提供标记被遮蔽的图像的机会,但用户设备的经训练的模型可确定不将被遮蔽的面部的图像裁剪传输到驻留设备。在一些实施方案中,这可确保含有口罩的图像不包括在用于生成参考图像集的图像语料库中(例如,其可以其他方式降低由面部特征模型执行的面部识别的质量)。
本公开的实施方案提供优于现有系统的若干技术。在一个示例中,本公开的实施方案使得系统能够基于在用户的用户设备(例如,移动电话)上的用户个人照片库内已存在并已标记(例如,分配给联系人)的图像来执行对未来图像的面部识别。这可通过消除用户为了执行未来面部识别而拍摄一张或多张照片(例如,图像)的需要来减少资源消耗。在另一个示例中,本公开的实施方案可减少所需的网络带宽、存储和处理资源的量。例如,驻留设备不是从用户的移动设备上的用户照片库接收大量照片并对这些照片进行处理(例如,以用于稍后在面部识别中使用),而是,驻留设备可仅接收照片库的照片子集,由此已根据哪些照片提供更高水平的信息增益来选择了子集。在另一个示例中,本公开的实施方案使得系统能够执行面部识别,由此被用作用于面部识别的参考图像的图像集与用于执行实际面部识别的图像集不同。例如,参考图像集可由用户的移动设备捕获(例如,并且/或者由另一个移动设备与用户的移动设备共享),然后与驻留设备共享。稍后,该驻留设备可使用从单独的观察相机接收的图像来执行实际面部识别,该单独的观察相机可生成具有与参考图像集不同的质量水平(例如,更低分辨率、更多噪声、更多图像伪影等)的图像。这样,本公开的实施方案实现了一种方法,由此从一个相机(例如,移动电话的现有照片库)生成的现有照片可用于使用从另一个相机(例如,观察相机)生成的照片作为输入来高准确性地执行面部识别。
在技术优点的另一个示例中,本公开的实施方案使得系统能够对包括人的被部分覆盖面部的图像执行更准确的面部识别。例如,如本文所述,可至少部分地基于模拟面部覆盖物的生成来训练面部特征模型。这些模拟面部覆盖物可被渲染在图像中示出的面部的一部分上,由此随后基于经修改的图像来生成面纹。然后,可训练该模型将来自经修改的图像(包括模拟面部覆盖物的图像)的面纹和从示出同一人的未被覆盖面部的另一个图像生成的面纹相关联(例如,增加同一面部(被遮蔽的面部和未被遮蔽的面部)的面纹向量之间的余弦相似性)。通过利用多种模拟面部覆盖物作为训练过程的一部分,实施方案不仅可改善训练过程的效率(例如,减少采集示出佩戴着真实口罩的面部的图像所需的时间),而且可改善经训练的模型在检测特定人方面的准确性(例如,已基于多种不同的模拟口罩配置进行了训练)。应当理解,该训练过程可包括匹配图像类型(例如,包括示出真实遮罩覆盖物、模拟遮罩覆盖物、未被覆盖面部等的图像)的任何合适组合。
另外,实施方案还可通过确保用于执行运行时面部检测的参考图像集仅包括合适质量的图像来实现对特定人的更有效和准确的运行时检测。例如,如本文所述,在用户设备上执行的经训练的模型可确定仅传输(例如,来自照片库的)示出面部的基本上未被覆盖的部分的图像中的图像(例如,图像裁剪)。因此,从用户设备接收图像的驻留设备可基于(例如,由用户设备和/或驻留设备的经训练的模型)确定该图像中示出的面部的该部分未被面部覆盖物覆盖来确定将该图像包括在参考图像集中。在另一个示例中,驻留设备可确保从另一个设备(例如,观察相机)接收并随后被用户将标记为联系人的图像仅在它们匹配面部质量的阈值水平的情况下(例如,根据面部质量度量并且/或者确保图像中示出的面部的该部分未被覆盖)才包括在参考图像集中。通过确保该参考图像集中的图像的可接受质量水平,实施方案改善了在针对其他图像(例如,更低质量的图像、示出了被遮蔽的面部的图像等)执行面部识别时的准确性。这还使得该经训练的模型能够对新面部(例如,这些新面部不用作训练样品来训练模型)执行面部识别,并且在执行面部识别时仍然确保了可接受的准确性水平。
为清楚起见,应当理解,虽然本公开的实施方案主要涉及执行对人的面部的面部识别,但是实施方案不应被理解为受限于此。例如,可训练本公开的系统识别任何合适类型的对象,然后相应地采取合适的动作(例如,提供通知、授予访问权限等)。在一个示例中,人的手可包含可与人的联系人相关联的独特特征。可训练系统从由一个相机捕获的图像中识别手,同时使用由另一个相机捕获的图像作为参考图像。另外,虽然本公开的实施方案可主要讨论对涉及口罩的被部分覆盖面部执行面部识别,但是实施方案不应被理解为受限于此。例如,可训练本公开的系统生成用于在训练面部特征模型中使用的任何适合类型的模拟面部覆盖物。另外,该系统还可确定排除(和/或包括)具有任何合适类型的面部覆盖物(例如,太阳镜、帽子等)的图像。
图1是示出根据一些实施方案的在示例性环境中操作的系统通知服务的简化框图100。在图1中,所描绘的示例性环境是家庭环境101。家庭环境101可包括具有一些附属关系(例如,家庭成员、室友等)的一个或多个人。在该示例中,用户106和用户110可表示附属用户,并且可分别与用户设备108和112相关联。另外,在家庭环境101内可存在驻留设备102(例如,平板电脑、智能家居控制器、智能数字媒体播放器、家庭自动化设备(例如,该家庭自动化设备是家庭自动化系统的一部分)等)。驻留设备102可通信地连接到观察相机122(例如,安装的观察相机),由此驻留设备102可从观察相机122接收图像(例如,视频帧)。如本文进一步所述,驻留设备102可包括通知服务130,该通知服务包括面部特征模型132。可训练面部特征模型132从观察相机122接收一个或多个图像,例如捕获正在接近家庭环境101(例如,前门)的人120的面部的一部分。在从观察相机122接收到该一个或多个图像时,面部特征模型132可确定人120的面部的一组特征(例如,生成该人的面纹)。然后,部分地基于该所确定的一组特征,通知服务130可确定人120的面部是否是可识别的,并且/或者人120是否是与用户设备108和/或用户设备112(例如,这两个用户设备分别与用户106和/或用户110相关联)相关联的联系人中的一个联系人。然后,驻留设备102可至少部分地基于该确定来确定是否以及如何(例如,向这些用户设备中的一个用户设备)提供通知。应当理解,可训练面部特征模型132生成佩戴着面部覆盖物(例如,口罩)的人(诸如,图1的人120)的面纹。还可训练相同的模型132生成未佩戴面部覆盖物的人的面纹。至少这样,在特定人佩戴着(或未佩戴)面部覆盖物的任一情况下,通知服务130都可检测到特定人的存在。
更详细地转到图1的元件,在一些实施方案中,用户设备(例如,用户设备108或112)可以是任何合适的计算设备。在非限制性示例中,用户设备可以是移动电话、平板电脑、PC、膝上型电脑等。在一些实施方案中,用户设备可包括相机部件,该相机部件可内置于用户设备中或以其他方式连接(例如,经由电缆或无线连接)。用户设备可具有本地存储库,该本地存储库适用于(例如,在照片库中)存储由相机部件捕获的图像的库。如本文进一步讨论的(例如,参考图2),在一些实施方案中,每个用户设备的照片库可与驻留设备102共享以用于通过通知服务130进行面部识别。例如,用户106和用户110两者可具有共同的熟人(例如,联系人),并且这两个用户均可使用他们的用户设备来捕获该共同的熟人的照片。在该示例中,该共同的熟人的照片中的一张或多张照片可由驻留设备102接收,该一张或多张照片选自每个用户设备(例如,108和112)的照片库以用作参考图像集(例如,或图像裁剪)的一部分,以用于执行面部识别。又如,用户设备108的照片库可包含与驻留设备102共享的用户106(例如,人120)的好友的图像。然而,用户设备112的照片库不包含该好友的任何图像。在这种情况下,如果通过观察相机122检测到任何附属用户(例如,用户106)的联系人,则用户110可能已在他们的用户设备112上的应用程序中启用设置以得到通知(或不得到通知)。因此,当人120出现在住宅门口处时,驻留设备102可向用户设备112发送人120已到达的通知(或避免发送通知)。如本文进一步讨论的,应当理解,可基于所识别的人的类型来确定关于跨不同照片库共享联系人的照片和/或提供通知的任何合适的设置。
在一些实施方案中,驻留设备102可以是任何合适的计算设备,该计算设备驻留在特定环境中并且被配置为控制(例如,提供控制指令)环境中的一个或多个操作和/或附件。在一些非限制性示例中,驻留设备可以是智能扬声器、智能电视设备、平板设备、智能数字媒体播放器(例如,被配置为向电视提供流媒体)等。在图1的示例中,驻留设备102可对应于智能扬声器设备。在驻留设备102确定识别到人120的面部时,驻留设备102可通过播报例如特定联系人(例如,用户106、110中的一者的联系人)已到达来提供通知。在另一个示例中,驻留设备102可向用户设备中的一者或多者(例如,108或112)传输特定联系人已到达的消息。例如,警示消息可在用户设备的显示器上弹出。应当理解,通知可通过驻留设备使用任何合适的信道和/或方法来提供,这取决于例如驻留设备的类型、用户设备的类型、周围环境等。例如,考虑另一个实施方案,其中驻留设备可对应于智能电视设备(例如,连接到电视的数字媒体播放器)。智能电视设备可被配备为在电视上呈现图形用户界面(GUI),该图形用户界面可包括画中画(PIP)呈现。在该示例中,驻留设备可以视听(AV)馈送的形式提供通知。例如,该驻留设备可在电视的插入窗口中显示视频馈送(例如,从观察相机122接收到的)。另外,在观察相机122和/或智能电视设备可配备有双向音频(例如,具有扬声器和麦克风)的情况下,驻留设备可实现在家庭环境中的用户和在外部的人120之间的双向通信。在一些实施方案中,驻留设备可包含本地内存存储库,该本地内存存储库适用于存储和处理从一个或多个用户设备(例如,用户设备108和112)和/或其他相机(例如,观察相机122)接收的图像(例如,图像裁剪)。在一些实施方案中,如本文进一步所述(例如,参考图5),驻留设备可通过中间源(例如,远程服务器)从用户设备接收图像裁剪。例如,用户设备108可首先将图像裁剪传输到远程云服务器以用于存储(例如,临时存储)和/或分析。然后,驻留设备102可随后从远程服务器接收该图像裁剪。
在一些实施方案中,驻留设备102可通信地连接到任何合适的相机。例如,如图1所描绘的,观察相机122可以是定位在紧邻家庭环境101附近(例如,前门附近)的位置处的观察相机。在一些非限制性示例中,观察相机122可以是网络摄像头、平移-倾斜-缩放(PTZ)相机等。在一些示例中,观察相机122可以是另一个设备(例如,平板电脑)的部件,该另一个设备继而连接到驻留设备102。在一些示例中,观察相机122可将任何具有合适的图像(例如,帧)质量的视频馈送传输到驻留设备102。应当理解,通过驻留设备102从观察相机(例如,观察相机122)接收的输入图像的质量水平可与通过驻留设备102从一个或多个用户设备(例如,用户设备108、112)接收的参考图像的质量水平不同。如本文进一步讨论的,可至少部分地基于考虑参考图像和输入图像之间的质量水平差异来训练通知服务130的面部特征模型132生成人120的面纹,以用于执行面部识别。
虽然图1描绘了其中系统检测到接近住宅前门的人的家庭环境情景,但是应当理解,本公开的实施方案可在任何合适的情景中执行。例如,观察相机122可被定位成在住宅内具有特定位置的可视区域,而不是安装在住宅外的前门附近。在该示例中,系统可警示在住宅的另一部分中的用户,另一个人(例如,小孩)已进入住宅内的特定位置。另外,实施方案还可在非家庭环境情景中执行。例如,商务办公室可检测某些访客何时到达,或者政府办公室可检测何时可能存在对特定位置的未经授权访问。另外,虽然图1将驻留设备102描绘为执行通知服务130,但是实施方案不应被理解为受限于此。例如,可启用用户设备或其他合适的计算设备执行本文参考通知服务130和/或面部特征模型132所述的实施方案中的任一个实施方案。
如上所述,驻留设备102和/或用户设备(例如,108、112)可根据一个或多个控制设置来配置。例如,在一些实施方案中,用户设备可接收来自用户用于确定用户设备的照片库是否应与其他用户(例如,在住宅中的用户)共享的输入。在一种情况下,用户设备108可与用户设备112共享照片库。在这种情况下,根据来自用户设备108的照片库中的图像确定的任何联系人也可被视为是与用户设备112相关联的联系人。因此,虽然在一些实施方案中,“照片库”(例如,也被称为“图像库”)可仅对应于被存储在本地设备上的图像,但是在其他实施方案中,“照片库”可对应于跨多个用户设备共享的照片集合。在一些实施方案中,用户设备还可被配置为确定是否接收(或结合)从一个或多个其他用户设备(例如,已共享他们相应的照片库的家庭成员的用户设备)共享的图像。在一些实施方案中,用户设备可被配置为自动标记(例如,标注)被确定为包含与用户设备(和/或用户)相关联的现有联系人的面部的图像。例如,用户设备108可接收将(例如,由用户设备108的相机部件捕获)照片库的图像中的人的面部标记为人120的输入。随后,用户设备108可自动将由用户设备108的相机捕获的用户标记为人120。在另一个示例中,用户设备108可呈现由观察相机122捕获的示出人120的图像。用户设备108可接收来自用户106的用于将该图像标注为示出人120的输入,该图像稍后可用于面部识别,如本文所述。在又一个示例中,用户设备108可不接收来自用户的用于将图像中的某人标记为特定的已知联系人的输入。然而,用户设备108仍然可将包含同一面部的图像分组在一起。在一些情况下,用户设备108可将在照片库中的照片中检测到的任何面部关联为已知联系人(例如,即使未分配明确的联系人名称)。
在一些实施方案中,如本文进一步所述,用户设备可使得用户能够部分地基于由观察相机捕获的照片(例如,面部的该部分的照片)的质量来标记(例如,从观察相机接收到的)该照片。例如,假设观察相机122捕获佩戴着口罩的人120的图像,如图1所描绘的。驻留设备102的面部特征模型132可确定人120佩戴着口罩。在一些实施方案中,驻留设备102可确定不允许该图像被包括在参考图像集内以用于对人120的未来面部识别。这可能是因为,至少相对于面部覆盖物,示出人120的未被覆盖面部的图像可提供比示出人120的被覆盖面部的图像更多的信息增益(例如,更多可识别的面部标志)。因此,当向用户设备108提供人120在前门处的通知时,该通知可能无法使得用户106能够将人120标记为联系人。在另一个实施方案中,用户设备108可使得用户106能够对人120进行标记。然而,用户设备108和/或驻留设备102可检测到图像包含被遮蔽的面部,并且因此可自动防止该图像被包括在用于未来检测人120的参考图像集内。在又一个实施方案中,两种类型的图像(例如,其示出人120的面部的被遮蔽的部分和未被遮蔽的部分)均可包括在人的参考图像集中。这可能存在于例如以下这种情况中:涉及图像质量的其他变量(例如,分辨率、清晰度、对比度、照明等)对于参考集中的每个图像是充分可接受的,使得面部质量度量指示该图像质量适用于识别人的面部。在这种情况下,面部特征模型132可利用参考集中两种类型的图像(例如,涉及特定人的被遮蔽的面部和未被遮蔽的面部)。
在一些实施方案中,驻留设备可被配置为至少部分地基于所识别的人的类型来提供通知。例如,在一个实施方案中,驻留设备102可从用户设备108接收仅在检测到的人不是与用户设备108相关联的联系人(例如,在用户设备108的照片库的图像中的任一个图像中未找到该人)时才接收通知的请求。例如,当用户106仅想要在非联系人接近住宅时而不是在亲属回到住宅时才得到通知,可使用该设置。在另一个实施方案中,驻留设备102可从用户设备108接收仅在检测到的人是与用户设备108相关联的联系人时才接收通知的请求。在另一个实施方案中,驻留设备102可被配置为在检测到任何人时均提供通知,无论该人是可识别的还是不可识别的。应当理解,上述设置仅是代表性的,并且可使用任何合适类型的设置来配置驻留设备和/或用户设备。在一些情况下,特定设置可导致由驻留设备提供的通知的数量增加(例如,将驻留设备配置为每当检测到任何人时通知用户)。在一些情况下,特定设置可导致由驻留设备提供的通知的数量减少(例如,将驻留设备102配置为仅在检测到与特定用户设备上的照片库匹配的人的情况下才提供通知)。在一些实施方案中,通知可包含除所检测到的人的身份之外的任何合适的信息。例如,驻留设备102可被配置为向用户设备108提供指示人120(例如,用户106的小孩)在特定时间到达住宅的通知。
图2是示出根据一些实施方案的用于基于从图像库中选择的图像裁剪来提供通知的至少一些示例性技术的另一个简化框图200。在图2中,描绘了用户设备202、用户设备204和驻留设备206。在一些示例中,用户设备202和204可分别类似于图1的用户设备108或112中的任一者。另外,驻留设备206可类似于图1的驻留设备102。在一些实施方案中,每个用户设备可通信地连接到驻留设备206。如所描绘的,用户设备202和204可包含存储在相应用户设备的本地内存存储库中的照片库210和230。在一些实施方案中,在特定用户设备上执行的应用程序(和/或服务)可负责管理该设备上的照片库并与驻留设备206通信(例如,配置设置)。在一些实施方案中,该应用程序可在用户设备(例如,用户设备202)的GUI内呈现照片库(例如,照片库210)。虽然图2的相应用户设备202和204仅描绘了每个照片库(例如,210和230)中的5张照片,但是这仅出于示意性的目的。应当理解,一般来讲,给定用户设备上的照片库可包含任何合适数量的图像。
在一些实施方案中,如上所述,用户设备的照片库中的这些图像可由该用户设备从任何合适的源接收。使用用户设备202作为示例,在一个实施方案中,用户设备202可使用用户设备202(例如,移动电话)的相机部件来捕获图像。在捕获到该图像时,用户设备202可将该图像存储在照片库210中。在另一个实施方案中,用户设备202可从另一个设备接收一个或多个图像。例如,用户设备202可直接接收并存储从其他设备(例如,用户设备204或另一个设备)共享的图像。需注意,在一些情况下,用户设备202和204两者可彼此共享对方的库,即使它们不分别将图像直接传输到另一个设备。例如,如上所述,每个设备上的照片库可供使用(例如,共享),使得驻留设备206具有对两个库的访问权限。在这种情况下,驻留设备可负责管理(例如,和/或同步)共享照片库以用于至少提供通知的目的。如本文进一步所述,由驻留设备206管理的该共享照片库可以是存储在用户设备202、204上的本地内存存储库中的相应照片库的照片子集(例如,所选择的图像裁剪)。这些所选择的图像裁剪可包括在不同人的相应面部的一个或多个参考图像集中,驻留设备206可使用该一个或多个参考图像集来执行面部识别。
在一些实施方案中,照片库(例如,照片库210或230)中的每个图像可具有特定的质量水平。图像的质量水平可与一个或多个因素相关联。在一些非限制性示例中,质量水平可与图像中的失真水平(例如,径向失真)、图像分辨率(例如,由像素的数量(或每英寸的像素(PPI)表示)、图像对比度水平(例如,对比度)、图像清晰度和/或其他变量相关联。例如,一个变量可对应于图片中是否存在阻挡(或阻碍)正被识别的人的面部的任何遮挡。另一个变量可对应于是否存在任何图像伪影,例如由于图像压缩或其他可包括在图像中的噪声而产生的图像伪影。应当理解,在一些示例中,不同相机可与不同图像质量水平相关联。例如,与通信地连接到驻留设备206的观察相机(例如,图1的观察相机122)相比,用户设备202和204的相机部件可与更高的图像质量水平相关联。例如,用户设备(例如,移动电话)可用于捕获可能正在为拍摄照片而摆好姿势并且/或者在可能存在更好照明、更少遮挡等的环境中的人的图像。同时,观察相机可捕获可能不在为拍摄照片而摆好姿势(例如,连续四处移动)并且/或者在照明可能不佳(例如,在没有背景光的夜间)的环境中等的人的图像。如本文所述,在一些实施方案中,用户设备可部分地基于面部质量度量来确定是否传输图像的图像裁剪。面部质量度量可指示图像的质量(例如,图像中示出的面部质量)是否与面部识别的预定义阈值匹配(例如,大于或等于该预定义阈值)。在一些实施方案中,面部质量度量可与图像中示出的面部的该部分是可识别的置信水平相关联。例如,在用户设备上执行的经训练的模型可从示出面部的图像裁剪生成面纹向量。在该示例中,可确定具有来自高质量图像的(例如,关于面部的面部标志的)更多信息增益的面纹向量与预定义阈值匹配,如面部质量度量所指示的。因此,用户设备可确定图像裁剪是传输到驻留设备206以被包括在特定人的面部的参考图像集中的候选。
在一些实施方案中,用户设备的照片库中的图像可捕获人的面部,由此图像中的面部可被面部覆盖物部分覆盖。例如,如下文相对于图2进一步所述,用户设备202和204的照片库中的若干图像示出了被面部覆盖物(例如,口罩)部分覆盖的面部的部分。在一些实施方案中,在用户设备上执行的经训练的面部特征模型可确定图像中示出的面部的该部分是否包括面部覆盖物的置信水平。对面部覆盖物的可能性的这种确定可作为确定图像中示出的特定面部的一组特征的一部分来执行。在一些实施方案中,如本文所述,用户设备可部分地基于图像裁剪中示出的面部是否被面部覆盖物覆盖来确定是否传输图像。例如,经训练的面部特征模型可确定示出被面部覆盖物覆盖的面部的图像裁剪提供用于检测面部的更低水平的信息增益,并且因此不应将这些图像裁剪传输到驻留设备206。在一些实施方案中,如果例如用户设备确定照片具有足够的质量水平(例如,分辨率、清晰度等),则尽管存在面部覆盖物,用户设备也可确定将图像传输到驻留设备206,使得可利用由该图像提供的附加信息增益来增强人的参考图像集。
更详细地转到照片库中的每个照片库的内容,如图2所描绘的,每个照片库可包含一个或多个图像。就用户设备202的照片库210而言,如上所述,描绘了5个代表性图像。每个图像可包含至少一个人的面部的至少一部分。应当理解,照片库中的其他图像可不包含任何人的面部,并且可相应地提供更少的(例如,不提供)信息增益以用于执行面部识别,如本文进一步所述。在用户设备上执行的应用程序可生成在图像中描绘的每个人的面部的图像裁剪。例如,图像212可显示人的面部,应用程序根据该面部生成图像裁剪214。可针对其他图像生成类似的代表性图像裁剪(例如,图像裁剪216、218、222、224、226)。需注意,图像裁剪224和226可从相同的非裁剪图像(例如,原始图像)生成。类似地,就用户设备204的照片库230而言,在用户设备204上执行的应用程序可生成代表性图像裁剪232、234、236、238、240和242。如上所述,需注意,照片库210的图像裁剪214示出了佩戴着面部覆盖物(例如,口罩)的人。另外,用户设备204的照片库230包括图像裁剪232和238,这两者均示出了佩戴着口罩的人。应当理解,这些图像裁剪是示出佩戴着口罩的人的代表性图像裁剪。在任何给定的照片库中,可存在示出被一个或多个面部覆盖物部分覆盖的面部的任何合适数量的图像。此外,面部覆盖物可根据一个或多个因素变化,这些因素包括但不限于尺寸、形状、颜色、纹理等。例如,图像裁剪232中示出的口罩是灰色的,而图像裁剪238中示出的口罩具有斑点设计。图像裁剪214示出了白色口罩。
如上所述,在一些实施方案中,可在每个用户设备上执行经训练的面部特征模型,以用于确定哪些图像(例如,图像裁剪)应被传输到驻留设备206。这些图像裁剪稍后可由驻留设备206用作用于执行面部识别的参考图像。在一些实施方案中,虽然在用户设备(例如,202、204)上执行的经训练的面部特征模型可用于不同目的,但是该模型可与在驻留设备102上执行的通知服务130的面部特征模型132类似(例如,相同)。例如,如本文所述,在用户设备上执行的面部特征模型可用于从图像裁剪生成面纹。然后,基于比较所生成的面纹来确定来自每个面纹的信息增益水平,用户设备可确定将图像裁剪子集作为特定面部的参考图像传输到驻留设备206。同时,在驻留设备206上执行的类似(例如,相同)面部特征模型可用于生成面纹,以供稍后在确定得分时进行比较以执行面部识别。在一些实施方案中,可如本文所述那样例如参考图4训练经训练的面部特征模型。
在图2所描绘的简化图中,针对用户设备中的每个用户设备生成的图像裁剪分别描绘了两个人(例如,联系人)的面部的特定部分(例如,不同的视图)。例如,图像裁剪214、216和226可分别对应于用户设备202的第一联系人的面部的特定部分。图像裁剪218、222和224可分别对应于用户设备202的第二联系人的面部的特定部分。应当理解,这些图像裁剪是代表性的。在一些实施方案中,照片库210可包含两个人中的每个人的和/或其他联系人的更多照片。在用户设备202上执行的应用程序(或服务)可执行面部特征模型,以针对每个图像裁剪来确定面部的一组特征。在一些实施方案中,面部特征模型可生成与面部的该组面部特征相关联的面纹。例如,如上所述,针对图像裁剪214的面纹可对应于多维向量,由此每个维度与图像裁剪214中示出的面部的该组特征中的至少一个特征相关联。因此,用户设备202可执行面部特征模型,以针对对应于第一联系人的图像裁剪214、216和226生成相应面纹。如上所述,应当理解,这些图像裁剪(和面纹)可能已被标记(例如,自动地或手动地标记)为对应于第一联系人。然后,用户设备202可比较第一联系人的不同面纹,以确定提供实现更准确的面部识别的信息增益水平的图像裁剪子集。例如,用户设备202可确定:虽然针对图像裁剪214的面纹提供了第一联系人的面部的与图像裁剪216显著不同的视图(例如,因此,将以其他方式提供来自新发现的面部标志/特征点的显著信息增益),但是图像裁剪214示出了第一联系人的被面部覆盖物覆盖的面部。因此,可减少由图像裁剪214提供的信息增益,并且因此,用户设备可确定不将图像裁剪214传输到驻留设备206以不将其包括在参考图像集中。应当理解,在一些实施方案中,可至少部分地基于确定图像裁剪(例如,图像裁剪214)与一个或多个其他图像(例如,图像裁剪216)之间的差距来确定由该图像提供的信息增益水平(例如,独特性)。在一些实施方案中,可基于计算每个图像的面部的特征点(例如,面部标志,诸如眼睛、鼻部、嘴部、下巴等)之间的差距来确定图像之间的差距,然后比较图像之间的那些所计算的差距中的一个或多个那些所计算的差距。在一些实施方案中,可对面部特征点之间的该一个或多个所计算的差距进行加权和/或组合,以适用于图像之间的比较。继续图2的说明,用户设备202可进一步确定:虽然图像裁剪214示出与图像裁剪226类似的面部视图,但是图像裁剪226示出未被面部覆盖物覆盖的面部的一部分。在该示例中,图像裁剪226可因此比图像裁剪214提供更多信息增益。因此,图像裁剪226可被包括在传输到驻留设备206的该一个或多个图像中,以考虑将其包括在参考集中。在另一个示例中,用户设备202可确定图像裁剪226确实提供了足以将其包括在图像裁剪子集中的足够水平的信息增益。然后可将针对第一联系人确定的该图像裁剪子集传输到驻留设备206。
可对第二联系人执行类似的分析。在一个示例中,用户设备202可基于比较针对每个图像裁剪的面纹来确定图像裁剪218、222和224各自示出第二联系人的不同面部视图,使得从每个图像获得高水平的信息增益。在该示例中,图像裁剪中的每个图像裁剪然后可被包括在第二联系人的传输到驻留设备206的图像裁剪子集中。应当理解,可由用户设备(例如,用户设备202、204)来确定针对给定联系人的任何合适大小的图像裁剪子集。例如,在照片库210中可能存在(例如,在图像212中绘出的)第一联系人的20个图像裁剪的示例中,用户设备202可选择被确定为提供最大信息增益量的10个最佳图像裁剪。
如先前所述,在图2所描绘的示例中,针对用户设备204生成的图像裁剪描绘了在用户设备202的图像裁剪中示出的相同的两个人(例如,第一联系人和第二联系人)的不同部分。例如,图像裁剪232、238和240可分别对应于第一联系人的面部的一部分,而图像裁剪234、236和242可分别对应于第二联系人的面部的一部分。类似于先前所述,在用户设备204上执行的面部特征模型可针对图像裁剪中的每个图像裁剪生成面纹。用户设备204可比较这些面纹以确定这些面纹之间的相似性,以及哪个图像裁剪子集可产生最高水平的信息增益。例如,用户设备204可确定图像裁剪232和238示出第一联系人的分别被面部覆盖物覆盖的面部的部分。因此,用户设备204可排除这些图像,不将这些图像传输到驻留设备206。然而,在确定没有面部覆盖物、面部是可识别的以及特定图像裁剪240提供提高水平的信息增益时,用户设备204可包括示出第一联系人的面部的另一个部分的图像裁剪240。在该示例中,用户设备204还可确定图像裁剪234和242形成针对第二联系人的图像裁剪子集(例如,在确定图像裁剪236不提供附加边际信息增益时,排除该图像裁剪)。然后,用户设备204可将这些子集传输到驻留设备206。
在一些实施方案中,驻留设备206可从每个用户设备(202,204)接收针对每个联系人(例如,第一联系人和第二联系人)的图像裁剪子集。在接收到每个图像裁剪子集时,驻留设备206可进一步组合与同一联系人匹配的子集,从而为该特定联系人确定参考图像(例如,图像裁剪)集。例如,驻留设备可遵循如上所述的类似过程来确定要包括哪些图像裁剪(其来自该特定联系人的组合子集)。这可涉及选择提供更高水平的信息增益的图像裁剪。在一些实施方案中,这可涉及驻留设备206的面部特征模型首先针对每个图像裁剪生成面纹,比较这些面纹,然后确定(例如,选择)要使用的参考图像集。在一些实施方案中,驻留设备206的经训练的面部特征模型可进一步确定图像裁剪中的任一个图像裁剪是否示出被面部覆盖物覆盖的面部(例如,在用户设备传输示出被覆盖面部的图像裁剪的事件中)。在该示例中,驻留设备可至少部分地基于确定该图像裁剪示出面部上方的面部覆盖物来确定排除该图像裁剪。在另一个实施方案中,驻留设备206仍然可包括示出部分覆盖面部的面部覆盖物的图像裁剪,例如,在由该图像裁剪提供的信息增益水平足以保证该图像裁剪被包括在该参考图像集中的情况下。然后,驻留设备206可将跨不同用户设备接收的每个联系人的参考图像集存储到驻留设备206的本地存储器。这样,驻留设备206可跨不同用户设备协调(例如,同步)联系人,并且有利于不同用户设备之间的共享库。在一些实施方案中,驻留设备206还可(或另选地)存储对应于特定联系人的参考图像集中的图像中的每个图像的面纹,以供稍后用于面部识别(例如,如下文参考图3所述)。应当理解,如本文所述,虽然可参考单个图像裁剪来描述面纹,但是在一些实施方案中,面纹可能结合了来自多个图像裁剪的特征。在一个示例中,面部特征模型可首先针对每个图像裁剪确定多维向量面纹。然后,面部特征模型可(例如,通过余弦相似性)比较不同的面纹,并且生成结合了来自其他向量的信息的新多维向量(例如,结合了来自多个图像裁剪的信息的面纹)。
在一些实施方案中,驻留设备206可接收可用于更新联系人的一个或多个参考图像集的新图像裁剪。例如,用户设备202可捕获(例如,图像212所描绘的)第一联系人的一个或多个新图像。与存储在照片库210中的第一联系人的先前图像相比,该一个或多个新图像可捕获独特部分(并且/或者可具有更高的质量水平)。因此,用户设备202可确定:与来自现有参考图像集的一个或多个图像相比,该一个或多个新图像提供附加水平的信息增益。服务可在用户设备202上执行(例如,以任何合适的节奏执行)以确定是否应将新图像裁剪发送到驻留设备206,以用于更新第一联系人的参考图像集。应当理解,由于驻留设备206可从多个用户设备接收一个或多个新图像,因此该驻留设备还可跨多个用户设备协调参考图像的更新。例如,驻留设备206可确定来自每个设备的每个新图像可提供什么水平的附加信息增益。在一些实施方案中,驻留设备206可针对新图像生成一个或多个更新的面纹,该一个或多个更新的面纹被添加以为特定联系人生成更新的参考图像集。至少这样,驻留设备206可连续提高特定联系人的参考图像集的质量(例如,和/或覆盖范围)。
应当理解,虽然图2所描绘的实施方案主要涉及接收和处理来自用户设备的图像(例如,图像裁剪)的驻留设备206,但是实施方案不应被理解为受限于此。例如,驻留设备206可从另一个设备(例如,包括相机,诸如图1的观察相机122)接收图像。在一个示例中,驻留设备206可从观察相机122接收图像,然后确定图像中示出的面部的面纹。假设面纹的质量足以识别图像中示出的面部(例如,根据面部质量度量),则驻留设备206可将该图像标记为已知联系人,并且/或者接收标记该图像的输入(例如,经由在用户设备上执行的用户应用程序)。驻留设备206然后可确定是否将该图像(和/或对应的面纹)包括在该联系人的参考图像集内。这可部分地基于图像中示出的面部的该部分是否未被面部覆盖物覆盖来确定。在另一个示例中,如果经由相关联的面纹确定图像提供足够水平的附加信息增益,则可仍然包括示出被部分覆盖的面部的该图像。
图3是描绘根据本公开的一些实施方案的由系统执行的示例性过程的另一个简化图。过程300是系统(例如,图1的驻留设备102或图2的驻留设备206)确定某个位置处人的存在的示例性高级过程。图示301描绘了对应于过程300的框的示例性状态。图示301可包括与参考图1和图2所描绘的那些元件类似的元件。例如,多个图像裁剪311可对应于图2的第一联系人的代表性图像裁剪216、226和240。在一些实施方案中,第一组特征313可对应于从该多个图像裁剪311生成的一个或多个面纹。在一些实施方案中,第一组特征还可与该一个或多个图像的其他特征相关联和/或对应,这些其他特征包括但不限于图像的质量、图像内的面部可识别的置信水平、图像中示出的人的年龄、性别、面部是否被面部覆盖物部分覆盖(如果是的话,面部覆盖物的类型)等。在一些实施方案中,这些特征可根据从图像生成的面纹来确定。人317可对应于图1的人120,相机315可对应于图1的观察相机122,图像319(例如,其可为多个图像(或帧)中的一个图像(或帧))可对应于由相机315捕获的图像,并且第二组特征321可对应于从图像319生成的面纹等。
更详细地转到过程300,在框302处,系统可基于从第一相机接收的图像来确定第一人的未被覆盖面部的第一组特征。为了执行该确定,并使用图示301进行说明,系统可首先从一个或多个用户设备(例如,图2的用户设备202和/或用户设备204)接收一个或多个图像(例如,多个图像裁剪311)。该一个或多个图像中的每个图像可示出第一人的面部的至少一部分。从一个或多个用户设备接收图像的该步骤可类似于参考图2所述的步骤。然后系统可执行经训练的面部特征模型来确定第一人的第一组特征313。例如,面部特征模型可针对所接收的每个图像裁剪生成面纹。系统可将第一组特征313存储(例如,将图像裁剪和/或每个图像裁剪的相应面纹存储)在系统上以供稍后处理。在一些实施方案中,该系统可被配置为存储针对给定联系人(例如,第一人)的预定义数量的图像裁剪,由此根据哪些图像裁剪提供最多信息增益来选择所存储的图像裁剪,以用于执行对第一人的面部的面部识别。例如,系统可被配置为存储针对给定联系人的10个参考图像裁剪。在该示例中,系统可接收来自第一用户设备的10个图像裁剪和来自第二用户设备的10个图像裁剪(全部为相同的第一人的图像裁剪)。然后,系统可确定总共20个图像裁剪中的哪10个图像裁剪提供最多信息增益。这可例如通过比较图像裁剪中的每个图像裁剪的面纹以确定相似性/差异(例如,基于确定面纹之间的余弦相似性)来完成。在一些实施方案中,更大的差异可对应于更高水平的信息增益。如本文所述,作为确定是否要将图像和/或相关联的面纹包括在人的面部的参考图像集内的一部分,系统可首先确定(例如,确认)图像中示出的人的面部的该部分可能未被面部覆盖物覆盖。这样,系统可以高概率确保该参考图像集中的图像分别示出特定人的面部的未被覆盖部分。应当理解,即使在系统确定要存储的该参考图像裁剪集之前,每个用户设备也可能先前已基于来自每张照片的确定水平的图像增益(例如,为其自身确定面部是否被面部覆盖物部分覆盖)(例如,从用户设备上的照片库中)选择了第一人的面部的照片的子集。这样,系统可在用户设备之间协调以确定哪些图像裁剪是最佳参考图像。应当指出的是,这可通过减少从各种用户设备传输到驻留设备的数据(例如,图像)的量来改进常规方法。这还可降低驻留设备所需的处理能力(例如,处理减少数量的图像),以及降低驻留设备的存储要求。另外,通过确保特定联系人的该参考图像集对于每个图像具有可接受的面部质量水平(例如,排除了示出具有局部面部覆盖物的面部的图像),实施方案可提高执行面部识别的准确性。
在框304处,系统可基于从第二相机(例如,相机315)接收的图像(例如,图像319)来确定第二人(例如,人317,其身份尚未确定)的面部的第二组特征。继续图示301以进行说明,并且如本文所述,相机315可连接到系统(例如,驻留设备)。在一个示例中,相机315可定位(例如,安装)在特定位置处(例如,住宅门口外),由此系统可位于住宅内并经由有线(或无线)连接连接到相机315。相机315可捕获接近住宅门口的人317的视频馈送。系统可从相机315接收多个图像,该多个图像可对应于相机315的视频馈送的视频帧序列。图像319可以是来自视频馈送的该多个图像中的一个图像。在该示例中,第二人佩戴着口罩。因此,从相机315接收的图像集分别示出了被部分覆盖的面部的部分。系统的面部特征模型可基于图像319生成第二组特征321。例如,类似于如上所述,面部特征模型可基于图像319生成人317的面部的面纹。在这种情况下,所生成的面纹可对应于第二组特征321。应当理解,虽然该说明中仅描述了视频馈送的该多个图像中的单个图像(例如,图像319),但是系统可生成针对从相机315接收的该多个图像中的任何一个或多个图像的面纹。在一些情况下,这些面纹中的一个或多个面纹可比其他面纹提供更多信息增益,以用于检测人317的面部。例如,在一个时间间隔内,视频帧可捕获背向相机的人317(例如,提供更少信息增益),而在另一个时间间隔内,人的面部可面向相机(或在其侧视角处),并且/或者人可能已移除其口罩。在该示例中,需注意,从图像319生成的面纹结合了人317的面部被口罩部分覆盖的事实。例如,如参考图4进一步所述,可训练面部特征模型生成(并稍后比较)未被覆盖面部(例如,根据参考图像集311)和被部分覆盖面部(例如,其在图像319中示出)的面纹。因此,例如,如果确定面部可能被口罩部分覆盖,则可训练模型较少地强调某些面部标志(例如,嘴角),并且较多地强调其他面部标志(例如,给予更大权重)。应当理解,可部分地基于检测到面部覆盖物的类型来确定面部的被进一步强调或不强调的面部标志的特定集合(例如,子集)。
在框306处,系统可通过将第一组特征与第二组特征进行比较来确定第一人是第二人。使用图示301进行说明,系统可将第一组特征313与第二组特征321进行比较。例如,系统可将对应于第一组特征313的一个或多个面纹与对应于第二组特征321的一个或多个面纹进行比较。例如,考虑多个图像裁剪311中的一个图像裁剪示出第一联系人的侧视图的情况。在这种情况下,还假设图像319示出第二人317的侧视图。该系统可比较分别对应于这些图像中的每个图像的面纹,以确定面纹之间的相似性水平。如本文(例如,相对于图4)进一步所述,可训练系统的经训练的模型将未被覆盖面部的面纹与被部分覆盖面部的面纹进行比较。因此,可训练模型,使得同一人的(被覆盖或未被覆盖的)面部的面纹更靠近在一起(例如,基于具有更高水平的余弦相似性而彼此相关联和/或互相关联),而(被覆盖或未被覆盖的)不同面部的面纹是分开的(例如,具有更低水平的余弦相似性)。如果存在高水平的相似性(例如,接近1的余弦相似性),则系统可确定第一人与第二人相同(即,从而确定第二人的身份是第一联系人)。在一些实施方案中,相似性水平可对应于得分(例如,在0和1之间)。在一些示例中,相似性水平可与预定义阈值匹配以确定得分的置信水平。应当理解,可在生成得分时执行多个面纹比较。例如,来自相机315的视频馈送的该多个图像中的图像的面纹可分别用于与来自多个图像裁剪311中的多个图像裁剪的面纹进行比较。还应当理解,出于示意性的目的,简化了对图示301的说明。系统可将第二组特征321(例如,从图像319生成的面纹)与和系统相关联的一个或多个用户设备的多个联系人的多个面纹(或多组面纹)进行比较。如本文所述,这些联系人可由系统基于从每个用户设备的照片库生成和选择的图像裁剪而自动确定。因此,系统可自动且有效地(例如,基于选择的参考图像集)确定人317是否是来自与系统相关联的用户设备中的任一个用户设备的联系人中的一个联系人。基于该确定,系统可确定是否例如向用户设备中的一个或多个用户设备提供通知。另外,如上所述,在一些实施方案中,系统可保持指示与第二组特征321相关联的质量水平的面部质量度量。例如,面部质量度量可指示图像质量是否适用于识别人317的面部。考虑人317转过身去使得相机315仅捕获人的头部的背部的情况。在这种情况下,虽然系统可能仍然能够检测到人在前门,但是可能无法基于面部识别来识别人的身份。在这种情况下,面部质量度量可指示图像的质量不与面部识别的预定义阈值匹配(例如,小于该预定义阈值)。因此,系统可确定是否提供通知。
图4是示出根据一些实施方案的用于训练用于执行面部识别的面部特征模型的至少一些示例性技术的简化框图400。如本文所述,面部特征模型可适用于确定人的面部的一组特征。在一些实施方案中,该组特征可对应于人的面纹。该组特征还可对应于从面部的面纹导出的面部(和/或人)的一个或多个特征点(例如,面部是否被部分覆盖、人的性别、人是否微笑、年龄等)。因此,如下文相对于图4所述,在一些实施方案中,可训练面部特征模型确定人的面纹。还可训练面部特征模型部分地基于所生成的面纹来确定面部的特征点中的一个或多个特征点(例如,面部是否被部分覆盖)的置信水平。在一些实施方案中,由经训练的面部特征模型产生的面纹可适用于彼此比较,例如以确定面纹之间的相似性和/或差异。这些所确定的相似性(或差异)可用于确定将一个人(例如,已知联系人)的面部与另一个人的面部(例如,在相机观察下的特定位置处)匹配的得分。
如本文所述,为了训练模型将来自被部分覆盖面部的面纹与来自未被覆盖面部的面纹进行准确地比较,实施方案可利用模拟的面部覆盖物。例如,如下文进一步所述,用于训练模型的系统可接收示出未被覆盖面部的部分的一个或多个图像。然后,系统可(例如,经由机器学习模型诸如神经网络)确定每个未被覆盖面部的一组面部标志。面部标志可用于识别限定模拟口罩的参数(例如,形状参数)的边界多边形。然后,系统可根据所确定的边界多边形来渲染(例如,使用合适的渲染算法进行光栅化)模拟的面部覆盖物(例如,口罩)以覆盖最初未被覆盖的面部的一部分。例如,系统可渲染模拟口罩以覆盖人的嘴唇和鼻子。如本文所述,所生成的模拟口罩可根据一个或多个因素而变化,该一个或多个因素包括但不限于口罩颜色、口罩纹理、口罩尺寸、口罩形状或口罩在面部上的放置。
因此,在一些实施方案中,训练面部特征模型的过程可包括利用多种训练样品数据。例如,训练样品数据可包括示出未被覆盖面部的部分的图像。该训练样品数据还可包括示出被部分覆盖面部的部分的图像,由此根据最初示出未被覆盖面部的图像模拟并生成面部覆盖物。该训练样品数据还可包括示出部分覆盖面部的真实面部覆盖物的图像。这样,实施方案使得训练能够用比原本可能仅利用原始图像实现的训练数据种类更多的训练数据来执行。例如,可训练该模型将从未被覆盖面部生成的面纹与从被部分覆盖面部(例如,真实的或模拟的面部覆盖物)生成的面纹相关联。这可提高经训练的模型的总体检测准确性。应当理解,面部覆盖物(例如,口罩)的存在是可增加训练数据集中的图像种类的多个变量中的一个变量。例如,如下所述,可利用不同质量水平(例如,分辨率、对比度、噪声等)的图像来训练模型,使得可训练该模型将低质量图像中示出的人的面部与更高质量图像中的同一人的面部匹配。
更详细地转到图4,图示400包括与参考图1、图2和图3所描绘的那些元件类似的元件。例如,用户设备401可类似于图1的用户设备108或112。在一些实施方案中,用户设备401可对应于可将图像捕获和/或存储在照片库中的任何合适的用户设备(例如,配备有数字相机的移动电话)。在一些实施方案中,由用户设备401的相机捕获的图像可具有第一图像质量水平。例如,用户设备和/或相机可被配备为接收启用高动态范围(HDR)以实现照片中的平衡曝光的自动或手动输入。相机还可自动启用/禁用闪光(以用于控制照明)、将一个或多个滤光器应用于图像、自动确定照片中的对比度等。相机还可允许设置默认分辨率(例如,8、10、12.1等兆像素)。
同时,图4的观察相机403可类似于图1的观察相机122和/或图3的相机315。在一些实施方案中,观察相机403可对应于可捕获可传输到驻留设备(例如,驻留设备102)以供处理的图像的任何合适的相机,如本文所述。在一些实施方案中,如本文所述,由观察相机403捕获的图像可具有第二图像质量水平。在一些实施方案中,第二图像质量水平可不同于(例如,小于)用户设备相机的第一图像质量水平。例如,观察相机403可以比用户设备相机更低的分辨率和/或对比度记录图像。另外,观察相机403图像可记录具有更多噪声、更差照明条件等的图像。
在一些实施方案中,通知服务410可类似于图1的通知服务130。通知服务410可包括面部特征模型430,其可类似于本文所讨论的任何面部特征模型中的任一个面部特征模型。如本文所述,在一些实施方案中,可至少部分地基于从不同相机源接收训练图像以及/或者接收不同质量水平的训练图像来训练面部特征模型430。还可使用图像的采样来训练该模型,这些图像示出被真实或模拟的面部覆盖物部分覆盖的面部的部分。基于该训练过程,可训练面部特征模型430确定人的面纹。
在一些实施方案中,训练过程可开始,由此未经训练的面部特征模型430接收人(例如,人1)的多个图像402(例如,图像裁剪)。该多个图像402可分别包括人的面部的不同部分。例如,一个部分可以是侧视图,另一个部分可以是直视视图,另一个部分可以是相对的侧视图,等等。一些部分可具有不同的条件和/或背景。在一些实施方案中,多个图像402可由用户设备401捕获而具有第一图像质量水平(或类似的质量水平)。如图4所描绘的,多个图像402可包括将人1示出为被遮蔽和/或未被遮蔽的图像,由此示出佩戴着遮罩的人的图像可包括模拟遮罩。应当理解,模拟遮罩的质量(例如,分辨率)可对应于(例如,类似于)图像中示出的相关联面部的分辨率。面部特征模型430还可接收同一人(例如,人1)的多个图像420。该多个图像420可能已由观察相机403捕获而具有第二图像质量水平(或类似质量水平)。类似于如上所述,该多个图像420也可分别包括人(例如,人1)的面部的不同部分。另外,这些图像还可将人1示出为被遮蔽和/或未被遮蔽,并且可包括在最初示出面部的未被覆盖部分的图像上渲染的真实和/或模拟的遮罩。应当理解,如上所述,可使用各种类型的遮罩(例如,真实的或模拟的)来训练模型。例如,多个图像402示出佩戴至少白色遮罩的人1,而多个图像420示出至少佩戴着具有十字形设计的遮罩和灰色遮罩的人1。可针对每多个图像模拟任何合适种类的遮罩。在一些非限制性实施方案中,可主要使用具有渲染的模拟遮罩的图像来训练模型,而可主要使用示出真实遮罩的图像来测试经训练的模型。在一些实施方案中,多个图像402和420两者中的每个图像可被标注为描绘同一人(例如,人1)的面部。这些标注可对应于“基准真值”数据。
在一些实施方案中,在接收到多个图像402和420两者时,系统可使用交叉识别训练算法来训练面部特征模型430。在一些实施方案中,交叉识别训练算法可利用任何合适的机器学习技术。一些非限制性示例可包括利用神经网络、支持向量机、最近邻法或决策树。在涉及神经网络的一个示例中,神经网络可接收对应于图像中的一个图像的输入。在一些实施方案中,输入可对应于图像的一个或多个特征点。例如,图像可由神经网络接收的多个特征点(例如,图像的像素块)构成。神经网络可具有一个或多个节点层(例如,输入层、隐藏层和/或输出层)。层的每个节点可表示信息元素。所生成的预测模型可包括隐藏层与输入层和/或输出层之间(例如,不同层的节点之间)的多个互连,其中每个互连可被分配基于在输入值集和输出值集之间识别的模式而生成的数字权重。权重可被调整(例如,基于训练数据集),使得人工神经网络自适应于输入并且能够学习。一般来讲,隐藏层允许在输出层的输出节点之间共享关于输入层的输入节点的知识。为此,通过隐藏层将变换f应用于输入节点。人工神经网络还可使用代价函数来找到最优解(例如,最优变换函数)。最优解表示没有解的代价小于最优解的代价的情况。在一个示例中,代价函数包括均方误差函数,该均方误差函数使示例对(x,y)上的输出f(x)(例如,预测、给定训练数据输入x)和目标值y(例如,基准真值值)之间的平均平方误差最小化。在一些实施方案中,使用梯度下降使代价函数最小化的反向传播算法可用于训练人工神经网络。在该示例中,可使用一个或多个参数(例如,其也可被称为“超参数”)来管理训练过程。例如,这些参数可包括确定要在输入层和输出层之间使用多少隐藏层的节点,以及每层应当使用多少节点。在该示例中,节点的集合和不同层之间的节点的互连之间的所确定的权重(例如,基于训练数据)可形成经训练的模型。
继续图4的训练过程示例,并且使用利用神经网络的交叉识别训练算法作为示例,可训练该神经网络接收多个图像402中的一个图像作为输入,并输出图像中示出的(例如,人1的)面部的第一面纹。如本文所述,面纹可对应于多维向量,由此向量的每个维度对应于图像中的人的面部的特征(例如,面部上的两个已知点之间的距离)。神经网络还可接收多个图像420中的一个图像作为输入,并输出图像中示出的(例如,同一人1的)面部的第二面纹。在一些情况下,交叉识别算法可将第一面纹与对应于同一人(例如,人1)的第二面纹相关联。例如,如上所述,来自多个图像402、420两者的图像中的每个图像可被标注(例如,标注为第一人)。另外,在一些情况下,可标注图像以描述所描绘的面部的部分的类型(例如,侧面部分、直视视图等)。在一些实施方案中,还可标注图像以描述图像中示出的其他特征点,例如,图像中示出的面部的该部分是否被(例如,口罩)部分覆盖。在一些实施方案中,交叉识别训练算法可计算每个面纹的向量之间的相似性(例如,余弦相似性)。然后,至少部分地基于输出和图像之间的已知相似性(例如,基于标注的基准真值数据),交叉识别训练算法可调整面纹中的一个或多个面纹的尺寸。例如,如上所述,交叉识别训练算法可利用反向传播算法来使与面纹之间的距离(例如,面纹向量之间的距离)相关联的代价函数最小化。在一些实施方案中,该反向传播算法可用于调整(例如,更新)神经网络的节点的权重。这样,神经网络可被训练为从同一面部的图像生成面纹,由此图像可具有不同的质量水平。面纹可稍后在面部识别期间用于有效比较(例如,在图3的框306处)。在一些实施方案中,作为训练过程的一部分,可针对人1生成多个“人1面纹”432。例如,面部特征模型430可针对相应图像(例如,相应多个图像402、420中的每个图像)中示出的面部的每个视图(例如,部分)生成面纹。如上所述,应当理解,可以任何合适的数据结构(例如,值的多维阵列)存储面纹。
在一些实施方案中,可至少部分地基于接收到与多个人相关联的多个图像的不同集合来训练面部特征模型430。例如,类似于上文参考“人1”所述,面部特征模型430可接收另一个人(例如,人2)的多个图像404(例如,图像裁剪)。该多个图像402可分别包括人的面部的不同部分。面部特征模型430还可接收同一人(例如,人2)的多个图像422。该多个图像422可能已由观察相机403捕获而具有第二图像质量水平(或类似质量水平)。面部特征模型430可利用如上所述的类似技术来训练面部特征模型430生成一组“人2面纹”434。应当理解,类似于多个图像402和420,多个图像的多个集合中的每个图像可包括一个或多个图像,该一个或多个图像示出可被(或可不被)面部覆盖物(例如,模拟面部覆盖物或真实面部覆盖物)覆盖的面部的部分。因此,面部特征模型430可接收与任何合适数量的人(例如,数百人、数千人等)相关联的训练样品,并且针对每个人产生面纹(例如,基于接收到(例如,人N的)多个图像406和(例如,也是人N的)另外多个图像424来生成“人N面纹”436。
如本文所述,应当理解,本公开的实施方案的优点中的一个优点在于,系统可使用可具有不同相机源和/或不同质量水平的图像来执行面部识别。例如,参考图像集可主要由用户的移动电话捕获。这些参考图像通常可具有比由观察相机捕获的图像更高的质量水平。本公开的实施方案通过允许系统通过将更低质量的图像中的面部与较高质量的图像中的面部进行比较来识别该较低质量的图像中的面部,从而有效地“缩小差别”。如参考图4所述,经训练的面部特征模型430通过生成适用于有效比较的面纹来实现用于该比较的机制。类似地,与示出未被覆盖的面部的部分的图像相比,本公开的实施方案相对于示出被部分覆盖的面部的部分的图像“缩小了检测差别”。例如,虽然由驻留设备保持的参考图像集可包括更高质量的图像(例如,包括特定人的未被覆盖面部),但是经训练的模型可能够将从(例如,来自观察相机的)最近接收的图像生成的面纹与从参考图像集生成的面纹中的至少一个面纹相关联,该最近接收的图像可示出特定人的被部分覆盖面部(和/或更低质量的图像)。这样,实施方案可进一步实现更准确且有效的面部识别。
在一些实施方案中,一旦经过训练,经训练的面部特征模型430就可用于针对任何合适的人的面部(例如,包括不是用于训练面部特征模型430的训练样品的一部分的人的面部)生成面纹。在一些实施方案中,经训练的面部特征模型430可被部署为在任何合适的环境中进行执行。例如,如本文所述,经训练的面部特征模型430可在用户设备(例如,图2的用户设备202或204)和/或驻留设备(例如,图2的驻留设备206)上执行。另外,用于训练面部特征模型430的过程可在任何合适的设备(例如,驻留设备、用户设备、远程服务器(例如,在云端)等)上执行。例如,云计算平台可训练面部特征模型430,然后将该模型分发给用户设备和/或驻留设备。在一些实施方案中,可将不同的经训练的模型(例如,这些模型各自使用不同训练数据集进行训练)部署到不同的设备。例如,云计算平台可接收一个训练图像集(例如,来自一个或多个用户),训练面部特征模型430,然后将面部特征模型430部署到与该一个或多个用户相关联的设备。在一些实施方案中,可以任何合适的节奏更新经训练的面部特征模型430(例如,基于新的训练数据样品和/或利用更新的交叉识别训练算法)。
在一些实施方案中,用于训练面部特征模型和/或更新训练模型的过程可被细分成部分。例如,远程服务器可负责模型的初始训练,该初始训练利用多种图像来训练该模型。然后,该远程服务器可将模型部署到多个用户设备和/或驻留设备。在一些实施方案中,可基于来自对应于(例如,家庭环境的)特定用户设备和/或驻留设备的联系人的特定图像集的图像来进一步训练经训练的模型。例如,驻留设备可被配置为运行新训练过程,该新训练过程结合了来自与特定驻留设备相关联的家庭环境的一个或多个照片库的图像。这样,模型可被进一步“微调”以更准确地识别一组特定面部。在一些实施方案中,在各个用户或驻留设备上本地执行的任何其他训练可与中央远程服务器共享。例如,在一个示例中,多个设备中的每个用户设备和/或驻留设备可将数据集周期性地传输回远程服务器,该数据集表示每个设备上原始训练模型(例如,由该远程服务器部署到各种设备)和相应更新的训练模型的差异。然后,该远程服务器可将这些差异结合到更新的集中式经训练的模型中(例如,作为检查点过程的一部分,以对准各种模型)。然后可将该更新的训练模型重新部署到各种设备。应当理解,模型生成和更新过程可由设备和/或子过程的任何合适的组合来执行。
图5是示出根据一些实施方案的用于基于确定某个位置处人的存在来提供通知的系统的示例性架构的另一个简化框图500。图示500包括用户设备502(例如,其可具有集成的相机部件)、观察相机504、驻留设备506、网络508和远程服务器522。用户设备502、观察相机504和驻留设备506可分别类似于本文所述的用户设备、观察相机和/或驻留设备中的任一者。远程服务器522可对应于云计算平台的一个或多个服务器计算机(例如,服务器集群),如本文所述。
网络508可包括任何合适的通信路径或信道,诸如例如电线或电缆、光纤、电话线、蜂窝链路、射频(RF)链路、WAN或LAN网络、互联网或任何其他合适的介质。网络508可包括许多不同类型的网络(诸如,有线网络、互联网、无线网络、蜂窝网络、其他专用网络和/或公共网络)中的任一种或上述网络的组合。
更详细地转到每个元件,用户设备502可以是任何合适的计算设备(例如,移动电话、平板电脑、个人计算机(PC)、智能眼镜、智能手表等)。在一些实施方案中,用户设备502将具有嵌入作为设备的部件的相机(例如,移动电话相机)。在一些实施方案中,用户设备502将连接到该用户设备从其接收图像(例如,通过网络508)的另一个设备(例如,独立的数字相机)。用户设备502具有至少一个存储器510、一个或多个处理单元(或处理器)514、存储单元516、通信接口518和输入/输出(I/O)设备520。
处理器514可适当地以硬件、计算机可执行指令、固件或它们的组合来实现。处理器514的计算机可执行指令或固件具体实施可包括以任何合适的编程语言编写的计算机可执行指令或机器可执行指令,以执行所述的各种功能。
存储器510可存储可在处理器514上加载和执行的程序指令,以及在执行这些程序的过程中生成的数据。根据用户设备502的配置和类型,存储器510可以是易失性的(诸如,随机存取存储器(RAM))和/或非易失性的(诸如,只读存储器(ROM)、闪存存储器等)。在一些具体实施中,存储器510可包括多种不同类型的存储器,诸如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)或ROM。用户设备502还可包括附加存储装置516,诸如可移除存储装置或不可移除存储装置,包括但不限于磁存储装置、光盘和/或磁带存储装置。磁盘驱动器及其相关联的计算机可读介质可为计算设备提供计算机可读指令、数据结构、程序模块及其他数据的非易失性存储装置。在一些实施方案中,存储装置516可用于将包含一个或多个图像的照片库存储在用户设备502上。
用户设备502还可包含通信接口518,该通信接口允许用户设备502经由网络508与存储数据库、另一个计算设备或服务器、用户终端和/或其他设备进行通信。用户设备502还可包括I/O设备520,诸如以用于实现与键盘、鼠标、笔、语音输入设备、触摸输入设备、显示器、扬声器、打印机等连接。
更详细地转到存储器510的内容,存储器510可包括操作系统和用于实现本文所公开的特征的一个或多个应用程序或服务,包括通知管理模块512。通知管理模块512可负责执行一个或多个任务,包括配置驻留设备506的通知服务和/或向驻留设备506发送(和/或从其接收)数据(例如,图像裁剪)。例如,如本文所述,通知管理模块512可接收用于配置具有用于提供通知的设置的驻留设备的输入。如本文所述,一个示例可以是指示以下操作的设置:如果检测到的人是(或不是)与用户设备相关联的联系人(例如,在存储装置516中的照片库中的图像中的任一个图像中均未找到该人),则驻留设备506应仅向用户设备502提供通知。在另一个示例中,设置可指示应当如何提供通知。例如,一个设置可指示驻留设备506应向用户设备502传输通知消息。另一个设置可指示驻留设备应在连接到驻留设备506的扬声器上播报通知。通知管理模块512(例如,经由在用户设备502上运行的服务或后台应用程序)可将图像(例如,从照片库生成的图像裁剪)传输到驻留设备506以供驻留设备506处理。这些图像可以任何合适的节奏和/或选择算法传输,例如,如参考图2所述。在一些实施方案中,通知管理模块512可确定仅将示出未被覆盖面部的部分的图像传输到驻留设备506。在一些实施方案中,通知管理模块512可被配置为接收来自用户的输入,该输入指示应当(并且不应当)将什么类型的图像传输到驻留设备506。在一些实施方案中,用户设备502可首先加密传输到驻留设备506的图像。例如,用户设备502和驻留设备506可共享加密密钥(例如,对称密钥),由此驻留设备506接收加密图像,然后使用该加密密钥对该图像进行解密。在一些实施方案中,如本文进一步所述,加密密钥可能不(或可能)与远程服务器522共享。在一些实施方案中,图像可首先被传输到远程服务器522(例如,用于临时存储),然后稍后由远程服务器522传输到驻留设备506。在一些实施方案中,图像可被直接传输到驻留设备506,而不涉及远程服务器522。应当理解,图像序列(例如,在视频剪辑中)也可由用户设备502加密,被传输到远程服务器522,然后由远程服务器522传输到驻留设备506。应当理解,通知管理模块512的一个或多个功能可由驻留设备506执行(例如,配置该驻留设备)。
在一些实施方案中,观察相机504可对应于用于捕获图像并将图像传输到驻留设备506的任何合适的相机。在一些实施方案中,观察相机504可定位(例如,安装)在特定位置处以具有特定可视区域,例如,住宅前门附近。观察相机504可经由网络508连接到驻留设备506。
在一些实施方案中,如上所述,远程服务器522可对应于云计算平台。远程服务器522可执行一个或多个功能,包括例如:训练一个或多个面部特征模型(例如,类似于参考图4所述)、管理对面部特征模型的更新、从用户设备(例如,用户设备502)接收图像、将图像传输到驻留设备506等。如上所述,在一些实施方案中,远程服务器522可能不(或可能)具有对用户设备502用来加密图像的加密密钥的访问权限。在一些实施方案中,远程服务器522可例如在用户设备502不具有对驻留设备506的直接访问权限时从用户设备502接收图像。在该示例中,用户设备502可首先将加密图像(例如,图像裁剪)传输到云中的远程服务器522。该云可存储加密图像裁剪以供稍后传输到驻留设备506。
更详细地转到驻留设备506,驻留设备506可以是包括至少一个存储器530、一个或多个处理单元(或处理器)546、存储单元548、通信设备550和I/O设备552的计算机系统。在一些实施方案中,这些元件可以与参考用户设备502的类似元件所述类似的方式(或不同的方式)实现。在一些实施方案中,存储单元548可存储由用户设备502和/或远程服务器522接收的图像(例如,图像裁剪)。驻留设备506可容纳在任何合适的单元(例如,智能电视、智能扬声器等)中。
更详细地转到存储器530的内容,存储器530可包括操作系统532和用于实现本文所公开的特征的一个或多个应用程序或服务,包括通信模块534、加密模块536、通知管理模块538、配置文件管理模块540、评分模块542和模型训练模块544。在一些实施方案中,存储器530的一个或多个应用程序或服务可被包括作为图1的通知服务130的一部分。
通信模块534可包括使得处理器546生成消息、转发消息、重新格式化消息和/或以其他方式与其他实体通信的代码。例如,通信模块534可接收(和/或传输)来自用户设备502和/或远程服务器522的图像。通信模块534还可负责提供通知。例如,通信模块534可基于从观察相机504接收的图像在检测到人的存在时向用户设备502传输通知消息。在一些实施方案中,通信模块534可使用任何合适的信道和/或向任何合适的设备提供通知。例如,通信模块534可经由家庭环境内某个位置处的扬声器I/O设备552提供可听通知。在另一个示例中,通信模块534可向家庭环境内的智能电视提供视听通知。例如,智能电视的PIP显示器可显示来自相机504的视频馈送(例如,示出在住宅前门处的用户)。智能电视还可播报谁在门口并且/或者允许经由驻留设备506的扬声器和/或麦克风I/O设备进行双向通信。
加密模块536可包括使得处理器546加密和/或解密消息的代码。例如,加密模块536可从远程服务器522接收加密数据(例如,加密图像裁剪)。在本发明的实施方案中,加密模块536可包括用于加密数据的任何合适的加密算法。合适的数据加密算法可包括数据加密标准(DES)、三重DES、高级加密标准(AES)等。该加密模块还可(例如,在存储单元548中)存储可与此类加密算法一起使用的加密密钥(例如,加密密钥和/或解密密钥)。加密模块536可利用对称或非对称加密技术来加密和/或验证数据。例如,如上所述,用户设备502可包含与加密模块536类似的代码和/或密钥,该代码和/或密钥适用于对与驻留设备(和/或远程服务器522)的数据通信进行加密/解密。
通知管理模块538可包括使得处理器546存储和管理用于提供通知的设置的代码,如本文所述。通知管理模块538还可负责生成由通信模块534提供的通知。应当理解,可以任何合适的形式(例如,文本、音频、视频和/或合适的组合)呈现通知。在一些实施方案中,可以特定设置将通知管理模块538配置为不执行操作(例如,“无操作”)。例如,驻留设备506可被配置为:如果检测到的人不是联系人,则仅向用户设备502提供基于AV的通知。因此,如果驻留设备506检测到联系人,则通知管理模块538可确定不执行操作(例如,保持静默、仅在内部记录观察等)。在一些实施方案中,通知管理模块538还可基于面部是否是可识别的来确定是否提供通知。在一些实施方案中,通知管理模块538可部分地基于对图像执行面部识别的结果来确定要在通知中包括的数据和/或要启用的功能。例如,通知管理模块538可确定:如果图像中示出的面部的一部分被部分覆盖,则该图像不应包括在传输到用户设备以供呈现的通知中。这样,驻留设备506可防止该图像被标记为包括在特定人的参考图像集中。在另一个示例中,通知管理模块538可确定将图像包括在通知内。然而,可提供通知,使得虽然接收用户设备(例如,用户设备502)可将图像呈现给用户以实现可视化,但是用户不能标记照片。
配置文件管理模块540可包括使得处理器546保持和存储联系人的配置文件的代码。例如,如本文所述(例如,参考图2),配置文件管理模块540可从一个或多个用户设备接收图像(例如,图像裁剪),每个图像裁剪示出与相应用户设备相关联的联系人的面部的一部分。配置文件管理模块540可基于所接收的图像裁剪(例如,经由经训练的面部特征模型)来确定给定联系人的参考图像集。在一些实施方案中,配置文件管理模块540还可基于该参考图像集来确定一组特征(例如,针对每个参考图像生成面纹)。在一些实施方案中,该参考图像集(和/或对应于该参考图像集的一个或多个面纹)可存储在存储单元548中。当接收到比现有参考集提供更多信息增益的新图像裁剪时,可以任何合适的节奏更新给定面部的参考图像集。
评分模块542可包括使得处理器546确定对应于(例如,与第一人的面部相关联的)第一组特征和(例如,与第二人的面部相关联的)第二组特征之间的相似性水平的得分的代码。在一些实施方案中,评分模块542可利用经训练的面部特征模型基于第一人的一个或多个参考图像(例如,图像裁剪)来生成一个和/或多个面纹。面部特征模型还可基于从相机504接收的一个或多个图像(例如,其示出第二人的面部)来生成一个和/或多个面纹。然后,系统可比较面纹(例如,确定面纹向量之间的相似性)以确定得分。在一些实施方案中,驻留设备506可利用该得分来确定第一人是否是第二人。这样,驻留设备506可确定是否提供通知,并且如果提供,则确定提供哪种类型的通知。在一些实施方案中,第一组特征可对应于第一人的面纹(例如,从一组一个或多个参考图像生成的),并且第二组特征可对应于第二人的面纹(例如,基于从观察相机504接收的图像生成的)。在一些实施方案中,如本文所述,评分模块542还可基于面部质量度量来确定第二人的面部是否是可识别的。在一些实施方案中,系统可首先在确定面部是否是已知联系人之前确定面部是可识别的。例如,如果(例如,从观察相机504接收的)图像的一组面部特征具有足够的质量(例如,与预定义阈值匹配)使得系统随后可准确地确定人是否是已知联系人,则可认为面部是可识别的。在一些实施方案中,如本文所述,评分模块542还可确定一个或多个数据点,该一个或多个数据也可对应于特定人的一组特征。在一些实施方案中,可部分地基于从相应图像生成的面纹来生成(例如,导出)这些数据点。数据点的一些非限制性示例包括图像中示出的人的性别、人的年龄、面部是否被部分覆盖、特定面部表情(例如,微笑、皱眉等)等。应当理解,对于每个数据点,系统可确定关于预测的可能性(例如,图像是否示出被部分覆盖面部的可能性)的置信水平。系统可使用这些数据点中的一个或多个数据点连同底层面纹来执行面部识别和/或确定通知消息的内容(例如,是否在通知中包括图像)。
模型训练模块544可包括使得处理器546训练面部特征模型的代码。在一些实施方案中,模型训练模块544的操作可类似于参考图4所述的操作。应当理解,在一些实施方案中,模型训练模块544的操作也可由远程服务器522、用户设备502或设备的任何合适的组合来执行。
图6是示出根据一些实施方案的用于基于确定某个位置处人的存在来提供通知的示例性过程600的简化流程图。过程600和图7的过程700被分别示出为逻辑流程图,这些逻辑流程图的每个操作表示能够以硬件、计算机指令或它们的组合来实现的一系列操作。在计算机指令的上下文中,操作表示存储在一种或多种计算机可读存储介质上的计算机可执行指令,这些计算机可执行指令由一种或多种处理器执行时执行所述操作。一般来讲,计算机可执行指令包括执行特定功能或实现特定数据类型的例程、程序、对象、部件、数据结构等。描述操作的顺序并非旨在被理解为限制,并且任何数量的所述操作均可按照任意顺序和/或平行组合以实现所述过程。
另外,这些过程中的一些、任意者或全部可在被配置为具有可执行指令的一个或多个计算机系统的控制下执行,并且可实现为在一个或多个处理器上、由硬件、或它们的组合共同执行的代码(例如,可执行指令、一个或多个计算机程序、或一个或多个应用程序)。如上所述,代码可存储在计算机可读存储介质上,例如以包括可由一个或多个处理器执行的多个指令的计算机程序的形式存储。计算机可读存储介质是非暂态的。
在一些实施方案中,过程600可由第一设备(例如,驻留设备)执行,该第一设备可对应于本文所述的驻留设备中的任何一个或多个驻留设备。应当理解,在一些实施方案中,第一设备还可对应于另一类型的设备,包括用户设备或远程服务器,如本文所述。在框602处,驻留设备可(例如,从用户设备)接收示出第一人的面部的一部分的第一图像(例如,图像的图像裁剪)。在一些实施方案中,第一图像可能已由将图像裁剪传输到驻留设备的用户设备的相机捕获。在一些实施方案中,生成图像裁剪的图像可以是作为包括与用户设备相关联的联系人的图像库(例如,照片库)的一部分而被管理的多个图像(例如,非裁剪图像)中的一个图像。在一些实施方案中,该多个图像存储在用户设备的本地内存存储库上。在一些实施方案中,用户设备是移动设备(例如,移动电话)。在一些实施方案中,图像是该多个图像的子集中的一个图像。可至少部分地基于与第一人的面部的该部分相关联的信息增益来选择该子集。该信息增益可用于执行对第一人的面部的面部识别。在一些实施方案中,第一图像可至少部分地基于(例如,通过传输用户设备和/或驻留设备)确定第一图像中示出的第一人的面部的该部分未被面部覆盖物覆盖而被包括在该子集(例如,参考图像集)内。在一些实施方案中,该参考图像集可分别示出第一人的面部的未被覆盖部分。在一些实施方案中,例如,如果驻留设备确定通过将该图像包括在参考集中实现了信息增益的可接受边际增加,则该参考集可包括示出面部的被部分覆盖部分的图像。在一些实施方案中,图像裁剪是多个图像裁剪中的一个图像裁剪,由此该多个图像裁剪分别从该多个图像的子集生成。在一些实施方案中,该多个图像裁剪可包括在存储在驻留设备上的参考图像(例如,图像裁剪)集内。
在框604处,驻留设备可从包括相机的另一个设备接收人(例如,“第二人”,其身份尚未确定)的面部的一部分的第二图像。在一些实施方案中,另一个设备可对应于可具有可视区域的观察相机,该可视区域包括与驻留设备相关联的特定位置。例如,观察相机可被定位成具有住宅前门走廊的可视区域、住宅内的区域、办公室空间等。在一些实施方案中,框602的所接收的图像和框604的所接收的第二图像可具有不同的图像质量水平。在一些实施方案中,图像质量水平可与以下中的至少一者相关联:(1)失真水平、(2)图像分辨率、(3)特定位置处的照明、(4)图像遮挡、(5)图像对比度、(6)图像伪影或(7)图像清晰度。在一些实施方案中,第二图像可为从第二相机接收的多个图像(例如,视频帧)中的一个图像。在一些实施方案中,第二图像可示出第二人的被(或未被)面部覆盖物(例如,口罩)部分覆盖的面部的一部分。
在框606处,驻留设备可确定对应于与第一人的面部相关联的第一组特征(例如,参见框602)和与第二人的面部相关联的第二组特征(例如,参见框604)之间的相似性水平的得分。在一些实施方案中,驻留设备可利用经训练的面部特征模型来生成一个或多个面纹。例如,经训练的面部特征模型可生成共同对应于第一组特征的一个或多个面纹。在一个示例中,可基于在框602处描述的参考图像集中的每个参考图像来创建面纹。在另一个示例中,面纹(例如,多维向量)可将来自所创建的其他面纹的数据结合到单个涵盖向量(或其他合适的数据结构)中。经训练的面部特征模型还可基于从第二相机接收的第二图像(和/或多个图像)来生成一个或多个面纹,由此该一个或多个面纹共同对应于第二组特征。驻留设备然后可确定对应于(例如,从不同的图像集生成的)不同面纹之间的相似性水平(例如,余弦相似性)的得分。在一些实施方案中,在针对第一图像和第二图像两者生成相应面纹时,面部特征模型还可部分地基于这些面纹来确定一个或多个数据点。例如,如本文所述,面部特征模型可确定面部被面部覆盖物部分覆盖的置信水平。在另一个示例中,模型可部分地基于面部质量度量来确定面部可识别的置信水平。这些数据点可与底层面纹向量一起用于确定得分。这些数据点还可用于确定要将哪些数据包括在后续通知中,如下文进一步所述。在一些实施方案中,如参考图4所述,经训练的模型可被配置为将特定人的被部分覆盖面部与该特定人的未被覆盖面部相关联(例如这些面部互相关联为匹配)。还可至少部分地基于利用模拟面部覆盖物覆盖被部分覆盖面部来训练经训练的模型执行关联。例如,系统可在原始图像中示出的未被覆盖面部的顶部上渲染模拟面部覆盖物,然后使用更新的图像作为训练样品。
在框608处,驻留设备可至少部分地基于该得分来确定第一人是否是第二人(例如,示出第一人的第一图像和示出第二人的第二图像是否对应于同一人)。在一些实施方案中,例如基于分析第二组特征(例如,第二人的面纹)来确定面部的面部质量度量,驻留设备可首先确定第二人的面部是否是可识别的。该面部质量度量可指示与第二组特征相关联的质量水平。如果面部质量度量与阈值匹配(例如,等于或超过该阈值),则可确定面部是可识别的。如果面部是可识别的,则驻留设备可进一步确定第二人的面部是否与用户设备的照片库的联系人(例如,包括第一人)中的任一个联系人匹配。这样,驻留设备可确定第二人的身份。
在框610处,驻留设备可至少部分地基于该确定来提供通知。如本文所述,可使用任何合适的信道和/或根据任何合适的设置来提供通知。例如,一个设置可部分地基于以下条件来指示是否提供通知:第二人的面部是否是可识别的,以及如果是可识别的,则第二人是否是已知联系人。在一些实施方案中,该设置可指示是否抑制向用户设备传输通知消息,例如,以减少传输到用户设备的通知的数量。在一些实施方案中,通知可(或可不)包括示出第二人的面部的该部分的图像。例如,如果系统确定图像示出被面部覆盖物部分覆盖的面部的该部分的高置信水平,则系统可不包括该图像作为通知的一部分以供用户设备随后呈现。在一些实施方案中,可包括该图像,但是用户设备可能无法使得用户能够标记该图像以随后包括在人(例如,联系人)的参考图像集中。在一些实施方案中,用户可能够标记该图像,但是系统仍然可部分地基于示出被部分覆盖面部而防止该图像被包括在该参考图像集中。应当理解,任何合适的数据可包括在通知内以供呈现和/或后续标记。
图7是示出根据一些实施方案的用于训练用于执行面部识别的面部特征模型的示例性过程700的另一个简化流程图。在一些实施方案中,过程700可由任何合适的设备(例如,驻留设备、用户设备或远程服务器)执行。在一些实施方案中,过程700的操作中的一个或多个操作可类似于参考图4所述的操作。
在框702处,过程700包括接收分别包括人的面部的一部分的第一多个训练图像(例如,图像裁剪)。在一些实施方案中,由第一多个训练图像中的每个图像分别捕获的人的面部的该部分未被面部覆盖物部分覆盖。在一些实施方案中,人可以是多个人中的一个人,由此该多个人中的每个人与训练图像集(例如,其共同形成训练样品语料库)相关联。每个图像可示出相应多个训练图像的人的面部的一部分(例如,侧视图、直视视图)。在一些实施方案中,第一多个训练图像可包括不同质量水平的图像。例如,该多个训练图像的一部分可由第一相机捕获,该第一相机可为用户设备的部件(例如,移动电话相机)(并且/或者以其他方式连接到用户设备)。该多个训练图像的另一个部分可由第二相机(例如,观察相机)捕获。在一些实施方案中,第一相机可捕获具有第一质量水平(或类似质量水平)(例如,具有常见分辨率、良好照明条件、最小噪声等)的图像,而第二相机可捕获具有第二(例如,更低)质量水平的图像。在一些实施方案中,第二质量水平可不同于第一质量水平。在一些实施方案中,该多个人中的每个人可具有由一个或多个相机捕获的对应的多个训练图像(例如,其形成另一个训练样品语料库)。在一些实施方案中,每个训练图像可具有标识相关联的人的面部的对应标注。
在框704处,过程700包括从第一多个训练图像的一部分生成第二多个训练图像。第二多个训练图像的图像可分别包括人的面部的一部分,由此该部分被模拟面部覆盖物部分覆盖。例如,如本文所述,可选择(例如,在框702处接收的)第一多个训练图像的一部分(例如,子集或全部),由此针对每个图像生成模拟面部覆盖物。例如,经训练的模型可确定图像中示出的未被覆盖面部的一部分的面部标志。然后,该经训练的模型可基于面部标志位置来识别对应于模拟面部覆盖物(例如,口罩)的形状的边界多边形。然后,该经训练的模型可根据通过边界多边形识别的形状来渲染模拟口罩。在一些实施方案中,系统可针对从第一多个训练图像中选择的原始训练图像中的每个原始训练图像渲染模拟口罩。应当理解,在一些实施方案中,还可将附加的训练样品添加到第一多个训练图像或第二多个训练图像。例如,示出部分覆盖人的一部分的真实口罩的图像可包括在第二多个训练图像中,并且/或者用于后续测试经训练的模型。类似于框702,在一些实施方案中,每个图像均可具有标识相关联的人的面部的对应标注。
在框706处,过程700包括至少部分地基于交叉识别训练算法来确定人的面纹。在一些实施方案中,交叉识别训练算法将根据第一多个训练图像确定的人的面部特征与根据第二多个训练图像确定的人的面部特征相关联。在一些实施方案中,交叉识别训练算法可类似于参考图4所述的那样操作。在一些实施方案中,交叉识别训练算法可使得面部特征模型能够基于(例如,由不同相机捕获的)不同质量的相应已标注的训练图像来生成面部的面纹,使得在比较这些面纹(例如,确定面纹向量的余弦相似性)时,可确定这些面纹与同一人匹配。如本文所述,交叉识别训练算法还可用于训练模型针对同一人的不同图像生成类似面纹,由此一个图像(例如,来自第二多个训练图像)示出被面部覆盖物部分覆盖的人的面部,并且另一个图像(例如,来自第一多个训练图像)示出未被面部覆盖物覆盖的人的面部。这样,训练过程可以针对同一人(例如,被遮蔽或未被遮蔽)生成类似面纹向量并且针对不同人生成不同面纹向量的方式来训练模型。因此,就不同质量(例如,更高质量对更低质量)的图像和示出被部分覆盖面部或未被覆盖面部的图像而言,模型可被训练为“缩小差别”。应当理解,可基于来自多个人的已标注的训练图像样品(例如,如框702和704所述)来训练面部特征模型。在一些实施方案中,与常规方法相比,经训练的面部特征模型可使得使用面纹执行面部识别的准确性水平能够更高。
上文描述了用于基于确定某个位置处人的存在来提供通知的例示性技术。这些技术中的一部分或全部可至少部分地通过架构诸如至少在上述图1至图7中所示的那些架构来实现,但不是必须通过这些架构来实现。虽然上文参考驻留设备和用户设备描述了许多实施方案,但应当理解,其他类型的计算设备可适用于执行本文所公开的技术。此外,在前文描述中描述了各种非限制性示例。为了解释的目的,阐述了很多具体配置和细节以便提供对示例的彻底理解。但是,对本领域的技术人员也将显而易见的是,一些示例可在没有这些具体细节的情况下被实施。此外,有时省略或简化熟知的特征部以防止对本文所述的示例造成混淆。
还可在各种各样的操作环境中实施各种实施方案,在一些情况下,这些操作环境可包括可用于操作多个应用程序中的任一个应用程序的一个或多个用户计算机、计算设备或处理设备。用户设备或客户端设备可包括许多通用个人计算机中的任何一个,诸如运行标准操作系统的台式计算机或膝上型计算机,以及运行移动软件并能够支持多个联网协议和即时消息协议的蜂窝设备、无线设备和手持设备。此系统还可包括运行各种可商购获得的操作系统和用于目的诸如开发和数据库管理等的其他已知应用程序中的任何一者的多个工作站。这些设备还可包括其他电子设备,诸如虚拟终端、瘦客户端、游戏系统以及能够经由网络进行通信的其他设备。
大多数实施方案利用本领域技术人员熟悉的至少一个网络来支持使用各种商用协议诸如TCP/IP、OSI、FTP、UPnP、NFS、CIFS和AppleTalk中的任何协议的通信。网络可以是例如局域网、广域网、虚拟专用网络、互联网、内联网、外联网、公共交换电话网、红外网络、无线网络及其任何组合。
在利用网络服务器的实施方案中,网络服务器可运行各种服务器或中间层应用程序中的任何一者,包括HTTP服务器、FTP服务器、CGI服务器、数据服务器、Java服务器和业务应用程序服务器。一个或多个服务器还可能够响应于来自用户设备的请求而执行程序或脚本,诸如通过执行一个或多个应用程序,所述一个或多个应用程序可被实现为以任何编程语言诸如C、C#或C++或者任何脚本语言诸如Perl、Python或TCL以及它们的组合编写的一个或多个脚本或程序。一个或多个服务器还可包括数据库服务器,包括但不限于可从和商购获得的那些。
环境可包括各种数据存储库和其他存储器和存储介质,如上所述。这些可驻留在各个位置,诸如在一个或多个计算机本地的存储介质上或者远离网络上的任何或全部计算机的存储介质上(和/或驻留在一个或多个计算机中)。在特定的一组实施方案中,信息可驻留在本领域技术人员熟悉的存储区域网络(SAN)中。类似地,用于执行归属于计算机、服务器或其他网络设备的功能的任何必要文件可以根据需要本地存储以及/或者远程存储。当系统包括计算机化设备时,每个此类设备可包括可经由总线电耦接的硬件元件,所述元件包括例如至少一个中央处理单元(CPU)、至少一个输入设备(例如,鼠标、键盘、控制器、触摸屏或小键盘),以及至少一个输出设备(例如,显示设备、打印机或扬声器)。此类系统还可包括一个或多个存储设备,诸如磁盘驱动器、光存储设备和固态存储设备诸如RAM或ROM,以及可移除媒体设备、存储卡、闪存卡,等等。
此类设备还可包括如上所述的计算机可读存储介质读取器、通信设备(例如,调制解调器、网卡(无线或有线)、红外通信设备等)和工作存储器。计算机可读存储介质读取器可连接至或配置为接收表示远程、本地、固定和/或可移除的存储设备的非暂态计算机可读存储介质,以及用于临时和/或更永久地包含、存储、传输和检索计算机可读信息的存储介质。系统和各种设备通常还将包括位于至少一个工作存储器设备内的多个软件应用程序、模块、服务或其他元件,包括操作系统和应用程序,诸如客户端应用程序或浏览器。应当理解的是,另选实施方案可具有根据上文所述的许多变型形式。例如,还可使用定制硬件,和/或可在硬件、软件(包括便携式软件,诸如小应用程序)或两者中实现特定元件。此外,可使用与其他计算设备诸如网络输入/输出设备的连接。
用于包含代码或代码的部分的非暂态存储介质和计算机可读存储介质可包括本领域技术中已知或使用的任何适当的介质,例如但不限于以用于存储信息(如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术实现的易失性和非易失性、可移除和不可移除的介质,包括RAM、ROM、电可擦除可编程只读存储器(EEPROM)、闪存存储器或其他存储器技术、CD-ROM、DVD或其他光学存储器、磁带盒、磁带、磁盘存储装置或其他磁性存储设备,或者可用于存储所需信息并且可由系统设备访问的任何其他介质。至少部分地基于本文所提供的公开和教导内容,本领域的普通技术人员将认识到实现各种实施方案的其他方式和/或方法。然而,计算机可读存储介质不包括暂态介质诸如载波等。
相应地,说明书和附图应被视为具有例示性的而非限制性的意义。然而,显而易见的是,在不脱离权利要求中阐述的本公开的更广泛的实质和范围的情况下,可对其进行各种修改和改变。
其他变型形式在本公开的实质内。因此,尽管所公开的技术容易受到各种修改和另选构造的影响,但是其某些例示的实施方案在附图中示出并且已经在上面详细描述。然而,应当理解,并不旨在将本公开限制于所公开的特定形式,相反,其目的在于覆盖落入由所附权利要求所限定的本公开的实质和范围内的所有修改、另选构造和等同形式。
在描述所公开的实施方案的上下文中(特别是在下面的权利要求书的上下文中)使用术语“一”、“一个”和“该”以及类似的指示词将被解释为覆盖单数和复数,除非另有说明或与上下文明显矛盾。除非另有说明,否则术语“包含”、“具有”、“包括”和“含有”应被解释为开放式术语(即,意思为“包括但不限于”)。术语“连接”被解释为即使有干预的东西,也被部分或全部地包含在内、附接或接合在一起。短语“至少部分地基于”应当被理解为开放式的,并且不以任何方式进行限制,并且旨在在适当的情况下被解释或以其他方式理解为“至少部分地基于”。除非本文另有说明,否则本文中对数值范围的叙述仅仅旨在用作单独提及落入该范围内的每个单独值的简单方法,并且每个单独的值被并入说明书中,如同在本文中单独引用。本文描述的所有方法能够以任何合适的顺序执行,除非本文另有说明或以其他方式与上下文明显矛盾。除非另有声明,否则本文提供的任何和所有示例或示例性语言(例如,“诸如”)的使用仅仅旨在更好地说明本公开的实施方案,并且不会限制本公开的范围。说明书中的任何语言都不应被解释为指示任何未声明的元素对于本公开的实践是必不可少的。
除非另外特别说明,否则析取语言诸如短语“X、Y或Z中的至少一者”在上下文中被理解为通常用于呈现项目、术语等,其可以是X、Y或Z,或它们的任何组合(例如,X、Y和/或Z)。因此,此类析取语言通常不旨在并且不应该暗示某些实施方案要求X中的至少一个、Y中的至少一个或者Z中的至少一个均各自存在。另外,除非另外特别说明,否则诸如短语“X,Y和Z中的至少一者”的联合语言也应理解为意指X、Y、Z或它们的任何组合,包括“X、Y和/或Z”。
本文描述了本公开的优选实施方案,包括发明人已知的用于执行本公开的最佳模式。在阅读前面的描述之后,那些优选实施方案的变型形式对于本领域的普通技术人员来说可变得显而易见。发明人期望技术人员适当地采用此类变型形式,并且发明人旨在以不同于本文具体描述的方式来实践本公开。因此,如适用法律所允许的,本公开包括所附权利要求中记载的主题的所有修改和等同形式。此外,除非在本文中另外指出或者明显与上下文矛盾,否则本公开包含上述元素的所有可能变型形式的任何组合。
本文引用的所有参考文献,包括出版物、专利申请和专利,均据此以引用方式并入本文,正如每篇参考文献被单独且具体地指示为以引用方式并入并且在本文全文阐述。
如上所述,本技术的一个方面在于收集和使用数据(人的图像)来执行面部识别。本公开设想,在一些实例中,这些所收集的数据可包括唯一地识别或可用于联系或定位特定人的个人可识别信息(PII)数据。此类个人信息数据可包括面部特征、人口数据、基于位置的数据(GPS坐标)、电话号码、电子邮件地址、推特ID、家庭地址或任何其他识别或个人信息。
本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,个人信息数据可用于识别为用户设备的用户的联系人(或未知联系人)的人。
本公开设想负责采集、分析、公开、传输、存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,此类实体应当实行并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。此类政策应该能被用户方便地访问,并应随着数据的采集和/或使用变化而被更新。来自用户的个人信息应当被收集用于实体的合法且合理的用途,并且不在这些合法使用之外共享或出售。此外,应在收到用户知情同意后进行此类采集/共享。此外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保有权访问个人信息数据的其他人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。此外,应当调整政策和实践,以便采集和/或访问的特定类型的个人信息数据,并适用于包括管辖范围的具体考虑的适用法律和标准。例如,在美国,对某些健康数据的收集或获取可能受联邦和/或州法律的管辖,诸如健康保险流通和责任法案(HIPAA);而其他国家的健康数据可能受到其他法规和政策的约束并应相应处理。因此,在每个国家应为不同的个人数据类型保持不同的隐私实践。
不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,就与执行面部识别相关的服务而言,本发明技术可被配置为在注册服务期间或之后任何时候允许用户选择“选择加入”或“选择退出”参与对个人信息数据的收集。除了提供“选择加入”和“选择退出”选项外,本公开设想提供与访问或使用个人信息相关的通知。例如,可在下载应用时向用户通知其个人信息数据将被访问,然后就在个人信息数据被应用访问之前再次提醒用户。
此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据收集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用程序中,数据去标识可用于保护用户的隐私。可在适当时通过移除特定标识符(例如,出生日期等)、控制所存储数据的量或特异性(例如,在城市级别而不是在地址级别收集位置数据)、控制数据如何被存储(例如,在用户之间聚合数据)、和/或其他方法来促进去标识。
因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还预期各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。
Claims (43)
1.一种计算机实现的方法,包括:
由第一设备访问包括第一人的面部的一部分的第一图像,所述第一图像至少部分地基于确定所述第一图像中示出的所述第一人的所述面部的所述一部分未被面部覆盖物覆盖而被包括在所述第一人的所述面部的参考图像集内,并且所述参考图像集分别示出所述第一人的所述面部的未被覆盖部分;
由所述第一设备从包括相机的第二设备接收包括第二人的面部的一部分的第二图像,所述第二人的所述面部的所述一部分包括部分覆盖所述第二人的所述面部的面部覆盖物;以及
使用所述第一设备的经训练的模型来确定所述第一人的所述第一图像和所述第二人的所述第二图像是否对应于同一人,所述经训练的模型被训练为将特定人的被部分覆盖面部与所述特定人的未被覆盖面部相关联。
2.根据权利要求1所述的计算机实现的方法,还包括:
由所述第一设备的所述经训练的模型至少部分地基于所述参考图像集中的所述第一图像来确定与所述第一人的所述面部相关联的第一组特征;
由所述第一设备的所述经训练的模型至少部分地基于所述第二图像来确定与所述第二人的所述面部相关联的第二组特征;以及
由所述第一设备确定对应于与所述第一人的所述面部相关联的所述第一组特征和与所述第二人的所述面部相关联的所述第二组特征之间的相似性水平的得分,其中至少部分地基于所述得分来确定所述第一人的所述第一图像和所述第二人的所述第二图像对应于所述同一人。
3.根据权利要求1至2中任一项所述的计算机实现的方法,其中确定所述第二组特征还包括:
由所述经训练的模型确定所述第二图像中示出的所述第二人的所述面部的所述一部分是能够识别的第一置信水平;
由所述经训练的模型确定所述第二图像中示出的所述第二人的所述面部的所述一部分是否包括所述面部覆盖物的第二置信水平;以及
由所述经训练的模型确定对应于多维向量的所述第二人的所述面部的面纹,所述多维向量的维度与所述第二人的所述面部的特征相关联。
4.根据权利要求1至3中任一项所述的计算机实现的方法,所述方法还包括:
由所述第一设备至少部分地基于所述确定所述第一人是否是所述第二人来提供通知。
5.根据权利要求1至4中任一项所述的计算机实现的方法,其中所述经训练的模型被训练为将第一面纹与第二面纹相关联,所述第一面纹是从示出所述特定人的所述未被覆盖面部的图像生成的,所述第二面纹是从包括部分覆盖所述特定人的所述面部的模拟面部覆盖物的图像生成的。
6.根据权利要求1至5中任一项所述的计算机实现的方法,其中部分覆盖所述第二人的所述面部的所述面部覆盖物对应于口罩,并且其中所述经训练的模型是至少部分地基于生成根据(I)颜色、(II)纹理或(III)口罩在面部上的放置中的至少一者而变化的模拟口罩来训练的。
7.根据权利要求1至6中任一项所述的计算机实现的方法,其中所述经训练的模型被训练为识别面部标志,所述面部标志能够操作用于识别边界多边形,并且其中至少部分地基于所识别的边界多边形来生成模拟口罩。
8.根据权利要求1至7中任一项所述的计算机实现的方法,其中所述经训练的模型是至少部分地基于示出模拟面部覆盖物的图像和示出真实面部覆盖物的图像来训练的,并且其中所述经训练的模型被训练为至少部分地基于利用模拟面部覆盖物覆盖所述被部分覆盖面部来执行所述特定人的所述被部分覆盖面部和所述特定人的所述未被覆盖面部之间的所述关联。
9.一种第一设备,包括:
存储器,所述存储器被配置为存储计算机可执行指令;和
一个或多个处理器,所述一个或多个处理器与所述存储器通信,并且被配置为访问所述存储器并执行所述计算机可执行指令以至少:
访问包括第一人的面部的一部分的第一图像,所述第一图像至少部分地基于确定所述第一图像中示出的所述第一人的所述面部的所述一部分未被面部覆盖物覆盖而被包括在所述第一人的所述面部的参考图像集内,并且所述参考图像集分别示出所述第一人的所述面部的未被覆盖部分;
从包括相机的第二设备接收包括第二人的面部的一部分的第二图像,所述第二人的所述面部的所述一部分包括部分覆盖所述第二人的所述面部的面部覆盖物;以及
使用所述第一设备的经训练的模型来确定所述第一人的所述第一图像和所述第二人的所述第二图像是否对应于同一人,所述经训练的模型被训练为将特定人的被部分覆盖面部与所述特定人的未被覆盖面部相关联。
10.根据权利要求9所述的第一设备,其中所述指令包括用于执行以下操作的附加指令:
由所述第一设备的所述经训练的模型至少部分地基于所述参考图像集中的所述第一图像来确定与所述第一人的所述面部相关联的第一组特征;
由所述第一设备的所述经训练的模型至少部分地基于所述第二图像来确定与所述第二人的所述面部相关联的第二组特征;以及
由所述第一设备确定对应于与所述第一人的所述面部相关联的所述第一组特征和与所述第二人的所述面部相关联的所述第二组特征之间的相似性水平的得分,其中至少部分地基于所述得分来确定所述第一人的所述第一图像和所述第二人的所述第二图像对应于所述同一人。
11.根据权利要求9至10中任一项所述的第一设备,其中所述经训练的模型由远程服务器训练,并且所述经训练的模型随后被部署到多个设备,所述多个设备包括(I)所述第一设备或(II)与所述第一设备相关联的用户设备中的至少一者。
12.根据权利要求9至11中任一项所述的第一设备,其中所述第一设备是从用户设备接收所述第一图像的驻留设备,所述用户设备的经训练的模型已执行所述确定所述第一图像中的所述第一人的所述面部的所述一部分未被所述面部覆盖物覆盖,并且其中所述用户设备至少部分地基于所述确定来将所述第一图像传输到所述第一设备。
13.根据权利要求12所述的第一设备,其中所述第一图像是从存储在所述用户设备上的图像库中的图像生成的图像裁剪,其中所述图像库由所述用户设备的相机捕获,并且其中所述图像库包括与所述用户设备相关联的联系人。
14.根据权利要求9至13中任一项所述的第一设备,其中所述第一设备是驻留设备,其中所述驻留设备在接收到所述第二图像之前从所述第二设备接收所述第一图像,所述第二设备的所述相机对应于观察相机,其中所述确定所述第一图像中示出的所述第一人的所述面部的所述一部分未被所述面部覆盖物覆盖由所述第一设备的所述经训练的模型来执行,并且其中至少部分地基于所述确定来将所述第一人的所述面部的所述一部分标记为与用户设备相关联的联系人。
15.根据权利要求9至14中任一项所述的第一设备,其中所述第一图像与第一图像质量水平相关联,并且所述第二图像与第二图像质量水平相关联,所述第二图像质量水平不同于所述第一图像质量水平。
16.根据权利要求9至15中任一项所述的第一设备,其中所述第一人是与用户设备相关联的联系人,所述用户设备与所述第一设备相关联,并且其中所述指令包括用于执行以下操作的附加指令:
使用所述经训练的模型来确定所述第一人不是所述第二人;以及
向所述用户设备提供指示所述第二人不是与所述用户设备相关联的联系人的通知,其中所述通知不包括所述第二人的所述被部分覆盖面部的图像。
17.根据权利要求9至16中任一项所述的第一设备,其中所述第一人是与用户设备相关联的联系人,所述用户设备与所述第一设备相关联,并且其中所述指令包括用于执行以下操作的附加指令:
从所述第二设备接收包括所述第二人的所述面部的未被覆盖部分的第三图像;
使用所述经训练的模型来确定所述第一人不是所述第二人;以及
向所述用户设备提供指示所述第二人不是与所述用户设备相关联的联系人的通知,其中所述通知包括所述第二人的所述面部的所述未被覆盖部分的图像,并且其中所述通知能够操作用于将所述未被覆盖面部标记为与所述用户设备相关联的另一个联系人。
18.一种或多种包括计算机可执行指令的计算机可读存储介质,所述计算机可执行指令当由第一设备的一个或多个处理器执行时,使得所述一个或多个处理器执行包括以下项的操作:
访问包括第一人的面部的一部分的第一图像,所述第一图像至少部分地基于确定所述第一图像中示出的所述第一人的所述面部的所述一部分未被面部覆盖物覆盖而被包括在所述第一人的所述面部的参考图像集内,并且所述参考图像集分别示出所述第一人的所述面部的未被覆盖部分;
从包括相机的第二设备接收包括第二人的面部的一部分的第二图像,所述第二人的所述面部的所述一部分包括部分覆盖所述第二人的所述面部的面部覆盖物;以及
使用所述第一设备的经训练的模型来确定所述第一人的所述第一图像和所述第二人的所述第二图像是否对应于同一人,所述经训练的模型被训练为将特定人的被部分覆盖面部与所述特定人的未被覆盖面部相关联。
19.根据权利要求18所述的一种或多种计算机可读存储介质,其中所述指令还包括:
由所述第一设备的所述经训练的模型至少部分地基于所述参考图像集中的所述第一图像来确定与所述第一人的所述面部相关联的第一组特征;
由所述第一设备的所述经训练的模型至少部分地基于所述第二图像来确定与所述第二人的所述面部相关联的第二组特征;
由所述第一设备确定对应于与所述第一人的所述面部相关联的所述第一组特征和与所述第二人的所述面部相关联的所述第二组特征之间的相似性水平的得分,其中至少部分地基于所述得分来确定所述第一人的所述第一图像和所述第二人的所述第二图像对应于所述同一人。
20.根据权利要求19所述的一种或多种计算机可读存储介质,其中所述指令还包括:
保持面部质量度量,所述面部质量度量指示与和所述第二人的所述面部相关联的所述第二组特征相关联的质量水平,所述面部质量度量能够操作用于确定人的特定面部是能够识别的还是不能够识别的;以及
至少部分地基于确定由所述面部质量度量指示的所述质量水平与阈值匹配来确定所述第二人的所述面部是能够识别的;以及
至少部分地基于确定所述第二人的所述面部是能够识别的来确定所述第一人是否是所述第二人。
21.根据权利要求18至20中任一项所述的一种或多种计算机可读存储介质,其中所述经训练的模型被训练为将第一面纹与第二面纹相关联,所述第一面纹是从示出部分覆盖人的面部的真实或模拟面部覆盖物的图像生成的,所述第二面纹是从示出所述人的未被覆盖面部的另一个图像生成的。
22.根据权利要求18至21中任一项所述的一种或多种计算机可读存储介质,其中所述第一图像是从远程服务器接收的,所述第一图像已首先从与所述第一设备相关联的用户设备传输到所述远程服务器,其中所述第一图像被加密,并且其中能够操作用于解密所加密的第一图像的加密密钥与所述第一设备共享而不与所述远程服务器共享。
23.一种计算机实现的方法,包括:
由第一设备接收包括第一人的面部的一部分的第一图像,所述第一图像至少部分地基于确定所述第一图像中示出的所述第一人的所述面部的所述一部分未被面部覆盖物覆盖而被包括在所述第一人的所述面部的参考图像集内,并且所述参考图像集分别示出所述第一人的所述面部的未被覆盖部分;
由所述第一设备的经训练的模型至少部分地基于所述参考图像集中的所述第一图像来确定与所述第一人的所述面部相关联的第一组特征,所述经训练的模型被训练为将特定人的被部分覆盖面部与所述特定人的未被覆盖面部匹配,并且所述经训练的模型被训练为至少部分地基于利用模拟面部覆盖物覆盖所述被部分覆盖面部来执行所述匹配;
由所述第一设备从包括相机的第二设备接收包括第二人的面部的一部分的第二图像,所述第二人的所述面部的所述一部分包括部分覆盖所述第二人的所述面部的面部覆盖物;
由所述第一设备的所述经训练的模型确定与所述第二人的所述面部相关联的第二组特征;
由所述第一设备的所述经训练的模型确定对应于与所述第一人的所述面部相关联的所述第一组特征和与所述第二人的所述面部相关联的所述第二组特征之间的相似性水平的得分;以及
由所述第一设备至少部分地基于所述得分来确定所述第一人是否是所述第二人。
24.根据权利要求23所述的计算机实现的方法,其中确定所述第二组特征还包括:
由所述经训练的模型确定所述第二图像中示出的所述第二人的所述面部的所述一部分是能够识别的第一置信水平;
由所述经训练的模型确定所述第二图像中示出的所述第二人的所述面部的所述一部分是否包括所述面部覆盖物的第二置信水平;以及
由所述经训练的模型确定对应于多维向量的所述第二人的所述面部的面纹,所述多维向量的维度与所述第二人的所述面部的特征相关联。
25.根据权利要求23至24中任一项所述的计算机实现的方法,所述方法还包括:
由所述第一设备至少部分地基于所述确定所述第一人是否是所述第二人来提供通知。
26.根据权利要求23至25中任一项所述的计算机实现的方法,其中所述经训练的模型被训练为将第一面纹与第二面纹相关联,所述第一面纹是从示出所述人的未被覆盖面部的图像生成的,所述第二面纹是从包括部分覆盖所述人的所述面部的所述模拟面部覆盖物的图像生成的。
27.根据权利要求23至26中任一项所述的计算机实现的方法,其中部分覆盖所述第二人的所述面部的所述面部覆盖物对应于口罩,并且其中所述经训练的模型是至少部分地基于生成根据(I)颜色、(II)纹理或(III)口罩在面部上的放置中的至少一者而变化的模拟口罩来训练的。
28.根据权利要求23至27中任一项所述的计算机实现的方法,其中所述经训练的模型被训练为识别面部标志,所述面部标志能够操作用于识别边界多边形,并且其中至少部分地基于所识别的边界多边形来生成模拟口罩。
29.根据权利要求23至28中任一项所述的计算机实现的方法,其中所述经训练的模型是至少部分地基于示出模拟面部覆盖物的图像和示出真实面部覆盖物的图像来训练的。
30.根据权利要求23至29中任一项所述的计算机实现的方法,其中所述经训练的模型由远程服务器训练,并且所述经训练的模型随后被部署到多个设备,所述多个设备包括以下中的至少一者:(I)所述第一设备或(II)与所述第一设备相关联的用户设备。
31.根据权利要求23至30中任一项所述的计算机实现的方法,其中所述第一设备是从用户设备接收所述第一图像的驻留设备,所述用户设备的经训练的模型已执行所述确定所述第一图像中的所述第一人的所述面部的所述一部分未被所述面部覆盖物覆盖,并且其中所述用户设备至少部分地基于所述确定来将所述第一图像传输到所述第一设备。
32.根据权利要求31所述的计算机实现的方法,其中所述第一图像是从存储在所述用户设备上的图像库中的图像生成的图像裁剪,其中所述图像库由所述用户设备的相机捕获,并且其中所述图像库包括与所述用户设备相关联的联系人。
33.根据权利要求23至32中任一项所述的计算机实现的方法,其中所述第一设备是驻留设备,其中所述驻留设备在接收到所述第二图像之前从所述第二设备接收所述第一图像,所述第二设备的所述相机对应于观察相机,其中所述确定所述第一图像中示出的所述第一人的所述面部的所述一部分未被所述面部覆盖物覆盖由所述第一设备的所述经训练的模型来执行,并且其中至少部分地基于所述确定来将所述第一人的所述面部的所述一部分标记为与所述用户设备相关联的联系人。
34.根据权利要求23至33中任一项所述的计算机实现的方法,其中所述第一图像与第一图像质量水平相关联,并且所述第二图像与第二图像质量水平相关联,所述第二图像质量水平不同于所述第一图像质量水平。
35.根据权利要求23至34中任一项所述的计算机实现的方法,其中所述第一人是与用户设备相关联的联系人,所述用户设备与所述第一设备相关联,所述方法还包括:
由所述第一设备至少部分地基于所述得分来确定所述第一人不是所述第二人;以及
由所述第一设备向所述用户设备提供指示所述第二人不是与所述用户设备相关联的联系人的通知,其中所述通知不包括所述第二人的所述被部分覆盖面部的图像。
36.根据权利要求23至35中任一项所述的计算机实现的方法,其中所述第一人是与用户设备相关联的联系人,所述用户设备与所述第一设备相关联,所述方法还包括:
由所述第一设备从所述第二设备接收包括所述第二人的所述面部的未被覆盖部分的第三图像;
由所述第一设备至少部分地基于所述得分来确定所述第一人不是所述第二人;以及
由所述第一设备向所述用户设备提供指示所述第二人不是与所述用户设备相关联的联系人的通知,其中所述通知包括所述第二人的所述面部的所述未被覆盖部分的图像,并且其中所述通知能够操作用于将所述未被覆盖面部标记为与所述用户设备相关联的另一个联系人。
37.根据权利要求23至36中任一项所述的计算机实现的方法,还包括:
由所述第一设备保持面部质量度量,所述面部质量度量指示与和所述第二人的所述面部相关联的所述第二组特征相关联的质量水平,所述面部质量度量能够操作用于确定人的特定面部是能够识别的还是不能够识别的;以及
由所述第一设备至少部分地基于确定由所述面部质量度量指示的所述质量水平与阈值匹配来确定所述第二人的所述面部是能够识别的;以及
由所述第一设备至少部分地基于确定所述第二人的所述面部是能够识别的来确定所述第一人是否是所述第二人。
38.根据权利要求23至37中任一项所述的计算机实现的方法,其中所述第一图像选自用于传输到所述第一设备的多个图像,所述第一图像至少部分地基于与所述第一人的所述面部的所述一部分相关联的信息增益来选择,所述信息增益用于执行所述第一人的所述面部的面部识别。
39.根据权利要求23至38中任一项所述的计算机实现的方法,其中所述经训练的模型被训练为将第一面纹与第二面纹相关联,所述第一面纹是从示出部分覆盖人的面部的真实面部覆盖物的图像生成的,所述第二面纹是从示出所述人的未被覆盖面部的另一个图像生成的。
40.根据权利要求23至39中任一项所述的计算机实现的方法,其中所述经训练的模型包括神经网络。
41.一种设备,所述设备包括:
存储器,所述存储器包括计算机可执行指令;和一个或多个处理器,所述一个或多个处理器与所述存储器通信,并且被配置为访问所述存储器并执行所述计算机可执行指令以执行根据权利要求23至40中任一项所述的方法。
42.一种或多种包括计算机可执行指令的计算机可读存储介质,所述计算机可执行指令当由一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求23至40中任一项所述的方法。
43.一种装置,所述装置包括用于执行根据权利要求1至8或23至40中任一项所述的方法的单元。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063083360P | 2020-09-25 | 2020-09-25 | |
US63/083,360 | 2020-09-25 | ||
US17/469,630 | 2021-09-08 | ||
US17/469,630 US20220100989A1 (en) | 2020-09-25 | 2021-09-08 | Identifying partially covered objects utilizing machine learning |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114332975A true CN114332975A (zh) | 2022-04-12 |
Family
ID=77774794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111080203.2A Pending CN114332975A (zh) | 2020-09-25 | 2021-09-15 | 识别利用模拟覆盖物部分覆盖的对象 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220100989A1 (zh) |
EP (1) | EP3975132A1 (zh) |
CN (1) | CN114332975A (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11967173B1 (en) * | 2020-05-19 | 2024-04-23 | T Stamp Inc. | Face cover-compatible biometrics and processes for generating and using same |
US20230137381A1 (en) * | 2021-10-29 | 2023-05-04 | Centre For Intelligent Multidimensional Data Analysis Limited | System and method for detecting a facial apparatus |
KR20240045830A (ko) * | 2022-09-30 | 2024-04-08 | 주식회사 슈프리마에이아이 | 피인식 대상자의 특성 정보를 예측하는 방법 및 장치, 피인식 대상자의 특성 정보를 예측하는 신경망을 학습하는 방법 및 장치 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10347063B1 (en) * | 2017-03-01 | 2019-07-09 | Alarm.Com Incorporated | Authorized smart access to a monitored property |
KR102329765B1 (ko) * | 2017-03-27 | 2021-11-23 | 삼성전자주식회사 | 홍채 기반 인증 방법 및 이를 지원하는 전자 장치 |
KR102324468B1 (ko) * | 2017-03-28 | 2021-11-10 | 삼성전자주식회사 | 얼굴 인증을 위한 장치 및 방법 |
US10929798B1 (en) * | 2017-06-22 | 2021-02-23 | Alarm.Com Incorporated | Guard tour tracking |
KR102299847B1 (ko) * | 2017-06-26 | 2021-09-08 | 삼성전자주식회사 | 얼굴 인증 방법 및 장치 |
WO2019046365A1 (en) * | 2017-08-29 | 2019-03-07 | Stephen Scott Trundle | AUTHENTICATION AND AUTOMATION OF A GARAGE DOOR |
CN107622240B (zh) * | 2017-09-21 | 2023-10-13 | 百度在线网络技术(北京)有限公司 | 人脸检测方法和装置 |
US10963681B2 (en) * | 2018-01-30 | 2021-03-30 | Alarm.Com Incorporated | Face concealment detection |
US11163981B2 (en) * | 2018-09-11 | 2021-11-02 | Apple Inc. | Periocular facial recognition switching |
US11921831B2 (en) * | 2021-03-12 | 2024-03-05 | Intellivision Technologies Corp | Enrollment system with continuous learning and confirmation |
-
2021
- 2021-09-08 US US17/469,630 patent/US20220100989A1/en active Pending
- 2021-09-15 EP EP21196868.0A patent/EP3975132A1/en active Pending
- 2021-09-15 CN CN202111080203.2A patent/CN114332975A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3975132A1 (en) | 2022-03-30 |
US20220100989A1 (en) | 2022-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102630902B1 (ko) | 서술적 모델들에 기초한 자동화된 결정들 | |
US11710348B2 (en) | Identifying objects within images from different sources | |
US20220100989A1 (en) | Identifying partially covered objects utilizing machine learning | |
US11593920B2 (en) | Systems and methods for media privacy | |
US20230013117A1 (en) | Identity recognition utilizing face-associated body characteristics | |
US20220366727A1 (en) | Identity recognition utilizing face-associated body characteristics | |
CN117377988A (zh) | 利用面部关联的身体特征的身份识别 | |
US12131583B2 (en) | Identifying objects within images from different sources | |
US20240135701A1 (en) | High accuracy people identification over time by leveraging re-identification | |
WO2024063969A1 (en) | Identity recognition utilizing face-associated body characteristics | |
WO2022241294A2 (en) | Identity recognition utilizing face-associated body characteristics | |
US20240333873A1 (en) | Privacy preserving online video recording using meta data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |