Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa Saya Tidak Boleh Dapatkan Bingkai daripada Fail Video Menggunakan OpenCV 2.4 pada Windows?

Mengapa Saya Tidak Boleh Dapatkan Bingkai daripada Fail Video Menggunakan OpenCV 2.4 pada Windows?

Barbara Streisand
Barbara Streisandasal
2024-11-01 03:07:02297semak imbas

Why Can't I Retrieve Frames from Video Files Using OpenCV 2.4 on Windows?

VideoCapture Tidak Mengambil Bingkai daripada Fail Video dalam OpenCV 2.4 pada Windows

Dalam artikel ini, kami akan menangani isu biasa yang dihadapi oleh pengguna OpenCV 2.4 pada sistem Windows. Khususnya, kami akan menyelidiki masalah VideoCapture tidak dapat menangkap bingkai daripada fail video.

Penerangan Masalah

Apabila menggunakan OpenCV 2.4 pada Windows, kod berikut berfungsi seperti yang diharapkan:

<code class="python">cap = cv2.VideoCapture(0)
print(cap.grab())</code>

Walau bagaimanapun, apabila cuba menangkap bingkai daripada fail video menggunakan kod berikut:

<code class="python">cap = cv2.VideoCapture(filename)
print(cap.grab())</code>

Ia secara konsisten mengembalikan Palsu, walaupun laluan ke fail itu betul dan sah. Isu ini telah diperhatikan pada kedua-dua mesin Windows XP dan Windows 7, manakala pada Linux (Ubuntu), kod yang sama berfungsi dengan sempurna.

Penyelesaian

Untuk menyelesaikan isu ini, anda perlu memastikan bahawa kebergantungan yang diperlukan untuk penyahkodan video tersedia untuk OpenCV pada Windows. Ini boleh dicapai dengan menambahkan direktori berikut pada pembolehubah persekitaran Windows PATH anda:

C:\OpenCVrdparty\ffmpeg\

Sebagai alternatif, anda boleh menyalin fail opencv_ffmpeg.dll secara manual daripada direktori yang ditentukan ke salah satu lokasi ini:

  • C:Python27
  • Mana-mana direktori yang disertakan dalam pembolehubah persekitaran PATH

Selain itu, mungkin perlu menamakan semula fail opencv_ffmpeg.dll bergantung pada anda Versi OpenCV dan sistem pengendalian (64-bit atau 32-bit). Berikut ialah garis panduan untuk menamakan semula:

Untuk OpenCV versi X.Y.Z

  • opencv_ffmpeg.dll ==> opencv_ffmpegXYZ.dll

Untuk versi OpenCV 64-bit X.Y.Z

  • opencv_ffmpeg.dll ==> opencv_ffmpegXYZ_64.dll

Dengan mengikuti langkah ini, anda boleh mendayakan OpenCV 2.4 untuk berjaya menangkap dan memproses bingkai daripada fail video pada sistem Windows.

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Dapatkan Bingkai daripada Fail Video Menggunakan OpenCV 2.4 pada Windows?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn