如何在一秒钟内对数百万张人脸进行人脸识别

Posted

技术标签:

【中文标题】如何在一秒钟内对数百万张人脸进行人脸识别【英文标题】:How to perform face recognition over millions of faces in a second 【发布时间】:2020-10-12 22:14:02 【问题描述】:

我们可以看到现代应用程序具有人脸识别功能,可以在几秒钟内从包含数百万张人脸的数据库中进行识别。 我想知道他们如何有效地使用三元组损失来做到这一点。

他们使用什么数据库?

他们如何查询?

谢谢。

【问题讨论】:

【参考方案1】:

我们将两张人脸图像输入 CNN 以将它们表示为向量。这是人脸验证。人脸识别需要多次应用人脸验证。

假设您将 target.jpg 与 img1 与 img5 进行比较。

target.jpg - img1.jpg
target.jpg - img2.jpg
target.jpg - img3.jpg
target.jpg - img4.jpg
target.jpg - img5.jpg

这里,img1 到 img5 已经存储在我的数据库中。我可以将它们输入到 CNN 模型中进行表示。我的意思是,当我得到 target.jpg 时,我已经必须将 img1 表示为 img5。

实时,需要实时找到target.jpg的表示。比较向量可以非常快速地处理。

您可以使用以下代码块对其进行测试。

#!pip install deepface
from deepface import DeepFace
DeepFace.stream("C:/database")

【讨论】:

以上是关于如何在一秒钟内对数百万张人脸进行人脸识别的主要内容,如果未能解决你的问题,请参考以下文章

识别人脸face_recognition实现

人脸识别人脸识别损失函数学习笔记

刷脸背后:人脸检测人脸识别人脸检索_张重生资料整理

怎样使用OpenCV进行人脸识别

如何开发Java动态人脸识别

Apple Vision Framework 识别人脸