Asus Xtion Pro Live (OpenNI2) under ROS Framework

Installation

First of all be sure to have installed “ROS Indigo” framework on your NVidia Jetson TK1. If not follow the guide.

The installation procedure is really simple since OpenNI2 is fully supported by ROS and the precompiled packages are available in the official repository for ARM processors:

  1. Install dependencies:
  2. Be sure to have disabled the USB autosuspend following this guide
  3. Be sure to have enabled the four cores of the Tegra TK1 SOC and to have set the governor to “performance” following this guide

RGB-D Test

  1. Install package rqt and useful plugins:
  2. Open a terminal (Ctrl+Alt+t):
  3. Open a terminal (Ctrl+Alt+t):
  4. Open a terminal (Ctrl+Alt+t):
  5. In the “rqt” window select “Plugins” -> “Visualization” -> “Image View
  6. From the combo box select the image that you want to visualize, remembering that you cannot activate IR and Depth streams at the same time.
Asus Xtion Pro Live running under ROS

Asus Xtion Pro Live running under ROS

In the following image the RGB 3D Pointcloud is visualized on a remote PC using Rviz.

RGB-D Pointcloud on remote computer using Rviz

RGB-D Pointcloud on remote computer using Rviz

 

The full guide to send data over network using ROS framework will be available soon.

16 Comments:

  1. With how many Hz can the Jetson Tk1 generate point clouds from the Asus Xtion Pro Live? I.e. rostopic hz /camera/depth_registered/points

  2. Julian Andres Alarcon Manrique

    HI, I follow all the steps but the /camera/depth and the /camer/ir are not streaming, just the /camera/rgb do it, could you help me?

    Im using ros indigo, ubuntu 14.04 and the sensor xtion pro live

  3. I’m working on the Raspberry Pi 2 at the moment, running Raspbian OS (Debian Wheezy). The first sudo apt-get line to install dependencies fail. It simply says it is unable to locate packages for openni2-launch and openni2-camera. Do you know how I may be able to get around this?

    • You must compile OpenNI2 by yourself, install it and then try to get them again

      • Sorry for the tardy reply. I’ve followed your instructions from the following link:

        http://myzharbot.robot-home.it/blog/software/configuration-nvidia-jetson-tk1/asus-xtion-pro-live-openni2-compilation-install-instructions/

        I’ve gotten applications such as SimpleRead and NIViewer running but I can’t use roslaunch as there is no launch file to use. I’m currently attempting to run rtabmap_ros from this link:

        http://wiki.ros.org/rtabmap_ros/Tutorials/HandHeldMapping

        Thank you for your help so far.

        • If simpleRead and NIViewer are working you need to copy the library binaries into the right place (there are other tutorials that can drive you through this steps). After that you must install openni_launch from ROS repo and it will add launcher and other tools. If OpenNI is correctly installed under the right paths openni_launch will see it

          • Thank you for the swift reply.

            I’ve managed to download the openni2_launch files but I’m not sure where the library binaries are or where I should put them. According to the steps done in your tutorial, they should be the .so files inside the OpenNI2/Bin/Arm-Release/OpenNI2/Drivers folder. Is this correct? Should I put them inside the usr/lib folder? I’m quite new to Linux OS and ROS so I apologize if this may seem a bit tedious.

            Thank you for your help.

          • You can find the steps here: “https://dobots.nl/2014/05/05/asus-xtion-using-openni2-and-ros-on-udoo/”, starting from the sentence “Once the compilation is done, run the linux install script

          • Hi there, you’ve been a tremendous help so far. I managed to compile the catkin workspace as was written in the tutorial. However, I can still only launch openni2.launch when I’m in the openni2_launch/launch directory, in which case “roslaunch openni2.launch” will execute.

            However, when I do call roslaunch, it outputs:
            “ResourceNotFound: rgbd_launch
            ROS path [0]=/opt/ros/indigo/share/ros
            ROS path [1]=/opt/ros/indigo/share
            ROS path [2]=/opt/ros/indigo/stacks”

            The complete output message is here: http://pastebin.com/Xne45uNC

            I attempted to copy paste rgbd_launch, openni2_launch and openni2_camera in ROS path [0] but it only outputs errors when I launch.

            Thanks again for your help.

          • At this point I have not the knowledge to help you… try to post the problem on answer.ros.org … there are more skilled ROS users that can help you

    • The guide works for Ubuntu based distributions

  4. I have not got any of this working yet, since this install seems to be broken in many places.

    But for a start you might want to tell everyone to make sure that Java is installed as well.

    You might want to revisit this process and see if it still works for you on the current jetson tegra-ubuntu 3.10.40-grinch-21.3.4

  5. it helps well, thank you very much, maybe it will more perfecter, if you add how to add it using the roslaunch.

  6. Thank you very much. This actually helped.

    Channa Ranatunga

Leave a Comment