Skip to the content.

FaceNet: Face verification and face recognition

We will build a face recognition system using FaceNet. Face recognition problems commonly fall into one of two categories:

I did this project in the Convolutional Neural Networks course as part of the Deep Learning Specialization.

Vector encoding of faces

FaceNet learns a neural network that encodes a face image into a vector of 128 numbers. By comparing two such vectors, you can then determine if two pictures are of the same person. We compute the distance between two encodings and apply a threshold to determine if the two encodings (thus the two pictures) represent the same person:

Computing distance between encodings

Here are some examples of distances between the encodings between three individuals:

Distance examples

We use a pre-trained FaceNet model to build both the face verification and recognition systems.