19 votos

Generación de contornos a partir de MDE mediante GDAL?

En el trabajo acabamos de recibir un gran conjunto de MDE y me gustaría generar contornos a partir de ellos. Los MDE tienen una resolución de 1 m y un tamaño de 1 km x 1 km.

Salida de gdalinfo:

Driver: AAIGrid/Arc/Info ASCII Grid
Files: 380000_6888000_1k_1m_DEM_ESRI.asc
Size is 1000, 1000
Coordinate System is `'
Origin = (380000.000000000000000,6888000.000000000000000)
Pixel Size = (1.000000000000000,-1.000000000000000)
Corner Coordinates:
Upper Left  (  380000.000, 6888000.000)
Lower Left  (  380000.000, 6887000.000)
Upper Right (  381000.000, 6888000.000)
Lower Right (  381000.000, 6887000.000)
Center      (  380500.000, 6887500.000)
Band 1 Block=1000x1 Type=Float32, ColorInterp=Undefined
  NoData Value=-9999

Sé que puedo utilizar gdal_contour para generar los contornos ( la entrada de mi blog sobre el tema ) pero me pregunto qué buenas prácticas para generar contornos son.

¿Hay alguna regla que deba seguir para sacar el máximo partido de los contornos sin inventar ni perder demasiada información?

Digamos que quiero generar tres conjuntos de contornos:

  • 250 mm
  • 1m
  • 5m

¿Hay algo que deba hacer al DEM antes de cada serie?

¿Es conveniente suavizar las líneas a posteriori o es mejor suavizar la trama?

17voto

Paul G Puntos 1615

Las reglas cartográficas para representar el relieve como contornos se presentan en El famoso libro de Imhof sobre la representación en relieve, capítulo C . Algunas de estas normas figuran en esta página de wikipedia . La principal recomendación a la hora de simplificar los contornos es preservar las características principales del terreno.

Suavizar los contornos de forma independiente no impide que se superpongan: Se aconseja suavizar primero el MDT. Un suavizado gaussiano tradicional con un parámetro adecuado en función de la resolución del objetivo permite borrar los pequeños detalles. Un inconveniente es que el suavizado del MDT rellena los valles y las depresiones, y aplana las crestas y los picos. Utilizando el algoritmo del filtro douglass-peucker como en este documento puede ser una solución. También existen número de métodos basado en el uso de algoritmos de suavizado de contornos limitados por la red de drenaje o un esqueleto. Por último, para evitar que los contornos se solapen en partes descuidadas, es posible para borrarlos localmente o también deformarlos .

1voto

Alex Che Puntos 822

Quiero secundar el comentario de @whuber. El análisis cuantitativo es siempre mejor a partir de un DEM directamente y el análisis visual es a menudo mejor cuando se hace a partir de un Hillshade en lugar de contornos.

Para responder directamente a la pregunta: En ArcGIS utilizaría Focal Statistics o Aggregate [Spatial Analyst Toolbox] para suavizar las curvas de nivel resultantes. Dado que las curvas de nivel son una función de análisis visual, la cantidad de suavizado variará en función de sus necesidades. Así que tendrás que experimentar y ver lo que funciona mejor para su proyecto.

Suavizar las líneas después de generarlas funciona, pero es un poco engorroso en comparación con modificar primero la trama. Una limpieza posterior a la generación del contorno que suelo hacer es seleccionar las líneas de cierta longitud (por ejemplo, <10' de largo) y borrarlas. De este modo, los datos quedan libres de pequeños fragmentos "ruidosos" de contornos cerrados (es decir, pequeños bucles) que probablemente no reflejen el carácter real de la superficie modelada por los contornos.

Otras cosas que podrían mirar [los usuarios de ArcGIS] son:

Realización de un mosaico ráster y/o mosaico ráster de estadísticas focales y utilización de un modelo para generar contornos para todo el conjunto de datos.

Realización de contornos 3D para su uso en AutoCAD.

Preste atención a las zonas con datos DEM inusuales (por ejemplo, grandes extensiones de terreno bajo que necesitan diferentes intervalos de contorno para representar con precisión la superficie, zonas de vegetación densa que dan valores falsos de Tierra Desnuda, zonas de relieve vertical - acantilados, etc.).

1voto

Tom Broen Puntos 1

Hay una manera fácil usando gdal_contour. Después de configurar todas las opciones en la ventana de diálogo, puede editar la línea de comandos y en lugar de "-i interval" puede utilizar niveles fijos "-fl levels". Como muestra la imagen de abajo. Puede comprobar otras opciones aquí http://www.gdal.org/gdal_contour.html

enter image description here

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X