2012-02-22 61 views
5

我拼命地嘗試使用下面的代碼加載OpenCV的Python中的視頻文件(在OSX獅子) :加載在OpenCV的視頻在Python

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

但是,我只得到以下警告:

> WARNING: Couldn't read movie file in.avi 

沒有解釋問題是什麼(它找不到文件,錯誤的編解碼器等)。就Google而言,我是宇宙中唯一一個在OpenCV中獲得這個準確信息的人。

我讀過'編解碼器兼容性文檔'here,並確保使用mencode將視頻轉換爲正確的編解碼器,但它仍然無效。

任何想法,我做錯了什麼?

+0

取代絕對的人相對路徑有你嘗試使用完整的路徑?如果in.avi不在腳本的當前工作目錄中,那麼寫入方式將會是一個問題。 – platinummonkey 2012-02-22 14:23:37

+0

就是這樣!在我的情況下,它需要:/Users/lauge/Desktop/video.mov – laugejepsen 2012-02-22 14:36:00

+0

嗚!發佈爲正式SO! – platinummonkey 2012-02-22 14:37:54

回答

10

回答:請參閱我的評論 - 錯誤的路徑。

+2

同樣在這裏。我不明白爲什麼這種方法需要絕對路徑。 – 2012-05-18 19:51:41

+0

我認爲這是與Mac OS版本的一個問題...相同的代碼完全運行我的Ubuntu的機器,但死機對我的MacBook – subzero 2013-01-09 11:39:39

+0

理想的人可以提交一個補丁並添加 #進口OS ... 路徑= os.path.abspath則(os.path.expanduser(路徑)) – 2015-03-14 12:40:36

0

另外,支持主文件夾和使用

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