All Projects → liuguitao → AVP-SLAM-PLUS

liuguitao / AVP-SLAM-PLUS

Licence: AGPL-3.0 license
An implementation of AVP-SLAM and some new contributions

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
CMake
9771 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to AVP-SLAM-PLUS

TinyGrapeKit
A bunch of state estimation algorithms
Stars: ✭ 184 (-50.4%)
Mutual labels:  slam, state-estimation, slam-algorithms
2019-UGRP-DPoom
2019 DGIST DPoom project under UGRP : SBC and RGB-D camera based full autonomous driving system for mobile robot with indoor SLAM
Stars: ✭ 35 (-90.57%)
Mutual labels:  slam, autonomous-driving
codac
Codac is a library for constraint programming over reals, trajectories and sets.
Stars: ✭ 31 (-91.64%)
Mutual labels:  slam, state-estimation
vslam
Basic algorithms for vslam.
Stars: ✭ 44 (-88.14%)
Mutual labels:  slam, slam-algorithms
ndtpso slam
ROS package for NDT-PSO, a 2D Laser scan matching algorithm for SLAM
Stars: ✭ 32 (-91.37%)
Mutual labels:  slam, slam-algorithms
microstrain inertial
ROS driver for all of MicroStrain's current G and C series products. To learn more visit
Stars: ✭ 44 (-88.14%)
Mutual labels:  slam, slam-algorithms
awesome-lidar
😎 Awesome LIDAR list. The list includes LIDAR manufacturers, datasets, point cloud-processing algorithms, point cloud frameworks and simulators.
Stars: ✭ 217 (-41.51%)
Mutual labels:  slam, autonomous-driving
gmmloc
Implementation for IROS2020: "GMMLoc: Structure Consistent Visual Localization with Gaussian Mixture Model"
Stars: ✭ 91 (-75.47%)
Mutual labels:  slam, state-estimation
Mrpt
⚡️ The Mobile Robot Programming Toolkit (MRPT)
Stars: ✭ 1,190 (+220.75%)
Mutual labels:  slam, autonomous-driving
Awesome Robotic Tooling
Tooling for professional robotic development in C++ and Python with a touch of ROS, autonomous driving and aerospace.
Stars: ✭ 1,876 (+405.66%)
Mutual labels:  slam, autonomous-driving
Pythonrobotics
Python sample codes for robotics algorithms.
Stars: ✭ 13,934 (+3655.8%)
Mutual labels:  slam, autonomous-driving
RGB-D-SLAM
Work in Progress. A SLAM implementation based on plane and superquadric tracking.
Stars: ✭ 23 (-93.8%)
Mutual labels:  slam, slam-algorithms
dvo python
Coding dense visual odometry in a little more than a night (yikes)!
Stars: ✭ 40 (-89.22%)
Mutual labels:  slam, slam-algorithms
Error-State-Extended-Kalman-Filter
Vehicle State Estimation using Error-State Extended Kalman Filter
Stars: ✭ 100 (-73.05%)
Mutual labels:  autonomous-driving, state-estimation
Iscloam
Intensity Scan Context based full SLAM implementation for autonomous driving. ICRA 2020
Stars: ✭ 232 (-37.47%)
Mutual labels:  slam, autonomous-driving
Deepseqslam
The Official Deep Learning Framework for Route-based Place Recognition
Stars: ✭ 49 (-86.79%)
Mutual labels:  slam, autonomous-driving
Recent slam research
Track Advancement of SLAM 跟踪SLAM前沿动态【2021 version】
Stars: ✭ 2,387 (+543.4%)
Mutual labels:  slam, state-estimation
JuliaAutonomy
Julia sample codes for Autonomy, Robotics and Self-Driving Algorithms.
Stars: ✭ 21 (-94.34%)
Mutual labels:  slam, autonomous-driving
slam gmapping
Slam Gmapping for ROS2
Stars: ✭ 56 (-84.91%)
Mutual labels:  slam
mast project
Underwater Camera and Sonar SLAM (Kevin and Linde's MAST class project)
Stars: ✭ 29 (-92.18%)
Mutual labels:  slam

AVP-SLAM-PLUS

AVP-SLAM-PLUS is an implementation of AVP-SLAM and some new contributions. Performance of AVP-SLAM-PLUS could be found in video(https://www.bilibili.com/video/BV11R4y137xb/)

mapping

localization

AVP-SLAM-PLUS contain a simple implementation of AVP-SLAM: Semantic Visual Mapping and Localization for Autonomous Vehicles in the Parking Lot(IROS 2020) and some new contributions.

The new contribustions are as follows: Firstly,the system provide two camera style mode which are multi RGB cameras mode and multi RGBD cameras mode; Secondly,the system provide two registration mode which are ICP mode and NDT mode. Lastly,the system provide mapping mode and localization mode, that means you can not only do SLAM,but also do localization in a prior map.

AVP-SLAM-PLUS Framework

This code is simple and is a good learning material for SLAM beginners.

Author: Liu Guitao

Email: [email protected]

1. Prerequisites

1.1 Ubuntu and ROS

Ubuntu 64-bit 18.04.ROS Melodic. ROS Installation

1.2 Clone AVP-SLAM-PLUS and Load Gazebo Model

    cd ~/catkin_ws/src
    git clone https://github.com/liuguitao/AVP-SLAM-PLUS.git
    cd AVP-SLAM-PLUS/avp_slam_plus/model/
    unzip my_ground_plane.zip -d ~/.gazebo/models/

2. Build AVP-SLAM-PLUS

    cd ~/catkin_ws
    catkin_make
    source ~/catkin_ws/devel/setup.bash

3. RUN Example

3.1 RGB Mode

save map

if you want to save map and use the map to do localization, you should ensure your config file have be correctely set. The config file is at AVP-SLAM-PLUS/avp_slam_plus/configFile.yaml

    mapSave: true
    mapSaveLocation: your map file address 

3.1.1 Mapping

    roslaunch avp_slam_plus slamRGB.launch

open a new terminal, control robot move.

    roslaunch robot_control robot_control.launch

if you firstly control robot move, you should ensure robot_control.py in AVP-SLAM-PLUS/simlate_gazebo/robot_control/ to be executable. you can do this command to let robot_control.py to be executable.

    chmod +777 robot_control.py

3.1.2 Localization

if you have do 3.1.1 and "save map", you can do localization in the prior map.

    roslaunch avp_slam_plus localizationRGB.launch

open a new terminal, control robot move

    roslaunch robot_control robot_control.launch

3.2 RGBD Mode

save map

if you want to save map and use the map to do localization, you should ensure your config file have be correctely set. The config file is at AVP-SLAM-PLUS-main/avp_slam_plus/configFile.yaml

    mapSave: true
    mapSaveLocation: your map file address 

3.2.1 Mapping

    roslaunch avp_slam_plus slamRGBD.launch

open a new terminal, control robot move

    roslaunch robot_control robot_control.launch

3.2.2 Localization

if you have do 3.2.1 and "save map", you can do localization in the prior map.

    roslaunch avp_slam_plus localizationRGBD.launch

open a new terminal, control robot move

    roslaunch robot_control robot_control.launch

4.Acknowledgements

Thanks for AVP_SLAM(Tong Qin, Tongqing Chen, Yilun Chen, and Qing Su:Semantic Visual Mapping and Localization for Autonomous Vehicles in the Parking Lot),

Thanks for TurtleZhong(https://github.com/TurtleZhong/AVP-SLAM-SIM), whose simulated environment help me a lot.

Thanks for huchunxu(https://github.com/huchunxu/ros_exploring), whose simulated robot model help me a lot.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].