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 有问题。

我尝试了一些方法:

  1. 在我的 environment/PATH 中安装 ffmpeg 二进制文件(单独工作正常 但显然 OpenCV 无法调用它,因为它会查找特定的 dll)。
  2. 移至 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