[eng] For a mobile robot to execute useful missions it has to be endowed with navigation ability. To navigate successfully, information about the environment and the robot position is needed. This article presents a robust system for detecting, identifying, analyzing, and comparing environmental landmarks obtained from standard range sensors and using them to generate and incrementally improve a hybrid topological-metric map of the environment. This map is used in turn to correct the estimation of the robot position. The control architecture that integrates this mapping and localization system is described, as well as the experimental results obtained on both a simulated robot and a real one.