Cómo suavizar polígonos de vectores grandes de Raster

14

Tengo un archivo ráster de clasificación de uso de la tierra (6 clases) de un área grande. Pero lo necesito en polígonos vectoriales, así que lo vectoricé. Hasta ahora no hay ningún problema, pero el resultado es, por supuesto, que cada píxel está exactamente verticalizado con todos sus egdes :) Pero necesito que sea suave como los contornos. Entonces, está bien, podría generalizarlo con el Algoritmo de Boyle, por ejemplo, pero es demasiado para que mi computadora calcule eso ...

Entonces, ¿qué puedo hacer? ¡Gracias! Martín

ingrese la descripción de la imagen aquí

MAPA
fuente

Respuestas:

9

Use GRASS con la GUI nativa o con el complemento QGIS o con el complemento Sextante y use la herramienta v.generalize, eligiendo el algoritmo "Chaikens".

Giovanni Manghi
fuente
Gracias, esto solo funciona, ¡guau! Nunca traté de hacer eso desde gis con Sextante, ¡siempre lo hice con pasto directamente (y no funcionó)!
MAPA
La herramienta v.generalize disponible a través de QGIS facilita una gran cantidad de herramientas de generalización de las cuales el algoritmo "chaikens" es solo una de ellas. Los otros son: douglas, douglas_reduction, lang, reducción, reumann, remove_small, boyle, slide_averaging, distance_weighting, hermite, serpientes, red y desplazamiento.
ragnvald
0

También puede usar ArcGIS con (ET GeoWizards) para hacer esto:

1- Use "Smooth Polygon" de ArcToolbox> Herramientas de cartografía> Generalización

2- entonces puede obtener algunos huecos de acuerdo con la Tolerancia de suavizado que establezca.

3: en caso afirmativo, puede usar ArcToolbox "Eliminar parte de polígono" o "Rellenar agujeros" de las herramientas ET GeoWizards y establecer el "Área máxima de agujeros que se eliminarán" en las áreas que desea rellenar.

4-Hecho!

Mate
fuente
2
Nota OP está buscando soluciones QGIS, Grass, SAGA. El polígono suave y eliminar son intensivos en memoria, quizás una mejor solución sería generalizar el ráster antes de las operaciones vectoriales.
Aaron