生活随笔
收集整理的這篇文章主要介紹了
matlab获取目录中图像名称及路径的递归实现
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一個(gè)matlab獲取目錄中圖像名稱及路徑的遞歸實(shí)現(xiàn)~
??????matlab源文件
??????getImageList.m
[c-sharp]?view plaincopyprint?
function?[?imageList?]?=?getImageList(?imageListCur,?rootDir,?imageDir,?imageType?)?? %?輸入?yún)?shù)說(shuō)明:?? %?imageListCur?當(dāng)前的圖像列表,第一次執(zhí)行遞歸時(shí)其為空?? %?rootDir?圖像文件夾所在的根目錄,第一次執(zhí)行遞歸時(shí)其為空?? %?imageDir?圖像所在的目錄?? %?imageType?圖像的類型?? %?輸出參數(shù)說(shuō)明:?? %?imageList?圖像文件夾(包含其中子目錄)中的所有圖像列表與當(dāng)前圖像列表的并集?? %?imageList(j).id?第j個(gè)圖像的標(biāo)識(shí)符?? %?imageList(j).name?第j個(gè)圖像的名字??? %?imageList(j).dir?第j個(gè)圖像的所在目錄?? %?作者:?? %?raocong?? ?? curDir?=?pwd;?? ?? %?進(jìn)入指定的圖像目錄?? cd(?imageDir?);?? ?? %?開(kāi)始做事?? imageEnum?=?dir(?[?'*.'?imageType?]?);?? imageList?=?imageListCur;?? nCurImgNum?=?length(?imageList?);?? ?? for?i?=?1?:?length(?imageEnum?)?? ????nCurImgNum?=?nCurImgNum?+?1;?? ????imageList(?nCurImgNum?).id?=?nCurImgNum?-?1;?? ????imageList(?nCurImgNum?).name?=?imageEnum(?i?).name;?? ????imageList(?nCurImgNum?).dir?=?[?rootDir?'/'?imageDir?];?? end?? ?? fileEnum?=?dir;?? ?? for?i?=?1?:?length(?fileEnum?)?? ????if?strcmp(?fileEnum(i).name,?'.'?)?||?strcmp(?fileEnum(i).name,?'..'?)?? ????????continue;?? ????end?? ?????? ????if?fileEnum(i).isdir?? ????????% 遞歸調(diào)用自身?? ????????imageList?=?getImageList(?imageList,?[?rootDir?'/'?imageDir?],?fileEnum(i).name,?imageType?);?? ????end?? end?? ?? %?做完事之后回到根目錄?? cd(?curDir?);?? ?? end??
??????getImageListInSpecifiedFolder.m
[c-sharp]?view plaincopyprint?
function?[?imageList?]?=?getImageListInSpecifiedFolder(?imgDirectory,?imgType??)?? %?輸入?yún)?shù):?? %?imgDirectory?圖像存放的目錄,例如當(dāng)前目錄下的Temp文件夾?? %?imgType?查找的圖像類型?? %?輸出參數(shù):?? %?imageList?圖像列表包含圖像文件名及其所在目錄?? %?作者:?? %?raocong?? ?? %?初始化圖像列表結(jié)構(gòu)體?? imageList?=?struct(?'id',?[],?'name',?[],?'dir',?[]?);?? %?得到imgDirectory目錄下類型為imgType的所有圖像列表?? imageList?=?getImageList(?imageList,?[],?imgDirectory,?imgType?);?? %?刪除第一個(gè)空值元素?? imageList(1)?=?[];?? ?? end??
??????run.m
[c-sharp]?view plaincopyprint?
clc;?? clear?all;?? addpath(?pwd?);?? ?? %?得到Temp目錄及其子目錄中所有的Jpg格式的文件列表?? imageList?=?getImageListInSpecifiedFolder(?'temp',?'jpg'?);?? ?? %?顯示結(jié)果?? %?imageList(j).id?第j個(gè)圖像的標(biāo)識(shí)符?? %?imageList(j).name?第j個(gè)圖像的名字??? %?imageList(j).dir?第j個(gè)圖像的所在目錄?? disp(?'ID?Name?&?Folder'?);?? for?i?=?1?:?length(?imageList?)?? ????disp(?[?num2str(?imageList(i).id?)?'?'?imageList(i).name?'?'?imageList(i).dir?]?);?? end??
??????實(shí)驗(yàn)結(jié)果
總結(jié)
以上是生活随笔為你收集整理的matlab获取目录中图像名称及路径的递归实现的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。