用MATLAB如何读取一个文件夹里的图片
现在要一次性读入一个文件夹里的全部图片,怎么用MATLAB来实现,如果一张一张来的话,要不断改名字,很麻烦,可以一次性吗?谢谢...
现在要一次性读入一个文件夹里的全部图片,怎么用MATLAB来实现,如果一张一张来的话,要不断改名字,很麻烦,可以一次性吗?谢谢
展开
6个回答
展开全部
主要使用了imread函数,for循环指令,即函数imread用于读取图片文件中的数据,for用于读取所有图片。可以在matlab的命令窗口中输入doc imread或者help imread即可获得该函数的帮助信息。
clear;clc
[f,p]=uigetfile('*.*','选择图像文件');
if f
A=imread(strcat(p,f));
imshow(A);
end
下面这段代码实现文件夹下所有图片的读入并以mat格式存储
foldername=dir('总文件夹名字')% 用于得出所有子文件夹的名字
for i=1:length(foldername)-2
filename=strcat('总文件夹名字\',foldername(i+2).name);% 读取子文件夹的名字和路径
filenmae_bmp=dir(strcat(filename,'\*.bmp'));% 读取子文件夹图片,bmp格式
imagedata=imread(filename_bmp);% 读取图片
save('存放路径\名字.mat',imagedata);
end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-11-13 · 知道合伙人教育行家
关注
展开全部
首先定义文件夹的名称:
imgDir='.\coimg\';
imgDir2='.\\coimg\\%s'; 用于读取图片
具体代码:
oldPwd = pwd;
cd(imgDir);
x = dir;
listOfImages = [];
for i = 1:length(x),
if x(i).isdir == 0,
listOfImages = [listOfImages; x(i)];
end;
end;
cd(oldPwd);
fid=imgDir2;
for j = 1:length(listOfImages)
fileName = listOfImages(j).name;
rfid=sprintf(fid,fileName);
Irgb=imread(rfid);
Iset{j}=Irgb;
end
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-21
展开全部
用evil命令 把读入命令做成字符串和循环然后用evil 把字符串变成可执行语句
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-21
展开全部
files=dir('*.jpg');for i=1:length(files)file=files(i).name;% some processI=readimagefunction(file);% other codeend
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询