This is an article I had for quite a while as a draft. As part of my yearly cleanup, I've published it without finishing it. It might not be finished or have other problems.
A few days ago, I took a flight from Nepal back to Germany. I was trekking for 3 weeks. Of course, I did not take my beard trimmer with me. So what is usually a three-day beard became a 3-week beard. And when I tried to get through those automatic face recognition gates for EU citizens, the machine spent like one minute trying to recognize me (usually it takes about 5 seconds).
That was when I started wondering what the current state of face recognition is. Not only the state-of-the-art techniques, but more what is currently available in free software.
Face Recognition Tasks
There are four main tasks in face recognition:
- Face Detection: Given an image, draw an axis-aligned bounding box around each face
- Face Alignment: Transform a face to be in a canonical pose
- Face Representation: Find a representation for a face which is suitable for follow-up tasks
- Face Verification: Given two face representations, decide if they are the same
Important papers
- Deep Face: closing the gap to human level performance (summary)
- FaceNet: A unified embedding for face recognition and clustering (summary)
- Deep Face recognition (summary)
Problems
See also
- PyPI:
face_recognitionuses dlib. It's fast, it's good. Use it.