2012-12-25 47 views
1

我的主要目標是通過Cmake設置基本的C++解決方案,在該解決方案中,我可以使用PCL和OpenCV的功能來處理從Kinect for Windows傳感器獲取的數據。將Kinect for Windows與PCL和OpenCV連接

我使用: - Kinect for Windows和SDK,因爲OpenNI與新版本的Kinect不兼容。 https://github.com/avin2/SensorKinect將是其中一種解決方案,但它不適用於Windows 8(根據自述文件)

然後我想,我將使用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++解決方案將更容易,而不是在項目屬性下設置適當的dirs。創建用於Kinect for Windows的Visual Studio C++解決方案的首選方法是什麼?

回答

1

使用Visual Studio 10/Visual Studio 11生成器可以正常工作。我用Visual Studio 10 Win64生成器,這是問題所在。