!pip install opencv-python
import cv2
# 加载预训练的人脸检测模型
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
# 加载图像并转换为灰度
img = cv2.imread('faces2.png')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 检测人脸
faces = face_cascade.detectMultiScale(gray, 1.1, 4)
# 绘制人脸矩形框
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
# 显示图像
cv2.imshow('img', img)
cv2.waitKey()
这段代码首先安装了 opencv-python 库,然后导入了 cv2 模块。接下来,它加载了预训练的人脸检测模型,并加载了名为 faces2.png 的图像,并将其转换为灰度图像。然后,它使用 detectMultiScale 方法检测图像中的人脸,并使用 rectangle 方法在检测到的人脸周围绘制矩形框。最后,它使用 imshow 方法显示图像,并使用 waitKey 方法等待用户按下按键。
请将 ‘faces2.png’ 替换为您要检测人脸的图像文件的名称。 如果您没有名为 faces2.png 的图像,请在代码中将其替换为您拥有的图像文件名。
执行代码后,将会弹出一个窗口显示带有检测到的人脸的图像。
效果:
上面画线部分都漏检了。