赞
踩
目录
人脸识别2:InsightFace实现人脸识别Face Recognition(含源码下载)
这是项目《人脸识别Face Recognition》系列之《InsightFace实现人脸识别Face Recognition》Python版本;项目基于开源ArcFace(也称InsightFace)模型搭建一套完整的Python版本人脸识别系统(Face Recognition or Face Identification);
整套人脸识别系统核心算法包含人脸检测和人脸关键点检测,人脸校准,人脸特征提取以及人脸比对(1:1)和人脸搜索(1:N)。本项目人脸识别系统可以达到目前商业级别的人脸识别准确率,在误识率(FAR)0.1%的情况下,可提供99.57%的通过率(TAR);可以满足人脸比对,人脸签到、人脸门禁、人员信息查询、安防监控等人脸识别应用场景。
Python版本人脸检测和人脸识别效果:
【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/130600472
更多项目《人脸识别Face Recognition》系列文章请参考:
项目结构说明
- .
- ├── configs # 配置文件(设置检测模型,特征提取模型)
- ├── core
- │ ├── alignment # 人脸校准算法
- │ ├── detection # 人脸检测模型
- │ ├── feature # 人脸特征提取模型
- │ ├── face_detector.py # 人脸检测(支持MTCNN和RFB)
- │ ├── face_feature.py # 人脸特征提取模型
- │ ├── face_matcher.py # 人脸匹配算法
- │ ├── face_recognizer.py # 人脸识别
- │ └── face_register.py # 人脸注册
- ├── data # 人脸识别相关数据
- ├── face_compare.py # 1:1人脸比对Demo
- ├── face_search.py # 1:N人脸搜索Demo
- ├── register.py # 1:N人脸搜索人脸数据库注册Demo
- ├── README.md # 说明文档
- └── requirements.txt # 项目依赖文件
Python依赖环境,使用pip安装即可,项目代码都在Ubuntu系统和Windows系统验证正常运行,请放心使用;若出现异常,大概率是相关依赖包版本没有完全对应
- numpy==1.16.3
- matplotlib==3.1.0
- Pillow==6.0.0
- easydict==1.9
- opencv-contrib-python==4.5.2.52
- opencv-python==4.5.1.48
- pandas==1.1.5
- PyYAML==5.3.1
- scikit-image==0.17.2
- scikit-learn==0.24.0
- scipy==1.5.4
- seaborn==0.11.2
- tensorboard==2.5.0
- tensorboardX==2.1
- torch==1.7.1+cu110
- torchvision==0.8.2+cu110
- tqdm==4.55.1
- xmltodict==0.12.0
- basetrainer
- pybaseutils
项目安装教程请参考(初学者入门,麻烦先看完下面教程,配置好开发环境):
人脸识别主要包含人脸比对(1:1)和人脸搜索(1:N)两大功能,涉及的核心算法主要包含:人脸检测和人脸关键点检测,人脸校准,人脸特征提取以及人脸比对(1:1)和人脸搜索(1:N);当然,实际业务中,可能还会增加人脸质量检测以及活体识别等算法,碍于篇幅,后续再分享活体识别算法。
下图给出本项目人脸识别系统算法实现架构流程图:
人脸检测的方法比较多,项目提供两种人脸检测方法:一种是基于MTCNN的通用人脸检测模型,另一种是轻量化的、快速的RFB人脸检测模型;这个两个模型都能实现人脸检测,并同时预测人脸的五个关键点(Landmark)。
模型 | Paper | 源码 | 说明 |
MTCNN | Paper | Link |
|
RFB | Paper | Link |
|
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。