Visual Studio 2013 和 Kinect SDK 2.0 无法找到或包含 <NuiApi.h>

Visual Studio 2013 and Kinect SDK 2.0 Cannot find or include <NuiApi.h>

我正在 Visual Studio 2013 年使用 C++ 学习 Kinect 开发(Windows 8.1 上的桌面版)。我已经从微软下载了 Kinect SDK 2.0。据我了解,NuiApi.h是Kinect SDK 2.0的一部分。但是,我不能包含它(#include 说无法打开源文件)。已在我的计算机中搜索该文件,但找不到。没有运气重新安装 Kinect SDK。下面是代码的相关部分:

#include<iostream>
#include<Windows.h>
#include<kinect.h>
#include<NuiApi.h>

一个类似的header,NuiKinectFusionApi.h,可以毫无问题地包含进来。

您需要按照这些步骤来包含#include。

1)在您的源代码中包含 windows.h。

2) 要使用 NUI API,请包含 MSR_NuiApi.h。地点:计划 Files\Microsoft 研究 KinectSDK\inc 为此,您可能希望将该路径添加到您的项目

Right-click 在你的项目上,属性,VC++ 目录

Add ;C:\Program Files\Microsoft Research KinectSDK\inc to the end of the include paths
Add ;C:\Program Files\Microsoft Research KinectSDK\lib to the end of the libraries paths

然后添加 #include <MSR_NuiApi.h> 到源文件顶部的包含。如果你使用预编译的 headers 那么你应该把它放在 stdafx.h 的下面,或者只是把它添加到 stdafx.h 中。

3) 要使用 Kinect 音频 API,请包含 MSRKinectAudio.h。地点:计划 Files\Microsoft 研究 KinectSDK\inc

4)Link 到 MSRKinectNUI.lib。地点:计划 Files\Microsoft 研究 KinectSDK\lib

5.Ensure 当您 运行 您的项目时,测试版 SDK DLL 就在您的路径上。 Location: \Program Files\Microsoft Research KinectSDK 这意味着您的二进制文件需要能够在 运行 时间找到这些文件。

最简单的方法是将它们添加到您的系统路径;前往

开始菜单 right-click 计算机,属性 高级系统设置 环境变量 PATH,在您的用户或系统设置中 - 编辑并追加;然后给定的路径 然后您可能需要重新启动 Visual Studio 来选择它,或者当您打开一个新的命令提示符时应该注册它。

或者,如果您不想更改系统设置,您可以例如使用

将其添加到打开的命令提示符
PATH=%PATH%;C:\Program Files\Microsoft Research KinectSDK

或者您可以确切地计算出哪些文件是必需的,并将它们复制到与您的二进制文件相同的目录中,等等。

来源:Getting the Kinect SDK to work with visual studio 2010 in c++

希望对您有所帮助:)

您正在混合使用 2 个 kinect 版本!

对于kinect v1,您需要下载kinect v1.8驱动,然后使用NuiApi.h

对于kinect v2,您需要下载kinect v2.0驱动,然后使用kinect.h