opencv 下 cascade classifier 实现人脸识别的例程 csdn
时间: 2023-09-10 09:02:54 浏览: 110
OpenCV是一个开源的计算机视觉库,其中包含了人脸识别的功能。Cascade Classifier是其中一种用于人脸识别的算法。
下面是一个CSDN上的人脸识别的例程,详细实现了使用Cascade Classifier进行人脸识别的步骤。
首先,我们需要导入OpenCV库,包括core、highgui和imgproc。
```python
import cv2
# 加载cascade classifier训练好的分类器
face_cascade = cv2.CascadeClassifier('path/to/haarcascade_frontalface_default.xml')
# 利用摄像头捕捉实时视频
cap = cv2.VideoCapture(0)
while True:
# 读取视频帧
ret, frame = cap.read()
# 将视频帧转换为灰度图像
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# 运用cascade classifier进行人脸识别
faces = face_cascade.detectMultiScale(gray, 1.1, 4)
# 在视频帧中绘制矩形框标记出人脸
for (x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (255, 0, 0), 2)
# 显示处理后的视频帧
cv2.imshow('Face Detection', frame)
# 按下q键退出循环
if cv2.waitKey(1) == ord('q'):
break
# 释放资源
cap.release()
cv2.destroyAllWindows()
```
以上是一个简单的例程,实现了使用Cascade Classifier进行人脸识别的功能。步骤包括加载训练好的分类器、从摄像头捕捉实时视频、将视频帧转换为灰度图像、利用Cascade Classifier进行人脸识别、在视频帧中绘制矩形框标记出人脸,并在窗口中显示处理后的视频帧。按下q键可以退出循环,并释放资源。
希望能对你有所帮助!
阅读全文