人脸检测
人脸检测是计算机视觉的令人着迷的应用之一,它使其更加逼真。 OpenCV有一个内置的工具来执行人脸检测。 我们将使用Haar级联分类器进行人脸检测。
Haar级联数据我们需要数据来使用Haar级联分类器。 可以在我们的OpenCV包中找到这些数据。 安装OpenCv后,有一个文件夹名称haarcascades。 将有不同应用程序的.xml文件。 现在,将它们全部复制以供不同的使用,然后粘贴到当前项目下的新文件夹中。
示例
以下是使用Haar级联检测下图中显示的Amitabh Bachan的面部的Python代码 -
如下所示导入OpenCV包 -
import cv2
import numpy as np
Python
现在,使用HaarCascadeClassifier来检测脸部 -
face_detection=
cv2.CascadeClassifier('D:/ProgramData/cascadeclassifier/
haarcascade_frontalface_default.xml')
Python
使用imread()函数读取一个指定的图像,
img = cv2.imread('AB.jpg')
Python
将其转换为灰度,因为它会接受灰色图像 -
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
Python
接下来,使用face_detection.detectMultiScale,执行实际的人脸检测
faces = face_detection.detectMultiScale(gray, 1.3, 5)
Python
围绕整个脸部绘制一个矩形 -
for (x,y,w,h) in faces:
img = cv2.rectangle(img,(x,y),(x+w, y+h),(255,0,0),3)
cv2.imwrite('Face_AB.jpg',img)
Python
如图所示,这个Python程序将创建一个名为Face_AB.jpg 的图像,它包含人脸检测 -
//更多请阅读:https://www.yiibai.com/ai_with_p ... omputer_vision.html
|