1
Sisteme de Vedere Artificială
Optica
Sorin M. Grigorescu
Universitatea Transilvania din BraşovLaboratorul de Vedere Artificială Robustă şi Control
2
Cuprins
�Formarea imaginilor
�Modelul camerei ideale
�Parametrii intrinseci şi extrinseci ai unei camere
�Calibrarea camerelor
3
Geometria lumii reale
Cât de înaltă este femeia?
La ce înălţime se află camera?
Care este rotaţia camerei?
Care este distanţa focală a camerei?
Care bilă este mai apropiată?
4
Vederea artificială 3D
Înţelegereaimaginii
Sorin DanTibi
Minge Telefon
Carte Termos
ImprimantăRucsac
Cană
Mingi de tenis
Tablou electric
820 pagini 1L
decuplat
Model 3D(spațiu cartezian)
Grafică asistată de calculator
5
Camera Ideala
Camere “biologice”
6
Ochiul uman Ochiul unui țânțar
Camere digitale
7
Camere foto
Basorelief din 1544 reprezentând“Camera Obscura”
Proiectarea unei camere
8
� Poziționarea unui film fotografic în fața unui obiect
� Se obține o copie a obiectului în imagine?
Obiect Film
Proiectarea unei camere
9
� Adăugarea unei bariere pentru blocarea majorității razelor luminoase
� Deschiderea din barieră poartă denumirea de apertură
Obiect FilmBarieră
Camera ideală
10
� Razele de lumină ce descriu obiectul trec printr-un singur punct
� Punctul poartă numele de centru de proiecție, sau punct focal
� Imaginea se formează în planul imaginii
Punct focal
Planul imaginii
Imagine virtuală
fff – distanţă focală
11
Modelarea camerelor ideale
O cameră, sau un senzor vizual, poate fi descrisă ca un sistem ce
execută o transformare ireversibilă din coordonatele spaţiului 3D real
în coordonatele 2D ale planului imaginii.
P – punct 3D (real)p – punct 2D (în imagine)
f – distanță focală
Z
Xfx ⋅=
Z
Yfy ⋅=
[ ]TZYXP 1=
[ ]Tyxp 1=
Centru
optic
P
p Punct
principal
Planul
imaginii
x
y
x
y
zf
12
Modelarea camerelor ideale
[ ]TZYXX 1=
[ ]Tyxx 1=
23 ℜ→ℜ
Z
Xfx ⋅=
Z
Yfy ⋅=
� Reprezentare în coordonate omogene a punctelor 3D și 2D:
� Proiecția punctelor 3D în planul imaginii este dată de distanța focală f :
� Transformare ireversibilă 3D -> 2D:
Reducerea dimensiunii 3D -> 2D
13
� Ce se pierd?
� unghiurile
� distanțele
Scena 3D Imaginea 2D
Camera ideală
14
� Importanţa dimensiunii aperturii
Obiect FilmBarieră
Micșorarea aperturii
15
� De ce să nu creăm o apertură cât mai mică?
� Apar erori de difracție
Micșorarea aperturii
16
17
Lentile
Adăugarea unei lentile focale
Obiect FilmLentilă
� Lentila concentrează razele de lumină într-un singur punct
18
Punct focal
f
Adăugarea unei lentile focale
Obiect FilmLentilă
� Lentila concentrează razele de lumină într-un singur punct
� Toate razele converg într-un punct focal aflat la distanța focală f
19
“zonă de confuzie”
Adăugarea unei lentile focale
Obiect FilmLentilă
� Lentila concentrează (focus) razele de lumină pe filmul fotografic
� Obiectele sunt în focus doar la o anumită distanță
� Celelalte puncte converg într-o zonă de confuzie
20
Ecuația lentilei
f
D D’
Obiect FilmLentilă21
Ecuația lentilei
1
D’ D
1 1
f+ = Orice punct ce satisface ecuația
lentilei este în focus
f
D D’
Obiect FilmLentilă22
Puncte ce nu se află în focus
23
Lentile
24
Aberaţii cromatice
�Lentilele ce au indici de refracţie diferiţi pentru diferite lungimi de
undă, produc aberaţii cromatice
25
Aberaţii cromatice
�Razele mai îndepărtate faţă de axa optică intră în focus la un punct
mai apropiat de lentilă
26
Aberaţii cromatice�Deviaţiile cele mai evidente sunt cele ale razelor ce trec prin
marginea lentilei
�Distorsiunile descresc odată cu micşorarea distanţei la axa optică
Fără distorsiune
Distorsiune tip pernă
Distorsiune tip butoi(lentile fisheye) 27
28
Parametrii Camerei
29
Modelarea camerelor ideale
O cameră, sau un senzor vizual, poate fi descrisă ca un sistem ce
execută o transformare ireversibilă din coordonatele spaţiului 3D real
în coordonatele 2D ale planului imaginii.
P – punct 3D (real)p – punct 2D (în imagine)
f – distanță focală
Z
Xfx ⋅=
Z
Yfy ⋅=
Centru
optic
P
p Punct
principal
Planul
imaginii
x
y
x
y
zf
� � =
�
�
�
1
= � � � 1 � – coordonatele omogene ale scenei
� � =
1= 1 � – coordonatele omogene ale imaginii
� Conversia din coordonate omogene:
� � – factor de scalare 30
Coordonate omogene
�→
�,
�
�
�
→
�,
�,�
�
=
=
10100
000
000
Z
Y
X
f
f
Z
fY
fX
p y
x
Transformarea unui punct 3D in planul 2D
31
X
Centruloptic Planul imaginii
Axa principală
Z
Xfx ⋅=
Z
Yfy ⋅=Ecuațiile de proiecție:
Matricea deproiecţie �
� = � · �
�
=
=
10100
000
000
Z
Y
X
f
f
Z
fY
fX
p y
x
Parametrii camerei
32
�
�Parametrii matricei de proiecţie (parametrii camerei) ideali:
� Intrinseci:
�Centrul optic al imagini la
coordonatele 2D (0, 0)
�Lăţimea unui pixel este
egală cu înălţimea sa
�Fără oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Poziţia camerei la
coordonatele reale (0,0, 0)
Parametrii intrinseci
33
�
�Parametrii matricei de proiecţie (parametrii camerei) ideali:
� Intrinseci:
�Centrul optic al imagini la
coordonatele 2D (0, 0)
�Lăţimea unui pixel egală
cu înălţimea sa
�Fără oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Poziţia camerei la
coordonatele reale (0,0, 0)
Matricea parametrilor intrinseci
=
=
10100
000
000
Z
Y
X
f
f
Z
fY
fX
p y
x
� = � � 0 �→
Parametrii intrinseci
34
� Intrinseci:
�Centrul optic al imagini la
coordonatele 2D (0, 0)
�Centrul optic la (��, ��)
�Lăţimea unui pixel egală
cu înălţimea sa
�Fără oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Poziţia camerei la
coordonatele reale (0,0, 0)
=
=
10100
00
00
0
0
Z
Y
X
vf
uf
Z
fY
fX
p y
x
Parametrii intrinseci
35
� Intrinseci:
�Centrul optic la (��, ��)
�Lăţimea unui pixel egală
cu înălţimea sa
�Pixeli dreptunghiulari
�Fără oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Poziţia camerei la
coordonatele reale (0,0, 0)
=
=
10100
00
00
0
0
Z
Y
X
v
u
Z
fY
fX
p β
α
Parametrii intrinseci
36
� Intrinseci:
�Centrul optic la (��, ��)
�Pixeli dreptunghiulari
�Fără oblicitate (skew)
�Cu oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Poziţia camerei la
coordonatele reale (0,0, 0)
=
=
10100
00
0
0
0
Z
Y
X
v
us
Z
fY
fX
p β
α
Translaţia şi rotaţia camerei
37
{C}
{W}
.X
T
Parametrii extrinseci
38
� Intrinseci:
�Centrul optic la (��, ��)
�Pixeli dreptunghiulari
�Cu oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Poziţia camerei la coordonatele
reale 0,0, 0
�Poziţia la coordonatele ��, ��, ��
=
=
1100
010
001
100
0 0
0
Z
Y
X
t
t
t
v
us
Z
fY
fX
p
Z
Y
X
β
α
� = � � � �
Parametrii extrinseci
39
� Intrinseci:
�Centrul optic la (��, ��)
�Pixeli dreptunghiulari
�Cu oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Există rotaţie
�Poziţia la coordonatele ��, ��, ��
�� � =1 0 0
0 cos � #sin�
0 sin� cos �
�� & =
cos& 0 sin&
0 1 0
#sin& 0 cos &
�� ' =cos ' #sin ' 0
sin ' cos ' 0
0 0 1
Parametrii extrinseci
40
� Intrinseci:
�Centrul optic la (��, ��)
�Pixeli dreptunghiulari
�Cu oblicitate (skew)
�Extrinseci:
�Nu există rotaţie a camerei
�Există rotaţie
�Poziţia la coordonatele ��, ��, ��
=
=
1100
0
333231
232221
131211
0
0
Z
Y
X
trrr
trrr
trrr
v
us
Z
fY
fX
p
Z
Y
X
β
α
� = � � � �
Matricea de proiecţie a camerei
41
� Intrinseci:
�Centrul optic la (��, ��)
�Pixeli dreptunghiulari
�Cu oblicitate (skew)
�Extrinseci:
�Există rotaţie
�Poziţia la coordonatele ��, ��, ��
=
=
1100
0
333231
232221
131211
0
0
Z
Y
X
trrr
trrr
trrr
v
us
Z
fY
fX
p
Z
Y
X
β
α
� = � � � �
Câte grade de libertate există?
Matricea de proiecţie a camerei
42
� Intrinseci:
�Centrul optic la (��, ��)
�Pixeli dreptunghiulari
�Cu oblicitate (skew)
�Extrinseci:
�Există rotaţie
�Poziţia la coordonatele ��, ��, ��
=
=
1100
0
333231
232221
131211
0
0
Z
Y
X
trrr
trrr
trrr
v
us
Z
fY
fX
p
Z
Y
X
β
α
� = � � � � 5 6
43
Calibrarea Camerelor
44
Calibrarea camerelor
�Reprezintă metoda de determinare a parametrilor intrinseci şi
extrinseci ai unei camere
�Acești parametrii sunt necesari atunci când reconstruim informații
din lumea reală într-un mediu virtual 3D
WX
WY
WZ
Spațiul cartezian Spațiul imaginii
xc
ycP
p
p = [Matricea de proiecție] P
Param. Intrinseci = ?
Calibrarea camerelor
� � �
100
0 0
0
v
us
β
α
45
Model planarModel ne-planar
Calibrarea camerelor: abordări�Modelul de calibrare este a-priori cunoscut (dimensiunea căsuţelor din
tabla de şah)
� În procesul de calibrare, modelul este achiziționat sub diferite unghiuri
46
p = [Matrice de proiecție] P
K [R | t]
Puncte observate
estimate: K [R | t] P
Funcție de cost:
Metoda Zhang (1999)
�P – puncte reale 3D (ale modelului de calibrare)
� p – puncte din imagine
∑∑= =
−=n
i
m
j
jiiij PtRKppq1 1
2
),,,(ˆ
47
Metoda Zhang (1999)
�Pașii algoritmului:
�Se cunosc distribuția colțurilor modelului de calibrare
(colțurile tablei de șah)
�Se determină punctele cheie ale tablei de șah
�Se determină corespondențele dintre punctele cheie calculate
pij și cele estimate
�Se minimizează funcția criteriu q, în care parametrii intrinseci
din K variază
p̂
48
49