APP下载

基于学习分析技术的手势计算教学应用

2018-10-29邢海风

软件导刊 2018年8期
关键词:教学实践

邢海风

摘要:学习分析技术已经广泛运用于课堂教学各个层面,手势计算紧密联系实践教学环节。运用学习分析技术,准确把握学习者的学习状态,搭建了基于Kinect的3D手势计算环境,对人手的复杂运动形态进行捕捉、分割、追踪与识别,并与实际进行对比验证。阐述了3D手势计算的内涵与特征,论证了其应用于教育的理论与实践基础,为进一步改进课堂教学策略,推动理论知识与教学实践相融合提出了建议。

关键词:手势计算;学习分析技术;教学实践

DOIDOI:10.11907/rjdk.172940

中图分类号:G434

文献标识码:A 文章编号:1672-7800(2018)008-0219-04

英文摘要Abstract:Current, learning analytics technology has been widely used in all aspects of classroom teaching. Gestures computing is closely connected with teaching links. First of all, this paper expounds the connotation and characteristics of 3D gesture to computing and demonstrates its application in the education theory and practice. By the application of the learning analytics technology to accurately grasp the status in the field of learning, we set up a computing environment based on the 3D gesture from Kinect to capture, segmentate, track and identify the complex movement forms of a man's hand, and the actual results were compared with reality. The strategies of how to further improve classroom teaching are also proposed to promote integration of theory with teaching practice.

英文關键词Key Words:3D gesture-based computing;learning analytics technology;teaching practical

0 引言

学习分析技术在教学领域的作用日渐突出,特别是对实践教学环节中的一些数据分析更为清晰,能更多视角地反馈教学质量,有效实施教学活动的预警与监控,能为分层次教学建立精准的个性化服务模型。

2011年“学习分析与知识国际学术会议”,第一次提出以学习数据的测量、收集、分析及报告为依据,解析与改善学习环境。目前,学习分析已成为炙手可热的研究领域,掀起了教育信息化新浪潮[1]。

1 学习分析技术相关概念

学习分析技术是指以提高学习效果和质量为目标,对学习系统中分析与处理后的海量数据进行解读,实现数据可视化,获得学习状态的预测和教学过程的干预。学习分析技术不仅将优化教学资源,改进教学质量,而且为优化教学管理、改善教学环境提供了精准数据支持,正如乔纳森[2]所言:“技术的发展刺激了研究者和教育实践者去拓展学习的概念和开展学习环境的设计。”

2 手势计算相关概念

Dan Saffer[3]将手势定义为“在不借助任何输入设备的情况下,能被数字化系统感知并反馈的任意身体运动”。手势是一种符合人类日常习惯的交互手段,现实生活中的交流通常会辅以手势来表达特定的情感或传递某些信息[4]。3D手势计算起初用于虚拟现实环境下用户与三维对象的互动,典型的交互任务包括导航、选择、操控以及系统控制[5]。

手势计算(Gesture-Based Computing,也称基于手势的计算),属于自然用户界面领域的研究课题,强调用户使用自己的身体直接作为输入设备,具体指“通过指尖、人手、手臂以及身体等的运动与计算机发生的自然交互”[6]。

2.1 手势计算技术模型

3D手势计算起初用于虚拟现实环境下用户与三维对象的互动,典型的交互任务包括导航、选择、操控以及系统控制[7],3D手势计算建立了自由手势的完整规则[8]。手势计算有多种技术模型,隐马尔科夫HMM技术较为成功的案例是微软的Kinect捕捉用户的动作游戏平台。隐马尔科夫HMM模型将采样与参考模型集的似然度比较,判断最大值从而确定实验样本的类别。

用户的动态手势识别,先根据Kinect捕捉掌心运行轨迹,再以其切线角度为坐标,采用隐马尔科夫模型对动态手势进行有效采集。隐马尔可夫模型非常适合描述序列模型,尤其适合上下文相关场合[9]。

2.2 手势计算基本原理

手势计算在实践教学环节的应用是一项新探索。学习者之所以能通过3D手势计算理解认知领域涉及的复杂内容,潜在机制就是借助身体经验的实体表征,扩展大脑对这些抽象知识的概念图示[10]。系统设计几个关键点如下:

2.2.1 手势捕捉

系统使用Kinect for Windows作为手势捕捉工具,与Kinect for XBOX版本相比,它的near mode模式在0.4~0.8m内仍可获得稳定的深度图像,满足用户手势轨迹要求。此外,Kinect搭配了追焦技术,底座马达会随人手位置的移动而适当转动。当手势运动时,Kinect机身上的3个镜头同时工作,减少光照不佳、变化强烈因素的干扰,并借助SDK的核心NUI API实现彩色图像和深度图像的捕捉。

(1)中间镜头是一个常见的RGB Camera,即通常所说的彩色摄像头,它以30ftps的速度捕捉分辨率为640×480的彩色图像,这些图像以Kinect SDK自定义的PlanerImage格式存储。系统运用Kinect SDK存储的大量训练数据,通过彩色图像估算身体各部分所处位置,判定目标用户身份,并确保不会出现因衣着、人物、造型不同而产生的错误。

(2)左右两边分别为IR projector(红外线发射器)和IR Camera(红外线CMOS摄像头),共同构成3D Depth Sensor(3D深度传感器)。IR projector发出红外线并均匀地投射到整个Kinect的可视范围内,IR Camera接收反射光线获得图像的一个“深度场”,这个过程模拟人眼立体成像过程,两个摄像头以30ftps的速度相互配合捕捉用户动作,记录身体各部分的三维数据,以用户面对方向为基准,X、Y、Z的轴向指示如图1所示。X轴正轴向右,Y轴正轴向上,Z轴正轴指向Kinect sensor,Z轴信息代表人与Kinect镜头的距离。Kinect SDK对这组摄像头获取的三维数据进行计算,处理后产生深度图像,用于手势分割阶段获取用户双手的动作信息。深度图像本质是一个256灰阶的单色图,通过黑白光谱方式表示人与Kinect的距离:纯黑代表无穷远,纯白代表无穷近,黑白间的灰色对应人手各部分到Kinect的真实距离。

2.2.2 手势分割

手势分割指消除背景噪音的干扰,将待检测的身体部位从背景图像中提取出来,手势分割的好坏直接影响到后续识别效果。由于本系统需要分割出手指的精確信息以识别出手指的轨迹,故将人手定义为前景,人脸、衣物等部分定义为背景,具体步骤如图2所示。

(1)手形分割。根据Kinect之前捕获的深度图像,对人手与背景的像素点进行不同标记,人手的标记索引号为PlayerIndex。Kinect SDK已经具备了骨骼识别功能,即提供左右手关节点的三维位置,当PlayerIndex>0时,代表该像素点属于人手部分,完成了手形分割。

(2)手部轮廓分割。对得到的手形区域进行细致分割,目的是识别手部轮廓,方法是以用户的右手为对象,设置特定的颜色阈值,在深度图上进行逐点遍历,当深度图像上两个相邻像素点的颜色值居于阈值两侧且差别较大时,这两个像素点的中间便是手形轮廓。

(3)指尖分割。将得到的手形轮廓上的点存储到数组中,用K-curvature算法计算任意一点的近似曲率,即对任意轮廓上的J点point(J),计算point(J)和point(J-K)之间的向量与point(J)和point(J+K)之间向量的夹角。若轮廓线上某点的曲率过大时,代表该点是尖峰点,即手指指尖。

2.2.3 手势追踪

由于手势是一个动态的过程,相邻两帧图像中手势的位置表现出一定的邻近性,因此在分割出某一帧图像中的手势时,需要借助手势追踪过程:①对右手进行持续定位;②精确预测下一帧图像中手的位置,以有效降低重复手势分割所带来的数据计算量。手势追踪阶段经“匹配—修正—预测”这一循环实现:首先采取系统中已有的手势特征参数匹配求解当前图像中手势的位置,也就是运用之前一帧手势分割结果计算运动指尖的当前区域,然后用获取的最新手势信息对系统中的手势特征参数进行修正并实时更新,最后根据系统参数预测下一帧图像中手势的位置。当一轮循环结束后,预测结果传送至下一帧图像的匹配过程,开始新一轮手势追踪。

三维空间中手势追踪实质是对右手所勾画的轨迹进行实时监测,轨迹所代表的动态手势即为手指运动轨迹。

2.2.4 手势识别

手势识别是计算机理解人类手势从而完成一系列交互体验的过程。Kinect是使用CMOS红外感应器采集用户骨骼图像与全镜头下的深度图像、结构光与光源定标为Kinect的核心技术。结构光技术为获得对象3D坐标,使用激光散斑(Laser Speckle)在整个对象照射,光源射出具有三维z轴深度的“体编码”。当激光发射到相对粗糙的手指表面时形成高度随机的衍射散斑点,由于距离不同,图像位于空间散斑点也不相同,这为整个空间赋上标记,从而确保任何物体进入到照射空间并发生位移时,都能记录物体的位置信息。Kinect光源定标技术则强调测量之前对原始空间中散斑图案记录进行光源定标。假定用户的位移距离摄像头0.4~0.8m,则每隔50mm取一个参考平面,定标后存储30幅散斑图像,测量过程中拍摄一张待测场景散斑图案,然后将此图按照时间顺序与之前定标存储的30幅图像逐一做关系运算,由此获取30幅相关图像。空间中物体位置在相关图像上出现峰值,将这些峰值层层叠加,经差值运算后得到全场景三维形状。

识别算法包括特征提取、手势建模、分析识别3个步骤,如图3所示。

(1)通过特征提取算法提取出手势的4个基本属性,即运动、形状、位置和方向,并将这些属性转化为对应的数学矢量x1、x2、x3、x4存储在计算机中。

(2)将上述4个矢量分别由适当且有效的数学模型予以描述,该模型同时包含手势的空间属性和时间特征,即完成由xi到f(xi)的映射,此过程称为手势建模,是通过模型化方法将特征矢量转化为计算机可以处理的数据。

(3)通过机器学习或模式识别方法,将步骤(2)建立的模型与动态字库D(x)进行匹配,匹配程度最高的c(x)作为该用户的手势识别结果,最后将函数c(x)表征的信息X识别出来,完成对手势含义的理解。

2.2.5 应用显示

本系统使用OpenGL这一图形程序接口进行汉字的应用显示,把数据描述的手势识别结果转换成二维图像并予以呈现。OpenGL全称为Open Graphics Library,即开放图形数据库,适用于多种操作系统和硬件平台,并具有易于编程开发和高度的可重用性特点,基于OpenGL开发的应用程序便于在不同平台间移植。

在OpenGL下显示用户手势运动过程是:①运用C++编程语言作为开发环境,在系统内部建立字体的设备场景(MDC)。由于本系统目的是显示出只有黑白灰三类色彩的手势,故在设备场景中将文字设置为单色位图而非RGB图;②调用OpenGL库中的3类函数实现文字的绘制和显示,分别是以“gl”为前缀的核心函数,以“glu”为前缀的实用函数和以“aux”为前缀的编程辅助函数。在此主要使用绘制函数“void CGLFONT::Print(int x,int y,LPCTSTR lpszText)”,将手势识别的数据结果转换为计算机可识别的函数形式,其中x,y用于定位汉字显示位置,lpszText为要实现的汉字,之后使用平面位图显示函数glBitmap(…)将绘制的结果显示;③为获得平滑的显示效果,避免因大量数据计算造成的屏幕闪烁,使用OpenGL的双缓冲技术,将绘图命令置于屏幕外的缓冲区中执行。在这个缓冲区中存放着每个像素的信息,当有新像素需要显示时,迅速将显示结果交换到可视化窗口视图上。

3 实践教学中的学习分析技术

大数据技术应用于教育过程中,学习分析把采集、转存、建模、分析与数据可视化的各项指标和特征汇总起来。在各项指标体系中,存在数据采集、数据捕获、网页开发、图像识别等不同工作,大数据异构存储、语义识别、数据结构优化等困难亟待解决,尤其是构造不同种类的分析问题模型与差异化数据粒度分析等,对今后研究提出了更多挑战。数据挖掘、数据统计等课堂教学存在不少困难,需要使用学习分析工具开发能应用于课堂的操作系统平台。

学习分析过程中,教师对学习分析工具的应用是优化教学的有效途径,用户对使用的系统接受度取决于适用性与易用性。通过Kinect设计基于现场操作的手势计算系统,为未来课堂提供了一套符合实践教学需要的教学模型,为构建一种行之有效的课堂模式与新的教学手段开拓了一条新思路,信息技术在教学演示与实验领域的应用前景广阔。

参考文献:

[1] 吴永和,曹盼,邢万里,等.学习分析技术的发展和挑战——第四届学习分析与知识国际会议评析[J].开放教育研究,2012(12):72-80.

[2] JONASSE D H ,LAND M S.Theoretical foundations of learning environments[M].Lawrence Erlbaum Associates,Inc,2002.

[3] SAFFER D.Designing gestural interfaces[M].O′Reilly,2008.

[4] 叶海智,刘骏飞,王春丽,等.3D手势计算支持的教学应用研究[J].远程教育杂志,2017(1):45-51.

[5] SALMAN CHEEMA,MICHAEL HOFFMAN,JOSEPH J LA VIOLA JR.3D Gesture classification with linear acceleration and angular velocity sensing devices for video games[J].Entertainment Computing,2013 (4):11-24.

[6] THE NEW MEDIA CONSORTIUM.The 2010 Higher Ed Edition of the annual NMC horizon report [EB/OL].http://www.nmc.org/publication/nmc-horizon-report-2010-higher-ed-edition/,2010-3-10.

[7] SALMAN CHEEMA, MICHAEL HOFFMAN, JOSEPH J. 3D Gesture classification with linear acceleration and angular velocity sensing devices for video games[J].Entertainment Computing,2013 (4):11-24.

[8] CAPUTO M,DENKER K,DUMS B,et al.3D Hand gesture recognition based on sensor fusion of commodity hardware[J].Mensch & Computer,2012 (12):293-302.

[9] DUDA R O,HART P E,STORK D G.模式分类[M].第2版.北京:机械工业出版社,2003.

[10] SMITH C J P,MARTIN T.Mind your body: learning mathematics through Physical Action[C].Annual Conference of the American Educational Research Association,2012.

(責任编辑:杜能钢)

猜你喜欢

教学实践
立足课堂,因学施教
浅论高中化学生活化教学的实践与思考
浅谈初中物理实验教学与学生创新能力的培养
测量平差课程教学改革探讨与实践