码迷,mamicode.com
首页 > 其他好文 > 详细

使用OpenFace进行人脸识别(2)

时间:2017-10-20 21:31:10      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:href   present   batch   生成   sdn   ==   分享   测试   logs   

http://blog.csdn.net/u011531010/article/details/52270023

http://www.vccoo.com/v/2ed520

第一步

在 openface 文件中建立一个名为./training-images/的文件夹

mkdir training-images

第二步

为你想识别的每个人建立一个子文件夹。例如:我找了7组图像,每组为不同的明星,每组明星人脸图像大概有10个

技术分享

 

技术分享

 


第三步

然后把这几个训练文件夹放到openface/tarin-images。图片的格式无所谓。确保每张图像上只出现一张脸。不需要裁剪脸部周围的区域。OpenFace 会自己裁剪。

第四步

从这个 OpenFace 的根目录中运行这个 OpenFace 脚本。

首先,进行姿势检测和校准:

./util/align-dlib.py ./training-images/ align outerEyesAndNose ./aligned-images/ --size 96

这将创建一个新./aligned-images/子文件夹,带有每一个测试图像的裁剪过的并且对齐的版本。

 技术分享

 

第二,从对齐的图像中生成表征:

./batch-represent/main.lua -outDir ./generated-embeddings/ -data ./aligned-images/

运行完后,这个./aligned-images/子文件夹会包含一个带有每张图像的嵌入的  csv 文件。

第三,训练自己的面部检测模型:

./demos/classifier.py train ./generated-embeddings/

这将产生名为./generated-embeddings/classifier.pkl的新文件名。这个文件有你将用来识别新面部的 SVM 模型。

到了这,你应该有一个可用的面部识别器。


第五步:识别面部!

mkdir ./test-images

放入明星测试图像,这些图像保证没有参与过training

技术分享

 测试训练的人像种类

获取一张未知脸的新照片。把它像这样传递给分类器脚本:

./demos/classifier.py infer ./generated-embeddings/classifier.pkl ./test-images/liangchaowei-test.jpg

我们会得到一个看起来像这样的预测:置信度在0.6以上

=== ./test-images/liangchaowei-test.jpg ===
Predict liangchaowei with 0.77 confidence.

=== ./test-images/zhourunfa-test.jpg ===
Predict zhourunfa with 0.62 confidence.

测试没有训练的人像种类: 置信度在0.5以下

技术分享


=== ./test-images/fanbinbin-test.jpg ===
Predict zhouxun with 0.50 confidence.

=== ./test-images/huge-test.jpg ===
Predict liudehua with 0.34 confidence.


使用OpenFace进行人脸识别(2)

标签:href   present   batch   生成   sdn   ==   分享   测试   logs   

原文地址:http://www.cnblogs.com/adong7639/p/7701338.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!