Ubuntu16.04下人脸识别

环境:Win10 + VMware Workstation 15 Pro + Ubuntu 16.04.6 + dlib 19.18 + python 3.5 + opencv

一、准备:
◆GitHub上代码和人脸识别模型
下载:https://github.com/zj19941113/Face_Recognition_dlib
1、模型:
1.1、人脸关键点检测shape_predictor_68_face_landmarks.dat
1.2、人脸识别模型dlib_face_recognition_resnet_model_v1.dat
注:(这两个文件是人脸识别模型,在运行对应的代码进行训练数据和调试时需要用到)
2、代码:
点击“Clone or download”>>“Download ZIP”下载

◆下载dlib库
官网下载地址:http://dlib.net/

二、开始:
步骤一: 环境搭建
1、Ubuntu16镜像下载链接:https://blog.51cto.com/13669226/2145171

2、下载VMware虚拟机:
https://blog.csdn.net/qq_40950957/article/details/80467513

参考:
Win10下 VM下载和ubuntu安装:https://blog.csdn.net/qq1326702940/article/details/82322079

▲注意:
1、安装好ubuntu16.04之后使用克隆机(“鼠标放在Ubuntu64位>>右键>>管理>>克隆”),避免系统故障。
2、Ubuntu16.04安装VMtools参考: https://blog.csdn.net/cfq1491/article/details/81063472
注:VMtool实现Windows和Ubuntu之间文件的复制粘贴;虚拟机全屏或退出全屏CTRL + Alt + Enter。
3、Ubuntu16.04换国内源,我用的是阿里源 参考:
https://blog.csdn.net/u012308586/article/details/102953882
注:Ubuntu安装好之后默认是国外的下载源,需要将其改为国内源,否则速度极慢而且下载内容受限制。
4、检查python默认版本,python2版本运行容易出错,所以用python3.5,Ubuntu会有原装3.5版本。
可以参考此链接:https://blog.csdn.net/wangguchao/article/details/81776177
或使用update-alternatives --config python命令选择对应序号即可

步骤二:编译dlib
将下载好的dlib文件复制到home下,再在dlib根目录下运行

python setup.py install

参考:https://blog.csdn.net/ffcjjhv/article/details/84660869
当出现:No module named 'setuptools’问题时,参考:https://blog.csdn.net/coder_oyang/article/details/72829380
当出现:Python.h: 没有那个文件或目录 问题时, 参考:https://blog.csdn.net/cheerygod/article/details/92773814

步骤三:安装opencv

pip install opencv-python

当出现:c++: internal compiler error:问题时,参考:https://blog.csdn.net/qq_27148893/article/details/88936044
笔记本摄像头灯亮却黑屏时,参考:
https://blog.csdn.net/m0_37823030/article/details/69055502?utm_source=app

步骤四:调试
1、准备文件
按下图放好文件夹和对应文件,最好放在通一个文件夹中,否则需要更改代码,加入调用文件的绝对路径。
▲注意:1、文件在准备阶段所下载的“代码”中。2、添加文件时看一下“运行”,有些文件是生成的并不需要自己添加,另外没有的文件需自己新建。
在这里插入图片描述
candidate-face文件中存放人脸识别训练数据。
test-face文件中存放想要测试的图片。
faceRec文件中得到test-face中检测结果。
test-face中识别错误存放于faceRec_ERROR文件。

2、运行
2.1、运行 python candidate_train.py 获得人脸库特征信息,存储在candidates.npy 与 candidates.txt 中。
2.2、运行 python facerec_68point.py 得到识别结果all-face-result.jpg。
2.3、运行 python this_is_who.py 进行在test-face文件夹中的批量测试,测试结果存于faceRec文件夹,识别错误结果存于faceRec_ERROR ,不设相似度阈值时识别正确率为0.99469,但是这里寻找的是与数据库中最相似的人脸,加入相似度阈值使非数据库中的人显示unknown,相似度阈值is_not_candidate=0.5时,准确率0.976127,相似度阈值is_not_candidate=0.6时,准确率0.986737,但是将unknow识别为人脸库人脸的可能性会升高。
2.4、运行 this_is_who_camera.py 打开摄像头进行实时的人脸识别,
然后你就可以看到类似下图这样子,就说明运行成功。
在这里插入图片描述

▲注意:每次人脸库candidate-face中加入新的人脸数据,均需运行python candidate_train.py。

三、结束
两个参考资料:
1、https://note.youdao.com/ynoteshare1/index.html?id=32242c51c130319faa6a3c474287db02&type=note
2、https://note.youdao.com/ynoteshare1/index.html?id=d8ee6cc740cbd9c8ad5d0d6ccf883c27&type=note

  • 1
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值