-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathcnn_setup_data.m
More file actions
34 lines (32 loc) · 1.06 KB
/
cnn_setup_data.m
File metadata and controls
34 lines (32 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
function imdb =cnn_setup_data(datadir)
inputSize =[64,64];
subdir=dir(datadir);
imdb.images.data=[];
imdb.images.labels=[];
imdb.images.set = [] ;
imdb.meta.sets = {'train', 'val', 'test'} ;
image_counter=0;
trainratio=0.8;
for i=3:length(subdir)
imdb.meta.classes(i-2) = {subdir(i).name};
imgfiles=dir(fullfile(datadir,subdir(i).name));
imgpercategory_count=length(imgfiles)-2;
disp([i-2 imgpercategory_count]);
image_counter=image_counter+imgpercategory_count;
for j=3:length(imgfiles)
img=imread(fullfile(datadir,subdir(i).name,imgfiles(j).name));
img=imresize(img, inputSize(1:2));
img=single(img);
imdb.images.data(:,:,:,end+1)=single(img);
imdb.images.labels(end+1)= i-2;
if j-2<imgpercategory_count*trainratio
imdb.images.set(end+1)=1;
else
imdb.images.set(end+1)=3;
end
end
end
dataMean=mean(imdb.images.data,4);
imdb.images.data = single(bsxfun(@minus,imdb.images.data, dataMean)) ;
imdb.images.data_mean = single(dataMean);%!!!!!!!!!!!
end