浅淡“冬奥运”开幕式“孩子和和平鸽”节目中的技术原理
本届冬奥运会开幕式上,节目中的高科技含量十足,但受大家一直追捧和津津乐道的节目一定是“孩子和和平鸽”。
因职业习惯,观看节目时,脑子里会思索孩子脚下如影相随的雪花是怎么实现的?
其难点在于孩子存在于真实世界,雪花存在于虚拟世界(电脑的世界,或数字化世界)。真实世界的孩子在跑动,虚拟世界的雪花能跟踪到真实世界里孩子的位置,这里涉及到两个维度空间中事物之间的联动和交互,似乎存在不小的难度。但是,在当代高科技技术支持下却能容易实现。
一维空间的实现
如果在电脑中摸拟一个“小孩子和雪花”相随的动画程序并不难,小孩子和雪花两者都存在于虚拟世界,在同一个维度空间中,稍有一点编程基础的便能实现。
其基本实现原理:
- 跟踪小孩子在运行环境中的坐标。
- 设置雪花的坐标为小孩子的坐标
- 动态(定时)刷新
如此,便能实现。原理是不是很简单,如同晚饭后遛狗一样,主人走一步,小狗走一步。
如果动画中只有一个孩子一朵雪花,其实现的难度应该是课后作业级别的。即使增加了很多小孩子,每一个小孩子在运动过程中,其脚下都会有一些雪花,实现思路和前面原理也差不多,只是会多一些运算量,需要计算所有孩子的坐标,并为每一个孩子创建一些雪花并移动小孩子的脚下。
所以在整个实现过程中有两个关键点:
- 第一关键点就是动态的问题,需要动态、随时获得到小孩子坐标。
- 第二关键点就是坐标替换的问题,用小孩子的坐标替换雪花坐标。
二维空间的实现
现在假设把小孩子从虚拟世界移到了真实世界,其问题的解决思路其实不会发生变化。但是,维度空间增加会导致事物之间产生关联变得很难,如同通灵一样。
如果仅仅只是单纯站在个自维度空间计算各自的值并不难。
- 真实世界中,计算小孩子坐标时,可以设置一个参考值,如以屏幕的左上角或其它位置做为参考原点,只要有参考值,获得小孩子坐标的问题但能解决。
- 虚拟世界中,创建雪花,或让雪花移动,并出现在小孩子脚下的屏幕中,这也不难。
但是,如果要让虚拟世界中的雪花跟着真实世界中的小孩子跑,其最大的难度便是要把小孩子的坐标传递到虚拟世界。
解决这个问题是不是很难?
其实数字化真实世界中的数据并不难。我们每天都在数字化真实世界中的数据如:自拍、寻入文字、视频对话、录播课程……等等,这一系列过程都是在把现实世界的数据数字化到计算机中。
数字化不难是因为计算机里有对应的硬件设备帮我们完成这件事情,手机或电脑中有键盘帮我们录入文字,有摄像头来把我们倩丽的身影录入计算机……
所以,要把孩子们的坐标传递到虚拟世界,则需要数字化设备。
这种设备需要满足下面几个条件:
- 能捕足到人物(孩子们),因若大的舞台上有各种形形色色的物体,此设备应该能自动区分孩子和其它物体。
- 能快速跟踪人物(孩子)的运动,并能计算孩子的坐标,并数字化后存储至虚拟世界。
- 及时响应
第一个问题已经不是问题,人脸识别、人物识别技术已经非常成熟,如我们使用的手机中的摄像机都会此功能,只要提供一台具有人物识别功能的摄像机就能解决这个问题。
可能较难的应该是第二个问题:如何计算孩子在当前舞台上的坐标,对于这个问题的解决方案,个人会有几个想法,当然真正的实现肯定更智能。
1、在捕获人物时,同时捕获整个有效舞台(也就是孩子脚下LED屏幕的大小),这样就能很方便的计算出孩子在舞台中的位置。理论上讲,在程度建模时,虚拟世界中一定有真实世界里LED屏幕的大小信息。
2、使用成像时间长短计算出孩子们的位置。
只要能捕获到真实世界里孩子的坐标,并能输入至雪花创建程度中,就能实现真实与虚拟的联动,冬奥运上使用了专业的工业摄像机完成此事。
结束语
从原理上讲其实很简单,但当空间发生了变化,维度上升后,以及需要快速定位时,难度系统便会以系数级别增加,包括数据量的成倍增加、传输通道要求也会更高,大量数据的处理及处理器运算要求也大到惊人。所以古人云:站着说话都不腰痛。原理说起来,大家都知道,但是实现过程不易。
猎奇的驱使下,偶有所思!行文记录。