Matlab实现批量处理图像的两种方法


基本上有两个方法:一个是将你的图像统一进行一次重命名如:1.jpg,2.jpg等,然后利用for循环依次进行处理即可,如下面的语句:假设你的图像共有20副:

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

方法二:

将图像统一方法一个文件夹下,不需要统一进行重命名了,利用uigetdir函数得到你所处理图像的路径,然后对此路径下的所有图像进行处理,举例如下:我只处理bmp文件

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

Matlab与C/C++联合编程之从Matlab调用C/C++代码 http://www.linuxidc.com/Linux/2012-08/68148.htm

二分类SVM方法Matlab实现 http://www.linuxidc.com/Linux/2013-05/84050.htm

Matlab中的取整函数fix, floor, ceil与round http://www.linuxidc.com/Linux/2013-10/91161.htm

Matlab编译cuda的.cu文件 http://www.linuxidc.com/Linux/2014-04/100675.htm

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-06/103666.htm

  • 5
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MATLAB中,可以使用循环结构来批量处理图像。以下是一些常见的批量处理图像方法: 1. 使用imread函数读取图像并使用imwrite函数将处理后的图像保存。例如,下面的代码可以将文件夹中所有的png图像转换为jpg格式并保存在另一个文件夹中: ```matlab image_folder = 'C:\image_folder\'; % 文件夹路径 output_folder = 'C:\output_folder\'; % 输出文件夹路径 png_files = dir(fullfile(image_folder, '*.png')); % 获取所有的png文件 for i = 1:length(png_files) filename = fullfile(image_folder, png_files(i).name); img = imread(filename); new_filename = fullfile(output_folder, strrep(png_files(i).name, '.png', '.jpg')); imwrite(img, new_filename, 'jpg'); end ``` 2. 使用imtool函数进行交互式图像处理。使用imtool函数可以在MATLAB中打开图像查看器,并进行各种图像处理操作。例如,下面的代码可以在imtool中打开文件夹中所有的png图像: ```matlab image_folder = 'C:\image_folder\'; % 文件夹路径 png_files = dir(fullfile(image_folder, '*.png')); % 获取所有的png文件 for i = 1:length(png_files) filename = fullfile(image_folder, png_files(i).name); img = imread(filename); imtool(img); end ``` 3. 使用批量处理函数进行图像处理。MATLAB中提供了一些批量处理函数,例如imbatchprocess函数可以对文件夹中的所有图像进行相同的处理操作。例如,下面的代码可以将文件夹中所有的png图像转换为灰度图像并保存在另一个文件夹中: ```matlab image_folder = 'C:\image_folder\'; % 文件夹路径 output_folder = 'C:\output_folder\'; % 输出文件夹路径 png_files = dir(fullfile(image_folder, '*.png')); % 获取所有的png文件 process_func = @(img) rgb2gray(img); % 定义处理函数 imbatchprocess(png_files, image_folder, output_folder, process_func); ``` 以上是一些常见的批量处理图像方法,您可以根据具体需求进行选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值