SHIELD, Spherical-Projection Hybrid-Frontier Integration for Efficient LiDAR-based UAV Exploration. SHIELD is a LiDAR-based UAV exploration framework which uses an outward spherical-projection ray-casting strategy to ensure flight safety and exploration efficiency in open areas with insufficient point cloud returns. It maintains an observation-quality occupancy map and performs ray-casting based on quality. A hybrid frontier method is used to tackle both the computational burden and the inconsistent quality of point clouds.
SHIELD achieves superior performance compared with the state-of-the-art methods.
SHIELD was also tested through flight experiments in different types of real-world scenarios.
Please cite our paper if you use this project in your research:
@ARTICLE{shield,
author={Feng, Liangtao and Liu, Zhenchang and Zhang, Feng and Ren, Xuefeng},
journal={arXiv preprint arXiv:2512.23972},
title={SHIELD: Spherical-Projection Hybrid-Frontier Integration for Efficient LiDAR-based Drone Exploration},
year={2025},
doi={10.48550/arXiv.2512.23972}
}Test Environment
- Ubuntu 20.04
- ROS Noetic
- C++17
Clone Code
cd
git clone https://github.com/LiuZhenchang/SHIELD.gitDownload PCD File
Download simulation maps from Google Drive or Baidu Netdisk, create rflysim_explore/explore_demo/src/MARSIM/map_generator/resource if it doesn't exist, and move the downloaded maps to this folder.
mkdir -p ~/SHIELD/src/MARSIM/map_generator/resource
mv /path/to/downloaded/maps/*.pcd ~/SHIELD/src/MARSIM/map_generator/resource/Install packages
sudo apt-get install libglfw3-dev libglew-dev libarmadillo-dev libdw-devinstall nlopt v2.7.1
git clone -b v2.7.1 https://github.com/stevengj/nlopt.git
cd nlopt
mkdir build
cd build
cmake ..
make
sudo make installInstall LKH-3
wget http://akira.ruc.dk/~keld/research/LKH-3/LKH-3.0.6.tgz
tar xvfz LKH-3.0.6.tgz
cd LKH-3.0.6
make
sudo cp LKH /usr/local/binBuild
cd ~/SHIELD
catkin_makeRun the bash script to start MARSIM, RVIZ and SHIELD.
cd ~/SHIELD/shell
bash Explore_marsim.shYou can change the scene in Explore_marsim.sh to run different scenarios.
DEMO_NAME="community" # garage、cave、community、ruins
This project is sponsored by Zhuoyi Intelligent Tech Co, Ltd.
We would like to express our gratitude to the following projects, which have provided significant support and inspiration for our work:
We use NLopt for non-linear optimization and use LKH for travelling salesman problem.




