gpt4 book ai didi

python - 如何使用 GDAL 更改栅格的地理变换?

转载 作者:太空宇宙 更新时间:2023-11-04 06:24:03 25 4
gpt4 key购买 nike

我正在尝试使用 GDAL 设置我按照 GDAL API Tutorial 中概述的步骤创建的新栅格的地理变换.

# create the new dataset
driver = gdal.GetDriverByName('GTiff')
dataset = driver.Create('test_gt.tif', 60, 60, 1, gdal.GDT_Float32)

# check the default geotransform
print dataset.GetGeoTransform() # prints (0, 1, 0, 0, 0, 1)

# try to alter the geotransform and ensure that it has been set
dataset.SetGeoTransform([0,1,0,0,0,-1])
print dataset.GetGeoTransform() # prints (0, 1, 0, 0, 0, -1)

dataset = None # closes the dataset

# Try reopening the dataset now and see if the geotransform has been set.
ds = gdal.Open('test_gt.tif')
print ds.GetGeoTransform() #prints (0, 1, 0, 0, 0, 1)

数据集.SetGeoTransform() documentation说这应该设置仿射变换系数(根据 dataset.GetGeoTransform() 文档设置为 [0, 1, 0, 0, 0, 1] 默认情况下),但是正如您从我上面的代码中看到的那样,当我尝试更改它们时,这些更改似乎并没有真正生效。

我什至尝试通过 dataset.FlushCache() 将新栅格的缓存刷新到磁盘,但这似乎也没有保存更改。

我怎样才能让 GDAL 将更改后的地理变换实际保存到磁盘?

我使用的是从 PyPI 安装的 GDAL 版本 1.6.3(通过命令行工具 pip)。

最佳答案

原来这个问题是版本相关的。我升级到 GDAL 版本 1.8.0,现在地理变换设置正确。

关于python - 如何使用 GDAL 更改栅格的地理变换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9726637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com