Benchmark tools for Compressive LiDAR-to-map registration

Overview

Benchmark tools for Compressive LiDAR-to-map registration

This repo contains the released version of code and datasets used for our IROS 2021 paper: "Map Compressibility Assessment for LiDAR Registration [link]. If you find the code useful for your work, please cite:

@inproceedings{Chang21iros,
   author = {M.-F. Chang and W. Dong and J.G. Mangelson and M. Kaess and S. Lucey},
   title = {Map Compressibility Assessment for {LiDAR} Registration},
   booktitle = {Proc. IEEE/RSJ Intl. Conf. on Intelligent Robots andSystems, IROS},
   address = {Prague, Czech Republic},
   month = sep,
   year = {2021}
}

Environment Setup

The released codebase supports following methods:

  1. Point-to-point ICP (from open3d)
  2. Point-to-plane ICP (from open3d)
  3. FPFH (with RANSAC from open3d or Teaser++)
  4. FCGF (with RANSAC from open3d or Teaser++)
  5. D3Feat (with RANSAC from open3d or Teaser++)

To run Teaser++, please also install from https://github.com/MIT-SPARK/TEASER-plusplus (python bindings required). One can build install the environment with the following conda command:

conda create --name=benchmark  python=3.6  numpy open3d=0.12  tqdm pytorch cpuonly -c pytorch -c open3d-admin -c conda-forge 
conda activate benchmark
pip install pillow==6.0 #for visualization

Datasets

The preprocessed data can be downloaded from [link]. The following data were provided:

  1. Preprocessed KITTI scan/local map pairs
  2. Preprocessed Argoverse Tracking scan/local map pairs
  3. FCGF and D3Feat features
  4. The ground truth poses

We haved preprocessed the results from FCGF and D3Feat into pickle files. The dataset is organized as source-target pairs. The source is the input LiDAR scan and the target is the cropped local map with initial LiDAR pose.

By default, we put the data in ./data folder. Please download the corresponding files from [link] and put/symlink it in ./data. The file structure is as follows:

./data
   ├─ data_Argoverse_Tracking
   │    ├─ test_dict_maps.pickle
   │    ├─ test_list_T_gt.pickle
   │    └─ test_samples.pickle
   │ 
   ├─ data_KITTI
   │    ├─ test_dict_maps.pickle
   │    ├─ test_list_T_gt.pickle
   │    └─ test_samples.pickle
   │ 
   ├─ deep
   │    ├─ d3feat.results.pkl.Argoverse_Tracking
   │    ├─ d3feat.results.pkl.KITTI
   │    ├─ fcgf.results.pkl.Argoverse_Tracking
   │    └─ fcgf.results.pkl.KITTI
----

Usage

To run the code, simply use the following command and specify the config file name.:

python3 run_eval.py --path_cfg=configs.config

For trying out existing methods, first edit config.py to config the method list, the dataset name, and the local dataset path.

For trying out new methods, please add the registration function to tester.py and add the method configuration to method.py and the parameters to method.json.

To visualize the resulting recall curves, please run

python3 make_recall_figure_threshold.py --path_cfg=configs.config

It will generate the recall plot and error density plot in ./output_eval_{dataset_name}. Here is an expected outout:

Acknowledgement

This work was supported by the CMU Argo AI Center for Autonomous Vehicle Research. We also thank our labmates for the valuable suggestions to improve this paper.

References

  1. Teaser++
  2. Open3d
  3. KITTI Odometry Dataset
  4. Argoverse 3D Tracking 1.1
  5. FCGF
  6. D3Feat
Owner
Allie
PhD student in Robotics Institute of Carnegie Mellon University
Allie
Indonesian Car License Plate Character Recognition using Tensorflow, Keras and OpenCV.

Monopol Indonesian Car License Plate (Indonesia Mobil Nomor Polisi) Character Recognition using Tensorflow, Keras and OpenCV. Background This applicat

Jayaku Briliantio 3 Apr 07, 2022
Python package for downloading ECMWF reanalysis data and converting it into a time series format.

ecmwf_models Readers and converters for data from the ECMWF reanalysis models. Written in Python. Works great in combination with pytesmo. Citation If

TU Wien - Department of Geodesy and Geoinformation 31 Dec 26, 2022
Implementation of the paper NAST: Non-Autoregressive Spatial-Temporal Transformer for Time Series Forecasting.

Non-AR Spatial-Temporal Transformer Introduction Implementation of the paper NAST: Non-Autoregressive Spatial-Temporal Transformer for Time Series For

Chen Kai 66 Nov 28, 2022
RefineGNN - Iterative refinement graph neural network for antibody sequence-structure co-design (RefineGNN)

Iterative refinement graph neural network for antibody sequence-structure co-des

Wengong Jin 83 Dec 31, 2022
Attention Probe: Vision Transformer Distillation in the Wild

Attention Probe: Vision Transformer Distillation in the Wild Jiahao Wang, Mingdeng Cao, Shuwei Shi, Baoyuan Wu, Yujiu Yang In ICASSP 2022 This code is

Wang jiahao 3 Oct 31, 2022
[ICME 2021 Oral] CORE-Text: Improving Scene Text Detection with Contrastive Relational Reasoning

CORE-Text: Improving Scene Text Detection with Contrastive Relational Reasoning This repository is the official PyTorch implementation of CORE-Text, a

Jingyang Lin 18 Aug 11, 2022
Auto HMM: Automatic Discrete and Continous HMM including Model selection

Auto HMM: Automatic Discrete and Continous HMM including Model selection

Chess_champion 29 Dec 07, 2022
Medical Insurance Cost Prediction using Machine earning

Medical-Insurance-Cost-Prediction-using-Machine-learning - Here in this project, I will use regression analysis to predict medical insurance cost for people in different regions, and based on several

1 Dec 27, 2021
Scikit-learn compatible estimation of general graphical models

skggm : Gaussian graphical models using the scikit-learn API In the last decade, learning networks that encode conditional independence relationships

213 Jan 02, 2023
PyTorch implementation of DUL (Data Uncertainty Learning in Face Recognition, CVPR2020)

PyTorch implementation of DUL (Data Uncertainty Learning in Face Recognition, CVPR2020)

Mouxiao Huang 20 Nov 15, 2022
Non-Imaging Transient Reconstruction And TEmporal Search (NITRATES)

Non-Imaging Transient Reconstruction And TEmporal Search (NITRATES) This repo contains the full NITRATES pipeline for maximum likelihood-driven discov

13 Nov 08, 2022
Hummingbird compiles trained ML models into tensor computation for faster inference.

Hummingbird Introduction Hummingbird is a library for compiling trained traditional ML models into tensor computations. Hummingbird allows users to se

Microsoft 3.1k Dec 30, 2022
这是一个facenet-pytorch的库,可以用于训练自己的人脸识别模型。

Facenet:人脸识别模型在Pytorch当中的实现 目录 性能情况 Performance 所需环境 Environment 注意事项 Attention 文件下载 Download 预测步骤 How2predict 训练步骤 How2train 参考资料 Reference 性能情况 训练数据

Bubbliiiing 210 Jan 06, 2023
Code corresponding to The Introspective Agent: Interdependence of Strategy, Physiology, and Sensing for Embodied Agents

The Introspective Agent: Interdependence of Strategy, Physiology, and Sensing for Embodied Agents This is the code corresponding to The Introspective

0 Jan 10, 2022
Chunkmogrify: Real image inversion via Segments

Chunkmogrify: Real image inversion via Segments Teaser video with live editing sessions can be found here This code demonstrates the ideas discussed i

David Futschik 112 Jan 04, 2023
Implementation of Memory-Efficient Neural Networks with Multi-Level Generation, ICCV 2021

Memory-Efficient Multi-Level In-Situ Generation (MLG) By Jiaqi Gu, Hanqing Zhu, Chenghao Feng, Mingjie Liu, Zixuan Jiang, Ray T. Chen and David Z. Pan

Jiaqi Gu 2 Jan 04, 2022
Western-3DSlicer-Modules - Point-Set Registrations for Ultrasound Probe Calibrations

Point-Set Registrations for Ultrasound Probe Calibrations -Undergraduate Thesis-

Matteo Tanzi 0 May 04, 2022
NExT-QA: Next Phase of Question-Answering to Explaining Temporal Actions (CVPR2021)

NExT-QA We reproduce some SOTA VideoQA methods to provide benchmark results for our NExT-QA dataset accepted to CVPR2021 (with 1 'Strong Accept' and 2

Junbin Xiao 50 Nov 24, 2022
Official PyTorch implementation of the ICRA 2021 paper: Adversarial Differentiable Data Augmentation for Autonomous Systems.

Adversarial Differentiable Data Augmentation This repository provides the official PyTorch implementation of the ICRA 2021 paper: Adversarial Differen

Manli 3 Oct 15, 2022
Implementation of Diverse Semantic Image Synthesis via Probability Distribution Modeling

Diverse Semantic Image Synthesis via Probability Distribution Modeling (CVPR 2021) Paper Zhentao Tan, Menglei Chai, Dongdong Chen, Jing Liao, Qi Chu,

tzt 45 Nov 17, 2022