Documente Academic
Documente Profesional
Documente Cultură
04
04
1
Cum definim operatiile geometrice
x' X ( x, y)
x’ , y’ : y' Y ( x, y) x, y :
coordonatele pixelilor
coordonatele pixelilor
inainte de transfomare
dupa transfomare
X, Y:
ecuatiile de modificare
a coordonatelor
xplan
y plan x
5
Transformari geometrice afine
elementare
Translatia Deplasarea in plan a continutului imaginii;
echivalenta cu schimbarea originii sistemului
de coordonate atasat imaginii.
6
Transformari geometrice afine
elementare
(0,0) y
Translatia
(0,0) y
(x0, y0)
(0,0) y’ y’
(0,0)
x
x’ x’
7
Transformari geometrice afine
elementare
Scalarea Intinderea/ comprimarea continutului imaginii
dupa una sau ambele axe de coordonate.
NU pastreaza distantele dintre pixeli
x ' X ( x, y ) x
y ' Y ( x, y ) y
, 0
Parametri : , - factori de scalare pe
verticala/ orizontala
> 1, < 1
=>
x x’
< 1, > 1
=>
9
Transformari geometrice afine
elementare
Inclinarea Inclinarea imaginii reprezinta deplasarea pixelilor
dupa o singura coordonata, dependent de pozitia
globala in imagine, cealalta coordonata ramanand
nemodificata .
x ' X ( x, y ) x x' X ( x, y ) x sy
y ' Y ( x, y ) tx y y ' Y ( x, y ) y
t 0 s0
inclinare pe orizontala inclinare pe verticala
x x’
11
Transformari geometrice afine
elementare
x' X ( x, y ) x sy
Inclinarea pe verticala
y ' Y ( x, y ) y
punctele de y=0 sunt puncte fixe s0
(0,0) y (0,0) y’
x x’
12
Transformari geometrice afine
elementare
Rotatia Deplasare circulara a pixelilor in jurul centrului de
rotatie-originea sistemului de coordonate.
13
Transformari geometrice afine
elementare y’
Rotatia
y’
(0,0) y
(0,0) y x’
x’
x
14
x
Transformari geometrice afine
elementare
Reflexia fata de un centru de reflexie (x0,y0)
x
15
Transformari geometrice afine
elementare
Reflexia fata de un centru de reflexie (x0,y0)
50
x' X ( x, y ) 2 x0 x
y ' Y ( x, y ) 2 y0 y
100
150
200 (0,0) y
250
50
(x’, y’)
50 100 150 200 250
x0 0 100
(x0, y0)
y0 0
150
200
(x, y)
x
250
50 100 150 200 250
16
Transformari geometrice afine
compuse
Reflexia fata de o axa de reflexie
24
Descompunerea operatiilor
geometrice complexe
dandu-se o serie de transf.
elementare, se gaseste o
transf. echivalenta unica.
Ex. Transformarea echivalenta unei rotatii cu 45º (=45º), inclinare
verticala cu coeficient de 0.1 (s=0.1), scalare orizontala de 2 (=2)
si scalare verticala de 0.5 (=0.5).
a11 a12 0 1 s cos sin
a21 a22 0 0 1 sin cos
a11 a12 0.5 0 1 0.1 2 / 2 2 / 2
a21 a22 0 2 0 1 2 / 2 2 / 2
a11 a12 0.3535 0.3889
a21 a22 1.4142 1.2728
25
Descompunerea operatiilor
geometrice complexe
dandu-se o transf. afina,
se gasesc transf. elementare
din care e constituita
26
Aplicatii
Aplicatii Morphing
Cunoastem pozitiile unor pixeli
inainte si dupa transfomare,
definind conturul unor regiuni
poligonale.
etc …
26 C. VERTAN
LABORATORUL DE ANALIZA ŞI PRELUCRAREA IMAGINILOR
28
Operatii geometrice
29
Transformari geometrice neliniare
Efectul de perna
30
Implementarea operatiilor
geometrice
In practica, exista doua componente:
1. unde se “muta” fiecare pixel
transformarea geometrica
2. ce valoare este plasata in noua pozitie ?
interpolarea
In practica, imaginile sunt discrete: coordonatele tuturor pixelilor
sunt numere intregi.
Valorile coordonatelor ce se obtin dupa transformarea geometrica
sunt de cele mai multe ori numere reale.
Rezulta necesitatea de a introduce o modalitate de a “fabrica”
coordonate intregi.
31
Implementarea operatiilor
geometrice
Varianta 1: transportul pixelilor (pixel carry-over)
Varianta 2: umplerea pixelilor (pixel filling)
m x’
T y’
n
(x’, y’) coordonate ne-intregi
(m, n) coordonate intregi
dupa transformare
inainte de transformare
32
Implementarea operatiilor
geometrice
Transportul pixelilor (pixel carry-over)
m x’
T
n y’
(x’, y’) coordonate ne-intregi
(m, n) coordonate intregi dupa transformare
inainte de transformare
valoarea trebuie distribuita la
pixelii vecini
33
Implementarea operatiilor
geometrice
Probleme ale implementarii directe
x ' X ( x, y ) 2 x
coordonate ce nu apar
y ' Y ( x, y ) y / 2
0 1 2 3 4 5 6 0 1 6
2 3 4 5
0 0
1 1
2 2
3 3
4 4
5 5
coordonate initiale coordonate transformate
coordonate ne-intregi
34
Implementarea operatiilor
geometrice
Umplerea pixelilor (pixel filling)
x
m’
y T-1 n’
(x, y) coordonate ne-intregi (m’, n’) coordonate intregi
inainte de transformare dupa transformare
[x] x [x]+1
f ([ x ] 1) f ([ x ])
f ( x) x [ x ] f ([ x ])
([ x ] 1) [ x ]
f ( x) ( f 2 f1 )( x [ x]) f1
37
Implementarea operatiilor
geometrice
Interpolarea biliniara f1 = f(m, n)
f1 f2 = f(m+1, n)
f3 = f(m, n+1)
f3 f4 = f(m+1, n+1)
g1
f (x, y)
f2 (m,n)
m = [x]
g2 (m,n+1) n = [y]
f4
x
(m+1,n) (m+1,n+1)
(m+1,n) (m+1,n+1)
g1 ( f 2 f1 )( x m) f1
g1 este interpolat liniar din f1 si f2
g 2 ( f 4 f 3 )( x m) f 3
g2 este interpolat liniar din f3 si f4
f este interpolat liniar din g1 si g2 f ( g 2 g1 )( y n ) g1
39
Implementarea operatiilor
geometrice
g1 ( f 2 f1 )( x m) f1 Interpolarea biliniara
g 2 ( f 4 f 3 )( x m) f 3
f ( g 2 g1 )( y n) g1
f ( f 4 f 3 )( x m) f 3 ( f 2 f1 )( x m) f1 ( y n)
( f 2 f1 )( x m) f1
f f 4 f 3 f 2 f1 x m ( y n) ( f 2 f1 )( x m)
( f 3 f1 )( y n) f1
f x m ( y n) ( x m) ( y n)
40