A escala e o fator Z não têm efeito na análise de colinas no QGIS

10

Usei um SRTM DEM para criar uma sombra no QGIS 2.2.0. No entanto, a colina resultante parece ser exagerada verticalmente. Além disso, alterar as configurações de escala e fator z não afeta a sombra da colina resultante. Eu tentei ambas as opções no QGIS, Analysis-> DEM (modelos de terreno) e análise de terreno -> Hillshade. Ambos os métodos deram os mesmos resultados.

É um incidente isolado, um bug ou estou faltando alguma coisa?

PyMapr
fonte
4
Quando você está usando um DEM com coordenadas de latlon em graus decimais e unidades verticais em metros, você deve definir a escala (proporção de unidades verticais para unidades horizontais) para 111120. Tentei com alguns DEMs do Aster. Não tenho problema. Essa configuração aplica-se não apenas ao sombreamento, mas também para cálculos de inclinação. Espero que ajude
Gerardo Jimenez
@GerardoJimenez, eu tentei e funcionou. Obrigado
PyMapr
@GerardoJimenez, Thanderbolt qualquer um de vocês deve enviar e responder a esta pergunta e o Thunderbolt deve aceitá-lo para remover esta pergunta da sem resposta.
SS_Rebelious

Respostas:

12

A resposta de @ Gerardo está correta apenas no equador. O documento da gdaldem observa que esses valores de escala são para "projeções LatLong perto do equador"

Para calcular a escala ou o fator Z (inverso da escala) em outras latitudes para um dem com unidades verticais em metros, você pode usar as seguintes equações:

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

onde: 111320 é o comprimento de um grau no equador em metros (com base no WGS84, você pode usar o 111111 se for mais fácil de lembrar ou se aprecia o histórico ) e latitude é a latitude no centro do seu DEM.

Você pode calcular rapidamente o fator de escala / z no Excel / Libre Office Calc com as seguintes 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))

Você pode até usar uma simples pesquisa no Google:

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

Por exemplo, escala e fator z para Latitude = 38.5S

Para DEMs com unidades verticais em pés, basta converter o comprimento de um grau no equador em metros em pés, ou seja, 3,28 * 111320 = 365130. Portanto, suas equações se tornam:

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

Como alternativa, você pode reprojetar seu DEM para um sistema coordenado projetado (também sugerido pelos documentos do gdaldem).

user2856
fonte
Esta resposta realmente me ajudou hoje, mas estou um pouco confuso sobre os termos usados ​​no QGIS. Quando vou para Raster - Terrain Analysis - Slope, obtenho o campo chamado "fator Z", mas aqui tenho que inserir o valor que é chamado "escala" aqui e não o valor inverso que é chamado "fator Z" aqui. Você não pode inserir o número muito pequeno que recebo ao calcular o inverso com o cálculo acima e o valor padrão já indica que ele deve ser um número grande, mas ainda é um pouco confuso, porque pensei que os dois termos "escala" versus "fator z" não pôde ser usado como sinônimo.
Taya
@Taya Não vejo um campo "Fator Z" na ferramenta Raster-> Analysis-> DEM (Terrain Models) no menu do QGIS 2.14. Eu vejo apenas um campo Escala. Talvez tenha sido um bug nas versões anteriores do QGIS ...? Edit: Ahh, você está usando o plug-in de análise de terreno , que deve ser um bug no plug-in.
user2856
Eu sugeriria algumas mudanças nessa resposta: 1. Para a maioria dos aplicativos, você usaria o fator de escala s ou o fator z, não os dois (s parece uma escolha mais lógica e funciona melhor no QGIS). 2. O fator de escala norte-sul é sempre 111320, mas o fator de escala leste-oeste é 111320*cos(latitude*pi/180). Em altas latitudes, essa diferença criará problemas significativos e você provavelmente precisará reprojetar em um sistema de coordenadas do medidor (por exemplo, UTM) antes de calcular. Em baixas latitudes, você pode tentar rachar a diferença: s = 111320 * 0.5 * (1 + cos(latitude*pi/180)).
Matthias Fripp
4

Ao trabalhar com DEMs em coordenadas latinas com suas unidades em graus decimais e as unidades verticais em metros, você deve definir a escala "(proporção de unidades verticais para unidades horizontais) para 111120. Em

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

eles ainda sugerem que, para DEMs com coordenadas de lantlon e unidades verticais em pés, a escala deve ser definida como 370400

Essa configuração afeta também os cálculos de inclinação.

Gerardo Jimenez
fonte