1. A method for recognizing one or more faces in a digital image, the method comprising: receiving a digital image at at least one computer device; executing, at the at least one computer device, a face detection routine on the digital image involving: generating one or more face coordinates corresponding to one or more candidate regions for one or more faces; generating eye coordinates based on the face coordinates; executing, at the at least one computer device, a face recognition routine involving, for each of the one or more candidate regions for the one or more faces, generating a face signature using one or more projection images defined by the face coordinates and the eye coordinates; and comparing the face signature with one or more known face signatures to determine a distance value for each comparison, computing an aggregation of the distance values, determining a best match between the face signature and the known face signatures using the aggregated distance values and comparing the best match to a similarity threshold, the best match determining an identity corresponding to at least one of the one or more faces; and making available results of the face recognition routine wherein the face signature is generated by: translating, rotating, and scaling the candidate region to a normalized image having a predetermined size wherein the eye coordinates are linked to predetermined locations; masking the normalized image to define a masked image wherein the face is isolated; applying a histogram equalization to a greyscale depiction of the masked image; and generating the face signature using principal component analysis of the one or more projection images.