人脸识别之成果检验(四)

阅读: 评论:0

人脸识别之成果检验(四)

人脸识别之成果检验(四)

人脸识别之人脸检测(一)
人脸识别之拍照保存(二)
人脸识别之数据训练(三)
人脸识别之成果检验(四)

读取训练好的数据----->得到人脸对应的id----->人脸识别
代码:

import cv2
import os# 加载训练数据集文件
recogizer = cv2.face.LBPHFaceRecognizer_create()
ad('l')
names = []
warningtime = 0def face_detect(img):'''进行人脸识别:param img::return:'''gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)    # 转换为灰度face_detector = cv2.CascadeClassifier('D:/opencv(WIN)/opencv/sources/data/haarcascades/haarcascade_l')face = face_detector.detectMultiScale(gray,1.1,5,cv2.CASCADE_SCALE_IMAGE,(100,100),(300,300))for x, y, w, h in angle(img, (x,y), (x+w,y+h), color=(0,0,255), thickness=2)cv2.circle(img, center=(x+w//2,y+h//2), radius=w//2, color=(0,255,0), thickness=1)# 人脸识别ids, confidence = recogizer.predict(gray[y:y + h, x:x + w])if confidence > 80:global warningtimewarningtime += 1if warningtime > 100:warningtime = 0cv2.putText(img, 'unkonw', (x + 10, y - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.75, (0, 255, 0), 1)else:cv2.putText(img,str(names[ids-1]), (x + 10, y - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.75, (0, 255, 0), 1)cv2.imshow('result',img)def name():'''得到人脸对应的id:return:'''path = 'D:/Pycharm/other/TEST/'names = []imagePaths=[os.path.join(path,f) for f in os.listdir(path)]for imagePath in imagePaths:name = str(os.path.split(imagePath)[1].split('.')[0])names.append(name)if __name__ == '__main__':cap = cv2.VideoCapture(0)    # 电脑摄像头开启,检测自己的人脸# cap = cv2.VideoCapture('1.mp4')    # 检测视频的人脸name()while True:flag, frame = ad()if not flag:breakface_detect(frame)if ord(' ') == cv2.waitKey(10):breakcv2.destroyAllWindows()lease()

本文发布于:2024-01-31 16:51:57,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170669112029987.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:虹科实力
下一篇:二十一
标签:成果
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23