搭建环境: windows 8 + VS2008
从PCL网上下载了一个All in one(MSVC2008)的安装包,直接默认安装,在安装到OpenNI时,弹出一个提示框
具体失败原因不太清楚,略过这一步,完成PCL安装,再重新安装更高版本的OpenNI + SensorKinect ,
电脑还是无法读取Kinect(在设备管理器里查看,如果电脑能出现
PrimeSense下正确识别Kinect三个设备(Audio,Camera,motor)说明kinect驱动正确)
原因可能是(自己总结的,不一定对,欢迎大神指正):
AllInOne包内的OpenNI版本与windows8不兼容, 导致kinect的驱动(SensorKinect依附于OpenNI)不能正确安装
电脑无法识别kinect
解决办法:1)先在Win8 下成功安装 OpenNI + SensorKinect ,正确之后
(电脑的设备管理器能出现PrimeSense下正确识别Kinect三个设备,即为Kinect驱动安装正确)
2) 再用预先编译好的第三方源码包搭建PCL开发环境
更简单的办法:换一台win7 的电脑!简直各种正确!各种不出错,看得你赏心悦目!
步骤1:在Win8 下成功安装 OpenNI + SensorKinect
OpenNI/NITEInstallation on Windows 8
http://fivedots.coe.psu.ac.th/~ad/kinect/installation.html
May 2014: PrimeSense was bought by Apple at the end of April, andthe OpenNI.org website was shut down.Fortunately, several sites have set up archives of the old OpenNI and NITEsoftware, such as Simple-OpenNI and StructureSensor.
When looking through these archives, it's important to rememberthat the code examples in my book use OpenNI version 1. It's quitedifferent from version 2, which sports many changes to the skeleton and handdetection functions, resulting in big changes to NITE as well. In other words,you need to find archive copies of version 1 of OpenNI andNITE to run my code. The following instructions explain how to do that.
This page is written in the form of a checklist. If you prefera wordier explanation, then please have a look at section 3 of the draft chapter. Remember that it refers to thenow-defunct OpenNI website from 2012, so ignore any weblink information in thatchapter.
1. Clean Up
Useful freeware tools for cleaning Windows: Revo Uninstaller, CCleaner
-
- use Revo Uninstaller to delete any applications that mention Kinect, Xbox , PrimeSense , OpenNI, NITE
- delete the C:\Program Files\PrimeSense and C:\Program Files\OpenNI directories (or the equivalents for your platform)
- uninstall any drivers that mention 'Kinect', 'Xbox' or 'PrimeSense' via Window's Device Manager
2. Download the Packages
Download the relevant OpenNI/NITE zip file from the Simple-OpenNI downloads website. Search for"All Downloads" to find suitable versions of OpenNI and NITE forWindows, Linux, and OSX. I recommend the following:
(NOTE: OpenNI不同的版本号与对应版本的NITE以及SensorKinect,如果版本不对应,可能会出现各种缺乏.dll错误)
- Windows 32-bit: OpenNI_NITE_Installer-win32-0.27.zip
- Windows 64-bit: OpenNI_NITE_Installer-win64-0.27.zip
- Linux 32-bit: OpenNI_NITE_Installer-Linux32-0.27.zip
- Linux 64-bit: OpenNI_NITE_Installer-Linux64-0.27.zip
- OSX: OpenNI_NITE_Installer-OSX-0.24.zip
32-bit zip file ( OpenNI_NITE_Installer-win32-0.27.zip) contains four installers:
- nite-win32-1.5.2.21-dev.msi
- openni-win32-1.5.4.0-dev.msi
- SensorKinect092-Bin-Win32-v5.1.2.1.msi
- sensor-win32-5.1.2.1-redist.msi
For example, the Windows 64-bit zipfile ( OpenNI_NITE_Installer-win64-0.27.zip) contains four installers:
- nite-win64-1.5.2.21-dev.msi
- openni-win64-1.5.4.0-dev.msi
- SensorKinect092-Bin-Win64-v5.1.2.1.msi
- sensor-win64-5.1.2.1-redist.msi
So for 64-bitwindows 8, we choose OpenNI_NITE_Installer-win64-0.27.zipfor the nextInstallment.
Thereare two installers containing the word "sensor", which relate to theSensorKinect driver. It seems that the driverinside SensorKinect092-Bin-Win32-v5.1.2.1.msi is compiled usingVC++ 2010 so you must have Microsoft stalledfor the driver to correctly execute. The redistributable isinside sensor-win32-5.1.2.1-redist.msi.
Ifyou don't want to install the 64-bit version of OpenNI on your 64-bit Windowsmachine, then you can use the 32-bit installer instead. Some good instructionson how to do that can be found here.
NOTE:
1.Pleasenote the version of Microsoft Visual Studio,
Ifyou chooseWindows 32-bit zip file,then Microsoft's VC++ 2010 redistributable is needed
2. For The 64-bit machine , OpenNI_NITE_Installer-win64-0.27.zipis recommended.
3. Installation
Installthe four downloaded packages in the order(注意顺序):
- OpenNI: openni-win32-1.5.4.0-dev.msi
- SensorKinect driver -- there are two steps: first sensor-win32-5.1.2.1-redist.msi, and then SensorKinect092-Bin-Win32-v5.1.2.1.msi
- NITE: nite-win32-1.5.2.21-dev.msi
Afterwards,check if the software is in the C:\ProgramFiles\OpenNI\ and C:\Program Files\PrimeSense\ directories.
插上Kinect
Toinstall the three hardware drivers (for motor, audio, and camera), you should:
- plug the Kinect into your PC and into the mains;
- this will trigger Windows into installing the drivers, but don't let the installation search for the drivers itself. Instead you should supply their location inC:\Program Files\PrimeSense\SensorKinect\Driver
该步骤具体细节:
1, Win+ x ---选择Device Manager
2, 选择unknown device---Kinect motor---右键选择更新驱动update driver
3.接下来,系统会跳出来一个对话框,询问要动搜寻更新,还是要手动安装;这时候,需要选取下面「浏览计算机上的驱动程序软件」这个选项,以进行手动指定。
4. 接下来,他会问驱动程序在哪里?如下图:
选择第一个选项,填入SensorKinect的driver所在的文件位置,我的是C:\Program Files\PrimeSense\SensorKinect\Driver
于是花费1分钟左右,安装成功!我激动啊!
成功的截图是这样滴:
Note: 由于SensorKinect是第三方破解驱动,没有签名,可能在windows8下安装会有问题,其中的一个解决办法是:禁用驱动强制签名
Windows8下禁用驱动强制签名方法(据说只能单次有效):