Home

Awesome

SuperLine3D

SuperLine3D: Self-supervised Line Segmentation and Description for LiDAR Point Cloud
Xiangrui Zhao, Sheng Yang, Tianxin Huang, Jun Chen, Teng Ma, Mingyang Li and Yong Liu
ECCV 2022 Poster

kitti

TODO List and ETA

Requirements

Our code was tested using Tensorflow 1.15.5 and Python 3.8. To use the code, you need to first install the following python packages:

pip install tensorflow-gpu==1.15.5 h5py open3d tqdm visdom multiprocessing Geometry3D
pip install git+https://github.com/utiasSTARS/liegroups.git

How to Use

Step 1. Train on Synthetic Data

<!-- <details> <summary>Step 1. Train on Synthetic Data</summary> -->
# Generate synthetic data
cd scripts
python generate_synthetic_pc.py synthetic_data/

# Train on synthetic data
cd ..
python train_synthetic_data.py --load_folder  scripts/synthetic_data/line_pole_noise/  
<!-- </details> -->

Step 2. Train on Labeled Lidar Data

Download labeled Lidar data from Google Drive
Change batch_size according to your VRAM. It must be even.

<!-- <details> <summary>Step 1. Train on Synthetic Data</summary> -->
python train_superline3d.py --loader_folder <path to your train data>/kitti_reg_diff35/
<!-- </details> -->

Step 3. Inference on Kitti Test Data

Download test Lidar data from Google Drive

<!-- <details> <summary>Step 1. Train on Synthetic Data</summary> -->
python inference_superline3d.py --load_folder  <path to your data>/kitti_reg_test_diff5_2w5/ --pred_path <save path> --best_model xxx.ckpt  
<!-- </details> -->

Citation

@inproceedings{zhao2022superline3d,
  title={SuperLine3D: Self-supervised Line Segmentation and Description for LiDAR Point Cloud},
  author={Zhao, Xiangrui and Yang, Sheng and Huang, Tianxin and Chen, Jun and Ma, Teng and Li, Mingyang and Liu, Yong},
  booktitle={European Conference on Computer Vision},
  year={2022},
  organization={Springer}
}

Acknowledgments

This code benefits from DGCNN and ASIS .