(Arcgis)matlab编程批量处理hdf4格式转换为tif格式 |
您所在的位置:网站首页 › arcgis图片转tif › (Arcgis)matlab编程批量处理hdf4格式转换为tif格式 |
国家青藏高原科学数据中心 中国区域1km无缝地表温度数据集(2002-2020) 此代码仅用于该数据集处理 matlab编程批量处理hdf4格式转换为tif格式,并提取选定的一个子集 版本:arcgis10.2 matlab2020 参考:MATLAB hdf(h5)文件转成tif图片格式(+批量处理) 一、遇到问题hdf格式,说明文档里面有写空间位置。但是打开后没有设置投影信息,在arcgis里打开显示的范围特别大,影像是旋转过的还镜像的。定义投影后还是没有同矢量数据重叠,不知道要怎么处理 注意文件名不能和变量名相同,否则会报错 clc % 清除命令窗口内容 clear % 清除工作空间变量 close all % 关闭所有图形窗口 % 输入文件夹和输出文件夹路径 input_folder = 'C:\Users\53446\Desktop\1\hdf'; % 输入文件夹路径 output_folder = 'C:\Users\53446\Desktop\1\tif'; % 输出文件夹路径 % 获取输入文件夹下所有文件的信息 files = dir(fullfile(input_folder, '*.hdf')); % 获取输入文件夹下所有.hdf文件的信息 % 遍历每个文件并执行操作 for i = 1:length(files) % 读取数据 filename = fullfile(input_folder, files(i).name); % 构建完整的输入文件路径 data = hdfread(filename, '/Lst'); % 从.hdf文件中读取/Lst数据集 data = permute(data,[2,1]); % 转置数据,此数据集需要 data = flipud(data); % 上下翻转数据,此数据集需要 % 创建空间参考对象 R = georasterref('RasterSize', size(data), 'Latlim', [double(18.33) double(53.49)], 'Lonlim', [double(73.55) double(134.99)]); % 创建一个空间参考对象,指定了栅格大小和经纬度范围 % 写入输出文件 output_filename = fullfile(output_folder, [files(i).name, '.tif']); % 构建完整的输出文件路径 geotiffwrite(output_filename, data, R); % 将数据和空间参考对象写入输出文件 end三、arcgis打开 成功! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |