1. A computer-implemented method for feature matching, the method comprising: generating a tree model comprising leaf nodes using feature descriptor values from a set of source images; given a set of features from a first image, each feature comprising a feature descriptor value, a location in the first image, and a feature identifier, registering into the tree model the set of features from the first image such that at least some of the leaf nodes of the tree model are associated with one or more feature identifiers of features from the first image; and for each query feature from a set of features from a second image, each feature from the second image comprising a feature descriptor value and a location in the second image: querying the tree model to identify a leaf node that most closely corresponds to the query feature's corresponding feature descriptor value; and selecting a best match feature in the first image from the one or more feature identifiers that are registered with the identified leaf node.