MATLAB TIFF转Shape、TIFF和Shape的读写

本文介绍了如何使用MATLAB进行地理TIFF文件的读取和写入,以及将TIFF转换为Shapefile。通过geotiffread和geotiffwrite函数处理TIFF,shaperead和shapewrite函数处理Shapefile。同时提供了从TIFF到Shapefile的具体转换步骤,包括像素定位、坐标转换和数据结构转换。
摘要由CSDN通过智能技术生成
  • 读TIFF

[A,R] = geotiffread(‘Filename.tif’);
info = geotiffinfo(‘Filename.tif’);

  • 写TIFF

geotiffwrite(‘Filename’,A,R,‘GeoKeyDirectoryTag’,info.GeoTIFFTags.GeoKeyDirectoryTag)

  • 读Shape

A = shaperead(‘Filename.shp’);

  • 写Shape

shapewrite(Map,‘Filename’); % 这里的Map为结构体,且需带有数据类型(点线面)
% 若要将数组A写为Shape
A = num2cell(A);
fields = {‘X’,‘Y’,‘Z’};
A = cell2struct(A,fields,dim); % fields为N×1时,dim=1;当fields为1×M时,dim=2
[A.Geometry] = deal(‘Point’); % 以点为例
shapewrite(A,‘Filename’);

  • Tiff2Shp

[A,R,~] = geotiffread(‘Filename.tif’);
[I,J] = ind2sub(size(A),find(A>0)); % pixel value >0
Map_XY 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值