Wolfram Burgard
Giorgio Grisetti
Cyrill Stachniss
Michael Kaess
Domingo Tardos
Jakob Engel
1:30pm - 1:40pm: Wolfram Burgard
1:40pm - 2:30pm: Giorgio Grisetti
2:30pm - 3:20pm: Cyrill Stachniss
3:20pm - 3:40pm: Coffee Break
3:40pm - 4:25pm: Michael Kaess
4:25pm - 5:10pm: Domingo Tardos
5:10pm - 5:55pm: Jakob Engel
In this lecture we present some basic theory and tools that are at the base of many techniques and algorithms in SLAM. We start from the probabilistic interpretation of the Gauss Newton algorithm, that is at the base of popular techniques such ICP or Bundle Adjustment. We shortly present the formulation of Gauss-Newton to deal with non Euclidean spaces, such as the SE(2) and SE(3) groups commonly found in SLAM. We aim at concluding the lecture with a simplistic on the fly derivation and implementation of ICP.
Download slides [pdf](Updated 04/06/2016)
One intuitive way of formulating SLAM is to use a graph whose nodes correspond to the poses of the robot at different points in time and whose edges represent constraints between the poses. The constraints are obtained from observations of the environment or from movements. Once such a graph is constructed, the map can be computed by finding the spatial configuration of the nodes that is mostly consistent with the measurements modeled by the edges. In this tutorial, we provide an introductory description to the graph-based SLAM problem. We discuss a state-of-the-art solutions that is based on least-squares error minimization and exploits the structure of the SLAM problems during optimization.
Download slides [pdf]
In addition to its graph structure, the on-line SLAM problem features a temporal structure: Measurements arrive over time, and in each time step a new optimization problem needs to be solved that only differs from the previous one by the addition of a few new measurements. We present efficient solutions for incrementally solving the graph SLAM problem by exploring the connection between matrix factorization and inference in graphical models. The methods presented reuse computations performed in previous steps to provide the same solution as batch algorithms at significant savings in computation.
Download slides [pdf]
We will present the basics of feature-based visual SLAM: extract a set of sparse features from the input images, match the features obtained from different poses, and solve the SLAM problem by minimizing the feature reprojection error. When solving the whole system together, this gives the classical Bundle Adjustment (BA) approach, that only works in real-time in small problems. From here, we will discuss the main approximations used to solve visual SLAM in real-time: EKF-SLAM, that marginalizes all the previous camera poses, and keyframe-based methods like PTAM, that select a set of images and throw away the information from the rest. As an example of advanced keyframe-based technique we will discuss ORB-SLAM, that achieves real-time SLAM in large-scale environments using local BA, and includes fully automated relocation and loop closing.
Download slides [pdf]
We will give an overview over the direct visual SLAM pipeline for stereo, monocular and RGB-D cameras. We will briefly derive direct image alignment on SE(3) and Sim(3) from the general Gauss-Newton formulation, and discuss how it is used in practice in a real-time system. We then give an example how pixel-wise depth can be estimated by bayesian fusion of many small-baseline stereo searches, using the LSD-SLAM pipeline as example. Finally, we will discuss how this pipeline differs from the keypoint-based approach, and what the advantages and disadvantages are.
Download slides [pdf]