A method and system for contactless fingerprint acquisition
Patent Information
- Application Number
- ZA202509179
- Authority / Receiving Office
- ZA · ZA
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2023-03-30
- Filing Date
- 2025-10-30
- Publication Date
- 2026-08-26
- Estimated Expiration
- 2044-04-02
AI Technical Summary
Contact-based fingerprint acquisition methods are limited by pressure distortion, hygiene concerns, and high costs, and existing contactless technologies do not effectively utilize everyday imaging devices for reliable fingerprint processing.
A processor-implemented method for contactless fingerprint acquisition using camera-equipped devices, which involves skin-color based segmentation, illumination enhancement, contrast adjustment, and re-scaling to produce a scan-quality image, incorporating techniques like Butterworth, Gaussian, and Tophat filters, along with quality scoring and orientation processing to align ridges.
Enables reliable, cost-effective, and hygienic contactless fingerprint acquisition using everyday imaging devices, producing high-quality images that approximate conventional scans, suitable for secure authentication and database matching.
Abstract
Description
[0001] A METHOD AND SYSTEM FOR CONTACTLESS FINGERPRINT ACQUISITION
[0002] FIELD OF INVENTION
[0003] THIS INVENTION relates to a method and system for contactless fingerprint acquisition, particularly from a photographic image of a finger.
[0004] BACKGROUND OF INVENTION
[0005] Contact-based fingerprints typically requires a user to contact a suitable fingerprint scanner physically, for example, by placing their finger on a surface of a conventional fingerprint scanner, such as a capacitive scanner, which captures the fingerprint of the user in a digital format. Instead, a user may physically contact an ink-pad and transfer their finger with ink thereon to a substate such as paper to obtain an ink-based fingerprint of the user (which may be scanned into a digital format in a conventional manner, if required).
[0006] Contactless fingerprints on the other hand, makes use of acquisition technology that does not require the finger to make physical contact with a surface of a scanner, ink, or the like. A fingerprint obtained in a contactless fashion may have a wide range of advantages over contact-based fingerprint acquisition methods, for example, contactless acquisition is free from pressure distortion. Moreover, since the finger does not come into contact with the scanner surface, it is free from hygiene concerns. There is no presence of latent (ghost) fingerprints left on the scanner and depending on the acquisition technology, contactless fingerprint acquisition methods may be less costly than contact-based alternatives. Contactless acquisition is also typically not affected by wet or dry fingers as the case in contact-based acquisition methods. Contactless acquisition technology typically processes images or photographs captured by web-cams, digital cameras and systems / hardware based on digital cameras, smartphones, and laser technology. The present disclosure focuses on digital camera-based systems such as smartphone cameras, web-cams and digital microscopes.
[0007] The Applicant is aware of prior disclosures seeking to achieve similar objectives but the Applicant has noted that the prior art disclosures do not necessarily account for diversity in its processing of images and adopts a different approach to contactless fingerprint acquisition than that contemplated in the present disclosure.
[0008] It follows that the present disclosure seeks to provide a contactless fingerprint acquisition methodology and system which may open up the possibility of using everyday imaging devices such as camera equipped smartphones as personal fingerprint sensors. These personal sensors may help alleviate customer privacy concerns and are an affordable solution to otherwise costly fingerprint acquisition systems.
[0009] SUMMARY OF INVENTION
[0010] According to one aspect of the invention, there is provided a processor-implemented method of processing an image of a fingerprint, wherein the method comprises: receiving an image containing at least one finger, having a fingerprint, therein, wherein the image is captured by a camera; applying a skin-colour based segmentation mask to the image to obtain a background-removed image or first processed image, wherein the segmentation is based on skin colour, wherein the background-removed image or first processed image contains the at least one finger isolated from its background; processing the background-removed image or first processed image to obtain an illumination-enhanced image or second processed image which is has enhanced illumination relative to the background-removed image; processing the illumination-enhanced image or second processed image to obtain a contrast-enhanced image or third processed image which has enhanced contrast relative to the illumination-enhanced image or second processed image; and re-scaling the contrast-enhanced image or third processed image to a predetermined resolution to obtain a scan scaled image, wherein the scan scaled image approximates a conventionally scanned fingerprint.
[0011] The method may comprise applying a skin colour / tone-based segmentation wherein experimentally determined thresholds are applied to different channels of the fingerprint image.
[0012] In this regard, if the background has orange, brown, yellow, and tan hues which correspond to experimentally determined threshold / s that would indicate that the background in the image resembles skin tone, the method may comprise: separating the received image into a HSV (Hue Saturation Value) colour space; isolating a bright channel associated with the separated image to obtain an isolated channel; blurring the isolated channel to obtain a blurred channel; equalising the blurred channel to obtain an equalised channel; and applying a binary segmentation to the equalised channel to generate the segmentation mask to apply to the image.
[0013] On the other hand, if the background has orange, brown, yellow, and tan hues which does not correspond to experimentally determined threshold / s that would indicate that the background in the image resembles skin tone, the method may comprise: separating the received image into a LAB (CIELAB) colour space; isolating a luminance channel associated with the separated image to obtain an isolated channel; applying a CLAHE (Contrast Limited Adaptive Histogram Equalization) equalisation to the isolated channel to obtain an equalised channel; and applying a binary segmentation to the equalised channel generate the segmentation mask to apply to the image.
[0014] Processing the background-removed image may comprise: applying a Butterworth filter to the background -removed image to obtain a Butterworth filtered image; thereafter applying a Gaussian filter to the Butterworth filtered image to obtain a Gaussian filtered image which has been smoothed to reduce noise introduced by the Butterworth filter; and applying a Tophat filter to the Gaussian filtered image to obtain the illumination-enhanced image.
[0015] The method may comprise applying a low-pass Butterworth filter to even out the illumination throughout the image, ensuring that the illumination is uniform. In other words, the method may comprise applying a lowpass Butterworth filter to the background-removed image in order to normalize the illumination of the image by supressing areas that have higher illumination. The Tophat filter turns the image to grayscale and applies a disk-shaped structuring element to remove any remaining uneven illumination.
[0016] Processing the illumination-enhanced image may comprise: applying a median filter to the illumination-enhanced image to reduce noise, for example, salt and pepper noise; and sharpening the median filtered illumination-enhanced image to obtain the contrast-enhanced image.
[0017] The method may comprise determining fingerprint image quality by: determining a quality score of the background-removed, the illumination- enhanced, contrast-enhanced image, wherein the image, or portions thereof; comparing the determined quality with a predetermined quality threshold score; and discarding the image, or portion / s thereof, which do not meet the predetermined quality threshold score.
[0018] The method may comprise: determining a reliability score from the contrast-enhanced image; determining an orientation certainty level (OCL) score; determining a NIST (National Institute of Standards and Technology of the United States of America) fingerprint image quality score (NFIQ); and combining determined reliability score, OCL score, and NFIQ score to obtain the quality score.
[0019] The predetermined quality threshold score may be determined experimentally.
[0020] The method may comprise re-scaling the contrast-enhanced image to an ISO (International Standards Organisation) compliant resolution, for example, 500dpi.
[0021] The method may comprise pre-scaling the contrast-enhanced image to a predetermined size. This ensures that the operations to be applied always work consistently regardless of type of capture device. This pre-scaling always maintains the aspect ratio.
[0022] The method may comprise: determining an orientation field associated with directionality of ridges in the processed image; dividing the processed image into a plurality of segments of a predetermined size, wherein for each segment, the method comprises: determining a dominant ridge flow in the segment using a corresponding segment in the determined orientation field; re-orienting the segments such that ridges in the segment are aligned at 90 degrees; discarding unreliable segments to obtain a processed image; determining a number of ridges per segment and obtaining an average ridge count for the segment; determining a re- scale factor, wherein the re- scale factor is determined by the determined average ridge count and a desired ridge count per segment, wherein the desired ridge count is obtained experimentally; and re-sizing the processed image by applying the re-scale factor thereto to obtain the scan scaled image.
[0023] The segments may be blocks of a predetermined size.
[0024] According to another aspect of the invention, there is provided a system comprising: at least one processor; and a memory device coupled to the at least one processor, wherein the memory device stores non-transitory processor-executable instructions which when executed on the at least one processor causes the at least one processor to perform any one of the methods, or method steps, as described above.
[0025] According to another aspect of the invention, there is provided a non-transitory processor-executable storage medium storing processor-executable instructions which when executed on at least one processor causes the at least one processor to implement at least some of the methods, or method steps, described herein. According to another aspect of the invention, there is provided a server comprising at least one processor and a database communicatively coupled to the at least one processor, wherein the at least one processor is configured to implement at least some of the methods, or method steps, described herein.
[0026] According to another aspect of the invention, there is provided an endpoint computing device comprising at least one processor and a memory device coupled to the at least one processor, wherein the memory device stores a software application having instructions which when executed by the at least one processor is configured to implement at least some of the methods, or method steps, described herein.
[0027] It will be appreciated that aspects described herein with respect to one example embodiment of the invention may be apply mutatis mutandis to another aspect of the invention described herein.
[0028] BRIEF DESCRIPTION OF THE DRAWINGS
[0029] Figure 1 shows a schematic block diagram of a system in accordance with an example embodiment of the invention;
[0030] Figure 2 shows a flow diagram of a method in accordance with an example embodiment of the invention;
[0031] Figure 3 shows another flow diagram of a method in accordance with an example embodiment of the invention;
[0032] Figure 4 shows another flow diagram of a method in accordance with an example embodiment of the invention;
[0033] Figure 5 shows a schematic block diagram of an endpoint computing device in accordance with an example embodiment of the invention; and Figure 6 shows a schematic block diagram of a server in accordance with an example embodiment of the invention.
[0034] DETAILED DESCRIPTION OF THE DRAWINGS
[0035] The following description of the invention is provided as an enabling teaching of the invention. Those skilled in the relevant art will recognise that many changes can be made to the embodiment described, while still attaining the beneficial results of the present invention. It will also be apparent that some of the desired benefits of the present invention can be attained by selecting some of the features of the present invention without utilising other features. Accordingly, those skilled in the art will recognise that modifications and adaptations to the present invention are possible, and may even be desirable in certain circumstances, and are a part of the present invention. Thus, the following description is provided as illustrative of the principles of the present invention and not a limitation thereof.
[0036] It will be appreciated that the phrase “for example,” “such as”, and variants thereof describe non-limiting embodiments of the presently disclosed subject matter. Reference in the specification to “one example embodiment”, “another example embodiment”, “some example embodiment”, or variants thereof means that a particular feature, structure or characteristic described in connection with the embodiment(s) is included in at least one embodiment of the presently disclosed subject matter. Thus, the use of the phrase “one example embodiment”, “another example embodiment”, “some example embodiment”, or variants thereof does not necessarily refer to the same embodiment(s).
[0037] Unless otherwise stated, some features of the subject matter described herein, which are, described in the context of separate embodiments for purposes of clarity, may also be provided in combination in a single embodiment. Similarly, various features of the subject matter disclosed herein which are described in the context of a single embodiment may also be provided separately or in any suitable sub -combination.
[0038] The headings used herein are for organizational purposes only and are not meant to be used to limit the scope of the description or the claims. For brevity, the word “may” is used in a permissive sense (i.e., meaning “having the potential to”), rather than the mandatory sense (i.e., meaning “must”).
[0039] The words “include,” “including,” and “includes” and the words “comprises”, “comprising”, and “comprises” mean including and comprising, but not limited to, respectively.
[0040] Referring to Figure 1 of the drawings a system in accordance with an example embodiment of the invention is generally indicated by reference numeral 10.
[0041] The example embodiment of the system 10 is described with reference to a Government computer system having databases which stores conventionally ink-pressed and scanned fingerprint images of a plurality of users, and optionally other data pertaining to the users such as their identification details, police records, outstanding fines, or the like. For example, the system 10 may form part of a computerised system of a Home Affairs or Police Department, or the like that allows certain organizations or authorised personnel to submit scanned fingerprint images for matching against the government database. One such organization would like to match fingerprint images taken by a mobile application via a mobile device camera (such as a smartphone camera), against the government database.
[0042] The fingerprint photograph obtained by the camera would fail to match against the government database if submitted as is. Thus, the system 10 provides a convenient manner to produce a contact-less scanned fingerprint image from the fingerprint photograph, and this can be submitted to the government for matching as will be described below with reference to the illustrated example embodiments.
[0043] It will be appreciated to those skilled in the art that the disclosure herein may be applied to other applications as well, for example, private sector applications such as online banking applications which require additional proof of life biometrics in the form of a fingerprint, in addition to conventional passwords, to access secure bank accounts. However, for ease of explanation, reference will be made to the system 10 being used in a public sector application.
[0044] The system 10, or components thereof, may be a standalone and communicatively coupled to a Government computer system. Instead, or in addition, the system 10, or components thereof may be part of a Government computer system. The system 10 includes an endpoint computing device in the form of a mobile computing device 12, such as a mobile phone or smartphone, a tablet computer, a personal digital assistant, a wearable computing device, a portable media player, a computing device of a vehicle, etc.
[0045] The mobile computing device 12 may be associated with an authorised person, such as a police officer, or the like that may make use of the system 10 described herein.
[0046] The mobile computing device 12 includes a processor 14, and a memory device 16 coupled thereto, wherein the memory device 16 stores non-transitory processor-executable instructions and data corresponding to one or more software applications (“apps”). For example, the mobile device 12 may include (i.e., stored in the memory device 16) a fingerprint software application 18 which directs the operations of the mobile computing device 12 as described herein. The processor 14 is configured to execute the processorexecutable instructions corresponding to the app 18 and as such reference to operations of the app 18, and components thereof, may be understood to mean operations by the processor 14 or mobile computing device 12 under instructions associated with the app 18, and components thereof. Thus, the processes or methods ascribed to the app 18 may be interchangeably ascribed to the processor 14, and the mobile computing device 12, as the case may be.
[0047] The mobile computing device 12 also includes a camera 20, for example, a conventional complementary metal oxide semiconductor (CMOS) camera, or the like to capture images, and a communications module in the form of a wireless transceiver 22 configured to communicate with one or more other devices such as servers over a communications network 24.
[0048] The communications network 24 may comprise one or more different types of communication networks. In this regard, the communication networks may be one or more of the Internet, a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), various types of telephone networks (e.g., Public Switch Telephone Networks (PSTN) with Digital Subscriber Line (DSL) technology) or mobile networks (e.g., Global System Mobile (GSM) communication, General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), and other suitable mobile telecommunication network technologies), or any combination thereof. It will be noted that communication within the network may achieved via suitable wireless or hard-wired communication technologies and / or standards (e.g., wireless fidelity (Wi-Fi®), 4G, long-term evolution (LTE™), WiMAX, 5G, and the like).
[0049] The system 10 may comprise a plurality of mobile computing devices 12 but only one is illustrated for ease of illustration and description.
[0050] The software application 18 may be, or may be part of, a governmental identification system. In other example embodiments, the software application 18 may be a bespoke application which handles the contactless fingerprint acquisition described herein. Whatever the case, it will be appreciated that the software application 18, as it operates on the mobile computing device 12, forms part of the system 10 as described herein. The software application 18 may have a suitable graphical user interface (GUI) with which a user may interact with the same. Moreover, it will be understood that the software application 18 may control at least some of the functionality of the mobile computing device 12 for the purposes of enabling the methodology described herein, for example, the software application 18 may be configured to access the camera 20 of the mobile computing device as will be described below.
[0051] The authorised user of the mobile device 12 may be a police officer and may download the software application or “app” 18 to their personal or state provided mobile computing device 12 from an online software application store. Though not described in detail, it will be appreciated that the authorised user may have to provide credentials, for example, via the app 18, in order to use the system 10 to acquire fingerprints in the manner contemplated herein.
[0052] The system 10 also includes a server, for example, a back-end server 30. Though one server 30 is illustrated, it will be appreciated that in some example embodiments, the system 10 may comprise multiple back-end servers 30, for example, distributed across different geographic locations but in communication with each other, and the mobile computing device 12, via the communications network 24, to support the software application 18 and the operation of the system 10 as described herein.
[0053] As alluded to above, the back-end server 30 may form part of a Government computer system, for example, a Police record system. However, in other example embodiments, the server 30 may be a standalone server which is in communication with a Government computer system to provide the functionality described herein, particularly to identify, or retrieve stored data associated with a fingerprint.
[0054] The back-end server 30 includes a processor 32 and a memory 34 that stores non- transitory processor-executable instructions to perform one or more of the operations described herein. The back-end server 30 also includes a transceiver 36 configured to communicate with one or more devices, such as the mobile computing device 12, or a third- party server, via the communication network 24. The server 30 may communicate with mobile computing devices 12 via a suitable transport layer security protocol. In this way, any communication between the device 12 and the server 30 may be inherently encrypted and secure but may still be prone for hacking as will be understood by those skilled in the art.
[0055] The sever 30 may comprise a secured database 46 storing user information, for example, identify information, or any other type of governmental documents or data associated with a plurality of users. In the system 10 as described herein, the secured database 46 may store criminal records associated with a plurality of people, or details such as traffic fines associated with a plurality of people.
[0056] The mobile computing device 12 and the server 30 operate in concert to permit the authorised user to gain access to the secured data stored in the secured database 46 either via the software application on the mobile device 12 based on the fingerprint acquired via the app 18 in a contactless fashion.
[0057] Depending on the context, reference to “fingerprints” herein may be actual fingerprints of a user, observable or visual images of a fingerprint which may be contained in a photograph, a fingerprint scan obtained by a conventional fingerprint scanner, or a conventional ink fingerprint of a user which corresponds to an actual fingerprint of a user, or actual fingerprints of the user.
[0058] The server 30 typically comprises a database 38 which stores a plurality of enrolled fingerprints associated with a plurality of peoples. The enrolled people are typically a humans that have had their fingerprints taken at a Government facility and scanned images of their fingerprints are stored in the database 38 as enrolled fingerprints.
[0059] The enrolled fingerprint stored in the database 38 may be associated with unique user identifiers associated with people. The unique user identifiers may be non-biometric identifiers and may be user selected or system generated usernames, a user’s name and / or surname, a user’s identification number or passport number, or any other deterministic additional user identifying data serving to identify the users, in addition to their fingerprints. The user identifiers may map the associated enrolled fingerprints to the associated data, if any, stored in the secured database 46.
[0060] For example, a criminal that has served jail time will have scans of their fingerprints, typically ink-based fingerprints, stored in the database 38 with an indication of their identity number and / or name which maps to their associated criminal record stored in the database 46.
[0061] In some example embodiments, the databases 46 and 38 may be the same database, or may be segmented into multiple databases communicatively coupled, for example, across the network 24, storing data as described herein. Moreover, in some example embodiments, the hashed templated may be stored in the database 38 without any user identifiers, for example, a probed hashed template is compared with a plurality of stored hashed templates to determine a match.
[0062] The memory device 34 of the server 30 typically stores a software application which has processor-executable instructions which directs the operations of the processor 32 in a manner described herein to at least compare two fingerprints to determine a match. The processor 32 is conveniently configured to receive a fingerprint from the device 12 for comparison with one or more fingerprints in the database 38 in order to determine a match, wherein upon a match, the processor 32 is configured to retrieve the associated criminal record of the matching fingerprint and / or outstanding fines, warrants, etc. and transmit details of same to the mobile computing device 12. In this way, a policeman does not require a mobile fingerprint scanner to obtain a fingerprint to look up the record of a suspect, they may conveniently make use of the app 18 on their mobile computing device 12 to do so.
[0063] Operation of the system 10 will be described in greater detail with reference to Figures 2 to 4 of the drawings which illustrate flow diagrams of methods in accordance with an example embodiment of the invention. Though the methods illustrated and described are done so in relation to the system 10, it will be appreciate that the methods may be applied, mutatis mutandis, to other systems not illustrated or discussed herein. Moreover, it will be understood that variations not illustrated or discussed may be evident to those skilled in the art based on the disclosure herein and should not detract from teachings of the invention disclosed herein. Referring to Figure 2 of the drawings where a flow diagram of a method in accordance with an example embodiment of the invention is generally indicated by reference numeral 100.
[0064] The method 100 typically commences when an authorised user of the system 10, for example, a government official or employee such as a police officer wants to look up the fingerprint of a person, for example, to get details stored in the database 46 by taking a photograph of the person’s finger.
[0065] For example, the police officer may be in the field and may want to look up or call the details of a potential suspect. This may be done in real time, or near real time, thus potentially avoiding the officer having to escort the suspect to a police station to obtain inbased fingerprints or scanned fingerprints to a) identify / verify the identity of the suspect; and b) pull up any pertinent criminal records associated with the suspect, for example, outstanding warrants for arrests, fines, or the like.
[0066] It will be appreciated that the police officer, or their mobile computing device 12, may be enrolled to use the app 18. In this regard, though not illustrated, it will be appreciate that the police officer may be prompted, via the app 18, to log in and / or provide credentials in order to be able to take photographs of a user’s finger for identification in the manner described herein.
[0067] The method 100, and associated methods, may be carried out by the mobile computing device 12, typically the app 18. In this regard, the system 10 as described herein, particularly, the app 18 may assist the police officer to achieve the aforementioned in a remote fashion on their mobile computing devices.
[0068] To this end, the authorised police officer typically takes a photograph of a person’s finger using the camera 20 of the mobile computing device 12 via the app 18, or selects a photograph of the person’s finger taken by the camera 20 and stored in the memory device 16.
[0069] The method 100 comprises receiving, at block 102 via the app 18, the photograph or image A containing at least one finger, having a fingerprint, therein, captured by the camera 20 of the mobile computing device 12. The method 100 comprises applying, at block 104, a segmentation mask to the image A to obtain a background-removed image based on whether or not a background of the received image resembles skin colour, wherein the background-removed image contains the at least one finger isolated from its background. The method step 104 of block 104 is expanded upon in Figure 3 of the drawings.
[0070] The method 100 comprises applying, at block 106, a Butterworth filter to the background-removed image; applying, at block 108, a Gaussian filter to the Butterworth filtered image; and applying, at block 110, a Tophat filter to obtain an illumination-enhanced image. The steps 106 to 110 may typically be the processing steps to process the background-removed image to obtain an illumination-enhanced image.
[0071] The method 100 may further comprise processing the illumination-enhanced image to obtain a contrast-enhanced image, which has enhanced contrast relative to the illumination- enhanced image, by applying, at block 112, a median filter to the illumination-enhanced image; and sharpening, at block 114, the median filtered image to obtain the contrast- enhanced image.
[0072] The method 100 then further comprises re-scaling, at block 116, the contrast- enhanced image to obtain a scan scale image B which approximates a fingerprint scanned with a conventional fingerprint scanner, and / or a fingerprint obtained via conventional inkbased fingerprinting techniques. The method step 116 is explained in greater detail with reference to Figure 4 of the drawings.
[0073] In a preferred example embodiment, not illustrated, the method 100 includes computing an image quality score of the images processed, and removing or discarding images of a low quality, i.e., having an unacceptable image quality score. In this regard, the method may comprise determining an image quality score of the contrast-enhanced image; comparing the image quality score for the image with a predetermined image quality score threshold, and discarding an image having a quality score below the predetermined quality score threshold. The threshold may be determined experimentally.
[0074] In one example embodiment, the method 100 may comprise processing the contrast- enhanced image to: i. compute a reliability score associated with the contrast-enhanced image; ii. compute an Orientation Certainty Level (OCL) score, iii. compute NIST Fingerprint Image Quality (NFIQ) score, and iv. combine the scores mentioned in i. to iii. to determine an image quality score.
[0075] The method 100 may thus comprise comparing the determined image quality score of a contrast-enhanced image with an experimentally determined quality score threshold; and removing or discarding the images falling outside / below the quality score threshold.
[0076] Also, not illustrated, it will be appreciated that the scan scale image B may be transmitted from the mobile computing device 12 to the server 30 for comparing with one or more fingerprints stored in the database 38. In some example embodiments, the app 18 may prompt the police officer for a user identifier associated with the suspect to aid in the identification and / or retrieval of the information stored in the database 46. Moreover, it will be noted that in other example embodiments, the scan scale image B may be transmitted to the server 30 for enrolling in the database 30, depending on the application.
[0077] The server 30 that receives the scan scale image B may process the scan scale image B to identify the suspect based on the fingerprints stored in the database 38 and may retrieve the associated information stored the database 46, if any. This retrieved information may be transmitted to the mobile computing device 12 of the police officer via the app 18.
[0078] In some example embodiments, the app 18 may further process the scan scale image B by extracting a fingerprint minutia template from the generated scan scale image B which is transmitted for identification and information retrieval as described above. Instead, as alluded to herein, the server 30 may perform these operations.
[0079] As alluded to above, the method 100 is discussed with reference to the same being carried out by the app 18 operating on the mobile computing device 12. However, it will be understood that in some example embodiments, the app 18 may be software application / s stored or provided in the memory device 34 of the server 30. In some example embodiments, the app 18 merely prompts or directs the police officer to capture the finger of the suspect in the foreground of the image A which it then receives and transmits to the server 30 for further processing in the manner described herein. Turning to Figure 3 of the drawings, the method step contained in block 104 is expanded upon by a flow diagram illustrating a method 120 for determining the segmentation mask to be applied in step 104.
[0080] In particular, after receiving the image of the finger, at block 102, the received image A is processed to determine, at block 122, if the background in the image resembles skin colour. To this end, it will be noted that the received photographic image typically has a finger in the foreground, wherein the app 18 may direct the police office to ensure that the suspects finger is within the field of view, particularly in the foreground of the field of view of the camera 20 before capturing the image.
[0081] If the background of the received image is determined to resemble skin colour, the method 120 comprises: separating the received image to a HSV colour space, at block 124; isolating the bright channel, at block 126; blurring the channel, at block 128; equalizing the channel, at block 130; and applying binary segmentation, at block 132, to generate or obtain the segmentation mask.
[0082] On the other hand, if, at block 122, it is determined that the background of the received image does not resemble skin colour, the method 120 comprises: separating the received image to a LAB colour space, at block 136; isolating the luminance channel, at block 138; applying a CLAHE equalization to luminance channel, at block 140; and applying binary segmentation, at block 142, to generate or obtain the segmentation mask.
[0083] Whatever route taken to obtain the segmentation mask, the method 120 comprises applying the determined or generated segmentation mask to the received image, at block 104. Reference is now made to Figure 4 of the drawings wherein another flow diagram of a method is generally indicated by reference numeral 150. The method 150 typically serves to expand on the step 116 of the method 100 of Figure 2 which essentially serves to re- scale the processed image to obtain the scan scale image B with 500dpi.
[0084] In this regard, the method 150 comprises converting, at block 152, the contrast- enhanced image to grayscale image. Though not illustrated, the method 150 may comprise cropping the grayscale image, if required.
[0085] The method 150 may comprise re-sizing, at block 154, the cropped image to predetermined dimensions of a particular width W and height H to obtain an image with dimensions WxH.
[0086] The method 150 may comprise processing, at block 156, the re-sized image to enhance the quality thereof. This may be done by performing local contrast enhancement and applying gaussian filter to obtain a processed image.
[0087] The method 150 may comprise determining or computing, at block 158, an orientation field, of the image, wherein the orientation field is indicative / representative of and / or associated with a directionality of ridges in the processed image.
[0088] The method 150 comprises dividing, at block 160, the processed image into a predetermined number of segments, for example, NxM sized blocks.
[0089] The method 150 comprises, for each block, at block 162: using a corresponding block for the orientation field, determine the dominant ridge flow, and reorient block so that the ridges are at 90 degrees.
[0090] The method 150 comprises discarding, at block 164, unreliable blocks.
[0091] The method 150 further comprises calculating, at block 166, a re-scale factor to be applied to the image once the unreliable blocks have been discarded. To this end, though not illustrated, the method 150 comprises determining an averaging the ridge count in the image, and computing the rescale factor as a ratio of the determined average ridge count and an experimentally determined desired ridge count. Differently stated, the rescaleFactor = AverageRidgeCount / DesiredRidgeCount. The method 150 then comprises resizing, at block 168, the image using the determined rescale factor to get a correctly scan scaled fingerprint image B as described herein.
[0092] Referring to Figure 5 of the drawings, an example of a mobile computing device 200 is shown. The mobile computing device 200 may be configured to perform one or more of the functions and methods described above with reference to Figures 1 to 4 of the drawings. In one example embodiment, the mobile device 200 may include or correspond to the mobile device 12 of Figure 1 as described herein.
[0093] The device 200 includes a computer-readable storage device 206, one or more processors 208 (e.g., a central processing unit (CPU), a digital signal processor (DSP), a graphics processing unit (GPU), etc.) and a memory device or memory 210. The storage device 206 may be implemented as read-only memory (ROM), random access memory (RAM), and / or persistent storage, such as a hard disk drive, a flash memory device, or other type of storage device. The memory 210 is non-transitory computer readable medium configured to store instructions 212 which are executable by the processor 108 to perform one or more of the functions or methods described above with reference to Figures 1 to 4. In this regard, the memory 210 may be configured to store the software application 18 of Figure 1. The computer-readable storage device 206 is not transitory or a signal.
[0094] The mobile device 200 also includes a location device 216 (e.g., a GPS transceiver) and one or more wireless transceivers 214 that enable the mobile device 202 to exchange signals with (e.g., receive signals from and / or send signals to) other devices. Each wireless transceiver 214 may include or be coupled to radio frequency (RF) circuitry 217, a controller 218, and / or an antenna 220. In illustrative examples, the wireless transceivers 214 include a third generation (3G) transceiver, a fourth generation (4G) transceiver, a Wi-Fi ® transceiver, a near field communication (NFC) transceiver, a BLUETOOTH® or BLUETOOTH® low energy (BLE) transceiver, or any combination thereof.
[0095] The mobile device 200 is configured to utilize one or more of the wireless transceivers 214 for direct peer-to-peer communication and communication via one or more networks 24, such as the internet.
[0096] In the example of Figure 5, the mobile device 200 includes or is coupled to input devices and output devices. For example, the mobile device 200 may include or may be coupled to a display device 232, a microphone 234, a speaker 236, and / or a user input device 238 (e.g., a touchscreen). It should be noted that, while illustrated as outside of the mobile device 200, one or more of the devices 232-238 may be integrated into a housing of the mobile device 200, such as in the case of a mobile phone or tablet computer.
[0097] Referring to Figure 6 of the drawings, an illustrative example of a server 300 is shown. The server 300 may be configured to perform one or more of the functions and methods described above with reference to Figures 1 to 4. In a particular implementation, the server 300 includes or corresponds to the back-end server 30 of Figure 1.
[0098] The server 300 includes a computer-readable storage device 306, one or more processors 308 (e.g., a central processing unit (CPU), a digital signal processor (DSP), a graphics processing unit (GPU), etc.) and a memory 310. The storage device 306 may be implemented as read-only memory (ROM), random access memory (RAM), and / or persistent storage, such as a hard disk drive, a flash memory device, or other type of storage device. The memory 310 is configured to store instructions 312 executable by the processor 308 to perform one or more of the functions or methods described above with reference to Figures 1 to 4. The computer-readable storage device 306 is not a signal.
[0099] The server 300 also includes one or more transceivers 314 that enable the server 300 to exchange signals with (e.g., receive signals from and / or send signals to) other devices. In some implementations, the transceivers 314 are wireless transceivers, and each transceiver 314 may include or be coupled to radio frequency (RF) circuitry, a controller, and / or an antenna. In illustrative examples, the transceivers 314 include a third generation (3G) transceiver, a fourth generation (4G) transceiver, a Wi-Fi® transceiver, a near field communication (NFC) transceiver, a BLUETOOTH® or BLUETOOTH® low energy (BLE) transceiver, a wired transceiver, or any combination thereof. In the example of Figure 6, the server 300 is configured to utilize one or more of the transceivers 314 for communication via one or more networks 24, such as the internet. To illustrate, the server 300 may communicate with mobile device 12 via the internet.
[0100] The server 300 optionally includes a location device 316 (e.g., a GPS transceiver). In the example of Figure 6, the server 300 also optionally includes or is coupled to input devices and output devices. For example, the server 300 may optionally include or may be coupled to a display device 332, a microphone 334, a speaker 336, a user input device 338 (e.g., a touchscreen), or a combination thereof.
[0101] The present Invention as disclosed herein provides a convenient means for contactless fingerprint acquisition which yields a fingerprint which approximates a conventional contact- based. As mentioned, one example embodiment of the implementation of the disclosure herein has been provided but the applications may be various. For example, large industries such as medical schemes wishing to introduce biometric use for their existing customers may benefit from this technology, as mass enrolments can be much more convenient for the clients; no queues and can be done at home by the users. Emergency services can be able to use this technology to identify unconscious patients at accident scenes without hygiene concerns and spread of disease.
[0102] Small developing companies can use this affordable solution to adopt the usage of biometrics without the cost. Delivery services can use this solution to ensure that delivery is made to the right person. As mentioned, online business and banking apps can also benefit from this technology as it will enable secure authentication to sites or apps.
[0103] Moreover, the disclosure may be used to acquire fingerprints from babies or young children.
Claims
CLAIMS1. A processor-implemented method of processing an image of a fingerprint, wherein the method comprises: receiving an image containing at least one finger, having a fingerprint, therein, wherein the image is captured by a camera; applying a skin-colour / skin-tone based segmentation mask to the image to obtain a background-removed image whereby the segmentation is based on skin colour, wherein the background-removed image contains the at least one finger isolated from its background; processing the background -removed image to obtain an illumination-enhanced image which is has enhanced illumination relative to the background-removed image; processing the illumination-enhanced image to obtain a contrast-enhanced image which has enhanced contrast relative to the illumination-enhanced image; and re-scaling the contrast-enhanced image to a predetermined resolution to obtain a scan scaled image, wherein the scan scaled image approximates a conventionally scanned fingerprint.
2. A processor-implemented method as claimed in claim 1, wherein the method comprises: determining a quality score of any of the background-removed image, the illumination-enhanced image, contrast-enhanced image, and the scan scaled image, wherein images, or portions thereof; comparing the determined quality with a predetermined quality threshold score; and discarding the image, or portion / s thereof, which do not meet the predetermined quality threshold score.
3. A processor-implemented method as claimed in claim 2, wherein the method comprises: determining a reliability score from the contrast-enhanced image; determining an orientation certainty level (OCL) score; determining a NIST (National Institute of Standards and Technology of the United States of America) fingerprint image quality score (NFIQ); and combining determined reliability score, OCL score, and NFIQ score to obtain the quality score.
4. A processor-implemented method as claimed in either claim 2 or claim 3, wherein the predetermined quality threshold score is determined experimentally.
5. A processor-implemented method as claimed in any one of the preceding claims, wherein the method comprises applying a skin colour / tone-based segmentation wherein experimentally determined thresholds are applied to different channels of the fingerprint image.
6. A processor- implemented method as claimed in claim 5, wherein if the background has orange, brown, yellow, and tan hues which correspond to experimentally determined threshold / s that would indicate that the background in the image resembles skin tone, the method comprises: separating the received image into a HSV (Hue Saturation Value) colour space; isolating a bright channel associated with the separated image to obtain an isolated channel; blurring the isolated channel to obtain a blurred channel; equalising the blurred channel to obtain an equalised channel; andapplying a binary segmentation to the equalised channel to generate the segmentation mask to apply to the image.
7. A processor-implemented method as claimed in claim 5, wherein if the background has orange, brown, yellow, and tan hues which does not correspond to experimentally determined threshold / s that would indicate that the background in the image resembles skin tone, the method comprises: separating the received image into a LAB (CIELAB) colour space; isolating a luminance channel associated with the separated image to obtain an isolated channel; applying a CLAHE (Contrast Limited Adaptive Histogram Equalization) equalisation to the isolated channel to obtain an equalised channel; and applying a binary segmentation to the equalised channel generate the segmentation mask to apply to the image.
8. A processor-implemented method as claimed in any one of the preceding claims, wherein processing the background-removed image comprises: applying a lowpass Butterworth filter to the background-removed image in order to normalize the illumination of the background-removed image by supressing areas that have higher illumination to obtain a Butterworth filtered image; applying a lowpass Gaussian filter to the Butterworth filtered image to smooth the image and reduce noise, obtaining a Gaussian filtered image; and applying a Tophat filter to the Gaussian filtered image to obtain a grayscale image and further supress bright areas of the image the illumination-enhanced image.
9. A processor-implemented method as claimed in any one of the preceding claims, wherein processing the illumination-enhanced image comprises:applying a median filter to the illumination-enhanced image to reduce salt and pepper noise; and sharpening the median filtered illumination-enhanced image to obtain the contrast-enhanced image.
10. A processor-implemented method as claimed in any one of the preceding claims, wherein the method comprises re-scaling the contrast-enhanced image to an ISO (International Standards Organisation) compliant resolution.
11. A processor-implemented method as claimed in any one of the preceding claims, wherein the method comprises: converting the contrast-enhanced image to a grayscale image; re-sizing the grayscale image into a predetermined height and width to obtain a re-sized image whilst maintaining aspect ratio; processing the re- sized image to enhance quality thereof to obtain a processed image; determining an orientation field associated with directionality of ridges in the processed image; dividing the processed image into a plurality of segments of a predetermined size, wherein for each segment, the method comprises: determining a dominant ridge flow in the segment using a corresponding segment in the determined orientation field; re-orienting the segments such that ridges in the segment are aligned at 90 degrees; discarding unreliable segments to obtain a processed image; determining a number of ridges per segment and obtaining an average ridge count for the segment;determining a re- scale factor, wherein the re- scale factor is determined by the determined average ridge count and a desired ridge count per segment, wherein the desired ridge count is obtained experimentally; and re-sizing the processed image by applying the re-scale factor thereto to obtain the scan scaled image.
12. A processor-implemented method as claimed in claim 11, wherein the segments are blocks of a predetermined size.
13. A processor-implemented method as claimed in either claim 11 or 12, wherein the step of processing the re-sized image to enhance the quality thereof comprises performing local contrast enhancement and applying gaussian filter to the re-sized image.
14. A system comprising: at least one processor; and a memory device coupled to the at least one processor, wherein the memory device stores non-transitory processor-executable instructions which when executed on the at least one processor causes the at least one processor to perform the method as claimed in any one of claims 1 to 13.
15. A non-transitory processor-executable storage medium storing processor-executable instructions which when executed on at least one processor causes the at least one processor to perform the method as claimed in any one of claims 1 to 13.