sztereo
Download
Skip this Video
Download Presentation
Sztereo

Loading in 2 Seconds...

play fullscreen
1 / 87

Sztereo - PowerPoint PPT Presentation


  • 133 Views
  • Uploaded on

Sztereo. Vámossy Zoltán 2005 Seitz – UNI Washington; Thrun, Bradski – Stanford; Mubarak Shah anyagok alapján. S z tereo. Kétkamerás sztereo Motiváció Epipoláris geometria Illesztés Mélység becslés Rektifikáció. Public Library, Stereoscopic Looking Room, Chicago, by Phillips, 1923.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Sztereo' - helena


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
sztereo

Sztereo

Vámossy Zoltán

2005

Seitz – UNI Washington; Thrun, Bradski – Stanford; Mubarak Shah anyagok alapján

s z tereo
Sztereo
  • Kétkamerás sztereo
    • Motiváció
    • Epipoláris geometria
    • Illesztés
    • Mélység becslés
    • Rektifikáció
slide8
Woman getting eye exam during immigration procedure at Ellis Island, c. 1905 - 1920, UCR Museum of Phography
s z tereogram mok
Sztereogrammok
  • UCR stereographs
    • http://www.cmp.ucr.edu/site/exhibitions/stereo/
  • The Art of Stereo Photography
    • http://www.photostuff.co.uk/stereo.htm
  • History of Stereo Photography
    • http://www.rpi.edu/~ruiz/stereo_history/text/historystereog.html
  • Double Exposure
    • http://home.centurytel.net/s3dcor/index.html
  • Stereo Photography
    • http://www.shortcourses.com/book01/chapter09.htm
  • 3D Photography links
    • http://www.studyweb.com/links/5243.html
  • National Stereoscopic Association
    • http://204.248.144.203/3dLibrary/welcome.html
  • Books on Stereo Photography
    • http://userwww.sfsu.edu/~hl/3d.biblio.html
s z tereo panor mak pek
Sztereo panorámaképek
  • Interaktiv demo: http://www.cs.columbia.edu/CAVE/
s z tereo1
Sztereo

Jelenet egy pontja

Képsík

Optikai középpont

s zt ereo feladatok
Sztereo feladatok

p’

?

p

  • Adott egy ppont a bal képen, hol található a hozzátartozó p’a jobbon? (párosítás - correspondence)
  • Milyen térbeli pont felel meg a (p, p’) képpontpárnak? (3D visszaállítás)
s z tereo 3d vissza ll t s
Sztereo 3D visszaállítás
  • Alapelv: háromszögelés
    • Két fénysugár segítségével
  • Előkövetelmények
    • kalibráció
    • összetartozó pontok (correspondence)
s z tereo p ros t s
Sztereo párosítás

Epipoláris vonal

Epipoláris vonal

Epipoláris sík

  • Az egymásnak megfelelő pixelek meghatározása
    • Ugyanahhoz a jelenetponthoz tartozó képpontpár
  • Epipoláris feltétel
    • A megfeleltetés problémáját 1D keresésre vezeti vissza a konjugált epipoláris vonalak mentén
    • Java demo: http://www.ai.sri.com/~luong/research/Meta3DViewer/EpipolarGeo.html
s z tereo felt tel epipol ris g eometr ia
Sztereo feltétel - Epipolárisgeometria

Epipoláris egyenes

p’

Y2

X2

Z2

O2

Epipólus

M

Képsík

Y1

p

O1

Z1

X1

Fókuszsík

s z tereo p ros t s megfeleltet s
Sztereo párosítás (megfeleltetés)
  • Jellemzők vs. tetszőleges pixelek segítségével?
    • A megfeleltetés során szükségünk van-e előzetesen jellemzőkre?

Julesz Béla véletlen pont sztereo diagram (Random Dot Stereogram)

s z tereo p ros t si algoritmusok
Sztereo párosítási algoritmusok
  • A konjugált epipoláris vonalak mentén történő párosítás során
    • Tételezzük fel, hogy a pontok színe nem változik
    • Problémák, hibaforrások
      • Tükröződés
      • Alacsony kontrasztú területek
      • Elzártság
      • Képhiba
      • Kamera kalibrációs hiba
    • Megközelítések, módszerek
      • Dinamikus programozás [Baker 81,Ohta 85]
      • Simasági függvények
      • Több kép használata (trinocular, N-ocular) [Okutomi 93]
      • Gráfokhasználatával [Boykov 00]
alapvet sztereo algoritmus
Alapvető sztereo algoritmus

Minden epipoláris vonalra

A bal kép minden pixelére

Továbbfejlesztés: ablakok párosítása

  • Hasonlítsunk össze minden pixelt az epipoláris vonalon
  • A legkisebb párosítási költségű pixelt vegyük ki - jóság
ablakm ret
Ablakméret
  • Kisebb ablak
    • Több részlet
    • Több zaj
  • Nagyobb ablak
    • Kevesebb zaj
    • Kisebb részletezettség

W = 3

W = 20

  • Jobb eredmények adaptív ablakkal
    • T. Kanade and M. Okutomi,A Stereo Matching Algorithm with an Adaptive Window: Theory and Experiment,, Proc. International Conference on Robotics and Automation, 1991.
    • D. Scharstein and R. Szeliski. Stereo matching with nonlinear diffusion. International Journal of Computer Vision, 28(2):155-174, July 1998
jellemz alap sztereo token based stereo
Jellemző alapú sztereo - Token Based Stereo
  • Detektáljuk a jellemzőket
    • Csúcsok, érdekes pontok, élpontok
  • Keressük meg az összetartozást
  • Interpoláljuk a teljes felületet
p ros t s jellemz k n lk l
Párosítás jellemzők nélkül
  • Az epipoláris feltétel miatt továbbra is 1D probléma, melyre megoldások:
    • Marr-Poggio
    • Korreláció alapú sztereo
    • Energia alapú módszer
marr poggio algoritmus
Marr-Poggio algoritmus
  • Első sztereo algoritmusok egyike (1979)
  • Fekete és fehér pixelekből álló képekre alkalmazható
  • Feltételek:
    • Kompatibilitás:fehér fehérre illeszkedik
    • Folytonosság:a szomszédoknak hasonló diszparitása kell, hogy legyen
    • Egyértelműség:a bal kép egy pixele pontosan egy pixelhez illeszkedjen a jobb képen
marr poggio algorithm
Marr-Poggio Algorithm
  • Összetartozás térkép
  • Sorokban keresünk
  • 1D

1

2

3

4

5

d=2

1

1

1

d=1

1

1

Kezdeti összetartozás tömbje

C0(x, d)

d=0

1

1

1

d=-1

1

d=-2

1

1

marr poggio
Marr-Poggio
  • Iterativan számoljuk az összetartozás tömböt(lambda: 2, T: 4, w: 2)

1D eset

max. lehets. diszparitás

serkentő tag

tiltó tag – folytonosság

2D eset

korrel ci alap sztereo
Korreláció alapú sztereo
  • A mélység a jellemzőknél kerül kiszámolásra és a többi pixelnél interpolálás
  • Diszparitás térkép készül a mért korreláció alapján
korrel ci alap sztereo1
Korreláció alapú sztereo
  • Ha a diszparitás már ismert, akkor a mélység:
p ld k
Példák

Balkép

Jobbkép

Mélység térkép

s z tereo energia minimaliz l sk nt
Sztereo energia minimalizálásként
  • A párosítás jóságát energiaként fogalmazzuk meg
    • “adattag”, mely bünteti a rossz párosítást
    • “szomszédosság tag” a térbeli simaságot növeli
s z tereo eredm nyek
Sztereo eredmények
  • University of Tsukuba adatai
  • Hasonló eredmények más képekre

Jelenet

A valóság

ablakos korrel ci s algoritmus
Ablakos korrelációs algoritmus

Normalizált korreláció

(legjobb ablakmérettel)

A valóság

gr f algoritmus eredm nyei
Gráf algoritmus eredményei

A valóság

Gráf alapú algoritmus

s z tereo rekonstrukci menete
Sztereo rekonstrukció menete
  • Lépések
    • Kamerák kalibrációja
    • Képrektifikáció (opcionális, de sokat gyorsít)
    • Diszparitás számítás
    • Mélység számítás
kalibr ci s kokkal
Kalibráció síkokkal
  • Ha kamera paraméterektől függ (A, R, t)

ahol

  • Perspektíva esetén egy sík képe
    • 3x3-as projektív transzformáció
    • Vonalat, egybevágóságot megtart
  • A, R, t számolható legalább 3 fenti mátrixból
    • Z. Zhang. A flexible new technique for camera calibration. IEEE Transactions on Pattern Analysis and Machine Intelligence, 22(11):1330-1334, 2000.
    • http://research.microsoft.com/~zhang/Calib/
rektifik ci1
Rektifikáció
  • A kép transzformálása
    • Az optikai középpontok által meghatározott egyenessel párhuzamos sík legyen a képsík
    • 3x3 transzformációt használunk mindkét képre
    • C. Loop and Z. Zhang. Computing Rectifying Homographies for Stereo Vision. IEEE Conf. Computer Vision and Pattern Recognition, 1999.
m lys g sz m t sa diszparit sb l
Mélység számítása diszparitásból

3D renderelés

egyik input kép

mélységi térkép

[Szeliski & Kang ‘95]

X

z

u

u’

f

f

baseline

C

C’

diszparit s alap renderel s
Diszparitás alapú renderelés
  • Új nézetek készítése
    • S. M. Seitz and C. R. Dyer, View Morphing, Proc. SIGGRAPH 96, 1996, pp. 21-30.
    • L. McMillan and G. Bishop. Plenoptic Modeling: An Image-Based Rendering System, Proc. of SIGGRAPH 95, 1995, pp. 39-46.
b zist vols g megv laszt sa
Bázistávolság megválasztása
  • Milyen az optimális bázistávolság?
    • Túl kicsi: nagy mélységi hiba
    • Túl nagy: nehezebb a keresés

Nagy bázistávolság

Kicsi bázistávolság

sztereo1

Sztereo

Vámossy Zoltán

2005

Sebastian Thrun, Gary Bradski, Daniel RussakoffStanford CS223B Computer Vision

sztereo2
Sztereo
  • Alapok
  • Epipoláris geometria
  • Képrektifikáció
  • Rekonstrukció
  • Megfeleltetés
  • Aktív távolság meghatározó technikák
pinhole kameramodell
Pinhole kameramodell

Képsík

Fókusztávolság f

Projekció középpontja

alapvet sztereo
Alapvető sztereo

Z értékét kell meghatározni a következők függvényében: x1, x2, f, B

epipol ris geometria
Epipoláris geometria

P

Pl

Pr

Yr

p

p

r

l

Yl

Zl

Zr

Xl

fl

fr

Ol

Or

Xr

epipol ris geometria1
Epipoláris geometria

P

Pl

Pr

Epipoláris sík

Epipoláris vonalak

p

p

r

l

Ol

el

er

Or

Epipólusok

epipol ris geometria2
Epipoláris geometria
  • Epipoláris sík: az a sík, amelyik átmegy P ponton és a két kamera projekciós középpontján (COPs)
  • Epipólus: az egyik kamera képén a másik projekciós középpontja
  • Epipoláris feltétel: Az egymásnak megfelelő pontok a konjugált epipoláris vonalon kell, hogy feküdjenek
essential m trix
Essential mátrix

Koordináta transzformáció:

SíkT, Pl, Pl-T:

Eredményezi

Essential mátrix

P

Pr

Pl

p

p

r

l

Ol

el

er

Or

essential m trix1
Essential mátrix

Projekciós vonal:

Essential mátrix

P

Pr

Pl

p

p

r

l

Ol

el

er

Or

fundamental m trix
Fundamental mátrix
  • Ugyanaz, mint az Essential mátrix, de ez kamera pixelkoordinátákban – 8 pont algoritmus

Pixel koordináták

Belső paraméterek

rektifik ci2
Rektifikáció

Ötlet: az epipoláris vonalakat úgy transzformáljuk, hogy egy scanline-on feküdjenek

s zt ereo rektifik ci trucco
Sztereo rektifikáció (Trucco)

P

Pl

Pr

Yr

p

p

r

l

Yl

Xl

Zl

Zr

T

Ol

Or

Xr

Sztereo rendszer párhuzamos tengelyekkel

  • Epipólusok végtelenben vannak
  • Vízszintes epipoláris vonal
rekonstrukci 3 d val s eset
Rekonstrukció (3-D): valós eset

Pl

Pr

P

p

p

r

l

Ol

Or

Trucco/Verri, 161-171

megfeleltet s
Megfeleltetés

Fantom pontok

korrel ci s m dszer
Korrelációs módszer

scanline

SSD hiba

diszparitás

Bal

Jobb

Rektifikált kép

k pnormaliz ci
Képnormalizáció
  • Még ugyanolyan típusú kameráknál is lehet különbség az érzékenységben
  • A kamerák nem ugyanazt a felületet látják, tehát a beléjük érkező fény összintenzitása is eltér
  • Ezért hasznos normalizálni az intenzitásokat:
a k pek mint vektorok
A képek mint vektorok

Bal

Jobb

Minden ablak egy vektor az m2dimenziós vektortérbenNormalizálás során egységnyi hosszúak lesznek

k pt vols gok
Képtávolságok

Normalizált négyzetes differenciák összege SSD

Normalizált korreláció

korrel ci alap sszetartoz s
Korreláció alapú összetartozás

Bal

Diszparitás térkép

megfeleltet s jellemz k alapj n
Megfeleltetés jellemzők alapján

Bal kép

vonal

sarok

struktúra

megfeleltet s jellemz k alapj n1
Megfeleltetés jellemzők alapján

vonal

sarok

struktúra

Jobb kép

  • Keresünk a jobb képen … a diszparitás (dx, dy) az az eltolás érték, amikor a hasonlóság maximális
s z tereo megfeleltet s
Sztereo megfeleltetés

Bal scanline

Jobb scanline

s z tereo megfeleltet s1
Sztereo megfeleltetés

Illeszkedés

Illeszkedés

Illeszkedés

Elzártság, eltűnés

Megjelenés

Bal scanline

Jobb scanline

keres s a megfeleltet skor
Keresés a megfeleltetéskor

Eltűnt pixelek

Három eset:

  • sorban van – illeszkedik
  • eltűnt – nincs illeszkedés
  • megjelent – nincs illeszkedés

Módszer: dinamikus programozás

Bal scanline

Jobb scanline

Megjelentpixelek

leghosszabb k z s r szsorozatok
Leghosszabb közös részsorozatok

Longest Common Subsequences (LCS)

  • Definíciók
  • Rekurzív kalkuláció
  • Dinamikus Programozás
leghosszabb k z s r szsorozatok1
Leghosszabb közös részsorozatok

Longest Common Subsequences (LCS)

  • Szöveges fájlokban azonos részek keresése

Definíciók:

  • x és és y két sorozatnak közös részsorozata: amely mindkét sorozatnak is részsorozata
  • LCS: a közös részsorozatokat tekintve, amely legalább olyan hosszú, mint bármely másik részsorozat
lcs rekurz v algoritmus
LCS - rekurzív algoritmus

Sorozatok: abcabba, cbabac =>LCS: baba, cbba

a b c a b b a

c b a b a c

a b c a b b a

c b a b a c

lcs rekurz v algoritmus1
LCS - rekurzív algoritmus

Rekurzív megoldás: Legyen x = (a1, a2, ... , am) és y = (b1, b2, ... , bn). Minden 0  i  m, 0  j  n esetén x és y előtagjaira kiszámoljuk a LCS-t, aminek a hossza L(i, j).

Bázis: i + j = 0, LCS =  és L(0, 0) = 0.

Indukció: 1. Ha i = 0 XOR j = 0, akkor L(i, j) = 0

2. Ha i > 0 és j > 0, és ai  bjakkor L(i, j) = max(L(i-1, j), L(i, j-1))

3. Ha i > 0 és j > 0, és ai = bjakkor L(i, j)= 1+(L(i-1, j-1)

lcs dinamikus programoz s 1
LCS - dinamikus programozás 1.

Két részfeladatra bontás

1. Táblázatfeltöltés:

  • Az LCS hosszának L(i, j)-nek elkészítése az i és j paraméterekre egy L tömbben. (i + j szerinti sorrendben) az előbbi szabály szerint

2. Az LCS meghatározása: Ha az i, j pozícióban vagyunk, akkor

  • ha ai  bjakkor egy sorral lejjebb, vagy balra lépünk attól függően, hogy melyik a nagyobb L(i, j)
  • ha ai = bjakkor átlósan balra le lépünk egyet és feljegyezzük ai-t
lcs dinamikus programoz s 2
LCS - dinamikus programozás 2.

c 0 1 2 3 3 3 3 4

a 0 1 2 2 3 3 3 4

b 0 1 2 2 2 3 3 3

a 0 1 1 1 2 2 2 3

b 0 0 1 1 1 2 2 2

c 0 0 0 1 1 1 1 1

0 0 0 0 0 0 0 0

a b c a b b a

1. Táblázatfeltöltés:

for j:= 0 to n do

L[j, 0] := 0;

for i:= 1 to m do

begin

L[0, i] := 0;

for j:= 1 to n do

if a[i] <> b[j] then

begin

if L[j, i-1] >= L[j-1, i] then

L[j,i] := L[j, i-1]

else

L[j,i] := L[j-1, i];

end

else

L[j,i] := 1 + L[j-1, i-1];

end;

lcs dinamikus programoz s 21
LCS - dinamikus programozás 2.

2. Eredmények

if (n > 0) then

begin

if (m > 0) then

begin

if a[m] <> b[n] then

begin

if (L[n, m] = L[n, m-1]) then

Kiertekel(n, m-1, c);

if (L[n, m] = L[n-1, m]) then

Kiertekel(n-1, m, c);

end

else

begin

c[n] := a[m];

Kiertekel(n-1, m-1, c);

write(c[n]);

end

end

b

ca

cbba

megfeleltet s probl m k
Megfeleltetés problémák
  • Félreérthető eset is létezik
  • Sima felületeknél nem jó
  • Nincs jelenleg jó megoldás
sszefoglal
Összefoglaló
  • Epipoláris geometria: a megfelelő pontok az epipoláris vonalon fekszenek
  • Essential/Fundamental mátrix: meghatározza ezt a vonalat
  • 8-pont algoritmus: a Fundamental mátrix meghatározása
  • Rektifikáció: Epipoláris vonalak párhuzamosak a scanline-okkal
  • Rekonstrukció
  • Megfeleltetés:
    • A képkorreláció négyzetösszegek minimalizálásával
    • A jellemzők négyzetösszeges minimalizálásával
3d kamera rgb z buffer
3D kamera: RGB + z buffer

http://www.3dvsystems.com

3d kamera rgb z buffer1
3D kamera: RGB + z buffer

http://www.3dvsystems.com

ad