[英]How do I create an array of image in matlab
我從目錄中逐張讀取圖像,並希望創建一個圖像數組,並將其傳遞給處理這些圖像的mexFunction。 到目前為止,我的嘗試無法正常工作。 假設我有100張圖片256x256
directory = uigetdir; fileList = dir(directory); imageVolume= [];
for idx = 3:numel(fileList)
tempImage = imread(fullfile(directory, fileList(idx).name));
imageVolume= [imageVolume tempImage];
end
每當我這樣做時,我都不會得到256x256xn的數組,而是得到了256x(256 * n)的圖像,這不是我想要的。 任何想法?
使用單元陣列。 假設其余代碼正確:
for idx = 3:numel(fileList)
tempImage{idx} = imread(fullfile(directory, fileList(idx).name));
end
使用單元格數組作為@bjornsen建議的作品。 如果您不想使用單元格數組,則可以使用3維矩陣:
imageVolume(:,:,idx) = tempImage;
但是,您必須確保所有圖像的大小均相同。 否則,最好使用單元格數組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.