摘 要: 首先对增强现实技术的发展背景及理论基础进行了简单介绍,然后提出了增强现实技术在晶体结构教学上的应用。设计了一套完整的分别用于Web程序和应用程序的制作方案。利用计算机、摄像头和制作的标识立方体组成一个电教工具。在真实的场景中对虚拟的晶体结构进行操作,有利于增强教学的直观性和交互性,从而提高教学的效率。最后对设计进行了测试分析,提出了优点与不足。
关键词: 增强现实;晶体结构;电教工具
0 引言
增强现实(Augmented Reality,AR)是一门在虚拟现实技术的基础上发展起来的新技术,也被称为混合现实。增强现实借助计算机建模技术、计算机图形技术和可视化技术,通过生成真实环境中不存在的虚拟对象并将其应用到AR系统中用于交互的真实场景,虚拟物体和真实场景实时地叠加到同一个画面或空间,两种信息相互补充、完善,使用户的体验更为真实,具有虚实结合的特征[1]。它把原来在现实世界的一定时间和空间范围内很难体验得到的信息,通过科学技术模拟仿真后再叠加到现实世界,让人类感官所感知,从而实现超越现实的感官体验[2]。就目前来看,已经有许多增强现实这方面的实际应用,如医疗、军事、航空和航海、古迹复原和数字文化遗产保护、工业和维修等领域[3]。
随着科学技术的快速发展,多媒体技术广泛地应用于教育领域。这种传统多媒体技术在应用之初,以其独特性吸引了学生的注意力,并且能够使老师在教学过程中高效地表达所传授的知识。但它的缺点是难于表达知识的完整性,只能使学习在视觉和听觉上进行,缺乏互动能力。因此当前相关研究者已经将增强现实技术引入教育领域以更好地解决这个问题,从而使学生在学习过程中容易形成互动,让学生更容易理解学习内容[4]。本文就以增强现实技术在晶体结构教学上的应用为例进行研究与实现。
1 设计总体思路
整个设计结构由计算机(包含程序)、摄像头、标识立方体组成。摄像头将拍摄到的真实画面的每一帧传送到增强现实程序,当标识立方体进入摄像机拍摄范围后,Flash AR应用框架识别出标识的序号,通过序号从参数文件中提取出模型的信息,同时增强现实开发工具通过真实画面进行迭代计算,计算出每个标识图形的三维坐标(包含位置和方向)。Flash 3D引擎得到模型信息和标识的三维坐标后,导入与之对应的三维模型文件,根据世界坐标系和摄像机坐标系的变换矩阵,渲染出指定位置和角度的虚拟模型(即与标识重叠的虚拟模型)。Flash Builder将虚拟模型叠加到真实画面,并输出视频帧。整体设计结构如图1所示。
Flash Builder可以将这个增强现实程序打包成一个SWF文件。这个SWF文件可以直接用Flash Player播放器播放使用,即形成了一个单独的应用程序,提供给老师教学或离线使用。同时可以利用HTML语言将SWF文件嵌入到HTML文件,把这个文件上传到搭建好的Internet服务器,即可通过互联网在线使用增强现实程序。
2 各部分设计
2.1 增强现实实现
增强实现系统的核心技术是注册跟踪技术,也是目前制约着增强现实技术应用的最有待解决的技术阻碍。注册跟踪技术可分为基于跟踪器的注册技术和基于视觉的注册技术。本设计的增强现实程序是基于标识物的注册跟踪方法实现的,该方法不需要复杂的硬件设备,在室内的小范围环境下一般即可取得符合要求的定位精度,并且可以达到对实时性的要求。通过事先定义好的各种平面标识物来标记三维坐标和各个物体。系统通过模板匹配的方式来找到视频中的对应标识物,通过图像分析处理计算虚拟空间与真实空间的坐标转换矩阵。为降低计算量和满足实时性的需求,一般都采用带有黑色封闭矩形框和简单标记的正方形标识,这样只需要简单的边缘检测和模板匹配即可达到要求[5]。
2.2 标识立方体制作简介
基于增强现实程序的需要和立方体6个面的展开平面特征,用Photoshop制作了采用带有黑色封闭矩形框和简单标记的标识立方体打印图片,如图2所示。为了实现手持操作,图形设计有白色边框。将图片打印出来折叠粘贴,即可制作成标识立方体。
2.3 晶体模型
使用3DS MAX 2012搭建模型,每个晶格的几何中心处在世界坐标的(0,0,0)处。晶格的边长均设置为20个单位(单位指3DS MAX默认单位)。原子的半径根据晶胞原子密度取1.5~3.0个单位。可以根据需要用长方体连接原子,以突出结构显示。为展示晶格在三维空间的扩展图像,使用将晶格在三维XYZ方向重复1次的方法,得到重复的晶格晶体模型导出。
2.4 三维模型坐标矫正
由于FLARManager生成三维模型的世界坐标都是以标识图形平面为水平面的,但是本文所做的标识立方体各个面的图形平面不都是水平面的,这样会造成旋转立方体时生成三维图形坐标混乱,Z轴永远是向外的,不能达到晶体结构随着标识立方体的旋转而旋转的目的。所以要对标识立方体每个面生成的三维模型进行坐标矫正,就是让3DS MAX的坐标系与PV3D的坐标系在X轴上相差90°即可。
2.5 晶格结构切换的实现
为了实现各种晶格结构与晶格三维扩展的切换功能,程序采用直接替代的方法。在晶格切换界面有各种晶格的按钮,当这个按钮被点击后,程序会将当前晶格DAE文件的路径更改成切换后晶格DAE文件的路径,画面上的图像也会变成对应晶格的图像。单晶格显示和晶格扩展显示的切换也是利用这个原理。
2.6 HTML文件编辑
为了设计的增强现实程序SWF文件能在浏览器上运行,必须把它嵌入HTML文件。为了方便学生学习,必须将标识立方体的打印图片放在网上,供学生下载。
2.7 Internet信息服务搭建
为了实现Internet信息服务,也就是在网络上访问制作的页面,利用了Windows系统自带的Internet信息服务及IIS管理器。在Windows的启用或关闭Windows功能菜单中即可开启这些功能。然后在IIS管理器按需要新建一个站点,将HTML文件、SWF文件、DAE模型文件、PAT标记文件和AR相关参数文件上传到服务器上。
3 测试
3.1 Web运行测试
对Web程序进行运行测试,发现程序对于网络环境依赖较高,因为需要适时下载晶体结构模型DAE文件,网络拥堵情况下切换模型后会有明显延时,隔一段时间才能显示新模型。实验统计结果如表1所示。
3.2 Web性能测试
以程序的帧频作为性能测试的主要依据,电脑配置、模型顶点数、环境光强度、环境中黑框图形数量为变量进行控制变量法测试,结果如表2所示。
3.3 应用程序测试
应用程序运行测试一切正常,没有出现异常状况,应用程序性能测试与Web程序性能测试结果相同。
3.4 测试比较
经过以上测试可以得出结论,Web程序对网络环境依赖高,网速不佳情况下反应速度慢,但是使用方式简单,访问网页就可以使用,应用程序在运行时更流畅,反应速度更快。因为使用的是同一个Flash AR应用框架,所以性能测试结果基本相同。两个程序模块的测试的结果互补,符合两个用户群的使用需要。Web程序供学生使用,学生在任何地点的任何电脑上,只要能连接互联网,都可以随时访问学习。应用程序供教师使用,教师将应用程序安装在特定的教学电脑上,就可以得到高质量的晶体结构展示。
4 设计效果
按照计划完成增强现实程序,制作完成标识立方体,实现晶体结构的增强现实及其扩展晶格的展示,部分设计完成效果图如图3~图8所示。
图3~图8分别展示了晶体结构教学程序的应用程序界面与Web程序界面,同时比较形象地展示了简单立方晶格图形与简单立方、面心立方、体心立方晶体三维扩展图。由于篇幅的限制,该晶体结构教学程序中关于晶体的移动与旋转操作图以及手持展示图未给出。
5 结论
本设计利用增强现实技术带来富有冲击力的直观展示,操作方便快捷简单,只需要一台普通的电脑、一个摄像头及打印制作出来的标识立方体,就能展示抽象的晶体结构,能更好促进教育教学。Web程序和应用程序两个版本满足特定人群需要,并互相弥补不足。当然本设计还有一些不足和有待完善的地方,例如需要丰富晶体结构种类,加入更多互动操作,增加音效、动画、粒子特效,优化增强现实程序,提高其识别率和显示性能,开发移动端的应用程序,使其能够在移动设备上更方便地使用该程序等。
参考文献
[1] 贾立兵,唐棣.水彩画风格实时增强现实技[J].微型机与应用,2013,32(14):47-50.
[2] 谢洪波,徐爱国,李保安,等.一种三维头盔显示器驱动电路设计方案[J].河北工业大学学报,2008,35(7):25-29.
[3] 周大镕.基于增强现实的体验式教学演示软件的设计与实现[D].桂林:广西师范大学,2014.
[4] SHELTON B, HEDLEY N. Using augmented reality for teaching earth-sun relationships to Undergraduate Geography Students[C]. Augmented Reality Toolkit, The First IEEE International Workshop,2002.
[5] 康绍鹏.增强现实关键技术研究[D].沈阳:沈阳航空工业学院,2009.