lidar_body_tracking
lidar_body_tracking copied to clipboard
ROS Catkin package to track people using octree and cluster extraction
lidar_body_tracking
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
Dependencies
This package depends on the people_msgs package:
-
sudo apt install ros-kinetic-easy-markers ros-kinetic-kalman-filter
-
git clone https://github.com/kdhansen/people ~/catkin_ws/src
Installation
- Make your catkin workspace:
-
mkdir -p ~/catkin_ws/src
-
catkin_init_workspace ~/catkin_ws/src
-
catkin_make -C ~/catkin_ws
-
- Clone
kdhansen/people
to your workspace:-
git clone https://github.com/kdhansen/people ~/catkin_ws/src
-
- Clone this repo to your workspace:
-
git clone https://github.com/MyNameIsCosmo/lidar_body_tracking ~/catkin_ws/src
-
- Source your workspace
-
source ~/catkin_ws/devel/setup.sh
-
- Build your workspace
-
catkin_make -C ~/catkin_ws --pkg people_msgs
-
catkin_make -C ~/catkin_ws
-
Running the tracking
- Initialize your LIDAR, or play your ROSBAG
-
rosbag play -l bagname.bag
-
- Launch
-
source ~/catkin_ws/devel/setup.sh
-
roslaunch lidar_body_tracking lidar_body_tracking.launch
-
Notes
- The URDF frame is QP308. You can change this in
/urdf/m8.launch.xacro
- You can change the default topics in the launch file
/launch/lidar_body_tracking.launch
TODO:
- [x] Dynamic Reconfigure for Link, Leaf size, min cluster, etc
- [x] ROSParam for topics
- [x] 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
- [x] 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