尝试使用opencv harcascade文件查找人脸检测,但x,y,w,h值为空[关闭]
Posted
技术标签:
【中文标题】尝试使用opencv harcascade文件查找人脸检测,但x,y,w,h值为空[关闭]【英文标题】:Try to find face detection using opencv harcascade file but the x,y,w,h values are empty [closed] 【发布时间】:2021-09-26 20:48:03 【问题描述】:尝试使用opencv harcascade文件查找人脸检测,但x、y、w、h值为空
import cv2 ***import packages***
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') **import
haarcascade**
image=cv2.imread("messi.jpg") **read image**
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) **convert gray image**
faces = face_cascade.detectMultiScale(gray, 1.3, 5)
for (x,y,w,h) in faces:
cv2.rectangle(image,(x,y),(x+w,y+h),(255,255,0),2)
cv2.imshow("crop/region of interset image",image)
cv2.waitKey(0)
cv2.destroyAllWindows()
【问题讨论】:
【参考方案1】:这通常不应该发生。我还用python和opencv做了一个人脸识别haar级联分类器。您确定训练数据中没有错误吗?例如,阶段被删除或阶段 10 存在并且阶段 12 存在但阶段 11 不存在。我认为这是发生这种情况的唯一方法。如果这是问题所在,请删除您的训练数据并重新训练。我的猜测是你只是重新训练你的模型。记住:在再次开始训练模型之前,删除所有内容,包括阶段、模型训练数据。
【讨论】:
【参考方案2】:是不是在图片中根本没有检测到人脸(因此,循环甚至没有运行)? 我建议先打印人脸的长度,以验证这一点。
【讨论】:
当我打印值 x,y,w,h 时它没有值但是当改变检测 MultiScale [1.3 到 1.1,5 到 4] 的值时它打印值以上是关于尝试使用opencv harcascade文件查找人脸检测,但x,y,w,h值为空[关闭]的主要内容,如果未能解决你的问题,请参考以下文章