2011-05-03 130 views
0

如何在matlab中編寫一個讀取一定數量圖像的程序比方說20個例如保存在給定目錄(C :)中的例子,以便以後我可以使用它們。假設圖像是通過數字保存的。之後,我會使用它們。matlab代碼源

+0

你試過什麼了?您是否看過文檔'imread()'? – 2011-05-03 08:46:13

+0

可能的重複[在MATLAB中加載多個圖像](http://stackoverflow.com/questions/2408112/loading-multiple-images-in-matlab) – gnovice 2011-05-03 13:53:03

回答

0

我想代碼看起來像這樣。假設單元格數組im保存你的圖像。

寫出:

IMG_DIR = 'C:\'; 
filename_root = 'image'; 
IMG_EXT = '.jpg'; 

NUM_IMAGES = 20; 

for i = 1:NUM_IMAGES 
    imwrite(im{i}, [IMG_DIR filename_root num2str(i) IMG_EXT]); 
end 

閱讀語言

for i = 1:NUM_IMAGES 
    im{i} = imread([IMG_DIR filename_root num2str(i) IMG_EXT]); 
end 

如果你不知道有多少,你也可以用ls命令(工作方式不同在Windows與Linux的) 。

0

如果你不知道,在前進,哪些文件會在那裏,但你知道,他們有他們的字符串,'rawImage'(如'rawImage001.jpg'等),你可以這樣做

a = dir('c:\temp'); 
requiredBaseFileName = 'rawImage'; % you want them to contain the substring 'rawImage' 

for i = 1:length(a), 

    fileName = a(i).name; 

    if(isempty(strfind(fileName,'.jpg')) & isempty(strfind(fileName,'.png'))) 
      continue; 
    end 


    if(isempty(strfind(fileName,requiredBaseFileName))) 
      continue; 
    end 
    % do your processing here 

end