首先需要安装opencv、dlib、face_recongnition库,opencv安装起来比较简单,其他两个库的安装请看关于face_recognition的安装最简单方式_时间和我都在往前走的博客-CSDN博客
这里代码可以直接用,不过路径得自己改,运行时按Ctrl+s先将要进行识别的人脸信息以人名—+扩展名保存在name里面,后续再运行一次,就会出现识别出来的人物姓名,按Esc退出程序,在csv里面就会出现签到信息。
当然这个只是实现了初步,比如说可以直接拿照片蒙混过关进行签到,或者戴个口罩就不行识别出来,所以有什么办法改进大家可以一起交流呀
import cv2
import face_recognition
import numpy as np
from PIL import Image,ImageDraw,ImageFont
import os
import datetime
Images = []#存储人脸数据集中的图像
Names = []#存储人脸数据中图像对应的人名
def ChineseText(img,text,position,textColor=(0,255,0),textSize=18):
#判断是否是opencv图片类型
if(isinstance(img,np.ndarray)):
img = Image.fromarray(cv2.cvtColor(img,cv2.COLOR_BGR2RGB))
#创建一个绘画对象
draw

本文介绍了如何利用opencv、dlib和face_recognition库建立一个人脸识别及签到系统。首先需要安装相关库,然后通过代码采集并保存人脸信息。运行程序后,系统能识别出人员姓名,但存在照片欺骗和口罩识别问题,期待进一步改进。
最低0.47元/天 解锁文章
9430

被折叠的 条评论
为什么被折叠?



