1. A computer-readable storage device storing computer-executable instructions for controlling a computing device to identify images of a collection that are similar to a target image, by a method comprising: for each of a plurality of features, providing a cluster index data structure for the collection of images, the cluster index data structure defining clusters of images that are feature similar based on the values of that feature, such that for each feature, the images in the collection are clustered differently based on the values for that feature; for each of the plurality of features, identifying, from the cluster index data structure for that feature, candidate images that are feature similar to the target image based on that feature, the cluster index data structure defining, for each the plurality of features of images, clusters of images that are feature similar based on that feature; and for each of the candidate images, indicating similarity of that candidate image to the target image based on the features for which that candidate image is feature similar to the target image.