当前位置:首页 > 工业技术
Kinect应用开发实战  用最自然的方式与机器对话

Kinect应用开发实战 用最自然的方式与机器对话PDF格式文档图书下载

工业技术

  • 购买点数:12
  • 作 者:余涛著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2013
  • ISBN:9787111400929
  • 标注页数:339 页
  • PDF页数:362 页
图书介绍:本书由微软资深企业架构师兼Kinect应用开发专家亲自执笔,既系统全面地讲解了Kinect技术的工作原理,又细致深入地讲解了Kinect交互设计、程序开发和企业应用展望。

查看更多关于Kinect应用开发实战 用最自然的方式与机器对话的内容

图书介绍

第一部分 准备篇 2

引言 从科幻电影谈起 2

第1章 自然人机交互技术漫谈 10

1.1自然人机交互技术的发展 10

1.1.1第六感设备:技术的组合创新 10

1.1.2追影技术:摄像头也疯狂 12

1.1.3虚拟现实:真实的体验场景 13

1.1.4增强现实:真实与虚拟的叠加 14

1.1.5多点触摸:信息就在指尖 15

1.1.6语音识别:从ViaVoice到Siri 16

1.1.7眼球跟踪:从霍金的座椅谈起 17

1.1.8人脸识别:Photo DNA 19

1.1.9体感操作:达·芬奇手术机器人 20

1.1.10脑机界面:霍金座待的升级版 20

1.2“你就是控制器”——Kinect宣言 21

1.2.1 Kinect销售记录及命名来历 21

1.2.2未来照进现实 22

第二部分 原理篇 26

第2章 揭开Kinect的神秘面纱——硬件设备解剖 26

2.1两款Kinect传感器对比 26

2.2 Kinect传感器的硬件组成 28

2.2.1 Kinect的“心脏”——PS 1080 SoC 30

2.2.2 Kinect的“三只眼”——投影机和两个摄像头 32

2.2.3 Kinect的“四只耳朵”——麦克风阵列 34

2.2.4会摇摆的“相控雷达”——传动马达 35

2.2.5姿态控制——三轴加速度计 36

2.2.6 USB接口及电源 37

2.2.7 Kinect风扇控制 38

2.3 Kinect相关技术规格 38

2.3.1 Kinect近景模式 39

2.3.2 Kinect放大镜 40

2.4本章小结 40

第3章Kinect工作原理大揭秘 41

3.1 Kinect for Xbox 360的产品设计 42

3.2基于“管道”的系统架构 43

3.2.1骨骼跟踪 45

3.2.2动作识别 46

3.2.3人脸识别 48

3.2.4语音识别 49

3.3 Kinect眼里的三维世界 50

3.3.1深度数据是Kinect的精髓 51

3.3.2 2D视觉与3D视觉 55

3.4深度图像成像原理 56

3.4.1 ToF光学测距与结构光测量 56

3.4.2 Light Coding技术 57

3.4.3激光散斑原理 58

3.4.4光源标定 59

3.5从深度图像到骨骼图 60

3.5.1动静分离,识别人体 60

3.5.2人体部位分类 62

3.5.3从人体部位识别关节 63

3.5.4会“机器学习”的“Kinect大脑” 65

3.5.5骨骼跟踪的精度和效率 68

3.6创建你的Avatar 70

3.6.1“有骨有肉” 70

3.6.2泊松方程噪声滤除 70

3.6.3粗糙变平滑、缺陷自动补齐 71

3.7本章小结 71

第三部分 基础篇 74

第4章Kinect for Windows SDK导读 74

4.1什么是Kinect SDK 74

4.1.1 Kinect SDK的发展历程 74

4.1.2 SDK v1.5的新特性 75

4.1.3 SDK v1.5尚未提供的API 76

4.1.4从底层进行封装 76

4.2 Kinect for Windows体系架构 78

4.3应用层API详解 80

4.3.1 Kinect的核心NUI API 80

4.3.2 Kinect Audio DMO 82

4.3.3 Windows Speech SDK 83

4.4数据流概述 84

4.4.1彩色图像数据 84

4.4.2用户分割数据 85

4.4.3深度图像数据 86

4.4.4如何获取数据流 87

4.5骨骼跟踪 89

4.5.1骨骼信息检索 90

4.5.2主动跟踪和被动跟踪 90

4.5.3骨骼跟踪对象选择 91

4.6 NUI坐标转换 92

4.6.1深度图像空间坐标 93

4.6.2骨骼空间坐标 93

4.6.3坐标变换 93

4.6.4传感器阵列和倾斜补偿 95

4.6.5地面测量 95

4.6.6骨骼镜像 95

4.7本章小结 96

第5章Kinect用户交互设计的若干思考 97

5.1 Xbox 360 Kinect Hub界面和Metro风格 97

5.1.1什么是Metro风格 97

5.1.2 Kinect Hub手势原型设计 98

5.1.3“悬停选择”和“翻页控制” 99

5.2体感游戏的优势及局限性 100

5.2.1更多的自由度 101

5.2.2关节点重叠的处理办法 102

5.2.3情感因素和心理暗示 102

5.2.4 Kinect体感操作的局限性及对策 103

5.3用户交互的趋势和新特性 104

5.3.1 Kinect使交互“柔软化” 105

5.3.2用户交互设计也可能是一项专利 106

5.4 Kinect“体感操作”交互设计的七条军规 106

5.4.1控制手势集符合人类自然手势 107

5.4.2让用户的肢体移动幅度尽可能小 107

5.4.3操作界面的对象采用Metro风格 109

5.4.4“确认操作”保持简单、一致 109

5.4.5手势操作尽可能在同一个平面内 110

5.4.6从三维的视角去看交互设计 110

5.4.7配有简单明了的手势说明 111

5.5本章小结 112

第四部分 开发篇 114

第6章 开发前的准备工作 114

6.1开发Kinect应用所需的技能 114

6.2系统要求 115

6.3下载和安装Kinect SDK 116

6.3.1 Kinect for Windows SDK v1.5 118

6.3.2 Developer Toolkit 118

6.3.3 Kinect快速开发工具箱 119

6.3.4 XNA开发环境 119

6.4加载驱动、检验及测试 120

6.5配置开发环境 122

6.6要点和故障排除 122

6.7本章小结 123

第7章Hello,Kinect! 124

7.1一行代码的“Hello,Kinect!” 124

7.1.1创建WPF工程 124

7.1.2添加KinectDiagnosticViewer控件 126

7.1.3编写一行代码 127

7.1.4编译运行 127

7.2控制台界面HelloKinectMatrix 128

7.2.1创建Console工程 128

7.2.2编写代码 129

7.2.3运行效果 130

7.3 KinectContrib快速工程模板 130

7.4 KinectWpfViewers工具控件 131

7.5本章小结 132

第8章Kinect开发循序渐进 133

8.1一个简单的编程模型 133

8.1.1初始化、启用Kinect设备 134

8.1.2彩色图像流事件处理 136

8.1.3深度数据捕获 138

8.1.4骨骼跟踪 141

8.1.5关闭Kinect设备 145

8.1.6 Kinect设备状态管理及异常处理 145

8.2更专业的深度图 146

8.2.1改进转换方法 146

8.2.2事件处理 148

8.3控制Kinect仰角 148

8.3.1“你的塑身”游戏 149

8.3.2垂直调整Kinect仰角 150

8.4本章小结 151

第9章Kinect深度数据测量技术及应用 152

9.1什么是Kinect视角场 152

9.2深度值与实际距离的对比 153

9.3深度图像的直方图 155

9.3.1直方图统计信息的价值 156

9.3.2深度图像直方图的意义 158

9.4 Kinect深度数据测量的应用 159

9.4.1近景模式:自动锁屏工具 159

9.4.2 Kinect视角场几何推导:测量人体身高 163

9.4.3近距离探测:制作地形电子沙盘 169

9.5本章小结 170

第五部分 实例篇 172

第10章用Kinect表演“变脸” 172

10.1在人的面部变换脸谱 172

10.2代码实现 173

10.2.1 WPF工程、控件及初始化 173

10.2.2骨骼跟踪 176

10.2.3变脸及坐标变换 178

10.3合理暂停骨骼跟踪 181

10.4道具平滑跟随 181

10.5调整幕布大小 183

10.6练习作业 184

第11章用Kinect唤起“红白机”的回忆 185

11.1用身体控制马里奥 185

11.2代码实现 185

11.2.1 WPF工程、控件及初始化 185

11.2.2模拟键盘输入工具类 188

11.2.3肢体语言映射到键盘事件 192

11.3副产品:PPT演示“空手道” 193

11.4练习作业 195

第12章用Kinect玩PC版的《水果忍者》 197

12.1空气鼠标设计思路 197

12.1.1找到离Kinect最近的那个人 198

12.1.2兼容左手习惯和右手习惯 199

12.1.3从骨骼坐标系到鼠标坐标系 199

12.1.4模拟鼠标工具类 200

12.1.5让“空气鼠标”移动自如 202

12.1.6模拟鼠标左键事件 203

12.2在PC中用Kinect玩《水果忍者》 203

12.2.1核心代码示例 203

12.2.2如何双手挥刀 206

12.3更多游戏:《割绳子》 206

12.4练习作业 207

第13章 创建你的Kinect Hub Demo界面 208

13.1 Metro风格界面设计 208

13.2使用Kinect骨骼跟踪 209

13.3使用Coding4Fun Kinect Toolkit开发加速器 210

13.4悬停选择 210

13.5本章小结 213

第14章用Kinect导播天气预报 214

14.1天气预报是这样炼成的 214

14.1.1绘制幕布,定义前景图片 214

14.1.2对象定义及初始化 215

14.1.3实现“画中画”效果 216

14.2一些优化的话题 219

14.2.1使用Using及时回收资源 219

14.2.2使用WriteableBitmap优化图片显示性能 219

14.2.3多线程和“轮询模型” 220

14.2.4使用中值滤波边缘去噪 220

14.3 Kinect语音导播切换 221

14.3.1引用Microsoft.Speech命名空间 221

14.3.2音频数据流和语音识别引擎 221

14.3.3语音识别事件 223

14.4本章小结 224

第15章 基于Kinect的家庭监控系统 225

15.1通过Kinect进行目标探测 225

15.2使用计算机视觉库 226

15.2.1 Open CV程序库 226

15.2.2 Emgu CV引用 226

15.2.3保存快照 227

15.2.4录制视频 227

15.3目标人体探测和影像录制 228

15.4扩展功能和更多应用场景 231

15.5本章小结 231

第16章“Kinect牌”梦境录音笔 232

16.1 Kinect音频采集 232

16.1.1使用音频数据流 232

16.1.2“波束跟踪”信心值的另类用法 233

16.2音频录制 233

16.2.1 WAV文件 233

16.2.2 WAVEFORMATEX结构体 234

16.2.3梦境录音笔的实现 234

16.3练习作业 240

第六部分 进阶篇 242

第17章 再谈姿态识别和手势识别 242

17.1姿态和手势 242

17.2动作与算法 243

17.2.1如何设定动作集合 243

17.2.2借鉴正则表达式和状态机 244

17.2.3转换为几何三角问题 245

17.3常见手势识别 245

17.3.1挥手激活 245

17.3.2悬停按钮 246

17.3.3磁石悬停 247

17.3.4划动手势 247

17.3.5滑动解锁 248

17.3.6推按钮 249

17.3.7通用暂停 249

17.4工具介绍 250

17.4.1动作录制和识别GesturePak 250

17.4.2手和手指的“空气多点触摸” 251

17.5本章小结 253

第18章Kinect在手术室的应用原型 254

18.1原型设计 254

18.2交互设计 255

18.2.1“悬停选择”进行功能导航 255

18.2.2“空气鼠标”的激活和隐藏 256

18.2.3通过“划动”手势翻阅医学影像 257

18.2.4放大、缩小医学影像病灶部位 257

18.2.5“垂直摆动”翻阅病历 258

18.2.6体感操作结合语音控制 258

18.3体感操作的实现 259

18.3.1基于SwipeGestureRecognizer 259

18.3.2基于单个部位运动序列的轨迹分析匹配 262

18.3.3基于多个部位姿态快照的状态机匹配 266

18.4利用SDK v1.5的新特性 280

18.4.1近景模式下的上半身骨骼跟踪 280

18.4.2利用关节点朝向信息进行手势识别和三维操作 280

18.4.3人脸识别用于手术登录验证 283

18.4.4调试工具Kinect Studio 283

18.5本章小结 284

第19章Hello,Kinect 3D World! 285

19.1点、面、云 285

19.1.1像素和彩色图像帧 285

19.1.2深度图像帧和点云 285

19.1.3多Kinect设备的接入 286

19.2 Kinect体感应用开发工具简介 287

19.2.1软件开发平台XNA 287

19.2.2游戏引擎Unity 3D 288

19.2.3 3D场景重建工具ReconstructMe 289

19.3本章小结 289

第七部分 展望篇 292

第20章 奇思妙想——Kinect效应 292

20.1四旋翼飞行器的“导航雷达” 292

20.2宠物看护机器人 292

20.3空气吉他 293

20.4倒车雷达系统 294

20.5 Kinect购物车 294

20.6魔术道具 295

20.7本章小结 295

第21章Kinect企业级应用 296

21.1思维导图 296

21.2体感操作应用 297

21.2.1手术室 297

21.2.2体育运动竞技研究 297

21.2.3动作捕捉、CG动画制作 298

21.2.4虚拟试衣镜 298

21.2.5课堂 299

21.2.6虚拟汽车展厅 299

21.2.7管理你的银行账户 300

21.2.8聋哑人的同声翻译 300

21.3深度数据应用 301

21.3.1老年人监护 301

21.3.2康复训练 301

21.3.3家庭监控系统 302

21.3.4道路交通稽查 302

21.3.5冰川消融研究 303

21.3.6给宇航员称体重 304

21.4实物3D建模应用 304

21.4.1实物3D数字化 304

21.4.2文物3D模型“数字敦煌”计划 305

21.4.3 3D扫描和打印 306

21.5机器人视觉与控制 306

21.5.1地震搜救机器人 307

21.5.2深海探测机器人 307

21.5.3工程机械臂控制 307

21.6本章小结 308

第22章 下一代人机交互技术 309

22.1下一代Kinect技术若干猜想 309

22.2未来惊鸿一瞥 310

第八部分 附录 312

附录A Kinect SDK命名空间速查手册 312

附录B推荐阅读及网络资源 328

后记 338

参考资料 339

查看更多关于Kinect应用开发实战 用最自然的方式与机器对话的内容

返回顶部