1. A method for identifying similarities in different images, the method comprising: converting image features of the different images to clusters; sorting the clusters based on one or more attributes of the clusters; generating, for each of the different images, a plurality of three-point sets from a selected portion of the sorted clusters, each three-point set defining a triangle; and identifying matching triangles from the different images, wherein corresponding clusters of the matching triangles establish whether there are similarities between the different images.