Patent ID: 12190629

Specific embodiments in this invention have been shown by way of example in the foregoing drawings and are hereinafter described in detail. The figures and written description are not intended to limit the scope of the inventive concepts in any manner. Rather, they are provided to illustrate the inventive concepts to a person skilled in the art by reference to particular embodiments.

DETAILED DESCRIPTION

Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. The following description refers to the accompanying drawings in which the same numbers in different drawings represent the same or similar elements unless otherwise represented. The implementations set forth in the following description of exemplary embodiments do not represent all implementations consistent with the invention. Instead, they are merely examples of apparatuses and methods consistent with aspects related to the invention as recited in the appended claims.

FIG.1depicts a schematic hardware configuration of a minutiae extraction system100in accordance with a particular example. The system100may include a processor101connected via a bus102to a random access memory (RAM)103, a read-only memory (ROM)104, and/or a non-volatile memory (NVM)105. The system100further includes a connector106connected to the processor and by which the system100may be connected to a communication module. Such a communication module may be used to connect the system100to various forms of wireless networks, e.g., wide-area networks, WiFi networks, or mobile telephony networks. Alternatively, the system100may connect to networks via wired network connections such as Ethernet. The system100may also include input/output means107providing interfaces to the user of the device, such as one or more screens, loudspeakers, a mouse, tactile surfaces, a keyboard etc.

The system100further comprises a memory108storing the method of the present invention. The system100may input latent friction ridge images to the processor101through the bus102. The latent friction ridge images may be generated by program applications implemented within the system100itself or received by the system100from external devices via a wired or wireless telecommunication network.

The system100may receive minutiae extraction results output by the processor101from the latent friction ridge images when the processor101executes the method stored in the memory108.

The system100may send the minutiae extraction results via a wired or wireless telecommunication network to devices or entities which need the minutiae extraction results to do further analysis.

FIG.2illustrates a schematic process flow of a method200for extracting minutiae from a latent friction ridge image. The method may be implemented by the system100ofFIG.1.

The method mainly comprises two phases. The first is a training phase, and the second is a minutiae extraction (or prediction) phase.

During the training phase, the system may be provisioned with ground truth latent friction ridge images as training samples. In the current example, the training samples may be latent fingerprint images.

The training images may be stored in a database which is accessible by the system via a communications network or may be stored in a memory contained by the system.

The training samples may have at least marked minutiae locations and directions. In other words, each training image is associated with at least a set of minutiae data comprising coordinates x, y and directions d of the marked minutiae.

As mentioned above, the training data of the invention has been expanded by rotating the training images. That is, training samples comprise images of the same fingerprint but rotated with different angles.

In the current example, the same latent fingerprint image may be rotated by every 15° (i.e., by 15°, 30°, 45°, 60°, 75°, . . . , etc.) in order to augment the amount of training data for the system to improve the accuracy of the training result. The rotation angle may also be set flexibly. It can be any angle between 0° and 360°.

The system uses the expanded training data to train (201) a minutiae extraction (or identification) model through a deep-learning network utilized by the present invention.

The deep-learning network comprises a base network such as VGG16 or Resnet, which is configured to generate a minutiae feature map from an input latent friction ridge image.

The anchor window are used to divide the input image into blocks for feature identification. The window size may be 32×32 DPI for a 500 DPI latent fingerprint image in the current example. However, this window size may be adaptively changed (e.g., 16×16, 64×64, etc.) according to, for example, the size of the latent friction ridge image, the actual training requirement, etc.

The deep-learning network further comprises a Region Proposal Network (RPN) which takes the minutiae feature map generated by the base network and predicts (or proposes) whether there are minutiae and/or where they are in the input image block by block.

In other words, the RPN may identify the background (i.e., region with no minutiae) and foreground (i.e., region with minutiae) of the input latent image. The RPN may also calculate a preliminary result of locations (e.g., x, y coordinates) and directions (e.g., d) for the identified minutiae.

The deep-learning network further comprises a Region-Based Convolutional Neural Network (RCNN) which is adapted to receive the preliminary result calculated by the RPN and verifies it. The RCNN is responsible to check again the feature map based on the regions (e.g., foreground and background) proposed by the RPN, and decide again whether the region is a foreground or background and if it is a foreground, then where are the minutiae, with their orientations as well. In other words, the RCNN is adapted to fine-tune the minutiae locations and directions proposed by the RPN.

The final result output by the RNCC is compared with the marked minutiae data and feed back to the network to correct and adjust the minutiae extraction model.

As such, the model is trained through the deep-learning network end to end by minimizing the joint losses of the RPN and RCNN modules.

After the training phase, the extraction (or prediction) phase may be started.

During the extraction phase, a latent friction ridge image (e.g., fingerprint) for which the minutiae are to be extracted may be input (202) to the trained network (i.e., the trained minutiae extraction model).

Similar to the training phase, in the extraction phase, the anchor window used for the training is also applied to the input image so that the network may extract the minutiae feature block by block.

The input image is first received by the base network to generate a feature map.

The RPN may calculate a preliminary minutiae data set from the generated feature map. The data set may comprise locations (e.g., xy coordinates) and directions (e.g., d degrees) of the minutiae identified by the RPN from the feature map.

The RCNN may then re-calculate a final minutiae data set based on the regions proposed by the RPN and output the data set as a final extraction result.

As previously mentioned, when there are multiple minutiae extracted by the RCNN at substantially the same location, the system may decide to remove (203) one or more minutiae by majority voting the minutiae according to their directions.

If the majority of the close/overlapped minutiae have substantially the same direction, the minority of the minutiae are to be removed from the final result even if its confidence score is higher than the others.

The system may finally keep only one of the majority minutia with a higher confidence score.

Alternatively or additionally, the system may light balance (204) the input latent friction ridge image to even out the light on the image without causing a blocky issue. The system may calculate (205) again the minutiae data set for the input image with light balancing and finally use a modified Non-Max Suppression algorithm to fuse (206) the minutiae extracted from both calculated data sets to obtain a final minutiae data set.

The descriptions of the various embodiments of the present invention have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.