Papers
arxiv:1611.03631

Voxblox: Incremental 3D Euclidean Signed Distance Fields for On-Board MAV Planning

Published on Nov 11, 2016
Authors:
,
,
,
,

Abstract

Micro Aerial Vehicles (MAVs) that operate in unstructured, unexplored environments require fast and flexible local planning, which can replan when new parts of the map are explored. Trajectory optimization methods fulfill these needs, but require obstacle distance information, which can be given by Euclidean Signed Distance Fields (ESDFs). We propose a method to incrementally build ESDFs from Truncated Signed Distance Fields (TSDFs), a common implicit surface representation used in computer graphics and vision. TSDFs are fast to build and smooth out sensor noise over many observations, and are designed to produce surface meshes. Meshes allow human operators to get a better assessment of the robot's environment, and set high-level mission goals. We show that we can build TSDFs faster than Octomaps, and that it is more accurate to build ESDFs out of TSDFs than occupancy maps. Our complete system, called voxblox, will be available as open source and runs in real-time on a single CPU core. We validate our approach on-board an MAV, by using our system with a trajectory optimization local planner, entirely on-board and in real-time.

Community

Proposes Voxblox: incrementally build Euclidean Signed Distance Fields (ESDF) maps from truncated SDF of objects. ESDF: voxel grid where every point is Euclidean distance to nearest obstacle; TSDF is projective distance (along sensor ray) to the measured surface (boundary clipped by truncation radius). Incorporate incoming sensor data into TSDF; propagate updates voxels to ESDF; dynamically sized map using voxel hashing; pose estimates and sensor data as input; map has layers for TSDF, ESDF, and mesh layers (with integrator for each layer); planner uses the ESDF layer (collision checks and gradients), mesh layer for visualization. Add distance and weight estimates from new scans (filtering/weighing with previous map data); note that distances outside mesh have negative value (more negative if far); linear drop-off weighing (instead of constant weights) for new measurements. Grouped ray-casting for merging: group measured points by voxel (in grid), take weighed mean of points and colors, do ray-casting on this mean position (faster updates). Builds upon an algorithm that updates ESDF from occupancy maps; ESDF form TSDF maps by using two wavefronts (wave propagation updates to 26-connected neighbors): raise queue (new distance from TSDF is higher than previous value), lower queue (new voxel enters map or observed voxel lower value). Also did error calculations through Monte Carlo experiments. All experiments run on a quad-core i7 CPU (single thread). Proposed weighing strategy for TSDF has lesser distortion for larger voxel sizes (compared to constant weighing). Compared batch and incremental updates: use single-voxel fixed band, quasi Euclidean distance, and priority queue for ESDF construction. From ETHz (ASL).

Links: YouTube 1, YouTube 2, PapersWithCode, GitHub (also seemav_voxblox_planning toolbox)

Your need to confirm your account before you can post a new comment.

Sign up or log in to comment

Models citing this paper 0

No model linking this paper

Cite arxiv.org/abs/1611.03631 in a model README.md to link it from this page.

Datasets citing this paper 0

No dataset linking this paper

Cite arxiv.org/abs/1611.03631 in a dataset README.md to link it from this page.

Spaces citing this paper 0

No Space linking this paper

Cite arxiv.org/abs/1611.03631 in a Space README.md to link it from this page.

Collections including this paper 0

No Collection including this paper

Add this paper to a collection to link it from this page.