EP4479931A1 - Procédé de détection de défauts sur une pièce aéronautique - Google Patents
Procédé de détection de défauts sur une pièce aéronautiqueInfo
- Publication number
- EP4479931A1 EP4479931A1 EP23707128.7A EP23707128A EP4479931A1 EP 4479931 A1 EP4479931 A1 EP 4479931A1 EP 23707128 A EP23707128 A EP 23707128A EP 4479931 A1 EP4479931 A1 EP 4479931A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- image
- sub
- training
- pixel
- threshold
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30164—Workpiece; Machine component
Definitions
- TITLE Process for detecting defects on an aeronautical part
- the technical field of the invention is that of the detection of defects, and more particularly that of the automatic detection of defects on an aeronautical part.
- each image is divided into several sub-images and the check is carried out for each sub-image.
- Two strategies are then possible to find the defects, either a classification strategy consisting in indicating whether the sub-image has a defect, or a semantic segmentation strategy consisting in indicating on each sub-image, the pixels included in a defect zone .
- the invention offers a solution to the problems mentioned above, by making it possible to detect the presence of defects on an aeronautical part via an ensemble method using the optimal epochs of the training of an artificial neural network making it possible to limit the number of false alarms.
- a first aspect of the invention relates to a fault detection method for 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 :
- N being an integer greater than or equal to 1
- a “business criterion” is understood to mean a criterion for selecting curves which is based on the knowledge of the user of the method according to the invention and/or in depending on 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 low detection density, regularity of the curves, etc.
- the term "defect” means a discontinuity in the properties of the material making up a part or an inspected object, in this case the aeronautical part. This discontinuity results from an anomaly present in the material. This anomaly can have various origins and be of varied nature. These anomalies are mainly the consequence of hazards that occur during the manufacture of the part. These anomalies also occur quite frequently during the use of the part or its handling: the material may, for example, have been weakened during the manufacturing process and its use, generating strong local stresses at the level of the weakened zone, or following an impact, generates a defect. The term “defect” therefore covers all forms of anomalies that the material may suffer: material defect, inclusion, crack, porosity, corrosion, alteration of the properties of the material, etc.
- Fault detection curve as a function of false alarms is understood to mean a set of points connected with the number of false alarms on the abscissa (which may range from 0 to infinity) and the number of faults correctly detected on the ordinate (which may go from 0 to the total number of faults to be detected, which can be zero in some cases).
- the possible presence of defects is detected on each sub-image composing an image of the aeronautical part, by merging the results obtained using an artificial neural network taken at several periods of 'training. These epochs were pre-selected to detect the approximate location of each fault while limiting the number of false alarms.
- a results matrix is reconstituted for each image of a validation database from the results provided by the artificial neural network trained during the training epochs for each sub-image composing the image, which makes it possible to obtain a view of the defects on the scale of the image and thus to remove certain biases introduced by the division into sub-images.
- 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 according to a criterion job. This makes it possible to select the curves to meet performance criteria in order to select the optimal training epochs for the detection of faults by minimizing the number of false alarms.
- the neural network is configured to learn and predict on sub-images, then the data produced at the output of the neural network is used to evaluate the performance of the neural network on the images from which the sub-images come. .
- the performances on the images are therefore not calculated directly but indirectly by the calculation of the performances on the sub-images.
- the method according to the invention may have one or more additional characteristics among the following, considered individually or according to all technically possible combinations.
- the supervised training is carried out, for the plurality of epochs, from a training database, the number of training epochs of the plurality of epochs of the training 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 of a plurality of training images of aeronautical parts, each sub-image being associated with defect information for each pixel of the sub-image.
- a “stopping criterion” is called a criterion which makes it possible to provide information on the condition or conditions for stopping the learning process of the artificial neural network. It may for example be 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 over-learning, etc.
- the step of creating a default probability matrix associated with each training epoch and associated with each image of the validation set is done according to the following sub-steps:
- the step of determining a fault detection curve according to the false alarms associated with a training period is done according to the following sub-steps:
- Each result matrix obtained is thresholded with several thresholds to take into account a diversity of operating points for each epoch, and in each thresholded result matrix, the sets of non-damaged adjacent pixels are compared with the corresponding defect information. to calculate the number of detections and the number of false alarms, independent of the number of pixels included in the detection and the size of the false alarm.
- the control result of a sub-image is a matrix, each coefficient of which corresponds to a probability of default for each pixel of the sub-image.
- 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 of the database of training and each sub-image of the validation database being associated with defect information per pixel of the sub-image.
- the artificial neural network is trained and tested to perform a semantic segmentation task.
- the artificial neural network is configured to provide, from a sub-image, a probability of default for all the pixels of the sub-image, each sub-image of the base of training data and each sub-image of the validation database being associated with defect information for all the pixels of the sub-image.
- the artificial neural network is trained and tested to perform a classification task.
- the step of determining the fault detection curve further comprises a step of correction by deletion of 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 interval following the Plot step, the deletion step being restarted at each point deleted from the lowest remaining threshold.
- the curves are corrected for an aberrant behavior of the number of false alarms when the detection threshold applied does not make it possible to correctly discern the regions of the images with a detected defect and those with a false alarm.
- this makes it possible to correct the curves when the number of false alarms decreases while the value of the threshold decreases.
- 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 a final point associated with the maximum number of detections of the corrected curve and a predefined maximum number of false alarms, depending on the correction step.
- the thresholded default probability matrix is smoothed.
- 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 .
- the detection of a defect for an image to be checked is done by:
- each pixel of an image is associated with a position in the image and the step of creating the matrix of fault probabilities for an image is also carried out from the associated position. at each pixel of the image.
- the defect probability matrix corresponds to the image of the validation database in which the color or gray level information associated with each pixel is replaced by the pixel defect probability.
- a fusion is carried out, for each pixel of the image associated with a plurality of fault probabilities, of the plurality of probabilities defect associated with the pixel.
- the pixel fault probability associated with the pixel takes into account the fault probability obtained for the pixel for each sub-image.
- the fault probabilities for each sub-image of the image to be checked obtained at the end of the step are merged in order to obtain fault probabilities for the image to be checked.
- the business criterion for the selection of a set of curves is a predetermined number of curves corresponding to the number of curves whose area under the curve is the highest.
- the artificial neural network is configured to provide, from a sub-image, a probability of default for all the pixels of the sub-image, each sub-image of the base of training data and each sub-image of the validation database being associated with defect information for all the pixels of the sub-image.
- the artificial neural network is trained and tested to perform a classification task.
- all the coefficients of the result matrix associated with the sub-image will be equal to the default probability provided by the network for this sub-image.
- the merging of the fault probabilities obtained for a pixel is carried out by averaging the fault probabilities obtained for the pixel.
- Another aspect of the invention relates to a computer program product comprising instructions which, when the program is executed on a computer, lead the latter to implement the steps of the method according to the invention.
- Figure 1 shows a schematic representation of an aeronautical part image used by a method according to the invention.
- Figure 2 is a block diagram illustrating the sequence of steps of the method according to the invention.
- the invention relates to a method for detecting defects on an aeronautical part to be inspected.
- the detection of faults is automatic, that is to say 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 part. aeronautics, for example taken with different viewing angles.
- Each image of the aeronautical part is acquired beforehand by a camera and can be in color or in grayscale.
- Figure 1 shows a schematic representation of the image 200 of the aeronautical part.
- 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 set of pixels 2010.
- Figure 1 is shown an image 200 comprising a set of 36 pixels 2010.
- the plurality of sub-images 201 may or may not have areas of overlap between them.
- FIG. 1 two sub-images 201 each comprising a subset of 9 pixels and overlapping on a pixel 2010 shown hatched.
- the aeronautical part is preferably of complex shape, such as an engine blade, different types of blade root attachment, an aircraft fairing, etc.
- Figure 2 is a block diagram illustrating the sequence of steps of the method 100 according to the invention.
- a first step 101 of the method 100 according to the invention consists in 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 default probability for each pixel 2010 of sub-image 201.
- the defect probability associated with a pixel 2010 expresses the probability that the pixel 2010 belongs to a defect and is between 0 and 1, or between 0 and 100% if it is expressed as a percentage.
- Supervised training otherwise called supervised learning, makes it possible to train an artificial neural network for a predefined task, by updating its parameters so as to minimize a cost function corresponding to the error between the data of output provided by the artificial neural network and the real output datum, i.e. what the artificial neural network should output to fulfill the predefined task on a certain input datum.
- the hyperparameters are, for example, the number of layers of the network, the number of neurons per layer, the cost function to be optimized, the predefined parameters of the optimization algorithm, etc.
- the parameters are, for example, the weights of the neurons.
- a training database therefore comprises input data, each associated with a real output data.
- the training database comprises a plurality of images 200 of aeronautical training parts, each subdivided into a plurality of sub-images. images 201 , each sub-image 201 being associated with defect information for each pixel 2010 of the sub-image 201 .
- the input data are the sub-images 201 and the real output data are the fault information for each pixel 2010 of the sub-image.
- the defect information associated with a pixel 2010 is equal to 0 if the pixel 2010 does not belong to a defect and to 1 or 100% if the pixel 2010 belongs to a defect.
- the aeronautical drive parts are of the same type as the aeronautical part to be checked, that is to say that if the aeronautical part to be checked is an aircraft engine blade, each aeronautical drive part is also an aircraft engine blade.
- the training database comprises for example 200 images 200.
- the artificial neural network can be trained for a classification task and then provides a single default probability for all the pixels 2010 of the sub-image 201.
- Each sub-image 201 of the database of training is then associated with fault information for all the pixels 2010 of the sub-image 201 .
- the artificial neural network trained for the classification task is for example a ResNet residual artificial neural network.
- the artificial neural network can also be trained for a semantic segmentation task and then provides a probability of failure per pixel 2010 of the sub-image 201.
- Each sub-image 201 of the training database is then associated with defect information per pixel 2010 of the sub-image 201.
- the artificial neural network trained for the semantic segmentation task is for example the LinkNet, U-Net or FDNN artificial neural network.
- the training of the artificial neural network is carried out by carrying out a certain number of epochs on the training data base, for example until a predefined stopping criterion is satisfied.
- a stopping criterion can be a predefined number of epochs, for example 200 epochs.
- Another example would be to train the network for a given time, for example a week.
- a another example would be to train the network until over-training occurs on the validation set (e.g. the cost function continues to decrease on the training set, but begins to increase for a predefined number of epochs on the validation set).
- the term "the training of an artificial neural network is carried out by carrying out N epochs on a database comprising M data", the following iterative process: during the first epoch, the M data of the training base (taken in order or randomly), during the second epoch, the M data of the training base are provided (taken in the same order or randomly with respect to the previous epoch), ... , during the n-th epoch, the M data of the training base are provided (taken in the same order or randomly with respect to the previous epoch).
- the M data of the database are provided N times as input to the artificial neural network during its training, each of the M data being provided only once during each of the epochs.
- the plurality of epoch numbers includes, for example, each epoch number carried out up to the stop condition, that is to say that if the stop condition is triggered at epoch number 300 , the plurality of epoch numbers comprises for example each epoch number between 1 and 300.
- the hyperparameters and parameters of the artificial neural network have for example been saved at the end of each training epoch during the first step 101.
- a second step 102 of the method 100 according to the invention is carried out for each training period, and for each image of a validation set V1, each image 200 of the validation set V1 being subdivided into a plurality of sub - 201 pictures.
- validation set is meant a database of validation images 200, the validation images 200 being used for the validation of learning during the second step 102 of the method 100 according to the invention.
- the validation database comprises a plurality of aeronautical part validation images 200, each subdivided into a plurality of sub-images. images 201 , each validation sub-image 201 being associated with fault information for each pixel 2010 of the sub-image 201 .
- the validation aeronautical parts are of the same type as the aeronautical part to be checked.
- the validation database comprises for example 200 validation images 200 .
- each sub-image 201 of the validation image database is then associated with defect information for all the pixels 2010 of subpicture 201 .
- each sub-image 201 of the validation image database is then associated with defect information per pixel 2010 of the sub-image. -picture 201.
- the second step 102 of the method 100 consists, for each training epoch and for each image 200 of the validation set V1, in creating a default probability matrix from a fusion of the probabilities of faults determined for each pixel 2010 of each sub-image 201 of the image 200 of the validation set, the fault probabilities being determined during a sub-step 1021 by applying the artificial neural network to each sub-image 201 of the picture
- the artificial neural network being applied with parameters associated with said training epoch.
- each pixel 2010 of each validation image 200 of the validation image database is for example associated with at least one fault probability provided by the trained artificial neural network.
- a pixel 2010 can be associated with a plurality of fault probabilities if the pixel 2010 belongs to an area of overlap between several sub-images 201 , as is the case for the hatched pixel 2010 in FIG. 1 .
- the defect probability matrix associates with each pixel 2010 of the validation image 200 considered, a pixel defect probability obtained from each defect probability associated with the pixel 2010 at the end of the second step 102 for the number of epochs considered.
- the pixel fault probability is equal to the single associated fault probability.
- the second step comprises for example a sub-step 1022 consisting in obtaining the pixel fault probability by merging the plurality default probabilities associated with pixel 2010.
- the merging is for example performed by calculating the average of the plurality of fault probabilities associated with the pixel 2010.
- the fault probability matrix corresponds to the validation image 200 in which for each pixel 2010, the information of color or grayscale associated with pixel 2010, is replaced by the pixel defect probability, i.e. the defect probability matrix is arranged according to the position associated with each pixel 2010 in the frame 200 validation.
- the defect probability matrix can therefore be likened to a gray level image in which a pixel defect probability equal to 0 is represented in black and a pixel defect probability equal to 1 or 100% is shown in white.
- each validation image 200 of the validation database is associated with a default probability matrix for the training period considered.
- a third step 103 of the method 100 according to the invention consists, for each training epoch, in determining from the probability matrices calculated in step 102 associated with said epoch, a fault detection curve as a function false alarms.
- the step 103 of determining a detection curve, for each training epoch, can comprise a plurality of sub-steps.
- the predefined threshold interval is equal to [0; 1] or [0; 100] if default probabilities are expressed as a percentage.
- the plurality of thresholds is for example chosen from the predefined interval of thresholds so that, for example, the plurality of thresholds is regularly spaced. If the predefined threshold interval is equal to [0; 1], the plurality of thresholds is for example chosen from 0.1 to 0.9 in steps of 0.1, and therefore comprises 9 thresholds. It is also possible to define the plurality of thresholds with intervals of variable size, in particular if the curve varies greatly around certain values, for example to be more representative of the criticality of the values. In addition, the plurality of thresholds can be defined according to business criteria.
- a first sub-step 1031 of step 103 of the method 100 according to the invention consists, for each matrix of default probabilities obtained at the end of the second step 102, in thresholding the matrix of default probabilities considered by the threshold considered, i.e. 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 at threshold by 1 .
- the thresholded defect probability matrix can therefore be likened to a binary image in which a pixel defect probability equal to 0 is represented in black and a pixel defect probability equal to 1 or 100% is represented in black. white.
- each image 200 of the validation database is associated with a thresholded default probability matrix for the number of epochs considered.
- the method 100 according to the invention may comprise a step consisting, for each thresholded default probability matrix obtained at the end of the first sub-step 1031 , in smoothing the considered thresholded default probability matrix, for example by morphological opening or closing operations.
- a second sub-step 1032 of step 103 of the method 100 according to the invention is then carried out.
- This sub-step 1032 consists in 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 a condition C1 is fulfilled, by applying it to each set of adjacent pixels 2010 associated with a non-zero pixel defect probability after the thresholding carried out in the first sub-step 1031 and possibly the subsequent smoothing.
- Condition C1 is verified if each pixel 2010 of the considered set of adjacent pixels 2010 associated with a non-zero pixel defect probability after the thresholding carried out in the first sub-step 1031 and possibly the smoothing carried out thereafter is associated with zero defect information in the validation database.
- Each set of adjacent pixels 2010 must for example have a connectivity of at least 4. Thus, if for example in the entire validation base, 200 sets of adjacent pixels 2010 are obtained associated with a non-zero pixel defect probability after the thresholding carried out at the first sub-step 1031 and possibly the smoothing performed afterwards and condition C1 is fulfilled 100 times, at the end of the second sub-step 1032 the number of false alarms associated with the considered threshold will be 100.
- a third sub-step 1033 of step 103 of the method according to the invention is then performed.
- This sub-step 1033 consists in 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 fulfilled, by applying it to each set of associated adjacent pixels 2010 to non-zero fault information in the validation database.
- Condition C2 is verified if at least one pixel of 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 at the first sub-step 1031 and possibly the smoothing carried out afterwards.
- Each set of adjacent 2010 pixels must for example be of at least 4 connectivity.
- the number of detections associated with the considered threshold will be 100.
- each threshold is associated with a number of detections and with a number of false alarms having been obtained from each default probability matrix created for the period number considered.
- a fourth sub-step 1034 of step 103 of the method 100 according to the invention consists in plotting, for the number of epochs considered, a curve representing the number of detections as a function of the number of false alarms.
- FIG. 3 represents a first curve 1081 and a second curve 1081 obtained at the end of the fourth sub-step 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.
- the curve 1081 comprises a point 1082 per 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 the step 103 of the method 100 according to the invention.
- the first curve 1081 and the second curve 1081 each comprise 8 points 1082.
- a fifth sub-step 1035 of step 103 of the method 100 according to the invention consists in correcting the curve 1081 obtained in the fourth sub-step 1034 for the number of epochs considered.
- the correction is made by deleting each point 1082 corresponding to a threshold for which the number of associated false alarms is less than the number of false alarms associated with the immediately following threshold in the predefined threshold interval (the nominal behavior is that the number of false alarms decreases when the threshold value increases).
- the deletion process must thus be done iteratively, starting with the point corresponding to the lowest threshold.
- the deletion process is restarted from the lowest remaining threshold as soon as a point has been deleted, until no more points need to be deleted and considering the immediately following threshold among the undeleted thresholds.
- the plurality of thresholds can comprise 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 equal to 0.8 associated with a number F4 false alarms, and a fifth threshold equal to 0.9 associated with a number F5 false alarms such that F4>F2>F1>F3>F5. Since the point 1082 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 a point has been deleted, the lowest remaining threshold point is chosen to begin the deletion process again.
- the lowest remaining threshold point is the point associated with the second threshold.
- the point associated with the second threshold is associated with more false alarms than the point associated with the third threshold, it is not deleted.
- the point associated with the third threshold is associated with fewer false alarms than the point associated with the fourth threshold, the point associated with the third threshold is therefore deleted.
- the lowest remaining threshold point is chosen to begin the deletion process again.
- the lowest remaining threshold point is the point associated with the second threshold.
- the point associated with the second threshold is associated with fewer false alarms than the point associated with the fourth threshold, the point associated with the second threshold is therefore deleted.
- the lowest remaining threshold point is chosen to begin the deletion process again. In this case, it is the point associated with the fourth threshold which is associated with more false alarms than the point associated with the fifth threshold.
- the fourth threshold is thus not deleted.
- the fifth threshold being the largest threshold, it has no point associated with an immediately higher threshold, so it is not deleted.
- a sixth sub-step 1036 of step 103 of the method 100 according to the invention consists in normalizing the corrected curve 1081 obtained in the fifth sub-step 1035 for the number of epochs considered. .
- FIG. 4 represents the first curve 1081 and the second curve 1081 of FIG. 3, obtained at the end of the sixth sub-step 1036.
- the normalization is carried out by adding to the 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 at the fifth sub-step 1035 and a predefined maximum number of false alarms.
- the predefined maximum number of 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.
- a normalized curve 1081 is obtained for each epoch number of the plurality of epoch numbers.
- a fourth step 104 of the method 100 according to the invention consists in determining a predefined number N of the best training periods among the plurality of training periods as a function of the fault detection curves 1081 and as a function of a business criterion.
- the determination of the N best epochs can be carried out by selecting N fault detection curves 1081 as a function of the business criterion.
- the selection can be performed for example automatically via a selection algorithm or be established by an operator.
- the business criterion for making the selection is, for example, based on the knowledge of the operator and/or depending on the application concerned.
- the criterion can be 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
- a sub-step 1041 of the determination step 104 consists in calculating the area under each normalized curve 1081 obtained at the end of the sixth sub-step 1036 of the step 103 of the method 100 according to the invention and to select a predefined number N of curves 1081 corresponding to the curves 1081 having the N highest calculated areas.
- N is for example between 2 and 50.
- the N best epochs corresponding to the N selected curves have been determined and selected.
- determination of an epoch is meant the selection of the state of the network at this epoch.
- One thus obtains N sets of known parameters associated with the N epochs which can be loaded into the network a posteriori.
- a fifth step 105 of the method 100 according to the invention is carried out for each training epoch of the set of the number N of best training epochs.
- the fifth step 105 consists for each training epoch of the set of the number N of 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 .
- each pixel 2010 of the sub-image 201 is associated with a plurality of fault probabilities comprising at least one fault probability per selected epoch number.
- a sixth step 106 of the method 100 according to the invention consists, for each sub-image 201 of the image to be checked, in merging result matrices of the checked sub-images, each result matrix of a sub-image controlled coming from the fifth step 105.
- the fusion is for example carried out by calculating the mean of the coefficients of each result matrix corresponding to the controlled sub-images, the result of the fusion being a matrix in which each coefficient is equal to or depends on the mean of each coefficient of the same position of each result matrix of a controlled sub-image.
- 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 found in the sub-image 201 .
- This probability is either given pixel per pixel (in the case of semantic segmentation), or given for the entire sub-image (in the case of classification).
- a seventh optional step 107 consists in reconstituting 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.
- the fault prediction is obtained for the image 200 to be checked, corresponding to the fact that a defect is found in the image 200. This probability is given pixel by pixel.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
Un aspect de l'invention concerne un procédé de détection de défaut pour une pièce aéronautique : • Entrainement, pendant une pluralité d'époques, d'un réseau de neurones artificiels pour fournir une probabilité de défaut pour chaque pixel d'une image, • Pour chaque époque et pour chaque image d'un set de validation, création d'une matrice de probabilités de défaut à partir de probabilités de défaut pour chaque pixel de l'image, • Pour chaque époque, détermination, pour chaque image du set de validation, à partir des matrices de probabilités de défaut, d'une courbe de détection des défauts en fonction des fausses alarmes, • Détermination d'un ensemble des N meilleures époques en fonction des courbes de détection des défauts et d'un critère métier, • Pour chaque époque des N meilleures époques, contrôle de l'image à contrôler par application du réseau de neurones artificiels avec des paramètres associés à ladite époque, pour obtenir une sous-image contrôlée associée à ladite époque d'entrainement,
Description
DESCRIPTION
TITRE : Procédé de détection de défauts sur une pièce aéronautique
DOMAINE TECHNIQUE DE L’INVENTION
[0001] Le domaine technique de l’invention est celui de la détection de défauts, et plus particulièrement celui de la détection automatique de défauts sur une pièce aéronautique.
ARRIERE-PLAN TECHNOLOGIQUE DE L’INVENTION
[0002] Dans l’objectif de détecter automatiquement la présence de défauts sur une pièce aéronautique, c’est-à-dire d’indiquer si des défauts sont présents sur la pièce aéronautique et leur emplacement approximatif, tout en limitant les fausses alarmes, c’est-à-dire sans indiquer la présence de défauts lorsqu’il n’y en a pas pour éviter que la pièce soit rebutée, examinée à la main, ou donnée en inspection à un autre système plus coûteux en termes de puissance ou temps de calcul, il est connu de réaliser un contrôle non destructif de la pièce en utilisant un algorithme sur une ou plusieurs images de la pièce.
[0003] Quand la pièce aéronautique est de forme complexe, ce qui est par exemple le cas pour les aubes de moteurs, chaque image est divisée en plusieurs sous-images et le contrôle est réalisé pour chaque sous-image. Deux stratégies sont alors possibles pour trouver les défauts, soit une stratégie de classification consistant à indiquer si la sous-image comporte un défaut, soit une stratégie de segmentation sémantique consistant à indiquer sur chaque sous-image, les pixels inclus dans une zone de défaut.
[0004] Il est connu de réaliser le contrôle non destructif de la pièce en utilisant un réseau de neurones artificiels qui calcule une prédiction correspondant à une probabilité que la pièce soit défectueuse.
[0005] Afin de gagner en robustesse, il est également connu d’utiliser plusieurs réseaux de neurones artificiels et de fusionner leurs prédictions en calculant par exemple la moyenne des prédictions. Les réseaux de neurones artificiels utilisés ont alors des architectures différentes, ou bien la même architecture mais une initialisation différente.
[0006] Une autre manière de gagner en robustesse est d’utiliser des méthodes d’ensembles sur un seul réseau de neurones artificiels mais pris à différentes époques d’entraînement, ce qui a pour avantage de ne procéder à l’entraînement que d’un unique réseau de neurones artificiels. Les époques sont par exemple sélectionnées selon la fonction de coût utilisée pour l’entraînement du réseau de neurones artificiels qui pénalisent les sous-images ou pixels mal classifiés.
[0007] D’autres indicateurs classiquement utilisés pour mesurer les performances de détection ou de segmentation sémantique pourraient également être utilisés, par exemple l’intersection sur l’union moyenne ou Mean Intersection over Union (mloU) en anglais correspondant à l’aire de recouvrement de la classe prédite avec la classe vérité terrain sur l’aire totale de l’union de la classe prédite et de la classe vérité terrain, la précision correspondant au pourcentage de pixels ou de sous-images de la classe correctement prédits parmi toutes les prédictions de cette classe, ou encore le rappel correspondant au pourcentage de pixels ou de sous-images de la classe trouvés parmi tous les pixels ou sous-images de la classe.
[0008] Que ce soit la fonction de coût ou les indicateurs classiques cités ci-dessus, ces mesures ne permettent pas de détecter la présence de défauts sur une pièce aéronautique tout en faisant le moins de fausses alarmes possible. En effet, ces mesures seront très pénalisantes si par exemple seule une partie des pixels d’une zone défectueuse sont classés comme défauts, alors que la présence d’un défaut et son emplacement approximatif ont bien été détectés, comme souhaité. De même, si une zone étendue de défauts se retrouve sur plusieurs sous-images, il serait suffisant de ne classifier que certaines de ces sous-images en défaut, alors que les mesures vont être pénalisantes pour les autres sous-images mal classifiées de cette zone. Symétriquement pour les zones saines, il est identique compte tenu de l’objectif, de retourner une agrégation de pixels ou de sous-images sains mal classifiés quelle que soit la taille de l’agrégation, alors que les mesures seront plus pénalisantes pour des agrégations plus grandes.
[0009] Ainsi, les mesures de l’état de l’art de sont pas adaptées pour sélectionner les meilleures époques dans le cadre des méthodes d’ensembles pour la détection automatique de la présence de défauts sur une pièce aéronautique avec un nombre de fausses alarmes réduit.
RESUME DE L’INVENTION
[0010] L’invention offre une solution aux problèmes évoqués précédemment, en permettant de détecter la présence de défauts sur une pièce aéronautique via une méthode d’ensemble utilisant les époques optimales de l’entraînement d’un réseau de neurones artificiels permettant de limiter le nombre de fausses alarmes.
[0011] Un premier aspect de l’invention concerne un procédé de détection de défaut pour une pièce aéronautique à partir d’au moins une image à contrôler de la pièce aéronautique subdivisée en une pluralité de sous-images, le procédé comprenant les étapes suivantes :
• Entrainement supervisé, pendant une pluralité d’époques d'entrainement, d’un réseau de neurones artificiels configuré pour fournir une probabilité de défaut pour chaque pixel d’une sous-image d'entrainement d'une image d’entrainement,
• Pour chaque époque d'entrainement et pour chaque image d’un set de validation, création d’une matrice de probabilités de défaut à partir d’une fusion de probabilités de défaut déterminées pour chaque pixel de chaque sous-image de l’image du set de validation,
• Pour chaque époque d'entrainement, détermination, à partir des matrices de probabilités de défaut associées à ladite époque d'entrainement, d’une courbe de détection des défauts en fonction de fausses alarmes,
• Détermination d’un ensemble des N meilleures époques d'entrainement de la pluralité d’époques d'entrainement en fonction des courbes de détection des défauts en fonction des fausses alarmes et d’un critère métier, N étant un entier supérieur ou égal à 1 ,
• Pour chaque époque d'entrainement des N meilleures époques, application, sur chaque sous-image de l’image à contrôler, du réseau de neurones artificiels avec des paramètres associés à ladite époque, pour obtenir une sous-image contrôlée associée à ladite époque d'entrainement,
• Pour chaque sous-image de l’image à contrôler, fusion des N sous-images contrôlées pour obtenir des probabilités de présence de défaut sur la sous-image.
[0012] On entend par un « critère métier » un critère de sélection de courbes qui est basé sur les connaissances de l’utilisateur du procédé selon l’invention et/ou en
fonction de l’application concernée pour le procédé selon l’invention. Il peut, par exemple, s’agir d’un critère basé sur l’aire sous les courbes, une densité de détection dans les courbes, un motif (« pattern » en anglais) de détection tel qu’une forte densité de détection puis une faible densité de détection, la régularité des courbes, etc.
[0013] On entend par « défaut » une discontinuité des propriétés de la matière composant une pièce ou un objet inspecté, en l’occurrence la pièce aéronautique. Cette discontinuité résulte d’une anomalie présente dans la matière. Cette anomalie peut avoir des origines diverses et être de nature variée. Ces anomalies sont majoritairement la conséquence d’aléas qui surviennent lors de la fabrication de la pièce. Ces anomalies surviennent également de façon assez fréquente au cours de l’utilisation de la pièce ou de sa manutention : la matière peut, par exemple, avoir été fragilisée au cours du processus de fabrication et son utilisation, générant de fortes contraintes locales au niveau de la zone fragilisée, ou à la suite d’un choc, engendre un défaut. Le terme « défaut » couvre donc toutes les formes d’anomalies que peut subir la matière : défaut de matière, inclusion, fissure, porosité, corrosion, altération des propriétés du matériau, etc.
[0014] On entend par courbe de détection des défauts en fonction des fausses alarmes un ensemble de points reliés avec en abscisse le nombre de fausses alarmes (pouvant aller de 0 à l’infini) et en ordonnée le nombre de défauts correctement détectés (pouvant aller de 0 au nombre total de défauts à détecter, qui peut être nul dans certains cas).
[0015] Grâce à l’invention, la présence éventuelle de défauts est détectée sur chaque sous-image composant une image de la pièce aéronautique, en fusionnant les résultats obtenus à l’aide d’un réseau de neurones artificiels pris à plusieurs époques d’entrainement. Ces époques ont été préalablement sélectionnées pour détecter l’emplacement approximatif de chaque défaut tout en limitant le nombre de fausses alarmes. Pour cela, pour chaque époque sélectionnable, une matrice de résultats est reconstituée pour chaque image d’une base de données de validation à partir des résultats fournis par le réseau de neurones artificiels entraîné pendant les époques d’entraînement pour chaque sous-image composant l’image, ce qui permet d’obtenir une vision des défauts à l’échelle de l’image et ainsi retirer certains biais introduits par le découpage en sous-images. Une courbe représentant le nombre de détections en fonction du nombre de fausses alarmes est ensuite déterminée pour chaque époque. Il est alors possible de sélectionner un ensemble de courbes en fonction d’un critère
métier. Ceci permet de sélectionner les courbes pour répondre à des critères de performance afin de sélectionner les époques d’entraînement optimales pour la détection de défauts en minimisant le nombre de fausses alarmes.
[0016] Les approches de l’état de l’art n’estiment les performances du réseau de neurones que sur les images ou sous-images qui ont été fournies en entrée au réseau de neurones. En outre, dans l’état de l’art, les meilleures époques d’entraînement sont toujours déterminées grâce à ces performances calculées sur ce qui est fourni en entré du réseau de neurones, c’est-à-dire les images ou les sous-images. En d’autres termes, dans l’état de l’art, les performances sont calculées sur des sets d’images, ou de sous-images, d’entraînement, de validation ou de test pour évaluer les performances du réseau de neurones sur les images ou les sous-images, respectivement. Au contraire, dans la présente invention, les performances pour les images sont calculées au travers du calcul des performances sur les sous-images. En effet, le réseau de neurones est configuré pour apprendre et prédire sur des sous- images, puis les données produites en sortie du réseau de neurones sont utilisées pour évaluer les performances du réseau de neurones sur les images d’où proviennent les sous-images. Selon l’invention, les performances sur les images ne sont donc pas calculées directement mais indirectement par le calcul des performances sur les sous- images.
[0017] Outre les caractéristiques qui viennent d’être évoquées dans le paragraphe précédent, le procédé selon l’invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes, considérées individuellement ou selon toutes les combinaisons techniquement possibles.
[0018] Selon une variante de réalisation, l’entraînement supervisé est réalisé, pour la pluralité d’époques, à partir d’une base de données d’entraînement, le nombre d’époques d'entrainement de la pluralité d’époques d'entrainement étant déterminé par un critère d'arrêt, chaque époque d'entrainement parmi la pluralité d'époques d'entrainement étant associée à un numéro, la base de données d’entraînement comprenant une pluralité de sous-images pour chaque image d’une pluralité d’images d’entraînement de pièces aéronautiques, chaque sous-image étant associée à une information de défaut pour chaque pixel de la sous-image.
[0019] On appelle un « critère d’arrêt » un critère qui permet de renseigner sur la ou les conditions pour cesser le processus d’apprentissage du réseau de neurones artificiels. Il peut par exemple s’agir d’un nombre maximal prédéfini d’époques d’entraînement, d’un seuil d’arrêt à atteindre pour la fonction coût du réseau de neurones artificiels, la détection d’un sur-apprentissage, etc.
[0020] Selon une variante de réalisation, l'étape de création d'une matrice de probabilité de défaut associée à chaque époque d’entrainement et associée à chaque image du set de validation se fait selon les sous-étapes suivantes :
• Pour chaque sous-image de l'image du set de validation, utilisation sur la sous- image, du réseau de neurones artificiels avec les paramètres associés à ladite époque, pour obtenir une probabilité de défaut pour chaque pixel de la sous- image,
• Association à chaque pixel de l’image du set de validation, une probabilité de défaut de pixel calculée à partir de la fusion de chaque probabilité de défaut obtenue pour le pixel.
[0021] Selon une variante de réalisation, l'étape de détermination d’une courbe de détections de défauts en fonction des fausses alarmes associées à une époque d'entrainement se fait selon les sous-étapes suivantes :
• Pour chaque seuil d’une pluralité de seuils compris dans un intervalle de seuils prédéfini, et pour chaque image du set de validation : o Seuillage de la matrice de probabilités de défaut associée à ladite image et à ladite époque par le seuil ; o Pour chaque ensemble de pixels adjacents de ladite image du set de validation ne comprenant que des pixels associés à une probabilité de défaut de pixel non nulle dans la matrice de probabilités de défaut seuillée associée à l'image :
• Si aucun pixel de l’ensemble de pixels n’est associé à une information de défaut non nulle dans le set de validation, incrémentation d’un nombre de fausses alarmes associé au seuil o Pour chaque ensemble de pixels adjacents d’information de défaut non nulle dans le set de validation, si au moins un pixel de la matrice de
probabilités de défaut seuillée est associé à une probabilité de défaut de pixel non nulle, incrémentation d’un nombre de détections associé au seuil
• Tracé d’une courbe, associée à ladite époque, représentant le nombre de détections en fonction du nombre de fausses alarmes, comportant un point par seuil, correspondant au nombre de détections et au nombre de fausses alarmes associés au seuil.
[0022] Chaque matrice de résultats obtenue est seuillée avec plusieurs seuils pour prendre en compte une diversité de points de fonctionnement pour chaque époque, et dans chaque matrice de résultats seuillée, les ensembles de pixels adjacents non nuis sont comparés avec les informations de défaut correspondantes pour calculer le nombre de détections et le nombre de fausses alarmes, indépendamment du nombre de pixels compris dans la détection et de la taille de la fausse alarme.
[0023] Selon une variante de réalisation, pour chaque époque d'entrainement parmi l'ensemble des N meilleures époques d’entrainement, le résultat de contrôle d’une sous-image est une matrice dont chaque coefficient correspond à une probabilité de défaut pour chaque pixel de la sous-image.
[0024] Selon une variante de réalisation, le réseau de neurones artificiels est configuré pour fournir à partir d’une sous-image, une probabilité de défaut par pixel de la sous-image, chaque sous-image de la base de données d’entraînement et chaque sous-image de la base de données de validation étant associée à une information de défaut par pixel de la sous-image.
[0025] Ainsi, le réseau de neurones artificiels est entraîné et testé pour réaliser une tâche de segmentation sémantique.
[0026] Selon une variante de réalisation, le réseau de neurones artificiels est configuré pour fournir à partir d’une sous-image, une probabilité de défaut pour l’ensemble des pixels de la sous-image, chaque sous-image de la base de données d’entraînement et chaque sous-image de la base de données de validation étant associée à une information de défaut pour l’ensemble des pixels de la sous-image.
[0027] Ainsi, le réseau de neurones artificiels est entraîné et testé pour réaliser une tâche de classification.
[0028]
[0029] Selon une variante de réalisation complémentaire de la variante de réalisation précédente, l'étape de détermination de la courbe de détections de défaut comprend en outre une étape de correction par suppression de chaque point correspondant à un seuil pour lequel le nombre de fausses alarmes associé au seuil est inférieur au nombre de fausses alarmes associé au seuil immédiatement suivant dans l’intervalle de seuils prédéfini suivant l’étape de Tracé, l’étape de suppression étant recommencée à chaque point supprimé à partir du seuil le plus bas restant.
[0030] Ainsi, les courbes sont corrigées d’un comportement aberrant du nombre de fausses alarmes lorsque le seuil de détection appliqué ne permet pas de correctement discerner les régions de l’images avec un défaut détecté et celles avec une fausse alarme. En particulier, cela permet de corriger les courbes lorsque le nombre de fausses alarmes diminue alors que la valeur du seuil diminue.
[0031] Selon une variante de réalisation, la courbe corrigée est normalisée par ajout d’un point initial associé à un nombre de détections nul et à un nombre de fausses alarmes nul et ajout d’un point final associé au nombre de détections maximal de la courbe corrigée et à un nombre maximal de fausses alarmes prédéfini, suivant l’étape de correction.
[0032] Ainsi, toutes les courbes sont d’abord corrigées et normalisées pour rendre toutes les courbes comparables entre elles. L’aire sous chaque courbe normalisée est ensuite calculée comme mesure de performances du réseau de neurones artificiels pour le numéro d’époque donné et utilisée pour sélectionner un nombre prédéfini de nombres d’époques optimaux pour l’application considérée, à savoir la détection de la présence de défauts minimisant le nombre de fausses alarmes.
[0033] Selon une variante de réalisation, la matrice de probabilités de défaut seuillée est lissée.
[0034] Ainsi, par exemple les groupements de pixels adjacents ne dépassant pas une taille prédéfinie sont éliminés et par exemple des petits trous dans les groupements de pixels adjacents sont bouchés.
[0035] Selon une variante de réalisation, le critère métier pour la détermination d’un ensemble des N meilleures époques d'entrainement de la pluralité d’époques d'entrainement en fonction des courbes de détection des défauts est l’aire sous la courbe.
[0036] Selon une variante de réalisation, la détection d’un défaut pour une image à contrôler se fait par :
• Pour chacune de ces époques et pour chaque sous-image de l’image à contrôler subdivisée, utilisation sur la sous-image, du réseau de neurones artificiels avec l'ensemble de paramètres associé à ladite époque, pour obtenir une probabilité de défaut pour chaque pixel de la sous-image ;
• Pour chaque pixel de chaque sous-image de l’image à contrôler subdivisée, fusion des probabilités de défaut obtenues pour le pixel pour chaque époque correspondant à une courbe sélectionnée, pour obtenir une prédiction de défaut pour la sous-image.
[0037] Selon une variante de réalisation, chaque pixel d’une image est associé à une position dans l’image et l’étape de création de la matrice de probabilités de défaut pour une image est réalisée en outre à partir de la position associée à chaque pixel de l’image.
[0038] Ainsi, la matrice de probabilités de défaut correspond à l’image de la base de données de validation dans laquelle l’information de couleur ou de niveaux de gris associée à chaque pixel est remplacée par la probabilité de défaut de pixel.
[0039] Selon une variante de réalisation, lors de la création de la matrice de probabilités de défaut pour une image, une fusion est réalisée, pour chaque pixel de l’image associé à une pluralité de probabilités de défaut, de la pluralité de probabilités de défaut associée au pixel.
[0040] Ainsi, pour chaque pixel appartenant à une zone de recouvrement entre plusieurs sous-images, la probabilité de défaut de pixel associée au pixel prend en compte la probabilité de défaut obtenue pour le pixel pour chaque sous-image.
[0041] Selon une variante de réalisation, les probabilités de défaut pour chaque sous-image de l’image à contrôler obtenues à l’issue de l’étape sont fusionnées afin d’obtenir des probabilités de défauts pour l’image à contrôler.
[0042] Selon une variante de réalisation, le critère métier pour la sélection d'un ensemble de courbes est un nombre prédéterminé de courbes correspondant au nombre de courbes dont l'aire sous la courbe est la plus élevée.
[0043] Selon une variante de réalisation, le réseau de neurones artificiels est configuré pour fournir à partir d’une sous-image, une probabilité de défaut pour l’ensemble des pixels de la sous-image, chaque sous-image de la base de données d’entraînement et chaque sous-image de la base de données de validation étant associée à une information de défaut pour l’ensemble des pixels de la sous-image.
[0044] Ainsi, le réseau de neurones artificiels est entraîné et testé pour réaliser une tâche de classification. Dans ce cas, tous les coefficients de la matrice de résultat associée à la sous-image, seront égaux à la probabilité de défaut fournie par le réseau pour cette sous-image.
[0045] Selon une variante de réalisation compatible avec les variantes de réalisation précédentes, la fusion des probabilités de défaut obtenues pour un pixel est réalisée par moyennage des probabilités de défaut obtenues pour le pixel.
[0046] Un autre aspect de l’invention concerne un produit-programme d’ordinateur comprenant des instructions qui, quand le programme est exécuté sur un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé selon l’invention.
[0047] L’invention et ses différentes applications seront mieux comprises à la lecture de la description qui suit et à l’examen des figures qui l’accompagnent.
BREVE DESCRIPTION DES FIGURES
[0048] Les figures sont présentées à titre indicatif et nullement limitatif de l’invention.
• La figure 1 montre une représentation schématique d’une image de pièce aéronautique utilisée par un procédé selon l’invention.
• La figure 2 est un schéma synoptique illustrant l’enchaînement des étapes du procédé selon l’invention.
• La figure 3 représente deux courbes obtenues à l’issue d’une huitième étape du procédé selon l’invention.
• La figure 4 représente deux exemples de courbes obtenues au moyen du procédé selon l’invention.
DESCRIPTION DETAILLEE
[0049] Sauf précision contraire, un même élément apparaissant sur des figures différentes présente une référence unique.
[0050] L’invention concerne un procédé de détection de défauts sur une pièce aéronautique à contrôler.
[0051] La détection de défauts est automatique, c’est-à-dire qu’elle ne nécessite aucune intervention humaine lors de la phase d’utilisation finale du système, et est réalisée à partir d’une ou plusieurs images de la pièce aéronautique, par exemple prises avec des angles de vue différents.
[0052] Chaque image de la pièce aéronautique est préalablement acquise par une caméra et peut être en couleurs ou en niveaux de gris.
[0053] [Fig. 1] La figure 1 montre une représentation schématique de l’image 200 de la pièce aéronautique.
[0054] L’image 200 de la pièce aéronautique comporte un ensemble de pixels 2010 et est subdivisée en une pluralité de sous-images 201 comportant chacune un sous-ensemble de pixels 2010 de l’ensemble de pixels 2010.
[0055] Sur la figure 1 , est représentée une image 200 comportant un ensemble de 36 pixels 2010.
[0056] La pluralité de sous-images 201 peuvent présenter ou non des zones de recouvrement entre elles.
[0057] Sur la figure 1 , sont représentées deux sous-images 201 comportant chacune un sous-ensemble de 9 pixels et se recouvrant sur un pixel 2010 représenté en hachuré.
[0058] La pièce aéronautique est préférentiellement de forme complexe, telle qu’une aube de moteur, différents types d’attache de pied d’aube, un carénage d’aéronef, etc.
[0059] [Fig. 2] La figure 2 est un schéma synoptique illustrant l’enchaînement des étapes du procédé 100 selon l’invention.
[0060] Une première étape 101 du procédé 100 selon l’invention consiste à entraîner de manière supervisée un réseau de neurones artificiels sur une base de données d’entraînement, pour obtenir un réseau de neurones artificiels capable de fournir à partir d’une sous-image 201 , une probabilité de défaut pour chaque pixel 2010 de la sous-image 201.
[0061] La probabilité de défaut associée à un pixel 2010 exprime la probabilité que le pixel 2010 appartienne à un défaut et est comprise entre 0 et 1 , ou entre 0 et 100% si elle est exprimée en pourcentage.
[0062] L’entraînement supervisé, autrement appelé apprentissage supervisé, permet d’entraîner un réseau de neurones artificiels à une tâche prédéfinie, en mettant à jour ses paramètres de manière à minimiser une fonction de coût correspondant à l’erreur entre la donnée de sortie fournie par le réseau de neurones artificiels et la vraie donnée de sortie, c’est-à-dire ce que le réseau de neurones artificiels devrait fournir en sortie pour remplir la tâche prédéfinie sur une certaine donnée d’entrée. Ainsi, en fonction des hyperparamètres du réseau de neurones fixés en début d’entrainement, à chaque fois qu’on fournit un batch de M exemples au réseau de neurones artificiels, ses paramètres sont mis à jour. Les hyperparamètres sont, par exemple, le nombre de couches du réseau, le nombre de neurones par couche, la fonction de coût à optimiser, les paramètres prédéfinis de l’algorithme d’optimisation, etc. Les paramètres sont, par exemple, les poids des neurones.
[0063] Une base de données d’entraînement comporte donc des données d’entrée, chacune associée à une vraie donnée de sortie.
[0064] La base de données d’entraînement comporte une pluralité d’images 200 de pièces aéronautiques d’entraînement, chacune subdivisée en une pluralité de sous-
images 201 , chaque sous-image 201 étant associée à une information de défaut pour chaque pixel 2010 de la sous-image 201 .
[0065] Ainsi, les données d’entrée sont les sous-images 201 et les vraies données de sortie sont les informations de défaut pour chaque pixel 2010 de la sous-image.
[0066] L’information de défaut associée à un pixel 2010 est égale à 0 si le pixel 2010 n’appartient pas à un défaut et à 1 ou 100% si le pixel 2010 appartient à un défaut.
[0067] Les pièces aéronautiques d’entraînement sont de même type que la pièce aéronautique à contrôler, c’est-à-dire que si la pièce aéronautique à contrôler est une aube de moteur d’aéronef, chaque pièce aéronautique d’entraînement est également une aube de moteur d’aéronef.
[0068] La base de données d’entraînement comporte par exemple 200 images 200.
[0069] Le réseau de neurones artificiels peut être entraîné pour une tâche de classification et fournit alors une unique probabilité de défaut pour l’ensemble des pixels 2010 de la sous-image 201. Chaque sous-image 201 de la base de données d’entraînement est alors associée à une information de défaut pour l’ensemble des pixels 2010 de la sous-image 201 .
[0070] Le réseau de neurones artificiels entraîné pour la tâche de classification est par exemple un réseau de neurones artificiels résiduels ResNet.
[0071] Le réseau de neurones artificiels peut également être entraîné pour une tâche de segmentation sémantique et fournit alors une probabilité de défaut par pixel 2010 de la sous-image 201. Chaque sous-image 201 de la base de données d’entraînement est alors associée à une information de défaut par pixel 2010 de la sous-image 201.
[0072] Le réseau de neurones artificiels entraîné pour la tâche de segmentation sémantique est par exemple le réseau de neurones artificiels LinkNet, U-Net ou FDNN.
[0073] L’entraînement du réseau de neurones artificiels est réalisé en effectuant un certain nombre d’époques sur la base de données d’entrainement, par exemple jusqu’à ce qu’un critère d’arrêt prédéfini soit satisfait. Par exemple, un critère d’arrêt peut être un nombre prédéfini d’époques, par exemple 200 époques. Un autre exemple serait d’entrainer le réseau pendant un temps donné, par exemple une semaine. Un
autre exemple serait d’entrainer le réseau jusqu’à l’apparition de sur-apprentissage sur le set de validation (par exemple la fonction de coût continue de diminuer sur le set d’entrainement, mais commence à augmenter pendant un nombre prédéfini d’époques sur le set de validation).
[0074] On entend par « l’entraînement d’un réseau de neurones artificiels est réalisé en effectuant N époques sur une base de données comportant M données », le processus itératif suivant : on fournit lors de la première époque les M données de la base d’entrainement (pris dans l’ordre ou aléatoirement), lors de la deuxième époque on fournit les M données de la base d’entrainement (pris dans le même ordre ou aléatoirement par rapport à l’époque précédente), ..., lors de la n-ième époque on fournit les M données de la base d’entrainement (pris dans le même ordre ou aléatoirement par rapport à l’époque précédente). Ainsi, on fournit N fois les M données de la base de données en entrée du réseau de neurones artificiels lors de son entraînement, chacune des M données n’étant fournie qu’une seule fois lors de chacune des époques.
[0075] La pluralité de numéros d’époques comporte par exemple chaque numéro d’époque réalisée jusqu’à la condition d’arrêt, c’est-à-dire que si la condition d’arrêt se déclenche au numéro d’époque 300, la pluralité de numéros d’époques comporte par exemple chaque numéro d’époque compris entre 1 et 300.
[0076] Les hyperparamètres et paramètres du réseau de neurones artificiels ont par exemple été sauvegardés à la fin de chaque époque d'entrainement lors de la première étape 101.
[0077] Une deuxième étape 102 du procédé 100 selon l’invention est réalisée pour chaque époque d'entrainement, et pour chaque image d'un set de validation V1 , chaque image 200 du set de validation V1 étant subdivisée en une pluralité de sous- images 201.
[0078] On entend par set de validation une base de données d’images 200 de validation, les images 200 de validation étant utilisées pour la validation de l’apprentissage durant la deuxième étape 102 du procédé 100 selon l’invention.
[0079] La base de données de validation comporte une pluralité d’images 200 de validation de pièces aéronautiques, chacune subdivisée en une pluralité de sous-
images 201 , chaque sous-image 201 de validation étant associée à une information de défaut pour chaque pixel 2010 de la sous-image 201 .
[0080] Les pièces aéronautiques de validation sont de même type que la pièce aéronautique à contrôler.
[0081] La base de données de validation comporte par exemple 200 images 200 de validation.
[0082] Dans le cas où le réseau de neurones artificiels est entraîné pour une tâche de classification, chaque sous-image 201 de la base de données d’images de validation est alors associée à une information de défaut pour l’ensemble des pixels 2010 de la sous-image 201 .
[0083] Dans le cas où le réseau de neurones artificiels est entraîné pour une tâche de segmentation sémantique, chaque sous-image 201 de la base de données d’images de validation est alors associée à une information de défaut par pixel 2010 de la sous-image 201.
[0084] La deuxième étape 102 du procédé 100 selon l’invention consiste, pour chaque époque d'entraiment et pour chaque image 200 du set de validation V1 , à créer une matrice de probabilités de défaut à partir d’une fusion des probabilités de défaut déterminées pour chaque pixel 2010 de chaque sous-image 201 de l’image 200 du set de validation, les probabilités de défaut étant déterminées lors une sous-étape 1021 par application du réseau de neurones artificiels à chaque sous-image 201 de l'image
200 du set de validation, le réseau de neurones artificiels étant appliqué avec des paramètres associés à ladite époque d'entrainement.
[0085] Lors de la deuxième étape 102, chaque pixel 2010 de chaque sous-image
201 de la base de données de validation et donc chaque pixel 2010 de chaque image 200 de validation de la base de données d’images de validation, est par exemple associé à au moins une probabilité de défaut fournie par le réseau de neurones artificiels entraîné.
[0086] Un pixel 2010 peut être associé à une pluralité de probabilités de défaut si le pixel 2010 appartient à une zone de recouvrement entre plusieurs sous-images 201 , comme c’est le cas pour le pixel 2010 hachuré sur la figure 1 .
[0087] La matrice de probabilités de défaut associe à chaque pixel 2010 de l’image 200 de validation considérée, une probabilité de défaut de pixel obtenue à partir de chaque probabilité de défaut associée au pixel 2010 à l’issue de la deuxième étape 102 pour le nombre d’époques considéré.
[0088] Pour chaque pixel 2010 associé à une unique probabilité de défaut à l’issue de la deuxième étape 102, la probabilité de défaut de pixel est égale à l’unique probabilité de défaut associée.
[0089] Pour chaque pixel 2010 associé à une pluralité de probabilités de défaut à l’issue de la deuxième étape 102, la deuxième étape comporte par exemple une sous- étape 1022 consistant à obtenir la probabilité de défaut de pixel par fusion de la pluralité de probabilités de défaut associée au pixel 2010.
[0090] La fusion est par exemple réalisée en calculant la moyenne de la pluralité de probabilités de défaut associée au pixel 2010. La matrice de probabilités de défaut correspond à l’image 200 de validation dans laquelle pour chaque pixel 2010, l’information de couleur ou de niveaux de gris associée au pixel 2010, est remplacée par la probabilité de défaut de pixel, c’est-à-dire que la matrice de probabilités de défaut est agencée en fonction de la position associée à chaque pixel 2010 dans l’image 200 de validation.
[0091] La matrice de probabilités de défaut peut donc être assimilée à une image en niveaux de gris dans laquelle une probabilité de défaut de pixel égale à 0 est représentée en noir et une probabilité de défaut de pixel égale à 1 ou à 100% est représentée en blanc.
[0092] A l’issue de la deuxième étape 102, chaque image 200 de validation de la base de données de validation est associée à une matrice de probabilité de défaut pour l’époque d'entrainement considérée.
[0093] Une troisième étape 103 du procédé 100 selon l’invention consiste, pour chaque époque d'entrainement, à déterminer à partir des matrices de probabilités calculées à l'étape 102 associées à ladite époque, une courbe de détection des défauts en fonction des fausses alarmes.
[0094] L'étape 103 de détermination d'une courbe de détection, pour chaque époque d'entrainement, peut comporter une pluralité de sous-étapes.
[0095] L’intervalle de seuils prédéfini est égal à [0 ; 1] ou à [0 ; 100] si les probabilités de défaut sont exprimées en pourcentage.
[0096] La pluralité de seuils est par exemple choisie dans l’intervalle de seuils prédéfini de manière par exemple que la pluralité de seuils soit espacée régulièrement. Dans le cas où l’intervalle de seuils prédéfini est égal à [0 ; 1], la pluralité de seuils est par exemple choisie de 0.1 à 0.9 par pas de 0.1 , et comporte donc 9 seuils. Il est également possible de définir la pluralité seuils avec des intervalles de taille variable, notamment si la courbe varie fortement autour de certaines valeurs, par exemple pour être plus représentatif de la criticité des valeurs. En outre, la pluralité de seuil peut être définie en fonction de critères métiers.
[0097] Une première sous-étape 1031 de l'étape 103 du procédé 100 selon l’invention consiste, pour chaque matrice de probabilités de défaut obtenue à l’issue de la deuxième étape 102, à seuiller la matrice de probabilités de défaut considérée par le seuil considéré, c’est-à-dire à remplacer chaque probabilité de défaut de pixel de la matrice de probabilités de défaut inférieure ou égal au seuil par 0 et chaque probabilité de défaut de pixel de la matrice de probabilités de défaut strictement supérieure au seuil par 1 .
[0098] La matrice de probabilités de défaut seuillée peut donc être assimilée à une image binaire dans laquelle une probabilité de défaut de pixel égale à 0 est représentée en noir et une probabilité de défaut de pixel égale à 1 ou à 100% est représentée en blanc.
[0099] A l’issue de la première sous-étape 1031 , chaque image 200 de la base de données de validation est associée à une matrice de probabilité de défaut seuillée pour le nombre d’époques considéré.
[00100] Le procédé 100 selon l’invention peut comporter une étape consistant pour chaque matrice de probabilité de défaut seuillée obtenue à l’issue de la première sous- étape 1031 , à lisser la matrice de probabilités de défaut seuillée considérée, par exemple par des opérations d’ouverture ou de fermeture morphologique.
[00101] Une deuxième sous-étape 1032 de l'étape 103 du procédé 100 selon l’invention est ensuite réalisée. Cette sous étape 1032 consiste à incrémenter un nombre de fausses alarmes associé au seuil considéré, le nombre de fausses alarmes
associé au seuil étant initialement nul, à chaque fois qu’une condition C1 est réalisée, en l’appliquant à chaque ensemble de pixels 2010 adjacents associés à une probabilité de défaut de pixel non nulle après le seuillage réalisé à la première sous-étape 1031 et éventuellement le lissage réalisé à la suite. La condition C1 est vérifiée si chaque pixel 2010 de l’ensemble considéré de pixels 2010 adjacents associés à une probabilité de défaut de pixel non nulle après le seuillage réalisé à la première sous- étape 1031 et éventuellement le lissage réalisé à la suite est associé à une information de défaut nulle dans la base de données de validation. Chaque ensemble de pixels 2010 adjacents doit par exemple être au moins de connexité 4. Ainsi, si par exemple dans toute la base de validation on obtient 200 ensembles de pixels adjacents 2010 associés à une probabilité de défaut de pixel non nulle après le seuillage réalisé à la première sous-étape 1031 et éventuellement le lissage réalisé à la suite et que la condition C1 est réalisée 100 fois, à la fin de la deuxième sous-étape 1032 le nombre de fausses alarmes associé au seuil considéré sera de 100.
[00102] Une troisième sous-étape 1033 de l'étape 103 du procédé selon l’invention est ensuite réalisée. Cette sous étape 1033 consiste à incrémenter un nombre de détections associé au seuil considéré, le nombre de détections associé au seuil étant initialement nul, à chaque fois qu’une condition C2 est réalisée, en l’appliquant à chaque ensemble de pixels 2010 adjacents associé à une information de défaut non nulle dans la base de données de validation. La condition C2 est vérifiée si au moins un pixel de l’ensemble considéré de pixels adjacents associé à une information de défaut non nulle dans la base de données de validation est également associé à une probabilité de défaut de pixel non nulle après le seuillage réalisé à la première sous- étape 1031 et éventuellement le lissage réalisé à la suite. Chaque ensemble de pixels 2010 adjacents doit par exemple être au moins de connexité 4. Ainsi, si par exemple dans la base de données de validation il y a 200 ensembles de pixels 2010 adjacents associé à une information de défaut non nulle dans la base de données de validation et que la condition C2 est réalisée 100 fois, à la fin de la troisième sous-étape 1033 le nombre de détections associé au seuil considéré sera de 100.
[00103] A l’issue de la deuxième sous-étape 1032 et la troisième sous-étape 1033, chaque seuil est associé à un nombre de détections et à un nombre de fausses
alarmes ayant été obtenus à partir de chaque matrice de probabilité de défaut créée pour le numéro d’époque considéré.
[00104] Une quatrième sous-étape 1034 de l'étape 103 du procédé 100 selon l’invention consiste à tracer pour le nombre d’époques considéré, une courbe représentant le nombre de détections en fonction du nombre de fausses alarmes.
[00105] [Fig. 3] La figure 3 représente une première courbe 1081 et une deuxième courbe 1081 obtenues à l’issue de la quatrième sous-étape 1034 pour respectivement un premier numéro d’époque d'entrainement parmi la pluralité d'époques d'entrainement et un deuxième numéro d’époque d'entrainement parmi la pluralité d'époques d'entrainement.
[00106] La courbe 1081 comporte un point 1082 par seuil considéré, correspondant au nombre de détections et au nombre de fausses alarmes associés au seuil obtenus à l’issue de la deuxièmes sous-étape 1032 et la troisième sous-étape 1033 de l'étape 103 du procédé 100 selon l'invention.
[00107] Sur la figure 3, la première courbe 1081 et la deuxième courbe 1081 comportent chacune 8 points 1082.
[00108] Selon un mode de réalisation secondaire, une cinquième sous étape 1035 de l'étape 103 du procédé 100 selon l’invention consiste à corriger la courbe 1081 obtenue à la quatrième sous-étape 1034 pour le nombre d’époques considéré.
[00109] La correction est réalisée en supprimant chaque point 1082 correspondant à un seuil pour lequel le nombre de fausses alarmes associé est inférieur au nombre de fausses alarmes associé au seuil immédiatement suivant dans l’intervalle de seuils prédéfini (le comportement nominal est que le nombre de fausses alarmes diminue lorsque la valeur du seuil croît). Le processus de suppression doit ainsi se faire itérativement en commençant par le point correspondant au seuil le plus bas. Le processus de suppression est recommencé depuis le seuil le plus bas restant dès qu’un point a été supprimé, jusqu’à ce que plus aucun point ne doive être supprimé et en considérant le seuil immédiatement suivant parmi les seuils non supprimés.
[00110] Par exemple, la pluralité de seuils peut comporter un premier seuil égal à 0.3 associé à un nombre F1 fausses alarmes, un deuxième seuil égal à 0.6 associé à un nombre F2 fausses alarmes, un troisième seuil égal à 0.7 associé à un nombre F3
fausses alarmes, un quatrième seuil égal à 0,8 associé à un nombre F4 fausses alarmes, et un cinquième seuil égal à 0.9 associé à un nombre F5 fausses alarmes tels que F4>F2>F1 >F3>F5. Etant donné que le point 1082 associé au premier seuil a moins de fausses alarmes que le point associé au deuxième seuil, le point associé au premier seuil est supprimé. Ainsi, puisqu’un point a été supprimé, le point de seuil le plus faible restant est choisi pour recommencer le processus de suppression. Dans cet exemple, le point de seuil le plus faible restant est le point associé au deuxième seuil. Comme le point associé au deuxième seuil est associé à plus de fausses alarmes que le point associé au troisième seuil, il n’est pas supprimé. Au contraire, le point associé au troisième seuil est associé à moins de fausses alarmes que le point associé au quatrième seuil, le point associé au troisième seuil est donc supprimé. Un point ayant été supprimé, le point de seuil le plus faible restant est choisi pour recommencer le processus de suppression. Le point de seuil le plus faible restant est le point associé au deuxième seuil. Le point associé au deuxième seuil est associé à moins de fausses alarmes que le point associé au quatrième seuil, le point associé au deuxième seuil est donc supprimé. A nouveau, le point de seuil le plus faible restant est choisi pour recommencer le processus de suppression. En l’occurrence, il s’agit du point associé au quatrième seuil qui est associé à plus de fausses alarmes que le point associé au cinquième seuil. Le quatrième seuil n’est ainsi pas supprimé. Le cinquième seuil étant le seuil le plus grand, il n’a pas de point associé à un seuil immédiatement supérieur, il n’est donc pas supprimé.
[00111] Sur la figure 3, les points 1082 qui seront supprimés de la première courbe 1081 et de la deuxième courbe 1082 lors de l'étape de correction sont entourés.
[00112] Selon un mode de réalisation secondaire, une sixième sous-étape 1036 de l'étape 103 du procédé 100 selon l’invention consiste à normaliser la courbe 1081 corrigée obtenue à la cinquième sous-étape 1035 pour le nombre d’époques considéré.
[00113] [Fig. 4] La figure 4 représente la première courbe 1081 et la deuxième courbe 1081 de la figure 3, obtenues à l’issue de la sixième sous-étape 1036.
[00114] La normalisation est réalisée en ajoutant à la courbe 1081 un point initial 1083 associé à un nombre de détections nul et à un nombre de fausses alarmes nul et un point final 1084 associé au nombre de détections maximal de la courbe 1081 corrigée obtenue à la cinquième sous-étape 1035 et à un nombre maximal de fausses alarmes prédéfini.
[00115] Le nombre maximal de fausses alarmes prédéfini est par exemple égal au nombre maximal de fausses alarmes en comparant les courbes obtenues à la quatrième étape 1034 ou à la cinquième sous-étape 1035 pour chaque nombre d’époques considéré.
[00116] A l’issue de la sixième sous-étape 1036, une courbe 1081 normalisée est obtenue pour chaque numéro d’époque de la pluralité de numéros d’époques.
[00117] Une quatrième étape 104 du procédé 100 selon l’invention consiste à déterminer un nombre N prédéfini des meilleures époques d'entrainement parmi la pluralité d'époques d'entrainement en fonction des courbes 1081 de détection de défauts et en fonction d’un critère métier.
[00118] La détermination des N meilleures époques peut être réalisée en sélectionnant N courbes 1081 de détection de défauts en fonction du critère métier. La sélection peut être réalisée par exemple automatiquement via un algorithme de sélection ou être établie par un opérateur. Le critère métier pour effectuer la sélection est, par exemple, basé sur les connaissances de l’opérateur et/ou en fonction de l’application concernée. Le critère peut être basé sur l’aire sous les courbes, une densité de détection dans les courbes, un motif (« pattern » en anglais) de détection tel qu’une forte densité de détection puis une faible densité de détection, la régularité des courbes, etc.
[00119] Selon un mode de réalisation secondaire, une sous-étape 1041 de l'étape 104 de détermination, consiste à calculer l’aire sous chaque courbe 1081 normalisée obtenue à l’issue de la sixième sous-étape 1036 de l'étape 103 du procédé 100 selon l'invention et à sélectionner un nombre N prédéfini de courbes 1081 correspondant aux courbes 1081 présentant les N aires calculées les plus élevées.
[00120] N est par exemple compris entre 2 et 50.
[00121] A Tissue de la quatrième étape 104, ont été déterminées et sélectionnées les N meilleures époques correspondant aux N courbes sélectionnées. On entend par détermination d’une époque, la sélection de l’état du réseau à cette époque. On obtient ainsi N jeux de paramètres connus associés aux N époques qui peuvent être chargés dans le réseau a posteriori.
[00122] Une cinquième étape 105 du procédé 100 selon l’invention est réalisée pour chaque époque d'entrainement de l'ensemble du nombre N de meilleures époques d'entrainement.
[00123] La cinquième étape 105 consiste pour chaque époque d'entrainement de l’ensemble du nombre N de meilleures époques, en une application 105, sur chaque sous-image 201 de l’image 200 à contrôler, du réseau de neurones artificiels avec les paramètres associés à ladite époque, pour obtenir une matrice de résultat de la sous- image contrôlée associée à ladite époque d'entrainement. Chaque coefficient de la matrice de résultat d’une sous-image contrôlée peut correspondre à une probabilité de défaut d'un pixel de la sous-image 201 .
[00124] A Tissue de la cinquième étape 105, chaque pixel 2010 de la sous-image 201 est associé à une pluralité de probabilités de défaut comportant au moins une probabilité de défaut par numéro d’époque sélectionné.
[00125] Une sixième étape 106 du procédé 100 selon l’invention consiste pour chaque sous-image 201 de l’image à contrôler, à fusionner des matrices de résultat des sous-images contrôlées, chaque matrice de résultat d’une sous-image contrôlée étant issue de la cinquième étape 105.
[00126] La fusion est par exemple réalisée en calculant la moyenne des coefficients de chaque matrice de résultat correspondant aux sous-image contrôlées, le résultat de la fusion étant une matrice dont chaque coefficient est égal ou dépend de la moyenne de chaque coefficient de même position de chaque matrice de résultats d’une sous-image contrôlée.
[00127] A Tissue de la sixième étape 106, une prédiction de défaut est obtenue pour chaque sous-image 201 de l’image 200 à contrôler, correspondant à la probabilité qu’un défaut se trouve dans la sous-image 201 . Cette probabilité est soit donnée pixel
par pixel (dans le cas de segmentation sémantique), soit donnée pour la sous-image entière (dans le cas de classification).
[00128] Une septième étape 107 optionnelle consiste à reconstituer une matrice de résultat de l’image contrôlée 200 en fusionnant les matrices de résultat des sous- images 201 obtenues à l’issue de la sixième étape 106. Dans ce cas la prédiction de défaut est obtenue pour l’image 200 à contrôler, correspondant qu’un défaut se trouve dans l’image 200. Cette probabilité est donnée pixel par pixel.
Claims
REVENDICATIONS
[Revendication 1] Procédé (100) de détection de défaut pour une pièce aéronautique à partir d’au moins une image (200) à contrôler de la pièce aéronautique subdivisée en une pluralité de sous-images (201 ), le procédé (100) comprenant les étapes suivantes :
- Entrainement (101 ) supervisé, pendant une pluralité d’époques d'entrainement, d’un réseau de neurones artificiels configuré pour fournir une probabilité de défaut pour chaque pixel (2010) d’une sous-image (201 ) d'entrainement d'une image (200) d’entrainement,
- Pour chaque époque d'entrainement et pour chaque image (200) d’un set de validation (V1 ), création (102) d’une matrice de probabilités de défaut à partir d’une fusion de probabilités de défaut déterminées pour chaque pixel (2010) de chaque sous-image (201 ) de l’image (200) du set de validation (V1),
- Pour chaque époque d'entrainement, détermination (103), à partir des matrices de probabilités de défaut associées à ladite époque d'entrainement, d’une courbe de détection des défauts en fonction de fausses alarmes,
- Détermination (104) d’un ensemble des N meilleures époques d'entrainement de la pluralité d’époques d'entrainement en fonction des courbes de détection des défauts en fonction des fausses alarmes et d’un critère métier, N étant un entier supérieur ou égal à 1 ,
- Pour chaque époque d'entrainement des N meilleures époques, application (105), sur chaque sous-image (201 ) de l’image (200) à contrôler, du réseau de neurones artificiels avec des paramètres associés à ladite époque, pour obtenir une sous-image contrôlée associée à ladite époque d'entrainement,
- . Pour chaque sous-image (201 ) de l’image (200) à contrôler, fusion (106) des matrices de résultat des N sous-images contrôlées pour obtenir des probabilités de présence de défaut sur la sous-image (201 ).
[Revendication 2] Procédé (100) selon la revendication 1 , selon lequel l’entraînement supervisé est réalisé, pour la pluralité d’époques, à partir d’une base de données d’entraînement, le nombre d’époques d'entrainement de la pluralité d’époques d'entrainement étant déterminé par un critère d'arrêt, chaque époque d'entrainement parmi la pluralité d'époques d'entrainement étant associée à un numéro, la base de données d’entraînement comprenant une pluralité de sous-images (201 ) pour chaque image (200) d’une pluralité d’images (200) d’entraînement de pièces aéronautiques, chaque sous-image (201 ) étant associée à une information de défaut pour chaque pixel (2010) de la sous-image (201 ).
[Revendication s] Procédé (100) selon l'une quelconques des revendications précédentes, selon lequel l'étape de création (102) d'une matrice de probabilité de défaut associée à chaque époque d’entrainement et associée à chaque image (200) du set de validation (V1 ) se fait selon les sous-étapes suivantes : o Pour chaque sous-image (201 ) de l'image (200) du set de validation (V1 ), utilisation (1021 ) sur la sous-image (201 ), du réseau de neurones artificiels avec les paramètres associés à ladite époque, pour obtenir une probabilité de défaut pour chaque pixel (2010) de la sous-image (201 ), o Association (1022) à chaque pixel (2010) de l’image (200) du set de validation (V1 ), une probabilité de défaut de pixel calculée à partir de la fusion de chaque probabilité de défaut obtenue pour le pixel (2010) ;
[Revendication 4] Procédé (100) selon l'une quelconques des revendications précédentes, dans lequel l'étape de détermination (103) d’une courbe de détections de défauts en fonction des fausses alarmes associée à une époque d'entrainement se fait selon les sous-étapes suivantes : o Pour chaque seuil d’une pluralité de seuils compris dans un intervalle de seuils prédéfini, et pour chaque image (200) du set de validation (V1 ) :
Seuillage (1031 ) de la matrice de probabilités de défaut associée à ladite image (200) et à ladite époque par le seuil ;
• Pour chaque ensemble de pixels (2010) adjacents de ladite image (200) du set de validation (V1 ) ne comprenant que des pixels associés à une probabilité de défaut de pixel non nulle dans la matrice de probabilités de défaut seuillée associée à l'image (200) :
■ Si aucun pixel (2010) de l’ensemble de pixels (2010) n’est associé à une information de défaut non nulle dans le set de validation (V1 ), incrémentation (1032) d’un nombre de fausses alarmes associé au seuil ;
• Pour chaque ensemble de pixels adjacents d’information de défaut non nulle dans le set de validation (V1 ), si au moins un pixel (2010) de cet ensemble de pixels est associé à une probabilité de défaut de pixel non nulle dans la matrice de probabilités de défaut seuillée, incrémentation (1033) d’un nombre de détections associé au seuil ; o Tracé (1034) d’une courbe (1081 ), associée à ladite époque, représentant le nombre de détections en fonction du nombre de fausses alarmes, comportant un point (1082) par seuil, correspondant au nombre de détections et au nombre de fausses alarmes associés au seuil ;
[Revendication s] Procédé (100) selon l'une quelconques des revendications précédentes, selon lequel, pour chaque époque d'entrainement parmi l'ensemble des N meilleures époques d'entrainement, le résultat de contrôle d’une sous-image est une matrice dont chaque coefficient correspond à une probabilité de défaut pour chaque pixel (2010) de la sous-image (201 ).
[Revendication 6] Procédé (100) selon l'une quelconques des revendications précédentes, selon lequel le réseau de neurones artificiels est configuré pour fournir à partir d’une sous-image (201 ), une probabilité de défaut par pixel (2010) de la sous- image (201 ), chaque sous-image (201 ) de la base de données d’entraînement et chaque sous-image (201 ) de la base de données de validation (V1) étant associée à une information de défaut par pixel (2010) de la sous-image (201 ).
Tl
[Revendication 7] Procédé (100) selon l’une des revendications 1 à 5, selon lequel le réseau de neurones artificiels est configuré pour fournir à partir d’une sous-image (201 ), une probabilité de défaut pour l’ensemble des pixels (2010) de la sous-image (201 ), chaque sous-image (201 ) de la base de données d’entraînement et chaque sous-image (201 ) de la base de données de validation (V1 ) étant associée à une information de défaut pour l’ensemble des pixels (2010) de la sous-image (201 ).
[Revendication s] Procédé (100) selon l’une quelconque des revendications précédentes, selon lequel l'étape de détermination (103) de la courbe de détections de défaut comprend en outre une étape de correction (1035) par suppression de chaque point correspondant à un seuil pour lequel le nombre de fausses alarmes associé au seuil est inférieur au nombre de fausses alarmes associé au seuil immédiatement suivant dans l’intervalle de seuils prédéfini suivant l’étape de Tracé, l’étape de suppression étant recommencée à chaque point supprimé à partir du seuil le plus bas restant.
[Revendication 9] Procédé (100) selon la revendication précédente, dans lequel la courbe (1081 ) corrigée est normalisée par ajout d’un point initial (1083) associé à un nombre de détections nul et à un nombre de fausses alarmes nul et ajout d’un point final (1084) associé au nombre de détections maximal de la courbe (1081 ) corrigée et à un nombre maximal de fausses alarmes prédéfini, suivant l’étape de correction (1035).
[Revendication 10] Procédé (100) selon la revendication précédente où le critère métier pour la détermination (104) d’un ensemble des N meilleures époques d'entrainement de la pluralité d’époques d'entrainement en fonction des courbes (1081 ) de détection des défauts est l’aire sous la courbe (1081 ).
[Revendication 11] Procédé (100) selon l’une quelconque des revendications précédentes, dans lequel chaque pixel (2010) d’une image (200) est associé à une position dans l’image (200) et l’étape (102) de création de la matrice de probabilités de défaut pour une image (200) est réalisée en outre à partir de la position associée à chaque pixel (2010) de l’image (200).
[Revendication 12] Procédé (100) selon l’une quelconque des revendications précédentes, selon lequel lors de la création de la matrice de probabilités de défaut pour une image (200), une fusion est réalisée, pour chaque pixel (2010) de l’image (200) associé à une pluralité de probabilités de défaut, de la pluralité de probabilités de défaut associée au pixel (2010).
[Revendication 13] Procédé (100) selon l’une quelconque des revendications précédentes, où les probabilités de défaut pour chaque sous-image (201) de l’image à contrôler (200) obtenues à l’issue de l’étape (106) sont fusionnées (107) afin d’obtenir des probabilités de défauts pour l’image à contrôler (200).
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2201348A FR3132779B1 (fr) | 2022-02-16 | 2022-02-16 | Procédé de détection de défauts sur une pièce aéronautique |
| PCT/FR2023/050093 WO2023156721A1 (fr) | 2022-02-16 | 2023-01-24 | Procédé de détection de défauts sur une pièce aéronautique |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4479931A1 true EP4479931A1 (fr) | 2024-12-25 |
Family
ID=81580886
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP23707128.7A Pending EP4479931A1 (fr) | 2022-02-16 | 2023-01-24 | Procédé de détection de défauts sur une pièce aéronautique |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20250157020A1 (fr) |
| EP (1) | EP4479931A1 (fr) |
| CN (1) | CN118715542A (fr) |
| FR (1) | FR3132779B1 (fr) |
| WO (1) | WO2023156721A1 (fr) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2023152476A (ja) * | 2022-04-04 | 2023-10-17 | トヨタ自動車株式会社 | 検査装置、検査方法及び検査用コンピュータプログラム |
| CN118655221B (zh) * | 2024-08-09 | 2024-12-13 | 宝鸡市永盛泰钛业有限公司 | 一种基于激光超声的钛合金铸件缺陷检测系统 |
-
2022
- 2022-02-16 FR FR2201348A patent/FR3132779B1/fr active Active
-
2023
- 2023-01-24 WO PCT/FR2023/050093 patent/WO2023156721A1/fr not_active Ceased
- 2023-01-24 EP EP23707128.7A patent/EP4479931A1/fr active Pending
- 2023-01-24 CN CN202380022223.5A patent/CN118715542A/zh active Pending
- 2023-01-24 US US18/838,297 patent/US20250157020A1/en active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| WO2023156721A1 (fr) | 2023-08-24 |
| US20250157020A1 (en) | 2025-05-15 |
| FR3132779B1 (fr) | 2024-07-26 |
| CN118715542A (zh) | 2024-09-27 |
| FR3132779A1 (fr) | 2023-08-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP4479931A1 (fr) | Procédé de détection de défauts sur une pièce aéronautique | |
| CA2284895C (fr) | Procede d'inspection de surface d'une bande en defilement par segmentation d'image en zones suspectes | |
| FR2982364A1 (fr) | Procede et dispositif d'estimation d'un taux de porosite d'un echantillon de materiau a partir d'au moins une image codee en niveaux de gris | |
| FR3058816A1 (fr) | Procede de controle non-destructif de piece metallique | |
| FR3072812B1 (fr) | Procede d'estimation d'une note d'adhesion entre la composition de caoutchouc et les plis de renfort d'une eprouvette representative d'un pneumatique a caracteriser. | |
| EP0769760B1 (fr) | Procédé de détection automatique des zones expertisables dans des images de pièces mécaniques | |
| FR3071611A1 (fr) | Procede et dispositif de controle non destructif d'une piece aeronautique | |
| EP1129432B1 (fr) | Procede de comparaison d'images enregistrees formees de pixels representant des equipotentielles d'au moins une puce de circuit integre | |
| EP4189602B1 (fr) | Procédé de contrôle automatique de qualité d'une pièce aéronautique | |
| EP4089404B1 (fr) | Système d'identification de défaut dans une canalisation | |
| WO2024175698A1 (fr) | Procede de caracterisation d'un defaut d'une canalisation | |
| EP3830789B1 (fr) | Analyse d'au moins un type de defauts parmi une pluralite de types de defauts entre au moins deux echantillons | |
| WO2026087844A1 (fr) | Procédé de contrôle non-destructif d'une pièce composite tissée avec indicateur de la qualité du modèle neuronal utilisé pour la détection d'anomalie | |
| FR3105528A1 (fr) | Procédé de détection de défauts d’un élément en matériau composite | |
| FR3117597A1 (fr) | Procédé de contrôle non destructif pour une pièce aéronautique | |
| EP4118616B1 (fr) | Procédé et système de contrôle non destructif d'une pièce aéronautique | |
| WO2024110586A1 (fr) | Procédé de robustification des réseaux de neurones multicouches par hybridation avec la commande prédictive mpc vis-à-vis d'une attaque antagoniste | |
| EP4724978A1 (fr) | Detection d'anomalie dans une piece aeronautique | |
| WO2024184324A1 (fr) | Système de réseaux neuronaux par distillation, procédés d'entrainement améliorés | |
| FR3147005A1 (fr) | Procédé de détection de la présence d’arcs électriques et dispositif associé | |
| WO2024224007A1 (fr) | Procede de determination d'un squelette d'un toron d'un materiau composite tisse | |
| FR3121468A1 (fr) | Procédé de détection de la consistance du marin excavé par un tunnelier | |
| FR3154842A1 (fr) | Procédé de contrôle de l'observation par un système de pistage d'un espace et dispositif associé | |
| FR3125156A1 (fr) | Controle non destructif d’une piece | |
| FR3149111A1 (fr) | Procede pour tester un modele d’apprentissage machine a partir d’une analyse d’une valeur de contribution d’un descripteur a la prediction |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20240904 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) |