Heim > Artikel > Backend-Entwicklung > Warum kann ich mit OpenCV 2.4 unter Windows keine Frames aus Videodateien abrufen?
In diesem Artikel werden wir uns mit einem häufigen Problem befassen, auf das Benutzer von OpenCV 2.4 auf Windows-Systemen stoßen. Konkret werden wir uns mit dem Problem befassen, dass VideoCapture keine Frames aus Videodateien erfassen kann.
Bei Verwendung von OpenCV 2.4 unter Windows funktioniert der folgende Code wie erwartet:
<code class="python">cap = cv2.VideoCapture(0) print(cap.grab())</code>
Wenn Sie jedoch versuchen, Frames aus einer Videodatei mit dem folgenden Code aufzunehmen:
<code class="python">cap = cv2.VideoCapture(filename) print(cap.grab())</code>
Es wird durchweg False zurückgegeben, auch wenn der Pfad zur Datei korrekt und gültig ist. Dieses Problem wurde sowohl auf Windows XP- als auch auf Windows 7-Rechnern beobachtet, während unter Linux (Ubuntu) derselbe Code einwandfrei funktioniert.
Um dieses Problem zu beheben, müssen Sie dies sicherstellen Die notwendigen Abhängigkeiten für die Videodekodierung stehen OpenCV unter Windows zur Verfügung. Dies kann erreicht werden, indem Sie das folgende Verzeichnis zu Ihrer Windows-PATH-Umgebungsvariablen hinzufügen:
C:\OpenCVrdparty\ffmpeg\
Alternativ können Sie die Datei opencv_ffmpeg.dll manuell aus dem angegebenen Verzeichnis an einen dieser Speicherorte kopieren:
Darüber hinaus kann es je nach Bedarf erforderlich sein, die Datei opencv_ffmpeg.dll umzubenennen OpenCV-Version und Betriebssystem (64-Bit oder 32-Bit). Hier ist eine Richtlinie zum Umbenennen:
Für OpenCV-Version X.Y.Z
Für 64-Bit-OpenCV-Version X.Y.Z
Indem Sie diese Schritte befolgen, können Sie OpenCV 2.4 aktivieren, um Frames aus Videodateien auf Windows-Systemen erfolgreich zu erfassen und zu verarbeiten.
Das obige ist der detaillierte Inhalt vonWarum kann ich mit OpenCV 2.4 unter Windows keine Frames aus Videodateien abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!