Rosanswers logo

Hi guys,

I'm quite new in ROS and I would like to know a general opinion about which one would you use, or which are you using nowadays and why. I would like to use a KINECT to do a SLAM and try to subscribe to topics related with the measured depth.

Thanks everyone.

Originally posted by thepirate16 on ROS Answers with karma: 101 on 2016-04-04

Post score: 1


1 Answer 1


Rosanswers logo

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 motor/LED/accelerometer.

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

Original comments

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)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.