人脸识别face_detection

一、人脸识别与检测

face_detection文件夹中保存着如下文件:

1. test_detection_mtcnn.py中利用tensorflow和mtcnn实现人脸检测和五个特征点的定位

2. test_classifier.py 检测完后加载分类器,对分类结果进行判断

3.  train_classifier.py 自行训练的一个性别的检测器,将训练集中图片人脸部分裁出,然后加载映射后进行分类训练.

     使用的图片在train文件夹中 rainFemale和 rainmale。

4. detect_face.py(实现MTCNN网络三个阶段的检测)和facenet.py(实现将人脸图像映射到128维度的欧几里得空间中,三联子的损失函数进行计算损失进而优化) 分别从两个项目中下载得到的

5.  model_check_point文件夹中

knn_classifier_gender为性别分类器模型

model-20160506.ckpt-500000是从mtcnn项目中下载的一个模型,就不用花费超级多时间来训练

在终端中运行

注意需要下载opencv,因为我们在程序中导入opencv的CV2模块来读取图片:

注意:源代码可以不全掌握,但是test的全部代码需要看懂。

二、人脸分类

此章节需要用到face_net,利用train_classifier.py程序来训练,直接在cmd中:

          python train_classifier.py

使用该生成模型进行测试,利用test_classifier.py程序来测试:(记得传入一张图片给程序)

   python  test_classifier.py  imagesfemale01.jpeg

 注意:本程序是Tensorflow0.12来训练的,这取决于mtcnn是用老版本的TensorFlow来写的。

由于tensorflow版本变化很大,还不稳定,若用1.0之后的版本来restrore复原的时候,可能有的参数有出入,从而没有办法来复原模型,无法使用模型。

原文地址:https://www.cnblogs.com/Josie-chen/p/9082875.html