Acronyms and Abbreviations
Notation
Foreword
Introduction
A Little History
Sensors, Measurements, and Problem Definition
How This Book Is Organized
Relationship to Other Books
Part I Estimation Machinery
Primer on Probability Theory
Probability Density Functions
Definitions
Bayes' Rule and Inference
Moments
Sample Mean and Covariance
Statistically Independent, Uncorrelated
Normalized Product
Shannon and Mutual Information
Cramér-Rao Lower Bound and Fisher Information
Gaussian Probability Density Functions
Definitions
Isserlis' Theorem
Joint Gaussian PDFs, Their Factors, and Inference
Statistically Independent, Uncorrelated
Linear Change of Variables
Normalized Product of Gaussians
Sherman-Morrison-Woodbury Identity
Passing a Gaussian through a Nonlinearity
Shannon Information of a Gaussian
Mutual Information of a Joint Gaussian PDF
Cramér-Rao Lower Bound Applied to Gaussian PDFs
Gaussian Processes
Summary
Exercises
Linear-Gaussian Estimation
Batch Discrete-Time Estimation
Problem Setup
Maximum A Posteriori
Bayesian Inference
Existence, Uniqueness, and Observability
MAP Covariance
Recursive Discrete-Time Smoothing
Exploiting Sparsity in the Batch Solution
Cholesky Smoother
Rauch-Tung-Striebel Smoother
Recursive Discrete-Time Filtering
Factoring the Batch Solution
Kalman Filter via MAP
Kalman Filter via Bayesian Inference
Kalman Filter via Gain Optimization
Kalman Filter Discussion
Error Dynamics
Existence, Uniqueness, and Observability
Batch Continuous-Time Estimation
Gaussian Process Regression
A Class of Exactly Sparse Gaussian Process Priors
Linear Time-Invariant Case
Relationship to Batch Discrete-Time Estimation
Summary
Exercises
Nonlinear Non-Gaussian Estimation
Introduction
Full Bayesian Estimation
Maximum a Posteriori Estimation
Recursive Discrete-Time Estimation
Problem Setup
Bayes Filter
Extended Kalman Filter
Generalized Gaussian Filter
Iterated Extended Kalman Filter
IEKF Is a MAP Estimator
Alternatives for Passing PDFs through Nonlinearities
Particle Filter
Sigmapoint Kalman Filter
Iterated Sigmapoint Kalman Filter
ISPKF Seeks the Posterior Mean
Taxonomy of Filters
Batch Discrete-Time Estimation
Maximum A Posteriori
Bayesian Inference
Maximum Likelihood
Discussion
Batch Continuous-Time Estimation
Motion Model
Observation Model
Bayesian Inference
Algorithm Summary
Summary
Exercises
Biases, Correspondences, and Outliers
Handling Input/Measurement Biases
Bias Effects on the Kalman Filter
Unknown Input Bias
Unknown Measurement Bias
Data Association
External Data Association
Internal Data Association
Handling Outliers
RANSAC
M-Estimation
Covariance Estimation
Summary
Exercises
Part II Three-Dimensional Machinery
Primer on Three-Dimensional Geometry
Vectors and Reference Frames
Reference Frames
Dot Product
Cross Product
Rotations
Rotation Matrices
Principal Rotations
Alternate Rotation Representations
Rotational Kinematics
Perturbing Rotations
Poses
Transformation Matrices
Robotics Conventions
Frenet-Serret Frame
Sensor Models
Perspective Camera
Stereo Camera
Range-Azimuth-Elevation
Inertial Measurement Unit
Summary
Exercises
Matrix Lie Groups
Geometry
Special Orthogonal and Special Euclidean Groups
Lie Algebras
Exponential Map
Adjoints
Baker-Campbell-Hausdorff
Distance, Volume, Integration
Interpolation
Homogeneous Points
Calculus and Optimization
Identities
Kinematics
Rotations
Poses
Linearized Rotations
Linearized Poses
Probability and Statistics
Gaussian Random Variables and PDFs
Uncertainty on a Rotated Vector
Compounding Poses
Fusing Poses
Propagating Uncertainty through a Nonlinear Camera Model
Summary
Exercises
Part III Applications
Pose Estimation Problems
Point-Cloud Alignment
Problem Setup
Unit-Length Quaternion Solution
Rotation Matrix Solution
Transformation Matrix Solution
Point-Cloud Tracking
Problem Setup
Motion Priors
Measurement Model
EKF Solution
Batch Maximum a Posteriori Solution
Pose-Graph Relaxation
Problem Setup
Batch Maximum Likelihood Solution
Initialization
Exploiting Sparsity
Chain Example
Pose-and-Point Estimation Problems
Bundle Adjustment
Problem Setup
Measurement Model
Maximum Likelihood Solution
Exploiting Sparsity
Interpolation Example
Simultaneous Localization and Mapping
Problem Setup
Batch Maximum a Posteriori Solution
Exploiting Sparsity
Example
Continuous-Time Estimation
Motion Prior
General
Simplification
Simultaneous Trajectory Estimation and Mapping
Problem Setup
Measurement Model
Batch Maximum a Posteriori Solution
Exploiting Sparsity
Interpolation
Postscript
References
Index