[Gfoss] ricavare strade da immagini satellitari (con GRASS?)

ciao a tutti,

sto cercando di ricavare la rete stradale a partire da immagini satellitari ad alta risoluzione.
Siccome sono abbastanza digiuno sull’argomento volevo chiedere se qualcuno può darmi un buon consiglio, magari un link o un articolo interessante.

Il materiale a mia disposizione sono immagini Quickbird pancromatiche a risoluzione 0,60 m e multispettrali a risoluzione 2.4 m.
Ho anche il DEM 30m.
Con GRASS ho provato a interrogare l’immagine pancromatica con r.mapcalc e ho ricavato tutti i gruppi di celle (3x3 celle) in cui la media di tutti i valori ricade all’interno di un certo intervallo che dovrebbe corrispondere all’asfalto. Il risultato è così così: dove le strade sono abbastanza larghe in effetti sono abbastanza distinguibili, ma dove sono più strette si confondono con gli altri risultati dell’interrogazione che non c’entrano niente.
La zona in questione è una metropoli abbastanza caotica (urbanisticamente parlando): Yaounde (Camerun)

Ogni consiglio è benvenuto!

tommaso

2008/10/25 tommaso <tommasodb@googlemail.com>:

ciao a tutti,

sto cercando di ricavare la rete stradale a partire da immagini satellitari
ad alta risoluzione.
Siccome sono abbastanza digiuno sull'argomento volevo chiedere se qualcuno
può darmi un buon consiglio, magari un link o un articolo interessante.

Il materiale a mia disposizione sono immagini Quickbird pancromatiche a
risoluzione 0,60 m e multispettrali a risoluzione 2.4 m.
Ho anche il DEM 30m.
Con GRASS ho provato a interrogare l'immagine pancromatica con r.mapcalc e
ho ricavato tutti i gruppi di celle (3x3 celle) in cui la media di tutti i
valori ricade all'interno di un certo intervallo che dovrebbe corrispondere
all'asfalto. Il risultato è così così: dove le strade sono abbastanza larghe
in effetti sono abbastanza distinguibili, ma dove sono più strette si
confondono con gli altri risultati dell'interrogazione che non c'entrano
niente.
La zona in questione è una metropoli abbastanza caotica (urbanisticamente
parlando): Yaounde (Camerun)

Ogni consiglio è benvenuto!

Tommaso,

proposta di procedura:

- create mappe sintetiche con r.texture
  (http://grass.osgeo.org/grass64/manuals/html64_user/r.texture.html)
  alcune misure estragono abbastanza bene feature lineare
- usare R, G, B + alcune tessiture per classificazione
   (v.digit per training area, v.to.rast per training map raster,
   i.group per fare il gruppo, i.gensigset per statistica, i.smap
  per segmentazione/classificazione)
- estrazione delle classi di interesse
- vettorizzazione con r.to.vect
- thinning con r.thin
- attributi von d.what.vect -e oppure v.digit
- upload in openstreetmap.org :slight_smile:

ciao
Markus

On Sat, 2008-10-25 at 14:56 +0200, Markus Neteler wrote:

proposta di procedura:

- create mappe sintetiche con r.texture
([http://grass.osgeo.org/grass64/manuals/html64_user/r.texture.html](http://grass.osgeo.org/grass64/manuals/html64_user/r.texture.html))
alcune misure estragono abbastanza bene feature lineare
- usare R, G, B + alcune tessiture per classificazione
(v.digit per training area, v.to.rast per training map raster,
i.group per fare il gruppo, i.gensigset per statistica, i.smap
per segmentazione/classificazione)
- estrazione delle classi di interesse
- vettorizzazione con r.to.vect
- thinning con r.thin
- attributi von d.what.vect -e oppure v.digit

grazie! provo subito!

- upload in openstreetmap.org :)

naturalmente! :)

proposta di procedura:

- create mappe sintetiche con r.texture
([http://grass.osgeo.org/grass64/manuals/html64_user/r.texture.html](http://grass.osgeo.org/grass64/manuals/html64_user/r.texture.html))
alcune misure estragono abbastanza bene feature lineare
- usare R, G, B + alcune tessiture per classificazione
(v.digit per training area, v.to.rast per training map raster,
i.group per fare il gruppo, i.gensigset per statistica, i.smap
per segmentazione/classificazione)
- estrazione delle classi di interesse
- vettorizzazione con r.to.vect
- thinning con r.thin
- attributi von d.what.vect -e oppure v.digit

bene, ho seguito quasi tutta la procedura aiutandomi anche con questo tutorial http://www.perrygeo.net/wordpress/?s=roads&submit=Go
e ho ottenuto qualcosa.
Dopo l’estrazione delle classi di interesse, il semplice passaggio r.thin e poi r.to.vect non basta a ricavare le strade giacchè i pixel estratti non formano una linea definita ma sono piuttosto sparpagliati lungo questa linea. Servirebbe un procedimento per ricavarsi le “centerlines” dai pixel che vengono identificati come strade, cioè i pixel centrali. Che strumento potrei usare?

Inoltre ho qualche problema a fare una buona composizione RGB: con r.composite ottengo una immagine troppo blu e sbiadita. con i.fusion.brovey un’immagine troppo viola. Ho provato anche questa procedura http://listserv.unipr.it/pipermail/grass-italia/2007-April/002858.html (una combinazione di i.his.rgb e i.rgb.his) ma senza risultati migliori.