Tensorflow(三)人脸检测实验

1.获取数据集(LFW)

打开http://vis-www.cs.umass.edu/lfw/中:

Labeled Faces in the Wild HomeMenu->Download->All images as gzipped tar file

 

解压放到datasets

 

2.下载facenet并配置

facenet 是一个使用tensorflow进行人脸识别的开源库,我们可以依赖于它,进行人脸识别相关开发,进而降低难度与成本

 

 1)git clone --recursive https://github.com/davidsandberg/facenet.git

 2)cd facenet/

3)export PYTHONPATH=$(pwd)/src

 

注意文件放置的位置!(facenet 和lfw要放在同一目录下,切记!)

facenet所在路径 :   /home/用户名/facenet/data

lfw解压后所在路径:/home/用户名/facenet/data/lfw

 

3.处理数据集(对齐数据集)

1)cd facenet

2)pythonsrc/align/align_dataset_mtcnn.py data/lfw data/lfw/lfw_mtcnnpy_160 --image_size160 --margin 32 --random_order --gpu_memory_fraction 0.25

 

  (切记,一定要写对路径,这样才能导入全部数据,并导出相同像素160*160的图片)

 

然后在这里 /home/用户名/facenet/data/lfw/lfw_mtcnnpy_160会有对齐之后的图片了(所谓对齐,可以理解为就是同等像素大小。

 Tensorflow(三)人脸检测实验_第1张图片

对齐之后:

Tensorflow(三)人脸检测实验_第2张图片

Tensorflow(三)人脸检测实验_第3张图片

输出结果:

Tensorflow(三)人脸检测实验_第4张图片

Total number of images: 13234

Number of successfully aligned images:13233

 

 

4.下载训练好的模型文件

 

1 facenet提供了两个预训练模型,分别是基于CASIA-WebFaceMS-Celeb-1M人脸库训练的。下载20170512-110547(MS-Celeb-1M数据集训练的模型文件,微软人脸识别数据库,名人榜选择前100万名人,搜索引擎采集每个名人100张人脸图片。

2本人使用的是基于数据集MS-Celeb-1M训练好的模型。

下载20170512-110547, 然后解压放在face/models以便后面路径寻找。

 

5.在lfw数据集上面进行验证,评估预训练模型的准确率

 

1)cd facenet

 

2)$ pythonsrc/validate_on_lfw.py /home/用户名/face/facenet/data/lfw/lfw_mtcnnpy_160/home/用户名/face/models/20170512-110547

 

输出

Runnning forward pass on LFW images

Accuracy: 0.992+-0.003

Validation rate: 0.97467+-0.01477 @FAR=0.00133

Area Under Curve (AUC): 1.000

Equal Error Rate (EER): 0.007

为了和基准进行比较,这里采用facenet/data/pairs.txt 文件,它是官方随机生成的数据,里面包含匹配和不匹配的人名和图片编号。

 

你可能感兴趣的:(tensorflow笔记)