%在同样的文件夹结构、同样的位置
%把指定文件夹以同样的图片类型都转化为32*32的图片
clear;close all;clc;
pathRead=\'C:\Users\Dy\Desktop\视频真实数据\';
pathSave=\'C:\Users\Dy\Desktop\归一化后的图像\';
dirList=dir(pathRead);%读取文件夹列表,这种方式读取会保留原文件.(在结构体中第一个)和上一层目录..(在结构体第二个)
countList=length(dirList);%文件夹个数
for numList=3:countList%文件夹从3开始
%根据这个过滤掉在此文件夹可能的train.txt文件
%由于这里面保存数据的文件夹都是0,1,2,3..所有用了下面的判断
if(length(dirList(numList).name)>=2)
continue;
end
fileName=dir([pathRead,\'\\',dirList(numList).name]);%读取子文件夹中的图片
fileSum=length(fileName);%统计子文件夹中的文件个数
%在存储路径,创建对应的文件夹
pathCreDir=[pathSave,\'\\',dirList(numList).name,\'\\'];
mkdir(pathCreDir);
for fileNum=3:fileSum%文件从3开始
tempName=[pathRead,\'\\',dirList(numList).name,\'\\',fileName(fileNum).name];%依次得到具体图片文件的完整路径
temp=imread(tempName);%读入图片
normtemp=imresize(temp,[32 32]);%归一化图片,尺寸全部改为32*32
%保存在和源文件一样的对应文件夹内,按同样的文件名、文件类型保存
imwrite(normtemp,[pathCreDir,fileName(fileNum).name]);
end
end