首页 > 代码库 > 使用matlab批量处理图像后在指定文件夹存储

使用matlab批量处理图像后在指定文件夹存储

使用matlab批量处理图像后在指定文件夹存储

clear;clc;close all;Files=dir(D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak\*.jpg);N=length(Files);Names={};Images={};for k=1:N            Names{k}=Files(k).name;        Images{k}=imread([D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak\‘ Names{k}]);         figure(k)    imshow(Images{k})end

其实没必要将读取的图片存为元胞数组!

即,将上面的Images={}撤销,直接存入B矩阵中即可!

B=

imread([‘D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak\‘ Names{k}]); 


新的mytest.m文件代码:
clear;clc;close all;Files=dir(D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak2\*.jpg);N=length(Files);Names={};% Images={};for k=1:N            Names{k}=Files(k).name;        B=imread([D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak2\‘ Names{k}]);         figure(k)        imshow(B)%       imwrite([B,strcat([D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak3\‘ Images{k}]),jpg]);        path=D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak3\‘;         file=Files(k).name;         pathfile=fullfile(path,file);         imwrite(B,pathfile,jpg);end

 

 fullfile函数

利用文件各部分信息创建合成完整文件名。

用法:
fullfile(‘dir1‘, ‘dir2‘, ..., ‘filename‘)
 
f = fullfile(‘dir1‘, ‘dir2‘, ..., ‘filename‘)
解释:若文件‘100.hea‘ 的路径为‘D:\matalab\xindianshuju\wenjian\100.hea‘,
那么 ‘dir1‘=‘D:‘;‘dir2‘=‘matlab‘;‘dir3‘=‘xindianshuju‘;‘dir4‘=‘wenjian‘;‘filename‘=‘100.hea‘
 
 
1.根据磁盘名、目录名和文件名创建完整文件名
f = fullfile(‘C:‘, ‘Applications‘, ‘matlab‘, ‘myfun.m‘)
f =
C:\Applications\matlab\myfun.m
2.下面的两个例子在UNIX平台下产生相同的结果,但只有第二个例子能在所有平台上工作。
>>fullfile(matlabroot, ‘toolbox/matlab/general/Contents.m‘)
fullfile(matlabroot, ‘toolbox‘, ‘matlab‘, ‘general‘,‘Contents.m‘)
ans =
D:\Program Files\MATLAB\R2008a\toolbox\matlab\general\Contents.m
ans =
D:\Program Files\MATLAB\R2008a\toolbox\matlab\general\Contents.m
 

Matlab中连续读入并处理图像,然后保存至指定文件夹下-dir,strcat,fullfie,imread,imwrite - super771的专栏 - CSDN博客 http://blog.csdn.net/super771/article/details/7345667

使用matlab批量处理图像后在指定文件夹存储