web-dev-qa-db-fra.com

OPENCV 4.0.0 SystemError: <Classe 'CV2.CASCADECLASFLASSIFIER'> Rendait un résultat avec un ensemble d'erreur

Bonjour, j'essaie de créer un programme de reconnaissance faciale, mais j'ai une erreur particulière: voici mon code:

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
face_cascade = cv2.CascadeClassifier("lbpcascade_frontalface.xml")
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.2, minNeighbors=5);

et cette erreur est la sortie

SystemError: <class 'cv2.CascadeClassifier'> returned a result with an error set

J'ai "lbpcascade_frontalface.xml" dans le répertoire de travail afin que cela ne soit pas un problème

si cela aide quand j'entre

cv2.__version__

Je reçois

'4.0.0'
7
Tyler Strouth

J'avais la même erreur quand j'utilisais hogcascade_pedestrians.xml Détecter les piétons d'une vidéo locale et je lisais le hogcascade_pedestrians.xml comme suit:

pedestrainsClassifier = cv2.CascadeClassifier("hogcascade_pedestrians.xml")

dont vous devriez le lire comme suit :

pedestrainsClassifier = cv2.CascadeClassifier(f"{cv2.data.haarcascades}hogcascade_pedestrians.xml")

Alternativement, vous pouvez le faire comme suit :

pedestrainsClassifier = cv2.CascadeClassifier(cv2.data.haarcascades +"hogcascade_pedestrians.xml")

bonne chance

0
Crispen Gari

J'ai rencontré le même problème de manière peu différente différente. J'utilisais Jupiter Notebook pour exécuter du code ici

J'ai copié le fichier XML de ici et crée un fichier XML dans le répertoire Jupiter actuel, lors du chargement de ces fichiers en dessous:

classifier = CascadeClassifier('haarcascade_frontalface_default.xml')

Sa erreur m'a retourné:

SystemError: <class 'cv2.CascadeClassifier'> returned a result with an error set

Ainsi, j'ai essayé d'autres choses, supprimé ce fichier et téléchargé le fichier réel en tant que format XML dans le répertoire actuel, qui résolvait mon problème.

0
ラビナンダン