Esecuzione dell'estrazione di dighe da DEM?


14

Ho DEM di 1x1 metro e nuvola di punti LiDAR originale in .las, di cui è fatto DEM. Ho bisogno di estrarre le dighe fluviali (punti più alti delle dighe) in funzione vettoriale (punto, polilinea).

Qualche idea per l'algoritmo o uno strumento esistente?

Le dighe sono in grigio chiaro sulla prima immagine e sotto è l'immagine della nuvola di punti per l'area di esempio con le dighe. Linea centrale del fiume in blu.

Le dighe sono in grigio chiaro

Nuvola di punti con le dighe

Qualche strumento per l'estrazione di caratteristiche lineari da DEM?

Credo di aver bisogno di qualcosa come il modulo di estrazione di funzioni spaziali di ENVI (pagina 7), ma senza la parte di ENVI, poiché non posso permettermelo :)


1
Quale sistema gis stai usando?
Hornbydd,

Commercial- ArcInfo 10 (SA, 3D, estensioni geostatistiche). Open source - qualsiasi.
Tomek,

1
Stavo pensando a qualche idea, supponendo che tu avessi una linea centrale vettoriale per il tuo fiume che potresti bufferizzare questo e usarlo per mascherare il DEM e soglie i valori. Questo presuppone che la diga corre parallela al canale del fiume. Quindi, qualunque sia la logica che usi deve essere abbastanza intelligente da catturare le dighe che diventano "arretrate" dal fiume.
Hornbydd,

Purtroppo le dighe non sempre corrono parallele al canale fluviale e abbastanza spesso sono lontane dal canale fluviale. Stavo pensando che ci sarebbe stato qualche algoritmo come scheletro? Per l'estrazione delle caratteristiche lineari da DEM, con tale caratteristica ho potuto derivare i punti più alti nella nuvola di punti.
Tomek,

2
Mi sono imbattuto in questo documento, può essere di aiuto? asprs.org/a/publications/pers/2004journal/december/…
Hornbydd,

Risposte:


8

Tutto dipende da dove si disegna la linea. Indipendentemente da ciò, questo problema sembra che possa essere prontamente risolto utilizzando le funzioni morfologiche disponibili in Analista spaziale, in particolare il limite (eseguito con "<" e ">" operazioni locali) e "RegionGroup" per identificare ed estrarre componenti.

Anche se non ho accesso al DEM per illustrare, la prima immagine è quasi abbastanza buona per fare comunque il lavoro. Ad esempio, ecco una sequenza di versioni raggruppate per regione della banda rossa (con valori scalati da 0,0 = nero a 1,0 = bianco), a partire da una soglia di 0 e spostandosi da sinistra a destra, dall'alto verso il basso, con incrementi di 0,02:

dighe

(Queste immagini sono state ridotte per la riproduzione qui: tutte le analisi sono state fatte alla risoluzione dell'immagine originale.)

Le dighe emergono attorno al confine della regione nera all'inizio della seconda fila (soglia = 0,08). All'inizio della terza fila (soglia = 0,16) le dighe formano i propri componenti (in blu scuro) e a quel punto possono essere prontamente estratte come griglie o poligoni separati (e i loro confini possono essere estratti come polilinee dopo una fase di rilevamento dei bordi ). Rimangono solo le dighe più larghe nell'ultima riga (soglia = 0,24 e maggiore). Dovrai selezionare una soglia appropriata per ottenere esattamente ciò che desideri.

Nella DEM originale, i prospetti svolgono il ruolo di intensità, quindi queste procedure dovrebbero essere altrettanto efficaci con la DEM stessa. Se il DEM ha una grande estensione (comprese le caratteristiche lontane dal fiume o dalle dighe), le caratteristiche pertinenti possono essere selezionate come quelle adiacenti al componente in cui si trova la caratteristica del fiume.

Le regioni indesiderate sottili rilevate da RegionGroup possono essere eliminate applicando una piccola erosione (tampone negativo) seguita da una dilatazione equivalente (tampone positivo). Piccole regioni indesiderate possono essere escluse in base a un criterio di dimensione (numero totale di celle o area). I punti più alti su ogni diga (se è quello che è veramente necessario) possono essere trovati confrontando il DEM con griglie massime zonali (usando le dighe come zone).


Per inciso, questa sequenza di immagini è stata prodotta in Mathematica 8. Ecco i comandi per coloro che potrebbero voler perseguire questa opzione.

original = Import["http://i.stack.imgur.com/gV7Du.jpg"];
{r, g, b} = ColorSeparate[original];
frames = ParallelTable[Colorize[MorphologicalComponents[Binarize[r, t/100]], 
                       ColorFunction -> "ThermometerColors"], {t, 0, 30, 2}];
Rasterize @ TableForm[Partition[frames, 4]]

Il tempo totale di clock (dopo aver importato l'immagine) è stato di 0,94 secondi, di cui metà era necessaria per ridurre ed esportare tutte le 16 immagini: le operazioni morfologiche tendono ad essere veloci (il che è positivo, perché i DEM LIDAR possono essere enormi).


L'intero concetto suona bene, ma non capisco la soglia "... (eseguita con" <"e"> "operazioni locali)". Come si ottiene questo risultato con il set di strumenti Generalization (SA)?
Tomek,

@Tomek One no. Vedi il set di strumenti logici .
whuber

9

Ho letto su una varietà di algoritmi per il lavoro (es. Come per il link @Hornbydds ).

Ho provato un paio di approcci, e i migliori risultati nel mio caso hanno prodotto l'analisi del terreno standard di SAGA. Ecco cosa ho fatto e perché:

Le dighe sono di solito la caratteristica più alta in prossimità del canale fluviale, quindi le ho trasformate in canali lanciando DEM (MapAlgebra DEM * -1 o per esagerazione delle pendenze -10). Da questo punto ho potuto utilizzare qualsiasi set di strumenti idrologici (ArcHydro, HEC-GeoRas o SAGA hydro tools). Ho scelto SAGA / Analisi del terreno -analisi composta / Analisi del terreno standard poiché produce una rete fluviale con un paio di clic. River Network è ciò che volevo ottenere, in quanto produce polilinee, che indicano la via migliore per il flusso d'acqua, che in caso di argini invertiti - dà il massimo.

Il file di forma prodotto è un po 'disordinato (molte delle polilinee più piccole), ma dopo alcuni aggiustamenti i risultati sono soddisfacenti. Un altro fastidio è che 1 diga è composta da 300 polilinee corte, ma penso che troverò un modo per gestirlo.

Ecco un esempio di risultati:

inserisci qui la descrizione dell'immagine

Naturalmente questa è una soluzione abbastanza approssimativa e probabilmente starò indagando ulteriormente sulla questione, ma ho pensato che valesse la pena condividerla.


5

Una combinazione di quanto segue con il DEM originale dovrebbe aiutare a evidenziare le informazioni raster desiderate e eliminare il resto. Questi possono essere eseguiti su diverse scale e dimensioni di quartiere per perfezionare l'effetto.

  • Ricampiona, quindi Quartiere -> Filtro: passa alto
  • Superficie -> Curvatura
  • Quartiere -> Statistiche focali: deviazione standard
  • "Altezza relativa" = (Pixel) - (Quartiere -> Statistiche focali: mediana)
  • Inverti, ricampiona, quindi vicinato -> Flusso focale

Dopo aver fatto ciò, la riclassificazione e i contorni dovrebbero fornire un profilo ragionevolmente buono della diga stessa. Se le dighe sono inclinate in piano e desideri una copertura più ampia, puoi anche provare qualcosa come la somma della curvatura e della pendenza, ridimensionata di una certa quantità, o persino fare i contorni delle pendenze separatamente e unirli insieme.

Ecco un tutorial su come estrarre linee guida vettoriali da un DEM raster usando Spatial Analyst, che dovrebbe essere altamente applicabile:


Daremo un'occhiata alla combinazione di strumenti - può dare dei buoni risultati. Grazie. Come vedo, il tutorial ESRI descrive il processo +/- come ho fatto :) Fantastico. Grazie.
Tomek,

0

Penso che questo potrebbe essere solo una parte della risposta, ma forse potresti iniziare creando contorni / poligoni dalle tue immagini a determinati intervalli / in base ai valori di elevazione. Stavo pensando che le dighe dovrebbero avere valori di elevazione più alti e quindi se convertiti DEM in poligoni potresti scoprire che le aree che ti interessano sono rappresentate da poligoni centain. Potresti anche iniziare semplicemente riclassificando il DEM e vedere se questo produce i risultati che stai cercando. Se disponi di altri dati immagine che coprono l'area a cui sei interessato, prova ad aggiungerli alla classificazione dell'immagine e vedi se aiuta. In bocca al lupo!!

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.