Študentski projekti
Genesis II: Avtonomna platforma z uporabo pogovorne inteligence
Uporaba globokega učenja v avtonomni vožnji za zaznavanje (AI), lokalizacijo, načrtovanje in vožnjo (AI). Uporaba sistema NVIDIA AI za avtonomno vožnjo, kot so: učenje na DGX-1, vožnja z AI na robu, ključni elementi NVIDIA za avtonomno vožnjo, orodja za razvijalce NVIDIA. Ključni izzivi: (i) strojne omejitve – procesiranje, poraba energije, ničelne latence, (ii) natančna ocena modela okolja za izogibanje trčenju, (iii) odvisnost od netočnih zemljevidov in navigacijskih podatkov, (iv) porazdeljene arhitekture HW, zahteve glede prilagodljivosti platforme, (v) visoke absolutne in relativne zahteve po pozicioniranju, (vi) sinhronizacija komponent in izogibanje zakasnitvi, (vii) omejitve glede uporabe vgrajenega pomnilnika, različni pomnilniški modeli, (viii) algoritmi morajo biti konfigurabilni in učinkoviti, (ix) raznoliki vhodi na različnih platformah, (x) simulacija zunaj vozila.
Genesis II: Detekcija voznih pasov z uporabo Jetson TX2 (študent Karlo Crnek)
Genesis I: Predstavljena je govorno krmiljena platforma za inteligentna okolja in/ali podporne aplikacije za IoT okolje.
Platforma ima porazdeljeno arhitekturo, ki omogoča razširjeno povezljivost in podporo za več storitev inteligentnega okolja. Mobilna enota Genesis je sestavni del distribuirane platforme, imenovane DATA sistem, ki omogoča interakcijo med več uporabniki in okoljem. Poleg tega njegova arhitektura odjemalec/strežnik vključuje robustno prepoznavanje govora in mehanizme sinteze besedila v govor za bolj naravno interakcijo med človekom in strojem med uporabniki in mobilno platformo Genesis. Interakcija je usmerjena v večjezičnost. Čeprav je celoten sistem razvit za slovenski jezik, ga je mogoče prilagoditi tudi za druge jezike, če so na voljo ustrezni jezikovni viri. Genesis z visoko natančnostjo neodvisnosti prepoznavanja govora in nizko latenco med ukazom in odzivom dokazuje, da ima dobro manevrsko sposobnost in je enostaven za upravljanje tudi s strani neizkušenega operaterja.
Modularni strežniki so organizirani na podoben način kot glavni strežnik. Vsebujejo nabor niti (objekt PooledThread). V tem primeru se niti uporabljajo za poganjanje več instanc ASR ali TTS, ki delujejo paralelno. Po vsaki zahtevi glavnega strežnika se razpoložljiva nit preprosto zasede in se uporablja za izvajanje namenske naloge (npr. prepoznavanje govora /sinteza govora, izvajanje krmilnega ukaza itd.). Modularni strežniki TTS ali ASR se odzivajo z ustreznim izhodom (rezultat ASR/sintetizirano sporočilo). Kadar ni več na voljo nobene niti, modularni strežniki shranijo prejete podatke, odzivnost celotnega sistema pa se lahko upočasni. Protokol, ki se uporablja med glavnim strežnikom in vsemi modularnimi strežniki, je tudi lasten protokol, ki temelji na XML, kar pomeni, da se navadni tekstovni paketi XML uporabljajo na način zahteva/potrditev, in vsebujejo na primer značilke za ASR, besedilo za TTS, ali podatke mobilne robotske enote. Razred BaseServer se uporablja za komunikacijo z glavnim strežnikom. Za izvajanje mehanizma za prenos podatkov se uporablja razširjeni razred ServerService. Vmesnik FrameTransporter definira načine za pošiljanje/prejemanje paketov do/od glavnega strežnika. Razred XML-Frame se uporablja za gradnjo/transport paketov XML do/od modularnega strežnika. Ta razred je izpeljava splošnejšega razreda Frame. Razred ServerService skrbi za vzpostavitev povezave z glavnim strežnikom in nadzira ustvarjanje baze z nitmi. Modularni strežnik TTS oddaja audio preko RTP protokola. Po drugi strani modularni strežnik ASR preprosto prejema značilke z glavnega strežnika in vrača rezultate ASR. Vsi modularni strežniki zato potrebujejo RTP modul, ki vsebuje ustrezne objekte in metode, potrebne za sprejemanje RTP paketov. Ker sta ASR in TTS napisana v programskem jeziku C/C ++, je na modularnih strežnikih uporabljen JNI (Java native vmesnik).
Projektna skupina
Znanstvene in inženirske ekspertize