Raster verschoben

Antworten
HaMyr
Beiträge: 3
Registriert: Mo 20. Sep 2021, 20:58

Hallo zusammen,

ich habe bei der Erstellung der Ertragspotentialkarte das Problem, dass die Raster nicht perfekt übereinanderliegen.
Beispiel: Bild 1 ist der NDVI aus 2018 und Bild 2 der aus 2019. Zur besseren Vergleichbarkeit habe ich noch die Schlaggrenzen hinzugefügt. Man erkennt, dass auf der linken und der oberen Seite in Bild 1 der Graben fast komplett innerhalb der Schlaggrenzen liegt, während er sich in Bild 2 an der richtigen Position befindet. Das Raster aus 2018 scheint also mindestens um 1 Pixel in die südöstliche Richtung verrutscht.

Bild
Bild

Um das zu beheben, habe ich bereits versucht die unbearbeiteten Satellitenbilder im Projekt-KBS abzuspeichern, bevor ich den NDVI berechne. Auch habe ich unterschiedliche Quellen und Prozessierungen versucht.
Meine Vermutung ist, dass mit dem KBS etwas nicht stimmt, wobei ich nicht weiß, wie ich das beheben könnte.
Ich habe die beiden NDVI-Raster(Nur den Schlag) auf Google Drive hochgeladen, falls jemand das Problem nachvollziehen möchte.

Ich bin mir sicher, dass mehrere dieses Problem haben und würde mich über einen Austausch dazu freuen.
Benutzeravatar
Antonia von FERN.Lern
Beiträge: 8
Registriert: Mi 5. Mai 2021, 19:45

Hallo HaMyr,

Generell scheint das ein Projektionsproblem zu sein. Ungünstig ist immer, die Rasterdaten umzuprojizieren. Versuch mal, das Projekt-KBS auf das KBS der Rasterdaten zu setzen, also WGS84 / UTM Zone 32 oder 33 für Deutschland, je nach dem (EPSG:32632 oder EPSG:32633). Die Information, welches KBS die Quelldaten haben, sieht man in QGIS in den Layereigenschaften unter Informationen > KBS. Danach lädst du deine Schlaggrenzen ein. Ist die Verschiebung immer noch da? Dann reprojiziere die Schlaggrenzen in das Projekt-KBS (also wieder das der Rasterdaten).
QGIS-Werkzeug "Layer reprojizieren" oder das GRASS-Werkzeug "v.proj", beide zu finden im Bedienfeld "Verarbeitungswerkzeuge".

Falls das alles nicht hilft, würde ich versuchen, dein Problem in QGIS nachzuvollziehen, dazu bräuchte ich dann noch mehr Informationen:

- Die Datenquelle, also woher du die Daten bekommen hast, bzw.: Hast du die Satellitendaten aus dem Übungsordner benutzt oder eigene?
- Die Produkt-ID der Sentineldatensätze bzw. den kompletten Dateinamen mit Datum, Uhrzeit, Satellit, Prozessierungslevel, etc.
- Am besten auch gleich deine Schlaggrenzen als Vektor, wobei das Problem ja vermutlich auch an allen anderen Stellen auftritt (falls du deine Schlaggrenzen nicht im Forum veröffentlichen möchtest, schick sie uns gerne an fernlern@gfz-potsdam.de)
HaMyr
Beiträge: 3
Registriert: Mo 20. Sep 2021, 20:58

Hallo Antonia,

vielen Dank für deine Antwort, leider besteht das Problem weiterhin.

Ich habe die Daten zuerst von Code-DE bezogen. Da die Verschiebung auftrat, habe ich das Gleiche mit dem EO Browser von Sentinel Hub ausprobiert.
Die Datensätze waren:
S2B_MSIL2A_20180420T103019_N0207_R108_T32UND_20180420T114307
S2B_MSIL2A_20190224T103019_N0211_R108_T32UND_20190224T145024
Die Schlaggrenze habe ich per Email gesendet, da .shp im Forum nicht als Dateien angehängt werden können.
Benutzeravatar
Antonia von FERN.Lern
Beiträge: 8
Registriert: Mi 5. Mai 2021, 19:45

Hallo HaMyr,

du hast recht, das hat mit der Projektion im GIS nichts zu tun. In der Aufnahme von 2018 gibt es überall einen Shift von 1 Pixel nach Süden. Ich habe mal etwas nachgeforscht und es ist wohl so, dass das das ein bekanntes Problem von Sentinel-2 Daten ist. Dazu aus dem S2 Technical Guide der ESA > Geometric Performance: "Absolute Lageunsicherheit: 20 m 2σ ohne GCPs und 12,5 m 2σ mit GCPs", d.h. genau diese Ungenauigkeit von 1-2 Pixeln.
Kleiner Trost: Sentinel-2 Produkte werden laufend verbessert. Laut dem aktuellen Data Quality Report beträgt der Lagefehler inzwischen nur noch einen halben Pixel (5,6 m für S2A und 5,4 m für S2B). Je aktueller also die Daten, desto besser die Lagegenauigkeit.

Um die Raster genau übereinander zu bekommen, muss man also wirklich selbst nachhelfen. Um einen Rasterlayer einfach zu verschieben, gibt es in ArcGIS im Toolset „Projektionen und Transformationen“ > „Toolset Raster“ das Werkzeug „Verschieben“. In QGIS habe ich nichts Vergleichbares gefunden. Raster > Georeferenzierung würde vielleicht noch gehen, schien mir aber umständlich. Bearbeiten der World-Datei geht bei GeoTIFF auch nicht einfach im Editor, also bleibt noch die Python-Konsole (Menü > Erweiterungen > Python-Konsole). Aber Achtung, diese Methode überschreibt die Koordinaten deiner Quelldatei. Zur Sicherheit solltest du eine Kopie der NDVI-Datei erstellen und diese dafür verwenden. Im Editor gibst du ein (Quelle):

Code: Alles auswählen

from osgeo import gdal

raster = gdal.Open('C:\\dein\\Pfad\\zur\\Rasterdatei.tif', 1)

gt = raster.GetGeoTransform()

gtl = list(gt)
#gtl[0] -= 10  # 10 m (1 Pixel) nach Westen verschieben
#gtl[0] += 10  # 10 m (1 Pixel) nach Osten verschieben
#gtl[3] -= 10  # 10 m (1 Pixel) nach Süden verschieben
gtl[3] += 10 # 10 m (1 Pixel) nach Norden verschieben

raster.SetGeoTransform(tuple(gtl))
raster = None 
Python-Konsole.png
Python-Konsole.png (66.82 KiB) 5382 mal betrachtet

und passt die Verschiebung entsprechend an. In diesem Beispiel habe ich das Raster um 1 Pixel nach Norden verschoben. Das # benutzt du zum Auskommentieren, alles was hinter einem # in derselben Zeile steht, wird nicht ausgeführt.
Du kannst auch die Meter-Angaben anpassen und z.B. nur um einen halben Pixel verschieben.

Dann startest du das Script mit Klick auf das grüne Dreieck oben. Wenn das erfolgreich war, erscheint in der Konsole:

Code: Alles auswählen

exec(open('C:/Users/anco/AppData/Local/Temp/tmp2cbds65q.py'.encode('utf-8')).read())
Zum Schluss lädst du das Raster neu in QGIS ein.

vorher_nachher.png
vorher_nachher.png (28.65 KiB) 5383 mal betrachtet
HaMyr
Beiträge: 3
Registriert: Mo 20. Sep 2021, 20:58

Hallo Antonia,

vielen Dank für deine sehr ausführliche Antwort! Der Weg über die Python-Konsole hat sehr gut funktioniert und das Problem ist gelöst.

Viele Grüße
Hannes
Antworten

Zurück zu „KONSAB Web-Seminar 3 - Erstellung einer Ertragspotenzialkarte“