In the following program, I get the value 200 X 1 after reshaping function, I want to store ground truth a label like 1 1 1 1 1 for the first five images then second 2 2 2 2 2 up to 40 images e.g.
1600x1 uint8 1 1600x1 uint8 1 1600x1 uint8 1 1600x1 uint8 1 1600x1 uint8 1 1600x1 uint8 2 1600x1 uint8 2 1600x1 uint8 2 1600x1 uint8 2 1600x1 uint8 2 . . 1600x1 uint8 40 1600x1 uint8 40 1600x1 uint8 40 1600x1 uint8 40 1600x1 uint8 40 clc; clear all; faceData = cell(40,5); % or cell(5,40)
for i=1:40 cd(strcat('s',num2str(i))); for j=1:5 v=imread(strcat(num2str(j),'.bmp')); v1 = imresize(v,[40,40]); [x1,y1] = size(v1); v1=v1(:); % it make long vertical vector
w = uint8(v1); faceData{i,j} = w; end cd .. end faceData = reshape(faceData,[],1);
Best Answer