Kinect开发之概述

    如今Kinect的应用越来越多了。好多以前不易解决的问题,随着Kinect的出现,许多新的算法被提出来解决之。最近我打算使用Kinect作一些算法上的验证,开始学习下Kinect的知识。在阅读了一些关于Kinect的材料后,将其总结在博客中,以供后来人参考。

1. Kinect简介

    Kinect是什么?Kinect是由微软开发,应用于Xbox 360和Xbox One主机的周边设备。它让玩家不需要手持或踩踏控制器,而是使用语音指令或手势来操作Xbox 360和Xbox One的系统界面。它也能捕捉玩家全身上下的动作,用身体来进行游戏,带给玩家“免控制器的游戏与娱乐体验”(FromWikiPedia)。

    Kinect怎么用?Kinect本身是随Xbox发售的,随着Kinect的广泛应用,也被应用于PC端。在PC端使用的时候,需要安装微软的官方SDK或者第三方开发的SDK(早期使用的较多)。从开发者角度来看,基于Kinect的系统架构如下:


Fig 1. Kinect应用接口

其实Kinect的应用分为硬件和软件两部分:Sensor和SDK。下面从两个方面介绍下Kinect的硬件和软件。

2. 硬件Sensor

    对于软件开发者来说,硬件的工作原理并不重要,只需要知道Sensor的输出(接口)就好了。但是这里我们还是简单介绍下Kinect Sensor的基本原理。从2010年微软开始出售Kinect以来,Kinect的sensor已经有了两代产品。第一代Sensor是以色列PrimeSense开发的,微软称为v1 Sensor,应用在XBox 360上(kinect for windows中的Sensor是在此基础上的小改进,以应用windows平台);第二代是微软撇开PrimeSense自己开发的,深度摄像头实现原理完全不同,称为v2 Sensor,应用在XBox One上。

 

                                                                   Fig.2   左 v1 sensor,右 v2 sensor

    v1 Sensor采用PrimeSense公司的距离图像传感器技术,该技术用红外激光向对象物照射特殊光学图案,然后根据投影在对象物上图案的失真情况等计算对象物的三维构造和距离。而v2 Sensor采用的是“TOF(Time-Of-Flight)方式”,该方式是向对象物照射光,根据反射光的到达时间来计测距离,是距离图像传感器常用的一种方式。除此之外,v2 Sensor还配备了1080p的RGB摄像头。

3. 软件SDK

    这部分是开发者着重需要了解的。在Kinect刚发布的时候,微软并未想到Kinect会掀起如此之大的风暴。因此,并未提供windows平台的API和SDK,只能在Xbox上使用Kinect。于是,一些大牛便开发了第三方的Kinect SDK。后来,微软在2011年发布了Kinect for windows beta版本,才有了官方的SDK。下面是SDK的框架:


Fig. 3 SDK结构

SDK的一些介绍可以在MSDN中查考,其官方网址戳这里



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值