算是正式进军Kinect了,前段时间学的东西现在就忘了,于是从此开始记录一下。

  目前为止大部分的学习资料来自于Heresy的博客,写的非常优秀,清晰明了,十分感谢。开发语言为C++,应该会一直使用,但是也有可能更换为C#。

  文档位于MSDN,所有的用法都可以在这里找到。

  首先应该到微软官网下载SDK,安装完后就开始配置。

VS 2015的配置:

  在写项目之前首先要配置好VS的环境,我用的是VS 2015社区版,SDK版本为2.0,配置方式如下:

  • 首先,新建个项目,然后在【解决方案资源管理器】中右键项目名,选择【属性】
  • 在【C/C++】的【常规】里,【附加包含目录】中加入【$(KINECTSDK20_DIR)\inc】
  • 在【链接器】的【常规】里,【附加库目录】中加入【$(KINECTSDK20_DIR)\Lib\x86】
  • 在【链接器】的【输入】里,【附加依赖项】中加入【kinect20.lib】

  上面做完之后应该就可以编译运行了,但是我发现写代码时不会对【Kinect.h】中出现的函数这些进行自动补全,而且语法检查时提示【Kinect.h】找不到,如果你也出现此问题,那就在【解决方案资源管理器】中的【头文件】这里右键添加【Kinect.h】,它位于【C:\Program Files\Microsoft SDKs\Kinect\v2.0_1409\inc】中。

OpenCV的配置:

  我后期用到了OpenCV ,所以将OpenCV的配置方法也记录一下。OpenCV的配置方法网上有很多种,但是每个项目都要添加一遍那么多的东西,所以我采用了将其写成属性表直接导入的方法,方法如下:

  • 下载OpenCV并解压(我用的是3.0版本)
  • 右键单击【此电脑】,选择【属性】->【高级】->【环境变量】
  • 在系统变量里面新建变量,名为 【OPENCV】 ,值为opencv文件夹里build的路径,如 D:\opencv\build
  • 在系统变量里面编辑【 Path】 变量,在末尾添加 【;%OPENCV%\x86\vc12\bin】
  • 在网上搜索opencv300.props并下载
  • 在VS中,选择【视图】->【其它窗口】->【属性管理器】,然后在【属性管理器】中右键单击项目名,选择【添加现有属性表】,然后将opencv300.props添加进去

  有个问题是网上搜索到的opencv300.props可能会报错,并且要注意opencv300.props只适用于opencv3.0的版本。报错的话一般是编译时提示找不到xxx,解决方法是打开opencv300.props,找到提示的那一项并删除就可以,注意可能要删除很多个。如果不会的话也可以给我留言或者发邮件我给你发一份。

  好了,目前为止环境算是配置好了,另外再附上一份检测openCV是否配置正确的测试代码:

 #include <opencv2\opencv.hpp>
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("img.jpg"); //先要在项目的文件夹里放入一张名为img.jpg的图片来测试
if (img.empty())
{
cout << "error" << endl;
return ;
}
imshow("TEST", img);
waitKey(); return ;
}

Kinect For Windows V2开发日志一:开发环境的配置的更多相关文章

  1. Kinect for Windows V2和V1对照开发___深度数据获取并用OpenCV2.4.10显示

    V1深度分辨率:320x240 V2深度分辨率:512x424 1.  打开深度图像帧的方式 对于V1: hr = m_PNuiSensor->NuiImageStreamOpen( NUI_I ...

  2. Kinect for Windows V2和V1对照开发___彩色数据获取并用OpenCV2.4.10显示

    V1彩色分辨率:640x480 V2彩色分辨率:1920x1080 1,打开彩色图像帧的方式 对于V1: 使用NuiImageStreamOpen方法打开 hr = m_PNuiSensor-> ...

  3. Kinect for Windows V2开发教程

    教程 https://blog.csdn.net/openbug/article/details/80921437 Windows版Kinect SDK https://docs.microsoft. ...

  4. Kinect for Windows V2.0 新功能

    系统要求: win8  or  win8.1 硬件要求: 64位(x64)处理器 i7 2.5-GHz或更快的处理器 内置USB 3.0总线 4 GB RAM DX11图形适配器 外观: 第二代Kin ...

  5. 史上最佳 Mac+PhpStorm+XAMPP+Xdebug 集成开发和断点调试环境的配置

    在上一篇 PHP 系列的文章<PHP 集成开发环境比较>中,我根据自己的亲身体验,非常简略的介绍和对比了几款常用的集成开发环境,就我个人而言,比较推崇 Zend Studio 和 PhpS ...

  6. [转]史上最佳 Mac+PhpStorm+XAMPP+Xdebug 集成开发和断点调试环境的配置

    本文转自:https://www.cnblogs.com/lishiyun19/p/4470086.html 在上一篇 PHP 系列的文章<PHP 集成开发环境比较>中,我根据自己的亲身体 ...

  7. windows系统Android-sdk的下载与环境变量配置

    最近一段时间在做app的开发,作为前端而言,开发app并不像android工程师那样熟悉android开发:无论是使用cordova.js或者react-native开发都需要配置android开发环 ...

  8. Kinect For Windows V2开发日志八:侦测、追踪人体骨架

    简介 Kinect一个很强大的功能就是它可以侦测到人体的骨骼信息并追踪,在Kinect V2的SDK 2.0中,它最多可以同时获取到6个人.每个人25个关节点的信息,并且通过深度摄像头,可以同时获取到 ...

  9. Kinect For Windows V2开发日志六:人体的轮廓的表示

    Kinect中带了一种数据源,叫做BodyIndex,简单来说就是它利用深度摄像头识别出最多6个人体,并且用数据将属于人体的部分标记,将人体和背景区别开来.利用这一特性,就可以在环境中显示出人体的轮廓 ...

随机推荐

  1. Oracle 分区字段数据更新

    分区字段是不允许进行update操作的,如果有对分区字段行进update,就会报错——ORA-14402:更新分区关键字列将导致分区的更改.  可以通过打开表的row movement属性来允许对分区 ...

  2. GetWindowThreadProcessId用法(转)

    函数功能:该函数返回创建指定窗口线程的标识和创建窗口的进程的标识符,后一项是可选的. 函数原型:DWORD GetWindowThreadProcessld(HWND hwnd,LPDWORD lpd ...

  3. flash 定义主舞台窗口大小

    1:[SWF(width=100 height=100)] 写在主类上面2:设置stageScaleMode属性为false;

  4. Ruby学习资源汇总

    from:http://segmentfault.com/a/1190000000362058 Ruby 语言 Try Ruby: 无需在你的系统中安装.Ruby,只要通过浏览器便可立即体验 Ruby ...

  5. CriminalIntent程序中Fragment相关内容

    Activity中托管UI fragment有两种方式: 添加fragment到acitivity中 在activity代码中添加fragment 第一种方法即将fragment添加到acitivit ...

  6. C#获取程序集的版本号和最后编译时间

    C#获取程序集的版本号:string ver = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToStrin ...

  7. PostgreSQL关闭不了时怎么办

    停止模式分为: smart, fast, immediate : 分别对应着:    SIGTERM, SIGINT, SIGQUIT 信号 当我采用 fast模式无法关机的时候,可以使用如下办法: ...

  8. JDBC连接各种数据库的方法(经典)

    1)连接Oracle 8/8i/9i/10g/11g(thin模式) Class.forName("oracle.JDBC.driver.OracleDriver").newIns ...

  9. Android 新浪微博代码

    新浪微博开发 [代码] android Weibo weibo=new Weibo(); weibo.setUserId("sdhjob@hotmail.com"); weibo. ...

  10. 虚拟文件系统VFS

    Linux的文件系统是由虚拟文件系统作为媒介搭建起来的,虚拟文件系统VFS(Virtual File System)是Linux内核层实现的一种架构,为用户空间提供统一的文件操作接口.它在内核内部为不 ...