Method for detecting defects on an aeronautical part

EP4479931A1Pending Publication Date: 2024-12-25SAFRAN SA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
EP2023707128
Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-02-16
Filing Date
2023-01-24
Publication Date
2024-12-25

AI Technical Summary

Technical Problem

Current methods for detecting defects on aeronautical parts using artificial neural networks are ineffective in minimizing false alarms, as existing performance measurements do not accurately select the best training epochs for ensemble methods, leading to suboptimal defect detection and location identification.

Method used

A method involving supervised training of an artificial neural network over multiple epochs, where a matrix of defect probabilities is created for each validation image, and a fault detection curve is determined based on false alarms, allowing for the selection of optimal epochs to minimize false alarms and improve defect detection accuracy.

Benefits of technology

This approach enables the detection of defects on aeronautical parts with reduced false alarms by selecting the best training epochs based on specific performance criteria, enhancing the accuracy of defect identification and location determination.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000029_0000
    Figure 00000029_0000
  • Figure 00000030_0000
    Figure 00000030_0000
  • Figure 00000031_0000
    Figure 00000031_0000
Patent Text Reader

Abstract

One aspect of the invention relates to a method for detecting defects for an aeronautical part, comprising: • Training, during a plurality of epochs, an artificial neural network to supply a defect probability for each pixel of an image, • For each epoch and for each image of a validation set, creating a defect probability matrix based on defect probabilities for each pixel of the image, • For each epoch, determining, for each image of the validation set, based on the defect probability matrices, a curve of defect detection as a function of false alarms, • Determining a set of the N best epochs on the basis of the defect detection curves and of a business criterion, • For each epoch of the N best epochs, inspecting the image to be inspected by applying the artificial neural network with parameters associated with said epoch, so as to obtain an inspected sub-image associated with said training epoch.
Need to check novelty before this filing date? Find Prior Art

Description

DESCRIPTION TITLE: Defect detection method for an aeronautical part TECHNICAL FIELD OF THE INVENTION

[0001] The technical field of the invention is that of defect detection, and more particularly that of automatic defect detection on an aeronautical part. TECHNOLOGICAL BACKGROUND OF THE INVENTION

[0002] With the aim of automatically detecting the presence of defects on an aeronautical part, that is to say, indicating whether defects are present on the aeronautical part and their approximate location, while limiting false alarms, that is to say, not indicating the presence of defects when there are none to avoid the part being rejected, examined by hand, or given for inspection to another system more expensive in terms of power or computing time, it is known to perform a non-destructive testing of the part using an algorithm on one or more images of the part.

[0003] When an aeronautical part has a complex shape, as is the case for engine blades, for example, each image is divided into several sub-images, and the inspection is performed on each sub-image. Two strategies are then possible for finding defects: either a classification strategy, which indicates whether the sub-image contains a defect, or a semantic segmentation strategy, which indicates, on each sub-image, the pixels included in a defect area.

[0004] It is known to perform non-destructive testing of the part using an artificial neural network that calculates a prediction corresponding to a probability that the part is defective.

[0005] To improve robustness, it is also known to use several artificial neural networks and merge their predictions by calculating, for example, the average of the predictions. The artificial neural networks used then have different architectures, or the same architecture but different initializations.

[0006] Another way to improve robustness is to use ensemble methods on a single artificial neural network, but at different training epochs. This has the advantage of training only one artificial neural network. The epochs are selected, for example, according to the cost function used to train the artificial neural network, which penalizes sub-images or misclassified pixels.

[0007] Other indicators classically used to measure detection or semantic segmentation performance could also be used, for example the intersection over the mean union or Mean Intersection over Union (mloU) in English corresponding to the area of ​​overlap of the predicted class with the ground truth class over the total area of ​​the union of the predicted class and the ground truth class, the accuracy corresponding to the percentage of pixels or sub-images of the class correctly predicted among all the predictions of this class, or the recall corresponding to the percentage of pixels or sub-images of the class found among all the pixels or sub-images of the class.

[0008] Whether using the cost function or the classic indicators mentioned above, these measures do not allow for the detection of defects on an aeronautical part while generating as few false alarms as possible. Indeed, these measures will be very detrimental if, for example, only some of the pixels in a defective area are classified as defects, even though the presence of a defect and its approximate location have been correctly detected, as intended. Similarly, if a large area of ​​defects is found across several sub-images, it would be sufficient to classify only some of these sub-images as defective, whereas the measures will be detrimental to the other, incorrectly classified sub-images of this area.Symmetrically for healthy areas, it is identical given the objective, to return an aggregation of poorly classified healthy pixels or sub-images regardless of the size of the aggregation, whereas the measures will be more penalizing for larger aggregations.

[0009] Thus, state-of-the-art measurements are not suitable for selecting the best times within the framework of assembly methods for the automatic detection of the presence of defects on an aeronautical part with a reduced number of false alarms. SUMMARY OF THE INVENTION

[0010] The invention offers a solution to the problems mentioned above, by enabling the detection of the presence of defects on an aeronautical part via an overall method using the optimal epochs of the training of an artificial neural network allowing to limit the number of false alarms.

[0011] A first aspect of the invention relates to a method for detecting defects in an aeronautical part from at least one image to be inspected of the aeronautical part subdivided into a plurality of sub-images, the method comprising the following steps: • Supervised training, over a plurality of training epochs, of an artificial neural network configured to provide a probability of failure for each pixel of a training sub-image of a training image, • For each training epoch and for each image in a validation set, a defect probability matrix is ​​created from a fusion of defect probabilities determined for each pixel of each sub-image of the validation set image. • For each training period, determination, from the probability matrices of faults associated with said training period, of a fault detection curve based on false alarms, • Determination of a set of N best training epochs for the plurality of training epochs based on fault detection curves as a function of false alarms and a business criterion, N being an integer greater than or equal to 1, • For each training epoch of the N best epochs, the artificial neural network is applied to each sub-image of the image to be controlled, with parameters associated with said epoch, to obtain a controlled sub-image associated with said training epoch. • For each sub-image of the image to be checked, fusion of the N sub-images checked to obtain probabilities of presence of defect on the sub-image.

[0012] A "business criterion" is understood to be a curve selection criterion that is based on the user's knowledge of the process according to the invention and / or in function of the application concerned for the method according to the invention. It may, for example, be a criterion based on the area under the curves, a detection density in the curves, a detection pattern such as a high detection density then a low detection density, the regularity of the curves, etc.

[0013] The term "defect" refers to a discontinuity in the properties of the material composing a part or object being inspected, in this case, an aeronautical component. This discontinuity results from an anomaly present in the material. This anomaly can have various origins and be of diverse natures. These anomalies are primarily the consequence of unforeseen events that occur during the manufacturing of the part. These anomalies also occur quite frequently during the use or handling of the part: the material may, for example, have been weakened during the manufacturing process, and its use, generating strong local stresses in the weakened area, or following an impact, results in a defect. The term "defect" therefore covers all forms of anomalies that the material can undergo: material defects, inclusions, cracks, porosity, corrosion, alteration of the material's properties, etc.

[0014] The fault detection curve as a function of false alarms is a set of points connected with the number of false alarms on the x-axis (which can range from 0 to infinity) and the number of correctly detected faults on the y-axis (which can range from 0 to the total number of faults to be detected, which may be zero in some cases).

[0015] Thanks to the invention, the potential presence of defects is detected on each sub-image composing an image of the aeronautical part by fusing the results obtained using an artificial neural network trained at several epochs. These epochs were pre-selected to detect the approximate location of each defect while limiting the number of false alarms. To achieve this, for each selectable epoch, a results matrix is ​​reconstructed for each image in a validation database based on the results provided by the artificial neural network trained during the training epochs for each sub-image composing the image. This allows for a view of the defects at the image scale and thus eliminates some of the biases introduced by sub-image segmentation. A curve representing the number of detections as a function of the number of false alarms is then determined for each epoch.It is then possible to select a set of curves based on a criterion. This allows the selection of curves to meet performance criteria in order to select the optimal training periods for fault detection while minimizing the number of false alarms.

[0016] State-of-the-art approaches only estimate the performance of the neural network on the images or sub-images provided as input to the neural network. Furthermore, in the state of the art, the best training epochs are always determined using these performance calculations on the input data to the neural network, i.e., the images or sub-images. In other words, in the state of the art, performance is calculated on training, validation, or test sets of images or sub-images to evaluate the neural network's performance on the images or sub-images, respectively. In contrast, in the present invention, performance for images is calculated by calculating performance on sub-images.Indeed, the neural network is configured to learn and predict on sub-images, and then the output data from the neural network is used to evaluate the network's performance on the images from which the sub-images originate. According to the invention, performance on the images is therefore not calculated directly but indirectly through the calculation of performance on the sub-images.

[0017] In addition to the characteristics mentioned in the preceding paragraph, the process according to the invention may have one or more additional characteristics from among the following, considered individually or according to all technically possible combinations.

[0018] According to one embodiment, supervised training is performed, for the plurality of epochs, from a training database, the number of training epochs in the plurality of training epochs being determined by a stopping criterion, each training epoch among the plurality of training epochs being associated with a number, the training database comprising a plurality of sub-images for each image in a plurality of training images of aeronautical parts, each sub-image being associated with a fault information for each pixel of the sub-image.

[0019] A "stopping criterion" is a criterion that indicates the condition(s) under which the learning process of an artificial neural network must cease. Examples include a predefined maximum number of training epochs, a stopping threshold to be reached for the cost function of the artificial neural network, the detection of overfitting, etc.

[0020] According to one embodiment, the step of creating a probability of failure matrix associated with each training epoch and associated with each image of the validation set is carried out according to the following sub-steps: • For each sub-image of the validation set image, the artificial neural network, with parameters associated with that epoch, is used on the sub-image to obtain a probability of failure for each pixel of the sub-image. • Association to each pixel of the validation set image, a pixel defect probability calculated from the fusion of each defect probability obtained for the pixel.

[0021] According to one embodiment, the step of determining a fault detection curve as a function of false alarms associated with a training period is carried out according to the following sub-steps: • For each threshold within a plurality of thresholds within a predefined threshold range, and for each image in the validation set: o Thresholding of the defect probability matrix associated with said image and said time by the threshold; o For each set of adjacent pixels in said image of the validation set comprising only pixels associated with a non-zero pixel defect probability in the thresholded defect probability matrix associated with the image: • If no pixel in the pixel set is associated with non-zero fault information in the validation set, increment a number of false alarms associated with the threshold. For each set of adjacent pixels with non-zero fault information in the validation set, if at least one pixel in the matrix of Thresholded defect probability is associated with a non-zero pixel defect probability, incrementing a number of detections associated with the threshold. • Plotting a curve, associated with said time, representing the number of detections as a function of the number of false alarms, including one point per threshold, corresponding to the number of detections and the number of false alarms associated with the threshold.

[0022] Each resulting matrix is ​​thresholded with multiple thresholds to account for a diversity of operating points for each epoch, and in each thresholded resulting matrix, sets of adjacent undamaged pixels are compared with corresponding fault information to calculate the number of detections and the number of false alarms, independently of the number of pixels included in the detection and the size of the false alarm.

[0023] According to one embodiment, for each training epoch among the set of N best training epochs, the control result of a sub-image is a matrix in which each coefficient corresponds to a probability of defect for each pixel of the sub-image.

[0024] According to one embodiment, the artificial neural network is configured to provide, from a sub-image, a probability of defect per pixel of the sub-image, each sub-image in the training database and each sub-image in the validation database being associated with a defect information per pixel of the sub-image.

[0025] Thus, the artificial neural network is trained and tested to perform a semantic segmentation task.

[0026] According to one embodiment, the artificial neural network is configured to provide, from a sub-image, a probability of fault for all pixels of the sub-image, each sub-image of the training database and each sub-image of the validation database being associated with fault information for all pixels of the sub-image.

[0027] Thus, the artificial neural network is trained and tested to perform a classification task.

[0028]

[0029] According to a complementary embodiment of the previous embodiment, the step of determining the fault detection curve further includes a correction step by removing each point corresponding to a threshold for which the number of false alarms associated with the threshold is less than the number of false alarms associated with the immediately following threshold in the predefined threshold range following the Plotting step, the removal step being restarted at each point removed from the lowest remaining threshold.

[0030] Thus, the curves are corrected for aberrant behavior in the number of false alarms when the applied detection threshold fails to properly distinguish image regions with a detected defect from those with a false alarm. Specifically, this corrects the curves when the number of false alarms decreases as the threshold value decreases.

[0031] According to one embodiment, the corrected curve is normalized by adding an initial point associated with a zero number of detections and a zero number of false alarms and adding an end point associated with the maximum number of detections of the corrected curve and a predefined maximum number of false alarms, following the correction step.

[0032] Thus, all curves are first corrected and normalized to make them comparable. The area under each normalized curve is then calculated as a performance measure of the artificial neural network for the given epoch number and used to select a predefined number of optimal epoch numbers for the application in question, namely the detection of faults while minimizing the number of false alarms.

[0033] According to one embodiment, the thresholded default probability matrix is ​​smoothed.

[0034] Thus, for example, adjacent pixel groups not exceeding a predefined size are eliminated and, for example, small holes in adjacent pixel groups are filled.

[0035] According to one embodiment, the business criterion for determining a set of the N best training epochs of the plurality of training epochs as a function of the fault detection curves is the area under the curve.

[0036] According to one embodiment, the detection of a defect for an image to be checked is done by: • For each of these epochs and for each sub-image of the subdivided image to be controlled, use on the sub-image, of the artificial neural network with the set of parameters associated with said epoch, to obtain a probability of defect for each pixel of the sub-image; • For each pixel of each sub-image of the subdivided image to be checked, fusion of the defect probabilities obtained for the pixel for each epoch corresponding to a selected curve, to obtain a defect prediction for the sub-image.

[0037] According to one embodiment, each pixel of an image is associated with a position in the image and the step of creating the probability matrix of defects for an image is further carried out from the position associated with each pixel of the image.

[0038] Thus, the defect probability matrix corresponds to the image of the validation database in which the color or grayscale information associated with each pixel is replaced by the pixel defect probability.

[0039] According to one embodiment, when creating the probability defect matrix for an image, a fusion is performed, for each pixel of the image associated with a plurality of probability defects, of the plurality of probability defects associated with the pixel.

[0040] Thus, for each pixel belonging to an overlap area between several sub-images, the pixel defect probability associated with the pixel takes into account the defect probability obtained for the pixel for each sub-image.

[0041] According to one embodiment, the defect probabilities for each sub-image of the image to be checked obtained at the end of the step are merged in order to obtain defect probabilities for the image to be checked.

[0042] According to one embodiment, the business criterion for selecting a set of curves is a predetermined number of curves corresponding to the number of curves with the highest area under the curve.

[0043] According to one embodiment, the artificial neural network is configured to provide, from a sub-image, a probability of fault for all pixels of the sub-image, each sub-image of the training database and each sub-image of the validation database being associated with fault information for all pixels of the sub-image.

[0044] Thus, the artificial neural network is trained and tested to perform a classification task. In this case, all the coefficients of the result matrix associated with the sub-image will be equal to the probability of error provided by the network for that sub-image.

[0045] According to an embodiment compatible with previous embodiments, the fusion of the defect probabilities obtained for a pixel is carried out by averaging the defect probabilities obtained for the pixel.

[0046] Another aspect of the invention relates to a computer program product comprising instructions which, when the program is executed on a computer, cause the computer to implement the steps of the process according to the invention.

[0047] The invention and its various applications will be better understood by reading the following description and examining the accompanying figures. BRIEF DESCRIPTION OF THE FIGURES

[0048] The figures are presented for illustrative purposes only and are in no way limiting to the invention. • Figure 1 shows a schematic representation of an image of an aeronautical part used by a method according to the invention. • Figure 2 is a synoptic diagram illustrating the sequence of steps of the process according to the invention. • Figure 3 represents two curves obtained at the end of an eighth step of the process according to the invention. • Figure 4 shows two examples of curves obtained using the method according to the invention. DETAILED DESCRIPTION

[0049] Unless otherwise specified, the same element appearing on different figures has a unique reference.

[0050] The invention relates to a method for detecting defects on an aeronautical part to be inspected.

[0051] Defect detection is automatic, meaning that it does not require any human intervention during the final use phase of the system, and is carried out from one or more images of the aeronautical part, for example taken from different viewing angles.

[0052] Each image of the aeronautical part is previously acquired by a camera and can be in color or in greyscale.

[0053] [Fig. 1] Figure 1 shows a schematic representation of image 200 of the aeronautical part.

[0054] The image 200 of the aeronautical part comprises a set of pixels 2010 and is subdivided into a plurality of sub-images 201 each comprising a subset of pixels 2010 of the pixel set 2010.

[0055] Figure 1 shows an image 200 containing a set of 36 pixels 2010.

[0056] The plurality of sub-images 201 may or may not have overlapping areas between them.

[0057] Figure 1 shows two sub-images 201, each containing a subset of 9 pixels and overlapping on a pixel 2010 shown in hatching.

[0058] The aeronautical part is preferably of complex shape, such as an engine blade, different types of blade foot attachment, an aircraft fairing, etc.

[0059] [Fig. 2] Figure 2 is a synoptic diagram illustrating the sequence of steps of process 100 according to the invention.

[0060] A first step 101 of the method 100 according to the invention consists of training in a supervised manner an artificial neural network on a training database, to obtain an artificial neural network capable of providing from a sub-image 201, a probability of defect for each pixel 2010 of the sub-image 201.

[0061] The probability of defect associated with a 2010 pixel expresses the probability that the 2010 pixel belongs to a defect and is between 0 and 1, or between 0 and 100% if expressed as a percentage.

[0062] Supervised training, also known as supervised learning, allows an artificial neural network to be trained for a predefined task by updating its parameters to minimize a cost function. This cost function represents the error between the output provided by the artificial neural network and the true output—that is, what the artificial neural network should produce as output to complete the predefined task on a given input. Thus, based on the neural network's hyperparameters set at the beginning of training, each time a batch of M examples is provided to the artificial neural network, its parameters are updated. Hyperparameters include, for example, the number of layers in the network, the number of neurons per layer, the cost function to be optimized, the predefined parameters of the optimization algorithm, and so on. Parameters include, for example, the weights of the neurons.

[0063] A training database therefore contains input data, each associated with a real output data.

[0064] The training database contains a plurality of 200 images of aeronautical training parts, each subdivided into a plurality of sub- images 201, each sub-image 201 being associated with a defect information for each pixel 2010 of the sub-image 201.

[0065] Thus, the input data is the 201 sub-images and the true output data is the default information for each 2010 pixel of the sub-image.

[0066] The defect information associated with a 2010 pixel is equal to 0 if the 2010 pixel does not belong to a defect and to 1 or 100% if the 2010 pixel belongs to a defect.

[0067] The training aeronautical parts are of the same type as the aeronautical part to be inspected, i.e., if the aeronautical part to be inspected is an aircraft engine blade, each training aeronautical part is also an aircraft engine blade.

[0068] The training database contains, for example, 200 images.

[0069] The artificial neural network can be trained for a classification task and then provides a unique probability of fault for the set of pixels 2010 of the subimage 201. Each subimage 201 of the training database is then associated with fault information for the set of pixels 2010 of the subimage 201.

[0070] The artificial neural network trained for the classification task is, for example, a ResNet residual artificial neural network.

[0071] The artificial neural network can also be trained for a semantic segmentation task and then provides a 2010 pixel-per-pixel fault probability of sub-image 201. Each sub-image 201 in the training database is then associated with a 2010 pixel-per-pixel fault information of sub-image 201.

[0072] Examples of artificial neural networks trained for the semantic segmentation task include LinkNet, U-Net, and FDNN.

[0073] The training of the artificial neural network is performed by running a certain number of epochs on the training dataset, for example, until a predefined stopping criterion is met. For example, a stopping criterion could be a predefined number of epochs, such as 200 epochs. Another example would be to train the network for a given period of time, such as one week. Another example would be to train the network until overfitting appears on the validation set (for example, the cost function continues to decrease on the training set, but starts to increase for a predefined number of epochs on the validation set).

[0074] The term "training an artificial neural network by performing N epochs on a database containing M data points" refers to the following iterative process: in the first epoch, the M data points from the training database are provided (either in order or randomly); in the second epoch, the M data points from the training database are provided (either in the same order or randomly relative to the previous epoch), and so on, until the nth epoch, the M data points from the training database are provided again (either in the same order or randomly relative to the previous epoch). Thus, the M data points from the database are provided N times as input to the artificial neural network during its training, with each of the M data points being provided only once in each epoch.

[0075] The plurality of epoch numbers includes, for example, each epoch number realized up to the stopping condition; that is, if the stopping condition is triggered at epoch number 300, the plurality of epoch numbers includes, for example, each epoch number between 1 and 300.

[0076] For example, the hyperparameters and parameters of the artificial neural network were saved at the end of each training epoch during the first step 101.

[0077] A second step 102 of the process 100 according to the invention is carried out for each training epoch, and for each image of a validation set V1, each image 200 of the validation set V1 being subdivided into a plurality of sub-images 201.

[0078] The validation set is understood to be a database of 200 validation images, the 200 validation images being used for the validation of learning during the second step 102 of the process 100 according to the invention.

[0079] The validation database contains a plurality of 200 validation images of aeronautical parts, each subdivided into a plurality of sub- images 201, each validation sub-image 201 being associated with a fault information for each pixel 2010 of the sub-image 201.

[0080] The validation aeronautical parts are of the same type as the aeronautical part to be checked.

[0081] The validation database contains, for example, 200 validation images.

[0082] In the case where the artificial neural network is trained for a classification task, each sub-image 201 of the validation image database is then associated with a fault information for all pixels 2010 of the sub-image 201.

[0083] In the case where the artificial neural network is trained for a semantic segmentation task, each sub-image 201 of the validation image database is then associated with a defect information per pixel 2010 of the sub-image 201.

[0084] The second step 102 of the method 100 according to the invention consists, for each training epoch and for each image 200 of the validation set V1, in creating a matrix of defect probabilities from a fusion of the defect probabilities determined for each pixel 2010 of each sub-image 201 of the image 200 of the validation set, the defect probabilities being determined during a sub-step 1021 by applying the artificial neural network to each sub-image 201 of the image 200 of the validation set, the artificial neural network being applied with parameters associated with said training epoch.

[0085] During the second step 102, each pixel 2010 of each sub-image 201 of the validation database and therefore each pixel 2010 of each validation image 200 of the validation image database, is for example associated with at least one probability of defect provided by the trained artificial neural network.

[0086] A 2010 pixel can be associated with a plurality of defect probabilities if the 2010 pixel belongs to an overlap area between several 201 sub-images, as is the case for the hatched 2010 pixel in Figure 1.

[0087] The defect probability matrix associates with each pixel 2010 of the validation image considered, a pixel defect probability obtained from each defect probability associated with pixel 2010 at the end of the second step 102 for the number of epochs considered.

[0088] For each 2010 pixel associated with a unique probability of defect at the end of the second step 102, the pixel defect probability is equal to the unique associated defect probability.

[0089] For each pixel 2010 associated with a plurality of defect probabilities at the end of the second step 102, the second step includes for example a sub-step 1022 consisting of obtaining the defect probability of pixel by merging the plurality of defect probabilities associated with pixel 2010.

[0090] The fusion is for example performed by calculating the average of the plurality of defect probabilities associated with pixel 2010. The defect probability matrix corresponds to the validation image 200 in which for each pixel 2010, the color or gray level information associated with pixel 2010 is replaced by the pixel defect probability, that is to say that the defect probability matrix is ​​arranged according to the position associated with each pixel 2010 in the validation image 200.

[0091] The defect probability matrix can therefore be likened to a greyscale image in which a pixel defect probability of 0 is represented in black and a pixel defect probability of 1 or 100% is represented in white.

[0092] At the end of the second step 102, each validation image 200 of the validation database is associated with a probability of failure matrix for the training epoch considered.

[0093] A third step 103 of the process 100 according to the invention consists, for each training period, in determining from the probability matrices calculated in step 102 associated with said period, a fault detection curve as a function of false alarms.

[0094] Step 103, determining a detection curve for each training epoch, may include a plurality of substeps.

[0095] The predefined threshold interval is equal to [0; 1] or to [0; 100] if the probabilities of default are expressed as a percentage.

[0096] The plurality of thresholds is chosen, for example, within a predefined threshold range, such that the thresholds are evenly spaced. If the predefined threshold range is [0, 1], the plurality of thresholds is chosen from 0.1 to 0.9 in increments of 0.1, thus comprising 9 thresholds. It is also possible to define the plurality of thresholds with variable-sized intervals, particularly if the curve varies significantly around certain values, for example, to better represent the criticality of the values. Furthermore, the plurality of thresholds can be defined based on business criteria.

[0097] A first sub-step 1031 of step 103 of the process 100 according to the invention consists, for each defect probability matrix obtained at the end of the second step 102, in thresholding the considered defect probability matrix by the considered threshold, that is to say, replacing each pixel defect probability of the defect probability matrix less than or equal to the threshold by 0 and each pixel defect probability of the defect probability matrix strictly greater than the threshold by 1.

[0098] The thresholded defect probability matrix can therefore be likened to a binary image in which a pixel defect probability of 0 is represented in black and a pixel defect probability of 1 or 100% is represented in white.

[0099] At the end of the first sub-step 1031, each image 200 of the validation database is associated with a thresholded probability of defect matrix for the number of epochs considered.

[0100] The method 100 according to the invention may include a step consisting, for each thresholded defect probability matrix obtained at the end of the first sub-step 1031, of smoothing the thresholded defect probability matrix considered, for example by morphological opening or closing operations.

[0101] A second substep 1032 of step 103 of process 100 according to the invention is then carried out. This substep 1032 consists of incrementing a number of false alarms associated with the threshold considered, the number of false alarms associated with the threshold being initially zero, each time condition C1 is met, it is applied to each set of adjacent 2010 pixels associated with a non-zero pixel defect probability after the thresholding performed in the first substep 1031 and any subsequent smoothing. Condition C1 is verified if each 2010 pixel in the considered set of adjacent 2010 pixels associated with a non-zero pixel defect probability after the thresholding performed in the first substep 1031 and any subsequent smoothing is associated with zero defect information in the validation database. Each set of adjacent 2010 pixels must, for example, have at least 4 connectivity.Thus, if for example in the entire validation base we obtain 200 sets of adjacent pixels 2010 associated with a non-zero probability of pixel defect after the thresholding carried out in the first substep 1031 and possibly the smoothing carried out afterward and if condition C1 is carried out 100 times, at the end of the second substep 1032 the number of false alarms associated with the threshold considered will be 100.

[0102] A third substep 1033 of step 103 of the method according to the invention is then carried out. This substep 1033 consists of incrementing a number of detections associated with the considered threshold, the number of detections associated with the threshold being initially zero, each time a condition C2 is met, by applying it to each set of adjacent 2010 pixels associated with non-zero defect information in the validation database. Condition C2 is verified if at least one pixel in the considered set of adjacent pixels associated with non-zero defect information in the validation database is also associated with a non-zero pixel defect probability after the thresholding performed in the first substep 1031 and possibly the subsequent smoothing. Each set of adjacent 2010 pixels must, for example, have a connectivity of at least 4.Thus, if for example in the validation database there are 200 sets of adjacent 2010 pixels associated with non-zero fault information in the validation database and condition C2 is fulfilled 100 times, at the end of the third substep 1033 the number of detections associated with the threshold considered will be 100.

[0103] At the end of the second sub-step 1032 and the third sub-step 1033, each threshold is associated with a number of detections and a number of false positives. alarms having been obtained from each default probability matrix created for the considered epoch number.

[0104] A fourth sub-step 1034 of step 103 of process 100 according to the invention consists of plotting, for the number of epochs considered, a curve representing the number of detections as a function of the number of false alarms.

[0105] [Fig. 3] Figure 3 represents a first 1081 curve and a second 1081 curve obtained at the end of the fourth substep 1034 for respectively a first training epoch number among the plurality of training epochs and a second training epoch number among the plurality of training epochs.

[0106] Curve 1081 includes a point 1082 for each threshold considered, corresponding to the number of detections and the number of false alarms associated with the threshold obtained at the end of the second sub-step 1032 and the third sub-step 1033 of step 103 of process 100 according to the invention.

[0107] In figure 3, the first curve 1081 and the second curve 1081 each have 8 points 1082.

[0108] According to a secondary embodiment, a fifth substep 1035 of step 103 of process 100 according to the invention consists of correcting the curve 1081 obtained in the fourth substep 1034 for the number of epochs considered.

[0109] The correction is performed by removing each point 1082 corresponding to a threshold for which the number of false alarms is lower than the number of false alarms associated with the immediately following threshold within the predefined threshold range (the nominal behavior is that the number of false alarms decreases as the threshold value increases). The removal process must therefore be carried out iteratively, starting with the point corresponding to the lowest threshold. The removal process is restarted from the lowest remaining threshold as soon as a point has been removed, until no more points need to be removed, and considering the immediately following threshold from among those not removed.

[0110] For example, the plurality of thresholds could include a first threshold equal to 0.3 associated with a number F1 false alarms, a second threshold equal to 0.6 associated with a number F2 false alarms, a third threshold equal to 0.7 associated with a number F3 False alarms, a fourth threshold of 0.8 associated with a false alarm count of F4, and a fifth threshold of 0.9 associated with a false alarm count of F5 such that F4>F2>F1>F3>F5. Since the point associated with the first threshold has fewer false alarms than the point associated with the second threshold, the point associated with the first threshold is deleted. Thus, since one point has been deleted, the lowest remaining threshold point is chosen to restart the deletion process. In this example, the lowest remaining threshold point is the point associated with the second threshold. Because the point associated with the second threshold has more false alarms than the point associated with the third threshold, it is not deleted. Conversely, the point associated with the third threshold has fewer false alarms than the point associated with the fourth threshold, so the point associated with the third threshold is deleted.With one point deleted, the lowest remaining threshold point is chosen to restart the deletion process. The lowest remaining threshold point is the point associated with the second threshold. Since the point associated with the second threshold has fewer false alarms than the point associated with the fourth threshold, the point associated with the second threshold is deleted. Again, the lowest remaining threshold point is chosen to restart the deletion process. In this case, it is the point associated with the fourth threshold, which has more false alarms than the point associated with the fifth threshold. Therefore, the fourth threshold is not deleted. Because the fifth threshold is the highest threshold, it has no point associated with an immediately higher threshold, and therefore it is not deleted.

[0111] In Figure 3, the points 1082 which will be removed from the first curve 1081 and the second curve 1082 during the correction step are circled.

[0112] According to a secondary embodiment, a sixth substep 1036 of step 103 of process 100 according to the invention consists of normalizing the corrected curve 1081 obtained in the fifth substep 1035 for the number of epochs considered.

[0113] [Fig. 4] Figure 4 represents the first curve 1081 and the second curve 1081 of Figure 3, obtained at the end of the sixth sub-step 1036.

[0114] Normalization is achieved by adding to curve 1081 an initial point 1083 associated with a zero number of detections and a zero number of false alarms and an end point 1084 associated with the maximum number of detections of the corrected curve 1081 obtained in the fifth sub-step 1035 and a predefined maximum number of false alarms.

[0115] The maximum number of predefined false alarms is, for example, equal to the maximum number of false alarms by comparing the curves obtained in the fourth step 1034 or in the fifth sub-step 1035 for each number of epochs considered.

[0116] At the end of the sixth sub-step 1036, a normalized curve 1081 is obtained for each epoch number of the plurality of epoch numbers.

[0117] A fourth step 104 of the process 100 according to the invention consists of determining a predefined number N of the best training epochs among the plurality of training epochs according to the fault detection curves 1081 and according to a business criterion.

[0118] The determination of the N best epochs can be performed by selecting N 1081 fault detection curves based on the business criterion. The selection can be performed, for example, automatically via a selection algorithm or by an operator. The business criterion for making the selection is, for example, based on the operator's knowledge and / or the application in question. The criterion can be based on the area under the curves, the detection density within the curves, a detection pattern such as a high detection density followed by a low detection density, the regularity of the curves, etc.

[0119] According to a secondary embodiment, a substep 1041 of the determination step 104 consists of calculating the area under each normalised curve 1081 obtained at the end of the sixth substep 1036 of step 103 of the process 100 according to the invention and selecting a predefined number N of curves 1081 corresponding to the curves 1081 having the highest N calculated areas.

[0120] N, for example, is between 2 and 50.

[0121] In Tissue of the fourth stage 104, the N best epochs corresponding to the N selected curves were determined and selected. Determining an epoch means selecting the state of the network at that epoch. This yields N sets of known parameters associated with the N epochs, which can then be loaded into the network.

[0122] A fifth step 105 of the process 100 according to the invention is carried out for each training epoch of the set of the number N of best training epochs.

[0123] The fifth step 105 consists, for each training epoch of the set of the number N best epochs, in an application 105, on each sub-image 201 of the image 200 to be controlled, of the artificial neural network with the parameters associated with said epoch, to obtain a result matrix of the controlled sub-image associated with said training epoch. Each coefficient of the result matrix of a controlled sub-image can correspond to a probability of defect of a pixel of the sub-image 201.

[0124] In Tissue of the fifth stage 105, each pixel 2010 of the sub-image 201 is associated with a plurality of defect probabilities comprising at least one defect probability per selected epoch number.

[0125] A sixth step 106 of the process 100 according to the invention consists, for each sub-image 201 of the image to be controlled, in merging result matrices of the controlled sub-images, each result matrix of a controlled sub-image being obtained from the fifth step 105.

[0126] The fusion is for example performed by calculating the average of the coefficients of each result matrix corresponding to the controlled sub-image, the result of the fusion being a matrix in which each coefficient is equal to or depends on the average of each coefficient of the same position of each result matrix of a controlled sub-image.

[0127] In the sixth step of Tissue 106, a defect prediction is obtained for each sub-image 201 of the image 200 to be checked, corresponding to the probability that a defect is located in sub-image 201. This probability is given by pixel per pixel (in the case of semantic segmentation), or given for the entire sub-image (in the case of classification).

[0128] An optional seventh step 107 consists of reconstructing a result matrix of the controlled image 200 by merging the result matrices of the sub-images 201 obtained at the end of the sixth step 106. In this case the defect prediction is obtained for the image 200 to be controlled, corresponding to the fact that a defect is present in the image 200. This probability is given pixel by pixel.

Claims

DEMANDS

1. A method (100) for detecting defects in an aeronautical part from at least one image (200) to be inspected of the aeronautical part subdivided into a plurality of sub-images (201), the method (100) comprising the following steps: - Supervised training (101), over a plurality of training epochs, of an artificial neural network configured to provide a probability of failure for each pixel (2010) of a training sub-image (201) of a training image (200), - For each training epoch and for each image (200) of a validation set (V1), creation (102) of a defect probability matrix from a fusion of defect probabilities determined for each pixel (2010) of each sub-image (201) of the image (200) of the validation set (V1), - For each training period, determination (103), from the probability matrices of faults associated with said training period, of a fault detection curve as a function of false alarms, - Determination (104) of a set of the N best training epochs of the plurality of training epochs as a function of fault detection curves as a function of false alarms and a business criterion, N being an integer greater than or equal to 1, - For each training epoch of the N best epochs, application (105), on each sub-image (201) of the image (200) to be controlled, of the artificial neural network with parameters associated with said epoch, to obtain a controlled sub-image associated with said training epoch, - . For each sub-image (201) of the image (200) to be checked, fusion (106) of the result matrices of the N sub-images checked to obtain probabilities of presence of defect on the sub-image (201).

2. A method (100) according to claim 1, wherein the supervised training is carried out, for the plurality of epochs, from a training database, the number of training epochs in the plurality of training epochs being determined by a stopping criterion, each training epoch among the plurality of training epochs being associated with a number, the training database comprising a plurality of sub-images (201) for each image (200) of a plurality of training images (200) of aeronautical parts, each sub-image (201) being associated with a fault information for each pixel (2010) of the sub-image (201). [Claims] A method (100) according to any one of the preceding claims, wherein the step of creating (102) a probability of defect matrix associated with each training epoch and associated with each image (200) of the validation set (V1) is carried out according to the following substeps: o For each sub-image (201) of the image (200) of the validation set (V1), use (1021) on the sub-image (201), of the artificial neural network with the parameters associated with said epoch, to obtain a probability of defect for each pixel (2010) of the sub-image (201), o Association (1022) to each pixel (2010) of the image (200) of the validation set (V1), a pixel defect probability calculated from the fusion of each defect probability obtained for the pixel (2010);

4. A method (100) according to any one of the preceding claims, wherein the step (103) of determining a fault detection curve as a function of false alarms associated with a training period is carried out according to the following substeps: o For each threshold of a plurality of thresholds within a predefined threshold range, and for each image (200) of the validation set (V1): Threshold (1031) of the default probability matrix associated with said image (200) and said time by the threshold; • For each set of adjacent pixels (2010) of said image (200) of the validation set (V1) comprising only pixels associated with a non-zero pixel defect probability in the thresholded defect probability matrix associated with image (200): ■ If no pixel (2010) of the pixel set (2010) is associated with a non-zero fault information in the validation set (V1), increment (1032) a number of false alarms associated with the threshold; • For each set of adjacent non-zero fault information pixels in the validation set (V1), if at least one pixel (2010) of this pixel set is associated with a non-zero pixel fault probability in the thresholded fault probability matrix, increment (1033) a number of detections associated with the threshold; o Plot (1034) a curve (1081), associated with said epoch, representing the number of detections as a function of the number of false alarms, comprising a point (1082) per threshold, corresponding to the number of detections and the number of false alarms associated with the threshold; [Claims] A method (100) according to any one of the preceding claims, in which, for each training epoch among the set of N best training epochs, the control result of a subimage is a matrix in which each coefficient corresponds to a probability of defect for each pixel (2010) of the subimage (201).

6. A method (100) according to any one of the preceding claims, wherein the artificial neural network is configured to provide, from a sub-image (201), a defect probability per pixel (2010) of the sub-image (201), each sub-image (201) of the training database and each sub-image (201) of the validation database (V1) being associated with a defect information per pixel (2010) of the sub-image (201). Tl

7. A method (100) according to any one of claims 1 to 5, wherein the artificial neural network is configured to provide, from a sub-image (201), a probability of defect for all pixels (2010) of the sub-image (201), each sub-image (201) of the training database and each sub-image (201) of the validation database (V1) being associated with defect information for all pixels (2010) of the sub-image (201). [Claims] A method (100) according to any one of the preceding claims, wherein the step of determining the fault detection curve (103) further comprises a correction step (1035) by removing each point corresponding to a threshold for which the number of false alarms associated with the threshold is less than the number of false alarms associated with the immediately following threshold in the predefined threshold range following the Plotting step, the removal step being restarted at each point removed from the lowest remaining threshold.

9. Method (100) according to the preceding claim, wherein the corrected curve (1081) is normalized by adding an initial point (1083) associated with a zero number of detections and a zero number of false alarms and adding an end point (1084) associated with the maximum number of detections of the corrected curve (1081) and a predefined maximum number of false alarms, following the correction step (1035).

10. Method (100) according to the preceding claim wherein the business criterion for the determination (104) of a set of the N best training epochs of the plurality of training epochs as a function of the fault detection curves (1081) is the area under the curve (1081).

11. A method (100) according to any one of the preceding claims, wherein each pixel (2010) of an image (200) is associated with a position in the image (200) and the step (102) of creating the probability matrix of defects for an image (200) is further carried out from the position associated with each pixel (2010) of the image (200).

12. A method (100) according to any one of the preceding claims, wherein, during the creation of the defect probability matrix for an image (200), a fusion is performed, for each pixel (2010) of the image (200) associated with a plurality of defect probabilities, of the plurality of defect probabilities associated with the pixel (2010).

13. A method (100) according to any one of the preceding claims, wherein the defect probabilities for each sub-image (201) of the image to be checked (200) obtained at the end of step (106) are merged (107) in order to obtain defect probabilities for the image to be checked (200).