Ich habe eine ähnliche Situation wie bei ImportError: Das Laden der DLL ist fehlgeschlagen:% 1 ist keine gültige Win32-Anwendung , aber die Antwort dort funktioniert bei mir nicht.
Mein Python-Code sagt:
import cv2
Diese Zeile löst jedoch den im Titel dieser Frage gezeigten Fehler aus.
Ich habe OpenCV C:\lib\opencvauf diesem 64-Bit-Computer installiert . Ich verwende 64-Bit-Python.
Meine PYTHONPATH-Variable : PYTHONPATH=C:\lib\opencv\build\python\2.7. Dieser Ordner enthält cv2.pydund das ist alles.
Meine PATH-Variable: Path=%OPENCV_DIR%\bin;...Dieser Ordner enthält 39 DLL-Dateien wie z opencv_core246d.dll.
OPENCV_DIR hat diesen Wert : OPENCV_DIR=C:\lib\opencv\build\x64\vc11.
Die Lösung bei ImportError: Das Laden der DLL ist fehlgeschlagen:% 1 ist keine gültige Win32-Anwendung , die angibt, "den neuen opencv-Binärpfad ( C:\opencv\build\bin\Release) zur Windows PATH-Umgebungsvariablen hinzuzufügen ". Aber wie oben gezeigt, habe ich bereits den OpenCV-Binärordner ( C:\lib\opencv\build\x64\vc11\bin) in meinem PATH. Und meine OpenCV-Installation hat keine Release-Ordner (außer einem leeren unter build / java).
Irgendwelche Ideen, was falsch läuft? Kann ich Python anweisen, den Ladevorgang ausführlich zu verfolgen? Nach welchen DLLs sucht es genau?
Danke, Lars
BEARBEITEN:
Mir ist gerade aufgefallen, dass laut http://www.dependencywalker.com/ das cv2.pydIn C:\lib\opencv\build\python\2.732-Bit ist, während der Computer und der Python, den ich verwende, 64-Bit sind. Könnte das das Problem sein? Und wenn ja, wo finde ich eine 64-Bit-Version von cv2.pyd?
PYTHONPATHfrüher die Einträge enthielt, die die Installation der SimpleCV-Bibliothek dort hinterlassen hat. Obwohl ich SimpleCV bereits deinstalliert habe, PYTHONPATHwurde das nicht wiederhergestellt und zeigte auf einige Verzeichnisse mit widersprüchlichen Versionen von OpenCV, die von der SimpleCV-Installation hinterlassen wurden. Lösung: Löschen Sie die PYTHONPATH.