我正在尝试创建人脸检测程序。当我执行以下代码时:
import numpy as np
import cv2
face_cascade = cv2.CascadeClassifier('../../Practica - Proyectos/Practica -
OpenCV/cascades/data/haarcascade_frontalface_alt2.xml')
captura = cv2.VideoCapture(0)
while(True):
ret, frame = captura.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.5, minNeighbors=5)
for (x, y, w, h) in faces:
print(x,y,w,h)
cv2.imshow('frame', frame)
if cv2.waitKey(20) & 0xFF == ord('q'):
break
captura.release()
cv2.destroyAllWindows()
发生以下错误:
回溯(最近一次通话最近一次):文件“ c:\ xampp \ htdocs \ Practica-Proyectos \ Practica-OpenCV \ facialRec.py”,第20行,位于头像= face_cascade.detectMultiScale(gray,scaleFactor = 1.5,minNeighbors = 5)cv2.error:OpenCV(3.4.1)C:\ projects \ opencv-python \ opencv \ modules \ objdetect \ src \ cascadedetect.cpp:1698:error:(-215)!empty()in function cv: :CascadeClassifier :: detectMultiScale
我知道路由存在问题,但是我无法猜测为什么它不执行。该代码应该能够执行并读取我脸上的不同点。
非常感谢您提前抽出时间。