Podcast “ITMO Research_”: cara melakukan pendekatan sinkronisasi konten AR dengan pertunjukan dalam skala seluruh stadion

Ini adalah bagian pertama dari transkrip teks wawancara kedua untuk program kami (Podcast Apple, Yandex.Musik). Masalah Tamu - Andrey Karsakov (kapc3d), Ph.D., peneliti senior di Pusat Penelitian Kognitif Nasional, profesor di Fakultas Transformasi Digital.

Sejak 2012, Andrey bekerja di kelompok penelitian Visualisasi dan Grafik Komputer. Terlibat dalam proyek terapan besar di tingkat negara bagian dan internasional. Di bagian percakapan ini, kami membicarakan pengalamannya dalam dukungan AR untuk acara publik.

Podcast “ITMO Research_”: cara melakukan pendekatan sinkronisasi konten AR dengan pertunjukan dalam skala seluruh stadion
foto Ini adalah Teknik RAEngAE (Unsplash.com)

Konteks dan tujuan proyek

Kode waktu (oleh versi audio) — 00:41

Dmitrykabanov: Saya ingin memulai dengan proyek European Games. Ini multi-komponen, beberapa tim mengambil bagian dalam persiapannya, dan menyediakan augmented reality untuk ribuan penonton selama acara di stadion adalah tugas yang cukup serius. Dalam kaitannya dengan keterlibatan Anda, apakah yang pertama adalah perangkat lunak?

kapc3d: Ya, kami melakukan bagian pemrograman dan memberikan dukungan selama pertunjukan. Penting untuk melacak, memantau, dan meluncurkan semuanya secara real time, dan juga bekerja dengan grup televisi. Jika kita mempertimbangkan proyek ini secara keseluruhan, maka kita dapat berbicara tentang upacara pembukaan dan penutupan Pertandingan Eropa di Minsk, serta tentang upacara pembukaan kejuaraan WorldSkills di Kazan. Skema kerjanya sama, tetapi acaranya berbeda. Ada jarak dua bulan di antara mereka. Kami mempersiapkan proyek bersama dengan orang-orang dari perusahaan Sechenov.com.

Kami bertemu mereka secara kebetulan Festival Sains, yang terjadi pada musim gugur 2018. Siswa master kami memamerkan proyek kursus mereka dengan topik VR. Orang-orang mendatangi kami dan menanyakan apa yang kami lakukan di laboratorium kami. Itu terlihat seperti ini:

— Anda bekerja dengan VR, tapi bisakah Anda bekerja dengan augmented reality?

- Ya, semacam itu.

- Ada tugas seperti itu, dengan catatan pengantar seperti itu. Apakah Anda bisa?

Mereka menggaruk lobaknya sedikit, sepertinya tidak ada sesuatu yang tidak realistis:

- Mari kita coba pelajari semuanya dulu, lalu cari solusinya.

Dimitri: Apakah mereka hanya memberikan dukungan media?

Andrew: Mereka membuat tumpukan penuh. Dari segi manajemen dan organisasi, mereka terlibat penuh dalam pengarahan, pementasan, pemilihan pemandangan, logistik dan dukungan teknis lainnya. Namun mereka ingin melakukan sesuatu yang istimewa untuk European Games. Efek khusus ini, seperti halnya realitas campuran, telah dibuat untuk televisi sejak lama, namun bukan yang paling ramah anggaran dalam hal teknis penerapannya. Oleh karena itu, mereka mencari opsi alternatif.

Dimitri: Mari kita bahas masalahnya lebih detail. Terdiri dari apa?

Andrew: Ada acara. Itu berlangsung satu setengah jam. Kami perlu memastikan bahwa penonton yang menontonnya secara langsung dan mereka yang duduk di stadion dapat melihat efek augmented reality dalam sinkronisasi penuh dengan pertunjukan langsung dalam hal waktu dan lokasi di situs.

Ada sejumlah keterbatasan teknis. Sinkronisasi waktu melalui Internet tidak mungkin dilakukan, karena ada kekhawatiran akan beban berlebihan pada jaringan dengan stand penuh dan kemungkinan kepala negara menghadiri acara tersebut, yang dapat membuat jaringan seluler macet.

Andrey Karsakov, foto dari materi dari Universitas ITMO
Podcast “ITMO Research_”: cara melakukan pendekatan sinkronisasi konten AR dengan pertunjukan dalam skala seluruh stadionKami memiliki dua komponen kunci dalam proyek ini - pengalaman pribadi yang dapat diperoleh orang-orang melalui perangkat seluler, dan apa yang ditampilkan dalam siaran televisi dan layar informasi di stadion itu sendiri.

Jika tiba-tiba seseorang menonton episode augmented reality melalui perangkat seluler dan pada saat yang sama muncul di layar, dia akan melihat gambar yang sama.

Kami membutuhkan dua sistem yang hampir berbeda agar dapat disinkronkan sepenuhnya pada waktunya. Namun kekhasan dari pertunjukan tersebut adalah bahwa ini adalah peristiwa kompleks yang melibatkan sejumlah besar layanan teknis dan semua operasi dilakukan sesuai dengan kode waktu. Kode waktu adalah momen tertentu di mana sesuatu dimulai: cahaya, suara, kepergian orang, pembukaan kelopak panggung, dan sebagainya. Kami harus beradaptasi dengan sistem ini agar semuanya dimulai pada waktu yang tepat. Fitur lainnya adalah adegan dan episode dengan augmented reality terkait dengan naskah.

Dimitri: Namun apakah Anda memutuskan untuk mengabaikan penggunaan kode waktu karena tingginya risiko force majeure, atau apakah Anda awalnya menghitung beberapa karakteristik daya dan menyadari bahwa beban pada keseluruhan sistem akan cukup tinggi?

Andrew: Jika Anda membuat layanan sinkronisasi untuk audiens seperti itu, maka itu tidak terlalu sulit. Bagaimanapun, permintaan tidak akan gagal dalam semalam. Ya, bebannya tinggi, tapi ini bukan keadaan darurat. Pertanyaannya adalah apakah layak menghabiskan sumber daya dan waktu untuk hal ini jika jaringan tiba-tiba padam. Kami tidak yakin ini tidak akan terjadi. Pada akhirnya, semuanya berfungsi, dengan gangguan karena beban, tetapi berhasil, dan kami menyinkronkan sesuai dengan kode waktu sesuai dengan skema yang berbeda. Ini adalah salah satu tantangan global.

Kesulitan implementasi dari sudut pandang UX

Kode waktu (oleh versi audio) — 10:42

Andrew: Kami juga harus memperhitungkan bahwa stadion ini bukanlah tempat konser klasik, dan menyinkronkan sistem di seluruh ruangan untuk perangkat seluler. Nah, beberapa waktu lalu saya sempat viral cerita realitas tertambah di konser Eminem, lalu ada kasus dengan Loboda.

foto Robert Sampai jumpa (Unsplash.com)
Podcast “ITMO Research_”: cara melakukan pendekatan sinkronisasi konten AR dengan pertunjukan dalam skala seluruh stadionTapi ini selalu menjadi pengalaman di depan Anda - seluruh penonton berdiri di depan panggung, sinkronisasinya cukup sederhana. Dalam kasus stadion, Anda perlu memahami di sisi lingkaran mana Anda berada, posisi relatifnya, sehingga stadion tersebut cocok dengan ruang yang ada di lingkungan virtual. Itu adalah tantangan yang buruk. Mereka mencoba menyelesaikannya dengan berbagai cara, dan hasilnya adalah kasus yang mendekati apa yang diterapkan oleh Loboda, namun tidak dalam semua hal.

Kami membiarkan pengguna memutuskan di mana dia berada. Kami membuat penandaan untuk stadion, di mana orang-orang memilih sektor, barisan, tempat. Semua ini dalam empat “klik”. Selanjutnya kami harus menentukan arah menuju panggung. Untuk melakukan ini, kami menunjukkan siluet pemandangan yang kira-kira terlihat dari perspektif khusus. Dia menggabungkannya, mengetuknya dan hanya itu - panggungnya duduk. Kami mencoba menyederhanakan proses ini semaksimal mungkin. Namun, 90% penonton yang ingin menonton acara tersebut bukanlah orang-orang yang memiliki pengalaman berkomunikasi dengan augmented reality.

Dimitri: Apakah ada aplikasi terpisah untuk proyek ini?

Andrew: Ya, aplikasi untuk iOS dan Android, yang kami dorong ke toko. Ada kampanye promosi terpisah untuk itu. Sebelumnya sudah dijelaskan secara detail cara download dan lain sebagainya.

Dimitri: Anda perlu memahami bahwa tidak ada tempat bagi seseorang untuk menguji secara fisik dan mempelajari cara menggunakan aplikasi semacam itu. Oleh karena itu, tugas “mendidik” penonton menjadi lebih rumit.

Andrew: Ya ya. Dengan UX, kami menemui banyak kendala, karena pengguna ingin mendapatkan pengalaman dalam tiga klik: mengunduh, menginstal, meluncurkan - semuanya berhasil. Banyak orang yang malas mengikuti tutorial yang rumit, membaca tutorial, dan lain sebagainya. Dan kami tidak mencoba menjelaskan semuanya kepada pengguna sebanyak mungkin dalam tutorial: sebuah jendela akan terbuka di sini, akses ke kamera di sini, jika tidak maka tidak akan berfungsi, dan seterusnya. Tidak peduli berapa banyak penjelasan yang Anda tulis, tidak peduli seberapa detail Anda mengunyahnya, tidak peduli gif apa yang Anda masukkan, orang tidak akan membacanya.

Di Minsk kami mengumpulkan banyak masukan mengenai bagian ini, dan telah banyak berubah untuk penerapan di Kazan. Kami tidak hanya memasukkan rekaman suara dan kode waktu yang sesuai dengan episode tertentu dari augmented reality di sana, tetapi kami mengambil semua rekaman suara dan kode waktu secara keseluruhan. Jadi aplikasi tersebut mendengar apa yang terjadi pada saat peluncuran, dan - jika seseorang masuk pada saat yang salah - aplikasi tersebut memberikan informasi: "Kawan, maaf, episode AR Anda akan tayang dalam 15 menit."

Sedikit tentang arsitektur dan pendekatan sinkronisasi

Kode waktu (oleh versi audio) — 16:37

Dimitri: Apakah Anda memutuskan untuk melakukan sinkronisasi dengan suara?

Andrew: Ya, itu terjadi secara tidak sengaja. Kami sedang mencari-cari opsi dan menemukan sebuah perusahaan Cifrasoft dari Izhevsk. Mereka membuat SDK yang tidak terlalu canggih namun berfungsi dengan baik, yang memungkinkan Anda menyinkronkan suara dengan pengaturan waktu. Sistem diposisikan untuk bekerja dengan TV, ketika Anda dapat menampilkan sesuatu dalam aplikasi berdasarkan suara iklan bersyarat atau memberikan pengalaman interaktif berdasarkan trek film.

Dimitri: Tapi itu satu hal - Anda duduk di ruang tamu Anda, dan satu hal lagi - stadion dengan ribuan orang. Bagaimana dengan kualitas rekaman suara dan pengenalan selanjutnya?

Andrew: Ada banyak ketakutan dan keraguan, tetapi dalam banyak kasus semuanya disadari dengan baik. Mereka membuat tanda tangan pada trek audio dengan algoritme licik mereka - bobot hasilnya lebih ringan daripada file audio asli. Saat mikrofon mendengarkan suara di sekitarnya, mikrofon mencoba menemukan fitur-fitur ini dan mengenali trek berdasarkan fitur tersebut. Dalam kondisi baik, akurasi sinkronisasi adalah 0,1-0,2 detik. Ini sudah lebih dari cukup. Dalam kondisi buruk, perbedaannya mencapai 0,5 detik.

Banyak hal bergantung pada perangkatnya. Kami bekerja dengan sejumlah besar perangkat. Untuk iPhone hanya ada 10 model. Mereka bekerja dengan baik dalam hal kualitas dan fitur lainnya. Tapi dengan android, kebun binatang itu seperti ibuku. Tidak semua tempat ternyata sinkronisasi suara berfungsi. Ada kalanya tidak mungkin mendengar trek yang berbeda pada perangkat yang berbeda karena beberapa keanehan. Di suatu tempat frekuensi rendah menghilang, di suatu tempat frekuensi tinggi mulai berbunyi. Namun jika perangkat memiliki normalizer di mikrofon, sinkronisasi selalu berfungsi.

Dimitri: Tolong beritahu kami tentang arsitekturnya - apa yang digunakan dalam proyek ini?

Andrew: Kami membuat aplikasi di Unity - opsi paling sederhana dalam hal multi-platform dan bekerja dengan grafik. Yayasan AR bekas. Kami segera mengatakan bahwa kami tidak ingin mempersulit sistem, jadi kami membatasi diri pada armada perangkat yang mendukung ARKit dan ARCore agar punya waktu untuk menguji semuanya. Kami membuat plugin untuk DigitalSoft SDK, itu ada di GitHub kami. Kami membuat sistem manajemen konten sehingga skrip dapat berjalan sesuai timeline.

Kami sedikit mengutak-atik sistem partikel, karena pengguna dapat masuk ke episode tertentu kapan saja, dan kami membutuhkannya untuk melihat semuanya sejak dia melakukan sinkronisasi. Kami mengutak-atik sistem yang memungkinkan skenario dimainkan dengan jelas pada waktunya, sehingga pengalaman XNUMXD dapat digulir maju mundur, seperti di film. Meskipun berhasil dengan animasi klasik, kami harus mengutak-atik sistem partikel. Pada titik tertentu, mereka mulai bertelur, dan jika Anda berada di suatu tempat sebelum titik bertelur, mereka belum lahir, meskipun tampaknya memang seharusnya begitu. Namun masalah ini sebenarnya cukup mudah untuk diatasi.

Untuk bagian mobile, arsitekturnya cukup sederhana. Untuk siaran televisi segalanya menjadi lebih rumit. Kami memiliki batasan perangkat keras. Pelanggan menetapkan syarat: "Di sini kami memiliki taman perangkat keras ini dan itu, secara kasar, semuanya harus berfungsi di sana." Kami segera fokus pada kenyataan bahwa kami akan bekerja dengan kartu video capture yang relatif murah. Namun anggaran tidak berarti buruk.

Ada batasan pada perangkat keras, pada kartu pengambilan video dan pada kondisi kerja - bagaimana kita harus menerima gambar. Kartu pengambilan - Desain Blackmagic, bekerja sesuai dengan skema penguncian internal - ini adalah saat bingkai video datang kepada Anda dari kamera. Kartu tersebut memiliki chip pemrosesannya sendiri, di mana sebuah bingkai juga dimasukkan, yang harus ditumpangkan di atas bingkai yang masuk. Kartu mencampurkannya - kami tidak menyentuh apa pun di sana dan tidak memengaruhi bingkai dari kamera video. Dia memuntahkan hasilnya ke ruang kontrol melalui output video. Ini adalah metode yang bagus untuk melapisi judul dan hal serupa lainnya, tetapi tidak terlalu cocok untuk efek realitas campuran karena ada banyak batasan pada saluran render.

Dimitri: Dalam hal komputasi real-time, pengikatan objek, atau yang lainnya?

Andrew: Dari segi kualitas dan mencapai efek yang diinginkan. Karena kita tidak tahu apa yang kita letakkan di atas gambar itu. Kami cukup mengirimkan informasi warna dan transparansi di atas aliran aslinya. Beberapa efek seperti pembiasan, transparansi yang benar, dan bayangan tambahan tidak dapat dicapai dengan skema ini. Untuk melakukan ini, Anda perlu menyatukan semuanya. Misalnya, tidak ada cara untuk menciptakan efek distorsi udara dari api atau aspal panas. Hal yang sama berlaku untuk transfer efek transparansi dengan mempertimbangkan indeks bias. Kami awalnya membuat konten berdasarkan batasan ini dan mencoba menggunakan efek yang sesuai.

Lihat posting ini di Instagram

Penutupan Pertandingan Eropa II di Minsk.

Posting bersama Alena Lanskaya (@alyonalanskaya) pada 30 Juni 2019 pukul 3 PDT

Dimitri: Apakah Anda sudah memiliki konten sendiri di proyek pertama European Games?

Andrew: Tidak, tahap utama pengembangan konten dilakukan oleh orang-orang dari Sechenov.com. Seniman grafis mereka menggambar konten dasar dengan animasi dan hal lainnya. Dan kami mengintegrasikan semuanya ke dalam mesin, menambahkan efek tambahan, menyesuaikannya sehingga semuanya bekerja dengan benar.

Jika kita berbicara tentang pipeline, maka untuk siaran televisi kami mengumpulkan semuanya di Unreal Engine 4. Secara kebetulan, mereka pada saat itu mulai meningkatkan alat mereka untuk realitas campuran. Ternyata semuanya tidak sesederhana itu. Bahkan sekarang semua peralatannya masih mentah, banyak yang harus kami selesaikan dengan tangan. Di Minsk kami mengerjakan pembuatan mesin secara khusus, yaitu, kami menulis ulang beberapa hal di dalam mesin sehingga, misalnya, kami dapat menggambar bayangan di atas objek nyata. Versi mesin yang ada pada saat itu tidak memiliki fitur yang memungkinkan hal ini dilakukan dengan menggunakan alat standar. Untuk alasan ini, orang-orang kami membuat rakitan khusus mereka sendiri untuk menyediakan segala sesuatu yang sangat diperlukan.

Nuansa dan adaptasi lain terhadap WorldSkills di Kazan

Kode waktu (oleh versi audio) — 31:37

Dimitri: Namun semua itu dalam waktu yang cukup singkat?

Andrew: Tenggat waktunya sangat ketat Proyek Kazan, menurut Minsk - normal. Sekitar enam bulan untuk pengembangan, tetapi dengan mempertimbangkan fakta bahwa enam orang terlibat. Pada saat yang sama, kami membuat bagian seluler dan mengembangkan alat untuk produksi televisi. Tidak hanya keluaran gambar. Misalnya, sistem pelacakan dengan optik, untuk ini Anda harus membuat alat sendiri.

Dimitri: Apakah ada adaptasi dari satu proyek ke proyek lainnya? Dalam satu setengah bulan, perlu memanfaatkan perkembangan dan mentransfer proyek dengan konten baru ke situs baru?

Andrew: Ya, itu selama satu setengah bulan. Kami telah merencanakan liburan dua minggu untuk seluruh tim setelah proyek Minsk. Namun segera setelah penutupan, orang-orang dari Sechenov.com datang dan berkata: “Baiklah, mari kita lakukan Kazan.” Kami masih bisa beristirahat sebentar, tetapi beralih ke proyek ini dengan cukup cepat. Kami menyelesaikan beberapa pekerjaan teknis. Sebagian besar waktunya dihabiskan untuk konten, karena untuk WorldSkills kami mengerjakannya sepenuhnya, kami hanya berkoordinasi dengan tim produksi. Hanya ada naskah di pihak mereka. Tapi itu lebih mudah - tidak perlu pengulangan tambahan. Saat Anda membuat konten sendiri, Anda langsung melihat cara kerjanya di mesin, dan Anda dapat dengan cepat mengedit dan mengoordinasikannya.


Mengenai bagian seluler, kami memperhitungkan semua seluk-beluk yang kami miliki di Minsk. Kami membuat desain aplikasi baru, mendesain ulang sedikit arsitekturnya, menambahkan tutorial, namun mencoba membuatnya sesingkat dan sejelas mungkin. Kami mengurangi jumlah langkah pengguna mulai dari meluncurkan aplikasi hingga melihat konten. Satu setengah bulan sudah cukup untuk menyelesaikan proyek yang memadai. Dalam satu setengah minggu kami sampai di lokasi. Bekerja di sana lebih mudah karena seluruh kendali proyek ada di tangan penyelenggara, tidak perlu berkoordinasi dengan panitia lain. Bekerja di Kazan lebih sederhana dan mudah, dan wajar jika waktunya lebih sedikit.

Dimitri: Namun apakah Anda memutuskan untuk membiarkan pendekatan sinkronisasi seperti apa adanya, berdasarkan suara?

Andrew: Ya, kami meninggalkannya dengan suara. Itu bekerja dengan baik. Seperti kata pepatah, jika berhasil, jangan sentuh. Kami hanya memperhitungkan nuansa kualitas trek audio. Saat mereka melakukan intro, ada episode pelatihan yang bisa dicoba orang-orang sebelum pertunjukan dimulai. Mengejutkan bahwa ketika pada saat pemutaran trek di stadion ada tepuk tangan meriah, "langsung", sistem memungkinkan Anda untuk melakukan sinkronisasi dengan baik dengan trek ini, tetapi jika pada saat ini tepuk tangan yang direkam bercampur dengan trek, maka trek tidak lagi tertangkap. Nuansa seperti itu diperhitungkan, dan semuanya disinkronkan dengan cukup baik dalam hal suara.

PS Di bagian kedua terbitan ini kita berbicara tentang visualisasi data ilmiah, pemodelan proses di proyek lain, pengembangan game, dan program master "Teknologi pengembangan permainan komputer" Lanjutannya akan kami publikasikan pada artikel selanjutnya. Anda dapat mendengarkan dan mendukung kami di sini:

PPS Sedangkan pada Habr versi bahasa Inggris: melihat lebih dekat Universitas ITMO.

Sumber: www.habr.com

Tambah komentar