- Landmark maps: assign each detection to a landmark. This is data association, and it applies to any sensor that detects landmarks.
- Point maps, as in lidar scan matching: pair points between two scans.
- Image feature maps: match keypoints by appearance.
Landmark data association
Maximum likelihood correspondence
The robot has a predicted pose belief and a map of landmarks . For a measurement and landmark , the predicted measurement is , as on the EKF localization page. If came from landmark , the innovation is approximately Gaussian with zero mean and covariance The first term is the pose uncertainty mapped into measurement space and is the sensor noise. The maximum likelihood correspondence is the landmark under which the measurement is most likely: is the Mahalanobis distance. Taking of the likelihood and dropping the constant gives the equivalent rule The determinant term matters because differs from landmark to landmark: the Jacobian depends on where the landmark is. A landmark with a large gets a small Mahalanobis distance for almost any measurement, and charges it for that spread. Thrun, Burgard and Fox (2005, Section 7.6.2) derive the likelihood by integrating the measurement model over the predicted belief. Each measurement is decided separately, which assumes the measurements are conditionally independent given the pose.Gating
The minimum always names a landmark, also for a measurement of something that is not in the map. A gate rejects these. For a correct correspondence, is chi-squared distributed with two degrees of freedom (range and bearing). A measurement is accepted for landmark only if is below the 99th percentile of , which is 9.21. A measurement that passes no gate is an outlier or a new landmark. EKF SLAM starts a new landmark when the distance to every landmark in the map exceeds a threshold (Thrun, Burgard and Fox, 2005, Section 10.3.1). Spurious measurements would then create false landmarks, so practical systems keep new landmarks on a provisional list until they have been seen several times (Section 10.3.3). The code defines a map of six landmarks and the range-bearing model, and computes for four measurements.Joint compatibility
The measurements share one pose error. A heading error rotates all of them by the same angle, so a set of assignments is plausible only if one pose explains all of it. The joint compatibility test checks this. For a hypothesis that pairs measurements with landmarks , stack the innovations and Jacobians: The off-diagonal blocks of couple the measurements through the shared pose. The hypothesis is jointly compatible if is below the threshold for degrees of freedom. Neira and Tardós (2001) find the largest jointly compatible hypothesis with joint compatibility branch and bound (JCBB). With four measurements, the code enumerates all hypotheses instead. A measurement may stay unassigned. The code keeps the jointly compatible hypothesis with the most pairings and breaks ties by the smaller joint distance.Scan registration with ICP
A lidar map can also be a set of raw points. The motion between two scans is then estimated by aligning them, which again needs correspondences: which point in one scan is the same surface point as a given point in the other. The scans do not provide this, and from two poses the beams hit the walls at different points anyway. The iterative closest point algorithm (ICP) of Besl and McKay (1992) repeats four steps:- Transform the new scan with the current motion estimate.
- Pair each point with its nearest point in the reference scan.
- Compute the rotation and translation that minimize the sum of squared distances between the pairs. For point pairs, the solution comes in closed form from the singular value decomposition of their cross-covariance matrix.
- Update the estimate. Stop when it no longer changes.
Lidar features and loop closure
LOAM (Zhang and Singh, 2014) does not pair every point. It selects points on sharp edges and points on flat surfaces, using the curvature of the scan line around each point, and matches edge points to edge lines and surface points to planar patches in the map. The features are defined by local geometry. Loop closure is a correspondence at the scale of a place. A robot that returns to a mapped area has to recognize it so that the loop in the map can be closed. Scan Context (Kim and Kim, 2018) summarizes a lidar scan in a descriptor that is compared with stored scans. A false loop closure merges two different places and can distort the whole map. Landmark data association also applies to lidar. The Victoria Park dataset of Guivant and Nebot (2001), recorded from a vehicle in a park in Sydney, uses tree trunks detected in laser scans as landmarks. It is widely used to compare landmark-based SLAM algorithms.Image feature matching
A detector finds keypoints, such as corners, that are likely to be detected again from another viewpoint. A descriptor encodes the image patch around each keypoint as a vector. Keypoints in two images are matched by descriptor distance, and the matches are checked with a geometric model, for example with RANSAC as in the homographies section. The descriptor has the role of the signature in the landmark measurement of Probabilistic Robotics. Distinct signatures make landmarks easier to tell apart. Torralba, Isola and Freeman (2024, Section 44.3.3) cover hand-designed detectors and descriptors such as SIFT and ORB, and learned ones such as SuperPoint with the SuperGlue matcher. The stereo vision section uses matching for depth.References
- Besl, P. J., and McKay, N. D. (1992). A method for registration of 3-D shapes. IEEE Transactions on Pattern Analysis and Machine Intelligence, 14(2), 239-256.
- Guivant, J. E., and Nebot, E. M. (2001). Optimization of the simultaneous localization and map-building algorithm for real-time implementation. IEEE Transactions on Robotics and Automation, 17(3), 242-257.
- Kim, G., and Kim, A. (2018). Scan Context: Egocentric spatial descriptor for place recognition within 3D point cloud map. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 4802-4809.
- Neira, J., and Tardós, J. D. (2001). Data association in stochastic mapping using the joint compatibility test. IEEE Transactions on Robotics and Automation, 17(6), 890-897.
- Thrun, S., Burgard, W., and Fox, D. (2005). Probabilistic Robotics. MIT Press.
- Torralba, A., Isola, P., and Freeman, W. T. (2024). Foundations of Computer Vision. MIT Press.
- Zhang, J., and Singh, S. (2014). LOAM: Lidar odometry and mapping in real-time. Robotics: Science and Systems.
Found an error on this page? Report an issue.

