davutcanakbas / dynamic_object_removal

A ROS-based solution to clear point cloud data by removing dynamic objects for mapping.
74 stars 3 forks source link

Dynamic Object Removal

Dynamic Object Removal is a ROS2 package that removes dynamic objects from a point cloud by using a cropping technique. This node subscribes to a point cloud topic and a detected objects topic, synchronizes the incoming messages, and then performs object removal based on the detected object's pose and dimensions. The resulting point cloud with removed objects is then published as output.

Table of Contents

Prerequisites

Installation

After installing autoware (please see source-installation page), execute the following commands:

cd ~/autoware/src/universe/external/
git clone https://github.com/davutcanakbas/dynamic_object_removal.git
cd ~/autoware/
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to dynamic-object-removal

Usage

Run the dynamic_object_removal node by executing:

ros2 launch lidar_centerpoint lidar_centerpoint.launch.xml
ros2 launch  dynamic_object_removal dynamic_object_removal_default.launch.xml demo:=true

Make sure to have the required topics for point cloud and detected objects(lidar_centerpoint) available. The node will subscribe to these topics and perform dynamic object removal.

Parameters

The node takes the following parameters:

These parameters define the dimensions offset of the cropping box used to remove objects. You can modify these parameters.

ROS2 Topics

Examples

Example_1 gif