在matlab中如何将大小不同的1360张图片转为一个1360*1360*3的矩阵mat文件
时间: 2023-06-25 09:05:21 浏览: 97
matlab高效率将各种格式图片转化为mat文件
4星 · 用户满意度95%
可以按照以下步骤实现:
1. 定义一个1360*1360*3的矩阵A,用来存储所有图片数据。
2. 使用imread函数读取每张图片,将其转换为大小为1360*1360*3的矩阵B,并将B矩阵的数据存储到A矩阵中对应的位置。
3. 循环执行步骤2,直到所有图片数据都存储到A矩阵中。
4. 将A矩阵保存为mat文件。
下面是一个示例代码:
```matlab
% 定义矩阵A
A = zeros(1360,1360,3);
% 循环读取每张图片
for i = 1:1360
% 读取图片
img = imread(sprintf('image_%04d.jpg', i));
% 调整大小为1360*1360*3
img_resized = imresize(img, [1360, 1360]);
% 将图片数据存入矩阵A中
A(:,:,1) = img_resized(:,:,1);
A(:,:,2) = img_resized(:,:,2);
A(:,:,3) = img_resized(:,:,3);
end
% 保存矩阵A为mat文件
save('images.mat', 'A');
```
其中`image_%04d.jpg`是图片的命名格式,`%04d`表示用4位数字来表示图片编号,并且不足4位的数字会在前面补0。如果图片命名格式不同,需要相应地修改代码。
阅读全文