用matlabd批量处理图片

用matlab批量处理图片,从而批量改变图片的像素大小。
在不改变图片命名的前提下,批量处理图片。
代码如下:

clc,clear
srcDir=uigetdir('F:\MATLAB\source\train_images_40X32'); %获得选择的文件夹
cd(srcDir);
allnames=struct2cell(dir('*.bmp')); %只处理bmp文件
[k,len]=size(allnames); %获得bmp文件的个数

for i=1:len
%逐次取出文件
    name=allnames{1,i};
    I=imread(name); %读取文件
    %以下是对图形的处理操作,可以更改为其他操作
    I1=imresize(I,[16,16]);
    imwrite(I1,strcat('F:\MATLAB\source\train_images_16X16\0\',name));
end

以上代码可以以文件夹为单位,一次处理一个文件夹的图片。

你可能感兴趣的:(matlab,图像处理)