Pthreads-win32 - download and extract the latest pthreads-w32-x-x-x-release.exe: Find the /lib folder and copy the appropriate.dll library to /windows or /windows/system32 (see Library/includes to the right to figure out which one to use). Neither are focused on ROS, but people have written ROS drivers for both OpenNI and OpenKinect (freenect). (And even an effort to rationalize across both.) One advantage of OpenNI is that it provides an abstraction layer for many different depth cameras built on PrimeSense technology, making code more portable across different hardware. 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 for Windows, Linux, and OSX. I recommend the following. There is no need to manually download and install extra Intel components in this case. PrimeSense / Asus. Note that the Artec Studio 11 installation automatically includes the PrimeSense/Asus drivers, unless you clear the checkbox 'PrimeSense Carmine / ASUS XTion drivers' on the previous page of Artec Studio 11/12 installer.
May 2014: PrimeSense was bought by Apple at the end of April, and the OpenNI.org website was shut down. Fortunately, several sites have set up archives of the oldOpenNI and NITE software, such as Simple-OpenNI and Structure Sensor.
When looking through these archives, it's important to remember that thecode examples in my book use OpenNI version 1. It's quite different from version 2, which sports many changes tothe skeleton and hand detection functions, resulting in big changes to NITE as well. In other words, you need to find archive copies of version 1 of OpenNI and NITE to run my code.The following instructions explain how to do that.
This page is written in the form of a checklist. If you prefer a wordier explanation, thenplease have a look at section 3 of the draft chapter.Remember that it refers to the now-defunct OpenNI website from 2012, so ignore any weblink information in that chapter.
1. Clean Up
Useful freeware tools for cleaning Windows:Revo Uninstaller,CCleaner
- use Revo Uninstallerto delete any applications that mention 'Kinect', 'Xbox', 'PrimeSense', 'OpenNI' or 'NITE'
- delete the C:Program FilesPrimeSense and C:Program FilesOpenNI 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. Searchfor 'All Downloads' to find suitable versions of OpenNI and NITE for Windows, Linux, and OSX.I recommend the following:
- 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
For example, the Windows 32-bit zip file (OpenNI_NITE_Installer-win32-0.27.zip) contains four installers:
I've also made that zip file available here; it's 120 MB large.
There are two installers containing the word 'sensor', which relate to the SensorKinect driver. It seems that the driver inside SensorKinect092-Bin-Win32-v18.104.22.168.msi is compiled using VC++ 2010 so you musthaveMicrosoft's VC++ 2010 redistributable installed for the driver to correctlyexecute. The redistributable is inside sensor-win32-22.214.171.124-redist.msi.
If you don't want to install the 64-bit version of OpenNI on your 64-bit Windows machine, then you can use the 32-bit installer instead.Some good instructions on how to do that can be foundhere.
Install the four downloaded packages in the order:
- OpenNI: openni-win32-126.96.36.199-dev.msi
- SensorKinect driver -- there are two steps: first sensor-win32-188.8.131.52-redist.msi, and then SensorKinect092-Bin-Win32-v184.108.40.206.msi
- NITE: nite-win32-220.127.116.11-dev.msi
Afterwards, check if the software is in theC:Program FilesOpenNI and C:Program FilesPrimeSense directories.
To install 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 in C:Program FilesPrimeSenseSensorKinectDriver
- afterwards, check if the 3 drivers show up in Windows' Device Manager under a 'PrimeSense' header
Delete OpenNI's Java CLASSPATH environment variable via Windows' System control panel Advanced tab
4. Edit four XML Configuration Files
In C:Program FilesPrimeSenseNITEData edit:
In C:Program FilesOpenNIData edit:
The edits to these XML files are:
- add the PrimeSense license:
<License vendor='PrimeSense' key='0KOIk2JeIBYClPWVnMoRKn5cdY4='/>
<MapOutputMode>attributes to all the
<MapOutputMode xRes='640' yRes='480' FPS='30'/>
Look at SampleConfig.xml in the chapter 2 code for examples of these changes.
5. Test OpenNI and NITE
In C:Program FilesOpenNISamplesBinRelease, run the applications:
In C:Program FilesPrimeSenseNITESamplesBinRelease, run:
6. Start Java Programming
The Java wrappers for OpenNI and NITE are part of the installation, so you can nowstart programming. For details, please read the draft chapter.Navigation:
- Up to the Kinect Open Source Programming Secrets Index Page
- On to Chapters 1 and 2. Kinect Imaging
E-mail: [email protected]