WO2021033239A1 - 情報処理装置、情報処理プログラム、及び、情報処理方法 - Google Patents

情報処理装置、情報処理プログラム、及び、情報処理方法 Download PDF

Info

Publication number
WO2021033239A1
WO2021033239A1 PCT/JP2019/032302 JP2019032302W WO2021033239A1 WO 2021033239 A1 WO2021033239 A1 WO 2021033239A1 JP 2019032302 W JP2019032302 W JP 2019032302W WO 2021033239 A1 WO2021033239 A1 WO 2021033239A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
pass
pair
fail
pseudo
Prior art date
Application number
PCT/JP2019/032302
Other languages
English (en)
French (fr)
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 富士通株式会社
Priority to CN201980098300.9A priority Critical patent/CN114096989A/zh
Priority to JP2021541361A priority patent/JP7197021B2/ja
Priority to PCT/JP2019/032302 priority patent/WO2021033239A1/ja
Publication of WO2021033239A1 publication Critical patent/WO2021033239A1/ja
Priority to US17/552,354 priority patent/US20220108433A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/0008Industrial image inspection checking presence/absence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/98Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
    • G06V10/993Evaluation of the quality of the acquired pattern
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Definitions

  • the present invention relates to an information processing device, an information processing program, and an information processing method.
  • a feature point is set for one image and the other image of the pair acquired by the acquisition means and the acquisition means for acquiring a plurality of pairs of images showing the same object and pairs of images showing different objects.
  • a learning device provided with a setting means for performing.
  • a plurality of predetermined feature points set at the same position of the one image and the other image are selected, and a feature extraction filter used for extracting the features of the predetermined feature points is selected for each predetermined feature point.
  • the selection means and the extraction means for extracting the features of the predetermined feature points of the one image and the other image by using the plurality of feature extraction filters selected by the selection means are further provided.
  • a calculation means for obtaining a correlation between a feature extracted from the one image by the extraction means and a feature extracted from the other image, the correlation obtained by the calculation means, and the one image and the other.
  • a learning means for learning the same object classifier for discriminating whether or not the objects appearing in two images are the same based on the label information indicating whether or not the objects appearing in the image are the same object. Further provided (see, for example, Patent Document 1).
  • the conventional learning device can determine the pass / fail of the image (pass image) of the non-defective product (passed product in the inspection) and the image (failed image) of the defective product (failed product in the inspection) among the mass-produced products.
  • the pass / fail judgment is made for the same type of inspection target as the learned mass-produced product, and the pass / fail of an unknown image is judged by the first inspection program. It does not judge whether it is appropriate to let the person judge.
  • the first inspection program when it takes time to perform machine learning to determine the pass / fail of a pass image and a fail image for an unknown image and obtain a pass / fail judgment result by the first inspection program, or preparatory work, etc. Whether it is appropriate to have the first inspection program judge the pass / fail of an unknown image for which the first inspection program has not made a pass / fail judgment before letting the first inspection program make a judgment when it takes time and effort. If it can be determined, the first inspection program can be effectively used.
  • a second inspection program that can determine whether it is appropriate for the first inspection program, which has undergone machine learning to determine the pass / fail of the pass / fail image of the mass-produced product, to judge the pass / fail of the unknown image. It is an object of the present invention to provide an information processing apparatus, an information processing program, and an information processing method capable of obtaining information processing.
  • the information processing apparatus is a first image acquisition unit that acquires a plurality of determined paired images including a pass image and a fail image for which the first machine-learned first inspection program correctly determines pass / fail.
  • a first image generation unit that generates a first pseudo pair image including a pass image and a fail image obtained by performing a first pseudo image generation process on the pass image and the fail image of the determined pair image, and the above.
  • the judgment result acquisition unit that acquires the judgment result that the first inspection program judges pass / fail for the pass image and the fail image of the first pseudo pair image, and the first inspection program judges pass / fail based on the judgment result.
  • the ranking unit that ranks the first pseudo-pair image for each pair according to the correctness of the determination and the pass image and the fail image of the pair image are input, the pass image and the fail image of the pair image are input.
  • the mathematical model represented by the second inspection program that determines whether it is appropriate for the first inspection program to determine the pass / fail of the image, the determined pair image, and the ranked first pseudo pair.
  • the first image generation unit includes a learning processing unit that causes the mathematical model to perform a second machine learning that inputs an image, and the number of the ranked first pseudo-pair images is equal to or greater than the first predetermined number.
  • the first pseudo-pair image is generated until, and the learning processing unit inputs the determined pair image and the first predetermined number or more of the ranked first pseudo-pair images.
  • the pass image and the fail image of the unknown pair image are input to the mathematical model by causing the mathematical model to perform the second machine learning, the pass image and the fail image of the unknown pair image are of a predetermined rank or higher. If the mathematical model determines that it is appropriate for the first inspection program to determine the pass / fail of the pass image and the fail image of the unknown pair image, and the rank is lower than the predetermined rank.
  • the mathematical model is trained so that the mathematical model determines that it is inappropriate for the first inspection program to determine the pass / fail of the pass image and the fail image of the unknown pair image.
  • Obtain a second inspection program that can determine whether it is appropriate for a first inspection program that has undergone machine learning to determine the pass / fail of a mass-produced product and a pass / fail image of an unknown image. It is possible to provide an information processing device, an information processing program, and an information processing method that can be used.
  • FIG. 1 shows the system 1 including the inspection program generation apparatus 100 of an embodiment. It is a perspective view of the computer system 20 which realizes an inspection program generation apparatus 100. It is a block diagram explaining the structure of the main part in the main body part 21 of a computer system 20. It is a figure which shows the structure of the inspection program generation apparatus 100. It is a figure which shows an example of the pair image of ranks 1 to 6. It is a figure which shows the image identification data which an inspection program generation apparatus 100 handles. It is a figure which shows the condition about the evaluation of the image by the inspection unit 11 and the image for learning and evaluation of DNN119. It is a figure which shows the distribution of the determination result of the pass image and the fail image of the pseudo pair image 1 by the inspection unit 11.
  • FIG. 1 is a diagram showing a system 1 including the inspection program generation device 100 of the embodiment.
  • the system 1 includes an inspection device 10 and an inspection program generation device 100.
  • the inspection device 10 and the inspection program generation device 100 are connected by a network 50 so as to be capable of data communication.
  • the network 50 is a LAN (Local Area Network), a WLAN (Wireless LAN), a WAN (Wide Area Network), or the like.
  • the inspection device 10 includes an inspection unit 11 and a memory 12.
  • the inspection unit 11 represents a function realized by installing an inspection program in the inspection device 10, and the memory 12 is a RAM (Random Access Memory), a ROM (Read Only Memory), and a ROM (Read Only Memory) of the inspection device 10. / Or a functional representation of an HDD (Hard Disk Drive) or the like.
  • the inspection program that realizes the inspection unit 11 is an example of the first inspection program that has been machine-learned first, and a part of the computer system that realizes the inspection device 10 functions as the inspection unit 11.
  • the inspection program that realizes the inspection unit 11 provides a pair image of a real image of a pass product (good product) and a real image of a reject product (defective product) for mass-produced products (mass-produced products) of the same type.
  • This is a machine-learned program in which machine learning is performed so that passed products and rejected products can be accurately determined using the represented teacher data.
  • being able to accurately determine a pass product and a fail product means that a pass product and a fail product can be determined with a predetermined probability or higher (pass / fail can be determined), and the predetermined probability is 95% as an example. is there.
  • a passing product is a mass-produced product that has been inspected by a human for a predetermined mass-produced product and has passed the inspection, and a rejected product has been inspected by a human for a predetermined mass-produced product and has not passed the inspection. It is a mass-produced product.
  • the real image is an image obtained by irradiating the subject with light and being reflected by the subject, and is typically a photographic image obtained by photographing the subject with a camera or the like. That is, the real image of the passed product is a real image of the passed product that passed the inspection, and the real image of the rejected product is a real image of the mass-produced product that did not pass the inspection.
  • the real image of the passed product and the real image of the rejected product are real images of the passed product and the rejected product for which the correct answer of either the passed product or the rejected product is known. It is data that can be used as teacher data representing a pair image of the real image of the above and the real image of the rejected product.
  • the inspection program generator 100 generates a pseudo image of the accepted product and an image of the rejected product by performing a pseudo image generation process on the real image of the accepted product and the real image of the rejected product.
  • the pseudo image generation process is a process of generating a pseudo image of the accepted product and an image of the rejected product, which are similar to the real image of the accepted product and the real image of the rejected product.
  • the similarity between the real image of the accepted product and the image of the pseudo-passed product and the image of the rejected product with respect to the real image of the rejected product can be adjusted by parameters in the pseudo-image generation process and the like.
  • the real image of the accepted product and the real image of the rejected product, and the pseudo image of the accepted product and the image of the rejected product are ranked from 1 to 6.
  • the pass image and the fail image of rank 1 are a real image of a pass product and a real image of a fail product, respectively.
  • Rank 1 is the highest rank among ranks 1 to 6.
  • the pseudo images of passed products and images of rejected products are ranked from 2 to 6.
  • Rank 2 is the second highest rank, and rank 6 is the lowest. The meaning of the rank will be described later.
  • the inspection unit 11 performs machine learning using teacher data representing a pair image of a real image of a passed product and a real image of a rejected product for a predetermined mass-produced product of the same type mass-produced as described above.
  • teacher data representing a pair image of a real image of a passed product and a real image of a rejected product for a predetermined mass-produced product of the same type mass-produced as described above.
  • the inspection in which the inspection unit 11 determines the pass / fail involves various processes such as preparation, a relatively large amount of time is required.
  • a predetermined mass-produced product products having various degrees of perfection are brought in from various business partners and the like, and the inspection unit 11 determines the pass / fail.
  • the inspection program generator 100 generates a pre-inspection program for determining whether or not it is suitable for the inspection performed by the inspection unit 11, and the pre-inspection program determines the suitability.
  • FIG. 2 is a perspective view of a computer system 20 that realizes the inspection program generator 100.
  • the computer system 20 shown in FIG. 2 includes a main body 21, a display 22, a keyboard 23, a mouse 24, and a communication module 25.
  • the main body 21 contains a CPU (Central Processing Unit), an HDD (Hard Disk Drive), a disk drive, and the like.
  • the display 22 displays a processing result or the like on the screen 22A according to an instruction from the main body 21.
  • the display 22 may be, for example, a liquid crystal monitor.
  • the keyboard 23 is an input unit for inputting various information into the computer system 20.
  • the mouse 24 is an input unit that specifies an arbitrary position on the screen 22A of the display 22.
  • the communication module 25 communicates with the inspection device 10 by wireless communication.
  • the inspection program generation program that gives the computer system 20 a function as the inspection program generation device 100 is an example of an information processing program, and is stored in a portable recording medium such as a disk 27 or a communication device such as a communication module 25. Is downloaded from the recording medium 26 of another computer system using the above, input to the computer system 20, and compiled.
  • the inspection program generation program that gives the computer system 20 a function as the inspection program generation device 100 operates the computer system 20 as the inspection program generation device 100.
  • This inspection program generation program may be stored in a computer-readable recording medium such as a disk 27.
  • Computer-readable recording media are limited to portable recording media such as disks 27, IC card memory, magnetic disks such as floppy (registered trademark) disks, magneto-optical disks, CD-ROMs, and USB (Universal Serial Bus) memories. It's not something.
  • Computer-readable recording media include various recording media accessible by a computer system connected via a communication module 25 or a communication device such as a LAN.
  • FIG. 3 is a block diagram illustrating the configuration of a main part in the main body 21 of the computer system 20.
  • the main body 21 includes a CPU 31 connected by a bus 30, a memory unit 32 including a RAM (Random Access Memory) or a ROM (Read Only Memory), a disk drive 33 for the disk 27, and a hard disk drive (HDD) 34. ..
  • the computer system 20 is not limited to the configuration shown in FIGS. 2 and 3, and various well-known elements may be added or used as alternatives.
  • FIG. 4 is a diagram showing the configuration of the inspection program generator 100.
  • the inspection program generation device 100 includes a control device 110 and a communication unit 130.
  • the control device 110 includes a main control unit 111, an image acquisition unit 112, an image generation unit 113, an image acquisition unit 114, an image generation unit 115, a determination result acquisition unit 116, a ranking unit 117, a learning processing unit 118, and a DNN 119 (Deep Neural). Network), a determination result acquisition unit 120, and a memory 121.
  • the main control unit 111, the image acquisition unit 112, the image generation unit 113, the image acquisition unit 114, the image generation unit 115, the judgment result acquisition unit 116, the ranking unit 117, the learning processing unit 118, the DNN 119, and the judgment result acquisition unit 120 The function of the program executed by the control device 110 is shown as a functional block. Further, the memory 121 functionally represents the memory unit 32 and the HDD 34 (see FIG. 3) of the inspection program generation device 100.
  • the judged pair image is a rank 1 pair image
  • the pass image and the fail image of the judged pair image are the pass image and the fail image of the rank 1.
  • the main control unit 111 is a processing unit that controls the processing of the control device 110, and includes an image acquisition unit 112, an image generation unit 113, an image acquisition unit 114, an image generation unit 115, a determination result acquisition unit 116, and a ranking unit 117.
  • a process other than the process performed by the learning processing unit 118, the DNN 119, and the determination result acquisition unit 120 is executed.
  • the image acquisition unit 112 is an example of the first image acquisition unit, and acquires a plurality of determined pair images including a pass image and a fail image for which the inspection unit 11 of the inspection device 10 (see FIG. 1) correctly determines pass / fail. To do.
  • the number of images (number of pairs) of the plurality of determined pair images is, for example, 40 pairs (40 pass images and 40 reject images).
  • the image generation unit 113 is an example of the second image generation unit, and is an example of a pass image in which a pseudo image generation process is performed on a pass image and a fail image of a plurality of determined pair images, and the pseudo image generation process is performed. Generate a plurality of pseudo pair images 1 including rejected images.
  • the pseudo-pair image 1 is an example of the second pseudo-pair image.
  • the pseudo-image generation process performed by the image generation unit 113 is an example of the second pseudo-image generation process.
  • a variational autoencoder (VAE) method and a GAN (Generative Adversarial Network) are used. Perform the two-step processing used.
  • the image generation unit 113 performs image processing on the pass image and the fail image of the determined pair image by the variable auto encoder method, and causes GAN to learn the pass image and the fail image obtained by this image processing to obtain an image. By performing the processing, the pseudo pair image 1 is generated.
  • the pseudo image generation process performed by the image generation unit 113 is very similar to the pass image and the fail image of the judged pair image because there are relatively few changes to the pass image and the fail image of the judged pair image. Strictly different.
  • the pseudo image generation process performed by the image generation unit 113 in this way is a process of generating a pseudo image having a lower degree of image change with respect to the determined pair image than the pseudo image generation process performed by the image generation unit 115 described later. Therefore, the pseudo-pair image 1 generated by the image generation unit 113 is an image closer to the determined pair image than the pseudo-pair image 2 generated by the image generation unit 115.
  • the pseudo pair image 1 generated by the image generation unit 113 is a pair image of rank 2, and the pass image and the fail image of the pseudo pair image 1 are the pass image and the fail image of rank 2.
  • the image acquisition unit 114 is an example of the second image acquisition unit.
  • the inspection unit 11 of the inspection device 10 is made to determine the pass / fail of the pass image and the fail image of the pseudo pair image 1, and the pass / fail is correctly determined. Get 1.
  • the pass image and the fail image of the pseudo pair image 1 whose pass / fail is not correctly determined by the inspection unit 11 of the inspection device 10 are discarded without being acquired by the image acquisition unit 114.
  • the image generation unit 115 is an example of the first image generation unit, and is a pseudo image including the pass image and the fail image obtained by performing the first pseudo image generation process on the pass image and the fail image of the plurality of determined pair images.
  • the pair image 2 is generated.
  • the pseudo-pair image 2 is an example of the first pseudo-pair image.
  • the pseudo-image generation process performed by the image generation unit 115 is an example of the first pseudo-image generation process, and as an example, a two-step process using the variational autoencoder method and GAN is performed as in the image generation unit 113.
  • the image generation unit 115 performs image processing on the pass image and the fail image of the determined pair image by the variable auto encoder method, and causes GAN to learn the pass image and the fail image obtained by this image processing to obtain an image. By performing the processing, the pseudo pair image 2 is generated.
  • the pseudo image generation process performed by the image generation unit 115 in this way is a process of generating a pseudo image having a higher degree of image change with respect to the determined pair image than the pseudo image generation process performed by the image generation unit 113. Therefore, the pseudo-pair image 2 generated by the image generation unit 115 is an image that is less similar to the determined pair image (higher degree of change) than the pseudo-pair image 1 generated by the image generation unit 113. This is because, as an example, the parameter values in the variational autoencoder method are different from the processing performed by the image generation unit 113.
  • the pass / fail image of the pseudo-pair image 2 generated by the image generation unit 115 is determined by the inspection unit 11 of the inspection device 10.
  • the pseudo-pair image 2 including the pass image and the fail image whose pass / fail is determined by the inspection unit 11 of the inspection device 10 is ranked by the ranking unit 117 and classified into any of ranks 3 to 6.
  • the pass image and the fail image included in the pseudo pair image 2 of the ranks 3 to 6 are the pass image and the fail image of the ranks 3 to 6, respectively.
  • the determination result acquisition unit 116 is an example of the first determination result acquisition unit, and causes the inspection unit 11 of the inspection device 10 to determine the pass / fail of the pass image and the fail image of the pseudo pair image 2 generated by the image generation unit 115. , Acquire the pass / fail judgment result.
  • the ranking unit 117 determines whether the determination is correct or not based on the determination result that the inspection unit 11 of the inspection device 10 determines the pass / fail image of the pseudo-pair image 2 generated by the image generation unit 115. Rank. The ranking is performed for each pair of pseudo-pair images 2 for which pass / fail is determined. The ranking unit 117 ranks the pass image and the fail image of the pseudo pair image 2 into any of ranks 3 to 6 according to the correctness of the determination.
  • the ranking unit 117 classifies the pseudo pair image 2 into rank 3 (third rank from the top) when both the pass image and the fail image of the pseudo pair image 2 are correctly determined.
  • the ranking unit 117 erroneously determines the pass image of the pseudo-pair image 2 as a fail image, and rank 4 (fourth from the top) when the fail image is correctly determined as a fail image. Rank).
  • the ranking unit 117 correctly determines the pass image of the pseudo pair image 2 as a pass image, and ranks 5 (fifth rank from the top) when the fail image is erroneously determined as a pass image. Classify into.
  • the ranking unit 117 erroneously determines the pass image of the pseudo-pair image 2 as a fail image, and rank 6 (lowest rank) when the fail image is erroneously determined as a pass image. Classify into. Rank 6 is a case where both the pass image and the fail image of the pseudo pair image 2 are erroneously determined.
  • ranks 4 to 6 are ranks when the pass / fail of the pass image or the fail image of the pseudo pair image 2 is erroneously determined by the inspection unit 11 of the inspection device 10.
  • the learning processing unit 118 determines the DNN 119 by causing the DNN 119 to perform machine learning using the determined pair image of the rank 1, the pseudo pair image 1 of the rank 2, and the pseudo pair image 2 of the ranks 3 to 6.
  • the parameters of DNN119 are optimized so that the accuracy is improved.
  • the machine learning that the learning processing unit 118 causes the DNN 119 to perform is an example of the second machine learning.
  • the learning processing unit 118 uses a predetermined number of images of each rank when causing the DNN 119 to perform machine learning.
  • the predetermined number may be different for each rank.
  • the predetermined number of the pseudo-pair images 1 of rank 2 is an example of the second predetermined number, and the predetermined number of the pseudo-pair images 2 of each rank of ranks 3 to 6 is an example of the first predetermined number.
  • the predetermined number of the pseudo pair images 2 of rank 6 is an example of the third predetermined number
  • the predetermined number of the pseudo pair images 2 of rank 4 or 5 is an example of the fourth predetermined number
  • the predetermined number of the pseudo-pair images 2 of rank 3 is an example of the fifth predetermined number.
  • DNN119 is a deep neural network (DNN).
  • DNN119 is a pre-inspection program that determines whether it is appropriate for the inspection unit 11 to determine the pass / fail of the pass image and the fail image of the pair image when the pass image and the fail image of the pair image are input. It realizes the mathematical model represented.
  • the pre-inspection program is an example of a second inspection program.
  • the pre-inspection program is a program that predetermines whether it is appropriate for the inspection unit 11 to determine the pass / fail of the pass image and the fail image of the unknown pair image.
  • the unknown pair image is an image pair including a pass image and a fail image for which the inspection unit 11 has not determined the pass / fail.
  • DNN119 performs machine learning using the determined pair image of rank 1, the pseudo pair image 1 of rank 2, and the pseudo pair image 2 of ranks 3 to 6, which are input by the learning processing unit 118. As a result, the parameters of the DNN 119 are optimized, and the DNN 119 is in a state where it can be determined by the pre-inspection program whether or not it is suitable for the inspection performed by the inspection unit 11 with a high accuracy of about 90%.
  • DNN119 reads the pass image and the fail image of the unknown pair image in the state where the pre-inspection program is optimized after finishing the machine learning (the pass image and the fail image of the unknown pair image are input), , About 90% of whether the pair image is suitable for the inspection performed by the inspection unit 11 (whether it is an appropriate pair image) or whether it is an unsuitable pair image (whether it is an inappropriate pair image). Judgment is made with high accuracy and the judgment result is output.
  • the pair image suitable for the inspection performed by the inspection unit 11 means that the pair image can be judged to pass or fail by the inspection unit 11. Further, the pair image inappropriate for the inspection performed by the inspection unit 11 means that the pair image is difficult for the inspection unit 11 to make a pass determination or a fail determination.
  • the DNN 119 determines which of the ranks 1 to 6 the pass image and the fail image of the unknown pair image correspond to. By doing so, it is determined whether or not the pair image is suitable for the inspection performed by the inspection unit 11.
  • the DNN 119 determines that the pair image is suitable for the inspection performed by the inspection unit 11 and inputs the pair image. If the pass image and the fail image of the unknown pair image obtained correspond to rank 6, it is determined that the pair image is inappropriate for the inspection performed by the inspection unit 11.
  • the accuracy when the inspection unit 11 determines the pass / fail of the pass image and the fail image of the unknown pair image is limited, and the inspection unit 11 inputs the unknown pair image to the pass / fail judgment. It takes time to prepare. Due to such circumstances, in order to improve the efficiency of the operation of the inspection device 10 and the inspection unit 11 by determining in advance whether or not the pair image is appropriate in the DNN 119, the inspection program generation device 100 uses the DNN 119. Optimize the parameters of. The inspection program generation device 100 generates a pre-inspection program in an optimized state by optimizing the parameters of the DNN 119.
  • the determination result acquisition unit 120 is an example of the second determination result acquisition unit, and acquires the determination result output by the DNN 119. More specifically, the determination result acquisition unit 120 determines whether or not it is appropriate for the inspection unit 11 to determine the pass / fail of the pass image and the fail image of the unknown pair image by the DNN 119 in which the pre-inspection program is generated. Acquire the determined judgment result.
  • the memory 121 stores data, programs, and the like necessary for the control device 110 to perform the above-mentioned processing.
  • This program includes an inspection program generation program that gives the computer system 20 (see FIG. 2) a function as an inspection program generation device 100.
  • the communication unit 130 communicates with the inspection device 10 via the network 50.
  • the communication unit 130 corresponds to the communication module 25 of FIG.
  • FIG. 5 is a diagram showing an example of a pair image of ranks 1 to 6.
  • the left side is a pass image and the right side is a fail image.
  • Each pair image contains one pass image and one fail image. Further, in order to distinguish between a pass image and a fail image, a flag may be set for each image as an example. The flag of the pass image may be set to "1", and the flag of the fail image may be set to "0".
  • the pair images of ranks 1 to 6 shown in FIG. 5 are images obtained by binarizing the actual pair images of ranks 1 to 6 and deforming them. Therefore, in FIG. 5, the pseudo pair image 1 of rank 2 and the pseudo pair image of each rank of ranks 3 to 6 have a low degree of similarity to the pair image of rank 1 (determined pair image).
  • the pair images of ranks 1 to 6 shown as an example are images of wiring patterns formed on the wiring board.
  • the pass / fail determination result by the inspection unit 11 of the inspection device 10 is shown below each image.
  • the determination result of the inspection unit 11 of the inspection device 10 is shown as a pass determination or a fail determination for each image.
  • the data representing the pass / fail determination result by the inspection unit 11 for each image is associated with the ID (Identifier) of each image together with the flag for distinguishing the pass image and the fail image. The data for identifying such an image will be described later with reference to FIG.
  • the pass image and the fail image of rank 1 are the real image of the pass product and the real image of the fail product, and are the pass image and the fail image of the judged pair image. Therefore, as shown in FIG. 5, the pass image of rank 1 shows a beautiful wiring pattern, and the fail image shows a wiring pattern in which about the left half is missing.
  • the inspection unit 11 of the inspection device 10 makes a pass judgment on the pass image of rank 1 and makes a fail judgment on the fail image of rank 1. That is, the inspection unit 11 of the inspection device 10 correctly determines both the pass image and the fail image of rank 1.
  • the pass image and the fail image of rank 2 shown in FIG. 5 are subjected to pseudo image generation processing using the variational auto-encoder method and the image processing by GAN for the pass image and the fail image of rank 1, respectively. It is a pass image and a fail image of the pseudo pair image 1 performed.
  • the image generation unit 113 uses the variational auto-encoder method to mix the pass image and the fail image of the rank 1 at a ratio of 100% and 0%.
  • An image and a mixed fail image in which a pass image and a fail image of rank 1 are mixed at a ratio of 0% and 100% are created. Therefore, these mixed pass image and mixed fail image are the pass image and the fail image (pass image and fail image of the judged pair image) of rank 1, respectively.
  • the image generation unit 113 causes GAN to learn the mixed pass image mixed at the ratio of 100% and 0% and the mixed reject image mixed at the ratio of 0% and 100% to perform image processing.
  • the pass image and the fail image of the pseudo pair image 1 (the pass image and the fail image of rank 2) are generated.
  • the pass image and the fail image of rank 2 generated in this way are images very similar to the pass image and the fail image of rank 1.
  • the judgment results of the inspection unit 11 of the inspection device 10 are the pass judgment and the fail judgment, respectively. That is, the inspection unit 11 of the inspection device 10 correctly determines both the pass image and the fail image of rank 2.
  • the pass image and the fail image of ranks 3 to 6 are a pseudo pair obtained by performing a pseudo image generation process using the variational auto-encoder method and the image processing by GAN on the pass image and the fail image of rank 1. It is a pass image and a fail image of image 1.
  • the process of generating pass images and fail images of ranks 3 to 6 is a mixture of pass images and fail images of rank 1 in the variational autoencoder method.
  • the ratio to do is different.
  • the mixing ratio is a parameter in the variational autoencoder method.
  • the image generation unit 115 mixes the pass images and fail images of rank 1 at a ratio of 80% and 20%, respectively, by the variational auto-encoder method.
  • the mixed pass image and the mixed fail image obtained by mixing the pass image and the fail image of rank 1 at the ratios of 20% and 80%, respectively, are created.
  • the image generation unit 115 causes GAN to learn the mixed pass image mixed at the ratio of 80% and 20% and the mixed reject image mixed at the ratio of 20% and 80% to perform image processing.
  • the pass image and the fail image of the pseudo pair image 2 (the pass image and the fail image of any of ranks 3 to 6) are generated.
  • the pseudo-pair image 2 generated by the image generation unit 115 is classified into any of ranks 3 to 6 by the ranking unit 117.
  • the judgment results of the inspection unit 11 of the inspection device 10 for the pass image and the fail image of rank 3 shown in FIG. 5 are pass judgment and fail judgment, respectively, and both are correctly judged.
  • the pass and fail images of rank 3 are less similar to the pass and fail images of rank 1 than the pass and fail images of rank 2, but the pass and fail images have a relatively clear outline of the wiring pattern. Therefore, the judgment of acceptance by the inspection unit 11 is correct. Further, the failing image lacks the wiring pattern, and the failure determination by the inspection unit 11 is correct.
  • the determination results of the inspection unit 11 of the inspection device 10 for the pass image and the fail image of rank 4 shown in FIG. 5 are both fail determinations. That is, the inspection unit 11 erroneously determines the pass image as a fail image, and correctly determines the fail image as a fail image.
  • the pass and fail images of rank 4 are less similar to the pass and fail images of rank 1 than the pass and fail images of rank 2, but the pass and fail images have a relatively clear outline of the wiring pattern. Therefore, the failure determination by the inspection unit 11 is incorrect. Further, the failing image lacks the wiring pattern, and the failure determination by the inspection unit 11 is correct.
  • making a fail judgment for a pass image is an over-judgment that makes an excessive fail judgment. If an over-judgment occurs, the accepted product may be treated as a rejected product and the yield may decrease. Therefore, it is preferable that the probability that the over-judgment is performed is low.
  • the determination results of the inspection unit 11 of the inspection device 10 for the pass image and the fail image of rank 5 shown in FIG. 5 are both pass determinations. That is, the inspection unit 11 correctly determines the pass image as the pass image, and erroneously determines the fail image as the pass image.
  • the pass and fail images of rank 5 are less similar to the pass and fail images of rank 1 than the pass and fail images of rank 2, but the pass and fail images have a relatively clear outline of the wiring pattern. Therefore, the judgment of acceptance by the inspection unit 11 is correct. Further, since the right end of the wiring pattern of the rejected image is thinner than the reference, the pass determination by the inspection unit 11 is incorrect.
  • making a pass judgment on a rejected image is a missed judgment that misses the rejected image. If an overlooked determination occurs, a rejected product may be shipped, so it is preferable that the probability that the overlooked determination is made is low.
  • the judgment results of the inspection unit 11 of the inspection device 10 for the pass image and the fail image of rank 6 shown in FIG. 5 are a fail judgment and a pass judgment, respectively, and both are erroneously judged.
  • the pass and fail images of rank 6 are less similar to the pass and fail images of rank 1 than the pass and fail images of rank 2, but the pass and fail images have a relatively clear outline of the wiring pattern. Therefore, the rejection judgment is incorrect. Further, in the reject image, the right end of the wiring pattern is thinner than the reference, and the pass determination by the inspection unit 11 is incorrect.
  • both the over-judgment in which the pass image is judged to be rejected and the overlook judgment in which the pass-judgment is made for the fail image occur.
  • FIG. 6 is a diagram showing image identification data handled by the inspection program generation device 100.
  • the image identification data shown in FIG. 6 is assigned to each of the pass image and the fail image, and is common to the pass image and the fail image of the determined pair image, the pseudo pair image 1, the pseudo pair image 2, and the unknown pair image. is there.
  • the image identification data is stored in the memory 121.
  • the image identification data includes items such as a pair image ID (Identifier), an image ID, a first pass image flag, a second pass image flag, a rank, and a judgment result.
  • the pair image ID is an ID as a pair image, and is assigned to the determined pair image, the pseudo pair image 1, the pseudo pair image 2, and the unknown pair image.
  • the determined pair image, the pseudo pair image 1, the pseudo pair image 2, and the pair image ID of the unknown pair image can be distinguished from each other, and the determined pair image, the pseudo pair image 1, and the pseudo pair image 2 are identified by the pair image ID. , It is possible to identify which of the unknown pair images.
  • the image ID is an ID assigned to each of the pass image and the fail image included in each pair image. Therefore, the pass image and the fail image included in one pair image each have the image identification data shown in FIG.
  • the first pass image flag is set to "1" when it is a pass image of a mass-produced product that has passed the inspection performed by a human, and when it is a reject image of a mass-produced product that has not passed the inspection performed by a human. If it is set to "0" and no human inspection has been performed, the data will not be set (it will be "-").
  • the first pass image flag is set to "1" and "0" for the pass image and the fail image included in the judged pair image of rank 1, respectively, and the pseudo pair image 1 of rank 2 and the pseudo pair image 1 of rank 3 to 6 are pseudo. No data is set (becomes "-") for the pass image and the fail image included in the pair image 2.
  • the second pass image flag is set to "1" when it is a pass image of a mass-produced product that has passed the inspection performed by the inspection unit 11, and the mass-produced product that has not passed the inspection performed by the inspection unit 11 has failed. If it is an image, it is set to "0", and if it is not inspected by the inspection unit 11, no data is set (it becomes "-").
  • the second pass image flag is set to "1" or "0" for the pass image and the fail image included in the pair images of ranks 1 to 6, respectively.
  • Rank represents ranks 1 to 6.
  • the determined pair image is set to rank 1
  • the pseudo pair image 1 is set to rank 2
  • the pseudo pair image 2 is set to the rank (any of ranks 3 to 6) classified by the ranking unit 117. To.
  • the judgment result represents the pass / fail judgment result of the judged pair image, the pseudo pair image 1, the pass image and the fail image of the pseudo pair image 2 by the inspection unit 11, and is set to "1" in the case of the pass judgment. In case of failure judgment, it is set to "0".
  • the image identification data shown in FIG. 6 is, for example, image identification data for a pass image of a determined pair image. In the case of an unknown pair image, it has only the pair image ID and the image ID.
  • FIG. 7 is a diagram showing conditions related to the evaluation of the image by the inspection unit 11 and the learning and evaluation images of DNN119.
  • FIG. 7 shows the image types of the pass images and the fail images of ranks 1 to 6, the number of images for evaluation by the inspection unit 11, the judgment result of the inspection unit 11, the judgment result of DNN119, and the pair image for learning of DNN119. The number and the number of paired images for evaluation of DNN119 are shown.
  • the image type indicates whether it is a real image, a pseudo pair image 1, or a pseudo pair image 2.
  • the number of images for evaluation by the inspection unit 11 represents the number of images of the pass image and the fail image when the pair image of each rank is input to the inspection unit 11 and the evaluation for determining pass / fail is performed.
  • the determination result of the inspection unit 11 represents the result of the evaluation (pass / fail determination) by the inspection unit 11.
  • the determination result of DNN119 indicates the determination result output by DNN119 when the pass image and the fail image of the unknown pair image are input to DNN119.
  • DNN119 determines that it is appropriate when the pass image and the fail image of the unknown pair image correspond to ranks 1 to 5, and determines that it is inappropriate when it corresponds to rank 6. It is set to do.
  • the division is not limited to this, and ranks 5 and 6 may be determined to be inappropriate, ranks 4 to 6 may be determined to be inappropriate, and ranks 4 and 6 may be determined to be inappropriate. It may be determined that it is appropriate, or ranks 3 to 6 may be determined as inappropriate.
  • the output of the DNN 119 may be three stages or more, or may be six stages.
  • the number of paired images for learning of DNN119 represents the number of paired images of each rank when DNN119 is made to perform machine learning.
  • the number of paired images for evaluation of DNN119 represents the number of paired images of each rank to be input when evaluating the pre-examination program after the learning of DNN119 is completed.
  • the image types of the pass image and the fail image of rank 1 are real images, and the number of images of the pass image and the fail image when the inspection unit 11 evaluates by the pass / fail judgment is 20 each as an example. Further, the pass / fail judgment results of the pass image and the fail image of rank 1 by the inspection unit 11 are the pass judgment and the fail judgment, respectively.
  • the determination result of DNN119 is appropriate, and the number of paired images for learning and evaluation of DNN119 is 225 pairs and 25 pairs, respectively.
  • the image type of the pass image and the fail image of rank 2 is pseudo-pair image 1, and the number of images of the pass image and the fail image when the inspection unit 11 evaluates by the pass / fail judgment is 45 as an example. is there. Further, the pass / fail judgment results of the pass image and the fail image of rank 2 by the inspection unit 11 are the pass judgment and the fail judgment, respectively.
  • DNN119 determines whether DNN119 is a paired images for learning and evaluation of DNN119 is 400 pairs and 25 pairs, respectively.
  • the image types of the pass image and the fail image of the rank 3 are pseudo-pair images 2, and the pass / fail judgment results of the pass image and the fail image of the rank 3 by the inspection unit 11 are the pass judgment and the fail judgment, respectively. is there.
  • the determination result of DNN119 is appropriate, and the number of paired images for learning and evaluation of DNN119 is 400 pairs and 25 pairs, respectively.
  • the number of images of the pass image and the fail image of the pseudo pair image 2 of ranks 3 to 6 when the inspection unit 11 evaluates by the pass / fail judgment is 500.
  • the 500-pair pseudo-pair image 2 is a pseudo-pair image 2 used to obtain a pseudo-pair image 2 of ranks 3 to 6 for learning and evaluation of DNN119.
  • the image type of the pass image and the fail image of the rank 4 is the pseudo pair image 2, and the pass / fail judgment result of the pass image and the fail image of the rank 4 by the inspection unit 11 is both the fail judgment. Further, the determination result of DNN119 is appropriate, and the number of paired images for learning and evaluation of DNN119 is 400 pairs and 25 pairs, respectively.
  • the image type of the pass image and the fail image of the rank 5 is the pseudo pair image 2, and the pass / fail judgment result of the pass image and the fail image of the rank 5 by the inspection unit 11 is both pass judgments. Further, the determination result of DNN119 is appropriate, and the number of paired images for learning and evaluation of DNN119 is 400 pairs and 25 pairs, respectively.
  • the image types of the pass image and the fail image of the rank 6 are pseudo-pair images 2, and the pass / fail judgment results of the pass image and the fail image of the rank 6 by the inspection unit 11 are the fail judgment and the pass judgment, respectively. is there. Further, the determination result of DNN119 is inappropriate, and the number of paired images for learning and evaluation of DNN119 is 1600 pairs and 25 pairs, respectively.
  • the number of pass images and fail images when the inspection unit 11 evaluates by pass / fail judgment is the smallest for the pass image and the fail image of rank 1. Since the pass image and the fail image of the rank 1 are real images and there is an extremely high possibility that the pass / fail of the inspection unit 11 is correctly performed, the pass image and the fail image of the rank 1 for learning and evaluation of DNN119 are obtained. For that purpose, 20 pieces are enough.
  • the number of images of the pass image and the fail image when the inspection unit 11 evaluates by the pass / fail judgment is set to 45 for each of the pass image and the fail image of rank 2.
  • the pass and fail images of rank 2 are very similar to the pass and fail images of rank 1, and there is a high possibility that the pass / fail of the inspection unit 11 will be performed correctly. Therefore, for learning and evaluation of DNN119. This is because the number of images that is about twice that of rank 1 is sufficient to obtain the pass image and the fail image of rank 2.
  • the number of images of the pass image and the fail image when the inspection unit 11 evaluates by the pass / fail judgment is the number of images of the pass image and the fail image of the pseudo pair image 2 which can correspond to any of ranks 3 to 6. Is the most. This is because the pass image and the fail image of the pseudo-pair image 2 of a predetermined number or more are used for each of the ranks 3 to 6 for the learning and evaluation of the DNN 119, so that it is preferable that the number of images is as large as possible. Therefore, it is set to 500 pieces.
  • the number of paired images for learning DNN119 for the pass image and the fail image of rank 1 is set to be the smallest. This is because the pass image and the fail image of rank 1 are real images, so a relatively small number of images is sufficient.
  • the number of paired images for learning DNN119 for the pass images and the fail images of ranks 2 to 5 is set to be the second smallest. Since the pass and fail images of ranks 2 to 5 include changes to the pass and fail images of rank 1, sufficient images for DNN119 to learn the pass and fail images of ranks 2 to 5. In order to secure the number, the number of images for learning is increased from rank 1.
  • the number of paired images for learning DNN119 for the pass image and the fail image of rank 6 is set to be the largest. Since rank 6 is a case where both pass images and fail images are erroneously determined, rank 2 is required to secure a sufficient number of images for DNN 119 to learn the pass images and fail images of rank 6. The number of images for learning is increased from ⁇ 5.
  • the number of paired images for evaluation of DNN119 for the pass images and the fail images of ranks 1 to 6 is the same. This is because the same number of pass images and fail images of ranks 1 to 6 are evaluated by DNN119.
  • FIG. 8 is a diagram showing the distribution of the determination results of the pass image and the fail image of the pseudo pair image 1 by the inspection unit 11.
  • the determination result shown in FIG. 8 is the result of the inspection unit 11 actually performing the determination.
  • the horizontal axis is the sample number
  • the judgment result of the pass image is indicated by a white circle ( ⁇ ) marker
  • the judgment result of the reject image is indicated by a black circle ( ⁇ ) marker.
  • a sample number of about 40 or less is a judgment result of a rejected image
  • a sample number of about 40 or more is a judgment result of a pass image.
  • the vertical axis represents the determination value of the inspection unit 11, and the value above the threshold value is acceptable and the value below the threshold value is rejected.
  • the inspection unit 11 determines that all the passed images are passed, and all the failed images are judged as rejected. As described above, the accuracy of determining the pass image and the fail image of the pseudo pair image 1 by the inspection unit 11 is very high.
  • FIG. 9 is a diagram showing the distribution of the determination results of the pass image and the fail image of the pseudo pair image 2 by the inspection unit 11.
  • the meanings of the horizontal axis, the vertical axis, and the marker are the same as those in FIG. 8, and the determination result shown in FIG. 9 is the result of the inspection unit 11 actually performing the determination.
  • FIG. 9 shows the determination results for more samples than in FIG.
  • sets A to D were obtained.
  • the set A is a set of samples that the inspection unit 11 correctly determines that the passing image is passed.
  • the set B is a set of over-determined samples in which the inspection unit 11 erroneously determines that the accepted image is rejected.
  • the set C is a set of samples that the inspection unit 11 correctly determines that the rejected image is rejected.
  • the set D is a set of overlooked determination samples in which the inspection unit 11 erroneously determines that the rejected image is passed.
  • the sets A and C are a set of samples in which the inspection unit 11 correctly determines the pass image and the fail image of the pseudo pair image 2 of ranks 3 to 6, respectively, and the sets B and D are pseudo pairs of ranks 3 to 6. This is a set of samples in which the inspection unit 11 erroneously determines the pass image and the fail image of the image 2. Compared to the sets A and C, the number of samples of the sets B and D that have been erroneously determined is small.
  • the sets B and D are a set of samples of excess judgment and oversight judgment that are difficult to obtain from the pass image and the fail image of the real image. If the determination results belonging to the sets B and D are used for machine learning of DNN119, erroneous determination can be reduced and the determination accuracy of DNN119 can be improved.
  • the inspection program generation device 100 generates a pseudo pair image 2 of ranks 3 to 6 based on the determined pair image (rank 1), and uses the pseudo pair image 2 of ranks 3 to 6 as teacher data in the DNN 119. Input and let DNN119 perform machine learning.
  • the inspection program generation device 100 further inputs the pseudo-pair image 2 of rank 2 into DNN119 as teacher data, and causes DNN119 to perform machine learning.
  • the reason for using the pseudo pair image 2 of rank 2 is mainly to increase the number of samples.
  • 10 and 11 are diagrams showing a flowchart showing the processing executed by the control device 110 of the inspection program generation device 100.
  • a plurality of determined pair images including a pass image and a fail image for which the inspection unit 11 of the inspection device 10 (see FIG. 1) correctly determines pass / fail are stored in the memory 12. Further, one or a plurality of unknown pair images for determining whether the DNN 119 is an appropriate pair image or an inappropriate pair image at the end of machine learning is stored in the memory 121. I will do it.
  • the image acquisition unit 112 acquires the determined pair image from the inspection device 10 (step S1).
  • the main control unit 111 receives the determined pair image from the inspection device 10 via the network 50 via the communication unit 130, and the image acquisition unit 112 acquires the received determined pair image.
  • the main control unit 111 divides the determined pair image acquired by the image acquisition unit 112 into a determined pair image for learning and a determined pair image for evaluation at a predetermined distribution ratio, generates a pair image, and stores the memory. It is stored in 121 (step S2).
  • the predetermined distribution ratios are 15 pairs and 5 pairs as an example.
  • the main control unit 111 is a determined pair for learning 225 pairs (225 pairs obtained by combining 15 ⁇ 15) from 15 passed images and 15 failed images included in 15 pairs of determined pair images. Create an image and make 25 pairs (25 pairs obtained by combining 5 x 5) from 5 passed images and 5 failed images included in 5 pairs of judged pairs images. An image is created and stored in the memory 121.
  • the image generation unit 113 performs pseudo image generation processing on the pass image and the fail image of the plurality of determined pair images, and a plurality of pseudo pair images including the pass image and the fail image for which the pseudo image generation process is performed. 1 is generated (step S3).
  • the number of pairs of the plurality of determined pair images is 20 pairs as an example.
  • the image generation unit 113 performs pseudo-image generation processing on a plurality of determined pair images, so that 45 pairs of pseudo images including pass images and reject images for which 45 pseudo-image generation processes have been performed are performed. Generate pair image 1.
  • the image acquisition unit 114 causes the inspection unit 11 of the inspection device 10 to determine the pass / fail of the pass image and the fail image of the 45 pairs of pseudo pair images 1 (step S4).
  • the image acquisition unit 114 causes the main control unit 111 to transmit a plurality of pseudo-pair images 1 to the inspection device 10 via the communication unit 130, and causes the inspection unit 11 of the inspection device 10 to pass and fail the pseudo-pair image 1. To judge pass / fail.
  • the image acquisition unit 114 acquires the pseudo-pair image 1 whose pass / fail is correctly determined by the inspection unit 11 (step S5). More specifically, the image acquisition unit 114 causes the main control unit 111 to receive a plurality of pseudo-pair images 1 including a pass image and a fail image determined by the inspection device 10 and a pass / fail determination result. .. The pass / fail judgment result is registered in the image identification data (see FIG. 6).
  • the image acquisition unit 114 acquires a pseudo-pair image 1 including a pass image and a fail image for which pass / fail is correctly determined by the inspection device 10 among the plurality of received pseudo-pair images 1.
  • Which of the two images included in the pseudo-pair image 1 is a pass image can be determined by the value of the second pass image flag of the image identification data. Therefore, if they match with the pass / fail judgment result, the judgment is correct. If they do not match, it means that the judgment is incorrect.
  • the pseudo pair image 1 is very similar to the pass image and the fail image of the judged pair image, the pass / fail of the pass image and the fail image of all the pseudo pair images 1 is correctly judged here. Is assumed.
  • the image acquisition unit 114 inspects. It is possible to acquire the pseudo-pair image 1 whose pass / fail is correctly determined by the inspection unit 11 of the device 10.
  • the main control unit 111 determines whether or not a predetermined number of pseudo pair images 1 can be acquired (step S6).
  • the pseudo-pair image 1 having a predetermined number of pairs includes the same number of pass images and fail images as the predetermined number of pairs.
  • the number of pass images and fail images included in the pseudo-pair image 1 having a predetermined number of pairs is an example of the second predetermined number.
  • step S6 determines in step S6 that a predetermined number of pairs of pseudo-pair images 1 have been acquired (S6: YES)
  • the main control unit 111 learns the pseudo-pair images 1 acquired by the image acquisition unit 114 at a predetermined distribution ratio.
  • the pseudo-pair image 1 and the pseudo-pair image 1 for evaluation are separately stored in the memory 121 (step S7).
  • the predetermined distribution ratios are 20 pairs and 25 pairs as an example.
  • the main control unit 111 is a pseudo-pair image for learning 400 pairs (400 pairs obtained by combining 20 ⁇ 20) from 20 pass images and fail images included in the 20 pairs of pseudo-pair images 1. 1 is created and stored in the memory 121. Further, the main control unit 111 stores 25 pairs of pseudo-pair images 1 in the memory 121 as 25 pairs of pseudo-pair images 1 for evaluation.
  • step S6 If the main control unit 111 determines in step S6 that the pseudo-pair image 1 having a predetermined number of pairs has not been acquired (S6: NO), the main control unit 111 returns the flow to step S3.
  • the image generation unit 115 generates a pseudo pair image 2 including a pass image and a fail image obtained by performing pseudo image generation processing on the pass image and the fail image of the plurality of determined pair images (step S8).
  • a pseudo pair image 2 including a pass image and a fail image obtained by performing pseudo image generation processing on the pass image and the fail image of the plurality of determined pair images (step S8).
  • 500 pairs of pseudo-pair images 2 including 500 pass images and 500 fail images are generated.
  • the determination result acquisition unit 116 causes the inspection unit 11 of the inspection device 10 to determine the pass / fail of the pass image and the fail image of the pseudo pair image 2 generated in step S8, and acquires the pass / fail determination result (step S9).
  • the pass / fail judgment result is registered in the image identification data (see FIG. 6).
  • the ranking unit 117 ranks the pseudo pair image 2 generated in step S8 based on the correctness of the determination result acquired in step S9 (step S10). As a result, the pseudo-pair image 2 is ranked in any of ranks 3 to 6. The rank is registered in the image identification data (see FIG. 6).
  • the main control unit 111 determines whether or not a predetermined number of pseudo pair images 2 can be acquired for each of ranks 3 to 6 (step S11). There are 45 pairs for ranks 3-5 and 65 pairs for rank 6.
  • step S11 determines in step S11 that a predetermined number of pairs of pseudo-pair images 2 have been acquired for each rank (S11: YES)
  • step S12 performs the following processing in step S12 (step S12).
  • step S12 the main control unit 111 divides the pseudo-pair image 2 ranked by the ranking unit 117 into a pseudo-pair image 2 for learning and a pseudo-pair image 2 for evaluation at a predetermined distribution ratio for each rank.
  • the pseudo pair image 2 for division and learning the pass image and the fail image included in the pseudo pair image 2 are combined, the number of pairs is increased to a predetermined number, and the pseudo pair image 2 is stored in the memory 121.
  • the pseudo-pair image 2 for evaluation is stored in the memory 121 as it is.
  • 65 pairs of pseudo-pair images 2 are distributed to 40 pairs for learning and 25 pairs for evaluation according to a predetermined distribution ratio. Further, from the 40 pass images and the fail images included in the 40 pairs of pseudo pair images 2 for learning, 1600 pairs (1600 pairs obtained by combining 40 ⁇ 40) of pseudo pair images 2 for learning Is created and stored in the memory 121. The 25 pairs of pseudo-pair images 2 for evaluation are stored in the memory 121 as they are.
  • step S11 determines in step S11 that a predetermined number of pairs of pseudo-pair images 2 have not been acquired for each rank (S11: NO)
  • the main control unit 111 returns the flow to step S8.
  • a new 500 pair of pseudo-pair images 2 is generated in step S8.
  • step S11 It is determined in step S11 that the pseudo-pair image 2 having a predetermined number of pairs has not been acquired, for example, when the pseudo-pair image 2 of any rank 3 to 6 is less than the predetermined number of pairs. If there was.
  • the learning processing unit 118 reads out the determined pair image for learning of rank 1, the pseudo pair image 1 for learning of rank 2, and the pseudo pair image 2 for learning of ranks 3 to 6 from the memory 121, and DNN119.
  • the parameters of DNN119 are optimized by inputting to and performing machine learning (step S13). This process improves the determination accuracy of the pre-inspection program.
  • the learning processing unit 118 reads out the determined pair image for evaluation of rank 1, the pseudo pair image 1 for evaluation of rank 2, and the pseudo pair image 2 for evaluation of ranks 3 to 6 from the memory 121, and DNN119.
  • the determination result is obtained by inputting to, and DNN119 is evaluated (step S14). If the pair images of ranks 1 to 5 are input and it is determined that DNN119 is appropriate, the determination result of DNN119 is valid. Further, if it is determined that DNN119 is not appropriate by inputting a pair image of rank 6, the determination result of DNN119 is valid. In other cases, the determination result of DNN119 is not valid.
  • the learning processing unit 118 determines whether or not the probability that the determination result of the DNN 119 is valid is equal to or greater than a predetermined threshold value (step S15).
  • the predetermined threshold is, for example, about 90%.
  • the main control unit 111 returns the flow to step S3.
  • the learning processing unit 118 determines that the probability that the determination result of the DNN 119 is valid is equal to or greater than a predetermined threshold value (S15: YES)
  • the pass image and the fail image of the predetermined unknown pair image are input to the DNN 119. (Step S16).
  • Step S16 the format of the image to be input to DNN119, convert the format of the pass image and the fail image of the predetermined unknown pair image to the format for DNN119 and then input to DNN119. Just do it.
  • the determination result acquisition unit 120 acquires the determination result of DNN119 (step S17).
  • the determination result indicates whether the unknown pair image is a pair image suitable for inspection by the inspection unit 11 or an inappropriate pair image.
  • the main control unit 111 determines whether or not there is another unknown pair image to be input to the DNN 119 (step S18).
  • the main control unit 111 determines that there is another unknown pair image (S18: YES)
  • the main control unit 111 returns the flow to step S16.
  • the main control unit 111 determines that there is no other unknown pair image (S18: NO)
  • the main control unit 111 ends a series of processes (end).
  • the inspection program generation device 100 uses the determined pair image (rank 1) including the pass image and the fail image of the real image, the pseudo pair image 1 of rank 2 and the pseudo pair image of ranks 3 to 6. 2 and is generated.
  • the pseudo-pair image 1 of rank 2 and the pseudo-pair image 2 of ranks 3 to 6 are generated by performing pseudo-image generation processing on the determined pair image, and are ranked higher than the pseudo-pair image 1 of rank 2.
  • the pseudo-pair image 2 of 3 to 6 has a larger degree of change from the determined pair image.
  • the image identification data is a determination result indicating how the inspection unit 11 has determined the pass / fail of the pseudo-pair image 1 of rank 2 and the pass / fail images of the pseudo-pair images 2 of ranks 3 to 6. It is registered in (see FIG. 6).
  • the pseudo-pair image 1 of rank 2 and the pseudo-pair image 2 of ranks 3 to 6 have an unknown pass image or fail image of a predetermined mass-produced product in DNN 119 in any of ranks 1 to 6. It can be used as teacher data for learning the method of determining the equivalence by machine learning.
  • the DNN 119 determines whether it is appropriate for the inspection unit 11 to determine the pass / fail of the pass image and the fail image of the unknown pair image. be able to. The DNN 119 determines that it is appropriate if it is determined that the unknown pass image and the fail image correspond to ranks 1 to 5, and determines that it is inappropriate if it determines that it corresponds to rank 6.
  • the inspection program generation device 100 (preliminary inspection program) capable of determining whether or not it is appropriate for the inspection unit 11 to determine the pass / fail of the pass image and the fail image of the unknown pair image can be obtained.
  • An information processing device an information processing program, and an information processing method can be provided.
  • the inspection unit 11 since the inspection unit 11 takes time for inspection, the inspection unit 11 is operated by determining in advance whether the pass image and the fail image of the unknown pair image are appropriate for the inspection by the inspection unit 11 by DNN119. It is possible to improve the efficiency of.
  • the pair image including the pass image and the fail image of the wiring pattern has been described, but the present invention is not limited to the wiring pattern, and includes the pass image and the fail image of the mass-produced product (mass-produced product). Any pair image may be used as long as it is a pair image.
  • rank 6 in which both the pass image and the fail image are erroneously determined. Therefore, only rank 6 may be used for the pseudo pair image 2.
  • rank 4 (excessive judgment) and rank 5 (missing judgment)
  • rank 4 (excessive judgment)
  • rank 5 (missing judgment)
  • either one may be used.
  • rank 4 or 5 it is not necessary to use a rank that indicates a tendency that it is unlikely to occur.
  • either one may be selected according to the type of product or the like.
  • ranks 4 to 6 may be used instead of rank 3.
  • Ranks 4 to 6 are because at least one of the pass image and the fail image is erroneously determined.
  • the pseudo-image generation process for generating the pseudo-pair image 1 of rank 2 and the pseudo-pair image 2 of ranks 3 to 6 includes a process by the variational autoencoder method and a process using GAN. The morphology was described.
  • the pseudo-image generation process is not limited to the process including the variational autoencoder method and the process using GAN.
  • a process of mixing the pass image and the fail image at an arbitrary ratio may be performed, or an averaging process of obtaining the average image of the pass image and the fail image. May be done.
  • the averaging process for example, if the average of four pass images and one fail image is taken, an average image in which the pass image and the fail image are 80:20 can be generated.
  • an image process of superimposing noise a process of translating, rotating, smoothing (smoothing), enlarging, or reducing the image may be used. ..
  • a mixed pass image obtained by mixing the pass image and the fail image of rank 1 at a ratio of 100% and 0% by the variational autoencoder method is used.
  • a mode for creating a mixed fail image in which a pass image of rank 1 and a fail image are mixed at a ratio of 0% and 100% has been described. This is substantially equivalent to not performing processing by the variational autoencoder method.
  • the mixing ratio of the pass image and the fail image for generating the pass image and the fail image of rank 2 is not limited to 100% and 0%, and the pass image and the fail image may be mixed.
  • the pass images and fail images of rank 1 were mixed at a ratio of 80% and 20%, respectively, by the variational autoencoder method.
  • the mixing ratio for generating the pass image and the fail image of ranks 3 to 6 is not limited to 80%: 20% and 20%: 80%, and the mixing ratio may be changed as appropriate.
  • Inspection device 11 Inspection unit 100 Inspection program generation device 110 Control device 111 Main control unit 112 Image acquisition unit 113 Image generation unit 114 Image acquisition unit 115 Image generation unit 116 Judgment result acquisition unit 117 Ranking unit 118 Learning processing unit 119 DNN 120 Judgment result acquisition unit 121 Memory 130 Communication unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)

Abstract

合格/不合格画像の合否を判定可能に機械学習を行った第1検査プログラムに未知画像の合否を判定させることが適切かどうかを判定できる第2検査プログラムを取得可能な情報処理装置を提供する。 情報処理装置は、機械学習済の第1検査プログラムが合否を正しく判定した合格及び不合格画像を含む判定済ペア画像に対して疑似画像生成処理を行った合格及び不合格画像を含む疑似ペア画像について第1検査プログラムが合否判定した結果に基づいて疑似ペア画像をペア毎に第1検査プログラムの合否判定の正否でランク付けし、判定済ペア画像と所定数以上のランク付け疑似ペア画像を入力とする第2機械学習を数学モデルに行わせて、未知ペア画像の合格及び不合格画像を入力すると未知ペア画像が所定ランク以上の場合に当該未知ペア画像の合否を第1検査プログラムに判定させることが適切と判定し、所定ランク未満の場合に不適切と判定するように数学モデルを学習させる。

Description

情報処理装置、情報処理プログラム、及び、情報処理方法
 本発明は、情報処理装置、情報処理プログラム、及び、情報処理方法に関する。
 従来より、同一対象が写る画像のペアと、異なる対象が写る画像のペアとを複数取得する取得手段と、前記取得手段により取得された前記ペアの一方の画像と他方の画像に特徴点を設定する設定手段とを備える学習装置がある。
 前記一方の画像と前記他方の画像の同じ位置に設定された所定の特徴点を複数選択し、前記所定の特徴点の特徴の抽出に用いられる特徴抽出フィルタを前記所定の特徴点毎に選択する選択手段と、前記選択手段により選択された複数の前記特徴抽出フィルタを用いて、前記一方の画像と前記他方の画像のそれぞれの前記所定の特徴点の特徴を抽出する抽出手段とをさらに備える。
 前記抽出手段により前記一方の画像から抽出された特徴と前記他方の画像から抽出された特徴との相関を求める算出手段と、前記算出手段により求められた前記相関と、前記一方の画像と前記他方の画像に写る対象が同一対象であるか否かを表すラベル情報に基づいて、二枚の画像に写る対象が同一であるか否かを識別するための同一対象識別器を学習する学習手段をさらに備える(例えば、特許文献1参照)。
特開2012-083938号公報
 ところで、従来の学習装置は、量産品のうちの良品(検査での合格品)の画像(合格画像)と不良品(検査での不合格品)の画像(不合格画像)の合否を判定できるように機械学習を行った検査プログラム(第1検査プログラム)がある場合に、学習した量産品と同一種類の検査対象に対し合否を判定するものであり、未知の画像の合否を第1検査プログラムに判定させることが適切であるかどうかを判定するものではない。
 例えば、未知の画像に対して合格画像と不合格画像の合否を判定できるように機械学習を行い第1検査プログラムによる合否の判定結果を得るために、時間が掛かる場合、又は、準備作業等の手間が掛かる場合等に、第1検査プログラムに判定を行わせる前に、第1検査プログラムが合否を判定していない未知の画像の合否を第1検査プログラムに判定させることが適切であるかどうかを判定できると、第1検査プログラムを有効的に利用することができる。
 そこで、量産品の合格画像と不合格画像の合否を判定できるように機械学習を行った第1検査プログラムに未知の画像の合否を判定させることが適切であるかどうかを判定できる第2検査プログラムを得ることができる、情報処理装置、情報処理プログラム、及び、情報処理方法を提供することを目的とする。
 本発明の実施の形態の情報処理装置は、第1機械学習済みの第1検査プログラムが合否を正しく判定した合格画像及び不合格画像を含む複数の判定済ペア画像を取得する第1画像取得部と、前記判定済ペア画像の合格画像及び不合格画像に対して第1疑似画像生成処理を行った合格画像及び不合格画像を含む第1疑似ペア画像を生成する第1画像生成部と、前記第1疑似ペア画像の合格画像及び不合格画像について前記第1検査プログラムが合否を判定した判定結果を取得する判定結果取得部と、前記判定結果に基づいて、前記第1検査プログラムが合否を判定した第1疑似ペア画像をペア毎に、前記判定の正否に応じてランク付けするランク付け部と、ペア画像の合格画像及び不合格画像が入力されると、当該ペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であるかどうかを判定する第2検査プログラムで表される数学モデルと、前記判定済ペア画像と、前記ランク付けされた第1疑似ペア画像とを入力とする第2機械学習を前記数学モデルに行わせる学習処理部とを含み、前記第1画像生成部は、前記ランク付けされた第1疑似ペア画像の数が第1所定数以上になるまで前記第1疑似ペア画像の生成を行い、前記学習処理部は、前記判定済ペア画像と、前記第1所定数以上の前記ランク付けされた第1疑似ペア画像とを入力とする前記第2機械学習を前記数学モデルに行わせることにより、未知のペア画像の合格画像及び不合格画像を前記数学モデルに入力すると、当該未知のペア画像の合格画像及び不合格画像が所定のランク以上である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であると前記数学モデルが判定し、前記所定のランク未満である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが不適切であると前記数学モデルが判定するように前記数学モデルを学習させる。
 量産品の合格画像と不合格画像の合否を判定できるように機械学習を行った第1検査プログラムに未知の画像の合否を判定させることが適切であるかどうかを判定できる第2検査プログラムを得ることができる、情報処理装置、情報処理プログラム、及び、情報処理方法を提供することができる。
実施の形態の検査プログラム生成装置100を含むシステム1を示す図である。 検査プログラム生成装置100を実現するコンピュータシステム20の斜視図である。 コンピュータシステム20の本体部21内の要部の構成を説明するブロック図である。 検査プログラム生成装置100の構成を示す図である。 ランク1~6のペア画像の一例を示す図である。 検査プログラム生成装置100が取り扱う画像識別データを示す図である。 検査部11による画像の評価とDNN119の学習用及び評価用の画像とに関する条件を示す図である。 検査部11による疑似ペア画像1の合格画像と不合格画像の判定結果の分布を示す図である。 検査部11による疑似ペア画像2の合格画像と不合格画像の判定結果の分布を示す図である。 検査プログラム生成装置100の制御装置110が実施する処理を表すフローチャートを示す図である。 検査プログラム生成装置100の制御装置110が実施する処理を表すフローチャートを示す図である。
 以下、本発明の情報処理装置、情報処理プログラム、及び、情報処理方法を適用した実施の形態について説明する。
 <実施の形態>
 図1は、実施の形態の検査プログラム生成装置100を含むシステム1を示す図である。システム1は、検査装置10と検査プログラム生成装置100とを含む。検査装置10と検査プログラム生成装置100とはネットワーク50によってデータ通信可能に接続されている。ネットワーク50は、LAN(Local Area Network)、WLAN(Wireless LAN)、WAN(Wide Area Network)等である。
 検査装置10は、検査部11とメモリ12を含む。検査部11は、検査装置10に検査プログラムがインストールされることによって実現される機能を表したものであり、メモリ12は検査装置10のRAM(Random Access Memory)、ROM(Read Only Memory)、及び/又はHDD(Hard Disk Drive)等を機能的に表したものである。
 検査部11を実現する検査プログラムは、第1機械学習済みの第1検査プログラムの一例であり、検査装置10を実現するコンピュータシステムの一部を検査部11として機能させる。
 検査部11を実現する検査プログラムは、一例として、同一種類の量産される製品(量産品)についての合格品(良品)のリアル画像と不合格品(不良品)のリアル画像とのペア画像を表す教師データを用いて、合格品と不合格品を正確に判定できるように機械学習を行った機械学習済みのプログラムである。
 ここで、合格品と不合格品を正確に判定できるとは、所定の確率以上で合格品と不合格品を判定できること(合否を判定できること)をいい、所定の確率は、一例として95%である。
 また、合格品とは、所定の量産品について人間が検査を行い、検査に合格した量産品であり、不合格品とは、所定の量産品について人間が検査を行い、検査に合格しなかった量産品である。
 また、リアル画像とは、被写体に光を照射し、被写体で反射される光によって得られる画像であり、典型的にはカメラ等で被写体を撮影して得る写真画像である。すなわち、合格品のリアル画像とは、検査に合格した合格品についてのリアル画像であり、不合格品のリアル画像とは、検査に合格しなかった量産品についてのリアル画像である。
 また、合格品のリアル画像と不合格品のリアル画像とは、合格品及び不合格品のいずれであるかの正解が分かっている合格品と不合格品についてのリアル画像であるので、合格品のリアル画像と不合格品のリアル画像とのペア画像を表す教師データとして利用可能なデータである。
 また、検査プログラム生成装置100は、合格品のリアル画像と不合格品のリアル画像とに疑似画像生成処理を行うことにより、疑似的な合格品の画像と不合格品の画像とを生成する。
 疑似とは、良く似ていてひと目見た程度では判別が容易ではないことを言う。量産品の個体差による形状の違い又は位置の違い等は、疑似の範囲に入るものである。また、疑似画像生成処理とは、合格品のリアル画像及び不合格品のリアル画像に良く似た疑似的な合格品の画像と不合格品の画像とを生成する処理である。合格品のリアル画像及び不合格品のリアル画像に対する疑似的な合格品の画像及び不合格品の画像の類似度は、疑似画像生成処理におけるパラメータ等によって調整することができる。
 以下では、合格品のリアル画像と不合格品のリアル画像と、疑似的な合格品の画像と不合格品の画像とに1~6のランク付けを行う。
 また、以下では、ランク1の合格画像及び不合格画像とは、それぞれ、合格品のリアル画像、及び、不合格品のリアル画像である。ランク1は、ランク1~6のうちの最高位である。
 また、疑似的な合格品の画像、及び、不合格品の画像については、2~6のランク付けを行う。ランク2は、最高位から2番目のランクであり、ランク6は最下位である。なお、ランクの意味等については後述する。
 検査部11は、上述のように量産される同一種類の所定の量産品についての合格品のリアル画像と不合格品のリアル画像とのペア画像を表す教師データを用いて機械学習を行ってあるが、検査部11が合否を判定する検査には、下準備等の諸々の処理が伴うため、比較的多くの時間が必要である。また、所定の量産品としては、様々な取引先等から様々な完成度の製品が持ち込まれ、検査部11で合否の判定を行うことになる。
 そこで、検査部11が検査を行う前に、検査部11が行う検査に適しているかどうかを判定する事前検査プログラムを検査プログラム生成装置100が生成し、事前検査プログラムで適否を判定する。
 図2は、検査プログラム生成装置100を実現するコンピュータシステム20の斜視図である。図2に示すコンピュータシステム20は、本体部21、ディスプレイ22、キーボード23、マウス24、及び通信モジュール25を含む。
 本体部21は、CPU(Central Processing Unit:中央演算装置)、HDD(Hard Disk Drive:ハードディスクドライブ)、及びディスクドライブ等を内蔵する。ディスプレイ22は、本体部21からの指示により画面22A上に処理結果等を表示する。ディスプレイ22は、例えば、液晶モニタであればよい。キーボード23は、コンピュータシステム20に種々の情報を入力するための入力部である。マウス24は、ディスプレイ22の画面22A上の任意の位置を指定する入力部である。通信モジュール25は、無線通信で検査装置10と通信する。
 コンピュータシステム20に検査プログラム生成装置100としての機能を持たせる検査プログラム生成プログラムは、情報処理プログラムの一例であり、ディスク27等の可搬型記録媒体に格納されるか、通信モジュール25等の通信装置を使って他のコンピュータシステムの記録媒体26からダウンロードされ、コンピュータシステム20に入力されてコンパイルされる。
 コンピュータシステム20に検査プログラム生成装置100としての機能を持たせる検査プログラム生成プログラムは、コンピュータシステム20を検査プログラム生成装置100として動作させる。この検査プログラム生成プログラムは、例えばディスク27等のコンピュータ読み取り可能な記録媒体に格納されていてもよい。コンピュータ読み取り可能な記録媒体は、ディスク27、ICカードメモリ、フロッピー(登録商標)ディスク等の磁気ディスク、光磁気ディスク、CD-ROM、USB(Universal Serial Bus)メモリ等の可搬型記録媒体に限定されるものではない。コンピュータ読み取り可能な記録媒体は、通信モジュール25又はLAN等の通信装置を介して接続されるコンピュータシステムでアクセス可能な各種記録媒体を含む。
 図3は、コンピュータシステム20の本体部21内の要部の構成を説明するブロック図である。本体部21は、バス30によって接続されたCPU31、RAM(Random Access Memory)又はROM(Read Only Memory)等を含むメモリ部32、ディスク27用のディスクドライブ33、及びハードディスクドライブ(HDD)34を含む。
 なお、コンピュータシステム20は、図2及び図3に示す構成のものに限定されず、各種周知の要素を付加してもよく、又は代替的に用いてもよい。
 図4は、検査プログラム生成装置100の構成を示す図である。検査プログラム生成装置100は、制御装置110及び通信部130を含む。
 制御装置110は、主制御部111、画像取得部112、画像生成部113、画像取得部114、画像生成部115、判定結果取得部116、ランク付け部117、学習処理部118、DNN119(Deep Neural Network)、判定結果取得部120、及びメモリ121を有する。
 主制御部111、画像取得部112、画像生成部113、画像取得部114、画像生成部115、判定結果取得部116、ランク付け部117、学習処理部118、DNN119、判定結果取得部120は、制御装置110が実行するプログラムの機能(ファンクション)を機能ブロックとして示したものである。また、メモリ121は、検査プログラム生成装置100のメモリ部32及びHDD34(図3参照)を機能的に表したものである。
 ここで、前提条件として、検査装置10(図1参照)の検査部11が合否を正しく判定した合格画像及び不合格画像を含む複数の判定済ペア画像があり、検査装置10のメモリ12に格納されていることとする。判定済ペア画像は、ランク1のペア画像であり、判定済ペア画像の合格画像及び不合格画像は、ランク1の合格画像及び不合格画像である。
 主制御部111は、制御装置110の処理を統括する処理部であり、画像取得部112、画像生成部113、画像取得部114、画像生成部115、判定結果取得部116、ランク付け部117、学習処理部118、DNN119、判定結果取得部120が行う処理以外の処理を実行する。
 画像取得部112は、第1画像取得部の一例であり、検査装置10(図1参照)の検査部11が合否を正しく判定した合格画像及び不合格画像を含む複数の判定済ペア画像を取得する。複数の判定済ペア画像の画像数(ペア数)は、例えば、40ペア(40個の合格画像及び40個の不合格画像)である。
 画像生成部113は、第2画像生成部の一例であり、複数の判定済ペア画像の合格画像及び不合格画像に対して疑似画像生成処理を行い、疑似画像生成処理が行われた合格画像及び不合格画像を含む複数の疑似ペア画像1を生成する。疑似ペア画像1は、第2疑似ペア画像の一例である。
 画像生成部113が行う疑似画像生成処理は、第2疑似画像生成処理の一例であり、例えば変分オートエンコーダ(Variational Auto Encoder (VAE)法とGAN(Generative Adversarial Network:敵対的生成ネットワーク)とを利用した2段階の処理を行う。
 画像生成部113は、判定済ペア画像の合格画像及び不合格画像に対して、変分オートエンコーダ法による画像処理を行い、この画像処理で得る合格画像及び不合格画像をGANに学習させて画像処理を行わせることで、疑似ペア画像1を生成する。
 画像生成部113が行う疑似画像生成処理は、判定済ペア画像の合格画像及び不合格画像に対する変更が比較的少ないため、判定済ペア画像の合格画像及び不合格画像に非常に似ているが、厳密には異なる。
 このように画像生成部113が行う疑似画像生成処理は、後述する画像生成部115が行う疑似画像生成処理よりも判定済ペア画像に対する画像の変更度合が低い疑似画像を生成する処理である。このため、画像生成部113が生成する疑似ペア画像1は、画像生成部115が生成する疑似ペア画像2よりも、判定済ペア画像に類似した画像である。
 画像生成部113が生成する疑似ペア画像1は、ランク2のペア画像であり、疑似ペア画像1の合格画像及び不合格画像は、ランク2の合格画像及び不合格画像である。
 画像取得部114は、第2画像取得部の一例であり、検査装置10の検査部11に疑似ペア画像1の合格画像及び不合格画像について合否を判定させ、合否が正しく判定された疑似ペア画像1を取得する。なお、検査装置10の検査部11によって合否が正しく判定されなかった疑似ペア画像1の合格画像及び不合格画像は、画像取得部114によって取得されずに廃棄される。
 画像生成部115は、第1画像生成部の一例であり、複数の判定済ペア画像の合格画像及び不合格画像に対して第1疑似画像生成処理を行った合格画像及び不合格画像を含む疑似ペア画像2を生成する。疑似ペア画像2は、第1疑似ペア画像の一例である。
 画像生成部115が行う疑似画像生成処理は、第1疑似画像生成処理の一例であり、一例として画像生成部113と同様に変分オートエンコーダ法とGANとを利用した2段階の処理を行う。
 画像生成部115は、判定済ペア画像の合格画像及び不合格画像に対して、変分オートエンコーダ法による画像処理を行い、この画像処理で得る合格画像及び不合格画像をGANに学習させて画像処理を行わせることで、疑似ペア画像2を生成する。
 このように画像生成部115が行う疑似画像生成処理は、画像生成部113が行う疑似画像生成処理よりも判定済ペア画像に対する画像の変更度合が高い疑似画像を生成する処理である。このため、画像生成部115が生成する疑似ペア画像2は、画像生成部113が生成する疑似ペア画像1よりも、判定済ペア画像に類似していない(変更度合が高い)画像である。これは、一例として、変分オートエンコーダ法におけるパラメータの値が画像生成部113が行う処理とは異なるからである。
 画像生成部115によって生成される疑似ペア画像2の合格画像及び不合格画像は、検査装置10の検査部11によって合否が判定される。
 また、検査装置10の検査部11によって合否が判定された合格画像及び不合格画像を含む疑似ペア画像2は、ランク付け部117によってランク付けが行われ、ランク3~6のいずれかに分類される。ランク3~6の疑似ペア画像2に含まれる合格画像及び不合格画像は、それぞれ、ランク3~6の合格画像及び不合格画像である。
 判定結果取得部116は、第1判定結果取得部の一例であり、画像生成部115によって生成される疑似ペア画像2の合格画像及び不合格画像について検査装置10の検査部11に合否を判定させ、合否の判定結果を取得する。
 ランク付け部117は、画像生成部115によって生成された疑似ペア画像2の合格画像及び不合格画像について検査装置10の検査部11が合否を判定した判定結果に基づいて、判定の正否に応じてランク付けを行う。ランク付けは、合否が判定された疑似ペア画像2のペア毎に行われる。ランク付け部117は、判定の正否に応じて、疑似ペア画像2の合格画像及び不合格画像をランク3~6のいずれかにランク付けする。
 なお、ランク1、2のペア画像と合格画像及び不合格画像とについては、ランク付け部117によるランク付けは行われずに、ランク1、2として取り扱われる。
 ランク付け部117は、疑似ペア画像2の合格画像及び不合格画像の両方が正しく判定されている場合には、ランク3(上から3番目のランク)に分類する。
 また、ランク付け部117は、疑似ペア画像2の合格画像が不合格画像として誤って判定され、不合格画像が不合格画像として正しく判定されている場合には、ランク4(上から4番目のランク)に分類する。
 また、ランク付け部117は、疑似ペア画像2の合格画像が合格画像として正しく判定され、不合格画像が合格画像として誤って判定されている場合には、ランク5(上から5番目のランク)に分類する。
 また、ランク付け部117は、疑似ペア画像2の合格画像が不合格画像として誤って判定され、不合格画像が合格画像として誤って判定されている場合には、ランク6(最下位のランク)に分類する。ランク6は、疑似ペア画像2の合格画像及び不合格画像の両方が誤って判定されている場合である。
 ランク3~6のうち、ランク4~6は、疑似ペア画像2の合格画像又は不合格画像についての合否が、検査装置10の検査部11によって誤判定された場合のランクである。
 学習処理部118は、ランク1の判定済ペア画像と、ランク2の疑似ペア画像1と、ランク3~6の疑似ペア画像2とを用いた機械学習をDNN119に行わせることによって、DNN119の判定精度が向上するようにDNN119のパラメータの最適化を行う。学習処理部118がDNN119に行わせる機械学習は、第2機械学習の一例である。
 学習処理部118は、DNN119に機械学習を行わせる際に、各ランクの画像を所定数ずつ用いる。所定数は、ランク毎に異なっていてもよい。ランク2の疑似ペア画像1の所定数は、第2所定数の一例であり、ランク3~6の各ランクの疑似ペア画像2の所定数は、第1所定数の一例である。
 また、ランク6の疑似ペア画像2の所定数は、第3所定数の一例であり、ランク4又は5の疑似ペア画像2の所定数は、第4所定数の一例である。ランク3の疑似ペア画像2の所定数は、第5所定数の一例である。
 DNN119は、深層ニューラルネットワーク(Deep Neural Network: DNN)である。DNN119は、ペア画像の合格画像及び不合格画像が入力されると、ペア画像の合格画像及び不合格画像の合否を検査部11に判定させることが適切であるかどうかを判定する事前検査プログラムで表される数学モデルを実現している。事前検査プログラムは、第2検査プログラムの一例である。 事前検査プログラムは、未知のペア画像の合格画像及び不合格画像の合否を検査部11に判定させることが適切であるかどうかを事前に判定するプログラムである。未知のペア画像とは、検査部11が合否の判定を行っていない合格画像及び不合格画像を含む画像ペアである。
 DNN119は、学習処理部118によって入力される、ランク1の判定済ペア画像と、ランク2の疑似ペア画像1と、ランク3~6の疑似ペア画像2とを用いた機械学習を行う。この結果、DNN119のパラメータが最適化され、DNN119は、事前検査プログラムによって、検査部11が行う検査に適しているかどうかを約90%の高い精度で判定可能な状態になる。
 DNN119は、機械学習を終えて事前検査プログラムが最適化された状態で、未知のペア画像の合格画像及び不合格画像を読み込む(未知のペア画像の合格画像及び不合格画像が入力される)と、検査部11が行う検査に適したペア画像であるか(適切なペア画像であるか)、又は、適していないペア画像であるか(不適切なペア画像であるか)を約90%の高い精度で判定し、判定結果を出力する。
 検査部11が行う検査に適切なペア画像であるとは、検査部11が合格判定又は不合格判定を行うことができるペア画像であることを表す。また、検査部11が行う検査に不適切なペア画像であるとは、検査部11が合格判定又は不合格判定を行うことが困難なペア画像であることを表す。
 具体的には、DNN119は、未知のペア画像の合格画像及び不合格画像が入力されると、未知のペア画像の合格画像及び不合格画像がランク1~6のいずれに相当するかを判定することによって、検査部11が行う検査に適切なペア画像であるかどうかを判定する。
 ここでは、一例として、DNN119は、入力された未知のペア画像の合格画像及び不合格画像がランク1~5に相当すると、検査部11が行う検査に適切なペア画像であると判定し、入力された未知のペア画像の合格画像及び不合格画像がランク6に相当すると、検査部11が行う検査に不適切なペア画像であると判定することとする。
 検査部11が未知のペア画像の合格画像及び不合格画像の合否を判定する際の精度には限りがあり、また、検査部11は未知のペア画像を入力してから合否の判定を行うまでに下準備等で時間が掛かる。このような事情があるので、DNN119で事前に適切なペア画像であるかどうかを判定することによって検査装置10及び検査部11の運用の効率化を図るために、検査プログラム生成装置100は、DNN119のパラメータの最適化を行う。検査プログラム生成装置100は、DNN119のパラメータの最適化を行うことにより、最適化された状態の事前検査プログラムを生成する。
 判定結果取得部120は、第2判定結果取得部の一例であり、DNN119が出力する判定結果を取得する。より具体的には、判定結果取得部120は、事前検査プログラムが生成されたDNN119によって、未知のペア画像の合格画像及び不合格画像の合否を検査部11に判定させることが適切かどうかが判定された判定結果を取得する。
 メモリ121は、制御装置110が上述のような処理を行うために必要なデータ及びプログラム等を格納する。このプログラムには、コンピュータシステム20(図2参照)に検査プログラム生成装置100としての機能を持たせる検査プログラム生成プログラムが含まれる。
 通信部130は、ネットワーク50を介して検査装置10と通信を行う。通信部130は、図2の通信モジュール25に対応する。
 図5は、ランク1~6のペア画像の一例を示す図である。各ランクのペア画像は、左側が合格画像であり、右側が不合格画像である。各ペア画像は、合格画像及び不合格画像を1つずつ含む。また、合格画像と不合格画像を区別するために、一例として各画像にフラグを設定すればよい。合格画像のフラグを"1"に設定し、不合格画像のフラグを"0"に設定すればよい。
 図5に示すランク1~6のペア画像は、実際のランク1~6のペア画像を2値化してデフォルメした画像である。このため、図5では、ランク2の疑似ペア画像1と、ランク3~6の各ランクの疑似ペア画像とは、ランク1のペア画像(判定済ペア画像)に対する類似度合が低くなっている。
 一例として示すランク1~6のペア画像は、配線基板に形成される配線パターンの画像である。各画像の下には、検査装置10の検査部11による合否の判定結果を示す。ここでは、検査装置10の検査部11の判定結果を、各画像に対する合格判定又は不合格判定として示す。各画像についての検査部11による合否の判定結果を表すデータは、合格画像と不合格画像を区別するためのフラグとともに、各画像のID(Identifier)と関連付けられる。このような画像を識別するデータについては、図6を用いて後述する。
 上述したように、ランク1の合格画像と不合格画像は、合格品のリアル画像と不合格品のリアル画像であり、判定済ペア画像の合格画像及び不合格画像である。このため、図5に示すように、ランク1の合格画像は綺麗な配線パターンを表しており、不合格画像は約左半分が欠けた配線パターンを表している。
 検査装置10の検査部11は、ランク1の合格画像に対して合格判定を行い、ランク1の不合格画像に対して不合格判定を行う。すなわち、検査装置10の検査部11は、ランク1の合格画像と不合格画像をともに正しく判定する。
 また、図5に示すランク2の合格画像と不合格画像は、それぞれ、ランク1の合格画像と不合格画像に対して、変分オートエンコーダ法とGANによる画像処理を利用した疑似画像生成処理を行った疑似ペア画像1の合格画像と不合格画像である。
 ランク2の合格画像と不合格画像を生成するために、画像生成部113は、変分オートエンコーダ法によって、ランク1の合格画像と不合格画像を100%及び0%の比率で混合した混合合格画像と、ランク1の合格画像と不合格画像を0%及び100%の比率で混合した混合不合格画像とを作成する。このため、これらの混合合格画像及び混合不合格画像は、それぞれ、ランク1の合格画像と不合格画像(判定済ペア画像の合格画像及び不合格画像)そのものである。
 そして、画像生成部113は、100%及び0%の比率で混合した混合合格画像と、0%及び100%の比率で混合した混合不合格画像とをGANに学習させて画像処理を行うことで、疑似ペア画像1の合格画像と不合格画像(ランク2の合格画像と不合格画像)を生成する。
 複数のランク1の合格画像と不合格画像を用いれば、複数の混合合格画像及び混合不合格画像を生成することができる。少なくともランク1の合格画像と不合格画像と同一数の混合合格画像及び混合不合格画像を得ることができる。
 そして、複数の混合合格画像及び混合不合格画像をGANに学習させることで、さらに多くの疑似ペア画像1の合格画像と不合格画像(ランク2の合格画像と不合格画像)を生成することができる。
 このようにして生成されるランク2の合格画像と不合格画像は、ランク1の合格画像と不合格画像に非常に良く似た画像になる。
 ランク2の合格画像及び不合格画像については、検査装置10の検査部11の判定結果は、それぞれ合格判定及び不合格判定である。すなわち、検査装置10の検査部11は、ランク2の合格画像と不合格画像をともに正しく判定する。
 また、ランク3~6の合格画像と不合格画像は、ランク1の合格画像と不合格画像に対して、変分オートエンコーダ法とGANによる画像処理を利用した疑似画像生成処理を行った疑似ペア画像1の合格画像と不合格画像である。ランク3~6の合格画像と不合格画像を生成する処理は、ランク2の合格画像と不合格画像を生成する処理とは、変分オートエンコーダ法におけるランク1の合格画像と不合格画像を混合する割合が異なる。混合する割合は、変分オートエンコーダ法におけるパラメータである。
 ランク3~6の合格画像と不合格画像を生成するために、画像生成部115は、変分オートエンコーダ法によって、ランク1の合格画像及び不合格画像をそれぞれ80%及び20%の比率で混合した混合合格画像と、ランク1の合格画像と不合格画像をそれぞれ20%及び80%の比率で混合した混合不合格画像とを作成する。
 そして、画像生成部115は、80%及び20%の比率で混合した混合合格画像と、20%及び80%の比率で混合した混合不合格画像とをGANに学習させて画像処理を行うことで、疑似ペア画像2の合格画像及び不合格画像(ランク3~6のいずれかの合格画像と不合格画像)を生成する。
 複数のランク1の合格画像と不合格画像を用いれば、複数の混合合格画像及び混合不合格画像を生成することができる。少なくともランク1の合格画像と不合格画像と同一数の混合合格画像及び混合不合格画像を得ることができる。
 そして、複数の混合合格画像及び混合不合格画像をGANに学習させることで、さらに多くの疑似ペア画像2の合格画像と不合格画像(ランク3~6のいずれかの合格画像と不合格画像)を生成することができる。
 画像生成部115によって生成された疑似ペア画像2は、ランク付け部117によってランク3~6のいずれかに分類される。
 図5に示すランク3の合格画像と不合格画像についての検査装置10の検査部11の判定結果は、それぞれ合格判定及び不合格判定であり、ともに正しく判定されている。ランク3の合格画像と不合格画像は、ランク2の合格画像と不合格画像よりもランク1の合格画像と不合格画像に似ていないが、合格画像は配線パターンの輪郭が比較的はっきりしており、検査部11による合格の判定は正しい。また、不合格画像は配線パターンが欠けており、検査部11による不合格の判定は正しい。
 また、図5に示すランク4の合格画像及び不合格画像についての検査装置10の検査部11の判定結果は、ともに不合格判定である。すなわち、検査部11は、合格画像を不合格画像として誤って判定し、不合格画像を不合格画像として正しく判定している。
 ランク4の合格画像と不合格画像は、ランク2の合格画像と不合格画像よりもランク1の合格画像と不合格画像に似ていないが、合格画像は配線パターンの輪郭が比較的はっきりしているため、検査部11による不合格判定は誤りである。また、不合格画像は配線パターンが欠けており、検査部11による不合格の判定は正しい。
 このように、合格画像に対して不合格判定を行うことは、過剰に不合格判定を行う過剰判定である。過剰判定が生じると、合格品が不合格品として扱われて歩留まりが低下するおそれがあるため、過剰判定が行われる確率は低いことが好ましい。
 また、図5に示すランク5の合格画像及び不合格画像についての検査装置10の検査部11の判定結果は、ともに合格判定である。すなわち、検査部11は、合格画像を合格画像として正しく判定し、不合格画像を合格画像として誤って判定している。
 ランク5の合格画像と不合格画像は、ランク2の合格画像と不合格画像よりもランク1の合格画像と不合格画像に似ていないが、合格画像は配線パターンの輪郭が比較的はっきりしているため、検査部11による合格の判定は正しい。また、不合格画像は配線パターンの右端が基準よりも細いため、検査部11による合格判定は誤りである。
 このように、不合格画像に対して合格判定を行うことは、不合格画像を見逃す見逃し判定である。見逃し判定が生じると、不合格品が出荷されるおそれがあるため、見逃し判定が行われる確率は低いことが好ましい。
 図5に示すランク6の合格画像と不合格画像についての検査装置10の検査部11の判定結果は、それぞれ不合格判定及び合格判定であり、ともに誤って判定されている。ランク6の合格画像と不合格画像は、ランク2の合格画像と不合格画像よりもランク1の合格画像と不合格画像に似ていないが、合格画像は配線パターンの輪郭が比較的はっきりしているため不合格判定は誤りである。また、不合格画像は配線パターンの右端が基準より細くなっており、検査部11による合格判定は誤りである。ランク6の合格画像と不合格画像については、合格画像に対して不合格判定を行う過剰判定と、不合格画像に対して合格判定を行う見逃し判定との両方が生じていることになる。
 図6は、検査プログラム生成装置100が取り扱う画像識別データを示す図である。図6に示す画像識別データは、合格画像及び不合格画像の各々に割り振られ、判定済ペア画像、疑似ペア画像1、疑似ペア画像2、未知のペア画像の合格画像及び不合格画像について共通である。画像識別データは、メモリ121に格納される。
 画像識別データは、ペア画像ID(Identifier)、画像ID、第1合格画像フラグ、第2合格画像フラグ、ランク、判定結果の項目を含む。
 ペア画像IDは、ペア画像としてのIDであり、判定済ペア画像、疑似ペア画像1、疑似ペア画像2、未知のペア画像に割り振られる。判定済ペア画像、疑似ペア画像1、疑似ペア画像2、未知のペア画像のペア画像IDは、互いに識別可能であり、ペア画像IDによって、判定済ペア画像、疑似ペア画像1、疑似ペア画像2、未知のペア画像のいずれであるかを識別可能である。
 画像IDは、各ペア画像に含まれる合格画像及び不合格画像の各々に割り振られるIDである。このため、1つのペア画像に含まれる合格画像及び不合格画像は、それぞれ図6に示す画像識別データを有する。
 第1合格画像フラグは、人間が行った検査に合格した量産品の合格画像である場合に"1"に設定され、人間が行った検査に合格しなかった量産品の不合格画像である場合に"0"に設定され、人間による検査が行われていない場合には、データが設定されない("-"になる)。第1合格画像フラグは、ランク1の判定済ペア画像に含まれる合格画像及び不合格画像について"1"及び"0"にそれぞれ設定され、ランク2の疑似ペア画像1とランク3~6の疑似ペア画像2とに含まれる合格画像及び不合格画像については、データが設定されない("-"になる)。
 第2合格画像フラグは、検査部11が行った検査に合格した量産品の合格画像である場合に"1"に設定され、検査部11が行った検査に合格しなかった量産品の不合格画像である場合に"0"に設定され、検査部11による検査が行われていない場合には、データが設定されない("-"になる)。第2合格画像フラグは、ランク1~6のペア画像に含まれる合格画像及び不合格画像について"1"又は"0"にそれぞれ設定される。
 ランクは、ランク1~6を表す。判定済ペア画像についてはランク1に設定され、疑似ペア画像1についてはランク2に設定され、疑似ペア画像2についてはランク付け部117によって分類されたランク(ランク3~6のいずれ)に設定される。
 判定結果は、判定済ペア画像、疑似ペア画像1、疑似ペア画像2の合格画像及び不合格画像についての検査部11による合否の判定結果を表し、合格判定の場合は"1"に設定され、不合格判定の場合は"0"に設定される。
 図6に示す画像識別データは、一例として、判定済ペア画像の合格画像についての画像識別データである。なお、未知のペア画像の場合は、ペア画像IDと画像IDのみを有することになる。
 図7は、検査部11による画像の評価とDNN119の学習用及び評価用の画像とに関する条件を示す図である。図7には、ランク1~6の合格画像及び不合格画像についての画像種別、検査部11による評価用の画像数、検査部11の判定結果、DNN119の判定結果、DNN119の学習用のペア画像数、及びDNN119の評価用のペア画像数を示す。
 画像種別は、リアル画像、疑似ペア画像1、又は、疑似ペア画像2のいずれであるかを表す。検査部11による評価用の画像数は、各ランクのペア画像を検査部11に入力して合否を判定する評価を行う際の合格画像及び不合格画像の画像数を表す。検査部11の判定結果は、検査部11による評価(合否判定)の結果を表す。
 DNN119の判定結果は、DNN119に未知のペア画像の合格画像及び不合格画像が入力された場合に、DNN119が出力する判定結果を示す。上述したように、ここでは一例として、DNN119は、未知のペア画像の合格画像及び不合格画像がランク1~5に相当する場合に適切と判定し、ランク6に相当する場合に不適切と判定するように設定されている。なお、このような分け方に限られるものではなく、ランク5と6を不適切と判定してもよいし、ランク4~6を不適切と判定してもよいし、ランク4と6を不適切と判定してもよいし、ランク3~6を不適切と判定してもよい。
 また、ここでは、DNN119の出力が2段階(適切又は不適切)である形態について説明するが、3段階以上であってもよく、6段階であってもよい。
 DNN119の学習用のペア画像数は、DNN119に機械学習を行わせる際の各ランクのペア画像の数を表す。DNN119の評価用のペア画像数は、DNN119の学習が終了した後に、事前検査プログラムを評価する際に入力する各ランクのペア画像の数を表す。
 ランク1の合格画像及び不合格画像の画像種別はリアル画像であり、検査部11が合否判定による評価を行う際の合格画像及び不合格画像の画像数は、一例として、それぞれ20個である。また、検査部11によるランク1の合格画像及び不合格画像についての合否の判定結果は、それぞれ、合格判定及び不合格判定である。DNN119の判定結果は適切であり、DNN119の学習用及び評価用のペア画像の数は、それぞれ、225ペアと25ペアである。
 ランク2の合格画像及び不合格画像の画像種別は疑似ペア画像1であり、検査部11が合否判定による評価を行う際の合格画像及び不合格画像の画像数は、一例として、ともに45個である。また、検査部11によるランク2の合格画像及び不合格画像についての合否の判定結果は、それぞれ、合格判定及び不合格判定である。
 また、DNN119の判定結果は適切であり、DNN119の学習用及び評価用のペア画像の数は、それぞれ、400ペアと25ペアである。
 ランク3の合格画像及び不合格画像の画像種別は疑似ペア画像2であり、検査部11によるランク3の合格画像及び不合格画像についての合否の判定結果は、それぞれ、合格判定及び不合格判定である。た、DNN119の判定結果は適切であり、DNN119の学習用及び評価用のペア画像の数は、それぞれ、400ペアと25ペアである。
 また、検査部11が合否判定による評価を行う際のランク3~6の疑似ペア画像2の合格画像及び不合格画像の画像数は、ともに500個である。これは、ランク3~6の分類が行われていない状態において、検査部11が合否判定による評価を行うランク3~6のいずれかに相当し得る疑似ペア画像2の合格画像及び不合格画像の画像数が、ともに500個であることを意味する。
 500ペアの疑似ペア画像2は、DNN119の学習用及び評価用のランク3~6の疑似ペア画像2を得るために用いられる疑似ペア画像2である。
 ランク4の合格画像及び不合格画像の画像種別は疑似ペア画像2であり、検査部11によるランク4の合格画像及び不合格画像についての合否の判定結果は、ともに不合格判定である。また、DNN119の判定結果は適切であり、DNN119の学習用及び評価用のペア画像の数は、それぞれ、400ペアと25ペアである。
 ランク5の合格画像及び不合格画像の画像種別は疑似ペア画像2であり、検査部11によるランク5の合格画像及び不合格画像についての合否の判定結果は、ともに合格判定である。また、DNN119の判定結果は適切であり、DNN119の学習用及び評価用のペア画像の数は、それぞれ、400ペアと25ペアである。
 ランク6の合格画像及び不合格画像の画像種別は疑似ペア画像2であり、検査部11によるランク6の合格画像及び不合格画像についての合否の判定結果は、それぞれ、不合格判定及び合格判定である。また、DNN119の判定結果は不適切であり、DNN119の学習用及び評価用のペア画像の数は、それぞれ、1600ペアと25ペアである。
 このように、検査部11が合否判定による評価を行う際の合格画像及び不合格画像の画像数は、ランク1の合格画像及び不合格画像が最も少ない。ランク1の合格画像及び不合格画像はリアル画像であり、検査部11の合否が正しく行われる可能性が極めて高いため、DNN119の学習用及び評価用のランク1の合格画像及び不合格画像を得るためには、20個ずつあれば足りるからである。
 また、検査部11が合否判定による評価を行う際の合格画像及び不合格画像の画像数は、ランク2の合格画像及び不合格画像では、45個ずつに設定されている。ランク2の合格画像及び不合格画像は、ランク1の合格画像及び不合格画像に非常に似ており、検査部11の合否が正しく行われる可能性が高いため、DNN119の学習用及び評価用のランク2の合格画像及び不合格画像を得るためには、ランク1の2倍程度の画像数で足りるからである。
 また、検査部11が合否判定による評価を行う際の合格画像及び不合格画像の画像数は、ランク3~6のいずれかに相当し得る疑似ペア画像2の合格画像及び不合格画像の画像数が最も多い。DNN119の学習及び評価には、ランク3~6の各々について所定数以上の疑似ペア画像2の合格画像及び不合格画像を用いるため、画像数がそれなりに多いことが好ましいからである。このため、500個に設定されている。
 また、ランク1の合格画像及び不合格画像についてのDNN119の学習用のペア画像数は最も少なく設定されている。これは、ランク1の合格画像及び不合格画像はリアル画像であるため、比較的少ない画像数で足りるからである。
 また、ランク2~5の合格画像及び不合格画像についてのDNN119の学習用のペア画像数は2番目に少なく設定されている。ランク2~5の合格画像及び不合格画像は、ランク1の合格画像及び不合格画像に対する変更分を含むので、DNN119がランク2~5の合格画像及び不合格画像を学習するのに十分な画像数を確保するために、ランク1よりも学習用の画像数を増やしてある。
 また、ランク6の合格画像及び不合格画像についてのDNN119の学習用のペア画像数は、最も多くなるように設定されている。ランク6については、合格画像及び不合格画像の両方を誤判定するケースであるため、DNN119がランク6の合格画像及び不合格画像を学習するのに十分な画像数を確保するために、ランク2~5よりも学習用の画像数を増やしてある。
 また、ランク1~6の合格画像及び不合格画像についてのDNN119の評価用のペア画像数はすべて同一である。これは、同一数のランク1~6の合格画像及び不合格画像をDNN119で評価するためである。
 図8は、検査部11による疑似ペア画像1の合格画像と不合格画像の判定結果の分布を示す図である。図8に示す判定結果は、検査部11が実際に判定を行った結果である。
 図8において、横軸はサンプル番号であり、合格画像の判定結果を白丸(○)のマーカで示し、不合格画像の判定結果を黒丸(●)のマーカで示す。サンプル番号が約40以下は不合格画像の判定結果であり、サンプル番号が約40以上は合格画像の判定結果である。また、縦軸は検査部11の判定値であり、閾値以上が合格であり、閾値未満が不合格である。
 図8に示すように、検査部11は、すべての合格画像を合格と判定しており、すべての不合格画像を不合格と判定している。このように、検査部11による疑似ペア画像1の合格画像と不合格画像の判定精度は非常に高い。
 図9は、検査部11による疑似ペア画像2の合格画像と不合格画像の判定結果の分布を示す図である。横軸、縦軸、及びマーカの意味は、図8と同様であり、図9に示す判定結果は、検査部11が実際に判定を行った結果である。図9には、図8よりも多くのサンプルについての判定結果を示す。
 図9に示すように、集合A~Dが得られた。集合Aは、検査部11が合格画像を合格と正しく判定したサンプルの集合である。集合Bは、検査部11が合格画像を不合格と誤って判定した過剰判定のサンプルの集合である。集合Cは、検査部11が不合格画像を不合格と正しく判定したサンプルの集合である。集合Dは、検査部11が不合格画像を合格と誤って判定した見逃し判定のサンプルの集合である。
 集合AとCは、ランク3~6の疑似ペア画像2の合格画像と不合格画像を検査部11がそれぞれ正しく判定したサンプルの集合であり、集合BとDは、ランク3~6の疑似ペア画像2の合格画像と不合格画像を検査部11がそれぞれ誤って判定したサンプルの集合である。集合AとCに比べると、誤判定が行われた集合BとDのサンプル数は少ない。
 集合A~Dのうち、集合BとDは、リアル画像の合格画像と不合格画像では得難い過剰判定と見逃し判定のサンプルの集合である。このような集合BとDに属する判定結果をDNN119の機械学習に用いれば、誤判定を減らすことができ、DNN119の判定精度を向上させることができる。
 このため、検査プログラム生成装置100は、判定済ペア画像(ランク1)に基づいて、ランク3~6の疑似ペア画像2を生成し、ランク3~6の疑似ペア画像2を教師データとしてDNN119に入力して、DNN119に機械学習を行わせている。
 また、検査プログラム生成装置100は、さらにランク2の疑似ペア画像2を教師データとしてDNN119に入力して、DNN119に機械学習を行わせている。ランク2の疑似ペア画像2を用いるのは、主にサンプル数を増やすためである。
 図10及び図11は、検査プログラム生成装置100の制御装置110が実施する処理を表すフローチャートを示す図である。
 処理の前提条件として、検査装置10(図1参照)の検査部11が合否を正しく判定した合格画像及び不合格画像を含む複数の判定済ペア画像がメモリ12に格納されていることとする。また、DNN119の機械学習が終わった時点で適切なペア画像であるか、又は、不適切なペア画像であるかを判定するための1又は複数の未知のペア画像がメモリ121に格納されていることとする。
 画像取得部112は、検査装置10から判定済ペア画像を取得する(ステップS1)。主制御部111が通信部130を介して検査装置10からネットワーク50を介して判定済ペア画像を受信し、受信した判定済ペア画像を画像取得部112が取得する。
 主制御部111は、画像取得部112が取得した判定済ペア画像を所定の分配比率で学習用の判定済ペア画像と、評価用の判定済ペア画像とに分け、ペア画像を生成してメモリ121に格納する(ステップS2)。
 例えば、検査装置10から20ペアの判定済ペア画像を取得した場合には、所定の分配比率は、一例として15ペアと5ペアである。主制御部111は、15ペアの判定済ペア画像に含まれる15個ずつの合格画像及び不合格画像から、225ペア(15個×15個の組み合わせで得る225ペア)の学習用の判定済ペア画像を作成するとともに、5ペアの判定済ペア画像に含まれる5個ずつの合格画像及び不合格画像から、25ペア(5個×5個の組み合わせで得る25ペア)の評価用の判定済ペア画像を作成し、メモリ121に格納する。
 画像生成部113は、複数の判定済ペア画像の合格画像及び不合格画像に対して疑似画像生成処理を行い、疑似画像生成処理が行われた合格画像及び不合格画像を含む複数の疑似ペア画像1を生成する(ステップS3)。複数の判定済ペア画像のペア数は、一例として20ペアである。
 例えば、画像生成部113は、複数の判定済ペア画像に対して疑似画像生成処理を行うことにより、45個ずつの疑似画像生成処理が行われた合格画像及び不合格画像を含む45ペアの疑似ペア画像1を生成する。
 画像取得部114は、検査装置10の検査部11に45ペアの疑似ペア画像1の合格画像及び不合格画像について合否を判定させる(ステップS4)。
 画像取得部114は、主制御部111に通信部130を介して検査装置10に複数の疑似ペア画像1を送信させ、検査装置10の検査部11に疑似ペア画像1の合格画像及び不合格画像について合否を判定させる。
 画像取得部114は、検査部11によって合否が正しく判定された疑似ペア画像1を取得する(ステップS5)。より具体的には、画像取得部114は、検査装置10で合否が判定された合格画像及び不合格画像を含む複数の疑似ペア画像1と、合否の判定結果とを主制御部111に受信させる。合否の判定結果は、画像識別データ(図6参照)に登録される。
 そして、画像取得部114は、受信された複数の疑似ペア画像1のうち、検査装置10で合否が正しく判定された合格画像及び不合格画像を含む疑似ペア画像1を取得する。
 疑似ペア画像1に含まれる2つの画像のいずれが合格画像であるかは画像識別データの第2合格画像フラグの値で判別できるため、合否の判定結果と照合して一致していれば正しく判定されており、一致していなければ誤って判定されていることになる。
 なお、疑似ペア画像1は、判定済ペア画像の合格画像及び不合格画像に非常に似ているため、ここではすべての疑似ペア画像1の合格画像及び不合格画像の合否が正しく判定されることを想定している。
 このように、疑似ペア画像1に含まれる合格画像及び不合格画像と、合否の判定結果とを照合して一致した合格画像及び不合格画像のペアを取得すれば、画像取得部114は、検査装置10の検査部11で合否が正しく判定された疑似ペア画像1を取得することができる。
 主制御部111は、所定のペア数の疑似ペア画像1が取得できたかどうかを判定する(ステップS6)。所定のペア数の疑似ペア画像1には、所定のペア数と同一数の合格画像及び不合格画像が含まれる。所定のペア数の疑似ペア画像1に含まれる合格画像及び不合格画像の数は、第2所定数の一例である。
 主制御部111は、ステップS6で所定のペア数の疑似ペア画像1が取得できた(S6:YES)と判定すると、画像取得部114が取得した疑似ペア画像1を所定の分配比率で学習用の疑似ペア画像1と、評価用の疑似ペア画像1とに分けてメモリ121に格納する(ステップS7)。
 例えば、画像取得部114によって45ペアの疑似ペア画像1が取得された場合には、所定の分配比率は、一例として20ペアと25ペアである。主制御部111は、20ペアの疑似ペア画像1に含まれる20個ずつの合格画像及び不合格画像から、400ペア(20個×20個の組み合わせで得る400ペア)の学習用の疑似ペア画像1を作成してメモリ121に格納する。また、主制御部111は、25ペアの疑似ペア画像1を25ペアの評価用の疑似ペア画像1としてメモリ121に格納する。
 なお、主制御部111は、ステップS6で所定のペア数の疑似ペア画像1が取得できていない(S6:NO)と判定すると、フローをステップS3にリターンする。
 画像生成部115は、複数の判定済ペア画像の合格画像及び不合格画像に対して疑似画像生成処理を行った合格画像及び不合格画像を含む疑似ペア画像2を生成する(ステップS8)。ここでは、一例として、500個ずつの合格画像及び不合格画像を含む500ペアの疑似ペア画像2が生成される。
 判定結果取得部116は、検査装置10の検査部11にステップS8で生成された疑似ペア画像2の合格画像及び不合格画像について合否を判定させ、合否の判定結果を取得する(ステップS9)。合否の判定結果は、画像識別データ(図6参照)に登録される。
 ランク付け部117は、ステップS9で取得された判定結果の正否に基づいて、ステップS8で生成された疑似ペア画像2のランク付けを行う(ステップS10)。この結果、疑似ペア画像2がランク3~6のいずれかにランク付けされる。ランクは、画像識別データ(図6参照)に登録される。
 主制御部111は、ランク3~6の各々について、所定のペア数の疑似ペア画像2が取得できたかどうかを判定する(ステップS11)。ランク3~5については45ペアであり、ランク6については65ペアである。
 主制御部111は、ステップS11において各ランクについて所定のペア数の疑似ペア画像2が取得できた(S11:YES)と判定すると、ステップS12において次のような処理を行う(ステップS12)。
 ステップS12において、主制御部111は、ランク付け部117によってランク分けされた疑似ペア画像2をランク毎に所定の分配比率で学習用の疑似ペア画像2と、評価用の疑似ペア画像2とに分け、学習用の疑似ペア画像2については、疑似ペア画像2に含まれる合格画像と不合格画像とを組み合わせて、ペア数を所定数に増やしてメモリ121に格納する。評価用の疑似ペア画像2は、メモリ121にそのまま格納される。
 例えば、ランク3~5については45ペアの疑似ペア画像2を所定の分配比率に従って学習用の20ペアと評価用の25ペアに分配する。また、学習用の20ペアの疑似ペア画像2に含まれる20個ずつの合格画像及び不合格画像から、400ペア(20個×20個の組み合わせで得る400ペア)の学習用の疑似ペア画像2を作成してメモリ121に格納する。評価用の25ペアの疑似ペア画像2については、そのままメモリ121に格納する。
 また、ランク6については65ペアの疑似ペア画像2を所定の分配比率に従って学習用の40ペアと評価用の25ペアに分配する。また、学習用の40ペアの疑似ペア画像2に含まれる40個ずつの合格画像及び不合格画像から、1600ペア(40個×40個の組み合わせで得る1600ペア)の学習用の疑似ペア画像2を作成してメモリ121に格納する。評価用の25ペアの疑似ペア画像2については、そのままメモリ121に格納する。
 なお、主制御部111は、ステップS11において各ランクについて所定のペア数の疑似ペア画像2が取得できていない(S11:NO)と判定すると、フローをステップS8にリターンする。この結果、ステップS8において新たな500ペアの疑似ペア画像2が生成される。
 ステップS11で所定のペア数の疑似ペア画像2が取得できていないと判定されるのは、例えば、ランク3~6のうちのいずれかのランクの疑似ペア画像2が、所定のペア数未満であった場合である。
 次いで、学習処理部118は、メモリ121からランク1の学習用の判定済ペア画像、ランク2の学習用の疑似ペア画像1、及びランク3~6の学習用の疑似ペア画像2を読み出し、DNN119に入力して機械学習を行わせることによって、DNN119のパラメータの最適化を行う(ステップS13)。この処理により、事前検査プログラムの判定精度が向上する。
 次いで、学習処理部118は、メモリ121からランク1の評価用の判定済ペア画像、ランク2の評価用の疑似ペア画像1、及びランク3~6の評価用の疑似ペア画像2を読み出し、DNN119に入力して判定結果を入手し、DNN119を評価する(ステップS14)。ランク1~5のペア画像を入力してDNN119が適切であると判定すれば、DNN119の判定結果は妥当である。また、ランク6のペア画像を入力してDNN119が適切ではないと判定すれば、DNN119の判定結果は妥当である。これ以外の場合は、DNN119の判定結果は妥当ではない。
 学習処理部118は、DNN119の判定結果が妥当である確率が所定の閾値以上であるかどうかを判定する(ステップS15)。所定の閾値は、一例として、約90%である。
 学習処理部118がDNN119の判定結果が妥当である確率が所定の閾値以上ではない(S15:NO)と判定すると、主制御部111はフローをステップS3にリターンする。
 また、学習処理部118は、DNN119の判定結果が妥当である確率が所定の閾値以上である(S15:YES)と判定すると、所定の未知のペア画像の合格画像及び不合格画像をDNN119に入力する(ステップS16)。なお、このときに、DNN119に入力する画像のフォーマットを変換する必要があれば、所定の未知のペア画像の合格画像及び不合格画像のフォーマットをDNN119用のフォーマットに変換してからDNN119に入力すればよい。
 判定結果取得部120は、DNN119の判定結果を取得する(ステップS17)。判定結果は、未知のペア画像が検査部11の検査に適切なペア画像であるか、又は、不適切なペア画像であるかを表す。
 主制御部111は、DNN119に入力する未知のペア画像が他にあるかどうかを判定する(ステップS18)。
 主制御部111は、未知のペア画像が他にある(S18:YES)と判定すると、フローをステップS16にリターンする。
 主制御部111は、未知のペア画像が他にない(S18:NO)と判定すると、一連の処理を終了する(エンド)。
 以上のように、検査プログラム生成装置100は、リアル画像の合格画像及び不合格画像を含む判定済ペア画像(ランク1)から、ランク2の疑似ペア画像1と、ランク3~6の疑似ペア画像2とを生成する。ランク2の疑似ペア画像1と、ランク3~6の疑似ペア画像2とは、判定済ペア画像に対して疑似画像生成処理を行うことによって生成され、ランク2の疑似ペア画像1よりも、ランク3~6の疑似ペア画像2の方が判定済ペア画像からの変更度合が大きい。
 このようなランク2の疑似ペア画像1と、ランク3~6の疑似ペア画像2とは、疑似画像生成処理によって多数生成することができる。また、ランク2の疑似ペア画像1、及び、ランク3~6の疑似ペア画像2の合格画像及び不合格画像について、検査部11によって合否がどのように判定されたかを表す判定結果が画像識別データ(図6参照)に登録されている。
 このため、ランク2の疑似ペア画像1、及び、ランク3~6の疑似ペア画像2は、DNN119に所定の量産品についての未知の合格画像及び不合格画像がランク1~6のうちのいずれに相当するかを判定する手法を機械学習で学ばせるための教師データとして用いることができる。
 そして、DNN119に未知の合格画像及び不合格画像を入力すれば、DNN119は、未知のペア画像の合格画像及び不合格画像の合否を検査部11に判定させることが適切であるかどうかを判定することができる。DNN119は、未知の合格画像及び不合格画像がランク1~5に相当すると判定すれば適切であると判定し、ランク6に相当すると判定すれば不適切であると判定する。
 したがって、未知のペア画像の合格画像及び不合格画像の合否を検査部11に判定させることが適切であるかどうかを判定できるDNN119(事前検査プログラム)を得ることができる、検査プログラム生成装置100(情報処理装置)、情報処理プログラム、及び、情報処理方法を提供することができる。
 また、検査部11は検査に時間が掛かるため、DNN119で未知のペア画像の合格画像及び不合格画像が検査部11による検査に適切であるかどうかを予め判定することによって、検査部11の運用の効率化を図ることができる。
 なお、以上では配線パターンの合格画像と不合格画像を含むペア画像を用いて説明したが、配線パターンに限られるものではなく、量産される製品(量産品)の合格画像と不合格画像を含むペア画像であれば、どのようなペア画像であってもよい。
 また、以上では、ランク2の疑似ペア画像1を用いて機械学習を行う形態について説明したが、ランク2の疑似ペア画像1を用いなくてもよい。
 また、以上では、ランク3~6の疑似ペア画像2を用いて機械学習を行う形態について説明したが、疑似ペア画像2については、ランク3~6のすべてを用いなくてもよい。ランク3~6のうち、最も重要度が高いのは、合格画像及び不合格画像がともに誤判定されるランク6である。このため、疑似ペア画像2については、ランク6のみを用いてもよい。
 また、ランク4(過剰判定)とランク5(見逃し判定)については、いずれか一方でもよい。例えば、ランク4と5のうちどちらかに生じ難い傾向がある場合は、生じにくい傾向を示すランクを用いなくてもよい。また、製品の種類等に応じてどちらか一方を選択しても良い。
 また、ランク3を用いずに、例えば、ランク4~6を用いるようにしてもよい。ランク4~6は、合格画像及び不合格画像のうちの少なくとも一方が誤判定だからである。
 また、以上では、ランク2の疑似ペア画像1とランク3~6の疑似ペア画像2とを生成するための疑似画像生成処理が変分オートエンコーダ法による処理と、GANを利用した処理とを含む形態について説明した。
 しかしながら、疑似画像生成処理は、変分オートエンコーダ法による処理と、GANを利用した処理とを含む処理に限られるものではない。例えば、変分オートエンコーダ法による処理の代わりに、合格画像と不合格画像とを任意の割合で混合する処理を行ってもよいし、合格画像と不合格画像との平均画像を求める平均化処理を行ってもよい。平均化処理の場合には、例えば、4枚の合格画像と1枚の不合格画像との平均を取れば、合格画像及び不合格画像が80:20の平均画像を生成することができる。
 また、GANを利用した処理の代わりに、疑似画像を作る処理として、ノイズを重畳する画像処理、画像を平行移動、回転、スムージング(平滑化)、拡大、又は縮小等する処理を用いてもよい。
 また、以上では、ランク2の合格画像と不合格画像を生成するために、変分オートエンコーダ法でランク1の合格画像と不合格画像を100%及び0%の比率で混合した混合合格画像と、ランク1の合格画像と不合格画像を0%及び100%の比率で混合した混合不合格画像とを作成する形態について説明した。これは、実質的に変分オートエンコーダ法による処理を行っていないことに相当する。
 しかしながら、ランク2の合格画像と不合格画像を生成するための合格画像及び不合格画像の混合比は100%及び0%に限らず、合格画像と不合格画像を混合してもよい。
 また、以上では、ランク3~6の合格画像と不合格画像を生成するために、変分オートエンコーダ法で、ランク1の合格画像及び不合格画像をそれぞれ80%及び20%の比率で混合した混合合格画像と、ランク1の合格画像と不合格画像をそれぞれ20%及び80%の比率で混合した混合不合格画像とを作成する形態について説明した。
 しかしながら、ランク3~6の合格画像と不合格画像を生成するための混合比率は80%:20%と、20%:80%に限らず、混合比を適宜変更してもよい。
 以上、本発明の例示的な実施の形態の情報処理装置、情報処理プログラム、及び、情報処理方法について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
 10 検査装置
 11 検査部
 100 検査プログラム生成装置
 110 制御装置
 111 主制御部
 112 画像取得部
 113 画像生成部
 114 画像取得部
 115 画像生成部
 116 判定結果取得部
 117 ランク付け部
 118 学習処理部
 119 DNN
 120 判定結果取得部
 121 メモリ
 130 通信部

Claims (14)

  1.  第1機械学習済みの第1検査プログラムが合否を正しく判定した合格画像及び不合格画像を含む複数の判定済ペア画像を取得する第1画像取得部と、
     前記判定済ペア画像の合格画像及び不合格画像に対して第1疑似画像生成処理を行った合格画像及び不合格画像を含む第1疑似ペア画像を生成する第1画像生成部と、
     前記第1疑似ペア画像の合格画像及び不合格画像について前記第1検査プログラムが合否を判定した判定結果を取得する判定結果取得部と、
     前記判定結果に基づいて、前記第1検査プログラムが合否を判定した第1疑似ペア画像をペア毎に、前記判定の正否に応じてランク付けするランク付け部と、
     ペア画像の合格画像及び不合格画像が入力されると、当該ペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であるかどうかを判定する第2検査プログラムで表される数学モデルと、
     前記判定済ペア画像と、前記ランク付けされた第1疑似ペア画像とを入力とする第2機械学習を前記数学モデルに行わせる学習処理部と
     を含み、
     前記第1画像生成部は、前記ランク付けされた第1疑似ペア画像の数が第1所定数以上になるまで前記第1疑似ペア画像の生成を行い、
     前記学習処理部は、前記判定済ペア画像と、前記第1所定数以上の前記ランク付けされた第1疑似ペア画像とを入力とする前記第2機械学習を前記数学モデルに行わせることにより、未知のペア画像の合格画像及び不合格画像を前記数学モデルに入力すると、当該未知のペア画像の合格画像及び不合格画像が所定のランク以上である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であると前記数学モデルが判定し、前記所定のランク未満である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが不適切であると前記数学モデルが判定するように前記数学モデルを学習させる、情報処理装置。
  2.  前記判定済ペア画像の合格画像及び不合格画像に対して前記第1疑似画像生成処理よりも画像の変更度合が低い第2疑似画像生成処理を行った合格画像及び不合格画像を含む第2疑似ペア画像を生成する第2画像生成部と、
     前記第1検査プログラムが前記第2疑似ペア画像の合格画像及び不合格画像について合否を正しく判定した第2疑似ペア画像を取得する第2画像取得部と
     をさらに含み、
     前記第2画像生成部は、前記第2画像取得部によって取得された第2疑似ペア画像の数が第2所定数以上になるまで前記第2疑似ペア画像の生成を行い、
     前記学習処理部は、前記第2機械学習として、前記判定済ペア画像と、前記第1所定数以上の前記ランク付けされた第1疑似ペア画像と、前記第2所定数以上の前記第2画像取得部によって取得された第2疑似ペア画像とを入力とする第2機械学習を前記数学モデルに行わせる、請求項1記載の情報処理装置。
  3.  前記判定の正否に応じたランク付けは、前記第1疑似画像生成処理が行われた前記第1疑似ペア画像の合格画像又は不合格画像についての合否を前記第1検査プログラムが誤判定した第1疑似ペア画像についてのランクであり、
     前記第1画像生成部は、前記ランク毎に合否が誤判定された第1疑似ペア画像の数が前記ランク毎の所定数以上になるまで前記第1疑似ペア画像の生成を行い、
     前記学習処理部が前記第2機械学習に用いる前記第1所定数以上の前記ランク付けされた第1疑似ペア画像は、前記ランク毎の所定数以上の第1疑似ペア画像である、請求項1又は2記載の情報処理装置。
  4.  前記ランク毎の所定数は、前記第1疑似画像生成処理が行われた合格画像及び不合格画像のいずれか一方の合否が誤判定された第1疑似ペア画像についての所定数よりも、前記第1疑似画像生成処理が行われた合格画像及び不合格画像の両方の合否が誤判定された第1疑似ペア画像についての所定数の方が多い、請求項3記載の情報処理装置。
  5.  前記所定のランクは、前記第1疑似画像生成処理が行われた合格画像及び不合格画像の両方の合否が誤判定された第1疑似ペア画像についてのランク、前記第1疑似画像生成処理が行われた合格画像及び不合格画像のいずれか一方の合否が誤判定された第1疑似ペア画像についてのランク、及び、前記第1疑似画像生成処理が行われた合格画像及び不合格画像のいずれか他方の合否が誤判定された第1疑似ペア画像についてのランクのうちのいずれかのランクである、請求項4記載の情報処理装置。
  6.  前記判定の正否に応じたランク付けは、さらに、前記第1疑似画像生成処理が行われた前記第1疑似ペア画像の合格画像又は不合格画像についての合否を前記第1検査プログラムが正しく判定した第1疑似ペア画像についてのランクを含み、
     前記第1画像生成部は、前記ランク毎に合否が誤判定された第1疑似ペア画像の数が前記ランク毎の所定数以上になるとともに、前記合否が正しく判定された第1疑似ペア画像の数が当該第1疑似ペア画像についての所定数以上になるまで前記第1疑似ペア画像の生成を行い、
     前記学習処理部が前記第2機械学習に用いる前記第1所定数以上の前記ランク付けされた第1疑似ペア画像は、前記ランク毎の所定数以上の第1疑似ペア画像と、前記合否が正しく判定された第1疑似ペア画像についての所定数以上の第1疑似ペア画像とである、請求項3又は4記載の情報処理装置。
  7.  前記第1画像生成部は、前記ランク付けされた第1疑似ペア画像のうち、前記第1疑似ペア画像の合格画像及び不合格画像の両方の合否が誤判定された第1疑似ペア画像の数が第3所定数以上になるまで前記第1疑似ペア画像の生成を行い、
     前記学習処理部が前記第2機械学習に用いる前記第1所定数以上の前記ランク付けされた第1疑似ペア画像は、前記第3所定数以上の前記両方の合否が誤判定された第1疑似ペア画像を含む、請求項1又は2記載の情報処理装置。
  8.  前記第1画像生成部は、さらに、前記ランク付けされた第1疑似ペア画像のうち、前記第1疑似ペア画像の合格画像及び不合格画像のいずれか一方の合否を前記第1検査プログラムが誤判定した第1疑似ペア画像の数が第4所定数以上になるまで前記第1疑似ペア画像の生成を行い、
     前記学習処理部が前記第2機械学習に用いる前記第1所定数以上の前記ランク付けされた第1疑似ペア画像は、前記第3所定数以上の前記両方の合否が誤判定された第1疑似ペア画像と、前記第4所定数以上の前記いずれか一方の合否が誤判定された第1疑似ペア画像とを含む、請求項7記載の情報処理装置。
  9.  前記所定のランクは、前記第1疑似ペア画像の合格画像及び不合格画像の両方の合否が誤判定された第1疑似ペア画像についてのランク、前記第1疑似ペア画像の合格画像及び不合格画像のいずれか一方の合否を前記第1検査プログラムが誤判定した第1疑似ペア画像についてのランク、及び、前記第1疑似ペア画像の合格画像及び不合格画像のいずれか他方の合否を前記第1検査プログラムが誤判定した第1疑似ペア画像についてのランクのうちのいずれかのランクである、請求項8記載の情報処理装置。
  10.  前記第1画像生成部は、さらに、前記ランク付けされた第1疑似ペア画像のうち、前記第1疑似ペア画像の合格画像及び不合格画像の両方の合否を前記第1検査プログラムが正しく判定した第1疑似ペア画像の数が第5所定数以上になるまで前記第1疑似ペア画像の生成を行い、
     前記学習処理部が前記第2機械学習に用いる前記第1所定数以上の前記ランク付けされた第1疑似ペア画像は、前記第3所定数以上の前記両方の合否が誤判定された第1疑似ペア画像と、前記第4所定数以上の前記いずれか一方の合否が誤判定された第1疑似ペア画像と、前記第5所定数以上の前記両方の合否が正しく判定された第1疑似ペア画像とである、請求項8又は9記載の情報処理装置。
  11.  前記第1画像生成部は、さらに、前記ランク付けされた第1疑似ペア画像のうち、前記第1疑似ペア画像の合格画像及び不合格画像の両方の合否を前記第1検査プログラムが正しく判定した第1疑似ペア画像の数が第5所定数以上になるまで前記第1疑似ペア画像の生成を行い、
     前記学習処理部が前記第2機械学習に用いる前記第1所定数以上の前記ランク付けされた第1疑似ペア画像は、前記第3所定数以上の前記両方の合否が誤判定された第1疑似ペア画像と、前記第5所定数以上の前記両方の合否が正しく判定された第1疑似ペア画像とを含む、請求項7記載の情報処理装置。
  12.  前記所定のランクは、前記第1疑似ペア画像の合格画像及び不合格画像の両方の合否が誤判定された第1疑似ペア画像についてのランクである、請求項11記載の情報処理装置。
  13.  第1機械学習済みの第1検査プログラムが合否を正しく判定した合格画像及び不合格画像を含む複数の判定済ペア画像を取得することと、
     前記判定済ペア画像の合格画像及び不合格画像に対して第1疑似画像生成処理を行った合格画像及び不合格画像を含む第1疑似ペア画像を生成することと、
     前記第1疑似ペア画像の合格画像及び不合格画像について前記第1検査プログラムが合否を判定した判定結果を取得することと、
     前記判定結果に基づいて、前記第1検査プログラムが合否を判定した第1疑似ペア画像をペア毎に、前記判定の正否に応じてランク付けすることと、
     前記判定済ペア画像と、前記ランク付けされた第1疑似ペア画像とを入力とする第2機械学習を、ペア画像の合格画像及び不合格画像が入力されると、当該ペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であるかどうかを判定する第2検査プログラムで表される数学モデルに行わせることと
     を含む処理であって、
     前記第1疑似ペア画像を生成することは、前記ランク付けされた第1疑似ペア画像の数が第1所定数以上になるまで前記第1疑似ペア画像を生成することであり、
     前記第2機械学習を前記数学モデルに行わせることは、前記判定済ペア画像と、前記第1所定数以上の前記ランク付けされた第1疑似ペア画像とを入力とする前記第2機械学習を前記数学モデルに行わせることにより、未知のペア画像の合格画像及び不合格画像を前記数学モデルに入力すると、当該未知のペア画像の合格画像及び不合格画像が所定のランク以上である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であると前記数学モデルが判定し、前記所定のランク未満である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが不適切であると前記数学モデルが判定するように前記数学モデルを学習させることである、処理をコンピュータに実行させる、情報処理プログラム。
  14.  第1機械学習済みの第1検査プログラムが合否を正しく判定した合格画像及び不合格画像を含む複数の判定済ペア画像を取得することと、
     前記判定済ペア画像の合格画像及び不合格画像に対して第1疑似画像生成処理を行った合格画像及び不合格画像を含む第1疑似ペア画像を生成することと、
     前記第1疑似ペア画像の合格画像及び不合格画像について前記第1検査プログラムが合否を判定した判定結果を取得することと、
     前記判定結果に基づいて、前記第1検査プログラムが合否を判定した第1疑似ペア画像をペア毎に、前記判定の正否に応じてランク付けすることと、
     前記判定済ペア画像と、前記ランク付けされた第1疑似ペア画像とを入力とする第2機械学習を、ペア画像の合格画像及び不合格画像が入力されると、当該ペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であるかどうかを判定する第2検査プログラムで表される数学モデルに行わせることと
     を含み、
     前記第1疑似ペア画像を生成することは、前記ランク付けされた第1疑似ペア画像の数が第1所定数以上になるまで前記第1疑似ペア画像を生成することであり、
     前記第2機械学習を前記数学モデルに行わせることは、前記判定済ペア画像と、前記第1所定数以上の前記ランク付けされた第1疑似ペア画像とを入力とする前記第2機械学習を前記数学モデルに行わせることにより、未知のペア画像の合格画像及び不合格画像を前記数学モデルに入力すると、当該未知のペア画像の合格画像及び不合格画像が所定のランク以上である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが適切であると前記数学モデルが判定し、前記所定のランク未満である場合に当該未知のペア画像の合格画像及び不合格画像の合否を前記第1検査プログラムに判定させることが不適切であると前記数学モデルが判定するように前記数学モデルを学習させることである、情報処理方法。
PCT/JP2019/032302 2019-08-19 2019-08-19 情報処理装置、情報処理プログラム、及び、情報処理方法 WO2021033239A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201980098300.9A CN114096989A (zh) 2019-08-19 2019-08-19 信息处理装置、信息处理程序和信息处理方法
JP2021541361A JP7197021B2 (ja) 2019-08-19 2019-08-19 情報処理装置、情報処理プログラム、及び、情報処理方法
PCT/JP2019/032302 WO2021033239A1 (ja) 2019-08-19 2019-08-19 情報処理装置、情報処理プログラム、及び、情報処理方法
US17/552,354 US20220108433A1 (en) 2019-08-19 2021-12-16 Information processing apparatus, information processing program, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/032302 WO2021033239A1 (ja) 2019-08-19 2019-08-19 情報処理装置、情報処理プログラム、及び、情報処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/552,354 Continuation US20220108433A1 (en) 2019-08-19 2021-12-16 Information processing apparatus, information processing program, and information processing method

Publications (1)

Publication Number Publication Date
WO2021033239A1 true WO2021033239A1 (ja) 2021-02-25

Family

ID=74659882

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/032302 WO2021033239A1 (ja) 2019-08-19 2019-08-19 情報処理装置、情報処理プログラム、及び、情報処理方法

Country Status (4)

Country Link
US (1) US20220108433A1 (ja)
JP (1) JP7197021B2 (ja)
CN (1) CN114096989A (ja)
WO (1) WO2021033239A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7354338B1 (ja) 2022-03-30 2023-10-02 本田技研工業株式会社 疑似不良品データ生成方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009539181A (ja) * 2006-05-31 2009-11-12 マイクロソフト コーポレーション 手書き文字認識改善用コンバイナ
JP2017062776A (ja) * 2015-09-04 2017-03-30 株式会社東芝 構造物に対する変化を検出するための方法、装置およびコンピュータ可読媒体
JP2017092622A (ja) * 2015-11-06 2017-05-25 クラリオン株式会社 画像処理システム
WO2018092747A1 (ja) * 2016-11-15 2018-05-24 株式会社Preferred Networks 学習済モデル生成方法、学習済モデル生成装置、信号データ判別方法、信号データ判別装置及び信号データ判別プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009539181A (ja) * 2006-05-31 2009-11-12 マイクロソフト コーポレーション 手書き文字認識改善用コンバイナ
JP2017062776A (ja) * 2015-09-04 2017-03-30 株式会社東芝 構造物に対する変化を検出するための方法、装置およびコンピュータ可読媒体
JP2017092622A (ja) * 2015-11-06 2017-05-25 クラリオン株式会社 画像処理システム
WO2018092747A1 (ja) * 2016-11-15 2018-05-24 株式会社Preferred Networks 学習済モデル生成方法、学習済モデル生成装置、信号データ判別方法、信号データ判別装置及び信号データ判別プログラム

Also Published As

Publication number Publication date
JP7197021B2 (ja) 2022-12-27
US20220108433A1 (en) 2022-04-07
JPWO2021033239A1 (ja) 2021-02-25
CN114096989A (zh) 2022-02-25

Similar Documents

Publication Publication Date Title
JP6924413B2 (ja) データ生成装置、データ生成方法及びデータ生成プログラム
US10354472B2 (en) Self-learning system and methods for automatic document recognition, authentication, and information extraction
US8129990B2 (en) Image processing apparatus and computer program product
US20080281548A1 (en) Method and System for Automatic Defect Detection of Articles in Visual Inspection Machines
JP2016133895A (ja) 情報処理装置、情報処理方法、及びプログラム
CN101915769A (zh) 一种印刷电路板中带电阻元件的自动光学检测方法
CN110853006B (zh) 一种使用扫描仪获取的数字病理图像质量评价的方法
CN111582359B (zh) 一种图像识别方法、装置、电子设备及介质
CN109983482A (zh) 已学习模型生成方法、已学习模型生成装置、信号数据判别方法、信号数据判别装置以及信号数据判别程序
Castelblanco et al. Machine learning techniques for identity document verification in uncontrolled environments: A case study
CN111758117B (zh) 检查系统、识别系统以及学习数据生成装置
CN111753873A (zh) 一种图像检测方法和装置
CN110427962A (zh) 一种测试方法、电子设备及计算机可读存储介质
US20050105827A1 (en) Method and apparatus for detecting positions of center points of circular patterns
CN111161237A (zh) 一种果蔬表面质检方法及其储存介质、分拣装置
Xie et al. Detecting PCB component placement defects by genetic programming
WO2021033239A1 (ja) 情報処理装置、情報処理プログラム、及び、情報処理方法
CN109685756A (zh) 影像特征自动辨识装置、系统及方法
Guo et al. Open-eye: An open platform to study human performance on identifying ai-synthesized faces
WO2019176988A1 (ja) 検査システム、識別システム、及び識別器評価装置
Basthomi et al. Implementation of RFID attendance system with face detection using validation viola-jones and local binary pattern histogram method
JP7123306B2 (ja) 画像処理装置及び画像処理方法
US11727673B1 (en) Visual analysis method for cable element identification
CN116071335A (zh) 墙面验收方法、装置、设备及存储介质
CN109145554A (zh) 一种基于支持向量机的击键特征异常用户识别方法及系统

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: 19942454

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021541361

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19942454

Country of ref document: EP

Kind code of ref document: A1