Ich möchte eine GeoTIFF-Datei Pixel für Pixel in der Datenbank speichern. Ich muss Pixelwerte zusammen mit dem Lat / Lon dieses Pixels im GeoTIFF-Bild speichern. Ist das möglich?
geotiff-tiff
postgis-2.0
Nehaarora
quelle
quelle
Antworten:
Verwenden Sie im Allgemeinen die affinen Transformationsparameter , die für jedes Rasterdateiformat verfügbar sein sollten. Mit GDAL ist dies mit GetGeoTransform () oder der ST_GeoReference () -Funktion von PostGIS verfügbar . Nachdem man diese sechs Parameter gefunden hat, muss man nur noch bestimmen, um welche es sich handelt. Dann kann eine Funktion zur Transformation im linearen Raum erstellt werden.
ZB mit Python:
Wenn beispielsweise ein Pixel bei col = 10, row = 22 vorhanden ist, lauten die realen Koordinaten zur Pixelmitte:
Ähnliches kann für PostGIS mit ST_Affine () erstellt werden .
quelle
Dies kann etwas archaisch sein: Konvertieren Sie die Pixel in Punkte, fügen Sie Lat- und Long-Felder hinzu und füllen Sie sie mit Lat- und Long-Werten.
quelle
Die Weltdatei (.tfw), die einem GeoTIFF beiliegt, enthält:
quelle