1. A method for performing fingerprint recognition, the method comprising: capturing, by a computing device having a camera, access to a storage medium including instructions stored on the storage medium, and a processor configured by executing the instructions, images depicting a plurality of fingers of a subject; detecting, with the processor using a finger detection algorithm, the plurality of fingers depicted in one or more of the images by applying a plurality of finger detection algorithms, wherein an order in which the plurality of finger detection algorithms is applied is determined by the processor based on one or more of: a measured environmental condition, a hardware capability of the mobile device, and one or more expected characteristics of the subject; identifying, with the processor from one or more of the images according to a segmentation algorithm, a respective fingertip segment for each finger among the plurality of fingers; extracting, with the processor for each finger, discriminatory features from the respective fingertip segment; generating a biometric identifier including the extracted discriminatory features; and storing the generated biometric identifier in the storage medium by the processor.