WO2023166773A1 - Image analysis system, image analysis method, and program - Google Patents

Image analysis system, image analysis method, and program Download PDF

Info

Publication number
WO2023166773A1
WO2023166773A1 PCT/JP2022/036388 JP2022036388W WO2023166773A1 WO 2023166773 A1 WO2023166773 A1 WO 2023166773A1 JP 2022036388 W JP2022036388 W JP 2022036388W WO 2023166773 A1 WO2023166773 A1 WO 2023166773A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
image
evaluation
image analysis
sub
Prior art date
Application number
PCT/JP2022/036388
Other languages
French (fr)
Japanese (ja)
Inventor
敦 宮本
Original Assignee
株式会社日立製作所
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Publication of WO2023166773A1 publication Critical patent/WO2023166773A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present invention relates to an image analysis system, an image analysis method, and a program.
  • the present invention claims priority of Japanese patent application number 2022-033635 filed on March 4, 2022, and for designated countries where incorporation by reference of documents is permitted, the content described in the application is incorporated into this application by reference.
  • step S1 the appearance of the welded portion 201 of the workpiece 200 is inspected by the shape measurement unit 21 of the appearance inspection apparatus 20 (step S1).
  • step S5 the presence or absence of shape defects and the type of shape defects are specified in the acquired image data.
  • step S6 the learning data set can be reviewed and re- Creation or new creation is performed (step S6), and re-learning of the judgment model is executed using the learning data set created in step S6 (step S7).”
  • the accuracy of the judgment model for judging the quality of the shape of the welded part is improved, and the quality of the shape of the welded part is judged. It is possible to improve the accuracy of determining the presence and type of important shape defects.”
  • Patent Document 1 The technique disclosed in Patent Document 1 is inefficient because it requires advance preparation such as classifying image data for learning in advance according to the material and shape of the workpiece and performing data expansion processing.
  • the present invention has been made in view of the above points, and aims to provide a technique for efficiently learning in image analysis using machine learning.
  • the present application includes multiple means for solving at least part of the above problems, and the following are examples of such means.
  • an image analysis system of the present invention is an image analysis system comprising at least one processor and a memory resource, wherein the processor captures an evaluation object for learning to obtain a learning image;
  • An evaluation image obtaining step of capturing an evaluation image to obtain an evaluation image, and an evaluation step of inputting the evaluation image to a trained evaluation engine and outputting an estimated evaluation value are executed.
  • FIG. 4 is a diagram showing an example of an overall processing sequence in an image analysis system based on machine learning;
  • FIG. 4 is a diagram showing an example of a learning method of an evaluation engine;
  • FIG. 4 is a diagram schematically showing an example of a learning state of an evaluation engine; It is a figure which shows an example of a selection condition input screen. It is a figure which shows an example of the hardware constitutions of an image analysis system.
  • CNN Convolutional Neural Network
  • a method of inspecting is disclosed.
  • machine learning-based image processing covers a wide range of fields, including semantic segmentation, recognition, image classification, image conversion, and image quality improvement.
  • an image of an object to be evaluated for learning (learning image) is input, and the evaluation engine is adjusted so that the difference between the estimated evaluation value output from the evaluation engine and the correct evaluation value taught in advance becomes small. update the internal parameters of , such as network weights and biases.
  • the evaluation value is the inspection result such as the presence or absence of defects and the degree of abnormality of the evaluation target.
  • the evaluation value is the label of the region. is an image of
  • mini-batches As for the timing of updating the internal parameters, instead of learning all the training images at once, it is common to divide the training images into sets called mini-batches and update the internal parameters for each mini-batch. be. This is called mini-batch learning, and when all mini-batches have been learned, all training images have been used for learning. Learning all these mini-batches once is called one epoch, and the internal parameters are optimized by repeating the epoch many times. We may also shuffle the training images in the mini-batch for each epoch.
  • data cleansing reduces the number of learning images by deleting or integrating unnecessary or redundant images included in the learning image group in advance.
  • the structures and appearances of evaluation objects are diverse. If the object to be evaluated has many pattern variations, a large number of training images are essentially required, and there is a limit to how much training images can be reduced by data cleansing. If images to be learned are excluded by sampling or the like, there is a risk of impairing evaluation performance. Therefore, there is a demand for a mechanism for quickly learning the internal parameters of the evaluation engine without degrading the evaluation performance.
  • FIG. 1 is a diagram showing an example of an overall processing sequence in an image analysis system 1 based on machine learning.
  • Image processing includes visual inspection, semantic segmentation and recognition, image classification, image transformation and image quality improvement.
  • a processing sequence executed by the image analysis system 1 is roughly divided into a learning phase 110 and an evaluation phase 120 .
  • the evaluation object P is imaged for learning to acquire a learning image (step S0).
  • An image is acquired by imaging the surface or inside of the evaluation object P as a digital image with an imaging device such as a CCD (Charge Coupled Device) camera, optical microscope, charged particle microscope, ultrasonic inspection device, X-ray inspection device, etc. do.
  • an imaging device such as a CCD (Charge Coupled Device) camera, optical microscope, charged particle microscope, ultrasonic inspection device, X-ray inspection device, etc. do.
  • CCD Charge Coupled Device
  • acquisition it is possible to simply receive an image captured by another system and store it in the storage resource of the image analysis system.
  • step S1 data cleansing may be performed on all the learning image groups Q captured in step S0 to reduce the number of learning images by deleting or integrating unnecessary or redundant learning images in advance (step S1 ).
  • a correct evaluation value g_i is given to each learning image f_i.
  • the evaluation value is the inspection result such as the presence or absence of defects and the degree of abnormality of the evaluation object P.
  • the evaluation value is the label of the region.
  • the evaluation value is the image after conversion. is.
  • a correct evaluation value is assigned to these evaluation criteria based on a user's visual judgment or a numerical value analyzed by another processing device/means.
  • the evaluation engine 111 learns using the learning image ⁇ f_i ⁇ and the correct evaluation value ⁇ g_i ⁇ (step S2).
  • the evaluation engine 111 is an estimator that receives a learning image f_i (an evaluation image S in the evaluation phase 120) and outputs an estimated evaluation value g ⁇ _i.
  • a variety of machine learning engines can be used for the evaluation engine 111, and examples include deep neural networks represented by Convolutional Neural Network (CNN).
  • CNN Convolutional Neural Network
  • the internal parameters 113 of the evaluation engine 111 are optimized so that an estimated evaluation value g ⁇ _i close to the taught correct evaluation value g_i is output when the learning image f_i is input.
  • the internal parameters 113 include "hyperparameters” such as network structure, activation function, learning rate and termination conditions of learning, and "model parameters” such as weights (coupling coefficients) and biases between nodes of the network. is included.
  • optimization of this internal parameter 113 is performed by iterative learning, and the sub-learning image group ⁇ f'_j(k) ⁇ used in the k-th iterative learning is selected by the learning image selection engine 112 as the learning image group ⁇ f_i ⁇ (R) Choose from
  • the actual evaluation object P is imaged (step S0), and an evaluation image S is obtained.
  • the evaluation image S is input to the evaluation engine 111 using the internal parameters 113 learned in the learning phase 110, and automatic evaluation is performed (step S3).
  • the user confirms this evaluation result as necessary (step S4).
  • data cleansing is known in which unnecessary or redundant images included in a group of learning images are deleted or integrated in advance to reduce the number of learning images. S1).
  • the structure and appearance of the evaluation target P are diverse. When many pattern variations exist in the evaluation object P, many learning images are essentially required, and there is a limit to how much learning images can be reduced by data cleansing. If the learning images to be learned are excluded by sampling or the like, there is a risk of impairing the evaluation performance. Therefore, this embodiment provides a mechanism for quickly learning the internal parameters 113 of the evaluation engine 111 without degrading the evaluation performance.
  • FIG. 2 is a diagram showing an example of the learning method of the evaluation engine 111. As shown in FIG. A method for quickly learning the internal parameters 113 of the evaluation engine 111 will be described with reference to FIG.
  • each learning image is not divided in advance into two choices of use/exclusion, but the learning image is dynamically used/excluded according to the learning state of the evaluation engine 111 (temporarily during iterative learning). used or excluded).
  • the entire learning step step S2 in FIG. 1
  • the selection probability P_k(f_i) (201) ("201" is a reference sign) is calculated for each iterative learning for the learning image f_i, and based on this selection probability P_k(f_i) (201), k A sub-learning image group ⁇ f'_j(k) ⁇ (T) is obtained by determining whether or not to use the learning image f_i in the iterative learning of the iteration.
  • the selection probability P_k(f_i) (201) can be set high in the next k-th iterative learning. Desirably.
  • the selection probability P_(k+1)(f_i) (201) is set low in the next k+1-th iterative learning. be able to.
  • the selection probability P_(k+2)(f_i) (201) is set large in the next k+2 iterative learning. is desirable.
  • the sub-learning image group ⁇ f'_j(k) ⁇ (T) is obtained in consideration of this priority. This makes it possible to reduce the number of learning images in each epoch.
  • a specific example of the evaluation result 202 is whether the estimated evaluation value is right or wrong 203 .
  • ⁇ Method for calculating selection probability P_k(f_i)> Regarding the learning image selection engine 112, a method of calculating the selection probability P_k(f_i) (201) of the learning image f_i to the sub-learning image group ⁇ f'_j(k) ⁇ (T) in the k-th iterative learning will be described.
  • the degree of margin M(f_i ) (204) (“204” is a reference sign)
  • the selection probability P_k(f_i) ( 201) is characterized by being a function of the margin M(f_i) (204).
  • the selection probability P_k(f_i) (201) can be set low.
  • the margin M(f_i) (204) for example, the difference between the estimated evaluation value g ⁇ _i and the correct evaluation value g_i of the learning image f_i can be used. If the difference is very small, it means that the estimated evaluation value g ⁇ _i is correct with a margin. Also, if the difference is large, the evaluation result will be an incorrect answer, but the larger the difference, the lower the margin for the same incorrect answer.
  • the margin M(f_i) (204) and the selection probability P_k(f_i) (201) can be calculated as continuous values.
  • the present embodiment sets the selection probability P_k(f_i) of the learning image f_i to the sub-learning image group ⁇ f'_j(k) ⁇ (T) in the k-th iterative learning.
  • (201) is characterized by being a function of the degree of similarity between the learning image f_i and other learning image groups ⁇ f_a ⁇ (a ⁇ i).
  • This embodiment is characterized in that the selection probability P_k(f_i) (201) of the learning image f_i is updated for each iterative learning.
  • the selection probability P_k(f_i) (201) the degree of similarity between the learning image f_i and other learning images can be used. When very similar learning images exist or there are many similar images, the similarity is high and the selection probability P_k(f_i) (201) is low.
  • the accuracy 203 of the estimated evaluation value based on the estimated evaluation value g ⁇ _i of the learning image f_i in the k-th iterative learning and the margin M( f_i) (204) can be used, but these values will change depending on the learning state.
  • the similarity between training images does not change during iterative learning, but together with those whose values change, it is used as a judgment material for calculating the selection probability P_k(f_i) (201). can do. That is, the selection probability P_k(f_i) (201) can be given as a function of these multiple criteria (step S21).
  • the image analysis system 1 optimizes the internal parameters 113 of the evaluation engine 111 by repeating the processing from step S21 to step S23 using the learning image group ⁇ f_i ⁇ (R).
  • the image analysis system 1 determines selection probabilities P_k(f_i) (201). Specifically, the image analysis system 1 uses the k-1th evaluation result 202 to calculate the kth selection probability P_k(f_i ) (201). After that, the image analysis system 1 uses the learning image selection engine 112 to select a sub-learning image group ⁇ f'_j( k) ⁇ (T).
  • step S22 the image analysis system 1 performs learning of the evaluation engine 111. Specifically, the image analysis system 1 sets the correct evaluation value g_i assigned in advance to Update the internal parameters 113 of the evaluation engine 111 so that the closest estimated evaluation value g ⁇ _i is output.
  • step S23 the image analysis system 1 uses the evaluation engine 111 to obtain evaluation results 202 for each learning image. Specifically, the image analysis system 1 estimates each of the learning images f_i included in the learning image group R ⁇ f_j(k) ⁇ using the evaluation engine 111 to which the internal parameters 113 learned in step S22 are applied. Calculate the evaluation value g ⁇ _i. The image analysis system 1 obtains an evaluation result 202 for each learning image f_i included in the learning image group ⁇ f_i ⁇ (R). As an example, the evaluation result 202 is the correctness 203 of the estimated evaluation value g ⁇ _i and the degree of margin M(f_i) (204).
  • the evaluation engine 111 can learn efficiently. In addition, since the evaluation engine 111 learns using the sub-learning image group ⁇ f'_j(k) ⁇ (T) selected using the margin M(f_i) (204) and the similarity, it is more efficient. Intrinsic parameters 113 can be optimized for
  • FIG. 3 is a diagram schematically showing an example of the learning state of the evaluation engine 111.
  • the concept of calculating the selection probability P_k(f_i) (201) will be described with reference to FIG.
  • the evaluation engine 111 let us consider non-defective product determination for inspecting whether the evaluation target P is a non-defective product or a defective product.
  • a plurality of feature values ⁇ Ca ⁇ (a 1, . It is considered that an estimated evaluation value is output based on this feature amount.
  • the circle and triangle plots show the distribution of the feature values of the learning images in the k-th iterative learning, and the circle and triangle plots are the feature values of the good and bad product learning images, respectively.
  • Plots existing inside the non-defective product cluster 300 in the k-th iterative learning are determined to be non-defective products, and plots existing outside are determined to be defective products.
  • the non-defective product cluster 300 separates non-defective products from non-defective products as much as possible.
  • P_k(f_i) (201) of the learning image f_i to the sub-learning image group ⁇ f'_j(k) ⁇ (T) in the k-th iterative learning white, gray, and black plots represent 'high', 'medium', and 'low' selection probabilities, respectively.
  • the selection probabilities are displayed in three stages in FIG. 3, but the actual selection probabilities can take continuous values.
  • the selection probability is set high. is desirable.
  • the five non-defective product learning images 302 present in the center of the non-defective product cluster 300 have correct estimated evaluation values and are located in the center of the non-defective product cluster 300.
  • the estimated evaluation value is less likely to turn into an incorrect answer. That is, since this is a learning image with a high degree of margin M(f_i) (204), it is desirable to set the selection probability low.
  • the margin M(f_i) (204) of the two non-defective product learning images 303 existing between the boundary and the center of the non-defective product cluster 300 is medium, it is desirable to set the selection probability to be medium as well.
  • the learning images for defective products are the same as for non-defective products. That is, the learning images 304, 305, and 306 of defective products are all correct because they are determined to be defective products. It is desirable to set
  • the selection probability is desirable to be very high in order to improve the judgment results for erroneously determined learning images (307, which is a non-defective product but is erroneously determined as a defective product, and 308, which is a defective product but is erroneously determined as a non-defective product). It is desirable to set a low selection probability for a group of images (309 and 310) with a high degree of similarity (which are likely to be plotted in the vicinity even in the feature space). It is desirable to set a high selection probability for a learning image 311 that is erroneously determined even if it is an image group with a high degree of similarity.
  • the selection probability needs to be determined by comprehensively considering the correctness 203 of the estimated evaluation value, the degree of margin M(f_i) (204), the degree of similarity between images, and the like. Determining the sub-learning image group ⁇ f'_j(k) ⁇ (T) not only reduces the number of learning images in each iterative learning, but also speeds up optimization by prioritizing learning images to be learned. There is also a possibility that good evaluation performance can be obtained with a small number of iterations.
  • the number of images Nf of the sub-learning image group ⁇ f'_j(k) ⁇ (T) is calculated from the number of images Nf of the learning image group ⁇ f_i ⁇ (R). It is characterized by having a GUI for accepting designation of a reduction rate R_k for _k, and the reduction rate R_k being a function of the number k of iterative learning.
  • the reduction rate R_k can be specified by, for example, (Nf-Nf'_k)/Nf*100. In this case, the larger the value, the more the training images are reduced and the learning time is shortened. Also, the reduction rate R_k can be changed by the number k of iterative learning.
  • the internal parameters are not fixed and extensive parameter search is required, so it is desirable to set the reduction rate R_k small.
  • the reduction rate R_k can be set large.
  • the specified value may be the number of images Nf'_k of the sub-learning image group ⁇ f'_j(k) ⁇ (T), or the estimated learning time, instead of the reduction rate R_k.
  • the number of images Nf'_k of the sub-learning image group ⁇ f'_j(k) ⁇ (T) is set so that learning is completed within the estimated learning time based on the number of iterations of learning. will be determined.
  • FIG. 4 is a diagram showing an example of a selection condition input screen 400.
  • the selection condition input screen 400 is a GUI (Graphical User Interface) for the user to specify the learning method of the evaluation engine 111 .
  • the designation of the reduction rate R_k becomes effective.
  • the method of giving the reduction rate R_k can be selected by radio buttons 402-404.
  • the reduction rate R_k is a specified constant value 406, regardless of the number of iterations k, as given by a straight line 405.
  • the reduction rate R_k is specified by a polygonal line 407. In the illustrated example, the reduction rate R_k increases until the epoch (the number of iterations of learning) specified in the box 408, and after that, it remains constant as specified in the box 409. value. If radio button 404 is selected, reduction rate R_k will be curve 410 specified in box 411 . These are examples of how to specify the reduction rate R_k, and any shape can be specified.
  • the image analysis system 1 accepts the specification of the reduction rate R_k setting method from the user, so that the evaluation engine 111 can be learned more efficiently according to needs.
  • a method for calculating the selection probability P_k(f_i) (201) of the learning image f_i can be specified using the GUI shown in FIG.
  • the selection probability P_k(f_i) (201) can be calculated using the correctness 203 of the estimated evaluation value, the degree of margin M(f_i) (204), the similarity between the learning images, and the like.
  • the selection probability P_k(f_i) (201) can be given by a function having these judgment materials as arguments.
  • Arguments to be considered in calculating the selection probability P_k(f_i) (201) can be designated by check boxes 412-414. Boxes 415-417 can be used to specify the ratio (weight) of each argument to be considered in the calculation of the selection probability P_k(f_i) (201).
  • the values of boxes 415 to 417 are specified as 0.2, 0.6, and 0.2, respectively, and the selection probability P_k(f_i) (201) is determined with emphasis on the margin M(f_i) (204). It will be. Also, a rule can be set for the selection of the learning image f_i, and together with the selection probability P_k(f_i) (201), the sub-learning image group ⁇ f'_j(k) ⁇ (T) is determined. For example, by checking a check box 418, it is possible to validate the rule that training images that were incorrect in the previous iterative learning must be selected in the next iterative learning.
  • a threshold can be specified in box 421 . Also, by checking the check box 420, it is possible to validate the rule that training images with a degree of similarity equal to or higher than the threshold are always thinned out. A threshold can be specified in box 422 .
  • the arguments and rules described here are examples, and other arguments and rules can be set.
  • the user can use various means to specify what kind of learning image should be preferentially learned in each iterative learning.
  • the user's domain knowledge into the evaluation object P, more appropriate learning becomes possible.
  • FIG. 5 is a diagram showing an example of the hardware configuration of the image analysis system 1.
  • the image analysis system 1 has the aforementioned imaging device 106 and computer 100 .
  • the imaging device 106 is as described above.
  • the computer 100 is a component for processing the image evaluation method in this embodiment, and includes a processor 101 , a memory resource 102 , a GUI device 103 , an input device 104 and a communication interface 105 .
  • the processor 101 is a processing device such as a CPU (Central Processing Unit) or a GPU (Graphic Processing Unit), but is not limited thereto, and may be any device capable of executing the above-described image analysis method.
  • one processor 101 may be single core or multicore, or a circuit (for example, FPGA (Field -Programmable Gate Array), CPLD (Complex Programmable Logic Device), or ASIC (Application Specific Integrated Circuit).
  • the storage resource 102 is a storage device such as RAM (Random Access Memory), ROM (Read Only Memory), HDD (Hard Disk Drive), non-volatile memory (flash memory, etc.), etc., and is a memory from which programs and data are temporarily read. act as an area.
  • the storage resource 102 may store a program (referred to as an image analysis program) that causes the processor 101 to execute the image analysis method described in the above embodiments.
  • the GUI device 103 is a device that displays a GUI, such as a display such as an OLCD (Organic Liquid Crystal Display) or a projector, but is not limited to this example as long as it can display a GUI.
  • the input device 104 is a device that receives an input operation from a user, and is, for example, a keyboard, mouse, touch panel, or the like.
  • the input device 104 is not particularly limited as long as it is a component capable of receiving operations from the user, and the input device 104 and the GUI device 103 may be integrated.
  • the communication interface 105 is USB, Ethernet, Wi-Fi, etc., and is an interface that mediates input/output of information. Note that the communication interface 105 is not limited to the example shown here as long as it is an interface that can directly receive an image from the imaging device 106 or that allows the user to transmit the image to the computer 100 .
  • a portable non-volatile storage medium for example, flash memory, DVD, CD-ROM, Blu-ray disc, etc.
  • storing the image can be connected to the communication interface 105 and the image can be stored in the computer 100 .
  • the image analysis program described above can be distributed to the computer 100 by connecting a portable nonvolatile storage medium storing the image analysis program to the communication interface 105 .
  • the image analysis program can be distributed to computer 100 by a program distribution server.
  • the program distribution server has a storage resource 102 storing the image analysis program, a processor performing distribution processing for distributing the image analysis program, and a communication interface device capable of communicating with the communication interface device of the computer 100. .
  • Various functions of the image analysis program distributed or distributed to the computer 100 are realized by the processor 101 .
  • the image analysis system 1 has a learning phase 110 in which the evaluation engine 111 learns, and an evaluation phase 120 in which the evaluation image S is evaluated using the evaluation engine 111 learned in the learning phase 110.
  • the processor 101 executing the learning phase 110 and the processor 101 executing the evaluation phase 120 may be the same or different. If the processor 101 executing the learning phase 110 and the processor 101 executing the evaluation phase 120 are different, the processor 101 executing the learning phase 110 will inform the processor 101 executing the evaluation phase 120 of the internal parameters 113 of the evaluation engine 111 can be handed over.

Abstract

The purpose of the present invention is to provide technology for effectively performing learning for image analysis that utilizes machine learning. This image analysis system comprises at least one processor and a memory resource, and is characterized by the processor executing: a learning image acquisition step in which a learning image group {f_i} (i=1,…,Nf, Nf: number of learning images) is acquired by imaging an evaluation target for learning; a training step in which an evaluation engine is trained using the learning image group {f_i}; an evaluation image acquisition step in which an evaluation image is acquired by imaging an evaluation target; and an evaluation step in which the evaluation image is input to the trained evaluation engine, and an estimated evaluation value is output. In the training step, a sub-learning image group {f'_j(k)} (j=1,…,Nf'_k, Nf'_k: number of sub-learning images), {f'_j(k)}⊂{f_i}, k: number of iterative learning instances) is determined by an image selection engine, the sub-learning image group being a partial collection of the learning image group {f_i} for each iterative learning instance, and the sub-learning image group {f'_j(k)} is used to perform the kth instance of iterative learning of the evaluation engine.

Description

画像分析システム、画像分析方法、及びプログラムImage analysis system, image analysis method, and program
 本発明は、画像分析システム、画像分析方法、及びプログラムに関する。本発明は2022年3月4日に出願された日本国特許の出願番号2022-033635の優先権を主張し、文献の参照による織り込みが認められる指定国については、その出願に記載された内容は参照により本出願に織り込まれる。 The present invention relates to an image analysis system, an image analysis method, and a program. The present invention claims priority of Japanese patent application number 2022-033635 filed on March 4, 2022, and for designated countries where incorporation by reference of documents is permitted, the content described in the application is incorporated into this application by reference.
 機械学習に基づく評価エンジンを活用した画像分析方法は多く提案されている。例えば、工業製品の製造において、検査画像に基づいて、形状不良、組立不良、異物の付着等の判定を行うことにより、物品の外観を評価する外観検査が行われている。 Many image analysis methods have been proposed that utilize evaluation engines based on machine learning. For example, in the manufacture of industrial products, appearance inspections are performed to evaluate the appearance of articles by determining shape defects, assembly defects, adherence of foreign matter, and the like based on inspection images.
 特許文献1に開示された外観検査装置に関し、段落[0054]において、「外観検査装置20の形状計測部21により、ワーク200の溶接箇所201の外観を検査する(ステップS1)。」と記載され、段落[0059]において、「ステップS5を実行することで、取得された画像データにおいて、形状不良の有無や形状不良の種類が特定される。この結果に基づいて、学習データセットの見直しや再作成あるいは新規作成が行われ(ステップS6)、ステップS6で作成された学習データセットを用いて判定モデルの再学習が実行される(ステップS7)。」と記載され、段落[0061]において、「図5に示すルーティーンを必要に応じて、適切な回数や頻度で行うことにより、溶接箇所の形状の良否判定を行うための判定モデルの精度を向上して、溶接箇所の形状の良否判定に関する重要な形状不良の有無及び種類の判定精度を向上できる。」と記載されている。 Regarding the appearance inspection apparatus disclosed in Patent Document 1, in paragraph [0054], it is described that "the appearance of the welded portion 201 of the workpiece 200 is inspected by the shape measurement unit 21 of the appearance inspection apparatus 20 (step S1)." , in paragraph [0059], "By executing step S5, the presence or absence of shape defects and the type of shape defects are specified in the acquired image data. Based on this result, the learning data set can be reviewed and re- Creation or new creation is performed (step S6), and re-learning of the judgment model is executed using the learning data set created in step S6 (step S7)." By performing the routine shown in FIG. 5 at an appropriate number and frequency as necessary, the accuracy of the judgment model for judging the quality of the shape of the welded part is improved, and the quality of the shape of the welded part is judged. It is possible to improve the accuracy of determining the presence and type of important shape defects."
国際公開2020/129617号公報International publication 2020/129617
 機械学習を活用した画像分析において高い評価性能を得るには、大量の学習画像群を用いた学習が必要となる。学習画像数が少ない場合、過学習が発生し、汎化性能が低下する恐れがある。一方、学習画像数の増加は、学習時間の増加に直結する。 In order to obtain high evaluation performance in image analysis using machine learning, learning using a large number of learning image groups is required. If the number of training images is small, over-learning may occur and the generalization performance may deteriorate. On the other hand, an increase in the number of learning images directly leads to an increase in learning time.
 特許文献1に開示された技術では、学習用の画像データを予めワークの材質や形状に応じて分類し、データ拡張処理を行う等の事前準備が必要となり、効率的でない。 The technique disclosed in Patent Document 1 is inefficient because it requires advance preparation such as classifying image data for learning in advance according to the material and shape of the workpiece and performing data expansion processing.
 本発明は、上記の点に鑑みてなされたものであって、機械学習を活用した画像分析において効率的に学習を行う技術の提供を目的とする。 The present invention has been made in view of the above points, and aims to provide a technique for efficiently learning in image analysis using machine learning.
 本願は、上記課題の少なくとも一部を解決する手段を複数含んでいるが、その例を挙げるならば、以下の通りである。 The present application includes multiple means for solving at least part of the above problems, and the following are examples of such means.
 上記課題を解決するため、本発明の画像分析システムは、少なくとも1つのプロセッサと、メモリリソースとを備える画像分析システムであって、前記プロセッサは、*学習用の評価対象物を撮像して学習画像群{f_i}(i=1,…,Nf, Nf:学習画像数)を取得する学習画像取得ステップ、*学習画像群{f_i}を用いて評価エンジンを学習する学習ステップ、*評価対象物を撮像して評価画像を取得する評価画像取得ステップ、*評価画像を学習済みの評価エンジンに入力して推定評価値を出力する評価ステップ、を実行し、前記学習ステップでは、反復学習毎に学習画像群{f_i}の部分集合であるサブ学習画像群{f'_j(k)}(j=1,…,Nf'_k, Nf'_k:サブ学習画像数, {f'_j(k)}⊂{f_i}, k:反復学習の回数)を画像選択エンジンにより決定し、サブ学習画像群{f'_j(k)}を用いて評価エンジンのk回目の反復学習を行うことを特徴とする。 In order to solve the above problems, an image analysis system of the present invention is an image analysis system comprising at least one processor and a memory resource, wherein the processor captures an evaluation object for learning to obtain a learning image; A learning image acquisition step for acquiring a group {f_i} (i=1,...,Nf, Nf: the number of learning images), * a learning step for learning an evaluation engine using the learning image group {f_i}, * an evaluation target An evaluation image obtaining step of capturing an evaluation image to obtain an evaluation image, and an evaluation step of inputting the evaluation image to a trained evaluation engine and outputting an estimated evaluation value are executed. sub-learning image group {f'_j(k)} which is a subset of group {f_i} (j=1,...,Nf'_k, Nf'_k: number of sub-learning images, {f'_j(k)} {f_i}, k: the number of iterative learning) is determined by the image selection engine, and the k-th iterative learning of the evaluation engine is performed using the sub-learning image group {f'_j(k)}.
 本発明によれば、機械学習を活用した画像分析において効率的に学習を行う技術を提供することができる。 According to the present invention, it is possible to provide a technique for efficient learning in image analysis using machine learning.
 上記した以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。 Problems, configurations, and effects other than those described above will be clarified by the following description of the embodiments.
機械学習に基づく画像分析システムにおける全体の処理シーケンスの一例を示す図であるFIG. 4 is a diagram showing an example of an overall processing sequence in an image analysis system based on machine learning; 評価エンジンの学習方法の一例を示す図であるFIG. 4 is a diagram showing an example of a learning method of an evaluation engine; 評価エンジンの学習状態の一例を模式的に示す図である。FIG. 4 is a diagram schematically showing an example of a learning state of an evaluation engine; 選択条件入力画面の一例を示す図である。It is a figure which shows an example of a selection condition input screen. 画像分析システムのハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of an image analysis system.
 近年、Convolutional Neural Network(CNN)に代表される深層ネットワークモデルの提案により、機械学習の性能は飛躍的に向上した(例えば、文献「A. Krizhevsky, I. Sutskever, and G. E. Hinton,“Imagenet classification with deep convolutional neural networks,”Proc. of NIPS (2012)」)。機械学習に基づく評価エンジンを活用した画像処理方法は多く提案されており、例えば外観検査への活用例として、国際公開2020/129617号公報では、溶接箇所の形状不良を機械学習を用いて自動で検査する方法が開示されている。また外観検査に限らず、機械学習に基づく画像処理はセマンティックセグメンテーションや認識、画像分類、画像変換や画質改善等、多岐にわたる。 In recent years, the proposal of deep network models represented by the Convolutional Neural Network (CNN) has dramatically improved the performance of machine learning (for example, the literature "A. Krizhevsky, I. Sutskever, and G. E. Hinton," Imagenet classification with deep convolutional neural networks, “Proc. of NIPS (2012)”). Many image processing methods that utilize evaluation engines based on machine learning have been proposed. For example, as an example of utilization for visual inspection, in International Publication No. 2020/129617, shape defects in welds can be automatically detected using machine learning. A method of inspecting is disclosed. In addition to visual inspection, machine learning-based image processing covers a wide range of fields, including semantic segmentation, recognition, image classification, image conversion, and image quality improvement.
 評価エンジンの学習においては、学習用の評価対象物の画像(学習画像)を入力として、評価エンジンから出力される推定評価値と予め教示された正解評価値との差分が小さくなるように評価エンジンの内部パラメータ(ネットワークの重みやバイアス等)を更新する。外観検査を行う場合、評価値は評価対象物の欠陥有無や異常度等の検査結果であり、セグメンテーションを行う場合、評価値は領域のラベルであり、画像変換を行う場合、評価値は変換後の画像である。 In the learning of the evaluation engine, an image of an object to be evaluated for learning (learning image) is input, and the evaluation engine is adjusted so that the difference between the estimated evaluation value output from the evaluation engine and the correct evaluation value taught in advance becomes small. update the internal parameters of , such as network weights and biases. In the case of visual inspection, the evaluation value is the inspection result such as the presence or absence of defects and the degree of abnormality of the evaluation target.In the case of segmentation, the evaluation value is the label of the region. is an image of
 内部パラメータを更新するタイミングとしては、全ての学習画像をまとめて学習するのではなく、学習画像をいくつかのミニバッチと呼ばれる集合に分割し、ミニバッチ毎に内部パラメータの更新を行うことが一般的である。これはミニバッチ学習と呼ばれ、全てのミニバッチが学習された時点で、全ての学習画像が学習に用いられたことになる。この全てのミニバッチの1回学習することを1エポックと呼び、エポックを何回も繰り返すことで、内部パラメータを最適化していく。エポック毎にミニバッチに含まれる学習画像をシャッフルすることもある。 As for the timing of updating the internal parameters, instead of learning all the training images at once, it is common to divide the training images into sets called mini-batches and update the internal parameters for each mini-batch. be. This is called mini-batch learning, and when all mini-batches have been learned, all training images have been used for learning. Learning all these mini-batches once is called one epoch, and the internal parameters are optimized by repeating the epoch many times. We may also shuffle the training images in the mini-batch for each epoch.
 機械学習を活用した画像処理において高い評価性能を得るには、大量の学習画像群を用いた内部パラメータの学習が必要となる。学習画像数が少ない場合、過学習が発生し、汎化性能が低下する恐れがある。一方、学習画像数の増加は、学習時間の増加に直結する。学習フェーズは評価フェーズ(推論処理)と比較して高い数値計算の精度が求められるため、処理コストは大きい。 In order to obtain high evaluation performance in image processing using machine learning, it is necessary to learn internal parameters using a large number of training image groups. If the number of training images is small, over-learning may occur and the generalization performance may deteriorate. On the other hand, an increase in the number of learning images directly leads to an increase in learning time. Since the learning phase requires higher numerical calculation accuracy than the evaluation phase (inference processing), the processing cost is high.
 これに対し、事前に学習画像群に含まれる不要あるいは冗長な画像を削除あるいは統合して学習画像数を削減する「データクレンジング」が知られている。しかしながら、評価対象物の構造や見た目は多様である。評価対象物に多くのパターンバリエーションが存在する場合、本質的に多くの学習画像が必要となり、データクレンジングによる学習画像の削減には限界がある。学習すべき画像をサンプリング等により除外すると評価性能を損なう危険がある。そのため、評価性能を低下させずに評価エンジンの内部パラメータを高速に学習する仕組みが望まれている。 On the other hand, "data cleansing" is known, which reduces the number of learning images by deleting or integrating unnecessary or redundant images included in the learning image group in advance. However, the structures and appearances of evaluation objects are diverse. If the object to be evaluated has many pattern variations, a large number of training images are essentially required, and there is a limit to how much training images can be reduced by data cleansing. If images to be learned are excluded by sampling or the like, there is a risk of impairing evaluation performance. Therefore, there is a demand for a mechanism for quickly learning the internal parameters of the evaluation engine without degrading the evaluation performance.
 <画像分析システムにおける全体の処理シーケンス>
 以下、図面に基づいて本発明の実施形態の例を説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また、実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
<Overall processing sequence in image analysis system>
Hereinafter, examples of embodiments of the present invention will be described based on the drawings. In addition, the embodiments described below do not limit the invention according to the claims, and all of the elements described in the embodiments and their combinations are essential to the solution of the invention. Not necessarily.
 図1は、機械学習に基づく画像分析システム1における全体の処理シーケンスの一例を示す図である。画像処理には、外観検査、セマンティックセグメンテーションや認識、画像分類、画像変換や画質改善等が含まれる。画像分析システム1により実行される処理シーケンスは大きく学習フェーズ110と評価フェーズ120に分かれる。 FIG. 1 is a diagram showing an example of an overall processing sequence in an image analysis system 1 based on machine learning. Image processing includes visual inspection, semantic segmentation and recognition, image classification, image transformation and image quality improvement. A processing sequence executed by the image analysis system 1 is roughly divided into a learning phase 110 and an evaluation phase 120 .
 学習フェーズ110では、学習用に評価対象物Pを撮像して学習画像を取得する(ステップS0)。画像は、CCD(Charge Coupled Device)カメラ、光学顕微鏡、荷電粒子顕微鏡、超音波検査装置、X線検査装置、等の撮像装置で評価対象物Pの表面あるいは内部をデジタル映像として撮像することで取得する。なお、「取得」の他の例としては、ほかのシステムで撮像した画像を単に受信して、画像分析システムが有する記憶資源に格納するだけでもよい。 In the learning phase 110, the evaluation object P is imaged for learning to acquire a learning image (step S0). An image is acquired by imaging the surface or inside of the evaluation object P as a digital image with an imaging device such as a CCD (Charge Coupled Device) camera, optical microscope, charged particle microscope, ultrasonic inspection device, X-ray inspection device, etc. do. As another example of "acquisition", it is possible to simply receive an image captured by another system and store it in the storage resource of the image analysis system.
 次に、オプションとしてステップS0で撮像した全学習画像群Qに対し、事前に不要あるいは冗長な学習画像を削除あるいは統合して学習画像数を削減する「データクレンジング」を行ってもよい(ステップS1)。最終的に学習に用いる学習画像群を学習画像群{f_i}(R)(i=1,…,Nf, Nf:学習画像数)(「R」は参照符号)とする。 Next, as an option, "data cleansing" may be performed on all the learning image groups Q captured in step S0 to reduce the number of learning images by deleting or integrating unnecessary or redundant learning images in advance (step S1 ). A group of learning images finally used for learning is a group of learning images {f_i} (R) (i=1, .
 この各学習画像f_iに対し、正解評価値g_iを付与する。外観検査であれば評価値は評価対象物Pの欠陥有無や異常度等の検査結果であり、セグメンテーションであれば評価値は領域のラベルであり、画像変換であれば評価値は変換後の画像である。これらの評価基準に対し、ユーザの目視判断や他の処理装置・手段で解析された数値等を基に正解評価値を付与する。 A correct evaluation value g_i is given to each learning image f_i. In the case of appearance inspection, the evaluation value is the inspection result such as the presence or absence of defects and the degree of abnormality of the evaluation object P. In the case of segmentation, the evaluation value is the label of the region.In the case of image conversion, the evaluation value is the image after conversion. is. A correct evaluation value is assigned to these evaluation criteria based on a user's visual judgment or a numerical value analyzed by another processing device/means.
 次に、学習画像{f_i}と正解評価値{g_i}を用いて評価エンジン111の学習を行う(ステップS2)。評価エンジン111とは学習画像f_i(評価フェーズ120では評価画像S)を入力として推定評価値g^_iを出力する推定器である。 Next, the evaluation engine 111 learns using the learning image {f_i} and the correct evaluation value {g_i} (step S2). The evaluation engine 111 is an estimator that receives a learning image f_i (an evaluation image S in the evaluation phase 120) and outputs an estimated evaluation value g^_i.
 評価エンジン111には様々な機械学習型のエンジンを用いることができるが、例えばConvolutional Neural Network(CNN)に代表される深層ニューラルネットワークが挙げられる。学習フェーズ110では、学習画像f_iを入力した際、教示した正解評価値g_iに近い推定評価値g^_iが出力されるように評価エンジン111の内部パラメータ113を最適化する。ニューラルネットワークの場合、内部パラメータ113にはネットワーク構造、活性化関数、学習率や学習の終了条件等の「ハイパーパラメータ」や、ネットワークのノード間の重み(結合係数)やバイアス等の「モデルパラメータ」が含まれる。この内部パラメータ113の最適化は反復学習によって行われ、k回目の反復学習において使用するサブ学習画像群{f'_j(k)}を学習画像選択エンジン112により学習画像群{f_i}(R)の中から選択する。 A variety of machine learning engines can be used for the evaluation engine 111, and examples include deep neural networks represented by Convolutional Neural Network (CNN). In the learning phase 110, the internal parameters 113 of the evaluation engine 111 are optimized so that an estimated evaluation value g^_i close to the taught correct evaluation value g_i is output when the learning image f_i is input. In the case of a neural network, the internal parameters 113 include "hyperparameters" such as network structure, activation function, learning rate and termination conditions of learning, and "model parameters" such as weights (coupling coefficients) and biases between nodes of the network. is included. Optimization of this internal parameter 113 is performed by iterative learning, and the sub-learning image group {f'_j(k)} used in the k-th iterative learning is selected by the learning image selection engine 112 as the learning image group {f_i} (R) Choose from
 評価フェーズ120では実際の評価対象物Pを撮像して(ステップS0)、評価画像Sを取得する。学習フェーズ110で学習した内部パラメータ113を用いた評価エンジン111に評価画像Sを入力し、自動評価を行う(ステップS3)。必要に応じて、この評価結果をユーザが確認する(ステップS4)。 In the evaluation phase 120, the actual evaluation object P is imaged (step S0), and an evaluation image S is obtained. The evaluation image S is input to the evaluation engine 111 using the internal parameters 113 learned in the learning phase 110, and automatic evaluation is performed (step S3). The user confirms this evaluation result as necessary (step S4).
 機械学習を活用した画像処理において高い評価性能を得るには、大量の学習画像群を用いた内部パラメータの学習が必要となる。学習画像数が少ない場合、過学習が発生し、汎化性能が低下する恐れがある。一方、学習画像数の増加は、学習時間の増加に直結する。学習フェーズは評価フェーズ(推論処理)と比較して高い数値計算の精度が求められるため、処理コストは大きい。 In order to obtain high evaluation performance in image processing using machine learning, it is necessary to learn internal parameters using a large number of training image groups. If the number of training images is small, over-learning may occur and the generalization performance may deteriorate. On the other hand, an increase in the number of learning images directly leads to an increase in learning time. Since the learning phase requires higher numerical calculation accuracy than the evaluation phase (inference processing), the processing cost is high.
 これに対し、事前に学習画像群に含まれる不要あるいは冗長な画像を削除あるいは統合して学習画像数を削減するデータクレンジングが知られており、本実施形態と併用してもよい(上述のステップS1)。しかしながら、評価対象物Pの構造や見た目は多様である。評価対象物Pに多くのパターンバリエーションが存在する場合、本質的に多くの学習画像が必要となり、データクレンジングによる学習画像の削減には限界がある。学習すべき学習画像をサンプリング等により除外すると評価性能を損なう危険がある。そのため、本実施形態では評価性能を低下させずに評価エンジン111の内部パラメータ113を高速に学習する仕組みを提供する。 On the other hand, data cleansing is known in which unnecessary or redundant images included in a group of learning images are deleted or integrated in advance to reduce the number of learning images. S1). However, the structure and appearance of the evaluation target P are diverse. When many pattern variations exist in the evaluation object P, many learning images are essentially required, and there is a limit to how much learning images can be reduced by data cleansing. If the learning images to be learned are excluded by sampling or the like, there is a risk of impairing the evaluation performance. Therefore, this embodiment provides a mechanism for quickly learning the internal parameters 113 of the evaluation engine 111 without degrading the evaluation performance.
 <サブ学習画像群{f'_j(k)}に基づく高速学習>
 図2は、評価エンジン111の学習方法の一例を示す図である。評価エンジン111の内部パラメータ113を高速に学習する方法について図2を用いて説明する。本実施形態は、学習用の評価対象物Pを撮像して学習画像群{f_i}(R)(i=1,…,Nf, Nf:学習画像数)を取得する学習画像取得ステップと、学習画像群{f_i}(R)を用いて評価エンジン111を学習する学習ステップ(図1におけるステップS2)と、評価対象物Pを撮像して評価画像Sを取得する評価画像取得ステップと、評価画像を学習済みの評価エンジン111に入力して評価結果を出力する評価ステップを含み、前記学習ステップでは、反復学習毎に学習画像群{f_i}(R)の部分集合であるサブ学習画像群{f’_j(k)}(T)(j=1,…,Nf'_k, Nf'_k:サブ学習画像数, {f'_j(k)}⊂{f_i}, k:反復学習の回数)(「T」は参照符号)を学習画像選択エンジン112により決定し、サブ学習画像群{f’_j(k)}(T)を用いて評価エンジン111のk回目の反復学習(ステップS22)を行うことを特徴とする。
<Fast learning based on sub-learning image group {f'_j(k)}>
FIG. 2 is a diagram showing an example of the learning method of the evaluation engine 111. As shown in FIG. A method for quickly learning the internal parameters 113 of the evaluation engine 111 will be described with reference to FIG. The present embodiment includes a learning image acquisition step of imaging an evaluation object P for learning and acquiring a learning image group {f_i} (R) (i=1, . . . , Nf, Nf: the number of learning images); A learning step (step S2 in FIG. 1) for learning the evaluation engine 111 using the image group {f_i} (R), an evaluation image acquisition step for capturing an evaluation object P and acquiring an evaluation image S, and an evaluation image is input to the trained evaluation engine 111 and the evaluation result is output. In the learning step, sub-learning image group {f '_j(k)} (T) (j=1,...,Nf'_k, Nf'_k: number of sub-learning images, {f'_j(k)}⊂{f_i}, k: number of iterative learning) ( “T” is a reference sign) is determined by the learning image selection engine 112, and the evaluation engine 111 performs k-th iterative learning (step S22) using the sub-learning image group {f′_j(k)} (T). It is characterized by
 本特徴について補足する。前述の通り、評価対象物Pに多くのパターンバリエーションが存在する場合、データクレンジングにより事前に学習画像を除外することには限界がある。一方、評価エンジン111の反復学習において、内部パラメータ113の値は変化していくため、エポック毎に学習すべき学習画像の優先度は変化する点に着目した。 Supplementary information about this feature. As described above, when there are many pattern variations in the evaluation object P, there is a limit to preliminarily excluding learning images by data cleansing. On the other hand, in the iterative learning of the evaluation engine 111, since the value of the internal parameter 113 changes, the priority of the learning image to be learned changes for each epoch.
 そこで、本実施形態では各学習画像を事前に使用/除外の二択で分けるのではなく、学習画像を評価エンジン111の学習状態に応じて動的に使用/除外する(反復学習中に一時的に使用したり除外したりする)。これにより、学習ステップ(図1におけるステップS2)全体では多様な画像バリエーションを保持しつつ、学習時間の大幅な短縮を可能とする。 Therefore, in this embodiment, each learning image is not divided in advance into two choices of use/exclusion, but the learning image is dynamically used/excluded according to the learning state of the evaluation engine 111 (temporarily during iterative learning). used or excluded). As a result, in the entire learning step (step S2 in FIG. 1), it is possible to greatly shorten the learning time while maintaining various image variations.
 具体的には、学習画像f_iに対して反復学習毎に選択確率P_k(f_i)(201)(「201」は参照符号)を算出し、この選択確率P_k(f_i)(201)に基づいてk回目の反復学習において学習画像f_iを用いるか否かを決定して、サブ学習画像群{f’_j(k)}(T)を求める。 Specifically, the selection probability P_k(f_i) (201) ("201" is a reference sign) is calculated for each iterative learning for the learning image f_i, and based on this selection probability P_k(f_i) (201), k A sub-learning image group {f'_j(k)}(T) is obtained by determining whether or not to use the learning image f_i in the iterative learning of the iteration.
 例えば、k-1回目の反復学習において、学習画像f_iの推定評価値g^_iが誤っていれば、次のk回目の反復学習において選択確率P_k(f_i)(201)は高く設定することが望ましい。一方、k回目の反復学習において、推定評価値g^_iが正しい値になれば、次のk+1回目の反復学習において選択確率P_(k+1)(f_i)(201)は低く設定することができる。しかし、k+1回目の反復学習において、推定評価値g^_iが再び誤れば、次のk+2回目の反復学習において選択確率P_(k+2)(f_i)(201)は大きく設定することが望ましい。 For example, if the estimated evaluation value g^_i of the learning image f_i is incorrect in the k-1th iterative learning, the selection probability P_k(f_i) (201) can be set high in the next k-th iterative learning. desirable. On the other hand, if the estimated evaluation value g^_i becomes a correct value in the k-th iterative learning, the selection probability P_(k+1)(f_i) (201) is set low in the next k+1-th iterative learning. be able to. However, if the estimated evaluation value g^_i is incorrect again in the k+1 iterative learning, the selection probability P_(k+2)(f_i) (201) is set large in the next k+2 iterative learning. is desirable.
 このように評価エンジン111の評価結果202に応じて、学習すべき学習画像の優先度は変化するため、この優先度を考慮したサブ学習画像群{f’_j(k)}(T)を求めることにより、各エポックにおいて学習画像数を削減することが可能となる。評価結果202の具体例として推定評価値の正否203が挙げられる。 Since the priority of the learning images to be learned changes according to the evaluation result 202 of the evaluation engine 111 in this way, the sub-learning image group {f'_j(k)}(T) is obtained in consideration of this priority. This makes it possible to reduce the number of learning images in each epoch. A specific example of the evaluation result 202 is whether the estimated evaluation value is right or wrong 203 .
 <選択確率P_k(f_i)の算出方法>
 学習画像選択エンジン112について、k回目の反復学習における学習画像f_iのサブ学習画像群{f’_j(k)}(T)への選択確率P_k(f_i)(201)の算出方法について説明する。本実施形態は、学習ステップ(図1のステップS2)において、反復学習中の評価エンジン111に学習画像f_iを入力した際に出力される評価結果の正否の度合いを定量化した余裕度M(f_i)(204)(「204」は参照符号)を算出し、k回目の反復学習における学習画像f_iのサブ学習画像群{f’_j(k)}(T)への選択確率P_k(f_i)(201)は、余裕度M(f_i)(204)の関数であることを特徴とする。
<Method for calculating selection probability P_k(f_i)>
Regarding the learning image selection engine 112, a method of calculating the selection probability P_k(f_i) (201) of the learning image f_i to the sub-learning image group {f'_j(k)}(T) in the k-th iterative learning will be described. In this embodiment, in the learning step (step S2 in FIG. 1), the degree of margin M(f_i ) (204) (“204” is a reference sign), and the selection probability P_k(f_i) ( 201) is characterized by being a function of the margin M(f_i) (204).
 本特徴について補足する。k回目の反復学習における学習画像f_iの選択確率P_k(f_i)(201)の算出方法はいくつか考えられる。その一つとして、推定評価値を正解か不正解かの二値で判断するのではなく、正否の度合いを定量化した余裕度M(f_i)(204)を算出し、この余裕度M(f_i)(204)に基づいて選択確率P_k(f_i)(201)を決定することができる。 Supplementary information about this feature. Several methods of calculating the selection probability P_k(f_i) (201) of the learning image f_i in the k-th iterative learning are conceivable. As one of them, the margin M(f_i) (204) that quantifies the degree of correctness is calculated, and this margin M(f_i ) (204), the selection probability P_k(f_i) (201) can be determined.
 余裕度M(f_i)(204)が高ければ、選択確率P_k(f_i)(201)を低く設定することができる。余裕度M(f_i)(204)の算出方法として、例えば学習画像f_iの推定評価値g^_iと正解評価値g_iとの差分を用いることができる。差分が非常に小さければ、推定評価値g^_iは余裕をもって正解していることになる。また、差分が大きければ評価結果は不正解になるが、差分が大きいほど、同じ不正解でも余裕度はより低くなる。このような方法により、余裕度M(f_i)(204)および選択確率P_k(f_i)(201)を連続的な値として算出することができる。 If the margin M(f_i) (204) is high, the selection probability P_k(f_i) (201) can be set low. As a method of calculating the margin M(f_i) (204), for example, the difference between the estimated evaluation value g^_i and the correct evaluation value g_i of the learning image f_i can be used. If the difference is very small, it means that the estimated evaluation value g^_i is correct with a margin. Also, if the difference is large, the evaluation result will be an incorrect answer, but the larger the difference, the lower the margin for the same incorrect answer. By such a method, the margin M(f_i) (204) and the selection probability P_k(f_i) (201) can be calculated as continuous values.
 また本実施形態は、学習ステップ(図1におけるステップS2)において、k回目の反復学習における学習画像f_iのサブ学習画像群{f’_j(k)}(T)への選択確率P_k(f_i)(201)は、学習画像f_iとその他の学習画像群{f_a}(a≠i)間の類似度の関数であることを特徴とする。 In addition, in the learning step (step S2 in FIG. 1), the present embodiment sets the selection probability P_k(f_i) of the learning image f_i to the sub-learning image group {f'_j(k)} (T) in the k-th iterative learning. (201) is characterized by being a function of the degree of similarity between the learning image f_i and other learning image groups {f_a} (a≠i).
 本特徴について補足する。本実施形態では学習画像f_iの選択確率P_k(f_i)(201)を反復学習ごとに更新することを特徴とする。選択確率P_k(f_i)(201)を算出する際の判断材料として、学習画像f_iとその他の学習画像との類似度を用いることができる。非常に類似した学習画像が存在したり、あるいは類似画像が多い場合、類似度は高くなり、選択確率P_k(f_i)(201)は低くなる。 Supplementary information about this feature. This embodiment is characterized in that the selection probability P_k(f_i) (201) of the learning image f_i is updated for each iterative learning. As a criterion for calculating the selection probability P_k(f_i) (201), the degree of similarity between the learning image f_i and other learning images can be used. When very similar learning images exist or there are many similar images, the similarity is high and the selection probability P_k(f_i) (201) is low.
 前述の通り、選択確率P_k(f_i)(201)を算出する際の判断材料としてk回目の反復学習における学習画像f_iの推定評価値g^_iに基づく推定評価値の正否203や余裕度M(f_i)(204)を用いることができるが、これらの値は学習状態に応じて変化するものである。これに対して学習画像間の類似度は反復学習中に値が変化するのものではないが、値が変化するものと合わせて総合的に選択確率P_k(f_i)(201)算出の判断材料とすることができる。すなわち、選択確率P_k(f_i)(201)は、これら複数の判断材料の関数として与えることができる(ステップS21)。 As described above, the accuracy 203 of the estimated evaluation value based on the estimated evaluation value g^_i of the learning image f_i in the k-th iterative learning and the margin M( f_i) (204) can be used, but these values will change depending on the learning state. On the other hand, the similarity between training images does not change during iterative learning, but together with those whose values change, it is used as a judgment material for calculating the selection probability P_k(f_i) (201). can do. That is, the selection probability P_k(f_i) (201) can be given as a function of these multiple criteria (step S21).
 図2について付言すると、画像分析システム1は、学習画像群{f_i}(R)を用いてステップS21からステップS23までの処理を反復することにより、評価エンジン111の内部パラメータ113を最適化する。ステップS21において、画像分析システム1は、選択確率P_k(f_i)(201)を決定する。具体的には、画像分析システム1は、k-1回目の評価結果202を用いて、学習画像群{f_i}(R)に含まれる学習画像f_iの各々について、k回目の選択確率P_k(f_i)(201)を算出する。その後、画像分析システム1は、学習画像選択エンジン112を用いて、学習画像群{f_i}(R)の中から選択確率P_k(f_i)(201)に基づいてサブ学習画像群{f’_j(k)}(T)を選択する。 In addition to FIG. 2, the image analysis system 1 optimizes the internal parameters 113 of the evaluation engine 111 by repeating the processing from step S21 to step S23 using the learning image group {f_i}(R). In step S21, the image analysis system 1 determines selection probabilities P_k(f_i) (201). Specifically, the image analysis system 1 uses the k-1th evaluation result 202 to calculate the kth selection probability P_k(f_i ) (201). After that, the image analysis system 1 uses the learning image selection engine 112 to select a sub-learning image group {f'_j( k)}(T).
 次に、ステップS22において、画像分析システム1は、評価エンジン111の学習を実行する。具体的には、画像分析システム1は、ステップS21で選択したサブ学習画像群{f’_j(k)}(T)に含まれる学習画像f_iの各々について、予め付与された正解評価値g_iに近い推定評価値g^_iが出力されるよう評価エンジン111の内部パラメータ113を更新する。 Next, in step S22, the image analysis system 1 performs learning of the evaluation engine 111. Specifically, the image analysis system 1 sets the correct evaluation value g_i assigned in advance to Update the internal parameters 113 of the evaluation engine 111 so that the closest estimated evaluation value g^_i is output.
 次に、ステップS23において、画像分析システム1は、評価エンジン111を用いて学習画像毎の評価結果202を得る。具体的には、画像分析システム1は、学習画像群R{f_j(k)}に含まれる学習画像f_iの各々について、ステップS22で学習した内部パラメータ113を適用した評価エンジン111を用いて、推定評価値g^_iを算出する。画像分析システム1は、学習画像群{f_i}(R)に含まれる各学習画像f_iについて、評価結果202を得る。一例として、評価結果202は、推定評価値g^_iの正否203及び余裕度M(f_i)(204)である。 Next, in step S23, the image analysis system 1 uses the evaluation engine 111 to obtain evaluation results 202 for each learning image. Specifically, the image analysis system 1 estimates each of the learning images f_i included in the learning image group R{f_j(k)} using the evaluation engine 111 to which the internal parameters 113 learned in step S22 are applied. Calculate the evaluation value g^_i. The image analysis system 1 obtains an evaluation result 202 for each learning image f_i included in the learning image group {f_i}(R). As an example, the evaluation result 202 is the correctness 203 of the estimated evaluation value g^_i and the degree of margin M(f_i) (204).
 以上、本実施形態では、サブ学習画像群{f’_j(k)}(T)を用いて内部パラメータ113が最適化されるため、効率的に評価エンジン111の学習を行うことができる。また、余裕度M(f_i)(204)や類似度を用いて選択されたサブ学習画像群{f’_j(k)}(T)を用いて評価エンジン111の学習を行うため、より効率的に内部パラメータ113を最適化することができる。 As described above, in the present embodiment, since the sub-learning image group {f'_j(k)}(T) is used to optimize the internal parameters 113, the evaluation engine 111 can learn efficiently. In addition, since the evaluation engine 111 learns using the sub-learning image group {f'_j(k)} (T) selected using the margin M(f_i) (204) and the similarity, it is more efficient. Intrinsic parameters 113 can be optimized for
 従って、本実施形態によれば、機械学習を活用した画像処理において、多様なパターンバリエーションを有する評価対象に対しても高速な学習が可能となる。 Therefore, according to the present embodiment, in image processing using machine learning, high-speed learning is possible even for evaluation targets having various pattern variations.
 <選択確率の概要>
 図3は、評価エンジン111の学習状態の一例を模式的に示す図である。図3を用いて、選択確率P_k(f_i)(201)の算出の考え方を説明する。評価エンジン111の一例として評価対象物Pが良品か不良品かを検査する良品判定を考える。評価エンジン111の内部では、学習画像f_i(評価フェーズでは評価画像S)から一旦、評価に有効な複数の特徴量{Ca}(a=1,…,n, n:特徴量数)を求め、この特徴量を基に推定評価値を出力していると考える。
<Summary of selection probability>
FIG. 3 is a diagram schematically showing an example of the learning state of the evaluation engine 111. As shown in FIG. The concept of calculating the selection probability P_k(f_i) (201) will be described with reference to FIG. As an example of the evaluation engine 111, let us consider non-defective product determination for inspecting whether the evaluation target P is a non-defective product or a defective product. Inside the evaluation engine 111, a plurality of feature values {Ca} (a=1, . It is considered that an estimated evaluation value is output based on this feature amount.
 図3において、丸と三角のプロットはk回目の反復学習における学習画像の特徴量の分布を示しており、丸と三角のプロットはそれぞれ良品、不良品の学習画像の特徴量である。k回目の反復学習における良品クラスタ300の内部に存在するプロットは良品、外部に存在するプロットは不良品に判定される。 In Fig. 3, the circle and triangle plots show the distribution of the feature values of the learning images in the k-th iterative learning, and the circle and triangle plots are the feature values of the good and bad product learning images, respectively. Plots existing inside the non-defective product cluster 300 in the k-th iterative learning are determined to be non-defective products, and plots existing outside are determined to be defective products.
 そのため、反復学習により良品クラスタ300がなるべく良品と不良品を分離するように、内部パラメータ113(特徴量の算出方法や良品クラスタの形)を反復学習により徐々に変化させる必要がある。k回目の反復学習における学習画像f_iのサブ学習画像群{f’_j(k)}(T)への選択確率P_k(f_i)(201)を考える。白色、灰色、黒色のプロットは、それぞれ選択確率が「高」、「中」、「低」であることを表す。説明を簡易化するため、図3では選択確率を三段階で表示しているが、実際の選択確率は連続的な値をとることができる。 Therefore, it is necessary to gradually change the internal parameters 113 (the method of calculating the feature amount and the shape of the non-defective cluster) by iterative learning so that the non-defective product cluster 300 separates non-defective products from non-defective products as much as possible. Consider the selection probability P_k(f_i) (201) of the learning image f_i to the sub-learning image group {f'_j(k)}(T) in the k-th iterative learning. White, gray, and black plots represent 'high', 'medium', and 'low' selection probabilities, respectively. In order to simplify the explanation, the selection probabilities are displayed in three stages in FIG. 3, but the actual selection probabilities can take continuous values.
 良品クラスタ300の境界付近に存在する良品の学習画像301は特徴量や良品クラスタ300の微小な変化に対しても推定評価値の正否203が変化する可能性があるため、選択確率を高く設定することが望ましい。良品クラスタ300の中央に存在する5つの良品の学習画像302は推定評価値が正解であり、かつ良品クラスタ300の中央に存在しているため特徴量や良品クラスタ300の微小な変化に対しても推定評価値が不正解に転じる可能性が低い。すなわち余裕度M(f_i)(204)が高い学習画像であるため、選択確率を低く設定することが望ましい。 For the learning image 301 of the non-defective product existing near the boundary of the non-defective product cluster 300, even a slight change in the feature amount or the non-defective product cluster 300 may change the accuracy 203 of the estimated evaluation value, so the selection probability is set high. is desirable. The five non-defective product learning images 302 present in the center of the non-defective product cluster 300 have correct estimated evaluation values and are located in the center of the non-defective product cluster 300. The estimated evaluation value is less likely to turn into an incorrect answer. That is, since this is a learning image with a high degree of margin M(f_i) (204), it is desirable to set the selection probability low.
 良品クラスタ300の境界と中央の間に存在する2つの良品の学習画像303は余裕度M(f_i)(204)が中くらいであるため、選択確率も中くらいに設定することが望ましい。 Since the margin M(f_i) (204) of the two non-defective product learning images 303 existing between the boundary and the center of the non-defective product cluster 300 is medium, it is desirable to set the selection probability to be medium as well.
 不良品の学習画像に対しても良品と同様である。すなわち、不良品の学習画像304,305,306はいずれも不良品に判定されるため正解であるが、良品クラスタ300に近づく程、余裕度M(f_i)(204)が低いため選択確率を高く設定することが望ましい。 The learning images for defective products are the same as for non-defective products. That is, the learning images 304, 305, and 306 of defective products are all correct because they are determined to be defective products. It is desirable to set
 誤判定される学習画像(良品なのに不良品に誤判定される307、不良品なのに良品に誤判定される308)は判定結果を改善するため、選択確率を非常に高く設定することが望ましい。類似度の高い画像群(特徴空間においても近傍にプロットされる可能性が高い)(309や310)は選択確率を低く設定することが望ましい。類似度の高い画像群であっても、誤判定される学習画像311は選択確率を高く設定することが望ましい。 It is desirable to set the selection probability to be very high in order to improve the judgment results for erroneously determined learning images (307, which is a non-defective product but is erroneously determined as a defective product, and 308, which is a defective product but is erroneously determined as a non-defective product). It is desirable to set a low selection probability for a group of images (309 and 310) with a high degree of similarity (which are likely to be plotted in the vicinity even in the feature space). It is desirable to set a high selection probability for a learning image 311 that is erroneously determined even if it is an image group with a high degree of similarity.
 このように、選択確率は推定評価値の正否203、余裕度M(f_i)(204)、画像間の類似度等を総合的に考慮して決定する必要がある。サブ学習画像群{f’_j(k)}(T)の決定により各反復学習における学習画像数が削減されるだけでなく、学習すべき学習画像を優先的に学習することで最適化が早くすすみ、少ない回数の反復学習で良好な評価性能が得られる可能性もある。 In this way, the selection probability needs to be determined by comprehensively considering the correctness 203 of the estimated evaluation value, the degree of margin M(f_i) (204), the degree of similarity between images, and the like. Determining the sub-learning image group {f'_j(k)}(T) not only reduces the number of learning images in each iterative learning, but also speeds up optimization by prioritizing learning images to be learned. There is also a possibility that good evaluation performance can be obtained with a small number of iterations.
 <選択条件入力画面>
 本実施形態は、学習ステップ(図1におけるステップS2)において、学習画像群{f_i}(R)の画像数Nfからサブ学習画像群{f’_j(k)}(T)の画像数Nf'_kへの削減率R_kの指定を受け付けるGUIを有し、削減率R_kは反復学習の回数kの関数であることを特徴とする。
<Selection condition input screen>
In this embodiment, in the learning step (step S2 in FIG. 1), the number of images Nf of the sub-learning image group {f'_j(k)}(T) is calculated from the number of images Nf of the learning image group {f_i}(R). It is characterized by having a GUI for accepting designation of a reduction rate R_k for _k, and the reduction rate R_k being a function of the number k of iterative learning.
 本特徴について補足する。学習時間の制約条件等を加味して、k回目の反復学習における学習画像数の削減率R_kを指定することができる。削減率R_kは、例えば(Nf-Nf'_k)/Nf*100で定義することができ、この場合、値が大きい程、学習画像を削減して学習時間が短縮されることになる。また、削減率R_kは反復学習の回数kによって変化させることができる。 Supplementary information about this feature. It is possible to specify the reduction rate R_k of the number of learning images in the k-th iterative learning, taking into consideration the constraints on the learning time and the like. The reduction rate R_k can be defined by, for example, (Nf-Nf'_k)/Nf*100. In this case, the larger the value, the more the training images are reduced and the learning time is shortened. Also, the reduction rate R_k can be changed by the number k of iterative learning.
 一般に反復学習の初期は内部パラメータが定まっておらず、広範なパラメータ探索が求められるため、削減率R_kは小さく設定することが望ましい。一方、反復学習の後期は内部パラメータが最適値に収束し始めるため、削減率R_kを大きく設定することができる。 Generally, at the beginning of iterative learning, the internal parameters are not fixed and extensive parameter search is required, so it is desirable to set the reduction rate R_k small. On the other hand, since the internal parameters begin to converge to optimal values in the latter stage of iterative learning, the reduction rate R_k can be set large.
 削減率R_kを例に説明したが、指定する値は削減率R_kでなく、サブ学習画像群{f’_j(k)}(T)の画像数Nf'_kでも、推定学習時間でもよい。推定学習時間が指定された場合は、反復学習の回数を基に推定学習時間内に学習が完了するように、サブ学習画像群{f’_j(k)}(T)の画像数Nf'_kを決定することになる。 Although the reduction rate R_k was used as an example, the specified value may be the number of images Nf'_k of the sub-learning image group {f'_j(k)} (T), or the estimated learning time, instead of the reduction rate R_k. When the estimated learning time is specified, the number of images Nf'_k of the sub-learning image group {f'_j(k)} (T) is set so that learning is completed within the estimated learning time based on the number of iterations of learning. will be determined.
 図4は、選択条件入力画面400の一例を示す図である。選択条件入力画面400は、評価エンジン111の学習方法をユーザが指定するGUI(Graphical User Interface)である。チェックボックス401をチェックすることで削減率R_kの指定が有効になる。ラジオボタン402~404により削減率R_kの与え方を選択することができる。 FIG. 4 is a diagram showing an example of a selection condition input screen 400. FIG. The selection condition input screen 400 is a GUI (Graphical User Interface) for the user to specify the learning method of the evaluation engine 111 . By checking the check box 401, the designation of the reduction rate R_k becomes effective. The method of giving the reduction rate R_k can be selected by radio buttons 402-404.
 ラジオボタン402を選択した場合、直線405で与えられるように削減率R_kは反復学習の回数kに寄らず、指定した一定の値406となる。ラジオボタン403を選択した場合、削減率R_kは折れ線407で指定され、図示した例ではボックス408で指定したエポック(反復学習回数)まで削減率R_kは増加し、それ以降はボックス409で指定した一定値となる。ラジオボタン404を選択した場合、削減率R_kはボックス411で指定した曲線410となる。これらは削減率R_kの指定方法の例であり、任意の形状を指定することができる。画像分析システム1がユーザから削減率R_kの設定方法の指定を受け付けることで、よりニーズに即した効率的な評価エンジン111の学習が可能となる。 When the radio button 402 is selected, the reduction rate R_k is a specified constant value 406, regardless of the number of iterations k, as given by a straight line 405. When the radio button 403 is selected, the reduction rate R_k is specified by a polygonal line 407. In the illustrated example, the reduction rate R_k increases until the epoch (the number of iterations of learning) specified in the box 408, and after that, it remains constant as specified in the box 409. value. If radio button 404 is selected, reduction rate R_k will be curve 410 specified in box 411 . These are examples of how to specify the reduction rate R_k, and any shape can be specified. The image analysis system 1 accepts the specification of the reduction rate R_k setting method from the user, so that the evaluation engine 111 can be learned more efficiently according to needs.
 図4に示すGUIにより学習画像f_iの選択確率P_k(f_i)(201)の算出方法を指定することができる。前述の通り選択確率P_k(f_i)(201)は、推定評価値の正否203、余裕度M(f_i)(204)、学習画像間の類似度、等を判断材料として算出することができる。すなわち、これらの判断材料を引数とする関数で選択確率P_k(f_i)(201)を与えることができる。選択確率P_k(f_i)(201)の算出において考慮する引数をチェックボックス412~414で指定することができる。選択確率P_k(f_i)(201)の算出において各引数を考慮する割合(重み)をボックス415~417で指定することができる。 A method for calculating the selection probability P_k(f_i) (201) of the learning image f_i can be specified using the GUI shown in FIG. As described above, the selection probability P_k(f_i) (201) can be calculated using the correctness 203 of the estimated evaluation value, the degree of margin M(f_i) (204), the similarity between the learning images, and the like. In other words, the selection probability P_k(f_i) (201) can be given by a function having these judgment materials as arguments. Arguments to be considered in calculating the selection probability P_k(f_i) (201) can be designated by check boxes 412-414. Boxes 415-417 can be used to specify the ratio (weight) of each argument to be considered in the calculation of the selection probability P_k(f_i) (201).
 図4の例では、ボックス415~417の値はそれぞれ0.2、0.6、0.2で指定されており、余裕度M(f_i)(204)を重視して選択確率P_k(f_i)(201)を決定することになる。また、学習画像f_iの選択に関してルールを設定することができ、選択確率P_k(f_i)(201)と合わせてサブ学習画像群{f’_j(k)}(T)を決定する。例えば、チェックボックス418をチェックすることで、前の反復学習において不正解になった学習画像は次の反復学習において必ず選択するというルールを有効にすることができる。 In the example of FIG. 4, the values of boxes 415 to 417 are specified as 0.2, 0.6, and 0.2, respectively, and the selection probability P_k(f_i) (201) is determined with emphasis on the margin M(f_i) (204). It will be. Also, a rule can be set for the selection of the learning image f_i, and together with the selection probability P_k(f_i) (201), the sub-learning image group {f'_j(k)} (T) is determined. For example, by checking a check box 418, it is possible to validate the rule that training images that were incorrect in the previous iterative learning must be selected in the next iterative learning.
 また、チェックボックス419をチェックすることで、しきい値以下の余裕度である学習サンプルは必ず選択するというルールを有効にすることができる。しきい値はボックス421で指定することができる。また、チェックボックス420をチェックすることで、しきい値以上の類似度である学習画像は必ず間引くというルールを有効にすることができる。しきい値はボックス422で指定することができる。ここで述べた引数やルールは例であり、その他の引数やルールを設定することも可能である。 Also, by checking the check box 419, it is possible to validate the rule that learning samples with margins equal to or less than the threshold are always selected. A threshold can be specified in box 421 . Also, by checking the check box 420, it is possible to validate the rule that training images with a degree of similarity equal to or higher than the threshold are always thinned out. A threshold can be specified in box 422 . The arguments and rules described here are examples, and other arguments and rules can be set.
 このように、どのような学習画像を各反復学習において優先的に学習すべきかをユーザは様々な手段により指定することができる。評価対象物Pに対してユーザが保有するドメイン知識を組み込むことによって、より適切な学習が可能となる。 In this way, the user can use various means to specify what kind of learning image should be preferentially learned in each iterative learning. By incorporating the user's domain knowledge into the evaluation object P, more appropriate learning becomes possible.
 <ハードウェア構成>
 図5は、画像分析システム1のハードウェア構成の一例を示す図である。画像分析システム1は、前述の撮像装置106と、計算機100とを有する。撮像装置106は先述の通りである。計算機100は、本実施形態における画像評価方法を処理する構成物であり、プロセッサ101と、記憶資源(メモリリソース)102と、GUI装置103と、入力装置104と、通信インターフェイス105と、を備える。
<Hardware configuration>
FIG. 5 is a diagram showing an example of the hardware configuration of the image analysis system 1. As shown in FIG. The image analysis system 1 has the aforementioned imaging device 106 and computer 100 . The imaging device 106 is as described above. The computer 100 is a component for processing the image evaluation method in this embodiment, and includes a processor 101 , a memory resource 102 , a GUI device 103 , an input device 104 and a communication interface 105 .
 プロセッサ101は、CPU(Central Processing Unit)、GPU(Graphic Processing Unit等の処理装置であるが、これに限定されるものではなく、上述の画像分析方法を実行できるものであればよい。また、少なくとも、一つのプロセッサ101は、シングルコアでもよいしマルチコアでもよい。あるいは、処理の一部又は全部を行うハードウェア記述言語によりその機能が実現されるゲートアレイの集合体である回路(例えばFPGA(Field-Programmable Gate Array)、CPLD(Complex Programmable Logic Device)、又はASIC(Application Specific Integrated Circuit)といった広義のプロセッサデバイスでもよい。 The processor 101 is a processing device such as a CPU (Central Processing Unit) or a GPU (Graphic Processing Unit), but is not limited thereto, and may be any device capable of executing the above-described image analysis method. , one processor 101 may be single core or multicore, or a circuit (for example, FPGA (Field -Programmable Gate Array), CPLD (Complex Programmable Logic Device), or ASIC (Application Specific Integrated Circuit).
 記憶資源102は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、不揮発メモリ(フラッシュメモリ等)等の記憶装置であり、プログラムやデータが一時的に読み出される記憶エリアとして機能する。記憶資源102は、上述の実施形態にて説明した画像分析方法をプロセッサ101に実行させるプログラム(画像分析プログラムと呼ぶ)を格納してもよい。 The storage resource 102 is a storage device such as RAM (Random Access Memory), ROM (Read Only Memory), HDD (Hard Disk Drive), non-volatile memory (flash memory, etc.), etc., and is a memory from which programs and data are temporarily read. act as an area. The storage resource 102 may store a program (referred to as an image analysis program) that causes the processor 101 to execute the image analysis method described in the above embodiments.
 GUI装置103は、GUIを表示する装置であって、例えばOLCD(Organic Liquid Crystal Display)等のディスプレイやプロジェクタであるが、GUIを表示ができる装置であればよく、本例に限定されない。入力装置104は、ユーザからの入力操作を受け付ける装置であって、例えばキーボード、マウス、タッチパネル等の入力装置である。入力装置104は、ユーザからの操作を受け付けられる構成物であれば特に限定されるものではなく、入力装置104とGUI装置103とは一体の装置であってもよい。 The GUI device 103 is a device that displays a GUI, such as a display such as an OLCD (Organic Liquid Crystal Display) or a projector, but is not limited to this example as long as it can display a GUI. The input device 104 is a device that receives an input operation from a user, and is, for example, a keyboard, mouse, touch panel, or the like. The input device 104 is not particularly limited as long as it is a component capable of receiving operations from the user, and the input device 104 and the GUI device 103 may be integrated.
 通信インターフェイス105は、USB、Ethernet、Wi-Fi等であって、情報の入出力を仲介するインターフェイスである。なお、通信インターフェイス105は、撮像装置106から画像を直接受信できたり、又はユーザが当該画像を計算機100に送信できたりするインターフェイスであれば、ここに示す例に限定されない。なお、当該通信インターフェイス105に、当該画像を格納した可搬不揮発記憶媒体(たとえばフラッシュメモリ、DVD、CD-ROM、ブルーレイディスク等の)を接続し、計算機100に当該画像を格納することができる。 The communication interface 105 is USB, Ethernet, Wi-Fi, etc., and is an interface that mediates input/output of information. Note that the communication interface 105 is not limited to the example shown here as long as it is an interface that can directly receive an image from the imaging device 106 or that allows the user to transmit the image to the computer 100 . A portable non-volatile storage medium (for example, flash memory, DVD, CD-ROM, Blu-ray disc, etc.) storing the image can be connected to the communication interface 105 and the image can be stored in the computer 100 .
 以上、本実施形態によれば、機械学習を活用した画像処理において、多様なパターンバリエーションを有する評価対象に対しても高速な学習が可能となる。 As described above, according to the present embodiment, in image processing using machine learning, high-speed learning is possible even for evaluation targets having various pattern variations.
 なお、前述の通り、これまで説明した実施形態は特許請求の範囲に係る発明を限定するものではなく、また、実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。 In addition, as described above, the embodiments described so far do not limit the invention according to the scope of claims, and all of the elements described in the embodiments and combinations thereof are means for solving the invention. is not necessarily required for
 付言すれば、画像分析システム1を構成する計算機100は複数であってもよく、撮像装置106が複数であってもよい。また、先述の画像分析プログラムは、画像分析プログラムを格納する可搬不揮発記憶媒体を通信インターフェイス105に接続することで、計算機100に配布することができる。又は、画像分析プログラムは、プログラム配信サーバにより計算機100に配信することができる。この場合、プログラム配信サーバは、画像分析プログラムを格納した記憶資源102と、画像分析プログラムを配信する配信処理を行うプロセッサと、計算機100の通信インターフェイス装置と通信可能である通信インターフェイス装置と、を有する。なお、計算機100に配布又は配信された画像分析プログラムは、プロセッサ101により各種機能が実現される。 Additionally, there may be a plurality of computers 100 and a plurality of imaging devices 106 that configure the image analysis system 1 . Further, the image analysis program described above can be distributed to the computer 100 by connecting a portable nonvolatile storage medium storing the image analysis program to the communication interface 105 . Alternatively, the image analysis program can be distributed to computer 100 by a program distribution server. In this case, the program distribution server has a storage resource 102 storing the image analysis program, a processor performing distribution processing for distributing the image analysis program, and a communication interface device capable of communicating with the communication interface device of the computer 100. . Various functions of the image analysis program distributed or distributed to the computer 100 are realized by the processor 101 .
 また、先述のように、画像分析システム1は、評価エンジン111の学習を行う学習フェーズ110と、学習フェーズ110で学習した評価エンジン111を用いて、評価画像Sの評価を行う評価フェーズ120とを実行する。学習フェーズ110を実行するプロセッサ101と、評価フェーズ120を実行するプロセッサ101は、同じであってもよいし、異なっていてもよい。学習フェーズ110を実行するプロセッサ101と、評価フェーズ120を実行するプロセッサ101とが異なる場合、学習フェーズ110を実行するプロセッサ101は、評価フェーズ120を実行するプロセッサ101に、評価エンジン111の内部パラメータ113を引き渡すことができる。 Further, as described above, the image analysis system 1 has a learning phase 110 in which the evaluation engine 111 learns, and an evaluation phase 120 in which the evaluation image S is evaluated using the evaluation engine 111 learned in the learning phase 110. Execute. The processor 101 executing the learning phase 110 and the processor 101 executing the evaluation phase 120 may be the same or different. If the processor 101 executing the learning phase 110 and the processor 101 executing the evaluation phase 120 are different, the processor 101 executing the learning phase 110 will inform the processor 101 executing the evaluation phase 120 of the internal parameters 113 of the evaluation engine 111 can be handed over.
1:画像分析システム、100:計算機、101:プロセッサ、102:記憶資源、103:GUI装置、104:入力装置、105:通信インターフェイス、106:撮像装置、110:学習フェーズ、111:評価エンジン、112:学習画像選択エンジン、113:内部パラメータ、120:評価フェーズ、201:選択確率P_k(f_i)、202:評価結果、203:推定評価値の正否、204:余裕度M(f_i)、400:選択条件入力画面、401,412,413,414,419,420:チェックボックス、402,403,404:ラジオボタン、405:直線、406:値、407:折れ線、408,409,411,415,416,417,421,422:ボックス、410:曲線、P:評価対象物、Q:全学習画像群、R:学習画像群{f_i}、S:評価画像、T:サブ学習画像群{f’_j(k)} 1: Image analysis system, 100: Calculator, 101: Processor, 102: Storage resource, 103: GUI device, 104: Input device, 105: Communication interface, 106: Imaging device, 110: Learning phase, 111: Evaluation engine, 112 : learning image selection engine, 113: internal parameter, 120: evaluation phase, 201: selection probability P_k(f_i), 202: evaluation result, 203: correctness of estimated evaluation value, 204: margin M(f_i), 400: selection Condition input screen, 401, 412, 413, 414, 419, 420: check box, 402, 403, 404: radio button, 405: straight line, 406: value, 407: polygonal line, 408, 409, 411, 415, 416, 417, 421, 422: Box, 410: Curve, P: Evaluation object, Q: All learning image group, R: Learning image group {f_i}, S: Evaluation image, T: Sub-learning image group {f'_j( k)}

Claims (9)

  1.  少なくとも1つのプロセッサと、メモリリソースとを備える画像分析システムであって、
     前記プロセッサは、
    *学習用の評価対象物を撮像して学習画像群{f_i}(i=1,…,Nf, Nf:学習画像数)を取得する学習画像取得ステップ
    *学習画像群{f_i}を用いて評価エンジンを学習する学習ステップ
    *評価対象物を撮像して評価画像を取得する評価画像取得ステップ
    *評価画像を学習済みの評価エンジンに入力して推定評価値を出力する評価ステップ
     を実行し、
     前記学習ステップでは、反復学習毎に学習画像群{f_i}の部分集合であるサブ学習画像群{f'_j(k)}(j=1,…,Nf'_k, Nf'_k:サブ学習画像数, {f'_j(k)}⊂{f_i}, k:反復学習の回数)を画像選択エンジンにより決定し、サブ学習画像群{f'_j(k)}を用いて評価エンジンのk回目の反復学習を行うことを特徴とする、画像分析システム。
    An image analysis system comprising at least one processor and memory resources,
    The processor
    *Learning image acquisition step of imaging the evaluation object for learning and acquiring learning image group {f_i} (i=1,...,Nf, Nf: number of learning images) *Evaluation using learning image group {f_i} a learning step for learning the engine * an evaluation image acquisition step for capturing an image of an evaluation target to acquire an evaluation image * an evaluation step for inputting the evaluation image into a trained evaluation engine and outputting an estimated evaluation value,
    In the learning step, sub-learning image group {f'_j(k)} (j=1,...,Nf'_k, Nf'_k: sub-learning image number, {f'_j(k)}⊂{f_i}, k: number of iterative learning) is determined by the image selection engine, and the k-th An image analysis system characterized by performing iterative learning of
  2.  請求項1に記載の画像分析システムであって、
     前記学習ステップにおいて、反復学習中の前記評価エンジンに学習画像f_iを入力した際に出力される前記推定評価値の正否の度合いを定量化した余裕度M(f_i)を算出し、
     k回目の反復学習における学習画像f_iのサブ学習画像群{f'_j(k)}への選択確率P_k(f_i)は、余裕度M(f_i)の関数であることを特徴とする、画像分析システム。
    The image analysis system of claim 1, wherein
    In the learning step, calculating a degree of margin M(f_i) that quantifies the degree of correctness of the estimated evaluation value output when the learning image f_i is input to the evaluation engine during iterative learning,
    The image analysis characterized in that the selection probability P_k(f_i) of the learning image f_i to the sub-learning image group {f'_j(k)} in the k-th iterative learning is a function of the margin M(f_i). system.
  3.  請求項1に記載の画像分析システムであって、
     前記学習ステップにおいて、k回目の反復学習における学習画像f_iのサブ学習画像群{f'_j(k)}への選択確率P_k(f_i)は、学習画像f_iとその他の学習画像群{f_a}(a≠i)間の類似度の関数であることを特徴とする、画像分析システム。
    The image analysis system of claim 1, wherein
    In the learning step, the selection probability P_k(f_i) of the learning image f_i to the sub-learning image group {f'_j(k)} in the k-th iterative learning is the learning image f_i and the other learning image group {f_a}( An image analysis system characterized by being a function of similarity between a≠i).
  4.  請求項1に記載の画像分析システムであって、
     前記学習ステップにおいて、学習画像群{f_i}の画像数Nfからサブ学習画像群{f'_j(k)}の画像数Nf'_kへの削減率R_kの指定を受け付けるGUIを有し、
     前記削減率R_kは反復学習の回数kの関数であることを特徴とする、画像分析システム。
    The image analysis system of claim 1, wherein
    In the learning step, having a GUI for accepting designation of a reduction rate R_k from the number of images Nf of the learning image group {f_i} to the number of images Nf'_k of the sub-learning image group {f'_j(k)},
    The image analysis system, wherein the reduction rate R_k is a function of iterative learning times k.
  5.  画像分析システムによる画像分析方法であって、
     学習用の評価対象物を撮像して学習画像群{f_i}(i=1,…,Nf, Nf:学習画像数)を取得する学習画像取得ステップと、
     学習画像群{f_i}を用いて評価エンジンを学習する学習ステップと、
     評価対象物を撮像して評価画像を取得する評価画像取得ステップと、
     評価画像を学習済みの評価エンジンに入力して推定評価値を出力する評価ステップと、を含み、
     前記学習ステップでは、反復学習毎に学習画像群{f_i}の部分集合であるサブ学習画像群{f'_j(k)}(j=1,…,Nf'_k, Nf'_k:サブ学習画像数, {f'_j(k)}⊂{f_i}, k:反復学習の回数)を画像選択エンジンにより決定し、サブ学習画像群{f'_j(k)}を用いて評価エンジンのk回目の反復学習を行うことを特徴とする、画像分析方法。
    An image analysis method by an image analysis system,
    a learning image acquisition step of imaging an evaluation target for learning and acquiring a learning image group {f_i} (i=1, . . . , Nf, Nf: the number of learning images);
    a learning step of learning the evaluation engine using the training image group {f_i};
    an evaluation image obtaining step of imaging an evaluation target to obtain an evaluation image;
    an evaluation step of inputting the evaluation image into a trained evaluation engine and outputting an estimated evaluation value;
    In the learning step, sub-learning image group {f'_j(k)} (j=1,...,Nf'_k, Nf'_k: sub-learning image number, {f'_j(k)}⊂{f_i}, k: number of iterative learning) is determined by the image selection engine, and the k-th An image analysis method characterized by performing iterative learning of
  6.  請求項5に記載の画像分析方法であって、
     前記学習ステップにおいて、反復学習中の前記評価エンジンに学習画像f_iを入力した際に出力される前記推定評価値の正否の度合いを定量化した余裕度M(f_i)を算出し、
     k回目の反復学習における学習画像f_iのサブ学習画像群{f'_j(k)}への選択確率P_k(f_i)は、余裕度M(f_i)の関数であることを特徴とする、画像分析方法。
    The image analysis method according to claim 5,
    In the learning step, calculating a degree of margin M(f_i) that quantifies the degree of correctness of the estimated evaluation value output when the learning image f_i is input to the evaluation engine during iterative learning,
    The image analysis characterized in that the selection probability P_k(f_i) of the learning image f_i to the sub-learning image group {f'_j(k)} in the k-th iterative learning is a function of the margin M(f_i). Method.
  7.  請求項5に記載の画像分析方法であって、
     前記学習ステップにおいて、k回目の反復学習における学習画像f_iのサブ学習画像群{f'_j(k)}への選択確率P_k(f_i)は、学習画像f_iとその他の学習画像群{f_a}(a≠i)間の類似度の関数であることを特徴とする、画像分析方法。
    The image analysis method according to claim 5,
    In the learning step, the selection probability P_k(f_i) of the learning image f_i to the sub-learning image group {f'_j(k)} in the k-th iterative learning is the learning image f_i and the other learning image group {f_a}( A method of image analysis, characterized in that it is a function of similarity between a≠i).
  8.  請求項5に記載の画像分析方法であって、
     前記学習ステップにおいて、学習画像群{f_i}の画像数Nfからサブ学習画像群{f'_j(k)}の画像数Nf'_kへの削減率R_kの指定をGUIを介して受け付け、
     前記削減率R_kは反復学習の回数kの関数であることを特徴とする、画像分析方法。
    The image analysis method according to claim 5,
    In the learning step, receiving through a GUI a designation of a reduction rate R_k from the number of images Nf of the learning image group {f_i} to the number of images Nf'_k of the sub-learning image group {f'_j(k)};
    An image analysis method, wherein the reduction rate R_k is a function of the iterative learning number k.
  9.  請求項5から8のいずれか一項に記載の画像分析方法をプロセッサに実行させる、プログラム。 A program that causes a processor to execute the image analysis method according to any one of claims 5 to 8.
PCT/JP2022/036388 2022-03-04 2022-09-29 Image analysis system, image analysis method, and program WO2023166773A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022033635A JP2023128941A (en) 2022-03-04 2022-03-04 Image analysis system, image analysis method, and program
JP2022-033635 2022-03-04

Publications (1)

Publication Number Publication Date
WO2023166773A1 true WO2023166773A1 (en) 2023-09-07

Family

ID=87883538

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/036388 WO2023166773A1 (en) 2022-03-04 2022-09-29 Image analysis system, image analysis method, and program

Country Status (2)

Country Link
JP (1) JP2023128941A (en)
WO (1) WO2023166773A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016103094A (en) * 2014-11-27 2016-06-02 株式会社豊田自動織機 Image processing method, image processor, and image processing program
JP2021131835A (en) * 2020-02-18 2021-09-09 東洋製罐グループホールディングス株式会社 Image processing system and image processing program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016103094A (en) * 2014-11-27 2016-06-02 株式会社豊田自動織機 Image processing method, image processor, and image processing program
JP2021131835A (en) * 2020-02-18 2021-09-09 東洋製罐グループホールディングス株式会社 Image processing system and image processing program

Also Published As

Publication number Publication date
JP2023128941A (en) 2023-09-14

Similar Documents

Publication Publication Date Title
CN107408209B (en) System and method for defect classification in semiconductor processing
US10818000B2 (en) Iterative defect filtering process
JP7074460B2 (en) Image inspection equipment and methods
TWI748122B (en) System, method and computer program product for classifying a plurality of items
JP2019207685A (en) Method, device and system for estimating causal relation between observation variables
JP2015087903A (en) Apparatus and method for information processing
KR102618355B1 (en) Method and system for classifying defects in wafer using wafer-defect images, based on deep learning
JP6943291B2 (en) Learning device, learning method, and program
US11694327B2 (en) Cross layer common-unique analysis for nuisance filtering
US11580425B2 (en) Managing defects in a model training pipeline using synthetic data sets associated with defect types
US20210012211A1 (en) Techniques for visualizing the operation of neural networks
Janik et al. Interpretability of a deep learning model in the application of cardiac MRI segmentation with an ACDC challenge dataset
KR20220047228A (en) Method and apparatus for generating image classification model, electronic device, storage medium, computer program, roadside device and cloud control platform
JP2021143884A (en) Inspection device, inspection method, program, learning device, learning method, and trained dataset
CN114528913A (en) Model migration method, device, equipment and medium based on trust and consistency
Shahriyar et al. An approach for multi label image classification using single label convolutional neural network
Du Nguyen et al. Crack segmentation of imbalanced data: The role of loss functions
de la Rosa et al. Defect detection and classification on semiconductor wafers using two-stage geometric transformation-based data augmentation and SqueezeNet lightweight convolutional neural network
US20210343000A1 (en) Automatic selection of algorithmic modules for examination of a specimen
WO2023166773A1 (en) Image analysis system, image analysis method, and program
WO2022121544A1 (en) Normalizing oct image data
CN115018884A (en) Visible light infrared visual tracking method based on multi-strategy fusion tree
KR102239133B1 (en) Apparatus and method of defect classification using image transformation based on machine-learning
Vilalta et al. Studying the impact of the full-network embedding on multimodal pipelines
Kavitha et al. Explainable AI for Detecting Fissures on Concrete Surfaces Using Transfer Learning

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22929917

Country of ref document: EP

Kind code of ref document: A1