我正在尝试在Windows 7 x64上使用OpenCV和Kinect,因此我安装了OpenNI,NITE和PrimeSense(由avin2提供)。
我使用CMake编译OpenCV 2.3.1,我检查过的CMake Flags一切正常,但我尝试使用一个简单的代码,它从未找到Kinect。
OpenNI和PrimeSense的所有样本都可以正常工作。 我已经安装了x86和x64驱动程序但它仍然无效!
我正在使用VideoCapture,并且isOpened,总是返回0。
任何人都知道解决方案吗?
答案 0 :(得分:1)
我在上周结束时在linux ubuntu 12.04下做了那件事并且工作正常。
尝试通过componant重新安装componant,然后重新编译openCV。
我上周结束了。
但我同意有些事情并不清楚如何处理。 我用一个assus xtion替换了kinect,现在它不起作用......但这是另一个话题。
关于PrimeSense硬件,因为我的kenow kinect是由PrimeSense制作的...而且PrimeSense是OpenNI项目的成员,该项目用于P.C.L库的背景。 ,openCV,以及ros的openni_camera堆栈......
答案 1 :(得分:1)
我已在Windows 7-64its(专业版)上安装了opencv kinect并且工作正常。
1.Drivers to kinect:here
注意强>
当您安装dirvers时,请确保“Windows更新”不会安装aditional
驱动程序。
提示:安装时断开互联网连接。 ;)
检入“设备管理器”并搜索PrimeSense。
这样的事情:
检查它是否正常工作。运行OpenNI示例。
2.OpenCV
下载:
...://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.3.1/OpenCV-2.3.1-win-superpack.exe/download
在cmake上配置opencv。记住检查“OpenNI”选项。 也许你会得到像“警告:PrimeSense ......”这样的错误,因为OpenCVFindOpenNI.cmake已经过时了。
你必须做一些改变。 转到此处下载更改:
点击here并下载(在页面底部:“以其他格式下载:原始格式”)。
您必须在原始文件“OpenCVFindOpenNI.cmake”中进行更改。 它位于根文件夹“OpenCV-2.3.1 \”
中您删除了“ - ”的行以及替换/添加的行“+”。
配置并编译openCV。 在此之后它会正常工作,至少它应该......:)
当然..你必须编译......;) 我的情况 - Visual Studio C ++ 9(2008) - (我只在发布模式下编译)
编译后你必须在系统补丁中设置“bin”。
运行示例:
“OpenCV-2.3.1 \ samples \ cpp \ kinect_maps.cpp”并享受。
答案 2 :(得分:0)