我正在完成我的最后一年项目。我需要与Kinect合作来检测手部动作。我尝试了几种方法并得到了一些结果,但是,没有一种能够满足项目的需求。我很久以前就看到了this video,并且刚才知道他们最近开源了。所以我试了一下。
我现在的问题是如何设置。
上面这个很棒的项目使用OpenNI和Kinect。我尝试按照OpenCV tutorials从源代码构建它,让OpenCV与OpenNI一起工作。
问题:
它说"对于OpenNI框架,您需要安装开发版本和PrimeSensor模块。"但是当我按照链接时,他们中的一些人已经死了。似乎OpenNI 2.0不再使用PrimeSensor。
它还说在Cmake文件夹中,一个是OpenCV/Src
,另一个是/build
。但我下载的OpenCV没有任何Src文件夹。
我仍然将整个文件夹用作Src,并将其构建到构建文件夹并检查WITH OPENNI
。我在下载的OpenNI2中使用了Include和Lib文件夹,但是当我构建OpenCV解决方案(已经从CMake生成)时,所有构建都失败了。
此外,在使用Cmake生成时,即使我未来的OpenCV解决方案已经成功构建(事情并非如此),Cmake会一直告诉我PrimeSense是如何不可用的,这让我觉得如此不安全。 :(
我对32位和64位感到有点困惑。我想要遵循的上述项目说它适用于64位。但我使用MS C ++ Express,所有项目都是32位。那么我应该使用哪些PrimeSense驱动程序(在OpenNI2中给出)?
有谁能告诉我如何将所有这些东西(OpenNI2.0,OpenCV 2.4.3,PrimeSense)放在一起,这样我才能与Kinect合作?
答案 0 :(得分:3)
前段时间我写了两个教程:1)如何使用NITE设置OpenNI 1.5 2)如何使用OpenNI支持编译OpenCV。
我知道这不是你要求的,但是用OpenNI 2.0编译OpenCV的过程应该是相似的,可以帮助你理解你出错的地方。
我会尝试编写一个较新的教程,但由于我目前无法访问传感器,因此我可能无法测试它是否能够在最终完成。
编辑: 我已经编写了一些代码来使用OpenNI 2.x以OpenCV Mat格式访问Kinect数据流。可以找到代码github repo here。有关如何设置所有内容的详细指导可以在here找到。
答案 1 :(得分:1)
OpenNI 2.x比以前的版本先进得多。您无需安装primesense sensorkinect驱动程序。您可以将OpenNI 2.x与Microsoft Kinect SDK 1.x一起使用。
如果您使用的是Windows 7 x64,则安装64位和32位OpenNI 2.x,否则只安装32位。使用Visual Studio 2010或12进行配置。您可以关注此视频:
http://www.youtube.com/watch?v=ACqPsV0R4to
然后为Visual Studio 2010或12配置OpenCV。您可以点击此链接:
http://4someonehelp.blogspot.in/2013/04/install-opencv-245-using-visual-studio.html
由于