Podcast “ITMO Research_”: kako pristupiti sinhronizaciji AR sadržaja sa predstavom u razmjerima cijelog stadiona

Ovo je prvi dio transkripta teksta drugog intervjua za naš program (Apple Podcasts, Yandex.Music). Izdanje Gost - Andrej Karsakov (kapc3d), dr, viši istraživač u Nacionalnom centru za kognitivna istraživanja, vanredni profesor na Fakultetu za digitalne transformacije.

Od 2012. godine Andrey radi u istraživačkoj grupi Vizualizacija i kompjuterska grafika. Angažovan na velikim primenjenim projektima na državnom i međunarodnom nivou. U ovom dijelu razgovora govorimo o njegovom iskustvu u AR podršci javnim događajima.

Podcast “ITMO Research_”: kako pristupiti sinhronizaciji AR sadržaja sa predstavom u razmjerima cijelog stadiona
fotografija Ovo je inženjering RAEng (Unsplash.com)

Kontekst i ciljevi projekta

Vremenski kod (od audio verzije) — 00:41

dmitrykabanov: Želio bih početi s projektom Evropskih igara. Višekomponentan je, nekoliko timova je učestvovalo u pripremama, a obezbeđivanje proširene stvarnosti za više hiljada publike neposredno tokom događaja na stadionu je prilično ozbiljan zadatak. Što se tiče vašeg angažmana, da li je prvo bio softver?

kapc3d: Da, uradili smo programski dio i pružili podršku tokom emisije. Bilo je potrebno pratiti, pratiti i pokrenuti sve u realnom vremenu, a i raditi sa televizijskom grupom. Ako posmatramo ovaj projekat u cjelini, onda možemo govoriti o svečanosti otvaranja i zatvaranja Evropske igre u Minsku, kao i o svečanom otvaranju prvenstva WorldSkills u Kazanju. Bila je to ista shema rada, ali različiti događaji. Između njih je bio razmak od dva mjeseca. Projekat smo pripremili zajedno sa momcima iz kompanije Sechenov.com.

Slučajno smo ih sreli Science Fest, koji se održao u jesen 2018. Naši studenti master studija predstavili su svoj kursni projekat na temu VR. Prišli su nam momci i pitali šta radimo u našoj laboratoriji. Izgledalo je otprilike ovako:

— Radite sa VR, ali možete li raditi sa proširenom stvarnošću?

- Pa, nekako, da.

- Postoji takav zadatak, sa ovakvim uvodnim napomenama. Možeš li to učiniti?

Malo su počešali repu, izgleda da nema ništa nerealno:

- Pokušajmo prvo sve proučiti, pa onda pronaći rješenje.

Dmitrij: Da li pružaju samo medijsku podršku?

Andrew: Oni čine punu gomilu. Sa stanovišta menadžmenta i organizacije, oni su u potpunosti uključeni u režiju, inscenaciju, odabir scenografije, logistiku i drugu tehničku podršku. Ali željeli su učiniti nešto posebno za Evropske igre. Ovi specijalni efekti, poput mješovite realnosti, već su dugo rađeni za televiziju, ali u tehničkoj implementaciji nisu najisplativiji. Stoga su momci tražili alternativne opcije.

Dmitrij: Razgovarajmo o problemu detaljnije. U čemu se sastojao?

Andrew: Postoji događaj. Traje sat i po. Moramo se pobrinuti da publika koja je gleda uživo i oni koji sjede na stadionu mogu vidjeti efekte proširene stvarnosti u potpunoj sinhronizaciji sa emisijom uživo u smislu vremena i lokacije na stranici.

Postojala su brojna tehnička ograničenja. Vremensku sinhronizaciju putem interneta bilo je nemoguće izvršiti, jer je postojala bojazan od prevelikog opterećenja mreže sa punim tribinama i mogućnosti da šefovi država prisustvuju događaju, što bi moglo zaglaviti mobilne mreže.

Andrej Karsakov, fotografija iz materijal sa Univerziteta ITMO
Podcast “ITMO Research_”: kako pristupiti sinhronizaciji AR sadržaja sa predstavom u razmjerima cijelog stadionaImali smo dvije ključne komponente ovog projekta – lično iskustvo koje ljudi mogu dobiti putem mobilnih uređaja i ono što ulazi u televizijski prijenos i informativne ekrane na samom stadionu.

Ako odjednom osoba gleda epizode proširene stvarnosti putem mobilnog uređaja i istovremeno se pojavi na ekranu, trebala bi vidjeti istu sliku.

Bila su nam potrebna dva praktično različita sistema da bi bili potpuno sinhronizovani u vremenu. Ali posebnost ovakvih emisija je da su to složeni događaji u kojima je uključen veliki broj tehničkih službi i sve operacije se izvode po vremenskim kodovima. Vremenski kod je određeni trenutak u vremenu u kojem nešto počinje: svjetlo, zvuk, ljudi odlaze, otvaraju se latice pozornice itd. Morali smo se prilagoditi ovom sistemu kako bi sve počelo u pravo vrijeme. Još jedna karakteristika je da su scene i epizode sa proširenom stvarnošću bile povezane sa scenarijem.

Dmitrij: Ali jeste li odlučili da odustanete od upotrebe vremenskih kodova zbog visokog rizika od više sile, ili ste u početku izračunali neke karakteristike snage i shvatili da će opterećenje cijelog sistema biti prilično veliko?

Andrew: Ako kreirate uslugu sinhronizacije za takvu publiku, onda to nije teško. U svakom slučaju, zahtjevi neće propasti preko noći. Da, opterećenje je veliko, ali nije hitan slučaj. Pitanje je da li se isplati trošiti resurse i vrijeme na to ako se mreža iznenada ugasi. Nismo bili sigurni da se to neće dogoditi. Na kraju je sve funkcionisalo, sa prekidima zbog opterećenja, ali je radilo, a mi smo sinhronizovali po vremenskom kodu po drugoj šemi. Ovo je bio jedan od globalnih izazova.

Poteškoće implementacije sa UX tačke gledišta

Vremenski kod (od audio verzije) — 10:42

Andrew: Također smo morali uzeti u obzir da stadion nije klasična koncertna prostorija, te sinhronizirati sisteme u cijelom prostoru za mobilne uređaje. Dakle, prije nekog vremena sam postao viralan priča proširene stvarnosti na koncertima Eminema, onda je bio slučaj sa Lobodom.

fotografija Robert Bye (Unsplash.com)
Podcast “ITMO Research_”: kako pristupiti sinhronizaciji AR sadržaja sa predstavom u razmjerima cijelog stadionaAli ovo je uvijek iskustvo pred vama - cijela publika stoji ispred bine, sinhronizacija je prilično jednostavna. U slučaju stadiona, morate razumjeti na kojoj se strani kruga nalazite, relativnu poziciju, kako bi se stadion uklopio u prostor koji postoji u virtuelnom okruženju. Bio je to loš izazov. Pokušavali su to riješiti na razne načine, a rezultat je bio slučaj blizak onome što je implementirao Loboda, ali ne po svim aspektima.

Omogućavamo korisniku da odluči gdje se nalazi. Napravili smo oznake za stadion, gdje su ljudi birali sektor, red, mjesto. Sve to u četiri „klika“. Zatim smo morali odrediti pravac do pozornice. Da bismo to učinili, pokazali smo siluetu kako bi scena otprilike trebala izgledati iz prilagođene perspektive. Kombinovao je, tapkao i to je to - bina je sela. Pokušali smo da pojednostavimo ovaj proces što je više moguće. Ipak, 90% gledalaca koji su željeli pogledati emisiju nisu oni ljudi koji imaju iskustva u komunikaciji sa proširenom stvarnošću.

Dmitrij: Da li je postojala posebna aplikacija za ovaj projekat?

Andrew: Da, aplikacija za iOS i Android, koju smo gurnuli u prodavnicu. Za to je postojala posebna promotivna kampanja. Prethodno je detaljno opisano kako preuzeti i tako dalje.

Dmitrij: Morate shvatiti da nema mjesta za osobu da fizički testira i nauči kako koristiti takvu aplikaciju. Stoga je zadatak „educiranja“ publike postao složeniji.

Andrew: Da da. Sa UX-om smo uhvatili mnogo neravnina, jer korisnik želi da dobije iskustvo u tri klika: preuzeto, instalirano, pokrenuto - radilo je. Mnogi ljudi su previše lijeni da prate složene tutorijale, čitaju tutorijale i tako dalje. I nismo pokušavali sve objasniti korisniku što je više moguće u tutorijalu: ovdje će se otvoriti prozor, ovdje pristup kameri, inače neće raditi, itd. Koliko god objašnjenja napisali, koliko god detaljno prožvakali, bez obzira koje gifove ubacili, ljudi to ne čitaju.

U Minsku smo prikupili veliki broj povratnih informacija o ovom dijelu i već smo dosta promijenili za aplikaciju u Kazanju. Tamo smo stavili ne samo one fonograme i one vremenske kodove koji odgovaraju određenoj epizodi proširene stvarnosti, već smo sve fonograme i vremenske kodove uzeli u cijelosti. Tako je aplikacija čula šta se dešava u trenutku pokretanja i - ako se osoba prijavila u pogrešnom trenutku - dala je informaciju: "Druže, žao mi je, tvoja AR epizoda će biti za 15 minuta."

Malo o arhitekturi i pristupu sinhronizaciji

Vremenski kod (od audio verzije) — 16:37

Dmitrij: Da li ste odlučili da sinhronizujete zvukom?

Andrew: Da, desilo se slučajno. Pregledali smo opcije i naišli na kompaniju Cifrasoft iz Iževska. Oni čine ne posebno sofisticiran, ali neophodan SDK, koji vam omogućava da sinhronizujete zvuk sa vremenom. Sistem je pozicioniran da radi sa TV-om, kada možete prikazati nešto u aplikaciji na osnovu zvuka uslovne reklame ili dati interaktivno iskustvo zasnovano na zapisu filma.

Dmitrij: Ali jedno je - sjedite u svojoj dnevnoj sobi, a drugo - stadion sa hiljadama ljudi. Kako su vam krenule stvari s kvalitetom snimanja zvuka i njegovim naknadnim prepoznavanjem?

Andrew: Bilo je mnogo strahova i nedoumica, ali se u većini slučajeva sve dobro prepoznalo. Oni grade potpise na audio zapisu svojim lukavim algoritmima - rezultat je manji od originalne audio datoteke. Kada mikrofon sluša okolni zvuk, pokušava da pronađe ove karakteristike i na osnovu njih prepozna numeru. U dobrim uslovima, tačnost sinhronizacije je 0,1-0,2 sekunde. Ovo je bilo više nego dovoljno. U lošim uslovima odstupanje je bilo i do 0,5 sekundi.

Mnogo zavisi od uređaja. Radili smo sa velikom flotom uređaja. Za iPhone postoji samo 10 modela. Dobro su radili u pogledu kvaliteta i drugih karakteristika. Ali sa androidima zoološki vrt je kao moja majka. Nije se svuda pokazalo da sinhronizacija zvuka radi. Bilo je slučajeva kada je bilo nemoguće čuti različite numere na različitim uređajima zbog nekih specifičnosti. Negdje niske frekvencije nestaju, negdje visoke frekvencije počinju da zvižde. Ali ako je uređaj imao normalizator na mikrofonu, sinhronizacija je uvijek radila.

Dmitrij: Recite nam o arhitekturi - šta je korišteno u projektu?

Andrew: Aplikaciju smo napravili u Unity-u - najjednostavnijoj opciji u smislu multiplatforme i rada sa grafikom. Korištena AR fondacija. Odmah smo rekli da ne želimo da komplikujemo sistem, pa smo se ograničili na flotu uređaja koji podržavaju ARKit i ARCore kako bismo imali vremena da sve testiramo. Napravili smo dodatak za DigitalSoft SDK, to je na našem GitHubu. Napravili smo sistem za upravljanje sadržajem kako bi skripte radile prema vremenskoj liniji.

Malo smo se poigrali sa partikularnim sistemom, jer korisnik može da uđe u bilo kom trenutku u određenu epizodu, a nama je potrebno da vidi sve od trenutka od koga je sinhronizovao. Doradili smo sistem koji omogućava da se scenariji odigraju jasno u vremenu, tako da se 3D iskustvo može pomicati naprijed-nazad, kao u filmu. Iako radi iz kutije sa klasičnim animacijama, morali smo da se petljamo sa sistemima čestica. U nekom trenutku počinju da se mrijeste, a ako se nađete negdje prije točke mrijesta, oni još nisu rođeni, iako se čini da bi trebali biti. Ali ovaj problem je zapravo prilično lako riješiti.

Što se tiče mobilnog dijela, arhitektura je prilično jednostavna. Za televizijsko emitovanje sve je komplikovanije. Imali smo hardverska ograničenja. Kupac je postavio uslov: „Ovdje imamo takav i takav hardverski park, grubo rečeno, sve treba raditi na tome.” Odmah smo se fokusirali na činjenicu da ćemo raditi sa relativno jeftinim karticama za video snimanje. Ali budžet ne znači da su loši.

Postojala su ograničenja na hardveru, na karticama za video snimanje i na uslove rada – kako bismo trebali primiti sliku. Kartice za snimanje - Blackmagic Design, rade prema internoj šemi ključeva - ovo je kada vam video okvir dolazi iz kamere. Kartica ima svoj čip za obradu, u koji je takođe umetnut okvir, koji se mora postaviti iznad ulaznog. Kartica ih miješa - ne diramo ništa drugo tamo i ne utječemo na kadar s video kamere. Ona izbacuje rezultat u kontrolnu sobu preko video izlaza. Ovo je dobra metoda za preklapanje naslova i drugih sličnih stvari, ali nije baš prikladna za efekte mješovite stvarnosti jer postoje mnoga ograničenja na kanalu renderiranja.

Dmitrij: U smislu računanja u realnom vremenu, vezivanja objekata ili nečeg drugog?

Andrew: U smislu kvaliteta i postizanja željenih efekata. Jer ne znamo na šta stavljamo sliku. Jednostavno šaljemo informacije o boji i transparentnosti na vrhu originalnog toka. Neki efekti kao što su refrakcije, ispravna transparentnost i dodatne sjene ne mogu se postići ovom šemom. Da biste to učinili, morate sve zajedno renderirati. Na primjer, ne postoji način da se stvori efekat izobličenja zraka od vatre ili vrućeg asfalta. Isto vrijedi i za prijenos efekta transparentnosti uzimajući u obzir indeks prelamanja. Prvobitno smo pravili sadržaj na osnovu ovih ograničenja i pokušali da koristimo odgovarajuće efekte.

Pogledajte ovaj post na Instagramu

Zatvaranje II Evropskih igara u Minsku.

Post koji deli Alena Lanskaya (@alyonalanskaya) 30. juna 2019. u 3:19 PDT

Dmitrij: Jeste li već imali svoj sadržaj u prvom projektu za Evropske igre?

Andrew: Ne, glavnu fazu razvoja sadržaja uradili su momci sa Sechenov.com. Njihovi grafičari crtali su osnovni sadržaj animacijama i drugim stvarima. I sve smo integrisali u motor, dodali dodatne efekte, prilagodili ga tako da sve radi kako treba.

Ako govorimo o gasovodu, onda smo za televizijsko emitovanje sve sklopili na Unreal Engine 4. Igrom slučaja, oni su upravo u tom trenutku počeli da pojačavaju svoje alate za mešovitu stvarnost. Ispostavilo se da nije sve tako jednostavno. Čak i sada su svi alati sirovi morali smo mnogo da završimo ručno. U Minsku smo radili na prilagođenoj izradi motora, odnosno prepisali smo neke stvari unutar motora kako bismo, na primjer, mogli crtati sjene na vrhu stvarnih objekata. Verzija motora koja je bila aktuelna u to vreme nije imala karakteristike koje bi omogućile da se to uradi pomoću standardnih alata. Iz tog razloga, naši momci su napravili vlastitu montažu po narudžbi kako bi osigurali sve što je životno potrebno.

Ostale nijanse i adaptacije na WorldSkills u Kazanju

Vremenski kod (od audio verzije) — 31:37

Dmitrij: Ali sve to u prilično kratkom vremenskom periodu?

Andrew: Rokovi su bili kratki projekat Kazan, prema Minsku - normalno. Oko šest mjeseci za razvoj, ali uzimajući u obzir činjenicu da je bilo uključeno šest ljudi. Istovremeno smo pravili mobilni dio i razvijali alate za televizijsku produkciju. Nije postojao samo izlaz slike. Na primjer, sistem za praćenje s optikom, za to ste morali kreirati vlastite alate.

Dmitrij: Da li je bilo prilagođavanja s jednog projekta na drugi? Za mjesec i po dana trebalo je iskoristiti razvoj i prebaciti projekat sa novim sadržajem na novi sajt?

Andrew: Da, bilo je to mjesec i po dana. Planirali smo dvonedeljni odmor za ceo tim nakon projekta Minsk. Ali odmah nakon zatvaranja, prilaze momci sa Sechenov.com i kažu: „Pa, hajde onda Kazanj“. Uspjeli smo se ipak malo odmoriti, ali smo se vrlo brzo prebacili na ovaj projekat. Završili smo neke tehničke radove. Najviše vremena je utrošeno na sadržaj, jer smo za WorldSkills to uradili u potpunosti, samo smo to koordinirali sa produkcijskim timom. Postojao je samo scenario sa njihove strane. Ali bilo je lakše - nije bilo potrebe za dodatnim iteracijama. Kada sami kreirate sadržaj, odmah vidite kako on radi u engine-u, a možete ga brzo uređivati ​​i koordinirati.


Što se tiče mobilnog dijela, uzeli smo u obzir sve suptilnosti koje smo imali u Minsku. Napravili smo novi dizajn aplikacije, malo redizajnirali arhitekturu, dodali tutorijale, ali pokušali da bude što kraće i jasnije. Smanjili smo broj koraka korisnika od pokretanja aplikacije do pregleda sadržaja. Mjesec i po dana bilo je dovoljno da se završi adekvatan projekat. Za sedmicu i po stigli smo do lokacije. Tamo je bilo lakše raditi jer je sva kontrola nad projektom bila u rukama organizatora, nije bilo potrebe za koordinacijom sa drugim komisijama. U Kazanju je bilo jednostavnije i lakše raditi i sasvim je normalno da je bilo manje vremena.

Dmitrij: Ali jeste li odlučili da ostavite pristup sinhronizaciji kakav je bio, zasnovan na zvuku?

Andrew: Da, mi smo to ostavili po zvuku. Dobro je funkcionisalo. Kako kažu, ako radi, ne diraj ga. Jednostavno smo uzeli u obzir nijanse kvalitete audio zapisa. Kada su napravili uvod, bila je epizoda treninga za ljude da isprobaju prije početka emisije. Bilo je iznenađujuće da kada se u trenutku puštanja numere na stadionu začuje buran aplauz, „uživo“, sistem omogućava da se dobro sinhronizujete sa ovom numerom, ali ako se u ovom trenutku snimljeni aplauz pomeša sa numerom, onda staza se više ne hvata. Takve nijanse su uzete u obzir i sve je bilo prilično dobro sinhronizovano u smislu zvuka.

PS U drugom dijelu broja govorimo o vizualizaciji naučnih podataka, modeliranju procesa u drugim projektima, razvoju igrica i master programu "Tehnologija razvoja kompjuterskih igara" Nastavak ćemo objaviti u sljedećem članku. Možete nas poslušati i podržati ovdje:

PPS U međuvremenu, na engleskoj verziji Habra: detaljniji pogled na Univerzitet ITMO.

izvor: www.habr.com

Dodajte komentar