基于增强现实的交互式视觉环境学习场景设计研究

2018-12-24 06:38冯建平
无线互联科技 2018年8期
关键词:应用程序编程组件

冯建平,王 军

(海南师范大学,海南 海口 571158)

增强现实(Augmented Reality,AR)技术是将虚拟元素包含在真实的物理环境中[1],以实时创建混合的现实,这是对现实世界中视觉、听觉和触觉等感官的补充和增强。AR提供不同程度的沉浸感和互动性,可以帮助学生参与学习活动,在基于AR的学习环境中,学生注意力和满意度的激励因素比在普通播放幻灯片学习环境中获得的效果更好。

学术界也不可避免地受到新技术的影响,在一些学科中已经开始引入AR技术。然而,这一技术在教学知识传播和适用性方面的作用微乎其微,其主要的障碍是缺乏具备开发AR编程技能的专业人员,关键是同时也缺乏专门为教育而设计的工具。

本文介绍了一种基于MIT APP Inventor环境的可视化环境创作工具VEDILS,该工具使用户能够开发基于AR的交互式的学习场景,并试图将AR技术融入教育环境。采用基于MIT的易于使用的开发Android应用程序的在线环境应用APP Inventor[2],可以通过简单的块语言使移动编程实现民主化。

1 主要内容

1.1 技术增强学习和AR

近年来,技术增强学习(Technology Enhanced Learning,TEL)的研究越来越多地集中在AR、泛在学习、移动学习、学习分析等新兴技术上,以提高用户在丰富的多模态学习环境中的满意度和体验。这些研究利用了移动设备硬件和软件的技术创新,并日益受到人们的欢迎。用户建模和个性化过程的重大发展将学生置于学习过程的中心位置,对AR的研究也证明了它在提高学生学习动机方面的有效作用。

AR应用可以在不同的学习场景中使用,如模拟实验室实验,教育游戏等。一般来说,AR应用分为两类:基于地理位置的应用和基于计算机视觉的应用。基于地理位置的应用程序使用移动设备的GPS、加速计、陀螺仪和其他技术来确定移动设备的位置和方向。用户可以在查找位置的方向上看到计算机生成的重叠的图像。基于计算机视觉的应用程序使用图像识别功能来识别图像顶部的图像和叠加信息,在这个类别中,我们有基于标记的AR和无标记的AR两种不同的选项。

1.2 AR编写创作工具

有不同的工具可以来处理RA功能。就算是最基本的工具一般也会为应用程序开发人员提供许多复杂的工具包、库和脚本框架,例如ArUco,DroidAR等。这些支持开发功能强大且定制的AR应用程序,但同时需要应用程序开发人员对Java和C等编程语言有很高的了解。此外,还有许多更高级的图形创作工具,如Layar,Aurasma等,允许非程序员用户构建AR场景,修改虚拟对象的参数,如位置、大小、旋转或标记。

除上述工具外,还有其他面向非程序员用户的AR应用程序的高级编写工具,如DART,Amire和MARS,其中一些编写工具支持脚本和拖放界面,更高级别的AR编写创作工具可以满足用户的交互性需求。然而这些工具中有许多没有考虑将要部署它们的设备,因此不会使用移动设备提供的许多功能。在所有这些高级工具中发现的主要缺点可以归纳为以下几点:标记和虚拟对象之间的关系总是一一对应的,使用标记时翻转、旋转等交互无响应,无法检测到虚拟对象之间的碰撞冲突,不允许收集执行该活动用户的有关信息,无法申请评估学生能力和缺乏在应用程序本身中包含使用说明的机制。

2 AR学习场景设计环境

近年来,软件开发工具应运而生,它隐藏了许多传统编程语言的复杂性,以帮助没有编程技能的人开发新的应用程序。在这方面,我们可以注意到用于开发电子游戏的工具Scratch和用于开发Android移动应用程序的APP Inventor。这两个工具的共同之处在于它们都使用基于块的可视化语言,这些块语言必须组装起来以设计新应用程序的行为。近年来,这种编程方式越来越受欢迎,并被用于创建许多基于区块的微世界。

APP Inventor是由谷歌在开源环境下创建的,现在由麻省理工学院(Massachusetts Institute of Technology,MIT)进行维护[2]。这是一个基于块的编程工具,可以使每个人甚至新手都能够开始编程,能够为Android设备构建功能相对完整的应用程序。通过这个创作工具,教师和普通人都可以在移动设备上创建部署简单的应用程序,同时这些应用程序也可以使用这些设备所允许的共同功能,如传感器、多媒体元、绘图和动画、与社交数据共享网络和不同的Web服务等。APP Inventor的体系结构由几个模块组成:用于设计新应用程序的用户界面的GWT应用程序、用于编程应用程序行为逻辑的块编辑器、用于将设计和上述逻辑转换为可导出文件的构建服务器、运行在移动设备上来调试应用程序的解释器,以及一个包含所有内置组件的模块,这些是其他模块所需要的,并可供最终用户开发其应用程序。

APP Inventor组件时定义应用程序的外观和行为所需的构建块,它们由多个属性、事件和方法组成。

ARCamera这个组件表示AR场景,它显示设备的摄像机直接捕捉到的真实图像。允许用户配置屏幕方向、摄像机类型、要识别的物理目标的外部数据库以及是否需要立体渲染等参数。当用户用手指点击屏幕时,此组件触发事件。

ARTracker这类组件对应于最终应用程序中用于触发某些操作的物理元素。该物理元素通常可以是典型的AR标记、外部对象,也可以是具有特定颜色或文本片段的区域。当在摄像机的视野中识别物理元素或者当它的位置发生变化或消失时,该组件进行管理各种事件。

ARAsset这种类型的组件允许用户声明要在屏幕上给定位置呈现的虚拟对象。这些元素可以是文本,也可以是更常见的不同格式的基于图像或颜色的纹理。还有一个附加的属性“粘贴”,用于将虚拟对象与给定的跟踪器和其他属性绑定,以设置该绑定的位置、旋转和平移。而且,用户还可以通过在3D模型上用一个手指滑动虚拟对象来旋转虚拟对象。此外,当虚拟对象与屏幕上的另一个对象发生碰撞时,此组件将触发特定事件。

3 结语

目前,这种重新使用现有软件来包含AR功能的选择已经成功地应用于其他产品中。例如,AR Spot是一个基于MIT的Scratch项目的AR创作环境,它允许孩子们创建将真实和虚拟元素混合在一起的体验。现阶段关于AR组件的开发改进仍在进行,以支持更多类型的跟踪器和虚拟资产,并避免与Vuforia数据库的物理目标耦合。此外,一个比APP Inventor中已有的FusionTable组件更直观的用来捕捉用户交互的新的系统也在开发研究中。以后,设计交互式视觉环境学习场景时AR创作工具决定组件时将会有更大的选择空间。

[参考文献]

[1]BACCA J,BALDIRIS S,FABREGAT R,et al.Augmented reality trends in education: a systematic review of research and applications[J].Journal of Educational Technology & Society,2014(4):133-149.

[2]BUJAK K R,RADU I,CATRAMBONE R,et al.A psychological perspective on augmented reality in the mathematics classroom[J].Computers & Education,2013(1):536-544.

猜你喜欢
应用程序编程组件
无人机智能巡检在光伏电站组件诊断中的应用
编程,是一种态度
编程小能手
新型碎边剪刀盘组件
纺织机上诞生的编程
U盾外壳组件注塑模具设计
删除Win10中自带的应用程序
风起新一代光伏组件膜层:SSG纳米自清洁膜层
三星电子将开设应用程序下载商店
微软软件商店开始接受应用程序