Loop to open files / extract image data and save them in a matrix
3 次查看(过去 30 天)
显示 更早的评论
I have an image database as files (106 files and each file contains 48 images)
I want to generate a matrix for the database (db.mat)
I want my program to open each folder (from 001 to 106) and take the data and save it to a db.mat file
here is my prog :
clear all;
clc;
cd D:\001\FT-2BU\FT-2BU
s = '';
str1 ='00';
str2 ='0';
for i=1:106
if i<10
s=strcat(str1,i);
bmpFiles = dir('*.bmp');
numfiles = length(bmpFiles);
mydata = cell(1, numfiles);
for k = 1:numfiles
mydata{k} = imread(bmpFiles(k).name);
end
save mydata;
elseif i<100
s=strcat(str2,i);
bmpFiles = dir('*.bmp');
numfiles = length(bmpFiles);
mydata = cell(1, numfiles);
for k = 1:numfiles
mydata{k} = imread(bmpFiles(k).name);
end
save mydata;
else
s=i;
bmpFiles = dir('*.bmp');
numfiles = length(bmpFiles);
mydata = cell(1, numfiles);
for k = 1:numfiles
mydata{k} = imread(bmpFiles(k).name);
end
save mydata; end
end
end
![ffn.PNG](https://www.mathworks.com/matlabcentral/answers/uploaded_files/221204/ffn.png)
0 个评论
采纳的回答
michael scheinfeild
2019-5-27
you need take subfolder , create it use num2str(number)
dir(fullfile(folder,subfolder))
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Database Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!