lidar_obstacle_detector
3D LiDAR Object Detection & Tracking using Euclidean Clustering, RANSAC, & Hungarian Algorithm
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
Repository
3D LiDAR Object Detection & Tracking using Euclidean Clustering, RANSAC, & Hungarian Algorithm
Basic Info
Statistics
- Stars: 310
- Watchers: 3
- Forks: 56
- Open Issues: 2
- Releases: 0
Topics
Metadata Files
README.md
lidarobstacledetector
3D LiDAR Object Detection & Tracking using Euclidean Clustering & Hungarian algorithm


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)

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)

Step 1: Launch the LGSVL simulator and lgsvl_utils nodes
Please refer this step to the
READMEUsage Section of thelgsvl_utilspkg
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
- Website: https://www.linkedin.com/in/shuosunss/
- Repositories: 10
- Profile: https://github.com/SS47816
💻 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
- actions/checkout v3 composite
- ros-industrial/industrial_ci master composite
- actions/checkout v4 composite
- cpp-linter/cpp-linter-action main composite