Glätten von Raster-Features in Polygon

10

Ich habe Rasterdaten, die städtische Gebiete darstellen und die ich verfolgen und in ein Polygon konvertieren möchte.

Raster

Mit dem Raster-zu-Polygon-Werkzeug von ArcMap kann ich etwas in die Nähe bringen.

Nicht vereinfacht:

Nicht vereinfacht

Vereinfacht:

Vereinfacht

Sie können jedoch sehen, dass es viele diagonale Linien (Straßen) gibt, die Ketten von Polygonen bilden, die sich eine Ecke teilen.

Dies erhöht meine Polygonzahl erheblich - diese Raster-Datasets werden auf Statusebene verarbeitet. Gibt es ein Arc- oder GeoTools-Werkzeug, um diese Linien zu glätten und weniger Polygone zu erstellen? Es ist in Ordnung, wenn das Ergebnis an Präzision verliert. Am Ende suche ich etwas Ähnliches wie mit dem vereinfachten Polygon, nur mit benachbarten Polygonen.

Eric W.
quelle
1
Wenn es in Ordnung ist, die Straßen vollständig zu verlieren oder mit benachbarten Features zusammenzuführen, möchten Sie möglicherweise das Raster vor der Konvertierung bereinigen : siehe gis.stackexchange.com/questions/41064 . Dies wirft jedoch eine wichtigere Frage auf: Warum überhaupt von Raster zu Vektor konvertieren? Ist das wirklich notwendig?
whuber
Haben Sie versucht, "Nach dem Konvertieren in Polygone" Polygon vereinfachen oder "Verallgemeinern" auszuführen? Zugegeben, die Linienführung sieht schon ziemlich einfach aus, aber Sie wissen nie, was diese Tools tun könnten.
Baltok
Ich kann die Straßen nicht ganz verlieren, obwohl ihre genaue Form nicht wichtig ist. Ich verwende diese Polygone in Verbindung mit Volkszählungsdaten, um Strukturen zu platzieren, sodass Strukturen in städtischen Gebieten oder in der Nähe von Straßen anstatt mitten in einem Wald platziert werden. Weitere Informationen finden Sie in einer anderen Frage von mir ( gis.stackexchange.com/questions/38999/… ).
Eric W.
Ich habe leider keine Lizenz für Simplify Polygon oder Generalize.
Eric W.
Das Platzieren von Strukturen kann - abhängig von den verwendeten Kriterien - einfacher mit Rasterdaten als mit Vektordaten erfolgen. Vielleicht könnten Sie etwas mehr über den Strukturierungsprozess sagen?
whuber

Antworten:

4

Ihre Frage ist häufig (z. B. diese Frage ) und die Antwort hängt stark von den verfügbaren Werkzeugen und dem Grad ab, in dem Sie Präzisions- und Verallgemeinerungsverluste akzeptieren können.

Ein einfacher Ansatz besteht darin, Ihre Polygone zu puffern und das Ergebnis dann um den gleichen oder einen ähnlichen Betrag zu puffern. Sie müssen beurteilen, wie viel gepuffert werden soll, um zu vermeiden, dass Polygone verbunden werden, die getrennt bleiben sollten. Sie reduzieren die Anzahl der Polygone und das Raster-Aussehen Ihrer Daten, jedoch auf Kosten einer erhöhten Anzahl von Scheitelpunkten.

Alternativ können Sie sich die Vorverarbeitung des Rasters ansehen. Hier ist Vorsicht geboten, damit Sie nichts tun, was Statistiken ungültig macht, aber anscheinend nur Features extrahieren möchten. Dies hängt wiederum von Ihrer Lizenz ab, aber Sie können die Auflösung Ihres Rasters ändern und dann Nibble oder Clean gemäß meinen Vorschlägen im oben genannten Thread verwenden. Dies klingt für Ihren Anwendungsfall legitim.

Wenn Sie keinen Zugriff auf Spatial Analyst haben und QGIS, GDAL oder ähnliches FOSS GIS nicht installieren können, funktioniert der Puffer-Debuffer-Trick recht gut.

MappaGnosis
quelle
Ich habe gestern den Puffer-und-Konvertierungs-Trick entdeckt, als ich herumgespielt habe, um dies selbst zu lösen. Ich kann das Raster um 1 erweitern, dann Raster-zu-Poly mit Vereinfachung ausführen und eine ziemlich anständige Annäherung an die Funktionen erhalten. Es ist sogar noch besser, wenn ich das Raster zuerst auf eine höhere Auflösung neu abtaste, aber das erhöht meinen Speicherplatz quadratisch für einen bereits großen Datensatz, ganz zu schweigen von einer Weile. Ich denke, expand-1-and-simplify sollte für meine Zwecke ausreichen.
Eric W.
Wenn Sie die Resample-Methode verwenden möchten, denken Sie daran, dass Sie das neu abgetastete Raster nur vorübergehend benötigen. Wenn Sie Ihren Prozess in einem ModelBuilder-Tool festlegen und das neu abgetastete Raster als "Zwischen" markieren, sollte Arc anschließend bereinigen und automatisch löschen (Sie müssen dies nicht manuell tun und können Ihr Tool wiederverwenden).
MappaGnosis