Comment comparer deux DEM et montrer leur différence?

10

Je veux comparer mes DEM les uns avec les autres (ASTER GDEM2 et SRTM4.1). Je sais que le GDEM a des "trous" avec de mauvaises altitudes (j'en ai trouvé 3 dans ma zone de travail). Maintenant, je dois savoir s'il y en a plus pour éventuellement les corriger avec le SRTM. J'utilise SAGA, GRASS et QGIS.

CARTE
la source
les comparer avec quoi? avec l'un l'autre? l'un est vous de base et l'autre est défectueux?
nickves
droite! Je veux juste faire la différence entre eux.
MAP

Réponses:

5

Disons que Raster1 est le bon, et Raster2 est celui que vous suspectez d'avoir des défauts.

Ils sont également tous les deux dans les mêmes unités (puisque vous dites que les deux rasters sont des DEM, la valeur z doit être en mètres - je suppose que nous avons raison et nous comparons les mêmes choses)

Vous pouvez utiliser rast calc de l'un ou l'autre des packages (qgis, grass, saga) pour les comparer, par exemple:

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

chaque cellule du raster résultant affichera le pourcentage que le raster2 dévie du raster1.

Après cela, vous pouvez reclasser deviation_rast en fonction de vos besoins: par exemple

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

d'identifier les zones problématiques - et de choisir si vous voulez intervenir ou non

nickves
la source
8
Le rapport n'est pas une bonne idée pour les DEM avec des élévations près du niveau de la mer: vous obtiendrez de nombreux résultats faux et des résultats complètement indéfinis partout où raster2 == 0. La bonne approche, pour tous les DEM, consiste simplement à soustraire un raster de l'autre et à l'écran pour les valeurs aberrantes (ce qui peut être fait de plusieurs façons: consultez stats.stackexchange.com pour certaines méthodes).
whuber
11

Vous pouvez commencer par obtenir la différence des deux DEM. QGIS dispose d'un outil de calcul raster qui devrait être utile. Obtenez simplement des tuiles des deux DEM qui couvrent la même zone et soustrayez les valeurs d'un DEM de l'autre. Cela devrait vous donner une belle couche raster qui montre les différences d'altitude entre les deux DEM.

RK
la source
5
Exactement, il suffit de soustraire un DEM de l'autre. Je le représenterais alors dans QGIS ou même le reclasserais, en utilisant une certaine tolérance autour de zéro. Quelque chose comme Si -5m <Résultat <5m alors considérez que les DEM ont la même valeur dans cette cellule particulière.
Alexandre Neto
6
(+1) C'est un bon début - et simple aussi. Les erreurs dans les DEM sont un peu compliquées: elles résultent d'erreurs d'élévation et d'erreurs de position. S'il n'y a pas d'erreur de position, un écran basé sur une tolérance constante est généralement bon - mais il ne devrait pas nécessairement être autour de zéro, car un DEM pourrait avoir un (petit) décalage vertical constant par rapport à un autre. Utilisez plutôt une tolérance autour de la différence médiane. Dans les zones montagneuses, l'erreur de position ajoute plus de variation là où les pentes sont plus raides, de sorte que la tolérance doit être augmentée à peu près proportionnellement à la tangente de la pente.
whuber
J'ai un problème similaire, mais mes rasters ne se chevauchent que partiellement (le raster B ne couvre qu'une partie du raster A) et l'outil "différence de grille" ne fonctionnera pas. Des idées ce que je peux faire?
H.Wiener