Anaconda中OpenCV视频捕获失败

4 投票
1 回答
1467 浏览
提问于 2025-04-18 07:34

以下内容是在Linux上使用Anaconda 1.9时出现的问题:

import cv2
import sys
cap = cv2.VideoCapture(sys.argv[1])

ret, frame = cap.read()
if not ret:
    print "capture failed"

我在Ubuntu 12.04LTS和Debian Wheezy上测试了Anaconda-1.9.2-Linux-x86_64。相同的代码和输入文件在Windows 7上的Anaconda中可以正常工作,同时在Ubuntu上使用python-opencv 2.3.1-7包也能运行。输入文件是H.264格式的视频,封装在MP4文件中。Anaconda是全局安装在/opt/anaconda目录下,并且/opt/anaconda/bin已经加入了系统路径。

顺便提一下,我在Linux上没有找到Anaconda的cv2.VideoCapture能在任何输入文件上正常工作的例子。在发现这个问题后,我又测试了其他几个文件,结果都是一样的。写入文件也失败了。

有没有什么技巧可以让Anaconda的cv2在Linux上完全正常工作呢?

更新:在Anaconda的最新版本中,这个问题依然存在,比如在Ubuntu 14.04LTS上使用Anaconda-2.2.0-Linux-x86_64时。

1 个回答

0

从这个 Conda 源安装 OpenCV:
conda install -c loopbio ffmpeg-feature gtk2-feature opencv

撰写回答