Rimuovere la tendenza di elevazione su superfici inclinate?


16

Esiste una metodologia nota per rimuovere la tendenza da una superficie DEM?

Ad esempio, se avessi un DEM di un fiume, quel fiume fluirebbe da un'elevazione elevata (a monte) a quote più basse (a valle). Anche se la distanza dalla parte superiore della superficie dell'acqua alla base del letto del fiume fosse la stessa in tutto il fiume, la parte a valle del raster avrebbe comunque valori di elevazione più bassi nel DEM. È possibile uniformare questi valori in modo che anche le aree di uguale profondità possiedano uguali quote?

Quando si elimina questa tendenza, sarebbe ideale preservare le caratteristiche generali del DEM, come i tuffi nel letto del fiume.inserisci qui la descrizione dell'immagine

Risposte:


9

@jul ha ragione nel dire che "è necessario calcolare una superficie di tendenza e quindi sottrarla dal proprio DEM iniziale per ottenere quella" svantaggiata ", ma sembra che in questo caso siano necessarie procedure più semplici per" preservare i cali ". Se la "superficie di tendenza" segue troppo da vicino il DEM originale, i residui non manterranno le caratteristiche locali della superficie. Pertanto, tra le tecniche da evitare ci sono tutte quelle locali (spline, filtri e - soprattutto - kriging) e quelle da favorire sono globali.

Un approccio semplice, robusto e diretto è quello di adattare un aereo al DEM in prossimità del fiume. Questo non richiede alcuna tecnologia di fantasia o calcoli pesanti, perché (secondo Euclide) un piano è determinato da tre punti (non collineari) nello spazio. Di conseguenza, selezionare un punto (x1 ', y1', z1 ') = (coordinate, elevazione) alla punta del fiume, un altro punto (x2', y2 ', z2') all'estremità a valle e un terzo punto a (x0 ', y0', z0 ') di tua scelta lontano dal segmento di linea che collega i primi due punti. (Queste coordinate sono indicate con numeri primi perché presto le cambieremo.) Quest'ultimo punto nodeve corrispondere a un punto o anche vicino alla superficie del terreno! In effetti, una buona scelta iniziale potrebbe essere quella di impostare la sua elevazione sulla media delle elevazioni a monte e a valle, z0 '= (z1' + z2 ') / 2.

I calcoli vengono semplificati adottando il punto (x0 ', y0', z0 ') come origine di un sistema di coordinate locale. In queste coordinate si trovano gli altri due punti

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

Qualsiasi posizione arbitraria, in (x ', y') nel sistema di coordinate originale, ha coordinate (x, y) = (x'-x0 ', y'-y0') in questo nuovo sistema. Poiché qualsiasi piano che passa attraverso l'origine (0,0,0) deve avere un'equazione della forma z = a * x + b * y, ciò riduce il problema a quanto segue:

Trova un'equazione nella forma z = a * x + b * y per il piano che passa attraverso i punti (0,0,0), (x1, y1, z1) e (x2, y2, z2).

La soluzione unica è calcolare

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

in quali termini

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

Dopo aver trovato questi due numeri aeb, e ricordando le due coordinate originali x0 'e y0', un calcolo raster del modulo

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

rimuove l '"inclinazione" dal DEM . In questa espressione [X '] si riferisce alla griglia delle coordinate x nelle coordinate originali e [Y'] si riferisce alla griglia delle coordinate y originale. Il DEM risultante avrà la stessa elevazione (ovvero, z0 ') in ciascuno dei tre punti scelti in origine; ciò che fa altrove dipende dal DEM stesso!


(Spero che alcuni lettori apprezzino come questo approccio eviti tutti i riferimenti alla trigonometria o ai macchinari dei minimi quadrati. :-)


Non dimenticare di aggiungere il tuo riferimento all'inclinazione di

@Dan Un buon punto: il precedente post su gis.stackexchange.com/questions/10959/… sembra strettamente correlato a questo.
whuber

La domanda precedente era anche mia: sentivo che avrei dovuto perfezionarla per porre le domande in modo più succinto (ad esempio, è necessario preservare i cali). Ho cercato il codice che eseguirà questo tipo di analisi, ma non ho avuto successo. Sei a conoscenza di qualcosa che utilizza ArcObjects che sarebbe utile o dovrei iniziare da zero? Grazie per l'aiuto - è stato prezioso.
Radar,

@Radar Prima prova questa analisi a mano. Richiede un certo giudizio (devi selezionare attentamente questi tre punti) e, spesso, qualche iterazione per fare bene. Questa esperienza ti darà una migliore idea di come funzionano i calcoli. È inoltre possibile confrontare questo approccio con il raccordo lineare della superficie di tendenza offerto in ArcGIS.
whuber

Abbastanza giusto: ho già automatizzato la derivazione dei punti upstream e downstream. Immagino che la parte più difficile sarà ottenere quel terzo punto. Grazie ancora!
Radar,

3

Ho trovato la tendenza al ribasso con l'analisi delle tendenze insoddisfacente per i fiumi. Può funzionare in regioni come il Midwest ma a ovest una singola superficie lineare o polinomiale non sembra mai avvicinarsi molto bene al gradiente del fiume a causa della complessa topografia. Quello che ho usato invece è una media ponderata in cui confronto l'altezza di un pixel montano con una media ponderata del fiume usando una densità del kernel (vedi l'articolo di ArcUser dell'inverno 2010). Questo produce un risultato più "localizzato". È ancora possibile ottenere alcuni valori negativi, ma ho scoperto che quei valori sembrano confinati al canale fluviale e sono più comuni nelle ripide aree a gradiente. Più recentemente ho sperimentato approcci di pathdistance per mappare "altezza di alluvione" ma questo non ha vinto '


Grazie per le tue osservazioni Tom. Benvenuti sul nostro sito - è bello vederti qui!
whuber

2

È necessario calcolare una superficie di tendenza, quindi sottrarla dal proprio DEM iniziale per ottenere quella "svantaggiata".

Per calcolare una superficie di tendenza, è possibile utilizzare qualsiasi funzione di semplificazione della superficie (filtraggio, spline, kriging, ecc.). Questa scelta dipende da come si desidera che appaia questa superficie di tendenza.

Ecco un esempio su come usare kriging in arcGIS 10.0 per questo.


1
Per il mio esempio, esiste un metodo preferito per ottenere la superficie di tendenza (ad es. Tipo di semplificazione della superficie)?
Radar,

Questa è la domanda! Dipende da quali variazioni del terreno si desidera essere considerate "tendenza" e rimosse e quali si desidera mantenere. Più forte è la semplificazione, meno si mantengono le variazioni locali del proprio terreno. Come detto da Whuber, una superficie di tendenza composta da aerei locali potrebbe anche essere soddisfacente.
luglio
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.