Lidar-Obstacle-Detection
Lidar-Obstacle-Detection copied to clipboard
Lidar obstacle detection using PCL and C++
Lidar-Obstacle-Detection
Lidar obstacle detection using PCL and C++
See the demo on YouTube
Approach
This project is aimed to show basic scenarios for processing point clouds to detect the obstacles, and use it to detect cars and trucks on a narrow street using Lidar data.
The detection pipeline includes the following steps:
Step 1: Load PCD data from file
Step 2: Apply voxel grid filtering
Step 3: Segment the filtered cloud into two parts, road and obstacles
Step 4: Cluster the obstacle cloud
Step 5: Render bounding boxes around the clusters
The segmentation, and clustering methods were created from scratch.
The final result looks like the animation below:
Installation
Ubuntu
$> sudo apt install libpcl-dev
$> cd ~
$> git clone https://github.com/olpotkin/Lidar-Obstacle-Detection.git
$> cd Lidar-Obstacle-Detection
$> mkdir build && cd build
$> cmake ..
$> make
$> ./environment
Windows
http://www.pointclouds.org/downloads/windows.html
MAC
Install via Homebrew
- install homebrew
- update homebrew
$> brew update
- add homebrew science tap
$> brew tap brewsci/science
- view pcl install options
$> brew options pcl
- install PCL
$> brew install pcl
Possible issue: 'simulation is required but glew was not found':
- check details here
Prebuilt Binaries via Universal Installer
http://www.pointclouds.org/downloads/macosx.html
NOTE: very old version