更全的杂志信息网

基于图像识别的增强现实学习辅助软件设计*

更新时间:2009-03-28

0 引言

机械类的专业教材往往涵盖了某一型或多型装备的构造、原理、技术参数、使用说明等方面的知识。这些书面的知识,受纸质媒介本身的局限,很难将装备本质内容直观地展现出来,从而影响了人们对教材中知识点的理解,在一定程度上限制了知识的迁移效果。

增强现实(Augmented Reality,简称AR)技术具有沉浸感、交互性、虚实结合等优势,恰恰可以将教材中晦涩难懂的知识点很直观地展现出来。因此,利用AR技术,把机械类专业教材中的各类装备开发成基于图像识别的移动增强现实应用程序,可以很好地辅助人们进行专业理论的学习。目前,运用增强现实技术对图书进行数字化处理已经有成功的范例,例如:名为Magic Book的儿童阅读书,利用AR技术将相关内容制作成动画叠加在书本上的不同单元里;名为My Vision AIR的移动交互图书,运用AR技术呈现相应的图画、模型或视频,增加了阅读的趣味性[1]

1 基于图像识别的AR关键技术

AR技术是将计算机生成的虚拟物体或场景、文本、图像、视频等信息实时叠加到用户所处的真实环境中,从而实现对现实的增强[2]。它是在虚拟现实技术基础上发展起来的一个分支或拓展,是人机交互技术发展的一个全新方向。通俗地讲,增强现实就是把虚拟信息实时叠加到真实世界中,将虚拟对象与真实环境结合起来,构造出一种虚实结合的虚拟环境[3]

AR的关键技术有:三维空间注册技术、标定技术、显示技术等。

1.1 三维空间注册技术

三维空间注册技术是对显示场景中的图像或物体进行追踪和定位,并计算虚拟场景与现实世界坐标系的对应关系,从而将虚拟对象按照正确的空间映射关系叠加到现实场景中正确的位置。在AR系统中,目前主要有基于图像识别追踪的三维空间注册技术、基于传感器实现物体运动追踪的三维空间注册技术、结合图像识别追踪与传感器运动追踪的混合三维注册算法[4]

1.2 标定技术

在增强现实系统中,虚拟对象与真实环境中的物体必须进行精确的对准。当用户观察视角改变时,虚拟相机的参数也必须与真实相机的参数保持一致。同时,也要实时地跟踪真实物体的位置与姿态等参数并不断更新。对相机的参数进行实验与计算的过程称之为相机标定,就是确定相机的光学参数、集合参数、相机相对于世界坐标系的方位和坐标转换。

图4给出了本文算法的流程图,即先初始化粒子位置和速度,根据适应度以及式(3)重新计算粒子的速度(第一次迭代不计算),并根据式(5)更新粒子的位置,然后计算新位置粒子的适应度,如果算法达到指定迭代次数,即输出全局的历史最优粒子为算法的结果,否则按图4继续迭代。

1.3 显示技术

第一,规范上机程序,明确上机任务。教师应事先制定好完整的上机计划及每次的训练项目,确保学生在上机练习时有的放矢。

头戴式显示器主要有视频透视式(Video See Through, VST)和光学透视式(Optical See Through, OST)两种头盔显示器。手持式移动显示器是一种可以让用户手持的平面LCD显示设备,相对于头盔式显示器,其减弱了视觉的沉浸感;其最大的特点是易于携带,且随着移动智能设备的普及和性能的不断提高,为移动增强现实的发展提供了很好的运行平台。投影显示能够将图像投影到大范围的环境中,它适合室内环境,其应用“物体追踪”技术捕捉人手的动作来实现交互,并应用“反射测距”技术测量人和物体的对应距离[5]

显示技术是将计算机生成的虚拟信息与用户所处真实环境融合在一起的技术。增强现实系统中的显示技术有头戴式(Head Mounted Display,HMD)显示器、手持式显示器和投影显示等。

2 单螺杆泵学习辅助仿真软件的功能要求与设计思路

2.1 软件的主要功能与设计要求

单螺杆泵学习辅助仿真软件应实现的主要功能有两个:一是方便学员对单螺杆泵结构的认知;二是帮助学员对单螺杆泵动态运行过程进行了解。

2002年2月,中国矿业大学北京东校区(其图书馆以下简称“北馆”)并入中国传媒大学。经过多年建设与深耕,中国传媒大学以新闻传播学、戏剧与影视学、信息与通信工程为龙头,逐渐形成文、工、管、经、法、理多学科协调发展的新闻传媒特色高校,为传媒行业的台前幕后培养专门人才,所有专业人才培养与课程设计都与传媒行业紧密结合。由于两馆原来服务的读者对象不同,藏书重点和收藏范围也不一样。笔者所在图书馆在这方面所做的规划和实践过程如下:

为实现以上两个主要功能,软件设计的总体要求如下:①软件运行在移动平台上,且运行软件时能自动调用设备后置摄像头对教材中的相应插图进行摄像,并快速完成目标识别、标定与跟踪注册,从而在手机屏幕上呈现交互界面和单螺杆泵模型;②程序运行界面上有相应的交互按钮,便于学员了解软件功能、选择相应的学习模块等;③拆装模块应能清晰地呈现单螺杆泵整体模型和拆装过程;④单螺杆泵动态运行展示模块能够清晰地呈现水流在泵体内部的流动线路,出口位置有逼真的水流效果和声效。

2.2 软件设计思路

为实现2.1节中所述的功能要求,软件设计的主要思路为:首先完成单螺杆泵的实体建模,然后在vuforia官网上下载适用于Unity3d的增强现实软件开发工具包,再将SDK和单螺杆泵模型导入Unity3d编辑器中进行拆卸动画片断录制、UI界面设计、拆装动画演示和动态运行效果演示的交互设计。

3 单螺杆泵学习辅助仿真软件交互设计与功能实现

3.1 增强现实软件开发工具包的下载与设置

3.1.1 SDK下载

(4) 螺杆泵系统内水流效果的实现方式是:以一定的速率在相应位置发射水泡预设体,并让该预设体沿着指定的路径运动,当到达终点时,销毁该预设体。

3.1.2 开发者选项设置

(1) 在License Manager界面点击Add License Key按钮,设置许可证密钥。Project Type栏中Development选项设置为免费,并在Project Details栏内设置应用程序的名称和设备类型等。点击Confirm按钮生成许可证密钥。

(2) 在Target Manager界面,点击Add Database新建数据库,输入名称并选择Device类型后,点击Create按钮创建数据库。

(3) 进入新建的数据库,添加Targets对象。设置对象类型为Single image,添加相应的图片到数据库中。设置完成后下载该数据库,生成Unity资源包待用。

3.1.3 ARSDK导入Unity编辑器中的设置

在Unity3D编辑器中导入vuforia-unity和MonoPump图片资源包,然后将Assets文件夹中的ARCamera和ImageTarget两个预设体拖拽至层级视图下,为场景添加两个父对象。设置ARCamera对象属性:将vuforia官网License Key中的文本复制粘贴到App License Key栏中。设置ImageTarget对象属性:Database栏中选择之前导入的MonoPump资源包,Image Target栏中选择MonoPump。

3.2 UI界面设计

本设计通过在现实世界中叠加一层虚拟信息,从而实现对现实世界的增强。因此,该场景的背景即为现实环境,无需额外构建背景层。为了在程序运行时便于使用者对虚拟对象进行交换操作,则需要增加图形用户界面,并利用界面中的各种UI控件实现丰富的交互功能。在该界面中,共添加了5个Button控件和1个Text控件。Button控件分别命名为“自动拆卸”、“自动组装”、“开始运行仿真”、“About”、“退出”,以实现和名称相同的交互操作。Text控件用于填写About的文档信息。

3.3 自动拆装/动态运行演示交互功能的实现

3.3.1 自动拆装功能的实现

当单螺杆泵对象处于组装或拆卸完毕的状态下,点击自动拆卸按钮,通过调用animator.SetBool函数改变动画状态机中的动画过渡条件,从而实现按预定方式播放拆卸或组装动画片段。其关键部分代码为:

在拓展课的总结与展望部分,学生提出了如下问题:本实验中检测的微生物类型有限,不能说明铁皮石斛具有广谱的抗菌功能,被检微生物的类型有待增加;铁皮石斛中的抗菌的有效成分有待明确,有条件的情况下可以把多糖、生物碱和氨基酸类物质分离,分别进行抑菌实验。后续研究中,可以尝试将铁皮石斛匀浆液添加到相应免疫细胞的培养基中,观察其对免疫细胞数量及活性的影响。从本案例中,可发现,高中生已经具备质疑、查阅资料、设计实施实验、思考与总结的能力,教师应根据学生的发展特征与需求提供支持与条件,助力学生核心素养的发展。

public void ClickPlayBack(){

isBack = true;

isPlay = false;

isShot = false;

}

if(isBack) {

animator.SetBool ("isPlay", false);

animator.SetBool ("isBack",true);

StartCoroutine (WaitForSomeTimes02());

}

3.3.2 动态运行效果的实现

20.创新普法宣传内容和方式。充分发挥广播、电视、报刊等传统媒体优势,对与民营企业发展相关的民商事法律法规等进行法律解读和舆论引导。更好运用网络、微信、客户端开展普法活动,积极推送相关主题宣传活动消息,开展新媒体普法。大力宣传民营企业守法诚信典型案例,开展树立守法诚信企业家、标杆企业等活动,充分发挥示范引领作用。

(1) 点击开始运行仿真按钮的同时,调用单螺杆泵对象脚本组件中的ClickPlayShot ()方法体,该方法体为:

本组患者采用表面麻醉,于术前8h开始肠道准备,其中胃镜治疗患者使用利多卡因胶浆进行表面麻醉,肠镜治疗患者使用卡丁因胶浆进行表面麻醉。

if (isShot)

isShot = false;

else

DHZ-9053型恒温培养箱、HH-S8型双列八孔型电热恒温水浴锅、WF-A6000型商用榨汁机、AR223CN型天平、DCD-186KB型海尔冰箱、均质机、SJ-4A型pH计、7200型分光光度计、WYT-4型手持糖度计、200目滤布等。

isShot = true;

}

此方法体的功能是:如果isShot为真,则将isShot设为假,如果isShot为假,则将isShot设为真。从而实现布尔变量值在真假之间来回切换。

(2) 按钮文字和材质的变换以及水流声音的控制。点击开始运行仿真按钮的同时调用游戏对象BubbleShotter脚本组件中的ClickDynamicFlow ()函数。该函数的关键部分代码如下:

if (isDynamicFlow) {

isDynamicFlow = false;

button_PlayShot_text.text = " 开始运行仿真";

outletPort.GetComponent ().material = mat1;

WaterFlow.SetActive (false);

public void ClickPlayShot(){

single_screwPump.GetComponent ().enabled = false;

}

2.坚持“唯实求是”的方法论,激励和调动“发现欲望”。“导论篇”在编选内容时,应以坚持“唯实求是”的方法论和激励、调动学生的“发现欲望”为基本思想和基本主题。唯实求是,即事实是衡量和检验真理的唯一标准,不唯上,不唯书,只唯实。实验的过程,是对未知世界不断发现、挖掘、探索、分析、研究、创新的过程,强烈的发现欲望,是实验成功的一半。要善于培养和强化学生的“发现欲望”,并安排较大篇幅列举科学家的伟大发明始于发现毫微和某些科学家忽视发现毫微而与发明失之交臂的实例,以启迪学生懂得“发现欲望”在科学实验、科学研究中的重要性。

(3) 对轴承旋转的功能控制。控制工作中旋转对象包括联轴器、内部螺栓、螺杆轴、连接轴、传动轴,令这些零件绕x轴旋转。在Update函数中添加如下语句:

float currentX = -90f +currentTime * rotateSpeed;

coupling.transform.rotation = Quaternion.Euler(currentX, 0, 0);

登录vuforia官网,进入Downloads页面,点击Download for Unity按钮,下载对应的资源包vuforia-unity-6-2-10.unitypackage (46.20 MB)。

该方法依赖于iTweenEditor插件中的iTweenPath和iTweenEvent脚本。具体通过三个关键步骤来实现。

步骤一:动态生成预设体运行的路径。泵运行时,螺杆是不停地旋转的,而入口管线是静态的。因此,路径的生成有两种方式:一种是直接在path脚本组件中设置各路径节点的值;另一种是先在螺杆上沿螺旋线依次添加空的子对象,并用代码将这些子对象的Transform.position值动态赋值给path组件中的各路径节点。本文选用第二种方式,因为对于动态变化的路径,直接对路径节点赋值的方式是无法实现的。该脚本的关键部分代码为:

if (wayPoint.GetComponent ().nodeCount

== screwShaft.transform.childCount) {

for(int i=0;i

wayPoint.GetComponent ().nodes [i] = new Vector3(

screwShaft.transform.GetChild (i).transform.position.x,

步骤三:水泡预设体的实例化。当螺杆泵运行时,在Path路径的第一个节点位置以一定的速率实例化生成水泡预设体,并在生成的水泡对象运动到路径末端时及时销毁对象,以防止不断生成水泡对象而导致系统内存空间占用越来越多。其实现代码为:

结合历史来看,印刷技术的每一次进步,都为文化产品带来了更多的机遇。如何应用新的印刷技术,将数字与纸质完美融合并长久保留,是个课题。比如,自然、科技类出版物如果用上AR等数码技术会更形象生动,但怎样在纸面上进行长久保留,这就对大数据的建立有更高的要求。业内已有先行企业像同昆数码,正展开这方面的研究。

screwShaft.transform.GetChild (i).transform.position.z); }}

我第二次去的时候,青木显然已经不记得我是谁了。生活有时候就是这样,对于一个人,你可以清楚地记得他的一颦一笑,而他,连你的轮廓都没有印象,生活,本来就不是两厢情愿的事情,所以,也不必为此忧伤。

步骤二:水泡预设体设置。在层次面板中创建一个球体,设置Scale值使球体为合适的大小,并为球体添加水泡材质,然后为球体添加iTweenEvent脚本。对iTweenEvent组件进行设置,设置完成后将球体对象拖拽至Assets文件夹下,生成预设体。

(2)学生在调查中对在课堂内开展文化主题教学活动表示出相当的兴趣。在课堂教学进入文化主题环节时,采用互动活动的方式进行,如分组讨论、模拟演示等。活动准备工作由学生在课前预先做好,疑难问题在活动中面对面答疑。学生可使用视频、图片等多媒体方式展示,使文化导入在课堂内互动性更强,更有趣味,也更直观易懂。

screwShaft.transform.GetChild (i).transform.position.y,

//当shotSpeed等于1时,每2 s实例化生成1个水泡预设体对象

currentTime += Time.deltaTime * shotSpeed;

if (Mathf.CeilToInt (currentTime) % 2

== 0) {

根据基本假定,孤石抗滑移力主要源于孤石B与孤石A之间的摩擦力,接触面摩擦力系数μ,滑移力主要为外力在接触面分量。孤石B的抗滑移安全系数:

Instantiate (prefab, new Vector3 (screwShaft.transform.GetChild (0).transform.position.x, screwShaft.transform.GetChild (0).transform.position.y, screwShaft.transform.GetChild(0).transform.position.z),

Quaternion.identity);}

分散性土造成了许多堤防结构的破坏或病害。国外研究这些问题范围,包括堤防整个洪水过程破坏和各级控制建筑物结构运行条件。破坏问题可分为以下两大种类。

(5) 螺杆泵出口水流效果的实现。水流效果可在Asset Store中查找下载免费的粒子效果资源。本设计选用Water FX Particles资源中的水流效果,下载完成后将该资源导入到Assets文件夹下,并将该文件夹下的Font和Surface Splash预设体拖拽至层次面板中的螺杆泵出水口对象下,调整位置和方向,设置好粒子发射的控制参数。

3.4 发布到Android平台

在Unity中编辑完成后,将工程发布到Android平台,生成APK文件,即可安装到安卓手机上运行。其发布方法如下:

(1) 发布前的资源准备。要将编辑好的工程发布到安卓平台,需安装三个插件:Android模拟器(sdk)、Java(jdk)以及Android NDK。安装完成后需对系统环境变量进行设置。

(2) 发布到安卓平台。选择File/BuildSettings菜单命令,弹出编译设置面板。在Platform栏中选择安卓平台。在Player Settings面板中,依次设置公司名称、应用名称、图标、分辨率等,完成设置后,点击Build按钮发布生成APK文件包,该文件大小为57.6 MB,将其安装到手机上的运行效果如图1所示。

  

1 APP运行时对教材插图摄像识别后的效果

4 结论

基于图像识别的单螺杆泵增强现实学习辅助仿真软件,能很流畅地运行在移动平台上,具备认知装备结构、学习拆装过程和观看动态运行效果等功能,较好地解决了纸质插图立体感不强、视角单一等问题。并利用iTweenPath插件实现装备内部流体的运动效果,比二维仿真软件更加形象逼真,比普通的动画演示更具交互性。

参考文献

[1] 蔡苏,王沛文,杨阳,等.增强现实(AR)技术的教育应用综述[J].远程教育杂志,2016,34(5):27-40.

[2] 李文霞,司占军,顾翀.浅谈增强现实技术[J].电脑知识与技术,2013,9(28):6411-6414.

[3] 娄岩.虚拟现实与增强现实技术概论[M].北京:清华大学出版社,2016.

[4] 吴帆,张亮.增强现实技术发展及应用综述[J].电脑知识与技术,2012,8(34):8319-8324.

[5] 候颖,许威威.增强现实技术综述[J].计算机测量与控制,2017,25(2):1-7.

 
胡建忠
《机械工程与自动化》2018年第03期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号