ROS Catkin package to track people using octree and cluster extraction
Switch branches/tags
Nothing to show
Clone or download
Cosmo Borsky
Cosmo Borsky Merge branch 'cluster'
Latest commit 2d15b02 Jul 4, 2017


ROS Catkin package to track people using ortree and cluster extraction from a fixed point.
Sensor Used for testing: Quanergy M8
Written and tested on: Ubuntu 16.04, ROS Kinetic


This package depends on the people_msgs package:

  1. sudo apt install ros-kinetic-easy-markers ros-kinetic-kalman-filter
  2. git clone ~/catkin_ws/src


  1. Make your catkin workspace:
    1. mkdir -p ~/catkin_ws/src
    2. catkin_init_workspace ~/catkin_ws/src
    3. catkin_make -C ~/catkin_ws
  2. Clone kdhansen/people to your workspace:
    1. git clone ~/catkin_ws/src
  3. Clone this repo to your workspace:
    1. git clone ~/catkin_ws/src
  4. Source your workspace
    1. source ~/catkin_ws/devel/
  5. Build your workspace
    1. catkin_make -C ~/catkin_ws --pkg people_msgs
    2. catkin_make -C ~/catkin_ws

Running the tracking

  1. Initialize your LIDAR, or play your ROSBAG
    1. rosbag play -l bagname.bag
  2. Launch
    1. source ~/catkin_ws/devel/
    2. roslaunch lidar_body_tracking lidar_body_tracking.launch


  1. The URDF frame is QP308. You can change this in /urdf/m8.launch.xacro
  2. You can change the default topics in the launch file /launch/lidar_body_tracking.launch


  • Dynamic Reconfigure for Link, Leaf size, min cluster, etc
  • ROSParam for topics
  • Clustering of indicies for person detection
  • Output potential people to a topic
    • Calculate person velocity
    • Calculate certainty of person
    • Estimate person height, size
    • Track person based on previous location
    • people_msgs/Person does not include orientation
  • Control an RVIZ marker or something
  • Support body tracking while lidar is moving, loop closure and Odom tracking.
  • Comment and document code
    • Object-oriented
    • Clean-up code


ROS WIKI Xacro Reference