• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-13
  • 语言: Matlab
  • 标签: matlab  ENVI  .img  

资源简介

高光谱图像中,matlab利用multibandread函数读取ENVI .img文件,并以.mat文件存储数据,用于我们后面的图像处理。

资源截图

代码片段和文件信息

function data=read_ENVIimagefile (imgfilename)
if length(imgfilename) >=4
    switch strcmp(imgfilename(length(imgfilename)-3 : end)‘.img‘)
        case 0
            hdrfilename =strcat(imgfilename‘.hdr‘);
        case 1
            hdrfilename =strcat(imgfilename(1:(length(imgfilename)-4))‘.hdr‘);
    end
else
    hdrfilename =strcat(imgfilename‘.hdr‘);
end

fid =fopen(hdrfilename‘r‘)
info = fread(fid‘char=>char‘);
info =info‘;
fclose(fid);
a=strfind(info‘samples = ‘);
b=length(‘samples = ‘);
c=strfind(info‘lines‘);
samples =[];
for i =a+b:c-1
    samples = [samplesinfo(i)];
end
samples = str2num(samples);

a=strfind(info‘lines   = ‘);
b=length(‘lines   = ‘);
c=strfind(info‘bands‘);
lines=[];
for i=a+b:c-1
    lines=[linesinfo(i)];
end
lines =str2num(lines);

a=strfind(info‘bands   = ‘);
b=length(‘bands   = ‘);
c=strfind(info‘header offset‘);
bands=[];
for i=a+b:c-1
    bands=[bandsinfo(i)];
end
bands =str2num(bands);

a=strfind(info‘data type = ‘);
b=length(‘data type =

评论

共有 条评论