GDAL 地理变换参数 计算像素地理坐标

地理变换参数

地理变换参数的含义如下:

  1. adfGeoTransform[0]:左上角的 X 坐标,即图像左上角像素的地理坐标的 X 坐标值。
  2. adfGeoTransform[1]:图像的水平分辨率,即每个像素在 X 方向上的实际宽度。
  3. adfGeoTransform[2]:X 方向上的旋转角度,通常为 0,即图像平行于 X 轴。
  4. adfGeoTransform[3]:左上角的 Y 坐标,即图像左上角像素的地理坐标的 Y 坐标值。
  5. adfGeoTransform[4]:Y 方向上的旋转角度,通常为 0,即图像平行于 Y 轴。
  6. adfGeoTransform[5]:图像的垂直分辨率,即每个像素在 Y 方向上的实际高度,通常为负数,表示 Y 轴坐标值的减小方向是从上到下。

其中,前两个参数(左上角的 X 坐标和图像的水平分辨率)用于计算像素的地理坐标的 X 坐标值,后两个参数(左上角的 Y 坐标和图像的垂直分辨率)用于计算像素的地理坐标的 Y 坐标值,中间两个参数(X 方向上的旋转角度和 Y 方向上的旋转角度)通常为 0,表示图像没有旋转

公式

像素/线 (X,Y) 栅格空间和投影坐标 (Xp,Yp) 

Xp = padfTransform[0] + X*padfTransform[1] + Y*padfTransform[2];
Yp = padfTransform[3] + X*padfTransform[4] + Y*padfTransform[5];

举例

假设我们有一个大小为 512x512 像素的遥感图像,它的左上角像素的地理坐标为 (100, 50),每个像素在水平方向和垂直方向上的实际宽度和高度分别为 30 米和 -30 米。那么,根据上述的地理变换参数的定义,我们可以将这些参数存储到一个大小为 6 的数组 adfGeoTransform 中,代码如下:

double adfGeoTransform[6];
adfGeoTransform[0] = 100.0;   // 左上角的 X 坐标
adfGeoTransform[1] = 30.0;    // 图像的水平分辨率
adfGeoTransform[2] = 0.0;     // X 方向上的旋转角度
adfGeoTransform[3] = 50.0;    // 左上角的 Y 坐标
adfGeoTransform[4] = 0.0;     // Y 方向上的旋转角度
adfGeoTransform[5] = -30.0;   // 图像的垂直分辨率

现在,假设我们想要计算像素坐标为 (256, 256) 的像素的地理坐标,可以按照以下步骤进行计算:

  1. 计算像素的地理坐标的 X 坐标值:

    Xgeo = adfGeoTransform[0] + 256 * adfGeoTransform[1] + 256 * adfGeoTransform[2]

    = 100.0 + 256 * 30.0 + 256 * 0。

    = 7840。

  2. 计算像素的地理坐标的 Y 坐标值:

    Ygeo = adfGeoTransform[3] + 256 * adfGeoTransform[4] + 256 * adfGeoTransform

    = 50.0 + 256 * 0.0 + 256 * (-30.0)

    = -7670。

因此,像素坐标为 (256, 256) 的像素的地理坐标为 (7840.0, -7670.0)

结论

通过 GetGeoTransform 函数返回的六个参数可以确定像素坐标系和地理坐标系之间的转换关系,从而可以将像素坐标系中的任意一个像素位置转换为地理坐标系中的对应位置。在这个过程中,左上角的真实地理坐标起到了基础性的作用,因为它确定了像素坐标系和地理坐标系的起始位置。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

场主不吃鍋巴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值