1. A method comprising: receiving a set of three-dimensional data from a sensor; extracting a plurality of feature geometries from the set of three-dimensional data; ranking the extracted feature geometries to provide a ranking value for each of the plurality of feature geometries; selecting a fingerprint of the extracted feature geometries based at least in part on the ranking value; and determining a location based on the selected fingerprint.