项目简介
本项目基于Flask框架开发,实现了人脸相似度对比服务。借助MTCNN进行人脸检测与对齐,使用FacNet计算人脸的128维距离向量,再通过欧拉公式计算两个目标向量的距离,以此完成人脸相似度对比。项目仅对外暴露一个接口,用户上传两张图片就能完成相似度计算。
项目的主要特性和功能
- 人脸检测与对齐:运用MTCNN算法进行人脸检测和对齐。
- 人脸特征提取:利用FacNet模型提取人脸的128维特征向量。
- 相似度计算:通过欧拉公式计算两个特征向量的距离,判断人脸相似度。
- 单一接口:仅提供一个接口,用户上传两张图片即可获取相似度结果。
- 高性能并发:优化了Flask的并发性能,保证服务在高并发环境下稳定运行。
安装使用步骤
环境准备
- 确保已安装Python 3+。
- 安装Tensorflow版本低于2.0。
- 运行环境需为Unix系统(Gunicorn目前不支持Windows)。
安装依赖
shell
pip3 install -r requirements_cpu.txt
下载预训练模型
下载FaceNet官方预训练模型 20180408-102900.zip,并将其放置在model
文件夹下。
启动服务
shell
gunicorn -c gun.py manage:app
使用服务
通过API接口上传两张图片,获取人脸相似度对比结果。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】