随着科技的不断进步和发展,近几年,人脸识别已经成为日常生活中非常常见的一种应用,例如公司员工上下班打卡,支付宝刷脸支付等等。
Python作为数据分析最热门的语言之一,实现人脸识别是很容易的,因为可以直接调用opencv-python库,使用库中封装好的算法来进行实现。
环境配置
如果之前未安装过numpy和opencv-python库,需要首先进行安装。如果已经安装过可跳过此步骤。
pip install numpy
pip install opencv-python
人脸识别(初步)
import numpy as np
import cv2
# 使用正脸检测的级联分类器
face_detect = cv2.CascadeClassifier('./haarcascade_frontalface_alt.xml')
# 处理的图片
img = cv2.imread('./Hinatazaka46.jpg')
# 检测到的所有人脸位置
face_zones = face_detector.detectMultiScale(img)
# 在检测到的人脸位置加方框等图形进行显示
# x,y代表左上角坐标,w为宽度, h为高度
for x,y,w,h in face_zones:
# 1.使用方框进行显示,框的颜色为红色,pt1为左上角坐标,pt2为右下角坐标
cv2.rectangle(img,pt1 = (x,y),pt2 = (x + w,y + h),color = [0, 0,255],thickness = 2)
# 2.使用圆