2013-05-22 108 views
1

我是這個概念的新手,我相信這應該是任何人在這裏問的最難的問題。蘇里,但我真的不確定。使用argv閱讀圖像

image = imread(argv[1], CV_LOAD_IMAGE_COLOR); 

我的問題是,在讀出的OpenCV使用imread圖像,我他們使用的函數argv的樣品中看到[1]。我的困惑是,圖像假設存儲在哪裏,以便我可以讀取這個命令方法。

我的圖像存儲在桌面上的文件夾圖像。 我的程序也在名稱的桌面上。 image.cpp。

我應該在哪裏放置圖像,以便我可以使用命令行來閱讀它。

+0

將它放在您有閱讀權限的任何地方。 – juanchopanza

+0

您必須指定圖像的路徑作爲第二個命令行參數。例如'program.exe C:/用戶/用戶/桌面/文件夾/ image.jpg' – sgarizvi

回答

3

如果你只是想測試一些OpenCV的功能可按,你可以定義
char* file_path = "c:/.../image.jpg";然後,您可以加載此圖像

image = imread(file_path, CV_LOAD_IMAGE_COLOR); 
2

你可以調用它爲:

程序[文件]

其中program是你的程序的名稱。在Windows上它可能是program.exe。不管你放在[file]中的什麼都會通過argv [1]傳遞給你的程序。如果他們都在同一個目錄,你可以這樣做:

程序file.jpg

如果該文件是在不同的目錄下,你需要給的完整路徑程序(或相對路徑從一個到另一個)。您可以通過編寫一個打印argv [1]的簡單程序來進行試驗,以確保您瞭解事情的工作方式(首先避免OpenCV的複雜性)。

1

把圖像的任何地方。只需在命令行中傳遞文件的路徑即可。正如juanchopanza在評論中提到的那樣,您應該已經閱讀了文件的權限。