人脸识别流程包括人脸检测、人脸对齐、人脸识别等子任务,这里优先总结功能相对齐全的开源项目,再总结完成单个子任务的开源项目。本文主要关注方法较流行且提供源码的开源项目,忽略了仅提供SDK的。

全任务

  1. SeetaFaceEngineSeetaFaceEngine2,是中科院山世光组开源的项目,含Detection、Alignment、Identification,前者代码齐全,很适合学习,只是没有开源模型训练方法,后者只提供了SDK。
  2. OpenCV以及opencv_contrib,传统方法和深度学习方法都有,4.0版本已发布,见ChangeLog
  3. dlib基于C++的机器学习库,其中也含有 frontal face detection 和 face recognition等。face_recognition基于dlib的人脸识别(python)。
  4. openface官网以及cmusatyalab/openface github是基于google FaceNet(CVPR 2015)用Python和Torch实现的人脸识别系统。
  5. facenet,基于Tensorflow实现的FaceNet,参考了上面的openface
  6. TadasBaltrusaitis/OpenFace(与上面的openface不是同一个),汇总了多篇论文的实现,含facial landmark detection、head pose estimation、facial action unit recognition 以及 eye-gaze estimation,侧重于facial behavior analysis and understanding。

人脸检测

  1. MTCNN,Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Neural Networks。以及MTCNN-light,无框架实现版本。
  2. 百度冠军方法PyramidBox的两个非官方实现,EricZgw/PyramidBox以及Goingqs/PyramidBox,前者TensorFlow后者pytorch。

人脸识别

以下,copy自大学生写人脸识别算法现实吗? – 卡本特的回答 – 知乎

2018年初Insightface曾拿Megaface第一,参见InsightFace – 使用篇, 如何一键刷分LFW 99.80%, MegaFace 98%

以上,待更新。

参考

 转自:https://www.cnblogs.com/shine-lee/p/10045672.html