The World's First Large Scale Lidar Lane Detection Dataset and Benchmark

Related tags

Admin Panels K-Lane
Overview

K-Lane (KAIST-Lane) (provided by AVELab) is the world's first open LiDAR lane detection frameworks that provides a dataset with wide range of driving scenarios in an urban environment. This repository provides the K-Lane frameworks, annotation tool for lane labelling, and the visualization tool for showing the inference results and calibrating the sensors.

image

K-Lane Detection Frameworks

This is the documentation for how to use our detection frameworks with K-Lane dataset. We tested the K-Lane detection frameworks on the following environment:

  • Python 3.7 / 3.8
  • Ubuntu 18.04
  • Torch 1.7.1
  • CUDA 11.2

Preparing the Dataset

You can get a dataset in two different ways. One is about how to use our server, and the other is about how to use Google Drive.

  • Via our server
  1. To download the dataset, log in to our server with the following credentials: ID : klaneds Password : Klane2022
  2. Go to the "File Station" folder, and download the dataset by right-click --> download. Note for Ubuntu user, there might be some error when unzipping the files. Please check the "readme_to_unzip_file_in_linux_system.txt".
  3. After all files are downloaded, please arrange the workspace directory with the following structure:
KLaneFrameworks
├── annot_tool
├── baseline 
├── configs
      ├── config_vis.py
      ├── Proj28_GFC-T3_RowRef_82_73.py
      ├── Proj28_GFC-T3_RowRef_82_73.pth
├── data
      ├── KLane
            ├── test
            ├── train
                  ├── seq_1
                  :
                  ├── seq_15
            ├── description_frames_test.txt
            ├── description_test_lightcurve.txt
├── logs

image

  • Via Google Drive Urls

Also, you can get the dataset through the following Google Drive urls.

  1. link for download seq_01 to 04
  2. link for download seq_05 to 12
  3. link for download seq_13 to 14
  4. link for download seq_15, test, and description

Requirements

  1. Clone the repository
git clone ...
  1. Install the dependencies
pip install -r requirements.txt

Training & Testing

  • To train the model, prepare the total dataset and run
python train_gpu_0.py ...
  • To test from a pretrained model (e.g., Proj28_GFC-T3_RowRef_82_73.pth), download the pretrained model from our Google Drive Model and run
python validate_gpu_0.py ...

Model Zoo

Name Overall Daylight Night Urban Highway Curve Merging Occ-0 Occ-2 Occ-4~6 GFLOPs Model Paper
LLDN-GFC 82.12 82.22 82.00 81.75 82.55 78.05 81.08 82.97 81.28 75.92 558.0 Link Link
RLLDN-LC 82.74 82.58 82.92 81.64 84.05 76.16 79.92 83.44 82.00 79.16 387.5 Link Link

Development Kit

  1. Visualization Tool
  2. Annotation Tool

Updates

  • [2022-04-18] v1.0.0 is released along with the K-Lane Dataset. Please check Getting Started for the download instruction.

License

K-Lane is released under the Apache-2.0 license.

Acknowledgement

The K-lane benchmark is contributed by Dong-Hee Paek, Kevin Tirta Wijaya, Dong-In Kim, Min-Hyeok Sun, advised by Seung-Hyun Kong.

We thank the maintainers of the following projects that enable us to develop K-Lane: OpenPCDet by MMLAB, TuRoad bu TuZheng.

This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (No. 2021R1A2C3008370).

Citation

If you find this work is useful for your research, please consider citing:

@InProceedings{paek2022klane,
  title     = {K-Lane: Lidar Lane Dataset and Benchmark for Urban Roads and Highways},
  author    = {Paek, Dong-Hee and Kong, Seung-Hyun and Wijaya, Kevin Tirta},
  booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) Workshops},
  month     = {June},
  year      = {2022}
}
Comments
  • Validation dataloader error in training: error each element in list of batch should be of equal size

    Validation dataloader error in training: error each element in list of batch should be of equal size

    Hi, thanks for your fantastic work. In training, I encountered a data loader error for validation after 1 epoch. The error message is: raise RuntimeError('each element in list of batch should be of equal size') RuntimeError: each element in list of batch should be of equal size batch: 3it [00:36, 12.01s/it] val: 2%|▎ | 1/40 [00:11<07:21, 11.33s/it] epoch=0/35, loss=16.124535306149284

    I wonder if the cause of the error is the test data format or something else? Thanks in advance.

    opened by MIXIAOXIN 3
  • Where is rosbag demo for your annotation tool?

    Where is rosbag demo for your annotation tool?

    Thanks for your excellent work!But could you please provide a rosbag demo file if it is convenient? And do we need to provide a rosbag in the same format as yours If using your tool?

    opened by earlysleepearlyup 2
  • Multiple GPUS training errors

    Multiple GPUS training errors

    Hi, brother!

    RuntimeError: Caught RuntimeError in replica 1 on device 1. RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:1 and cuda:0!

    opened by ywfwyht 2
  • Dataset download very slow

    Dataset download very slow

    Hello!

    First, thank you for the nice work in the 3D lane annotation space, it's a welcome sight! I've been trying to download the dataset, but the download time is particularly slow, and there are network issues that force me to start the download over again.

    Have you considered hosting this data elsewhere? For example google drive?

    Thanks, Nicolas

    opened by nicoduchene 1
  • IndexError: too many indices for array: array is 2-dimensional, but 3 were indexed

    IndexError: too many indices for array: array is 2-dimensional, but 3 were indexed

    File "train_gpu_0.py", line 40, in main() File "train_gpu_0.py", line 36, in main runner.train() File "/workspace/work_dir/K-Lane/baseline/engine/runner.py", line 147, in train self.train_epoch(epoch, train_loader) File "/workspace/work_dir/K-Lane/baseline/engine/runner.py", line 115, in train_epoch output = self.net(data) File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "/opt/conda/lib/python3.8/site-packages/torch/nn/parallel/distributed.py", line 705, in forward output = self.module(*inputs[0], **kwargs[0]) File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "/workspace/work_dir/K-Lane/baseline/models/net/detector.py", line 34, in forward output.update(self.heads.loss(out, batch, self.loss_type)) File "/workspace/work_dir/K-Lane/baseline/models/heads/row_shared_not_reduc_ref.py", line 412, in loss ls_lb_ext, ls_lb_cls = self.get_lane_exist_and_cls_wise_maps(lanes_label, is_one_hot=True, is_ret_list=True) File "/workspace/work_dir/K-Lane/baseline/models/heads/row_shared_not_reduc_ref.py", line 308, in get_lane_exist_and_cls_wise_maps self.get_line_existence_and_cls_wise_maps_per_batch(np.squeeze(lb_cls[idx_b,:,:])) IndexError: too many indices for array: array is 2-dimensional, but 3 were indexed

    Hi @dhepaek , This error is reported when batch_size is set to 1, could you look at this error, How to solve it ? thanks

    opened by ywfwyht 1
  • Data Download

    Data Download

    Hello, thanks for your great job on lane detection based on point cloud. And I want to download this data for server. But maybe it can only achieve by downloading on windows. So is there any ways for me to download the data directly with Linux command line on server.

    Hope for your reply.

    opened by fengjiang5 1
  • load_test_data_infos() in klane.py fault

    load_test_data_infos() in klane.py fault

    it's my data : ── data ├── KLane ├── test ├── bev_tensor_label_000813405706490.pickle ├── .... ├── train ├── seq_1 : ├── seq_15 ├── description_frames_test.txt ├── description_test_lightcurve.txt when i run validate_gpu_0.py, it will fault in klane.py", line 115, in load_test_data_infos corresponding_idx = list_time_string.index(time_string) ValueError: '000813405706490' is not in list

    and i look source code in function load_test_data_infos(), the code make me confuse , why load_test_data_infos for - loop trian_root ? is there wrong code in here ?

    opened by graphic-zhang 0
Owner
Prof. Seung-Hyun Kong
Prof. Seung-Hyun Kong
HSC4D: Human-centered 4D Scene Capture in Large-scale Indoor-outdoor Space Using Wearable IMUs and LiDAR. CVPR 2022

HSC4D: Human-centered 4D Scene Capture in Large-scale Indoor-outdoor Space Using Wearable IMUs and LiDAR. CVPR 2022 [Project page | Video] Getting sta

null 47 Sep 26, 2022
Toolkit to convert a clean LiDAR-camera dataset into a robustness benchmark

Code of "Benchmarking the Robustness of LiDAR-Camera Fusion for 3D Object Detection" Here, we will release the toolkit to convert a clean LiDAR-camera

null 29 Sep 14, 2022
BigDetection: A Large-scale Benchmark for Improved Object Detector Pre-training

BigDetection: A Large-scale Benchmark for Improved Object Detector Pre-training By Likun Cai, Zhi Zhang, Yi Zhu, Li Zhang, Mu Li, Xiangyang Xue. This

null 265 Sep 17, 2022
Python library to generate renderings of planets and worlds using neural networks. For Xinny.

Neural Planets Neural planets is a repository for rendering planet-like spheres with topography generated from random neural networks. The design-spac

Jeffrey Lai 2 Jul 27, 2022
Code release for "Omni3D A Large Benchmark and Model for 3D Object Detection in the Wild"

Omni3D & Cube R-CNN Omni3D: A Large Benchmark and Model for 3D Object Detection in the Wild Garrick Brazil, Julian Straub, Nikhila Ravi, Justin Johnso

Meta Research 249 Sep 30, 2022
A large-scale dataset for stereo matching of high-resolution satellite imagery

WHU-Stereo This repository contains: I. A large-scale dataset named WHU-Stereo for stereo matching of high-resolution satellite imagery. II. Several d

null 11 Jul 22, 2022
Official implementation of "AnimeCeleb: Large-Scale Animation CelebHeads Dataset for Head Reenactment" (ECCV 2022)

AnimeCeleb — Official Dataset & PyTorch Implementation AnimeCeleb: Large-Scale Animation CelebHeads Dataset for Head Reenactment Kangyeol Kim*1,4, Sun

Kangyeol Kim 48 Sep 30, 2022
A firmware dataset collected from main-stream vendors for large-scale testing.

firmware_dataset A firmware dataset collected from main-stream vendors for large-scale testing. Vendors D-Link (478) Linksys (63) Netgear (813) Zyxel

34r7hm4n 1 Aug 27, 2022
COYO-700M: Large-scale Image-Text Pair Dataset

?? COYO-700M: Image-Text Pair Dataset COYO-700M is a large-scale dataset that contains 747M image-text pairs as well as many other meta-attributes to

Kakao Brain 708 Sep 23, 2022
This Python repository implements lane detection techniques using OpenCV which is the open-source library used for computer vision, machine learning and image processing.

Repository Overview This repository contains Python code for self-driving cars that use computer vision and deep learning techniques to address proble

ddayto 10 Jul 21, 2022
This is the onnxruntime and tensorrt inference code for CLRNet: Cross Layer Refinement Network for Lane Detection

CLRNet-onnxruntime-and-tensorrt-demo This is the onnxruntime and tensorrt inference code for CLRNet: Cross Layer Refinement Network for Lane Detection

null 10 Sep 29, 2022
Make it Dense: Self-Supervised Geometric Scan Completion of Sparse 3D LiDAR Scans in Large Outdoor Environments

Make it Dense: Self-Supervised Geometric Scan Completion of Sparse 3D LiDAR Scans in Large Outdoor Environments This repository contains the implement

Photogrammetry & Robotics Bonn 67 Sep 24, 2022
[ECCV 2022] RCLane: Relay Chain Prediction for Lane Detection

RCLane: Relay Chain Prediction for Lane Detection Paper RCLane: Relay Chain Prediction for Lane Detection, Shenghua Xu, Xinyue Cai, Bin Zhao, Li Zhang

null 26 Aug 3, 2022
[ECCV 2022] RCLane: Relay Chain Prediction for Lane Detection

RCLane: Relay Chain Prediction for Lane Detection Paper RCLane: Relay Chain Prediction for Lane Detection, Shenghua Xu, Xinyue Cai, Bin Zhao, Li Zhang

lppl 1 Aug 12, 2022
Ego-Lane Detection with Vector Fields

Train a deep network to describe lane trajectories using a vector field in 2D space. Vector fields provide a semi-local representation which can be practical when working with images.

Sven Langner 1 Aug 19, 2022
3rd place solution of ICDM 2022 Risk Commodities Detection on Large-Scale E-Commence Graphs

ICDM 2022: Risk Commodities Detection on Large-Scale E-Commence Graphs [Slides] This is the 3rd place solution for ICDM 2022: Risk Commodities Detecti

Jintang Li 12 Sep 23, 2022
Multi-Modal Lidar Dataset for Benchmarking General-Purpose Localization and Mapping Algorithms

Multi-Modal Lidar Dataset for Benchmarking General-Purpose Localization and Mapping Algorithms (Left) Front view of the multi-modal data acquisition s

TIERS 68 Sep 22, 2022
LiDAR Distillation: Bridging the Beam-Induced Domain Gap for 3D Object Detection

LiDAR Distillation Paper | Model LiDAR Distillation: Bridging the Beam-Induced Domain Gap for 3D Object Detection Yi Wei, Zibu Wei, Yongming Rao, Jiax

Yi Wei 66 Sep 23, 2022