Wie funktioniert die Zonenstatistik genau?

10

Ich bin etwas verwirrt darüber, wie die Zonenstatistik-Tools in QGIS funktionieren (entweder das Tool 'Zonal Statistics' unter den Raster-Tools aus der QGIS-Toolbox für Geoalgorithmen oder das Tool 'Raster Statistics from Polygons' unter den SAGA Vector <-> Raster-Tools ).

Grundsätzlich habe ich eine Rasterkartenebene und einige kleine Polygone in einer separaten Ebene. Ich möchte jedem Polygon den Wert des Rasters unten zuweisen. Falls ein Polygon mehrere Rasterzellen überlappt, möchte ich nur das Maximum haben.

Die Ausgabe macht jedoch keinen Sinn und ich kann mich nicht hinter die Argumentation dieser Ergebnisse stellen (die offensichtlich nicht das Maximum der unterlegten Rasterzelle sind):

Geben Sie hier die Bildbeschreibung ein

Irgendwelche Ideen, was ich falsch mache oder was ich noch nicht berücksichtigt habe? Die Ergebnisse mit dem Python - API in qgis.analysis.QgsZonalStatistics()( gemäß dieser Frage hier ) sind viel besser, aber es funktioniert nur Angebot count, meanund sum... aber aus irgendeinem Grunde nicht maxoder min.

GeoEki
quelle
1
Ich habe dies gerade in ArcMap versucht, indem ich mein Raster in Punkte konvertiert habe. Es sieht so aus, als ob das QGIS-Werkzeug für Zonenstatistiken intern dasselbe tut und nur die Fälle verwendet, in denen ein Punkt ein Polygon schneidet. In QGIS scheint es jedoch keine geeignete Übereinstimmungsoption zu geben (vergleichbar mit denen, die im Spatial Join-Tool von ArcMap angeboten werden, z. B. INTERSECT, WITHIN_A_DISTANCE, CLOSEST, ...).
GeoEki
Um dies herauszufinden, habe ich die "Anzahl" für eine grobe Rasterebene (ungefähr ein Pixel befindet sich im Polygon) mit QGIS 'Zonal Statistics berechnet und einen Wert von 0,45 erhalten - überraschenderweise keine Ganzzahl. Dies deutet darauf hin, dass QGIS die Pixelwerte möglicherweise irgendwie gewichtet. Dies könnte der Grund sein, warum das Maximum / Min nicht Ihren Erwartungen entspricht - möglicherweise eine schlechte Implementierung dieser Gewichtung bei der Berechnung von Max / Min.
Jon
Unter gis.stackexchange.com/a/281753/18189 finden Sie eine Beschreibung der Funktionsweise des QGIS-Algorithmus für zonale Statistiken.
Dbaston

Antworten:

4

Update als April 2018 und QGIS 2.18

Die aktuelle Version des Zonal Statistics Plugins bietet:

Count: to count the number of pixels
Sum: to sum the pixel values
Mean: to get the mean of pixel values
Median: to get the median of pixel values
StDev: to get the standard deviation of pixel values
Min: to get the minimum of pixel values
Max: to get the maximum of pixel values
Range: to get the range (max - min) of pixel values
Minority: to get the less represented pixel value
Majority: to get the most represented pixel value
Variety: to count the number of distinct pixel values

Ursprüngliche Antwort

Kurz gesagt, dieser Ansatz mit QGIS ist meines Wissens nicht möglich, das Rasterpixelmaximum als Ergebnis anzuzeigen. Nur die Zählung, der Mittelwert und die Summe. Ich habe einige Ressourcen bereitgestellt, die dies abdecken.

Hier ist die Dokumentseite für das Plugin Zonal Statistics Plugin

Mit dem Plugin icon_zonal_statistics Zonal Statistics können Sie die Ergebnisse einer thematischen Klassifizierung analysieren. Mit Hilfe einer polygonalen Vektorebene können Sie mehrere Werte der Pixel einer Rasterebene berechnen (siehe figure_zonal_statistics). Sie können die Summe, den Mittelwert und die Gesamtzahl der Pixel innerhalb eines Polygons berechnen. Das Plugin generiert Ausgabespalten in der Vektorebene mit einem benutzerdefinierten Präfix.

Außerdem enthält dieses QGIS-Lernprogramm zum Abtasten von Rasterdaten mithilfe von Punkten oder Polygonen Beispieldaten, um eine zonale Statistikrückgabe zu erzielen. Ich habe einen Screenshot beigefügt, den sie als Beispiel für ihren Workflow und ihre Ergebnisse bereitstellen.

Aktivieren Sie die Zonal Statistics Plugins. Dies ist ein Kern-Plugin, daher ist es bereits installiert. Unter Verwenden von Plugins erfahren Sie, wie Sie das Core-Plugin aktivieren

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Wählen Sie nach Abschluss der Verarbeitung die Grafschaftsschicht aus. Verwenden Sie das Identifizieren-Werkzeug und klicken Sie auf ein beliebiges County-Polygon. Der Ebene werden drei neue Attribute hinzugefügt: ZS_count, ZS_mean und ZS_sum. Diese Attribute enthalten die Anzahl der Rasterpixel, den Mittelwert der Rasterpixelwerte und die Summe der Rasterpixelwerte. Da wir an der Durchschnittstemperatur interessiert sind, wird das Feld ZS_mean verwendet.

Geben Sie hier die Bildbeschreibung ein

Whyzar
quelle
2

Ab QGIS 3.0 (möglicherweise früher, ich bin mir nicht sicher) sind folgende Statistiken verfügbar:

  • Anzahl
  • Summe
  • Bedeuten
  • Median
  • Standardabweichung
  • Minimum
  • Maximal
  • Angebot
  • Minderheit
  • Mehrheit (Modus)
  • Vielfalt
  • Varianz
dbaston
quelle