## Warum erhalte ich beim Erkennen von Gesichtern in OpenCV den Fehler „error: (-215) !empty() in function discoverMultiScale'?

DDD
Freigeben: 2024-10-25 02:42:29
Original
904 Leute haben es durchsucht

## Why Am I Getting

Fehlerbehebung: „Fehler: (-215) !empty() in Funktion discoverMultiScale“ in der Gesichtserkennung von OpenCV

In OpenCV, wann Beim Versuch, eine Gesichtserkennung mit der Methode cv2.CascadeClassifier.detectMultiScale() durchzuführen, kommt es nicht selten vor, dass eine Fehlermeldung wie „Fehler: (-215) !empty() in Funktion discoverMultiScale“ angezeigt wird. Dieser Fehler weist typischerweise auf ein Problem mit der Art und Weise hin, wie die XML-Dateien des Gesichtskaskadenklassifizierers geladen oder referenziert werden.

Um dieses Problem zu beheben, muss unbedingt sichergestellt werden, dass der Pfad zu den XML-Dateien korrekt angegeben ist. Im bereitgestellten Originalcode:

face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml')
Nach dem Login kopieren

Der spezifische Speicherort der XML-Dateien im OpenCV-Verzeichnis ist nicht explizit definiert. Daher kann es für OpenCV schwierig sein, diese Dateien zu finden und zu laden.

Eine empfohlene Lösung für dieses Problem besteht darin, die Eigenschaft cv2.data.haarcascades zu verwenden, um die erforderlichen XML-Dateien automatisch zu finden und zu laden. Indem Sie den Code wie folgt aktualisieren:

face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml')
Nach dem Login kopieren

OpenCV ruft die XML-Dateien automatisch von ihrem Standardspeicherort im Haarcascades-Ordner ab. Dieser Ansatz stellt sicher, dass die richtigen Dateien geladen werden, ohne dass bestimmte Pfade fest codiert werden müssen, wodurch das Problem behoben und eine erfolgreiche Gesichtserkennung ermöglicht wird.

Das obige ist der detaillierte Inhalt von## Warum erhalte ich beim Erkennen von Gesichtern in OpenCV den Fehler „error: (-215) !empty() in function discoverMultiScale'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage