matlab实现一次性实现多个文件夹图片转化为.mat文件
%这里是主函数:命名为readImg.m;
clc;clear;
%---read_image;
filepath = 'G:\人脸重建\data\src_all\';%图片路径可以根据自己需要修改;
pic = '*jpg';%图片格式,根据自己的图片格式进行修改;
database = build_database_src(filepath,pic);
%build_database_src.m子函数;
function database = build_database_src(rt_data_dir,suffix)
fprintf('dir the database');
subfolders = dir(rt_data_dir);
database = []; database.imnum = ;
database.cname = {};
database.label = [];
database.path = [];
database.nclass = ;
label = ; k = ;
src_x = [];
src_y = []; for ii = : length(subfolders)
subname = subfolders(ii).name; if ~strcmp(subname,'.') & ~strcmp(subname,'..') database.nclass = database.nclass + ;
database.cname{database.nclass} = subname; frames = dir(fullfile(rt_data_dir,subname,suffix));
c_num = length(frames); database.imnum = database.imnum + c_num;
database.label = [database.label;ones(c_num,) * database.nclass]; label = numel(database.cname); for jj = : c_num
fprintf('folder : %d , num : %d \n',ii - ,jj); kk1 = frames(jj).name;%显示具体图片名;
c_path = fullfile(rt_data_dir,subname,frames(jj).name);
database.path = [database.path,c_path];
img = imread(database.path);%读取图片;
im = imresize(img,[,]);%设置图片大小; if(length(size(im)) == )%如果是彩色图进行灰度化(根据个人需要);
gray = rgb2gray(im);
else
gray = im;
end gray = double(gray) / ;%对图片数据做归一化(根据个人需要);
database.path = []; src_x(:,:,k) = gray;%存储图像数据;
src_y(,k) = label;%给数据加标签;
k = k + ;
end
end end %保存转化好的.mat文件;
file = ['src_x.mat'];
save(file,'src_x','-mat');
file = ['src_y.mat'];
save(file,'src_y','-mat'); end
我的路径:G:\人脸重建\data\src_all。运行程序可以看到生成两个.mat文件。
参考:https://blog.csdn.net/yongjiankuang/article/details/72824081
matlab实现一次性实现多个文件夹图片转化为.mat文件的更多相关文章
- MATLAB读取一个文件夹下的多个子文件夹中的多个指定格式的文件
MATLAB需要读取一个文件夹下的多个子文件夹中的指定格式文件,这里以读取*.JPG格式的文件为例 1.首先确定包含多个子文件夹的总文件夹 maindir = 'C:\Temp Folder'; 2. ...
- matlab从文件夹名中获得该文件夹下所图像文件名
function [s,nameC]=get_FileNameFromFolderPath(path) % 函数调用:[s,nameC]=get_FileNameFromFolderPath(path ...
- matlab遍历文件制作自己的数据集 .mat文件
原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/9115788.html 看到深度学习里面的教学动不动就是拿MNIST数据集,或者是IMGPACK ...
- 用字符流实现每个文件夹中创建包含所有文件信息的readme.txt
package com.readme; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; i ...
- 在文件夹中 的指定类型文件中 查找字符串(CodeBlocks+GCC编译,控制台程序,仅能在Windows上运行)
说明: 程序使用 io.h 中的 _findfirst 和 _findnext 函数遍历文件夹,故而程序只能在 Windows 下使用. 程序遍历当前文件夹,对其中的文件夹执行递归遍历.同时检查遍历到 ...
- META-INF文件夹是干啥的,META-INF文件夹的作用, META-INF文件夹能删吗
今天有人问到 META-INF文件夹是干啥的,META-INF文件夹的作用, META-INF文件夹能删吗,还有项目的META-INF下面一般会有个MANIFEST.MF 文件,都是干啥的. 百度搜了 ...
- iOS-iOS 获取蓝色文件夹图片
Xcode创建的iOS项目内存在两种文件夹:Group(黄色, 伪文件夹) 和Folder(蓝色, 真文件夹): Group: Folder: Images.xcassets或Group文件夹内的PN ...
- android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件
简介 XStream 是一个开源项目,一套简单实用的类库,用于序列化对象与 XML 对象之间的相互转换. 将 XML 文件内容解析为一个对象或将一个对象序列化为 XML 文件. 1.下载工具 xstr ...
- Web 在线文件管理器学习笔记与总结(15)剪切文件夹 (16)删除文件夹
(15)剪切文件夹 ① 通过rename($oldname,$newname) 函数实现剪切文件夹的操作 ② 需要检测目标文件夹是否存在,如果存在还要检测目标目录中是否存在同名文件夹,如果不存在则剪切 ...
随机推荐
- 第十八篇:java操作Excel要处理和分辨的几个概念
工具:org.apache.poiExcel格式:.xls(03,存储量小些):.xlsx(07以上) 首先明确这点:给你一个装满数据的Excel,并不能保证每行都有数据,每一行并不能保证每个单元格都 ...
- idea 提交拉取代码,解决冲突
继上两篇文章,本篇重点.所用的都是项目实际操作 提交代码 新建文件提交代码 idea自动提醒你是否加入到本地缓存(点击add就是添加如果不添加提交不上去事后需要手动提交 ps:快捷键是ctrl+alt ...
- 面试系列25 dubbo的spi思想是什么
spi,简单来说,就是service provider interface,说白了是什么意思呢,比如你有个接口,现在这个接口有3个实现类,那么在系统运行的时候对这个接口到底选择哪个实现类呢?这就需要s ...
- opencv编译:opencv 3.4.1 编译 contrib模块,增加人脸识别
start cmake-gui select the opencv source code folder and the folder where binaries will be built (th ...
- python3 selenium 超时停止加载,并且捕捉异常, 进行下一步【亲测有效】
from selenium import webdriver import os import re class GetPage: def __init__(self, url_path): self ...
- html--浮动高度塌陷问题
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- mysql 多表join
两个表可以简单地写为 select a.,b. from a left join b on a.id =b.id; 三个以上 select a.,b. from a left join b on a. ...
- [转]Java四种线程池的使用
Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程.newFixe ...
- Java事件监听机制与观察者设计模式
一. Java事件监听机制 1. 事件监听三要素: 事件源,事件对象,事件监听器 2. 三要素之间的关系:事件源注册事件监听器后,当事件源上发生某个动作时,事件源就会调用事件监听的一个方法,并将事件对 ...
- php中date() 函数
实例 格式化本地日期和时间,并返回格式化的日期字符串: <?php // Prints the day echo date("l") . "<br>&q ...