论文部分内容阅读
摘要: 采用交互式参数化建模方法对西瓜生长模型建模,基于Unity3D开发平台,运用虚拟现实、仿真交互技术以任务驱动的方式实现了春大棚西瓜生长周期虚拟展示及互动体验系统。该系统具有良好的用户操作界面以及互动体验环节,可以让农民提高生产技能、了解西瓜生产过程,从而推进西瓜产业的发展。
关键词: Unity3D;大棚西瓜;虚拟现实技术
中图分类号: S126 文献标志码: A
文章编号:1002-1302(2015)08-0416-03
虚拟现实技术别称灵境技术,为用户提供视觉、听觉、触觉等感官模拟,让用户沉浸在计算机生成的三维虚拟世界中,确保用户可以及时、无限制地通过语言、手势等方式与三维空间内的事物进行实时交互 [1]。虚拟现实技术最初应用于军事、航空航天领域,近年来已经广泛应用于工业、建筑设计、文化娱乐、教育培训等领域。西瓜属葫芦科,原产于非洲,喜温耐热,1年生蔓性草本植物,在我国栽培历史悠久 [2]。我国是世界上最大的西瓜生产国,同时也是西瓜消费大国。近年来,随着人们生活水平的提高,水果在我国居民食物消费中所占的比例明显增加,西瓜作为重要的鲜食水果,消费需求持续快速增长 [3]。我国西瓜种植面积日益扩大,尤其是在一些城市的近郊,西瓜成为促进农民增收的主要经济作物。西瓜种植技术培训课程也在各农林高校、职业院校以及农业技能推广站广泛开展。传统的西瓜种植培训主要采用教科书、上课板书、视频等方式,主要存在以下缺点:(1)传统教育培训采用教师口头授课或多媒体授课,机械式灌输教学内容,讲解形式枯燥;(2)学员须在同一地点集中接受同样内容的培训,教学缺乏灵活性;(3)在传统教学过程中,西瓜种植生长过程涉及到的农事耕作、苗床铺设、大棚开沟、接穗及砧木种子的挑选、消毒、播种等多个实践环节费时费力且成本较高。综上所述,传统的培训模式在人力、物力、互动性等方面的缺陷在一定程度上限制了西瓜种植技术的传播。本研究基于Unity3D开发平台,以西瓜春大棚技术规程为对象,设计了1款寓教于乐的西瓜实训系统,该系统综合了计算机动画、虚拟现实 [4]、人机交互以及网络技术,有效整合了西瓜生长过程管理所涉及的农学知识,为西瓜种植培训提供了虚拟互动电子教科书。
1 春植西瓜大棚实训系统设计
本系统适用于北京市大兴区,所以地理条件、土壤条件、气候条件已经基本确定。本系统根据西瓜实际种植生长时序与虚拟生长时序之间的比例建立时序对应关系,对西瓜生长过程进行模拟。采用任务驱动方式,提高用户的兴趣点、参与度。该系统开始运行之后,弹出完成相应任务的提示信息,任务完成之后,日历动态改变并触发完成下一个任务,既保证了西瓜种植的科学性,又增强用户互动体验效果。图1展示了春植西瓜大棚技术流程,图中标注的时间是系统仿真西瓜生长过程的模拟时间。
2 关键技术
根据西瓜种植技术规程,利用交互式参数化建模方法构建西瓜的三维虚拟模型,结合二三维交互、动画及场景渲染技术,建立了春大棚西瓜种植虚拟实训系统(图2)。
2 1 交互式植物参数化三维建模方法
构建西瓜生长过程中的三维模型是春大棚西瓜种植虚拟过程可视化表达的关键步骤。植物三维建模方法多样,针对不同的建模目的及应用要求,不同的建模方法可取得不同的建模效果。其中,起步较早、影响力较大同时应用较为广泛的建模方法为参数化建模方法,该方法使用一组参数来表示植物主要器官及植株三维形态结构 [5]。通常以交互式的方式实现对参数的动态调整和编辑,以达到修改模型三维形态的目的。从西瓜形态结构上看,西瓜地上部主要由主蔓、侧蔓两部分构成,蔓上着生叶子、花、果实、卷须等器官 [6]。西瓜蔓的横断面近似圆形,有棱角。瓜蔓有节,节上着生叶片或侧蔓。西瓜叶子由叶柄、叶片构成,叶子呈羽状、单片、互生、叶缘深缺刻,叶片表面有蜡质、绒毛。本研究采用交互式参数化建模方法,首先使用Immersion G2LX三维数字化仪采集田间西瓜三维形态结构数据,构建西瓜三维模型,通过定义叶脉曲线、叶片边缘实现叶片特征的虚拟建模。最后按照典型西瓜的株型结构生成西瓜植株模型。创建的西瓜各个时期的生长模型如图3所示,需要将模型转换为fbx格式,然后导入 Unity3D 场景中使用。
2 2 鼠标拾取
鼠标拾取指在屏幕上用鼠标点击某个物体时,应用程序能返回该物体的1个标志、某些相关信息 [7]。本研究采用鼠标拾取算法实现用户与虚拟场景中的三维物体交互功能。先给需要进行交互的物体绑定碰撞体mesh collider,然后将鼠标拾取函数脚本绑定给该物体,在脚本中根据物体名进行不同的响应操作。OnMouseDown()、OnMouseOver()、OnMouseEnter()函数分别可以实现鼠标点击、悬浮、进入物体时的响应操作。虚拟场景中砧木和接穗种子在石台上晒种时,通过鼠标悬浮响应函数实现将瘪小、破损、虫蛀、发霉的种子剔除的功能。在西瓜伸蔓期,对植株进行修剪时采用二三维交互相结合的方式,点击二维剪刀图片,鼠标光标变换为剪刀,触碰到西瓜植株待修剪部分时,使用Tween Position实现待修剪部分下落到地面的动画,从而完成植株的修剪操作。图4展示了伸蔓期西瓜植株修剪过程。
采用鼠标拾取实现三维物体的拖动,算法基本思想为:首先将物体的世界坐标系转化为屏幕坐标系,z轴不变。由于鼠标的坐标系是二维的,需要转化成三维的世界坐标系,然后计算鼠标位置与物体的距离。当按下鼠标左键时,获取当前鼠标的二维坐标系位置并转化成三维坐标位置,再加上鼠标的移动量得到物体应该的移动量并赋给物体的transform的position属性,实现鼠标拖拽三维物体的交互功能。例如,文中在配制营养土时鼠标点击草炭,拖拽到沙壤土中。通过距离碰撞检测 [8],当距离小于既定阈值时,草炭消失,使用NGUI插件的TweenColor进行颜色渐变,实现营养土配制混合效果。[ (W10][TPJYN4 tif] 2 3 粒子系统
粒子系统采用有“生命”的微小粒子单元来模拟现实世界中的不规则物体,尤其是一些模糊、易扩散的物体,如火、烟等 [9]。通过许多小粒子的组合,模拟出不规则物体的运动形态,然后渲染显示。粒子系统中的每个小粒子都有很多属性,如大小、颜色、形状、透明度等。具体每个小粒子的属性则由该粒子系统具体模拟的物体决定。粒子系统是动态的,系统中的每个小粒子的生命周期都是从“产生”到“活动”再到“消亡”。随着时间的推移,新粒子逐渐加入到系统中,“存活”的粒子不断变化,旧的粒子逐渐死亡,从而实现粒子系统的模拟效果。本研究采用Unity3D自带的粒子系统实现砧木、接穗种子浸种时水龙头的流水动画。配制基肥时磷酸二铵、尿素、硫酸钾等撒到农家肥上的动画,大棚熏棚时点燃烟剂后的冒烟效果以及西瓜开花期喷施的叶面肥,都是通过调整粒子系统的相应参数实现其逼真的可视化表达。图5展示了部分粒子系统实现的效果。
2 4 视频播放
用户在互动体验过程中,若是根据系统中的简单提示信息不能完成任务或者想更加系统详细地了解西瓜种植流程,可以在场景任意漫游的同时观看视频课件,既能够娱乐放松,又能系统学习。Unity3D的视频文件通过Apple QuickTime导入,支持的文件类型是QuickTime。在Windows操作系统下导入视频需要安装QuickTime播放器。将视频资源导入到 Unity3D 场景中,建立音频源AudioSource、影片纹理 MovieTexture,影片纹理是从1个视频文件中创建的动画纹理,放置1个视频文件在项目的Asset文件夹中,可以导入要使用的视频,音频源在场景中播放音频剪辑AudioClip。使用C#脚本控制视频的播放暂停,图6是Unity3D场景中人工授粉视频截图。
2 5 模型动态实例化
西瓜植株生长过程中要经历定植期、伸蔓期、开花期、结果期、成熟期等过程,若是在场景中手动摆放模型,不仅耗时费力,而且资源占用空间大。通过对Unity实例化相关知识进行研究,本研究采用模型实例化算法解决上述问题。通过脚本动态实例化所需模型,并设置实例化的西瓜植株的行数、列数、行间距、列间距等信息,为不同时期的西瓜植株命名,然后通过动态查找物体名的方法销毁之前实例化的模型,再实例化新的模型。图7为采用C#脚本动态实例化的西瓜植株。
3 结论
本研究依据春植西瓜大棚技术规程,建立不同生长时期
的西瓜植株模型,对西瓜种植进行虚拟现实表达,构建了简单方便、开发成本低的春植西瓜大棚实训系统。该系统具备一定程度的真实感、沉浸感以及交互性,提高了用户的学习兴趣和互动体验度。在后续工作中,拟实现功能更加完善、人机交互界面更加友好的春植西瓜大棚实训系统。为了进一步增强用户体验的真实感和交互性,可以采用数据手套逼真模拟虚拟场景中物体的抓取、移动、旋转等动作,利用头盔显示器等3DVR图形显示与观察设备提高用户的沉浸感,使用户能更加真实而自然地与场景中三维物体进行交互。
参考文献:
[1] 朱 柱 基于Unity3D的虚拟实验系统设计与应用研究[D] 武汉:华中师范大学,2012
[2]孙 胜,田永生,冷丹丹,等 不同砧木对嫁接西瓜经济产量及叶片矿质营养含量的影响[J] 植物营养与肥料学报,2010,16(1):179-184
[3]赵 姜,张 琳,王志丹,等 我国居民西瓜消费特征及影响因素分析[J] 中国蔬菜,2013(6):17-23
[4]石教英 虚拟现实基础及应用算法[M] 北京:科学出版社,2002
[5]Xiao B X,Guo X Y,Du X H,et al An interactive digital design system for corn modeling[J] Mathematical and Computer Modelling,2010,51(11/12):1383-1389
[6]赵春江,陆声链,郭新宇,等 西瓜三维形态几何建模和真实感绘制技术研究[J] 中国农业科学,2008,41(12):4155-4163
[7]Kenneth C 游戏开发大全[M] 北京:清华大学出版社,2005
[8]宣雨松 Unity3D游戏开发[M] 北京:人民邮电出版社,2012
[9]蔡 翊 基于Unity3D的金丝峡地质公园虚拟旅游系统的研究与实现[D] 西安:西安科技大学,2012
关键词: Unity3D;大棚西瓜;虚拟现实技术
中图分类号: S126 文献标志码: A
文章编号:1002-1302(2015)08-0416-03
虚拟现实技术别称灵境技术,为用户提供视觉、听觉、触觉等感官模拟,让用户沉浸在计算机生成的三维虚拟世界中,确保用户可以及时、无限制地通过语言、手势等方式与三维空间内的事物进行实时交互 [1]。虚拟现实技术最初应用于军事、航空航天领域,近年来已经广泛应用于工业、建筑设计、文化娱乐、教育培训等领域。西瓜属葫芦科,原产于非洲,喜温耐热,1年生蔓性草本植物,在我国栽培历史悠久 [2]。我国是世界上最大的西瓜生产国,同时也是西瓜消费大国。近年来,随着人们生活水平的提高,水果在我国居民食物消费中所占的比例明显增加,西瓜作为重要的鲜食水果,消费需求持续快速增长 [3]。我国西瓜种植面积日益扩大,尤其是在一些城市的近郊,西瓜成为促进农民增收的主要经济作物。西瓜种植技术培训课程也在各农林高校、职业院校以及农业技能推广站广泛开展。传统的西瓜种植培训主要采用教科书、上课板书、视频等方式,主要存在以下缺点:(1)传统教育培训采用教师口头授课或多媒体授课,机械式灌输教学内容,讲解形式枯燥;(2)学员须在同一地点集中接受同样内容的培训,教学缺乏灵活性;(3)在传统教学过程中,西瓜种植生长过程涉及到的农事耕作、苗床铺设、大棚开沟、接穗及砧木种子的挑选、消毒、播种等多个实践环节费时费力且成本较高。综上所述,传统的培训模式在人力、物力、互动性等方面的缺陷在一定程度上限制了西瓜种植技术的传播。本研究基于Unity3D开发平台,以西瓜春大棚技术规程为对象,设计了1款寓教于乐的西瓜实训系统,该系统综合了计算机动画、虚拟现实 [4]、人机交互以及网络技术,有效整合了西瓜生长过程管理所涉及的农学知识,为西瓜种植培训提供了虚拟互动电子教科书。
1 春植西瓜大棚实训系统设计
本系统适用于北京市大兴区,所以地理条件、土壤条件、气候条件已经基本确定。本系统根据西瓜实际种植生长时序与虚拟生长时序之间的比例建立时序对应关系,对西瓜生长过程进行模拟。采用任务驱动方式,提高用户的兴趣点、参与度。该系统开始运行之后,弹出完成相应任务的提示信息,任务完成之后,日历动态改变并触发完成下一个任务,既保证了西瓜种植的科学性,又增强用户互动体验效果。图1展示了春植西瓜大棚技术流程,图中标注的时间是系统仿真西瓜生长过程的模拟时间。
2 关键技术
根据西瓜种植技术规程,利用交互式参数化建模方法构建西瓜的三维虚拟模型,结合二三维交互、动画及场景渲染技术,建立了春大棚西瓜种植虚拟实训系统(图2)。
2 1 交互式植物参数化三维建模方法
构建西瓜生长过程中的三维模型是春大棚西瓜种植虚拟过程可视化表达的关键步骤。植物三维建模方法多样,针对不同的建模目的及应用要求,不同的建模方法可取得不同的建模效果。其中,起步较早、影响力较大同时应用较为广泛的建模方法为参数化建模方法,该方法使用一组参数来表示植物主要器官及植株三维形态结构 [5]。通常以交互式的方式实现对参数的动态调整和编辑,以达到修改模型三维形态的目的。从西瓜形态结构上看,西瓜地上部主要由主蔓、侧蔓两部分构成,蔓上着生叶子、花、果实、卷须等器官 [6]。西瓜蔓的横断面近似圆形,有棱角。瓜蔓有节,节上着生叶片或侧蔓。西瓜叶子由叶柄、叶片构成,叶子呈羽状、单片、互生、叶缘深缺刻,叶片表面有蜡质、绒毛。本研究采用交互式参数化建模方法,首先使用Immersion G2LX三维数字化仪采集田间西瓜三维形态结构数据,构建西瓜三维模型,通过定义叶脉曲线、叶片边缘实现叶片特征的虚拟建模。最后按照典型西瓜的株型结构生成西瓜植株模型。创建的西瓜各个时期的生长模型如图3所示,需要将模型转换为fbx格式,然后导入 Unity3D 场景中使用。
2 2 鼠标拾取
鼠标拾取指在屏幕上用鼠标点击某个物体时,应用程序能返回该物体的1个标志、某些相关信息 [7]。本研究采用鼠标拾取算法实现用户与虚拟场景中的三维物体交互功能。先给需要进行交互的物体绑定碰撞体mesh collider,然后将鼠标拾取函数脚本绑定给该物体,在脚本中根据物体名进行不同的响应操作。OnMouseDown()、OnMouseOver()、OnMouseEnter()函数分别可以实现鼠标点击、悬浮、进入物体时的响应操作。虚拟场景中砧木和接穗种子在石台上晒种时,通过鼠标悬浮响应函数实现将瘪小、破损、虫蛀、发霉的种子剔除的功能。在西瓜伸蔓期,对植株进行修剪时采用二三维交互相结合的方式,点击二维剪刀图片,鼠标光标变换为剪刀,触碰到西瓜植株待修剪部分时,使用Tween Position实现待修剪部分下落到地面的动画,从而完成植株的修剪操作。图4展示了伸蔓期西瓜植株修剪过程。
采用鼠标拾取实现三维物体的拖动,算法基本思想为:首先将物体的世界坐标系转化为屏幕坐标系,z轴不变。由于鼠标的坐标系是二维的,需要转化成三维的世界坐标系,然后计算鼠标位置与物体的距离。当按下鼠标左键时,获取当前鼠标的二维坐标系位置并转化成三维坐标位置,再加上鼠标的移动量得到物体应该的移动量并赋给物体的transform的position属性,实现鼠标拖拽三维物体的交互功能。例如,文中在配制营养土时鼠标点击草炭,拖拽到沙壤土中。通过距离碰撞检测 [8],当距离小于既定阈值时,草炭消失,使用NGUI插件的TweenColor进行颜色渐变,实现营养土配制混合效果。[ (W10][TPJYN4 tif] 2 3 粒子系统
粒子系统采用有“生命”的微小粒子单元来模拟现实世界中的不规则物体,尤其是一些模糊、易扩散的物体,如火、烟等 [9]。通过许多小粒子的组合,模拟出不规则物体的运动形态,然后渲染显示。粒子系统中的每个小粒子都有很多属性,如大小、颜色、形状、透明度等。具体每个小粒子的属性则由该粒子系统具体模拟的物体决定。粒子系统是动态的,系统中的每个小粒子的生命周期都是从“产生”到“活动”再到“消亡”。随着时间的推移,新粒子逐渐加入到系统中,“存活”的粒子不断变化,旧的粒子逐渐死亡,从而实现粒子系统的模拟效果。本研究采用Unity3D自带的粒子系统实现砧木、接穗种子浸种时水龙头的流水动画。配制基肥时磷酸二铵、尿素、硫酸钾等撒到农家肥上的动画,大棚熏棚时点燃烟剂后的冒烟效果以及西瓜开花期喷施的叶面肥,都是通过调整粒子系统的相应参数实现其逼真的可视化表达。图5展示了部分粒子系统实现的效果。
2 4 视频播放
用户在互动体验过程中,若是根据系统中的简单提示信息不能完成任务或者想更加系统详细地了解西瓜种植流程,可以在场景任意漫游的同时观看视频课件,既能够娱乐放松,又能系统学习。Unity3D的视频文件通过Apple QuickTime导入,支持的文件类型是QuickTime。在Windows操作系统下导入视频需要安装QuickTime播放器。将视频资源导入到 Unity3D 场景中,建立音频源AudioSource、影片纹理 MovieTexture,影片纹理是从1个视频文件中创建的动画纹理,放置1个视频文件在项目的Asset文件夹中,可以导入要使用的视频,音频源在场景中播放音频剪辑AudioClip。使用C#脚本控制视频的播放暂停,图6是Unity3D场景中人工授粉视频截图。
2 5 模型动态实例化
西瓜植株生长过程中要经历定植期、伸蔓期、开花期、结果期、成熟期等过程,若是在场景中手动摆放模型,不仅耗时费力,而且资源占用空间大。通过对Unity实例化相关知识进行研究,本研究采用模型实例化算法解决上述问题。通过脚本动态实例化所需模型,并设置实例化的西瓜植株的行数、列数、行间距、列间距等信息,为不同时期的西瓜植株命名,然后通过动态查找物体名的方法销毁之前实例化的模型,再实例化新的模型。图7为采用C#脚本动态实例化的西瓜植株。
3 结论
本研究依据春植西瓜大棚技术规程,建立不同生长时期
的西瓜植株模型,对西瓜种植进行虚拟现实表达,构建了简单方便、开发成本低的春植西瓜大棚实训系统。该系统具备一定程度的真实感、沉浸感以及交互性,提高了用户的学习兴趣和互动体验度。在后续工作中,拟实现功能更加完善、人机交互界面更加友好的春植西瓜大棚实训系统。为了进一步增强用户体验的真实感和交互性,可以采用数据手套逼真模拟虚拟场景中物体的抓取、移动、旋转等动作,利用头盔显示器等3DVR图形显示与观察设备提高用户的沉浸感,使用户能更加真实而自然地与场景中三维物体进行交互。
参考文献:
[1] 朱 柱 基于Unity3D的虚拟实验系统设计与应用研究[D] 武汉:华中师范大学,2012
[2]孙 胜,田永生,冷丹丹,等 不同砧木对嫁接西瓜经济产量及叶片矿质营养含量的影响[J] 植物营养与肥料学报,2010,16(1):179-184
[3]赵 姜,张 琳,王志丹,等 我国居民西瓜消费特征及影响因素分析[J] 中国蔬菜,2013(6):17-23
[4]石教英 虚拟现实基础及应用算法[M] 北京:科学出版社,2002
[5]Xiao B X,Guo X Y,Du X H,et al An interactive digital design system for corn modeling[J] Mathematical and Computer Modelling,2010,51(11/12):1383-1389
[6]赵春江,陆声链,郭新宇,等 西瓜三维形态几何建模和真实感绘制技术研究[J] 中国农业科学,2008,41(12):4155-4163
[7]Kenneth C 游戏开发大全[M] 北京:清华大学出版社,2005
[8]宣雨松 Unity3D游戏开发[M] 北京:人民邮电出版社,2012
[9]蔡 翊 基于Unity3D的金丝峡地质公园虚拟旅游系统的研究与实现[D] 西安:西安科技大学,2012