Ich möchte ein Raster mit python
und georeferenzieren GDAL
. Mein aktueller Ansatz ist es, eine hässliche Liste von Bodenkontrollpunkten aufzurufen gdal_translate
und zu gdalwarp
verwenden os.system
. Ich würde wirklich gerne einen Weg finden, dies von Haus aus zu tun python
.
Dies ist der aktuelle Prozess, den ich verwende:
import os
os.system('gdal_translate -of GTiff -gcp 1251.92 414.538 -7.9164e+06 5.21094e+06 -gcp 865.827 107.699 -7.91651e+06 5.21104e+06 "inraster.tif" "outraster1.tif"')
os.system('gdalwarp -r bilinear -tps -co COMPRESS=NONE "outraster2.tif" "outraster3.tif"')
Es gibt eine frühere Frage und Antwort aus dem Jahr 2012, auf die gdal_translate
nach dem Import zugegriffen werden kann gdal
. Ich bin nicht sicher, ob es veraltet ist oder ob es falsch ist, aber wenn ich es ausführe, from osgeo import gdal
sehe ich es nicht gdal.gdal_translate
als Option.
Ich weiß nicht, ob es existiert, aber ich würde es lieben, wenn ich Raster auf pythonische Weise übersetzen und neu projizieren könnte. Zum Beispiel:
# translate
gcp_points = [(1251.92, 414.538), (-7.9164e+06, 5.21094e+06)]
gdal.gdal_translate(in_raster, gcp_points, out_raster1)
# warp
gdal.gdalwarp(out_raster1, out_raster2, 'bilinear', args*)
Ist ein solcher Ansatz möglich?