FASTmap: A Multi-Layer Sliding Gridmap for Arbitrary Types
FFI-Report
2022
About the publication
Report number
22/01262
ISBN
978-82-464-3415-5
Format
PDF-document
Size
2.1 MB
Language
English
This report presents the Fixed Area Sliding Template map (FASTmap), a versatile and efficient
C++ mapping framework for storing arbitrary and heterogeneous data types in a sliding grid map.
The framework was first developed to map the surroundings of autonomous vehicles as these are
often equipped with a diverse suite of sensors gathering heterogeneous measurements from the
local environment. Gathering this information in a common data structure can provide an autonomy
system with a situational awareness of the local environment. This further enables the autonomy
system to adapt its behavior to the terrain or evaluate autonomous task and sensor performance.
After its initial conception, FASTmap has been generalized into a framework supporting various
mapping applications, but autonomous vehicles is still considered the main application. A large
part of the core functionality is therefore dedicated to moving the map as efficiently as possible
without compromising the flexibility to store general types. As such the map is designed to be
frequently moved by using internal circular buffers to achieve real time repositioning of data for maps
of appropriate sizes and resolutions.
The main focus of the report is to give an introduction to FASTmap suited for new users. To
this end the report contains the necessary theory, code snippets and examples to start developing
a mapping application. Relevant navigation theory is presented in detail as this subject is tightly
coupled with mapping. Especially the interchangeability of grid maps and tangent reference frames
is stressed as an important relation. A complete list of the current application programming interface
functions, with elaborating comments, is also included as a reference for mapping application developers.
In addition to the user-oriented introduction to the framework, more advanced topics like performance
benchmarking and maximum error calculations are discussed in the later chapters. First FASTmap is
compared to another similar mapping framework called Gridmap, and it is concluded that FASTmap
is more versatile because the choice of data types and memory layout can be specified by the
user. Then runtimes for common and frequently used functionality for both maps are compared and
examples indicate similar performance for similar map sizes. The results are however not conclusive
because of insufficient randomization of the experimental setup, and this is suggested as a topic for
a dedicated work. Finally a function for the maximum position error introduced by map movement
on the Earth ellipsoid is derived. This error is concluded to be neglectable compared to the error
introduced by the grid resolution in most practical cases.