Skip to content

cchester25/CalibOnline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CalibOnline

☀️ This method aims to provide an online miscalibration detection and correction scheme for calibrated multi-sensor systems that require long-term operation.

✨ Multisensor fusion is increasingly used in robotic systems due to its improvement in system robustness and accuracy, whitch also poses great challenges for Multisensor calibration. Existing techniques are mainly implemented offline and with the help of targets, which cannot cope with extrinsic perturbation caused by vibrations and deformations while the system is running. In this letter, we present CalibOnline, a novel method for online detecting and correcting extrinsic perturbation. First, this letter introduces a unified data modality for representing LiDAR and cameras, i.e., the depth map, and a robust feature that this modality possesses, i.e., depth discontinuous edges, is explored. Secondly, the effect of extrinsic perturbation on the edge-matching constraints is analyzed and accordingly the miscalibration probabilities are designed to supervise the extrinsic. Finally, the perturbation correction is described as a problem of on-manifolds optimization, which enhances the convergence of the estimated extrinsic. The experimental results in different datasets and scenarios have demonstrated that the proposed method has high robustness and accuracy.

The pipeline of CalibOnline

🗒 1. Prerequisites

1.1 Ubuntu and ROS

Ubuntu 64-bit 20.04. ROS noetic. ROS Installation or One click installation

    sudo apt-get install ros-XXX-cv-bridge ros-xxx-pcl-conversions

or

wget http://fishros.com/install -O fishros && . fishros

1.2 Eigen 3.3.7

Follow Eigen Installation

1.3 Ceres Solver 1.14.0

Follow Ceres Installation.

1.4 **virtual environment **

conda create -n depth python=3.8 conda activate depth conda install pytorch torchvision pytorch-cuda=11.7 -c pytorch -c nvidia pip install -r requirements.txt

🤖 Pretrained models

[Models]

1.5 **data set **

kitti_2011-09-30-0027

pip install kitti2bag
kitti2bag -t 2011_09_30_0027 -r 0027 raw_synced

🛠️ 2. Build

Clone the repository and catkin_make:

cd ~/catkin_ws/src
git clone https://github.com/cchester25/CalibOnline.git
cd ../
catkin_make
source ~/catkin_ws/devel/setup.bash

🚀 3. Run example

cd depthV3
conda activate depth
roscore
python inference.py --config configs/v3/kitti_raw.txt --ckpt_path ckpts/kitti_scv3/xxxxx.ckpt 
cd ~/catkin_ws/src
source ~/catkin_ws/devel/setup.bash
roslaunch calib_online run_outdoor_kitti.launch

👏 Acknowledgement

This project is based on the following projects:

About

A new method for online detecting and correcting extrinsic perturbation occurring during carrier motion.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors