ShenhanQian / Lane_Detection-An_Instance_Segmentation_Approach

An unofficial implementation of the paper "Towards End-to-End Lane Detection: an Instance Segmentation Approach".
MIT License
56 stars 22 forks source link
pytorch

Lane Detection: An Instance Segmentation Approach

Introduction

This is a PyTorch implementation and variation of the paper "Towards End-to-End Lane Detection: An Instance Segmentation Approach".

alt text

Basic Results

Results on TuSimple Benchmark test set

Architecture Accuracy FP FN FPS
FCN-Res18 0.940 0.142 0.085 15.6
FCN-Res34 0.941 0.133 0.083 14.6
ENet 0.937 0.149 0.093 10.8
ICNet 0.935 0.139 0.103 11.1

Note:

Quick Start

Preparation

  1. Install dependencies:

    pip install -r requirements.txt
  2. Download TuSimple Benchmark dataset, and unzip the packs. The dataset structure should be as follows:

    tusimple_benchmark
    `-- |-- test_set
        |   |-- clips
        |   `-- ...
        `-- train_set
            |-- clips
            |-- label_data_xxxx.json
            |-- label_data_xxxx.json
            |-- label_data_xxxx.json
            `-- ...
  3. Download checkpoint pth files from our LaneNet model zoo.

Training and Testing

Testing on TuSimple Benchmark

python test_lanenet-tusimple_benchmark.py \
        --data_dir /path/to/test_set \
        --arch <MODEL> \
        --ckpt_path /path/to/checkpoint/file

Training on TuSimple Benchmark

python train_lanenet.py \
        --data_dir /path/to/train_set \
        --arch <MODEL> \
        --ckpt_path /path/to/checkpoint/file

Dataset division and analysis

Architecture

Tensorboard Summary Details

TODO