Tools für die räumliche Statistik: Clusteranalyse für Rasterdaten

9

Ich habe ein scheinbar einfaches Problem, aber ich kann keine klare Methodik finden.

Ich habe die Aufgabe, "städtische Gebiete" durch vektorkonvexe Polygone unter Verwendung des Datensatzes "Gitterbevölkerung der Welt" von CIESIN abzugrenzen

Dieser Datensatz enthält Bevölkerungsdichtewerte auf der ganzen Welt als Rasterdatei. Das Problem ist, wie Sie bereits vermutet haben, dass sich die Dichtewerte sehr ändern und die Definition von "urban" ziemlich relativ ist.

Ich habe versucht, einen klassischen Ansatz zu verwenden und die Steigungen so berechnet, als ob die Dichtewerte Höhen wären, aber die Steigungswerte waren auch sehr unterschiedlich und räumlich komplex, kompliziert.

Ich habe mich mit räumlichen Clustering-Algorithmen, LISA-Tools (Local Indocators of Spatial Association), mit ArcGIS und GeoDa befasst, bin aber unter sehr spezifischen Tools ziemlich verloren. Einige der Methoden arbeiten nur mit Vektorformen, daher sind eine Neuklassifizierung und eine Vektorisierung erforderlich (lange Berechnung).

Können Sie mir helfen, die zu verwendenden Methoden und Werkzeuge zu verfeinern? Vielen Dank !

Laurent Jégou
quelle
2
Was genau ist Ihre Definition von „urban“? Übrigens würde ich nicht erwarten, dass alle städtischen Gebiete durch konvexe Polygone angemessen beschrieben werden . Viele haben Formen, die durch geografische Merkmale gesteuert werden - Berge, Küsten und Flüsse -, die stark nicht konvex sind.
whuber
Die Definition ist nicht gegeben, keine Konstante. Ich denke, das Ziel ist es, wesentlich dichtere Gebiete in Bezug auf ihre Umwelt zu finden, was unterschiedlich ist. Also die Idee zu räumlicher Statistik und LISA. Sie haben Recht mit der Konvexität, ich hätte schreiben sollen "nicht sich selbst überschneiden und andere Polygone nicht schneiden".
Laurent Jégou
Als Ergänzung habe ich ein ganzes R-Modul gefunden, das räumlichen Agglomerationswerkzeugen gewidmet ist: spdep.
Laurent Jégou

Antworten:

4

Ich habe einige Arbeiten für meinen MSc http://ian01.geog.psu.edu/papers/mscthesis.pdf durchgeführt - im Grunde habe ich an Verlaufsänderungen gearbeitet, aber die Diskussion kann Ihnen dabei helfen.

Ian Turton
quelle
Danke, ich werde es bald lesen, aber das ist vielversprechend :-)
Laurent Jégou
Ich habe die Doppel-Sobel-Methode der 2. Ableitung, die Sie in der Arbeit beschrieben haben, in einer begrenzten Testzone ausprobiert und sie ist sehr interessant! Klare Stadtkerne sind isoliert, trotz sehr unterschiedlicher Dichtewerte. Vielen Dank :) Übrigens habe ich eine kostenlose OpenSource-Software verwendet, um die Windungen und die Raster-Mathematik zu berechnen: Opticks.
Laurent Jégou
Ein Maß für künstliches Licht wäre ein guter Indikator für die städtischen Bedingungen. Eine Google-Suche sollte Beispielstudien finden.
b_dev
@indiehacker - Ich habe mir das angeschaut, aber es ist kulturell abhängig. Frankreich zum Beispiel ist viel dunkler als Großbritannien.
Ian Turton
6

Unter dem Gesichtspunkt der Bevölkerungsdichte sollte ein "Stadtgebiet" im Allgemeinen nur einige axiomatische Kriterien erfüllen :

  1. Seine Grenze sollte keine Punkte mit (relativ) hoher Dichte im Vergleich zur maximalen Dichte in seinem Inneren enthalten.

  2. Es sollte einfach angeschlossen werden (keine "Löcher").

  3. Die durchschnittliche Bevölkerungsdichte sollte einen bestimmten Schwellenwert überschreiten.

Axiom (1) ist das natürlichste: Wenn ein Grenzpunkt eine hohe Dichte hätte, würden wir die Grenze einfach nach außen verschieben, um diesen Punkt in das Stadtgebiet aufzunehmen. Ich möchte vorschlagen, dass "relativ" als Anteil des Maximums bedeutet , wie ein Zehntel oder ein Hundertstel oder was auch immer. Axiom (2) vermeidet den Ausschluss von Parks und anderen Regionen mit geringer Dichte, die natürlich in Städten vorkommen. Axiom (3) , das, weil es von einer Schwelle abhängt, etwas willkürlich ist, eliminiert kleine kompakte Dörfer.

Tatsächlich gibt es mindestens ein weiteres Element der Willkür: Jede Gitterkarte der Bevölkerungsdichte mittelt implizit die Populationen über lokale Nachbarschaften (in einigen Fällen gleich einer Zelle und in Kernel-Dichteschätzungen gleich einem Kernelradius). Nehmen wir diese implizite Nachbarschaftsgröße (die geändert werden kann, indem zuerst Fokusmittel oder andere Kernelglättungen über die ursprüngliche Dichtekarte ausgeführt werden), diese Populationsschwelle und das Gefühl von "relativ hoch" in Axiom 1 als vom Benutzer einstellbare Parameter , die die steuern Ergebnis.

Diese Axiome führen natürlich zu einem ziemlich einfachen Algorithmus : Man muss lokale Maxima lokalisieren, in ihre Nachbarschaften schauen, bis eine Grenze gefunden wird, die das Axiom (1) erfüllt, alle Löcher ausfüllen, um das Axiom (2) zu erfüllen, und dann alle diese Kandidatenbereiche screenen gemäß (3). Dies geschieht wie folgt:

  1. Glätten Sie optional die Dichtekarte.

  2. Führen Sie einen "Füll" -Algorithmus für eine dichtebezogene Karte durch (siehe unten).

  3. RegionGruppen Sie das Ergebnis.

  4. Entfernen Sie Löcher aus den Polygonen der RegionGrouped.

  5. Führen Sie Zonensummen der Bevölkerungsdichte über den gefüllten Polygonen durch.

  6. Beseitigen Sie alle Polygone mit Summen (oder mittleren Dichten) unterhalb der Populationsschwelle (Dichte).

Was bleibt, ist Ihre Lösung.

Lassen Sie mich etwas mehr zu Schritt (1) sagen, der der Schlüssel ist. Ein Füllalgorithmus identifiziert "Senken" und "füllt" sie bis zu einem konstanten Betrag über ihren Höhen. Dies ist genau das , was Axiom (1) von uns verlangt, vorausgesetzt (a) wir können "sinken" die Rolle des "lokalen Maximums" spielen lassen und (b) "konstante Menge über" die Rolle des "konstanten Bruchteils von " spielen lassen . "" Der Weg, dies zu tun, besteht darin, den negativen Logarithmus der Dichte zu fülleneher als die Dichte selbst. (Fügen Sie der Dichte zuerst eine winzige Konstante hinzu - beispielsweise etwa 0,1 Personen pro Quadratkilometer -, bevor Sie das Protokoll erstellen, damit Zellen mit Nullen keine Probleme verursachen.) Die "Seen" in der negativen Protokolldichte identifizieren Kandidaten Stadtgebieten. Sie haben noch drei unabhängige Parameter zum Spielen (Eingabe in den Schritten 0, 1 und 5); Das Einstellen erfordert einige Überlegungen darüber, was Sie wirklich unter "Stadtgebiet" verstehen, sowie einige Experimente.

whuber
quelle
Vielen Dank für Ihre ausführliche Antwort. Ich werde versuchen, die richtigen Software-Tools zu finden (oder sie zu programmieren), um den Füllalgorithmus mit dem negativen Protokoll zu testen. Das scheint ein guter Hinweis zu sein.
Laurent Jégou