MATLAB读取文件夹及其所有子文件夹内的图像

1。 指定路径下 单个文件夹data中所有图像
file_path =  '.\data\';% 图像文件夹路径
img_path_list = dir(strcat(file_path,'*.jpg'));%获取该文件夹中所有jpg格式的图像
img_num = length(img_path_list);%获取图像总数量
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));% 显示正在处理的图像名
%图像处理过程 省略
end
end
注,上述的代码只能读取data文件夹中的图像,假设data中包含子文件夹,不能读取子文件夹中的图像。
2. 指定路径下 多个文件夹中所有图像,该代码可以读取文件夹data中及data的所有子文件夹中的图像。
p = genpath('.\data');% 获得文件夹data下所有子文件的路径,这些路径存在字符串p中,以';'分割
length_p = size(p,2);%字符串p的长度
path = {};%建立一个单元数组,数组的每个单元中包含一个目录
temp = [];
for i = 1:length_p %寻找分割符';',一旦找到,则将路径temp写入path数组中
if p(i) ~= ';'
temp = [temp p(i)];
else 
temp = [temp '\']; %在路径的最后加入 '\'
path = [path ; temp];
temp = [];
end
end  
clear p length_p temp;
%至此获得data文件夹及其所有子文件夹(及子文件夹的子文件夹)的路径,存于数组path中。
%下面是逐一文件夹中读取图像
file_num = size(path,1);% 子文件夹的个数
for i = 1:file_num
file_path =  path{i}; % 图像文件夹路径
img_path_list = dir(strcat(file_path,'*.jpg'));
img_num = length(img_path_list); %该文件夹中图像数量
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));% 显示正在处理的路径和图像名
%图像处理过程 省略
end
end
end
http://blog.163.com/yuyang_tech/blog/static/216050083201399103356795/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/313213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gRPC 流式调用

gRPC 使用 Protocol buffers 作为接口定义语言(IDL)来描述服务接口和输入输出消息的结构,目前支持 4 种定义服务方法类型:类型说明简单 RPC客户端传入一个请求对象,服务端返回一个结果对象客户端流式 RPC客户端传入多个…

模型压缩案例-SSDYou only look once

http://write.blog.csdn.NET/postedit 在上一篇文章中,介绍了以regionproposal来检测的框架,这一系列速度和精度不断提高,但是还是无法达到实时。存在的主要问题为:速度不够快,主要原因是proposal比较多,特…

.NET如何将字符串分隔为字符

前言如果这是一道面试题,答案也许非常简单:.ToCharArray(),这基本正确……我们以“AB吉??????”作为输入参数,首先如果按照“正常”处理的思路,用 .ToCharArray(),然后转换为 JSON(以便方…

Rebuttal

http://blog.csdn.net/lqhbupt/article/details/25207463 1. Rebuttal是给编辑看的 2. 每个审稿人给出一个分数,加得总分 3. 定位。一般而言,对于area chair,那个给分比较低的会自然吸引他的眼球,相对占得的权重也就大&#xf…

Orleans 知多少 | 3. Hello Orleans

1. 引言是的,Orleans v3.0.0 已经发布了,并已经完全支持 .NET Core 3.0。所以,Orleans 系列是时候继续了,抱歉,让大家久等了。万丈高楼平地起,这一节我们就先来了解下Orleans的基本使用。2. 模板项目讲解在…

.NET Core 3.0之深入源码理解ObjectPool(二)

写在前面前文主要介绍了ObjectPool的一些理论基础,本文主要从源码角度理解Microsoft.Extensions.ObjectPool是如何实现的。下图为其三大核心组件图:核心组件ObjectPoolObjectPool是一个泛型抽象类,里面只有两个抽象方法,Get和Retu…

VC维学习

http://www.flickering.cn/machine_learning/2015/04/vc维的来龙去脉/ 说说历史Hoeffding不等式Connection to Learning学习可行的两个核心条件Effective Number of HypothesesGrowth FunctionBreak Point与ShatterVC BoundVC dimension深度学习与VC维小结参考文献 VC维在机器学…

.NET Core 3.0 一个 jwt 的轻量角色/用户、单个API控制的授权认证库

作者:痴者工良(朋友合作原创)来源:https://www.cnblogs.com/whuanle/p/11743406.html目录说明一、定义角色、API、用户二、添加自定义事件三、注入授权服务和中间件三、如何设置API的授权四、添加登录颁发 Token五、部分说明六、验…

.NET Core 3.0 构建和部署

Default Executables 默认可执行文件 在 dotnet build 或 dotnet publish 期间,将创建一个与你使用的 SDK 的环境和平台相匹配的可执行文件。 和其他本机可执行文件一样,可以使用这些可执行文件执行相同操作,例如: 可以双击可执行…

实现ZF-Net

根据的代码是https://github.com/hvy/chainer-visualization 注意:遇到问题一定要仔细看问题的描述,从最基本的描述入手,而不要按照网上的方法断章取义式的解决问题。 遇到的问题是: 1. 无法载入cupy库 解决办法: …

为什么我会了SOA,你们还要逼我学微服务?

菜菜哥,我最近需要做一个项目,老大让我用微服务的方式来做那挺好呀,微服务现在的确很流行我以前在别的公司都是以SOA的方式,SOA也是面向服务的方式呀的确,微服务和SOA有相同之处面向服务的架构(SOA&#xf…

xorg.conf变更导致开机无法显示

不小心修改了ubuntu的/etc/X11中的xorg.conf文件导致开机无法显示, 于是尝试采用vim从开机界面修改回来: 安装vim: apt-get 编辑方法:先cd到路径下,ls -a列出目录下所有文件, 然后vi xorg.conf开始修改文件&#…

面对万物互联的智能世界,你是否也想分一杯羹

第六届世界互联网大会于10月20日至22日在浙江乌镇顺利举行。作为世界互联网大会“13”架构的重要组成部分,“互联网之光”博览会以“智能互联网、开放合作——携手共建网络空间命运共同体”为主题,集中展示了全球范围内的互联网新技术、新成果、新产品、…

All CUDA devices are used for display and cannot be used while debugging.

Fatal: All CUDA devices are used for display and cannot be used while debugging. (error codCUDBG_ERROR_ALL_DEVICES_WATCHDOGGED)(0x18) 问题解释:http://stackoverflow.com/questions/4025620/how-do-i-debug-a-cuda-library-with-only-1-graphics-card-ru…

你必须知道的容器监控 (2) cAdvisor

# 实验环境:阿里云ECS主机(两台),CentOS 7.401—cAdvisor简介为了解决容器的监控问题,Google开发了一款容器监控工具cAdvisor(Container Advisor),它为容器用户提供了对其运行容器的…

代码阅读

http://alanse7en.github.io/caffedai-ma-jie-xi-4/ 三. 从一个比较宏观的层面上去了解caffe怎么去完成一些初始化的工作和使用Solver的接口函数,本文将主要分为四部分的内容: Google Flags的使用Register Brew Function的宏的定义和使用train()函数的…

动手造轮子:实现一个简单的依赖注入(一)

动手造轮子:实现一个简单的依赖注入(一)Intro在上一篇文章中主要介绍了一下要做的依赖注入的整体设计和大概编程体验,这篇文章要开始写代码了,开始实现自己的依赖注入框架。类图首先来温习一下上次提到的类图服务生命周期服务生命周期定义&am…

Qt 调试Caffe

http://blog.csdn.net/xg123321123/article/details/52817658 1.下载并安装Qt Creator 下载页面,推荐使用4.x版本,比如: Qt Creator 4.1.0 for Linux 64-bit下载的是run包,安装方法: cd到下载目录 chmod x xxx.run …

.NET Core 3.0 本地工具

.NET Core从最早期的版本就开始支持全局工具了。如果仅仅需要在某个项目中或某个文件夹中使用特定的工具,那么.NET Core 3.0就允许您这样做。 使用.NET Core 3.0,您可以在特定的文件夹下安装“本地”工具,它的作用范围仅限于该文件夹及其子文…