Matlab读取单波段tif影像,并显示所有数据和不重复数据

Matlab读取单波段tif影像,并显示所有数据和不重复数据

clear all
clc;
 
filepath='F:\PartJob\Kun_Yao\data\Nor\Nor.tif';    %%一维影像名称与路径
Info=imfinfo(filepath);                                      %%获取图片信息并判断是否为tif
 
tif='tif';
format=Info.Format;
if  (strcmp(format ,tif)==0)
    disp('载入的不是tif图像,请确认载入的数据');                %%确保载入的图像是tiff图像
end
                                         
Width=Info.Width;                                             %%获取影像宽度
Height=Info.Height;
Image=zeros(Height,Width);
 
Image(:,:)=imread(filepath);                                  %%读入影像
disp(Image)                                                   %%显示影像所有数据
d=unique(Image);                                              %%统计影像中不重复数据
disp(d)                                                       %%显示影像中不重复数据


在这里插入图片描述

要使用 MATLAB 中的 geotiffread、geotiffinfo 和 geotiffwrite 函数,可以按照以下步骤提取并输出多波段 TIF 文件遥感影像中的每一个波段影像: 1. 使用 geotiffinfo 函数获取 TIF 文件的元数据信息,例如图像大小、坐标系统、像元大小等。例如,假设你的多波段 TIF 文件名为 "image.tif",可以使用以下命令获取元数据信息: ``` info = geotiffinfo('image.tif'); ``` 2. 使用 geotiffread 函数读取波段 TIF 文件的数据。geotiffread 函数返回一个 M-by-N-by-B 数组,其中 M 和 N 是图像的行和列数,B 是波段数。例如,可以使用以下命令读取波段 TIF 文件的第一个波段: ``` data = geotiffread('image.tif', 1); ``` 如果要读取所有波段,可以使用以下命令: ``` data = geotiffread('image.tif'); ``` 3. 使用 geotiffwrite 函数将每个波段影像输出为独的 TIF 文件。geotiffwrite 函数需要指定输出文件名、影像数据、元数据信息和影像格式。例如,可以使用以下命令将第一个波段影像输出为 "band1.tif" 文件: ``` geotiffwrite('band1.tif', data(:,:,1), info, 'GeoKeyDirectoryTag', info.GeoTIFFTags.GeoKeyDirectoryTag); ``` 同样,如果要将所有波段影像输出为独的文件,可以使用一个循环来逐个输出每个波段。 注意:在使用 geotiffwrite 函数输出 TIF 文件时,需要将元数据信息中的 "GeoKeyDirectoryTag" 字段作为参数传递给 geotiffwrite 函数,以保证输出文件与原始文件具有相同的坐标系统和像元大小。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值