1. A computer-implemented method for determining whether a first image contains at least a portion of any of a plurality of template images, the method, implemented by hardware in combination with software, the method comprising: (A) determining a number of possible feature point matches between features points in said first image and feature points in each of said plurality of template images; (B) determining a set of candidate template images using the possible feature point matches determined in (A); and (C) dividing said first image into multiple image regions, said dividing being based on possible feature point matches between the set of candidate template images and the test image, wherein said dividing is dynamic and based on where peaks exist in said matches for each of said plurality of template images; and (D) for a particular image region of said multiple image regions, attempting to match feature points in said particular image region with second feature points associated with at least some of said candidate template images to determine whether said particular image region of said first image contains at least a portion of any of said template images, wherein said first image is considered to contain at least a portion of a template image when said particular image region of said first image contains at least a portion of said template image.