ITMO Research_ Podcast: Wie man die Synchronisation von AR-Inhalten mit der Show auf der Skala des gesamten Stadions angeht

Dies ist der erste Teil des Textprotokolls des zweiten Interviews für unser Programm ( Apple Podcasts , Yandex.Music ). Gast der Veröffentlichung - Andrey Karsakov (kapc3d), Ph.D., leitender Forscher am Nationalen Zentrum für kognitive Entwicklung, außerordentlicher Professor am Department of Digital Transformations.

Seit 2012 arbeitet Andrey in der wissenschaftlichen Gruppe Visualisierung und Computergrafik. Er ist an groß angelegten angewandten Projekten auf staatlicher und internationaler Ebene beteiligt. In diesem Teil des Gesprächs sprechen wir über seine Erfahrungen mit der AR-Begleitung von Massenereignissen.


Foto ThisisEngineering RAEng (Unsplash.com)



Projektkontext und Ziele


Timecode ( Audioversion ) - 00:41



dmitrykabanov: Ich möchte mit dem European Games-Projekt beginnen. Es ist mehrkomponentig, mehrere Teams haben an der Vorbereitung teilgenommen, und es ist eine ziemlich ernste Aufgabe, während der Veranstaltung im Stadion eine Augmented Reality für ein Publikum von mehreren tausend Zuschauern bereitzustellen. War diese Software in Bezug auf Ihre Teilnahme an erster Stelle?

kapc3d: Ja, wir haben den Software-Teil gemacht und die Show begleitet. Es war notwendig, alles in Echtzeit zu überwachen, zu überwachen und zu starten sowie mit einer Fernsehgruppe zusammenzuarbeiten. Wenn wir dieses Projekt als Ganzes betrachten, können wir über die Eröffnungs- und Abschlusszeremonien der Europäischen Spiele in Minsk sowie über die Eröffnungszeremonie der WorldSkills-Meisterschaft in Kasan sprechen . Es war das gleiche Arbeitsschema, aber unterschiedliche Aktivitäten. Zwischen ihnen war eine Pause von zwei Monaten. Wir haben das Projekt zusammen mit den Jungs von Sechenov.com vorbereitet .

Traf sie zufällig beim Science Festdie im Herbst 2018 stattfand. Unsere Studenten zeigten ihr Kursprojekt zum Thema VR. Die Jungs kamen auf uns zu und fragten, was wir in unserem Labor machten. Es sah ungefähr so ​​aus:

- Sie arbeiten also mit VR, aber können Sie mit Augmented Reality?

"Nun, irgendwie ja."

- Es gibt eine solche Aufgabe mit solchen einleitenden. Kannst du es machen?


Wir haben unsere Rüben ein wenig gekratzt, es scheint nichts Unwirkliches zu geben:

- Versuchen wir, alles im Voraus zu studieren, und dann werden wir eine Lösung finden.

Dmitry: Beschäftigen sie sich nur mit Medienunterstützung?

Andrew:Machen Sie einen vollen Stapel. Aus Sicht des Managements und der Organisation sind sie voll und ganz mit Regie, Inszenierung, Auswahl der Szenerie, Logistik und anderer technischer Unterstützung beschäftigt. Aber sie wollten etwas Besonderes für die Europäischen Spiele tun. Diese Spezialeffekte wie die gemischte Realität werden seit langem für das Fernsehen eingesetzt, sind jedoch im Hinblick auf die technische Umsetzung nicht die budgetärsten. Deshalb suchten die Jungs nach Alternativen.

Dmitry: Lassen Sie uns das Problem genauer diskutieren. Wie war sie?

Andrew: Es gibt eine Veranstaltung. Es dauert anderthalb Stunden. Wir müssen sicherstellen, dass das Publikum, das es live sieht, und diejenigen, die im Stadion sitzen, die Auswirkungen von Augmented Reality mit vollständiger Synchronisation mit der Live-Show in Zeit und Ort auf der Website sehen können.

Es gab eine Reihe technischer Einschränkungen. Es war unmöglich, eine Zeitsynchronisation über das Internet durchzuführen, da Befürchtungen hinsichtlich der übermäßigen Auslastung des Netzwerks mit vollen Ständen und der Aussicht auf Teilnahme der Staatsoberhäupter an der Veranstaltung bestanden, aufgrund derer Mobilfunknetze stören könnten.

Andrey Karsakov, Foto aus dem Material der ITMO-Universität
Wir hatten zwei Schlüsselkomponenten dieses Projekts - persönliche Erfahrungen, die Menschen über mobile Geräte machen können, und was auf Fernsehsendungen und Informationsbildschirmen im Stadion selbst läuft .

Wenn eine Person plötzlich Episoden von Augmented Reality über ein mobiles Gerät betrachtet und gleichzeitig auf den Bildschirm trifft, sollte sie dasselbe Bild sehen.

Wir brauchten zwei tatsächlich unterschiedliche Systeme, um die Zeit vollständig zu synchronisieren. Die Besonderheit solcher Shows ist jedoch, dass es sich um komplexe Ereignisse handelt, bei denen eine große Anzahl von technischen Diensten beteiligt ist und alle Operationen gemäß Zeitcodes ausgeführt werden. Ein Zeitcode ist ein bestimmter Zeitpunkt, zu dem etwas beginnt: Licht, Ton, Menschen verlassen, Blütenblätter öffnen und so weiter. Wir mussten uns an dieses System anpassen, damit alles im richtigen Moment beginnt. Ein weiteres Merkmal war, dass Szenen und Episoden mit Augmented Reality szenisch miteinander verbunden waren.

Dmitry:Sie haben sich jedoch aufgrund des hohen Risikos höherer Gewalt für die Verwendung von Zeitcodes entschieden oder zunächst einige Leistungseigenschaften berechnet und festgestellt, dass die Belastung des gesamten Systems recht hoch sein würde.

Andrew: Wenn Sie einen Synchronisierungsdienst für ein solches Publikum erstellen, ist dies nicht sehr schwierig. Anfragen werden auf keinen Fall auf einmal fallen. Ja, die Last ist hoch, aber dies ist kein Notfall. Die Frage ist, ob es sich lohnt, Ressourcen und Zeit dafür aufzuwenden, wenn das Netzwerk plötzlich gelöscht wird. Wir waren uns nicht sicher, ob dies nicht passieren würde. Letztendlich hat alles funktioniert, zeitweise aufgrund der Last, aber es hat funktioniert, und wir haben den Zeitcode auf andere Weise synchronisiert. Es war eine der globalen Herausforderungen.



Herausforderungen bei der UX-Implementierung


Timecode ( Audioversion ) - 10:42



Andrew: Wir mussten auch berücksichtigen, dass das Stadion kein klassischer Konzertort ist, und die Systeme im Weltraum für mobile Geräte synchronisieren. Vor einiger Zeit wurde bei Eminem-Konzerten eine Geschichte mit Augmented Reality verletzt , dann gab es einen Fall mit Loboda.

Foto von Robert Bye (Unsplash.com)
Aber dies ist immer ein Erlebnis vor Ihnen - die ganze Menge ist der Szene zugewandt, die Synchronisation ist recht einfach. Im Fall des Stadions müssen Sie verstehen, auf welcher Seite Sie sich am Umfang befinden, in welcher relativen Position sich das Stadion in dem Raum befindet, der sich in der virtuellen Umgebung befindet. Es war eine saure Herausforderung. Sie haben versucht, es auf verschiedene Weise zu lösen, und wir haben einen genauen Überblick über das, was Loboda implementiert hat, aber nicht in allem.

Wir lassen den Benutzer entscheiden, wo er ist. Sie gestalteten das Stadion, in dem die Leute den Sektor, die Reihe und den Ort auswählten. All dies in vier "Klicks". Als nächstes mussten wir die Richtung zur Szene bestimmen. Zu diesem Zweck haben wir eine Silhouette gezeigt, wie eine Szene aus Benutzersicht aussehen sollte. Er kombinierte es, tippte und das war's - die Szene setzte sich. Wir haben versucht, diesen Prozess so weit wie möglich zu vereinfachen. Dennoch sind 90% der Zuschauer, die die Show sehen wollten, nicht die Leute, die Erfahrung mit Augmented Reality haben.

Dmitry: Gab es eine separate Bewerbung für dieses Projekt?

Andrei: Ja, die Anwendung für iOS und Android, die wir beiseite geschoben haben. Es gab eine separate Werbekampagne dafür. Es wurde zuvor ausführlich beschrieben, wie man herunterlädt und mehr.

Dmitry:Sie müssen verstehen, dass eine Person nirgendwo physisch überprüfen und lernen kann, wie eine solche Anwendung verwendet wird. Daher war die Aufgabe, das Publikum zu „trainieren“, kompliziert.

Andrew: Ja, ja. Mit UX haben wir viele Kegel gefangen, weil der Benutzer die Erfahrung mit drei Klicks machen möchte: heruntergeladen, installiert, gestartet, es hat funktioniert. Viele sind zu faul, um komplexe Tutorials durchzugehen, Schulungen zu lesen und vieles mehr. Und wir haben nicht versucht, dem Benutzer im Tutorial so viel wie möglich zu erklären: Hier wird ein Fenster geöffnet, hier wird auf die Kamera zugegriffen, sonst funktioniert es nicht und so weiter. Egal wie viele Erklärungen Sie schreiben, wie viel Sie im Detail kauen, welche GIFs Sie auch einfügen, die Leute lesen dies nicht.

In Minsk haben wir einen großen Feedback-Pool für diesen Teil gesammelt und für die Anwendung in Kasan bereits viel geändert. Wir sind dort nicht nur mit den Tonträgern und Zeitcodes gefahren, die einer bestimmten Episode von Augmented Reality entsprechen, sondern haben auch alle Tonträger und Zeitcodes vollständig übernommen. Die Anwendung hörte also, was zum Zeitpunkt des Starts geschah, und - wenn die Person zu diesem Zeitpunkt noch nicht eingetreten war - gab sie folgende Informationen aus: "Genosse, es tut mir leid, Ihre AR-Episode wird in 15 Minuten sein."



Ein wenig über die Architektur und den Ansatz zur Synchronisation


Timecode ( Audioversion ) - 16:37



Dmitry: Haben Sie sich immer noch für eine Synchronisation per Sound entschieden?

Andrei: Ja, es ist zufällig passiert. Wir haben die Optionen sortiert und sind auf eine Cifrasoft- Firma aus Ischewsk gestoßen . Sie sind nicht wirklich ausgetrickst, sondern ein eisernes SDK, mit dem Sie den Sound mit dem Timing nach Sound synchronisieren können. Das System wurde so positioniert, dass es mit dem Fernsehen funktioniert, wenn Sie etwas in der Anwendung ausgeben oder interaktive Inhalte zum Klang bedingter Werbung bereitstellen können.

Dmitry: Aber eines ist, dass Sie in Ihrem Wohnzimmer sitzen, und ein anderes ist ein Stadion mit mehreren tausend Plätzen. Wie haben Sie die Qualität der Tonaufnahme und deren anschließende Erkennung verwaltet?

Andrew:Es gab viele Ängste und Zweifel, aber in den meisten Fällen wurde alles gut erkannt. Sie erstellen mit ihren kniffligen Algorithmen Signaturen auf dem Soundtrack - die Gesamtsumme wiegt weniger als die ursprüngliche Audiodatei. Wenn das Mikrofon Umgebungsgeräusche hört, versucht es, diese Funktionen zu finden und die Spur daran zu erkennen. Unter guten Bedingungen beträgt die Genauigkeit der Synchronisation 0,1 bis 0,2 Sekunden. Das war mehr als genug. Unter schlechten Bedingungen betrug die Diskrepanz bis zu 0,5 Sekunden.

Viel hängt vom Gerät ab. Wir haben mit einer großen Flotte von Geräten gearbeitet. Für iPhones sind dies nur 10 Modelle. Sie funktionierten gut in Bezug auf Qualität und andere Eigenschaften. Aber mit Androiden ist der Zoo so, dass meine Mutter. Nicht überall stellte sich heraus, dass die Sound-Synchronisation funktionierte. Es gab Fälle, in denen auf verschiedenen Geräten neben verschiedenen Spuren aufgrund einiger Funktionen kein Hören möglich war. Irgendwo gehen niedrige Frequenzen weg, irgendwo beginnen hohe zu keuchen. Wenn das Gerät jedoch einen Normalisierer am Mikrofon hatte, funktionierte die Synchronisation immer.

Dmitry: Bitte erzählen Sie uns etwas über Architektur - was wurde im Projekt verwendet?

Andrew:Wir haben die Anwendung auf Unity erstellt - die einfachste Option in Bezug auf mehrere Plattformen und Grafiken. Gebrauchte AR Foundation. Wir sagten sofort, dass wir das System nicht komplizieren möchten, und beschränkten uns daher auf eine Flotte von Geräten, die ARKit und ARCore unterstützen, um Zeit zu haben, alles zu testen. Wir haben ein Plug-In für das Tsifirasoft SDK erstellt, es liegt bei uns auf GitHub . Wir haben ein Content-Management-System erstellt, damit Skripte auf einer Zeitachse ausgeführt werden.

Wir haben ein wenig am Partikelsystem herumgebastelt, da sich der Benutzer jederzeit in einer bestimmten Episode anmelden kann und von dem Moment an, in dem er synchronisiert hat, alles sehen muss. Basteln mit einem System, mit dem Skripte rechtzeitig klar abgespielt werden können, sodass ein dreidimensionales Erlebnis wie in einem Film hin und her gescrollt werden kann. Wenn es mit klassischen Animationen sofort funktioniert, musste ich an Partikelsystemen basteln. Irgendwann beginnen sie zu laichen, und wenn Sie sich irgendwo am Punkt des Laichens befinden, sind sie noch nicht geboren, obwohl sie zu sein scheinen. Aber dieses Problem ist tatsächlich leicht zu lösen.

Für den mobilen Teil ist die Architektur recht einfach. Für den Rundfunk ist alles komplizierter. Wir hatten Einschränkungen bei Eisen. Die Bedingung wurde vom Kunden festgelegt: „Hier haben wir so und so einen Eisenpark, grob gesagt, alles muss daran arbeiten.“ Wir haben uns sofort darauf konzentriert, dass wir mit relativ kostengünstigen Videoaufnahmekarten arbeiten werden. Aber Budget bedeutet nicht, dass sie schlecht sind.

Es gab eine Einschränkung hinsichtlich der Hardware, der Videoaufnahmekarten und der Arbeitsbedingungen - wie wir uns ein Bild machen sollten. Capture-Karten - Blackmagic Design, gearbeitet nach dem internen Schlüsselschema - In diesem Fall kommt ein Videorahmen von der Kamera. Die Karte hat einen eigenen Verarbeitungs-Chip, der auch einen Rahmen hat, der über den eingehenden gelegt werden sollte. Die Karte mischt sie - je mehr wir dort nichts berühren und den Rahmen der Videokamera nicht beeinflussen. Das Ergebnis über die Videoausgabe spuckt sie auf die Fernbedienung. Dies ist eine gute Methode zum Anwenden von Untertiteln und ähnlichen Dingen, eignet sich jedoch nicht sehr gut für Mixed-Reality-Effekte, da die Render-Pipeline viele Einschränkungen aufweist.

Dmitry: In Bezug auf Echtzeit-Computing, Objektbindung oder etwas anderes?

Andrew:In Bezug auf Qualität und Erzielung der gewünschten Effekte. Aufgrund der Tatsache, dass wir nicht wissen, worauf das Bild liegt. Wir stellen einfach Farb- und Transparenzinformationen über dem ursprünglichen Stream bereit. Einige Effekte wie Refraktionen, korrekte Transparenz und zusätzliche Schatten können mit einem solchen Schema nicht erzielt werden. Dazu müssen Sie alles zusammen rendern. Zum Beispiel funktioniert es in keiner Weise, um den Effekt einer Luftverzerrung durch ein Feuer oder durch heißen Asphalt zu erzielen. Gleiches gilt für die Übertragung des Transparenzeffekts unter Berücksichtigung des Brechungsindex. Wir haben den Inhalt zunächst auf der Grundlage dieser Einschränkungen erstellt und versucht, die entsprechenden Effekte zu verwenden.


Dmitry: Hattest du deine Inhalte zum ersten Projekt für die Europäischen Spiele?

Andrew: Nein, die Hauptphase der Inhaltsentwicklung waren die Jungs von Sechenov.com. Ihre Grafiker zeichneten grundlegende Inhalte mit Animationen und anderen Dingen. Und wir haben alles in den Motor integriert, zusätzliche Effekte hinzugefügt und so angepasst, dass alles richtig funktioniert.

Wenn wir über die Pipeline sprechen, haben wir für das Fernsehen alles auf Unreal Engine 4 gesammelt. Es fiel zusammen, dass sie gerade in diesem Moment begannen, ihre Werkzeuge für die gemischte Realität (gemischte Realität) zu erzwingen. Es stellte sich heraus, dass nicht alles so einfach ist. Alle Werkzeuge sind schon jetzt roh, wir mussten viel manuell fertigstellen. In Minsk haben wir an einer benutzerdefinierten Baugruppe der Engine gearbeitet, dh wir haben einige Dinge in der Engine neu geschrieben, damit wir beispielsweise Schatten auf reale Objekte zeichnen können. Bei dieser Version der Engine, die damals relevant war, gab es keine Funktionen, die dies mit Standardwerkzeugen ermöglichten. Aus diesem Grund haben unsere Jungs ihre kundenspezifische Montage vorgenommen, um alles zu liefern, was wichtig war.



Andere Nuancen und Anpassung an WorldSkills in Kasan


Timecode (für Audioversion ) - 31:37



Dmitry: Aber das alles in ziemlich kurzer Zeit?

Andrei: Die Fristen waren für das Kasaner Projekt , für Minsk - normal. Etwa sechs Monate bis zur Entwicklung, aber unter Berücksichtigung der Tatsache, dass sechs Personen beteiligt waren. Gleichzeitig machten sie den mobilen Teil, entwickelten Werkzeuge für die Teleproduktion. Es gab nicht nur eine Bildausgabe. Zum Beispiel ein Tracking-System mit Optik, dafür musste ein eigenes Toolkit erstellt werden.

Dmitry: Gab es eine Anpassung von einem Projekt an ein anderes? Für anderthalb Monate war es notwendig, Entwicklungen zu nutzen und das Projekt mit neuen Inhalten auf eine neue Site zu übertragen?

Andrew:Ja, es waren anderthalb Monate. Nach dem Minsker Projekt hatten wir einen zweiwöchigen Urlaub für das gesamte Team geplant. Aber unmittelbar nach der Schließung kommen die Jungs von Sechenov.com und sagen: "Nun, dann lass Kasan es tun." Wir haben es trotzdem geschafft, uns ein bisschen zu entspannen, sind aber schnell genug zu diesem Projekt gewechselt. Etwas auf der technischen Seite abgeschlossen. Die meiste Zeit wurde für Inhalte aufgewendet, weil wir es für WorldSkills komplett gemacht haben, nur mit dem Team des Regisseurs einverstanden. Es gab nur ein Drehbuch von ihrer Seite. Aber es war einfacher - es waren keine zusätzlichen Iterationen erforderlich. Wenn Sie den Inhalt selbst erstellen, sehen Sie sofort, wie er in der Engine funktioniert. Sie können ihn schnell bearbeiten und koordinieren.


Beim mobilen Teil haben wir alle Feinheiten berücksichtigt, die wir in Minsk hatten. Sie haben ein neues Anwendungsdesign erstellt, ein wenig Architektur überarbeitet, Tutorials hinzugefügt, aber versucht, es so kurz und klar wie möglich zu gestalten. Die Anzahl der Benutzerschritte vom Starten der Anwendung bis zum Anzeigen von Inhalten wurde reduziert. Eineinhalb Monate waren genug, um ein adäquates Projekt zu machen. Eineinhalb Wochen lang gingen wir zur Baustelle. Es war einfacher, dort zu arbeiten, da die gesamte Kontrolle über das Projekt in den Händen der Organisatoren lag und es nicht erforderlich war, sich mit anderen Ausschüssen abzustimmen. Es war immer einfacher in Kasan zu arbeiten und es war ganz normal, dass weniger Zeit blieb.

Dmitry: Aber Sie haben beschlossen, den Ansatz der Synchronisation so wie er war durch Ton zu belassen?

Andrew:Ja, wir sind durch den Ton gegangen. Es hat gut funktioniert. Wenn sie funktionieren, berühren Sie sie nicht. Wir haben nur die Nuancen der Soundtrack-Qualität berücksichtigt. Als sie die Einführung machten, gab es nur eine Trainingsepisode, damit die Leute es versuchen konnten, bevor die Show beginnt. Es war überraschend, dass Sie im Moment des Spielens eines Titels im Stadion, wenn es einen Applaussturm gibt, „live“, eine gute Synchronisierung auf diesem Titel ermöglichen. Wenn der aufgezeichnete Applaus jedoch in diesem Moment mit dem Titel gemischt wird, wird der Titel nicht mehr abgefangen. Diese Nuancen wurden berücksichtigt und der Klang war recht gut synchronisiert.

PS Im zweiten Teil der Ausgabe geht es um die wissenschaftliche Visualisierung von Daten, die Modellierung von Prozessen in anderen Projekten, die Spieleentwicklung und den Masterstudiengang „ Technologie für die Entwicklung von Computerspielen“.". Wir werden die Fortsetzung im folgenden Material veröffentlichen. Hier können Sie uns zuhören und unterstützen:






PPS In der Zwischenzeit zur englischen Version von Habr: Ein genauerer Blick auf die ITMO University .



All Articles