[Documentation] [TitleIndex] [WordIndex

  Documentation Status

Cannot load information on name: leap_motion, distro: electric, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.
Cannot load information on name: leap_motion, distro: fuerte, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.

Package Summary

Released Documented

ROS driver for the Leap Motion gesture sensor

  • Maintainer: Florian Lier <flier AT techfak.uni-bielefeld DOT de>, Mirza Shah <mas644 AT gmail DOT com>
  • Author: Florian Lier <flier AT techfak.uni-bielefeld DOT de>
  • License: BSD
  • Source: git https://github.com/mirzashah/rosleapmotion.git (branch: master)

Package Summary

Released Continuous integration Documented

ROS driver for the Leap Motion gesture sensor

Package Summary

Released Continuous integration Documented

ROS driver for the Leap Motion gesture sensor

Package Summary

Released Continuous integration Documented

ROS driver for the Leap Motion gesture sensor

Package Summary

Released Continuous integration Documented

ROS driver for the Leap Motion gesture sensor

Cannot load information on name: leap_motion, distro: lunar, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.

Overview

leap_motion is a ROS driver for interfacing with the Leap Motion (https://www.leapmotion.com/) 3D gesture sensor. The Leap is capable of tracking the fingers and palm of a user with millimeter accuracy. The sensor is capable of producing the following information:

ROS Driver Capabilities

The leap_motion ROS driver utilizes the official Leap SDK for Linux in order to talk to the device. Currently it does not have all the capabilities the SDK provides, but it is easy to extend. The driver currently provides the following:

This information is encompassed in the custom message leap_motion/leapros.msg. In the future standard ROS messages should be used.

Nodes

sender.py

The publisher for the Leap Motion messages

Published Topics

/leapmotion/data (leap_motion/leapros.msg)

Using this Package

  1. Install the driver and SDK from manufacturer's site (try either 1 or 2. Registration might be required. Choose "developer" or "SDK" option if you see multiple options. You will be provided with a tarball containing debs for both 32-bit and 64-bit Ubuntu, as well as SDK folder most likely called LeapSDK. Install the appropriate one (check your computer with uname -a if you're on Ubuntu). This installs the driver as well as some simple utilities to play around with your Leap Motion device.

  2. Start the Leap Motion driver.
     leapd
  3. If you want to use the GUI, there is LeapCommandCenter which comes with a visualization tool, calibration tool, and the ability to configure device parameters.

     LeapCommandCenter
    In Ubuntu, you'll see a little Leap icon in the dock. Right click on it to use the built in apps.
  4. Install the ROS leap_motion package.

    Groovy

     sudo apt-get install ros-groovy-leap-motion

    Hydro

     sudo apt-get install ros-hydro-leap-motion
    Or you can install from source
     cd ~/catkin_ws/src
     git clone https://github.com/qqfly/leap_motion.git
     cd ~/catkin_ws && catkin_make
  5. The SDK that leap_motion uses is located in the tarball you downloaded earlier and not part of the .deb you installed (that was just the driver). You can put the folder (again, most likely called LeapSDK) whereever you want, but you need to make sure your PYTHONPATH is configured to find the SDK libraries. Assuming you have the SDK in $HOME/LeapSDK

    64 Bit

     export PYTHONPATH=$PYTHONPATH:$HOME/LeapSDK/lib:$HOME/LeapSDK/lib/x64

    32 Bit

     export PYTHONPATH=$PYTHONPATH:$HOME/LeapSDK/lib:$HOME/LeapSDK/lib/x86
    It's convenient if the SDK path are automatically added to your bash session every time a new shell is launched:

    64 Bit

     echo "export PYTHONPATH=$PYTHONPATH:$HOME/LeapSDK/lib:$HOME/LeapSDK/lib/x64" >> ~/.bashrc
     source ~/.bashrc

    32 Bit

     echo "export PYTHONPATH=$PYTHONPATH:$HOME/LeapSDK/lib:$HOME/LeapSDK/lib/x86" >> ~/.bashrc
     source ~/.bashrc
  6. We can now run the ROS driver.
     source ~/catkin_ws/devel/setup.bash
     rosrun leap_motion sender.py 
  7. The leap is now publishing data, you can test this with the following command:
     rostopic echo /leapmotion/data
  8. If you want to use leap_motion as stereo_camera, You can use by compiling it. 1) Make sure that You are using LeapSDK ver 2.* 2) You need to append the location of your LeapSDK (especially /lib and /lib/x64 or x86) to your LEAP_SDK_PATH,e.g., add "export LEAP_SDK=/home/Your_name/LeapDebeloperKit_2.*/LeapSDK " in ~/.bashrc

    3) command LeapControlPanel in your shell and enable the feature in the Leap Motion control panel for any application to get the raw camera images. 4) in your catkin_ws, catkin_make --only-pkg-with-depth leap_motion (by modifying the CMakeLists.txt) 5) run leap_camera and leap_stereo

     roslaunch leap_motion leap_camera.launch
     roslaunch leap_motion leap_stereo.launch

CPU and Bus Performance Tip

The Leap driver (leapd) can use a lot of CPU and bus bandwidth. The LeapControlCenter has the ability to switch to a "Low resource" mode in its settings. You should check this box. You should see a result of usage go down to about 1/3.


2017-09-23 12:56