MATLAB Answers


Store output program to a 3 d array as matrix

Asked by Aliff Zin on 31 Jan 2017
Latest activity Commented on by Aliff Zin on 1 Feb 2017
Sorry if i sounded stupid, i am new to matlab
I wanted to do experiment on fingervein system, i got 10 users with 12 images of each person, i have create all my pre processing step in my main function including the looping
but what i wanted to know is how do i save all the processesd image into array and concatenating them into one 3d matrix so my output will be 10x12. It is possible?
Thank you


How is 10x12 a 3D array?
Truecolor images are already 3D, so you could concatenate them into a 4D array.
on 31 Jan 2017
@Aliff Zin: Please post more details, e.g. example data or existing code. I'm sure it is possible what you want, but I assume the answ3er "yes" will not make you happy.
Hi, sorry if my question is not clear
I have main function where it runs HOG feature vector and i tested on 10 users with 12 fingers of each
So when i run my main code, it will automatically store the output of extracted features (3060) x 10(user) x 12 (image) from the looping in my main function.
I need to store it in 3 different arrays each. So that i can concatenate them to form a 3D matrix. So i can have a matrix size of 3060 x 10 x 12
Sorry if it is not clear. Thank you for your reply.

Sign in to comment.

1 Answer

Answer by Niels
on 1 Feb 2017
Edited by Niels
on 1 Feb 2017

for user=1:10
for imageNumber= 1:12
% for this to work you will need some way to get the right name
% cant help any further without more information (like image names etc)
A{user,imageNumber}=imread ("replace.png");
i think this might be kind of what you wanted
A{user,imageNumber} % will get you the data you want to access


This is my code after choose from the folder. (I currently have 10 files represent 10 users and 12 images of same size in each file) I include all the processing step in this code What i wanted is to store the hog feature length, total file of 10 (users), and 12 images in 3 different array and concatenating them as 3d matrix
So that my size will be 720 x 10 x 12. I need this matrix so that i can proceed with SVM. Thanks for you reply
if numberOfImageFiles >= 1
for f = 1 : numberOfImageFiles
fullFileName = fullfile(thisFolder, baseFileNames(f).name);
%%PRE-Processing step%%%%
imageArray = imread(fullFileName);
imageArray = imadjust(imageArray,stretchlim(imageArray),[]);
imageArray = imresize(imageArray, 0.3);
fprintf('Now Processing image in %s\n', fullFileName);
Sorry if my code seems wrong, i really really new to matlab. I need to get this done for my project. Thank you sir.

Sign in to comment.