ROS noetic Kinect Xbox 360

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.3 LTS
Release: 20.04
Codename: focal

The software required to explore the kinect xbox 360 in ROS must be compiled from sources.

First we need to build the libfreenect (no ros package) from sources, and only after that can build the freenect_stack (ros package) also from the sources.

We also need to install the ros package rgbd-launch with the following command

sudo apt-get install ros-noetic-rgbd-launch

 

build libfreenect

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git-core cmake freeglut3-dev pkg-config build-essential libxmu-dev libxi-dev libusb-1.0-0-dev

cd ~/src
git clone git://github.com/OpenKinect/libfreenect.git
cd libfreenect
mkdir build
cd build
cmake -L ..
make
sudo make install
sudo ldconfig /usr/local/lib64/

build freenect_stack

cd ~/catkin_ws/src
git clone https://github.com/ros-drivers/freenect_stack.git
cd ..
catkin_make

run freenect node

roslaunch freenect_launch freenect.launch depth_registration:=true

Explore kinect published topics

rviz

The kinect xbox 360 output topics can be visualized on rviz  with the following displays:

  • Image
  • Camera
  • Pointcloud2
  • DeepCloud

In the ‘Global Options’ set the ‘Fixed Frame’ to ‘camera_link’.

The last two displays have configurations to give colors to points, superimposition of outputs, etc.

Not all topics produce visible output.

Error building freenect_stack

-- Checking for module 'libfreenect'
-- No package 'libfreenect' found
CMake Error at /usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:463 (message):
A required package was not found

Solution: build libfreenect before

Error building freenect_stack

Resource not found: rgbd_launch
ROS path [0]=/opt/ros/noetic/share/ros
ROS path [1]=/home/inaciose/catkin_ws/src
ROS path [2]=/opt/ros/noetic/share
The traceback for the exception was written to the log file

solution: sudo apt-get install ros-noetic-rgbd-launch

Reference

Give your next Robot 3D vision: Kinect V1 with ROS Noetic