Jak porównać dwa DEM i pokazać ich różnicę?

10

Chcę porównać moje DEM ze sobą (ASTER GDEM2 i SRTM4.1). Wiem, że GDEM ma pewne „dziury” o niewłaściwych wzniesieniach (3 z nich znalazłem w moim obszarze roboczym). Teraz muszę wiedzieć, czy jest ich więcej, aby ostatecznie poprawić je za pomocą SRTM. Używam SAGA, GRASS i QGIS.

MAPA
źródło
porównać je z czym? ze sobą? jedna jest twoją wartością wyjściową, a druga jest wadliwa?
nickves
dobrze! Chcę tylko narysować różnicę między nimi.
MAP,

Odpowiedzi:

5

Powiedzmy, że Raster1 jest poprawny, a Raster2 jest tym, co do którego podejrzewasz, że ma błędy.

Oba są również w tych samych jednostkach (ponieważ mówisz, że oba rastry są DEM, wartość z powinna być w metrach - zakładam, że mamy rację i porównujemy te same rzeczy)

Możesz użyć rast calc z dowolnego pakietu (qgis, trawa, saga), aby porównać je np .:

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

każda komórka z wynikowego rastra wyświetli procent, który raster2 odbiega od rastra 1.

Następnie możesz przeklasyfikować deviation_rast na podstawie swoich potrzeb: np

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

identyfikować problematyczne obszary - i decydować, czy chcesz interweniować, czy nie

nickves
źródło
8
Współczynnik ten nie jest dobrym pomysłem dla DEM z wzniesieniami w pobliżu poziomu morza: uzyskasz wiele fałszywych wyników i całkowicie niezdefiniowane wyniki, gdziekolwiek raster2 == 0. Właściwe podejście, dla wszystkich DEM, polega na odjęciu jednego rastra od drugiego i przesiewaniu dla wartości odstających (co można zrobić na wiele, wiele sposobów: niektóre metody można znaleźć na stronie stats.stackexchange.com ).
whuber
11

Możesz zacząć od uzyskania różnicy między dwoma DEM. QGIS ma narzędzie kalkulatora rastrowego, które powinno się przydać. Po prostu zdobądź płytki obu DEM, które pokrywają ten sam obszar i odejmij wartości jednego DEM od drugiego. To powinno dać ci ładną warstwę rastrową, która pokazuje różnice wysokości między dwoma DEM.

RK
źródło
5
Dokładnie, po prostu odejmij jeden DEM od drugiego. Następnie przedstawiłbym go w QGIS lub nawet przeklasyfikowałem, stosując pewną tolerancję wokół Zera. Coś w rodzaju, jeśli -5m <Wynik <5m, to weź pod uwagę, że DEM mają tę samą wartość w tej konkretnej komórce.
Alexandre Neto,
6
(+1) To dobry początek - i również prosty. Błędy w DEM są trochę skomplikowane: wynikają z błędów wysokości i błędów pozycjonowania. Jeśli nie ma błędu pozycjonowania, zazwyczaj ekran oparty na stałej tolerancji jest dobry - ale niekoniecznie powinien być w okolicach zera, ponieważ jeden DEM może mieć (małe) stałe przesunięcie pionowe w stosunku do drugiego. Zamiast tego należy zastosować tolerancję wokół różnicy mediany. W obszarach pagórkowatych błąd położenia dodaje większą zmienność tam, gdzie zbocza są bardziej strome, dlatego tolerancję należy zwiększyć w przybliżeniu proporcjonalnie do stycznej nachylenia.
whuber
Mam podobny problem, ale moje rastry nakładają się tylko częściowo (raster B obejmuje tylko część rastra A) i narzędzie „różnicy siatki” nie będzie działać. Jakieś pomysły, co mogę zrobić?
H.Wiener