Tracking
Just like localization, tracking can refer to location prediction of the agent itself or the objects that the agents perceives in its environment. For tracking we are given the initial pose that is approximately known. It is common to initialize the belief with a narrow Gaussian distribution around . Lets look at a similar example to the localization problem:
EKF localization with known correspondences
The hallway examples use a one-dimensional state. A ground robot such as the TurtleBot has the pose , and the extended Kalman filter tracks a Gaussian belief over it. Like the tracking example above, EKF localization needs a good initial guess: the belief is a single Gaussian, so it cannot represent the multimodal beliefs of global localization. The map is a set of point landmarks with known positions . At each step the robot measures the range and the bearing to every landmark it can see, . Known correspondences means that it also knows which landmark produced each measurement: the correspondence variable names the landmark. A robot gets this for free when every landmark carries a unique code, such as a fiducial marker whose ID the camera reads.Motion model
The action is the pair of wheel speeds . As in the EKF section, they set the forward speed and the turning rate . Holding and constant for moves the robot along an arc of radius : Its Jacobian with respect to the state is evaluated at . The noise comes from the wheels. Each wheel turns at its commanded speed plus Gaussian noise, with covariance in wheel-speed space. The Jacobian maps that noise into the state, so the motion noise covariance is .Measurement model
For landmark , write and . The predicted measurement and its Jacobian are evaluated at the predicted mean , with measurement noise covariance .The algorithm
One step takes the previous belief, the action, the measurements and their correspondences, and the map: The loop folds in one landmark at a time. Each update starts from the belief left by the previous one, which is exact for a linear-Gaussian model when the measurement noises are independent. The bearing residual in line 6 is wrapped to , since an angle error of is really . This algorithm follows the EKF localization algorithm in Chapter 7 of Probabilistic Robotics (Thrun, Burgard and Fox), with for the state, for the action, and wheel speeds for the action.One step with one landmark
Start with a single step, the setting of the EKF section. The robot drives straight down the page, at heading , at 0.25 m/s for 4 s. Its belief knows the starting position to 2 cm but the heading only to , and the motion noise is left out to isolate the heading. A single landmark, m, stands straight ahead. The robot’s true heading during the drive was off the nominal one, so it really stopped at about m. From there its sensor measures the range and bearing to , with noise cm and . The code runs one step ofekf_localization. For comparison it also computes the exact posterior: it pushes samples of the starting pose through , weights each one by the likelihood of the measurement, and resamples.
Driving among landmarks
Over many steps, the code below drives a simulated TurtleBot3 Waffle around a circle of radius 1.5 m at 0.2 m/s for 70 s, about one and a half laps. Three landmarks stand outside the circle. The range-bearing sensor sees a landmark only within 1.5 m, so on parts of the circle no landmark is visible. Each wheel of the simulated robot turns at its commanded speed plus noise, with a standard deviation of 5% of the speed plus 0.1 rad/s. The filter knows this noise model, which gives it . The sensor noise is the same as in the single step. The filter starts from the true pose with a small uncertainty. For comparison, the same filter also runs without any measurements, which is dead reckoning from the wheel speeds alone.References
- Hofmann, M., Wolf, D., Rigoll, G. (2013). Hypergraphs for Joint Multi-view Reconstruction and Multi-object Tracking. 2013 IEEE Conference on Computer Vision and Pattern Recognition.
- Khan, Z., Balch, T., Dellaert, F. (2004). A Rao-Blackwellized particle filter for EigenTracking. Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2004. CVPR 2004.
- Li, X., Ylioinas, J., Kannala, J. (2018). Full-Frame Scene Coordinate Regression for Image-Based Localization. arXiv [cs.CV].
- Peršić, J., Petrović, L., Marković, I., Petrović, I. (2019). Spatio-Temporal Multisensor Calibration Based on Gaussian Processes Moving Object Tracking. arXiv [cs.RO].
- Sabinasz, D. (2017). Robot Localization II: The Histogram Filter.
Found an error on this page? Report an issue.

