Method for processing a test image, computer device and computer program associated therewith
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- IDEMIA PUBLIC SECURITY FRANCE
- Filing Date
- 2024-05-15
- Publication Date
- 2026-05-06
AI Technical Summary
The comparison of reference images with proof images containing multiple latent prints degrades the performance of identification and authentication processes due to inefficiencies in manually dissociating latent prints, leading to high false negative and false positive rates, and existing neural network-based solutions are complex and costly in terms of calculation time and memory.
A method using a computer device to generate a semantic segmentation map, detect latent prints through binary maps, and aggregate scores to identify instances, with post-processing steps to refine and merge instances, reducing the number of false positives and improving efficiency.
This approach enhances the accuracy and efficiency of latent print identification by automating the segmentation and processing of multiple latent prints, reducing false positives and negatives, and simplifying the computational requirements compared to existing neural network methods.
Smart Images

Figure EP2024063368_02012025_PF_FP_ABST
Abstract
Description
Description Title of the invention: Method for processing a proof image, associated computer device and computer program.
[0001] The invention relates to a method of processing a proof image showing a plurality of latent prints. The invention also relates to a computing device and an associated computer program.
[0002] Methods are known for identifying or authenticating an individual using his or her papillary prints, for example a fingerprint and / or a palm print and / or a plantar print, these methods comprising the following steps. Conventionally, a test image showing a test papillary print of an individual is acquired, and this image is compared with a reference image showing a reference papillary print, to verify a correspondence between the test papillary print and the reference papillary print. If such a correspondence is found, then it is considered that the individual has previously been enrolled.
[0003] In a police investigation context, it is possible to use as a proof image a photograph of one or more papillary traces left on a support by the apposition of an area of the skin presenting papillary ridges. This photograph is typically acquired by a generic device, that is to say a device not specifically dedicated to the acquisition of papillary prints.
[0004] A papillary trace appearing in an image of this type is commonly called a "latent" print and can be likened to a papillary imprint.
[0005] Comparing a reference image showing a reference papillary print to a test image showing several latent prints degrades the performance of the identification and authentication processes, typically the false negative rate and / or the false positive rate.
[0006] To remedy this, it is known to manually dissociate the latent prints from the proof image, that is to say to instantiate the latent prints from the proof image, to allow their individual processing by the identification and authentication processes.
[0007] This dissociation is carried out manually by a specialist and proves to be inefficient for large quantities of test images.
[0008] The paper "Automatic Latent Fingerprint Segmentation" Dinh-Luan Nguyen, Kai Cao and Anil K. Jain, arXiv: 1804.09650v2 describes the use of neural networks that perform instance-based segmentation of a fingerprint and the possibility of thus processing a test image showing a plurality of latent fingerprints to dissociate the latent fingerprints from said test image. However, instance segmentation neural networks are complex to implement and particularly costly in terms of computation time and memory space.
[0009] Additionally, a test image may show multiple types of fingerprints, typically one or more latent fingerprints, and one or more latent palmprints.
[0010] To overcome these drawbacks, the present invention proposes, according to a first aspect, a method for processing a test image showing a plurality of latent prints, the method comprising the following steps implemented by a computer device: - generation by a neural network of a semantic segmentation map from the test image, the semantic segmentation map comprising, for each block forming part of a plurality of blocks of the test image, a score associated with the block indicative of a probability of existence in the test image of a latent fingerprint passing through the block, - generating a binary map from the semantic segmentation map, the binary map estimating, for each block of the plurality of blocks of the test image, whether or not the block shows a latent fingerprint portion, - detecting a plurality of latent fingerprint instances from the binary map, - for each instance of the plurality of instances, obtaining an aggregated score from the semantic segmentation map, the aggregated score being obtained by aggregating the scores associated with the blocks of the plurality of blocks of the test image which belong to said instance, - obtaining a restricted plurality of instances by restricting the plurality of instances to each instance whose aggregate score is greater than a predetermined threshold.
[0011] According to advantageous and non-limiting characteristics: - the aggregated score of an instance is the average of the scores associated with the blocks of the plurality of blocks of the test image which show a part of the latent fingerprint of said detected instance; - the step of detecting a plurality of latent fingerprint instances comprises a sub-step of applying a watershed segmentation to the binary map by means of a sliding window; - the step of detecting a plurality of instances of latent fingerprints comprises a sub-step of applying a connected component analysis to another binary map obtained from the binary map; - the step of detecting a plurality of latent fingerprint instances further comprises the following sub-step: obtaining the other binary map by eroding the binary map through an erosion window having a predetermined surface, to eliminate blocks from the proof image that show a latent print portion having an area less than the predetermined area; - the method comprises between the step of detecting a plurality of instances of latent fingerprints and, for each instance of the plurality of instances, the step of obtaining an aggregated score, a step of reducing the plurality of instances; - the step of reducing the plurality of instances comprises the following sub-step: for each instance of the plurality of instances, defining a detection box, the detection box being the smallest rectangular box which entirely contains said instance; - the step of reducing the plurality of instances comprises the following sub-step: deleting an instance from the plurality of instances if its detection box is included in a detection box of another instance of said plurality of instances; - the step of reducing the plurality of instances comprises the following sub-step: merging a first instance and a second instance of the plurality of instances if the intersection of a detection box of the first instance and a detection box of the second instance is greater than a predefined fraction of the union of said detection boxes of the first instance and detection box of the second instance; - the method further comprises an identification step in which at least one latent fingerprint instance of the restricted plurality of instances is individually compared to a reference fingerprint, to verify a correspondence between each latent fingerprint of the at least one latent fingerprint instance and the reference fingerprint.
[0012] According to a second aspect, the invention provides a computer program comprising code instructions for executing a method for processing a proof image as defined above, when these instructions are executed by the computer.
[0013] This program may use any programming language, and may be in the form of source code, object code, or code intermediate between source code and object code, such as in a partially compiled form, or in any other desirable form.
[0014] According to a third aspect, the invention provides a computer-readable storage means storing computer-executable instructions for executing a method of processing a proof image as defined above.
[0015] A computer-readable storage medium is typically a tangible or non-transitory medium, and may include a storage medium such as a hard disk drive, a magnetic tape device, or a solid-state memory device and the like.
[0016] According to a fourth aspect, the invention proposes a computer device for processing a proof image showing a plurality of latent prints, the computer device being configured to: - generating by a neural network a semantic segmentation map from the test image, the semantic segmentation map comprising, for each block forming part of a plurality of blocks of the test image, a score associated with the block indicative of a probability of existence in the test image of a latent fingerprint passing through the block, - generating a binary map from the semantic segmentation map, the binary map estimating, for each block of the plurality of blocks of the test image, whether or not the block shows a latent fingerprint portion, - detecting a plurality of latent fingerprint instances from the binary map, - obtaining for each instance of the plurality of instances, an aggregated score from the semantic segmentation map, the aggregated score being obtained by aggregating the scores associated with the blocks of the plurality of blocks of the test image which belong to said instance, - obtaining a restricted plurality of instances by restricting the plurality of instances to each instance whose aggregate score is greater than a predetermined threshold.
[0017] This computing device can be configured to implement each of the implementation possibilities envisaged for the method of processing a proof image as defined previously.
[0018] Of course, the various features, variants and embodiments of the invention may be combined with each other in various combinations to the extent that they are not incompatible or mutually exclusive.
[0019] Other characteristics and advantages of the present invention will emerge from the description given below, with reference to the appended figures which illustrate exemplary embodiments thereof which are not limiting in nature.
[0020] In the figures:
[0021] [Fig 1] schematically represents a preferred embodiment of a computing device and a server for implementing a method according to the invention;
[0022] [Fig 2] illustrates the steps of an embodiment of a method for processing a proof image showing a plurality of latent prints, according to the invention.
[0023] Figure 1 schematically represents a preferred embodiment of a computer device 1 for processing a proof image, and of a server 2, for implementing a method according to the invention.
[0024] The computer device 1 for processing a proof image comprises a processor 10, a communication interface 12 and a memory 14. The computing device 1 may further comprise an image sensor 16 showing fingerprints.
[0025] The computing device 1 may be a device such as a microcomputer, a workstation, or a lightweight portable device.
[0026] The processor 10 is configured to implement the steps of a method for processing a proof image which will be described later. The processor 10 can have any structure. The processor comprises one or more cores, each core being configured to execute the instructions of a computer program so as to implement the aforementioned steps. It will be seen later that this program uses a semantic segmentation neural network.
[0027] The communication interface 12 is adapted to allow the computer device 1 for processing a proof image, to receive proof images to be processed and to communicate with a server 2. The communication interface 12 is of any type. It is for example wired (Ethernet) or of the wireless radio type using any communication protocol (Wi-Fi, Bluetooth, etc.).
[0028] The memory 14 is adapted to store data manipulated or produced by the processor 10. The memory 14 is of any type. Conventionally, the memory 14 comprises a volatile memory for storing data temporarily, and a non-volatile memory for storing data persistently, that is to say in a manner which retains the data when the non-volatile memory is powered down.
[0029] The memory 14 is in particular adapted to store a test image received by the computing device 1, and intended to be processed by the processor 10.
[0030] Furthermore, the memory 14 stores computer program instructions, some of which are designed to implement a method of processing a proof image according to the invention, typically as described with reference to FIG. 2, when these instructions are executed by the processor 10.
[0031] The image sensor 16 may optionally comprise a transparent surface serving as a support for a finger or a palm for example, so as to stabilize the finger or the palm and thus clearly show a fingerprint of the finger or a palm image of the palm in an image provided by the sensor.
[0032] The image sensor 16 makes it possible to acquire a reference papillary print.
[0033] Server 2 stores a database comprising reference images showing reference fingerprints relating to previously enrolled reference individuals.
[0034] In this embodiment, the computing device 1 is separate from the server 2, as shown in Figure 1. However, in another embodiment, it may be envisaged that the computing device 1 constitutes the server 2.
[0035] In the remainder of the description, a papillary print is referred to as an "imprint", a latent papillary print as a "latent print", and a reference papillary print as a "reference print".
[0036] By reference print is meant here a print intended to be acquired in a controlled and voluntary manner using a biometric acquisition means, for example the image sensor 16.
[0037] Figure 2 illustrates the steps of an embodiment of a method for processing a proof image showing a plurality of latent prints, according to the invention.
[0038] This process is implemented by the computing device 1.
[0039] By proof image, we mean here a photograph of one or more papillary trace(s) left on a support by the affixing of an area of the skin presenting papillary ridges, that is to say a photograph of one or more latent prints.
[0040] According to a step (step E102) of generating a semantic segmentation map, the computing device 1 generates, by means of a neural network, a semantic segmentation map from a test image.
[0041] The proof image is typically stored in the memory 14 of the computing device 1, for example following its reception (step not shown) by the computing device 1 by means of the communication interface 12.
[0042] Various semantic segmentation neural networks are known to those skilled in the art. As a non-limiting example, semantic segmentation can be implemented by a convolutional neural network as described in the doctoral thesis from the University of Lyon "Convolutional neural networks for semantic segmentation and learning of color invariants", Damien Fourure, publicly defended on 12 / 12 / 2017.
[0043] A semantic segmentation map comprises, for each block forming part of a plurality of blocks of the proof image, a score associated with the block indicative of a probability of existence in the proof image of a latent fingerprint passing through the block.
[0044] Typically, for each block forming part of a plurality of blocks of the proof image, the score is a real number between 0 and 1, i.e. 0 and 1 inclusive, the score associated with a block tending towards 1 if a latent fingerprint passes through the block associated with the score, and towards 0 if no latent fingerprint passes through the block associated with the score.
[0045] In the present text, a "block" of an image constitutes a region of the image in one piece and comprising one or more pixels of the image. In a preferred embodiment, each block considered is in reality a pixel of the proof image. In this case, if the plurality of blocks of the proof image is the set of blocks covering the entire proof image, the plurality of blocks of the proof image is the set of pixels of the proof image.
[0046] The method then comprises a step (step E1 04) of generating a binary map, during which the computing device 1 generates a binary map from the semantic segmentation map.
[0047] The binary map estimates, for each block of the plurality of blocks of the proof image, whether or not the block shows a latent fingerprint portion.
[0048] The binary map comprises, for each block forming part of the plurality of blocks of the proof image, a binary indicator associated with said block.
[0049] Typically, during this step (step E104) of generating a binary map, the computing device 1 binarizes the semantic segmentation map obtained with the step (step E102) of generating a semantic segmentation map, using a previously defined threshold.
[0050] For example, if each score is a real number between 0 and 1 as described above, the threshold can have a value of 0.5.
[0051] In this case, the binary indicator associated with a block can have the value: - 0 when the score associated with said block, in the semantic segmentation map, has a value lower than the threshold; - 1 when the score associated with said block, in the semantic segmentation map, has a value greater than the threshold. A binary flag of 0 indicates that the associated block does not show a latent fingerprint portion, while a binary flag of 1 indicates that the associated block shows a latent fingerprint portion.
[0052] The method then comprises a step (step E1 06) of detecting a plurality of instances of latent fingerprints from the binary map.
[0053] During this step (step E106), the computing device 1 divides latent prints of the proof image into individual instances.
[0054] The step of detecting a plurality of latent fingerprint instances from the binary map comprises segmenting by instance latent fingerprints from the binary map.
[0055] Advantageously, the step (step E106) of detecting a plurality of instances of latent fingerprints from the binary map comprises a sub-step (sub-step SE106 2) of applying a segmentation by watershed line (“watershed segmentation” in English terminology) to the binary map by means of a sliding window.
[0056] The process thus makes it possible to better separate latent prints that touch each other.
[0057] The sliding window typically has a surface area of uxu blocks, with u having a value determined as follows: u = avec r ia image resolution 500° proof in blocks per inch.
[0058] For example, the sliding window has an area of 256x256 pixels for a proof image with a resolution of 500 pixels per inch (abbreviated as dpi), a block being a pixel in this example.
[0059] In another example, the sliding window has an area of 512x512 pixels for a proof image with a resolution of 1000 dpi.
[0060] Watershed segmentation thus focuses on the detection of small latent prints, typically latent fingerprints. In addition, this window size allows for faster computations on proof images while avoiding over-segmentation of latent fingerprints.
[0061] Various watershed segmentation algorithms are known to those skilled in the art. As a non-limiting example, the method may implement watershed segmentation as described in the document “Watershed Segmentation Algorithm Based on Morphological Gradient Reconstruction”, Baoan Han, 2015 2nd International Conference on Information Science and Control Engineering.
[0062] Watershed segmentation uses the binary map in geographical terms. This segmentation considers the binary map as a topographic relief, where the distance of a block showing a latent footprint portion, from the nearest blocks not showing a latent footprint portion, represents an elevation of said block showing a latent footprint portion. A block not showing a latent footprint portion has a zero elevation. Then the watershed segmentation searches for the watersheds of said relief and separates the different areas of the binary map. Each area obtained from the binary map corresponds to a watershed.
[0063] Also advantageously, the step (step E106) of detecting a plurality of instances of latent fingerprints from the binary map comprises two other sub-steps. In this case, the step (step E106) of detecting a plurality of instances of latent fingerprints from the binary map comprises a sub-step (sub-step SE106 4) of obtaining another binary map then a sub-step (sub-step SE106 6) of applying a related component analysis to the other binary map.
[0064] During the substep (substep SE106 4) of obtaining another bitmap, the computing device 1 obtains the other bitmap from the bitmap.
[0065] In a first example, the other binary map is the binary map.
[0066] In a second example, the other binary map is obtained by eroding the binary map through an erosion window having a predetermined area, to eliminate blocks of the proof image that show a latent print portion having an area less than the predetermined area.
[0067] The predetermined area of the erosion window is typically uxu blocks, with u having a value determined as follows: u = 200 x r with r the resolution- tion of the proof image in blocks per inch.
[0068] The predetermined area of the erosion window is for example 200x200 pixels for a proof image with a resolution of 500dpi, a block being a pixel in this example.
[0069] In another example, the erosion window has an area of 400x400 pixels for a proof image with a resolution of 1000 dpi.
[0070] A surface is said to be less than another surface, said other surface being delimited by a window, if the surface can be contained in said other surface, that is to say if the surface can be contained in said window delimiting the other surface.
[0071] Erosion of the binary map allows to focus the connected component analysis on the detection of large latent prints, typically latent palm prints.
[0072] Then, during the sub-step (sub-step SE106 6) of applying a connected-component analysis to the other binary card, the computing device 1 applies a connected-component analysis to the other binary card.
[0073] Connected component analysis enables better segmentation of latent palmprints than watershed segmentation.
[0074] Various algorithms for connected component analysis are known to those skilled in the art. By way of non-limiting example, the method may implement a connected component analysis as described in “The connected-component labeling problem: A review of state-of-the-art algorithms”, Lifeng He et al., Elsevier: Pattern Recognition Volume 70 (2017) pages 25-43.
[0075] Connected component analysis links, for a given block showing a latent fingerprint portion, all neighboring blocks of that given block, which show a latent fingerprint portion. Connected component analysis thus groups blocks showing a latent fingerprint portion that are connected, i.e., adjacent.
[0076] In the embodiment shown in Figure 2, the step (step E106) of detecting a plurality of instances of latent fingerprints from the binary map, comprises the sub-step (sub-step SE106 2) of applying a segmentation by watershed line, the sub-step (sub-step SE106_4) of obtaining another binary map and the sub-step (sub-step SE106 6) of applying an analysis by connected components to the other binary map.
[0077] The method allows one or more latent fingerprints and / or palm prints to be detected simultaneously and efficiently.
[0078] The sub-step (sub-step SE106_2) of applying a segmentation by watershed line can be implemented in parallel with the sub-steps of obtaining another binary map (sub-step SE106 4) and applying a connected component analysis to the other binary map (sub-step SE106 6), for example: - by means of a processor comprising several cores, at least one core being configured to execute the sub-step (sub-step SE106_2) of applying a segmentation by watershed line and at least one other core being configured to execute the sub-steps of obtaining another binary map (sub-step SE106 4) and of applying an analysis by connected components to the other binary map (sub-step SE106 6), and / or - by means of several processors, at least one processor being configured to execute the sub-step (sub-step SE106 2) of applying a segmentation by watershed line and at least one other processor being configured to execute the sub-steps of obtaining another binary map (sub-step SE106 4) and of applying an analysis by connected components to the other binary map (sub-step SE106 6).
[0079] Alternatively, the substep (substep SE106_2) of applying a dividing line segmentation, the substep of obtaining another binary map (substep SE106_4) and the substep of applying a related component analysis to the other binary map (substep SE106_6) may be implemented sequentially by the computing device 1.
[0080] In a first other embodiment, it may be envisaged that the step (step E1 06) of detecting a plurality of instances of latent fingerprints from the binary map, comprises the sub-step (sub-step SE106 2) of applying a segmentation by watershed line but does not comprise a sub-step (sub-step SE106 4) of obtaining another binary map nor a sub-step (sub-step SE106 6) of applying an analysis by connected components to the other binary map.
[0081] In a second other embodiment, it may be envisaged that the step (step E1 06) of detecting a plurality of instances of latent fingerprints from the binary map, comprises the sub-step (sub-step SE106 4) of obtaining another binary map and the sub-step (sub-step SE106 6) of applying an analysis by connected components to the other binary map, but does not comprise a sub-step (sub-step SE106 2) of applying a segmentation by watershed line.
[0082] The method continues with a step (step E108) of reducing the plurality of instances, i.e. of reducing the plurality of instances detected during the detection step (step E106).
[0083] The step (step E108) of reducing the plurality of instances comprises a sub-step (sub-step SE108 2) of defining detection boxes.
[0084] During this sub-step (sub-step SE108 2) of defining detection boxes, the computing device 1 defines for each instance of the plurality of instances, a detection box, the detection box being the smallest rectangular box which entirely contains said instance.
[0085] Advantageously, the step (step E108) of reducing the plurality of instances may then comprise a sub-step (sub-step SE108_4) of deleting at least one instance of the plurality of instances, during which the computing device 1 deletes an instance of the plurality of instances, i.e. an instance of the plurality of instances detected during the detection step (step E106), if its detection box is included in a detection box of another instance of said plurality of instances.
[0086] Also advantageously, the step (step E108) of reducing the plurality of instances may comprise a sub-step (sub-step SE108 6) of merging after the sub-step (sub-step SE108 4) of deleting at least one instance from the plurality of instances.
[0087] During this sub-step (sub-step SE108 6) of merging, the computing device 1 merges a first instance and a second instance of the plurality of instances if the intersection of a detection box of the first instance and a detection box of the second instance is greater than a predefined fraction of the union of said detection boxes of the first instance and detection box of the second instance.
[0088] The merger of a first instance and a second instance results in a single instance, the reduced plurality of instances comprising the single instance but not comprising the first instance or the second instance.
[0089] The predefined fraction is typically 0.6.
[0090] In the embodiment shown in Figure 2, the step (step E108) of reducing the plurality of instances comprises the sub-step (sub-step SE108 2) of defining detection boxes, the sub-step (sub-step SE108 4) of deleting detection boxes and the sub-step (sub-step SE108 6) of merging.
[0091] In a first other embodiment, it may be envisaged that the step (step E108) of reducing the plurality of instances comprises the sub-step (sub-step SE108 2) of defining detection boxes and the sub-step (sub-step SE108 4) of deleting detection boxes, but does not comprise the sub-step (sub-step SE108 6) of merging.
[0092] In a second other embodiment, it may be envisaged that the step (step E108) of reducing the plurality of instances comprises the sub-step (sub-step SE108_2) of defining detection boxes and the sub-step (sub-step SE108_6) of merging, but does not comprise the sub-step (sub-step SE108_4) of deleting detection boxes. This second other embodiment may be advantageous when the step (step E106) of detecting a plurality of instances of latent fingerprints from the binary map is according to the first other embodiment described above for said step (step E106) of detection.
[0093] At the end of the step (step E108) of reducing the plurality of instances, the plurality of instances comprises a number of instances less than or equal to the number of instances detected during the detection step (step E106).
[0094] The step of reducing the plurality of instances makes it possible to limit over-segmentation and to improve the efficiency of the process by limiting the calculations required for the following steps.
[0095] The method continues with a step (step E109) of obtaining aggregated scores, during which the computing device 1 obtains for each instance of the plurality of instances, i.e. here for each instance of the plurality of instances reduced by the reduction step (step E108), an aggregated score from the semantic segmentation map.
[0096] During this step (step E1 09) of obtaining aggregated scores, the computing device 1 obtains for each instance of the plurality of instances, an aggregated score by aggregating the scores associated with the blocks of the plurality of blocks of the test image which belong to said instance.
[0097] Typically, the aggregated score of an instance is the average of the scores associated with the blocks of the plurality of blocks of the proof image that show a portion of the latent fingerprint of said instance.
[0098] The method continues with a step (step E1 10) of obtaining a restricted plurality of instances, during which the computing device 1 obtains the restricted plurality of instances by restricting the plurality of instances to each instance whose aggregated score is greater than another predetermined threshold.
[0099] The aggregated scores thus make it possible to better filter false detections of latent fingerprint instances.
[0100] When the scores are real numbers between 0 and 1 and the aggregated score of an instance is the average of the scores associated with the blocks of the plurality of blocks of the proof image which show a part of the latent fingerprint of said instance, the other predetermined threshold preferably has a value between 0.6 and 0.75, i.e. 0.6 and 0.75 inclusive, for example 0.6.
[0101] The restricted plurality of instances comprises all, and only, the instances of the plurality of instances whose aggregated score is greater than the other predetermined threshold, i.e. here the instances of the plurality of instances reduced by the reduction step (step E1 08) whose aggregated score is greater than the other predetermined threshold.
[0102] The method allows for rapid and efficient detection, typically instance-based segmentation, of a plurality of latent fingerprints.
[0103] This process implements a semantic segmentation neural network then post-processing, and does not require a segmentation neural network per instance.
[0104] The method may further continue with an identification step (step E1 12) during which the computing device 1 individually compares at least one latent fingerprint instance of the restricted plurality of instances to a reference fingerprint, to verify a correspondence between each latent fingerprint of the at least one latent fingerprint instance and said one reference fingerprint.
[0105] A person skilled in the art will understand that steps of this method may be omitted to the extent that the other steps have the elements (for example a plurality of instances) necessary for their execution.
[0106] For example, the step (step E1 08) of reducing the plurality of instances may be omitted.
[0107] In this case, during the step (step E109) of obtaining aggregated scores, the computing device 1 obtains for each instance of the plurality of instances, that is to say here for each instance of the plurality of instances detected during the detection step (step E106), an aggregated score from the semantic segmentation map.
[0108] Furthermore, the restricted plurality of instances obtained during the step (step E1 10) of obtaining a restricted plurality of instances, comprises all, and only, the instances of the plurality of instances whose aggregated score is greater than the other predetermined threshold, that is to say here the instances of the plurality of instances detected during the detection step (step E106) whose aggregated score is greater than the other predetermined threshold.
[0109] A person skilled in the art will also understand that steps and / or sub-steps of the method may be executed in other orders, provided that each step and / or sub-step has the elements (for example the binary map) necessary for its execution.
[0110] According to a first example, when the step (step E1 06) of detecting a plurality of instances of latent fingerprints from the binary map, comprises the sequential implementation of the sub-step (sub-step SE106_2) of applying a segmentation by watershed line, of the sub-step (sub-step SE106 4) of obtaining another binary map and of the sub-step (sub-step SE106 6) of applying an analysis by connected components to the other binary map: - the sub-step (sub-step SE106 2) of applying a segmentation by watershed line can be executed before the sub-step (sub-step SE106 4) of obtaining another binary map and the sub-step (sub-step SE106 6) of applying an analysis by connected components to the other binary map, or - the sub-step (sub-step SE106 2) of applying a segmentation by watershed line can be executed after the sub-step (sub-step SE106 4) of obtaining another binary map and after the sub-step (sub-step SE106 6) of applying an analysis by connected components to the other binary map, or - the sub-step (sub-step SE106 2) of applying a segmentation by watershed line can be executed after the sub-step (sub-step SE106 4) of obtaining another binary map and before the sub-step (sub-step SE106 6) of applying an analysis by connected components to the other binary map.
[0111] According to a second example, the step (step E109) of obtaining aggregated scores can be executed before the step (step E108) of reducing the plurality of instances.
[0112] In this case, if the step (step E1 08) of reducing the plurality of instances comprises the sub-step (sub-step SE108 6) of merging, when the computing device 1 merges a first instance and a second instance of the plurality of instances, the computing device merges the aggregated score of the first instance with the aggregated score of the second instance.
[0113] Typically, the computing device may associate with the instance resulting from the fusion of a first instance and a second instance, the aggregated score of the instance resulting from the fusion having the greatest value among the aggregated score of the first instance and the aggregated score of the second instance, or an average, possibly weighted, of the aggregated score of the first instance and the aggregated score of the second instance. The weighting may be a function of the number of blocks of the first instance showing a latent fingerprint portion and the number of blocks of the second instance showing a latent fingerprint portion (the number of blocks, of an instance, showing a latent fingerprint portion being able to be determined from the binary map associated with said instance).
Claims
Claims
1. A method of processing a proof image showing a plurality of latent prints, the method comprising the following steps implemented by a computing device (1): - generation (El 02) by a neural network of a semantic segmentation map from the test image, the semantic segmentation map comprising, for each block forming part of a plurality of blocks of the test image, a score associated with the block indicative of a probability of existence in the test image of a latent fingerprint passing through the block, - generation (El 04) of a binary map from the semantic segmentation map, the binary map estimating, for each block of the plurality of blocks of the test image, whether or not the block shows a part of a latent fingerprint, - detection (E106) of a plurality of instances of latent fingerprints from the binary map, - for each instance of the plurality of instances, obtaining (El 09) an aggregated score from the semantic segmentation map, the aggregated score being obtained by aggregating the scores associated with the blocks of the plurality of blocks of the test image which belong to said instance, - obtaining (El 10) a restricted plurality of instances by restricting the plurality of instances to each instance whose aggregated score is greater than a predetermined threshold.
2. A method of processing a proof image according to the preceding claim, wherein the aggregated score of an instance is the average of the scores associated with the blocks of the plurality of blocks of the proof image which show a part of the latent fingerprint of said detected instance.
3. A method of processing a proof image according to any one of the preceding claims, wherein the step (El 06) of detecting a plurality of latent fingerprint instances comprises a sub-step (SE106 2) of applying a watershed segmentation to the binary map by means of a sliding window.
4. A method of processing a proof image according to any one of the preceding claims, wherein the step (El 06) of detecting a plurality of latent fingerprint instances comprises a sub-step (SE106 6) of applying an analysis by components related to another binary map obtained from the binary map.
5. Method for processing a proof image according to the preceding claim, in which the step (E106) of detecting a plurality of instances of latent prints further comprises the following sub-step (SE106_4): - obtaining the other binary map by eroding the binary map through an erosion window having a predetermined area, to eliminate the blocks of the proof image which show a latent print portion having an area smaller than the predetermined area.
6. A method of processing a proof image according to any one of the preceding claims, the method comprising between the step (E106) of detecting a plurality of latent fingerprint instances and the step (E109), for each instance of the plurality of instances, of obtaining an aggregated score, a step (E108) of reducing the plurality of instances comprising the following sub-steps: - for each instance of the plurality of instances, definition (SE108 2) of a detection box, the detection box being the smallest rectangular box which entirely contains said instance, - deletion (SE108_4) of an instance from the plurality of instances if its detection box is included in a detection box of another instance from said plurality of instances, - merging (SE108 6) a first instance and a second instance of the plurality of instances if the intersection of a detection box of the first instance and a detection box of the second instance is greater than a predefined fraction of the union of said detection boxes of the first instance and detection box of the second instance.
7. A method of processing a proof image according to any one of the preceding claims, the method further comprising an identification step (El 12) in which at least one latent fingerprint instance of the restricted plurality of instances is individually compared to a reference fingerprint, to verify a correspondence between each latent fingerprint of the at least one latent fingerprint instance and the reference fingerprint.
8. A computer program comprising code instructions for executing the method according to any one of the preceding claims when these instructions are executed by the computer.
9. Computer-readable storage means storing computer-executable instructions for carrying out the method of any one of claims 1 to 7.
10. A computer device (1) for processing a proof image showing a plurality of latent prints, the computer device (1) being configured to: - generating by a neural network a semantic segmentation map from the test image, the semantic segmentation map comprising, for each block forming part of a plurality of blocks of the test image, a score associated with the block indicative of a probability of existence in the test image of a latent fingerprint passing through the block, - generating a binary map from the semantic segmentation map, the binary map estimating, for each block of the plurality of blocks of the test image, whether or not the block shows a latent fingerprint portion, - detecting a plurality of latent fingerprint instances from the binary map, - obtaining for each instance of the plurality of instances, an aggregated score from the semantic segmentation map, the aggregated score being obtained by aggregating the scores associated with the blocks of the plurality of blocks of the test image which belong to said instance, - obtaining a restricted plurality of instances by restricting the plurality of instances to each instance whose aggregate score is greater than a predetermined threshold.