この記事では、Windows システム上の OpenCV 2.4 のユーザーが遭遇する一般的な問題について説明します。具体的には、VideoCapture がビデオ ファイルからフレームをキャプチャできない問題について詳しく説明します。
Windows で OpenCV 2.4 を使用する場合、次のコードは期待どおりに動作します。
<code class="python">cap = cv2.VideoCapture(0) print(cap.grab())</code>
ただし、次のコードを使用してビデオ ファイルからフレームをキャプチャしようとすると、
<code class="python">cap = cv2.VideoCapture(filename) print(cap.grab())</code>
ファイルへのパスが正しく有効であっても、一貫して False が返されます。この問題は Windows XP と Windows 7 の両方のマシンで確認されていますが、Linux (Ubuntu) では同じコードが問題なく動作します。
この問題を解決するには、次のことを確認する必要があります。ビデオ デコードに必要な依存関係は、Windows 上の OpenCV で利用できます。これを行うには、次のディレクトリを Windows PATH 環境変数に追加します:
C:\OpenCVrdparty\ffmpeg\
または、指定されたディレクトリから次の場所のいずれかに opencv_ffmpeg.dll ファイルを手動でコピーできます:
さらに、環境に応じて、opencv_ffmpeg.dll ファイルの名前を変更する必要がある場合があります。 OpenCV のバージョンとオペレーティング システム (64 ビットまたは 32 ビット)。名前変更のガイドラインは次のとおりです。
OpenCV バージョン X.Y.Z の場合
64 ビット OpenCV バージョン X.Y.Z の場合
次の手順に従うことで、OpenCV 2.4 が Windows システム上のビデオ ファイルからフレームを正常にキャプチャして処理できるようになります。
以上がWindows で OpenCV 2.4 を使用してビデオ ファイルからフレームを取得できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。