python3.12.7版本人脸识别代码
时间: 2024-12-19 14:18:14 浏览: 20
在Python 3.12.7版本中进行人脸识别通常会涉及到机器学习库如OpenCV(cv2)和深度学习框架,比如TensorFlow或PyTorch。这里是一个简单的面部识别示例,使用了dlib库,它结合了OpenCV的功能并提供了一个预训练的人脸检测模型:
```python
# 导入所需库
import cv2
from imutils import face_utils
import dlib
# 加载预训练的人脸检测器
detector = dlib.get_frontal_face_detector()
predictor = dlib.shape_predictor("shape_predictor_68_face_landmarks.dat") # 需要下载dlib人脸特征点模型
# 读取图像
image = cv2.imread('test_image.jpg')
# 转为灰度图像
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 检测人脸
faces = detector(gray)
for face in faces:
# 获取人脸坐标
landmarks = predictor(gray, face)
(x, y, w, h) = face_utils.rect_to_bb(face)
# 绘制矩形框和关键点
cv2.rectangle(image, (x, y), (x+w, y+h), (0, 255, 0), 2)
for (i, j) in enumerate(landmarks.parts()):
cv2.circle(image, (j.x, j.y), 2, (0, 0, 255), -1)
print(f"Point {i}: ({j.x}, {j.y})")
# 显示结果
cv2.imshow("Image with Faces", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
注意,这个例子需要安装`dlib`和`imutils`库,以及对应的预训练模型(例如`shape_predictor_68_face_landmarks.dat`)。对于更复杂的实时人脸识别,可能会使用深度学习模型,比如MTCNN、FaceNet或Dlib的face_recognition模块。
阅读全文