基于Kinect的食品检测虚拟仿真实验研究
2018-08-01朱荣刘华张俊
朱荣,刘华,张俊
(1.中山大学新华学院信息科学学院,广州 510520;2.广州工商学院物流系,广州 510850)
1 体感交互技术
体感交互技术是继个人计算机、互联网、云计算、大数据之后的第五次信息技术领域的重大技术革命。体感交互是指通过体感外部设备、体感交互系统软件以及三维数字信息,来感应站在屏幕前的观看者,当观看者的动作发生变化时,屏幕显示的画面同时发生变化。
Kinect输入设备从一诞生就受到各个行业的关注和应用,除了具备语音识别和骨骼跟踪等功能外,其主要原因还在于微软没有对Kinect的输出做任何加密。通过USB接口,Kinect设备可以接入到任何显示端,并且还发布了官方版的Kinect for Windows SDK Beta Set⁃up,用户可以下载安装,当然它只能运行在32位或64位Windows 7以上的操作系统上,还需要安装Visual Studio 2010和.NET Framework 4.0等版本的软件。更让人着迷的是,Kinect for Windows SDK中的Kinect Fu⁃sion技术能通过移动Kinect传感器对物体进行扫描,几秒钟过后就能够创建足够平滑的重建的静态场景,产生点阵云以及3D表面模型,不需要花费大量的时间和精力来绘制3D模型,除此之外还可以通过使用Vi⁃sual Studio软件来编写C#语句,如此便能自由地下开发各种应用。
国内外对于Kinect体感技术的研究和应用基本主要在商业广告、游戏动漫、医疗康复等领域,对高校教育领域的研究,特别是虚拟实验方面的应用研究较少,而且Kinect体感技术在虚拟实验方面的研究还没有完全深入了解Kinect体感技术,仅限于应用它的手势识别和语言识别技术,在3D模型和仿真场景的构建方面大多使用虚拟现实引擎Unity 3D或者3ds Max来制作,花费大量的时间和精力。
2 虚拟实验综述
传统食品检验实验对实验场所的要求较高,对容纳的学生人数有较大限制。学生在进行传统食品检验实验操作时,无法避免仪器的损耗和某些意外情况的发生,如实验室操作不当引起的人身损伤。某些较为先进的食品检验设备耗资巨大,一般学校无法提供,导致学生只能通过文字了解,无法获得直观的认识。传统食品检验无法满足实验可重复性的需要,无法连贯进行下一个实验项目。传统实验需要进行实验准备工作,无法随时使用,对于学生自学以及实验技术的提升方面有一定的局限性。
通过网页呈现的虚拟实验操作平台其最大的问题在于jre.exe插件与操作系统的兼容问题,浏览器的兼容问题以及各种杀毒软件和安全卫士的拦截问题。虚拟仿真实验不能保证学生的自主参与,还是需要锁定在已配置好网络环境的专业实验室中,这样的虚拟实验平台需要专业的科技公司提供技术支持和维护,成本较高,并且可能更加适用于电子信息类的课程,其他的课程例如医学、食品等需要呈现立体三维模型的课程则无法达到要求。学生在实验过程中都是相互独立的个体,无法完成需要协同工作的实验内容。并且已经进入感官时代的今天,这样的虚拟实验无法给学生带来最真实的体验。
对虚拟现实应用来说,体感技术可以改善虚拟实验的交互输入方式,Kinect降低了虚拟现实使用的门槛,扩大了虚拟现实应用的范围,增加了虚拟现实表现的真实感。如何颠覆传统的食品检测实验,脱离虚拟实验所带来的问题,既能节约资源、降低成本,提高学生的兴趣、给予最真实的体验,达到理想的教学效果,培养企业所需的应用型人才是本项目研究的主要意义。在食品检测实验中,基于Kinect外部设备的体感交互技术需要在这几个方面与其进行整合:
(1)硬件配置,主要硬件包括Kinect传感器、配置较高的台式电脑,要求CPU主频3GHz或以上,多核处理器,拥有2G内存的独立显卡;
(2)软件配置,安装 Windows 7操作系统、.NET Framework 4.0、Visual Studio 2010、Kinect for Windows SDK 1.8(改进和强化了Kinect Fusion功能);
(3)准备食品检测实验中的所用器材,这些器材要求摆放在标准的位置,同时将整个实验操作过程录制生成视频文件;
(4)预先设计好Kinect传感器从哪些角度去扫描实验器材,通过Kinect for Windows SDK中的相关API这样Kinect Fusion才能比较完美地将真实的场景重构成3D模型;
(5)记录真实实验过程中的手势和肢体动作,通过Kinect for Windows SDK中的Kinect Interaction控件将需要设计的功能添加到应用程序中;
(6)设计交互界面,使用C#语句将食品检测实验的具体操作步骤模块化、图形化。
当然,如果要将食品检测实验通过体感技术开发成一个完整的实验系统,需要整合更为复杂的内容。
3 实验设计
在研究Kinect开发架构、Kinect基本构造和性能,探讨利用Kinect for Windows SDK提供的软件库与应用程序进行交互的可行性的基础上,可根据以下的思路进行设计:
(1)使用Kinect for Windows SDK中 Kinect Fusion技术,预先布置好实验器材等真实的场景重构成3D模型;
(2)记录真实实验过程中的手势和肢体动作,使用NITE提供的基本动作实现了对“实验仪器”的选择、移动和旋转三种操作;
(3)通过Kinect for Windows SDK中的Kinect Inter⁃action控件将需要设计的功能添加到应用程序中;
(4)设计交互界面,使用C#语句将食品检测实验的具体操作步骤模块化、图形化。
首先对食品检测实验操作过程进行分析调研,确定器材的种类,原料的配比。接着使用Kinect设备将器材进行拍摄,其中的3D深度摄像机技术可以捕捉空间位置。再通过Kinect Fusion技术将拍摄的图像重构成3D模型。然后使用Kinect中的人体骨骼追踪技术,通过软件计算出人的骨骼位置。通过Kinect设计自然交互,实现虚拟演示。在Visual Studio中运用C#语句控制Kinect设备的开关。最后在Visual Studio中运用C#语句设计图形用户界面。开发流程如图1所示。
图1 系统开发流程图
4 结语
通过Kinect技术辅助食品检测实验,减少资源消耗,增强实验操作和学习的沉浸感。系统的开发和应用,不仅对提高食品检测实验的教学质量起到一定的辅助作用,还对虚拟仿真资源在实验中的运用,以及研究体感技术对于传统实验方法和教学模式有所启迪,为体感技术引入高能耗、高污染的实验提供了新的思路。