Я прочитал почти все вопросы по этому вопросу, но я не решил его. Я установил OpenCV в виртуальной среде много раз, пытаясь решить эту проблему. Проблема в том, что: «cv2.videoCapture () всегда возвращает false».
Я построил OpenCV с , что это: «cv2.videoCapture () всегда возвращает false». option и он завершится успешно, и результат о том, что около FFmpeg, казалось, был в порядке.
Кроме того, когда я запускаю команду make -j8, она закончилась без проблем. Поэтому я подумал, что все будет в порядке. Когда я попытался проверить поддержку FFmpeg с помощью этой команды: python -c "import cv2; print(cv2.getBuildInformation())" | grep -i FFmpeg, это не дало мне НИКАКОГО результата.
Я установил OpenCV со следующими степами. Я также пытался найти, поддерживает ли FFMPEG кодек для декодирования файлов с кодировкой AVC. ffmpeg -codecs | grep -i avc, а выход:
DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 часть 10 (декодеры: h264 h264_cuvid) (кодеры: h264_nvenc nvenc nvenc_h264) D.A.L. avc On2 Audio для видеокодека (декодеры: on2avc)Я не понимал, почему FFmpeg показалось «ДА», когда я создаю OpenCV в то время, дал результат «НЕТ» с cv2.getBuildInformation () .
(cv_env)➜ cv_env pkg-config --modversion opencv
3.2.0
(cv_env)➜ cv_env python
Python 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.3.0'
(cv_env)➜ cv_env python -c "import cv2; print(cv2.getBuildInformation())" | grep -i ffmpeg
FFMPEG: NO
(cv_env)➜ cv_env python
Python 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__file__
'/opt/cv_env/local/lib/python2.7/site-packages/cv2/cv2.so'
(cv_env)➜ cv_env python3
Python 3.4.3 (default, Nov 28 2017, 16:41:13)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.3.0'
>>> cv2.__file__
'/usr/local/lib/python3.4/dist-packages/cv2/cv2.cpython-34m.so'
Кроме того, я не помню, какие шаги я применил (для python2 или python3). По этой причине я добавил версии cv2 и пути. Я проверил cv2. [D5] make -j8 после импорта cv2, и кажется, что «3.3.0» также является результатом этого процесса. Я клонировал OpenCV из github, как эти шаги, которые я дал url на мой вопрос. После выполнения этих шагов версия должна быть 3.3.1, но все равно выглядит 3.3.0. Если я импортировал предварительно созданный opencv, как я могу его исправить? В моем виртуальном env есть только один каталог OpenCV, и я думаю, что это последний, который я установил.
Похоже, я запускаю Python2, у которого установлена другая версия OpenCV, а не 3.3.1. Как это исправить?