IP Library Granted Patent US 12,223,422
Granted Patent B2
US 12,223,422 · App. 17/062,019 · Granted Feb 11, 2025

Continuous training methods for systems identifying anomalies in an image of an object

Inventor: Negin Sokhandan Asl (Montreal, CA)
Assignee: SERVICENOW CANADA INC.
G06N3/08G06V10/7753G06V10/82
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,223,422
App. No.
17/062,019
Granted
Feb 11, 2025
Kind
B2
Abstract

A system identifying anomalies in an image of an object is first trained using first sets of images corresponding to first anomaly types for the object. A model of the object is formed in a latent space. A label for each anomalous image is used to calculate vectors containing means and standard deviations for each first anomaly types. The means and standard deviations are used to calculate a log-likelihood loss for each first anomaly type. The system is retrained using second sets of images corresponding to second anomaly types for the object. The vectors are supplemented using labels for each second anomaly types. A statistically sufficient sample of information in the means and standard deviations vectors is supplied to the latent space. A log-likelihood loss for each of the first and second anomaly types is calculated based on their respective mean and standard deviation.

Claims (70)

1. A computer-implemented continuous training method for a system identifying anomalies in an image of an object, comprising:

training the system by:

supplying, to an image encoder, one or more first sets of images corresponding to one or more first anomaly types for the object, the image encoder forming a model of the object in a latent space,

supplying labels to an anomaly encoder, each label corresponding to a respective image among the one or more first sets of images corresponding to the one or more first anomaly types for the object, each label identifying a related anomaly type for the object,

calculating, at the anomaly encoder, a vector containing a mean for each of one or more first model modes defined for the one or more first anomaly types,

calculating, at the anomaly encoder, a vector containing a standard deviation for each of the one or more first model modes defined for the one or more first anomaly types, and

calculating a log-likelihood loss for each of the one or more first anomaly types based on their respective mean and standard deviation; and

retraining the system by:

supplying, to the image encoder, one or more second sets of images corresponding to one or more second anomaly types for the object, the image encoder updating the model of the object in the latent space,

supplying additional labels, to the anomaly encoder, each additional label corresponding to a respective image among the one or more second sets of images corresponding to the one or more second anomaly types for the object, each additional label identifying a related anomaly type for the object,

updating, at the anomaly encoder, the vector containing the mean for each of the one or more first model modes defined for the one or more first anomaly types by adding a mean for each of one or more second model modes defined for the one or more second anomaly types,

updating, at the anomaly encoder, the vector containing the standard deviation for each of the one or more first model modes defined for the one or more first anomaly types by adding a standard deviation for each of one or more second model modes defined for the one or more second anomaly types,

supplying, to the latent space, a statistically sufficient sample of information contained in the vectors containing the means and standard deviations, and

calculating a log-likelihood loss for each of the first and second anomaly types based on their respective mean and standard deviation.

2. The method of claim 1 , wherein the model of the object is a flow-based model.

3. The method of claim 1 , wherein the model of the object is a generative adversarial network model.

4. The method of claim 1 , wherein the model of the object is a variational autoencoder model.

5. The method of claim 1 , wherein:

training the system further comprises using classification information for each of the one or more first anomaly types when forming the model of the object in the latent space; and

retraining the system further comprises using classification information for each of the one or more first anomaly types and for each of the one or more second anomaly types when updating the model of the object in the latent space.

6. The method of claim 5 , further comprising:

supplying, to a classifier, a first label for each image among the one or more first sets of images;

calculating, by the classifier, a first classification loss for each of the first anomaly types;

using the first classification losses for training the system;

supplying, to the classifier a second label for each image among the one or more second sets of images;

calculating, by the classifier, a second classification loss for each of the second anomaly types; and

using the second classification losses for retraining the system.

7. The method of claim 6 , further comprising:

supplying, to the classifier, a content of the latent space;

using, at the classifier, the content of the latent space to classify each of the one or more first anomaly types for the object; and

using, at the classifier, the content of the latent space to classify each of the one or more second anomaly types for the object.

8. The method of claim 7 , wherein the content of the latent space supplied to the classifier is a portion of the latent space.

9. The method of claim 1 , wherein the retraining of the system is performed without downtime of the system.

10. The method of claim 1 , wherein training the system further comprises:

supplying, to an image encoder the system, a set of anomaly-free images of an object;

encoding, by the image encoder, each anomaly free image of the object to form a corresponding image model in the latent space;

generating, in an image decoder of the system, an output image corresponding to each of the image models; and

calculating, in the system, a reconstruction loss based on a norm of differences between each anomaly-free image of the object and the corresponding output image.

11. The method of claim 10 , wherein the anomaly-free images of the object are augmented images.

12. The method of claim 1 , wherein training the system further comprises calculating a regularization loss based on a ratio of an output of a previous layer of the model of the object over an output of a current layer of the model of the object.

13. The method of claim 1 , wherein the images of the one or more first sets of images corresponding to the one or more first anomaly types for the object and the images of the one or more second sets of images corresponding to the one or more second anomaly types for the object are augmented images.

14. The method of claim 13 , wherein each augmented image is obtained by adding thereto an alteration selected from a random noise, a random cropping, a random rotation, a random set of white patches, a random set of black patches and a combination thereof.

15. A system for identifying anomalies in an object, comprising:

an image encoder;

an anomaly encoder; and

a training engine adapted to train the system by:

supplying, to the image encoder, one or more first sets of images corresponding to one or more first anomaly types for the object, the image encoder forming a model of the object in a latent space,

supplying labels to the anomaly encoder, each label corresponding to a respective image among the one or more first sets of images corresponding to the one or more first anomaly types for the object, each label identifying a related anomaly type for the object,

calculating, at the anomaly encoder, a vector containing a mean for each of one or more first model modes defined for the one or more first anomaly types,

calculating, at the anomaly encoder, a vector containing a standard deviation for each of the one or more first model modes defined for the one or more first anomaly types, and

calculating a log-likelihood loss for each of the one or more first anomaly types based on their respective mean and standard deviation; and

the training engine being also adapted to retrain the system by:

supplying, to the image encoder, one or more second sets of images corresponding to one or more second anomaly types for the object, the image encoder updating the model of the object in the latent space,

supplying additional labels to the anomaly encoder, each additional label corresponding to a respective image among the one or more second sets of images corresponding to the one or more second anomaly types for the object, each label identifying a related anomaly type for the object,

updating, at the anomaly encoder, the vector containing the mean for each of the one or more first model modes defined for the one or more first anomaly types by adding a mean for each of one or more second model modes defined for the one or more second anomaly types,

updating, at the anomaly encoder, the vector containing the standard deviation for each of the one or more first model modes defined for the one or more first anomaly types by adding a standard deviation for each of one or more second model modes defined for the one or more second anomaly types,

supplying, to the latent space, a statistically sufficient sample of information contained in the vectors containing the means and standard deviations, and

calculating a log-likelihood loss for each of the first and second anomaly types based on their respective mean and standard deviation.

16. The system of claim 15 , further comprising an image decoder, wherein:

the image encoder implements a first function;

the image decoder implements a second function, the second function being an inverse of the first function; and

the image encoder and the image decoder share a common set of weights.

17. The system of claim 16 , further comprising:

an input interface operatively connected to the image encoder; and

an output interface operatively connected to the image decoder;

wherein:

the input interface is adapted to receive an input image of the object from an image source and to provide the input image to the image encoder;

the image encoder is adapted to generate an image model based on the input image of the object;

the image decoder is adapted to generate a decoded image of the object based on the image model; and

the output interface is adapted to transmit the decoded image of the object to an image receiver.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2025
From: SERVICENOW CANADA INC.
To: SERVICENOW, INC.
Reel/Frame 070644/0956 →
MERGER Recorded Dec 21, 2021
From: ELEMENT AI INC.
To: SERVICENOW CANADA INC.
Reel/Frame 058562/0381 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2020
From: SOKHANDAN ASL, NEGIN
To: ELEMENT AI INC.
Reel/Frame 054144/0311 →
Continuity (1)
Related Publication 20220108163A1 · Apr 7, 2022
References Cited (34)
US 10043088B2 · Odry et al. · 2018 [cited by applicant]
US 10395362B2 · Gupta et al. · 2019 [cited by applicant]
US 10475174B2 · Lim et al. · 2019 [cited by applicant]
US 10540578B2 · Madani et al. · 2020 [cited by applicant]
US 11295462B2 · Bertram · 2022 [cited by examiner]
US 20130084006A1 · Zhang · 2013 [cited by examiner]
US 20180374569A1 · Niculescu-Mizil · 2018 [cited by applicant]
US 20190164287A1 · Gregson et al. · 2019 [cited by applicant]
US 20190385018A1 · Ngo et al. · 2019 [cited by applicant]
US 20200074622A1 · Yang et al. · 2020 [cited by applicant]
US 20200134804A1 · Song et al. · 2020 [cited by applicant]
US 20220067491A1 · Vengertsev · 2022 [cited by examiner]
US 20220108163A1 · Sokhandan Asl · 2022 [cited by examiner]
US 20240086705A1 · Hiromoto · 2024 [cited by examiner]
US 20240095592A1 · Hiromoto · 2024 [cited by examiner]
CN 111292754 · 2020 [cited by examiner]
KR 101910926 · 2018 [cited by examiner]
TW 202030652 · 2020 [cited by examiner]
TW 202032416 · 2020 [cited by examiner]
WO WO0079271 · 2000 [cited by examiner]
WO WO2020079685 · 2020 [cited by examiner]
WO 2021062133A1 · 2021 [cited by applicant]
WO WO2021062133 · 2021 [cited by examiner]
Bergmann et al., “MVTec AD—A Comprehensive Real-World Dataset for Unsupervised Anomaly Detection”, Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019, 9 pages. [cited by applicant]
Zhai et al., “A generative adversarial network based framework for unsupervised visual surface inspection”, IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 2018, pp. 1283-1287. [cited by applicant]
Ferguson et al., “Detection and segmentation of manufacturing defects with convolutional neural networks and transfer learning”, Smart and sustainable manufacturing systems 2, 2018, 43 pages, https://www.ncbi.nlm.nih.go… [cited by applicant]
Kobyzev et al., “Normalizing flows: An introduction and review of current methods”, IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, pp. 1-17. [cited by applicant]
Kingma et al., “Glow: Generative flow with invertible 1x1 convolutions.” Advances in neural information processing systems, 2018, 10 pages. [cited by applicant]
Wikipedia—Backpropagation, https://en.wikipedia.org/wiki/Backpropagation, pdf 8 pages. [cited by applicant]
Wikipedia—PyTorch, https://en.wikipedia.org/wiki/PyTorch, pdf 4 pages. [cited by applicant]
Wikipedia—Cross entropy, https://en.wikipedia.org/wiki/Cross_entropy, pdf 4 pages. [cited by applicant]
“LΛ2-Norm”, WolframMatchWorld, https://mathworld.wolfram.com/L2-Norm.html, pdf 1 page. [cited by applicant]
Office Action with regard to the counterpart U.S. Appl. No. 17/062,004 mailed Mar. 3, 2022. [cited by applicant]
Detection and Segmentation of Manufacturing Defects, et al, 2018; https://arxiv.org/pdf/1808.02518.pdf (Year: 2018). [cited by applicant]