Visibilità e punti in LOS

  • 12 September 2015
  • deinic

Una delle più importanti caratteristiche in un GIS è sicuramente l'Analisi di Visibilità. La visibilità è data da un' area visibile a partire da un punto, o in altre parole,quali sono i punti sulla mappa che sono in linea di vista con un punto specifico marcato dall'utente stesso.

Ciò che andremo a vedere in questo articolo è quali sono gli strumenti GIS per far questo tipo di analisi e, successivamente, una semplice applicazione ai risultati offerti dalla suddetta analisi.

Iniziamo a scaricare il DEM da USGS EarthExplorer . Dopo la registrazione e il login, è possibile scaricare data set gratis appartenenti ad una data regione. In Dataset panel, selezionare Digital Elevation -> SRTM -> SRTM 1 Arc-second Global .

 

Aprire QGIS e importare il file scaricare in QGIS: Layer -> Add Raster .

 

SI ricorda che l'SRTM DEM possiede un proiezione WGS84, quindi dobbiamo riproiettare in WGS84 UTM zone33N (EPSG:32633):

Raster ->Projection -> Re-projection.

Definire il proprio DEM come input file, nominare un file di output come risultato della riproiezione. In seguito, controllare l'SR di destinazione e il metodo di ricampionamento.Infine cliccare OK.

 

Come risultato ottieniamo un nuovo DEM, utile per continuare l'analisi.

 

A questo punto, apriamo il plugin GRASS GIS in QGIS. GRASS GIS all'interno del Workspace di QGIS è un potente strumento per fare ogni sorta di analisi. Il vantaggio è che non siamo obbligati ad aprire una sessione indipendente di GRASS, ma tutto è fatto dal Workspace di QGIS. Per questo motivo iniziamo a creare una Location e Mapset con una proiezione indefinita, questo perchè dovremo creare una nuova Location nella quale le informazioni della proiezione possono essere direttamente lette dai metadata del DEM riproiettato.

Plugin -> GRASS -> New Mapset.

Definire un Database Grass, creare una nuova location, selezionare un proiezione non definita, rinominare il nuovo mapset.
Creare un nuovo mapset dal DEM riproiettato. Aprire il tuo nuovo mapset : Plugin -> GRASS -> Open GRASS Settings. Selezionare il modulo r.in.gdal.qgis.loc . Questo risulta essere un modulo molto potente perché permette di creare Location ( cosi come i Mapset) semplicemente  leggendo i metadata del raster che viene visualizzato nel layer tree di QGIS.

 

                           

Per cui, carichiamo il raster, diamogli un nome e rinomiamo la nuova Location.

                          

Aprire il corretto Mapset che già contiene il raster, chiamato "dem".

                          

Aggiungi il raster nel layer tree dal Menu di QGIS:  Plugin -> GRASS -> Add Raster. Bisogna selezionare un osservatore che sarà la nostra posizione d'osservazione per fare l'analisi, marcando questo punto (in figura il punto rosso) e utilizzando Catch Coordinates (cattura coordinate) di QGIS.

Poi, riapriamo  Plugin -> GRASS -> Open GRASS Settings e navighiamo fino al modulo r.los . Come recita la descrizione nel manuale GRASS: " r.los genera una mappa raster in output nelle quale le celle che sono visibili da una posizione di osservazione specificata dall'utente vengono espresse in una misura angolare, richiesta obbligatoriamente per vedere proprio quel tipo di celle necessarie all'analisi (la cosidetta visibilità della cella). Un valore 0 è direttamente attribuito  al di sotto dello specifico punto di vista, 90  gradi in linea di vista orizzontale, 180 per celle appena sopra l'osservatore. L'angolo per la cella contenente la posizione dell'osservatore è non definito ed impostato a  180 gradi ".[ "r.los generates a raster output map in which the cells that are visible from a user-specified observer position are marked with the vertical angle (in degrees) required to see those cells (viewshed). A value of 0 is directly below the specified viewing position, 90 is due horizontal, and 180 is directly above the observer. The angle to the cell containing the viewing position is undefined and set to 180.  " ].

                               

 

Copiare le coordinate (formato UTM) e passarle nel modulo r.los, inserire l'altezza dell'osservatore che si trova sul terreno, la massima distanza dal punto e il nome del raster in uscita.

 

                          

 

Di conseguenza, otteniamo la mappa di Intervisibilità, espressa in gradi. Si precisa inoltre che è molto probabile l'uso di r.color.table per dare una categorizzazione al risultato di tale operazione.

                         

Come risultato, è stato creato un nuovo raster, nel quale è rappresentata la Visibilità. Dunque, possiamo osservare quali celle sono in LOS (Line Of Sight) in corrispondenza di un certo punto su cui vi è posto l'osservatore.

Un'interessante applicazione potrebbe essere creare un vettore che rappresenti una distribuzione di punti( per es. un tracciato) e stabilire quali siano i punti in LOS e quali in NLOS.  Come si puo' vedere, si genererà un nuovo vettore avente solo i punti in LOS. In principio, si poteva creare anche un semplice vettore con il tool di QGIS, specificando il sistema di coordinate  (ad es. EPSG:32633 - WGS 84 / UTM zone 33N) : Layer ->New--> New Shapefile.

 

Modifica, aggiungi elemento, salva.   

Importato il vettore in GRASS GIS, usando GRASS GIS Settings:Plugin -> GRASS -> Open GRASS Settings. Aprire il modulo v.in.ogr.qgis :

 

                                  

Usiamo r.to.vect per transformare il raster in poligono vettoriale: Plugin -> GRASS -> Open GRASS Settings. Otteniamo, quindi, un vettore chiamato viewshed2vector. Nota: forse è necessario cambiare il colore del poligone. SI va nelle proprietà del vettore nel layer tree di QGIS.

 

Ottenendo il poligono vettoriale, dovremmo conoscere quanti punti del tracciato ricadono nell'area gialla. Per auesto, usiamo il modulo  v.select.overlap.

 

                    

Il vettore A sarebbe il vettore nel quale sarà eseguita la selezione del punto. Il vettore B è la maschera al di sopra del vettore A. Infine, si nomina un vettore d'uscita.

 

                     

Alla fine viene generato un nuovo vettoriale di punti ( colore blu), rappresentante i punti in LOS con un determinato punto.

 

Qui uno zoom sull' area.

 

Italiano