Como comparar dois DEMs e mostrar sua diferença?

10

Quero comparar meus DEMs entre si (ASTER GDEM2 e SRTM4.1). Eu sei que o GDEM tem alguns "buracos" com elevações incorretas (eu encontrei 3 deles na minha área de trabalho). Agora eu preciso saber se há mais deles para eventualmente corrigi-los com o SRTM. Eu uso SAGA, GRASS e QGIS.

MAPA
fonte
compará-los com o que? um com o outro? um é sua linha de base e o outro está com defeito?
nickves 11/09/12
direita! Eu só quero desenhar a diferença entre eles.
MAP

Respostas:

5

Digamos que Raster1 esteja correto e Raster2 seja o que você suspeita que tenha falhas.

Eles também estão nas mesmas unidades (desde que você diga que os dois rasters são DEMs, o valor de z deve estar em metros - presumo que estamos corretos e comparamos as mesmas coisas)

Você pode usar o rast calc de qualquer pacote (qgis, grama, saga) para compará-los, por exemplo:

deviation_rast  = abs( (raster1 - raster2) / raster1 * 100 ) 

cada célula da varredura resultante exibirá a porcentagem que a varredura2 se desvia da varredura1.

Depois disso, você pode reclassificar o deviation_rast com base em suas necessidades: por exemplo

red -> deviation_rast_value > 75
orange -> deviation_rast_value > 50
yellow ->  deviation_rast_value > 25
green -> deviation_rast_value  > 0

identificar áreas problemáticas - e escolher se deseja intervir ou não

nickves
fonte
8
A proporção não é uma boa ideia para DEMs com elevações próximas ao nível do mar: você obterá muitos resultados falsos e resultados completamente indefinidos onde raster2 == 0. A abordagem correta, para todos os DEMs, é apenas subtrair uma raster da outra e rastrear para outliers (o que pode ser feito de várias maneiras: consulte stats.stackexchange.com para alguns métodos).
whuber
11

Você pode começar obtendo a diferença dos dois DEMs. O QGIS possui uma ferramenta de calculadora raster que deve ser útil. Basta obter blocos de ambos os DEMs que cobrem a mesma área e subtrair os valores de um DEM do outro. Isso deve proporcionar uma boa camada raster que mostra as diferenças de altitude entre os dois DEMs.

RK
fonte
5
Exatamente, apenas subtraia um DEM do outro. Eu o representaria no QGIS ou mesmo o reclassificaria, usando alguma tolerância em torno de Zero. Algo como Se -5m <Resultado <5m, considere que os DEM têm o mesmo valor nessa célula específica.
Alexandre Neto
6
(+1) É um bom começo - e simples também. Os erros nos DEMs são um pouco complicados: resultam de erros de elevação e de posicionamento. Se não houver erro de posição, normalmente uma tela com base em uma tolerância constante é boa - mas não deve necessariamente estar em torno de zero, porque um DEM pode ter um deslocamento vertical constante (pequeno) constante em relação a outro. Use uma tolerância em torno da diferença mediana. Em áreas montanhosas, o erro posicional adiciona mais variação onde as inclinações são mais íngremes; portanto, a tolerância precisa ser aumentada aproximadamente na proporção da tangente da inclinação.
whuber
Eu tenho um problema semelhante, mas meus rasters estão se sobrepondo apenas parcialmente (a varredura B cobre apenas parte da varredura A) e a ferramenta "diferença de grade" não funciona. Alguma idéia do que eu posso fazer?
H.Wiener