天天看点

matlab 批量处理图片

 一、基本上比较常用的就是自己的图片命名是规律的,这样可以

快速循环处理:

str='D:\'; %我的图像放在D盘,做差文件夹下,好的图像文件夹下
for i=1:12
I=imread([str,num2str(i),'.png']); %依次读取每一幅图像
%在此处进行你的图像处理即可
end

 二、在一个文件夹下,利用uigetdir函数得到你所处理图像的路

径,然后进行处理

srcDir=uigetdir('Choose source directory.'); %获得选择的文件夹
cd(srcDir);
allnames=struct2cell(dir('*.bmp')); %只处理8位的bmp文件
[k,len]=size(allnames); %获得bmp文件的个数
for ii=1:len
%逐次取出文件
name=allnames{1,ii};
I=imread(name); %读取文件
%然后在此处添加你的图像处理程序即可
end

三、百度上提供的多张保存

clear;clc;

figure %新建一张图

axis([0 5 0 2])%定义x轴(从0到5)和y轴的范围(从0到2)

for i=1:4

    if i==1

        text(i,1,'百','fontsize',40,'color','red');%i=1时,写一个‘百’字

    end

    if i==2

        text(i,1,'度','fontsize',40,'color','red');%i=2时,写一个‘度’字

    end

    if i==3

        text(i,1,'经','fontsize',40,'color','red'); %i=3时,写一个‘经’字

    end

    if i==4

        text(i,1,'验','fontsize',40,'color','red');%i=4时,写一个‘验’字

    end    

    picname=[num2str(i) '.fig'];%保存的文件名:如i=1时,picname=1.fig

    hold on % 写后面的字时,不把前面的字冲掉

    saveas(gcf,picname)

end

继续阅读