一个matlab获取目录中图像名称及路径的递归实现~

matlab源文件

getImageList.m

[c-sharp] view plaincopyprint?
  1. function [ imageList ] = getImageList( imageListCur, rootDir, imageDir, imageType )
  2. % 输入参数说明:
  3. % imageListCur 当前的图像列表,第一次执行递归时其为空
  4. % rootDir 图像文件夹所在的根目录,第一次执行递归时其为空
  5. % imageDir 图像所在的目录
  6. % imageType 图像的类型
  7. % 输出参数说明:
  8. % imageList 图像文件夹(包含其中子目录)中的所有图像列表与当前图像列表的并集
  9. % imageList(j).id 第j个图像的标识符
  10. % imageList(j).name 第j个图像的名字
  11. % imageList(j).dir 第j个图像的所在目录
  12. % 作者:
  13. % raocong
  14. curDir = pwd;
  15. % 进入指定的图像目录
  16. cd( imageDir );
  17. % 开始做事
  18. imageEnum = dir( [ '*.' imageType ] );
  19. imageList = imageListCur;
  20. nCurImgNum = length( imageList );
  21. for i = 1 : length( imageEnum )
  22. nCurImgNum = nCurImgNum + 1;
  23. imageList( nCurImgNum ).id = nCurImgNum - 1;
  24. imageList( nCurImgNum ).name = imageEnum( i ).name;
  25. imageList( nCurImgNum ).dir = [ rootDir '/' imageDir ];
  26. end
  27. fileEnum = dir;
  28. for i = 1 : length( fileEnum )
  29. if strcmp( fileEnum(i).name, '.' ) || strcmp( fileEnum(i).name, '..' )
  30. continue;
  31. end
  32. if fileEnum(i).isdir
  33. % 递归调用自身
  34. imageList = getImageList( imageList, [ rootDir '/' imageDir ], fileEnum(i).name, imageType );
  35. end
  36. end
  37. % 做完事之后回到根目录
  38. cd( curDir );
  39. end

getImageListInSpecifiedFolder.m

[c-sharp] view plaincopyprint?
  1. function [ imageList ] = getImageListInSpecifiedFolder( imgDirectory, imgType  )
  2. % 输入参数:
  3. % imgDirectory 图像存放的目录,例如当前目录下的Temp文件夹
  4. % imgType 查找的图像类型
  5. % 输出参数:
  6. % imageList 图像列表包含图像文件名及其所在目录
  7. % 作者:
  8. % raocong
  9. % 初始化图像列表结构体
  10. imageList = struct( 'id', [], 'name', [], 'dir', [] );
  11. % 得到imgDirectory目录下类型为imgType的所有图像列表
  12. imageList = getImageList( imageList, [], imgDirectory, imgType );
  13. % 删除第一个空值元素
  14. imageList(1) = [];
  15. end

 run.m

[c-sharp] view plaincopyprint?
  1. clc;
  2. clear all;
  3. addpath( pwd );
  4. % 得到Temp目录及其子目录中所有的Jpg格式的文件列表
  5. imageList = getImageListInSpecifiedFolder( 'temp', 'jpg' );
  6. % 显示结果
  7. % imageList(j).id 第j个图像的标识符
  8. % imageList(j).name 第j个图像的名字
  9. % imageList(j).dir 第j个图像的所在目录
  10. disp( 'ID Name & Folder' );
  11. for i = 1 : length( imageList )
  12. disp( [ num2str( imageList(i).id ) ' ' imageList(i).name ' ' imageList(i).dir ] );
  13. end

实验结果

matlab获取目录中图像名称及路径的递归实现相关推荐

  1. PHP-获取目录中的所有文件和子目录

    主要运用了递归的思想和scandir()获取子目录函数,其它的不说了,直接上代码. /** * 获取目录中所有文件的路径 * @param $dir * @return array */ functi ...

  2. R语言dir函数获取目录中文件或者文件夹名称实战

    R语言dir函数获取目录中文件或者文件夹名称实战 目录 R语言dir函数获取目录中文件或者文件夹名称实战 #基本语法

  3. 如何使用C或C ++获取目录中的文件列表?

    如何从C或C ++代码内部确定目录中的文件列表? 我不允许执行ls命令并从程序中解析结果. #1楼 GNU手册FTW http://www.gnu.org/software/libc/manual/h ...

  4. php获取目录中的所有文件名

    <?php/*** [php获取目录中的所有文件名]*///1.先打开要操作的目录,并用一个变量指向它 //打开当前目录下的目录pic下的子目录common.$handler = opendir ...

  5. java获取文件目录列表_获取目录中的文件列表

    我正在开发一个C项目,我需要获取目录中的文件列表 . 我正在使用dirent.h但是在使用它时遇到了一些问题,我正在Linux下构建程序 . 当我尝试构建程序时,我收到以下错误 myClass:err ...

  6. java获取目录中最后被更改的文件_如何使用Java从目录中只获取10个最后修改过的文件?...

    我是初学者,我发现了一个关于 java中lastmodified文件的旧线程. 我想要的是从目录中只获取10个最近的文件并将它们移动到另一个目录. 在此论坛中找到的此代码运行良好,但它从目录中获取所有 ...

  7. [绍棠] nuxt.js获取当前路由的名称和路径

    获取当前路由名称 $nuxt.$route.path 获取当前路由路径 $nuxt.$route.name 获取router const router = $nuxt.$router

  8. php如何获得文件数量,PHP:获取目录中文件数量的最有效方法

    标签:php 考虑这两个文件夹结构: Foo/ Folder1/ File1.txt Folder2/ Folder3/ File2.txt Bar/ Folder1/ Folder2/ Folder ...

  9. matlab只读改为可修改,matlab – 获取绘图的只读属性名称列表

    我开始讨论上一个问题,试图动态找出哪些字段是可设置的. 我没有完全使用它,但我可以通过使用set(h)和get(h)的返回值之间的差异来获取(大多数)只读属性. 这里没有显示的唯一属性是Parent- ...

最新文章

  1. 那些年值得铭记的时刻
  2. AngularJs表单自动验证
  3. 计蒜客/51Nod题目
  4. 对于短信平台呼叫状态机的调查
  5. anacondapythonyolo3配置_Windows anaconda 运行yolov3
  6. 【HDU - 2444】The Accomodation of Students(二分图判断 + 匈牙利算法求最大匹配)
  7. ios如何看idfv_如何无中生有资源搜索神器
  8. 【三维深度学习】基于片元的渐进式三维点云上采样模型
  9. java演练 猜奇偶小游戏开发 DB游戏必输的设计
  10. UE3 预计算可见性
  11. ubuntu12.10安装android编译环境
  12. linux开启权限继承,linux的一个权限问题(权限继承)
  13. 离散数学课程对应目录
  14. 缩放指数型线性单元(SELU)
  15. python requests timeout参数
  16. git rebase——分支变基及变基的风险
  17. 为什么没有工作经验的程序员很难找工作?
  18. 基于android的教育机构家校通系统app
  19. 腐烂的橘子(广度优先搜索)(考虑同时搜索)
  20. 【Markdown】编辑器使用技巧大汇总3。省略号的表示,常见希腊字母($\lambda$ 等),常见数学符号($\times$ 等),三角函数表示符号,微积分表示符号,逻辑运算符(因为所以)

热门文章

  1. android签名的应用-- 禁止未经授权签名的apk安装
  2. [Android L]SEAndroid开放设备文件结点权限(读或写)方法(涵盖常用操作:sys/xxx、proc/xxx、SystemProperties)热门干货
  3. Linux下触摸屏驱动程序分析
  4. 小米2+android版本,小米2S能刷Android4.4系统吗 小米2S刷Android4.4.2教程
  5. Bellman-Ford 算法
  6. 一步一步学ROP之gadgets和2free篇
  7. 某国家正在测试“关闭互联网”方法
  8. 网站微信登录授权 ASP.NET
  9. Python 通过ctypes调用 ICTCLAS3.0.DLL
  10. OpenCV像素点处理 1