A mapping system for autonomous valet parking(AVP).
Developing [--------> 40 % ---------------]
- Simulation
- static world
- dynamic agents
- Data pretreatment
- vidar point cloud
- bev image
- NN based Semantic segmentation
- occupied grid for submap
- Front End
- Odom with scale rate
- IMU & Encoder Fusion
- Back End
- 3D PGO using ceres
- 3D PGO using g2o
- Loop Closing
- Object based loop closing
- Mapping & Visualization
- Cloud map
- Grid map
- Vector map
Clone and build
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
git clone git@github.com:adin-pro/avp_mapping.git
cd ..
catkin_make
source devel/setup.zsh
Prepare model & materials for simulation
unzip parklot.tar.gz and copy extraced files to .gazebo/models/
tar -zxvf parklot.tar.gz;
cp -r parklot/ .gazebo/models/
Launch Simulation world and rviz
replace word_dir
in avp_mapping/config/global_config.yaml
with your own path
roslaunch avp_mapping online_simulation.launch
Control your robot
roslaunch avp_mapping robot_control.launch
rosrun avp_mapping avp_data_pretreat_node
Launch Mapping Nodes
roslaunch avp_mapping online_mapping.launch
Use rosbag to record data, and then use offline mode for more efficient program development
roslaunch avp_mapping offline_mode.launch
Loop Closing
Trajs after Pose Graph Optimization
Mapping
Before Optimization
- Code FrameWork https://github.com/Little-Potato-1990/localization_in_auto_driving
- Gazebo simulation environment https://github.com/TurtleZhong/AVP-SLAM-SIM
- Robot Control Module https://github.com/huchunxu/ros_exploring
- Implementation Reference https://github.com/liuguitao/AVP-SLAM-PLUS