matlab遍历文件制作自己的数据集 .mat文件

看到深度学习里面的教学动不动就是拿MNIST数据集,或者是IMGPACK数据集来教学,这些都是已经制作好的数据集,我们大家肯定都很疑惑怎么制作自己的数据集呢?

接下来我就自己制作了一个数据集,图片3600张,每张的高宽分别为240-320

获取根目录下所有子文件夹:

PathRoot = 'F:\process\finger_vein-master\db100';
list = dir(PathRoot);

获取在下一层的所有子文件夹,因为我们的数据很多时候都是不在一个文件夹,或者是在一个大文件夹中的很多小文件中,所以这时候就需要多重遍历,一层,一层的遍历下去,拿到我们想要的所有数据

  至于这里为什么是 3 开始?  这是因为dir()函数会将 文件夹的   . 和 .. 路径。

  估计你们不懂(dir()函数会将 文件夹的   . 和 .. 路径。)我这什么意思,简单。直接打印一下出来看看就知道了。  打印 list(1).name     list(2).name   打印完看看输出 你们就知道我的意思了

for i = 3:fileNums
    subList = dir([PathRoot '\' list(i).name]);
end

好了接下来把所有代码给出:

下面就是遍历一个F:\process\finger_vein-master\db100\098\left  这样的路径,数据都在db100 里面的每一个小文件夹(001-002-003)中的left  和 right 中

这里用matlab 三重遍历文件提取数据 

最后全部保存在 imgPack中

在用 save 的函数 将数据集保存成   .mat 文件

PathRoot = 'F:\process\finger_vein-master\db100';
num = 1;

list = dir(PathRoot);
fileNums = size(list);
imgPack = zeros(240,320,3600);
for i = 3:fileNums
    subList = dir([PathRoot '\' list(i).name]);
    for j =3:size(subList)
        lastList = dir([PathRoot '\' list(i).name '\' subList(j).name]);
        for k = 3:size(lastList)
            path = [PathRoot '\' list(i).name '\' subList(j).name '\' lastList(k).name];
            image = imread(path);
            grayImg = rgb2gray(image);
            imgPack(:,:,num) = grayImg;
            num = num + 1;    
        end
    end
end
save imgPack imgPack;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python中文社区

手把手教你用1行代码实现人脸识别

專 欄 ❈Kangvcar,Python爱好者,简书活跃作者,欢迎关注,打赏支持。❈ 环境要求: Ubuntu17.10 Python 2.7.14 环境...

1.7K10
来自专栏用户2442861的专栏

Caffe学习系列(12):训练和测试自己的图片

学习caffe的目的,不是简单的做几个练习,最终还是要用到自己的实际项目或科研中。因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试模型的整个...

1011
来自专栏君赏技术博客

原生支付 SDK 技术回顾

913
来自专栏AI研习社

Github 项目推荐 | 英特尔的深度学习扩展包 —— iDeep

iDeep 是英特尔的深度学习扩展包,用于收集加速深度学习操作(如卷积,解卷积,relu 等)的模块。iDeep 使用英特尔 MKL-DNN 作为加速引擎。

1262
来自专栏Deep learning进阶路

caffe随记(八)---使用caffe训练FCN的pascalcontext-fcn32s模型(pascal-context数据集)

本篇讨论利用caffe进行FCN训练(采用的是pascal-context数据集) 1、下载FCN的框架 https://github.com/shelham...

4740
来自专栏李蔚蓬的专栏

第13周Python学习周记

1043
来自专栏debugeeker的专栏

《coredump问题原理探究》windows版8.5节堆布局空闲堆块遍历

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xuzhina/article/detai...

521
来自专栏desperate633

第九课 汇总数据聚集函数聚集不同的值

792
来自专栏Deep learning进阶路

caffe随记(六)---tools工具举例

经过前面几篇博文的介绍,我们已经对caffe有了个大概的了解,知道它的数据结构,而且也尝试了caffe的Hello World---mnist例程。 前一篇博文...

2130
来自专栏Hadoop实操

Hadoop之上的模型部署 - CDSW1.4新功能模块

CDSW1.4提供了一个新的模型模块,可以让数据科学家通过REST API的方式来构建,部署和管理模型,从而提供预测。如下图所示,这个功能可以帮助数据科学家实现...

1122

扫码关注云+社区