pr2-debs/iai_kinect2

Name: iai_kinect2

Owner: pr2-debs

Description: Tools for using the Kinect One (Kinect v2) in ROS

Created: 2015-11-16 23:17:31.0

Updated: 2015-11-16 23:17:32.0

Pushed: 2015-11-13 14:00:15.0

Homepage: null

Size: 997

Language: C++

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

IAI Kinect2

Maintainer
Table of contents
Description

This is a collection of tools and libraries for a ROS Interface to the Kinect One (Kinect v2).

It contains:

FAQ
Someting is not working, what should I do first?

First you should look at this FAQ and the FAQ from libfreenect2. Secondly, look at issue page from libfreenect2 and the issue page of iai_kinect2 for similar issues and solutions.

Will it work with OpenCV 3.0

Right now it will not work with OpenCV 3.0. The default version in Ubuntu and ROS and therefore also for the iai_kinect2 package is OpenCV 2.4.x.

kinect2_bridge is not working / crashing, what is wrong?

There are many reasons why kinect2_bridge might not working. The first thing to find out whether the problem is related to kinect2_bridge or libfreenect2. A good tool for testing is Protonect, it is a binary located in libfreenect2/build/bin/Protonect. It uses libfreenect directly with a minimal dependency on other libraries, so it is a good tool for the first tests.

Execute:

Before running kinect2_bridge please make sure Protonect is working and showing color, depth and ir images. If some of them are black, than there is a problem not related to kinect2_bridge and you should look at the issues from the libfreenect2 GitHub page for help.

If one of them works, try out the one that worked with kinect2_bridge: rosrun kinect2_bridge kinect2_bridge depth_method:=<opengl|opencl|cpu>. You can also change the registration method with reg_method:=<cpu|opencl>.

Protonect works fine, but kinect2_bridge is still not working / crashing.

If that is the case, you have to make sure that Protonect uses the same version of libfreenect2 as kinect2_bridge does. To do so, run make and sudo make install in the build folder again. And try out kinect2_bridge again.

ibfreenect2/build
 & sudo make install
kinect2_bridge hangs and prints “waiting for clients to connect”

This is the normal behavior. 'kinect2_bridge' will only process data when clients are connected (ROS nodes listening to at least one of the topics). This saves CPU and GPU resources. As soon as you start the kinect_viewer or rostopic hz on one of the topics, processing should start.

rosdep: Cannot locate rosdep definition for [kinect2_bridge] or [kinect2_registration]

rosdep will output errors on not being able to locate [kinect2_bridge] and [kinect2_registration]. That is fine because they are all part of the iai_kinect2 package and rosdep does not know these packages.

Protonect or kinect2_bridge outputs [TransferPool::submit] failed to submit transfer

This indicates problems with the USB connection.

I still have an issue, what should I do?

First of all, check the issue pages on GitHub for similar issues, as they might contain solutions for them. By default you will only see the open issues, but if you click on closed you will the the ones solved. There is also a search field which helps to find similar issues.

If you found no solution in the issues, feel free to open a new issue for your problem. Please describe your problem in detail and provide error messages and log output.

Dependencies
Install
  1. Install the ROS. Instructions for Ubuntu 14.04

  2. Setup your ROS environment

  3. Install libfreenect2:

    Follow the instructions and enable C++11 by using cmake .. -DENABLE_CXX11=ON instead of cmake ..

  4. Copy the udev rule file sudo cp libfreenect2/rules/90-kinect2.rules /etc/udev/rules.d/ and reconnect the sensor

  5. Clone this repository into your catkin workspace, install the dependencies and build it:

    /catkin_ws/src/
    clone https://github.com/code-iai/iai_kinect2.git
    ai_kinect2
    ep install -r --from-paths .
    /catkin_ws
    in_make -DCMAKE_BUILD_TYPE="Release"
    

    Note: rosdep will output errors on not being able to locate [kinect2_bridge] and [depth_registration]. That is fine because they are all part of the iai_kinect2 package and rosdep does not know these packages.

  6. Connect your sensor and run kinect2_bridge:

    un kinect2_bridge kinect2_bridge
    
  7. Calibrate your sensor using the kinect2_calibration. Further details

  8. Add the calibration files to the kinect2_bridge/data/<serialnumber> folder. Further details

  9. Restart kinect2_bridge and view the results using rosrun kinect2_viewer kinect2_viewer kinect2 sd cloud.

OpenCL
OpenCL with AMD

Install the latest version of the AMD Catalyst drivers from https://support.amd.com and opencl-headers.

OpenCL with Nvidia

Install the latest version of the Nvidia drivers, for example nvidia-355 and nvidia-modprobe from ppa:graphics-drivers/ppa and opencl-headers.

OpenCL with Intel

You can either install a binary package from a PPA like ppa:pmjdebruijn/beignet-testing, or build beignet yourself. It's recommended to use the binary from the PPA.

Building Beignet

Download and compile the newest Beignet release from source.

Known configuration Dependencies for Beignet

For Beignet the following depencies have to be installed manually:

Additional steps (if needed):

Note: Both previous points have to to with the fact that no x-server was installed. Apparently this will be fixed in a future release of Beignet.

Results on Intel i7-3840QM (mobile hardware)
Citation

If you used iai_kinect2 for your work, please cite it.

c{iai_kinect2,
thor = {Wiedemeyer, Thiemo},
tle = {{IAI Kinect2}},
ganization = {Institute for Artificial Intelligence},
dress = {University Bremen},
ar = {2014 -- 2015},
wpublished = {\url{https://github.com/code-iai/iai\_kinect2}},
te = {Accessed June 12, 2015}

The result should look something similar to this (may depend on the bibliography style used):

iedemeyer, ?IAI Kinect2,? https://github.com/code-iai/iai_kinect2,
itute for Artificial Intelligence, University Bremen, 2014 ? 2015,
ssed June 12, 2015.
Screenshots

Here are some screenshots from our toolkit: color image depth image point cloud image viewer


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.