RealSense Driver for OpenNI2/NiTE2

What is OpenNI2/NiTE2

OpenNI2 is an open source software development kit for RGB-D sensor primarily developed by PrimeSense Inc. (acquired by Apple Inc. in 2013/11).
OpenNI2 is still widely used in various RGB-D sensors even after end of development by PrimeSense Inc., because OpenNI2 can be used for commercial and works on cross platform.

NiTE2 is middleware based on OpenNI2 developed by PrimeSense Inc.. It has features such as human detection, posture estimation, hand tracking, and gesture detection.
NiTE 2 is closed source and it has already been end of distributed. However, You can use NiTE2 that has already distributed.

OpenNI2 Driver for RealSense

OpenNI 2 Driver (rs2driver.dll) has been added in RealSense SDK.
Therefor, You can use OpenNI2/NiTE2 with RealSense. In other words, You can implement human pose estimation with RealSense.

NiTE2 User DetectionNiTE2 Skeleton Tracking

OpenNI2/NiTE2 Smaple Program

I was released a sample program of OpenNI2/NiTE2.

Note: Incompatible APIs

The existing programs that using OpenNI2/NiTE2 is works collectory without re-write. But, The coordinate conversion APIs does not works collectory.
It is mainly a function such as conversion from World coordinate system to Depth coordinate system, conversion from Depth coordinate system to Color coordinate system, etc.
These functions should be add implementation to driver.

  • nite::UserTracker::convertJointCoordinatesToDepth


I was confirmed the operation in following environment.

  • Windows 10
  • Visual Studio 2017
  • RealSense SDK 2.18.0
  • OpenNI
  • NiTE
  • OpenCV 4.0.1

How to build rs2build

Please set following settings in configuration RealSense SDK using CMake.
After building, rs2driver.dll is output to _out directory.
You can use RealSense from OpenNI2/NiTE2 by copying rs2driver.dll to ${OPENNI2_REDIST_DIR}/OpenNI2/Drivers (or ${OPENNI2_REDIST_DIR64}/OpenNI2/Drivers).


Leave a Reply

Your email address will not be published. Required fields are marked *