Gépi látáson alapuló akadályelkerülés XXX. OTDK 2011 Óbudai Egyetem Neumann János Informatikai Kar Szerzők: Csaba György Somlyai László Tisztelt zsűri, tisztelt hallgatóság. Szeretném bemutatni kollégámat Csaba Györgyöt, én Somlyai László vagyok. Prezentációnk során ismertetjük A Gépi Látáson alapuló akadályelkerülés című TDK dolgozatunkat. Konzulens: Dr. Vámossy Zoltán egyetemi docens, kutatási dékán-helyettes
Kitekintés DARPA urban challenge Kormányzó-, fékrásegítő- és automata parkoló- rendszer vezérlése (LIDAR) Napjainkban egyre nagyobb szerepet kapnak az autonóm közlekedésű járművek. Ezek különböző versenyek keretein belül mérhetik össze tudásukat. Az egyik legjelentősebb az Amerikában megrendezésre kerülő DARPA U.C. . Itt egy szimulált városi környezetben kell a járműveknek maguktól közlekedniük a KRESZ szabályainak betartása mellett. Az autonóm közlekedés mellett egyre több autóban megtalálhatók különböző kényelmi és biztonsági rendszerek, mint például automata parkolórendszer, fékrásegítő … Somlyai L., Csaba Gy. - OTDK 2011
Célkitűzés Aktív szenzor kifejlesztése A környezet valós leképezése Mindennapi forgalomban kapható eszközök felhasználásával Autonóm közlekedő robotautó elkészítése A környezet érzékelésére használt szenzorok egy csoportosítása lehet, az aktív-, vagy passzív-szenzor. Aktív szenzoros rendszerek magukból kibocsájtott mérőjel segítségével érzékeli a környezetet. Egy ilyen rendszer látható a képen. Olyan robotrendszer elkészítését tűztük ki célul, mely aktív szenzor segítségével képes a környezet felismerésére, ennek ismeretében elkerüli az elötte megjelenő akadályokat. Somlyai L., Csaba Gy. - OTDK 2011
Hardver bemutatása Szoftverfejlesztés Eredmények Modell autó Vezérlő elektronika Szenzor-rendszer Szoftverfejlesztés Lézer detektálása Mélységi térkép felépítése Útvonaltervezés és beavatkozó jelek Eredmények Autonóm közlekedés A következőkben ismertetésre kerül felépített Hardver, mely magában foglalja a robotautót a rajta elhelyezett elektronikával és szenzorrendszerrel Ezután a kifejlesztett Szoftverről ejtünk néhány szót Végül ismertetjük ez elért eredményeket Somlyai L., Csaba Gy. - OTDK 2011
Hardver Előzmények Távirányítós terepjáró Magyarok a Marson 2008 Felülnézeti kép alapú irányítás II. helyezés Távirányítós terepjáró 2 db szervo (két-két kerék kormányzása független) 2 db meghajtó motor A projekt alapját egy a 2008-as magyarok a marson versenyen indult robotautónk szolgáltta. A képen látható. A versenyen az autónak szimulált marsi környezetben kellett egy feladatot végrehajtania. Ez a verzió még csak egy felülnézeti kamerakép alapján 30 mp –es késleltetés alapján volt vezérelve. A versenyen 2. helyezést értünk el. Azóta a rendszert jelentősen továbbbfejlesztettük. A képen a jelenlegi állapot látható. Somlyai L., Csaba Gy. - OTDK 2011
Hardver CAN bridge Motorszabályzó PC és a CAN busz közötti kapcsolattartás Motorszabályzó Motorszabályzó (PID) Optikai fordulatszámmérés 2x100 W motormeghajtó híd Kormány szervó vezérlés Megtett távolság mérése A robot vezéréséhez céláramköröket fejlesztettünk ki, amely magában foglalta a NY.Á.K tervezését, beültetését és a mikrokontrolleren futó firmware fejlesztését. Ennek egyik része, az autó és a számítógép közötti kommunikációt lebonyolító CAN bridge áramkör. Mely egy soros port és Egy CAN busz közöttt biztosít átjárást. Másik része a CAN buszon elhelyezkedő motorszabályzó áramkör, mely 2 motor sebességszabályzására képes. Valamint az autó kormány szervó inak vezérélsét végzi a kapott CAN üzenetek alapján, és lehetőség van a megtett távolság lekérdezésére. Somlyai L., Csaba Gy. - OTDK 2011
Aktív szenzor Elemei Mérés elve Lézer dióda Üvegrúd Kamera 600 mm dt1 = 1900 mm dt2 300 mm t1 t2 Robot γ Elemei Lézer dióda Üvegrúd Kamera Mérés elve Lézersík kivetítése A tárgyakon a lézer megtörik Lézer detektálása A lézer elhelyezkedése a képen függ a távolságtól A kifejlesztett szenzor három fő részre osztható. Egy lézerdióda, egy üvegrúd, valamint a mérőjelet érzékelő kamera. A mérés menete a következő: A lézerdióda által kivetített pontszerű fényét az üvegrúd vonalszerűvé formálja. Ez az érzékelő előtt elhelyezkedő tárgyakon megtörik. A kamera és a lézerkivetítő által bezárt 60°-os szögnek köszönhetően a kapott kameraképen a távolság függvényében a lézer máshol helyezkedik el. A kamera képén minél magasabban található a megtört lézer fénye, annál közelebb van az adott tárgy. Somlyai L., Csaba Gy. - OTDK 2011
Szenzor kalibrálása Tesztrendszer Pontosság függ Kamera: 640x360 Lézer és kamera szög: 60° Maximális érzékelési távolság: 2 m Pontosság függ Kamera kép felbontásától Az objektum távolságától Tesztrendszeren elérhető maximális felbontás: 0,1 - 0,5 cm A szenzor kalibrációja során felvettük a leképezési függvényt, amely megadja a kamera képen detektált lézerpont autóhoz viszonyított valós térbeli helyzetét. A leképezés pontossága függ a kamera képének felbotásától valamint az objektum távolságától. Jelen rendszerben maximálisan 0,1-0,5 cm-es pontosság érhető el a kamerától mért távolság függvényében, ennek alakulását az alábbi grafikonon figyelhetünk meg. Melyen látható, hogy a távolság növekedésével, egy cm-t egyre kevesebb pixel reprezentál. Somlyai L., Csaba Gy. - OTDK 2011
Vezérlőszoftver Cél Kameraképből a haladási irány meghatározása Kamera korrekció A kifejlesztett vezérlőszoftver célja, hogy az érzékelt környezetből meghatározza a jármű haladási irányát. Első lépéskén a kamera képének korrekcióját kell elvégezni, amennyiben az szükséges. Mivel a rendszerben alkalmazott kamera torzítása elhanyagolható a mérés pontosságának függvényében, ezt a lépést a gyorsabb működés érdekében elhagyjuk. Somlyai L., Csaba Gy. - OTDK 2011
Vezérlőszoftver Cél Kameraképből a haladási irány meghatározása Kamera Kamera korrekció Lézer detektálás Az így kapott képen a lézer detektálása következik. Somlyai L., Csaba Gy. - OTDK 2011
Lézer detektálás Célja: csak azon pixelek meghagyása, amik a lézert ábrázolják Lézerdetektálási módszerek Intenzitás Színtartomány Éldetektálás Melynek célja azon pixelek meghagyása amik a lézert ábrázolják. Néhány tesztelt érzékelési módszer, melyet az alábbi kamerakép segítségével szemléltetünk Az intenzitás alapú keresés azért lehetséges, mivel bizonyos körülmények között a lézer képe magas intenzitású pixeleket eredményez. Világosabb környezetben viszont ez a módszer nem mindig alkalmazható. Színtartománybeli keresésnél a lézer piros hullámhosszbeli tulajdonságát használjuk ki. Ezen módszernél hibákhoz vezethet amennyiben a környezetben más piros színtartományban elhelyezkedő felületek vannak. Éldetektálás alapú keresésnél a lézer élszerű tulajdonságát vesszük figyelembe. Ebben az esetben is rengeteg hamis pozitív eredményt kapunk. Somlyai L., Csaba Gy. - OTDK 2011
Lézer detektálás Különböző egyszerűbb eljárások összevonása Gyorsaság megmarad, eredményesség jobb Színtartomány + Küszöbölés Élszűrés, hiszterézis küszöbölés Színtartomány + Küszöbölés & Élkeresés A korábban ismertetett eljárások önmagukban nem használhatók, így a különböző módszereket egymással kombinálva javítható a detektálás eredményessége. Színtartomány beli keresés és éldetektálás eredményképének együttes alkalmazásával - és kapcsolatba hozásukkal – a hamis pozitív eredmények száma jelentősen csökken, az ábra szemlélteti Somlyai L., Csaba Gy. - OTDK 2011
Mélységi térkép redukálás Mélységi térkép kiterjesztés Vezérlőszoftver Cél Kameraképből a haladási irány meghatározása Kamera Kamera korrekció Mélységi térkép redukálás Lézer detektálás Mélységi térkép Mélységi térkép kiterjesztés Az így kapott, lézerdetektált képből kerül felépítésre a mélységi térkép. Somlyai L., Csaba Gy. - OTDK 2011
Mélységi térkép Virtuális felülnézeti kép Valós térbeli távolságok Kép transzformáció Forráskép: lézer képe Leképezés minden pixelre Kiterjesztés Autó fizikai tulajdonságai Képméret csökkentése Kis felbontású mélységi térkép készítése, az útvonaltervezéshez Amely egy virtuális felülnézeti kép, mely a valós térbeli távolságokat ábrázolja. A kalibráció során felvett leképezési függvényt alkalmazva detektált lézerképen, megkapjuk az egyes objektumok világ-koordinátarendszerbeli helyzetét. A mérés helyességét az alábbi felülnézeti kép szemlélteti. Melyen a tesztkörnyezet felülnézeti képe, a járművön elhelyezett kamera képe, valamint a jármű által detektált környezet látható. Az alatta lévő ábrán a jármű 20cm-el előrébb helyezkedik el. Somlyai L., Csaba Gy. - OTDK 2011
Mélységi térkép kiterjesztése Az alábbi képeken a mélységi térkép készítésének folyamata látható. Itt az látható amint a kamera képéből elkészül a detektált lézerkép Majd a detektált lézerképből a virtuális felülnézeti kép A tárgyak méretét a robot fizikai paramétereinek figyelembevételével megnöveljük. Majd a gyorsabb útvonaltervezés céljából a képméretet redukáljuk. Somlyai L., Csaba Gy. - OTDK 2011
Mélységi térkép ellenőrzése a) 50 cm b) 100 cm c) 150 cm d.) 170 cm Tesztkörnyezet Kamerakép Virtuális felülnézeti kép Mért értékek Valós Mért Hiba a) 50 cm 0 % b) 100 cm 99 cm 1 % c) 150 cm 145 cm 3,3 % d) 170 cm 165 cm 3 % A mélységi térkép ellenőrzése céljából a következő tesztkörnyezetet építettük fel. A képen elhelyezkedő akadályok valós távolsága ismert. Ezen a képen a robotra szerelt kamera képe látható Melyből elkészítjük a virtuális felülnézeti képet. A felülnézeti képből meghatározott távolságokat és a tárgyak valódi távolságát egy táblázatba foglalva, ellenőriztük a mérés pontosságát. Az egyes tárgyakhoz tartozó mért hibákból kiszámoltuk a mérés relatív hibáját. Itt jól látható, ez az érték igen kicsi, 4 % alatti érték. A közelebbi tárgyak esetén pedig kisebb, így beláthatjuk, hogy a mérés pontossága függ a tárgyak távolságától. Somlyai L., Csaba Gy. - OTDK 2011
Mélységi térkép ellenőrzése A távolságmérés a jármű dőlésére invariáns Kanyarodás Egyenetlen terep Egy másik mérés során azt ellenőriztük, hogy a szenzor által mért távolságok a jármű dőlésének függvényében milyen mértékben változnak. A táblázatban feltüntetett értékek alapján láthatjuk, hogy a mérés így is helyes értékekhez vezetett. A valós és mért értékekből számolt hiba öt százalék alatt marad. Valós Mért Hiba a) 50 cm 52 cm 4 % c) 150 cm 148 cm 1,3 % d) 170 cm 167 cm 1,8 % Somlyai L., Csaba Gy. - OTDK 2011
Mélységi térkép redukálás Mélységi térkép kiterjesztés Vezérlőszoftver Cél Kameraképből a haladási irány meghatározása Kamera Kamera korrekció Mélységi térkép redukálás Lézer detektálás Mélységi térkép Útvonal tervezés Mélységi térkép kiterjesztés A virtuális felülnézeti kép elkészítése után a jármű útvonalának tervezése következik Somlyai L., Csaba Gy. - OTDK 2011
Útvonaltervezés Célja Mélységi térképen Két pont között járható út keresése Haladási irány meghatározása Mélységi térképen Hullám továbbterjedés [1] algoritmussal (gyors) Potenciálmező felépítése a célból indulva (távolság) Startból indulva a legkisebb értékek keresése Az útvonaltervezés célja, hogy meghatározzunk két pont közöttegy lehetséges haladási útvonalat. A algoritmus gyors lefutásának érdekében egy viszonylag gyors útvonalkeresési eljárást használunk. A hullámtovábbterjedéses algoritmus a célkoordinátából indulva egy potenciálmezőt épít fel. Majd a kiindulási koordinátából a legkisebb értékek keresésével ad meg egy útvonalat.. [1]: A. P. Munuzuri, L. O. Chua Noel: Shortest-path-finder algorithm in a two-dimensional array of nonlinear electronic circuits; International Journal of Bifurcation and Chaos, Vol. 8, No. 12, pp. 2493-2501 (1998) Somlyai L., Csaba Gy. - OTDK 2011
Mélységi térkép redukálás Mélységi térkép kiterjesztés Vezérlőszoftver Cél Kameraképből a haladási irány meghatározása Kamera Kamera korrekció Mélységi térkép redukálás Lézer detektálás Mélységi térkép Beavatkozás Útvonal tervezés Mélységi térkép kiterjesztés Az így kapott útvonalból meghatározzuk a jármű új haladási irányát. Somlyai L., Csaba Gy. - OTDK 2011
Navigáció Kommunikáció a robottal Megtett távolság visszamérése Soros porton keresztül (USB - FTDI) Keretekben Megtett távolság visszamérése Optikai tárcsás érzékelővel Pontosság 20 mérésből További feldolgozás céljából megtett útvonal adatainak tárolása CRC START Type Dest. Funct. Id. 8 STOP 7 6 5 4 3 2 1 Header Data Valós távolság Maximális mért hiba Hiba 1 m 1,25 cm 1,3 % 2 m 2,7 cm 5 m 1,5 cm 0,3 % A meghatározott haladási irányt a járműnek soros porton keresztül küldjük el megadott keretformátumokban. A későbbi feldolgozás céljából a megtett távolságok is lekérdezésre kerülnek. Ennek pontossága 20 mérés maximumából számolva is 2 % alatt marad, ez a hiba az autó mechanikai tulajdonságaiból adódik. Somlyai L., Csaba Gy. - OTDK 2011
Elért eredményeink Stabilan működő jármű (megbízható elektronika) elkészítése Helyes eredményeket adó szenzorrendszer megépítése Változatos körülmények között is (erdő, napsütés, zárt tér) Akadálydetektálás Alakzattól független (téglatest, henger, érdes fatörzs) Eredményessége fényviszony függő Mélységi térkép készítés Felépített tesztkörnyezetet alacsony hibaszázalékkal detektálta Sikeres autonóm közlekedés megvalósítása Váratlanul felbukkanó akadályok előtt megáll és visszatolat Elkészült vezérlőszoftver Somlyai L., Csaba Gy. - OTDK 2011
Továbbfejlesztési lehetőségek Szenzorrendszer fejlesztése KINECT RGBD kép 0,5 m – 10 m működési tartomány (pontosság: ~5 mm) Környezeti fényviszonyokra érzéketlenebb a lézeres megoldásnál Szoftverben egyszerűen lecserélhető 2010 év végén jelent meg TDK óta a rendszer továbbfejlesztésének keretében egy másik szenzort is teszteltünk. 2010 év végén megjelent KINECt nevű eszköz, ami egy RGBD képet ad. Ez egy színes kép, melynek minden pixeléhez mélységi információ is tartozik Viszonylag nagy működési tartománnyal és pontossággal rendelkezik. A környezeti fényviszonyokra kevésbé érzékeny mint a lézeres megoldás. Szoftverben egyszerűen lecserélhető a szenzor mivel hasonló virtuális felülnézeti kép képezhető belőle. Ennek létrehozására elkészítettük a felülnézeti képet létrehozó programot is, melyen látható, hogy a már korábban bemutatott virtuális felülnézeti képpel kompatibilis eredményt ad. Somlyai L., Csaba Gy. - OTDK 2011
Bemutató Most egy videófelvételen mutatom be a szoftver működését, miközben kollégám elindítja az itt lévő robotot. … videó megnyitása … Bal oldalon a felépített tesztkörnyezet felülnézeti képe látható. Mellette jobbra a roboton elhelyezett kamera képe, alatta pedig a mélységi térkép és a tervezett útvonal található. A videón is jól látható, hogy a szenzorrendszer a vörös színű tárgyakat is helyesen detektálja. Ez jelen esetben a szemetes melletti vörös papíron figyelhető meg. (második videónál látszik a kuka és a papír is) Az eszközt változatos körülmények között teszteltük. Ezen a videón például az látszik, hogy erdei környezetben is megfelelően működik. Amennyiben a robot előtt olyan tárgy található, melynek kikerülésére nem képes, megáll, visszatolat, majd új útvonalat keres. A kifejlesztett szoftverben beállítható az a legnagyobb magasság, ami alatt a robot még nem veszi akadálynak a tárgyakat, így képes kisebb akadályokon áthaladni (az utolsó videó, ahol a dombokon megy) … videó forog tovább végtelenítve… Köszönjük figyelmüket, várjuk kérdéseiket. Somlyai L., Csaba Gy. - OTDK 2011
Köszönjük a figyelmüket Somlyai L., Csaba Gy. - OTDK 2011