Univerza v Mariboru Fakulteta za elektrotehniko, računalništvo in informatiko Doktorska disertacija OCENJEVANJE MODELOV IN POSTOPKOV ZA 3D SLEDENJE GIBANJU ČLOVEŠKEGA TELESA S STEREOKAMERO Kandidat: mag. Matjaž Divjak Mentor: red. prof. dr. Damjan Zazula 14. oktober, 2005
Vsebina predstavitve Definicija problema Pregled področja Cilji in omejitve Teza disertacije Določanje globine s postopkom CKC2D Ocenjevanje natančnosti video sledenja Rezultati Povzetek prispevkov 2/ 38
Problem: sledenje gibanju človeškega telesa desna kamera odpravljanje optičnih popačenj določanje globinske slike segmentacija določanje trajektorij gibanja odpravljanje optičnih popačenj leva kamera
Postopki za določanje globinskih slik - pregled Običajno so sestavljeni iz 4 korakov: računanje stroškov ujemanja pikslov združevanje stroškov v regiji iskanje najboljšega ujemanja med regijami izboljševanje disparitet Metrike za oceno razlik med objekti: absolutna (MAD) ali kvadratna (MSE) razlika intenzitete normalizirana prečna korelacija primerjava polj gradientov primerjava faznih zamikov v Fourierjevi transformaciji 4/ 38
Postopki za določanje globinskih slik - pregled Združevanje stroškov: posamezni piksli 2D okna: konstantna ali dinamična 3D okna poljubne regije Iskanje ujemanja: lokalno: winner-takes-all globalno: minimizacija energijske funkcije dinamično programiranje simulirano ohlajanje klestenje grafov nevronske mreže 5/ 38
Ocenjevanje natančnosti sledenja - pregled Pomanjkanje zanesljivih referenčnih podatkov prosto gibanje objektov kaj uporabiti za referenco? Običajne rešitve: ročno označevanje položaja polavtomatski postopki primerjava z natančnejšo sledilno napravo: elektromagnetni sledilnik laserski prebirnik 6/ 38
Cilji in omejitve Osnovni cilj: natančno sledenje gibanju obraza in dlani z navadno stereokamero v realnem okolju Omejitve: kalibrirana kamera dve vhodni sliki epipolarna geometrija Lambertske površine brez eksplicitnega modela telesa pred kamero nastopa ena oseba 7/ 38
Teza Z izboljšavo kvalitete globinskih slik in algoritma za sledenje objektom s predikcijo je mogoče doseči takšno zanesljivost stereo sledilnega sistema, da je uporaben v realnih aplikacijah za navigacijo v navideznih okoljih brez uporabe dodatne opreme. Hipoteze: Določanje globinske slike s slepo ločitvijo izvorov je bolj robustno kot klasični postopek z iskanjem korelacije. Nadgradnja sledilnega postopka s predikcijsko-korekcijsko shemo bistveno poveča robustnost in natančnost sledenja. Preprosta stereokamera v kombinaciji z izboljšanim sledilnim algoritmom je primerljiva z obstoječimi rešitvami za navigacijo. Razvijemo lahko statistični postopek za analizo natančnosti video sledenja. 8/ 38
Določanje globinske slike desna kamera odpravljanje optičnih popačenj določanje globinske slike segmentacija določanje trajektorij gibanja odpravljanje optičnih popačenj leva kamera
Slepa ločitev izvorov s kompenzacijo konvolucijskega jedra (CKC) 1D CKC: iskanje položaja ponavljajočih se komponent velika odpornost na šum 2D CKC stereo slike: iskanje skupnih regij na levi (L) in desni (D) sliki matematični model: Y = HX Y: vektorizirana slika, sestavljena iz ozadja in množice neprekrivajočih se objektov H: intenziteta regij X: položaj regij (binarno) Y = X = H = 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 10 / 38
Določanje globine s postopkom CKC2D Istoležni vrstici L in D slike združimo v skupno matriko meritev Y LD : Y L Y D Y LD =[Y L, Y D ]= X LD = 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 Y LD =H X LD 11 / 38
Določanje globine s postopkom CKC2D Določanje ujemanja med L in D piksli: n n n n n n n n n n Y LD = W ( n) Y ( ) R Y ( n) n L n L T 1 = LD nl Y LD LD n D T T 1 1 1 = LD nl X X ( ) H H R H HX ( n) LD LD T 1 = LD nl X X ( ) R X ( n) LD LD n L n D W n = L 0 0 1 0 0 0 1 0 0 0 0 0 dispariteta = n n L D 12 / 38
Določanje globine s postopkom CKC2D Težava: premalo vrstic v Y LD nepopolna kompenzacija H Rešitev: dodajanje sintetičnih vrstic (navideznih meritev): V-1 sosednjih slikovnih vrstic U-1 lihih potenc K-1 zakasnjenih meritev Y LD = V = 3, U = 2, K = 2 Pogoj: V K U rang (R YLD ) 13 / 38
Določanje globine s postopkom CKC2D Omejitve pri določanju globine: dovoljen razmik: disp MAX = 32 preverjanje ujemanja: L D, D L Hierarhično delovanje: postopek ponovimo z drugačnimi V, K, U disparitete vsake ponovitve shranimo Iz shranjenih vrednosti izberemo končne disparitete: zanesljive disparitete: enake na vseh hierarhičnih nivojih preostali piksli: upoštevamo zanesljive sosede 14 / 38
Določanje globine s CKC2D - primerjava z rezultati korelacijskega algoritma Referenčne globinske slike iz baze Middlebury [1] Algoritem CKC2D, 4 hierarhični nivoji Korelacijski algoritem SVS, okno 7 7 pikslov
Določanje globine s CKC2D - vpliv šuma Globinske slike pri 10 db šuma: V=3, K=3, U=11 okno 3 3 pikslov referenčna globinska slika V=5, K=5, U=11 okno 5 5 pikslov 1 hierarhični nivo CKC2D lastna implementacija korelacijskega algoritma 16 / 38
Določanje globine s CKC2D - vpliv šuma Piksli z veljavno disparitetno vrednostjo, N = 9 CKC2D korelacija 100 90 80 Zaznani piksli (%) 70 60 50 40 30 20 50 40 30 20 10 0 SNR (db) 17 / 38
Določanje globine s CKC2D - vpliv šuma RMS-razlika glede na referenčne globinske slike, N = 9 CKC2D korelacija 12 10 Razlika (piksli RMS) 8 6 4 2 0 50 40 30 20 10 0 SNR (db) 18 / 38
Določanje globine s CKC2D - vpliv šuma Piksli, ki se od ref. disparitet razlikujejo za > 1, N = 9 CKC2D korelacija 90 80 70 60 Razlika (%) 50 40 30 20 10 0 50 40 30 20 10 0 SNR (db) 19 / 38
Ocena natančnosti zaznanega gibanja desna kamera odpravljanje optičnih popačenj določanje globinske slike segmentacija določanje trajektorij gibanja odpravljanje optičnih popačenj leva kamera
Ocenjevanje natančnosti video sledenja s primerjavo z magnetno sledilno napravo Gibanju objekta sledimo z obema napravama hkrati Poravnava koordinatnih sistemov (KS): p M = A p K Pretvorbena matrika: odvisna od položaja naprav A i j k o i j k o 1 1 1 1 2 2 2 2 = i3 j3 k3 o3 0 0 0 1 Položaj kamere moramo izraziti z magnetnim sledilnikom Težava: bližina kovinske kamere zelo popači meritve Rešitev: položaj in orientacijo določimo posredno i j k K o K K K = = = i i i T ( 1, 2, 3), j j j T ( 1, 2, 3), k k k T ( 1, 2, 3), = ( o, o, o ) 1 2 3 T 21 / 38
Pretvorbeni model A Parametri: koordinate točk T 1, T 2, T 3 razdalji d 1 in d 2 T 2 d 1 i K T 1 k K j K o K d 2 T3 i k = TT TT 3 1 = TT TT K 3 1 K 2 1 2 1 K K K j = k i o = T d i d j K K K 1 1 2 22 / 38
Pretvorbeni model B Parametri: koordinate točk T 1, T 2, T 3 razdalja d T 2 T 3 i K i M k K i k = TT TT 1 3 = TT TT K 1 3 K 1 2 1 2 KS M j M T 1 d KS K j K K K K j = k i K K o T k = 1 d k M 23 / 38
Pretvorbeni model C Parametri: koordinate točk T 1, T 2, T 3 razdalja d odmik T 3 od središča slike: m H, m V T 2 KS M n k M T 3 i M T 3 j M T 3 k K T 1 d j K i K KS K i k '' = TT '' TT 2 3 = TT TT K 2 3 K 1 2 1 2 K K K j = k i K K o T k = 1 d 24 / 38
Vpliv parametrov pretvorbenega modela Občutljivost A na parameter : Zgornja meja relativne občutljivosti celotnega modela: S Θ l A Θ A A A = + +... + Θ1 Θ2 ΘN MAX 1 l A Na končno oceno napake poleg občutljivosti vpliva tudi velikost napake parametra : E Θ l A A A = Θ + Θ +... + ΘN MAX 1 1 2 Θ1 Θ 2 ΘN A Uspešnost modelov je odvisna od dejanske izbire parametrov! 25 / 38
Delitev napake sledenja Možnosti napak: skupna napaka sledenja E skupni : ocenimo s primerjavo trajektorij napake pretvorbe: A napake sledilnega algoritma: p K Statistična delitev napake: simuliramo vse možne napake A: Θ l napake parametrov so enakomerno porazdeljene statistično ocenimo napako pretvorbe A in p K sta neodvisni, zato velja: RMS (E skupni ) 2 = RMS ( A) 2 + RMS ( p K ) 2 26 / 38
Delitev napake sledenja Analitična delitev napake: pogoj: 4 točke z enako napako: P K = p K izračunamo rotacijski del idealne matrike A: ( izmerjeni ) ( ) i j k i dp j dp k dp + o i j k i dp j dp k dp + o 1 1 1 1 1 1 2 1 3 1 M K 1 K 1 2 2 2 2 1 2 2 2 3 2 = = i3 j3 k3 i3dp1 j3dp2 k3dp3 + o3 P P A P 0 0 0 1 A ROT z A ROT popravimo A izmerjeni Â, določimo napaki: ( ˆ ) 1 izmerjeni A= A A K K M izmerjeni ( ) izmerjeni ( ) 1 1 P = P P A A 27 / 38
Rezultati eksperimentov na realnih posnetkih Sledilni algoritem: segmentacija: barva kože + globina predikcijsko-korekcijski algoritem implementacija v Matlabu Testna postavitev: okolje brez kovinskih predmetov fizično omejeni gibi stereokamera Videre Design MEGA-D: 3 posnetki s po 120 slikami ločljivost 320 240 pikslov 1 meter oddaljena od testne osebe sledilnik Polhemus 3Space Fastrak: napaka < 0,8 mm RMS izvor magnetnega polja x M KS M predal y M z M stereokamera x K y K z K dlan podstavek KS K magnetni senzor 28 / 38
Rezultati: primerjava pretvorbenih modelov Ocene maksimalnih odstopanj parametrov: točke: T 1 = T 2 = T 3 = 1,6 mm razdalje: d 1 = d 2 = d = 1,0 mm odmiki: m H = m V = 1 piksel poravnava T 2 v središče slike: 1 piksel Primerjava modelov: Model A Model B Ocena S MAX 2027,0 1668,0 Ocena E MAX 2764,7 2772,4 izbran model Model C 1654,2 2788,4 29 / 38
Rezultati: zaznani objekti 30 / 38
Rezultati: trajektorije gibanja Trajektorija desne dlani: zelena referenca, rdeča algoritem CKC2D, modra korelacijski algoritem 31 / 38
Rezultati: primerjava trajektorij Povprečna razlika med trajektorijami (mm RMS): x y z Skupaj CKC2D 11,6 ± 1,6 10,1 ± 0,4 13,6 ± 3,4 20,7 ± 1,4 SVS 16,4 ± 6,0 5,8 ± 1,3 10,9 ± 1,7 20,8 ± 4,9 Statistična ločitev napake sledenja od napake pretvorbe: Napaka pretvorbe A (mm RMS) Napaka sledenja p K (mm RMS) CKC2D 3,7 20,4 SVS 3,7 20,5 32 / 38
Rezultati: vpliv predikcijsko-korekcijskega algoritma prednost: popravljanje segmentacijskih napak slabost: večja odstopanja CKC2D Napaka brez predikcije (mm RMS) 20,4 Napaka s predikcijo (mm RMS) 20,7 SVS 19,7 20,8 predikcija 33 / 38
Rezultati: primerjava s podobnimi sledilnimi sistemi Moreno et al.: sledenje glavi s 4 cm napake pri 1 m oddaljenosti Jojic et al.: sledenje dlanem s 15 cm napake pri 3 m oddaljenosti Naš algoritem: 2 cm napake pri oddaljenosti 1 m od kamere 34 / 38
Znanstveni prispevki Nov algoritem za določanje globinskih slik z metodo CKC2D Postopek za ocenjevanje natančnosti video sledenja s pomočjo magnetnega sledilnika Analiza napak pretvorbe koordinatnih sistemov s tremi različnimi modeli Izpeljava analitične in statistične ocene natančnosti sledenja Algoritem za sledenje obrazu in rokam na osnovi stereo posnetkov, brez uporabe dodatne opreme Analiza učinkovitosti razvitih algoritmov na množici umetnih in realnih posnetkov 35 / 38
Možnosti uporabe Enostavna prilagoditev za sledenje poljubnim objektom Sistem je dovolj natančen za: navigacijo v VR okoljih krmiljenje in manipulacijo VR objektov nadomestek za 3D miško hibridne sisteme Omejitve: aplikacije, kjer je hitrost in natančnost sledenja kritična (medicinske aplikacije) 36 / 38
Teza in hipoteze Določanje globinske slike s slepo ločitvijo izvorov je bolj robustno kot klasični postopek z iskanjem korelacije. Nadgradnja sledilnega postopka s predikcijsko-korekcijsko shemo bistveno poveča robustnost in natančnost sledenja. Preprosta stereokamera v kombinaciji z izboljšanim sledilnim algoritmom je primerljiva z obstoječimi rešitvami za navigacijo. Razvijemo lahko statistični postopek za analizo natančnosti video sledenja. Zaključek: izhodiščno tezo lahko v celoti potrdimo 37 / 38
Zahvala Ministrstvu za šolstvo, znanost in šport, ki mi je s pogodbo št. 3311-00-450001/2 omogočilo status asistenta-stažista Avtorjem referenčnih globinskih slik: [1] D. Scharstein, R. Szeliski, A Taxonomy and Evaluation of Dense Two-Frame Stereo Correspondence Algorithms, International Journal of Computer Vision, št. 47, str. 7-42, 2002. 38 / 38