Kinect体感交互技术原理

初看Kinect,你或许只看到了3个像摄像头的东西,那么Kinect究竟是怎样实现体感交互的呢?Kinect for Windows SDK又有哪些基本功能呢?接下来将揭开Kinect在硬件、软件方面的神秘面纱。

Kinect的结构组成

下图给出了Kinect的整体结构。Kinect一共有3个摄像头,中间一个是RGB摄像头,用来获取640×480的彩色图像,每秒钟最多获取30帧图像;两边的是两个深度传感器,左侧的是红外线发射器,右侧的是红外线接收器,用来检测玩家的相对位置。Kinect的两侧是一组四元麦克风阵列,用于声源定位和语音识别;下方还有一个带内置马达的底座,可以调整俯仰角。

Kinect的硬件结构

Kinect for Windows SDK 简介及功能介绍

2011年6月17日,微软研究院发布的非商业授权版的Kinect for Windows SDK Beta吸引了众多开发者的目光,不过该版本只允许用于研究、测试和实验,不可以发布商业应用。2012年,微软分别在2月、5月和10月接连发布了商业授权版的Kinect for Windows SDK 1.0版本、1.5版本和1.6版本,此举在明确了微软盈利模式的同时,使得开发者可以进行软件开发,并销售开发的应用程序。

Kinect for Windows SDK目前支持Windows 7操作系统和Windows 8操作系统,开发环境使用Visual Studio 2010 Express及以上版本,支持的开发语言包括C++、C#和VB.NET。

Kinect for Windows SDK主要包括以下几个功能。

  • 骨骼追踪:对在Kinect视野范围内移动的一个或两个人进行骨骼追踪,可以追踪到人体上的20个结点(一般是24个节点)。此外,Kinect还支持更精确的人脸识别

  • 深度摄像头:利用“光编码”技术,通过深度传感器获取到视野内的环境三维位置信息。这种深度数据可以简单地理解为一张利用特殊摄像头获取到的图像,但是其每一个像素的数据不是普通彩色图片的像素值,而是这个像素的位置距离Kinect传感器的距离。由于这种技术是利用Kinect红外发射器发出的红外线对空间进行编码的,因此无论环境光线如何,测量结果都不会受到干扰。

  • 音频处理:与Microsoft Speech的语音识别API集成,使用一组具有消除噪音和回波的四元麦克风阵列,能够捕捉到声源附近有效范围之内的各种信息。

Kinect for Windows应用领域

目前,国外已经出现了很多使用Kinect开发的精彩应用,比如Kinect试衣镜Air Presenter演讲软件Kinect光剑Kinect街头霸王等。很多创意都可以在MSDN Channel 9的Coding4fun栏目里看到。

在国内,Kinect for Windows SDK Beta发布伊始,微软亚洲研究院便启动了“微软校园菁英计划”之Kinect Pioneer项目,在全国范围内动员微软学生技术俱乐部的同学们集思广益,提交他们基于Kinect的新创意,并向优秀的创意团队提供Kinect设备和技术支持。仅一个多月的开发时间,多个优秀创意团队便成功提交了Kinect创意项目原型,其中包括使用手势进行变脸的3D脸谱虚拟平台、Kinect教学助手、基于Kinect的网上试衣间等。在随后的2012微软精英大挑战Kinect主题上,来自全国30所高校的100余支队伍也积极参与到Kinect for Windows的开发当中,这使得Kinect在中国大学生中得到了全面的推广。

3D脸谱虚拟平台

下面简单介绍一下来自西安电子科技大学团队的3D脸谱虚拟平台。此创意将京剧这门传统艺术和新颖的Kinect技术结合到了一起,通过Kinect搭建了一个可以让京剧迷享受虚拟演唱体验的平台:一个提供脸谱、服装和场景的华丽舞台。凭借着Kinect的人体识别和传感技术,用户可以直接跳过繁复的化妆过程,用手势来选择自己喜爱的角色脸谱,生、旦、净、末、丑,一应俱全,选择完毕后,就可以对着屏幕表演喜爱的曲目并录像了,如图1-3所示。当与其他戏迷朋友分享视频时,他们可以欣赏到惟妙惟肖的场景和表演。这样的方式不仅能使老京剧迷们的交流更加便捷,还能让年轻人通过更炫的途径去了解这门生动的国粹。

kinect光剑

2011年12月2日,由微软亚洲研究院举办的Kinect for Windows研讨会在北京召开,吸引了来自众多行业和研究领域的专家学者以及全国各地的大学老师和学生。研讨会就Kinect的体感交互技术及其应用领域进行了交流和讨论,并且展示了国内基于Kinect for Windows SDK在各个应用领域的研发成果。下面选择一些有代表性的项目进行简要介绍。

  • 基于Kinect的手语翻译系统。手语翻译系统旨在解决聋哑人与正常人的沟通问题,利用Kinect对肢体动作的实时捕捉,对特定的手语动作进行识别,最终翻译成文字,这样不懂手语的人也可以跟聋哑人正常交流了。目前,该项目的研究已经取得了重大的进展,我们相信结合Kinect强大的体感交互技术,在不远的将来就会看到Kinect手语翻译系统成为聋哑人的得力助手。

  • 空中手写。空中手写软件巧妙地利用了Kinect对手部结点的实时追踪,用户只需对着Kinect在空气中比划,便能写出相应的汉字,并输入到计算机中。该项目为未来的手写输入提供了新的思路。

  • 虚拟试衣系统。虚拟试衣系统实现了不需用户真正穿上衣服便可看到衣服上身效果的虚拟试衣体验。用户只需站在屏幕前,选择虚拟试衣系统中存储的品牌衣服图片,系统会根据Kinect获取到的骨架数据自适应地穿在用户在屏幕中的影像上,达到轻轻松松试衣的效果。这样不仅使得试衣变得更加便捷、有趣,还能有效减少试衣成本。

  • Kinect版水果忍者。Kinect版水果忍者也是利用了Kinect的骨骼追踪技术,将触屏版的水果忍者游戏移植到Kinect的体感控制上。Kinect追踪玩家双手的移动轨迹,玩家只需对着屏幕划动双手便可切下水果,俨然真实版忍者,在娱乐的同时还能锻炼身体。

Xbox 360 Kinect Teardown

小结

Kinect是一种廉价的动作捕捉设备,适用于对动作捕捉精度要求非常严格的领域,这也是其未来发展的方向。另外,现在智能手机和平板电脑的发展非常迅猛,虽然现在看它们和PC会怎样发展,还没有定论,但是受此趋势影响,Kinect以后绝对会趋于小型化,可以断定这是其发展的必经之路。大家都知道,专业领域的产品用量通常不会很大,但是这个领域的技术更新相对较快,随着技术的完善,最终专业领域的技术一定会逐渐应用到消费者领域。互联网的发展历史就是很好的明证,其他许多成功普及的技术也都遵循着这样的发展轨迹。

初识Kinect之二相关推荐

  1. 初识MIMO(二):MIMO的信道容量及其仿真

    初识MIMO(二):MIMO的信道容量 一. SVD简介 SVD可以将一个矩阵分解为UΣVHU\Sigma V^HUΣVH的形式,U是大小为NRXN_{RX}NRX​的方阵,V是大小为NTXN_{TX ...

  2. HTML标签 初识笔记(二)

    HTML标签 初识笔记(二) hello world 我是前小白,我是一名平凡的小白级前端工程师. HTML 元素介绍 一.meta 元素 charset:网页字符编码 < meta chars ...

  3. 初识FPGA(二)(FPGA与ASIC及CPLD的对比)

    目录 简述 ASIC和FPGA之间的比较 FPGA和CPLD之间的比较 简述 ASIC是英文Application Specific Integrated Circuits的缩写,即专用集成电路,是指 ...

  4. 初识V4l2(二)-------浅析video_register_device

    在V4l2初识(一)中,我们已经知道当插上一个摄像头的时候,在uvc_driver.c中最终会调用函数video_register_device函数.接下来我们就简要分析这个函数做了哪些事情,揭开其神 ...

  5. linux 文件夹大小_技能“慧”|初识Linux(二)

    上期我们对Ubuntu的界面有了简单的认识,以及如何与本机之间进行文件传输,今天我们就来带大家一起了解一下命令行. 去可视化--命令行 虽然Ubuntu有着漂亮的图形界面,但是我们使用更多的还是命令行 ...

  6. 初识Python(二)

    一.变量 1.声明变量 #!/usr/bin/env python # -*- coding: utf-8 -*- num = 100 上述代码声明了一个变量,变量名为:num,变量num的值为:10 ...

  7. 初识Seata(二)

    目录 1.背景 2.环境 3.业务模型 4.数据库准备 1)订单库 2)库存库 3)账户库 5.微服务准备 1)pom.xml 2)注册中心准备 3)订单服务 1.背景 书接上回:初识Seata(一) ...

  8. HTML详解——初识html(二)

    文章目录 前言 一.HTML列表 1.HTML3种列表 2.列表练习题 二.HTML表格 1.表格语义化标签 2.表格基本结构 3.表格综合运用 4.表格跨行.跨列合并 5.表格练习题 三.HTML表 ...

  9. 从零开始搭建无人机导航系统(二)——初识传感器(二)

    前言  上一篇中,我们初步了解了多旋翼无人机最常用,也是最核心的几种传感器--IMU.气压计.磁力计.GPS.基于以上几种传感器,我们能够搭建一套完整的组合导航系统,从而对无人机的姿态.速度.位置等信 ...

  10. 初识canvas(二)

    上节文章中,给大家分享了canvas最基础的用法,包括绘制线条.控制渲染方式.绘制图形.作用域.添加阴影.清理.剪切等功能,本节将继续为大家分享canvas的基础用法,同时也是最后一节基础知识分享,之 ...

最新文章

  1. Android sqlite 数据库保存Date 类型
  2. 余承东:国内用华为P40 Pro+就能拍照测体温,还很精准
  3. 获取ip地理位置的 api接口 简介
  4. 【OkHttp】OkHttp 上传图片 ( 获取 SD 卡动态权限 | 跳转到相册界面选择图片 | 使用 OkHttp 上传图片文件 )
  5. js Array.prototype.slice.call(arguments,0) 理解
  6. ABAP开发常用的表
  7. OpenCV立体声匹配 stereo matching将L和R图像转换为视差和点云的实例(附完整代码)
  8. 企业怎样做好计算机应急响应工作
  9. Tomcat/weblogic session失效时间的几种设置方法
  10. 使用 SASS Mixin 编写 clean code
  11. 高效的企业测试-集成测试(3/6)
  12. 底部显示水平滚动_LG专利展示带有可滚动显示屏和触控笔的智能手机
  13. 如何统计区域内部公路总长度和绘制数据直方图
  14. 编辑按钮 php,自动编辑按钮-海豚PHP1.0.6完全开发手册-基于ThinkPHP5.0.10的快速开发框架...
  15. 计算机网络安全实训课程,计算机网络安全课程实验教学实践研究
  16. Android消息机制和应用
  17. RealSR性能大幅提升,旷视科技+快手科技+电子科大联合提出“先发散再收敛”的D2CSR
  18. 中通开放平台简介——连锁门店解决方案
  19. java版FFT/STFT——转载
  20. 《Java程序性能优化》

热门文章

  1. LeeCode 1467 dfs + 组合数
  2. word中html在哪,Win10 word模板路径在哪?Win10如何修改word模板路径?
  3. 499服务器响应,一边制造,一边讲解http状态码502|504|499|500
  4. 手写jQuery轮播图插件,即拿即用,更多接口,更少代码实现你想要的轮播图~~
  5. 淘宝店铺图片轮播在线制作技巧
  6. 详解vue中数据传递(父传子、子传父、兄弟之间以及vuex)代码附上
  7. 解决桌面单击右键反应慢的问题
  8. p站,一个神奇的网站
  9. 用python画一个机器猫歌词_Python实现海贼王的歌词组成词云图
  10. XSS靶场(二)xss.haozi