MODUL 2 · TEORIJSKE OSNOVE I PRIPREME ZA KORIŠTENJE VIRTUALNE STVARNOSTI
Nastavna jedinica 2.6
Ulazne tehnologije: praćenje, kontroleri, ruke i pogled
Da bi slika pratila glavu, a virtualna ruka stvarnu, sustav mora stotinama puta u sekundi znati gdje su naočale i kontroleri. Jedinica opisuje inercijske senzore, praćenje izvana prema unutra i iznutra prema van, kontrolere te praćenje ruku i pogleda, s prednostima i manama svakog rješenja.
- razlikovati 3DoF i 6DoF praćenje i opisati šest stupnjeva slobode
- objasniti ulogu inercijske mjerne jedinice i fuzije senzora
- usporediti praćenje izvana prema unutra i iznutra prema van
- nabrojiti ulaze kontrolera i njihovu namjenu u interakciji
- procijeniti prednosti i mane praćenja ruku i pogleda za zadanu primjenu
- izračunati pogrešku položaja i orijentacije koju uzrokuje kašnjenje praćenja
Što se prati: poza, 3DoF i 6DoF
Ulazne tehnologije daju sustavu podatke o korisniku: gdje mu je glava, kamo gleda, gdje su mu ruke i što njima radi. Osnovna veličina je poza (engl. pose) — položaj i orijentacija tijela u prostoru. Kruto tijelo u prostoru ima šest stupnjeva slobode (engl. degrees of freedom, DoF): tri pomaka i tri zakreta. U VR-u se zakreti glave obično zovu skretanje (lijevo-desno), posrtanje (gore-dolje) i valjanje (naginjanje glave prema ramenu).
Sustav s 3DoF mjeri samo orijentaciju. Dovoljan je za gledanje panoramskog videa ili sjedeći pregled modela, ali korisnik se ne može sagnuti prema stolu ni zaviriti ispod robota: kad pomakne glavu, slika ostane na mjestu, što mozak brzo prepozna kao nesklad. Sustav sa 6DoF mjeri i položaj. Za laboratorij VR-1 6DoF je nužan i za glavu i za obje ruke, jer korisnik hoda oko stola, saginje se i rukama slaže dijelove na udaljenosti od nekoliko centimetara jedan od drugoga.
Inercijska mjerna jedinica i fuzija senzora
U svakim naočalama i svakom kontroleru nalazi se inercijska mjerna jedinica (engl. inertial measurement unit, IMU). Čine je troosni akcelerometar, koji mjeri linearno ubrzanje zajedno s ubrzanjem sile teže, i troosni žiroskop, koji mjeri kutnu brzinu. Neke jedinice imaju i magnetometar za orijentaciju prema magnetskom polju Zemlje. IMU se očitava vrlo često, stotinama do nekoliko tisuća puta u sekundi, i ima zanemarivo kašnjenje, pa je izvrstan za brze promjene.
Slabost IMU-a je zanošenje (engl. drift). Orijentacija se dobiva integriranjem kutne brzine, a položaj dvostrukim integriranjem ubrzanja, pa se svaka mala pogreška mjerenja zbraja. Žiroskop s pogreškom od samo 0,01 °/s nakon minute zanese orijentaciju za 0,6°; položaj iz akcelerometra postane neupotrebljiv već za nekoliko sekundi. Zato IMU sam daje samo 3DoF i to uz povremenu korekciju smjera.
Rješenje je fuzija senzora (engl. sensor fusion): IMU daje brze, glatke promjene, a optički sustav (bazne stanice ili kamere) rjeđe, ali apsolutne podatke koji poništavaju zanošenje. Algoritam, najčešće neka inačica Kalmanova filtra, spaja oba izvora i ujedno predviđa pozu za trenutak u kojem će slika biti prikazana. Kad optički sustav na trenutak izgubi kontroler, fuzija se neko vrijeme oslanja samo na IMU, pa ruka u sceni još pola sekunde izgleda ispravno, a onda počne klizati ili se zamrzne.
Zapamtite
IMU je brz, ali zanosi; optika je točna, ali sporija i ovisi o vidljivosti. Stabilno 6DoF praćenje uvijek je kombinacija obaju, a kvaliteta praćenja ovisi i o prostoriji, ne samo o uređaju.
Praćenje izvana prema unutra
Kod praćenja izvana prema unutra (engl. outside-in tracking) referentni uređaji stoje u prostoriji, a praćeni predmeti nose senzore ili oznake. Uređaj A iz zajedničkog primjera koristi dvije bazne stanice. Svaka stanica prostorom prelazi infracrvenim laserskim svjetlosnim ravninama; ovisno o inačici sustava, uz to emitira i infracrveni bljesak za sinkronizaciju. Fotodiode na naočalama i kontrolerima bilježe trenutke u kojima ih svjetlo pogodi; iz vremenskih razmaka i poznatog rasporeda fotodioda na kućištu računa se poza. Postoje i sustavi s vanjskim kamerama koje prate svijetleće ili reflektirajuće oznake, npr. sustavi za snimanje pokreta.
Prednosti vanjskog praćenja su visoka točnost, stabilnost i praćenje kontrolera i iza leđa korisnika, jer ga u pravilu vidi barem jedna stanica. Nedostaci su postavljanje (stanice treba učvrstiti na zid ili stalak, iznad glave i nagnute prema dolje), vezanost uz jednu prostoriju i osjetljivost na zaklanjanje kad između stanice i kontrolera stane druga osoba. Svjetlo iz prozora i sjajne plohe mogu smetati, a stanice ne smiju vibrirati jer svaki pomak stanice pomakne i cijelu scenu.
Za VR-1 preporučeni prostor za igru od 3,0 × 2,5 m uz granicu od 0,3 m od zida traži prostoriju od najmanje 3,6 × 3,1 m. Kad su stanice u suprotnim kutovima, razmak među njima je dijagonala prostorije, oko 4,75 m. Taj razmak treba usporediti s dometom koji proizvođač navodi za svoje stanice.
Praćenje iznutra prema van
Kod praćenja iznutra prema van (engl. inside-out tracking) kamere su na samim naočalama. Uređaj B ima četiri kamere koje snimaju prostoriju. Algoritam za istodobnu lokalizaciju i kartiranje (engl. simultaneous localization and mapping, SLAM) na slikama pronalazi prepoznatljive značajke — rubove, kutove, uzorke — gradi njihovu prostornu kartu i iz njihova pomaka računa pozu naočala. Kontrolere prate iste kamere, najčešće preko infracrvenih svjetlećih dioda u prstenu ili kućištu kontrolera.
Prednosti su očite: nema baznih stanica, nema postavljanja, naočale se prenose iz prostorije u prostoriju i mogu raditi samostalno. Iste kamere služe i za prolaz slike i za praćenje ruku. Nedostaci proizlaze iz toga što kamere gledaju prema naprijed i prema dolje:
- kontroler iza leđa, iznad glave ili vrlo blizu lica izlazi iz vidnog polja kamera, pa se neko vrijeme prati samo IMU-om;
- jednolično obojeni zidovi, prazan pod i tama daju premalo značajki za SLAM;
- zrcala, stakla i prozori s jakim suncem zbunjuju algoritam i mogu pomaknuti kartu;
- ako se namještaj pomakne, pohranjena karta i granica sigurnosti više ne odgovaraju prostoriji.
U ispitivanju VR-1 jedan od dva pala testna slučaja bio je hvatanje prekidača ispod ruba stola. Uzrok nije utvrđen u zapisniku; mogući uzrok, koji vrijedi provjeriti, jest da je ruka ispod ruba stola bila na granici vidnog polja kamera naočala. Neovisno o uzroku, dobra praksa je postaviti hvatište tako da korisnik pri hvatanju gleda u ruku.
Kontroleri
Kontroler je ručni ulazni uređaj s praćenom pozom i nekoliko ulaza. Tipičan kontroler za VR ima okidač (engl. trigger) pod kažiprstom, analogan od 0 do 1; tipku hvata (engl. grip) pod srednjim prstom; palčanu palicu (engl. thumbstick) ili dodirnu plohu; dvije tipke za palac i tipku izbornika. Mnogi kontroleri imaju kapacitivne senzore koji otkrivaju dodir prsta bez pritiska, pa virtualna ruka može pokazati ispružen kažiprst ili podignut palac. U kontroleru je i vibracijski motor za haptičku povratnu vezu.
| Ulaz | Vrsta vrijednosti | Namjena u VR-1 |
|---|---|---|
| tipka hvata | logička ili 0–1 | uhvati i drži dio robota, pusti za odlaganje |
| okidač | 0–1 | odabir točke interesa, pritisak na gumb u sceni |
| palčana palica | dvije osi, −1 do 1 | naprijed: luk teleporta; lijevo/desno: okret od 30° |
| kapacitivni senzori | dodir da/ne | položaj prstiju virtualne ruke |
| poza kontrolera | 6DoF | položaj ruke, ishodište zrake za hvatanje do 3 m |
Kontroleri su i danas najpouzdaniji ulaz: tipka daje nedvosmislen signal, haptika potvrđuje radnju, a praćenje je stabilnije nego praćenje golih ruku. Mana je što ruka drži predmet koji nema oblik alata ni dijela robota, pa hvatanje djeluje manje prirodno.
Praćenje ruku, pogleda i tijela
Praćenje ruku (engl. hand tracking) koristi kamere naočala i model šake naučen na velikom broju snimki. Rezultat je poza svakog zgloba: proširenje standarda OpenXR za praćenje ruku opisuje šaku s 26 zglobova. Iz njih se prepoznaju geste, najčešće štipanje palcem i kažiprstom za odabir i stisak šake za hvatanje. Ruke su prirodne i nema opreme koju treba puniti ili dezinficirati, ali nema tipke ni haptike, pa korisnik ne osjeti trenutak hvata. Prsti se zaklanjaju međusobno i s predmetom, a dulji rad s rukama u zraku umara ramena.
Praćenje pogleda (engl. eye tracking) koristi infracrvene kamere unutar naočala usmjerene u oči. Služi za odabir pogledom (pogled plus zadržavanje ili štipanje), za mjerenje razmaka zjenica, za analizu pozornosti polaznika i za foveirano iscrtavanje, kod kojeg se puna razlučivost troši samo ondje gdje oko gleda. Podaci o pogledu osobni su podaci, pa se za njihovo prikupljanje traži privola, a pohranjuju se samo ako su nužni.
Neki sustavi prate i lice, tijelo ili noge, dodatnim senzorima ili procjenom iz poza glave i ruku. Za VR-1 to nije potrebno.
| Senzor ili metoda | Prednosti | Mane |
|---|---|---|
| IMU | vrlo brz, malo kašnjenje, jeftin | zanošenje; sam daje samo orijentaciju |
| bazne stanice (izvana) | točno, veliki prostor, praćenje iza leđa | postavljanje, jedna prostorija, zaklanjanje |
| kamere na naočalama (iznutra) | bez postavljanja, prenosivo, prolaz slike | slijepe zone, ovisi o svjetlu i teksturi prostorije |
| praćenje ruku | prirodno, bez opreme u ruci | bez haptike i tipke, zaklanjanje prstiju, umor |
| praćenje pogleda | brz odabir, foveirano iscrtavanje, analiza | kalibracija, privatnost, nehotični odabir |
Pažnja
Odabir samim pogledom bez potvrde izaziva nehotične odabire: oko stalno skače po sceni. Za točke interesa u VR-1 pogled služi samo za isticanje, a odabir se potvrđuje okidačem, štipanjem ili zadržavanjem pogleda od oko jedne sekunde.
Pogreška praćenja zbog kašnjenja
Dok podatak o pozi prođe kroz senzor, fuziju, aplikaciju i zaslon, glava i ruka se pomaknu. Bez predviđanja kutna pogreška jednaka je umnošku kutne brzine glave i kašnjenja, a pogreška položaja ruke umnošku brzine ruke i kašnjenja. Predviđanje uklanja veći dio te pogreške; ostatak se izražava udjelom koji predviđanje ne pokrije. Kutna pogreška pomnožena s brojem piksela po stupnju daje pomak slike na zaslonu.
Δφ = ω · t Δφost = Δφ · (1 − η) Δx = v · t · (1 − η)
Računa za koliko slika zaostaje za glavom i virtualna ruka za stvarnom pri zadanom kašnjenju i učinku predviđanja.
Za brz okret glave od 200 °/s i kašnjenje od 20 ms, koliko je cilj za VR-1, slika bi bez predviđanja zaostajala 4,0°. Uz predviđanje koje pokrije 90 % pogreške ostaje 0,40°, što je na uređaju A s oko 21 piksela po stupnju pomak od približno 8 piksela na vrhuncu okreta. Ruka koja se giba brzinom od 2 m/s bez predviđanja bi zaostajala 40 mm, a s predviđanjem oko 4 mm, što je dovoljno za hvatanje dijela robota. Ako kašnjenje naraste na 40 ms, npr. pri bežičnom prijenosu slike, sve se pogreške udvostruče. Učinak predviđanja od 90 % ovdje je pretpostavka za primjer, a ne izmjereni podatak određenog uređaja.
Ključni pojmovi
| Pojam | Značenje |
|---|---|
| poza (engl. pose) | položaj i orijentacija tijela u prostoru |
| stupnjevi slobode (engl. degrees of freedom, 3DoF/6DoF) | broj neovisnih pomaka i zakreta koje sustav prati |
| inercijska mjerna jedinica (engl. inertial measurement unit, IMU) | akcelerometar i žiroskop, po potrebi i magnetometar, u jednom sklopu |
| zanošenje (engl. drift) | postupno gomilanje pogreške pri integriranju mjerenja |
| fuzija senzora (engl. sensor fusion) | spajanje brzih relativnih i sporijih apsolutnih mjerenja u jednu procjenu poze |
| praćenje izvana prema unutra (engl. outside-in tracking) | praćenje referentnim uređajima postavljenima u prostoriji |
| praćenje iznutra prema van (engl. inside-out tracking) | praćenje kamerama na naočalama prema značajkama prostorije |
| praćenje ruku (engl. hand tracking) | procjena poza zglobova šake iz slika kamera |
| praćenje pogleda (engl. eye tracking) | mjerenje smjera pogleda kamerama usmjerenima u oči |
Provjeri se
Kratka provjera prije prelaska na sljedeću jedinicu. Odgovor se potvrđuje klikom, a obrazloženje se prikazuje odmah.
Pitanje 1 od 4
Korisnik u sustavu s 3DoF sagne se prema stolu. Što vidi?
Sustav s 3DoF prati samo orijentaciju; pomak glave ne mijenja sliku, što mozak doživljava kao nesklad.
Pitanje 2 od 4
Zašto se IMU ne može sam koristiti za praćenje položaja?
Položaj iz akcelerometra dobiva se dvostrukim integriranjem, pa i mala pogreška za nekoliko sekundi postaje neupotrebljiva.
Pitanje 3 od 4
Koja je tipična mana praćenja iznutra prema van?
Kamere na naočalama gledaju prema naprijed i dolje, pa imaju slijepe zone iza leđa, iznad glave i blizu lica.
Pitanje 4 od 4
Zašto se u VR-1 odabir točke interesa ne izvodi samim pogledom?
Pogled služi za isticanje, a odabir se potvrđuje okidačem, štipanjem ili zadržavanjem pogleda.
Odgovoreno 0 od 4.
Vježbe uz jedinicu
Gradivo ove jedinice priprema za sljedeće vježbe: