28.01.2015 Views

Trasformazioni geometriche - Circe

Trasformazioni geometriche - Circe

Trasformazioni geometriche - Circe

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

TRASFORMAZIONI GEOMETRICHE


TRASFORMAZIONI GEOMETRICHE<br />

<strong>Trasformazioni</strong> <strong>geometriche</strong>:<br />

• modificano la posizione relativa dei pixel, senza<br />

alterare il valore radiometrico. Assegnano al pixel<br />

nuove coordinate o nuovi valori di riga e colonna<br />

• immagini = trasformazioni nello spazio 2D<br />

= TRASFORMAZIONI PIANE<br />

X = F x<br />

Con x = coordinata iniziale<br />

X = coordinata finale<br />

F = operatore di trasformazione (funzione)<br />

• punti di controllo: punti omologhi necessari per<br />

definire la trasformazione<br />

Punti immagine= definiti nel sistema immagine<br />

Punti di controllo= punti di riferimento<br />

• Utlizzo: elaborazione delle immagini, cartografia<br />

(carta = immagine raster), disegni<br />

•<strong>Trasformazioni</strong> GLOBALI e LOCALI


TRASFORMAZIONI GEOMETRICHE<br />

<strong>Trasformazioni</strong> GLOBALI:<br />

• modificano la posizione di ogni pixel dell’immagine.<br />

I valori dei parametri di trasformazione calcolati sono<br />

validi per qualsiasi punto dell’immagine<br />

• dal sistema (o,x,y) al sistema trasformato (O,X,Y)<br />

• si utilizzano più punti di controllo di quelli necessari<br />

e il valore dei parametri è stimato ai minimi quadrati.<br />

• <strong>Trasformazioni</strong> lineari: traslazione, rotazioni,<br />

deformazione per taglio, affine, Helmert<br />

<strong>Trasformazioni</strong> proiettiva<br />

<strong>Trasformazioni</strong> polinomiali


TRASFORMAZIONI GEOMETRICHE<br />

o<br />

1<br />

1 2 3 4 5<br />

6 7 8 9 10<br />

x<br />

O<br />

1<br />

1 2 3 4 5<br />

6 7 8 9 10<br />

X<br />

2<br />

2<br />

3<br />

3<br />

4<br />

5<br />

6<br />

7<br />

8<br />

9<br />

10<br />

y<br />

4<br />

5<br />

6<br />

7<br />

8<br />

9<br />

10<br />

Y<br />

Spostamento di una<br />

“freccia” lungo la<br />

direzione x di 5 pixel.<br />

Il punto iniziale ha coordinate<br />

x= 4<br />

y=3<br />

Lo spostamento è<br />

5 lungo x<br />

0 lungo y<br />

X<br />

<br />

Y<br />

0<br />

0<br />

<br />

<br />

<br />

x<br />

<br />

y<br />

<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

4<br />

<br />

3<br />

5<br />

<br />

0<br />

<br />

9<br />

<br />

3


TRASFORMAZIONI GEOMETRICHE<br />

TRASLAZIONE<br />

• è una trasformazione<br />

elementare conforme<br />

(=mantiene inalterati gli angoli)<br />

• parametri: 2<br />

traslazione Xo<br />

traslazione Yo<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

x<br />

<br />

y<br />

<br />

<br />

<br />

X<br />

Y<br />

0<br />

0


TRASFORMAZIONI GEOMETRICHE<br />

ROTAZIONE<br />

• è una trasformazione<br />

elementare conforme<br />

(=mantiene inalterati gli angoli)<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

<br />

cos<br />

<br />

sen<br />

sen<br />

<br />

x<br />

cos<br />

<br />

y<br />

• parametri:1<br />

rotazione a


TRASFORMAZIONI GEOMETRICHE<br />

VARIAZIONE DI SCALA ISOTROPA<br />

• è una trasformazione<br />

elementare conforme<br />

(=mantiene inalterati gli angoli)<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

x<br />

<br />

y<br />

• parametri: 1<br />

fattore di<br />

scala l


TRASFORMAZIONI GEOMETRICHE<br />

TAGLIO<br />

• è una trasformazione<br />

elementare non conforme<br />

• parametri: 1<br />

angolo di taglio b<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

<br />

1 tan <br />

x<br />

<br />

0<br />

1 y


TRASFORMAZIONI GEOMETRICHE<br />

VARIAZIONE DI SCALA ANISOTROPA LUNGO GLI ASSI<br />

• è una trasformazione<br />

elementare non conforme<br />

•Parametri:2<br />

fattore di scala l 1<br />

fattore di scala l 2<br />

• Se l1 = l2 siamo nel<br />

caso di variazione di scala<br />

ad 1 parametro<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

1<br />

0<br />

0 <br />

x<br />

<br />

<br />

2<br />

y


TRASFORMAZIONI GEOMETRICHE<br />

ROTOTRASLAZIONE CONFORME CON VARIAZIONE DI SCALA<br />

HELMERT<br />

• è una trasformazione<br />

conforme<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

cos<br />

<br />

sen<br />

sen<br />

<br />

x<br />

cos<br />

<br />

y<br />

X<br />

<br />

Y<br />

0<br />

<br />

<br />

<br />

0<br />

• parametri: 4<br />

traslazione Xo<br />

traslazione Yo<br />

rotazione a<br />

fattore di scala l<br />

X<br />

<br />

<br />

Y<br />

<br />

•Si possono avere risultati<br />

diversi se la variazione di scala<br />

è diversa lungo i due assi l 1 l 2<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

<br />

1<br />

<br />

0<br />

0 cos<br />

<br />

<br />

2sen<br />

sen<br />

<br />

x<br />

X<br />

cos<br />

<br />

y<br />

Y<br />

0<br />

<br />

<br />

<br />

0


TRASFORMAZIONI GEOMETRICHE<br />

Traslazione<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

0<br />

0<br />

Y<br />

X<br />

y<br />

x<br />

Y<br />

X<br />

Rotazione<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

y<br />

x<br />

Y<br />

X<br />

<br />

<br />

<br />

<br />

cos<br />

sen<br />

sen<br />

cos<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

0<br />

0<br />

cos<br />

cos<br />

Y<br />

X<br />

y<br />

x<br />

sen<br />

sen<br />

Y<br />

X<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

y<br />

x<br />

Y<br />

X<br />

<br />

Variazione di scala<br />

Cambiamento del sistema di riferimento


TRASFORMAZIONI GEOMETRICHE<br />

TRASFORMAZIONE AFFINE<br />

• è una trasformazione non<br />

conforme<br />

X<br />

<br />

Y<br />

<br />

<br />

<br />

<br />

1<br />

<br />

0<br />

0 <br />

1<br />

<br />

<br />

2<br />

0<br />

tan <br />

1<br />

<br />

<br />

<br />

cos<br />

<br />

sen<br />

sen<br />

<br />

x<br />

X<br />

cos<br />

<br />

y<br />

Y<br />

0<br />

<br />

<br />

<br />

0<br />

•Può essere vista come<br />

sequenza di doppia<br />

variazione di scala,<br />

traslazione, rotazione e<br />

taglio<br />

• parametri: 6<br />

fattore di scala l1<br />

fattore di scala l2<br />

X<br />

<br />

<br />

Y<br />

<br />

X a00 a01y<br />

a10x<br />

Y b00 b01y<br />

b10x<br />

traslazione Xo<br />

traslazione Yo<br />

rotazione<br />

taglio<br />

b<br />

a


TRASFORMAZIONI GEOMETRICHE<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

0<br />

0<br />

2<br />

1<br />

cos<br />

cos<br />

1<br />

tan<br />

1<br />

0<br />

0<br />

Y<br />

X<br />

y<br />

x<br />

sen<br />

sen<br />

Y<br />

X<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

Correzioni delle deformazioni<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

y<br />

x<br />

Y<br />

X<br />

1<br />

0<br />

tan<br />

1 <br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

0<br />

0<br />

Y<br />

X<br />

y<br />

x<br />

Y<br />

X<br />

taglio<br />

traslazione<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

y<br />

x<br />

λ<br />

0<br />

0<br />

Y<br />

X<br />

2<br />

1<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

y<br />

x<br />

Y<br />

X<br />

<br />

<br />

<br />

<br />

cos<br />

sen<br />

sen<br />

cos<br />

rotazione<br />

scala


TRASFORMAZIONI GEOMETRICHE<br />

TRASFORMAZIONE BILINEARE<br />

• è una trasformazione<br />

non conforme<br />

• Può essere vista come<br />

sequenza di doppia<br />

variazione di scala,<br />

traslazione, rotazione e<br />

taglio<br />

•Non si tratta di equazioni<br />

lineari, ma di grado 2<br />

• Parametri: 8<br />

X<br />

<br />

<br />

Y<br />

<br />

X a00 a01y<br />

a10x<br />

a11yx<br />

Y b00 b y b10x<br />

b11yx<br />

X<br />

cos<br />

α<br />

λ<br />

<br />

Y<br />

senα<br />

senα<br />

<br />

x<br />

<br />

X<br />

<br />

0<br />

<br />

cos α y01<br />

<br />

Y<br />

0


TRASFORMAZIONI GEOMETRICHE<br />

TRASFORMAZIONE PROIETTIVA (o omografica)<br />

• è una trasformazione non<br />

conforme<br />

• utilizzata in fotogrammetria per<br />

il raddrizzamento, caso<br />

particolare in cui Z è costante<br />

X<br />

Y<br />

<br />

<br />

a1x<br />

a2<br />

y a<br />

c1x<br />

c2<br />

y 1<br />

b1<br />

x b2<br />

y b3<br />

c x c y 1<br />

1<br />

2<br />

3<br />

• parametri: 8<br />

X<br />

<br />

<br />

Y


TRASFORMAZIONI GEOMETRICHE<br />

Trasformazione proiettiva<br />

Applicazione della<br />

trasformazione<br />

proiettiva alla pianta<br />

X<br />

<br />

<br />

Y<br />

<br />

prospettica di Mortier


TRASFORMAZIONI GEOMETRICHE<br />

TRASFORMAZIONE POLINOMIALE<br />

•Dallo sviluppo del polinomio<br />

si ottengono diverse<br />

trasformazioni in base ai<br />

termini considerati<br />

X<br />

<br />

m<br />

<br />

i0<br />

n<br />

<br />

j0<br />

a<br />

ij<br />

x<br />

i<br />

y<br />

j<br />

Y<br />

<br />

m<br />

<br />

i0<br />

n<br />

<br />

j0<br />

b<br />

ij<br />

x<br />

i<br />

y<br />

j<br />

X<br />

Y<br />

<br />

<br />

a<br />

b<br />

2 2<br />

2 2<br />

3 3<br />

00<br />

a01y<br />

a10x<br />

a11yx<br />

a02<br />

y a20x<br />

a12xy<br />

a21x<br />

y a03y<br />

a30x<br />

<br />

2 2<br />

2 2<br />

3 3<br />

00<br />

b01y<br />

b10x<br />

b11yx<br />

b02y<br />

b20x<br />

b12xy<br />

b21x<br />

y b03y<br />

b30x<br />

<br />

X<br />

<br />

<br />

Y<br />

<br />

Trasformazione polinomiale a 12 parametri<br />

...<br />

...


TRASFORMAZIONI GEOMETRICHE<br />

TRASFORMAZIONE POLINOMIALE<br />

X<br />

<br />

<br />

Y<br />

<br />

Trasformazione polinomiale<br />

di primo grado<br />

X a00 a01y<br />

a10x<br />

b b y b x<br />

Y<br />

00 01<br />

<br />

10<br />

Trasformazione polinomiale<br />

di secondo grado<br />

X a00 a01y<br />

a10x<br />

a11yx<br />

b b y b x b yx<br />

Y<br />

00 01 10<br />

<br />

11


TRASFORMAZIONI GEOMETRICHE<br />

confronti<br />

Affine Bilineare Proiettiva


TRASFORMAZIONI GEOMETRICHE<br />

COORDINATE OMOGENEE<br />

Le traslazioni sono applicate mediante somme, mentre le altre trasformazioni come<br />

prodotti matriciali. Per rendere più veloce il calcolo, la computer graphics utilizza le<br />

coordinate omogenee e solo operazioni di prodotto tra matrici.<br />

Il punto (x,y) è espresso in coordinate omogenee mediante la tripletta (x,y,1)<br />

con x = x h /w; y = y h /w e w ≠ 0.<br />

Per cui le trasformazioni si possono riassumere come il prodotto delle matrici:<br />

X<br />

<br />

<br />

<br />

Y<br />

<br />

<br />

1 <br />

<br />

1<br />

<br />

<br />

o<br />

<br />

0<br />

o<br />

1<br />

0<br />

dx<br />

x<br />

d<br />

<br />

<br />

<br />

y<br />

<br />

y<br />

<br />

1 <br />

<br />

1<br />

Traslazione<br />

d x spostamento lungo x<br />

d y spostamento lungo y<br />

X<br />

<br />

<br />

<br />

Y<br />

<br />

<br />

1 <br />

<br />

cos<br />

<br />

<br />

sin<br />

<br />

0<br />

sin<br />

cos<br />

0<br />

0<br />

x<br />

0<br />

<br />

<br />

<br />

<br />

y<br />

<br />

1<br />

<br />

1<br />

Rotazione<br />

a angolo di rotazione


TRASFORMAZIONI GEOMETRICHE<br />

COORDINATE OMOGENEE<br />

X<br />

sx<br />

<br />

<br />

<br />

<br />

Y<br />

<br />

o<br />

<br />

1 <br />

<br />

0<br />

Le riflessioni sono casi particolari di trasformazioni di scala<br />

X<br />

1<br />

<br />

<br />

<br />

<br />

Y<br />

<br />

0<br />

<br />

1 <br />

<br />

0<br />

0<br />

1<br />

0<br />

o<br />

o<br />

x<br />

o<br />

<br />

<br />

<br />

<br />

y<br />

<br />

1<br />

<br />

1<br />

0<br />

x<br />

0<br />

<br />

<br />

<br />

<br />

y<br />

<br />

1<br />

<br />

1<br />

Riflessione rispetto l’asse x<br />

s<br />

y<br />

0<br />

X<br />

1<br />

<br />

<br />

<br />

<br />

Y<br />

<br />

0<br />

<br />

1 <br />

<br />

0<br />

Variazione di scala<br />

s x fattore di scala lungo x<br />

s y fattore di scala lungo y<br />

0<br />

1<br />

0<br />

0<br />

x<br />

0<br />

<br />

<br />

<br />

<br />

y<br />

<br />

1<br />

<br />

1<br />

Riflessione rispetto l’asse y<br />

X<br />

1<br />

<br />

<br />

<br />

<br />

Y<br />

<br />

0<br />

<br />

1 <br />

<br />

0<br />

0<br />

1<br />

0<br />

0<br />

x<br />

0<br />

<br />

<br />

<br />

<br />

y<br />

<br />

1<br />

<br />

1<br />

Riflessione rispetto l’origine<br />

degli assi<br />

X<br />

<br />

<br />

<br />

Y<br />

<br />

<br />

1 <br />

<br />

1<br />

<br />

<br />

b<br />

<br />

0<br />

a<br />

1<br />

0<br />

0<br />

x<br />

0<br />

<br />

<br />

<br />

<br />

y<br />

<br />

1<br />

<br />

1<br />

Taglio<br />

a deformazione rispetto asse x<br />

b deformazione rispetto asse y


TRASFORMAZIONI GEOMETRICHE<br />

RESAMPLING<br />

Per la creazione dell’immagine<br />

finale, avente gli assi paralleli al<br />

sistema di riferimento esterno, si<br />

utilizza la tecnica dell’inverse<br />

mapping che consiste nel riempire<br />

una immagine vuota di dimensione<br />

opportune con dei valori ricavati<br />

per interpolazione dell’immagine<br />

iniziale.<br />

Matrice immagine<br />

iniziale<br />

Matrice immagine<br />

finale<br />

NEAREST NEIGHBOUR<br />

•Consiste nell’assegnare ad ogni punto<br />

del dominio il valore del pixel campionato<br />

più vicino<br />

•E’ un approccio molto semplice, e la<br />

soluzione finale è unica


TRASFORMAZIONI GEOMETRICHE<br />

INTERPOLAZIONE BILINEARE<br />

• interpola linearmente i pixel lungo ogni<br />

riga, poi interpola i pixel lungo ogni<br />

colonna<br />

• L'interpolazione bilineare assegna al<br />

pixel di destinazione D un valore che è<br />

una funzione bilineare dei quattro pixel<br />

vicini alla sorgente S nell'immagine di<br />

input<br />

INTERPOLAZIONE BICUBICA<br />

•calcola il valore di un pixel della<br />

immagine di output facendo una media<br />

dei 16 pixel che circondano il pixel<br />

corrispondente nell'immagine di input<br />

• A volte in realtà i risultati del bicubico<br />

risultano peggiori del bilineare e molto<br />

dipende dall'immagine di input


TRASFORMAZIONI GEOMETRICHE<br />

<strong>Trasformazioni</strong> LOCALI:<br />

• I valori dei parametri di trasformazione sono<br />

calcolati per ogni singolo punto dell’immagine e<br />

hanno validità locale. Deformare solo una parte<br />

dell’immagine senza che il resto venga deformato.<br />

•Algoritmi simili alle trasformazioni globali, ma<br />

applicati a aree minori: trasformazione esatta per i<br />

punti noti e approssimata per gli altri<br />

• Morphing<br />

Warping


TRASFORMAZIONI GEOMETRICHE<br />

MORPHING e WARPING<br />

• in computer-graphics, date due immagini, una iniziale e una finale, è<br />

possibile ottenere un’animazione di trasformazione tra gli oggetti<br />

rappresentati mediante una sequenza di immagini intermedie: MORPHING<br />

• Si può considerare somma di due effetti differenti:<br />

dissolvenza incrociata, ogni pixel di ogni frame intermedio è dato<br />

dalla media pesata delle immagini di partenza e di arrivo<br />

image warping, definire corrispondenze tra immagine iniziale e<br />

finale mediante primitive di controllo posizionate in zone<br />

caratteristiche. (Volto: occhi, naso, bocca). Dopo la<br />

triangolazione, nelle fasi intermedie viene mappato il contenuto<br />

dei corrispondenti triangoli<br />

Lo scopo è quello di portare le due immagini ad avere lo stesso tipo di<br />

deformazioni per poterle quindi miscelare.<br />

WARPING:<br />

scomposizione del dominio in elementi finiti<br />

creazione di campi di forze


TRASFORMAZIONI GEOMETRICHE


TRASFORMAZIONI GEOMETRICHE<br />

Scomposizione del dominio<br />

L’immagine viene suddivisa in modo manuale o<br />

automatico in patch triangolari (triangolazione di<br />

Delunay). La triangolazione sull’immagine finale viene<br />

riportata sull’immagine iniziale utilizzando i punti<br />

omologhi. Poi si può:<br />

• Modificare la patch dell’immagine sorgente per portarla<br />

a coincidere con quella finale mediante una<br />

trasformazione affine.<br />

• Utilizzare i lati dei triangoli come primitive di controllo<br />

tra immagine iniziale e finale.


TRASFORMAZIONI GEOMETRICHE


TRASFORMAZIONI GEOMETRICHE<br />

Risultato:<br />

adattamento dell’immagine<br />

rispetto ai punti di controllo


TRASFORMAZIONI GEOMETRICHE<br />

Campi di forze<br />

•L’algoritmo per punti di forza è il più semplice.<br />

Una volta calcolato il vettore spostamento per<br />

ogni coppia di punti omologhi, ogni altro punto<br />

(pixel o nodo) sarà spostato in ragione di un<br />

vettore ottenuto come media pesata dei vettori<br />

riferimento.<br />

•I problemi da risolvere sono l’individuazione di<br />

un criterio per la scelta dei pesi dei vettori di<br />

riferimento e l’elevato numero di questi ultimi.<br />

•Esso è di difficile utilizzazione con immagini<br />

raster in quanto è praticamente inevitabile che<br />

delle linee rette nell’immagine di partenza<br />

risultino curve dopo la trasformazione. Problemi<br />

nell’uso con cartografia o disegno di architettura,<br />

più utilizzato per fotografie. Da buoni risultati con<br />

immagini vettoriali perché agisce solo sui nodi.


TRASFORMAZIONI GEOMETRICHE<br />

I parametri della trasformazione vengono<br />

stimati per ogni punto dell’immagine<br />

attraverso una rototraslazione anisotropa


TRASFORMAZIONI GEOMETRICHE<br />

REFERENZIAZIONE - TRASFORMAZIONE<br />

scomposizione del dominio<br />

TRASFORMAZIONI<br />

GLOBALI<br />

+<br />

TRASFORMAZIONI<br />

LOCALI<br />

• preparazione degli<br />

elaborati;<br />

• analisi delle deformazioni;<br />

• trasformazione globale<br />

(referenziazione) tra i<br />

sistemi di coordinate<br />

dell’immagine e di<br />

riferimento;<br />

• trasformazioni locali<br />

(e conseguente costruzione<br />

della nuova immagine);<br />

• verifica della nuova<br />

immagine.


TRASFORMAZIONI GEOMETRICHE<br />

Esempio di TRASFORMAZIONI<br />

Il profilo di massima delle<br />

scomposizione del dominio<br />

due piante è confrontabile<br />

In alcune zone sono<br />

presenti delle<br />

deformazioni tali da non<br />

consentire una<br />

sovrapposizione<br />

puntuale delle due<br />

cartografie<br />

In queste zone si dovrà<br />

intervenire con delle<br />

trasformazioni di tipo<br />

locale


TRASFORMAZIONI GEOMETRICHE<br />

Sovrapposizione delle due<br />

carte in seguito alla<br />

trasformazione locale<br />

scomposizione del dominio<br />

Sovrapposizione delle due carte<br />

in seguito alla trasformazione<br />

globale


TRASFORMAZIONI GEOMETRICHE<br />

ESEMPIO: S. GIORGIO<br />

Trasformazione globale<br />

<strong>Trasformazioni</strong> locali


TRASFORMAZIONI GEOMETRICHE<br />

Sovrapposizione dopo la<br />

trasformazione globale<br />

Sovrapposizione dopo le<br />

trasformazioni locali

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!