基于Kinect体感识别技术的研究与实现_胡颖群

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
良好的数据结构既可以让系统的功能实现变得清晰自 然,也可以在一定程度上提高程序运行的效率。
配置信息类存储用于判断用户姿势的必要参数信 息。当系统初始化时,配置信息类需要自动初始化,读 取配置文件中的参数值。
5 基于 Kinect 漫游系统的运行
用户可以在飞机外部进行系统预设的姿势命令, 当走到悬梯后,会触发进入飞机内部场景。
图 2 为系统的硬件架构图,Kinect 作为用户交互 界面,获取用户的交互信息,系统处理机识别用户的输 入,并且处理漫游输出,最终漫游的视频信号输出到投 影仪设备。
图 1 第一层姿势识别数据流程图
3. 3 软件体系架构 根据系统的功能需求分析和系分析,可以明确
体感设备、后台姿势识别与前台漫游显示组成了核心 系统,实现大部分业务功能。在整个系统运行过程中, 任何影像的摄入都是通过体感设备进行处理,由后台 姿势识别程序控制工作流,最后由前台显示程序按照
本论述将总结基于 Kinect 姿势识别漫游系统的详 细解决方案。无论对于漫游系统的用户操控体验,还 是对基于 Kinect 的拓展应用的发展都有积极的意义。
2 原理与技术
2. 1 Kinect 软件开发方案 目前 Kinect 的软件开发方案主要有两个,分别是
微软公司提供的 Kinect for Windows SDK( Software Development Kit,软件开发工具包) 和 OpenNI( Open Natural Interaction,开放式自然操作) 组织提供的软件开 发方案。 2. 2 骨骼追踪
系统不断通过 Kinect 获取人体的骨架信息,当识 别出人体姿势为命令姿势时,就封装相应的键盘消息, 把消息发送到漫游演示系统。
19
甘肃科技纵横
信息技术
2013 年(第 42 卷)第 7 期
图 3 系统模块架构图
4. 3 系统数据结构设计 数据结构 是 计 算 机 存 储、组 织 数 据 的 方 式。 设 计
不过两者在细节上还有一些差别,Kinect for Windows SDK 的骨骼 追 踪 初 始 化 时 间 较 快,而 且 骨 骼 追 踪的准确率 较 高,OpenNI 框 架 在 关 节 点 相 交 并 较 为 接近的时候容易产生骨骼丢失,需要重新校正后才能 恢复正常,但是相比 OpenNI 框架,Kinect for Windows SDK 对 CPU 的 使 用 率 较 高,并 且 只 能 运 行 在 Windows7 及以后的操作系统中,OpenNI 具有性能和兼容 优势。
图 2 硬件系统架构图
4. 1. 2 软件系统架构 系统的软件架构: 系统处理机运行两个子系统,分
别为姿势识别系统和漫游显示系统,姿势识别系统把 识别出的命令信息传递到漫游显示系统。 4. 1. 3 系统模块架构
图 3 为系统的详解模块架构图,描述了每个子系 统的详细功能模块。 4. 2 系统业务流程
20
游的场景,本系统提供飞机外围和飞机舱内两种场景。
作者简介: 胡颖群( 1977—) ,女,汉族,江苏兴化人,大学本科,主要研究方向: 计算机工程与软件。
18
2013 年(第 42 卷)第 7 期
信息技术
甘肃科技纵横
在飞机场外场景中,用户可以漫游到舷梯入口,进而切 换进入飞机场内场景。在飞机舱内漫游时,用户可以 查看飞机舱内的一切设施,包括头等舱吧台、头等舱、 经济舱以及厕所等设施。
模块设计将把系统的功能实现进行清晰明确的定 义,是系统详细设计的基础。本部分将分别对后台姿 势识别子系统和前台显示子系统进行模块设计。
4 基于 Kinect 漫游系统的详细设计
4. 1 程序系统的结构 体感设备 Kinect、后台姿势识别子系统及前台漫
游演示子系统共同组成了基于 Kinect 的漫游系统。其 中 Kinect 作为用户的交互界面,追踪用户的骨骼框架; 姿势识别作为系统的命令控制器,将分析由用户的骨 骼框架得到的关节点信息,识别出相应的姿势,传递相 应的命令; 前台漫游演示系统作为系统的输出将根据 得到的命令,变换不同的场景,供用户体验。 4. 1. 1 硬件系统架构
鉴于 Kinect for Windows SDK 和 OpenNI 框架都在 不断的更新和完善,本系统的性能和精确性也将会不 断地提高。
6 结束语
本论述详细阐述了基于 Kinect 姿势识别漫游系统 的分析、设计及实现。经过实际环境下的测试,系统基 本实现了预期目标。可以看到,基于 Kinect 体感设备 的扩展应用具有良好的交互性、应用性和用户体验,在 技术不断的完善和创新过程中,这种把体感设备用于 用户交互 界 面 的 应 用 系 统 将 拥 有 更 加 广 阔 的 潜 力 和 空间。
其次,用户可以通过系统预设的姿势来控制漫游 过程。当用户摆出一个姿势后,系统应该按照用户的 命令进行漫游。具体应该有前进姿势、后退姿势、左平 移姿势、右平移姿势、左旋转姿势、右旋转姿势和停止 姿势。
用户在漫游过程中还可以用相应的姿势触发自动 合影功能,在系统预设背景下调整自己的姿势,5 秒的 倒计时后自动完成合影并保存合影照片。 3. 2 系统分析
参考文献: [1] Noonan,Cootes,and Hallett et al. " The design and initial
calibration of an optical tracking system using the Microsoft Kinect," Nuclear Science Symposium and Medical Imaging Conference ( NSS / MIC) ,2011 IEEE ,vol. ,no. ,pp. 3614 - 3617,23 - 29 Oct. 2011. [2] Frati and Prattichizzo. " Using Kinect for hand tracking and rendering in wearable haptics," World Haptics Conference ( WHC) ,2011 IEEE ,vol. ,no. ,pp. 317 - 321,21 - 24 June 2011. [3] Norman Villaroman,Dale Rowe,and Bret Swan. 2011. Teaching natural user interaction using OpenNI and the Microsoft Kinect sensor. In Proceedings of the 2011 conference on Information technology education ( SIGITE '11 ) . ACM, New York,NY,USA,227 - 232.
甘肃科技纵横
信息技术
2013 年(第 42 卷)第 7 期
基于 Kinect 体感识别技术的研究与实现
胡颖群
( 上海市虹口区业余大学,上海 200080)
摘 要: Kinect 作为一个体感周边外设,不仅改变了用户的娱乐体验,更为用户与机器的交互提供了全新的方式。本论述 将介绍以 Kinect 作为用户交互界面的姿势控制飞机漫游系统,该系统将 Kinect 的交互特性应用到漫游系统中,显著的增 强了用户体验。通过本系统的开发,将对基于 Kinect 的拓展应用进行一次完整实践,对基于 Kinect 拓展应用的发展起到 积极的作用。 关键词: Kinect; 软件工程; 姿势识别
数据流程图( 见图 1) 是一种能全面地描述信息系 统逻辑模型的主要工具,它在系统分析中主要有二种 目的: 一是显示数据在系统中的流向,二是描述处理 数据流的功能项目。
根据功能分析与系统分析的结论,将系统分为两 个子系统,分别为后台姿势识别系统和前台漫游显示 系统。
命令显示漫游场景。本系统实现高内聚低耦合,不同 模块间影响程度较低的系统。 3. 4 模块设计
无论是微软的 Kinect for Windows SDK,还是 OpenNI,都提供了人体骨骼追踪的功能。
骨骼追踪是 Kinect 的最核心技术,要利用 Kinect 创建真正意义上交互有趣和难忘的应用,除了 Kinect 硬件所产生的图像数据及深度数据外,还需要其它的 数据,这就是骨骼追踪技术产生的原因。骨骼追踪系 统一般采用的比景深图像处理技术更复杂的算法如矩 阵变换,机 器 学 习 及 其 他 方 式 来 确 定 骨 骼 点 的 坐 标。 骨骼追踪能够确定人体的各个部分,如哪部分是人体 的手、脚和头部等。骨骼追踪产生 X,Y,Z 数据来确定 这些骨骼点[2 - 3]。
图 4 为飞机内部场景图,用户同样在飞机外部进 行系统预设的姿势命令,在飞机内部进行漫游活动,观 察飞机的内部构造,包括头等舱、吧台、洗手间等。
图 4 飞机内部场景图
根据第四章对系统的详细设计,作者分别基于 Kinect for Windows SDK 和 OpenNI 框架完成了姿势识别 子系统的开发工作。从程序的运行效果来看,无论是 基于 Kinect for Windows SDK 还是基于 OpenNI 的子系 统都可以顺利完成系统的功能需求。
虚拟漫游,是虚拟现实( Visual Reality,VR) 技术的 重要分支,在建筑、旅游、游戏、航空、航天、医学等行业 发展很快。
因为传统的通过鼠标或者键盘来控制漫游的方式 不免会让用户觉得枯燥和单调,本论述主要研究如何 把 Kinect 的交互优势加入到漫游系统中来,通过将 Kinect 体感设备作为飞机漫游系统的交互界面,开发出 通过识别系统预先设定好的姿势来控制漫游过程的漫 游系统。真正让用户可以身体力行的参与到漫游过程 中来,为用户提供更好的交互体验[2]。
1 概述
1. 1 Kinect 的出现 2009 年 6 月 2 日,微软在 E3( The Electronic Enter-
tainment Expo,电子娱乐展览会) 大会上正式公布了 Xbox 360 体感周边外设 Kinect,它彻底颠覆了游戏的 单一操作,它可以捕捉玩家全身上下的动作,用身体来 进行游戏,带给玩家“免控制器的游戏与娱乐体验”。 1. 2 漫游系统
只要获得骨骼关节点的数据,就可以方便的进行 二次的开发,开发出多种交互良好的应用。骨骼关节 点数据也是本论述所研究的基于 Kinect 姿势识别飞机 漫游系统的基础。
3 基 于 Kinect 漫 游 系 统 的 需 求 分 析 与 总 体 设计
3. 1 需求分析 首先,作为一个飞机的漫游系统,需要提供用户漫
不过两者在细节上还有一些差别kinectforwindowssdk的骨骼追踪初始化时间较快而且骨骼追踪的准确率较高openni框架在关节点相交并较为接近的时候容易产生骨骼丢失需要重新校正后才能恢复正常但是相比openni框架kinectforwindowssdk对cpu的使用率较高并且只能运行在windows7及以后的操作系统中openni具有性能和兼容优势
由功能需求可以分析出本漫游系统可以分为互不 干扰的两个子系统。分别为后台姿势识别系统和前台 漫游演示系统。姿势识别系统主要接收 Kinect 的骨骼 跟踪关节点信息,分析用户的姿势,把得到的命令传递 给前台漫游演示系统,并且完成用户与飞机合影功能。 漫游演示 系 统 接 收 命 令 并 进 行 场 景 和 视 角 的 各 种 切 换,显示漫游场景视图。
相关文档
最新文档