【人脸识别】Python实现人脸识别

一、软件安装

1. 替换pip镜像

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

二、pip安装openvc-python

pip install --target=/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages opencv-python==4.1.2.30

三、配置Pycharm,安装opencv-python

四、人脸识别代码

import cv2  # opencv库


1. 读取图片
2. 加载人脸模型库
3. 图片进行灰度处理
4. 人脸检测
5. 标记人脸
6. 显示图片窗口
7. 窗口暂停
8. 销毁窗口
9. 保存图片


# 1. 读取图片
image = cv2.imread(/Users/test/opt/2.jpeg)
# 2. 导入人脸级联分类器引擎,.xml文件里包含训练出来的人脸特征
face_model = cv2.CascadeClassifier(cv2.data.haarcascades + haarcascade_frontalface_default.xml)
# 3. 图片进行灰度处理
gray = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
# 4. 用人脸级联分类器引擎进行人脸识别,返回的faces为人脸坐标列表,1.3是放大比例,5是重复识别次数
faces = face_model.detectMultiScale(gray)
# 5. 标记人脸
for (x, y, w, h) in faces:
    # 1.原始图片;2坐标点;3.矩形宽高 4.颜色值(RGB);5.线框
    cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)
# 6. 显示图片窗口
cv2.imshow(faces, image)
# 7. 监听键盘上任何按键,如有按键即退出并关闭窗口,并将图片保存为output.jpg
cv2.waitKey(0)
# 8. 销毁窗口
cv2.destroyAllWindows()
# 9. 保存图片
cv2.imwrite(/Users/test/opt/2-output.jpg, image)

五、识别结果

参考资料

经验分享 程序员 微信小程序 职场和发展