在Python中使用OpenCV加载视频

5

我正在拼命尝试在Python的OpenCV中加载一个视频文件(在OSX Lion上),使用以下代码:

> import cv
> capture = cv.CaptureFromFile("in.avi")

然而,我只收到了以下警告:
> WARNING: Couldn't read movie file in.avi

没有任何解释说明问题的原因(无法找到文件、错误的编解码器等)。就谷歌而言,我是在OpenCV中收到这个确切消息的唯一人。
我已经阅读了“编解码器兼容性文档”(在此处),并确保使用mencode将视频转换为正确的编解码器,但仍然无法正常工作。
您有什么想法,我做错了什么?

你尝试使用完整路径了吗?如果in.avi不在脚本的当前工作目录中,那么它现在的写法会有问题。 - platinummonkey
就是这样!在我的情况下,它需要是:/Users/lauge/Desktop/video.mov - laugejepsen
2个回答

10

答案:请看我的评论——路径错误。


2
同样的问题。我不明白为什么这个方法需要绝对路径。 - Kamyar Infinity
我认为这是与Mac OS版本有关的问题...相同的代码在我的Ubuntu机器上完美运行,但在我的Macbook上崩溃了。 - ssb
理想情况下,有人可以提交一个补丁并添加#import os ... path = os.path.abspath(os.path.expanduser(path)) - Eduard Feicho

0

或者,支持主文件夹,并使用绝对路径替换相对路径

#import os
...
path = os.path.abspath(os.path.expanduser(path))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接