lidar_obstacle_detector

3D LiDAR Object Detection & Tracking using Euclidean Clustering, RANSAC, & Hungarian Algorithm

https://github.com/ss47816/lidar_obstacle_detector

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.6%) to scientific vocabulary

Keywords

3d-lidar autonomous-vehicles euclidean-clustering hungarian-algorithm object-detection object-tracking obstacle-detection obstacle-tracking pcl-library ransac-algorithm robotics ros
Last synced: 6 months ago · JSON representation

Repository

3D LiDAR Object Detection & Tracking using Euclidean Clustering, RANSAC, & Hungarian Algorithm

Basic Info
  • Host: GitHub
  • Owner: SS47816
  • License: mit
  • Language: C++
  • Default Branch: main
  • Homepage:
  • Size: 30 MB
Statistics
  • Stars: 310
  • Watchers: 3
  • Forks: 56
  • Open Issues: 2
  • Releases: 0
Topics
3d-lidar autonomous-vehicles euclidean-clustering hungarian-algorithm object-detection object-tracking obstacle-detection obstacle-tracking pcl-library ransac-algorithm robotics ros
Created about 4 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License Citation

README.md

lidarobstacledetector

3D LiDAR Object Detection & Tracking using Euclidean Clustering & Hungarian algorithm

Ubuntu ROS C++ CodeFactor ROS-CI cpp-linter GitHub Repo stars GitHub Repo forks

demo_1

demo_2

Features

  • Segmentation of ground plane and obstacle point clouds
  • Customizable Region of Interest (ROI) for obstacle detection
  • Customizable region for removing ego vehicle points from the point cloud
  • Tracking of obstacles between frames using IOU gauge and Hungarian algorithm
  • In order to help you tune the parameters to suit your own applications better, all the key parameters of the algorithm are controllable in live action using the ros param dynamic reconfigure feature

TODOs

  • LiDAR pointcloud motion undistortion
  • Drive Space/Kurb Segmentation
  • Refine PCA Bounding Boxes by L-Shape fitting
  • Add trackers such as UKF

Known Issues

  • PCA Bounding Boxes might not be accurate in certain situations

Dependencies

  • autoware-msgs
  • jsk-recognition-msgs

Installation

```bash

clone the repo

cd catkinws/src git clone https://github.com/SS47816/lidarobstacle_detector.git

install dependencies & build

cd .. rosdep install --from-paths src --ignore-src -r -y catkinmake # or catkinmake -DPYTHON_EXECUTABLE=/usr/bin/python3 source devel/setup.bash ```

Usage

1. (Easy) Use this pkg with ROS Bags (mai_city dataset as an example here)

demo_mai_city

Step 1: Download the mai_city dataset from their Official Website

Step 2: Launch the nodes using the mai_city.launch launch file

```bash

this will launch the obstacledetector node, rviz, and rqtreconfigure GUI together

roslaunch lidarobstacledetector mai_city.launch ```

Step 3: Run any of the bags from the dataset

```bash

go to the folder where the dataset is located

cd mai_city/bags

play the rosbag

rosbag play 00.bag ```

2. Use this pkg with LGSVL Simulator (with the help of the lgsvl_utils pkg)

demo_lgsvl

Step 1: Launch the LGSVL simulator and lgsvl_utils nodes

Please refer this step to the README Usage Section of the lgsvl_utils pkg

Step 2: Launch the nodes using the launch/lgsvl.launch launch file

```bash

launch node

roslaunch lidarobstacledetector lgsvl.launch ```

Contribution

You are welcome contributing to the package by opening a pull-request

We are following: Google C++ Style Guide, C++ Core Guidelines, and ROS C++ Style Guide

License

MIT License

Owner

  • Name: Shuo Sun
  • Login: SS47816
  • Kind: user
  • Location: Singapore
  • Company: National University of Singapore

💻 Ph.D. Candidate & Engineer @ NUS Advanced Robotics Centre

GitHub Events

Total
  • Issues event: 4
  • Watch event: 78
  • Issue comment event: 1
  • Fork event: 8
Last Year
  • Issues event: 4
  • Watch event: 78
  • Issue comment event: 1
  • Fork event: 8

Dependencies

.github/workflows/industrial_ci_action.yml actions
  • actions/checkout v3 composite
  • ros-industrial/industrial_ci master composite
.github/workflows/cpp-linter.yml actions
  • actions/checkout v4 composite
  • cpp-linter/cpp-linter-action main composite