How can I convert multiple images (all the same size) into one matrix?
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Lauren Pitts
am 31 Jul. 2019
Kommentiert: Lauren Pitts
am 1 Aug. 2019
I have a folder of 100 images all 32x32. When I use M = imread(0001.png) a matrix populates but that's only for that one image in the folder. I need help to create a matrix with all of the images. This is the first step for me to be able to create a dataset for my neural network training. Thanks in advance!
M = imread(0001.png)
0 Kommentare
Akzeptierte Antwort
awezmm
am 31 Jul. 2019
You can create a cell array that holds all the image matrices. Use a for loop to imread each image and then store it in a cell array, in each iteration:
%cell array of your image filepaths
allFilenames = {"0001.png", "0002.png", "0003.png"};
%empty cell that will store all the images
allImages = cell(length(allFilenames),1);
%for loop to imread each image from the the allFilenames cell array and store it in allImages cell array
for i = 1:length(allFilenames);
allImages{i} = imread(allFilenames{i});
end
1 Kommentar
Akira Agata
am 1 Aug. 2019
Hi awezmm-san,
To get all the *.png file path, I would recommend using dir function, rather than writing them manually.
Weitere Antworten (1)
Akira Agata
am 1 Aug. 2019
To create image dataset for training a neural network, imageDatastore should be an easy and promissing way. So I would recommend trying this function!
Siehe auch
Kategorien
Mehr zu Image Data Workflows finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!