2016-03-04 56 views

回答

0

該代碼將是這樣的:

for ii=1:6000 
    data(ii,:,:)=imread('yourfilename_ii.png'); %//this only works if they are FOR SURE 30x30 all 
end 

% Now reshape! 
data=reshape(data,[6000,30*30]); 
+0

YAA這個作品Biguri先生....ü可以建議我怎麼會做同樣的事情,如果我有可變圖像尺寸(即。一個圖像20 * 20和其他30 * 30) –

2

我假設你有你的圖片在當前工作文件夾某種格式,並且都是相同的維度。

此外,我假設你對黑白圖像很感興趣(否則你將不得不考慮RGB域的三維空間)。

如果是這樣,你可以簡單地閱讀它們,並將它們存儲陣列中:

首先以某種方式創建一個包含文件名的單元:

fileName = {'image1.png';'image2.png'}; 

分配空間爲您的圖像矩陣:

h=30; w=30; 
imagesArray = zeros(length(fileName),h,w); 

順序讀取,並在空矩陣存儲圖像:

for n=1:length(fileName) 
    imagesArray(n,:,:) = imread(fileName{n}); 
end 

最後你解開:

unroll = reshape(imagesArray,length(fileName),h*w); 
+1

您也可以使用'dir('folder/*。png')'在文件夾中找到所有'png'圖像。這將返回一個結構,其中包含每個文件的一些信息,包括其名稱。 – hbaderts

相關問題