Alighanem mindenki látott már sofőr nélkül közlekedő, önvezető járműveket tudományos-fantasztikus filmekben. Szakértők még 15-20 éve is úgy gondolták, hogy az ilyen közlekedési eszközök mára mindennaposak lesznek. Bár az autógyártók egyre több vezetéstámogató rendszert építenek be az új autókba, a teljesen önvezető közlekedésre alkalmas autonóm járművekre az erősen növekvő igény ellenére még várni kell.

A vezetésautomatika, vagyis az önvezetés mértékét 6 kategóriába sorolják, a nullástól az ötös szintig.

A 3. szinttől kezdve beszélhetünk automatizált vezetés szolgáltatásokról, az alacsonyabb szinteken csak vezetőtámogató funkciók érhetők el, vagyis minden esetben a sofőr vezet. A harmadik szinten a sofőrnek még át kell vennie a vezetést, amikor a rendszer kéri, efölött az automatizált vezetés szolgáltatások már nem igénylik, hogy az ember átvegye az irányítást.

A piacon jelenleg megtalálható önvezető technológiákat használó autók – például: Tesla, Audi, Nissan, BMW – már most is sok mindenben képesek megkönnyíteni a sofőr munkáját, és bár a gyártók a különféle rendszereiket folyamatosan fejlesztik, a teljesen autonóm autók gyártása még nincs belátható közelségben. Az ELTE Informatikai Karán évtizedek óta foglalkoznak számítógépes képfeldolgozással, néhány éve pedig ehhez kapcsolódóan önvezető technológiák fejlesztésével is. Az ezzel foglalkozó Geometriai Számítógépes Látás csoport az Algoritmusok és Alkalmazásaik Tanszéken belül működik, tagjai kutatók, doktoranduszok, hazai és külföldi mesterképzéses hallgatók. A csoport munkájában részt vesz egy tanszéki mérnök is, aki a hardver összeállítása mellett a kezelőszoftver kialakításáért is felel, valamint összegyűjti a nyers adatokat és továbbítja azokat a kutatóknak.

A kutatások életre hívásakor az volt a cél, hogy olyan önvezető autókból származó saját adatokkal rendelkezzen az IK, amelyeket a kutatók és a hallgatók is felhasználhatnak. Kipróbálhatják a saját fejlesztésű szoftvereiket, és tesztelhetik, hogy a kidolgozott megoldásuk működik-e egy adott forgalmi szituációban. Az adatgyűjtéshez egy régi Skodára szereltek fel különféle modern szenzorokat: normál és nagylátószögű kamerákat, LiDAR-t, GPS-t – saját készítésű, 3D nyomtatott tartó segítségével.

A két normál kamera közül egy 15 fokban jobbra, egy 15 fokban balra, egy harmadik kamera pedig teljesen előrefelé néz. Van még két halszemoptikás kamera is, ezek oldalra néznek, de a nagy látószögük miatt ezekkel akár még az is észlelhető, hogy mi van az autó mögött. A kamerák elhelyezése elsősorban azt tükrözi, hogy a legfontosabb történések az autó előtt vannak. A kamerák képéből egy előre néző nagylátószögű kamerakép készíthető, a hagyományos panorámakép készítésnek megfelelő összefűzési technikával.

A kamerák mellett az autót felszerelték LiDAR-ral is. A LiDAR (Light Detection and Ranging) magyarul lézer alapú távérzékelést jelent. Ez jobban működik nehezebb látási viszonyok között, továbbá információt ad a környező tárgyak – épületek, fák, oszlopok, a forgalomban részt vevő járművek és gyalogosok – térbeli helyzetéről. Az autóra egy Velodyne VLP-16 (tizenhat sugaras) eszközt szereltek fel, ami azt jelenti, hogy függőleges irányban 30 fokos látószögben tizenhat sorban bocsát ki lézerfényt másodpercenként 5-6 alkalommal, amely visszaverődik a környező tárgyakról, és ennek segítségével 360 fokban körben látszik, hogy mi milyen messze van. Ennek azért van jelentősége, mert a kameraképek egy színes, nagyfelbontású kétdimenziós képet nyújtanak a környezetről, de nem adnak információt a környező tárgyak távolságáról, míg a LiDAR által szolgáltatott háromdimenziós pontfelhőből ez is kiolvasható.

Az autón elhelyezett szenzorok között található egy GPS vevő egység is. Az ebből érkező helyinformációs adatokat is rögzítik, amelyek aztán megjeleníthetőek például a Google Earth, vagy egyéb hasonló program segítségével. A GPS meglepő pontosságot ad, a kirajzolt útvonalon még akár az is látszik, ha ki kellett kerülni valamit az úttesten.

Az adatok rögzítése és feldolgozása az autón belül történik, egy laptop segítségével. A rendszer energiaellátását egy független, külön akkumulátor biztosítja, így kizárhatóak az autóból érkező elektromos zavarok. A szenzoroktól beérkező kábelek egy Ethernet switchen keresztül továbbítják az öt kamera képét a laptop felé. Az autóban található egy Arduino platformra épített szinkron generátor is, amely biztosítja, hogy mind az öt kamera pontosan egyszerre készítsen felvételt – ennek a későbbi feldolgozásoknál van jelentősége. A tápellátást és a szinkron jelet egy külön doboz osztja el a kamerák felé, valamint ez biztosítja a LiDAR energiaellátását is. A LiDAR rendelkezik egy belső egységgel, ehhez csatlakozik a GPS. A GPS jelet a LiDAR időszinkronizálásra használja, de a pozíció is kinyerhető belőle. A LiDAR-ból szintén egy Ethernet kábel megy közvetlenül a laptopba. Vagyis a laptopba fut be mind az öt kamera képe, a szinkronjel és a LiDAR is, és ez rögzíti az adatokat.

Az összegyűjtött adatok feldolgozásához az első legfontosabb feladat, hogy a szenzorokat összekalibrálják, vagyis egymáshoz igazítsák a különböző szenzorok koordináta rendszerét. Itt jön képbe a geometria: sakktáblát és gömböket használnak a kutatók ennek elvégzéséhez.

Abban az esetben, amikor van ismert paraméter, a sakktáblát használják a kalibrációhoz. Mivel a sakktábla mintája, illetve síkja beazonosítható a kameraképen, illetve a LiDAR pontfelhőn, így összeregisztrálhatók az egyező síkok, és meg lehet határozni a külső kalibrációs paramétereket. A LiDAR-kamera kalibráció lényege egy geometriai transzformáció meghatározása a két eszköz között. Ez egy hat paraméteres transzformáció, amely a három tengely körüli elforgatásból és egy eltolásból áll a LiDAR és a kamera között. A 3D nyomtatott állványnak köszönhetően csak egy forgatási paramétert szükséges meghatározni a hatból. Az állvány, a kamera és a LiDAR méreteiből pontosan ismert az eltolás mértéke a két eszköz között. A LiDAR és a kamera függőleges tengelyei egybe esnek, így csak egy függőleges tengely menti elforgatást kell meghatározni. A gyakorlatban ez úgy néz ki, hogy összevetik a kamera által készített képet és a LiDAR pontfelhőt. A kalibráció elvégzése után a kalibráció pontossága pontfelhő színezéssel állapítható meg. Ennek során a kalibrációból kapott paraméterekkel a pontfelhő pontjait visszavetítik a képre, és az így kapott színértékekkel beszínezik a pontfelhő pontjait.

Általános esetben, amikor nem előre gyártott, jól ismert méretű tartóeszközöket alkalmaznak, a szenzorok közti transzformáció egyáltalán nem ismert. De elállítódást okozhat az is, ha az autó mozgása közben a szenzorok elmozdulnak, vagy a szenzorok felrögzítése során nem sikerül pontosan beállítani a forgatási szöget. Ekkor a kalibráláshoz gömböket is lehet használni. A gömb vetülete a kameraképeken egy speciális ellipszis, ami alapján meghatározható a gömb eredeti térbeli pozíciója, ha ismert a gömb sugara. A LiDAR pontfelhőn szintén nagyon jól elkülönülnek az egyéb, főként síkszerű objektumoktól a gömbök, és meghatározható az adott gömb középpontja.

Ahhoz, hogy kameraképekből ki lehessen nyerni olyan információkat, mint például az autó sebessége, vagy az előtte haladó jármű távolsága és sebessége, metrikus információk szükségesek, vagyis tudni kell a képen látható távolságokról, hogy azok a valóságban mekkorák. Ehhez markereket (bólyákat) használnak, amelyeket meghatározott távolságra helyeznek el az autó előtt. A kameraképek feldolgozása során megadják ezeket a távolságadatokat az algoritmusoknak, így lehetségessé válik a szükséges metrikus információ előállítása. Ezt követően már megadható értékelhető módon – km/órában, méterben – az autó sebessége, az előtte haladó jármű távolsága, a gyalogosok távolsága és relatív sebessége.

A sebesség mérése azon alapul, hogy a sebesség egy nagysággal és iránnyal rendelkező vektor. A kameraképeken látható mozgás optikai áramlás segítségével kiszámolható. Egy algoritmus a kép alapján mozgó mintázatokká alakítja például az útburkolati jeleket (elválasztó vonalat, haladási irányt jelző nyilakat, zebrát, …), és a mozgásból egy robusztus statisztikával lehet kiszámolni a sebességvektort minden egyes esetben, tehát a jármű aktuális sebességét. Jelenleg csak a képekből származó vizuális információt használják fel a sebesség meghatározására, magából a járműből nem veszik ki semmilyen érzékelő adatait (pl. kerékfordulás), és GPS-t sem használnak hozzá, így a módszer messze nem tökéletes. Több esetben nagyot téved az algoritmus, de jó minőségű úttesten, az autó sima mozgása esetén jó közelítéssel megbecsülhető a jármű valós sebessége.

Ha a sebesség ismert minden pillanatban, akkor a sebességvektorból kiszámítható az autó mozgásának pályája is. Az így kapott eredmény elfogadható, de szintén nem tökéletes, a hibák összeadódnak; azonban elmondható, hogy csak képi, az autóra rögzített kamerából származó vizuális információból a jármű mozgási pályája szépen kiszámítható, és az autó teljes pályája, ha nem is egy GPS minőségében, de megfelelő pontossággal azért megkapható.

A kamerák segítségével tehát megadható az autó sebessége és pályája, viszont nem adnak információt az azt körülvevő tárgyak helyzetéről. Erre szolgál a LiDAR. A LiDAR által kibocsátott koherens lézerfény visszaverődik a környező tárgyakról, és egy 3 dimenziós pontfelhőt ad vissza. A műszer meg tudja mérni, hogy mennyi idő alatt érkezett vissza a fény, és ebből kiszámolható a pontos távolság. A LiDAR azonban nem képes megállapítani a színeket, ezért a jelzőlámpákat például a kamerarendszernek kell figyelnie. Ezen felül a LiDAR érzékelését befolyásolják a tárgyak, például, ha egy kamion vagy busz mellett halad el az autó, akkor az teljesen kitakar mindent, ami mögötte található.

A jövőbeli tervek között szerepel további szenzorok – pl.: inerciális mérőegység (IMU), ulrahangos távolságmérők, Solid-State LiDAR, radar – beszerzése és felszerelése az autóra, valamint folyamatosan tesztelik és továbbfejlesztik az eddig létrehozott kép- és adatfeldolgozó algoritmusokat.

A kutatás következő fázisában egy gokartot fognak először távirányíthatóvá tenni, hogy előkészítsék az önvezető képességek fejlesztését. Ennek legnagyobb kihívást jelentő, jelentős mérnöki tervezést igénylő része a kormányzás átalakítása, a motorvezérlés és a fékrendszer távirányítása könnyebben kivitelezhető. A távvezérelhetőség megkönnyíti majd az adatgyűjtést, a szenzorcsomag ugyanis már jelenleg is áthelyezhető a gokartra.

Az átalakítás 0. lépéseként egy megfelelő tartószerkezet került kialakításra, amivel a mérőautón elhelyezett szenzor csomag könnyen áthelyezhető a gokartra. Tesztelés céljából erre a tartószerkezetre rögzítettünk egy GoPro kamerát. Az autóról leszerelt szenzor csomagot béltéri mérésekhez tudjuk használni, ha azok a gokarton vannak, alább ez látható: