SteveMacenski/spatio_temporal_voxel_layer

A new voxel layer leveraging modern 3D graphics tools to modernize navigation environmental representations

解决的问题

该项目提供了一种高效的机器人环境3D体素表示,可作为ROS中标准 voxel_grid 的即插即用替代方案。它解决了处理高密度3D传感器数据(如多个深度相机或LiDAR)时CPU开销过高的问题,以及动态环境中障碍物随时间出现和消失难以管理的难题。

工作原理

STVL利用 OpenVDB 库维护稀疏的体数据结构,使其在存储和搜索3D世界空间方面比传统网格更高效。它引入了 时间衰减 机制,体素根据可配置函数(线性或指数)过期。为避免昂贵的光线追踪,它使用传感器特定的视锥几何结构(深度相机为立方体,3D LiDAR为沙漏形)来加速那些不再被观测但应保留的体素的衰减。

适用人群

专为使用ROS导航栈的机器人开发者设计,需要将3D感知集成到局部和全局代价地图中,特别是那些在仓库、医院和零售店等动态环境中运行的机器人开发者。

主要亮点

  • 低计算开销:相比标准体素层显著降低CPU使用率,可实现多个高密度传感器(如7个深度相机)的使用,且核心占用极低。
  • 时间衰减:可配置体素过期机制,有效处理动态障碍物,避免简单清除。
  • 基于视锥的清除:根据传感器视场加速体素衰减,保持地图准确性。
  • 稀疏存储:使用OpenVDB维护大规模地图(如60,000平方英尺),内存占用极低。
  • 灵活映射:支持实时3D建图,并可将地图保存为 .vdb 格式。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目