1. An image management method for storing, indexing, searching and/or retrieving image data comprising the steps of: preprocessing, by at least one processor, content of an image collection to identify stable and repeatable keypoints for each image in the collection; computing, by at least one processor, fingerprint information from local groups of the keypoints; storing, by at least one processor, the resulting fingerprint information in a compact fingerprint database, wherein the computing of the fingerprint information is based on combinations of a sub-group of strongest keypoints in an image, called anchor keypoints, in addition to a number of non-anchor local keypoints and wherein strongest keypoints in an image means keypoints more likely to be found in an image as compared to non-anchor keypoints; generating, by at least one processor, for each input fingerprint in the compact fingerprint database, a sequence of candidate fingerprint combinations; storing, by at least one processor, the sequence of candidate fingerprint combinations for each fingerprint input into a fingerprint database in a fan tree and/or hashtable, and a corresponding fingerprint data structure; performing, by at least one processor, a real-time image query by identifying keypoints and computing fingerprints from the query image and matching the query fingerprints to the existing fan tree fingerprint data to determine a matching target image or set of target images within the collection; retrieving, by at least one processor, at least one target image based on the determining step; and at least one of displaying, printing, storing or transmitting the retrieved at least one target picture image.