2009-11-20 67 views
3

我想用Python做一些OpenCV基本操作。我的問題是Python解釋器說我想用cv.LoadImage()打開的文件不存在。 但正如你可以在我的代碼和解釋器輸出中看到的,這個文件存在,程序應該能夠讀取它。IOError與Python和OpenCV

可能的答案很簡單(我是Python編程新手!)。 感謝您的回答!

這裏我的代碼:

import cv, sys, os 

print sys.argv[1] 
print os.getcwd() 
print os.access(sys.argv[1], os.F_OK) 

img = cv.LoadImage(sys.argv[1], 1) 

cv.NamedWindow("orginal", CV_WINDOW_AUTOSIZE) 
cv.ShowImage("orginal", img) 

cv.waitKey(0) 

這裏是Pythoninterpreter輸出:

[email protected]:~/opencv/showPicture$ python2.5 showPicture.py google-de02.jpg google-de02.jpg 
/home/steffke/opencv/showPicture 
True 
Traceback (most recent call last): 
    File "showPicture.py", line 7, in <module> 
    img = cv.LoadImage(sys.argv[1], 1) 
IOError: [Errno 2] No such file or directory: 'google-de02.jpg' 
+0

代碼看起來不錯,但我。我可以知道'ls -l google-de02.jpg'的結果嗎? – YOU 2009-11-20 17:52:42

回答

1

嘗試僅僅給它的整個路徑,而不是名字,也許使用\谷歌de02.jpg 。

+0

看來,OpenCV腳本無法訪問該文件。像terabytest建議的那樣,確保CV包中文件的路徑是正確的(例如,通過指定絕對路徑)並且權限設置正確。 – 2009-11-20 18:35:06

2

我已經嘗試了兩個建議,但它像以前一樣。 os.access返回TRUE,但函數cv.LoadImage產生相同的錯誤。

其他解決方案?

無論如何感謝FPR答案...

+0

您可能想通過評論來回答答案,因爲您指的是哪一個或哪幾個不明確。 – 2009-11-20 18:32:32

+1

所以現在在評論中;-) repr函數完成它的工作,但cv.LoadImage函數也不能處理它。 – 2009-11-20 19:37:21

0

嘗試使用再版功能,當發生異常。