将Kinect for Windows与PCL和OpenCV连接

时间:2012-12-25 00:46:39

标签: opencv kinect point-cloud-library

我的主要目标是使用Cmake设置基本的c ++解决方案,我可以使用PCL和OpenCV的功能来处理从Kinect for Windows传感器获取的数据。

我用: - 适用于Windows的Kinect以及SDK,因为OpenNI与新版本的Kinect不兼容。 https://github.com/avin2/SensorKinect将是解决方案之一,但它不适用于Windows 8(根据README文件)

然后我想,我将使用Cmake生成VS解决方案,我已尝试使用此CMakeLists.txt:

cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
project(MultiKinect)
add_executable(pcl pcl.cpp)
include_directories("C:/Program Files/Microsoft SDKs/Kinect/v1.6/inc")
link_directories("C:/Program Files/Microsoft SDKs/Kinect/v1.6/lib/x86")
target_link_libraries(pcl "C:/Program Files/Microsoft SDKs/Kinect/v1.6/lib/x86/Kinect10.lib")

但是我得到以下编译错误:

Error   1   error LNK2019: unresolved external symbol __imp_NuiGetSensorCount referenced in function main   
Error   2   error LNK1120: 1 unresolved externals

代码:

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

int main (int argc, char** argv)
{
    int number;
    NuiGetSensorCount(&number);

    return (0);
}

将来使用Cmake生成C ++解决方案会更容易,而不是在项目属性下设置正确的目录。创建用于Windows的Kinect的Visual Studio C ++解决方案的首选方法是什么?

1 个答案:

答案 0 :(得分:1)

使用Visual Studio 10 / Visual Studio 11生成器,它可以正常工作。我使用Visual Studio 10 Win64生成器,这就是问题所在。