WO2023228282A1 - 情報処理装置、情報処理システム、情報処理方法、及び、プログラム - Google Patents

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

Info

Publication number
WO2023228282A1
WO2023228282A1 PCT/JP2022/021268 JP2022021268W WO2023228282A1 WO 2023228282 A1 WO2023228282 A1 WO 2023228282A1 JP 2022021268 W JP2022021268 W JP 2022021268W WO 2023228282 A1 WO2023228282 A1 WO 2023228282A1
Authority
WO
WIPO (PCT)
Prior art keywords
product
inspection
data
inspection target
inspected
Prior art date
Application number
PCT/JP2022/021268
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 JP2022562160A priority Critical patent/JP7191283B1/ja
Priority to PCT/JP2022/021268 priority patent/WO2023228282A1/ja
Publication of WO2023228282A1 publication Critical patent/WO2023228282A1/ja

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination

Definitions

  • the present disclosure relates to an information processing device, an information processing system, an information processing method, and a program.
  • Patent Document 1 a neural network that has learned a model that reconstructs a normal image based on features extracted from normal images among images taken on a production line is used to reconstruct features extracted from images to be determined.
  • a technique has been disclosed in which a reconstructed image is generated based on the above information, and an abnormality is determined based on difference information between the reconstructed image and the determination target image.
  • the images to be determined for abnormality determination are images taken on one manufacturing line.
  • image preprocessing such as annotation
  • training the neural network if you can use a neural network for abnormality determination that has learned normal images from other production lines, you can reduce the effort of labeling the collected images, image preprocessing such as annotation, and training the neural network.
  • the image taken will also be different because the environment at the time of photography, such as how the camera is attached, background conditions, and lighting, differ depending on the production line. For this reason, there is a problem in that a neural network that has learned images from the original manufacturing line cannot be applied as is.
  • the present disclosure has been made in order to solve the above-mentioned problems, and it is possible to inspect data to be inspected using an inspection model generated by learning data to be inspected collected in another environment using machine learning means.
  • the purpose of the present invention is to provide an information processing device, an information processing system, an information processing method, and a program.
  • an information processing device for inspecting the quality of a product to be inspected, which is generated by learning first inspection target data based on a first product using an inspection learning means.
  • An inspection processing unit that inspects the quality of the product to be inspected based on the inspection model data of
  • a conversion processing unit that converts the inspection target data based on the inspection target product into converted inspection target data based on the conversion model data for converting the second inspection target data into converted inspection target data similar to the first inspection target data
  • the inspection processing unit determines that the product to be inspected is the first product based on information from the outside, it inspects the inspection data based on the product to be inspected as is, and converts the product to be inspected to the second product based on the information from the outside. If it is determined that there is, the conversion processing unit inspects the converted inspection target data converted from the inspection target data.
  • second product image data obtained by photographing a second product is converted into an image similar to first product image data obtained by photographing a first product, and the converted image data is converted into an image similar to the first product image data obtained by photographing a first product. Since data can be applied to trained neural networks to perform pass/fail inspections, inspection data can also be inspected using inspection models generated by learning inspection data collected in other environments using machine learning methods. It is possible to provide an information processing device that can perform
  • a diagram showing the configuration of an information processing system according to Embodiment 1 of the present disclosure A diagram showing a configuration of a control unit of an information processing device according to Embodiment 1 of the present disclosure
  • a diagram showing an overview of an inspection neural network according to Embodiment 1 of the present disclosure A diagram showing a continuation of the test neural network shown in FIG. 4A.
  • a diagram showing an overview of a conversion neural network according to Embodiment 1 of the present disclosure A diagram showing a continuation of the conversion neural network shown in FIG. 5A.
  • the information processing device 3 converts the second product image data 221 obtained by photographing the second product 21 on the second production line 2 into an image similar to the first product image data 121 obtained by photographing the first product 11 on the first production line 1. Then, the converted image data 231 is converted by the conversion neural network 402 and is applied to the inspection neural network 401 that has learned the first product image data 121 to determine the quality. As a result, it is possible to accurately judge the quality of the second product image data 221 using the trained inspection neural network 401, thereby reducing the effort to newly train the neural network on the collected images. be able to. Further, the information processing system 100 is a system including the information processing device 3.
  • FIG. 1 shows the configuration of the information processing system 100.
  • the information processing system 100 includes a first manufacturing line 1 that manufactures first products 11A, 11B, ... 11N, a second manufacturing line 2 that manufactures second products 21A, 21B, ... 21N, and photographed images. and an information processing device 3 that performs quality determination.
  • the first products 11A, 11B, . . . , 11N will be collectively referred to as the first product 11.
  • the second products 21A, 21B, . . . , 21N are collectively referred to as the second product 21.
  • the first product 11 and the second product 21 are, for example, complete products and parts constituting the products, such as vehicles, semiconductor parts, and workpieces for processing.
  • the first manufacturing line 1 is a line that manufactures the first product 11 to be manufactured.
  • the first manufacturing line 1 includes a first photographing section 12 that photographs the first product 11 flowing through the line and generates first product image data 121.
  • the second manufacturing line 2 is a line that manufactures the second product 21 to be manufactured.
  • the second manufacturing line 2 includes a second photographing section 22 that photographs a second product 21 flowing through the line and generates second product image data 221.
  • the information processing device 3 includes an image acquisition unit 31 that acquires first product image data 121 and second product image data 221, a storage unit 32 that stores various data and programs, and a control unit 33 that executes various processes.
  • the image acquisition section 31 acquires first product image data 121 obtained by photographing the first product 11 from the first photographing section 12 of the first production line 1 . Further, the image acquisition section 31 acquires second product image data 221 obtained by photographing the second product 21 from the second photographing section 22 of the second production line 2 .
  • the first product image data 121 is an example of first inspection target data based on the first product in the claims.
  • the second product image data 221 is an example of second inspection target data based on the second product in the claims.
  • the storage unit 32 includes a first image storage unit 321 that stores first product image data 121, a second image storage unit 322 that stores second product image data 221, and an inspection model that stores inspection model data 411, which will be described later. It includes a storage section 323, a conversion model storage section 324 that stores conversion model data 421, which will be described later, and a test result storage section 325 that stores test results.
  • the first image storage unit 321 stores the first product image data 121 acquired from the first photographing unit 12 by the image acquisition unit 31.
  • the second image storage unit 322 stores the second product image data 221 acquired from the second photographing unit 22 by the image acquisition unit 31.
  • the test model storage unit 323 stores test model data 411 to be set in the test neural network 401, which will be described later.
  • the conversion model storage unit 324 stores conversion model data 421 to be set in the conversion neural network 402, which will be described later.
  • the inspection result storage unit 325 stores inspection results obtained by inspecting the first product image data 121 and the second product image data 221 using an inspection neural network 401, which will be described later.
  • the control unit 33 includes a labeling processing unit 331 that performs labeling of good and bad, an inspection model generation unit 332 that generates inspection model data 411, and a conversion model generation unit that generates conversion model data 421. 333, an inspection processing unit 334 that inspects the first product image data 121 and the second product image data 221, a conversion processing unit 335 that converts the second product image data 221, and a result processing unit 336 that processes the inspection results. Equipped with.
  • the labeling processing unit 331 adds a label of good or bad to the first product image data 121. For example, the labeling processing unit 331 determines that image data included in a predetermined condition among the clustered first product image data 121 is "normal” and assigns a label of "good” to the image data. Further, the labeling processing unit 331 determines that image data that does not meet predetermined conditions is "abnormal” and assigns a label of "defective" to the image data.
  • the inspection model generation unit 332 trains the inspection neural network 401 on the first product image data 121 labeled by the labeling processing unit 331, and generates inspection model data 411 based on the learning results.
  • the conversion model generation unit 333 inputs the first product image data 121 and the second product image data 221 to learn the conversion neural network 402, and generates conversion model data 421 as a learning result.
  • the labeling processing section 331, the inspection model generation section 332, and the conversion model generation section 333 are collectively referred to as the learning section 341.
  • the test neural network 401 is an example of test learning means in the claims.
  • the conversion neural network 402 is an example of conversion learning means in the claims.
  • the inspection model data 411 and conversion model data 421 generated by the learning unit 341 are output to the result processing unit 336.
  • the result processing unit 336 stores the test model data 411 and the conversion model data 421 in the test model storage unit 323 and conversion model storage unit 324 of the storage unit 32 shown in FIG.
  • the inspection processing unit 334 inspects the first product image data 121 and the second product image data 221 using the inspection neural network 401.
  • the test neural network 401 of the test processing section 334 is set with test model data 411 acquired from the test model storage section 323 of the storage section 32 shown in FIG. 1 via the result processing section 336.
  • the test processing section 334 transmits the test results to the result processing section 336.
  • the conversion processing unit 335 converts the second product image data 221 into converted image data 231 similar to the first product image data 121 using the conversion neural network 402.
  • the conversion neural network 402 of the conversion processing unit 335 is set with conversion model data 421 acquired from the conversion model storage unit 324 of the storage unit 32 shown in FIG. 1 via the result processing unit 336.
  • the inspection processing unit 334 performs an inspection based on the received converted image data 231.
  • the second product image data 221 can be inspected by the inspection neural network 401 that has learned the first product image data 121.
  • the inspection processing section 334 and the conversion processing section 335 are collectively referred to as the estimation section 342.
  • the converted image data 231 is an example of converted inspection target data in the claims.
  • the result processing unit 336 stores the test results received from the test processing unit 334 in the test result storage unit 325 of the storage unit shown in FIG. Further, the result processing unit 336 outputs the test results received from the test processing unit 334 to an external device of the information processing device 3, such as a display device, a server, etc. for presentation to the user.
  • an external device of the information processing device 3 such as a display device, a server, etc. for presentation to the user.
  • each function executed by the information processing device 3 shown in FIG. 1 and each function executed by the control unit 33 of the information processing device 3 are functions realized by software.
  • FIG. 3 shows an example of a hardware configuration for executing software, that is, a program, in the information processing device 3.
  • the information processing device 3 has an input/output port 351 that connects the first photographing section 12 that photographs the first product 11 and the second photographing section 22 that photographs the second product 21 shown in FIG. It includes a storage device 352 for storage, a connection device 353 for connecting to the outside, a memory 354 for expanding various programs, and a processor 355 for executing various programs.
  • the input/output port 351, storage device 352, connection device 353, memory 354, and processor 355 are interconnected by a data bus 356.
  • the input/output port 351 is a port to which various input/output devices such as the first imaging section 12 and the second imaging section 22 shown in FIG. 1 can be connected.
  • the input/output port 351 can be configured by, for example, a terminal compliant with various connection standards such as USB (Universal Serial Bus), serial, and parallel.
  • the first photographing section 12 and the second photographing section 22 include, for example, a camera using an image sensor such as a CCD (Charge Coupled Device) or a CMOS (Complementary Metal Oxide Semiconductor) image sensor, a video camera, etc.
  • CMOS Complementary Metal Oxide Semiconductor
  • the storage device 352 is a device that functions as the storage section 32 of the information processing device 3 shown in FIG. 1.
  • the storage device 352 can be configured using a storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive).
  • the connected device 353 is a device for outputting test results to an external device, for example, a display device for presenting to a user, a server, or the like.
  • the connection device 353 can be configured by devices using various communication methods such as a connection terminal of a display device, a USB, a wired or wireless LAN (Local Area Network), Bluetooth (registered trademark), and Wifi.
  • the memory 354 is a device for expanding various programs stored in the storage device 352.
  • the memory 354 can be configured using a storage element and a storage medium such as a RAM (Random Access Memory), a volatile or nonvolatile semiconductor memory such as a flash memory, and the like.
  • the processor 355 reads various programs stored in the storage device 352, expands them into the memory 354, and executes them.
  • the processor 355 can be configured using a processing device such as a CPU (Central Processing Unit) or an MPU (Micro-processing Unit).
  • test neural network 401 and conversion neural network 402 used in the first embodiment will be described below with reference to FIGS. 4A to 5B.
  • 4A and 4B are diagrams for explaining the test neural network 401.
  • the test neural network 401 is configured by a convolutional neural network that can process image data S.
  • the convolutional neural network will be referred to as CNN (Convolutional Neural Network).
  • CNN includes a convolution layer that convolves the features of the input image data S shown in Fig. 4A, a pooling layer that lowers the resolution of the convolved image, a fully connected layer that classifies the convolved image shown in Fig. 4B, and a result and an output layer that outputs.
  • the convolution layer compares all pixels of the input image with kernel data for each pixel, obtains feature quantities, and generates a feature map. Note that there is only one kernel for black and white, but for color, it is necessary to prepare as many kernels as there are colors. For example, for three colors, RGB, three kernels are prepared and the input image is convolved with each kernel.
  • the feature map generated by the convolution layer is input to the pooling layer.
  • the pooling layer performs a pooling process on the input feature map to lower the resolution of the image.
  • Pooling processing includes an aggregation method called average pooling and an aggregation method called maximum pooling.
  • an aggregation method called maximum pooling is used. For example, when reducing a 4 ⁇ 4 size feature map to 2 ⁇ 2 size, the pixel with the largest value in the 2 ⁇ 2 size area at the upper left of the feature map is extracted. Next, the pixel having the largest value in each of the 2 ⁇ 2 sized regions at the lower left, upper right, and lower right of the feature map is extracted. As a result, a 4 ⁇ 4 feature map can be reduced to a 2 ⁇ 2 size.
  • a plurality of convolutional layers and pooling layers are arranged in order as shown in FIG. 4A.
  • the feature amounts of the generated image data S are input to the fully connected layer.
  • the feature amount of the image data S is flattened to generate a one-dimensional column vector.
  • the feature amount generated from the input image after the final pooling layer is assumed to be data in a 3 ⁇ 3 matrix.
  • the data of this matrix is arranged in one column in the following order: columns 1 to 3 of the first row, columns 1 to 3 of the second row, and columns 1 to 3 of the third row. Since data arranged in one column becomes a one-dimensional column vector, each value of the column vector can be input to the input layer of the fully connected layer.
  • the one-dimensional column vector generated by flattening will be referred to as a feature vector.
  • the fully connected layer and output layer shown in FIG. 4B are composed of multiple neurons.
  • the fully connected layer includes an input layer and a hidden layer.
  • the values are multiplied by weights W 11 to W nm , and m is input.
  • the results input to the intermediate layers Y 1 to Y m are further multiplied by weights V 11 to V 2m and output from the output layers Z 1 and Z 2 .
  • the output results from the output layers Z 1 and Z 2 vary depending on the values of the weights W 11 to W nm and the weights V 11 to V 2m . Note that here, n is an integer of 4 or more, and m is an integer of 3 or more.
  • each neuron in the input layer X 1 to A feature vector generated from image data S is input.
  • the weights W 11 to W nm and the weights V 11 to V 2m are adjusted so that among the neurons in the output layers Z 1 and Z 2 , the neurons in the output layer Z 1 that are set to "good" fire.
  • each neuron in the input layers X 1 to X n is given a "defective" label among the first product image data 121 stored in the first image storage section 321 of the storage section 32 shown in FIG.
  • a feature vector generated from the image data S is input.
  • the weights W 11 to W nm and the weights V 11 to V 2m are adjusted so that the neurons in the output layer Z 3 that are set as “defective” fire.
  • the weights W 11 to W nm and the weights V 11 to V 2m are adjusted using, for example, an error propagation (Back Propagation) method. Adjusting the weights W 11 to W nm and weights V 11 to V 2m is learning in the test neural network 401. Further, hereinafter, adjusting the weights W 11 to W nm and the weights V 11 to V 2m will be referred to as learning in the test model generation unit 332 shown in FIG. 2.
  • the test model generation unit 332 stores the adjusted weights W 11 to W nm and the weights V 11 to V 2m as test model data 411 in the test model storage unit 323. Furthermore, when inspecting the image data of the product to be inspected, the inspection processing section 334 of the control section 33 shown in FIG. 2 sets the inspection model data 411 stored in the inspection model storage section 323 in the inspection neural network 401, Perform inspection.
  • the conversion neural network 402 generates converted image data 231 similar to the first product image data 121 obtained by photographing the first product 11 from the second product image data 221 obtained by photographing the second product 21 shown in FIG.
  • the test neural network 401 is configured by, for example, an adversarial generative network that can convert input image data S into other image data S'.
  • GANs Generic Adversarial Networks
  • the GAN includes a generator for inputting second product image data 221 shown in FIG. 5A to generate converted image data 231, and inputting converted image data 231 and first product image data 121 shown in FIG. 5B. and a discriminator for identifying both.
  • the generation unit shown in FIG. 5A is composed of a plurality of neurons including an input layer and an output layer. Note that an intermediate layer may be included between the input layer and the output layer.
  • the values input to the input layers P 1 to P n are obtained by performing the convolution/pooling process and flattening the second product image data 221 obtained by photographing the second product 21 shown in FIG. 1 as shown in FIG. 4A. Let it be a feature vector. When a feature vector is input to the input layers P 1 to P n , the values input to each neuron in the input layer are multiplied by weights H 11 to H nm and input to the output layers Q 1 to Q m .
  • the values of each neuron in the output layers Q 1 to Q m are sequentially arranged from Q 1 to Q m to generate a one-dimensional vector.
  • the transformed image data 231 can be obtained by subjecting the generated one-dimensional vector to deconvolution/depooling processing, which is the inverse of convolution/pooling processing.
  • the classifier shown in FIG. 5B is composed of a plurality of neurons including an input layer, a middle layer, and an output layer.
  • the middle layer of the discriminator is one layer.
  • the values are multiplied by weights S 11 to S nm and the intermediate layers K 1 to K m is input.
  • the results input to the intermediate layers K 1 to K m are further multiplied by weights U 11 to U m1 and output from the output layer D.
  • the output result from the output layer D varies depending on the values of the weights S 11 to S nm and the weights U 11 to U m1 .
  • n is an integer of 3 or more
  • m is an integer of 4 or more.
  • the discriminator outputs 0 from the output layer D when the converted image data 231 input to the input layer and the first product image data 121 are not similar, and outputs 1 from the output layer D when they are similar.
  • the feature vectors generated from the converted image data 231 and the first product image data 121 are input to each neuron of the input layers R 1 to R n .
  • the weights S 11 to S nm and the weights U 11 to U m1 are adjusted so that the output of the output layer D approaches 1.
  • the weights S 11 to S nm and the weights U 11 to U m1 are adjusted by the error backpropagation method.
  • the error backpropagation method first, an error is determined based on the output value of the output layer D when the feature vector of the converted image data 231 is input to the classifier. The obtained error is input to the output layer D of the discriminator, and is back-propagated in the order of the intermediate layers K 1 to K m and the input layers R 1 to R n . After that, new converted image data 231 is generated with the generator weights H 11 to H nm shown in FIG. 5A fixed, and the discriminator weights S 11 to S nm and weights U 11 to U m1 are adjusted. Repeat the process.
  • the discriminator weights S 11 to S nm and weights U 11 to U m1 shown in FIG. 5B are adjusted.
  • the generator weights H 11 to H nm , the discriminator weights S 11 to S nm , and the weights U 11 to U m1 are repeatedly adjusted, and the feature vector of the converted image data 231 is input, the output of the output layer D is Make it close to 1.
  • Adjusting the generator weights H 11 to H nm , the discriminator weights S 11 to S nm , and the weights U 11 to U m1 is learning in the conversion neural network 402. Furthermore, hereinafter, adjusting the weights H 11 to H nm of the generator, the weights S 11 to S nm and the weights U 11 to U m1 of the discriminator is referred to as learning in the conversion model generation unit 333.
  • the adjusted generator weights H 11 to H nm , discriminator weights S 11 to S nm , and weights U 11 to U m1 are stored in the conversion model storage of the storage unit 32 shown in FIG. 1 as conversion model data 421. 324. Further, when the image data of the product to be inspected is the second product image data 221, the conversion processing unit 335 of the control unit 33 shown in FIG. The product image data 121 is converted into converted image data 231 similar to the product image data 121. Thereafter, an inspection is performed using the inspection neural network 401 constructed in the inspection processing section 334 of the control section 33 shown in FIG.
  • test model data 411 to be set in the test neural network 401 and conversion model data 421 to be set in the conversion neural network 402 are generated.
  • Generation of test model data 411 and conversion model data 421 will be described below with reference to the flowchart of test model data generation processing shown in FIG. 6 and the flowchart of conversion model data generation processing shown in FIG. 7.
  • FIG. 6 is a flowchart of the test model data generation process, which is stored in the storage unit 32 of the information processing device 3 shown in FIG. 1 as a test model data generation process program.
  • the flowchart of the conversion model data generation process in FIG. 7 is stored in the storage unit 32 of the information processing device 3 shown in FIG. 1 as a conversion model data generation process program.
  • the inspection model data generation processing program and the conversion model data generation processing program are read out from the storage device 352 to the memory 354 by the processor 355 shown in FIG. 3 and executed.
  • the labeling processing section 331 of the control section 33 shown in FIG. 2 acquires the first product image data 121 from the first image storage section 321 of the storage section 32 shown in FIG. 1 (step S101).
  • the labeling processing unit 331 adds a label of good or bad to the first product image data 121 (step S102). For example, the labeling processing unit 331 determines that image data included in a predetermined condition among the clustered first product image data 121 is "normal” and assigns a label of "good” to the image data. Further, the labeling processing unit 331 determines that image data that does not meet predetermined conditions is "abnormal” and assigns a label of "defective" to the image data.
  • the test model generation unit 332 of the control unit 33 shown in FIG. 2 constructs the test neural network 401 (step S103).
  • the inspection model generation unit 332 causes the inspection neural network 401 to learn the first product image data 121 that was given the "good” label and the "defective" label in step 102, and generates the inspection model data 411 based on the learning result. is generated (step S104). Specifically, the test model generation unit 332 uses the adjusted weights of each neuron of the test neural network 401 as the test model data 411.
  • the test model generation unit 332 outputs the generated test model data 411 to the result processing unit 336 of the control unit 33 shown in FIG.
  • the result processing unit 336 stores the received test model data 411 in the test model storage unit 323 of the storage unit 32 shown in FIG. 1 (step S105).
  • the result processing unit 336 ends the test model data generation processing program.
  • the conversion model generation unit 333 of the control unit 33 shown in FIG. 2 acquires the second product image data 221 from the second image storage unit 322 of the storage unit 32 shown in FIG. 1 (step S201).
  • the conversion model generation unit 333 acquires the first product image data 121 from the first image storage unit 321 of the storage unit 32 shown in FIG. 1 (step S202).
  • the conversion model generation unit 333 constructs the conversion neural network 402 (step S203).
  • the conversion model generation unit 333 inputs the second product image data 221 acquired in step S201 and the first product image data 121 acquired in step S202 to the conversion neural network 402, and causes the conversion neural network 402 to learn.
  • the conversion model generation unit 333 generates conversion model data 421 based on the learning results (step S204). Specifically, the conversion model generation unit 333 uses the adjusted weights of each neuron of the conversion neural network 402 as the conversion model data 421.
  • the conversion model generation unit 333 outputs the generated conversion model data 421 to the result processing unit 336 of the control unit 33 shown in FIG.
  • the result processing unit 336 stores the received conversion model data 421 in the conversion model storage unit 324 of the storage unit 32 shown in FIG. 1 (step S205).
  • the result processing unit 336 ends the conversion model data generation processing program.
  • the flowchart of the inspection process in FIG. 8 is stored in the storage unit 32 of the information processing device 3 shown in FIG. 1 as an inspection process program.
  • the inspection processing program is read from the storage device 352 to the memory 354 by the processor 355 shown in FIG. 3 and executed when the information processing device 3 performs inspection processing.
  • the inspection processing unit 334 of the control unit 33 shown in FIG. 2 determines whether the manufacturing line of the product to be inspected is the first manufacturing line 1 (step S301). If the manufacturing line of the product to be inspected is the first manufacturing line 1 (step S301; YES), the inspection processing unit 334 stores the first product 11 from the first image storage unit 321 of the storage unit 32 shown in FIG. The photographed first product image data 121 is acquired (step S302).
  • the inspection processing unit 334 acquires the inspection model data 411 from the inspection model storage unit 323 of the storage unit 32 shown in FIG. 1 (step S303).
  • the test processing unit 334 constructs the test neural network 401 and sets the test model data 411 acquired in step S303 (step S304).
  • the inspection processing unit 334 inputs the first product image data 121 acquired in step S302 to the inspection neural network 401, and executes the inspection (step S305).
  • the test processing unit 334 acquires the test results (step S306). Specifically, among the neurons in the output layer shown in FIG. 4B, when Z1 , which is assigned "good” indicating that the first product 11 is normal, fires, the inspection processing unit 334 11 received a normal test result. Furthermore, among the neurons in the output layer shown in FIG . Obtain test results.
  • the test processing section 334 outputs the test results to the result processing section 336 of the control section 33 shown in FIG.
  • the result processing unit 336 stores the received test results in the test result storage unit 325 of the storage unit 32 shown in FIG. 1 (step S307).
  • the inspection processing unit 334 determines whether there is an instruction to end the inspection (step S308).
  • the test completion instruction is, for example, an instruction input from the user, a stop signal from the outside, or the like. If there is an instruction to end the test (step S308; YES), the test processing unit 334 ends the test processing program. If there is no instruction to end the test (step S308; NO), the test processing unit 334 returns to step S301 and repeats the processing from step S301 onwards.
  • step S301 if the production line to be inspected is not the first production line 1 (step S301; NO), the inspection processing unit 334 stores data from the second image storage unit 322 of the storage unit 32 shown in FIG. , second product image data 221 obtained by photographing the second product 21 is acquired (step S309). The inspection processing unit 334 acquires the conversion model data 421 from the conversion model storage unit 324 of the storage unit 32 shown in FIG. 1 (step S310).
  • the inspection processing unit 334 constructs the conversion neural network 402 and sets the conversion model data 421 (step S311).
  • the inspection processing unit 334 inputs the second product image data 221 acquired in step S309 to the conversion neural network 402, and causes the conversion neural network 402 to generate converted image data 231 similar to the first product image data 121 (step S312).
  • the inspection processing unit 334 executes the processes from step S303 to step S307 on the generated converted image data 231.
  • the inspection processing unit 334 determines whether there is an instruction to end the inspection (step S308).
  • the test completion instruction is, for example, an instruction input from the user, a stop signal from the outside, or the like. If there is an instruction to end the test (step S308; YES), the test processing unit 334 ends the test processing program. If there is no instruction to end the test (step S308; NO), the test processing unit 334 returns to step S301 and repeats the processing from step S301 onwards.
  • the information processing device 3 uses the conversion neural network 402 to convert the second product image data 221 obtained by photographing the second product 21 into the first product image data obtained by photographing the first product 11. 121 into converted image data 231, and apply the converted image data 231 to the inspection neural network 401 that has learned the first product image data 121 to make a pass/fail determination.
  • Data to be inspected can also be inspected using an inspection model generated by learning data using machine learning means. Moreover, this makes it possible to reduce the effort required to newly perform learning of the test neural network 401 on the collected images.
  • one test model data 411 which is the learning result of the test neural network 401
  • one conversion model data 421, which is the learning result of the conversion neural network 402 are generated.
  • FIG. 9 is a diagram showing the configuration of the control unit 33 of the information processing device 3 in the second embodiment.
  • the control unit 33 includes a test model generation unit 332A that generates a plurality of generated test model data 411, a conversion model generation unit 333A that generates a plurality of conversion model data 421, and an optimization model of the test model data 411 and conversion model data 421. It includes a combination selection section 337 for finding combinations.
  • the test model generation unit 332A performs the test neural network 401 multiple times and stores each learning result as test model data 411A, 411B, . . . 411n in the test model storage unit 323 of the storage unit 32 shown in FIG. .
  • the conversion model generation unit 333A performs learning of the conversion neural network 402 multiple times, and stores each learning result in the conversion model storage unit 324 of the storage unit 32 shown in FIG. 1 as conversion model data 421A, 421B, ... 421n. save.
  • the subscript n is any one of the alphabets C to Z.
  • the inspection model data 411A, 411B, . . . 411n are collectively referred to as inspection model data 411A.
  • the conversion model data 421A, 421B, . . . 421n are collectively referred to as conversion model data 421A.
  • the combination selection unit 337 selects the optimal combination from among the combinations of the inspection model data 411A selected from the inspection model data 411A and the conversion model data 421A selected from the conversion model data 421A.
  • the inspection model data 411A used by the inspection processing section 334 of the control section 33 shown in FIG. 9 and the conversion model data 421A used by the conversion processing section 335 are It is assumed that model data 411A and conversion model data 421A.
  • the selection of the optimal combination of the inspection model data 411A and the conversion model data 421A by the combination selection unit 337 is performed before the information processing device 3 performs inspection processing.
  • the combination processing by the combination selection unit 337 will be described below with reference to the flowchart of the combination processing shown in FIG.
  • the flowchart of the combination processing shown in FIG. 10 is stored in the storage unit 32 of the information processing device 3 shown in FIG. 1 as a combination processing program.
  • the combination processing program is read out from the storage device 352 to the memory 354 and executed by the processor 355 shown in FIG.
  • the combination selection unit 337 acquires second product image data 221 obtained by photographing the second product 21 from the second image storage unit 322 of the storage unit 32 shown in FIG. 1 (step S401).
  • the combination selection unit 337 acquires the selected conversion model data 421A from the conversion model data 421A, 421B, ... 421n stored in the conversion model storage unit 324 of the storage unit 32 shown in FIG. 1 (step S402). .
  • the combination selection unit 337 constructs the conversion neural network 402 and sets the conversion model data 421A acquired in step S402 (step S403).
  • the combination selection unit 337 inputs the second product image data 221 acquired in step 401 to the conversion neural network 402, and generates the conversion image data 231 shown in FIG. 5A (step S404).
  • the combination selection unit 337 acquires the selected test model data 411A from the test model data 411A, 411B, ... 411n stored in the test model storage unit 323 of the storage unit 32 shown in FIG. 1 (step S405). .
  • the combination selection unit 337 constructs the test neural network 401 and sets the test model data 411A acquired in step 405 (step S406).
  • the combination selection unit 337 inputs the converted image data 231 generated in step S404 to the test neural network 401 and executes the test (step S407).
  • the combination selection unit 337 calculates the determination correct answer rate from the test results (step S408).
  • the combination selection unit 337 determines whether all combinations of the inspection model data 411A and the conversion model data 421A have been executed (step S409).
  • step S409 If all combinations of the inspection model data 411A and conversion model data 421A are executed (step S409; YES), the combination selection unit 337 finds the combination with the highest determination correct answer rate (step S410). The combination selection unit 337 ends the combination processing program. Furthermore, if all the combinations of the inspection model data 411A and the conversion model data 421A have not been executed (step S409; NO), the combination selection unit 337 returns to step S402 and repeats the processing from step S402 to step S409.
  • Embodiment 2 in addition to the effects of Embodiment 1, it is possible to obtain an optimal combination of a plurality of generated inspection model data 411A and conversion model data 421A. This makes it possible to obtain an optimal combination of the test neural network 401 and the conversion neural network 402, thereby improving test accuracy.
  • the image of the product to be inspected is stored in the first product image data 121 stored in the first image storage unit 321 of the storage unit 32 and in the second image storage unit 322 of the storage unit 32.
  • This is the stored second product image data 221.
  • the image data is not limited to this, and may be image data directly acquired from the first photographing section 12 that photographs the first product 11 and the second photographing section 22 that photographs the second product 21 shown in FIG.
  • image data taken on an external production line may be used as image data of the product to be inspected.
  • a display device may be attached to the information processing device 3 so that the test results can be presented to the user in real time.
  • the inspection model data 411 set in the inspection neural network 401 is generated using the first product image data 121 with labels of good and bad, so-called supervised. .
  • the present invention is not limited to this, and the inspection model data 411 may be generated using the first product image data 121 to which no labels of good or bad are added, so-called unsupervised data.
  • the test neural network 401 is configured by a CNN. Any machine learning method is not limited to this, as long as it is a method that learns using the first product image data 121 and can determine whether the first product image data 121 and the second product image data 221 to be inspected are good or bad. method may also be used.
  • the conversion neural network 402 is configured by GAN, any machine learning method can be used as long as it can convert the second product image data 221 into converted image data 231 similar to the first product image data 121. May be used.
  • the first product image data 121 obtained by photographing the first product 11 and the second product image data 221 obtained by photographing the second product 21 are used as data to be learned and inspected by the inspection neural network 401.
  • the converted image data 231 was used.
  • the data to be learned and tested by the testing neural network 401 is not limited to this, and may be data based on the first product 11 and the second product 21 other than image data. Further, the data learned and tested by the test neural network 401 may be test target data based on test target products other than the first product 11 and the second product 21.
  • the control unit 33 of the information processing device 3 includes both the learning unit 341 and the estimation unit 342.
  • the configuration is not limited to this, and the control unit 33 of the information processing device 3 may include only the estimation unit 342.
  • the learning unit 341 is placed outside the information processing device 3 as a learning device 341A, and generates test model data 411 and conversion model data 421 as learning results. Then, the generated test model data 411 and conversion model data 421 are acquired by the test processing unit 334 and conversion processing unit 335 of the estimation unit 342 at arbitrary timing, and set in the test neural network 401 and conversion neural network 402. Good too.
  • the learning device 341A and the information processing device 3 may be combined to form an information processing system.
  • the labeling processing unit 331, the test model generation unit 332, and the conversion model generation unit 333 included in the learning unit 341 may be separate devices. Moreover, each of these devices and the information processing device 3 may be combined to form an information processing system.
  • the inspection model data 411A and the conversion model have the highest judgment correct answer rate among the judgment correct answer rates obtained based on the inspection results of the first product image data 121 and the second product image data 221.
  • a combination of data 421A is determined.
  • the combination of inspection model data 411A and conversion model data 421A may be determined by another method.
  • configuration (1) assumes that the product image data is converted by the conversion neural network 402b to generate converted image data, and then inspected by the inspection neural network 401a.
  • configuration (2) assumes that product image data is directly inspected by the inspection neural network 401a.
  • the correct judgment answer rate obtained from the test results of configuration (1) is ⁇ %
  • the correct judgment answer rate obtained from the test results of structure (2) is ⁇ %.
  • Configuration (3) is a case where product image data is converted to generate converted image data using a conversion neural network 402c set with conversion model data 421c, and then inspected with an inspection neural network 401a set with inspection model data 411a. . Let the determination correct answer rate obtained from the test results of configuration (3) be ⁇ %.
  • the conversion model data 421c has better accuracy than the conversion model data 421b. Then, when the determination correct answer rates for configurations (1) and (3) are ⁇ > ⁇ , the combination of test model data 411a and conversion model data 421c is determined to be the optimal combination.
  • the information processing device 3 can be realized as a dedicated system. However, it can be realized using a normal computer system without using a dedicated system.
  • programs for realizing each function of the information processing device 3 described above may be stored on a computer readable CD-ROM (Compact Disc Read Only Memory) or DVD-ROM (Digital Versatile Disc Read Only Memory). recording media such as emory)
  • a computer that can realize each of the above-mentioned functions may be configured.
  • an OS Operating System
  • only the application may be stored in the recording medium.
  • the present disclosure can be suitably used in information processing devices.

Landscapes

  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

情報処理装置(3)は、第1製品に基づく第1検査対象データを検査学習手段で学習することにより生成された、検査対象製品の良否を検査するための検査モデルデータに基づいて、検査対象製品の良否を検査する検査処理部と、第2製品に基づく第2検査対象データと第1検査対象データとを変換学習手段で学習することにより生成された、第2検査対象データを第1検査対象データに類似する変換検査対象データに変換するための変換モデルデータに基づいて、検査対象製品に基づく検査対象データを変換検査対象データに変換する変換処理部と、を備える。検査処理部は、外部からの情報により検査対象製品を第1製品であると判定した場合、検査対象製品に基づく検査対象データをそのまま検査し、外部からの情報により検査対象製品を第2製品であると判定した場合、変換処理部で検査対象データから変換された変換検査対象データを検査する。

Description

情報処理装置、情報処理システム、情報処理方法、及び、プログラム
 本開示は、情報処理装置、情報処理システム、情報処理方法、及び、プログラムに関する。
 近年、製造業において検査の自動化が進められている。例えば、特許文献1には、製造ライン上で撮影した画像のうち正常画像から抽出した特徴量に基づいて正常画像を再構成するモデルを学習したニューラルネットワークにより、判定対象画像から抽出した特徴量に基づいて再構成画像を生成し、再構成画像と判定対象画像との差異情報に基づいて異常判定を行う技術が開示されている。
特開2018-005773号公報
 特許文献1に開示された技術では、異常判定を行う判定対象画像は1つの製造ラインで撮影された画像である。実際の工場では、同一製品の製造ラインは複数存在することが多い。この場合、他の製造ラインの正常画像を学習した異常判定用ニューラルネットワークを利用できれば、収集した画像のラベリング、アノテーション等の画像前処理、ニューラルネットワークの学習を新たに行う手間を削減することができる。しかし、元とは異なる製造ラインで画像を撮影した場合、製造ラインごとにカメラの取り付け方、背景の条件、照明の当たり方等の撮影時の環境が異なるため、撮影される画像も異なる。このため、元の製造ラインの画像を学習したニューラルネットワークをそのまま適用することはできないという課題がある。
 本開示は、上述の課題を解決するためになされたものであり、他の環境で収集した検査対象データを機械学習手段で学習し生成した検査モデルを用いて検査対象データの検査をすることができる情報処理装置、情報処理システム、情報処理方法、及び、プログラムを提供することを目的とする。
 上述の目的を達成するために、本開示に係る情報処理装置は、第1製品に基づく第1検査対象データを検査学習手段で学習することにより生成された、検査対象製品の良否を検査するための検査モデルデータに基づいて、検査対象製品の良否を検査する検査処理部と、第2製品に基づく第2検査対象データと第1検査対象データとを変換学習手段で学習することにより生成された、第2検査対象データを第1検査対象データに類似する変換検査対象データに変換するための変換モデルデータに基づいて、検査対象製品に基づく検査対象データを変換検査対象データに変換する変換処理部と、を備える。検査処理部は、外部からの情報により検査対象製品を第1製品であると判定した場合、検査対象製品に基づく検査対象データをそのまま検査し、外部からの情報により検査対象製品を第2製品であると判定した場合、変換処理部で検査対象データから変換された変換検査対象データを検査する。
 本開示によれば、第2製品を撮影した第2製品画像データを、第1製品を撮影した第1製品画像データに類似する画像に変換し、変換後の変換画像データを、第1製品画像データを学習したニューラルネットワークに適用して良否の検査を行うことができるため、他の環境で収集した検査対象データを機械学習手段で学習し生成した検査モデルを用いても検査対象データの検査をすることができる情報処理装置を提供することができる。
本開示の実施の形態1に係る情報処理システムの構成を示す図 本開示の実施の形態1に係る情報処理装置の制御部の構成を示す図 本開示の実施の形態1に係る情報処理装置のハードウエア構成の一例を示す図 本開示の実施の形態1に係る検査ニューラルネットワークの概要を示す図 図4Aに示した検査ニューラルネットワークの続きを示す図 本開示の実施の形態1に係る変換ニューラルネットワークの概要を示す図 図5Aに示した変換ニューラルネットワークの続きを示す図 本開示の実施の形態1に係る検査モデルデータ生成処理のフローチャート 本開示の実施の形態1に係る変換モデルデータ生成処理のフローチャート 本開示の実施の形態1に係る検査処理のフローチャート 本開示の実施の形態2に係る情報処理装置の制御部の構成を示す図 本開示の実施の形態2に係る組合せ処理のフローチャート
(実施の形態1)
 以下、本開示の実施の形態1に係る情報処理装置3および、情報処理装置3を含む情報処理システム100について、図面を参照しつつ説明する。なお、同一または同等の部分に同一の符号を付す。
 情報処理装置3は、第2製造ライン2で第2製品21を撮影した第2製品画像データ221を、第1製造ライン1で第1製品11を撮影した第1製品画像データ121に類似する画像に、変換ニューラルネットワーク402により変換し、変換後の変換画像データ231を、第1製品画像データ121を学習した検査ニューラルネットワーク401に適用して良否判定を行う。これにより、学習済の検査ニューラルネットワーク401を使用して第2製品画像データ221の良否判定を精度良く行う事ができるため、収集した画像に対してニューラルネットワークの学習を新たに行う手間を削減することができる。また、情報処理システム100は情報処理装置3を含むシステムである。
 図1に情報処理システム100の構成を示す。情報処理システム100は、第1製品11A、11B、・・・11Nを製造する第1製造ライン1と、第2製品21A、21B、・・・21Nを製造する第2製造ライン2と、撮影画像から良否判定を行う情報処理装置3とを含む。ここで、以下では、第1製品11A、11B、・・・11Nを第1製品11と総称する。また、以下では、第2製品21A、21B、・・・21Nを第2製品21と総称する。第1製品11および第2製品21は、例えば、車両、半導体部品、加工用ワーク等、完品の製品および製品を構成する部品とする。
 第1製造ライン1は、製造対象の第1製品11を製造するラインである。第1製造ライン1は、ライン内を流れる第1製品11を撮影し、第1製品画像データ121を生成する第1撮影部12を備えている。また、第2製造ライン2は、製造対象の第2製品21を製造するラインである。第2製造ライン2は、ライン内を流れる第2製品21を撮影し、第2製品画像データ221を生成する第2撮影部22を備えている。
 情報処理装置3は、第1製品画像データ121および第2製品画像データ221を取得する画像取得部31と、各種データおよびプログラムを保存する記憶部32と、各種処理を実行する制御部33とを備えている。画像取得部31は、第1製造ライン1の第1撮影部12から第1製品11を撮影した第1製品画像データ121を取得する。また、画像取得部31は、第2製造ライン2の第2撮影部22から第2製品21を撮影した第2製品画像データ221を取得する。なお、第1製品画像データ121は、請求の範囲における第1製品に基づく第1検査対象データの一例である。また、第2製品画像データ221は、請求の範囲における第2製品に基づく第2検査対象データの一例である。
 記憶部32は、第1製品画像データ121を保存する第1画像記憶部321と、第2製品画像データ221を保存する第2画像記憶部322と、後述する検査モデルデータ411を保存する検査モデル記憶部323と、後述する変換モデルデータ421を保存する変換モデル記憶部324と、検査結果を記憶する検査結果記憶部325とを含む。第1画像記憶部321は、画像取得部31により第1撮影部12から取得した第1製品画像データ121を記憶する。第2画像記憶部322は、画像取得部31により第2撮影部22からの取得した第2製品画像データ221を保存する。
 検査モデル記憶部323は、後述する検査ニューラルネットワーク401に設定する検査モデルデータ411を保存する。変換モデル記憶部324は、後述する変換ニューラルネットワーク402に設定する変換モデルデータ421を保存する。検査結果記憶部325は、後述する検査ニューラルネットワーク401により第1製品画像データ121および第2製品画像データ221を検査した検査結果を保存する。
 制御部33は、図2に示すとおり、良・不良のラベリングを行うラベル付与処理部331と、検査モデルデータ411を生成する検査モデル生成部332と、変換モデルデータ421を生成する変換モデル生成部333と、第1製品画像データ121および第2製品画像データ221を検査する検査処理部334と、第2製品画像データ221を変換する変換処理部335と、検査結果を処理する結果処理部336とを備える。
 ラベル付与処理部331は、第1製品画像データ121に良・不良のラベルを付与する。例えば、ラベル付与処理部331は、クラスタリングした第1製品画像データ121のうち、予め定められた条件に含まれる画像データを「正常」と判定し「良」のラベルを付与する。また、ラベル付与処理部331は、予め定められた条件に含まれない画像データを「異常」と判定し「不良」のラベルを付与する。
 検査モデル生成部332は、ラベル付与処理部331でラベルを付与された第1製品画像データ121を、検査ニューラルネットワーク401を学習し、学習結果に基づいて検査モデルデータ411を生成する。変換モデル生成部333は、第1製品画像データ121と、第2製品画像データ221とを入力して変換ニューラルネットワーク402を学習し、学習結果である変換モデルデータ421を生成する。なお、以下では、ラベル付与処理部331と、検査モデル生成部332と、変換モデル生成部333とを総称して学習部341と称する。なお、検査ニューラルネットワーク401は、請求の範囲における検査学習手段の一例である。また、変換ニューラルネットワーク402は、請求の範囲における変換学習手段の一例である。
 学習部341が生成した検査モデルデータ411および変換モデルデータ421は、結果処理部336に出力される。結果処理部336は、検査モデルデータ411および変換モデルデータ421を図1に示した記憶部32の検査モデル記憶部323および変換モデル記憶部324に保存する。
 検査処理部334は、検査ニューラルネットワーク401を用いて、第1製品画像データ121および第2製品画像データ221を検査する。検査処理部334の検査ニューラルネットワーク401は、結果処理部336を介して図1に示した記憶部32の検査モデル記憶部323から取得した検査モデルデータ411を設定したものである。検査処理部334は、検査結果を結果処理部336に送信する。
 変換処理部335は、変換ニューラルネットワーク402を用いて第2製品画像データ221を第1製品画像データ121に類似の変換画像データ231に変換する。変換処理部335の変換ニューラルネットワーク402は、結果処理部336を介して図1に示した記憶部32の変換モデル記憶部324から取得した変換モデルデータ421を設定したものである。変換処理部335が変換画像データ231を検査処理部334に送信すると、検査処理部334は受信した変換画像データ231に基づいて検査を行う。これにより、第1製品画像データ121を学習した検査ニューラルネットワーク401で第2製品画像データ221を検査することができる。なお、以下では、検査処理部334と変換処理部335とを総称して推定部342と称する。また、変換画像データ231は、請求の範囲における変換検査対象データの一例である。
 結果処理部336は、検査処理部334から受信した検査結果を図1に示した記憶部の検査結果記憶部325に保存する。また、結果処理部336は、検査処理部334から受信した検査結果を、情報処理装置3の外部、例えば、ユーザに提示するための表示装置、サーバ等に出力する。
 本実施の形態1おいて、図1に示した情報処理装置3で実行される各機能と、情報処理装置3の制御部33で実行される各機能とは、ソフトウェアにより実現される機能である。情報処理装置3においてソフトウェア、すなわちプログラムを実行するためのハードウエア構成の一例を、図3に示す。
 情報処理装置3は、図1に示した第1製品11を撮影する第1撮影部12および第2製品21を撮影する第2撮影部22を接続する入出力ポート351と、各種データおよびプロクラムを保存する記憶機器352と、外部と接続するための接続機器353と、各種プログラムを展開するためのメモリ354と、各種プログラムを実行するプロセッサ355とを含む。入出力ポート351と、記憶機器352と、接続機器353と、メモリ354と、プロセッサ355とは、データバス356により相互に接続している。
 入出力ポート351は、図1に示した第1撮影部12、第2撮影部22等の各種入出力機器を接続することができるポートである。入出力ポート351は、例えば、USB(Universal Serial Bus)、シリアル、パラレル等の各種接続規格に準拠した端子により構成することができる。また、第1撮影部12、第2撮影部22には、例えば、CCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等の撮像素子を用いたカメラ、ビデオカメラ等、静止画または動画を撮影し、撮影した静止画または動画を取得することが可能な各種カメラを用いることができる。
 記憶機器352は、図1に示した情報処理装置3の記憶部32として機能する機器である。記憶機器352は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)等の記憶装置を用いて構成することができる。接続機器353は、外部、例えば、ユーザに提示するための表示装置、サーバ等に検査結果を出力するための機器である。接続機器353は、表示装置の接続端子、USB、有線または無線LAN(Local Area Network)、Bluetooth(登録商標)、Wifi等の各種通信方式による機器により構成することができる。
 メモリ354は、記憶機器352に記憶された各種プログラムを展開するための機器である。メモリ354は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の揮発性または不揮発性の半導体メモリといった記憶素子および記憶媒体を用いて構成することができる。プロセッサ355は、記憶機器352に記憶された各種プログラムを読み出してメモリ354に展開し、実行する。プロセッサ355は、例えば、CPU(Central Processing Unit)、MPU(Micro-processing Unit)等の処理装置を用いて構成することができる。
 続いて、本実施の形態1において用いる検査ニューラルネットワーク401および変換ニューラルネットワーク402について、図4Aから図5Bを参照しつつ以下に説明する。図4Aおよび図4Bは、検査ニューラルネットワーク401について説明するための図である。検査ニューラルネットワーク401は、本実施の形態1では、画像データSを処理することのできる畳み込みニューラルネットワークにより構成するものとする。以下では、畳み込みニューラルネットワークのことをCNN(Convolutional Neural Network)と呼ぶ。
 CNNは、図4Aに示す入力された画像データSの特徴を畳み込む畳み込み層と、畳み込みされた画像の解像度を下げるプーリング層と、図4Bに示す畳み込んだ画像を分類する全結合層と、結果を出力する出力層とを備える。畳み込み層は、入力画像の全画素に対して、カーネルのデータと画素毎に比較しその特徴量を求め、特徴マップを生成する。なお、カーネルは、白黒であれば1つであるが、カラーであれば色の数だけ用意する必要がある。例えば、RGBの3色であれば、カーネルを3つ用意し、各カーネルにより入力画像を畳み込む。
 次に、畳み込み層で生成した特徴マップをプーリング層に入力する。プーリング層は、入力された特徴マップに対して、画像の解像度を下げるプーリング処理を行う。プーリング処理には、平均プーリングという集約方法と、最大プーリングという集約方法がある。ここでは、例えば、最大プーリングという集約方法をとるものとする。例えば、4×4サイズの特徴マップを2×2サイズに縮小する場合、特徴マップの左上の2×2サイズの領域の中で一番大きな値を持つ画素を抽出する。続いて、特徴マップの左下、右上、右下の2×2サイズの領域それぞれに対して、その領域の中で一番大きな値を持つ画素を抽出する。これにより、4×4サイズの特徴マップを2×2サイズに縮小することができる。
 畳み込み層とプーリング層とは、図4Aに示すとおり順番に複数配置される。最終のプーリング層におけるプーリング処理を終え、生成された画像データSの特徴量を、全結合層に入力する。このとき、画像データSの特徴量をフラット化し一次元の列ベクトルを生成する。例えば、最終プーリング層後の入力画像から生成された特徴量を、3×3のマトリックスのデータとする。このマトリックスのデータを、1行目の1から3列目、2行目の1から3列目、3行目の1から3列目の順で、1列に並べる。1列に並べたデータは一次元の列ベクトルとなるため、列ベクトルの各値を全結合層の入力層へ入力することができる。なお、以下では、フラット化して生成した一次元の列ベクトルを特徴ベクトルと称する。
 図4Bに示す全結合層および出力層は、複数のニューロンで構成されている。全結合層は入力層と中間層とを含む。ここで、本実施の形態1においては、中間層を1層とする。例えば、図4Bに示す3層のニューラルネットワークであれば、複数の入力が入力層X~Xに入力されると、その値に重みW11~Wnmを掛けて中間層Y~Yに入力される。中間層Y~Yに入力された結果に、さらに重みV11~V2mを掛け、出力層Z、Zから出力される。出力層Z、Zからの出力結果は、重みW11~Wnmと、重みV11~V2mの値によって変わる。なお、ここでは、nは4以上の整数とし、mは3以上の整数とする。
 まず、出力層Zのニューロンに、検査対象製品の画像データが正常な第1製品11を撮影した画像データSであることを示す「良」を設定する。つづいて出力層Zのニューロンに、検査対象製品の画像データが異常のある第1製品11を撮影した画像データSであることを示す「不良」を設定する。入力層X~Xの各ニューロンに、図4Aで示した画像データSをフラット化して生成した特徴ベクトルを入力する。
 まず、入力層X~Xの各ニューロンに、図1に示した記憶部32の第1画像記憶部321に保存された第1製品画像データ121のうち、「良」ラベルを付与された画像データSから生成された特徴ベクトルを入力する。出力層Z、Zのニューロンのうち、「良」を設定された出力層Zのニューロンが発火する状態に、重みW11~Wnmと、重みV11~V2mとを調整する。つづいて、入力層X~Xの各ニューロンに、図1に示した記憶部32の第1画像記憶部321に保存された第1製品画像データ121のうち、「不良」ラベルを付与された画像データSから生成された特徴ベクトルを入力する。出力層Z、Zのニューロンのうち、「不良」を設定された出力層Zのニューロンが発火する状態に、重みW11~Wnmと、重みV11~V2mとを調整する。
 重みW11~Wnmと、重みV11~V2mの調整は、例えば、誤差伝搬(Back Propagation)法を用いて行う。重みW11~Wnmと、重みV11~V2mを調整することは、検査ニューラルネットワーク401における学習である。また、以下では、重みW11~Wnmと、重みV11~V2mを調整することを、図2に示した検査モデル生成部332における学習と呼ぶ。検査モデル生成部332は、調整された重みW11~Wnmと、重みV11~V2mとを、検査モデルデータ411として検査モデル記憶部323に保存する。また、図2に示した制御部33の検査処理部334は、検査対象製品の画像データを検査する場合、検査ニューラルネットワーク401に検査モデル記憶部323に保存された検査モデルデータ411を設定し、検査を行う。
 次に、変換ニューラルネットワーク402について図5A、図5Bを参照しつつ、以下に説明する。変換ニューラルネットワーク402は、図1に示した第2製品21を撮影した第2製品画像データ221を、第1製品11を撮影した第1製品画像データ121に類似する変換画像データ231を生成する。検査ニューラルネットワーク401は、本実施の形態1では、例えば、入力された画像データSを他の画像データS’に変換することができる敵対的生成ネットワークにより構成するものとする。以下では、敵対的生成ネットワークをGAN(Generative Adversarial Networks)と呼ぶ。
 GANは、図5Aに示す第2製品画像データ221を入力して変換画像データ231を生成するための生成器と、図5Bに示す変換画像データ231と第1製品画像データ121とを入力して両者を識別する識別器とを含む。図5Aに示す生成部は、入力層と出力層とを含む複数のニューロンで構成されている。なお、入力層と出力層との間に、中間層を含めてもよい。ここで、入力層P~Pに入力される値は、図1に示した第2製品21を撮影した第2製品画像データ221を図4Aに示した畳み込み・プーリング処理およびフラット化して求めた特徴ベクトルとする。特徴ベクトルが入力層P~Pに入力されると、入力層の各ニューロンに入力された値に重みH11~Hnmを掛けて出力層Q~Qに入力される。
 出力層Q~Qの各ニューロンの値をQから順にQまで並べ、一次元ベクトルを生成する。生成した一次元ベクトルを、畳み込み・プーリング処理の逆の処理を行う逆畳み込み・逆プーリング処理することにより、変換画像データ231を求めことができる。
 続いて、図5Bに示す識別器は、入力層、中間層、出力層と含む複数のニューロンで構成されている。ここで、本実施の形態1においては、識別器の中間層を1層とする。例えば、図5Bに示す3層のニューラルネットワークであれば、複数の入力が入力層R~Rに入力されると、その値に重みS11~Snmを掛けて中間層K~Kに入力される。中間層K~Kに入力された結果に、さらに重みU11~Um1を掛け、出力層Dから出力される。出力層Dからの出力結果は、重みS11~Snmと、重みU11~Um1の値によって変わる。なお、ここでは、nは3以上の整数とし、mは4以上の整数とする。
 識別器は、入力層に入力した変換画像データ231と第1製品画像データ121とが類似していない場合、出力層Dから0を出力し、類似している場合出力層Dから1を出力する。変換画像データ231および第1製品画像データ121から、それぞれ生成した特徴ベクトルを入力層R~Rの各ニューロンに入力する。変換画像データ231の特徴ベクトルを入力した場合に、出力層Dの出力が1に近づく状態に重みS11~Snmと重みU11~Um1とを調整する。
 重みS11~Snmと重みU11~Um1との調整は誤差逆伝搬法により行う。誤差逆伝搬法は、まず識別器に変換画像データ231の特徴ベクトルを入力した場合の出力層Dの出力値に基づいて、誤差を求める。求めた誤差を識別器の出力層Dに入力し、中間層K~K、入力層R~Rの順に逆伝搬する。その後、図5Aに示した生成器の重みH11~Hnmを固定した状態で新たな変換画像データ231を生成し、識別器の重みS11~Snmと重みU11~Um1とを調整する処理を繰り返す。
 続いて、識別器の重みS11~Snmと重みU11~Um1を固定した状態で、まず識別器に変換画像データ231の特徴ベクトルを入力した場合の出力層Dの出力値に基づいて、誤差を求める。求めた誤差を、図5Aに示す生成器の出力層Q~Qの各ニューロンに入力し、入力層R~Rに逆伝搬し重みH11~Hnmを調整する。
 生成器の重みH11~Hnmを調整し終えたら、図5Bに示した識別器の重みS11~Snmと重みU11~Um1を調整する。生成器の重みH11~Hnmと、識別器の重みS11~Snmと重みU11~Um1の調整を繰り返し、変換画像データ231の特徴ベクトルを入力した場合に出力層Dの出力が1に近づく状態にする。生成器の重みH11~Hnmと、識別器の重みS11~Snmおよび重みU11~Um1とを調整することは、変換ニューラルネットワーク402における学習である。また、以下では、生成器の重みH11~Hnmと、識別器の重みS11~Snmおよび重みU11~Um1とを調整することを、変換モデル生成部333における学習と呼ぶ。
 調整された生成器の重みH11~Hnmと、識別器の重みS11~Snmおよび重みU11~Um1とを、変換モデルデータ421として図1に示した記憶部32の変換モデル記憶部324に保存する。また、図2に示した制御部33の変換処理部335は、検査対象製品の画像データが第2製品画像データ221である場合、変換ニューラルネットワーク402を用いて第2製品画像データ221を第1製品画像データ121に類似の変換画像データ231に変換する。その後、図2に示した制御部33の検査処理部334に構築された検査ニューラルネットワーク401で検査を行う。
 続いて、情報処理装置3における図1に示した第1製造ライン1の第1製品11および第2製造ライン2の第2製品21に対する検査処理の手順について、図6から図8に示すフローチャートを参照しつつ、以下に説明する。まず、情報処理装置3で検査処理を行う前に、検査ニューラルネットワーク401に設定する検査モデルデータ411および変換ニューラルネットワーク402に設定する変換モデルデータ421を生成する。検査モデルデータ411および変換モデルデータ421の生成については、図6に示す検査モデルデータ生成処理のフローチャート、および図7に示す変換モデルデータ生成処理のフローチャートを参照しつつ、以下に説明する。
 図6は検査モデルデータ生成処理のフローチャートは、検査モデルデータ生成処理プログラムとして図1に示した情報処理装置3の記憶部32に保存されている。図7の変換モデルデータ生成処理のフローチャートは、変換モデルデータ生成処理プログラムとして、図1に示した情報処理装置3の記憶部32に保存されている。検査モデルデータ生成処理プログラムおよび変換モデルデータ生成処理プログラムは、図3に示したプロセッサ355により記憶機器352からメモリ354に読み出され、実行される。
 まず、検査モデルデータ生成処理プログラムの動作について、図6を参照して説明する。図2に示した制御部33のラベル付与処理部331は、図1に示した記憶部32の第1画像記憶部321から第1製品画像データ121を取得する(ステップS101)。ラベル付与処理部331は、第1製品画像データ121に良・不良のラベルを付与する(ステップS102)。例えば、ラベル付与処理部331は、クラスタリングした第1製品画像データ121のうち、予め定められた条件に含まれる画像データを「正常」と判定し「良」のラベルを付与する。また、ラベル付与処理部331は、予め定められた条件に含まれない画像データを「異常」と判定し「不良」のラベルを付与する。
 つづいて、図2に示した制御部33の検査モデル生成部332は、検査ニューラルネットワーク401を構築する(ステップS103)。検査モデル生成部332は、検査ニューラルネットワーク401にステップ102で「良」のラベルおよび「不良」のラベルが付与された第1製品画像データ121を学習させ、学習結果に基づいて検査モデルデータ411を生成する(ステップS104)。具体的には、検査モデル生成部332は、調整された検査ニューラルネットワーク401の各ニューロンの重みを、検査モデルデータ411とする。
 検査モデル生成部332は、生成した検査モデルデータ411を図2に示した制御部33の結果処理部336に出力する。結果処理部336は、受信した検査モデルデータ411を、図1に示した記憶部32の検査モデル記憶部323に保存する(ステップS105)。結果処理部336は、検査モデルデータ生成処理プログラムを終了する。
 次に、変換モデルデータ生成処理プログラムの動作について、図7に示すフローチャートを参照しつつ、以下に説明する。図2に示した制御部33の変換モデル生成部333は、図1に示した記憶部32の第2画像記憶部322から第2製品画像データ221を取得する(ステップS201)。変換モデル生成部333は、図1に示した記憶部32の第1画像記憶部321から第1製品画像データ121を取得する(ステップS202)。
 変換モデル生成部333は、変換ニューラルネットワーク402を構築する(ステップS203)。変換モデル生成部333は、ステップS201で取得した第2製品画像データ221と、ステップS202で取得した第1製品画像データ121とを、変換ニューラルネットワーク402に入力し、学習させる。変換モデル生成部333は、学習結果に基づいて、変換モデルデータ421を生成する(ステップS204)。具体的には、変換モデル生成部333は、調整された変換ニューラルネットワーク402の各ニューロンの重みを、変換モデルデータ421とする。
 変換モデル生成部333は、生成した変換モデルデータ421を図2に示した制御部33の結果処理部336に出力する。結果処理部336は、受信した変換モデルデータ421を、図1に示した記憶部32の変換モデル記憶部324に保存する(ステップS205)。結果処理部336は、変換モデルデータ生成処理プログラムを終了する。
 つづいて、情報処理装置3における図1に示した第1製造ライン1の第1製品11および第2製造ライン2の第2製品21に対する検査処理の手順について、図8に示すフローチャートを参照しつつ、以下に説明する。図8の検査処理のフローチャートは、検査処理プログラムとして図1に示した情報処理装置3の記憶部32に保存されている。検査処理プログラムは、情報処理装置3で検査処理を行う場合に、図3に示したプロセッサ355により記憶機器352からメモリ354に読み出され、実行される。
 図8において、図2に示す制御部33の検査処理部334は、検査対象製品の製造ラインが第1製造ライン1か否か判定する(ステップS301)。検査対象製品の製造ラインが第1製造ライン1である場合(ステップS301;YES)、検査処理部334は、図1に示した記憶部32の第1画像記憶部321から、第1製品11を撮影した第1製品画像データ121を取得する(ステップS302)。
 検査処理部334は、図1に示した記憶部32の検査モデル記憶部323から検査モデルデータ411を取得する(ステップS303)。検査処理部334は、検査ニューラルネットワーク401を構築し、ステップS303で取得した検査モデルデータ411を設定する(ステップS304)。
 検査処理部334は、検査ニューラルネットワーク401にステップS302で取得した第1製品画像データ121を入力し、検査を実行する(ステップS305)。検査処理部334は、検査結果を取得する(ステップS306)。具体的には、図4Bに示した出力層のニューロンのうち、第1製品11が正常であることを示す「良」を割り当てたZが発火した場合、検査処理部334は、第1製品11が正常との検査結果を得る。また、図4Bに示した出力層のニューロンのうち、第1製品11が異常であることを示す「不良」を割り当てたZが発火した場合、検査処理部334は、第1製品11が異常との検査結果を得る。
 検査処理部334は、図2に示した制御部33の結果処理部336に、検査結果を出力する。結果処理部336は受信した検査結果を、図1に示した記憶部32の検査結果記憶部325に保存する(ステップS307)。検査処理部334は、検査終了の指示があったか否か判定する(ステップS308)。検査終了指示は、例えば、ユーザからの指示入力、外部からの停止信号等である。検査終了の指示があった場合(ステップS308;YES)、検査処理部334は検査処理プログラムを終了する。検査終了の指示がなかった場合(ステップS308;NO)、検査処理部334はステップS301に戻り、ステップS301以降の処理を繰り返す。
 また、ステップS301において、検査対象の製造ラインが第1製造ライン1ではなかった場合(ステップS301;NO)、検査処理部334は、図1に示した記憶部32の第2画像記憶部322から、第2製品21を撮影した第2製品画像データ221を取得する(ステップS309)。検査処理部334は、図1に示した記憶部32の変換モデル記憶部324から変換モデルデータ421を取得する(ステップS310)。
 検査処理部334は、変換ニューラルネットワーク402を構築し、変換モデルデータ421を設定する(ステップS311)。検査処理部334は、変換ニューラルネットワーク402に、ステップS309で取得した第2製品画像データ221を入力し、第1製品画像データ121に類似する変換画像データ231を生成させる(ステップS312)
 検査処理部334は生成した変換画像データ231について、ステップS303からステップS307の処理を実行する。検査処理部334は、検査終了の指示があったか否か判定する(ステップS308)。検査終了指示は、例えば、ユーザからの指示入力、外部からの停止信号等である。検査終了の指示があった場合(ステップS308;YES)、検査処理部334は検査処理プログラムを終了する。検査終了の指示がなかった場合(ステップS308;NO)、検査処理部334はステップS301に戻り、ステップS301以降の処理を繰り返す。
 以上のとおり、実施の形態1によれば、情報処理装置3は、変換ニューラルネットワーク402により第2製品21を撮影した第2製品画像データ221を、第1製品11を撮影した第1製品画像データ121に類似する変換画像データ231に変換し、変換画像データ231を、第1製品画像データ121を学習した検査ニューラルネットワーク401に適用して良否判定を行うことにより、他の環境で収集した検査対象データを機械学習手段で学習し生成した検査モデルを用いても検査対象データの検査をすることができる。また、これにより、収集した画像に対して検査ニューラルネットワーク401の学習を新たに行う手間を削減することができる。
(実施の形態2)
 実施の形態1では、検査ニューラルネットワーク401の学習結果である検査モデルデータ411と、変換ニューラルネットワーク402の学習結果である変換モデルデータ421とを1つずつ生成するものとした。しかし、検査モデルデータ411と変換モデルデータ421とをそれぞれ複数生成し、最適な組合せを求めることもできる。これにより、検査ニューラルネットワーク401と変換ニューラルネットワーク402との最適な組合せを得ることができるため、検査精度を向上することができる。
 図9は、本実施の形態2における情報処理装置3の制御部33の構成を示す図である。以下では、本実施の形態1と異なる部分を中心に示すものとする。制御部33は、複数生成された検査モデルデータ411を生成する検査モデル生成部332Aと、複数の変換モデルデータ421を生成する変換モデル生成部333Aと、検査モデルデータ411および変換モデルデータ421の最適な組合せを求める組合せ選択部337を含む。検査モデル生成部332Aは、検査ニューラルネットワーク401を複数回行い、各学習結果を検査モデルデータ411A、411B、・・・411nとして、図1に示した記憶部32の検査モデル記憶部323に保存する。
 変換モデル生成部333Aは、変換ニューラルネットワーク402の学習を複数回行い、各学習結果を変換モデルデータ421A、421B、・・・421nとして、図1に示した記憶部32の変換モデル記憶部324に保存する。ここで、添え字nは、アルファベットのCからZの何れかである。また、以下では、検査モデルデータ411A、411B、・・・411nを総称して、検査モデルデータ411Aと呼ぶ。また、以下では、変換モデルデータ421A、421B、・・・421nを総称して、変換モデルデータ421Aと呼ぶ。
 組合せ選択部337は、検査モデルデータ411Aのうち選択した検査モデルデータ411Aと、変換モデルデータ421Aのうち選択した変換モデルデータ421Aとの組合せの中から、最適な組合せを選択する。本実施の形態2では、図9に示す制御部33の検査処理部334が使用する検査モデルデータ411Aと、変換処理部335が使用する変換モデルデータ421Aとを、組合せ選択部337が選択した検査モデルデータ411Aおよび変換モデルデータ421Aとする。
 組合せ選択部337による検査モデルデータ411Aおよび変換モデルデータ421Aの最適な組合せの選択は、情報処理装置3で検査処理を行う前に実行される。組合せ選択部337による組合せ処理については、図10に示す組合せ処理のフローチャートを参照しつつ、以下に説明する。
 図10に示す組合せ処理のフローチャートは、組合せ処理プログラムとして図1に示した情報処理装置3の記憶部32に保存されている。組合せ処理プログラムは、図3に示したプロセッサ355により記憶機器352からメモリ354に読み出され、実行される。
 図10において、組合せ選択部337は、図1に示した記憶部32の第2画像記憶部322から、第2製品21を撮影した第2製品画像データ221を取得する(ステップS401)。組合せ選択部337は、図1に示した記憶部32の変換モデル記憶部324に保存された変換モデルデータ421A、421B、・・・421nから、選択した変換モデルデータ421Aを取得する(ステップS402)。
 組合せ選択部337は、変換ニューラルネットワーク402を構築し、ステップS402で取得した変換モデルデータ421Aを設定する(ステップS403)。組合せ選択部337は、変換ニューラルネットワーク402にステップ401で取得した第2製品画像データ221を入力し、図5Aに示した変換画像データ231を生成する(ステップS404)。
 組合せ選択部337は、図1に示した記憶部32の検査モデル記憶部323に保存された検査モデルデータ411A、411B、・・・411nから、選択した検査モデルデータ411Aを取得する(ステップS405)。組合せ選択部337は、検査ニューラルネットワーク401を構築し、ステップ405で取得した検査モデルデータ411Aを設定する(ステップS406)。
 組合せ選択部337は、検査ニューラルネットワーク401にステップS404で生成した変換画像データ231を入力し、検査を実行する(ステップS407)。組合せ選択部337は、検査結果から判定正答率を求める(ステップS408)。組合せ選択部337は、検査モデルデータ411Aと変換モデルデータ421Aの全ての組合せを実行したか否か判定する(ステップS409)。
 検査モデルデータ411Aと変換モデルデータ421Aの全ての組合せを実行した場合(ステップS409;YES)、組合せ選択部337は、判定正答率の一番高い組合せを求める(ステップS410)。組合せ選択部337は、組合せ処理プログラムを終了する。また、検査モデルデータ411Aと変換モデルデータ421Aの全ての組合せを実行していない場合(ステップS409;NO)、組合せ選択部337は、ステップS402に戻り、ステップS402からステップS409の処理をくり返す。
 以上のとおり、実施の形態2によれば、実施の形態1の効果に加えて、複数生成した検査モデルデータ411Aと変換モデルデータ421Aとの最適な組合せを求めることができる。これにより、検査ニューラルネットワーク401と変換ニューラルネットワーク402との最適な組合せを得ることができるため、検査精度を向上することができる。
(変形例1)
 上記の実施の形態1および2においては、検査対象製品画像は記憶部32の第1画像記憶部321に保存された第1製品画像データ121、および、記憶部32の第2画像記憶部322に保存された第2製品画像データ221とした。これに限らず、図1に示した第1製品11を撮影する第1撮影部12および第2製品21を撮影する第2撮影部22から直接取得した画像データでもよい。また、外部の製造ラインで撮影された画像データを検査対象製品の画像データとしてもよい。
(変形例2)
 上記の実施の形態1および2において、情報処理装置3に表示装置をつけ、検査結果をリアルタイムにユーザに提示できる状態にしてもよい。
(変形例3)
 上記の実施の形態1および2において、検査ニューラルネットワーク401に設定する検査モデルデータ411を、良・不良のラベルを付与した第1製品画像データ121、いわゆる教師ありを使用して生成するものとした。これに限らず、検査モデルデータ411を、良・不良のラベルを付与していない第1製品画像データ121、いわゆる教師なしデータを使用して生成してもよい。
(変形例4)
 上記の実施の形態1および2において、検査ニューラルネットワーク401をCNNにより構成するものとした。これに限らず、第1製品画像データ121を使用して学習し、検査対象の第1製品画像データ121および第2製品画像データ221の良・不良を判定できる手法であれば、いずれの機械学習手法を用いてもよい。また、変換ニューラルネットワーク402をGANにより構成するものとしたが、第2製品画像データ221を第1製品画像データ121に類似する変換画像データ231に変換できる手法であれば、いずれの機械学習手法を用いてもよい。
(変形例5)
 上記の実施の形態1および2において、検査ニューラルネットワーク401で学習および検査するデータとして、第1製品11を撮影した第1製品画像データ121および第2製品21を撮影した第2製品画像データ221を変換した変換画像データ231を用いるものとした。これに限らず、検査ニューラルネットワーク401で学習および検査するデータは、画像データ以外の第1製品11および第2製品21に基づくデータでもよい。また、検査ニューラルネットワーク401で学習および検査するデータは、第1製品11および第2製品21以外の検査対象製品に基づく検査対象データでもよい。
(変形例6)
 上記の実施の形態1および2において、図2、9に示したとおり、情報処理装置3の制御部33に学習部341と推定部342を両方備えるものとした。これに限らず、情報処理装置3の制御部33に推定部342だけを備える構成としてもよい。この場合、学習部341を情報処理装置3の外部に学習装置341Aとして配置し、学習結果である検査モデルデータ411および変換モデルデータ421を生成する。そして、生成した検査モデルデータ411および変換モデルデータ421を、推定部342の検査処理部334、変換処理部335が任意のタイミングで取得し、検査ニューラルネットワーク401、変換ニューラルネットワーク402に設定するものとしてもよい。また、学習装置341Aと情報処理装置3とを合わせて情報処理システムを構成するものとしてもよい。
 さらに、学習部341に含まれるラベル付与処理部331と、検査モデル生成部332と、変換モデル生成部333とは、それぞれ別々の装置であってもよい。また、その各装置と情報処理装置3とを合わせて情報処理システムを構成するものとしてもよい。
(変形例7)
 上記の実施の形態2において、第1製品画像データ121および第2製品画像データ221の検査結果に基づいて求めた判定正答率の中で、一番高い判定正答率の検査モデルデータ411Aと変換モデルデータ421Aの組合せを求めるものとした。しかしながら、検査モデルデータ411Aと変換モデルデータ421Aの組合せを別の方法で求めてもよい。
 例えば、検査モデルデータ411aを設定した検査ニューラルネットワーク401aと、変換モデルデータ421bを設定した変換ニューラルネットワーク402bとを用いて、任意の製造ラインで取得した製品画像データを検査したとする。このとき、製品画像データを、変換ニューラルネットワーク402bで変換して変換画像データを生成し、検査ニューラルネットワーク401aで検査する場合を構成(1)とする。また、製品画像データを直接、検査ニューラルネットワーク401aで検査する場合を構成(2)とする。構成(1)の検査結果から求めた判定正答率をα%、構成(2)の検査結果から求めた判定正答率をβ%とする。
 構成(1)および構成(2)の判定正答率がα>βとなる場合、構成(1)における検査モデルデータ411aと変換モデルデータ421bとの組合せを最適な組み合わせとする。また、構成(1)および構成(2)の判定正答率がα<βとなる場合、検査モデルデータ411aと変換モデルデータ421bとの組合せが悪いものとする。
 構成(1)および構成(2)の判定正答率がα<βとなる場合、変換モデルデータ421bの精度が低いことが考えられる。このため、変換ニューラルネットワーク402bの学習をし直し、新たな変換モデルデータ421cを求める。変換モデルデータ421cを設定した変換ニューラルネットワーク402cを用いて製品画像データを変換して変換画像データを生成し、検査モデルデータ411aを設定した検査ニューラルネットワーク401aで検査する場合を構成(3)とする。構成(3)の検査結果から求めた判定正答率をγ%とする。
 構成(2)および構成(3)の判定正答率がβ<γとなる場合、変換モデルデータ421cは変換モデルデータ421bよりも精度が良いことになる。そして、構成(1)および構成(3)の判定正答率がα>γとなる場合、検査モデルデータ411aと変換モデルデータ421cとの組合せを最適な組合せとする。
 また、本開示の実施の形態1および2では、情報処理装置3を、専用のシステムとして実現できるものとした。しかしながら、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、上述の情報処理装置3における各機能を実現するためのプログラムを、コンピュータが読み取り可能なCD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)などの記録媒体に格納して配布し、このプログラムをコンピュータにインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。そして、各機能をOS(Operating System)とアプリケーションとの分担、またはOSとアプリケーションとの協同により実現する場合には、アプリケーションのみを記録媒体に格納してもよい。
 本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この開示を説明するためのものであり、本開示の範囲を限定するものではない。すなわち、本開示の範囲は、実施の形態ではなく、請求の範囲によって示される。そして請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、この開示の範囲内とみなされる。
 本開示は、情報処理装置に好適に利用することができる。
 1 第1製造ライン、2 第2製造ライン、3 情報処理装置、11、11A-11N 第1製品、12 第1撮影部、21、21A-21N 第2製品、22 第2撮影部、31 画像取得部、32 記憶部、33 制御部、100 情報処理システム、121 第1製品画像データ、221 第2製品画像データ、231 変換画像データ、321 第1画像記憶部、322 第2画像記憶部、323 検査モデル記憶部、324 変換モデル記憶部、325 検査結果記憶部、331 ラベル付与処理部、332、332A 検査モデル生成部、333、333A 変換モデル生成部、334 検査処理部、335 変換処理部、336 結果処理部、337 組合せ選択部、341 学習部、341A 学習装置、342 推定部、351 入出力ポート、352 記憶機器、353 接続機器、354 メモリ、355 プロセッサ、356 データバス、401、401a 検査ニューラルネットワーク、402、402b、402c 変換ニューラルネットワーク、411、411A-411N、411a 検査モデルデータ、421、421A-421N、421b、421c 変換モデルデータ。

Claims (6)

  1.  第1製品に基づく第1検査対象データを検査学習手段で学習することにより生成された、検査対象製品の良否を検査するための検査モデルデータに基づいて、前記検査対象製品の良否を検査する検査処理部と、
     第2製品に基づく第2検査対象データと前記第1検査対象データとを変換学習手段で学習することにより生成された、前記第2検査対象データを前記第1検査対象データに類似する変換検査対象データに変換するための変換モデルデータに基づいて、前記検査対象製品に基づく検査対象データを前記変換検査対象データに変換する変換処理部と、
     を備え、
     前記検査処理部は、外部からの情報により前記検査対象製品を第1製品であると判定した場合、前記検査対象製品に基づく前記検査対象データをそのまま検査し、前記外部からの情報により前記検査対象製品を第2製品であると判定した場合、前記変換処理部で前記検査対象データから変換された前記変換検査対象データを検査する、
     情報処理装置。
  2.  前記検査モデルデータおよび前記変換モデルデータはそれぞれ、複数のデータが生成され、
     複数の前記検査モデルデータと複数の前記変換モデルデータの中から選択した組合せごとに前記検査対象製品を検査し、検査結果に基づいて最適な組合せを選択する組合せ選択部を備える、
     請求項1に記載の情報処理装置。
  3.  請求項1または2に記載の情報処理装置と、
     前記第1検査対象データを学習する前記検査学習手段の学習結果に基づいて、前記検査モデルデータを生成する検査モデル生成部と、
     前記第1検査対象データおよび前記第2検査対象データを学習する前記変換学習手段の学習結果に基づいて、前記変換モデルデータを生成する変換モデル生成部と、
     を含む学習装置、
     を備える、
     情報処理システム。
  4.  前記学習装置は、前記第1検査対象データのうち、予め定められた条件に基づいて、正常と判定された前記第1検査対象データに良のラベルを付与し、異常と判定された前記第1検査対象データに不良のラベルを付与するラベル付与処理部をさらに含み、
     前記検査学習手段は、前記良のラベルまたは前記不良のラベルを付与した前記第1検査対象データを学習する、
     請求項3に記載の情報処理システム。
  5.  情報処理装置が実行する情報処理方法であって、
     第1製品に基づく第1検査対象データを検査学習手段で学習することにより生成された、検査対象製品の良否を検査するための検査モデルデータに基づいて、前記検査対象製品の良否を検査し、
     第2製品に基づく第2検査対象データと前記第1検査対象データとを変換学習手段で学習することにより生成された、前記第2検査対象データを前記第1検査対象データに類似する変換検査対象データに変換するための変換モデルデータに基づいて、前記検査対象製品に基づく検査対象データを前記変換検査対象データに変換し、
     前記良否を検査する処理では、外部からの情報により前記検査対象製品を第1製品であると判定した場合、前記検査対象製品に基づく前記検査対象データをそのまま検査し、前記外部からの情報により前記検査対象製品を第2製品であると判定した場合、前記検査対象データを変換した前記変換検査対象データを検査する、
     情報処理方法。
  6.  コンピュータに、
     第1製品に基づく第1検査対象データを検査学習手段で学習することにより生成された、検査対象製品の良否を検査するための検査モデルデータに基づいて、前記検査対象製品の良否を検査する処理、
     第2製品に基づく第2検査対象データと前記第1検査対象データとを変換学習手段で学習することにより生成された、前記第2検査対象データを前記第1検査対象データに類似する変換検査対象データに変換するための変換モデルデータに基づいて、前記検査対象製品に基づく検査対象データを前記変換検査対象データに変換する処理、
     前記良否を検査する処理では、外部からの情報により前記検査対象製品を第1製品であると判定した場合、前記検査対象製品に基づく前記検査対象データをそのまま検査し、前記外部からの情報により前記検査対象製品を第2製品であると判定した場合、前記検査対象データを変換した前記変換検査対象データを検査する処理、
     を実行させるためのプログラム。
PCT/JP2022/021268 2022-05-24 2022-05-24 情報処理装置、情報処理システム、情報処理方法、及び、プログラム WO2023228282A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022562160A JP7191283B1 (ja) 2022-05-24 2022-05-24 情報処理装置、情報処理システム、情報処理方法、及び、プログラム
PCT/JP2022/021268 WO2023228282A1 (ja) 2022-05-24 2022-05-24 情報処理装置、情報処理システム、情報処理方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/021268 WO2023228282A1 (ja) 2022-05-24 2022-05-24 情報処理装置、情報処理システム、情報処理方法、及び、プログラム

Publications (1)

Publication Number Publication Date
WO2023228282A1 true WO2023228282A1 (ja) 2023-11-30

Family

ID=84488892

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/021268 WO2023228282A1 (ja) 2022-05-24 2022-05-24 情報処理装置、情報処理システム、情報処理方法、及び、プログラム

Country Status (2)

Country Link
JP (1) JP7191283B1 (ja)
WO (1) WO2023228282A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244446A (ja) * 2009-04-09 2010-10-28 Nikon Corp データ処理装置、データ処理方法およびプログラム
JP2019087044A (ja) * 2017-11-07 2019-06-06 オムロン株式会社 検査装置、データ生成装置、データ生成方法及びデータ生成プログラム
JP2019091249A (ja) * 2017-11-15 2019-06-13 オムロン株式会社 欠陥検査装置、欠陥検査方法、及びそのプログラム
JP2020177430A (ja) * 2019-04-17 2020-10-29 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
US20200401491A1 (en) * 2019-06-20 2020-12-24 Microsoft Technology Licensing, Llc Framework for testing machine learning workflows

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244446A (ja) * 2009-04-09 2010-10-28 Nikon Corp データ処理装置、データ処理方法およびプログラム
JP2019087044A (ja) * 2017-11-07 2019-06-06 オムロン株式会社 検査装置、データ生成装置、データ生成方法及びデータ生成プログラム
JP2019091249A (ja) * 2017-11-15 2019-06-13 オムロン株式会社 欠陥検査装置、欠陥検査方法、及びそのプログラム
JP2020177430A (ja) * 2019-04-17 2020-10-29 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
US20200401491A1 (en) * 2019-06-20 2020-12-24 Microsoft Technology Licensing, Llc Framework for testing machine learning workflows

Also Published As

Publication number Publication date
JPWO2023228282A1 (ja) 2023-11-30
JP7191283B1 (ja) 2022-12-16

Similar Documents

Publication Publication Date Title
Kim et al. Deep convolutional neural models for picture-quality prediction: Challenges and solutions to data-driven image quality assessment
CN108305238B (zh) 图像处理方法、装置、存储介质和计算机设备
JP7028333B2 (ja) 照明条件の設定方法、装置、システム及びプログラム並びに記憶媒体
CN110059728B (zh) 基于注意力模型的rgb-d图像视觉显著性检测方法
US11715190B2 (en) Inspection system, image discrimination system, discrimination system, discriminator generation system, and learning data generation device
JP7059883B2 (ja) 学習装置、画像生成装置、学習方法、及び学習プログラム
WO2019176990A1 (ja) 検査装置、画像識別装置、識別装置、検査方法、及び検査プログラム
WO2021208423A1 (zh) 一种基于pca学习的显卡接口机器测试方法
CN113129272A (zh) 一种基于去噪卷积自编码器的缺陷检测方法及装置
CN110307903B (zh) 一种家禽特定部位无接触温度动态测量的方法
JP2021179833A (ja) 情報処理装置、情報処理方法及びプログラム
CN110674925A (zh) 基于3d卷积神经网络的无参考vr视频质量评价方法
JP7459697B2 (ja) 異常検知システム、学習装置、異常検知プログラム、学習プログラム、異常検知方法、および学習方法
WO2023228282A1 (ja) 情報処理装置、情報処理システム、情報処理方法、及び、プログラム
US20220309612A1 (en) Image processing apparatus, image processing method, and storage medium
JP7059889B2 (ja) 学習装置、画像生成装置、学習方法、及び学習プログラム
CN114596244A (zh) 基于视觉处理和多特征融合的红外图像识别方法及***
CN114155246B (zh) 一种基于可变形卷积的输电塔销钉缺陷检测方法
CN116433647A (zh) 一种基于多任务学习的绝缘子图像质量评价方法及***
JP7070308B2 (ja) 推定器生成装置、検査装置、推定器生成方法、及び推定器生成プログラム
CN115546141A (zh) 一种基于多维度度量的小样本Mini LED缺陷检测方法及***
CN115222649A (zh) 用于对热图的图案进行检测和分类的***、设备和方法
CN112199977A (zh) 通信机房异常检测方法、装置及计算设备
US20220414826A1 (en) Image processing apparatus, image processing method, and medium
WO2022259661A1 (ja) 学習装置、学習プログラム、異常検出装置、および異常検出プログラム

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2022562160

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 22943687

Country of ref document: EP

Kind code of ref document: A1