A látásvezérelt rakodórobotoktól a nagy pontosságú mérésekig a legújabb processzorgeneráció már óriási adathalmazok kezelésével és kifinomult algoritmusok futtatásával képes mélységinformációt (távolságot) kinyerni és gyorsan döntést hozni. A LabVIEW Vision Development Module a szoftver- és hardvereszközök zökkenőmentes együttműködésével grafikus fejlesztőkörnyezetet kínál a mérnököknek háromdimenziós képalkotási feladatokhoz.
Bevezetés a 3D-s képalkotásba
Kétdimenziós (hagyományos) kamerák vagy más optikai érzékelőtechnológia használatakor a mélységinformációt többféle módszerrel is kiszámíthatjuk. Az alábbiakban rövid áttekintést adunk a leggyakrabban használt 3D-s képalkotási eljárásokról.
Sztereoszkopikus képalkotás Az eljáráshoz két kamera szükséges, amelyek a vizsgált tárgyat eltérő nézőpontból látják. Kalibrációval összerendeljük a kameraképek pixeladatait, ezzel kinyerve a mélységinformációkat (távolságot). Az eljárás hasonlít az agy működéséhez, amely a látott kép alapján képes távolság meghatározására.
Lézeres háromszögelés A vizsgált tárgyra lézersugarat vetítünk, majd kamerával a képet felvéve és a tárgy egy szelete mentén a lézerpont elmozdulását folyamatosan mérve nyerjük ki a magasságprofilt. A tárgy teljes, háromdimenziós képének előállításához a lézer és a kamera több szeletet rögzít.
Fényvetület Ismert fénymintát vetítünk a vizsgált tárgyra, a mélységinformációt a vetület torzulásából számítjuk ki.
Időmérés-alapú érzékelésFényforrást egy képérzékelővel szinkronban működtetünk, és mérjük a forrásból kibocsátott fényimpulzus érzékelőbe jutásához szükséges időt, ebből kiszámítva a távolságot.
Lidar A lidar lézerrel térképezi fel a kérdéses területet, a fényvisszaverődés méréséből háromdimenziós profilt alkotva leképezi a felület jellemzőit és érzékeli a tárgyakat.
Optikai koherencia tomográfia (OCT) Nagy felbontású képalkotási technika, amely a tárgy keresztmetszetén a közeli, infravörös fény visszaverődését mérve számítja ki a mélységinformációt. Leggyakrabban az orvosi képalkotásban használják, mivel képes több élő szövetrétegen is áthatolni.
Új sztereoszkopikus képalkotási funkciók
A LabVIEW 2012-es változatától kezdve a Vision Development modul már tartalmaz sztereó képalkotási algoritmusokat, több kamerától érkező képből mélységinformáció kiszámítására. Az új algoritmusok két kamera képéből (kalibrálási adatok felhasználásával) alkotnak mélységi képet, így több adat áll rendelkezésre tárgyak és hibák (sérülések) felismeréséhez vagy például robotkar mozgásának és reagálásának vezérléséhez.
A binokuláris sztereó képalkotó rendszer használatához két kamera szükséges. Ideális esetben ezek egymáshoz közel, szinte teljesen párhuzamosan irányítva helyezkednek el. Az 1. ábra egy doboz csokoládégolyó példáján keresztül szemlélteti a térbeli képalkotás előnyeit automatizált ellenőrző vizsgálatoknál. A két kamera térbeli viszonyát (távolság, szögeltérés) megadó kalibrálás után a két kameraképből meghatározható a csokoládék esetleges hibája. A Vision Development modul új, 3D Stereo Vision algoritmusaival a két képből meghatározhatók a mélységadatok és megjeleníthető egy mélységi kép.
Ugyan a kétdimenziós képen kevésbé szembetűnő, a háromdimenziós mélységi felvételen azonban már tisztán látható, hogy két csokoládé „nem elég gömbölyű” a szigorú minőségi követelmények teljesítéséhez. A 2. ábrán a hibásnak minősített darabok fehér keretben láthatók.
Sztereó képalkotás esetén fontos, hogy a diszparitás kiszámítása során az algoritmus a bal képen megtalált alakzat vonalainak tulajdonságait összevesse a jobb oldali felvétel ugyanazon vonalainak jellemzőivel. Az alakzatok azonosításához és megkülönböztetéséhez fontos a megfelelő részletgazdagság, a hatékonyság fokozásához szükség lehet textúra hozzáadására úgy, hogy a felületet rendezett mintázatú fényforrással világítjuk meg.
Összefoglalva, a sztereó képalkotás felhasználható a vizsgált tárgy felületén elhelyezkedő pontok térbeli koordinátáinak (x, y, z) meghatározására. Ezeket a felületi pontokat gyakran pontfelhőknek vagy pontok felhőjének nevezzük. A pontfelhők rendkívül jól használhatók tárgyak térbeli alakjának megjelenítéséhez, és egyéb 3D-s elemzőszoftverekben is felhasználhatók. Például a LabVIEW Tools Networkben már megtalálható AQSense 3D Shape Analysis Library (SAL3D) program is pontfelhőt használ a képek további feldolgozásához és megjelenítéséhez.
Hogyan működik a sztereó képalkotás?
A sztereó képalkotás működése a 3. ábra egyszerűsített térbeli képalkotó elrendezésén követhető nyomon, ahol a két kamera tökéletesen párhuzamos helyzetben rögzített, és a lencsék látószöge (fókusztávolsága) is megegyezik.
A paraméterek magyarázata: b bázistávolság (a két kamera távolsága), f a kamera fókusztávolsága, XA a kamera x tengelye, ZA a kamera optikai tengelye, P az x, y és z koordinátákkal adott valós térbeli pont, uL a P valós térbeli pont leképzése a bal oldali kamera által rögzített képre, uR a P valós térbeli pont leképzése a jobb oldali kamera által rögzített képre.
Mivel a két kamera egymástól b távolságban van, a P valós térbeli pont az egyes kamerák kétdimenziós felvételén eltérő koordinátákra kerül. Az uL és uR pont x koordinátája az alábbiak szerint határozható meg:
uL = f•x/z és uR = f•(x-b)/z
E két leképzett pont távolságát nevezzük diszparitásnak, ebből kiszámítható az úgynevezett mélységinformáció, ami a valós térbeli P pont és a sztereó képalkotó rendszer távolsága.
diszparitás = uL–uR=f•b/z és mélység=f •b/diszparitás
A gyakorlatban a sztereó képalkotó rendszerek felépítése összetettebb, az elrendezés általában a 4. ábrán láthatónak felel meg, ugyanakkor a megismert alapelvek ebben az esetben is érvényesek.
Valós térbeli képalkotó rendszerekben ugyanakkor nem alkalmazhatók az egyszerűsített sztereó képalkotó rendszerre bevezetett, „idealizált” feltevések. Valamilyen mértékben még a legjobb kamerák és lencsék is torzítják a képet, aminek kompenzálásához az általános sztereó képalkotó rendszert kalibrálni kell. E művelet során különböző szögekből felvételeket készítünk egy kalibrációs rácsról, ebből számítjuk ki a torzítást és a két kamera pontos térbeli viszonyát. Az 5. ábrán látható a Vision Development modulhoz mellékelt kalibrációs rács.
A Vision Development Module függvényeket és LabVIEW-példákat is tartalmaz, amelyek végigvezetnek a sztereó képalkotás kalibrálási folyamatán, létrehozva a megfelelő kalibrációs mátrixokat. Ezekkel további számításokat végezhetünk a diszparitásra és a mélységinformációra vonatkozóan. A kalibrálást követően, az 1. ábrán látottakhoz hasonlóan megjeleníthetjük a megfelelő háromdimenziós képeket, valamint különféle vizsgálatokat végezhetünk hiba-, illetve sérüléskeresés, tárgykövetés és mozgásvezérlés céljából.
A sztereó képalkotás alkalmazásai
A sztereó képalkotó rendszerek használata olyan esetekben előnyös, amikor a kamerák beállításai és elrendezése rögzített, és ebben nem várhatók jelentős változások vagy zavaró hatások. Gyakori alkalmazási területek a navigáció, az ipari robotika, az automatikus minőség-ellenőrzés és a megfigyelés.
NavigációAz autonóm járművek a mélységadatok segítségével meghatározzák az akadályok méretét és távolságát a pontos útvonaltervezéshez és akadályelkerüléshez. A sztereó képalkotó rendszerek a navigációs alkalmazások számára széles körű térbeli információkat nyújtanak, működésük változó fényviszonyok mellett is megbízható.
Ipari robotika A sztereó képalkotó rendszer jól használható robottal automatizált ipari feladatokban, például rakodórendszerekben és ládák, raklapok kezelésében. Az előbbi esetben a robotkarnak többféle tárgyat is tartalmazó tárolóból kell bizonyos tárgyakat kiemelnie. A sztereó képalkotó rendszerrel költséghatékonyan nyerhetők ki a térbeli információk és azonosíthatók a kiemelhető objektumok. A képalkotó rendszer továbbá pontos pozícióadatokat szolgáltathat ládában elhelyezett, különálló tárgyakról, így felhasználható például olyan alkalmazásokban, ahol robotkar segítségével kell tárgyakat egy raklapról áthelyezni vagy feldolgozni.
Automatikus minőség-ellenőrzés A térbeli információ a magas minőséget garantáló automatikus ellenőrzési alkalmazások esetén is hasznos lehet. Sztereó képalkotással azokat a hibákat is felderíthetjük, amelyek kétdimenziós képen rendkívül nehezen észlelhetők. Gyógyszerkapszulák meglétének ellenőrzése a csomagolásban, üveg alakjának vizsgálata és csatlakozótüske elgörbülésének észlelése – mind-mind olyan automatikus vizsgálati feladat, ahol a mélységinformáció jelentős hatással van a jó minőség szavatolására.
Megfigyelés A sztereó képalkotó rendszer jól használható nyomon követési alkalmazásokban is, mivel a fényviszonyok változására és az árnyékokra kevésbé érzékeny: a követett tárgyról pontos térbeli információkat nyújt, így könnyen azonosíthatjuk a rendellenes eseményt, például behatolót vagy magára hagyott csomagot. A sztereó képalkotó rendszerrel az arcfelismerő és más biometrikus személyazonosító rendszerek pontossága is javítható.
| Nyitott az összetett feladatokra |
| A LabVIEW Vision Development modul sztereó képalkotási funkciói új háromdimenziós lehetőségeket adnak a mérnökök kezébe több ipari szegmensben és alkalmazási területen. A LabVIEW nyitottságának köszönhetően összetett feladatokhoz külső gyártó térbeli képalkotó hardverét és szoftverét is használhatjuk, beleértve a Sick 3D Ranger kamerát a lézeres háromszögeléshez, illetve az AQSense 3D Shape Analysis Libraryt a háromdimenziós képfeldolgozáshoz. A LabVIEW Vision Development modul segítségével egyetlen grafikus fejlesztőkörnyezetben dolgozhatunk háromdimenziós képalkotási feladatokon. |
