自留tiff格式下文件操作代码
clc;clear all
%查看文件信息
info = geotiffinfo('C:\Users\李\Desktop\tif用于操作\result.tif');
%读取四维tiff文件方法;三维就直接imread;
im1 = imread('C:\Users\李\Desktop\tif用于操作\result.tif');
img_std1=im1(:,:,1:3); % 读取使用CMYK颜色空间的.tif文件的rgb数据,理论上cmyk是四个通道,只读前三个通道,即青品黄三个数值显然是不能直接等效于rgb的,但先将就用吧
figure
imshow(img_std1)
%读取经纬度
info = geotiffinfo('C:\Users\李\Desktop\tif用于操作\dsm84.tif');
i = 1;
j = 1;
[x,y] = pix2map(info.RefMatrix,i, j);
%%%%%%%%读取dsm高度
dsm=imread('C:\Users\李\Desktop\tif用于操作\dsm84.tif');
figure
imshow(dsm/100);
hold on;
plot(10000,7000,'*');
% 加载DSM文件
% 假设DSM文件名为 'example.tif'
filename = 'C:\Users\李\Desktop\tif用于操作\dsm84.tif';
% 读取DSM文件
info = geotiffinfo(filename);
[I, R] = geotiffread(filename);
% 假设我们想获取第50行、第100列的像素高程信息
row = 10000; %y
col = 7000; %x
% 确保所选行和列在数据范围内
% 获取特定像素的高程信息
elevation = I(row, col);
%图像剪切加保存
cc = imcrop(img_std1,[7000 0 10000 10000]);
figure
imshow(cc)
imwrite(cc,'C:\Users\李\Desktop\tif用于操作\outtest.tif')