So glätten Sie große Vektorpolygone aus Raster

14

Ich habe eine Landnutzungsklassifizierungs-Rasterdatei (6 Klassen) eines großen Gebiets. Aber ich brauche es in Vektorpolygonen, also habe ich es vektorisiert. Bisher kein Problem, aber das Ergebnis ist natürlich, dass jedes Pixel mit all seinen Kanten genau vertorisiert ist :) Aber ich brauche es glatt wie Konturen. Also, okay, ich könnte es zum Beispiel mit Boyles Algorithmus verallgemeinern, aber es ist einfach zu viel für meinen Computer, um das zu berechnen ...

Was könnte ich also tun? Vielen Dank! Martin

Bildbeschreibung hier eingeben

KARTE
quelle

Antworten:

9

Verwenden Sie GRASS mit der nativen GUI oder mit dem QGIS-Plugin oder mit dem Sextante-Plugin und verwenden Sie das Tool v.generalize, indem Sie den Algorithmus "Chaikens" auswählen.

Giovanni Manghi
quelle
Danke, das funktioniert einfach, wow! Ich habe das nie von gis mit Sextante versucht, ich habe es immer direkt mit Gras gemacht (und es hat nicht funktioniert)!
MAP
Das über QGIS verfügbare Tool v.generalize ermöglicht eine Vielzahl von Generalisierungswerkzeugen, von denen der Algorithmus "chaikens" nur eines ist. Die anderen sind: douglas, douglas_reduction, lang, reduction, reumann, remove_small, boyle, slide_averaging, distance_weighting, hermite, snakes, network und move.
Ragnvald
0

Sie können ArcGIS auch mit (ET GeoWizards) verwenden, um dies zu tun:

1- Verwenden Sie "Polygon glätten" in ArcToolbox> Kartografietools> Generalisierung

2 - dann erhalten Sie möglicherweise einige Lücken gemäß der von Ihnen festgelegten Glättungstoleranz.

3 - Wenn ja, können Sie entweder ArcToolbox "Polygon-Teil entfernen" oder "Löcher füllen" aus den GeoWizards-Werkzeugen von ET verwenden und die Option "Maximale Fläche der zu entfernenden Löcher" auf die zu füllenden Bereiche festlegen.

4-Fertig!

Matt
quelle
2
Hinweis OP sucht nach QGIS-, Grass- und SAGA-Lösungen. Glattes Polygon und Eliminieren sind beide speicherintensiv - möglicherweise ist es eine bessere Lösung, das Raster vor Vektoroperationen zu verallgemeinern.
Aaron