张耀月
关键词:手势识别 虚拟展示 系统设计 无接触式交互 数字媒体
引言
随着信息技术的发展,国内外的博物馆及各类展厅等场所逐渐引入了人机交互技术用于辅助展品演示[1],利用不同类型的交互设备与交互方式构建互动化、多样化、娱乐化的数字展馆。例如,常州博物馆采用了8块高清触摸屏拼接而成的互动展示屏,实现藏品的数字化展示[2]。重庆三峡博物馆利用混合现实技术使得观众可以通过Holo Lens全息设备体验清末时期的风土人情,从互动中了解文物内在的故事[3]。故宫博物院的数字多宝阁展馆,利用18块高清屏幕展示了160余件馆藏文物虚拟模型,观者可以对模型进行触摸点击和旋转以查看文物细节,如图1。一些学者[4]也探索了虚拟现实和增强现实技术在博物馆等展馆中的应用。
总体来看,交互技术和展馆的融合发展已经取得了一定成果,但从人与物之间的交互方式分析,现阶段的研究与实践主要集中在触摸屏点击交互和借助手柄或VR设备的体感交互[5-6],这两种交互方式均建立在人与设备产生接触的基础上。自新冠肺炎疫情发生以来,无接触式的生活方式逐渐成为人们关注的热点[7]。因此,本文结合LeapMotion设备[8]、三维建模技术以及Unity3D开发平台进行虚拟文物交互系统的设计开发,探索利用手势变换达到观者与虚拟展品的互动,意在为后疫情时代各类展馆的数字化服务方式提供了一种新思路。
一、手势识别与Leap Motion设备
(一)手势与手势识别。手可以看作一种能够协助我们完成各种操作的工具,手的结构精密而复杂,主要由骨头、关节、韧带、神经等要素组成。手势一般被定义为通过手或手与手臂相结合做出的各种具体动作和姿势,手势具有丰富的灵活性并且应用广泛,人们可以在于日常生活中通过手势传递不同的语义和信息。按照人机交互的过程,手势可以分为无意义手势和有意义手势两种类型,有意义的手势可以向计算机传递特定指令,在传递指令之前,需要在计算机系统中对不同的手势含义进行设计和约束,即定义手势集合,以便在获取手势信息和状态后,计算机则是通过匹配集合中定义的手势实现特定的交互功能。
手势识别是通过算法识别人类手势的一种方法,通过手势识别可以让计算机理解人体的手部语言并作出相应反馈。随着这种直觉化交互方式的发展与应用,出现了许多新型且不依赖于传统计算机设备的交互形式[9]。根据获取手部信息的不同方式,手势识别技术可分为两类,第一类是基于传感器的手势识别技术[10],主要利用惯性传感器或者其他接触传感器对手势数据信息进行采集。这种技术的优点在于获取的手部数据比较精确,识别效果好,而缺点是用户需要佩戴数据手套等设备,佩戴过程繁琐且操作复杂从而导致用户体验降低。后续经过改进发展出的数据手环虽然缩小了设备体积,提高了用户的使用体验,但数据手环在识别过程中的准确度相对较低,使用成本也比数据手套高。第二类则是基于视觉的手势识别技术[7],如Kinect、Leap Motion等体感设备,这类体感交互设备在手势识别过程中采用的识别方式是借助设备内置的摄像头记录手势图像,再将图像数据传输给计算机处理,计算机通过影像分析提取手部的位置及形态信息进行识别。这种识别技术的优势在于用户可以摆脱数据手套等穿戴式设备在交互操作过程中带来的干扰与不适,并能以较低的成本让用户在自然状态下实现与计算机的互动。
(二)Leap motion原理及应用。Leap Motion交互设备是由同名公司于2013年推出的互动产品,利用手指和手掌的动作实现输入操作,用户与设备在无接触的状态下即可完成人机互动。LeapMotion主要由两个摄像头、三个红外灯以及光学传感器组成,外观设计小巧,方便携带与操作,并且其具备较高的识别精度,能够较为准确地检测手部信息。此设备具有操作简单、高效自然、实时交互等优势特点,使用 Leap Motion进行手势交互时,用户只需将手悬浮在设备上方约25cm处,即可在虚拟场景中获取实时渲染的手部模型并通过手势的变换在场景中实现相应的交互目标,如图2。
该设备配置的两个摄像头用于采集用户的手部信息,包括手指、手掌或者与手部类似的道具。在实际的交互操作中,当用户将手放到设备所覆盖的工作范围内时,Leap Motion利用其摄像头同时捕捉用户的手部图像,再通过三角测量的方法定位用户手部的三维坐标数据并且实时计算目标物的视差,由此得到其空间位置信息[11],进而分析用户的手势特征及运动过程,并在场景中以虚拟手部模型的形式实时显示[12]。
Leap Motion在娱乐、教育、艺术等方面都得到了发展和应用[13]。利用Leap motion设备与Unity3D平台,设计与开发人员构建了不同的手势交互虚拟应用场景,用户可以获得相比传统交互方式更加沉浸和自然的体验。在教育领域,动物解剖实验是较为成熟的一种应用方向,例如,Cat Explorer应用提供了一只小猫的卡通化模型,用户利用与Leap Motion的不同手势互动以一种直观的形式对小猫的生理结构进行解剖和学习,而卡通可爱的小猫造型与虚拟画面也为其增添了更多趣味性,如图3所示。Leap Motion設备在游戏领域的应用则更为丰富,这些娱乐类的应用项目主要展现了其无接触式的操作体验和多变的交互形式等特点。现阶段的游戏通常依靠PC和移动设备,用户借助键盘、鼠标、手柄等工具以及点击触控等技术进行体验,而Leap Motion的引入则带来了新颖的操作形式和多角度的感官体验,例如Octagon,这是一款基于手势交互的极简街机游戏,游戏机制类似于一般的跑酷游戏,但其更具挑战性的交互操作方式受到了玩家的喜爱,如图4所示。
二、虚拟文物交互系统设计
结合以上对手势识别和Leap Motion设备的分析,笔者对博物馆文物的展示与互动方式进行了设想,经过分析最终确定设计一个虚拟文物手势交互系统,该系统的应用场景为线下博物馆、展馆、科技馆等面向大众开放的公共展览场馆。旨在通过虚拟系统的搭建为观者提供更多样的参观体验,在此基础上借助手势识别技术改进现有的触控式数字化展览形式,为后疫情时代下人们在线下参观展馆时提供了一种更为安全的交互方式。
(一)设计工具与平台。虚拟文物交互系统采用Leap Motion作为手势交互设备,利用基于Leap Motion的手势识别技术为用户提供无接触式的交互体验方式。采用Unity3D作为系统的开发平台,Unity3D是由Unity Technologies公司开发的一个让用户自主创建如游戏、建筑、三维动画等多种类型项目的综合开发工具[14],可用于创作各种实时互动的2D或3D内容,支持包括手机、平板电脑、增强现实和虚拟现实等设备,应用广泛且易于开发,并且Leap Motion手势识别设备已有适用于Unity3D的资源包和开发案例,因此选择Unity3D作为本系统的开发平台。
(二)交互系统设计。本系统以宋朝汝瓷作为的核心展示对象,汝瓷作为瓷器的一种品类,从隋朝发展以来已有千年的历史,汝瓷的器物造型和装饰纹样都极具简洁美、意境美、和谐美。该交互系统的设计主要由三维建模技术、基于Leap Motion的手势识别技术、Unity3D平台三部分构成,融入了文物历史发展介绍、文物详情介绍、文物模型互动、插画与配乐等特色内容与交互功能,形成了一套完整且丰富的虚拟文物交互系统设计方案,为用户提供了新颖且安全的线下数字化观展方式,使用户的互动体验感得以提升,对文物及其文化的了解也更加深刻。虚拟文物交互系统严格按照系统开发的流程,经过分析、设计、开发、测试、迭代并完善系统内容[15]。本系统的主要开发流程分为三个部分,一是利用Photoshop图像处理软件和Maya建模软件对所选汝瓷文物进行贴图制作和建模,创建本系统所需要的基本三维模型和设计素材。二是在Unity3D中搭建交互系统的基本虚拟场景。最后通过Leap Motion设备与Unity3D的结合,利用代码实现具体的手势交互功能。详细开发流程如图5。
(三)系统特色与优势
1.无接触式的互动方式。基于Leap Motion手势交互是人机交互领域中一种广泛应用的技术,常见于体感游戏中。手势交互与博物馆等展馆的结合,一方面融合了历史文化和新兴技术,使传统实体文物的展示与传播更具娱乐趣味,提升用户体验,寓教于乐;另一方面,手势交互也提供了一种无接触的交互方式,用户通过悬浮于空间中的手势完成一系列交互操作,顺应了疫情以来人们对无接触式生活方式的选择和需求。
2.丰富的系统功能和内容。基于对汝瓷相关史料和研究文章的收集与分析,为用户提供了历史学习、名品汝瓷科普、互动娱乐等多功能为一体的文物交互系统,满足用户多方面的使用需求,帮助用户全面地感受和了解汝瓷文化。比如,用户可以通过本系统了解汝瓷的发展历史、制作工艺流程、汝瓷的器物造型特征、装饰纹样分析等知识,感受汝瓷文物的艺术价值与魅力。
3.多感官的使用体验。多样的感官体验让交互系统更具趣味性和吸引力。本系統在设计过程中结合了视觉设计和听觉设计两方面内容。视觉设计主要体现为系统的插画设计、界面图标设计和虚拟场景布局设计。插画设计融入了中国传统文化的元素,比如水墨风格的竹林、飞鸟、山水等。界面的图标和场景布局设计理念则是与汝瓷文化内涵一脉相承,传达了简洁、和谐、高雅的意境。系统的听觉设计表现在虚拟场景的背景音乐设置和场景变换时的音乐切换,不同的场景会出现不同的音乐,这些背景音乐的设置提升了系统的感染力,为用户提供身临其境的互动体验。
三、虚拟文物交互系统的整合与实现
通过编写Unity3D平台的脚本语言C#实现虚拟场景的流程整合与手势交互功能。核心内容包括文物历史发展介绍场景、汝瓷制作工艺介绍场景、文物详情介绍场景的搭建。添加插画素材和背景音乐以丰富系统。利用手势实现文物模型交互、虚拟场景切换和界面滑动展示。
(一)3D模型构建。对汝瓷进行三维建模时,为了尽可能还原文物的造型与特征,需要掌握每件文物各自的数据尺寸和纹路细节特征。由于本文所选文物的特殊性,无法通过实物扫描的方式采集精准的数据信息和轮廓特征。因此选择收集相关汝瓷文物的文献资料和图像资料等方式获取文物的尺寸数据和材质贴图素材。根据前期调研得到的数据及图片,在Photoshop中对图片素材进行进一步细化处理,绘制模型的基本轮廓与三视图,并根据实际比例进行调整。依据汝瓷文物的三视图,利用建模软件Maya创建初步的粗略模型,然后在Maya中利用可编辑的点、线、面,通过移动、缩放、挤压等操作对模型进行细微调整,使创建的虚拟汝瓷模型符合真实文物的尺寸比例和造型特征,本系统中所需要的10种汝瓷模型都依照此方法构建。完成三维模型的创建后,需要依据文物实际的纹理特征给三维模型赋予材质贴图。本系统首先利用Photoshop软件对收集的汝瓷文物图片进行初步处理,包括图片的曝光度、对比度、色调等参数的调整以及图片大小的裁剪,将处理后的贴图素材赋予到Maya中的材质球上,并进行UVW贴图调整,使得模型具备更高的拟真度。
(二)手势设计。Leap Motion手势交互设备定义了几种初始的动态手势,例如挥手、画圈、点击等操作,但本文所设计的虚拟文物交互系统中,这几种初始手势均无法实现特定的手势含义并完成设计方案中力求达到的交互目标功能。因此,结合前期的系统设计方案,针对用户在与系统互动过程中所涉及的交互操作,笔者对手势进行重新设计与定义。鉴于本交互系统的应用场景为公共展览空间,重新设计的手势应具备操作简单、区分度和识别度高、符合用户行为习惯等特征,以避免操作过程中出现识别错误等问题。手势设计完成后需结合实例进行测试与分析,判断手势是否达到预期的互动效果,以保证虚拟文物交互系统的可行性。根据设计方案,本系统预期达到的核心交互目标是用户可以借助Leap Motion手势交互设备实现与虚拟文物模型及系统界面的互动,具体包括控制文物模型的缩小与放大展示、360度旋转展示、场景界面的左右移动等功能。综合上述分析,笔者重新设计并定义了三种基于Leap Motion的动态手势,如图6。
1.控制模型缩小:手指合并握拳实现虚拟文物模型缩小。
2.控制模型放大:手掌张开实现虚拟文物模型放大。
3.控制模型360度旋转及界面的平移:手部在三维空间中任意方向移动实现模型在虚拟场景中360度旋转展示。手部左右移动控制场景界面实现左右平移展示。
(三)虚拟场景搭建。文物历史发展介绍场景与汝瓷制作工艺介绍场景均采用水墨插画与文字介绍相结合的表现形式,为用户提供了图文并茂的汝瓷文物知识,也使得本系统更具中国传统文化的特色与风格。这部分内容的实现借助了Photoshop软件绘制水墨插画,并对相关文字内容进行设计与排版,再将制作完成的插画与文字素材导入Unity3D平台中,利用Unity3D的画布工具(Canvas)创建交互界面,最终实现两个虚拟场景的设计和搭建,如图7。文物详情介绍场景则是采用二维画布与三维模型结合的设计表现形式,画面更具空间感,为用户提供多层次的视觉体验。同样的,该场景使用Photoshop设计文字素材,再利用Unity3D的画布工具创建虚拟场景的交互界面,最后将创建完成的三维文物模型导入场景并放置在二维画布前方,根据画布重文案的位置调整文物模型的比例大小和方位,以达到场景界面和谐统一,如图8。
(四)手势交互功能的实现。通过Leap Motion和Unity 3D的连接配置实现系统设计的手势交互功能,具体实现步骤包含以下两部分:
1.Leap Motion与Unity 3D环境配置。在Unity 3D菜单中选择Import Package的子选项Custom Package,导入Leap Motion的核心资源包。为了后续手势交互功能的实现,需要在场景中导入LeapMotion手部模型,在本文的虚拟文物交互系统实现过程中,选择了LoPoly Rigged Hand模型。将手部模型添加至场景并完成相关配置后,Leap Motion与Unity3D即可成功建立连接,场景中将对互动设备捕捉到的用户手部模型进行实时显示。
2.手势交互功能的实现。
(1)手势控制模型变化。结合前期设计的4种手势,利用脚本语言C#进行具体的代码编写以实现手势的动态变化进而控制虚拟模型缩小、放大与旋转展示。本系统中的模型缩放功能是通过测量手指的指尖与手掌掌心之间在虚拟三维空间中的距离大小实现,具体实现方法是:当五根手指的指尖与手掌掌心之间的距离均小于代码中预设的目标距离,即用户的手部逐渐握紧直至呈现握拳的状态时,虚拟模型由当前尺寸按照一定的速度缩小到设定的尺寸大小,进而实现虚拟文物模型的缩小。同理,当五根手指的指尖与手掌掌心之间的距离均大于预设距离值,即用户的手部由握紧状态向张开状态转变时,模型由当前尺寸大小按照一定速度放大,直至放大到设定的最大限度,从而实现手势控制虚拟文物模型的放大。虚拟模型的360度旋转展示的实现方法是利用摄像头监测用户手部的三维坐标信息,并使模型的旋转方向与手部坐标值在代码中建立数据联系,具体交互过程表现为用户将手放置在Leap Motion设备上方,当手部在空间中的任意方向进行移动时,文物模型可以在虚拟场景中基于自身的重心点按照预先设定的速度进行旋转展示,旋转的方向与用户手部移动的方向保持一致,以此给用户提供多角度的全面展示,如图9。
(2)手势控制界面滚动。场景界面的滚动展示功能通过对虚拟场景中的摄像机设置自动跟随实现,如图10。采用Leap Motion交互设备实现手势控制虚拟界面滚动展示时,在Unity3D中使场景中的摄像机自动跟随手部模型,此状态下摄像机可以跟随手部模型进行移动,在具体实现过程中,考虑到界面的移动是基于X轴水平方向上的左右平移,因此通过C#脚本的编写,对摄像机的移动方式进行限制,让其在Y轴垂直方向上的位置坐标数据保持不变,仅在水平方向上发生位置的平移变化,即可达到手势控制虚拟界面左右滚动的展示效果。
四、结果讨论
为了验证本虚拟交互系统中手势交互的可行性,对手势识别的准确性进行了实验测试与分析,在实验过程中记录相关数据并统计实验结果。本次实验随机招募了12名年龄范围在22至28岁之间的用户作为被测试人员,其中男性6人,女性6人,以確保性别平衡。实验借助一台笔记本电脑和一套Leap Motion手势交互设备完成,被测人员需要先熟悉本交互系统的内容、功能和手势操作,然后再开展正式的实验测试。
每一位被测人员都需要利用特定手势在交互系统中完成设定的任务,一共有4项测试任务,分别是控制模型缩小、控制模型放大、控制模型自由旋转、控制画布左右平移,4项任务涉及到本系统中的3个虚拟场景。在文物详情介绍场景中,被测人员需要完成针对文物模型控制的3种手势操作,分别是缩小、放大与旋转。在文物历史发展介绍和汝瓷制作工艺介绍场景中,被测人员需要完成手势左右移动控制画布的平移展示。
每项任务的时间限制为10秒钟,10秒钟内完成视为任务成功,若10秒钟内未实现手势的正确识别则视为失败。为了避免实验测试的偶然性,每一位被测人员均需要对这4种手势进行5次重复操作。实验过程中,笔者记录了每种手势的测试次数和正确数量,如表1。
从实验结果数据分析可以得出,“握拳”和“张开”手势具有很高的识别正确率,分别达到了96.6%和95.0%,而“旋转”和“平移”手势的识别正确率相对而言较低,没有达到90%。据笔者分析,造成这种实验结果的原因可能与不同手势的特征有关,前两种手势均只需在原空间位置基础上进行手部形态变化,而后两种手势则需要在空间中实现一定的位置变动,手部在运动过程中可能会超出LeapMotion的识别范围,因此识别正确率相对不高。但从总体实验结果来看,本系统所设计的互动手势都达到了较高的识别正确率,以此证明了本虚拟文物交互系统设计方案的的可行性。
结论
实验测试证明用户可以借助Leap Motion设备与虚拟文物进行无接触式的手势交互,Leap Motion具有无接触、易操作、低成本等特点,但由于其在准确度和有效识别范围等方面的问题,导致交互过程中会产生卡顿或识别不准确的情况,因此手势识别精度和效率优化是本系统需要深入研究的方向之一。此外,系统设计方案涵盖技术实现与艺术审美两个方面,方案设计与完成度还存在一定的改进空间。但本文设计与开发的虚拟文物交互系统将无接触式的手势交互技术应用到线下展览中,开发了一套具有手势交互功能、文物信息介绍功能和场景切换功能的较为综合的交互系统,为博物馆等公共空间展馆提供了一种后疫情时代下更安全的数字互动参考方式,也为展馆观者带来了更好的交互体验。