1. A system comprising: at least one processor; and memory comprising instructions that, when executed by the at least one processor, cause the system to perform operations comprising: generating, for each of a plurality of reference visual patterns, at least one representation of the reference visual pattern based on a plurality of local feature types; generating at least one image classifier based on the at least one representation of each of the reference visual patterns; classifying each of the reference visual patterns into at least one of a plurality of visual pattern classifications using the at least one image classifier; and assigning a reference visual pattern of the plurality of reference visual patterns into at least two visual pattern classifications of the plurality of visual pattern classifications, where the assigned reference visual pattern is classified into any of the at least two visual pattern classifications of the plurality of visual pattern classifications the operations further comprising: classifying a plurality of candidate visual patterns based on the at least one image classifier; and wherein two or more image classifiers classify the plurality of candidate visual patterns into classes defined by a first set of parent nodes and at least a second set of child nodes; and wherein the child nodes include at least one auxiliary node for previously misclassified images or images properly concurrently classified in two or more nodes; and wherein the auxiliary node is for misclassified images, and the auxiliary node includes images drawn from mutually exclusive sibling nodes.