设备与环境
raspberry 3b
winscp
vnc
检测人脸
级联分类器 cascadeclassifier
级联分类器,即使用类 Haar 特征工作的级联增强分类器,是集成学习的一种特殊情况,称为 boost。它通常依赖于 Adaboost 分类器(以及其他模型,如 Real Adaboost、Gentle Adaboost 或 Logitboost)。
级联分类器在包含检测目标的几百个样本图像以及不包含检测目标的其他图像上进行训练。
opencv中有训练好的人脸文件。
代码
import numpy as np
import cv2
# Create a memory stream so photos doesn't need to be saved in a file
image = cv2.imread('lena.bmp',1)
cv2.imshow("image", image)
#Load a cascade file for detecting faces
face_cascade = cv2.CascadeClassifier('faces.xml')
#Convert to grayscale
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow("image",gray)
#Look for faces in the image using the loaded cascade file
faces = face_cascade.detectMultiScale(gray, 1.1, 5)
print("Found "+str(len(faces))+" faces")
#Draw a rectangle around every founded face_cascade
for (x,y,w,h) in faces:
cv2.rectangle(image, (x,y),(x+w,y+h),(255,0,0),2)
# Save the result image
cv2.imwrite('result.jpg', image)
cv2.imshow("image result", image)
cv2.waitKey()
来源:CSDN
作者:yan_tai123
链接:https://blog.csdn.net/sduvec/article/details/103650817