怎样把matlab生成的矩阵转换为ENVI可以读入的图像

来源:百度知道 编辑:UC知道 时间:2024/06/17 22:04:25
我用matlab计算得到了一个矩阵,想用envi打开成灰度图像并进行密度分割,需要经过什么步骤才能读入到ENVI中。

function write_envi(input_data,filename,geo)
%保存ENVI文件(.img和.hdr)到内存
%输入
%input_data,图像立方体
%filename,路径加文件名,无扩展名
%geo,地理信息
%
file_img=[filename,'.img'];
file_hdr=[filename,'.hdr'];
%分析文件的行、列、层 及 数据格式
[samples,lines,bands] = size(input_data);
input_data_class = class(input_data);
%写出数据文件
file_img_id = fopen(file_img,'wb');
%output_data = permute(input_data,[2,1,3]);
fwrite(file_img_id,input_data,input_data_class);
fclose(file_img_id);
%写出头文件
switch input_data_class %数据格式
case 'int16'
input_data_class_num = 2;
case 'int32'
input_data_class_num = 3;
case 'single'
input_data_class_num = 4;
case 'double'
input_data_class_num = 5;
case 'Uint16'