Az üzleti hatékonyság növelése mindig fontos terület, ahol a beltéri kamerarendszerre (CCTV) épülő képfeldolgozás kiválóan alkalmazható. Az ilyen rendszerek képesek monitorozni a raktárak és logisztikai központok tevékenységét, optimalizálni az áruk szállítását, és minimalizálni az időveszteséget. Az üzletekben és bevásárlóközpontokban a vásárlói viselkedés elemzése révén pedig segítenek jobban megérteni az ügyfelek preferenciáit, hogy optimalizálni lehessen a kínálatot és a marketingstratégiákat.
Egy ezekhez hasonló jellegű felhasználási mód technikai oldalát mutatjuk be, ami az egyik projektünk mentén alakult ki: több mesterséges mélytanuló modellt együttesen működtetve egy egyszerű fényképből lehetséges kinyerni a szoba teljes, 3D térképét. Amikor valaki például besétál egy üzlethelyiségbe, azonnal több kamera felvételén is szerepelhet, majd ezután a kamerák követik. Nem is gondolná az ember, mennyi információt lehetséges kinyerni akár csak egy egyszerű kép felvételből! Az alábbi posztban bemutatunk több eljárást, és egy példába ágyazva demonstráljuk ezeknek a működését. Egy teljesen hétköznapi képpel, ami akár bármelyikünkről is készülhetett volna (forrás):
3D kamera felvételek
Mindannyian jól tudjuk, hogy azért vagyunk képesek három dimenzióban észlelni a körülöttünk levő valóságot, mert két szemünk van. A két szem két különböző „képet” lát, majd ezt az agyunk alakítja át egy három dimenziós észleléssé. Nagyon hasonló módon vannak 3D kamera felszerelések, amelyek két különböző kamerakép alapján össze tudnak rakni egy háromdimenziós képet két, kétdimenziós képből. Ezt a kamera felszerelést nevezi a szaknyelv sztenderd sztereó kamerának. Alább láthatunk erre egy példát (forrás):
Ilyen kamerával dolgozva viszonylag könnyű dolgunk, lenne, de hamar belátható okokból az ilyen kamerák viszonylag ritkának számítanak. Talán olyanoknak van, akik műszerként használják vagy nagyon specifikus filmes feladatot kell ellátniuk. Nem kell tartanunk attól, hogy a sarki kisboltban egy ilyen lencsevégre kap bennünket. Éppen ezért más megoldás után kell néznünk.
Elérhetjük a kettős kamera hatást máshogy is?
A mesterséges mélytanuló algoritmusok tetszőleges feladatra betaníthatók, így például azt is meg tudják tanulni, mit lát két kamera. A MiDaS egy relatív inverz mélység érzékelő neurális hálózat modell, amely képes megbecsülni a háromdimenziós mélységet valamilyen képen. Lehetőség van többféle MiDaS modell közül válogatni, a gyors és alacsony igényűtől egészen a mély, robusztus hálózatig. A gyorsabb hálózat a ResNet 50 réteges modelljét használja gerincként, de van lehetőség egészen 101 réteges mélységig növeszteni a neutrális hálózatot. A további jó hír, hogy ezeket a neurális hálózatokat már nincs is szükség kezdeti állapotból tanítani: a kutatócsapat által betanított súlyokat letölthetjük egy pár 100 Mb méretű fájlban.
A MiDaS hálózat outputja így néz ki az előbb említett mintaképen (saját kép):
Látható, hogy az output képen (saját szerkesztés) minél közelebb van az objektum a kamerához, annál sárgább, míg a távolabbi objektumok lilábbak. Továbbá finoman kivehető a személy motívuma, sőt, elhatárolható módon a bevásárlókosár körvonala is.
Hogy tudjuk ezt felhasználni?
Ha minden képponthoz ismert a mélységi információ, lehetséges rekonstruálni a háromdimenziós teret, amely az adatokat generálta. Ehhez a sztenderd sztereó háromszögelő algoritmust kell használni, amiről elég annyit tudni, hogy ha ismert a mélységi információ és a két kamera közötti távolság (bázisvonal) a térbeli pont és a kamerán megjelenő két pont között egy háromszög állítható fel, amelyből egyértelműen meghatározható a térbeli pozíciója a képpontnak. Erről látható két pontfelhő, az eredeti nézőpontból és elforgatva (saját szerkesztés):
Ez a művelet egyszerű műveleteket hajt végre, viszont a generált állomány elérheti akár a 30Mb méretet is. A számítások elvégzéséhez ismerni kell a bázisvonalat, ami a két kamera fókuszpontja közötti távolságot jelenti és a kamerák fókusztávját, ami pedig a kameraszenzorok és a megfelelő fókuszpontok közötti távolság. Ezenkívül szükség van még további utófeldolgozási műveletekre is, hiszen könnyen torzított modellt eredményezhet az eljárás, amit utólag simítani kell.
A 3D adatok kombinálhatók más információkkal is
Fontos kérdés, hogy hogyan lehet szemantikai címkéket hozzárendelni az egyes képeken elhelyezkedő tárgyakhoz és objektumokhoz. . A lokalizáció megadja, hogy egy adott osztályhoz tartozó objektum hol helyezkedik el a képen egyetlen kereteződoboz segítségével. A detekció ugyanennek a többosztályos kiterjesztése, amikor tetszőlege számosságú objektum kereteződobozának pozícióját képes megadni a modell. Szemantikus szegmentáció esetén a dobozok helyett a keresett osztályok, egyed szegmentáció esetén pedig az egyes objektumok kontúrját kell megadnia a modellnek. Jelen pillanatban az egyik legfejlettebb a panoptikus szegmentáció, amelynek az outputja a teljes kép méretével megegyezik, és célja minden képponthoz hozzárendelni valamilyen osztályt egy előre meghatározott címkehalmazból.Ezen a képen a Meta cég által fejlesztett mesterséges mélytanulási modell outputját láthatjuk (saját szerkesztés):
Feltűnhet, hogy se nem minden területet sikerült felismernie a modellnek, se nem minden képpontot sikerült helyesen felismernie. A szegmentációs maszkra ránézve ez világossá is válik:
Az információ kombinálása
A 3D rekonstrukció és panoptikum szegmentáció eljárását lehetséges kombinálni olyan módon, hogy egyszerre jelen legyen a szemantikus szegmentáció és a 3D rekonstrukció. Ebben az esetben tetszőleges objektumnak lekérdezhető a térbeli pozíciója és a többi objektumhoz viszonyított helyzete. Például itt a felvételen látható személy és a padló rekonstrukciója:
Ezen a pontfelhőn (saját szerkesztés) már egy kis utómunka is látható, illetve a pontok elrendezése finomítva lett. Ezzel az adattal lehetséges egy személy lekövetése a teljes térképen, a többi emberhez viszonyított helyzete stb. Azonban mivel több kézi korrekciót igényel ez az eljárás mint például bilaterális szűrés a részletgazdagabbá tételre, további finomítást igényel vagy pedig más eljárást kell alkalmazásunkban felhasználnunk.
Összefoglalás
Az esettanulmányban bemutatottak rávilágítottak, mennyi információt lehetséges kinyerni egy egyszerű képből a mesterséges intelligencia segítségével. Különböző eljárások, mint a 3D rekonstrukció inverz mélység, illetve a panoptikus szegmentáció kombinálásával olyan képet kaphatunk a valóságról, amelyek korábban még nem számítottak lehetségesnek. Ahogy látható, lehetséges dimenzók kombinálása és együttes feldolgozása. A tapasztaltak alapján elmondható, hogy amikor ezek a technológiák készen lesznek ipari felhasználásra, nagy jövő elé néznek.