Usunąć trend wysokości nad pochyłymi powierzchniami?


16

Czy znana jest metodologia usuwania trendu z powierzchni DEM?

Na przykład, gdybym miał DEM rzeki, przepływałaby ona z wysokości (w górę rzeki) do wysokości w dole (w dół rzeki). Nawet jeśli odległość od szczytu powierzchni wody do dna koryta rzeki byłaby taka sama w całej rzece, dolna część rastra nadal miałaby niższe wartości wysokości w DEM. Czy można wyrównać te wartości, aby obszary o równej głębokości miały równe wysokości?

Po usunięciu tego trendu idealnie byłoby zachować ogólne cechy DEM, takie jak spadki w korycie rzeki.wprowadź opis zdjęcia tutaj

Odpowiedzi:


9

@jul ma rację, że „musisz obliczyć powierzchnię trendu, a następnie odjąć ją od początkowego DEM, aby uzyskać„ zniechęcony ”, ale wydaje się, że w tym przypadku potrzebne są prostsze procedury, aby„ zachować spadki ”. Jeśli „powierzchnia trendu” zbyt blisko podąża za oryginalną DEM, wówczas resztki nie zachowają lokalnych cech powierzchni. Tak więc wśród technik, których należy unikać, są wszystkie lokalne (splajny, filtry i - szczególnie - kriging), a te, które faworyzują, są globalne.

Prostym, solidnym i bezpośrednim podejściem jest dopasowanie samolotu do DEM w pobliżu rzeki. Nie wymaga to żadnej wymyślnej technologii ani ciężkich obliczeń, ponieważ (według Euclida) płaszczyzna jest określona przez trzy (nieliniowe) punkty w przestrzeni. W związku z tym wybierz jeden punkt (x1 ', y1', z1 ') = (współrzędne, wysokość) w górnej części rzeki, inny punkt (x2', y2 ', z2') na dolnym końcu i trzeci punkt na (x0 ', y0', z0 ') wybranego z dala od odcinka linii łączącego pierwsze dwa punkty. (Te współrzędne są oznaczone liczbami pierwszymi, ponieważ wkrótce je zmienimy.) Ten ostatni punkt niemuszą odpowiadać punktowi na, a nawet w pobliżu powierzchni ziemi! W rzeczywistości dobrym początkowym wyborem może być ustawienie jego wysokości na średnią wysokości w górę i w dół, z0 '= (z1' + z2 ') / 2.

Obliczenia są łatwiejsze , przyjmując punkt (x0 ', y0', z0 ') jako początek lokalnego układu współrzędnych. W tych współrzędnych znajdują się pozostałe dwa punkty

(x1,y1,z1) = (x1'-x0',y1'-y0',z1'-z0') 
(x2,y2,z2) = (x2'-x0',y2'-y0',z2'-z0'). 

Każda dowolna lokalizacja, w (x ', y') w oryginalnym układzie współrzędnych, ma współrzędne (x, y) = (x'-x0 ', y'-y0') w tym nowym układzie. Ponieważ każda płaszczyzna przechodząca przez punkt początkowy (0,0,0) musi mieć równanie w postaci z = a * x + b * y, ogranicza to problem do następującego:

Znajdź równanie w postaci z = a * x + b * y dla płaszczyzny przechodzącej przez punkty (0,0,0), (x1, y1, z1) i (x2, y2, z2).

Unikalnym rozwiązaniem jest obliczanie

u = z1 y2 - z2 y1
v = x1 z2 - x2 z1
w = x1 y2 - x2 y1

w jakich warunkach

a = u/w, b = v/w.

Po znalezieniu tych dwóch liczb aib i przywołaniu dwóch pierwotnych współrzędnych x0 'i y0', obliczenie rastrowe formularza

[DEM] - a * ([X'] - x0') - b * ([Y'] - y0')

usuwa „przechylenie” z DEM . W tym wyrażeniu [X '] odnosi się do siatki współrzędnych x w oryginalnych współrzędnych, a [Y'] odnosi się do oryginalnej siatki współrzędnych y. Wynikowy DEM ma taką samą wysokość (mianowicie z0 ') w każdym z trzech punktów, które pierwotnie wybrałeś; to, co robi gdzie indziej, zależy od samego DEM!


(Mam nadzieję, że niektórzy czytelnicy docenią sposób, w jaki to podejście unika wszelkich odniesień do trygonometrii lub maszyn najmniejszych kwadratów. :-)


Nie zapomnij dodać odniesienia do przechylania rastra na forums.arcgis.com/threads/22904-Trouble-with-Hillshading

@ Dan Dobra uwaga: poprzedni post na gis.stackexchange.com/questions/10959/... jest ściśle związany z tym.
whuber

Poprzednie pytanie było również moje - czułem, że powinienem je dopracować, aby bardziej zwięźle zadawać pytania (np. Konieczność zachowania spadków). Rozejrzałem się za kodem, który przeprowadziłby tego rodzaju analizę, ale mi się nie udało. Czy zdajesz sobie sprawę z czegoś, co korzysta z ArcObjects, które byłyby przydatne, czy powinienem zacząć od zera? Dzięki za pomoc - była nieoceniona.
Radar

@Radar Najpierw wypróbuj tę analizę ręcznie. Wymaga to pewnego osądu (musisz starannie wybrać te trzy punkty) i często pewnej iteracji, aby zrobić dobrze. To doświadczenie pozwoli lepiej zrozumieć, jak działają obliczenia. Możesz także porównać to podejście z liniowym dopasowaniem powierzchni trendu oferowanym w ArcGIS.
whuber

W porządku - zautomatyzowałem już wyprowadzanie punktów powyżej i poniżej. Myślę, że najtrudniejszą częścią będzie zdobycie tego trzeciego punktu. Dzięki jeszcze raz!
Radar

3

Stwierdziłem, że usuwanie trendów z analizą trendów jest niezadowalające dla rzek. Może działać w regionach takich jak środkowy zachód, ale na zachodzie pojedyncza powierzchnia liniowa lub wielomianowa nigdy nie wydaje się dobrze przybliżać gradientu rzeki ze względu na złożoną topografię. Zamiast tego zastosowałem uśrednianie ważone, w którym porównuję wysokość piksela wyżynnego ze średnią ważoną rzeki przy użyciu gęstości jądra (zobacz artykuł w ArcUser z Winter 2010). Daje to bardziej „zlokalizowany” wynik. Nadal można uzyskać pewne wartości ujemne, ale stwierdziłem, że te wartości wydają się ograniczone do koryta rzeki i najczęściej występują w obszarach o dużym nachyleniu. Niedawno eksperymentowałem z podejściami odległości do mapowania „wysokości powodzi”, ale to nie wygrało ”


Dziękuję za uwagi Tom. Witamy na naszej stronie - dobrze cię tu widzieć!
whuber

2

Musisz obliczyć powierzchnię trendu, a następnie odjąć ją od początkowego DEM, aby uzyskać „zniechęcony”.

Aby obliczyć powierzchnię trendu, można użyć dowolnej funkcji uproszczenia powierzchni (filtrowanie, wygładzanie splajnu, krigowanie itp.). Ten wybór zależy od tego, jak ma wyglądać ta powierzchnia trendu.

Oto przykład, jak do tego użyć kriging w arcGIS 10.0 .


1
Na przykład, czy istnieje preferowana metoda uzyskania powierzchni trendu (np. Rodzaj uproszczenia powierzchni)?
Radar

Oto jest pytanie! Zależy to od tego, które odmiany terenu chcesz uznać za „trendy” i usunięte, a które chcesz zachować. Im silniejsze uproszczenie, tym mniej lokalnych zmian terenu. Jak powiedział whuber, powierzchnia trendu złożona z lokalnych płaszczyzn może nawet być satysfakcjonująca.
Julien
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.