doc

Transcript

doc
Ortorettificazione di immagini satellitari
ad alta risoluzione con GRASS
...A work in progress...
Francesco Paolo Lovergine
[email protected]
CNR ISSIA
Ortorettifica
È noto che per utilizzare immagini satellitari in
ausilio alla cartografia è necessario applicare
una procedura di correzione geometrica della
deformazione derivante da:
●
Rilievo
●
Geometria di acquisizione
11/02/2010
Lovergine FOSS4G-IT 2010
2
Perché non i.ortho.photo?
Il modulo i.ortho.photo è pensato per
acquisizioni con fotocamera (ortofoto) da
aereo, nelle quali la deformazione conica in
prospettiva centrale è il modello consolidato.
I moderni sensori “push broom” (es. Ikonos o
Quickbird) hanno una geometria di
acquisizione più complessa con centri di
proiezione multipli per ogni acquisizione.
11/02/2010
Lovergine FOSS4G-IT 2010
3
Perché non i.rectify?
Un modello polinomiale semplice, quale quello
utilizzato tipicamente per la
georeferenziazione mediante GCP non è
normalmente adeguato in caso di variazioni
di rilievo significative nel frame da rettificare.
Il problema è particolarmente evidente alla
scala dei satelliti high-res attuali
(~50 cm in pancromatico).
11/02/2010
Lovergine FOSS4G-IT 2010
4
Modelli consolidati
Sono stati introdotti e adottati due modelli di
ortorettifica per satelliti push broom. Entrambi
richiedono un DEM di precisione.
●
Modello rigoroso (aka Toutin)
●
Modello Rational Functions (RFM)
Ad oggi GRASS non ha moduli nativi che
implementino l'ortorettifica satellitare.
11/02/2010
Lovergine FOSS4G-IT 2010
5
Il modello RFM (Grodecki 2001) 1
Rational Functions Model utilizza funzioni di
trasformazione world-to-image espresse
come rapporto di funzioni polinomiali
cubiche.
3
i
j
k
∑i , j , k =0 a ijk X n Y n Z n
Pa  X n , Y n , Z n 
r n=
= P a3 X n , Y n , Z n 
i
j k
P b  X n ,Y n , Z rn n =
b X Y Z
∑
P bi , jX, k =0
n ,Yijkn , Zn n n n
3
i
j k
c
X
Y
P c  X n , Y n , Z n  ∑i , j , k=0 ijk n n Z n
cn=
= 3
i
j k
P d  X n ,Y n , Z n 
∑i , j , k=0 d ijk X n Y n Z n
11/02/2010
Lovergine FOSS4G-IT 2010
6
Il modello RFM (Grodecki 2001) 2
Le coordinate world e image si considerano
sempre normalizzate nell'intervallo [-1,1]
mediante una semplice trasformazione
lineare di traslazione e scaling
t−t 0
ts
11/02/2010
dove
t=r , c , X , Y , Z
Lovergine FOSS4G-IT 2010
7
Il modello RFM (Grodecki 2001) 3
Nei modelli RFM associati a satelliti high-res il
set di Rational Polinomial Coefficients viene
ridotto a 20 coefficienti per polinomio.
Tali RPC vengono calcolati dal provider
utilizzando un modello rigoroso e ricavando i
coefficienti a partire da un set di punti di
coordinate note (backward transformation).
11/02/2010
Lovergine FOSS4G-IT 2010
8
Il modello RFM (Grodecki 2001) 4
Dato un set di RPC calcolati per il frame,
possono essere impiegate le equazioni del
forward model per la ortorettificazione della
immagine.
Il set di RPC viene normalmente fornito in un
apposito text file di metadati (formato
custom) in accompagnamento a frame
ortho-ready georiferiti approssimativamente.
11/02/2010
Lovergine FOSS4G-IT 2010
9
Workflow per l'ortorettificazione 1
I moduli di interesse:
●
i.group
●
i.target
●
i.rpc.parse
●
i.ortho.rpc (forward)
●
i.rpc.calc (backward)
11/02/2010
Lovergine FOSS4G-IT 2010
10
Workflow per l'ortorettificazione 2
i.group e i.target permettono di definire
un group di raster in location XY e una target
location e mapset per l'ortorettifica.
i.group group=<gname> raster=<input,...>
i.target group=<gname> location=<lname> mapset=<mname>
11/02/2010
Lovergine FOSS4G-IT 2010
11
Workflow per l'ortorettificazione 3
i.rpc.parse nella location XY di lavoro
accetta in input un metafile RPC (specifico per
satellite) e produce un file di region nella target
location/mapset e un file RPC nel group
precedentemente creato.
i.rpc.parse group=<gname> region=<rname> input=<rpcfile> \
type=<ikonos,quickbird,kompsat2,...>
11/02/2010
Lovergine FOSS4G-IT 2010
12
Workflow per l'ortorettificazione 4
i.ortho.rpc effettua l'ortorettifica nella target
location e mapset dello specifico group,
utilizzando il relativo file RPC, nella region
(minima) specificata nel passo precedente.
Occorre passare il DEM relativo.
i.ortho.rpc group=<gname> output=<oname> \
[ north=<n> south=<s> east=<e> west=<w> res=<res> ] \
dem=<dname> [ shift=<geoid_height> ]
11/02/2010
Lovergine FOSS4G-IT 2010
13
Todo
●
RPC parsing template-based per aggiungere
più facilmente nuovi satelliti.
●
Interpolazione DEM (attualmente NN)
●
i.rpc.calc numericamente stabile
●
Integrazione calcolo shift medio?
●
Code cleaning
11/02/2010
Lovergine FOSS4G-IT 2010
14
KOMPSAT2 Umbria
●
KOMPSAT2 è un satellite coreano SPOT5like con risoluzione 1m in pancromatico, 4m
in multispettrale (RGBN).
●
Dataset: doppio frame mosaicato
●
DEM 25m
●
●
11/02/2010
Processing: ortorettifica+georiferimento con
1 GCP.
Proiezione UTM33 ED50
Lovergine FOSS4G-IT 2010
15
KOMPSAT2 Umbria
11/02/2010
Lovergine FOSS4G-IT 2010
16
KOMPSAT2 Umbria
11/02/2010
Lovergine FOSS4G-IT 2010
17
KOMPSAT2 Umbria
11/02/2010
Lovergine FOSS4G-IT 2010
18
KOMPSAT2 Umbria
La doppia procedura consente di ottenere un
RMS su GCP di 1.9m, quindi
sostanzialmente in linea con i risultati
dichiarati in letteratura, nonostante il DEM a
risoluzione non confrontabile.
Qualitativamente è anche accettabile il
risultato del confronto fra la CTR e
l'immagine in mancanza di ulteriori parametri.
11/02/2010
Lovergine FOSS4G-IT 2010
19
Question time

11/02/2010
Lovergine FOSS4G-IT 2010
20