0
点赞
收藏
分享

微信扫一扫

Matlab 将文件夹下的所有图片生成.mat文件

一天清晨 2022-03-11 阅读 91

深度学习,要输入数据集的.mat文件,但是所公布的数据集全是图片,需要自己将其转换为.mat,找了几个方法融合了一下,特此记录,方便以后使用。

数据集:CAVE,32个光谱场景,每个场景31个通道,尺寸512*512*31

每个文件夹内的图片按照顺序排列,以fake_and_real_strawberries_ms数据集为例:

 最终得到了每个文件夹的.mat文件

% %%针对图片名为连续标号的Matlab程序
file_path = 'E:\Users\Li\Desktop\keti\dataset\complete_ms_data\fake_and_real_strawberries_ms\fake_and_real_strawberries_ms\';%图片路径可以根据自己需要修改;  
pic = '*png';%图片格式,根据自己的图片格式进行修改;  
filename='fake_and_real_strawberries_ms_'; %根据自己的图片名称设定
Datalist = dir(strcat(file_path,pic));%获取该文件夹中所有jpg格式的信息

for i = 1 : length(Datalist)
    x(:,:,i) = imread([file_path,filename,num2str(i),'.png'])  %获得文件夹中的每一幅图片
    
    %由于我的数据输入进来格式是uint16,需要改成double型
    
    imagD = double(x(:,:,i));  
    m = max(imagD(:)) ; n = min(imagD(:)) ;
    K = uint8((imagD-n)*255/(m-n));
    orig(:,:,i) = double(K)/255

end
save(['E:\Users\Li\Desktop\keti\dataset\complete_ms_data\fake_and_real_strawberries_ms\fake_and_real_strawberries_ms\',filename,'.mat'],'orig') %保存到指定路径

这个方法适用于单个文件夹,我是手动改每个文件夹路径得到每个数据集的mat文件的哈哈哈,虽然方法有点笨,但是得到mat文件我已经很满足了...

参考链接:(23条消息) 利用Matlab将多张图片转换成mat文件_nliang-CSDN博客_mat文件转换成图像

MATLAB实例:将批量的图片保存为.mat文件 - 凯鲁嘎吉 - 博客园 (cnblogs.com)

举报

相关推荐

0 条评论