GithubHelp home page GithubHelp logo

xianshuaisun / eplf-vins Goto Github PK

View Code? Open in Web Editor NEW

This project forked from leixu1999/eplf-vins

0.0 0.0 0.0 56.03 MB

License: GNU General Public License v3.0

Shell 0.07% C++ 96.26% Python 1.27% C 0.21% CMake 2.18%

eplf-vins's Introduction

EPLF-VINS

Real-Time Monocular Visual-Inertial SLAM With Efficient Point-Line Flow Features

EPLF-VINS is a real-time SLAM framework with efficient point-line flow features. Our work primarily focuses on improving the speed of detection and tracking of line features. The main contributions are in the "linefeature_tracker" folder

2022/12/20 The open-source version of our algorithm is being prepared and will be open-sourced soon.

2023/5/28 The open source version is released.

Authors: Lei Xu, Hesheng Yin, Tong Shi, Jiang Di, Bo Huang from the HIT Industrial Research Institute of Robotics and Intelligent Equipment.

1.Prerequisites

1.1 Our testing hardware configuration is a 3.6 GHz Core AMD Ryzen 5-3600 CPU and 16 GB memory desktop PC.

1.2 The algorithms are run on Ubuntu 18.04 with OpenCV 3.4.16 and Ceres solver 1.14.0.

2.Build

cd ~/catkin_ws/src
git clone https://github.com/LeiXu1999/EPLF-VINS.git
cd ../
catkin_make
source ~/catkin_make/devel/setup.bash

3.Run on the dataset

We provide guidelines for running on the dataset including EuRoC, TUM VI, and KAIST VIO.

EuRoC:

roslaunch lfvins_estimator euroc.launch
rosbag play your_euroc_path/MH_01_easy.bag

TUM VI:

roslaunch lfvins_estimator tumvi.launch
rosbag play your_tumvi_path/dataset-magistrale1_512_16.bag

KAIST VIO:

roslaunch lfvins_estimator kaistvio.launch
rosbag play your_kasitvio_path/circle.bag

4.Deployed on your device

ROS topics for cameras and IMUs are required to run the entire system.

Videos: realRobot_Youtube, BiliBili_link

The config.yaml file needs to be modified before running which is including necessary parameters such as camera topic name, imu topic name, camera internal parameters, camera-imu extrinsic parameters, and IMU internal parameters.

*launch your sensor_ros_package*

*change your robot parameters*
cd ~/catkin_ws/src
gedit ../config/realrobot.yaml

*launch EPLF-VINS*
source devel/setup.bash
roslaunch lfvins_estimator real.launch

You can contact me for deployment issues.

5.Acknowledgements

Thanks to the open sources of PL-VINS and VINS-Mono, it is possible to build our algorithm quickly within the VINS system.

The reference:

VINS-Mono:

@ARTICLE{VINS-Mono,
	author={Qin, Tong and Li, Peiliang and Shen, Shaojie},
	journal={IEEE Trans. Robot.}, 
	title={{VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator}}, 
	year={2018},
	volume={34},
	number={4},
	pages={1004-1020},
	doi={10.1109/TRO.2018.2853729}}

PL-VINS:

@article{PL-VINS,
	author    = {Qiang Fu and Jialong Wang and Hongshan Yu and Islam Ali and Feng Guo and Hong Zhang},
	title     = {{PL-VINS: Real-Time Monocular Visual-Inertial SLAM with Point and Line}},
	journal   = {CoRR},
	volume    = {abs/2009.07462},
	year      = {2020},
	url       = {https://arxiv.org/abs/2009.07462},
	eprinttype = {arXiv},
	eprint    = {2009.07462},
	timestamp = {Wed, 09 Feb 2022 17:07:27 +0100},
	biburl    = {https://dblp.org/rec/journals/corr/abs-2009-07462.bib},
	bibsource = {dblp computer science bibliography, https://dblp.org}
}

6.License

The source code is released under GPLv3 license. We are still working on improving the code reliability.

For any technical issues, please contact Lei Xu [email protected].

Thank Tong Shi (哈尔滨工业大学威海校区本科毕业生) for helping me code this system. He makes a huge contribution in this work. A more readable version can be found at his GITHUB link.

For commercial inquiries, please contact Professor-Bo Huang [email protected].

eplf-vins's People

Contributors

leixu1999 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.