Univerza v Ljubljani Fakulteta za elektrotehniko Ljubljana Laboratorij
Univerza v Ljubljani Fakulteta za elektrotehniko Ljubljana Laboratorij za slikovne tehnologije Strojni vid Metode na osnovi videza Stanislav Kovačič http: //vision. fe. uni-lj. si/
Iz vsebine • Uvod • O metodi lastnih slik • Primer sistema
Uvod - osnovna problema • Določitev lege predmetov • določitev položaja • določitev zasuka • Razpoznavanje predmetov • ugotavljanje zveze med zaznanim in že znanim
Uvod - razpoznavanje Vhodna slika predmeta Sistem strojnega vida Modeli predmetov Razpoznan predmet
Razpoznavanje predmetov Kako predstaviti predmete? Kako priti do predstavitve? Kako primerjati predstavitve med seboj?
Razpoznavanje predmetov Predstavitev s stališča opazovalca (Angl. Viewer centered) Predstavitev s stališča predmeta (Angl. Object centered)
Predstavitev “videza” • Osnovni gradnik predstavitve je kar slika • Slika je preprosto matrika slikovnih elementov • Vsak predmet opišemo z množico slik (pogledov)
Predstavitev “videza” • Zbirka modelov predmetov: • imamo določeno število predmetov • vsak predmet (P) opišemo z množico slik • Vhodna slika: • vhodno sliko (I) primerjamo s slikami v zbirki • sliki (I) pripišemo eno od množic (P), tisto ki ji je najbolj podobna (najbližja).
Predstavitev “videza” • Prednosti • vhodno sliko se da direktno primerjati z modelom (oboje so slike), • modele je mogoče pridobiti avtomatično (enostavno zajamemo slike predmeta pod ustreznimi - kontroliranimi pogoji) • Problem • zbirka slik je ogromna • Vprašanje • kako množico slik predstaviti na bolj kompakten način?
Metoda lastnih slik • Analiza glavnih komponent (PCA) • Imamo veliko množico slik • Z analizo glavnih komponent poiščemo take (t. i. lastne) slike, ki dobro opišejo vse slike v množici • Vsako sliko v množici se da predstaviti z linearno kombinacijo lastnih slik • Izkaže se, da za dovolj dobro predstavitev dane slike zadostuje razmeroma majhno število lastnih slik.
Učenje • Imamo množico objektov Po, (o = 1, …, O); • Vsak predmet predstavimo z množico pogledov (slik) In (n=1, …. , N); • Slike normiramo po velikosti in energiji • Dobimo množico normiranih slik • Vsako sliko predstavimo z vektorjem (slikovnih elementov), npr. nanizamo stolpce • Izračunamo srednjo sliko (c) in jo odštejemo od vsake slike (vektorja) • Dobimo vektorje x(o)n
Učenje • Tvorimo matriko vektorjev slik X = [x(1)1 , . . , x(1)N , x(2)1 , . . , x(2)N , x(O)1 , . . , x(O)N ] • Tvorimo kovariančno matriko • Q = X XT (velikosti M 2 x M 2 , Mx. M je velikost slike) • Izračunamo lastne vektorje ek in lastne vrednosti k • Obdržimo K vektorjev za K največjih lastnih vrednosti E = [e 1, e 2 , …, e. K]
Učenje • Lastni vektorji ek definirajo ‘lastni prostor’, dim. K • Preslikamo vse slike (vektorje x(o)n ) v lastni prostor, g(o)n = E (x(o)n - c) • ‘Točke’ g(o)1, g(o)2 , …. , g(o)N predstavljajo model predmeta o, ‘mnogoterost’. e 3 g(o)n e 1 e 2
Razpoznavanje • Vhodno sliko normiramo po velikosti in energiji • Normirano sliko predstavimo z vektorjem y • Preslikamo vektor y v lastni prostor g = E (y - c) • Poiščemo g-ju najbližjo točko modela (s tem je predmet razpoznan in znani so tudi parametri).
Primer uporabe • Sistem strojnega vida za pozicioniranje in razpoznavanje avtomobilskih oljnih filtrov
Predstavitev problema
Zahteve • Sistem naj bo sposoben pozicionirati in preverjati različne tipe filtrov, neodvisno od njihovega izgleda • Pozicioniranje in preverjanje mora potekati na istem mestu • Sistem naj deluje v zaprti zanki, da bo mogoče sprotno preverjanje operacij • Sistem mora delovati avtonomno na osnovi ukazov krmilnika linije
Zahteve • Čas celotne operacije krajši od 3 s, • Dovoljen premik filtrov na pozicionirni napravi ± 3 mm, • Napaka rotacijskega pozicioniranja < 0. 5°.
Postavitev
Izgled sistema
Izgled sistema • Ročni način nastavitev, učenje • Avtomatski način • pozicioniranje, preverjanje
Pristop • Določanje premika • Določanje zasuka • Razpoznavanje - preverjanje • Premik določimo s primerjanjem s predlogo. • Zasuk in razpoznavanje objekta izvedemo z metodo lastnih slik.
Učenje • Slike objektov pri različnih legah normiramo • Sestavimo učno množico slik za N različnih leg • Izračunamo kovariančno matriko slik Q • Izračunamo lastne vrednosti in lastne vektorje e matrike Q • Sestavimo lastni prostor slik na podlagi prvih K lastnih vektorjev • Slike iz učne množice preslikamo v parametrični (lastni) prostor
Določanje zasuka, razpoznavanje Sliko objekta normiramo in preslikamo v lastni prostor Poiščemo lego, pri kateri je razdalja med parametri opazovanega objekta in učne množice najmanjša
Lastne slike Izgled lastnih slik
Lastne slike Rekonstrukcija objektov glede na ohranjeno informacijo 50% 75% 90% 99%
Lastne slike Potek koeficientov, ki pripadajo lastnim slikam:
Lastne slike Modeliranje potekov s sinusoidami.
Rezultati • Napaka pozicioniranja < 0. 3° • Skupen čas < 0. 9 s • določanje zasuka + identifikacija <0. 4 s • pozicioniranje < 0. 5 s
Literatura • E. Trucco, A. Verri, Introductory Techniques for 3 D Computer Vision, Prentice Hall, 1998, (Poglavje 10). • H. Murase, s. Nayar, Visual Learning and Recognition of 3 -D Objects from Appearance, IJCV, Vol. 14, No. 1, 1995. • F. Lahajnar, S. Kovačič, A Machine Vision System for the Rotational Positioning and Verification of Oil Filters, IJAMT, Vol. 21, No. 4, 2003 (v tisku).
- Slides: 30