ENVI IDL:对于GEOTIFF结构体的说明

Tag标签-前言

其中最关键的只有两个标签Tag,一个是MODELPIXELSCALETAG,一个是MODELTIEPOINTTAG
至于ModelTransformationTag我没用过不了解,但是应该是关于仿射变换相关的,用于将像素坐标与地理/投影坐标进行转换的矩阵。

对于Geotiff结构体的使用,查看IDL文档:
https://www.nv5geospatialsoftware.com/docs/write_tiff.html#W_811389549_896481
https://www.nv5geospatialsoftware.com/docs/READ_TIFF.html#R_822202989_1237437
对于Tag和Key的理解,查看TIFF规范说明:
https://www.awaresystems.be/imaging/tiff/tifftags/search.html
ENVI IDL:对于GEOTIFF结构体的说明_第1张图片

MODELPIXELSCALETAG的含义

在IDL文档中,它传入三元素的Double数组:
ENVI IDL:对于GEOTIFF结构体的说明_第2张图片
数组形式为:[x_res, y_res, z_res]x_res表示X轴方向上的分辨率,一般指经度上的分辨率等;y_res表示Y轴方向上的分辨率,一般指纬度上的分辨率等;z_res表示Z轴上方向上的分辨率,一般指代高程上的分辨率等. 值得注意是,我们的栅格图像一般是二维的即包含行列数,因此对于x_res一般填入0即可
SO,如果影像形式如下:
ENVI IDL:对于GEOTIFF结构体的说明_第3张图片
那么传入给MODELPIXELSCALETAG的Double数组为:[0.2, 0.3, 0]

MODELTIEPOINTTAG的含义

传入6个元素的Double数组,对于六个元素的说明,原文如下:

Originally part of Intergraph’s GeoTIFF tags, but now used in interchangeable GeoTIFF files.
This tag is also known as ‘GeoreferenceTag’.
This tag stores raster->model tiepoint pairs in the order
ModelTiepointTag = (…,I,J,K, X,Y,Z…)
where (I,J,K) is the point at location (I,J) in raster space with pixel-value K, and (X,Y,Z) is a vector in model space. In most cases the model space is only two-dimensional, in which case both K and Z should be set to zero; this third dimension is provided in anticipation of future support for 3D digital elevation models and vertical coordinate systems.

有人这么解释的:在栅格图像中的(I, J, K)表示第I列第J行第K高的像素点,在model space(实际上指的就是地理坐标系或者投影坐标系)中的坐标是(X, Y, Z)(实际上就是(Lon, Lat, Elevation)),如果K和Z均不存在填入0即可。
但是我认为实际上没有说明清楚,因为像素点实际上存在大小的,第I列第J行的像素点在地理坐标系下的坐标是是(X, Y)(Lon, Lat),但是这个地理坐标指的是像素点的左上角位置还是中心位置呢?
应该这么解释(以二维为例):
栅格图像上的原点实际上指的最左上角点的位置:
ENVI IDL:对于GEOTIFF结构体的说明_第4张图片
所以这里I和J尽量不要理解为行和列,如果非要这么理解,那么你需要知道,它实际上指代的是第I行第J列(索引从0开始)的像素点的左上角点位置。

如何使用Geotiff结构体

这里不再详细解释,基本上通用:

    geo_info={$
        MODELPIXELSCALETAG: [10, 10, 0.0], $  ; 分辨率
        MODELTIEPOINTTAG: [0.0, 0.0, 0.0, 20, 20, 0.0], $  ; 角点信息
        GTMODELTYPEGEOKEY: 2, $  ; 设置为地理坐标系
        GTRASTERTYPEGEOKEY: 1, $  ; 像素的表示类型, 北上图像(North-Up)
        GEOGRAPHICTYPEGEOKEY: 4326, $  ; 地理坐标系为WGS84
        GEOGCITATIONGEOKEY: 'GCS_WGS_1984', $
        GEOGANGULARUNITSGEOKEY: 9102}  ; 单位为度

其他的Key和Tag很少使用,可以查看IDL文档和Geotiff说明了解。

你可能感兴趣的:(IDL,开发语言,经验分享)