OpenNI – a complete and powerful Kinect middleware
The OpenNI (Open Natural Interaction) organization was also created in November 2010. It focuses on natural and organic user interfaces and develops its own framework for Kinect devices and uses. In December 2010, PrimeSense, one of the OpenNI members, released its open source drivers and motion-tracking middleware called NITE for Microsoft Kinect.
The OpenNI framework provides a series of APIs fulfilling natural interaction requirements, such as voice recognition, motion tracking, and hand and body gestures. To directly install OpenNI packages and Kinect drivers, we can go to the following web page:
http://www.openni.org/openni-sdk/
Before you download and use OpenNI, you'd better remove all existing Microsoft Kinect drivers from your device manager. These are shown in the following screenshot:
You may also refer to the following article about how to install different drivers:
http://www.codeproject.com/Articles/148251/How-to-Successfully-Install-Kinect-on-Windows-Open
Download appropriate OpenNI Binaries files (stable or unstable). At present, OpenNI provides Windows, Linux, and Mac OS X versions of their SDKs for use.
Install OpenNI by following the given instructions during installation. Please note that the stable version of OpenNI only supports Windows and Ubuntu at present, but its unstable version can even support Mac OS X and ARM platforms.
You may also require the NITE middleware for full-body tracking, accurate user skeleton joint tracking, and gesture recognition. It can be found at:
http://www.openni.org/files/nite/
You will find that NITE currently doesn't support ARM platforms. This means that skeleton tracking will be disabled on embedded platforms.
Now we can start an OpenNI program to see if it works. Run NiViewer.exe
from OpenNI\Samples\Bin\Release\
. You will see screenshots like the following one:
You may read something more about OpenNI programming at the following link:
http://www.openni.org/resources/
The OpenNI source code repository can also be found at GitHub:
https://github.com/OpenNI/OpenNI
PrimeSense Sensor Module for OpenNI can be found at: