📅  最后修改于: 2023-12-03 14:52:37.933000             🧑  作者: Mango
人脸识别是一种广泛应用于计算机视觉领域的技术,Python 提供了许多强大的库来实现人脸识别。本文将介绍如何在 Windows 上使用 Python 安装人脸识别。
首先,您需要在 Windows 上安装 Python。您可以从 Python 官方网站 下载最新的 Python 版本。下载完成后,运行安装程序并按照指示进行安装。
在 Python 中,有几个常用的人脸识别库可以选择,如 OpenCV、dlib 和 face_recognition 等。下面将分别介绍这些库的安装方法。
OpenCV 是一个开源的计算机视觉库,提供了丰富的图像处理和人脸识别功能。
要安装 OpenCV,可以使用以下命令:
pip install opencv-python
dlib 是一个强大的 C++ 机器学习和计算机视觉库,可以用于人脸检测和人脸识别等任务。
要安装 dlib,在 Windows 上可能需要进行一些额外的设置。首先,确保您已经正确安装了 CMake,并将其添加到系统的 PATH 环境变量中。然后,使用以下命令安装 dlib:
pip install dlib
face_recognition 是一个基于 dlib 库的人脸识别库,它提供了一种更简单的方式来实现人脸检测和识别。
要安装 face_recognition,可以使用以下命令:
pip install face-recognition
以下是一个示例代码,演示如何在 Windows 上使用 Python 实现简单的人脸识别:
import cv2
import face_recognition
# 加载样本人脸图像和对应的姓名
known_face_encodings = []
known_face_names = []
# 添加样本人脸图像和姓名
# known_face_encodings.append(face_encoding)
# known_face_names.append("Name")
# 加载视频流
video_capture = cv2.VideoCapture(0)
while True:
# 读取视频帧
ret, frame = video_capture.read()
# 转换为 RGB 格式
rgb_frame = frame[:, :, ::-1]
# 识别人脸
face_locations = face_recognition.face_locations(rgb_frame)
face_encodings = face_recognition.face_encodings(rgb_frame, face_locations)
# 遍历每个人脸
for face_encoding in face_encodings:
# 比对人脸
matches = face_recognition.compare_faces(known_face_encodings, face_encoding)
name = "Unknown"
# 判断是否匹配已知人脸
if True in matches:
first_match_index = matches.index(True)
name = known_face_names[first_match_index]
# 在图像中标注人脸和姓名
top, right, bottom, left = face_locations[0]
cv2.rectangle(frame, (left, top), (right, bottom), (0, 0, 255), 2)
cv2.putText(frame, name, (left + 6, bottom - 6), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 1)
# 显示结果
cv2.imshow('Video', frame)
# 按下 'q' 键退出
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放资源
video_capture.release()
cv2.destroyAllWindows()
以上代码从视频流中读取每一帧图像,并使用人脸识别库识别人脸。在识别到人脸后,根据已知人脸进行比对,并在图像中标注人脸和对应的姓名。
通过安装适当的库,并使用示例代码,您可以在 Windows 上实现人脸识别。人脸识别在许多应用中都有广泛的用途,如人脸解锁、人脸识别门禁系统等。希望本文对您有所帮助!