Map Culling

This was a term that I found in ORB-SLAM.

Map culling in ORB-SLAM2 refers to the process of removing redundant or unnecessary map points to optimize the performance and accuracy of the SLAM system.

This involves deleting points that are not observed frequently or are far from the camera’s field of view, thereby maintaining an efficient and reliable map representation.

From ORB-SLAM1 Paper

Map points, in order to be retained in the map, must pass a restrictive test during the first three keyframes after creation, that ensures that they are trackable and not wrongly triangulated, i.e due to spurious data association. A point must fulfill these two conditions:

  1. The tracking must find the point in more than the 25% of the frames in which it is predicted to be visible.
  2. If more than one keyframe has passed from map point creation, it must be observed from at least three keyframes.

Once a map point have passed this test, it can only be removed if at any time it is observed from less than three keyframes. This can happen when keyframes are culled and when local bundle adjustment discards outlier observations. This policy makes our map contain very few outliers.