Wie kann ich Werte aus einem Raster nach Punkten extrahieren?
Ich bevorzuge nicht in Arcgis.
Ich bevorzuge in Qgis oder Mapwindow oder anderen Open Source Gis.
raster
point
open-source-gis
Vassilis
quelle
quelle
Antworten:
QGIS "Point Sampling Tool" sollte das gesuchte Plugin sein.
Hier finden Sie eine detaillierte Beschreibung der Verwendung: http://pvanb.wordpress.com/2010/02/15/sampling-raster-values-at-point-locations-in-qgis/
Update basierend auf Paolos Kommentar:
Das Plugin ist nicht die einzige und nicht immer die einfachste Lösung. Eine alternative Lösung ist die Saga-Funktion 'Rasterwerte zum Punkt hinzufügen' in der Verarbeitungs-Toolbox. Weitere Informationen finden Sie unter http://pvanb.wordpress.com/2014/07/01/sampling-raster-values-at-point-locations-in-qgis-an-update/
quelle
In PostGIS 2.0 können Sie:
Stellen Sie sicher, dass Ihr Raster beim Laden sehr klein gekachelt ist (-t 10x10 mit dem Lader).
quelle
Versuchen Sie es mit QGIS 3.2.2 und SAGA (standardmäßig in QGIS installiert): Die Funktion "Rasterwerte in Punkte" erledigt alles für Sie: Sie nimmt eine Bilddatei und konvertiert sie in eine Punktvektorform, wobei die Informationen aus dem Rasterbild übernommen werden.
quelle
Ich hatte Probleme mit den in diesem Thread erwähnten QGIS- und SAGA-GUI-Tools (
Raster values to points
aus irgendeinem Grund ist dies fehlgeschlagen und es wurden nicht hilfreiche Fehler ausgegeben, und GRASSv.sample
hat eine völlig neue Ebene erstellt, die nicht hilfreich war). Nachdem ich einige Zeit mit den GUI-Tools gescheitert war, versuchte ich dies im Feldrechner. Es hat ganz gut funktioniert und ich konnte den Prozess ein wenig besser steuern, als es die GUIs zulassen, und einige andere Berechnungen auf dem Weg machen.Angenommen, Sie haben einen Layer mit dem Namen
pts
und einen anderen mit dem Namenrast
, beide im selben Koordinatensystem. Sie möchtenrast
bei jedem in dargestellten X, Y-Paar eine Stichprobe machenpts
.Wenn Sie den Feldrechner noch nicht benutzt haben, ist es ziemlich einfach. Sie geben Ihre Berechnung in das Feld "Ausdruck" ein, und Q gibt Ihnen in der mittleren Spalte eine Reihe von Variablen und Operationen mit Hilfetext in der rechten Spalte an. Ich werde diesen Prozess in vier Schritte unterteilen:
Öffnen Sie die Attributtabelle des
pts
Layers, mit dem Sie ein Sample erstellen möchten.Wählen Sie im Dialogfeld "Feldberechnung" aus, ob Sie ein neues Feld erstellen oder ein vorhandenes Feld in Ihrem
pts
Layer ändern möchten .Erstellen Sie als Nächstes einen Ausdruck, um die neue oder vorhandene
pts
Attributspalte zu füllen . Sie könnten damit beginnen, den für mich funktionierenden Ausdruckscode zu ändern:raster_value()
einen Rasterebenennamen'rast'
, eine Bandnummer1
und die Punktgeometrie unter angebenmake_point()
.$x
und$y
sind Geometrievariablen, die von der Position des Punkts in jeder Zeile der Attributtabelle abhängen.Diese Methode ermöglicht auch arithmetische Operationen wie das Subtrahieren des Werts einer anderen aufgerufenen
other_rast
Rasterebenerast
, was mir gegenüber den GUI-Tools einige Zeit erspart hat. Beispiel unten:Man beachte erneut , dass die drei Lagen
pts
,rast
undother_rast
müssen für diese Methode funktioniert in demselben Koordinatensystem sein.quelle
Die GME-Tools von Hawthorne Beyer erledigen dies problemlos über die Befehlszeile und ermöglichen ein einfaches Batching mit For-Schleifen.
isectpntrst(in="path/to/shapefile", raster="path/to/raster", field="fieldname")
GME isectpntrst Befehlsreferenz
quelle
In GRASS GIS können Sie entweder die Karte in der GUI abfragen oder http://grass.osgeo.org/gdp/html_grass64/r.what.html verwenden
quelle
http://gis-techniques.blogspot.com/2012/10/extract-raster-values-from-points.html enthält eine schrittweise Anleitung zur Verwendung des R-Raster-Pakets zum Extrahieren von Rasterwerten aus Punkten.
quelle
Sie können dies verwenden: http://www.saga-gis.org/saga_module_doc/2.1.3/shapes_grid_3.html
Es ist in der SAGA Toolbox von Qgis! Es macht alles in einem Schritt :)
quelle
Hier ist eine Funktion, die ich mit Python und GDAL geschrieben habe. Die Funktion erstellt eine Liste von Rastern und einen Pandas-Datenrahmen mit den Punktkoordinaten und gibt einen Pandas-Datenrahmen mit den Punktkoordinaten, den Schwerpunkten für die jeweiligen Rasterzellen und den jeweiligen Zellenwerten zurück. Die Funktion ist Teil des in Entwicklung befindlichen Pakets Chorospy ( hier zu finden ).
Beispiel für die Ausführung unter der Voraussetzung, dass sich die Raster in Ihrem aktuellen Arbeitsverzeichnis befinden:
quelle
Wenn Sie Zugriff auf FME haben , können Sie einen von zwei Transformatoren in FME Workbench verwenden.
Der RasterCellCoercer (" Zerlegt alle numerischen Eingabe-Raster-Features in einzelne Punkte oder Polygone. Für jede Zelle im Raster wird ein Vektor-Feature ausgegeben.")
Die PointOnRasterValueExtractor ( „führt in Punktmerkmalen und ein einzigen Referenzraster. Der Ausgang besteht aus dem Band und Palette Wert (e) an der Stelle jeden Punktes“ . )
quelle
Schneller Gedanke:
quelle