Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf ·...
Transcript of Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf ·...
![Page 1: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/1.jpg)
1
Sisteme de Vedere Artificială
Reconstrucţia 3D
Sorin M. Grigorescu
Universitatea Transilvania din BraşovLaboratorul de Vedere Artificială Robustă şi Control
![Page 2: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/2.jpg)
2
Cuprins
�Vederea stereo
�Reconstrucţia 3D utilizând camere calibrate paralele
�Geometria epipolară
�Matricea fundamentală
�Puncte de interes (colţuri)
�Calculul corespondenţelor
![Page 3: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/3.jpg)
3
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
şi 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
![Page 4: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/4.jpg)
Matricea de proiecţie a camerei
4
� 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
β
α
� = � � �
![Page 5: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/5.jpg)
Vederea stereo
5
�Punctul � este vizualizat în camerele stângă �� şi dreaptă ���Poziţia 3D a punctului � poate fi reconstruită prin triangulaţie,
cunoscându-se poziţia şi orientarea camerei (calibrare) şi punctele
corespondente
Camera
stângăCamera
dreaptă
P
pL=QL·PpR=QR·P
CRCL
![Page 6: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/6.jpg)
Imagini stânga şi dreaptaCamera stângă ��
Punctul 3D vizualizat P:
�� şi �� puncte corespondente
Camera dreaptă ��
6
�� = �� · �
�� = �� · �
![Page 7: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/7.jpg)
(i) Geometria corespondenţelor (problema corespondenţelor): Avându-se un punct �� în imaginea stângă, care este corespondenţa �� a lui ��în imaginea dreaptă?
(ii) Geometria camerelor (mişcarea): Având un set de puncte corespondente {���↔ ���}, � = 1,… , �, care sunt parametrii camerelor (matricile de proiecţie) �� şi ��pentru cele două vederi?
(iii) Geometria scenei (structura): Având un set de puncte corespondente {���↔ ���} şi matricile de proiecţie �� şi��, care este poziţia punctului real � în spaţiul 3D?
Problemele geometriei stereo
7
![Page 8: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/8.jpg)
Camere paralele şi calibrate
P
CL CR
Z
b
x
y
x
y
pL pR
IL IR
8
![Page 9: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/9.jpg)
9
Sistem de vedere stereo calibrat
� – coordonatele de referinţă
��, ��– centrele optice ale celor două camere
� = � + � – baseline (distanţa dintre cele două centre optice)
, !, "– variabile ce indică orientarea camerei stereo
Matricile de proiecţie ��, �� sunt cunoscute (camerele sunt calibrate)
![Page 10: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/10.jpg)
10
Disparitatea� Calculul coordonatelor 3D virtuale ale scenei vizualizate
� De-a lungul axei # a imaginii, diferenţa dintre punctul �� vizualizat în $� şi �� vizualizat
în $� se numeşte disparitate:%# = ��& − ��&
� Distanţa cameră obiect: dx
TfZ =
��& ��&
�� ��
![Page 11: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/11.jpg)
11
Disparitatea
��& ��&
�� ��
� Calculul coordonatelor 3D virtuale ale scenei vizualizate
� De-a lungul axei # a imaginii, diferenţa dintre punctul �� vizualizat în $� şi �� vizualizat
în $� se numeşte disparitate:%# = ��& − ��&
� Distanţa cameră obiect: dx
TfZ =
![Page 12: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/12.jpg)
Stabilirea corespondenţelor
12
� Dându-se punctul �� în imaginea stângă, care este punctul corespondent �� din imaginea dreaptă?
� Deoarece camerele sunt paralele, punctul corespondent se va căuta de-a lungul axei #a celor două imagini
pL pR=?
IL IR
![Page 13: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/13.jpg)
Stabilirea corespondenţelorBlock Matching
13
� [dmin, dmax ] = H – horopter
�Horopterul este linia de căutare a punctului corespondent �� în imaginea dreaptă $�
P
CL CR
f
(cx, cy)
xL
yL
xR
yR
Z
b
x
y
x
y
Rază
pri
ncip
ală
pL
pR
dmax dmin
H
IL IR
![Page 14: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/14.jpg)
(x, y)Imagine stânga
� Pentru fiecare punct (x, y) din imaginea stângă se defineşte o fereastră centrată pe (x, y)
Corespondenţe prin corelaţie
14
![Page 15: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/15.jpg)
(x, y)Imaginea dreaptă
� Căutarea punctului corespondent într-o regiune de căutare din imaginea dreaptă
Corespondenţe prin corelaţie
15
![Page 16: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/16.jpg)
(x, y)dx(x´, y´)Imaginea dreaptă
� Disparitatea dx este deplasamentul indicat de corelaţia maximă
Corespondenţe prin corelaţie
16
![Page 17: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/17.jpg)
�Există corelaţie între intensităţiile pixelilor
Corespondenţe prin corelaţie
Intensitate pixeli Intensitate pixeli17
![Page 18: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/18.jpg)
∑ ∑
∑
−−−−
−−−−
=
lk
nm
lk
nm
lk
flnkmfglkg
flnkmfglkg
nmh
,
2
,
,
2
,
,
)],[()],[(
)],[)(],[(
],[
media regiunii din imaginemedia kernelului
Determinarea corelaţiei
�Cross-Corelaţie Normalizată (vezi cursul 2)
18
![Page 19: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/19.jpg)
� Pereche de imagini rectificate
� Intensitatea pixelilor din imaginea disparitate este
proporţională cu distanţa cameră-obiect
Imagine stânga Imagine dreapta Hartă de disparitate
Estimarea distanţelor
%# = �� − ��19
![Page 20: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/20.jpg)
Hartă de disparitate
Z – distanţa (m)T – Linia de referinţă (m)f – Distanţa focală (pixeli)dx – Disparitatea (pixeli)
� Distanţa cameră-obiect Z este invers proporţională cu disparitatea
Reproiectarea distanţelor
dx
TfZ =
20
![Page 21: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/21.jpg)
Camere neparalele
P
CL
CR
pL pR
IL IR
21
![Page 22: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/22.jpg)
Stabilirea corespondenţelor
22
� Dându-se punctul �� în imaginea stângă, care este punctul corespondent �� din imaginea dreaptă
pL pR=?
IL IR
![Page 23: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/23.jpg)
��, �� , ��, �� şi � sunt coplanare
� Având un punct într-o imagine, care este corespondentul acelui punct într-o altă imagine?
� Geometria epipolară reduce căutarea punctului corespondent lacăutarea pe o linie
Geometria epipolară
23
P
pLpR
Planul epipolar π
CRCL
![Page 24: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/24.jpg)
Geometria epipolară
(� (��� ��
�Epipolii (� şi (� reprezintă proiecţia unei camere în cealaltă
�Toate liniile epipolare dintr-o imagine trec prin epipoli
24
![Page 25: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/25.jpg)
� Un punct într-o vedere “generează” o linie epipolară în cealaltă vedere
� Punctul corespondent se află pe linia epipolară
� Dacă poziţiile camerelor ��, �� şi proiecţia �� a lui � sunt cunoscute
Geometria epipolară
25
pL
pL
pL=?
pL=?
eL eR
lR
Linie
Epipolară
pentru pL
CRCL
![Page 26: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/26.jpg)
Geometria epipolară�Corespondenţele potenţiale pentru �� se află pe linia epipolară
corespondentă )��Corespondenţele potenţiale pentru �� se află pe linia epipolară
corespondentă )�
26
![Page 27: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/27.jpg)
Epipolii (�, (�= intersecţia liniei de referinţă cu planele imaginilor= imaginea centrului celeilalte camere (� = � · ��; (� = � · ��
Linii epipolare )�, )�= intersecţia planului epipolar π cu planul imaginii
= imaginea razei prin ��, ��
��
�� ��
Planul epipolar= planul ce conţine linia de referinţă
Geometria epipolară
Linia de referinţă
27
��
)�
(�
)�
(�
![Page 28: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/28.jpg)
� Atunci când poziţia punctului � variază, planele epipolare se rotesc în jurul liniei de referinţă. Această familie de plane poartă numele de creion epipolar.
� Toate liniile epipolare se intersectează la epipoli.
“Creionul” epipolar
Linia de referinţă
28
�
(� (�
�� ��
![Page 29: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/29.jpg)
Exemple
29
![Page 30: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/30.jpg)
Exemplu: Camere ce converg
Liniile epipolare sunt în general neparalele30
![Page 31: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/31.jpg)
Exemplu: mişcare paralelă cu planul imaginii
(� → ∞ (� → ∞
31
�Cazul camerelor paralele pe axa #
![Page 32: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/32.jpg)
e
e’
Exemplu: mişcarea de înaintare
�Epipolii au aceleaşi coordonate în ambele imagini
�Punctele corespondente se deplasează de-a lungul liniilor ce radiază
din ( (focus of expansion)
32
![Page 33: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/33.jpg)
Matricea fundamentală ,
Planul epipolar
��
�� ��
��
)� )�
�Geometria epipolară dintre două imagini este descrisă de o matrice
de transformare - 3 × 3, intitulată matricea fundamentală
�- mapează (în coordonate omogene) punctele din imaginea stângă în
linii în imaginea dreaptă
�Linia epipolară din imaginea dreaptă $�, ce corespunde punctului ��din imaginea stângă $� este - · ��
�Constrângerea epipolară pentru puncte corespondente este ��0-�� = 0
$� $� 33
![Page 34: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/34.jpg)
Matricea fundamentală
Matricea fundamentală ,Cameră necalibrată
��
�� ��
��
)� )�
$� $�
� – matricea parametriilor intrinseci ai camerei stângi �� � – matricea parametriilor intrinseci ai camerei drepte ��� – rotaţia imaginii drepte $� faţă de camera stângă ��
�� · �0 · � · � × · �
23 · �� = 0
- 34
![Page 35: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/35.jpg)
Produsul vectorial
�Rezultatul produsului vectorial dintre doi vectori este un vector
perpendicular pe vectorii de intrare
� 4 este perpendicular atât pe 5, cât şi pe 4, ceea ce înseamnă ca
produsul lor scalar este 0
56 × � = 4656 · 46 = 0
� · 46 = 0
35
![Page 36: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/36.jpg)
Produsul vectorial ca şi operator algebric�Produsul vectorial cu un vector � poate fi reprezentat printr-o
multiplicare cu o matrice 3 × 3
36
![Page 37: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/37.jpg)
Matricea esenţială
Matricea fundamentală ,Cameră calibrată
��
�7�
��
��
�7�0 · � · � × · �7� = 0
8
��
�0�7�
�7� = �23 · �� – raza ce trece prin �� şi coordonatele camerei stângi ��
�7� = �23 · �� – raza ce trece prin �� şi coordonatele camerei drepte ��
�7�0 · 8 · �7� = 0
37
![Page 38: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/38.jpg)
Proprietăţiile matricei fundamentale
�-�� este linia epipolară asociată lui ��
�-0�� este linia epipolară asociată lui ��
�-(� = 0 şi -0(� = 0
�- are rangul 2
38
![Page 39: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/39.jpg)
Exemplu: 9 pentru camere paralele
39
![Page 40: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/40.jpg)
Rectificarea imaginilor
�Reproiectarea imaginilor într-
un plan comun în care
imaginile sunt paralele de-a
lungul axei #
�După rectificare, mişcarea
pixelilor este orizontală
� 2 matrici de transformare 3 × 3,
câte una pentru fiecare imagine
40
![Page 41: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/41.jpg)
Estimarea matricei ,
�- poate fi estimată prin determinarea punctelor corespondente dintre
imagini, fără a se cunoaşte în prealabil valorile de calibrare ale
camerelor ( �, �, � sau �)
41
![Page 42: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/42.jpg)
Estimarea matricei ,Algoritmul 8-puncte
�Pentru oricare pereche de puncte corespondente �� şi ��, - este
definită de:
�Fie �� = #� :� 1 0, �� = #� :� 1 0 şi - =
;33 ;3< ;3=;<3 ;<< ;<=;=3 ;=< ;==
�Fiecare pereche de puncte corespondente respectă ecuaţia liniară:
��0 · - · �� = 0
#�#�;33 + :�#�;3< + #�;3= + #�:�;<3 + :�:�;<< +
+:�;<= + #�;=3 + :�;=< + ;== = 042
![Page 43: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/43.jpg)
Estimarea matricei ,Algoritmul 8-puncte
#�3#�3 :�3#�3 #�3 #�3:�3 :�3:�3 :�3 #�3 :�3 1#�<#�< :�<#�< #�< #�<:�< :�<:�< :�< #�< :�< 1
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮#�?#�? :�?#�? #�? #�?:�? :�?:�? :�? #�? :�? 1
;33;3<;3=;<3;<<;<=;=3;=<;==
= 0
�Practic, în locul rezolvării ecuaţiei @; = 0, vom determina ; prin
minimizarea @; , ceea ce corespunde celei mai mici valori proprii a
matricei @0@
43
![Page 44: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/44.jpg)
Estimarea matricei ,Algoritmul 8-puncte
�- trebuie să aibă rangul 2
�Pentru a impune rangul 2 asupra lui -, - va fi înlocuită prin -‘
�-‘ va minimiza ecuaţia - − -′ supusă constrângerii de rang
�Calculul se obţine prin descompunerea în valori singulare (Singular
Value Decomposition – SVD), unde - = DΣF0
�-′ = DΣ′F0 este soluţia ecuaţiei
Σ =G3 0 00 G< 00 0 G=
Σ′ =G3 0 00 G< 00 0 0
44
![Page 45: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/45.jpg)
Stabilirea corespondenţelor
45
![Page 46: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/46.jpg)
Corespondenţe în imagini�Obiectiv: determinarea omografiei dintre cele două imagini
�Punctele corespondente dintre cele două imagini trebuiesc
determinate
46
![Page 47: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/47.jpg)
Corespondenţe locale invarianteDescriptori locali
�Conţinutul imaginii este transformat în coordonate locale de
descriptori invatianţi la translaţie, rotaţie şi scalare
Features Descriptors 47
![Page 48: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/48.jpg)
AfBf
A1
A2 A3
Tffd BA <),(
1. Gasirea unui set de puncte de interes distinctive
2. Definirea unei regiuni în jurul punctului de interes
3. Extragerea şi normalizarea regiunii
4. Calculul unui descriptor local din regiunea normalizată
5. Identificarea (matching) descriptorilor locali
Identificarea corespondenţelorDescriptori locali
Punctele de interes ar trebui să fie repetitive şi distincte 48
![Page 49: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/49.jpg)
Feature detection: obiective�Repetabilitate
� aceleaşi caracteristici trebuiesc regăsite în mai multe imagini, chiar dacă
imaginile au fost supuse la transformări geometrice şi fotometrice
�Descriptori distinctivi� fiecare feature are o descriere (descriptor) distinctiv
�Caracter compact şi eficienţă� features mai puţine decât numărul de pixeli din imagine
�Localizare� un feature ocupă o zonă relativ mică din imagine; robust faţă de
ocluziune şi clutter
49
![Page 50: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/50.jpg)
Detectarea colţurilor
50
![Page 51: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/51.jpg)
Detectarea colţurilor
““““cantăcantăcantăcantă””””::::nicio modificare denicio modificare denicio modificare denicio modificare de----a a a a
lungul canteilungul canteilungul canteilungul cantei
““““colţcolţcolţcolţ””””::::modificări în toate modificări în toate modificări în toate modificări în toate
direcţiiledirecţiiledirecţiiledirecţiile
regiune regiune regiune regiune ““““platăplatăplatăplată””””::::nicio modificare a nicio modificare a nicio modificare a nicio modificare a
intensităţiiintensităţiiintensităţiiintensităţii
�Colţurile ar trebui sa poată fi recunoscute atunci când imaginea este
vizualizată printr-o regiune de interes
�Când vizualizăm un colţ, deplasarea regiunii în oricare direcţie va
indica o schimbare puternică în intensitate
�Dacă în regiune avem un colţ, gradientul imaginii are cel puţin două
direcţii dominante
51
![Page 52: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/52.jpg)
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
I(x, y)E(u, v)
E(3,2)
w(x, y)
Detectarea colţurilor�Modificarea aspectului ferestrei H(#, :) pentru deplasarea [�, �]
52
![Page 53: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/53.jpg)
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
I(x, y)E(u, v)
E(0,0)
w(x, y)
Detectarea colţurilor�Modificarea aspectului ferestrei H(#, :) pentru deplasarea [�, �]
53
![Page 54: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/54.jpg)
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
Intensitatea pixelului
Intensitatea în fereastră
Funcţia fereastră
sauFuncţia fereastrăw(x,y) =
Gaussian1 în fereastră, 0 afară
Detectarea colţurilor�Modificarea aspectului ferestrei H(#, :) pentru deplasarea [�, �]
� 4 deplasări: (u,v) = (1,0), (1,1), (0,1), (-1, 1)
�Caută minimul local al funcţiei E: min{E}54
![Page 55: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/55.jpg)
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
Cum se comportă funcţia 8(�, �) pentru deplasări mici?
E(u, v)
Detectarea colţurilor�Modificarea aspectului ferestrei H(#, :) pentru deplasarea [�, �]
55
![Page 56: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/56.jpg)
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
+
+≈
v
u
EE
EEvu
E
EvuEvuE
vvuv
uvuu
v
u
)0,0()0,0(
)0,0()0,0(][
2
1
)0,0(
)0,0(][)0,0(),(
Detectarea colţurilor�Modificarea aspectului ferestrei H(#, :) pentru deplasarea [�, �]
�Aproximarea pătratică locală a lui 8(�, �) în vecinătatea lui (0,0) poate
fi obţinută prin dezvoltarea în serie Taylor:
56
![Page 57: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/57.jpg)
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
Dezvoltare în serie Taylor a lui 8(�, �) în jurul lui (0,0):
+
+≈
v
u
EE
EEvu
E
EvuEvuE
vvuv
uvuu
v
u
)0,0()0,0(
)0,0()0,0(][
2
1
)0,0(
)0,0(][)0,0(),(
[ ]
[ ]
[ ] ),(),(),(),(2
),(),(),(2),(
),(),(),(),(2
),(),(),(2),(
),(),(),(),(2),(
,
,
,
,
,
vyuxIyxIvyuxIyxw
vyuxIvyuxIyxwvuE
vyuxIyxIvyuxIyxw
vyuxIvyuxIyxwvuE
vyuxIyxIvyuxIyxwvuE
xy
yx
xy
yx
uv
xx
yx
xx
yx
uu
x
yx
u
++−+++
++++=
++−+++
++++=
++−++=
∑
∑
∑
∑
∑
57
![Page 58: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/58.jpg)
),(),(),(2)0,0(
),(),(),(2)0,0(
),(),(),(2)0,0(
0)0,0(
0)0,0(
0)0,0(
,
,
,
yxIyxIyxwE
yxIyxIyxwE
yxIyxIyxwE
E
E
E
yx
yx
uv
yy
yx
vv
xx
yx
uu
v
u
∑
∑
∑
=
=
=
=
=
=
+
+≈
v
u
EE
EEvu
E
EvuEvuE
vvuv
uvuu
v
u
)0,0()0,0(
)0,0()0,0(][
2
1
)0,0(
)0,0(][)0,0(),(
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
Dezvoltare în serie Taylor a lui 8(�, �) în jurul lui (0,0):
58
![Page 59: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/59.jpg)
≈∑∑
∑∑
v
u
yxIyxwyxIyxIyxw
yxIyxIyxwyxIyxw
vuvuE
yx
y
yx
yx
yx
yx
yx
x
,
2
,
,,
2
),(),(),(),(),(
),(),(),(),(),(
][),(
),(),(),(2)0,0(
),(),(),(2)0,0(
),(),(),(2)0,0(
0)0,0(
0)0,0(
0)0,0(
,
,
,
yxIyxIyxwE
yxIyxIyxwE
yxIyxIyxwE
E
E
E
yx
yx
uv
yy
yx
vv
xx
yx
uu
v
u
∑
∑
∑
=
=
=
=
=
=
[ ]2
,
( , ) ( , ) ( , ) ( , )x y
E u v w x y I x u y v I x y= + + −∑
Dezvoltare în serie Taylor a lui 8(�, �) în jurul lui (0,0):
59
![Page 60: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/60.jpg)
2
2,
( , )x x y
x y x y y
I I IM w x y
I I I
=
∑
≈
v
uMvuvuE ][),(
M
Detectarea colţurilor�Aproximarea pătratică se simplifică:
�unde K este o matrice de ordinul doi, calculată din derivatele imaginii:
60
![Page 61: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/61.jpg)
=∑
yyyx
yxxx
IIII
IIIIyxwM ),(
x
II x
∂
∂⇔
y
II y
∂
∂⇔
y
I
x
III yx
∂
∂
∂
∂⇔Notaţii:
Detectarea colţurilor�K este o matrice 2 × 2 ale derivatelor imaginii (cu medie în
vecinătatea unui punct)
61
![Page 62: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/62.jpg)
≈
v
uMvuvuE ][),(
∑
=
yx yyx
yxx
III
IIIyxwM
,2
2
),(
Detectarea colţurilor
�Suprafaţa lui 8(�, �) este aproximată local printr-o formă
pătratică
8(�, �)
�
�
62
![Page 63: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/63.jpg)
const][ =
v
uMvu
Detectarea colţurilor�Consideraţi o ”felie” orizontală a lui 8(�, �):
�Aceasta este ecuaţia unei elipse
63
![Page 64: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/64.jpg)
RRM
= −
2
11
0
0
λ
λ
direcţia celei mai încete schimbări
direcţia celei mai rapide schimbări
(λmax)-1/2
(λmin)-1/2
Detectarea colţurilor�Diagonala matricei K:
�Lungimile axelor elipsei sunt determinate de valorile proprii L3şi L<, iar orientarea este determinată de �
64
![Page 65: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/65.jpg)
Detectarea colţurilor
65
![Page 66: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/66.jpg)
Detectarea colţurilor
66
![Page 67: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/67.jpg)
λ1
λ2
“colţ”
λ1 şi λ2 mari,
λ1 ~ λ2;
E creşte în toate
direcţiile
λ1 şi λ2 mici;
E este aproape constant
în toate direcţiile
“cantă”
λ1 >> λ2
“cantă”
λ2 >> λ1
regiune
“plată”
Interpretarea valorilor proprii�Clasificarea punctelor utilizând valorile proprii ale lui K
67
![Page 68: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/68.jpg)
“colţ”
R > 0
“cantă”
R < 0
“cantă”
R < 0
regiune
“plată”
|R| mic
2
2121
2 )()(trace)det( λλαλλα +−=−= MMR
α: constant (0.04 până la 0.06)
Funcţia de răspuns la colţuri
68
![Page 69: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/69.jpg)
Detectorul de colţuri Harris
1. Calculul matricei K pentru fiecare fereastră a imaginii şi
determinarea probabilităţii de a avea un colţ (valoarea �)
2. Găsirea punctelor a căror fereastră are o probabilitate mare
de a fi colţ (; > threshold)
3. Selectarea punctelor cu maxim local; efectuarea de supresie
non-maximă
69
![Page 70: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/70.jpg)
∗=
)()(
)()()(),(
2
2
DyDyx
DyxDx
IDIIII
IIIg
σσ
σσσσσµ
70
1. Derivatele imaginii
2. Pătratele derivatelor
3. Filtru Gaussian N(G$)
Ix Iy
Ix2 Iy
2 IxIy
g(Ix2) g(Iy
2) g(IxIy)
222222)]()([)]([)()( yxyxyx IgIgIIgIgIg +−− α
=−= ])),([trace()],(det[ 2
DIDIhar σσµασσµ
4. Probabilitate colţ – ambele valori proprii sunt mari
har5. Supresie non-maximă
1 2
1 2
det
trace
M
M
λ λ
λ λ
=
= +
(blur opţional)
Detectorul de colţuri Harris
�Matricea de ordinul 2:
![Page 71: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/71.jpg)
Detectorul de colţuri Harris (intrare)
71
![Page 72: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/72.jpg)
Calitatea R a colţurilor
72
![Page 73: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/73.jpg)
Partiţionare pe R
73
![Page 74: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/74.jpg)
Maximele locale ale lui R
74
![Page 75: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/75.jpg)
Detectorul de colţuri Harris
75
![Page 76: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/76.jpg)
Descriptori locali
76
�Pentru a putea stabili corespondenţele, zonele locale din jurul
punctelor de interes (colţuri), trebuiesc reprezentate
![Page 77: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/77.jpg)
0.2
0.2
0.2
0.2
0.1
0.3
0.2
0.3
0.3
0.2
0.7
0.4
0.6
0.8
0.6
…
Descriptori locali direcţi
�Valorile pixelilor din jurul punctul de interes
77
![Page 78: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/78.jpg)
Descriptori locali fereastră
�Rotirea regiunii în jurul punctului de interes
�Scalarea regiunii în jurul punctului de interes
�Extragerea valorii pixelilor din noua regiune
CSE 576: Computer Vision78
![Page 79: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/79.jpg)
Descriptori locali
Problemele cu descriptorii locali prezentaţi:
�Sensibili la mici translaţii şi rotaţii �Sensibili la modificări fotometrice
79
![Page 80: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/80.jpg)
Descriptori SIFTScale Invariant Feature Transform
�Clasificarea pixelilor prin histograme ce descriu orientarea lor
0 2ππππ
80
![Page 81: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/81.jpg)
Descriptori SIFTScale Invariant Feature Transform
Pentru fiecare punct, magnitudinea şi orientarea gradientului este ponderată
cu o valoarea Gaussiană
Histograme ale orientărilor:suma magnitudinii
gradientului pentru fiecare direcţie
În practică sunt utilizate dimensiuni 4x4 cu histograme de 8 bin, rezultând un număr total de 128 de features pentru un punct de interes
81
![Page 82: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/82.jpg)
Descriptori SIFTScale Invariant Feature Transform
�Tehnică robustă de determinare a corespondenţelor:
�Poate face faţă unor modificări mari a perspectivei (până la
60 de grade de rotaţie a imaginii)
�Poate face faţă modificărilor puternice de iluminare
82
![Page 83: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/83.jpg)
Descriptori SIFTScale Invariant Feature Transform
83
![Page 84: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/84.jpg)
Descriptori SIFTScale Invariant Feature Transform
84
![Page 85: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/85.jpg)
Calculul corespondenţelor
�Obiectiv: producerea unui set de
corespondenţe candidat ce conţin:
�Cât mai multe corespondenţe
corecte
�Cât mai puţine corespondenţe
incorecte
85
![Page 86: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/86.jpg)
Poziţia, scala şiorientarea feature-ului
Calculul corespondenţelor
86
![Page 87: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/87.jpg)
0.20.70.40.60.80.6…
Descriptor
Poziţia, scala şiorientarea feature-ului
Calculul corespondenţelor
87
![Page 88: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/88.jpg)
Spaţiul descriptorului
Calculul corespondenţelor
88
![Page 89: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/89.jpg)
Calculul corespondenţelor
Spaţiul descriptorului
89
![Page 90: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/90.jpg)
Calculul corespondenţelor
Spaţiul descriptorului
90
![Page 91: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/91.jpg)
Cum determinăm corespondenţele?
Calculul corespondenţelor
Spaţiul descriptorului
91
![Page 92: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/92.jpg)
� Metoda 1: crearea de corespondenţe de la fiecare feature Ai la feature-urile Bk din B ce au distanţa minimă %(@�, OP)
Spaţiul descriptorului
@�
%(@�, OQ) este distanţa Euclidianăîn spaţiul descriptorului
Calculul corespondenţelor
92
![Page 93: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/93.jpg)
OP
Calculul corespondenţelor
@�
� Metoda 1: crearea de corespondenţe de la fiecare feature Ai la feature-urile Bk din B ce au distanţa minimă %(@�, OP)
%(@�, OQ) este distanţa Euclidianăîn spaţiul descriptorului
Spaţiul descriptorului
93
![Page 94: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/94.jpg)
@�
OP
Calculul corespondenţelor
� Metoda 1: crearea de corespondenţe de la fiecare feature Ai la feature-urile Bk din B ce au distanţa minimă %(@�, OP)
Spaţiul descriptorului
%(@�, OQ) este distanţa Euclidianăîn spaţiul descriptorului
94
![Page 95: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/95.jpg)
@�
OP
Calculul corespondenţelor
� Metoda 2: crearea de corespondenţe de la fiecare feature Ai la feature-urile Bk din B ce au distanţa minimă %(@�, OP)
dacă % @�, OP < �ST(USV)%
Spaţiul descriptorului
%(@�, OQ) este distanţa Euclidianăîn spaţiul descriptorului
95
![Page 96: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/96.jpg)
@�
OP
Calculul corespondenţelor
� Metoda 2: crearea de corespondenţe de la fiecare feature Ai la feature-urile Bk din B ce au distanţa minimă %(@�, OP)
dacă % @�, OP < �ST(USV)%
Spaţiul descriptorului
%(@�, OQ) este distanţa Euclidianăîn spaţiul descriptorului
96
![Page 97: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/97.jpg)
OP2
OP
Calculul corespondenţelor
� Metoda ponderilor: crearea de corespondenţe de la fiecare featureAi la feature-urile Bk din B ce au distanţa minimă %(@�, OP)
dacă W X�,Y
Z
W X�,Y
Z<
< �ST(USV)%
OP este cel mai apropiat descriptor
OP2 este al doilea cel mai apropiat
descriptor
Spaţiul descriptorului
%(@�, OQ) este distanţa Euclidianăîn spaţiul descriptorului
97
![Page 98: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/98.jpg)
Calculul corespondenţelor
� Metoda apropierii mutuale: crearea de corespondenţe între Ai şi Bk din B doar dacă, dintre toate perechile de feature-uri apropiate, perechea Ai şi Bk este cea mai apropiată mutual
Spaţiul descriptorului
98
![Page 99: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/99.jpg)
A B
Calculul corespondenţelor
� Metoda apropierii mutuale: crearea de corespondenţe între Ai şi Bk
doar dacă sunt apropiate mutual
99
![Page 100: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/100.jpg)
A BC
(A,B) este o corespondenţă eronată
Calculul corespondenţelor
� Metoda apropierii mutuale: crearea de corespondenţe între Ai şi Bk
doar dacă sunt apropiate mutual
100
![Page 101: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/101.jpg)
AB
(A,B) este o corespondenţă bună
Calculul corespondenţelor
� Metoda apropierii mutuale: crearea de corespondenţe între Ai şi Bk
doar dacă sunt apropiate mutual
101
![Page 102: Sisteme de Vedere Artificial ă - rovislab.comrovislab.com/courses/sva/Curs_07_SVA_2016.pdf · Pentru fiecare punct (x, y) din imaginea stâng ă se define şte o fereastr ă centrat](https://reader033.fdocument.pub/reader033/viewer/2022050715/5e06c841c58c38487c37197c/html5/thumbnails/102.jpg)
102