2012-03-15 4 views
1

GDAL API Tutorialに記載されている手順に従って作成した新しいラスタのジオトランスフォームをGDALで設定しようとしています。GDALでラスタのジオトランスフォームを変更するにはどうすればよいですか?

# 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) 

dataset.SetGeoTransform()documentationが、これは(dataset.GetGeoTransform()マニュアルに従って、デフォルトで[0, 1, 0, 0, 0, 1]に設定されている、)アフィン変換係数を設定する必要がありますが、あなたは私の上記のコードから見ることができるようにすることを言います私がそれらを変更しようとすると、実際には変更が反映されないようです。

新しいラスタのキャッシュをディスクにフラッシュすることさえしようとしましたが、dataset.FlushCache()でも、これは変更を保存していないようです。

GDALに実際に変更されたジオトランスフォームをディスクに保存させるにはどうすればよいですか?

私はPyPIからインストールされたGDALバージョン1.6.3を使用しています(コマンドラインツールpip経由)。

答えて

0

この問題はバージョン固有であることが判明しました。 GDALバージョン1.8.0にアップグレードしました。ジオトランスフォームが正しく設定されました。

関連する問題