Giter Site home page Giter Site logo

zzsssky / lidarroadboundarydetection Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wangguojun2018/lidarroadboundarydetection

0.0 0.0 0.0 8.11 MB

An speed and accuracy tradeoff method for LiDAR-based road boundary detection method in structured environments

C++ 96.08% C 1.26% CMake 2.66%

lidarroadboundarydetection's Introduction

Speed and Accuracy Tradeoffs for LiDAR Based Road Boundary Detection (IEEE/CAA 2020) [paper]

An speed and accuracy tradeoff method for LiDAR-based road boundary detection in structured environments is proposed. The proposed method consists of three main stages:

  1. a multi-feature based method is applied to extract feature points;
  2. a road-segmentation-line-based method is proposed for classifying left and right feature points;
  3. an iterative Gaussian process regression (GPR) is employed for filtering out false points and extracting boundary points.

To demonstrate the effectiveness of the proposed method, KITTI datasets is used for comprehensive experiments, and the performance of our approach is tested under different road conditions. Comprehensive experiments show the road-segmentation-line-based method can classify left, and right feature points on structured curved roads, and the proposed iterative Gaussian process regression can extract road boundary points on varied road shapes and traffic conditions. Meanwhile, the proposed road boundary detection method can achieve real-time performance with an average of 70.5 ms per frame.

Demo

Demo

Introduction

model
The proposed method consists of four main steps: Ground Points Segmentation,Feature Points Extraction,Feature Points Classification and Feature Points Filtering. It takes a frame of raw point cloud as input and outputs road boundary points.

Installation

1. Install proto3

Please check README.md for proto3 installation instructions.

2. Install glog

Please check INSTALL for glog installation instructions.

3. Install OpenCV 3.4.5++ and PCL 1.7++

4 Install Gaussian Processes library limbo

  1. clone limbo
    cd LidarRoadBoundaryDetection 
    git clone https://github.com/resibots/limbo

  1. Build limbo
    Then please check official documentation to build and intall limbo

5. Build This Project

    cd LidarRoadBoundaryDetection 
    mkdir build && cd build && cmake .. -DCMAKE_BUILD_TYPE=Release && make -j8

6. Run Video Demo

(Please modify binDir to your own bin file directory in boundary_detection.config)

    ./demo_video ../config/boundary_detection.config

7 Run Frame Demo

    ./demo_frame ../config/boundary_detection.config

Citation

If you find this work useful in your research, please consider cite:

@ARTICLE{9205694,
  author={Wang, Guojun and Wu, Jian and He, Rui and Tian, Bin},
  journal={IEEE/CAA Journal of Automatica Sinica}, 
  title={Speed and Accuracy Tradeoff for LiDAR Data Based Road Boundary Detection}, 
  year={2021},
  volume={8},
  number={6},
  pages={1210-1220},
  doi={10.1109/JAS.2020.1003414}}

lidarroadboundarydetection's People

Contributors

wangguojun2018 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.