Root
Root
E. Topological Navigation
(c) (d)
After building a convex cluster representation of the envi-
Fig. 3: Outline of one step of the cluster growing algorithm. ronment, we can proceed with the topological navigation. We
(a) Cluster shape of the current iteration. (b) Find direct interpret the convex clusters as the vertices of our topological
neighbors of the cluster. (c) Choose all neighbors which graph. Similarly, the topological edges are created whenever
make the cluster compact. (d) Only keep the voxels that two clusters are adjacent (portals). Fig. 2b outlines our
preserve the convexity. approach of path planning on a topological map.
Let us consider a simple A-to-B path planning case: both
A and B have to be located within the clusters as we have
no information about the space outside of them. We start by
length of rmin , we only allow voxels up to a distance
building a navigation graph by connecting the portal centers
of rmin + δ to the cluster center to be added to the
of all topological vertices. Additionally we connect A and
cluster (compact candidates).
B to the portal centers of their corresponding topological
3) Only add these compact candidates which ensure that
vertices. In order to get the shortest path from A to B
the convex hull of the current cluster does not include
based on this graph, we can perform an A* search. The
any obstacle voxels. This is done by checking if the
path planning algorithm would then plan a path where the
rays from all candidate voxels to the cluster voxels are
agent moves from A to the portal, then starts traversing
obstacle-free.
intermediate clusters until it reaches the cluster that contains
The growing of a single cluster terminates after no more B, where it can move directly from the portal to the desired
voxels have been added. This means that there are either no destination.
more compact candidates found or that the existing cluster is
no longer convex when adding these candidates. After this, IV. E XPERIMENTAL E VALUATION
we start growing the other clusters in the same way until the In this section, the evaluation of three main parts of
whole explorer trajectory is contained within the clustered Topomap and the results of the entire framework are pre-
space. sented. Section IV-A evaluates the performance of TSDF
integration based on sparse visual 3D landmarks and com-
D. Convex Cluster Merging
pares it to the approach based on dense reconstruction using
The algorithm described in the previous section yields a a stereo camera. It indicates the potential compromises we
relatively high number of compact, convex regions which are making by avoiding the use of any expensive hardware
are conservative in the sense that they do not include any or significant computational power. Then, we demonstrate
obstacle voxels and have a similar expansion in all directions. the performance of the cluster creation algorithm on multiple
We now introduce a second step, where regions are merged real world environments in Section IV-B. Finally, Section IV-
if the convex hull of the combined region contains a low C compares our topological planner to RRT*, a state-of-
number of obstacle voxels. Our algorithm is inspired by the-art planner that is commonly used within the robotics
dynamic region merging [?], which first over-segments an community.
image into small and conservative regions (superpixels), We acquired our datasets using a synchronized visual-
and then merges similar segments iteratively. This two-step inertial sensor [?] and the experiments were performed using
procedure makes the final segmentation less prone to noisy a dual-core Intel i7-7600U (2.8 GHz) processor. The SLAM
input data, as the merging step is based on a good but over- maps are built by first running a visual-inertial odometry
conservative pre-segmentation of the input pixels/voxels. pipeline based on [?] and then running global bundle ad-
The proposed algorithm is iterative and repeatedly at- justment and loop closure using maplab, an open source
tempts to merge neighboring candidate pairs of clusters. In mapping framework [?].
1.0
0.8
percentage [%]
0.6
0.4
(a) Depth map integration. (b) Sparse landmark
integration. 0.2 captured free space
captured occupied space
Fig. 4: Slice of a 3D TSDF reconstruction of an office
0.0
environment. The voxel size is 0.25 m. Integrating the 1322 0.1 0.2 0.3 0.4 0.5
stereo images takes 43.3 s and produces a TSDF map of voxel size [m]
650 231 voxels, whereas the integration of the 1770 269 land-
marks lasts for 2.1 s and the corresponding map contains Fig. 5: Influence of the voxel size on the amount of captured
390 791 voxels. Observe how using sparse landmarks for free/occupied space in the sparse TSDF map. The dense
TSDF construction preserves most of the relevant environ- TSDF map is taken as a reference: For each free voxel
ment structure. in the dense map, we check if the corresponding voxel in
the sparse map is free as well. In order to get the captured
occupied space, we also take into account unmapped space
A. TSDF Maps from Visual Landmarks in the sparse map. This is reasonable as during the voxel
growing, unmapped space is treated as occupied space.
In the previous sections we proposed ray tracing free space
from sparse SLAM landmarks that significantly reduces
computational requirements and simplifies the sensor setup,
a stereo rig. Here, we take the dense TSDF map as a
but it might affect the quality of the TSDF reconstruction.
reference. Obviously, this is only an approximation, but
Capturing both the free space and occupied areas correctly
should give a good insight about how well the landmark
is essential for a reliable creation of the convex clusters
integration performs in real world scenarios. Fig. 5 shows
and navigation in the subsequent steps of our algorithm.
the percentage of captured free and occupied space for five
We would therefore like to evaluate the TSDF maps of
voxel resolutions. More free space can be captured if we
the proposed approach and compare them with TSDF maps
increase the voxel size, but at the same time, we will also get
that were created from dense stereo images. By employing
larger discretization errors (e.g. small obstacles will not be
the semi-global matching algorithm [?] implemented in
captured in the occupancy map). Evidently, this latter effect
OpenCV [?], we get dense depth images from the 10 cm
is not captured in the shown plot, as the dense TSDF map
baseline stereo camera. These are integrated into a TSDF
suffers from the same effects.
from their corresponding observer poses in the same way
as the 3D landmarks (see Section III-B) using the identical B. Topological Map Creation
integration parameters. The most important parameters are In this section, we want to evaluate the core part of
the maximum ray length and the truncation distance, which Topomap – growing and merging of the voxel clusters.
we set to 4.0-7.0 m and 0.1-0.5 m, respectively. Fig. 6 shows the cluster arrangement after the growing step
A qualitative comparison between sparse visual landmarks and the subsequent iterations of the merging algorithm in
and depth maps to create a TSDF map is presented in Fig. 4. a warehouse environment. While the cluster growing step
Even if the TSDF map based on the landmarks is sparser expands the clusters within the free space, the merging
and partially occupied by outlier voxels in some of the free procedure leads to a substantial complexity reduction of
space areas, it still contains the relevant structure which can the topological map structure. It is worth to emphasize
be inferred from the dense map (walls, corridors, doorways). how the algorithm captures the complex topology of this
In fact, the Topomap framework handles outliers and missing environment by combining multiple small compact clusters
information in the subsequent stages by filtering out small into larger ones along corridors, but preserves a more fine-
connected components in the occupancy map and by en- grained clustering in the corners.
forcing convexity for all added voxels during the growing To give more insights into the results of the clustering
process. Convexity prevents clusters from growing through algorithm, we also showcase the output from Topomap for
or around obstacles (e.g. walls) even if some occupancy three different datasets in Fig. 7: The office dataset constitutes
information is missing. a typical example of a structured environment, which is
In the next step, we want to evaluate quantitatively how segmented into clusters in a similar fashion to what a human
much free space can be captured using the sparse visual would typically do (separation into rooms and corridors).
landmarks compared to the dense maps generated from The second example, open space, is more demanding as
Fig. 6: Iterative cluster merging demonstrated in a warehouse setting. Starting with a large number of small and compact
clusters, we merge cluster pairs which contain only a low number of obstacle voxels within their combined convex hull.
The initial 105 clusters are reduced to 24 clusters within 3 merging steps, and the number of topological edges is reduced
from 121 to 29. In this example, we set the obstacle ratio threshold to 5%.
50 1.6
30 0.8
(a) Office dataset, 20 m trajectory
20 0.4
10 0.0
0 1 2 3 4 5
obstacle ratio threshold [%]
(b) Open space, 50 m trajectory Fig. 8: An evaluation of the obstacle ratio threshold parame-
ter for the open space dataset. As expected, a higher value of
this parameter leads to a lower number of final clusters (red
curve) as many of them are merged. On the other hand, the
blue curve expresses how many obstacle voxels are contained
within the voxel clusters. It increases if we leverage the
condition of contained obstacle voxels.
(c) Pillars dataset, 10 m trajectory
Fig. 7: SLAM maps (left) and their corresponding topolog-
ical maps (right). (a) Office: Typical topological mapping This would not be possible for a teach-and-repeat navigation
dataset consisting of narrow corridors and clearly separated strategy.
rooms. (b) Open space: The large open spaces of this dataset The Topomap algorithm does not require a large set of
are correctly represented by convex clusters. (c) Pillars: The environment specific parameters or tedious fine-tuning for
ray traced empty space between the clusters is sufficient to a specific use case. We would like, however, to highlight
introduce topological edges and enable path planning in these a parameter that affects both the robustness towards outliers
areas where the explorer never traversed. and the accuracy of the topological map. Fig. 8 demonstrates
the influence of the obstacle ratio threshold (introduced in
Section III-D) on the segmentation result. This parameter
it consists of large open spaces at the one hand and of gives us control over the following trade-off: Larger values
some more narrow passages on the other (top part of the of the obstacle ratio threshold will reduce the complexity
map). Note how our topological map representation succeeds of the topological map by accepting small obstacles to
to simplify the map given the winding explorer trajectory. be present within the merged clusters. These violations of
Clearly, the merging algorithm did well by creating rather the requirement that clusters are completely empty shifts
large clusters in the open space part of the dataset. Fi- part of the planning responsibility to the local planner and
nally, the pillars dataset highlights how Topomap can infer requires a local collision avoidance algorithm to circumvent
traversable areas that cannot be deduced purely from the these obstacles within a cluster. Keeping the values of this
explorer trajectory. This means that a robot that uses this parameter low will have an opposite effect – only few
topological map could use the passages in between the pillars obstacle voxels will be allowed within the clusters which will
even if they have never been traversed by the explorer. lead to a large number of small clusters. It will therefore be
TABLE I: Timing and storage requirement statistics of the
Topomap pipeline for the datasets evaluated in this paper.
The volume within the brackets shows the volume of all
mapped voxels within the TSDF map. All voxel sizes were
set to 0.25 m. The storage requirements of our approach are
significantly reduced when compared to the full TSDF.
computation time [s] storage requirements [kB]
TSDF clusters full clusters convex hulls TSDF
multifloor (2209 m3 ) 4.1 86.1 567 249 4320
warehouse (895 m3 ) 0.4 11.2 147 110 1784
office (622 m3 ) 2.1 9.9 123 73 1162 Fig. 10: Setup of the Turtlebot experiments. The VI sen-
open space (1464 m3 ) 2.7 42 379 150 2932
pillars (269 m3 ) 0.46 3.1 51.9 62.7 607 sor [?] is used for global localization within the SLAM map,
and a laser is used for local obstacle avoidance only using
the dynamic window approach [?].
2.5
RRT*
normalized path distance
Topomap
assessment of the generated paths as well as a deployment
2.0 of the system on an real robotic platform.
First, we compare Topomap to the RRT* planner from
OMPL [?], which is provided a TSDF map from stereo
1.5 images. We sample 100 trajectories with random start and
goal positions for both planners and compare the path
distances normalized by the direct line distance (see Fig. 9).
1.0 The planning time of the RRT* planner is set to 2 s, which led
to successful paths given the complexity of our environments
and the voxel resolution. In general, the path lengths gener-
warehouse office open space pillars
ated by the topological planner are slightly longer, but at the
same time, our A* planning time is drastically lower than for
Fig. 9: A comparison of the normalized path distances of
RRT* (typically in the order of some 100 µs). This directly
RRT* operating on a TSDF map from dense stereo images
corresponds to our goal to replace demanding algorithms
and our proposed topological planner (100 runs per dataset).
with a lightweight counterpart with only a marginal quality
The path distances are normalized by the direct line distance.
loss.
Our lightweight topological planner generates paths just
Secondly, we have integrated our proposed navigation
marginally longer than RRT*, but requires much simpler
system on a Turtlebot robot equipped with a VI sensor, and
computations (A* on a small navigation graph).
successfully performed path planning tasks within a semi-
structured industrial site. In a first step, the robot performed
global localization within the visual SLAM map using the
harder to tune this parameter within large spaces where we
approach described in [?], and was then given a target posi-
encounter varying obstacle/free space configurations.
tion. The topological planner then computed the fastest path
We claim that Topomap is particularly useful in the ap-
to the given location, and Turtlebot successfully completed
plications that put constraints on the computational power
a trajectory of approximately 15 m, using a 2D laser for
or limit the available perception hardware. Special care
local obstacle avoidance only. These experiments proved the
was taken to guarantee that the framework uses a limited
usefulness of our system on a mobile platform equipped only
amount of resources, including the storage requirements of
with a camera and a computationally constrained processing
the topological map. Table I summarizes some statistics
unit. A video footage demonstrating the Turtlebot experiment
about the topological map creation for the datasets presented
is provided as a supplementary material to this paper1 .
throughout this paper. Having the SLAM map as an input
to our system, we could create topological maps for most V. C ONCLUSIONS
of these datasets within less than a minute. The storage In this paper, we have presented Topomap, a novel frame-
requirements for the topological map are low as only the work for creating versatile topological maps and reliable
convex hulls of the voxel clusters are stored. Obviously, this navigation therein. Our approach can handle noisy and
compact representation has also the potential to over-simplify sparse visual measurements, which significantly reduces the
the environment and we may lose important details in some hardware requirements when compared with state-of-the-art
cases. approaches. The core component of the proposed system
C. Path Planning is a voxel based growing and merging algorithm, which
segments the free space into convex clusters. This enables
The proposed topological mapping concept is primarily path planning algorithms that are orders of magnitude faster
targeting navigation and path planning. Below, we present
an evaluation of the entire pipeline that includes both the 1 https://youtu.be/UokjxSLTcd0
than conventional grid based planners. Additionally, the larger real world scenarios and we would like to integrate
chosen structure of the topological map makes the resulting it on a flying platform, which would exploit the full 3D
maps very compact. capabilities of this framework. Furthermore, we intend to
The evaluations of Topomap demonstrate that it is possi- include semantic information in the topological maps, as this
ble to reliably build TSDF maps from sparse vision-based has the potential of pushing boundaries of robotic autonomy
measurements. We also have proved that the results of even further.
the framework do not exhibit any significant quality loss
when compared to RRT* operating on a dense TSDF map. ACKNOWLEDGEMENT
Finally, the system was successfully deployed on a mobile We would like to thank Helen Oleynikova for fruitful dis-
robotic platform. We believe the results of this work will cussions about navigation, path planning and real challenges
be interesting for everyone working on the navigation of of mobile robotics.§ The research leading to these results has
mobile platforms within large-scale environments, and where received funding from Google Tango.
the computational resources, size or weight are limited.
R EFERENCES
For future work, we plan to evaluate our approach on some