Skip to content

A ROS-based solution to clear point cloud data by removing dynamic objects for mapping.

Notifications You must be signed in to change notification settings

p5cao/dynamic_object_removal

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

  • ROS2 (Robot Operating System 2)
  • PCL (Point Cloud Library)
  • Eigen (C++ template library for linear algebra)

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:

  • min_point (default offset: [-0.25, -0.25, -0.1, 1.0]): Minimum point for cropping box dimensions.
  • max_point (default offset: [0.25, 0.25, 0.25, 1.0]): Maximum point for cropping box dimensions.

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

ROS2 Topics

  • Subscribed Topics:
    • /input/point_cloud: Input point cloud topic.
    • /objects: Detected objects topic.
  • Published Topics:
    • output_pointcloud: Processed point cloud with removed objects.

Examples

Example_1 gif

  • Mapping example result in cloudcompare (offground), blue point mapping without DOR, red point mapping with DOR. mapping_example

About

A ROS-based solution to clear point cloud data by removing dynamic objects for mapping.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 78.8%
  • CMake 21.2%