继续介绍人脸识别实例,先训练模型(可以用已训练好的模型),SVM 人脸分类训练,预测USB摄像头捕捉的人脸。
1. 下载代码及数据集
开源工程下载,
https://github.com/davidsandberg/facenet
下载后解压出facenet-master文件夹
打开requirements.txt文件,删除tensorflow==1.7,执行命令,
pip3 install -r requirements.txt
下载数据集,
数据解压后放在和facenet-master同集目录下
CASIA-WebFace : 比较大,用于训练模型,读者可自行搜索下载。
lfw : 比较小用于验证模型,下载地址如下:
http://vis-www.cs.umass.edu/lfw/lfw.tgz
下载已训练好的模型,
下载链接:
https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-
如果不能翻墙,请用下面链接进行下载:
https://download.csdn.net/download/hemro/11862096
2. 训练模型
2.1 使用已训练好的模型
1、下载已训练好的模型
2、人脸对齐
上上一篇已说明,在目标数据集上运行如下命令,会得到lfw_align_160目录:
python src/align/align_dataset_mtcnn.py …/lfw …/lfw_align_160 --image_size 160 --margin 32 --random_order
3、验证模型
在facenet-master目录下运行,20181205-090556为下载的训练好的模型:
python src/validate_on_lfw.py …/lfw_align_160/ …/models/20181205-090556
结果如下,准确率为0.998: