图片与mat文件的转换

图片与mat文件的转换

使用Matlab对图片进行操作时,大量的单张图片不利于操作,此时需要将图片转化为.mat格式,.mat方便我们对数据的处理,使我们更加高效的利用数据。实验中每张图片的名称是连续的数字,相同类别的图片张数相等且名称连续。因此,对于图片的处理大致分为两类同一类型多张图片的转换和不同类型多张图片的转换,详细代码如下所示。

1、相同类型的多张图片的转换

1. matlab代码:

close all;
clc;clear all;
num = 17;
for i = 1:num
    Img = imread(sprintf('D:\\matlab_text\\text1\\photo1\\horse\\horse%03d.jpg',i));
    eval(sprintf('Img%d = Img;',i));
end
str = 'save horse_data.mat Img';
for i = 1:num
    str = sprintf('%s Img%d',str,i);
end
eval(str);

2. 数据:彩色图片

3. 结果:在这里插入图片描述

2、不同类型的多张图片的转换

1. matlab代码

clc; clear all;
filename='test';
% filename='9757';
Datalist=dir(['D:\matlab_text\text1\photo2\',filename,'\*']);
Datalist=Datalist(3:end);
Len =length(Datalist);
for i = 1 : Len
%     NRD(:,:,i) = imread(sprintf(['D:\\matlab_text\\text1\\photo2\\',filename,'\\',filename,'_%d.jpg'], i));
    NRD(:,:,i) = imread(sprintf(['D:\\matlab_text\\text1\\photo2\\',filename,'\\','%d.jpg'], i));
end
% for i = 1 : length(Datalist)
%     NRD(:,:,i) = (NRD(:,:,i)~=0);
% end
% NRD=uint8(NRD);
save(['D:\',filename,'.mat'],'NRD') %保存到指定路径
save(['D:\matlab_text\text1\photo2\',filename,'.mat'],'NRD') %保存到当前路径

2. 数据:大小一致的灰度图像
3. 结果: 在这里插入图片描述

3、参考文献

将批量图片转换成mat文件
https://www.cnblogs.com/kailugaji/p/11801649.html

4、数据下载

horse
test
9757

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值