作者:------柒末雪------
一、项目结构如下
二、程序主流程
主流程代码,通过sqlite3保存人脸数据和信息,然后通过遍历数据库与之对比找出识别者信息,若识别不到,则会提示添加人脸信息至数据库。
#导入数据库驱动
import sqlite3
from testCamera import getFaceID,imgToBase64,reconized,getModelFace,saveFaceData
import time
def checkAll():
#连接到数据库
#数据库文件是“face.db”
#如果数据库不存在的话,将会自动创建一个 数据库
conn = sqlite3.connect("face.db")
#创建一个游标 curson
cursor = conn.cursor()
#查询所有记录:
sql = "select * from person_info"
cursor.execute(sql)
#获取查询结果:
values = cursor.fetchall()
getModelFace.getModel()
flag=False
for i in values:
if(reconized.face_check(reconized.get_token(),i[2])):
print("您是"+i[1])
flag=True
break
return flag
#关闭游标:
cursor.close()
#提交事物
conn.commit()
#关闭连接
conn.close()
if __name__ == '__main__':
time1=time.time();
if(checkAll()):
time2 = time.time();
useTime = time2 - time1;
print("识别耗时" + str(useTime) + "秒")
else:
print("人脸库无您的信息,请录入")
saveFaceData.save()
三、通过笔记本相机获取人脸图片存为Face_id.jpg
getModelFace.py主要是用于对比时获取人脸与库中Face_ID对比