Git Product home page Git Product logo

nuitrack_body_tracker's Introduction

Nuitrack Body Tracker

Info

This is a ROS Node to provide functionality of the NuiTrack SDK (https://nuitrack.com)

  • NuiTrack is NOT FREE, but reasonably inexpensive, and works with a number of cameras (see their webpage)
  • Also see Orbbec Astra SDK as a possible alternative (but only for Orbbec cameras)

Publishes 3 messages:

  1. body_tracking_position_pub_ custom message: <body_tracker_msgs::BodyTracker> Includes: 2D position of person relative to head camera; allows for fast, smooth tracking Joint.proj: position in normalized projective coordinates (x, y from 0.0 to 1.0, z is real) Astra Mini FOV: 60 horz, 49.5 vert (degrees)

3D position of the shoulder joint in relation to robot (using TF) Joint.real: position in real world coordinates Useful for tracking person in 3D

  1. body_tracking_skeleton_pub_ custom message: <body_tracker_msgs::Skeleton> Includes: Everyting in BodyTracker message above, plus 3D position of upper body joints in relation to robot (using TF)

  2. marker_pub_ message: <visualization_msgs::Marker> Publishes 3d markers for selected joints. Visible as markers in RVIZ.

Installation Instructions / Prerequisites

Follow instructions on Nuitrack website

Summary instructions below, but bits might not be up to date! Go to the website to get the latest SDK.

  • Clone body_tracker_msgs into your Catkin workspace

    • catkin_make to confirm complies OK
  • Clone this project into your Catkin workspace

  • Remove OpenNI - it conflicts with the version supplied by Nuitrack!

    • sudo apt-get purge --auto-remove openni-utils
  • Download BOTH the nuitrack linux drivers and the Nuitrack SDK

  • Install Nuitrack Linux drivers:

    • sudo dpkg -i nuitrack-ubuntu-amd64.deb
    • sudo reboot
    • confirm environment variables set correctly:
      • echo $NUITRACK_HOME (should be /usr/etc/nuitrack)
      • echo $LD_LIBRARY_PATH (should include /usr/local/lib/nuitrack)
  • Install Nuitrack SDK (NuitrackSDK.zip)

    • Download from: http://download.3divi.com/Nuitrack/
    • mkdir ~/sdk/NuitrackSDK
    • cp NuitrackSDK.zip ~/NuitrackSDK
    • extract ZIP archive with ubuntu Archive Manager (double click the zip file)
    • delete the zip file
  • Edit CMakeLists.txt if you installed the SDK to a different location: set(NUITRACK_SDK_PATH /home/system/sdk/NuitrackSDK)

NOTE: Nuitrack install may break other RealSense applications!

Option: Edit Nuitrack Config parameters (now done in the node code)

  • sudo vi $NUITRACK_HOME/data/nuitrack.config
  • set Faces.ToUse and DepthProvider.Depth2ColorRegistration to true

Test NuiTrack SDK

  • If you run into errors, it is probably becuse you did not reboot after driver install

  • Try the license tool, it will test the system:

    • sudo -E nuitrack_license_tool
    • click on "compatibility test"
    • if you have a license, enter it after the test completes.
  • Follow instructions at: ~/sdk/NuitrackSDK/Examples/nuitrack_gl_sample/README.txt

nuitrack_body_tracker's People

Contributors

dshinsel avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.