Aplikacija za merjenje razdalj s pomojo stereoskopskih posnetkov Jernej Mrovlje 1, amir Vrani 1 Institut»Jožef Stefan«1 Jamova cesta 39, 1 Ljubljana, Slovenija jernej.mrovlje@ijs.si, damir.vrancic@ijs.si Position measuring application based on stereoscopic pictures Stereoscopy is a technique used for recording and representing stereoscopic (3) images by using one stereoscopic camera or two singlelens cameras. Stereoscopic pictures allow us to calculate the distance from the camera(s) to the chosen object within the picture. The distance is calculated from differences between the pictures and additional technical data like focal length and distance between the cameras. In this paper we present a system for measuring distance using stereoscopic pictures. 1 Uvod Metode za merjenje razdalj lahko razdelimo na pasivne in aktivne. Med slednje prištevamo merjenje razdalj s pomojo laserskih, ultrazvonih in radijskih valov. Pasivne metode so manj razširjene, njihova prednost pa je predvsem v tem, da se razdalja izraunava samo na podlagi prejete informacije (npr. svetlobe). Merjenje razdalj s pomojo stereoskopskih posnetkov spada med pasivne metode, razdaljo pa izraunavamo na podlagi podatkov pridobljenih iz zajetih stereoskopskih slik. V prispevku predstavljamo aplikacijo za merjenje razdalj s pomojo stereoskopskih slik, ki smo jo izdelali v programskem paketu Matlab. Aplikacija je zamišljena kot del neinvazivnega sistema za merjenje razdalj, ki omogoa takojšnjo analizo, preko stereoskopskega sistema, zajetih slik. Zajem stereoskopskih slik in izpeljava razdalje Obstoji ve razlinih metod zajema stereoskopskih posnetkov. Prvotno so v ta namen uporabljali stereoskopske kamere, danes pa so jih izpodrinili modernejši stereoskopski sistemi [1]. Gre za kombinacijo dveh enakih kamer, ki ju združimo na vodilu. Pri tem moramo paziti na to, da sta kameri med seboj vodoravno in horizontalno poravnani. Poglavitnega pomena je tudi hkratno proženje obeh kamer, izvedemo pa ga s posebni upravljalniki, ki omogoajo sinhronizacijo in upravljanje dveh kamer hkrati [6, 7]. Slika 1 prikazuje stereoskopski sistem dveh kamer Canon PowerShot A64, ki smo ga uporabili za zajem slik. Slika 1: Stereoskopski sistem dveh kamer Canon PowerShot A64 Stereoskopske slike so vedno posnete v parih, posamezni sliki v paru pa prikazujeta isti motiv. Odloilna razlika med slikama je ta, da sta slednji zajeti z razlinih položajev oziroma iz razlinih zornih kotov. Shematini prikaz zajema s stereoskopskim sistemom je prikazan na sliki. Levo sliko zajamemo v toki S L, desno sliko pa v toki S. je t.i. stereoskopska baza
(razdalja med kamerama), zorni kot kamer in razdalja med stereoskopskim sistemom in objektom na sliki (npr. drevesom). Razdalji x L in x opisujeta lokacijo objekta na levi in desni sliki, 1 in pa sta pripadajoa kota. samostojno aplikacijo. Uporabniški vmesnik aplikacije je prikazan na sliki 3. x xl x Slika 3: Uporabniški vmesnik Slika : Shematini prikaz zajema stereoskopskih posnetkov S pomojo geometrijskih izpeljav iskano razdaljo zapišemo kot funkcijo stereoskopske baze (), zornega kota kamer ( ), širine zajetih slik (x v slikovnih tokah) in razlike lokacije objekta med levo in desno sliko (x L - x ): 1 x. (1) tan ( x L x ) 3 Algoritem Algoritem za merjenje razdalj s pomojo stereoskopskih slik je bil napisan v programskem paketu Matlab in pozneje s pomojo orodja Matlab Compiler preveden v SL S Aplikacija trenutno omogoa»off-line«delovanje, torej obdelavo predhodno zajetih stereoskopskih slik. Znotraj aplikacije na izbrani levi sliki doloimo objekt, katerega oddaljenost želimo izraunati. Velikost izbirnega okna prilagajamo z vrtenjem miškinega koleška. Lokalizacija izbranega objekta na desni sliki se izvrši avtomatsko, poteka pa v dveh korakih. Najprej se izvrši primarno, nato še sekundarno iskanje. vertikalna napaka vertikalna napaka Slika 4: Prisotnost vertikalne napake Na podlagi lastnosti stereoskopskih slik sklepamo, da se bo izbran objekt leve slike na desni sliki nahajal na podobni lokaciji delno zamaknjen ali levo ali desno. Primarno iskanje objekta tako poteka samo v horizontalni smeri [4]. Zaradi vertikalne napake prisotne na slikah, so objekti med levo in desno sliko v manjši meri zamaknjeni tudi po vertikali, zato smo v
algoritem vkljuili tudi sekundarno iskanje. Izhodiše sekundarnega iskanja predstavlja rešitev primarnega iskanja, poteka pa dveh smereh: v vertikalni in horizontalni smeri. S pomojo sekundarnega iskanja objekt v primeru prisotne vertikalne napake lokaliziramo še natanneje. Slika 5 prikazuje primer iskalnih podroji in pripadajoih rešitev. Z zeleno barvo je obrobljeno podroje primarnega oz. horizontalnega iskanja, z modro barvo pa njegova rešitev. Podobno je z rumeno barvo obrobljeno podroje sekundarnega iskanja, z rdeo barvo pa konna rešitev. podroja primarnega in sekundarnega iskanja lahko prikažemo tudi grafino (glej sliko 7). I L leva slika I desna slika Slika 5: Podroja in pripadajoe rešitve primarnega ter sekundarnega iskanja Slika 6: Proces horizontalnega iskanja Primerjava med podroji leve in desne slike se vrši po metodi SA (Sum Of Absolute ifferences): I ( x, y) O ( x, y) I ( x u, y v), () L kjer I L predstavlja podroje izbranega objekta desne slike, I pa podpodroje znotraj iskalnega podroja. Z izbirnim oknom, ki je na sliki 6 prikazan z modro barvo, se pomikamo od levega do desnega robu iskalnega podroja v korakih po eno slikovno toko. V vsakem koraku podroji I L in I med seboj primerjamo po enabi. olj kot sta si podroji ki ju primerjamo podobni, manjša je povprena vrednost njune absolutne razlike. Podpodroje I, ki mu po enabi pripada najmanjša povprena vrednost, predstavlja najboljše ujemanje s podrojem I L, obenem pa tudi lokacijo izbranega objekta leve slike na desni sliki. Povprene vrednosti absolutnih razlik I in I L za vse korake znotraj Slika 7: Grafini prikaz povprenih vrednosti absolutnih razlik I in I L Na podlagi razlik položaja izbranega objekta na levi in desni sliki, izraunamo konno razdaljo do objekta (glej enabo 1) in podamo napako lokalizacije objekta.
3.1 Horizontalna napaka V kolikor kameri znotraj stereoskopskega sistema nista popolnoma horizontalno poravnani, je na zajetih slikah prisotna horizontalna napaka (glej sliko 8). Za pravilni izraun razdalj je slednjo potrebno odpraviti. V ta namen smo v aplikacijo vgradili funkcijo vnosa referenne toke (znane razdalje do poljubnega objekta). Slika 8: Horizontalno neporavnani kameri 4 Napaka razdalje Pravilna lokalizacija izbranega objekta na desni sliki odloilno vpliva na konno napako izraunane razdalje. olj natanno kot doloimo lokacijo objekta, bolj tona bo izraunana razdalja. Primerjavo med desno in levo sliko vršimo v korakih ene slikovne toke, torej lokacijo objekta na desni sliki doloimo na eno slikovno toko natanno. V primeru ko je zorni kot kamere enak, širina zajetih slik pa je x, potem z doloeno stopnjo posplošitve lahko reemo, da eni slikovni toki pripada zorni kot:. (3) x Iz sheme na sliki 9 izpeljemo napako razdalje, ki je posledica napane lokalizacije objekta za : tan. (4) Zavedati se moramo tudi napak samega optinega sistema kamer, ki prav tako odloilno vplivajo na konni rezultat (izraunano razdaljo). Na tem mestu omenimo predvsem radialna distorzijo, ki je najbolj problematina. Slika 9: Relativna napaka izraunane razdalje Loimo dve obliki radialne distorzije in sicer»blazino«(angl. pincushion) ter»sodek«(angl. barrel). Pojavu blazine, ki je znailen predvsem za telefoto objektive, upogne ravne linije proti središu slike. Pojav sodka upogne ravne linije proti robovom slike. Slednji pojav je pogostejši, pojavlja pa se predvsem pri širokokotnih objektivih. 5 Rezultati elovanje aplikacije smo preverili na množici stereoskopskih slik zajetih v naravnem okolju. Pri tem smo uporabili stereoskopski sistem prikazan na sliki 1. Na razdaljah 1,, 3, 4, 5 in 6 metrov pravokotno na stereoskopski sistem smo na štirih razlinih lokacijah namestili testne objekte (tablice). Slike testnih objektov smo z najvejo možno loljivostjo (3648x736) zajeli pri šestih razlinih vrednostih stereoskopske baze (, 3, 4, 5, 6 in 7 cm). Napaki sferine distorzije smo se izognili na ta nain, da smo testne objekte zajeli v centralnem delu slik, kjer so napake minimalne. Na skupno 4-ih parih stereoskopskih slik smo z našo aplikacijo izraunali razdalje do posameznih tablic. Pri izraunu razdalj smo za
referenno toko uporabili tablico na razdalji 3 metrov. Za izraun posamezne razdalje je algoritem potreboval manj kot eno sekundo. as izrauna razdalje je sicer sorazmeren z velikostjo izbranega iskalnega podroja desne slike. Veina dobljenih rezultatov se nahaja znotraj tolerance ene slikovne toke. V tabeli 1 predstavljamo povprene vrednosti napak izraunanih razdalj. Grafini prikaz rezultatov se nahaja na slikah 1 in 11. Tabela 1: Povprene vrednosti napak izraunanih razdalj v odvisnosti od velikosti stereoskopske baze [m] Povprene vrednosti napak izraunanih razdalj [m] 1m m 4m 5m 6m,,14,5, 3, 4,4,3,9,3 1,4,,9,4,7,3 1, 1,6,3,5,5,,8 1,3 1,8,6,4,,7 1, 1,5,7,4,1,6,9 1,3 Slika 1: Povprene vrednosti napak izraunanih razdalj za testne objekte na razdaljah 1, in 4 metrov Slika 11: Povprene vrednosti napak izraunanih razdalj za testne objekte na razdaljah 5 in 6 metrov 6 Literatura [1] M. Vidmar, AC sodobne stereofotografije z maloslikovnimi kamerami, Cetera, 1998. [] H. Walcher, Position sensing - Angle and distance measurement for engineers, Second edition, utterworth-heinemann Ltd., 1994. [3] Welt der stereoskopie, http://www.stereoskopie.com, (3.4.8). [4] J. Carnicelli, Automatic alignment of stereo cameras, http://www.alexandria.nu/ai/blog/entry.asp?e=31, (9.11.7). [5] J. Carnicelli, Stereo vision: measuring object distance using pixel offset, http://www.alexandria.nu/ai/blog/entry.asp?e=3, (9.11.7). [6]. Vrani and S. L. Smith, Permanent synchronization of camcorders via LANC protocol, Stereoscopic displays and virtual reality systems XIII : 16-19 January, 6, San Jose, California, USA, (SPIE, vol. 655). [7]. Vrani, Synchronisation of two camcorders with PI controller - 3 LANC master, Proceedings of the 6th International Ph Workshop on Systems and Control, October 4-8, 5, Izola, Simonov zaliv, Slovenia : young generation viewpoint. Ljubljana: Institut Jožef Stefan, 5, 14.