2014-02-05 104 views
0

我試圖通過使用imwrite在一些處理後保存我的數據'圖像',但問題是imwrite不適用於序列。我已閱讀了一些解決方案並嘗試了它們,但它們不起作用。例如,我寫了我的代碼,例如:使用imwrite圖像序列

%read the sequence 
for i=1:k 

    %treatment 
    Id{k} = waverec2(t_C,L,'sym8'); 

    fileName = sprintf('C:\\Users\\swings\\Desktop\\data\\imagesPourAlgo\\images.tiff\\%02d',k); 

    imwrite (Id, 'fileName', 'tif'); 

end 

瞭解我要保存'寫'每個圖像分別做他們的另一個過程。

回答

1

你爲什麼不嘗試這樣的事:

for i = 1:10 
    I = waverec2(t_C,L,'sym8'); % or whatever you have 
    filename = ['c:\some\directory\file_number_' num2str(i) '.tif']; 
    imwrite(I,filename); 
end 

就個人而言,我不喜歡在這種簡單的情況下使用「的sprintf」。

+0

謝謝做這個NKN我創造一個file_number_1 .. file_number_10然後寫我的圖片在這些文件中,對不對?好主意謝謝:) – Ahmed

+0

另一個問題Mr.NKN我想保存我的ID {k}爲tif 32位,所以我用Id {k} = uint32(Id {k});在imwrite之前,但我得到這個錯誤:不能寫uint32數據到TIFF文件我該怎麼辦? :/ – Ahmed

1

imwrite的第二個輸入參數是char數組fileName。改用該變量。圖像可能是Id{k}而不是Id

imwrite (Id{k}, fileName, 'tif');

相關問題