李北辰/

王尔德说:我们生活在阴沟里,却仍有人仰望星空。如今,这句感叹依旧代表某种程度的正确,但这位19世纪的英国绅士有所不知:在一百多年后的东方“帝都”,当困于阴沟中的年轻人们试图仰望星空,星空却斑斓不再,抬头所见,唯有隔三差五做客的雾霾君。

城市的膨胀为星空蒙上一层桎梏,面对于此,技术可以做些什么?以盛产“黑科技”闻名的微软研究院给出了一个奇幻的答案:透过一架由大数据拼接起来的虚拟望远镜——万维天文望远镜(WorldWide
Telescope,WWT),将这片璀璨的星空整个虚拟化,之后装进你的电脑里——嗯,王尔德老师听到后估计整个人都不好了。

事实上,如同人类各方面数据的井喷,在并不漫长的岁月里,科学数据同样发生了爆炸式增长。数十年来,人类用自己眼睛的延伸——望远镜,勾勒出了一幅庞大的“数字天空”,这促生了全新的知识发现模式,科学资源的利用和管理也愈加有赖于信息化技术和手段,而虚拟天文望远镜即是人类为应对海量数据下天文学研究所面临的挑战,提出的一套解决方案。

在不少人眼中,无论对于专业学者还是爱好者,亦或是任何一个对星空饱含敬畏之心的人来说,天文学的数字化都是一次巨大的转折和契机。毕竟,星空近在眼前,却也无远弗届,当技术还无法让头顶的星星变亮,至少可以让它换一种姿势带你去向更远方。

数字宇宙

那么万维天文望远镜(WWT)究竟是个啥?简单而言,它本质上是资源的再次融合,WWT借助庞大的数据库,利用图像和可视化技术,将这个世界上各大知名天文望远镜——如美国宇航局(NASA),哈勃空间望远镜(HST),斯隆数字化巡天(SDSS)和钱德拉X射线天文台,以及普通天文爱好者拍摄的照片和观测数据,通过微软的一套视觉体验引擎(Visual
Experience
Engine,VEE),加工处理为一个统一的“无缝数字宇宙”。用户只需轻滑鼠标,便能够“操纵”一台漫无边际的虚拟望远镜。你可以如同魔毯一般,平移或缩放星空,在地球、行星、太阳系、星空之间完成虚拟世界的星际穿越。

除此之外,WWT还提供了一个交互式知识共享和学习环境,用户只要点击鼠标,便可以与自己感兴趣的那个目标相关的信息资料产生联系。更具个性化的是,WWT

还配备了注解、动画、旁白和配乐等功能,这意味着,每位用户可以在虚拟宇宙之中叙述一个自己虚构出来的故事,并可与他人分享,或者下载别人制作的故事。

另外,微软亚洲研究院学术合作部经理吴国斌向《时间线》介绍,WWT还可以与微软其他的“黑科技”产生连接——譬如体感设备Kinect,据说借助后者,用户通过手势即可缩放、翻转、移动WWT的视角,在一定程度上完成数字宇宙的斗转星移。

嗯,听起来蛮炫酷,但事实上,WWT已经算是技术世界的一位长者了。早在2008年5月,微软就正式对外免费发布了WWT。而倘若追溯这项技术的源头,还要回到更加遥远的1993年,这一年,一位叫做Curtis
Wong
的开发者参与了一项名为John
Dobson's
Universe的国家级项目,旨在以故事驱动的方式探索宇宙,并以CD-ROM光盘的形式展示给公众,但遗憾的是,该项目半路夭折。

转眼到了2002年,Curtis
Wong
进入微软研究院工作,并结识了著名数据库专家,也是图灵奖获得者Jim
Gray
。Jim是首批意识到大数据将会对人类科学研究产生重大影响的人之一,并使用庞大的天文数据集与可视化技术进行合作(关于Jim
Gray
,他有一个伤感却又传奇的人生结尾:2007年,Gray独自航向法拉伦岛,目的是将母亲的骨灰洒向大海,但他的船却失踪了,至今杳无音讯,这个一生都致力于将人与人连通起来的天才就此与所有人失去了联系)。遇到Jim
Gray
之后,Curtis
Wong
认为这是一个圆他多年天文梦想的机会——不仅是图像的简单集合,而是给每一个孩子一个可视化的宇宙。

转眼又过三年,Curtis
Wong
招募了软件工程师亦是天文爱好者的Jonathan
Fay
,Jonathan曾从事过利用浏览器开发天体3D地图——如月亮和火星的研究,Curtis认为这项研究可以应用于他心中幻想的终极虚拟望远镜,组织并可视化天文数据,同时提供可互动的故事化叙事能力——事实上,用天上的星星讲故事,一直就是Curtis
Wong
的少年之梦,在洛杉矶长大的他,儿时就时常会仰望星空,遐想跨越星星之间的奇妙旅程。

WWT在中国

在地球的另一端,中国河北省高阳县东绪口村——华北平原上一个很难在地图上寻觅到的小村庄,还是少年的崔辰州也沉迷于仰望这同一片星空。他从小学自然课本中接触到贫瘠的天文学知识,但在更为贫瘠的农村,热爱星空的唯一方式就是用肉眼看看它,直到上大学之后,崔辰州才接触到天文望远镜,而凭借对于天文学的天分和勤奋,他最终在国家天文台找到了一份“与星星距离最近”的工作。

或许是感同身受,年少的经历让崔辰州意识到:在中国,有许多内心“不安分”的孩子对星空充满好奇,渴望深入了解头顶上的一片未知,却最终难以如愿。“以前主要受制于家境贫寒,观测器材贫乏,现在则更多因为城市光污染和严重雾霾。”崔辰州告诉《时间线》记者。

种种机缘,当WWT在美国一经发布,已加入国家天文台的崔辰州就开始与微软研究员进行联系,并撰写文章,将这一当时陌生的技术介绍给中国天文学界。“除了美国本土之外,中国基本上跟进是最紧的。”谈及于此,崔辰州显得颇为自豪。

而在这位“收集过三百多款天文软件”的行家眼中,“之前的这些软件大多都有一个共同问题,由于要发行和下载,数据都太小了,最多也就是一张CD或者DVD,而WWT目前下载也就一百兆左右,但背后数据可以说是无穷无尽,现在WWT只是一个客户端,或者说只是一个用户界面,真正的资源存在‘云’里。”​

带着这份欣喜,以及对WWT在中国生根的期许,2008年11月3日,在微软亚洲研究院十周年庆典上,中文版WWT
首次亮相。

事实上,在不少接触过WWT的人眼里,它也许只是一款天文软件,但在崔辰州看来,WWT真正的“威力”是其可驱动球幕的特性——用户可以将自己编写的宇宙故事投射在球幕上——嗯,一种另类、非大众化的硬软件结合方式。

2012年春天,在参观重庆石新路小学时,崔辰州无意中发现,一座闲置建筑具备改造成WWT互动式天象厅的绝佳条件。吴国斌也向记者表示:“如果是传统天象厅的话,造价可能是几百万上千万的规模,如果基于WWT做数字天象厅,造价一下子就下来了。”于是,崔辰州抓住这灵光一现的念头,经过与相关部门和微软研究院的合作,一年多之后,中国首个WWT驱动天象厅在石新路小学揭幕,这一由6个高分辨率投影仪供应的8米高圆顶设备,可以让学生身临其境地在天象厅中观测和学习天文知识,而且有机会亲手制作展示内容,将自己构建的小小太空故事,勾画在穹顶之上,讲给其他小伙伴听。“有几个同学仅花了不到3天时间就做出一个不错的月球漫游,其中还提到已经升空的嫦娥三号。”崔辰州告诉《时间线》,“我们也正在努力建设一个WWT的生态系统,比如在过去几年做过很多次的教师培训,通过教师又培养了很多学生,也在做相关课程的开发,希望这是一个良性循环,用户越来越多,需求越来越大,软件开发和资源建设都会相互促进。”

除此之外,吴国斌则向《时间线》透露:2015年,WWT也许将成为一个真正的开源社区。毕竟,哪怕面对的是一个虚拟化的浩荡星辰,凭借一个公司或者极少数开发者的力量非常有限,倘若放在社区里,让更多专业天文学者和爱好者贡献资源,无疑会对软件的开发大有裨益——要知道,开源似乎已不再是一种理论,而更像是世界运行的一种方式,它也同样适用于人类的“虚拟星空”大业。

好吧,那么问题来了:将这片星空虚拟化,让更多的孩子打破各种现实的枷锁,全方位的了解宇宙究竟意味着什么?毕竟包括微软和Google在内的IT巨头都在干这件事。

先不扯哲学。记得科幻作家刘慈欣曾一针见血地指出:如今IT技术的迅猛发展,造成了一种人类各方面都在进步的假象:“事实上,人类在除IT以外的其他技术领域,自上世纪60年代以来并无太多突破性的进展,这在航天领域尤其明显,在阿波罗登月以后的几十年,航天技术的大部分基础技术方面都无重大突破,只是在原有基础上修补完善。”

嗯,就像互联网掩盖了人类其他领域技术进步缓慢一样,在更为现实的意义上,倘若更多孩子的电脑里除了Facebook和Twitter——这些局限于人与人相互连接的应用之外,也能有一些包括WWT和GoogleSky在内的能与更为广阔事物相连接的应用——换句话说,当孩子们轻点鼠标,去向的除了好友页面,也可以是另一个星球,想必也是极好的,而这件事由IT巨头们牵头,也是再合适不过了。​

------------------------------------------------------------------------------------------

欢迎关注

微软亚洲研究院官方网站:http://www.msra.cn

微软亚洲研究院人人网主页:http://page.renren.com/600674137

微软亚洲研究院微博:http://t.sina.com.cn/msra

微软亚洲研究院微信:搜索“微软研究院”或扫描下方二维码​:​

《时间线》:WWT 数字宇宙,虚拟星空的更多相关文章

  1. 设计Twitter 时间线

    「design Twitter」是 LeetCode 上第 335 道题目,不仅题目本身很有意思,而且把合并多个有序链表的算法和面向对象设计(OO design)结合起来了,很有实际意义,本文就带大家 ...

  2. WPF中的动画——(三)时间线(TimeLine)

    WPF中的动画——(三)时间线(TimeLine) 时间线(TimeLine)表示时间段. 它提供的属性可以让控制该时间段的长度.开始时间.重复次数.该时间段内时间进度的快慢等等.在WPF中内置了如下 ...

  3. virtualbox安装增强功能时【未能加载虚拟光盘】

    virtualbox安装增强功能时[未能加载虚拟光盘] 今天在使用Virtualbox中的Ubuntu虚拟机,想安装增强功能来实现更改分辨率,但是在安装时出错:未能加载虚拟光驱 VBoxsGuestA ...

  4. 写css时要注意数字的浮动方向

    写css时要注意数字的浮动方向  当数字位数增加时他的方向才是正确的 text-align:right;padding-right:29px;

  5. postgreSQL 时间线

    “时间线”(Timeline)是PG一个很有特色的概念,在备份恢复方面的文档里面时有出现.但针对这个概念的详细解释却很少,也让人不太好理解,我们在此仔细解析一下. 时间线的引入 为了理解引入时间线的背 ...

  6. ANDROID_MARS学习笔记_S04_007_从服务器获取微博数据时间线

    一.代码 1.xml(1)activity_main.xml <?xml version="1.0" encoding="utf-8"?> < ...

  7. SpriteBuilder中时间线播放音效的弊端

    当你美滋滋的在时间线中播放音效的时候,你要想到音效时间线并不适于播放同步于游戏事件的声音,比如碰撞和加速时. 它同样不能被用来播放背景循环的声音,这就本质上拒绝了通过timeline播放背景音乐.甚至 ...

  8. 如何解决Angular网页内嵌推特时间线无法正常显示

    我最近解决了一个折磨了我好久但是解决方法却只是添加两三行代码的问题.我没有在网上找到合适的解决方案,最后是我根据官方网站和很多的帖子里的部分代码得到的启发,尝试了很久之后得到的解决方法.因为过程实在是 ...

  9. PowerBI功能发布时间线

    DAX/PowerBI系列 - PowerBI功能发布时间线 PowerBI从GA/上线以来,每月发布的功能收集起来做成了一个报表:(耐心等待PowerBI 出来,噔噔噔噔~~~) 上图显示: 1)D ...

随机推荐

  1. 异常依然执行{try..catch语句块..}的后续代码

    测试异常依然执行{try..catch语句块..}的后续代码: private static Integer testThrows() throws Exception{ Integer result ...

  2. PHP静态方法和普通方法的区别

    <?php header('content-type:text/html;charset=utf-8'); /* 普通方法,存放类内,只有一份 静态方法,也是存放于类内,只有一份 区别在于:普通 ...

  3. php list的用法

    <?php $my_array = array("Dog","Cat","Horse"); list($a, $b, $c) = $m ...

  4. [Algo] 646. Store Number Of Nodes In Left Subtree

    Given a binary tree, count the number of nodes in each node’s left subtree, and store it in the numN ...

  5. Graph & Tree2

    续https://www.cnblogs.com/tyqtyq/p/9769817.html 0x65 负环 SPFA 当一个节点入队次数到达N的时候,就说明有负环 或者记录最短路包含的路径条数 还有 ...

  6. zxing生成二维码转base64 img直接显示 Image对象转Base64码(java)

    public static String encodeToBase64(String content){ MultiFormatWriter multiFormatWriter = new Multi ...

  7. gcc xx -o xx

    GCG -o选项用来指定输出文件,它的用法为: [infile] -o [outfile] [infile] 表示输入文件(也即要处理的文件),它可以是源文件,也可以是汇编文件或者是目标文件:[out ...

  8. requset请求处理与BeanUtils封装

    HTTP: 概念:Hyper Text Transfer Protocol 超文本传输协议 传输协议:定义了,客户端和服务器端通信时,发送数据的格式 特点: 基于TCP/IP的高级协议 默认端口号:8 ...

  9. 让几个横向排列的浮动子div居中显示的方法

    div设置成float之后,就无法使子div居中显示了,那么如何让几个横向排列的浮动的div居中显示呢,下面有个不错的方法,希望对大家有所帮助 div设置成float之后,在父div中设置text-a ...

  10. mysql查看变量

    在MySQL客户端执行如下命令查看MySQL的数据存放位置: show global variables like "%datadir%"; 查看端口号 show global v ...