ITMO Research_ podcast:如何在整个体育场馆规模上实现AR内容与表演的同步

这是我们的计划(Apple PodcastsYandex.Music第二次面试的文字记录的第一部分发行嘉宾-Andrey Karsakovkapc3d),博士,美国国家认知发展中心高级研究员,数字转换系副教授。

自2012年以来,Andrey一直在可视化和计算机图形学科学小组工作。他在州和国际一级从事大型应用项目。在对话的这一部分中,我们谈论他在大规模事件的AR伴奏中的经历。


图片ThisisEngineering RAEng(Unsplash.com)



项目背景和目标


时间码(音频版本)-00:41



德米特里·卡巴诺夫我想从欧洲运动会项目开始。它是由多个部分组成的,几个团队参与了准备工作,在体育场活动期间为数千名观众提供增强现实是一项相当艰巨的任务。就您的参与而言,该软件是否排在首位?

kapc3d是的,我们在演出期间制作了软件,并提供了伴奏。有必要实时监视,监视和启动所有内容,并与电视小组合作。如果从整体上考虑该项目,我们可以谈谈在明斯克举行的欧洲运动会的开幕式和闭幕式,以及在喀山举行的世界技能大赛的开幕式。这是相同的工作计划,但活动不同。他们之间有两个月的差距。我们与Sechenov.com的人员一起准备了该项目

科学节上偶然碰到他们这发生在2018年秋天我们的大学生展示了他们关于VR的课程项目。这些家伙走近我们,问我们在实验室里做什么。它看起来像这样:

-因此您正在使用VR,但是您能够使用增强现实吗?

“好吧,是的。”

-有这样的任务,有介绍性的任务。你可以做到吗?


我们挠了一下萝卜,似乎没有什么不真实的:

-让我们尝试事先研究所有内容,然后我们将找到一个解决方案。

德米特里:他们只处理媒体支持吗?

安德鲁:堆满一堆。从管理和组织的角度来看,他们完全致力于导演,登台,场景选择,物流和其他技术支持。但是他们想为欧洲运动会做些特别的事情。这些特殊效果,例如混合现实,已经在电视上使用了很长时间,但是就技术实施而言,它们并不是最预算的。因此,这些家伙正在寻找替代品。

德米特里:让我们详细讨论这个问题。她是怎么样的一个人?

安德鲁:有一个事件。持续一个半小时。必须确保观看现场直播的观众和坐在体育场内的观众能够在现场和现场时间与地点完全同步的情况下,观看增强现实的效果。

有许多技术限制。通过Internet进行时间同步是不可能的,因为人们担心网络上的摊位过多会给人们带来负担,而且担心国家元首会参加该活动,因此移动网络可能会阻塞。

Andrey Karsakov,来自ITMO大学材料的照片
我们拥有该项目的两个关键部分-人们可以通过移动设备获得的个人体验,以及体育场本身的电视广播和信息屏幕上显示的内容。

如果一个人突然通过移动设备观看增强现实的情节并同时击中屏幕,则他应该看到相同的图片。

我们需要两个实际上不同的系统来完全及时地进行同步。但是,此类节目的独特之处在于它们是复杂的事件,涉及大量技术服务,并且所有操作均根据时间码执行。时间码是事物开始的特定时间点:光线,声音,人离开,打开舞台花瓣等。我们必须适应该系统,以便一切都在正确的时刻开始。另一个功能是增强现实的场景和情节在风景上联系在一起。

德米特里:但是,由于不可抗力的高风险,您还是决定放弃使用时间码,还是您最初计算了一些功率特性并意识到整个系统的负载会很高?

安德鲁:如果您为此类受众群体提供同步服务,那么并不是很难。无论如何,请求不会一次落空。是的,负载很高,但这不是紧急情况。问题是,如果网络突然熄灭,是否值得花费资源和时间在上面。我们不确定这是否会发生。最终,一切都因负载而断断续续地起作用,但是它起作用了,并且我们以不同的方式使用时间码进行了同步。这是全球挑战之一。



UX实施挑战


时间码(音频版本)-10:42



安德鲁:我们还必须考虑到体育场不是经典的音乐会场馆,并且要同步移动设备在太空中的系统。因此,前一段时间,阿姆(Eminem)演唱会侵犯了一个具有增强现实故事,然后罗伯达(Loboda)发生了一起案件。

摄影:Robert Bye(Unsplash.com)
但这始终是您的体验-整个人群都面对着场景,同步非常简单。对于体育场,您需要了解相对位置在圆周的哪一侧,以便体育场位于虚拟环境中的空间中。这是一个艰巨的挑战。他们试图以各种方式解决该问题,但我们与Loboda所实施的方案很接近,但并非在所有方面都如此。

我们让用户决定他在哪里。他们对体育场进行了布局,人们在其中选择了扇区,行,位置。所有这四次“点击”。接下来,我们必须确定场景的方向。为此,我们从用户角度显示了场景的轮廓。他结合起来,点击,就是这样-现场坐了下来。我们试图尽可能简化此过程。尽管如此,仍有90%的观众想要观看节目,而不是拥有增强现实经验的人。

德米特里:这个项目有单独的申请吗?

Andrei:是的,我们将iOS和Android的应用程序推到了一边。有一个单独的促销活动。前面已经详细描述了如何下载以及更多。

德米特里:您需要了解,一个人无处可以实际验证和学习如何使用此类应用程序。因此,“培训”受众的任务很复杂。

安德鲁:是的,是的。借助UX,我们获得了很多好处,因为用户希望通过单击三下鼠标来获得体验:下载,安装,启动,运行正常。许多人懒得阅读复杂的教程,阅读培训等等。而且,我们并未尝试在本教程中尽可能多地向用户解释所有内容:将在此处打开一个窗口,在此处访问摄像头,否则它将无法正常工作,依此类推。无论您撰写了多少说明,您仔细咀嚼了多少,无论您插入什么GIF,人们都不会读到。

在明斯克,我们为此部分收集了一个庞大的反馈池,并且我们已经为喀山的应用程序进行了很多更改。我们不仅驱使着那些与增强现实的特定情节相对应的唱片和时间码,而且还完全采用了所有唱片和时间码。因此,应用程序听到了启动时发生的情况,并且-如果该人员当时尚未进入-它将发出信息:“同志,很抱歉,您的AR集会在15分钟内出现。”



有关同步的体系结构和方法的一些知识


时间码(音频版本)-16:37



德米特里:还决定通过声音进行同步吗?

安德烈:是的,这是偶然发生的。我们对这些选项进行了排序,发现了来自Izhevsk Cifrasoft公司。它们并没有真正被欺骗,而是一个钢铁般的SDK,它使您可以将声音与声音逐个同步。当您可以在应用程序中输出内容或根据条件广告的声音提供交互式内容时,该系统可以与电视配合使用。

德米特里:但是一件事是你坐在客厅里,另一件事是一个数以千计的体育场。您如何管理录音质量及其后续识别?

安德鲁:有许多恐惧和疑虑,但在大多数情况下,一切都被公认。他们使用棘手的算法在音轨上建立签名-总重量小于原始音频文件。麦克风收听环境声音时,它将尝试查找这些功能并通过它们识别音轨。在良好条件下,同步精度为0.1-0.2秒。这绰绰有余。在恶劣的条件下,差异最长为0.5秒。

在很大程度上取决于设备。我们使用了大量的设备。对于iPhone,这些只是10种型号。他们在质量和其他功能方面表现出色。但是有了机器人,动物园就和我妈妈一样。并非到处都可以证明声音同步有效。在某些情况下,除了音轨不同之外,在其他设备上,由于某些功能而无法听到。低频消失的地方,高频开始的喘息。但是,如果设备在麦克风上具有标准化器,则同步始终有效。

德米特里:请向我们介绍一下架构-该项目中使用了什么?

安德鲁:我们在Unity上开发了该应用程序-就多平台和图形而言,这是最简单的选择。二手AR Foundation。我们立即说我们不想使系统复杂化,因此我们将自己限制在支持ARKit和ARCore的设备中,以便有时间测试所有内容。我们为Tsifirasoft SDK创建了一个插件,该插件位于GitHub上。我们制作了一个内容管理系统,以便脚本可以在时间轴上运行。

我们对粒子系统进行了一些修改,因为用户可以在特定情节的任何时间登录,并且他需要从同步的那一刻开始查看所有内容。修补系统可以及时清晰地播放脚本,从而可以像在电影中那样来回滚动三维体验。如果它可以与经典动画一起使用,那么我就不得不修改粒子系统。在某个时候,它们开始产卵,如果您发现自己已经产卵,那么它们似乎还没有出生。但是,实际上,这个问题很容易解决。

对于移动部分,架构非常简单。对于广播,一切都更加复杂。我们对铁有限制。客户设定的条件是:“在这里,我们有这么一个铁公园,大致来说,一切都需要在上面进行。”我们立即将重点放在我们将使用相对低成本的视频捕获卡这一事实上。但是预算并不意味着它们不好。

硬件,视频采集卡和工作条件都受到限制-我们应该如何获取图片。采集卡-Blackmagic Design,根据内部抠像方案工作-这是当视频帧来自相机时。该卡具有其自己的处理芯片,该芯片还具有一个框架,该框架应叠加在传入卡的顶部。卡片将它们混合在一起-我们在此处碰到的东西越多,并且不会影响摄像机的帧。通过视频输出的结果,她吐在遥控器上。这是应用字幕和其他类似内容的好方法,但由于渲染管线有很多限制,因此它不太适合混合现实效果。

德米特里:在实时计算,对象绑定或其他方面?

安德鲁:在质量上达到预期的效果。由于我们不知道是什么覆盖了图像的事实。我们仅在原始流的顶部提供颜色和透明度信息。这种方案无法实现某些效果,如折射,正确的透明度,其他阴影。为此,您需要将所有内容一起渲染。例如,它不会以任何方式使火或热沥青造成的空气变形产生影响。考虑到折射率,透明效果的透射也相同。我们最初是根据这些限制制作内容的,并尝试使用适当的效果。


德米特里:您对欧洲运动会的第一个项目有满意的内容吗?

安德鲁:不,内容开发的主要阶段是来自Sechenov.com的人员。他们的美术师用动画和其他东西来绘制基本内容。然后,我们将所有内容集成到引擎中,添加了其他效果,对其进行了调整,以使所有内容都能正常运行。

如果我们谈论管道,那么对于电视,我们收集了虚幻引擎4上的所有内容。碰巧的是,就在那时,他们才开始为混合现实(混合现实)提供工具。事实证明,一切都不是那么简单。即使到现在,所有工具还是原始的,我们不得不手动完成很多工作。在明斯克,我们研究了引擎的自定义装配,也就是说,我们重写了引擎内部的某些内容,以便例如可以在真实对象之上绘制阴影。在当时相关的那个版本的引擎上,没有允许使用标准工具完成此功能的功能。因此,我们的员工进行了自定义组装,以提供至关重要的一切。



喀山的其他细微差别和对WorldSkills的适应


时间码(音频版本)-31:37



德米特里:但这一切都在很短的时间内完成了吗?

安德烈(Andrei):截止日期是喀山项目的时间,明斯克是正常的。大约需要六个月的开发时间,但要考虑到涉及六个人的事实。同时,他们制作了移动部分,开发了用于电视节目制作的工具。不仅有图片输出。例如,一个带有光学系统的跟踪系统,为此必须自己制作工具箱。

德米特里:从一个项目到另一个项目是否有改编?有一个半月的时间,有必要利用开发优势并将具有新内容的项目转移到新站点吗?

安德鲁:是的,这是一个半月。明斯克项目结束后,我们为整个团队计划了两个星期的假期。但是,在关闭之后,来自Sechenov.com的家伙马上说:“好吧,让喀山去做。”我们仍然设法放松了一下,但是足够快地切换到了这个项目。在技​​术方面完成了一些工作。大部分时间都花在内容上,因为对于WorldSkills,我们完全做到了这一点,只是与导演团队达成了一致。他们只有一个剧本。但这更容易-不需要额外的迭代。当您自己编写内容时,您会立即看到它在引擎中的工作原理,可以快速进行编辑和协调。


在移动部分,我们考虑了在明斯克拥有的所有微妙之处。他们进行了新的应用程序设计,对体系结构进行了一些修改,添加了教程,但试图使其尽可能简短。从启动应用程序到查看内容的用户步骤数量减少了。一个半月足以完成一个足够的项目。一个半星期我们去了现场。在这里工作更容易,因为对项目的所有控制权都在组织者的手中,因此不必与其他委员会进行协调。在喀山工作变得越来越容易,而且时间少是很正常的。

德米特里(Dmitry):但是您决定放弃声音同步的方法了吗?

安德鲁:是的,我们离开了声音。运行良好。正如他们所说,如果有效,请勿触摸。我们只是考虑了音轨质量的细微差别。当他们做介绍时,只有一个培训插曲,所以人们可以在节目开始前尝试一下。令人惊讶的是,当在体育场上播放曲目时,响亮的掌声“现场”时,系统允许您在该曲目上很好地同步,但是如果此时录制的掌声与曲目混在一起,则该曲目不再被捕捉。考虑到这些细微差别,声音同步得很好。

PS在本期的第二部分中,我们讨论的是数据的科学可视化,其他项目中的流程建模,游戏开发以及硕士课程“ 计算机游戏开发技术””。我们将在以下材料中发布续集。您可以在此处收听和支持我们:






PPS同时,在Habr的英文版上:仔细阅读ITMO University



All Articles