㈠ 怎樣用matlab讀取一個文件夾下的多個子文件夾中的多個jpg圖片,急用啊~~~
這個簡單,參考如下:
imgPath='E:/imageData/';%圖像庫路徑
imgDir=dir([imgPath'*.jpg']);%遍歷所有jpg格式文件
fori=1:length(imgDir)%遍歷結構體就可以一一處理圖片了
img=imread([imgPathimgDir(i).name]);%讀取每張圖片
(1)matlab讀取圖片文件夾擴展閱讀:
需要先遍歷所有子文件夾,然後依次再遍歷每個子文件夾下的圖片,程序如下。
imgDataPath='E:/imageData/';
imgDataDir=dir(imgDataPath);%遍歷所有文件
fori=1:length(imgDataDir)
if(isequal(imgDataDir(i).name,'.')||...%去除系統自帶的兩個隱文件夾
isequal(imgDataDir(i).name,'..')||...
~imgDataDir(i).isdir)%去除遍歷中不是文件夾的
continue;
end
imgDir=dir([imgDataPathimgDataDir(i).name'/*.jpg']);
forj=1:length(imgDir)%遍歷所有圖片
img=imread([imgDataPathimgDataDir(i).name'/'imgDir(j).name]);
end
end
ImgDir返回一個包含每個圖像名稱、日期、位元組、isdir和datenum的結構。一般情況下,我們只需要用圖片的名稱來完成圖片的遍歷工作
㈡ 想用matlab打開一個文件夾,然後自己選取文件夾中一幅圖像讀取
[filename,pathname]=uigetfile('*.jpg','讀取圖片文件');%選擇圖片文件
ifisequal(filename,0)%判斷是否選擇
msgbox('沒有選擇任何圖片');
else
pathfile=fullfile(pathname,filename);%獲得圖片路徑
M=imread(pathfile);%將圖片讀入矩陣
image(M);%繪制圖片
end
㈢ matlab讀取任意路徑下文件
你可以復制過來嘛,實在不行可以修改工作區的,調整到你要的目錄就好了
具體如下
cd空格路徑
如
cd f
將當前工作區域轉換到f盤
這樣的話你要的就是
cd pathname
fopen(filename)
㈣ matlab 怎麼打開工作空間中的文件夾
樓主可以用數字來命名文件夾和文件,然後用matlab裡面的字元串函數,把循環的變數變成字元串,用strcat函數合並到路徑那裡
舉個簡單的例子,例如要讀文件夾「1」裡面的名字為1~10的jpg文件,可以用以下程序:
X=zeros(10,200);
for i=1:10
url=strcat('c:\1\',num2str(i));
url=strcat(url,'.jpg');
X(i)=imread(url);
end
以上就是打開10個圖片的程序,你用兩個循環,就可以打開文件夾名字為1~10,文件名為1~40的文件了
㈤ 怎麼用MATLAB批量讀取一個文件夾裡面的圖片 並進行處理呢
1 圖像按編號命名抄:1.jpg, 2.jpg,....,n.jpg
2 循環讀圖襲
I=cell(1,n);
for i=1:n
imageName=strcat(num2str(i),'.jpg');
I{i} = imread(imageName);
end
3 處理圖像
-----------------------
如果圖像很多,那麼最好這樣,第二步和第三步合並
for i=1:n
imageName=strcat(num2str(i),'.jpg');
I = imread(imageName);
處理當前圖像
end
㈥ 用MATLAB如何讀取一個文件夾里的圖片
1、查看圖片所在的位置。
㈦ matlab中,我想把一個文件夾里的所有圖片都讀入,如何做
這是讀取兩層文件夾里圖片的示例。
java">clc;
clear;
fatherPath=['C:UserschenDesktop人臉識別faces'];
dirs=dir(fatherPath);
dircell=struct2cell(dirs);
fori=3:length(dircell)
subdirs=dircell(1,i);
SonPath=[fatherPath''cell2mat(subdirs)];
%SonPath=[fatherPath''cell2mat(subdirs)'*.pgm'];
dirs2=dir(SonPath);
dircell2=struct2cell(dirs2);
forj=3:length(dirs2)
PictureName=dircell2(1,j);
PicturePath=[SonPath''cell2mat(PictureName)];
tempimg=imread(PicturePath);
%imgname=[SonPath''cell2mat(PictureName)'.png'];
imgname=['C:UserschenDesktop人臉識別png'cell2mat(PictureName)'.png'];
imwrite(tempimg,imgname);
end
end