PIXEL LABELING PROCESS

By processing batches of related pixels, the method enhances image processing speed and labeling capacity, addressing the limitations of traditional pixel-by-pixel scanning approaches.

FR3157633A1Active Publication Date: 2025-06-27SAFRAN ELECTRONICS & DEFENSE (FR)
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
FR2023015023
Authority / Receiving Office
FR · FR
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-22
Publication Date
2025-06-27
Estimated Expiration
2043-12-22

AI Technical Summary

Technical Problem

Existing image processing methods for on-board optronic devices are limited by their pixel-by-pixel scanning approach, which results in slower processing speeds and lower image labeling capacity, leading to performance limitations due to resource constraints.

Method used

A method for pixel labeling that processes batches of related pixels instead of individual pixels, allowing for faster processing and higher image labeling capacity by applying existing labels to batches and creating new labels as needed.

Benefits of technology

This method significantly accelerates image processing, potentially doubling or quadrupling the speed compared to traditional methods, while also reducing the number of labels required, thus improving resource efficiency and labeling capacity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method (100) for labeling pixels of an image acquired by an optronic device which comprises electronic circuitry (200) for implementing the method (100) for labeling pixels. The method (100) comprises at least the following steps:- acquiring (101) at least one batch to be labeled comprising at least two related pixels to be labeled;- determining (102) whether there is at least one pixel already labeled in contact with the batch to be labeled;- if there is at least one pixel already labeled with at least one label in contact with the batch to be labeled, then applying (104) the at least one label to the pixels of the batch to be labeled;- if there is not at least one pixel already labeled in the vicinity of the batch to be labeled, then creating (106) a new label;- providing (110) the acquired image comprising the labeled pixels to a third party device for further processing. Figure to be published with the abstract: Fig. 2
Need to check novelty before this filing date? Find Prior Art

Description

Title of the invention: PIXEL LABELING METHOD Technical field

[0001] The invention relates to the field of processing images acquired by an on-board optronic device. STATE OF PRIOR ART

[0002] In a known manner, embedded optronic devices integrate image processing functions. These image processing functions are integrated into programmable components of the in situ programmable gate array type, also called "field-programmable gate array" in English (abbreviated FPGA).

[0003] State-of-the-art image processing has the principle of scanning the image in the natural direction (from left to right then from top to bottom), and labeling the pixels on the flow, at the rate of one pixel per FPGA clock cycle. If in the four pixels passed from the 8-connected neighborhood of a new pixel, there is a pixel already labeled, then the new pixel receives the value of the label of the pixel already labeled.

[0004] Thus, as schematized in the example of [Fig.l], by applying the known methods, the pixel at x:2 and y:2 takes the value of the pixel at x:3 and y:1. This is the value of label 1. On the other hand, it is possible to start a new labeling without knowing in advance that this new region will potentially be 8-connected to a region already labeled. This is the case for regions 2 and 3, in [Fig.l] the pixel x:5 and y:6 is part of the labeled region 2 connected with the pixel at x:8 and y:6. But this connection information is not known at the time of labeling the pixel x:5 and y:6 leading to the creation of label 3. It will nevertheless be necessary to associate these two regions when the pixel x:8 and y:6 is processed. So in this case, we need to define an equivalence table that allows us to associate region 3 with region 2. The principle is that the larger region always points to the smaller region.In a known way, equivalence requests are resolved on the flow in order to always point to the smallest region. This makes it possible to avoid in atypical forms losing branches and thus having unassociated regions. Finally, when the image traversal is finished, it is necessary to traverse the equivalence table in order to resolve the remaining associations.

[0005] If the processing is carried out at a rate of one pixel per clock cycle, there is only one equivalence request maximum every two clock cycles but one line out of 3, so this is on an image in which there is an equivalence request every 6 clock cycles on average.

[0006] Then during the implementation, it is necessary to limit the number of labels. Indeed the number of labels defines the size of the equivalence table which therefore has an impact on the use of resources such as block random access memory (BRAM) in FPGA and also on the time taken to resolve associations.

[0007] In addition, the number of labels defines the number of bits required to encode the label number. This therefore impacts the volume of data in the label image, and consequently the resources required for its storage or the bandwidth required to transfer the label image to external (or internal) memories.

[0008] Therefore, during implementation the number of labels is limited, and often at most, depending on the types of images and the resources and bandwidths of the target hardware. Therefore it is possible to reach this limit while not all the pixels to be labeled are yet. In this case the remaining pixels are simply not labeled. This is a performance limitation linked to the implementation.

[0009] In this context, there is a need to provide an image processing method that is faster for the same clock frequency with higher image labeling capacity. Statement of the invention

[0010] For this purpose, according to a first aspect, there is provided a method for labeling pixels of an image comprising a plurality of pixels, the image being acquired by an optronic device which comprises electronic circuitry for implementing the pixel labeling method. The method comprises at least the following steps:

[0011] - acquire at least one batch to be labeled comprising at least two pixels related to label;

[0012] - determine if there is at least one pixel already labeled in contact with the batch to be labeled;

[0013] - if there is at least one pixel already labeled with at least one label in contact with the batch to label, then apply the at least one label to the pixels of the batch to be labeled;

[0014] - if there is not at least one pixel already labeled in the neighborhood of the batch to be labeled, then create a new label;

[0015] - providing the acquired image including the labeled pixels to a third party device for of further processing.

[0016] Thus, in a particularly advantageous manner, the method according to the invention makes it possible to process batches of pixels (i.e. a plurality of pixels). The processing of batches of pixels allows faster processing of an image with a higher image labeling capacity, for an identical clock frequency, than the known methods which scan the image pixel by pixel. Indeed, batch processing of pixels makes it possible to accelerate the processing of all the pixels in the image. Thus, the method according to the invention can, for example, make it possible to go two or four times faster than a known method of the prior art which processes the pixels one by one.

[0017] According to a particular arrangement, if there are several pixels already labeled with different labels in contact with the batch to be labeled, then apply one of the different labels to the at least one pixel of the batch to be labeled, the applied label being chosen according to a predetermined priority rule.

[0018] According to a particular arrangement, if two connected pixels labeled with distinct labels are detected, the two labels are compared according to a predetermined equivalence table comprising equivalence relationships between so-called mother labels associated with so-called daughter labels.

[0019] According to a particular arrangement, the mother tags found associated with at least two daughter tags are compared and the oldest mother tag is identified as the mother tag in the equivalence table and the daughter tags in the equivalence table are modified to become identical to the identified mother tag.

[0020] According to a particular arrangement, the mother labels found associated with at least two daughter labels are identical and the mother label is identified as a mother label in the equivalence table and the daughter labels in the equivalence table are modified to become identical to the identified mother label.

[0021] According to a particular arrangement, the method comprises a step of resolving the equivalence table by assigning to each daughter label the oldest possible corresponding mother label.

[0022] According to a particular arrangement, the method comprises a step in which the image is browsed to modify the labels whose equivalence relationship has changed during the step of resolving the equivalence table, so that the labels which have become daughter labels in an equivalence relationship are modified to become identical to their respective mother label.

[0023] According to a particular arrangement, the step of acquiring at least one batch to be labeled comprises the acquisition of several batches which are not in contact.

[0024] According to another aspect, there is provided an optronic device which comprises electronic circuitry for implementing a pixel labeling method which comprises at least the following steps:

[0025] - acquire at least one batch to be labeled comprising at least two pixels related to label;

[0026] - determine if there is at least one pixel already labeled in contact with the batch to be labeled;

[0027] - if there is at least one pixel already labeled with at least one label in contact with the batch to label, then apply the at least one label to the pixels of the batch to be labeled;

[0028] - if there is not at least one pixel already labeled in the neighborhood of the batch to be labeled, then create a new label;

[0029] - providing the acquired image including the labeled pixels to a third party device for of further processing.

[0030] According to another aspect, there is provided a computer program product comprising program code instructions for executing the method according to the invention.

[0031] According to another aspect, there is provided a non-transitory storage medium on which is stored a computer program comprising program code instructions for executing the method according to the invention, when said instructions are read from said non-transitory storage medium and executed by a processor. Brief description of the drawings

[0032] The characteristics of the invention mentioned above, as well as others, will appear more clearly on reading the following description of at least one exemplary embodiment, said description being made in relation to the attached drawings, among which:

[0033] [Fig-1] schematically illustrates the implementation of a labeling process;

[0034] [Fig.2] schematically illustrates a method of labeling pixels;

[0035] [Fig.3] schematically illustrates the processing of an image by a known method;

[0036] [Fig.4] schematically illustrates the obtaining of labeled pixels by the known method of [Fig.3];

[0037] [Fig.5] schematically illustrates the obtaining of an image processed by the known method of Figs. 3 and 4;

[0038] [Fig.6] schematically illustrates the processing of an image by a known method;

[0039] [Fig.7] schematically illustrates the obtaining of labeled pixels by the known method of [Fig.6];

[0040] [Fig.8] schematically illustrates the obtaining of an image processed by the known method of Figs. 6 and 7;

[0041] [Fig.9] schematically illustrates the processing of an image by a labeling process;

[0042] [Fig. 10] schematically illustrates the obtaining of labeled pixels by the method of [Fig.9];

[0043] [Fig. 11] schematically illustrates the obtaining of an image processed by the method of Figs. 9 and 10;

[0044] [Fig. 12] schematically illustrates the application of a label to a pixel of a batch;

[0045] [Fig. 13] schematically illustrates the application of a label to a pixel of a batch using a priority rule;

[0046] [Fig. 14] schematically illustrates the application of a label to a pixel of a batch using a priority rule;

[0047] [Fig. 15] schematically illustrates the application of a label to a pixel of a batch;

[0048] [Fig. 16] schematically illustrates an equivalence table;

[0049] [Fig. 17] schematically illustrates an equivalence table before a step of resolution ;

[0050] [Fig. 18] schematically illustrates the resolution of the equivalence table of [Fig.17];

[0051] [Fig. 19] schematically illustrates a computer system.

[0052] [Fig.20] schematically illustrates the equivalence processing step.

[0053] DETAILED DESCRIPTION OF EMBODIMENTS

[0054] Pixel labeling method

[0055] With reference to [Fig.2], according to a first aspect, there is provided a method 100 of labeling pixels of an image acquired by an optronic device which comprises electronic circuitry 200 for implementing the pixel labeling method 100.

[0056] The method 100 for labeling pixels notably comprises the following steps: - acquiring 101 at least one batch to be labeled comprising at least two related pixels to be labeled; - determine 102 if there is at least one pixel already labeled in contact with the batch to be labeled; - if there is at least one pixel already labeled with at least one label in contact with the batch to be labeled, then apply 104 the at least one label to the pixels of the batch to be labeled; - if there is not at least one pixel already labeled in the neighborhood of the lot to be labeled, then create 106 a new label; - provide 110 the acquired image including the labeled pixels to a third-party device for further processing.

[0057] Thus, in a particularly advantageous manner, the method 100 according to the invention makes it possible to process batches of pixels (i.e. a plurality of pixels). The processing of batches of pixels allows faster processing of an image, for an identical clock frequency, than the known methods which scan the image pixel by pixel. Indeed, the processing by batches of pixels makes it possible to accelerate the processing of all the pixels of the image. Thus, the method according to the invention can for example make it possible to go two or four times faster than a known method of the prior art which processes the pixels one by one.

[0058] Furthermore, it is specified that in this document, by connected pixels, it is understood that the two pixels touch each other (i.e. two pixels which are in contact). More precisely, depending on its position in the image, a pixel can be in contact with up to eight other pixels. It is recalled that an image is made up of a matrix of pixels, i.e. a set of rows and columns of pixels. Thus, a pixel can be in contact with two other pixels on the same row, two other pixels on the same column, two other pixels on a first diagonal and two other pixels on a second diagonal.

[0059] The processing of batches of related pixels is a particularly clever arrangement of the invention which allows a significant gain in efficiency compared to the methods of the prior art. Figs. 3 to 11 illustrate comparatively the processing of the same image with different methods of the prior art and the method 100 according to the invention. In these figures the grayed-out pixels are the pixels to be labeled.

[0060] Thus, [Fig.3] illustrates the processing of an image using a conventional method of the prior art, in which only one pixel is processed at a time. The pixels are processed from top to bottom and from left to right. The image has sixty-four pixels. It therefore takes sixty-four clock cycles to label the entire image (at a rate of one pixel labeled per clock cycle). [Fig.4] illustrates the image of [Fig.3] labeled according to this method. Labeling one pixel at a time led to the generation of five different labels. However, as can be seen in the image, labels 1, 2, 3 and 5 concern related pixels, so they relate to the same object. It is therefore necessary to re-scan the image to apply equivalences to the labels, so that the image illustrated in [Fig.5] is the processed image finally obtained. It is worth noting that as is known, modifying a label according to an equivalence rule takes several clock cycles.It is therefore clear that the more different related labels the labeling generates, the longer the processing process will be because many equivalences will have to be applied. Thus, in other words, according to this method, the total processing time for each pixel requiring a label modification according to an equivalence rule is several clock cycles, compared to a single clock cycle if the pixel does not require modifications after labeling.

[0061] [Fig.6] illustrates a case of the same image as [Fig.3], processed by performing simultaneous processing of several pixels that are not connected (related). In this example, the pixels are processed in groups of four unconnected pixels. Here the groups are made up of pixels from the same column positioned every other row. This processing mode allows the entire image to be labeled in sixteen clock cycles. However, as illustrated in [Fig.7], this processing mode generates seven different labels. It is therefore necessary to apply numerous equivalence rules to obtain the final processed image of [Fig.8]. However, as explained previously, Changing a label according to an equivalence rule takes several clock cycles. It therefore appears that the method of Figs. 6 to 8 is less interesting than the method of Figs. 3 to 5, because in the end it requires more processing time. Finally, [Fig.9] illustrates the same image as for Figs. 3 and 6, but processed using method 100. According to the example of [Fig.9], the pixels are processed in batches of two related pixels.

[0062] As illustrated in [Fig.10], the application of the method 100 makes it possible to create only three labels, for processing in three times fewer clock cycles than the processing of [Fig.3].

[0063] As can be seen, the method 100 according to the example of [Fig. 10] generated the creation of a single excess label. The application of equivalences to obtain the processed image of [Fig.l 1] is therefore particularly fast compared to known methods.

[0064] Thus, by processing the image in batches of related pixels, the method 100 according to the invention makes it possible to save processing time in the generation of the labels and also makes it possible to generate a minimal number of labels, which also allows a significant saving of time. In addition, the fact that the method 100 generates fewer labels than the methods of the prior art also makes it possible to have an image labeling capacity greater than the methods of the prior art. Indeed, the processing devices are physically restricted to a maximum number of labels that can be generated. Given that the method 100 generates fewer labels, it reaches saturation of the number of labels less quickly in the case of the processing of a particularly complex image.

[0065] As indicated previously, [Fig.2] illustrates the method 100 according to the invention.

[0066] It is specified that according to a particular arrangement, during step 101, it is possible to acquire several batches of pixels which are not connected.

[0067] Preferably, the determination step 102 is carried out by scanning the pixels of the image from left to right and from top to bottom. More precisely, an image being a matrix of pixels, the image therefore comprises rows and columns of pixels which form a matrix (i.e. a table). Step 102 is therefore carried out by scanning the image from a pixel at the top left of the image to the pixel at the bottom right of the image, progressing in a direction of travel from left to right and line by line from top to bottom.

[0068] It is specified that although the image is traversed in a conventional direction of travel, a different path of the image could be envisaged without consequence for the processing of the method according to the invention. Batch processing of connected pixels is a particularly advantageous technical arrangement which fundamentally distinguishes the operation of the pixel labeling method 100 compared to other known pixel labeling methods.

[0069] Application of a label

[0070] If there is at least one pixel already labeled with a unique label in contact with the batch to be labeled 104d, then the method 100 applies 104a the label to the pixels of the batch to be labeled.

[0071] In other words, in this configuration, a single label is detected upon contact with the batch to be labeled. The batch to be labeled then takes the single label that was detected upon contact with it.

[0072] This configuration is illustrated in [Fig.12]. In [Fig.12], the pixels "a" are pixels of a batch to be labeled. Label 1 is the only one related to the batch to be labeled. According to this example, the pixels "a" will therefore take the label "1".

[0073] According to another configuration, if there are several pixels already labeled with different labels in contact with the batch to be labeled 104d, then the method 100 applies 104b one of the different labels to the at least one pixel to be labeled, the applied label being chosen according to a predetermined priority rule.

[0074] The priority rule is a predetermined rule (i.e. defined in advance) that establishes an order of priority between the labels. This order of priority makes it possible to know which label to choose if it is possible to assign several labels to the same pixel. Thus, for example, the priority rule can be defined according to the position of the labeled pixels that surround a pixel of a batch to be labeled. Indeed, as indicated previously, an image is a matrix of pixels, each pixel can potentially be in contact with up to eight other pixels. More precisely, each pixel being a square, it can be in contact with four other pixels on its sides (left, right, top and bottom) and with four other pixels diagonally (top left, bottom left, top right and bottom right).Thus, a priority rule can be defined so that a label of a pixel in contact with an edge of a pixel to be labeled will have priority over a label of a pixel in contact with a diagonal of a pixel to be labeled. This example is illustrated in [Fig. 13]. In [Fig. 13], pixels "a" are pixels in a batch to be labeled. Labels 1 and 2 are connected to the batch of pixels being labeled, pixels "a" will take label "2" which has priority in the neighborhood.

[0075] According to another example illustrated in [Fig.14], the pixel PI to be labeled can take the labels of the pixels which are directly adjacent to it. Thus, according to this example, the pixel PI can take the labels 1, 2, 3 or 4. According to this example, the order of priority is defined as follows: the left pixel has priority over the top-left pixel. The top-left pixel has priority over the top pixel. The top pixel has priority over the top-right pixel. Therefore, according to the example presented here, the pixel labeled 1 has priority on the pixel labeled 2, which has priority over the pixel labeled 3, which itself has priority over the pixel labeled 4. So according to the example presented here, PI takes label 1 according to the priority rule.

[0076] According to another configuration, illustrated in [Fig. 15], no label is connected to the batch of pixels “a” to be labeled, a new label (the label “2”) is then created (step 106) and the pixels “a” of the batch will therefore take the new label, the label “2”.

[0077] Equivalence

[0078] As shown diagrammatically in [Fig.2] and [Fig.20], the method 100 further comprises a step 104c of recording and processing equivalences. It is recalled that an equivalence must be processed when two pixels labeled with distinct labels are in contact. If two related pixels labeled with labels are detected 104d, the two labels are compared 104c 1 according to a predetermined equivalence table comprising equivalence relationships between labels that point to other labels (i.e. the equivalence table comprises equivalence relationships between labels that are equivalent to other labels). If a label, in the equivalence table, points to itself, it is called a mother label. A label, in the equivalence table, that points to another label is called a daughter label.The processing of equivalences consists of searching for the mother label of each label for which the equivalence must be created. The daughter labels are memorized. Then, the mother labels found associated with at least 2 daughter labels are compared 104c 1, the oldest mother label (i.e. a mother label having a creation date in the process, the oldest which corresponds to the mother label with the lowest label in the equivalence tables), replaces 104c2 the daughter labels memorized and associated with the most recent of the mother labels (having a creation date in the process, the most recent).

[0079] If the mother tags found associated with at least two daughter tags are identical, the mother tag is identified as a mother tag in the equivalence table and the daughter tags in the equivalence table are modified 104c2 to become identical to the identified mother tag. In other words, at the start of the method, all the tags in the equivalence table are mother tags because they point to themselves. At each equivalence creation, a mother tag is updated and points to a tag that is not itself, it then becomes a daughter tag.

[0080] During the search for mother tags, it is possible to read one or more daughter tags before finding the mother tag. For example, in a case where the tags are referenced A, B, C and D. According to this example, equivalences for A and B are searched. If, in the equivalence table, A points to A, it is a parent label. The search for A's parent label is then complete. If, in the equivalence table, B points to C, C points to D and D points to D, D is a parent, B and C are daughters (the daughters of D) the search for B's parent is complete). If A is older than D then labels B, C and D are all three updated to point to A. If D is older than A then A, B and C are updated to point to D. During equivalence processing, most often, a parent label is updated and possibly daughter labels are updated.

[0081] An equivalence table is shown diagrammatically in [Fig. 16], this example of an equivalence table can be used with the example situation of [Fig.l]. In [Fig.l], as described previously, four pixels have received the label 3 and eight pixels have received the label 2. As illustrated in this example, the pixels labeled 3 and the pixels labeled 2 are connected. It is therefore necessary to compare the labels according to the equivalence table to have only one set of pixels having the same label. According to the example presented here, the equivalence table of [Fig.7] indicates that label 3 points to label 2 which is a mother label. A label is said to be mother when it points to itself. This is the case for label 2. In other words, according to the example presented here, label 3 points to label 2. We look up label 2 in the equivalence table. Label 2 points to itself, so it is a parent label.Thus, the pixels initially labeled 3 see their label modified to receive the label 2 according to this equivalence table 104c2.

[0082] According to a particular arrangement, the equivalence table is established so that a more recent label points to an earlier label with which it is in contact. In other words, according to the examples presented here, the labels are numerical labels, the first label created is label 1, then label 2 was created, etc. Thus, according to this example, the higher a label's numerical value, the more recently it appeared in the method. If two distinct labels are in contact, the higher label points to (is the daughter label) of the label with the lower value. This arrangement very advantageously makes it possible to associate under a single label all the branches of an object having an atypical shape.

[0083] Furthermore, in a particularly clever way, when a label is chosen according to the predetermined priority rule, this label is recorded (step 104c) in the equivalence table, as a label equivalent to the other different labels in contact with the batch of pixels to be labeled. In other words, according to this arrangement, when labeling a batch of pixels, if the batch of pixels is in contact with several pixels already labeled then a label is chosen (from among those in contact) using the priority rule. This means that the batch of pixels which has just been labeled is in contact with other labels. To avoid having to process equivalences later, the equivalence table is updated in real time and an equivalence is created between the label that was chosen according to the priority rule and the other labels in contact with the batch of pixels. This arrangement makes it possible to quickly group the largest number of pixels under the same label.

[0084] Resolution of equivalences

[0085] According to a particularly advantageous arrangement, the method further comprises a step 108 of resolving the equivalence table by assigning to each daughter label the oldest possible corresponding mother label. It is specified that by oldest possible mother label is meant a mother label whose creation date, in the method, is the oldest possible compared to the creation dates of the other mother labels. Typically the labels can have incremental numerical or alphabetical values. Thus, typically, in the case of labels having numerical values, label 1 is the oldest label. Similarly, in the case of labels having alphabetical values, label A can be the oldest label.

[0086] Preferably, this step can be performed when the pixels have been labeled. This step 108 then consists of going through the equivalence table again and searching for the oldest mother label for each daughter label. In other words, according to the example of [Fig. 17], label 6 points to label 5, and labels 5 and 4 point to label 3. In addition, label 3 points to label 2. Label 2 pointing to itself is a mother label. The resolution step 108 therefore makes it possible to correct the equivalence table so that labels 2 to 6 point to label 2, as illustrated in [Fig. 18].

[0087] After the resolution of the equivalence table, the method 100 comprises a step 109 in which the image is scanned to modify the labels whose equivalence relationship has changed during the step of resolving the equivalence table, so that the labels which have become daughter labels in an equivalence relationship are modified to become identical to their respective mother label. This step makes it possible to group together under the same mother label an entire group of related pixels without a branch being able to be forgotten.

[0088] Providing the acquired image

[0089] As indicated previously, at the end of the method 100, the acquired image comprising the labeled pixels is provided 110 to a third-party device for subsequent processing.

[0090] It is specified that by third-party device, it is understood for example, a computer system, a vehicle using the acquired image or a mobile object using the acquired image to guide itself. Of course this list is not exhaustive and other examples of third-party devices are possible. In addition, by subsequent processing, it is understood for example: a use to guide a vehicle or an object, or for example a use to enable the recognition of an element sought on an image.

[0091] At the end of the method 100, the acquired image can also be provided 110 to a third-party device using the processing carried out to define to which object appearing in the image each pixel of the image belongs. This makes it possible to calculate characteristics of this object, for example its surface. The acquired image can also be provided 110 to a system implementing a “watershed” type method.

[0092] The method 100 described in the invention can be inserted into a processing chain whose purpose is the detection and identification of objects in the image. It is also specified that the optronic device which will be described below can be integrated into the third-party device.

[0093] Optronic device

[0094] According to another aspect, an optronic device is proposed comprising one or more optical sensors making it possible to acquire one or more images.

[0095] Furthermore, the optronic device comprises electronic circuitry (computer system 200) adapted to implement a method 100.

[0096] As shown diagrammatically in [Fig. 19], the computer system 200 may comprise, connected by a communication bus 210: a processor 201; a random access memory 202; a read-only memory 203, for example of the ROM (“Read Only Memory” in English) or EEPROM (“Electrically-Erasable Programmable Read Only Memory” in English) type; a storage unit 204, such as a hard disk HDD (“Hard Disk Drive” in English), or a storage media reader, such as an SD (“Secure Digital” in English) card reader; and an input-output interface manager 205.

[0097] The processor 201 is capable of executing instructions loaded into the RAM 202 from the ROM 203, an external memory, a storage medium (such as an SD card), or a communications network. When the computer system 200 is powered on, the processor 201 is capable of reading instructions from the RAM 202 and executing them. These instructions form a computer program enabling the implementation, by the processor 201, of the method 100.

[0098] All or part of the method 100 can thus be implemented in software form by executing a set of instructions by a programmable machine, for example a DSP (Digital Signal Processor) type processor or a microcontroller, or be implemented in hardware form by a machine or a dedicated component, for example an FPGA (Field Programmable Gate Array) or ASIC (Application-Specified Integrated Circuit) component. Generally speaking, the computer system 200 comprises circuitry electronics adapted and configured to implement, in software and / or hardware form, the method in relation to the computer system 200 in question.

[0099] Computer program product

[0100] According to another aspect, there is also provided a computer program product comprising program code instructions for executing the method 100.

[0101] Storage medium

[0102] According to another aspect, there is also provided a non-transitory storage medium on which the computer program comprising program code instructions for executing the method 100 is stored.

Claims

Claims

1. A method (100) of labeling pixels of an image comprising a plurality of pixels, the image being acquired by an optronic device which comprises electronic circuitry (200) for implementing the method (100) of labeling pixels, the method (100) being characterized in that it comprises at least the following steps: - acquiring (101) at least one batch to be labeled comprising at least two related pixels to be labeled; - determining (102) whether there is at least one pixel already labeled in contact with the batch to be labeled; - if there is at least one pixel already labeled with at least one label in contact with the batch to be labeled, then applying (104) the at least one label to the pixels of the batch to be labeled; - if there is not at least one pixel already labeled in the vicinity of the batch to be labeled, then creating (106) a new label; - providing (110) the acquired image including the labeled pixels to a third party device for further processing.

2. Method (100) according to claim 1, in which if there are several pixels already labeled with different labels in contact with the batch to be labeled (104d), then applying (104b) one of the different labels to the at least one pixel of the batch to be labeled, the applied label being chosen according to a predetermined priority rule.

3. Method (100) according to claim 2, wherein if two related pixels labeled with distinct labels are detected (104d), the two labels are compared (104cl) according to a predetermined equivalence table comprising equivalence relationships between so-called mother labels associated with so-called daughter labels.

4. A method (100) according to claim 3, wherein, the found mother tags associated with at least two daughter tags are compared (104cl) and the oldest mother tag is identified as the mother tag in the equivalence table and the daughter tags in the equivalence table are modified (104c2) to become identical to the identified mother tag.

5. A method (100) according to claim 3, wherein, the mother tags found associated with at least two daughter tags are identical and the mother tag is identified as a mother tag in the equivalence table and the child labels in the equivalence table are modified (104c2) to become identical to the identified parent label.

6. Method (100) according to any one of claims 3 to 5, comprising a step (108) of resolving the equivalence table by assigning to each daughter label the oldest possible corresponding mother label.

7. A method (100) according to claim 6 comprising a step in which the image is scanned to modify (109) the labels whose equivalence relationship has changed in the step of resolving the equivalence table, so that the labels which have become daughter labels in an equivalence relationship are modified to become identical to their respective mother label.

8. Method (100) according to any one of the preceding claims in which the step of acquiring (101) at least one batch to be labeled comprises acquiring several batches which are not in contact.

9. Optronic device characterized in that it comprises electronic circuitry (200) for implementing a pixel labeling method which comprises at least the following steps: - acquiring (101) at least one batch to be labeled comprising at least two related pixels to be labeled; - determining (102) whether there is at least one pixel already labeled in contact with the batch to be labeled; - if there is at least one pixel already labeled with at least one label in contact with the batch to be labeled, then applying (104) the at least one label to the pixels of the batch to be labeled; - if there is not at least one pixel already labeled in the vicinity of the batch to be labeled, then creating (106) a new label; - providing (110) the acquired image comprising the labeled pixels to a third-party device for further processing.

10. A computer program product comprising program code instructions for executing the method (100) according to any one of claims 1 to 8 when said program is executed on a computer.

11. A non-transitory storage medium on which is stored a computer program comprising program code instructions for executing the method (100) according to any one of claims 1 to 8, when said instructions are read from said non-transitory storage medium and executed by a processor.