10 votos

La escala y el factor Z no afectan al análisis de sombras en QGIS

He utilizado un MDE SRTM para crear un sombreado en QGIS 2.2.0. Sin embargo, el sombreado resultante parece estar exagerado verticalmente. Además, cambiar la configuración de la escala y el factor z no tiene ningún efecto sobre el relieve resultante. He probado ambas opciones en QGIS, Análisis-> DEM (Modelos del terreno) y Análisis del terreno -> Sombra. Ambos métodos dan los mismos resultados.

¿Se trata de un incidente aislado, de un error o me estoy perdiendo algo?

4 votos

Si utiliza un MDE con coordenadas latonales en grados decimales y unidades verticales en metros, debe ajustar la escala (relación entre unidades verticales y unidades horizontales) a 111120. He probado con un par de MDE de Aster y no he tenido ningún problema. Esta configuración se aplica no sólo a hillshading sino también para los cálculos de pendiente. Espero que le sirva de ayuda.

0 votos

@GerardoJimenez, lo he probado y ha funcionado. Gracias

0 votos

@GerardoJimenez, Thanderbolt cualquiera de ustedes debe presentar y respuesta para esta pregunta y Thunderbolt debe aceptarlo para eliminar esta pregunta de sin respuesta.

13voto

Lucas Puntos 128

@Gerardo's responder sólo es correcta en el ecuador. La dirección gdaldem doc observa que esos valores de escala son para "Proyecciones LatLong cerca del ecuador"

Para calcular la escala o el factor Z (inverso de la escala) en otras latitudes para un dem con unidades verticales en metros, puede utilizar las siguientes ecuaciones:

s=111320*cos(latitude*pi/180)
z=1/(111320*cos(latitude*pi/180))

donde: 111320 es la longitud de un grado en el ecuador en metros (basado en WGS84, puedes usar 111111 si es más fácil de recordar, o tienes un apreciación de la historia ) y la latitud es la latitud en el centro de su DEM.

Puede calcular rápidamente el factor de escala/z en Excel/Libre Office Calc con las siguientes fórmulas:

For -s scale parameter
=111320*COS(latitude*PI()/180)
or
=111320*COS(RADIANS(latitude))

For -z z factor parameter
=1/(111320*COS(latitude*PI()/180)
or
=1/(111320*COS(RADIANS(latitude))

Incluso puede utilizar una simple búsqueda en Google:

111320 * cos(latitude deg)
or
1/(111320 * cos(latitude deg))

Por ejemplo escala y factor z para Latitud = 38.5S

Para los MDE con unidades verticales en pies, basta con convertir la longitud de un grado en el ecuador en metros a pies, es decir, 3,28 * 111320 = 365130. Así que tus ecuaciones se convierten en:

s=365130*cos(latitude*pi/180)
z=1/(365130*cos(latitude*pi/180))

Alternativamente, puede reproyectar su DEM a un sistema coordinado proyectado (también sugerido por los documentos de gdaldem).

0 votos

Esta respuesta me ha ayudado mucho hoy, pero estoy un poco confundido sobre los términos utilizados en QGIS. Cuando voy a Raster - Análisis del Terreno - Pendiente me aparece el campo llamado "Factor Z", pero aquí tengo que introducir el valor que aquí se denomina "escala" y no el valor inverso que aquí se denomina "factor Z". No se puede introducir el número muy pequeño que obtengo al calcular el inverso con el cálculo anterior y el valor por defecto ya le dice que tiene que ser un número grande, pero sigue siendo un poco confuso porque pensé que ambos términos "escala" y "factor Z" no podían ser utilizados como sinónimos.

0 votos

@Taya No veo un campo "Factor Z" en la herramienta Raster->Análisis->DEM (Modelos del Terreno) del menú en QGIS 2.14. Sólo veo un campo Escala. ¿Quizás era un bug en versiones anteriores de QGIS...? Edit: Ahh, estás usando el análisis del terreno plugin Debe ser un error del plugin.

0 votos

Sugeriría un par de cambios en esta respuesta: 1. Para la mayoría de las aplicaciones se utilizaría el factor de escala s o el factor z, no ambos (s parece una opción más lógica y funciona mejor en QGIS). 2. El factor de escala norte-sur es siempre 111320 pero el factor de escala este-oeste es 111320*cos(latitude*pi/180) . En latitudes altas esta diferencia creará problemas significativos y probablemente necesite reproyectar en un sistema de coordenadas de metros (por ejemplo, UTM) antes de calcular. En latitudes bajas, puede intentar dividir la diferencia: s = 111320 * 0.5 * (1 + cos(latitude*pi/180)) .

4voto

Jim Firenze Puntos 21

Cuando se trabaja con MDE en coordenadas lat-long con sus unidades en grados decimales y las unidades verticales en metros hay que ajustar la "escala (relación entre unidades verticales y unidades horizontales) a 111120". En

http://www.gdal.org/gdaldem.html

incluso sugieren que esta configuración para MDE con coordenadas de lantlon y unidades verticales en pies, la escala debe establecerse en 370400

Esta configuración afecta también a los cálculos de pendiente.

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