python+opencv实现人脸识别并计数的完整代码
时间: 2023-08-08 12:08:15 浏览: 168
以下是一个使用 Python 和 OpenCV 进行人脸识别和计数的完整代码示例:
```python
import cv2
import os
# Load the Haar cascade classifier for face detection
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# Define the path to the image folder
img_folder = 'path/to/image/folder'
# Count the number of faces in each image
for img_file in os.listdir(img_folder):
# Load the image
img_path = os.path.join(img_folder, img_file)
img = cv2.imread(img_path)
# Convert the image to grayscale for face detection
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Detect faces in the image
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.3, minNeighbors=5)
# Count the number of faces found
face_count = len(faces)
# Print the image filename and face count
print('Image: {}, face count: {}'.format(img_file, face_count))
```
在上面的代码中,我们首先加载了用于人脸检测的 Haar 级联分类器。然后,我们遍历指定的图像文件夹中的所有图像,并使用分类器检测每张图像中的人脸。最后,我们计算每张图像中检测到的人脸数量,并将其输出到控制台。
请注意,为了使此代码成功运行,您需要将代码中的 `path/to/image/folder` 替换为实际的图像文件夹路径,并将 `haarcascade_frontalface_default.xml` 文件放在相同的文件夹中。此外,您可能需要调整 `scaleFactor` 和 `minNeighbors` 参数以获得最佳的人脸检测结果。
阅读全文