Heim > Artikel > Backend-Entwicklung > Warum erhalte ich den Fehler „error: (-215) !empty() in function discoverMultiScale', wenn ich den CascadeClassifier von OpenCV verwende?
Behebung des Problems „Fehler: (-215) !empty() in der Funktion discoverMultiScale“
Der Fehler „Fehler: (-215 ) !empty() in der Funktion discoverMultiScale“, das während der Gesichtserkennung mit dem CascadeClassifier von OpenCV auftritt, weist typischerweise auf ein Problem beim Laden der vorab trainierten XML-Dateien hin, die Gesichts- und Augenmuster definieren.
Um dieses Problem zu beheben, stellen Sie sicher, dass der CascadeClassifier wird durch Angabe des entsprechenden Pfads zur XML-Datei korrekt initialisiert. Anstatt den Pfad fest zu codieren, wird empfohlen, die integrierte Eigenschaft cv2.data.haarcascades zu verwenden, die den Standardpfad zu diesen XML-Dateien enthält.
Lösung:
Ändern Sie den Code, um die Eigenschaft cv2.data.haarcascades zu verwenden:
<code class="python">face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml') eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml')</code>
Diese Änderung stellt sicher, dass der CascadeClassifier mit den richtigen XML-Dateien geladen wird, ohne dass der genaue Pfad manuell angegeben werden muss. Durch die Verwendung der integrierten Eigenschaft wird der Code portabler und eliminiert die Möglichkeit pfadbezogener Fehler.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich den Fehler „error: (-215) !empty() in function discoverMultiScale', wenn ich den CascadeClassifier von OpenCV verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!