I will quote an answer which I found on Stackoverflow belonging to that question i found as i stood before that decision myself:
Libfreenect is mainly a driver which
exposes the Kinect device's features:
- depth stream - IR stream - color(RGB) stream - motor control -
LED control - accelerometer
If does not provide any advanced
processing features like scene
segmentation, skeleton tracking, etc.
On the other hand, OpenNI allows
generic access to Kinect's feature
(mainly the image streams), but also
provides rich processing features such
as: - scene segmentation - skeleton
tracking - hand detection and tracking
- gesture recognition - user interface elements etc. but no low level
controls to device features like
As opposed to libfreenect which AFAIK
works only with the Kinect sensor,
OpenNI works with Kinect but with
other sensors as well like Asus Xtion
Pro, Carmine, etc.
I am using freenect at the moment with success and haven't tried out out OpenNi so long. You can find some info on my projects website here (in german) and see what i have done so long with my kinect and ROS. Project is still under development.
On point i struggle at the moment is, that the ros-freenect-stack is just supported until ROS-Indigo and i want to update to Jade or Kinectic soon, if someone could help out here please contact me!
Originally posted by fabian77 with karma: 126 on 2016-04-04
This answer was ACCEPTED on the original site
Post score: 0
Comment by Humpelstilzchen on 2016-04-04:
Xtion is openni2 only.
Taking a short look at your document you mainly seem to use the kinect for depthimage_to_laserscan, there shouldn't be any problem for you in using openni(2) instead.
Comment by fabian77 on 2016-04-04:
I will have a look at OpenNi too, do you have a clue if both drivers work in parallel? In my opinion installing freenect on ubuntu is better documented or easier then OpenNi, or i haven't researched that well enough. Must have a look, cause openni_camera and openni_launch seems better supported
Comment by Humpelstilzchen on 2016-04-05:
I never used freenect, but installing both on the same computer should be no problem. Using both at the same time of course not, openni1 & 2 are packaged, so it should just be a matter of
apt-get install libopenni-dev (or libopenni2-dev)