Univerza v Ljubljani Iz vsebine - Machine Vision …...• Distorzija le če • Lens distortion...

Preview:

Citation preview

http://vision.fe.uni-lj.si/

Modeliranje kamere

Stanislav Kovačič

Univerza v Ljubljani

Fakulteta za elektrotehniko

Iz vsebineIz vsebine

• Nastanek slike, osnovno o modeliranju kamere• Image formation, basics of camera modeling

• Direktna linearna transformacija (DLT)• Direct Linear Transform (DLT)

• Kalibracija kamere (DLT, Tsai)• Calibration (DLT, Tsai)

• Rekonstrukcija – “nazaj v prizor”• Reconstruction – back from 2D to 3D

• Še nekaj pogledov na modeliranje kamere• Camera model revisited

• Distorzija leče• Lens distortion

Geometrijski modeli kamerGeometrijski modeli kamer

Zanima nas, kako se točke v prostoru preslikajo (projicirajo) v sliko (Geometric camera modeling)

3D → 2D

object film object filmbarrier

Slide source: Seitz

Prav dobre “slike” na ta način ne moremo pričakovati �

Tako pa že ☺

Geometrijski modeli kamerGeometrijski modeli kamer

Centralno projekcijski (perspektivni) modelPerspective projection (pin-hole camera model)

P=(X,Y,Z)

Z

Xfx −=

Z

Yfy −=

O

X

Y

Z

o

f

p

x y

Slikovna ravnina

Image plane

Goriš čna

razdalja

Focal lenght

Geometrijski modeli kamerGeometrijski modeli kamer

O

XY

Z

Slikovna ravnina

Image plane

of

P

p

xy

Z

Xfx =

Z

Yfy =

Goriš čna razdalja

Focal lenght

Optično (projekcijsko) središče premaknemo za slikovno ravnino

Perspektivna projekcijaPerspektivna projekcija

Ravne črte ostanejo ravne

Vzporedne premice se sekajo v skupni točki –bežišču (vanishing point)

Perspektivna projekcijaPerspektivna projekcija

Koti se ne ohranjajo

Perspektivna projekcijaPerspektivna projekcija

Dolžine (razdalje) se ne ohranjajo

Geometrijski modeli kamerGeometrijski modeli kamer

Šibko perspektivni model (angl. Weak Perspective)

mXXZ

fx ==

mYYZ

fy ==

• Debelina predmeta majhna v primerjavi z razdaljo, ∆Z << Z.

• Tanki (planarni) predmeti in/ali na primerno veliki razdalji.

• Ortografska (m=1) projekcija s skaliranjem (m < 1).

∆Z

Reference

plane

Image plane

Optical

center

Geometrijski modeli kamerGeometrijski modeli kamer

• (Digitalno) sliko sestavlja polje slikovnih elementov (pixels).

• Slikovne koordinate so diskretne, izražene v “pikslih”, (u, v).

XmXZ

f

Z

Xf

Z

Xfxu u

uu

uu

=====λλ

YmYZ

f

Z

Yf

Z

Yfyv v

vv

vv

=====λλ

• Za veliko praktičnih primerov zadostuje,da določimo λu , λv (oziroma fu , fv ) ali mu, mv.

u

v

λu

λv

Geometrijski modeli kamerGeometrijski modeli kamer

p

X

Y

Z

P(X,Y,Z)

O

• Položaj točke P v prostoru (koordinate X, Y, Z) smo podajali glede na koordinatni sistem (k.s.) kamerein točko projicirali v slikovno ravnino.

• Koordinatni sistem kamere pa ni direktno dosegljiv.

Coordinate system attached to the camera

Geometrijski modeli kamerGeometrijski modeli kamer

• Položaj predmeta (P) raje definiramo v zunanjem –“svetovnem” - referenčnem k.s., v katerem so koordinate (direktno) merljive.

• k.s. npr. definirajo stene/tla prostora, predmet pravilne oblike (kvader), stroj, robot, ...

• Mapping 3D → 2D:• Translate• Rotate• Project

U

V

XY

ZP(X,Y,Z)

O

p(u,v)Camera coordinatesystem

W

World(reference) coordinatesystem

Geometrijski modeli kamerGeometrijski modeli kamer

• Parametri kamere (angl. Camera parameters):• Zunanji (angl. Extrinsic, External):

• položaj in smer kamere (k.s. kamere) (position, rientation) glede na poznan zunanji koordinatni sistem (referenčni k.s.)

• Notranji (angl. Intrinsic, Internal):• parametri, ki povezujejo slikovne

koordinate pikslov s k.s. kamere.• Vsega skupaj 11 ali več parametrov:

• premik (translation) (3), zasuk (rotation) (3), • goriščna razdalja (1), (focal length),• optično središče slike (2), (image center),• velikost piksla (2), (pixel size).

• K tem (po potrebi) dodamo še distorzijo leče (angl. Lens distortion):

• odvisno od modela (1 – 5 parametrov).

Iz vsebineIz vsebine

Direktna linearna transformacija (DLT)Abdel-Aziz & Carara 1971

Direktna linearna transformacijaDirektna linearna transformacija

U

V

O(X0,Y 0,Z 0)

W

p(U,V,0)

o(U 0,V 0,0)

a

b

Načeloma iš čemo preslikavo

T: ℜℜℜℜ3 →→→→ ℜℜℜℜ2

P →→→→ p

O(U 0,V 0,f)

XY

ZP(X,Y,Z)

b = p – oa = P – O

Direktna linearna transformacijaDirektna linearna transformacija

Kolinearnost vektorjev a in b:

b = c a, c > 0 (skalar)

b izrazimo v k.s. kamere, b(U b,V b,Wb)

a izrazimo v zunanjem k.s., a(X a,Y a,Z a)

b = p(U,V,W=0) – o(U 0,V 0,W0=f)

a = P(X,Y,Z) – O(X 0,Y 0,Z 0)

b (U b,V b,Wb) = c R a(X a,Y a,Z a)

R = rotacijska matrika

p–o = c R (P–O)

U

V

O(X0,Y 0,Z 0)

W

p

a

b

o(U 0,V 0,f)

XY

ZP(X,Y,Z)

Direktna linearna transformacijaDirektna linearna transformacija

−−−

=

−−−

0

0

0

333231

232221

131211

0

0

ZZ

YY

XX

rrr

rrr

rrr

c

f

VV

UU

[ ][ ][ ])()()(

)()()(

)()()(

033032031

023022021

013012011

0

0

ZZrYYrXXrc

ZZrYYrXXrc

ZZrYYrXXrc

f

VV

UU

−+−+−−+−+−−+−+−

=−=−=−

)()()( 033032031 ZZrYYrXXr

fc

−+−+−−=

U

V

P(X,Y,Z)

O(X0,Y 0,Z 0)

W

p(U,V,0)

a

b

O(U0,V 0,f)

Zapišimo

p–o = c R (P–O)

v komponentni/matri čni obliki:

O(U0,V 0,0)

Direktna linearna transformacijaDirektna linearna transformacija

)()()(

)()()(

033032031

0130120110 ZZrYYrXXr

ZZrYYrXXrfUU

−+−+−−+−+−−=−

)()()(

)()()(

033032031

0230220210 ZZrYYrXXr

ZZrYYrXXrfVV

−+−+−−+−+−−=−

)( 00 vvVV v −=− λ

)( 00 uuUU u −=− λ

Diskretiziramo slikovni koordinati:

Velikost piksla ( λu, λv) - faktorja skaliranja –sta v horizontalni in v vertikalni smeri na splošno različna.

Vstavimo izraz za c v prvi dve ena čbi:

(u0, v0 ) = točka, kjer optična os prebada slikovno ravnino

Direktna linearna transformacijaDirektna linearna transformacija

)()()(

)()()(

033032031

0130120110 ZZrYYrXXr

ZZrYYrXXrfuu

u −+−+−−+−+−−=−

λ

)()()(

)()()(

033032031

0230220210 ZZrYYrXXr

ZZrYYrXXrfvv

v −+−+−−+−+−−=−

λ

Standardna in bolj pregledna oblika zapisa:

111109

4321

++++++=ZLYLXL

LZLYLXLu

111109

8765

++++++=

ZLYLXL

LZLYLXLv

Li (i = 1,2,...,11) so t.i. parametri DLT

Parametri DLTParametri DLT

D

rfruL

D

rfruL

D

rfruL uuu 13330

312320

211310

1 ,,−=−=−=

( ) ( ) ( )D

ZrurfYrurfXrurfL uuu 033013032012031011

4

−+−+−=

( ) ( ) ( )D

ZrvrfYrvrfXrvrfL vvv 033023032022031021

8

−+−+−=

D

rfrvL

D

rfrvL

D

rfrvL vvv 23330

722320

621310

5 ,,−=−=−=

D

rL

D

rL

D

rL 33

1132

1031

9 ,, ===v

vu

u

ff

ff

λλ== ,

)( 330320310 rZrYrXD ++−=

Ponazoritev izpeljave za Ponazoritev izpeljave za uu

)( 033032031333231

0130120111312110 ZrYrXrZrYrXr

ZrfYrfXrfZrfYrfXrfuu uuuuuu

++−++−−−++−=−

1333231

013012011131211

0

+++

++−++−=−

ZD

rY

D

rX

D

rD

ZrfYrfXrfZ

D

rfY

D

rfX

D

rf

uu

uuuuuu

1

1

11109

0130120111312113332310

+++

+++

++−

+++=

ZLYLXLD

ZrfYrfXrfZ

D

frY

D

rfX

D

rfZ

D

rY

D

rX

D

ru

u

uuuuu

111109

0013012011133301232011310

+++

++++−+−+−

=ZLYLXL

D

DuZrfYrfXrfZ

D

frruY

D

rfruX

D

rfru

u

uuuuu

111109

4321

++++++=ZLYLXL

LZLYLXLu

DLT + distorzija leDLT + distorzija le ččee

111109

4321

++++++=∆+ZLYLXL

LZLYLXLuu

111109

8765

++++++=∆+

ZLYLXL

LZLYLXLvv

• ∆∆∆∆u, ∆∆∆∆v: Distorzija le če (odvisna od u,v)

( ∆∆∆∆u, ∆∆∆∆v) = ( ∆∆∆∆u(u,v), ∆∆∆∆v(u,v))• Modeliranje distorzije prinese 1,2, ali

celo ve č dodatnih parametrov in

nelinearnost.

(Pravzaprav bi morali pisati u = ud+ ∆u)

2D primer2D primer

1109

421

++++=

YLXL

LYLXLu

1109

865

++++=

YLXL

LYLXLv

(Z = 0)

111109

4321

++++++=ZLYLXL

LZLYLXLu

111109

8765

++++++=

ZLYLXL

LZLYLXLv

3D -> 2D 2D -> 2D

Iz vsebineIz vsebine

• Kalibracija kamere (Angl. Camera Calibration)• Metoda 1 (DLT)

• Določitev parametrov preslikave• Rekonstrukcija - določanje koordinat točk v

prostoru.• Metoda 2 (Tsai)

Iz vsebineIz vsebine

Kalibracija - Metoda 1 (DLT)

DLT enaDLT ena ččbe (be ( šš e enkrat)e enkrat)

U

V

XY

ZP(X,Y,Z)

O(X0,Y 0,Z 0)

W

p(u,v,0)

o(u 0,v 0,0)

a

b

O(U0,V 0,f)

111109

4321

++++++=ZLYLXL

LZLYLXLu

111109

8765

++++++=

ZLYLXL

LZLYLXLv

DLT parametriDLT parametri (( šš e enkrat)e enkrat)

D

rfruL

D

rfruL

D

rfruL uuu 13330

312320

211310

1 ,,:E1−=−=−=

( ) ( ) ( )D

ZrurfYrurfXrurfL uuu 033013032012031011

4:E2−+−+−=

( ) ( ) ( )D

ZrvrfYrvrfXrvrfL vvv 033023032022031021

8:E4−+−+−=

D

rfrvL

D

rfrvL

D

rfrvL vvv 23330

722320

621310

5 ,,:E3−=−=−=

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===v

vu

u

ff

ff

λλ== ,

)(:E6 330320310 rZrYrXD ++−=

DLT kalibracijaDLT kalibracija

Iš čemo neznane vrednosti L i (i=1,2,....,11)

( ) 432111109 1 LZLYLXLZLYLXLu +++=+++

876511109 )1( LZLYLXLZLYLXLv +++=+++

uuZLuYLuXLLZLYLXL =−−−+++ 111094321

vvZLvYLvXLLZLYLXL =−−−+++ 111098765

111109

4321

++++++=ZLYLXL

LZLYLXLu

111109

8765

++++++=

ZLYLXL

LZLYLXLv

DLT kalibracijaDLT kalibracija

=

×

−−−−−−

v

u

L

L

L

L

L

L

L

L

L

L

L

vZvYvXZYX

uZuYuXZYX

11

10

9

8

7

6

5

4

3

2

1

10000

00001

• Enačbi točke: poznamo koordinate točke vprostoru in koordinati iste točke v slikovniravnini, iščemo neznane parametre modela.

• Vsaka točka prispeva dve enačbi. • Neznanih parametrov je 11.• Potrebujemo vsaj 6 “kontrolnih” oziroma

“kalibracijskih” točk.• V praksi jih vzamemo (čim)več.

DLT kalibracijaDLT kalibracija

⋅⋅⋅⋅⋅⋅

=

×

−−−−−−

⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅

−−−−−−−−−−−−

n

n

nnnnnnnnn

nnnnnnnnn

v

u

v

u

v

u

L

L

L

L

L

L

L

L

L

L

L

ZvYvXvZYX

ZuYuXuZYX

ZvYvXvZYX

ZuYuXuZYX

ZuYvXvZYX

ZuYuXuZYX

2

2

1

1

11

10

9

8

7

6

5

4

3

2

1

222222222

222222222

111111111

111111111

10000

00001

10000

00001

10000

00001

Matr i ka A

Vektor b

DLT kalibracijaDLT kalibracija

[ ][ ] [ ] [ ]

[ ] bAAA

bAAAAAAA

bAAA

bA

T1T

T1T1T

TT

112

L

L

L

L

−−

=

=

=

=

T

nx

• Iščemo rešitev predoločenega sistema enačb (več enačb kot neznank).

• Metoda najmanjših kvadratov.

DLT kalibracija, DLT kalibracija, XX00,, YY00,, ZZ00

4030201 LZLYLXL −=++

D

rfruL

D

rfruL

D

rfruL uuu 13330

312320

211310

1 ,,:E1−=−=−=

( ) ( ) ( )D

ZrurfYrurfXrurfL uuu 033013032012031011

4:E2−+−+−=

( ) ( ) ( )0

133300

123200

113104 Z

D

rfruY

D

rfruX

D

rfruL uuu −−−−−−=

DLT kalibracija, DLT kalibracija, XX00,, YY00,, ZZ00

8070605 LZLYLXL −=++

( ) ( ) ( )0

233300

223200

213108 Z

D

rfrvY

D

rfrvX

D

rfrvL vvv −−−−−−=

( ) ( ) ( )D

ZrvrfYrvrfXrvrfL vvv 033023032022031021

8:E4−+−+−=

D

rfrvL

D

rfrvL

D

rfrvL vvv 23330

722320

621310

5 ,,:E3−=−=−=

DLT kalibracija, DLT kalibracija, XX00,, YY00,, ZZ00

101101009 −=++ ZLYLXL

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===

)(:E6 330320310 rZrYrXD ++−=

D

rZ

D

rY

D

rX 33

032

031

01 ++=−

divide by D

DLT kalibracija, DLT kalibracija, XX00,, YY00,, ZZ00

101101009

8070605

4030201

−=++−=++−=++

ZLYLXL

LZLYLXL

LZLYLXL

−−−

=

18

4

0

0

0

11109

765

321

L

L

Z

Y

X

LLL

LLL

LLL

−−−

=

18

4

1

11109

765

321

0

0

0

L

L

LLL

LLL

LLL

Z

Y

X

DLT kalibracija, DLT kalibracija, uu00,, vv00

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===

( )2

233

232

2312

211

210

29

11

Drrr

DLLL =++=++

Rotacijska matrika R = [rij] je ortogonalna matrika, RT R = I, (ohranja razdalje).

Zahtevamo ortogonalnost rotacijske matrike R

11

square, sum

DLT kalibracija, DLT kalibracija, uu00,, vv00

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===

D

rfruL

D

rfruL

D

rfruL uuu 13330

312320

211310

1 ,,:E1−=−=−=

Pogoji ortogonalnosti – ra čunamo uu00

03313321231112

332

322

310

11310291

)()(

))(())(())((

urrrrrrfrrru

DLDLDLDLDLDL

u =++−++=

=++

11 00

multiply by D

DLT kalibracija, DLT kalibracija, uu00,, vv00

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===

Pogoji ortogonalnosti – za vv00

03323322231212

332

322

310

11710695

)()(

))(())(())((

vrrrrrrfrrrv

DLDLDLDLDLDL

v =++−++=

=++

D

rfrvL

D

rfrvL

D

rfrvL vvv 23330

722320

621310

5 ,,:E3−=−=−=

11 00

DLT kalibracija, DLT kalibracija, uu00,, vv00

Pogoji ortogonalnosti - uu00, vv00

011710695

011310291

))(())(())((

))(())(())((

vDLDLDLDLDLDL

uDLDLDLDLDLDL

=++=++

211

210

29

1171069511710695

20

211

210

29

1131029111310291

20

)(

)(

LLL

LLLLLLLLLLLLDv

LLL

LLLLLLLLLLLLDu

++++=++=

++++=++=

2211

210

29

1

DLLL =++

DLT kalibracija, DLT kalibracija, R=[R=[ rrijij]]

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===

11331032931 ,, DLrDLrDLr ===

DLT kalibracija, DLT kalibracija, R=[R=[ rrijij]]

D

rfruL

D

rfruL

D

rfruL uuu 13330

312320

211310

1 ,,:E1−=−=−=

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===

D

rfLuL

D

rfLuL

D

rfLuL uuu 13

110312

100211

901 ,, −=−=−=

uuu f

LLuDr

f

LLuDr

f

LLuDr

)(,

)(,

)( 311013

210012

19011

−=−=−=

DLT kalibracija, DLT kalibracija, R=[R=[ rrijij]]

D

rL

D

rL

D

rL 33

1132

1031

9 ,,:E5 ===

D

rfLvL

D

rfLvL

D

rfLvL vvv 23

110722

100621

905 ,, −=−=−=

vvv f

LLvDr

f

LLvDr

f

LLvDr

)(,

)(,

)( 711023

610022

59021

−=−=−=

D

rfrvL

D

rfrvL

D

rfrvL vvv 23330

722320

621310

5 ,,:E3−=−=−=

DLT kalibracija, DLT kalibracija, R=[R=[ rrijij]]

fu in fv še ne poznamo

uuu f

LLuDr

f

LLuDr

f

LLuDr

)(,

)(,

)( 311013

210012

19011

−=−=−=

vvv f

LLvDr

f

LLvDr

f

LLvDr

)(,

)(,

)( 711023

610022

59021

−=−=−=

11331032931 ,, DLrDLrDLr ===

vv

uu

ff

ff

λλ== ,

DLT kalibracija, DLT kalibracija, fu in fv

Pogoji ortogonalnosti

1])()()[(

2

23110

22100

2190

22

132

122

11 =−+−+−=++uf

LLuLLuLLuDrrr

1])()()[(

2

27110

26100

2590

22

232

222

21 =−+−+−=++vf

LLvLLvLLvDrrr

])()()[( 23110

22100

2190

22 LLuLLuLLuDfu −+−+−=

])()()[( 27110

26100

2590

22 LLvLLvLLvDfv −+−+−=

DLT kalibracija, povzetekDLT kalibracija, povzetek

- Kalibracijski “vzorec” -> XXii ,, YYii ,, ZZii ,(i=1,...,N),(i=1,...,N)

ToToččke ne smejo biti koplanarne.ke ne smejo biti koplanarne.

ToToččke morajo dobro ke morajo dobro ““ pokritipokriti ”” delovni prostor.delovni prostor.

- Slika vzorca, obdelava -> uuii ,, vvii ,(i=1,...,N),(i=1,...,N)

- XXii ,, YYii ,, ZZii ,, uuii ,, vvii ,,LS metoda -> L1,...,L11

- L1,...,L11 -> XX00,, YY00,, ZZ00

- L1,...,L11, ortogonalnost -> uu00,, vv00

-L1,...,L11, uu00,, vv00, ⊥⊥⊥⊥ -> fu, fv

-L1,...,L11, uu00,, vv00, fu, fv ⊥⊥⊥⊥ -> R=[R=[ rrijij]]

Kalibracija,...Kalibracija,...

• Na točnost kalibracije direktno vpliva točnost kalibracijskega vzorca.Praktično pravilo: toleranca vzorca naj bo vsaj za velikostni razred boljša od zahtevane merilne točnosti.

• Kalibracijske točke naj bodo razporejene po vsem prostoru in take, da jih je moč detektirati (v sliki) zanesljivo in točno. Tipičenkalibracijski vzorec je kvader poslikan s šahovnico.

• Posnamemo lahko tudi več slik.

• Še enkrat povejmo:ko je sistem kalibriran, ne smemo ničesar več spreminjati.

Kalibracija,...Kalibracija,...

• Napako kalibracije se da ovrednotiti:

• V slikovnem prostoru: enostavno preslikamo kontrolne točke v sliko in izračunamo srednje kvadratično odstopanje izračunanih od izmerjenih vrednosti.Še bolje da uporabimo kontrolne točke, ki za kalibracijo niso bile uporabljene.

• V zunanjem prostoru: potrebna je rekonstrukcija.

DoloDolo ččanje anje XX,, YY,, ZZ

• Kamera je sedaj “kalibrirana”• Dokler ne spremenimo postavitve (obrnemo obroček na

objektivu, premaknemo kamero, ...

• Določanje položaja predmeta:• Poznamo parametre modela L• Poznamo slikovne koordinate u,v• Iščemo koordinate točk v prizoru X,Y,Z

• DLT model nam slika prostorske koordinate v slikovne.• Rabimo obratno preslikavo. • Kako?

PoloPolo žž aj predmeta aj predmeta XX,, YY,, ZZ

Ponovno obrnemo ena čbi DLT

111109

4321

++++++=ZLYLXL

LZLYLXLu

111109

8765

++++++=

ZLYLXL

LZLYLXLv

uuZLuYLuXLLZLYLXL =−−−+++ 111094321

vvZLvYLvXLLZLYLXL =−−−+++ 111098765

uLZuLLYuLLXuLL −=−+−+− 411310291 )()()(

vLZvLLYvLLXvLL −=−+−+− 811710695 )()()(

PoloPolo žž aj predmeta aj predmeta XX,, YY,, ZZ

V matri čni obliki:

−−

=

−−−−−−

vL

uL

Z

Y

X

vLLvLLvLL

uLLuLLuLL

8

4

11710695

11310291

Vsaka to čka v sliki ( u,v)

prispeva dve ena čbi,

toda prinese tri neznanke (X,Y,Z)

PoloPolo žž aj predmeta aj predmeta XX,, YY,, ZZ

Potrebujemo dodatne omejitve

...

ali ve č informacije

PoloPolo žž aj predmeta aj predmeta XX,, YY,, ZZ

Pomaga ve č slik, ve č (m > 1) kamer

ene in iste to čke v prostoru.

( ) ( ) ( )( ) ( ) ( )

( ) ( ) ( )( ) ( ) ( )

( )( )

( )( )

−−

−−

=

−−−−−−

−−−−−−

m

m

mmm

mmm

vL

uL

vL

uL

Z

Y

X

vLLvLLvLL

uLLuLLuLL

vLLvLLvLL

uLLuLLuLL

8

4

18

14

11710695

11310291

11171106195

11131102191

.

.

...

...

Enačbe spet rešimo z metodo

najmanjših kvadratov

PoloPolo žž aj predmeta aj predmeta XX,, YY,, ZZ

• “Postavimo” (kalibrirane) kamerePotrebujemo vsaj dve sliki (dve kameri)

• Posnamemo slike istega prizoraSedaj imamo več slik istega prizora

• Analiziramo slike (vsako zase) Določimo koordinate “pomembnih” točk v slikah

• Bistven problem: katere točke v teh slikah upodabljajo isto točko prizora?

Problem korespondence – stereo ujemanja (Corespondence problem)

• Stereo primerjanje (Stereo Matching)

Iz vsebineIz vsebine

Kalibracija - Metoda 2 (Tsai ‘85)

Tsai Tsai -- kalibracijakalibracija

0333231

01312110'

ZZrYrXr

XZrYrXrf

W

Ufuux u

u ++++++−=−=−=

λ

0333231

02322210'

ZZrYrXr

YZrYrXrf

W

Vfvvy v

v ++++++−=−=−=

λ

)()( 01312110232221 XZrYrXrfyYZrYrXrfx iiiuiiiivi +++=+++

Opomba: najprej zasuk, potem premik

Tsai Tsai -- kalibracijakalibracija

)()( 01312110232221 XZrYrXrfyYZrYrXrfx iiiuiiiivi +++=+++

087654321 =−−−−+++ vyvZyvYyvXyvxvZxvYxvXx iiiiiiiiiiiiii

0v =A

Vsaka to čka prispeva eno ena čbo

N to čk -> N ena čb

vu ff

Xvrvrvrv

Yvrvrvrv

/08137126115

04233222211

=========

ααααα

Tsai Tsai -- kalibracijakalibracija

−−−−

−−−−−−−−

=

NNNNNNNNNNNNNN yZyYyXyxZxYxXx

yZyYyXyxZxYxXx

yZyYyXyxZxYxXx

A

........

........22222222222222

11111111111111

0v =A )7(,7)( >== Nrang A

SVD - Razcep na singularne vrednosti

A = U D V T -> Rešitev: v

v: stolpec matrike V za singularno vrednost v matriki D z vrednostjo 0.

Tsai Tsai -- kalibracijakalibracija

],,,,,,,[v 01312110232221 XrrrYrrr ααααγ=

γγ =++=++ )( 223

222

221

223

22

21 rrrvvv

0,)( 213

212

211

2227

26

25 >=++=++ αγααγ rrrvvv

Poznamo 1. in 2. vrstico matrike R

Dolo čimo 3. vrstico kot vektorski produkt prvih dveh

Poznamo rešitev do konstante

Tsai Tsai -- kalibracijakalibracija

],,,,,,,[v 01312110232221 XrrrYrrr ααααγ=

Spet z metodo najmanjših kvadratov

rešimo predolo čen sistem (za N to čk)

Dolo čili smo rotacijsko matriko,

komponenti translacije X 0,Y 0,

manjkata nam še Z 0 in f u

)()( 01312110333231 XZrYrXrfZZrYrXrx iiiuiiii +++−=+++

Tsai Tsai -- kalibracijakalibracija

Spet z metodo najmanjših kvadratov

rešimo predolo čen sistem (za N to čk)

)( 01312110333231 XZrYrXrfZxZrYrXrx iiiuiiiii +++−=+++

iiiiuiiii ZrYrXrxfXZrYrXrZx 33323101312110 )( ++=++++

ja ,2ja ,1 jb

)1()12()2( NxxNx bxA =

Tsai Tsai -- kalibracijakalibracija

Dolo čili smo:

• rotacijsko matriko R,

• komponente translacije X 0,Y 0,Z 0

• ef. goriš čni razdalji f u,f v.

Dolo čimo še opti čni center:

• spet ve č možnosti

LiteraturaLiteratura

• http://kwon3d.com/theory/dlt/dlt.html

• E. Trucco, A. Verri, Introductory Techniques for 3D ComputerVision, Prentice Hall, 1998.

• M. Sonka, V. Hlavač, R. Boyle, Image Processing, Analysis, and Machine Vision, Thomson, 2008.

• R. Tsai, A versatile camera calibration technique for high-accuracy 3Dmachine vision metrology using off-the shelf TV cameras and lenses, IEEE RA-3, No.4, 1987, p.323, 344.

• Z. Zhang, “A flexible new technique for camera calibration”,IEEE Transactions on Pattern Analysis and Machine Intelligence,22(11):1330–1334, 2000.

Recommended