WO2023095520A1 - 教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置 - Google Patents
教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置 Download PDFInfo
- Publication number
- WO2023095520A1 WO2023095520A1 PCT/JP2022/039841 JP2022039841W WO2023095520A1 WO 2023095520 A1 WO2023095520 A1 WO 2023095520A1 JP 2022039841 W JP2022039841 W JP 2022039841W WO 2023095520 A1 WO2023095520 A1 WO 2023095520A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data generation
- image
- defect
- teacher data
- generation device
- Prior art date
Links
- 230000007547 defect Effects 0.000 title claims abstract description 235
- 238000012549 training Methods 0.000 title claims abstract description 112
- 238000007689 inspection Methods 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000002950 deficient Effects 0.000 claims abstract description 72
- 238000010801 machine learning Methods 0.000 claims description 21
- 238000001514 detection method Methods 0.000 claims description 16
- 229910052751 metal Inorganic materials 0.000 claims description 11
- 239000002184 metal Substances 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 8
- 239000000284 extract Substances 0.000 abstract description 15
- 238000003384 imaging method Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 31
- 238000003860 storage Methods 0.000 description 29
- 238000000605 extraction Methods 0.000 description 22
- 230000005855 radiation Effects 0.000 description 21
- 238000012545 processing Methods 0.000 description 18
- 238000013075 data extraction Methods 0.000 description 15
- 238000013527 convolutional neural network Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000011176 pooling Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005266 casting Methods 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 229910052782 aluminium Inorganic materials 0.000 description 3
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000001994 activation Methods 0.000 description 2
- 230000001678 irradiating effect Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000002601 radiography Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002893 slag Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N23/00—Investigating or analysing materials by the use of wave or particle radiation, e.g. X-rays or neutrons, not covered by groups G01N3/00 – G01N17/00, G01N21/00 or G01N22/00
- G01N23/02—Investigating or analysing materials by the use of wave or particle radiation, e.g. X-rays or neutrons, not covered by groups G01N3/00 – G01N17/00, G01N21/00 or G01N22/00 by transmitting the radiation through the material
- G01N23/04—Investigating or analysing materials by the use of wave or particle radiation, e.g. X-rays or neutrons, not covered by groups G01N3/00 – G01N17/00, G01N21/00 or G01N22/00 by transmitting the radiation through the material and forming images of the material
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N23/00—Investigating or analysing materials by the use of wave or particle radiation, e.g. X-rays or neutrons, not covered by groups G01N3/00 – G01N17/00, G01N21/00 or G01N22/00
- G01N23/02—Investigating or analysing materials by the use of wave or particle radiation, e.g. X-rays or neutrons, not covered by groups G01N3/00 – G01N17/00, G01N21/00 or G01N22/00 by transmitting the radiation through the material
- G01N23/06—Investigating or analysing materials by the use of wave or particle radiation, e.g. X-rays or neutrons, not covered by groups G01N3/00 – G01N17/00, G01N21/00 or G01N22/00 by transmitting the radiation through the material and measuring the absorption
- G01N23/18—Investigating the presence of flaws defects or foreign matter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/001—Industrial image inspection using an image reference approach
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
Definitions
- the present invention relates to a training data generation device, a training data generation method, a program, and a defect inspection device.
- defects such as air bubbles, foreign matter, and cracks generated in the product are detected by visual observation of the image of the product to be inspected, and the product is determined to be good or bad. Deciding.
- Patent Document 1 a technique for adjusting the number of data for each type to be detected is applied in order to improve recognition accuracy.
- the present invention has been made in view of such circumstances, and aims to provide a training data generation device, a training data generation method, a program, and a defect inspection device that are not easily affected by the size of an inspection object.
- the processor extracts a region of 2px or more including the defective pixel to be detected from the inspection target image including the inspection target as a region of interest, and extracts the region of interest as A patch image with a patch size including the above is extracted as training data.
- the attention area is a pixel area acquired according to a specific rule, and as a result of determining whether or not each pixel area contains a defective pixel corresponding to a defect, This is an area determined to contain defective pixels.
- the specific rule is to scan the image to be inspected in random order or exhaustive order to obtain a pixel range of fixed size.
- the specific rule is that the detection target range is limited in advance to a part of the inspection target image, and the range is scanned in random order or exhaustive order, fixed Get a pixel range of size.
- the processor extracts patch images of patch size containing pixels to be distinguished from the detection target as training data from the inspection target image.
- the region of interest is determined by specifying one detection target including the detection target pixels and acquiring a certain number of pixel regions including the detection target pixels.
- the patch size is the size determined by the input of the machine learning device that creates the learning model using the training data.
- the size of the attention area is determined based on the size of the defect to be detected or the distance between the defects.
- the processor determines whether or not each attention area includes a defective pixel based on the ground truth data based on the image to be inspected.
- the distance between adjacent attention areas is equal to or less than the patch size.
- the processor determines for each defect type when determining whether or not each attention area includes a defective pixel.
- the processor adjusts the number of training data for each defect type.
- the image to be inspected is an X-ray transmission image.
- the image to be inspected is an X-ray transmission image of a cast metal part, a forged metal part, or a welded metal part.
- a region of 2px or more including the defective pixel to be detected is extracted as the target region from the inspection target image including the inspection target. and extracting a patch image of a patch size including the region of interest as teacher data.
- an area of 2px or more including the defective pixel to be detected is set as the attention area in the inspection target image including the inspection target. Extracting and extracting a patch size patch image including the region of interest as teacher data are executed.
- the defect inspection apparatus of the seventeenth aspect performs learning using teacher data created by the above-described teacher data generation device, an inspection target image acquisition unit that acquires an inspection target image, and the teacher data generation device. a defect inspection unit that detects defects in the image.
- training data generation device training data generation method, program, and defect inspection device of the present invention, it is possible to generate training data that is not easily affected by the size of the detection target, and to suppress a decrease in the accuracy of the defect detection rate.
- FIG. 1 is a block diagram showing a defect inspection system.
- FIG. 2 is a block diagram showing an example of the hardware configuration of the training data generation device.
- FIG. 3 is a block diagram showing processing functions implemented by a CPU.
- FIG. 4 is a block diagram showing an example of a machine learning device.
- FIG. 5 is a flowchart showing a teaching data generation method using the teaching data generation device of the first embodiment.
- FIG. 6 is a diagram explaining the image acquisition step.
- FIG. 7 is a diagram for explaining the attention area extraction step.
- FIG. 8 is a diagram for explaining the defective pixel determination step.
- FIG. 9 is a diagram for explaining the teacher data extraction step.
- FIG. 10 is a diagram explaining a modification of the first embodiment.
- FIG. 10 is a diagram explaining a modification of the first embodiment.
- FIG. 11 is a diagram for explaining the region extraction step, defective pixel determination step, and teacher data extraction step of the second embodiment.
- FIG. 12 is a diagram for explaining the region extraction step, defective pixel determination step, and teacher data extraction step of the third embodiment.
- FIG. 13 is a diagram for explaining the defective pixel determination step when multiple types of defects are included.
- FIG. 14 is a diagram explaining the teacher data extraction step in the case of FIG.
- FIG. 15 is a block diagram showing a configuration example of a defect inspection device.
- FIG. 16 is a block diagram showing a configuration example of an imaging system.
- FIG. 17 conceptually shows the average Gas, FMLD, and FMMD sizes.
- FIG. 1 is a block diagram showing a defect inspection system.
- the defect inspection system 10 performs defect inspections involving machine learning on inspection objects (hereinafter also referred to as inspected objects) such as industrial products, for example. It includes a generation device 100 and a defect inspection device 200 .
- the training data generation device 100 receives an input of a training image P10, which is an inspection target image obtained by photographing an inspection target, and based on the training image P10, generates a teacher used for learning by the machine learning device 140 (see FIG. 4).
- the training image P10 is an image including a sample of defects to be detected, and is an industrial product or the like identical or similar to the object to be inspected OBJ (see FIG. 16) to be inspected by the defect inspection apparatus 200. It is an image obtained by imaging.
- the training image P10 may be an image of an object to be inspected in which a defect naturally occurs during use of the object, or an image of an object to be inspected to which defects are artificially added. good too.
- the training image P10 for example, one provided as a sample by the designer or operator of the facility where the object to be inspected is installed can be used.
- the training image P10 is, for example, an X-ray transmission image.
- this X-ray transmission image is, for example, an X-ray transmission image of a cast metal part, a forged metal part, or a welded metal part.
- the learning model learned by the machine learning device 140 is used in the defect inspection device 200.
- a learning model can be incorporated into the defect inspection apparatus 200 .
- the defect inspection system 200 can utilize built-in learning models.
- the learning model can be installed in a server on the network connected to the defect inspection apparatus 200.
- FIG. The defect inspection device 200 can use the learning model of the server via the network.
- the defect inspection apparatus 200 can use a learning model learned for each industrial product to be inspected.
- FIG. 2 is a block diagram showing an example of the hardware configuration of the training data generation device 100 according to the present invention.
- a computer or workstation can be used as the training data generation device 100 shown in FIG.
- the training data generation device 100 of this example mainly includes an input/output interface 112, a storage unit 116, an operation unit 118, a CPU (Central Processing Unit) 120, a RAM (Random Access Memory) 122, and a ROM (Read Only Memory) 124. , and a display control unit 126 .
- a display device 130 constituting a display is connected to the training data generation device 100 , and display is performed on the display device 130 under the control of the display control section 126 under the command of the CPU 120 .
- the input/output interface 112 can input various data (information) to the training data generation device 100 .
- data stored in storage unit 116 is input via input/output interface 112 .
- the input/output interface 112 can communicate with external devices via a network. Wired communication or wireless communication (for example, LAN (Local Area Network), WAN (Wide Area Network), Internet connection, etc.) can be used as a method for transmitting and receiving data between the training data generation device 100 and an external device. .
- Wired communication or wireless communication for example, LAN (Local Area Network), WAN (Wide Area Network), Internet connection, etc.
- the CPU 120 reads out various programs including the teacher data generation program of the embodiment stored in the storage unit 116, ROM 124, or the like, develops them in RAM 122, and performs calculations, thereby controlling each unit in an integrated manner. Also, the CPU 120 reads programs stored in the storage unit 116 or the ROM 124 , performs calculations using the RAM 122 , and performs various processes of the teacher data generating apparatus 100 . The CPU 120 receives an operation input from the operator via the operation unit 118, transmits a control signal corresponding to the operation input to each unit of the teacher data generation device 100, and controls the operation of each unit.
- the storage unit (memory) 116 is a memory configured by a hard disk device, eMMC (embedded Multi Media Card), flash memory such as SSD (Solid State Drive), and the like.
- the storage unit 116 stores data and programs for operating the teaching data generation device 100, such as an operating system and a program for executing the teaching data generation method.
- the storage unit 116 also stores information and the like used in the embodiments described below.
- the operation unit 118 includes a keyboard and mouse, and the user can cause the teacher data generation device 100 to perform necessary processing via these devices.
- the display device 130 may also function as an operation unit.
- the display device 130 is, for example, a device such as a liquid crystal display, and can display various information.
- FIG. 3 is a diagram showing an example of a block diagram showing processing functions realized by the CPU 120. As shown in FIG.
- the CPU 120 includes an image acquisition unit 151, an area extraction unit 152, a defective pixel determination unit 153, a teacher data extraction unit 154, and the like.
- the image acquiring unit 151, the area extracting unit 152, the defective pixel determining unit 153, the teacher data extracting unit 154, etc. are part of the CPU 120, and the CPU 120 executes the processing of each unit.
- the image acquisition unit 151 executes processing for acquiring the training image P10 via the input/output interface 112.
- the image acquisition unit 151 can acquire the training image P10 through communication via a network, for example.
- a USB (Universal Serial Bus) cable, Bluetooth (registered trademark), infrared communication, etc. may be used, and the training image P10 may be attached to and detached from the teacher data generation device 100 and a readable storage medium (for example, memory card), and the image acquisition unit 151 may acquire the training image P10 via this storage medium.
- the training image P10 can be stored in the storage unit 116 of the training data generation device 100, and the image acquisition unit 151 can acquire the training image P10 from the storage unit 116 via the input/output interface 112.
- the region extraction unit 152 executes processing for extracting a plurality of regions from the training image P10 acquired by the image acquisition unit 151.
- the area is a pixel area of 2px or more.
- the region may be of fixed size in this process.
- the area extraction unit 152 sets a virtual frame having a size corresponding to a region of interest, which will be described later, and scans this frame over the training image P10 while extracting an image within the frame (one of the training images P10). A plurality of regions are extracted by cutting out the part).
- the region extracting unit 152 can arbitrarily set the slide width for scanning the frame and the order of scanning, and this arbitrary setting can be used as a specific rule. For example, it is preferable that the slide width of the frame is equal to or less than a patch size, which will be described later, and as a result, it is preferable that the distance between adjacent regions be equal to or less than the patch size.
- the defective pixel determining unit 153 determines whether or not each of the plurality of regions extracted by the region extracting unit 152 includes at least some defective pixels corresponding to defects.
- the defective pixel determining unit 153 extracts a region including at least a part of defective pixels as a region of interest. That is, the region of interest is a pixel region obtained by the region extraction unit 152 according to a specific rule, and the defective pixel determination unit 153 determines whether or not each pixel region includes a defective pixel corresponding to a defect. This is an area determined to include defective pixels to be detected.
- the defective pixel determining unit 153 acquires information for extracting a region including at least a part of defective pixels as a region of interest.
- the defective pixel determination unit 153 preferably acquires ground truth data corresponding to the training image P10 when determining whether or not the region includes defective pixels corresponding to defects.
- the ground truth data includes position information in units of one pixel (1px) corresponding to the entire image (all pixels) of the training image P10, information such as whether or not it is a defect area, and defect type.
- the teacher data extracting unit 154 refers to the ground truth data and extracts a patch image with a patch size including defective pixels from the region of interest as teacher data.
- the teacher data extraction unit 154 extracts the patch image of the patch size extracted from the region of interest and the correct data as one set as teacher data.
- the correct data is, for example, a mask image in which the defect area existing in the patch size is filled.
- FIG. 4 is a block diagram showing an example of a machine learning device 140 that uses teacher data.
- the machine learning device 140 shown in FIG. 4 is composed of a learning model (a convolution neural network (CNN: Convolution Neural Network) 142, which is one of the learning models), a loss value calculator 144, and a parameter controller 146.
- a learning model a convolution neural network (CNN: Convolution Neural Network) 142, which is one of the learning models
- CNN Convolution Neural Network
- This machine learning device 140 uses the teacher data generated by the teacher data generation device 100 to cause the CNN 142 to perform machine learning.
- the teacher data generated by the teacher data generation device 100 is stored in the memory 148, for example.
- the CNN 142 is a part for inferring the region of the defect captured in the input image when the patch image of the patch size extracted from the region of interest is used as the input image.
- a weight parameter is a filter coefficient of a filter called a kernel used for convolution calculation in a convolution layer.
- the patch size of the image extracted from the region of interest matches the patch size (for example, m ⁇ n:m, where n is an integer) determined by the input used for the machine learning device 140 in the neural network.
- the CNN 142 can change from an unlearned learning model to a learned learning model by updating the weight parameter from the initial value to the optimum value.
- This CNN 142 comprises an input layer 142A, an intermediate layer 142B having multiple sets of convolution layers and pooling layers, and an output layer 142C, each layer having a structure in which multiple "nodes" are connected by “edges.” It's becoming
- a learning image which is a learning target, is input to the input layer 142A as an input image.
- the learning image is a patch-sized patch image among the teacher data (a pair of patch-sized patch image and correct data) stored in the memory 148 .
- the intermediate layer 142B has multiple sets of convolution layers and pooling layers, and is a part that extracts features from the image input from the input layer 142A.
- the convolutional layer filters (convolves with filters) the nodes that are nearby in the previous layer to get a "feature map”.
- the pooling layer reduces the feature map output from the convolution layer to a new feature map.
- the “convolution layer” plays a role of extracting features such as edge extraction from an image, and the “pooling layer” plays a role of providing robustness so that the extracted features are not affected by translation or the like.
- the intermediate layer 142B is not limited to the case where the convolution layer and the pooling layer are set as one set, and may include a case where convolution layers are continuous, an activation process by an activation function, and a normalization layer.
- the output layer 142C is a part that outputs a feature map indicating features extracted by the intermediate layer 142B.
- the output layer 142C outputs an inference result obtained by, for example, region classification (segmentation) of defects appearing in the input image in units of pixels or in units of clusters of several pixels.
- Arbitrary initial values are set for the filter coefficients and offset values applied to each convolution layer of the CNN 142 before learning.
- the loss value calculation unit 144 functioning as a learning control unit and the loss value calculation unit 144 out of the parameter control unit 146 obtains the feature map output from the output layer 142C of the CNN 142 and the correct answer for the input image (patch size patch image).
- the mask image (correct data read out from the memory 148) is compared with the data, and the error (loss value, which is the value of the loss function) between the two is calculated.
- Loss value calculation methods include, for example, softmax cross entropy and sigmoid.
- the parameter control unit 146 adjusts the weighting parameters of the CNN 142 by error backpropagation based on the loss value calculated by the loss value calculation unit 144.
- the error is backpropagated in order from the last layer, the stochastic gradient descent method is performed in each layer, and parameter update is repeated until the error converges.
- This weight parameter adjustment process is repeated, and learning is repeated until the difference between the output of the CNN 142 and the correct data becomes small.
- the machine learning device 140 repeats machine learning using the learning data stored in the memory 148, so that the CNN 142 becomes a trained model.
- R-CNN (Regions with Convolutional Neural Networks) can be applied.
- R-CNN a bounding box whose size is changed is slid in the photographed image to detect the area of the bounding box containing the defect. Defects are then detected by evaluating (extracting CNN features) only the image portion within the bounding box.
- R-CNN Fast R-CNN, Faster R-CNN, Mask R-CNN, etc. can be used instead of R-CNN.
- the inference result of the learned learning model configured in this way is used in the defect inspection apparatus 200 as shown in FIG.
- the teacher data generation method includes, for example, a step of acquiring an image including an inspection target (step S1), a step of extracting a plurality of regions (step S2), and a defect in the extracted region. It comprises a step of determining whether or not a corresponding defective pixel is included (step S3), and a step of extracting a patch image of a patch size including the defective pixel as teacher data (step S4).
- step S1 an image including an inspection target is acquired.
- the image acquisition unit 151 of the CPU 120 acquires an image (training image P10) including an inspection target (step S1).
- FIG. 6 is a diagram explaining the image acquisition step (step S1).
- the training image P10 includes a plurality of defects D, one of which is a large-sized defect D1 and another of which is a smaller-sized defect D2.
- the training image P10 is, for example, an image of an inspected object in which a defect naturally occurs during use of the inspected object.
- step S2 a plurality of regions are extracted from the training image P10.
- the area extraction unit 152 of the CPU 120 extracts a plurality of areas (pixel areas of 2px or more) from the training image P10 (step S2).
- FIG. 7 is a diagram explaining the region extraction step (step S2).
- the area extraction unit 152 sets a virtual frame F having a size corresponding to the area AR in order to extract the area AR.
- the area AR is a pixel area of 2px or more and has a fixed size
- the frame F corresponding to the area AR also has a fixed size.
- This virtual frame F is scanned on the training image P10, and the area surrounded by the frame F is extracted as the area AR.
- the regions surrounded by the frame F are extracted as a plurality of regions AR from the entire region of the training image P10. be done.
- the frame F is scanned with a predetermined slide width. For example, at 0700B, frame F is scanned at the slide width of frame F (one times frame F).
- the area extraction unit 152 scans the frame F over the entire area of the training image P10 to extract the area AR.
- the area AR for example, 32 areas AR are extracted.
- the frame F when acquiring the area AR from the training image P10, the frame F is scanned starting from the left end of the first stage and toward the right end, and acquisition of the area AR of the first stage is completed. Next, scanning is performed from the left end to the right end in the second stage, and acquisition of the area AR in the second stage is completed. Similar scanning is repeated until the final stage. In the final stage, scanning is performed from the left end to the right side, and acquisition of the area AR in the final stage is completed. Therefore, a particular rule is to scan the training image P10 in exhaustive order and obtain an area AR that is a fixed-size pixel range for the entire area of the training image P10.
- the slide width for scanning the frame F can be arbitrarily set.
- the training image P10 is scanned in random order to obtain an area AR, which is a fixed size pixel range for the entire area of the training image P10.
- the frame F is scanned in random order to obtain an area AR, which is a fixed size pixel range for the entire area of the training image P10.
- the area AR may be obtained not only for the entire area of the training image P10 but also for a part of the training image P10. .
- the number of areas AR extracted from the training image P10 can be increased by reducing the distance between adjacent areas AR.
- the number of the attention areas IR including defective pixels are extracted from the area AR, the number of the attention areas IR to be extracted can be increased by increasing the number of the areas AR. Considering the number of areas AR, the distance between adjacent areas AR may be determined.
- step S3 it is determined whether or not each area AR contains a defective pixel corresponding to a defect.
- the defective pixel determining unit 153 of the CPU 120 determines whether or not the area AR includes defective pixels corresponding to the defect D (including the defect D1 and the defect D2) (step S3).
- the areas AR are set as the attention areas IR, and the attention areas IR are extracted in step S3.
- FIG. 8 is a diagram explaining the defective pixel determination step (step S3).
- the defective pixel determination unit 153 acquires information of ground truth data GT (correct data) that serves as a reference for determining the presence or absence of defective pixels.
- ground truth data GT correct data
- the ground truth data GT defines correct answers such as defect, background (no defect), defect type, etc., in units of pixels for each region with respect to the training image P10 of 0800A.
- the definition of correct answer can be predetermined by the user and can be changed.
- the types of defects are distinguished and labeled.
- the "flaw” or "defect” may be distinguished in advance by a "flaw” label or a "defect” label.
- the size, shape, and distribution may be used to distinguish between a "flaw” and a “defect” later (by looking at the detection results). .
- the learning model also detects the type of "gas defect".
- defects peculiar to weld metal include (1) spatter, (2) undercut, (3) slag entrainment, and (4) poor penetration.
- the defective pixel determination unit 153 determines whether defective pixels are included in the plurality of areas AR obtained in step S2 shown in 0800C based on the ground truth data GT. In step S3, the defective pixel determining unit 153 determines whether or not each pixel area includes a defective pixel corresponding to a defect from the area AR, which is a pixel area acquired according to a specific rule. A region determined to include a defective pixel (defect D1 or D2) is extracted as a region of interest IR. At 0800C, four regions of interest IR including part of the defect D1 are extracted, and four regions of interest IR including part of the defect D2 are extracted.
- step S4 a patch image IM having a patch size including the attention area IR is extracted as teacher data TD for the attention area IR in which the defective pixel Dp exists.
- the teacher data extraction unit 154 of the CPU 120 extracts a patch image IM having a patch size including the attention area IR as the teacher data TD in the case of the area AR including the defective pixel Dp.
- a patch image IM having a patch size including the attention area IR is extracted as the training data TD, it is preferable that the distance between the adjacent attention areas IR is equal to or less than the patch size. It is possible to reliably extract teacher data from the training image P10.
- the size of the region of interest IR is preferably determined based on the size of defects or the distance between defects. By setting the attention area IR to an appropriate size, it is possible to avoid including different defects in one attention area IR. Also, the imbalance in the number of extracted defects D1 and D2 can be corrected.
- the size of the defect is, for example, about 100 ⁇ m or more and 15 mm or less. At this time, if the resolution of the image is 100 ⁇ m/px, the size of the attention area IR is 192 px, and the patch size described later can be 128 px.
- the size of the attention area IR can be determined.
- these numerical values are examples and are not limited to these numerical values.
- FIG. 9 is a diagram explaining the teacher data extraction step (step S4).
- four regions of interest IR including the defective pixel Dp of the large-sized defect D1 are extracted from the training image P10.
- Patch images IM each having a patch size (m ⁇ n) each containing a defective pixel Dp are extracted from the four attention areas IR, and pairs of four correct data CD corresponding to the four patch images IM are training data. extracted as TD.
- the patch image IM of the patch size from a plurality of attention areas IR of 2px or more is used as the training data TD. more people) can be mitigated. Areas containing minute defects are equally extracted as training data TD in the same manner as areas containing other large defects.
- a patch image IM having a patch size including defective pixels is extracted as teacher data TD1.
- a patch image IM having a patch size including pixels is extracted as teacher data TD2.
- FIG. 10 is a diagram explaining the teacher data extraction step (step S4) of the modified example.
- four regions of interest IR including defective pixels Dp (not shown) of a large-sized defect D1 are extracted from the training image P10.
- Patch images IM each having a patch size including the defective pixel Dp are extracted from the four attention areas IR for the defect D1. extracted.
- patches of interest IR including the defective pixel Dp of the defect D2 are extracted from the training image P10.
- Patch images IM each having a patch size including the defective pixel Dp are extracted from the four attention areas IR for the defect D1. extracted.
- FIG. 11 is a diagram for explaining the region extraction step (step S2), the defective pixel determination step (step S3), and the teacher data extraction step (step S4) in another mode.
- one inspection object including the pixel to be detected here, the defect D1 or the defect D2 is specified as one inspection object, and one pixel area including the pixel to be detected is specified as one inspection object.
- a fixed number is acquired and focused area IR is performed.
- a certain number of areas of interest IR are extracted from one inspection target, and teacher data TD is extracted from the area of interest IR, so a certain number of teacher data TD including the detection target can be extracted from one inspection target. Therefore, as a result, the teacher data TD can be equally extracted from the area containing the minute defect D2 and the area containing the other large defect D1.
- the area extraction unit 152 sets a virtual frame F to extract the area AR from the training image P10, and extracts the area surrounded by the frame F as the area AR. .
- the defect D1 is divided into four by vertical and horizontal lines passing through the barycentric coordinates of the defect D1 so as to include the pixel region of the defect D1 to be detected. interest regions IR are extracted.
- the defect D2, which is a detection target is divided into four by vertical and horizontal lines passing through the barycentric coordinates, and four regions of interest IR are extracted.
- the defect D1 or the defect D2 is specified as one inspection target as a continuous area.
- an external open source library can be used to extract from the moment of the figure, and further the center of gravity can be estimated. If a simple-looking "central point" is acceptable, it is also possible to obtain a bounding rectangle and use its central coordinates. Note that the method of obtaining the center-of-gravity position is not limited to these.
- a teacher data extraction step step S4
- patch images IM having a patch size are extracted so as to include defective pixels Dp present in each attention area IR that divides the defect D into four.
- D1 and D2) can extract four teacher data TD. Therefore, the same number of teacher data TD is extracted for both the area containing a small defect and the area containing other large defects.
- the learning accuracy of the machine learning device 140 can be improved.
- FIG. 12 is a diagram for explaining the region extraction step (step S2) and defective pixel determination step (step S3).
- step S2 region extraction step
- step S3 defective pixel determination step
- the area extraction unit 152 sets a virtual frame F to extract the area AR from the training image P10, and extracts the area surrounded by the frame F as the area AR.
- the training image P10 shows, for example, the case of learning to detect defects occurring on the weld line WL.
- a plurality of areas AR are extracted by scanning the frame F while giving a restriction that the welding line WL (straight line with a one-dimensional width in the horizontal direction) is included in part.
- the detection target range is limited in advance to a part of the inspection target image, and is limited to one dimension in the horizontal direction here. Within this range, the frame F is scanned in random or exhaustive order to obtain an area AR, which is a fixed size pixel range.
- step S3 it is determined whether or not the area AR includes the defect D (defects D1 and D2) to be detected, and the area AR is extracted as the attention area IR.
- step S4 a patch image IM (not shown) having a patch size is extracted so as to include the defective pixel Dp present in the attention area IR, thereby extracting the teacher data TD). be able to.
- patch images of a patch size are extracted from the attention area IR, so the same number of teacher data TD are extracted for areas containing small defects and areas containing other large defects.
- a mask is used to separate the area where the subject is shown from the content that is only the background, and the background part that is not shown is treated as a "normal area".
- a plurality of regions of interest IR are extracted so that they are not treated equally.
- the teacher data TD can be extracted only from the area where the part exists, and the learning accuracy of the machine learning device 140 can be improved.
- FIG. 13 is a diagram explaining the defective pixel determination step (step S3) including a plurality of types of defects.
- training image P10 contains four defects D1, D2, D3 and D4.
- Defects D1 and D2 are defects classified into the same type and have different sizes.
- Defects D3 and D4 are defects classified into the same type, but have different sizes.
- the defects D1 and D2 and the defects D3 and D4 are defects of different types.
- the defective pixel determination unit 153 acquires information of ground truth data GT (correct data) that serves as a reference for determining the presence or absence of defective pixels.
- the ground truth data GT defines correct answers such as defects in pixel units in each region, background (no defects), and types of defects for the training image P10 in 1300A.
- the definition of the correct answer for each area can be defined in advance by the user.
- Defects D1 and D2 are defined as defect type A
- defects D3 and D4 are defined as defect type B in 1300B.
- step S3 the defective pixel determining unit 153 determines whether or not the plurality of areas AR obtained in step S2 shown in 1300C includes defective pixels based on the ground truth data GT. extracted.
- FIG. 14 is a diagram explaining the teacher data extraction step (step S4). As shown in FIG. 14, it is determined whether or not a plurality of attention areas IR includes a defective pixel, and patch images IM each having a patch size of each of the four attention areas IR are extracted for the defect D1. Patch images IM each having a patch size are extracted for each of the four attention areas IR for the defect D2. Four patch images IM are extracted from the defect D1, and four patch images IM are extracted from the defect D2. Patch images IM each having a patch size are extracted for each of the four attention areas IR for the defect D3. Patch images IM each having a patch size are extracted for each of the two attention areas IR for the defect D4. Four patch images IM are extracted from defect D3, and two patch images IM are extracted from defect D4. In order to facilitate understanding, the correct data CD is omitted.
- patch images IM are extracted for defect type A
- six patch images IM belonging to defect type B are extracted.
- the patch images IM of the two defects D4 are extracted.
- the number of extracted patch images IM is different for defect type A and defect type B, which are different types. In order to equalize the learning accuracy between defect types A and B, it is preferable to apply oversampling and adjust the number of teacher data TD to be extracted so that the defect types are equal.
- the number of each type may be adjusted to a predetermined number.
- the number of teacher data TD extracted from defect types A and B is 20.
- the number of teacher data TD for defect type A and defect type B is twenty.
- the number of other types may be adjusted so that it is the maximum number in each type.
- the defect type A has eight teaching data TD.
- defect type B has six teacher data TD. Eight of the defect type A is the maximum number among the types. Therefore, from defect type B, two additional teacher data TD are extracted. The number of teacher data TD for defect type A and defect type B is eight.
- the number of extracted teacher data TD can be adjusted to be the same among the types, and the imbalance in the number of samples caused by the defect type can be improved.
- a computer or workstation can be used as the defect inspection apparatus 200 shown in FIG.
- the defect inspection apparatus 200 of this example mainly includes an input/output interface 212 , a storage section 216 , an operation section 218 , a CPU 220 , a RAM 222 , a ROM 224 and a display control section 226 .
- a display device 230 constituting a display is connected to the defect inspection apparatus 200 , and display is performed on the display device 230 under the control of the display control section 226 under the command of the CPU 220 .
- the input/output interface 212 can input various data (information) to the defect inspection apparatus 200 .
- data stored in the storage unit 216 is input via the input/output interface 212 .
- the input/output interface 212 can communicate with external devices via a network. Wired communication or wireless communication (for example, LAN (Local Area Network), WAN (Wide Area Network), Internet connection, etc.) can be used as a method of transmitting and receiving data between the defect inspection apparatus 200 and an external device.
- Wired communication or wireless communication for example, LAN (Local Area Network), WAN (Wide Area Network), Internet connection, etc.
- the CPU (processor) 220 reads out various programs including the defect inspection program of the embodiment stored in the storage unit 216 or the ROM 224 or the like, develops them in the RAM 222 and performs calculations, thereby centrally controlling each unit. Further, the CPU 220 reads programs stored in the storage unit 216 or the ROM 224 , performs calculations using the RAM 222 , and performs various processes of the defect inspection apparatus 200 . The CPU 220 receives an operation input from the operator via the operation unit 218 and transmits a control signal corresponding to the operation input to each unit of the defect inspection apparatus 200 to control the operation of each unit.
- the storage unit 216 is a memory composed of a hard disk device, flash memory such as eMMC, SSD, or the like.
- the storage unit 216 stores data and programs for operating the defect inspection apparatus 200, such as an operating system and a program for executing defect inspection.
- the storage unit 216 also stores information and the like used in the embodiments described below.
- the operation unit 218 includes a keyboard and mouse, and the user can cause the defect inspection apparatus 200 to perform necessary processing via these devices.
- the display device 230 also functions as an operation unit.
- the display device 230 is, for example, a device such as a liquid crystal display, and can display various information.
- the CPU 220 includes an inspection target image acquisition unit 240 and a defect inspection unit 242 .
- the inspection object image acquiring unit 240 acquires an inspection object image P30, which is an image of the object to be inspected OBJ captured by the imaging system 300 or the like, via the input/output interface 212 .
- the defect inspection unit 242 inspects the inspection object image P30 for defects.
- the inspection target image P30 is acquired by the imaging system 300, which will be described later.
- the defect inspection unit 242 uses a learning model learned by the machine learning device 140 (see FIG. 4) to determine the presence or absence of a defect (defect or non-defect) and the type of defect.
- the result of defect inspection by the defect inspection section 242 is displayed on the display device 230 .
- the learning model is learned by the teacher data TD generated by the teacher data generation device 100.
- FIG. Also, the learning model is updated according to the situation.
- FIG. 16 is a block diagram schematically showing a configuration example of the imaging system 300.
- the imaging system 300 is for imaging an object to be inspected OBJ placed in an imaging room 314, and includes an imaging control unit 302, an imaging operation unit 304, an image storage unit 306, a camera 308, and radiation sources 310 and 312. I have it.
- a shooting control unit 302 includes a CPU that controls the operation of each unit of the shooting system 300 .
- An imaging control unit 302 receives an operation input from an operator (photographer) via an imaging operation unit 304, and transmits a control signal corresponding to the operation input to each unit of the imaging system 300 to control the operation of each unit.
- the imaging operation unit 304 includes an input device that receives operation inputs from the operator. Via the imaging operation unit 304, the operator inputs information about the object to be inspected OBJ, inputs instructions for imaging conditions to the camera 308 and instructions to execute imaging, inputs instructions for radiation irradiation conditions for the radiation sources 310 and 312, It is possible to input an instruction to store an inspection object image P30 (not shown) obtained by imaging in the image storage unit 306, or the like.
- the shooting conditions include, for example, shooting conditions such as exposure time and focal length, shooting angle, shooting location, and the like.
- Radiation irradiation conditions include irradiation start time, irradiation duration, irradiation angle, irradiation intensity, and the like.
- conditions related to irradiation intensity include tube current and tube voltage.
- the image storage unit 306 stores an inspection target image P30 (received light image data) of the object to be inspected OBJ photographed by the camera 308 .
- Information for specifying the object to be inspected OBJ is stored in the image storage unit 306 in association with the image data.
- the camera 308, for example, a method (DDA: Digital Detector Array, digital detector) or IP (Imaging Plate) to store signals and digitize them with an external reader (CR: computed radiography).
- a camera 308 and radiation sources 310 and 312 are arranged inside an imaging room 314 .
- the radiation sources 310 and 312 are, for example, X-ray sources, and the partition walls and entrances between the imaging room 314 and the outside are X-ray protected by X-ray protective materials (for example, lead, concrete, etc.). there is In the case of irradiating the object OBJ with visible light for imaging, it is not necessary to use the protected imaging room 314 .
- the radiation sources 310 and 312 irradiate the subject OBJ placed in the imaging room 314 with radiation according to the instructions from the imaging control unit 302 .
- the camera 308 irradiates the object to be inspected OBJ from the radiation source 310 and is reflected by the object to be inspected OBJ from the radiation source 310 or the radiation emitted from the radiation source 312 to the object to be inspected OBJ in accordance with the instruction to execute imaging from the imaging control unit 302 .
- the object to be inspected OBJ is held in an imaging room 314 by a holding member (for example, a manipulator, a mounting table, or a movable mounting table) (not shown).
- the distance and angle to 312 are adjustable. The operator can control the relative positions of the object to be inspected OBJ, the camera 308, and the radiation sources 310 and 312 via the imaging control unit 302, so that a desired portion of the object to be inspected OBJ can be imaged. .
- the radiation sources 310 and 312 finish irradiating the object to be inspected OBJ with radiation in synchronization with the end of the execution of imaging by the camera 308 .
- the number of cameras and radiation sources is not limited to this.
- the imaging control unit 302, the imaging operation unit 304, and the image storage unit 306 can be implemented using a combination of computer hardware and software.
- the defect inspection apparatus 200 may be communicably connected to the imaging system 300 , or the defect inspection apparatus 200 may function as an imaging control section 302 , an imaging operation section 304 and an image storage section 306 of the imaging system 300 . may
- the average number of samples (the number of training data) before and after the training data generation method of the embodiment is applied to images containing defects was calculated.
- the average number of samples was calculated by using 261 aluminum casting images as the training image P10, and dividing the number of samples extracted from the 261 aluminum casting images by the total number of defects for each defect size.
- the aluminum casting image contained defects of different sizes: FMMD, FMLD and Gas.
- FIG. 17 is a diagram conceptually showing the average Gas, FMLD and FMMD sizes. Assuming that the length of Gas is 1, FMLD is about 2 to 6 times longer, and FMMD is about 30 to 50 times longer. For FMMD, FMLD, and Gas, the average number of samples extracted as teacher data before and after applying the teacher data generation method of the embodiment was calculated. Table 1 shows the results. No. 1 is the average number of samples for each FMMD, FMLD and Gas before application; 2 indicates the average number of samples after application for each FMMD, FMLD and Gas.
- the hardware structure of the processing unit that executes various processes is various processors as shown below.
- the circuit configuration can be changed after manufacturing such as CPU (Central Processing Unit), which is a general-purpose processor that executes software (program) and functions as various processing units, FPGA (Field Programmable Gate Array), etc.
- Programmable Logic Device PLD
- ASIC Application Specific Integrated Circuit
- One processing unit may be composed of one of these various processors, or may be composed of two or more processors of the same type or different types (eg, multiple FPGAs, or combinations of CPUs and FPGAs).
- a plurality of processing units can be configured by one processor.
- a processor functions as multiple processing units.
- SoC System On Chip
- SoC System On Chip
- the various processing units are configured using one or more of the above various processors as a hardware structure.
- the hardware structure of these various processors is, more specifically, an electrical circuit that combines circuit elements such as semiconductor elements.
- Each configuration and function described above can be appropriately realized by arbitrary hardware, software, or a combination of both.
- a program that causes a computer to execute the processing steps (procedures) described above a computer-readable storage medium (non-temporary storage medium) storing such a program, or a computer capable of installing such a program
- the present invention can be applied.
- defect inspection system 100 teacher data generation device 112 input/output interface 116 storage unit 118 operation unit 120 CPU 126 display control unit 130 display device 140 machine learning device 142 learning model 142A input layer 142B intermediate layer 142C output layer 144 loss value calculation unit 146 parameter control unit 148 memory 151 image acquisition unit 152 area extraction unit 153 defective pixel determination unit 154 teacher data Extraction unit 200 Defect inspection device 212 Input/output interface 216 Storage unit 218 Operation unit 220 CPU 226 display control unit 230 display device 240 inspection target image acquisition unit 242 defect inspection unit 300 imaging system 302 imaging control unit 304 imaging operation unit 306 image storage unit 308 camera 310 radiation source 312 radiation source 314 imaging room A defect type B defect type AR Region CD Correct data D, D1, D2, D3, D4 Defect Dp Defect pixel F Frame GT Ground truth data IM Patch image IR Region of interest OBJ Object to be inspected P10 Training image P30 Inspection target image Px Pixel S1 Step S2 Step S3 Step S4 Steps TD,
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Analytical Chemistry (AREA)
- Molecular Biology (AREA)
- Pathology (AREA)
- Immunology (AREA)
- Biochemistry (AREA)
- Chemical & Material Sciences (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
検出対象物の大きさに影響を受け難い、教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置を提供する。プロセッサを備える教師データ生成装置において、プロセッサは、検査対象を含む検査対象画像に対して、検出対象となる欠陥画素を含む2px以上の領域を、注目領域として抽出し、注目領域を含む、パッチサイズのパッチ画像を、教師データとして抽出する。
Description
本発明は、教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置に関する。
X線透過画像等を利用した工業製品の非破壊検査では、検査対象の製品を透過撮影した画像の目視により、製品に発生した気泡や異物、ひび割れ等の欠陥を検出し、良品又は不良品を判断している。
近年、良品又は不良品を判断する際に、機械学習で学習された学習モデルを使用して、判断することが検討されている。機械学習させる際、検査対象画像から教師データを抽出し、抽出された教師データを使用し、学習モデルを機械学習で学習させている。
この様な機械学習では、例えば、認識精度を向上させるため検出する種別ごとのデータの数を調整する技術が適用されている(特許文献1)。
ところで、検査対象画像から教師データを抽出する際、検出対象の欠陥である各画素を起点に教師データの抽出を行うと,大きなサイズの欠陥ほど抽出される教師データの数が多くなる。同じ種別に属する欠陥であっても、教師データに不均衡が生じ、微小欠陥の学習が相対的に遅れるため、検出率が向上しない原因となる。
本発明はこのような事情に鑑みてなされたもので、検査対象の大きさに影響を受け難い、教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置を提供することを目的とする。
第1態様のプロセッサを備える教師データ生成装置において、プロセッサは、検査対象を含む検査対象画像に対して、検出対象となる欠陥画素を含む2px以上の領域を、注目領域として抽出し、注目領域を含む、パッチサイズのパッチ画像を、教師データとして抽出する。
第2態様の教師データ生成装置において、注目領域は、特定の規則により取得された画素領域であって、画素領域ごとに欠陥に対応する欠陥画素を含むか否かを判定した結果、検出対象となる欠陥画素を含むと判定された領域である。
第3態様の教師データ生成装置において、特定の規則は、ランダムな順または網羅的な順に検査対象画像を走査して、固定のサイズの画素範囲を取得することである。
第4態様の教師データ生成装置において、特定の規則は、検出対象の範囲があらかじめ検査対象画像の一部に制限されており、範囲内において、ランダムな順または網羅的な順に走査して、固定サイズの画素範囲を取得する。
第5態様の教師データ生成装置において、プロセッサは、検査対象画像に対して、検出対象と区別すべき画素を含む、パッチサイズのパッチ画像を、教師データとして抽出する。
第6態様の教師データ生成装置において、注目領域は、検出対象の画素を含む一の検出対象を特定し、検出対象の画素を含む画素領域を一定数取得することで定める。
第7態様の教師データ生成装置において、パッチサイズは、教師データを使用して学習モデルを作成する機械学習装置の入力で定まるサイズである。
第8態様の教師データ生成装置において、注目領域の大きさは、検出対象の欠陥の大きさ、又は欠陥の間の距離に基づいて決定される。
第9態様の教師データ生成装置において、プロセッサは、検査対象画像に基づくグランドトゥルースデータに基づいて、各注目領域に欠陥画素を含むか否かを判定する。
第10態様の教師データ生成装置において、隣接する注目領域の距離はパッチサイズ以下である。
第11態様の教師データ生成装置において、プロセッサは、各注目領域に欠陥画素を含むか否かを判定する際、欠陥の種別ごとに判定する。
第12態様の教師データ生成装置において、プロセッサは、欠陥の種別ごとの教師データの数を調整する。
第13態様の教師データ生成装置において、検査対象画像は、X線透過画像である。
第14態様の教師データ生成装置において、検査対象画像は、鋳造された金属部品、鍛造された金属部品、又は、溶接された金属部品に対するX線透過画像である。
第15態様のプロセッサを備える教師データ生成装置が実行する教師データ生成方法において、検査対象を含む検査対象画像に対して、検出対象となる欠陥画素を含む2px以上の領域を、注目領域として抽出するステップと、注目領域を含む、パッチサイズのパッチ画像を、教師データとして抽出するステップと、を含む。
第16態様のプロセッサを備える教師データ生成装置により教師データ生成方法を実行するプログラムにおいて、検査対象を含む検査対象画像に対して、検出対象となる欠陥画素を含む2px以上の領域を、注目領域として抽出するステップと、注目領域を含む、パッチサイズのパッチ画像を、教師データとして抽出するステップと、を実行させる。
第17態様の欠陥検査装置は、既述の教師データ生成装置と、検査対象画像を取得する検査対象画像取得部と、教師データ生成装置により作成された教師データを用いて学習を行い、検査対象画像における欠陥を検出する欠陥検査部と、を備える。
本発明の教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置によれば、検出対象の大きさに影響を受け難い教師データの生成を可能とし、欠陥検出率の精度低下を抑制できる。
以下、添付図面に従って本発明に係る教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置の実施の形態について説明する。
[欠陥検査システムの構成]
図1は、欠陥検査システムを示すブロック図である。
図1は、欠陥検査システムを示すブロック図である。
図1に示すように、欠陥検査システム10は、例えば、工業製品等の検査対象(以下、被検査体ともいう。)に対して、機械学習を伴う欠陥の検査を行うものであり、教師データ生成装置100と、欠陥検査装置200とを備える。
教師データ生成装置100は、検査対象を撮影した検査対象画像であるトレーニング用画像P10の入力を受け付けて、トレーニング用画像P10に基づいて、機械学習装置140(図4参照)の学習に使用する教師データを作成する。ここで、トレーニング用画像P10とは、検出対象となる欠陥のサンプルを含む画像であり、欠陥検査装置200により検査すべき被検査体OBJ(図16参照)と、同一又は類似する工業製品等を撮像して得られた画像である。トレーニング用画像P10は、被検査体の使用中に自然に欠陥が発生した被検査体を撮像した画像であってもよいし、人工的に欠陥を付加した被検査体を撮像した画像であってもよい。トレーニング用画像P10としては、例えば、被検査体が取り付けられる施設等の設計者又は運営者からサンプルとして提供されるものを用いることができる。トレーニング用画像P10は、例えば、X線透過画像である。また、このX線透過画像は、例えば、鋳造された金属部品、鍛造された金属部品、又は、溶接された金属部品に対するX線透過画像である。
機械学習装置140により学習された学習モデルが、欠陥検査装置200で利用される。学習モデルは、欠陥検査装置200に組み込むことができる。欠陥検査装置200は、組み込まれた学習モデルを利用できる。また、学習モデルは、欠陥検査装置200に接続されたネットワーク上のサーバに組み込むことができる。欠陥検査装置200はネットワークを介してサーバの学習モデルを利用できる。欠陥検査装置200は、検査対象となる工業製品ごとに学習された学習モデルを利用できる。
<教師データ生成装置の構成>
次に、実施形態に係る教師データ生成装置100について、図2を参照して説明する。図2は、本発明に係る教師データ生成装置100のハードウェア構成の一例を示すブロック図である。
次に、実施形態に係る教師データ生成装置100について、図2を参照して説明する。図2は、本発明に係る教師データ生成装置100のハードウェア構成の一例を示すブロック図である。
図2に示す教師データ生成装置100としては、コンピュータ又はワークステーションを使用することができる。本例の教師データ生成装置100は、主として入出力インターフェイス112、記憶部116、操作部118、CPU(Central Processing Unit)120と、RAM(Random Access Memory)122と、ROM(Read Only Memory)124と、表示制御部126とから構成されている。教師データ生成装置100には、ディスプレイを構成する表示装置130が接続され、CPU120の指令の下、表示制御部126の制御により表示装置130に表示が行われる。
入出力インターフェイス112は、教師データ生成装置100に様々なデータ(情報)を入力することができる。例えば、記憶部116に記憶されるデータが入出力インターフェイス112を介して入力される。さらに、入出力インターフェイス112は、ネットワークを介して外部装置との間で通信を行うことができる。教師データ生成装置100と外部装置との間のデータの送受信方法としては、有線通信又は無線通信(例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネット接続等)を用いることができる。
CPU(プロセッサ)120は、記憶部116、又はROM124等に記憶された実施形態の教師データ生成プログラムを含む各種のプログラムを読み出し、RAM122に展開して計算を行うことにより、各部を統括制御する。また、CPU120は、記憶部116、又はROM124に記憶されているプログラムを読み出して、RAM122を使用して計算を行い教師データ生成装置100の各種処理を行う。CPU120は、操作部118を介してオペレータからの操作入力を受け付け、この操作入力に応じた制御信号を教師データ生成装置100の各部に送信して各部の動作を制御する。
記憶部(メモリ)116は、ハードディスク装置、eMMC(embedded Multi Media Card)、SSD(Solid State Drive)等のフラッシュメモリ等から構成されるメモリである。記憶部116には、オペレーティングシステム、教師データ生成方法を実行させるプログラム等、教師データ生成装置100を動作させるデータ及びプログラムが記憶されている。また記憶部116は、以下で説明する実施形態で使用する情報等を記憶する。
操作部118はキーボード及びマウスを含み、ユーザはこれらのデバイスを介して、教師データ生成装置100に必要な処理を行わせることができる。タッチパネル型のデバイスを用いることにより、表示装置130が操作部としても機能してもよい。
表示装置130は、例えば、液晶ディスプレイ等のデバイスであり、各種情報を表示できる。
図3は、CPU120で実現される処理機能を示すブロック図の一例を示す図である。
CPU120は、画像取得部151、領域抽出部152、欠陥画素判定部153、教師データ抽出部154等を備える。画像取得部151、領域抽出部152、欠陥画素判定部153、教師データ抽出部154等はCPU120の一部であり、CPU120が各部の処理を実行する。
画像取得部151は、入出力インターフェイス112を介してトレーニング用画像P10の取得する処理を実行する。なお、画像取得部151がトレーニング用画像P10を取得する方法は、例えば、ネットワークを介した通信を介して取得できる。また、例えば、USB(Universal Serial Bus)ケーブル、Bluetooth(登録商標)、赤外線通信等を用いてもよいし、トレーニング用画像P10を、教師データ生成装置100に着脱及び読取可能な記憶媒体(例えば、メモリカード)に格納し、画像取得部151は、この記憶媒体を介してトレーニング用画像P10を取得してもよい。また、トレーニング用画像P10は教師データ生成装置100の記憶部116に記憶させることができ、画像取得部151は、記憶部116から入出力インターフェイス112を介してトレーニング用画像P10を取得できる。
領域抽出部152は、画像取得部151が取得したトレーニング用画像P10から複数の領域を抽出する処理を実行する。領域は2px以上の画素領域である。この処理において領域は固定サイズであってもよい。領域抽出部152は、例えば、後述する注目領域に相当する大きさの仮想の枠を設定し、この枠をトレーニング用画像P10の上を走査させながら、枠内の画像(トレーニング用画像P10の一部)を切り出すことにより複数の領域を抽出する。領域抽出部152は、枠を走査させるスライド幅、走査する順を任意に設定でき、この任意の設定を特定の規則とできる。例えば、枠のスライド幅は後述するパッチサイズ以下であることが好ましく、その結果、隣接する複数の領域の距離はパッチサイズ以下であることが好ましい。
欠陥画素判定部153は、領域抽出部152が抽出した複数の領域の各領域に欠陥に対応する欠陥画素を一部でも含むか否かを判定する。欠陥画素判定部153は、欠陥画素を一部でも含む領域を注目領域して抽出する。すなわち、注目領域は、領域抽出部152により特定の規則により取得された画素領域であって、欠陥画素判定部153により画素領域ごとに欠陥に対応する欠陥画素を含むか否かを判定した結果、検出対象となる欠陥画素を含むと判定された領域となる。欠陥画素判定部153は、欠陥画素が一部でも含まれている領域を注目領域して抽出するための情報を取得する。欠陥画素判定部153は、例えば、領域に欠陥に対応する欠陥画素を含むか否かを判定する際、トレーニング用画像P10に対応するグランドトゥルースデータを取得することが好ましい。グランドトゥルースデータは、トレーニング用画像P10の画像全体(全画素)に対応する、1画素単位(1px)での位置情報、欠陥の領域であるか否か、及び欠陥の種別などの情報を含む。
教師データ抽出部154は、例えば、グランドトゥルースデータを参照し、注目領域から欠陥画素を含むパッチサイズのパッチ画像を教師データとして抽出する。教師データ抽出部154は、注目領域から抽出したパッチサイズのパッチ画像と、正解データとを1セットとして、教師データとして抽出する。正解データは、例えば、パッチサイズに存在する欠陥の領域を塗りつぶしたマスク画像である。
図4は教師データを利用する機械学習装置140の一例を示すブロック図である。
図4に示す機械学習装置140は、学習モデル(学習モデルの一つである畳み込みニューラルネットワーク(CNN:Convolution Neural Network)142と、損失値算出部144と、パラメータ制御部146とから構成される。
この機械学習装置140は、教師データ生成装置100により生成された、教師データを使用し、CNN142を機械学習させる。教師データ生成装置100により生成された教師データは、例えば、メモリ148に記憶される。
CNN142は、注目領域から抽出したパッチサイズのパッチ画像を入力画像とした場合、その入力画像に撮影されている欠陥の領域を推論する部分であり、複数のレイヤ構造を有し、複数の重みパラメータを保持している。重みパラメータは、畳み込み層での畳み込み演算に使用されるカーネルと呼ばれるフィルタのフィルタ係数などである。ここで、注目領域から抽出される画像のパッチサイズは、ニューラルネットワークでの機械学習装置140に用いる入力で定まるパッチサイズ(例えばm×n:m、nは整数)に一致する。
CNN142は、重みパラメータが初期値から最適値に更新されることで、未学習の学習モデルから学習済みの学習モデルに変化しうる。
このCNN142は、入力層142Aと、畳み込み層とプーリング層から構成された複数セットを有する中間層142Bと、出力層142Cとを備え、各層は複数の「ノード」が「エッジ」で結ばれる構造となっている。
入力層142Aには、学習対象である学習用画像が入力画像として入力される。学習用画像は、メモリ148に記憶されている教師データ(パッチサイズのパッチ画像と正解データとのペア)のうちのパッチサイズのパッチ画像である。
中間層142Bは、畳み込み層とプーリング層とを1セットとする複数セットを有し、入力層142Aから入力した画像から特徴を抽出する部分である。畳み込み層は、前の層で近くにあるノードにフィルタ処理し(フィルタを使用した畳み込み演算を行い)、「特徴マップ」を取得する。プーリング層は、畳み込み層から出力された特徴マップを縮小して新たな特徴マップとする。「畳み込み層」は、画像からのエッジ抽出等の特徴抽出の役割を担い、「プーリング層」は抽出された特徴が、平行移動などによる影響を受けないようにロバスト性を与える役割を担う。
なお、中間層142Bには、畳み込み層とプーリング層とを1セットとする場合に限らず、畳み込み層が連続する場合や活性化関数による活性化プロセス、正規化層も含まれ得る。
出力層142Cは、中間層142Bにより抽出された特徴を示す特徴マップを出力する部分である。また、出力層142Cは、学習済みCNN52では、例えば、入力画像に写っている欠陥をピクセル単位、もしくはいくつかのピクセルを一塊にした単位で領域分類(セグメンテーション)した推論結果を出力する。
学習前のCNN142の各畳み込み層に適用されるフィルタの係数やオフセット値は、任意の初期値がセットされる。
学習制御部として機能する損失値算出部144及びパラメータ制御部146のうちの損失値算出部144は、CNN142の出力層142Cから出力される特徴マップと、入力画像(パッチサイズのパッチ画像)に対する正解データであるマスク画像(メモリ148から読み出される正解データ)とを比較し、両者間の誤差(損失関数の値である損失値)を計算する。損失値の計算方法は、例えばソフトマックスクロスエントロピー、シグモイドなどが考えられる。
パラメータ制御部146は、損失値算出部144により算出された損失値を元に、誤差逆伝播法によりCNN142の重みパラメータを調整する。誤差逆伝播法では、誤差を最終レイヤから順に逆伝播させ、各レイヤにおいて確率的勾配降下法を行い、誤差が収束するまでパラメータの更新を繰り返す。
この重みパラメータの調整処理を繰り返し行い、CNN142の出力と正解データとの差が小さくなるまで繰り返し学習を行う。
機械学習装置140は、メモリ148に記憶された学習データを使用した機械学習を繰り返すことで、CNN142が学習済みモデルとなる。
なお、CNN142としては、R-CNN(Regions with Convolutional Neural Networks)を適用することができる。R-CNNでは、撮影画像内において、大きさを変えたバウンディングボックスをスライドさせ、欠陥が入るバウンディングボックスの領域を検出する。そして、バウンディングボックスの中の画像部分だけを評価(CNN特徴量を抽出)することで、欠陥を検出する。また、R-CNNに代えて、Fast R-CNN、Faster R-CNN、Mask R-CNN等を使用することができる。
このようにして構成される学習済の学習モデルの推論結果は、図1に示すように、欠陥検査装置200において利用される。
<第1実施形態>
次に、教師データ生成装置100を使用した第1実施形態の教師データ生成方法を図5に示すフロー図を参照して説明する。
次に、教師データ生成装置100を使用した第1実施形態の教師データ生成方法を図5に示すフロー図を参照して説明する。
図5に示すように、教師データ生成方法は、一例として、検査対象を含む画像を取得するステップ(ステップS1)と、複数の領域を抽出するステップ(ステップS2)と、抽出した領域に欠陥に対応する欠陥画素を含むか否かを判定するステップ(ステップS3)と、欠陥画素を含むパッチサイズのパッチ画像を教師データとして抽出するステップ(ステップS4)と、を備える。
ステップS1では、検査対象を含む画像を取得する。CPU120の画像取得部151が、検査対象を含む画像(トレーニング用画像P10)を取得する(ステップS1)。
図6は、画像取得ステップ(ステップS1)を説明する図である。実施形態では、図6に示すように、トレーニング用画像P10は、複数の欠陥Dを含んでおり、一つはサイズの大きい欠陥D1であり、他は欠陥D1よりサイズの小さい欠陥D2である。既述したようにトレーニング用画像P10は、例えば、被検査体の使用中に自然に欠陥が発生した被検査体を撮像した画像である。
ステップS2では、トレーニング用画像P10から複数の領域を抽出する。CPU120の領域抽出部152が、トレーニング用画像P10から、複数の領域(2px以上の画素領域)を抽出する(ステップS2)。
図7は、領域抽出ステップ(ステップS2)を説明する図である。図7の0700Aに示すように、領域抽出部152は、領域ARを抽出するため、領域ARに相当するサイズの仮想の枠Fを設定する。実施形態において、領域ARは2px以上の画素領域で、固定サイズであり、領域ARに対応する枠Fも固定サイズである。この仮想の枠Fがトレーニング用画像P10の上で走査され、枠Fに囲われた領域が領域ARとして抽出される。
0700Bに示すように、枠Fをトレーニング用画像P10の上を矢印で示す方向に走査することで、トレーニング用画像P10の全体の領域から、枠Fに囲われた領域が複数の領域ARとして抽出される。枠Fは、予め決められたスライド幅で走査する。例えば、0700Bにおいて、枠Fは、枠Fのスライド幅(枠Fの1倍)で走査される。
0700Cに示すように、領域抽出部152は枠Fをトレーニング用画像P10の上を全領域に亘って走査し、領域ARを抽出する。0700Cでは、例えば、32個の領域ARが抽出される。
この例では、トレーニング用画像P10から領域ARを取得する際、枠Fを第1段目の左端から始め、右端に向けて走査し、第1段目の領域ARの取得を終了する。次いで、第2段目の左端から右端に向けて走査し、第2段目の領域ARの取得を終了する。同様の走査を最終段まで繰り返す。最終段では、左端から右側に走査し、最終段目の領域ARの取得を終了する。したがって、特定の規則は、トレーニング用画像P10を網羅的な順で走査し、トレーニング用画像P10の全領域に対して固定サイズの画素範囲である領域ARを取得する。なお、枠Fを走査させるスライド幅を任意に設定できる。
特定の規則は、この例に限定されず、トレーニング用画像P10をランダムな順で走査し、トレーニング用画像P10の全領域に対して固定サイズの画素範囲である領域ARを取得する。ランダムな順では、網羅的な順とは異なり、枠Fを順不同で走査し、トレーニング用画像P10の全領域に対して固定サイズの画素範囲である領域ARを取得する。
なお、特定の規則において、トレーニング用画像P10の全領域に対して領域ARを取得する場合だけでなく、トレーニング用画像P10の一部の領域に対して領域ARを取得する場合であってもよい。
ランダムな順または網羅的な順にであっても、隣接する領域ARの間の距離を小さくすることにより、トレーニング用画像P10から抽出される領域ARの数を多くできる。後述するように、領域ARから欠陥画素を含む注目領域IRが抽出されるので、領域ARの数を多くすることで、抽出される注目領域IRの数を多くできる。領域ARの数を考慮して、隣接する領域ARの間の距離を決定してもよい。
ステップS3では、各領域ARに欠陥に対応する欠陥画素を含むか否かを判定する。CPU120の欠陥画素判定部153が、領域ARに欠陥D(欠陥D1、欠陥D2を含む)に対応する欠陥画素を含むか否かを判定する(ステップS3)。領域ARの中で、欠陥画素判定部153が欠陥画素を含むと判定した領域ARが注目領域IRとされ、ステップS3では注目領域IRが抽出される。
図8は、欠陥画素判定ステップ(ステップS3)を説明する図である。欠陥画素判定部153は、欠陥画素の有無を判定するため基準となるグランドトゥルースデータGT(正解データ)の情報を取得する。0800Aに示すように、トレーニング用画像P10の画像全体(全画素)に対して、1画素(px)の単位で、位置情報、欠陥D(欠陥D1、D2)の領域であるか否か、及び欠陥の種別などの情報が取得される。0800Bに示すように、グランドトゥルースデータGTは、0800Aのトレーニング用画像P10に対し、領域ごとの画素単位で、欠陥あり、背景(欠陥なし)、欠陥の種別等の正解の定義がなされている。正解の定義は利用者が予め決定でき、また変更できる。
以下、定義の一例について説明する。グランドトゥルースデータGTにおいては、欠陥(傷も含む)の種別が区別されて、ラベル付けされる。なお、「傷」又は「欠陥」であるかの区別については、「傷」のラベル、又は「欠陥」のラベルにより予め区別されていてもよい。また、「傷」が、「欠陥」の程度が弱いもの、という定義される場合、サイズや形状、分布によって「傷」か「欠陥」かを、後から(検出結果をみて)区別してもよい。
例えば、ガス欠陥と発生原因は同じであって、サイズが基準以下であるため「傷」というカテゴリーに該当する箇所は、ラベルとしては「ガス欠陥」というラベル付けされる。したがって、学習モデルも「ガス欠陥」という種別で検出が行われる。
欠陥の種別として、(1)Porosity(微小な気泡の集団)、(2)Gas Hole(ガス)、(3)FMMD:Foreign Material More Dense(高密度の異物)、(4)FMLD:Foreign Material Less Dense(低密度の異物)、(5)Excess Metal (≒余盛り)、(6)クラック(ひび割れ)、(7)Saw Cut (のこぎり状、筋状のキズ)、(8)Surface Damage(表面の「欠け」などその他のキズ)、などが挙げられる。
また、溶接金属に特有の不良として、(1)スパッタ、(2)アンダーカット、(3)スラグ巻き込み、(4)溶け込み不良、などが挙げられる。
欠陥画素判定部153は、グランドトゥルースデータGTに基づいて、0800Cに示すステップS2で取得された複数の領域ARに対して欠陥画素を含むか否かを判定する。ステップS3において、欠陥画素判定部153は、特定の規則により取得された画素領域である領域ARの中から、画素領域ごとに欠陥に対応する欠陥画素を含むか否かを判定した結果、検出対象(欠陥D1又はD2)となる欠陥画素を含むと判定された領域を注目領域IRとして抽出する。0800Cでは、欠陥D1の一部を含む4個の注目領域IRが抽出され、欠陥D2の一部を含む4個の注目領域IRが抽出される。ステップS4では、欠陥画素Dpが存在する注目領域IRに対し、注目領域IRを含むパッチサイズのパッチ画像IMを教師データTDとして抽出する。CPU120の教師データ抽出部154は、欠陥画素Dpを含む領域ARに場合、注目領域IRを含むパッチサイズのパッチ画像IMを教師データTDとして抽出する。
教師データTDとして注目領域IRを含むパッチサイズのパッチ画像IMが抽出されるので、隣接する注目領域IRの距離はパッチサイズ以下であることが好ましい。トレーニング用画像P10から確実に教師データを抽出することが可能となる。
注目領域IRの大きさは、欠陥の大きさ、又は欠陥の間の距離に基づいて決定することが好ましい。注目領域IRを適正な大きさとすることで、一つの注目領域IRに異なる欠陥が含まれることを回避できる。また、欠陥D1と欠陥D2とで、抽出される数の不均衡を是正できる。
欠陥の大きさとしては、例えば、100μm以上15mm以下程度である。このとき、画像の分解能が100μm/pxであれば、注目領域IRの大きさは192pxであり、後述するパッチサイズは128pxとすることができる。
欠陥の間の距離は、欠陥サイズにも依存する。例えば、数px(=数百μm)の欠陥であれば、その微小間隔で密集することがあるため、最小は200μm以上からとなる。また、数mm以上(=例えば、20px以上)の中程度から大程度欠陥は、頻繁に発生することが、比較的少ない。そのため、欠陥の間の距離は、欠陥長(欠陥サイズ)の1倍から2倍(40px程度)以上は離れている。
こられの数値に基づいて、注目領域IRの大きさを決定できる。ただし、これらの数値は、一例であり、こられの数値に限定されない。
図9は、教師データ抽出ステップ(ステップS4)を説明する図である。0900Aに示すように、トレーニング用画像P10からサイズの大きい欠陥D1の欠陥画素Dpを含む4個の注目領域IRが抽出されている。4個の注目領域IRから、それぞれ欠陥画素Dpを含むパッチサイズ(m×n)のパッチ画像IMが抽出され、4個のパッチ画像IMに対応する4個の正解データCDとのペアが教師データTDとして抽出される。
同様に、0900Bに示すように、トレーニング用画像P10から欠陥D2の欠陥画素Dpを含む4個の注目領域IRが抽出されている。4個の注目領域IRから、それぞれ欠陥画素Dpを含むパッチサイズ(m×n)のパッチ画像IMが抽出され、4個のパッチ画像IMに対応する4個の正解データCDとのペアが教師データTDとして抽出される。図9においては、欠陥の大きさに拘わらず同数(4個)の教師データTDが抽出される。
既述したように、複数の2px以上の注目領域IRからパッチサイズのパッチ画像IMを教師データTDとするので、欠陥Dの大きさに比例して教師データTDの数が多くなる(学習機会が多くなる)という不均衡を緩和することができる。微小な欠陥を含む領域も,他の大きな欠陥を含む領域と同程度に均等に教師データTDとして抽出される。
第1実施形態の変形例について説明する。第1実施形態の変形例では、教師データ抽出ステップ(ステップS4)において、欠陥画素を含むパッチサイズのパッチ画像IMを教師データTD1として抽出することの他、検出対象である欠陥Dと区別すべき画素を含む、パッチサイズのパッチ画像IMを、教師データTD2として抽出する。
図10は、変形例の教師データ抽出ステップ(ステップS4)を説明する図である。図10に示すように、トレーニング用画像P10からサイズの大きい欠陥D1の欠陥画素Dp(不図示)を含む4個の注目領域IRが抽出されている。欠陥D1に対する4個の注目領域IRから、それぞれ欠陥画素Dpを含むパッチサイズのパッチ画像IMが抽出され、4個のパッチ画像IMに対応する4個の正解データCDとのペアが教師データTD1として抽出される。
同様に、トレーニング用画像P10から欠陥D2の欠陥画素Dpを含む4個の注目領域IRが抽出されている。欠陥D1に対する4個の注目領域IRから、それぞれ欠陥画素Dpを含むパッチサイズのパッチ画像IMが抽出され、4個のパッチ画像IMに対応する4個の正解データCDとのペアが教師データTD1として抽出される。
さらに、トレーニング用画像P10に対して、検出対象である欠陥Dと区別すべき画素、すなわち欠陥Dを含まない画素含む、4個のパッチ画像IMを、教師データTD2として抽出する。図10においては、トレーニング用画像P10の右下の、欠陥Dを含まない4個の領域ARから4個のパッチ画像IMに対応する4個の正解データCDとのペアが教師データTD2として抽出される。これにより、トレーニング用画像P10の中で欠陥Dのない、いわゆる「正常な領域」を教師データとすることができる。
<第2実施形態>
次に、第2実施形態の注目領域IRの抽出及び教師データTDの抽出について説明する。図11は、別の態様の領域抽出ステップ(ステップS2)、欠陥画素判定ステップ(ステップS3)及び教師データ抽出ステップ(ステップS4)を説明する図である。図11の注目領域IRの抽出においては、検出対象の画素を含む1つの検査対象、ここでは欠陥D1又は欠陥D2をそれぞれ1つの検査対象として特定し、検出対象の画素を含む1つの画素領域を一定数取得し、注目領域IRする。
次に、第2実施形態の注目領域IRの抽出及び教師データTDの抽出について説明する。図11は、別の態様の領域抽出ステップ(ステップS2)、欠陥画素判定ステップ(ステップS3)及び教師データ抽出ステップ(ステップS4)を説明する図である。図11の注目領域IRの抽出においては、検出対象の画素を含む1つの検査対象、ここでは欠陥D1又は欠陥D2をそれぞれ1つの検査対象として特定し、検出対象の画素を含む1つの画素領域を一定数取得し、注目領域IRする。
1つの検査対象から一定数の注目領域IRを抽出し、注目領域IRから教師データTDを抽出するので、1つの検査対象から検出対象を含む一定数の教師データTDを抽出できる。したがって、その結果、微小な欠陥D2を含む領域と,他の大きな欠陥D1を含む領域と、に対して均等に教師データTDを抽出できる。
1100Aにおいて、図7の0700Aと同様に、領域抽出部152は、トレーニング用画像P10から領域ARを抽出するため、仮想の枠Fを設定し、枠Fに囲われた領域を領域ARとして抽出する。
1100Bに示すように、注目領域IRの抽出においては、例えば、欠陥D1が、検出対象である欠陥D1の画素領域を含むように、欠陥D1の重心座標を通る縦横の線で4分割され、4個の注目領域IRが抽出される。同様に、欠陥D2が、検出対象である欠陥D2が重心座標を通る縦横の線で4分割され、4個の注目領域IRが抽出される。
第2実施形態では、欠陥D1又は欠陥D2を連続する領域として、それぞれ1つの検査対象として特定している。グランドトゥルースデータGTから欠陥Dの連続領域を抽出する手法として、例えば、外部のオープンソースライブラリを用いて図形のモーメントから抽出でき、さらに重心を推定できる。単純な見た目の「中心点」でもよい場合、外接矩形を求めてその中心座標を用いることもできる。なお、重心位置の求め方はこれらに限定されない。
次に、教師データ抽出ステップ(ステップS4)では、欠陥Dを4分割する各注目領域IRに存在する欠陥画素Dpを含むようにパッチサイズのパッチ画像IMを抽出することで、各欠陥D(欠陥D1及びD2)から4個の教師データTDを抽出することができる。したがって、微小な欠陥を含む領域も,他の大きな欠陥を含む領域も同数の教師データTDが抽出される。この教師データTDを利用することで、機械学習装置140の学習精度を向上できる。
<第3実施形態>
次に、第3実施形態の注目領域IRの抽出及び教師データTD(不図示)の抽出について説明する。図12は、領域抽出ステップ(ステップS2)及び欠陥画素判定ステップ(ステップS3)を説明する図である。図12の複数の注目領域IRの抽出においては、トレーニング用画像P10からの特定の領域のみが注目領域IRとして抽出され、その注目領域IRから教師データTD(不図示)が抽出される。
次に、第3実施形態の注目領域IRの抽出及び教師データTD(不図示)の抽出について説明する。図12は、領域抽出ステップ(ステップS2)及び欠陥画素判定ステップ(ステップS3)を説明する図である。図12の複数の注目領域IRの抽出においては、トレーニング用画像P10からの特定の領域のみが注目領域IRとして抽出され、その注目領域IRから教師データTD(不図示)が抽出される。
1200Aにおいて、図7の0700Aと同様に、領域抽出部152は、トレーニング用画像P10から領域ARを抽出するため、仮想の枠Fを設定し、枠Fに囲われた領域を領域ARとして抽出する。トレーニング用画像P10は、例えば、溶接線WLの上に生じた欠陥の検出を学習させる場合を示している。
この場合、溶接線WLに沿って1次元上に検出対象の欠陥が分布することが事前に分かっている。そのため、その外側は、背景の領域も含めて教師データTDとして抽出する必要はない。逆に、外側の背景の領域を含めてしまうと、溶接線WLの外に生じた、精査されていない欠陥を、正常領域として学習してしまうため、精度悪化の原因となるため、望ましくない場合がある。
そこで、1200Bに示すように、溶接線WL(横方向の1次元の幅を持った直線)を一部に含むような制約を与えつつ、枠Fを走査し、複数の領域ARを抽出する。検出対象の範囲があらかじめ検査対象画像の一部に制限されており、ここでは横方向の1次元に制限される。この範囲内において、ランダムな順または網羅的な順に枠Fを走査して、固定サイズの画素範囲である領域ARを取得する。
次に、欠陥画素判定ステップ(ステップS3)では、領域ARの中で検出対象の欠陥D(欠陥D1及びD2)を含むかを判定し、注目領域IRとして抽出する。次いで、教師データ抽出ステップ(ステップS4)では、注目領域IRに存在する欠陥画素Dpを含むようにパッチサイズのパッチ画像IM(不図示)を抽出することで、教師データTD不図示)を抽出することができる。この例においても、注目領域IRからパッチサイズのパッチ画像を抽出するので、微小な欠陥を含む領域も,他の大きな欠陥を含む領域も同数の教師データTDが抽出される。
また、例えば、複雑な形状を持つ鋳造部品であっても、被写体が写っている範囲と、背景でしかない内容を、分離するマスクを用いて、写っていない背景部分を、「正常領域」と同等には扱わないように複数の注目領域IRを抽出する。これにより、部品の存在する領域のみから、教師データTDを抽出することができ、機械学習装置140の学習精度を向上できる。
次に、トレーニング用画像P10が複数の種別の欠陥を含む場合について説明する。
図13は、複数の種別の欠陥を含む欠陥画素判定ステップ(ステップS3)を説明する図である。1300Aに示すように、トレーニング用画像P10は4個の欠陥D1、D2、D3及びD4を含んでいる。欠陥D1とD2とは同じ種別に分類される欠陥で、大きさが異なる。また、欠陥D3とD4とは同じ種別に分類される欠陥で、大きさが異なる。一方で、欠陥D1及びD2と、欠陥D3及びD4とは種別の異なる欠陥である。欠陥画素判定部153は、欠陥画素の有無を判定するため基準となるグランドトゥルースデータGT(正解データ)の情報を取得する。
1300Aに示すように、トレーニング用画像P10の画像全体(全画素)に対して、1画素Pxの単位で、位置情報、欠陥(欠陥D1、D2、D3及びD4)の領域であるか否か、及び欠陥の種別などの情報が取得される。1300Bに示すように、グランドトゥルースデータGTは、1300Aのトレーニング用画像P10に対し、領域ごとの画素単位で欠陥あり、背景(欠陥なし)、欠陥の種別等の正解の定義がなされている。領域ごとの正解の定義は利用者が予め定義することができる。1300Bでは欠陥D1及びD2は欠陥種Aと定義され、欠陥D3及びD4では欠陥種Bと定義されている。
ステップS3において、欠陥画素判定部153は、グランドトゥルースデータGTに基づいて、1300Cに示すステップS2で取得された複数の領域ARに対して欠陥画素を含むか否かを判定され、注目領域IRが抽出される。
図14は、教師データ抽出ステップ(ステップS4)を説明する図である。図14に示すように、複数の注目領域IRに対して欠陥画素を含むか否かが判定され、欠陥D1に対して4個の注目領域IRのそれぞれパッチサイズのパッチ画像IMが抽出される。欠陥D2に対して4個の注目領域IRのそれぞれパッチサイズのパッチ画像IMが抽出される。欠陥D1から4個のパッチ画像IMが、欠陥D2から4個のパッチ画像IMが抽出される。欠陥D3に対して4個の注目領域IRのそれぞれパッチサイズのパッチ画像IMが抽出される。欠陥D4に対して2個の注目領域IRのそれぞれパッチサイズのパッチ画像IMが抽出される。欠陥D3から4個のパッチ画像IMが、欠陥D4から2個のパッチ画像IMが抽出される。なお、理解を容易にするため正解データCDは省略している。
図14に示すように、欠陥種Aに対して8個(欠陥D1の4個と欠陥D2の4個)のパッチ画像IMが抽出され、欠陥種Bに属する6個(欠陥D3の4個と欠陥D4の2個)のパッチ画像IMが抽出される。種別の異なる欠陥種Aと欠陥種Bとで抽出されるパッチ画像IMの数が異なっている。欠陥種Aと欠陥種Bの種別間での学習精度を同等とするため、オーバーサンプリングを適用し、抽出される教師データTDの数を欠陥の種別間で同等となるよう調整することが好ましい。
例えば、各種別の数を予め定めた数に調整してもよい。実施形態では欠陥種A及び欠陥種Bから抽出される教師データTDの数を20個とする場合である。欠陥種Aから、さらに12個の教師データTDを抽出し、欠陥種Bから、さらに14個の教師データTDを抽出する。欠陥種A及び欠陥種Bとの教師データTDの数は20個となる。
また、各種別の中の最大数となるよう他の種別の数を調整してもよい。実施形態では欠陥種Aは8個の教師データTDの数を有している。一方、欠陥種Bは6個の教師データTDの数を有している。欠陥種Aの8個が種別間の最大の数となる。そこで、欠陥種Bから、さらに2個の教師データTDを抽出する。欠陥種A及び欠陥種Bとの教師データTDの数は8個となる。
抽出される教師データTDの数を種別間で同等となるよう調整することができ、欠陥の種別に起因するサンプル数の不均衡を改善できる。
次に、図1に示した欠陥検査装置200及び撮影システム300の構成について説明する。
図15に示す欠陥検査装置200としては、コンピュータ又はワークステーションを使用することができる。本例の欠陥検査装置200は、主として入出力インターフェイス212、記憶部216、操作部218、CPU220と、RAM222と、ROM224と、表示制御部226とから構成されている。欠陥検査装置200には、ディスプレイを構成する表示装置230が接続され、CPU220の指令の下、表示制御部226の制御により表示装置230に表示が行われる。
入出力インターフェイス212は、欠陥検査装置200に様々なデータ(情報)を入力することができる。例えば、記憶部216に記憶されるデータが入出力インターフェイス212を介して入力される。さらに、入出力インターフェイス212は、ネットワークを介して外部装置との間で通信を行うことができる。欠陥検査装置200と外部装置との間のデータの送受信方法としては、有線通信又は無線通信(例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネット接続等)を用いることができる。
CPU(プロセッサ)220は、記憶部216、又はROM224等に記憶された実施形態の欠陥検査プログラムを含む各種のプログラムを読み出し、RAM222に展開して計算を行うことにより、各部を統括制御する。また、CPU220は、記憶部216、又はROM224に記憶されているプログラムを読み出して、RAM222を使用して計算を行い欠陥検査装置200の各種処理を行う。CPU220は、操作部218を介してオペレータからの操作入力を受け付け、この操作入力に応じた制御信号を欠陥検査装置200の各部に送信して各部の動作を制御する。
記憶部216は、ハードディスク装置、eMMC、SSD等のフラッシュメモリ等から構成されるメモリである。記憶部216には、オペレーティングシステム、欠陥検査を実行させるプログラム等、欠陥検査装置200を動作させるデータ及びプログラムが記憶されている。また記憶部216は、以下で説明する実施形態で使用する情報等を記憶する。
操作部218はキーボード及びマウスを含み、ユーザはこれらのデバイスを介して、欠陥検査装置200に必要な処理を行わせることができる。タッチパネル型のデバイスを用いることにより、表示装置230は操作部としても機能する。表示装置230は、例えば、液晶ディスプレイ等のデバイスであり、各種情報を表示できる。
CPU220は、検査対象画像取得部240と欠陥検査部242とを備える。検査対象画像取得部240は、入出力インターフェイス212を介して、撮影システム300等によって撮像された被検査体OBJの画像である検査対象画像P30を取得する。欠陥検査部242は検査対象画像P30に対する欠陥検査を行う。検査対象画像P30は、後述する撮影システム300により取得される。欠陥検査部242は、機械学習装置140(図4参照)で学習された学習モデルを用いて欠陥の有無(欠陥又は非欠陥)及び種類の判定を行う。CPU220の制御により、欠陥検査部242の欠陥検査の結果が表示装置230に表示される。既述したように、学習モデルは教師データ生成装置100により生成された教師データTDにより学習されている。また、学習モデルは、状況に応じて更新される。
次に、被検査体OBJの画像を撮影するための撮影システム300の例について説明する。図16は、撮影システム300の構成例を概略的に示すブロック図である。撮影システム300は、撮影室314内に置かれた被検査体OBJを撮影するためのものであり、撮影制御部302、撮影操作部304、画像記憶部306、カメラ308及び放射線源310、312を備えている。
撮影制御部302は、撮影システム300の各部の動作を制御するCPUを含む。撮影制御部302は、撮影操作部304を介してオペレータ(撮影者)からの操作入力を受け付け、この操作入力に応じた制御信号を撮影システム300の各部に送信して各部の動作を制御する。
撮影操作部304は、オペレータからの操作入力を受け付ける入力装置を含む。オペレータは、撮影操作部304を介して、被検査体OBJに関する情報の入力、カメラ308に対する撮影条件の指示及び撮影実行の指示の入力、放射線源310及び312に対する放射線の照射条件の指示の入力、撮影により得られた検査対象画像P30(不図示)を画像記憶部306に記憶する指示の入力などを行うことができる。撮影条件には、例えば、露出時間、焦点距離等の撮影条件、撮影角度及び撮影箇所等が含まれる。放射線の照射条件には、照射開始時間、照射継続時間、照射角度及び照射強度等が含まれる。さらに照射強度に関する条件として、管電流と管電圧とが含まれる。
画像記憶部306は、カメラ308によって撮影された被検査体OBJの検査対象画像P30(受光画像データ)を記憶する。画像記憶部306には、被検査体OBJを特定するための情報が画像データと関連付けられて記憶される。カメラ308は、例えば、受光センサが平面に配置された、パネル(板状の形状)状のFPD(フラットパネルディテクタ:Flat Panel Detector)により直接デジタル値に変換して取得する方式(DDA: Digital Detector Array,デジタル検出器)、又はIP(イメージングプレート:Imaging Plate)に信号を記憶させて、外部の読み取り装置でデジタル化する方式(CR: computed radiography)で構成される。
カメラ308、放射線源310及び312は、撮影室314の内部に配置されている。放射線源310及び312は、例えば、X線源であり、撮影室314と外部との間の隔壁及び出入口には、X線防護材料(例えば、鉛又はコンクリート等)によりX線防護が施されている。なお、被検査体OBJに可視光を照射して撮影を行う場合には、防護を施した撮影室314を用いる必要はない。
放射線源310及び312は、撮影制御部302からの指示に従って、撮影室314内に置かれた被検査体OBJに放射線を照射する。
カメラ308は、撮影制御部302からの撮影実行の指示に従って、放射線源310から被検査体OBJに照射されて被検査体OBJにより反射された放射線、又は放射線源312から被検査体OBJに照射されて被検査体OBJを透過した放射線を受光して被検査体OBJを撮影する。被検査体OBJは、不図示の保持部材(例えば、マニピュレーター、載置台又は可動式の載置台など)によって撮影室314内に保持されており、被検査体OBJは、カメラ308、放射線源310及び312に対する距離及び角度が調整可能となっている。オペレータは、撮影制御部302を介して、被検査体OBJ、カメラ308、放射線源310及び312の相対位置を制御可能となっており、被検査体OBJの所望の箇所を撮影可能となっている。
放射線源310及び312は、カメラ308による撮影の実行の終了に同期して、被検査体OBJに対する放射線の照射を終了する。
図16に示す例では、カメラ308が1台、放射線源310及び312が2台設けられているが、カメラ及び放射線源の台数はこれに限定されるものではない。例えば、カメラ及び放射線源は、それぞれ複数台あってもよいし、1つずつであってもよい。撮影制御部302、撮影操作部304及び画像記憶部306は、コンピュータのハードウェアとソフトウェアとの組み合わせを用いて実現できる。
欠陥検査装置200は、撮影システム300と通信可能に接続されてもよいし、欠陥検査装置200が撮影システム300の撮影制御部302、撮影操作部304及び画像記憶部306として機能するように構成されてもよい。
<実施例>
欠陥を含む画像に対し、実施形態の教師データ生成方法が適用される前と、適用された後における、平均サンプル数(教師データの数)を算出した。平均サンプル数は、トレーニング用画像P10として261個のアルミ鋳造画像を用い、261個のアルミ鋳造画像から抽出されるサンプル数と、その値を欠陥サイズごとの欠陥総数で割ることにより算出した。アルミ鋳造画像には、サイズの異なる欠陥であるFMMD、FMLD及びGasを含んでいた。欠陥サイズを「平均的に大きい欠陥が存在する集団=FMMD」、「平均的に小さい欠陥のみが存在する集団=Gas」、「平均的にFMMDとGasの間の大きさ欠陥が存在する集団=FMLD」に分類した。
欠陥を含む画像に対し、実施形態の教師データ生成方法が適用される前と、適用された後における、平均サンプル数(教師データの数)を算出した。平均サンプル数は、トレーニング用画像P10として261個のアルミ鋳造画像を用い、261個のアルミ鋳造画像から抽出されるサンプル数と、その値を欠陥サイズごとの欠陥総数で割ることにより算出した。アルミ鋳造画像には、サイズの異なる欠陥であるFMMD、FMLD及びGasを含んでいた。欠陥サイズを「平均的に大きい欠陥が存在する集団=FMMD」、「平均的に小さい欠陥のみが存在する集団=Gas」、「平均的にFMMDとGasの間の大きさ欠陥が存在する集団=FMLD」に分類した。
図17は、平均的なGas、FMLD及びFMMDの大きさを概念的に示す図である。Gasの長さを1の長さとすると、FMLDは2倍から6倍程度の長さであり、FMMDは30倍から50倍程度の長さである。FMMD、FMLD及びGasについて、実施形態の教師データ生成方法が適用される前と、適用された後における、教師データとして抽出される平均サンプル数を算出した。表1は、その結果を示す。No.1は適用前のFMMD、FMLD及びGasごとの平均サンプル数であり、No.2はFMMD、FMLD及びGasごとの適用後の平均サンプル数を示す。
表1のNo.1に示すように、適用前のFMMDでは、少数存在する巨大欠陥の影響を受けて、欠陥1個あたり174.6個のサンプリング数が算出された。また、FMLDでは、欠陥1個あたり36.4個のサンプリング数が算出された。また、Gasでは、欠陥1個あたり21.8個のサンプリング数が算出された。適用前においては、Gasを1とした場合、FMMD:FMLD:Gas=8:1.7:1であり、FMMD、FMLD及びGasの間で平均サンプル数に大きな不均衡が確認された。Gasは10px以下の欠陥がほとんどであるのに対して、FMLDとFMMDは少数の巨大欠陥の影響を受けていたことが理解できる。
一方、表1のNo.2に示すように、適用後のFMMDでは、欠陥1個あたり3.1個のサンプリング数が算出された。また、FMLDでは、欠陥1個あたり2.3個のサンプリング数が算出された。また、Gasでは、欠陥1個あたり3.8個のサンプリング数が算出された。Gasを1とした場合、FMMD:FMLD:Gas=0.8:0.6:1であり、FMLDとFMMDは少数の巨大欠陥から受ける影響が緩和されていることが確認された。適用後においては、平均面積が大きな欠陥群からも、平均面積が小さな欠陥群からも、欠陥1個あたりからの平均サンプル数が望ましい割合となっていることが理解できる。学習精度を同等にすることが可能となる。
<その他>
上記実施形態において、各種の処理を実行する処理部(processing unit)のハードウェア的な構造は、次に示すような各種のプロセッサ(processor)である。各種のプロセッサには、ソフトウェア(プログラム)を実行して各種の処理部として機能する汎用的なプロセッサであるCPU(Central Processing Unit)、FPGA(Field Programmable Gate Array)などの製造後に回路構成を変更可能なプロセッサであるプログラマブルロジックデバイス(Programmable Logic Device:PLD)、ASIC(Application Specific Integrated Circuit)などの特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路などが含まれる。
上記実施形態において、各種の処理を実行する処理部(processing unit)のハードウェア的な構造は、次に示すような各種のプロセッサ(processor)である。各種のプロセッサには、ソフトウェア(プログラム)を実行して各種の処理部として機能する汎用的なプロセッサであるCPU(Central Processing Unit)、FPGA(Field Programmable Gate Array)などの製造後に回路構成を変更可能なプロセッサであるプログラマブルロジックデバイス(Programmable Logic Device:PLD)、ASIC(Application Specific Integrated Circuit)などの特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路などが含まれる。
1つの処理部は、これら各種のプロセッサのうちの1つで構成されていてもよいし、同種または異種の2つ以上のプロセッサ(例えば、複数のFPGA、あるいはCPUとFPGAの組み合わせ)で構成されてもよい。また、複数の処理部は1つのプロセッサで構成できる。複数の処理部を1つのプロセッサで構成する例としては、第1に、クライアントやサーバなどのコンピュータに代表されるように、1つ以上のCPUとソフトウェアの組合せで1つのプロセッサを構成し、このプロセッサが複数の処理部として機能する形態がある。第2に、システムオンチップ(System On Chip:SoC)などに代表されるように、複数の処理部を含むシステム全体の機能を1つのIC(Integrated Circuit)チップで実現するプロセッサを使用する形態がある。このように、各種の処理部は、ハードウェア的な構造として、上記各種のプロセッサを1つ以上用いて構成される。
さらに、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子などの回路素子を組み合わせた電気回路(circuitry)である。
上述の各構成及び機能は、任意のハードウェア、ソフトウェア、或いは両者の組み合わせによって適宜実現可能である。例えば、上述の処理ステップ(処理手順)をコンピュータに実行させるプログラム、そのようなプログラムを記憶したコンピュータ読み取り可能な記憶媒体(非一時的記憶媒体)、或いはそのようなプログラムをインストール可能なコンピュータに対しても本発明を適用することが可能である。
以上で本発明の例に関して説明してきたが、本発明は上述した実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で種々の変形が可能であることは言うまでもない。
10 欠陥検査システム
100 教師データ生成装置
112 入出力インターフェイス
116 記憶部
118 操作部
120 CPU
126 表示制御部
130 表示装置
140 機械学習装置
142 学習モデル
142A 入力層
142B 中間層
142C 出力層
144 損失値算出部
146 パラメータ制御部
148 メモリ
151 画像取得部
152 領域抽出部
153 欠陥画素判定部
154 教師データ抽出部
200 欠陥検査装置
212 入出力インターフェイス
216 記憶部
218 操作部
220 CPU
226 表示制御部
230 表示装置
240 検査対象画像取得部
242 欠陥検査部
300 撮影システム
302 撮影制御部
304 撮影操作部
306 画像記憶部
308 カメラ
310 放射線源
312 放射線源
314 撮影室
A 欠陥種
B 欠陥種
AR 領域
CD 正解データ
D、D1、D2、D3、D4 欠陥
Dp 欠陥画素
F 枠
GT グランドトゥルースデータ
IM パッチ画像
IR 注目領域
OBJ 被検査体
P10 トレーニング用画像
P30 検査対象画像
Px 画素
S1 ステップ
S2 ステップ
S3 ステップ
S4 ステップ
TD、TD1、TD2 教師データ
WL 溶接線
100 教師データ生成装置
112 入出力インターフェイス
116 記憶部
118 操作部
120 CPU
126 表示制御部
130 表示装置
140 機械学習装置
142 学習モデル
142A 入力層
142B 中間層
142C 出力層
144 損失値算出部
146 パラメータ制御部
148 メモリ
151 画像取得部
152 領域抽出部
153 欠陥画素判定部
154 教師データ抽出部
200 欠陥検査装置
212 入出力インターフェイス
216 記憶部
218 操作部
220 CPU
226 表示制御部
230 表示装置
240 検査対象画像取得部
242 欠陥検査部
300 撮影システム
302 撮影制御部
304 撮影操作部
306 画像記憶部
308 カメラ
310 放射線源
312 放射線源
314 撮影室
A 欠陥種
B 欠陥種
AR 領域
CD 正解データ
D、D1、D2、D3、D4 欠陥
Dp 欠陥画素
F 枠
GT グランドトゥルースデータ
IM パッチ画像
IR 注目領域
OBJ 被検査体
P10 トレーニング用画像
P30 検査対象画像
Px 画素
S1 ステップ
S2 ステップ
S3 ステップ
S4 ステップ
TD、TD1、TD2 教師データ
WL 溶接線
Claims (18)
- プロセッサを備える教師データ生成装置であって、
前記プロセッサは、
検査対象を含む検査対象画像に対して、検出対象となる欠陥画素を含む2px以上の領域を、注目領域として抽出し、
前記注目領域を含む、パッチサイズのパッチ画像を、教師データとして抽出する、
教師データ生成装置。 - 前記注目領域は、
特定の規則により取得された画素領域であって、
前記画素領域ごとに欠陥に対応する欠陥画素を含むか否かを判定した結果、前記検出対象となる前記欠陥画素を含むと判定された領域である、
請求項1に記載の教師データ生成装置。 - 前記特定の規則は、
ランダムな順または網羅的な順に前記検査対象画像を走査して、固定のサイズの画素範囲を取得することである、
請求項2に記載の教師データ生成装置。 - 前記特定の規則は、
前記検出対象の範囲があらかじめ前記検査対象画像の一部に制限されており、
前記範囲内において、ランダムな順または網羅的な順に走査して、
固定サイズの画素範囲を取得する、
請求項2又は3に記載の教師データ生成装置。 - 前記プロセッサは、
前記検査対象画像に対して、前記検出対象と区別すべき画素を含む、パッチサイズのパッチ画像を、教師データとして抽出する、請求項1から4のいずれか一項に記載の教師データ生成装置。 - 前記注目領域は、
前記検出対象の画素を含む一の検出対象を特定し、
前記検出対象の画素を含む画素領域を一定数取得することで定める、
請求項1から5のいずれか一項に記載の教師データ生成装置。 - 前記パッチサイズは、前記教師データを使用して学習モデルを作成する機械学習装置の入力で定まるサイズである、請求項1から6のいずれか一項に記載の教師データ生成装置。
- 前記注目領域の大きさは、前記検出対象の欠陥の大きさ、又は欠陥の間の距離に基づいて決定される、請求項1から7のいずれか一項に記載の教師データ生成装置。
- 前記プロセッサは、前記検査対象画像に基づくグランドトゥルースデータに基づいて、各前記注目領域に前記欠陥画素を含むか否かを判定する、請求項1から8のいずれか一項に記載の教師データ生成装置。
- 隣接する前記注目領域の距離は前記パッチサイズ以下である、請求項1から9のいずれか一項に記載の教師データ生成装置。
- 前記プロセッサは、各前記注目領域に前記欠陥画素を含むか否かを判定する際、欠陥の種別ごとに判定する、請求項1から10のいずれか一項に記載の教師データ生成装置。
- 前記プロセッサは、前記欠陥の種別ごとの前記教師データの数を調整する、請求項11に記載の教師データ生成装置。
- 前記検査対象画像は、X線透過画像である、
請求項1から12のいずれか一項に記載の教師データ生成装置。 - 前記検査対象画像は、鋳造された金属部品、鍛造された金属部品、又は、溶接された金属部品に対するX線透過画像である、
請求項1から13のいずれか一項に記載の教師データ生成装置。 - プロセッサを備える教師データ生成装置が実行する教師データ生成方法であって、
検査対象を含む検査対象画像に対して、検出対象となる欠陥画素を含む2px以上の領域を、注目領域として抽出するステップと、
前記注目領域を含む、パッチサイズのパッチ画像を、教師データとして抽出するステップと、
を含む、教師データ生成方法。 - プロセッサを備える教師データ生成装置により教師データ生成方法を実行するプログラムであって、
検査対象を含む検査対象画像に対して、検出対象となる欠陥画素を含む2px以上の領域を、注目領域として抽出するステップと、
前記注目領域を含む、パッチサイズのパッチ画像を、教師データとして抽出するステップと、
を実行させるプログラム。 - 非一時的かつコンピュータ読取可能な記録媒体であって、請求項16に記載のプログラムが記録された記録媒体。
- 請求項1から14のいずれか一項に記載の教師データ生成装置と、
検査対象画像を取得する検査対象画像取得部と、
前記教師データ生成装置により作成された教師データを用いて学習を行い、前記検査対象画像における欠陥を検出する欠陥検査部と、
を備える欠陥検査装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202280078905.3A CN118355267A (zh) | 2021-11-29 | 2022-10-26 | 教师数据生成装置、教师数据生成方法、程序及缺陷检查装置 |
JP2023563569A JPWO2023095520A5 (ja) | 2022-10-26 | 教師データ生成装置、教師データ生成方法、プログラム、欠陥検査装置及び記録媒体 | |
EP22898304.5A EP4443146A1 (en) | 2021-11-29 | 2022-10-26 | Training data generation device, training data generation method, program, and defect inspection device |
US18/674,762 US20240311994A1 (en) | 2021-11-29 | 2024-05-24 | Training data generation device, training data generation method, program, and defect test device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021193104 | 2021-11-29 | ||
JP2021-193104 | 2021-11-29 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/674,762 Continuation US20240311994A1 (en) | 2021-11-29 | 2024-05-24 | Training data generation device, training data generation method, program, and defect test device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023095520A1 true WO2023095520A1 (ja) | 2023-06-01 |
Family
ID=86539360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/039841 WO2023095520A1 (ja) | 2021-11-29 | 2022-10-26 | 教師データ生成装置、教師データ生成方法、プログラム及び欠陥検査装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240311994A1 (ja) |
EP (1) | EP4443146A1 (ja) |
CN (1) | CN118355267A (ja) |
WO (1) | WO2023095520A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230162349A1 (en) * | 2021-11-23 | 2023-05-25 | Perkinelmer Health Sciences, Inc. | Three-Dimensional Luminescence Imaging |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012123631A (ja) * | 2010-12-08 | 2012-06-28 | Canon Inc | 注目領域検出方法、注目領域検出装置、及びプログラム |
WO2019059011A1 (ja) * | 2017-09-19 | 2019-03-28 | 富士フイルム株式会社 | 教師データ作成方法及び装置並びに欠陥検査方法及び装置 |
JP2020173547A (ja) * | 2019-04-09 | 2020-10-22 | 富士通株式会社 | 画像検査システム、画像検査装置及び画像検査プログラム |
JP2021047826A (ja) | 2019-09-20 | 2021-03-25 | キヤノン株式会社 | データ処理装置、データ処理方法 |
JP2021152489A (ja) * | 2020-03-24 | 2021-09-30 | 株式会社 システムスクエア | 教師データ生成装置、検査装置及びプログラム |
-
2022
- 2022-10-26 WO PCT/JP2022/039841 patent/WO2023095520A1/ja unknown
- 2022-10-26 EP EP22898304.5A patent/EP4443146A1/en active Pending
- 2022-10-26 CN CN202280078905.3A patent/CN118355267A/zh active Pending
-
2024
- 2024-05-24 US US18/674,762 patent/US20240311994A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012123631A (ja) * | 2010-12-08 | 2012-06-28 | Canon Inc | 注目領域検出方法、注目領域検出装置、及びプログラム |
WO2019059011A1 (ja) * | 2017-09-19 | 2019-03-28 | 富士フイルム株式会社 | 教師データ作成方法及び装置並びに欠陥検査方法及び装置 |
JP2020173547A (ja) * | 2019-04-09 | 2020-10-22 | 富士通株式会社 | 画像検査システム、画像検査装置及び画像検査プログラム |
JP2021047826A (ja) | 2019-09-20 | 2021-03-25 | キヤノン株式会社 | データ処理装置、データ処理方法 |
JP2021152489A (ja) * | 2020-03-24 | 2021-09-30 | 株式会社 システムスクエア | 教師データ生成装置、検査装置及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP4443146A1 (en) | 2024-10-09 |
CN118355267A (zh) | 2024-07-16 |
JPWO2023095520A1 (ja) | 2023-06-01 |
US20240311994A1 (en) | 2024-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6810505B2 (ja) | 教師データ作成方法及び装置並びに欠陥検査方法及び装置 | |
Gobert et al. | Application of supervised machine learning for defect detection during metallic powder bed fusion additive manufacturing using high resolution imaging. | |
US11494891B2 (en) | Method of inspecting and evaluating coating state of steel structure and system therefor | |
US11010890B2 (en) | Method for the non-destructive testing of the volume of a test object and testing device configured for carrying out such a method | |
US20100220910A1 (en) | Method and system for automated x-ray inspection of objects | |
TWI845781B (zh) | 半導體缺陷偵測及分類的方法及系統,以及非暫時性電腦可讀儲存媒體 | |
US20240311994A1 (en) | Training data generation device, training data generation method, program, and defect test device | |
US20220244194A1 (en) | Automated inspection method for a manufactured article and system for performing same | |
TWI826632B (zh) | 用於半導體缺陷檢測及檢視之方法、系統及非暫時性電腦可讀儲存媒體 | |
KR20010081097A (ko) | 비파괴 테스트용 컴퓨터 단층 촬영법 및 장치 | |
Chu et al. | Detection of laser-induced optical defects based on image segmentation | |
CN115713622A (zh) | 一种基于三维模型和探伤图像的铸件缺陷检测方法及系统 | |
JP2832269B2 (ja) | 三次元粒子検出方法及び装置 | |
JP5557271B2 (ja) | 放射線検査装置、放射線検査方法および放射線検査プログラム | |
JP2001209798A (ja) | 外観検査方法及び検査装置 | |
WO2019131945A1 (ja) | 食品検査装置、食品検査方法及び食品検査装置の食品再構成ニューラルネットワークの学習方法 | |
JP2006105794A (ja) | X線検査装置、x線検査方法およびx線検査プログラム | |
JP2007198761A (ja) | 欠陥検出方法および装置 | |
WO2023053768A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP4431591B2 (ja) | 試料検査装置、及び試料検査方法 | |
US20230394718A1 (en) | Segmentation of computed tomography voxel data using machine learning | |
WO2023248583A1 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
WO2023053728A1 (ja) | 表示処理装置、表示処理方法、及び、表示処理プログラム | |
WO2023053727A1 (ja) | 画像処理装置、処理システム、画像表示方法及びプログラム | |
Hena et al. | Exploring the Frontiers of Synthetic Image-Based Deep Learning Training in Digital X-ray Radiography. |
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: 22898304 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2023563569 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2022898304 Country of ref document: EP Effective date: 20240701 |