APP下载

增强现实技术在校史馆建设中的应用

2019-04-20郭仁春钱子扬玉锦宏霍西宝

沈阳化工大学学报 2019年1期
关键词:校史馆建筑物现实

郭仁春, 钱子扬, 玉锦宏, 霍西宝

(沈阳化工大学 信息工程学院, 辽宁 沈阳 110142)

AugmentedReality,简称AR,即增强现实技术,是一种实时计算摄影机影像的位置及角度并加上相应图像、视频、3D模型的技术[1-2].这种技术可以在屏幕上把虚拟世界套在现实世界中并进行互动[3].

校史馆是陈列学校发展历史、展示学校办学过程和不同时代学校面貌的场馆,校史馆可以用来对外参观、对新生进行宣传,是展示校园文化的重要窗口[4-8].

本文使用Unity 3D与Vuforia结合的方式实现AR技术构建虚拟校史馆[9].当人们参观校史馆的时候,只需要拿起手机扫描一下馆内的宣传图,在手机屏幕上就可以获得图片的三维立体模型,了解建筑物的三维信息[4].通过点击手机屏幕的各种功能按钮,实现模型的旋转、缩放、复位等系列操作.给参观者提供了更好的视觉体验,使得校史文化更深入人心.

1 校史馆功能和虚拟校园的三维建模

如图1所示为沈阳化工大学的校史馆,场馆中间是沙盘模型,墙壁上是校史介绍文字和校园

风光、知名校友照片.风光照片包括教学楼、大门、图书馆等建筑物.但由于墙上所展示的只是建筑物的二维照片,为进一步了解该建筑物的整体结构,就需要建立建筑物三维模型.

通过3D Max对校园的建筑物进行建模,制作完成的模型包括校图书馆、大学生活动中心以及体育馆等,相关模型如图2所示.模型建好之后,导出为FBX文件.

打开Unity 3D软件,将已经建好的FBX文件导入到虚拟场景中.

2 Vuforia识别图

高通公司旗下的Vuforia是一个增强现实(AR)移动视觉平台,Vuforia对移动设备提供AR技术所需的识别图的软件开发工具包.用户可以将所需图片上传到Vuforia官网,通过图像处理技术生成一种识别图.Vuforia对该识别图进行图像特征提取和存储,并以数据形式提供给客户.当将这些识别图导入Unity引擎中后,通过一定的编程手段可以生成基于AR技术的App程序.用户的手机运行这种App后,可以用手机扫描现实场景,当现实场景的图像与Vuforia识别图的特征相匹配之后,就可以激活相应的虚拟场景,例如,在屏幕上出现虚拟的三维图书馆.

以校史馆墙壁上的展图作为识别图,图3是校史馆墙上的照片.

将所需要的识别图上传至Vuforia官网,并下载与其对应的unitypackage,这个unitypackage包含识别图的特征信息数据.识别图的实现过程如下:首先登陆Vuforia官网(http://developer.vuforia.com),并选择develop中的License Manager,点击Add License Key,以添加新的工程,拷贝密匙.选择develop中的Target Manager,创建识别图数据库.然后添加识别图,Type选择Single Image.最后下载网站生成的unitypackage,这个工具包就可以作为特征识别图来使用.

3 AR技术的实现

在校史馆中实现增强现实技术的主要任务是开发一个可以在手机上运行的App,这个程序运行之后,通过手机上的摄像头拍摄校史馆墙上的照片,然后在手机屏幕上显示出来建筑物的三维效果,通过手触可以实现三维建筑物的缩放,旋转等全方位观看.

整个程序的开发是在Unity 3D游戏引擎中实现的,采用C#程序作为脚本语言.开发步骤主要包括模型导入、场景组建、UI界面、图像识别和触屏操作等功能.

首先将在3D Max中创建的模型导入到Unity 3D中,完成场景建设.场景建设步骤:新建Unity 3D工程,导入识别图的unitypackage,删除Unity 3D默认的Main Camera,添加Vuforia中的AR Camera以及ImageTarget.将之前拷贝的密匙输入AR Camera中的App License Key中,在DatabaseLoadBehaviour脚本中勾选加载工程,再勾选Active.将导入的建筑物模型放入ImageTarget下.在ImageTarget中的ImageTargetBehaviour脚本中选择对应的识别图,每个识别图对应不同的建筑物.通过这些步骤无需手工编写代码就能自动实现图像识别和模型显示.

程序运行后,将摄像头对准校史馆墙上的展示照片,当摄像头在一定的角度和位置之上,摄像所形成的图像与程序中的特征识别图相匹配之后,就可以激活App中的AR Camera,在屏幕上可以看到虚拟的3D建筑物,达到了虚实结合的效果.

为了对建筑物有更多的操作,手机应用程序中添加了对虚拟模型操作的功能.首先设计一个UI界面,界面上包括几个按钮,分别是平移、旋转、复位、信息显示等.这些按钮的功能需要C#程序代码来实现.例如屏幕上的建筑物可以随着手指的移动进行360度旋转.首先记录手指在屏幕上的初始位置,在手指滑动的过程中记录新的位置,根据滑动的距离计算出旋转的角度,然后重新记录手指在屏幕中的位置,因此画面要时刻进行更新.在Unity3D开发环境中,默认提供了Update函数,该函数是在每一帧中运行的,将旋转的功能代码写在这个Update函数中,虚拟建筑就会随着手指的移动进行旋转或者平移操作,其中手指进行的到底是平移还是旋转动作,由UI操作按钮决定.

在完成上述步骤后,最后导出安卓apk程序,并在安卓手机上进行安装.打开所安装的应用,将手机摄像头对准校史馆墙壁上的照片,可以看到所实现的效果,如图4所示.

4 总 结

通过前期的建模、编程操作以及后期对系统的一系列严格测试,实现了AR技术在虚拟校史馆建设的应用,为今后学生对于校史馆的参观提供了方便.用户可在安卓手机上很方便地通过扫描识别图的方法,查看学校校园建筑的三维信息,还可以了解更多相关场景的介绍.但该设计仍有不足之处,如场景细节不够丰富,交互性比较简单等.丰富场景细节使系统交互性更加丰富将是下一步的研究重点.同时,也将会进一步添加更多校园建筑,以便于开展对学校的宣传工作.

猜你喜欢

校史馆建筑物现实
山城老年大学校史馆建设持续推进中
坚持革命教育 强化党性锻炼
——主体班学员参观中共湖北省委党校校史馆
邻近既有建筑物全套管回转钻机拔桩技术
现代中小河流常用有坝壅水建筑物型式探讨
我对诗与现实的见解
漫画:现实背后(下)
描写建筑物的词语
高校校史馆育人功能研究
火柴游戏
现实的困惑