Google 的 FaceNet 用的是 Triplet Loss,这跟它自己的数据量有直接关系,之前那几个论文都是基于公开的数据,人脸 ID 数在 1 万的量级左右。但 Google 的互联网数据非常多,它做得最大的实验用到了两亿六千万的人脸数据,总 ID 数大概在 800 万左右。所以在那个时候,Google 从一开始就用了 Triplet Loss,意思就是它有三个样本的对,其中有一个叫 Anchor一个叫 Negative,一个叫Positive。Positive 的意思就是它跟 Anchor 是同一类的,如果跟 Anchor 不是同一类就是 Negative。 FaceNet采用的训练集是MS-Celeb-1M数据集,它是微软一个非常大的人脸识别数据库,每个人大约有100张人脸图片,这个预训练模型的准确率已经达到0.993±0.004。 因为FaceNet 使用的是谷歌的“inception resnet v1”网络模型,这个模型的输入时160160的图像,而我们下载的LFW数据集是250250限像素的图像,所以需要进行图片的预处理。
LFW (Labeled Faces in the Wild) 人脸数据库是由美国马萨诸塞州立大学阿默斯特分校计算机视觉实验室整理完成的数据库,主要用来研究非受限情况下的人脸识别问题。LFW 数据库主要是从互联网上搜集图像,而不是实验室,一共含有13233 多张人脸图像,共5749人,其中4096人只有一张图片,有1680 人对应不只一张图像,每张图像都被标识出对应的人的名字。
用于评测人脸识别算法效果的公开评测数据集为 LFW【1】,全称带标签的自然人脸数据库(Labeled Faces in the Wild),由美国马萨诸塞州大学艾姆赫斯特学院创建,完整的带标签自然人脸数据库可以作为一个压缩包(lfw.tgz)下载。每张图片命名方式为 “lfw/name/name_xxxx.jpg”, 这里“xxxx”是前面补零的四位图片编号。例如,前美国总统 乔治•W•布什 的第10张图片为 “lfw/George_W_Bush/George_W_Bush_0010.jpg”。
LFW 总共有 13233 张 JPEG 格式图片,属于 5749 个不同人。每张图片尺寸都是 250x250。LFW 是学术界进行人脸验证性能评测的事实上的标准测试数据集。
这个集合被广泛应用于评价 face verification算法的性能。
传统算法方面,结果最好的是GaussianFace。
Chaochao Lu and Xiaoou Tang. Surpassing Human-Level Face Verification Performance on LFW with GaussianFace.
当然,更好的结果是基于deep learning,结果虽然好,但是运算代价比较高。优点是实现简单,opensource 比较多。
和人脸相关的任务有多种:
人脸检测(将图片中包含的人脸进行初步定位,以及关键点如眼睛、鼻子、嘴巴等更精细的定位,文章封面即为典型人脸检测结果)
人脸跟踪(视频中跟踪人脸位置变化)
人脸验证(输入两张人脸,判定是否属于同一人)
人脸识别(输入一张人脸,判断其属于人脸数据库全部记录中具体哪一人)
人脸聚类(输入一批人脸,将属于同一人的自动归为一类)