-
大小: 88.68MB文件类型: .zip金币: 1下载: 0 次发布日期: 2022-07-23
- 语言: Python
- 标签: python3 人脸识别 40行代码 shape_predic dlib_face_re
资源简介
python3 版本的40行代码的人脸识别实践,运行文件夹中test.py原文地址在这里https://blog.csdn.net/xingchenbingbuyu/article/details/68482838,是python2版本的我改成python3版本,把里面需要到官网下载的东西也打包进去节省大家时间,大家能直接试了,省得手累
代码片段和文件信息
# -*- coding: UTF-8 -*-
import sysosdlibglobnumpy
from skimage import io
if len(sys.argv) != 5:
print(“请检查参数是否正确“)
exit()
# 1.人脸关键点检测器
predictor_path = sys.argv[1]
# 2.人脸识别模型
face_rec_model_path = sys.argv[2]
# 3.候选人脸文件夹
faces_folder_path = sys.argv[3]
# 4.需识别的人脸
img_path = sys.argv[4]
# 1.加载正脸检测器
detector = dlib.get_frontal_face_detector()
# 2.加载人脸关键点检测器
sp = dlib.shape_predictor(predictor_path)
# 3. 加载人脸识别模型
facerec = dlib.face_recognition_model_v1(face_rec_model_path)
# win = dlib.image_window()
# 候选人脸描述子list
descriptors = []
# 对文件夹下的每一个人脸进行:
# 1.人脸检测
# 2.关键点检测
# 3.描述子提取
for f in glob.glob(os.path.join(faces_folder_path “*.jpg“)):
print(“Processing file: {}“.format(f))
img = io.imread(f)
#win.clear_overlay()
#win.set_image(img)
# 1.人脸检测
dets = detector(img 1)
print(“Number of faces detected: {}“.format(len(dets)))
for k d in enumerate(dets):
# 2.关键点检测
shape = sp(img d)
# 画出人脸区域和和关键点
# win.clear_overlay()
# win.add_overlay(d)
# win.add_overlay(shape)
# 3.描述子提取,128D向量
face_descriptor = facerec.compute_face_descriptor(img shape)
# 转换为numpy array
v = numpy.array(face_descriptor)
descriptors.append(v)
# 对需识别人脸进行同样处理
# 提取描述子,不再注释
img = io.imread(img_path)
dets = detector(img 1)
dist = []
for k d in enumerate(dets):
shape = sp(img d)
face_descriptor = facerec.compute_face_descriptor(img shape)
d_test = numpy.array(face_descriptor)
# 计算欧式距离
for i in descriptors:
dist_ = numpy.linalg.norm(i-d_test)
dist.append(dist_)
# 候选人名单
candidate = [‘Unknown1‘‘Unknown2‘‘Unknown3‘‘liudehua‘‘unknown4‘]
# 候选人和距离组成一个dict
c_d = dict(zip(candidatedist))
cd_sorted = sorted(c_d.items() key=lambda d:d[1])
print(cd_sorted)
print(“\n The person is: “cd_sorted[0][0])
dlib.hit_enter_to_continue()
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-09-06 15:16 ck\
文件 22466066 2018-09-06 14:40 ck\dlib_face_recognition_resnet_model_v1.dat
目录 0 2018-09-06 14:47 ck\img1\
文件 7320 2018-09-06 14:43 ck\img1\ (1).jpg
文件 57173 2018-09-06 14:43 ck\img1\ (2).jpg
文件 65259 2018-09-06 14:43 ck\img1\ (3).jpg
文件 7085 2018-09-06 14:44 ck\img1\ (4).jpg
文件 5809 2018-09-06 14:44 ck\img1\ (5).jpg
文件 99693937 2018-09-06 14:01 ck\shape_predictor_68_face_landmarks.dat
文件 2390 2018-09-06 15:14 ck\test.py
文件 7085 2018-09-06 14:44 ck\test1.jpg
相关资源
- 《Python3网络爬虫开发实战代码》.zi
- dlib-19.19.0-cp38-cp38-win_amd64.whl
- Python3.7打包whl库,包括numpy、scikit、
- python35_d.lib和python35_d.dll
- python2和python3版本可用的OpenCV安装包
- python3面向对象编程 pdf文件
- 飞机大战python源码及游戏
- CBIR图像检索系统
- 基于Python的人脸识别系统
- 高效算法128例配套代码
- 短路计算程序_python3
- 详解python3百度指数抓取
- 微博模拟登陆python3-2018年8月最新版本
- 基于人脸识别的课堂签到管理系统.
- faceReco.py
- Python+OpenCv实现AI人脸识别身份认证系
- python3爬取网易云歌单
- Python3简明教程(中文版)
- 人脸识别pythonLBPH
- 基于Haar+Adaboost人脸识别.ipynb
- 爬取好大夫网.py
- Python3网络爬虫开发实战 配套源码 完
- python3.0 爬虫小说
- python3.6及Django打包exe文件详细教程
- 笨方法学python3-习题1-45
- Python3 itchat实现微信定时发送群消息的
- Python3中的2to3转换工具使用
- 基于PCA的人脸识别系统-python版
- 某网Python3.6+电商实战+Vue+Django
- pyqt5做一个一个时钟demo(python3)
评论
共有 条评论