python+opencv 实现人脸识别及追踪

本文介绍了如何通过Python和OpenCV库实现图片人脸识别,包括加载特征文件、检测人脸并绘制矩形,以及在视频中进行人脸识别并进行追踪,包括使用meanShift算法进行目标追踪。作者也分享了解决相机第一帧未检测到人脸问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过python+opencv实现图片人脸识别,视频人脸识别及追踪。

壹:图片人脸识别

import cv2

# 加载特征文件
face_detector = cv2.CascadeClassifier('E:/Python/opencv-3.4.1/data/haarcascades/haarcascade_frontalface_default.xml')
# 读取人脸图片
face_im = cv2.imread('../img/work/face02.png')
# print(face_im.shape)  # 这个print可以检验读入图片是否正确
# 灰度转换
grey = cv2.cvtColor(face_im, cv2.COLOR_BGR2GRAY)
# 检测人脸
faces = face_detector.detectMultiScale(grey)
# 遍历人脸
for x, y, w, h in faces:
    print(x,y,w,h)
	# 在人脸区域绘制矩形
    cv2.rectangle(face_im, (x, y), (x+w, y+h), (0, 255, 0), 5)
    cv2.imshow('face', cv2.resize(face_im, (face_im.shape[1]//2, face_im.shape[0]//2)))
    cv2.waitKey(0)

cv2.destroyAllWindows()

贰:视频人脸识别及追踪

获取相机捕捉到的第一帧,识别到人脸之后打开相机进行人脸追踪。

"""
人脸识别及追踪
"""
import cv2

# 1.创建相机
cap = cv2.VideoCapture(0)
# 加载特征文件
face_detector = cv2.CascadeClassifier('E:/Pyt
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值