我在WinXP筆記本電腦上運行Python2.7.1和OpenCV 2.2時沒有出現問題,並編寫了一個無故障工作的跟蹤程序。但出於一些奇怪的原因,我無法獲得相同的程序在我試圖安裝OpenCV和Python的任何其他計算機上運行(使用相同的二進制文件或適當的64位二進制文件)。在那些計算機上OpenCV似乎被正確安裝(雖然我只在筆記本電腦的攝像頭中測試過CaptureFromCamera()),但CaptureFromFile()返回'None'並在QueryFrame後給出「error:Array should CvMat or IplImage」 , 例如。CaptureFromFile()上的IplImage'None'錯誤 - Python 2.7.1和OpenCV 2.2 WinXP
這個簡單的代碼:
進口CV/
錄像檔案= cv.CaptureFromFile( 'a.avi')/
幀= cv.QueryFrame(錄像檔案)/
打印類型(錄像檔案)/
打印類型(幀)
回報:
類型 'cv.Capture'/
類型 'NoneType'
- 的OpenCV和Python是在Windows路徑...
- 我提出OpenCV的站點包的內容來回的Pyhton27庫\站點包文件夾。
- 我試過不同的avi文件(以防萬一它是一些編解碼器問題)。該AVI使用MJPEG編碼(並且GSpot報告ffdshow視頻解碼器用於讀取)。
- 圖片工作正常(我認爲):簡單的轉換代碼: im = cv.LoadImageM(「c:\ tests \ colormap3.tif」) cv.SaveImage(「c:\ tests \ colormap3-out.png 「,im) 打開,轉換並保存新圖像...
- 我已經測試過不同文件夾中的AVI文件,使用」c:\「,」c:/「,」c:\「和」c ://」。
我迷失在這裏......任何人都知道什麼愚蠢的和不小心的錯誤可能是這個原因嗎?謝謝
AndreasT:謝謝你的提示(我也懷疑它是ffdshow不兼容的地方);然而CaptureProperties函數不工作,因爲捕獲未初始化(對象被實例化但仍然爲空)...但是對於文件本身的編碼沒有問題,因爲沒有文件工作 - 甚至不是默認的「樹」。 avi「文件的OpenCV示例。 – 2011-05-02 17:24:16