codecamp

AI人工智能 人脸检测

人脸检测是计算机视觉中最引人入胜的应用之一,它使计算机视觉更加真实和具有未来感。OpenCV 具有执行人脸检测的内置功能。我们将使用Haar级联分类器进行人脸检测。

Haar 级联数据

我们需要数据才能使用 Haar 级联分类器。您可以在 OpenCV 包中找到这些数据。安装 OpenCV 后,您可以看到名为haarcascades的文件夹。其中会有用于不同应用的.xml 文件。现在,复制所有这些文件,将它们粘贴到当前项目下的一个新文件夹中。

示例 以下是使用 Haar 级联检测以下图像中阿米特巴・巴强(Amitabh Bachan)人脸的 Python 代码:

导入OpenCV包,如下所示:

import cv2
import numpy as np

现在,使用HaarCascadeClassifier检测人脸:

face_detection=
cv2.CascadeClassifier('D:/ProgramData/cascadeclassifier/
haarcascade_frontalface_default.xml')

现在,要读取特定图像,请使用 *\imread ()\* 函数:

img = cv2.imread('AB.jpg')

现在,将其转换为灰度,因为它接受灰度图像:

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

现在,使用face_detection.detectMultiScale执行实际的人脸检测:

faces = face_detection.detectMultiScale(gray, 1.3, 5)

现在,在整个人脸周围绘制一个矩形:

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 程序将创建一个名为Face_AB.jpg的图像,其中包含人脸检测结果,如下所示:

AI人工智能 边缘检测
AI人工智能 眼睛检测
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

AI人工智能监督学习(回归)

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }