MATLAB读取文件夹及其所有子文件夹内的图像
生活随笔
收集整理的這篇文章主要介紹了
MATLAB读取文件夹及其所有子文件夹内的图像
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1。 指定路徑下 單個(gè)文件夾data中所有圖像
file_path = ?'.\data\';% 圖像文件夾路徑 img_path_list =?dir(strcat(file_path,'*.jpg'));%獲取該文件夾中所有jpg格式的圖像 img_num = length(img_path_list);%獲取圖像總數(shù)量 if img_num > 0 %有滿足條件的圖像 for j = 1:img_num %逐一讀取圖像 image_name = img_path_list(j).name;% 圖像名 image = ?imread(strcat(file_path,image_name)); fprintf('%d %d %s\n',i,j,strcat(file_path,image_name));% 顯示正在處理的圖像名 %圖像處理過(guò)程 省略 end end
注,上述的代碼只能讀取data文件夾中的圖像,假設(shè)data中包含子文件夾,不能讀取子文件夾中的圖像。
2. 指定路徑下 多個(gè)文件夾中所有圖像,該代碼可以讀取文件夾data中及data的所有子文件夾中的圖像。
p =?genpath('.\data');% 獲得文件夾data下所有子文件的路徑,這些路徑存在字符串p中,以';'分割 length_p = size(p,2);%字符串p的長(zhǎng)度 path = {};%建立一個(gè)單元數(shù)組,數(shù)組的每個(gè)單元中包含一個(gè)目錄 temp = []; for i = 1:length_p?%尋找分割符';',一旦找到,則將路徑temp寫入path數(shù)組中 if p(i) ~= ';' temp = [temp p(i)]; else? temp = [temp '\']; %在路徑的最后加入?'\' path = [path ; temp]; temp = []; end end ? clear p length_p temp; %至此獲得data文件夾及其所有子文件夾(及子文件夾的子文件夾)的路徑,存于數(shù)組path中。 %下面是逐一文件夾中讀取圖像 file_num = size(path,1);% 子文件夾的個(gè)數(shù) for i = 1:file_num file_path = ?path{i}; % 圖像文件夾路徑 img_path_list = dir(strcat(file_path,'*.jpg')); img_num = length(img_path_list); %該文件夾中圖像數(shù)量 if img_num > 0 for j = 1:img_num image_name = img_path_list(j).name;% 圖像名 image = ?imread(strcat(file_path,image_name)); fprintf('%d %d %s\n',i,j,strcat(file_path,image_name));% 顯示正在處理的路徑和圖像名 %圖像處理過(guò)程 省略 end end end http://blog.163.com/yuyang_tech/blog/static/216050083201399103356795/
總結(jié)
以上是生活随笔為你收集整理的MATLAB读取文件夹及其所有子文件夹内的图像的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 脾胃虚弱的表现
- 下一篇: 模型压缩案例-SSDYou only l