OpenNI体感应用开发实战 (Kinect相机)
一直以为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相机)的更多相关文章
- OpenNI结合Unity3D Kinect进行体感游戏开发(转)
OpenNI结合Unity3D Kinect进行体感游戏开发(转) 楼主# 更多 发布于:2012-07-17 16:42 1. 下载安装Unity3D(目前版本为3.4)2. 下载OpenN ...
- 《Kinect应用开发实战》读书笔记---干货集合
本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接: http://blog.csdn.net/cartzhang/article/details/45029841 作者:ca ...
- 第六篇 :微信公众平台开发实战Java版之如何自定义微信公众号菜单
我们来了解一下 自定义菜单创建接口: http请求方式:POST(请使用https协议) https://api.weixin.qq.com/cgi-bin/menu/create?access_to ...
- 第二篇 :微信公众平台开发实战Java版之开启开发者模式,接入微信公众平台开发
第一部分:微信公众号对接的基本介绍 一.填写服务器配置信息的介绍 登录微信公众平台官网后,进入到公众平台后台管理页面. 选择 公众号基本设置->基本配置 ,点击“修改配置”按钮,填写服务器地址( ...
- Python开发实战教程(8)-向网页提交获取数据
来这里找志同道合的小伙伴!↑↑↑ Python应用现在如火如荼,应用范围很广.因其效率高开发迅速的优势,快速进入编程语言排行榜前几名.本系列文章致力于可以全面系统的介绍Python语言开发知识和相关知 ...
- [原创].NET 分布式架构开发实战五 Framework改进篇
原文:[原创].NET 分布式架构开发实战五 Framework改进篇 .NET 分布式架构开发实战五 Framework改进篇 前言:本来打算这篇文章来写DAL的重构的,现在计划有点改变.之前的文章 ...
- 推荐一本书:清华出版的《Modbus软件开发实战指南》
前言: 最近在研究Modbus开发,如果只是简单的了解了一些modbus基础知识,但是不够系统和全面. 其实,modbus虽然比较简单,但是如果不注意有很多坑,特别是寄存器的位数,大小端处理,浮点数, ...
- SDL 开发实战(二):SDL 2.0 核心 API 解析
在上一篇文章 SDL 开发实战(一):SDL介绍及开发环境配置 中,我们配置好了SDL的开发环境,并成功运行了SDL的Hello World 代码.但是可能大部分人还是读不太明白具体Hello Wol ...
- 小D课堂【SpringBoot】接口Http协议开发实战
---恢复内容开始--- ====================2.SpringBoot接口Http协议开发实战 ============================= 1.SpringBoot ...
随机推荐
- 迷你MVVM框架 avalonjs 学习教程15、属性监听与模块通信
avalon的ViewModel对象从其内部EventManager里继承了三个方法,$watch.$unwatch.$fire三个方法,它们就是我们本节的主题. 词如其名,非常直白,一看就知道做什么 ...
- OpenCv 人脸识别 基础
#include <opencv2\opencv.hpp> #include <iostream> using namespace std; int main() { // 摄 ...
- mongodb first
use [database] 使用数据库,新增文档后,数据库被自动创建 show dbs 显示所有数据库 db.[document].insert() 插入数据库 例:db.persons.inser ...
- JDBC之使用配置文件链接数据库
写在前面 JDBC以一种统一的方式来对各种各样的数据库进行存取,JDBC为开发人员隐藏了不同数据库的不同特性.程序员开发时,知道要开发访问数据库的应用,于是将一个对应数据库的JDBC驱动程序类的引用进 ...
- oracle 字符处理
oracle获取字符串长度函数length()和hengthb() lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算stri ...
- CentOS 下安装 OpenOffice4.0
一.更新服务器 yum源 [root@APP2 /]# yum clean all [root@APP2 /]# yum makecache [root@APP2 /]# yum update 1.首 ...
- hdoj1014 互质
Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- 在UNITY中按钮的高亮用POINT灯实现,效果别具一番风味
在UNITY中按钮的高亮用POINT灯实现,效果别具一番风味
- 模块常用snippet
压缩,文件操作,数据库,md5,json, 压缩 import os, sys, time import zipfile # 解压 filename = 'callofdutyblackopszomb ...
- oracle基本查询入门(二) 子查询
一.子查询语法 SELECT select_list FROM table WHERE expr operator (SELECT select_list FROM table); 子查询在主查询之前 ...