当前位置:   article > 正文

Matalab将一文件夹下的多张单波段图像合成为一张高光谱tiff图像,以及转为mat格式_matlab将tif图像转化为mat文件 变量为宽度、高度、波段数

matlab将tif图像转化为mat文件 变量为宽度、高度、波段数

将一个文件夹下的多张单波段图像合成为一张高光谱tiff图像

记得确保文件夹下波段图像顺序正确

files = dir('C:\Users\lianl\*.tif');%所选文件夹,找到tif图像
path=['C:\Users\lianl\',files(1).name]

tiff_stack = imread(path);

for ii = 2 : size(files, 1)
    path=['C:\Users\lianl\',files(ii).name]
    temp_tiff = imread(path);
    tiff_stack = cat(3 , tiff_stack, temp_tiff);%堆叠tif图像的过程
end

t= Tiff('D:\data\result\pavia.tiff','w')
t.setTag('ImageLength', size(tiff_stack,1));
t.setTag('ImageWidth', size(tiff_stack,2));
t.setTag('Photometric', Tiff.Photometric.MinIsBlack);   %图像数据的颜色空间
t.setTag('BitsPerSample', 16);                       %数据位数
t.setTag('SamplesPerPixel', 103);       %pavia center是101波段
t.setTag('PlanarConfiguration', Tiff.PlanarConfiguration.Chunky);
t.setTag('Compression',Tiff.Compression.None);          %无压缩
t.setTag('SampleFormat',1);                            %像素样本格式

t.write(tiff_stack)
t.close;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

python将tiff高光谱图转为mat格式

import scipy.io as sio
import skimage.io

# tif图
imgpath = r'D:\data\result\pavia.tiff'
imggt = skimage.io.imread(imgpath)
# 转为mat
sio.savemat(r"D:\data\pavia_DASR_result.mat", {'SR': imggt})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/338631
推荐阅读
相关标签
  

闽ICP备14008679号