1. A computer implemented method for annotating digital files, the method comprising: generating a set of classifiers from a plurality of first features of a plurality of first digital files, each of the plurality of first digital files having one or more associated annotations; sorting a plurality of second features extracted from at least one of a plurality of second digital files according to the plurality of classifiers; determining a distance vector between the second features and respective first features for the corresponding ones of the classifiers and ranking the determined distances; selecting a subset of matched files based on the ranking, the subset of matched files corresponding to respective one or more associated annotations; and associating one or more annotations from the annotations respectively associated with the subset matched files to the at least one of the plurality of second digital files using the corresponding ones of the classifiers.