简介

欧几里德符号距离场(ESDF)可以很方便地对障碍物进行距离和梯度信息的查询,对空中机器人的在线运动规划具有重要意义。如何快速地生成ESDF地图是进行实时运动规划的重点。

苏黎世理工有开源一款构建ESDF工具Voxblox(https://github.com/ethz-asl/voxblox)。

Voxblox的主要流程(如下图所示)

  1. 将传感器数据(RGBD, 点云)转换为tsdf.
  2. 根据TSDF使用 propagate的方式 更新ESDF.
    在这里插入图片描述

港科大也开源一款构建ESDF工具FIESTA(https://github.com/HKUST-Aerial-Robotics/FIESTA ),性能比Voxblox更好。

FIESTA的主要流程

  1. 使用光线追踪法将点云叠加到占有栅格地图中,然后将所有占用状态发生改变的体素分别添加到insertQueue和deleteQueue两个队列中
  2. 使用一个名为ESDF更新初始化的过程,将两个队列的内容合并到updateQueue队列中,并使用基于广度优先搜索算法(BFS)的ESDF更新算法更新所有可能更改的体素。
    在这里插入图片描述

一、FIESTA使用

1.安装依赖

安装教程参考https://github.com/HKUST-Aerial-Robotics/FIESTA

  • Eigen3
  • PCL 1.7
  • OpenCV
  • ROS

注意: 运行FIESTA需要C++ 17,确保安配置好C++ 17。

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-7 g++-7

2.下载编译

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

3.运行实例

roslaunch fiesta cow_and_lady.launch
rosbag play data.bag

在这里插入图片描述

在这里插入图片描述

4.可能存在的问题

data.bag数据包播放很慢

解决方法参考http://wiki.ros.org/rosbag/Commandline#compress

在这里插入图片描述

rosbag compress --lz4 data.bag

然后再播放bag文件

rosbag play data.bag

二、仿真演示

待补充。


参考资料

【1】泡泡机器人【泡泡航行天下】FIESTA:用于空中机器人在线运动规划的快速增量欧氏距离场

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐