一直以为Kinect是双目摄像机,或者是三目,看到那三个摄像头怎么可能不产生这样的疑惑,实际上它确实是单目摄像机,它三个摄像头分别为:红外发射器,RGB彩色相机,红外接收器。而其中,红外发射器和红外接收器组合在一起用于获取红外影像,该红外影像即保存着深度信息,即距离远近的深度信息。然后Kinect的芯片接收到红外深度影像和RGB彩色影像之后,进行像素匹配让色彩影像中的每个像素分别与深度影像中的一个像素对应,即PrimeSense注册过程。这能让应用程序准确了解收到的色彩影像中每个像素的深度。所有传感器信息(深度影像、色彩影像和音频)通过一个USB 2.0接口传送给主机,且时序一丝不差。

通过Kinect SDK可以获得同步的深度图像和彩色图像数据流。

并且Kinect还搭配了追焦技术,底座马达会随着对焦物体移动跟着转动。

Kinect安装教程

(1)Kinect1.0连接电脑

如果是独立盒装完整版Kinect那么有独立的电源,只需要插上电源,然后连接Kinect,然后通过USB连接电脑就可以了。但如果买的是Xbox360游戏机时带的Kinect,没有附带电源,那么需要购买独立的电源供应器。如下图所示:

而我的是机器人小车带的Kinect,有一个电源线但是是连接小车发动机的,需要用到小车的电池供电,很不方便,所以我又买了一个独立的电源适配器。

(2)驱动下载安装

安装 PrimeSense OpenNI,也可以用Kinect for Windows(目前已经到v1.8)。后者是官方的驱动安装包,也称为Kinect SDK。前者是开源的,开发免费。这里暂时使用的是PrimeSense OpenNI驱动。

安装成功后,可以到设备管理器查看是否有Kinect标志。

而且连接成功后,Kinect还会发光,但是只有当Kinect相关的应用程序调用它时它才会工作。

可以到驱动安装目录例如D:\OpenNI\Samples\Bin\Release下调用NiViewer.exe这款示例程序测试是否Kinect连接成功或驱动是否安装成功。

2. Kinect SDK开发

>>《OpenNI体感应用开发实战

安装OpenNI可以在目录中看到编译好的dll文件、链接库文件Lib以及头文件include。

开发教程VS

开发准备:

硬件:Kinect

软件:OpenNI、VS

获取的深度图像和彩色图像

>>《Kinect应用开发实战:用最自然的方式与机器对话》

OpenNI体感应用开发实战 (Kinect相机)的更多相关文章

  1. OpenNI结合Unity3D Kinect进行体感游戏开发(转)

    OpenNI结合Unity3D Kinect进行体感游戏开发(转) 楼主# 更多 发布于:2012-07-17 16:42     1. 下载安装Unity3D(目前版本为3.4)2. 下载OpenN ...

  2. 《Kinect应用开发实战》读书笔记---干货集合

    本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接: http://blog.csdn.net/cartzhang/article/details/45029841 作者:ca ...

  3. 第六篇 :微信公众平台开发实战Java版之如何自定义微信公众号菜单

    我们来了解一下 自定义菜单创建接口: http请求方式:POST(请使用https协议) https://api.weixin.qq.com/cgi-bin/menu/create?access_to ...

  4. 第二篇 :微信公众平台开发实战Java版之开启开发者模式,接入微信公众平台开发

    第一部分:微信公众号对接的基本介绍 一.填写服务器配置信息的介绍 登录微信公众平台官网后,进入到公众平台后台管理页面. 选择 公众号基本设置->基本配置 ,点击“修改配置”按钮,填写服务器地址( ...

  5. Python开发实战教程(8)-向网页提交获取数据

    来这里找志同道合的小伙伴!↑↑↑ Python应用现在如火如荼,应用范围很广.因其效率高开发迅速的优势,快速进入编程语言排行榜前几名.本系列文章致力于可以全面系统的介绍Python语言开发知识和相关知 ...

  6. [原创].NET 分布式架构开发实战五 Framework改进篇

    原文:[原创].NET 分布式架构开发实战五 Framework改进篇 .NET 分布式架构开发实战五 Framework改进篇 前言:本来打算这篇文章来写DAL的重构的,现在计划有点改变.之前的文章 ...

  7. 推荐一本书:清华出版的《Modbus软件开发实战指南》

    前言: 最近在研究Modbus开发,如果只是简单的了解了一些modbus基础知识,但是不够系统和全面. 其实,modbus虽然比较简单,但是如果不注意有很多坑,特别是寄存器的位数,大小端处理,浮点数, ...

  8. SDL 开发实战(二):SDL 2.0 核心 API 解析

    在上一篇文章 SDL 开发实战(一):SDL介绍及开发环境配置 中,我们配置好了SDL的开发环境,并成功运行了SDL的Hello World 代码.但是可能大部分人还是读不太明白具体Hello Wol ...

  9. 小D课堂【SpringBoot】接口Http协议开发实战

    ---恢复内容开始--- ====================2.SpringBoot接口Http协议开发实战 ============================= 1.SpringBoot ...

随机推荐

  1. unity VideoPlayer

    Events(事件) started:在调用play()后立刻调用 prepareCompleted:播放器准备完成时 seekCompleted:缓冲完成时

  2. Python基础杂点

    Black Hat Python Python Programming for Hackers and Pentesters by  Justin Seitz December 2014, 192 p ...

  3. scala --操作符和运算

    基本类型和操作 scala 的基本类型包括如下几种 数类型 ​ 整数类型 :Byte Short Int Long ​ 小数类型: Float Double 字符类型:Char 用'' 单引号包裹,是 ...

  4. oracle 网络环境配置

    PLSQL Developer连接Oracle11g 64位数据库配置详解 最近换了台64bit的电脑,所以oracle数据库也跟着换成了64bit的,不过 问题也随之产生,由于plsql devel ...

  5. windows本地blast

    详细可参考https://www.jianshu.com/p/2f125cdf8262:https://blog.csdn.net/qq_34296043/article/details/544277 ...

  6. js base64转二进制

    base64 编码规则 1.把3个字符变成4个字符.2.每76个字符加一个换行符.3.最后的结束符也要处理. 转换前 11111101, 11111111, 11111111 (二进制) 转换后 00 ...

  7. Android通过DeepLink方式跳转其他App传递参数

    网上对于安卓DeepLink方式跳转传递参数的例子较少,说的也不客观,实践之后发现还是有一些坑.其实为什么要用DeepLink方式跳转,有些是因为引流的原因,他们希望通过网页就能直接跳转到App的界面 ...

  8. 第五章 二叉树(d)二叉树实现

  9. mysql基本的增删改查和条件语句

    增 insert into 表名(列名,列名......) values("test1",23),("test2",23),("test3" ...

  10. 【原创】VB超强游戏外挂帮助类,封装了很多方法

    ''' <summary> ''' a very nice file that can be used on other projects ''' </summary> ''' ...