OpenCV-Python 安装(缺少 ffmpeg)- Windows
OpenCV-Python installation (missing ffmpeg) - Windows
我设法使用 conda 和 Python 3.5 安装了 OpenCV 3.1,一切似乎都运行良好。
但是,当尝试通过 ffmpeg 导入视频文件时,我得到了这个:
import numpy as np
import cv2
cap = cv2.VideoCapture('data\vtest.avi')
cap.read()
#(False, None)
当使用静止图像或我的笔记本电脑网络摄像头时它可以工作(注意 VideCapture returns None
)。显然,ffmpeg 有问题。
我尝试了一些方法:
- 在我的 environment/PATH 中安装 ffmpeg 二进制文件(单独工作正常
但显然 OpenCV 无法调用它,因为它会查找特定的 dll)。
移至 bin 文件夹(也在我的路径中)
来自编译版本的dll
来源:
opencv_ffmpeg310_64.dll
opencv_ffmpeg310.dll
这两个选项均无效。有什么想法吗?
conda版本的OpenCV没有用ffmpeg编译。我也一直在无休止地与这个问题作斗争。 pip 版本也不是用 ffmpeg 编译的。我最好的建议是自己用 ffmpeg 编译 OpenCV,这是我找到的唯一无痛且稳定的方法。
最新的conda-forge build contains FFMPEG now. Having miniconda or Anaconda在你的电脑里,所有的东西都会在cmd或终端里运行安装:
conda install -c conda-forge opencv ffmpeg
或者,也可以使用 menpo's channel 食谱:
conda install -c menpo opencv3 ffmpeg
我设法使用 conda 和 Python 3.5 安装了 OpenCV 3.1,一切似乎都运行良好。
但是,当尝试通过 ffmpeg 导入视频文件时,我得到了这个:
import numpy as np
import cv2
cap = cv2.VideoCapture('data\vtest.avi')
cap.read()
#(False, None)
当使用静止图像或我的笔记本电脑网络摄像头时它可以工作(注意 VideCapture returns None
)。显然,ffmpeg 有问题。
我尝试了一些方法:
- 在我的 environment/PATH 中安装 ffmpeg 二进制文件(单独工作正常 但显然 OpenCV 无法调用它,因为它会查找特定的 dll)。
移至 bin 文件夹(也在我的路径中) 来自编译版本的dll 来源:
opencv_ffmpeg310_64.dll
opencv_ffmpeg310.dll
这两个选项均无效。有什么想法吗?
conda版本的OpenCV没有用ffmpeg编译。我也一直在无休止地与这个问题作斗争。 pip 版本也不是用 ffmpeg 编译的。我最好的建议是自己用 ffmpeg 编译 OpenCV,这是我找到的唯一无痛且稳定的方法。
最新的conda-forge build contains FFMPEG now. Having miniconda or Anaconda在你的电脑里,所有的东西都会在cmd或终端里运行安装:
conda install -c conda-forge opencv ffmpeg
或者,也可以使用 menpo's channel 食谱:
conda install -c menpo opencv3 ffmpeg