【技巧】matlab批量读取tif数据并导出

您所在的位置:网站首页 matlab将数据导出到指定路径的位置 【技巧】matlab批量读取tif数据并导出

【技巧】matlab批量读取tif数据并导出

2023-07-27 17:08| 来源: 网络整理| 查看: 265

*matlab是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室),具有数值分析、矩阵计算、科学数据可视化的强大功能。tif格式数据本质上就是带有地理信息的矩阵数据,因此,matlab处理tif数据有着得天独厚的优势。 下面介绍matlab如何读取单个tif数据、批量读取有命名规律的多个tif数据、批量读取无命名规律的多个tif数据并导出

数据准备(这一步很重要,要确保数据和路径准确): 首先创建一个文件夹(在哪里创建都可以),命名为数据处理(取其他名字也可以) 在这里插入图片描述

然后在数据处理文件夹内再创建一个文件夹——A1_CCI_China_lucc将原始栅格数据放进该文件夹内,再创建一个matlab的程序文件(在matlab中),命名为code: 在这里插入图片描述 文件夹和代码的命名都只是为了和下面代码中的命名对应上,在实际操作中大家可以根据自己的需求命名,只要保证和代码中的名字对应上就行

1.基本代码 (单个tif):

clc; clear; samplename = 'A1_CCI_China_lucc/CCI_cn1992albers.tif'; %文件夹下tif数据的名称 [SS,R] = geotiffread(samplename); %SS为tif数据的信息,是一个二维数组,R是tif数据的地理信息 info = geotiffinfo(samplename); % 读取tif数据的地理信息,为后面导出为tif数据提供地理信息 [nrows,ncols] = size(SS); %读取SS的行列数 %导出为tif filename = ['A1_CCI_China_lucc/CCI_cn1992albers.tif']; %存储位置和名字 geotiffwrite(filename,SS, R, 'GeoKeyDirectoryTag', info.GeoTIFFTags.GeoKeyDirectoryTag); %导出

2.基本代码 (有命名规律的多个tif):

for year = 2000:2020 %一般以时间为规律,其他保持不变 [A,R] = geotiffread(['A1_CCI_China_lucc/CCI_cn',num2str(year),'albers.tif']); filename = ['A1_CCI_China_lucc/CCI_cn',num2str(year),'albers.tif']; %导出为tif geotiffwrite(filename,A, R, 'GeoKeyDirectoryTag', info.GeoTIFFTags.GeoKeyDirectoryTag); %分别导出 end

3.基本代码 (无命名规律的多个tif):

clc; clear; samplename = 'NDVI\ndvi2019001mod13a1c006r500m16days_msg.tif'; [D,R] = geotiffread(samplename); info = geotiffinfo(samplename); [rows,cols] = size(D); Path = 'NDVI\'; % 设置数据存放的文件夹路径 File = dir(strcat(Path,'*.tif')); % 显示文件夹下所有符合后缀名为.tif文件的完整信息 Tif_num =length(File); % 获取所提取数据文件的个数 for k = 1 : Tif_num % 连接路径和文件名得到完整的文件路径 tif_name = File(k).name; [filepath,name,ext] = fileparts(tif_name); %获取文件名组成部分 filepath:文件路径名称;name:文件名;ext:扩展名 [data,R] = geotiffread(strcat(Path,tif_name)); filename = [] %按照原名导出为tif filename = ['NDVI\',name,'.tif']; geotiffwrite(filename,data, R, 'GeoKeyDirectoryTag', info.GeoTIFFTags.GeoKeyDirectoryTag); end

创作不易,觉得有用的话还请顺手点个赞。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3