Skip to content

Commit

Permalink
docs: updated README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
SS47816 committed Jan 19, 2024
1 parent 85adf64 commit c2b9903
Showing 1 changed file with 34 additions and 26 deletions.
60 changes: 34 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,50 +2,52 @@

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

[![CodeFactor](https://www.codefactor.io/repository/github/ss47816/lidar_obstacle_detector/badge)](https://www.codefactor.io/repository/github/ss47816/lidar_obstacle_detector)
![Code Grade](https://api.codiga.io/project/30668/status/svg)
![Code Quality Score](https://api.codiga.io/project/30668/score/svg)
![GitHub Repo stars](https://img.shields.io/github/stars/ss47816/lidar_obstacle_detector?color=FFE333)
![GitHub Repo forks](https://img.shields.io/github/forks/ss47816/lidar_obstacle_detector?color=FFE333)

![Ubuntu](https://img.shields.io/badge/OS-Ubuntu-informational?style=flat&logo=ubuntu&logoColor=white&color=2bbc8a)
![ROS](https://img.shields.io/badge/Tools-ROS-informational?style=flat&logo=ROS&logoColor=white&color=2bbc8a)
![C++](https://img.shields.io/badge/Code-C++-informational?style=flat&logo=c%2B%2B&logoColor=white&color=2bbc8a)
[![CodeFactor](https://www.codefactor.io/repository/github/ss47816/lidar_obstacle_detector/badge)](https://www.codefactor.io/repository/github/ss47816/lidar_obstacle_detector)
![GitHub Repo stars](https://img.shields.io/github/stars/ss47816/lidar_obstacle_detector?color=FFE333)
![GitHub Repo forks](https://img.shields.io/github/forks/ss47816/lidar_obstacle_detector?color=FFE333)

![demo_1](media/demo_1.gif)

![demo_2](media/demo_2.gif)

## 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

- 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

- 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

- PCA Bounding Boxes might not be accurate in certain situations

## Dependencies
* autoware-msgs
* jsk-recognition-msgs

- autoware-msgs
- jsk-recognition-msgs

## Installation

```bash
# clone the repo
cd catkin_ws/src
git clone https://github.com/SS47816/lidar_obstacle_detector.git

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

Expand All @@ -58,12 +60,14 @@ source devel/setup.bash
**Step 1**: Download the `mai_city` dataset from their [Official Website](https://www.ipb.uni-bonn.de/data/mai-city-dataset/)

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

```bash
# this will launch the obstacle_detector node, rviz, and rqt_reconfigure GUI together
roslaunch lidar_obstacle_detector 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
Expand All @@ -75,22 +79,26 @@ rosbag play 00.bag

![demo_lgsvl](media/lgsvl.gif)

**Step 1**: Launch the LGSVL simulator and `lgsvl_utils` nodes
**Step 1**: Launch the LGSVL simulator and `lgsvl_utils` nodes

> Please refer this step to the [`README` Usage Section](https://github.com/SS47816/lgsvl_utils) of the `lgsvl_utils` pkg
**Step 2**: Launch the nodes using the `launch/lgsvl.launch` launch file

```bash
# launch node
roslaunch lidar_obstacle_detector lgsvl.launch
roslaunch lidar_obstacle_detector lgsvl.launch
```

## Contribution

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

We are following:
[Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html),
[C++ Core Guidelines](https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#main),
We are following:
[Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html),
[C++ Core Guidelines](https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#main),
and [ROS C++ Style Guide](http://wiki.ros.org/CppStyleGuide)

## License
MIT License

MIT License

0 comments on commit c2b9903

Please sign in to comment.