内容简介
本书是国内本关于OpenNI的实战性著作,也是本基于Xtion设备的体感应用开发类著作。具有性,由国内体感应用开发领域的专家撰写,华硕官方和CNKinect社区提供支持;具有针对性,深入调研OpenNI社区开发者的需求,据此对内容进行编排;全面且系统地讲解了Xtion和OpenNI的功能使用、技术细节和工作原理,以及体感应用开发的各种知识和技巧;实战性强,包含多个有趣的综合性案例,详细分析和讲解案例的实现过程,确保读者通过本书掌握体感应用开发的技术和方法是本书的宗旨。
全书共19章,分为五个部分:基础篇(第1~3章)介绍了自然人机交互技术、Xtion硬件设备的功能和原理、OpenNI的功能和应用;准备篇(第4~6章)讲解了如何搭建OpenNI+Xtion的体感应用开发环境,以及OpenNI的一些基本功能;进阶篇(第7~13章)详细讲解了人体骨骼追踪、手势识别、手部追踪、录制与重播、生产节点的建立、声音数据的获取和使用、彩色图像数据的获取和贴图等OpenNI的重要功能及其应用方法;实战篇(第14~17章)详细讲解了4个有趣且具有代表性的案例,通过这部分内容读者将能掌握体感应用开发的流程与方法;篇(第18~19章)讲解了体感应用开发中会用到的多种功能,如运动捕捉和OpenNI Unity工具包等。
目录
目 录
Contents
前 言
第一部分 基础篇
第1章 自然人机交互 2
1.1 什么是自然交互 2
1.2 科幻电影场景的人机交互 3
1.3 自然人机交互技术发展现状 4
1.4 本章小结 8
第2章 Xtion硬件设备 9
2.1 Xtion设备简介 9
2.1.1 Xtion设备的类型 9
2.1.2 Xtion设备的功能 10
2.1.3 Xtion设备的规格 10
2.2 Xtion设备的优势 11
2.2.1 Xtion和Kinect的区别 11
2.2.2 硬件设备的软件支持 12
2.3 深度感应器原理 14
2.3.1 感应器架构 14
2.3.2 深度感应器工作原理 15
2.3.3 深度度分析 16
2.3.4 无法侦测物体深度 17
2.4 本章小结 19
第3章 OpenNI开发方案 20
3.1 初识OpenNI 20
3.1.1 OpenNI架构 20
3.1.2 OpenNI支持的模块 22
3.1.3 OpenNI的功能 23
3.1.4 OpenNI中的对象 24
3.1.5 OpenNI版本更新说明 25
3.2 OpenNI生产节点 27
3.2.1 生产节点的类型 28
3.2.2 生产节点概念图 28
3.2.3 生成和读取数据 30
3.2.4 OpenNI接口的配置 31
3.3 OpenNI应用 31
3.3.1 Xtion Controller应用 31
3.3.2 INOUT应用 31
3.3.3 Artec Studio应用 31
3.3.4 体感技术在初音未来上的应用 33
3.4 本章小结 33
第二部分 准备篇
第4章 Xtion开发准备工作 36
4.1 下载OpenNI及相应程式 36
4.1.1 下载SDK 36
4.1.2 下载Middleware 37
4.1.3 下载OpenNI以及相应的NITE 38
4.2 安装OpenNI 38
4.2.1 Windows环境下的准备工作 38
4.2.2 OpenNI档案及相关环境 39
4.2.3 加载设备驱动 40
4.2.4 检测Xtion设备 40
4.2.5 NiViewer基本控制方法 41
4.3 使用Xtion的注意事项 41
4.4 本章小结 42
第5章 搭建基础的Xtion体感开发环境 43
5.1 创建控制台工程 43
5.2 配置工程OpenNI环境 45
5.3 本章小结 49
第6章 初识Xtion体感开发 50
6.1 OpenNI基础应用 50
6.1.1 上下文对象初始化 50
6.1.2 创建生产节点 51
6.1.3 使用XML文档中的生产节点 52
6.1.4 错误信息返回 53
6.1.5 开始产生数据 54
6.1.6 停止产生数据 54
6.1.7 上下文对象资源释放 55
6.1.8 更新数据 55
6.1.9 镜像设置 56
6.1.10 图像位置校正 57
6.2 图生成器 58
6.2.1 获取支持图输出模式 58
6.2.2 图生成器输出模式 59
6.2.3 获取和设置图输出模式 59
6.2.4 获取图像素字节数 60
6.3 深度生成器 61
6.3.1 获取深度元数据对象 61
6.3.2 获取深度图 61
6.3.3 获取设备深度 62
6.3.4 获取设备视野范围 62
6.3.5 坐标和相对坐标转换 63
6.3.6 获取用户位置功能 64
6.4 用户生成器 64
6.4.1 获取用户数量 65
6.4.2 获取用户 65
6.4.3 获取用户质心 66
6.4.4 获取用户像素 66
6.4.5 注册用户回调函数 67
6.4.6 获取骨架功