WO2020031423A1 - オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム - Google Patents

オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム Download PDF

Info

Publication number
WO2020031423A1
WO2020031423A1 PCT/JP2019/013135 JP2019013135W WO2020031423A1 WO 2020031423 A1 WO2020031423 A1 WO 2020031423A1 JP 2019013135 W JP2019013135 W JP 2019013135W WO 2020031423 A1 WO2020031423 A1 WO 2020031423A1
Authority
WO
WIPO (PCT)
Prior art keywords
detection
type
image
unit
captured image
Prior art date
Application number
PCT/JP2019/013135
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 JP2020536309A priority Critical patent/JP7198438B2/ja
Publication of WO2020031423A1 publication Critical patent/WO2020031423A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present disclosure relates to an object detection method, an object detection device, and a computer program.
  • This application claims the priority based on Japanese Patent Application No. 2018-147980 filed on Aug. 6, 2018, and incorporates all the contents described in the Japanese application.
  • Non-Patent Document 1 discloses a technique of self-learning a feature amount of data using an auto encoder.
  • An object detection method is an object detection method for detecting an object included in a captured image, wherein the first method is capable of detecting a position and a type of the object included in the captured image. Detecting an object, in an object of an unspecified type, detecting the object by a second method capable of detecting the position of the object, and detecting the object by the first method; Based on the detection result of the object by the second method, it is determined whether the detection of the object by the first method is successful, and it is determined that the detection of the object by the first method has failed. In this case, the method of detecting the object according to the first method is machine-learned.
  • An object detection device is an object detection device that detects an object included in a captured image, and includes a first detection unit that detects a position and a type of the object included in the captured image, A second detection unit configured to detect a position of the object in the object; a first detection unit configured to perform the first detection based on a detection result of the object by the first detection unit and a detection result of the object by the second detection unit; A determination unit that determines whether the detection of the object by the unit is successful; and if the determination unit determines that the detection of the object by the first detection unit has failed, the detection of the object by the first detection unit.
  • a learning unit that causes the first detection unit to machine-learn the method.
  • a computer program is a computer program for causing a computer to detect an object included in a captured image, wherein the computer program can detect a position and a type of the object included in the captured image.
  • the method detects the object by a second method capable of detecting the position of the object in an unspecified type of the object by detecting the object by the first method, and detecting the object by the first method. Based on the detection result of the object and the detection result of the object by the second method, it is determined whether the detection of the object by the first method is successful, and the detection of the object by the first method fails.
  • the object according to the first method The detection method to execute the process of machine learning.
  • the present application can be realized as a semiconductor integrated circuit that realizes part or all of the object detection device, or as another system including the object detection device.
  • FIG. 1 is a block diagram illustrating a configuration example of the anomaly detection system according to the embodiment.
  • FIG. 2 is a functional block diagram illustrating a configuration example of the anomaly detection device according to the embodiment.
  • FIG. 3 is a flowchart showing a processing procedure relating to object detection and additional learning.
  • FIG. 4 is a flowchart showing the mapping process.
  • FIG. 5A is an explanatory diagram illustrating an object detection method by the first detection unit.
  • FIG. 5B is an explanatory diagram illustrating an object detection method by the first detection unit.
  • FIG. 6 is an explanatory diagram illustrating an object detection method by the second detection unit.
  • FIG. 7 is an explanatory diagram showing a method for determining the position and type of an object in pixel units.
  • FIG. 5A is an explanatory diagram illustrating an object detection method by the first detection unit.
  • FIG. 5B is an explanatory diagram illustrating an object detection method by the first detection unit.
  • FIG. 6 is an explanatory diagram
  • FIG. 8 is a flowchart showing a processing procedure for measuring the dimensions of an object.
  • FIG. 9 is an explanatory diagram showing a method for measuring the size of an object.
  • FIG. 10 is a flowchart showing the object quality judgment processing procedure.
  • FIG. 11 is an explanatory diagram showing a method of determining the quality of an object.
  • FIG. 12A is an explanatory diagram illustrating a method of detecting overlapping objects and measuring a dimension.
  • FIG. 12B is an explanatory diagram showing a method of detecting overlapping objects and measuring dimensions.
  • FIG. 12C is an explanatory diagram showing a method of detecting overlapping objects and measuring dimensions.
  • FIG. 12D is an explanatory diagram showing a method of detecting overlapping objects and measuring dimensions.
  • FIG. 12A is an explanatory diagram illustrating a method of detecting overlapping objects and measuring a dimension.
  • FIG. 12B is an explanatory diagram showing a method of detecting overlapping objects and measuring dimensions.
  • FIG. 13 is a flowchart illustrating a processing procedure for generating learning data.
  • FIG. 14 is an explanatory diagram illustrating a method of generating learning data.
  • FIG. 15A is an explanatory diagram illustrating a method for generating learning data.
  • FIG. 15B is an explanatory diagram illustrating a method of generating learning data.
  • the defect inspection technique is required to not only detect a specific defect but also to detect an unknown abnormality.
  • an image recognition technique using Tensorflow (registered trademark) or a method of detecting an object on a pixel basis such as a full-layer convolution network (FCN) only objects that have been learned in advance can be detected, and unknown objects can be detected. Failure cannot be detected.
  • an auto encoder an unknown abnormality can be detected, but the details of the abnormality cannot be specified. For this reason, it is not possible to perform a failure determination according to the content of the abnormality.
  • An object of the present disclosure is to improve the detection capability of an object in accordance with an environment by additionally learning an unknown object, and to detect an object such as an abnormality in a product, whether known or unknown, in an object detection.
  • a method, an object detection device, and a computer program are provided.
  • the detection capability of the object can be improved in accordance with the environment, and an object such as a product abnormality can be detected regardless of whether it is known or unknown.
  • An object detection method is an object detection method for detecting an object included in a captured image, and a first method capable of detecting a position and a type of the object included in the captured image. Detecting the object by a second method, detecting the object by a second method capable of detecting the position of the object in an unspecified type of the object, and detecting the object by the first method. Based on the detection result and the detection result of the object by the second method, it is determined whether the detection of the object by the first method is successful, and the detection of the object by the first method fails. If it is determined that the object is present, the method of detecting the object by the first method is machine-learned.
  • an object is mainly detected using the first method.
  • the first method can detect the position and type of an object.
  • the second method is a method that can detect the position of an object regardless of the type of the object. That is, even if an unknown object fails to be detected in the first method, the object can be detected in the second method.
  • the type of the object cannot be detected. Therefore, based on the detection result of the object by the first method and the detection result of the object by the second method, it is determined whether the detection of the object by the first method is successful or not. If it is determined that the detection of the object by the first method has failed, the detection method according to the first method is machine-learned.
  • the object detection processing according to the first method and the object detection processing according to the second method are performed is not limited. You may.
  • a learned auto-encoder that outputs data of a feature extraction image in which characteristics of the input data are extracted. Is preferably used.
  • an unknown object can be detected by using a learned auto encoder.
  • the detection of the object by the first method includes, when data of the captured image is input, a learned image recognition neural network that outputs the position and type of the object included in the captured image. It is preferable to use such a structure.
  • an object having various characteristics can be recognized, and the position and type of the object can be detected. Further, the additional learning allows the image recognition neural network to recognize an unknown object.
  • the type of the object included in the captured image is detected by a third method different from the first method.
  • the captured image and the third image are output so that the position and type of the object detected by the third method are output. It is preferable that the image recognition neural network be machine-learned using the detection result according to the method.
  • the detection of the type of the object by the first method described in the aspect (1) fails, the type of the object is detected by the third method. Then, by additionally learning the image recognition neural network using the detection result by the third method, the accuracy of detecting the object by the first method can be automatically improved.
  • the detection of the object by the third method is such that the type of the object is detected based on a shape pattern of a contour line of the object.
  • a type of an object that cannot be detected by the image recognition neural network is detected based on a shape pattern of an outline of the object. That is, any object that has failed to be detected by the first method is recognized by the second method, and its type is detected by the third method. Then, based on the detection result, it is possible to additionally learn the image recognition neural network. In the third method alone, the detection process is performed in a state where the object is not recognized, and the type of the object may not be properly detected.
  • the type of the object is accepted from a user, and when the data of the captured image is input to the image recognition neural network, the object It is preferable that the image recognition neural network be machine-learned using the captured image and the type of the received object so that the position and the type of are output.
  • the type of the object when the type of the object cannot be recognized even in the third method, the type of the object can be received from the user, and additional learning of the image recognition neural network can be performed using the received content. That is, according to the above-described modes (4) and (5), the image recognition neural network is additionally learned as automatically as possible, and an unknown object that cannot be recognized even by the third method is assisted by the user to perform the image recognition neural network. Perform additional learning. Therefore, even in an environment where an unknown object may be generated, the image recognition neural network is additionally learned semi-automatically so that various objects can be recognized, and the positions and types of various objects can be detected.
  • object detection using the image recognition neural network and additional learning of the image recognition neural network can be performed in parallel. Therefore, the object detection processing can be continued even during the learning processing of the image recognition neural network.
  • the captured image is an image obtained by capturing an image of an inspection target, and the object to be detected is an abnormal site in the inspection target.
  • the abnormal site and the type of the inspection object can be detected, and the position and the type of the unknown abnormal site can be detected by additional learning.
  • An object detection device is an object detection device that detects an object included in a captured image, and includes a first detection unit that detects a position and a type of the object included in the captured image.
  • a second detection unit that detects the position of the object, a detection result of the object by the first detection unit, and a detection result of the object by the second detection unit,
  • a determining unit that determines whether the detection of the object by the first detection unit is successful; and if the determination unit determines that the detection of the object by the first detection unit has failed, the first detection unit
  • a learning unit that causes the first detection unit to machine-learn the object detection method.
  • the detection capability of the object is improved in accordance with the environment, and the abnormality of the product, whether known or unknown, can be improved. Of objects can be detected.
  • a computer program according to the present disclosure is a computer program for causing a computer to detect an object included in a captured image, and causing the computer to detect a position and a type of the object included in the captured image. Detecting the object by a second method capable of detecting the position of the object in an unspecified type of the object; Determining the success or failure of the detection of the object by the first method based on the detection result of the object by the method of the above and the detection result of the object by the second method; If it is determined that the detection of the The method of detecting objects to execute a process of machine learning.
  • the computer can be caused to function as the object detection device according to aspect (9).
  • FIG. 1 is a block diagram illustrating a configuration example of the catastrophe detection system according to the embodiment.
  • the incident detection system according to the embodiment includes an incident detection device 1 and a machine learning device 9.
  • the anomaly detection device 1 is installed in, for example, a factory where an inspection target is manufactured, and the machine learning device 9 is installed in a facility outside the factory.
  • the anomaly detection device 1 is a computer having an arithmetic unit 11 such as one or more CPUs (Central Processing Units), a multi-core CPU, a GPU (Graphics Processing Unit), a TPU (Tensor Processing Unit), and the like.
  • a temporary storage unit 12, an image input unit 13, an output unit 14, an input unit 15, a storage unit 16, a data storage unit 17, and a communication unit 18 are connected to the arithmetic unit 11 via a bus line.
  • the anomaly detection device 1 acquires image data of a captured image 5 (see FIG. 5A) obtained by capturing an inspection object to be manufactured, and detects an object 6 that is a detection target included in the captured image 5.
  • an abnormal site such as dust and hair attached to the inspection target, dents of the inspection target, and the like is detected.
  • the inspection object is, for example, a connector that forms a wire harness.
  • the anomaly detection device 1 according to the present embodiment has a function of semi-automatically machine learning an unknown anomalous site, and can detect the position and type of such anomaly site.
  • the arithmetic unit 11 controls the operation of each component by executing a computer program 16a described later stored in the storage unit 16.
  • the calculation unit 11 performs a process of detecting a position and a type of the object 6 included in the captured image 5 obtained by capturing the inspection target object on a pixel-by-pixel basis, and detecting a change in the inspection target object.
  • communication with the machine learning device is performed to execute a process of machine learning an unknown abnormal part. Details of the processing content will be described later.
  • the temporary storage unit 12 is a memory such as a DRAM (Dynamic RAM) or an SRAM (Static RAM), and is a computer program 16a read from the storage unit 16 when the arithmetic processing of the arithmetic unit 11 is executed, or by the arithmetic processing. The resulting various data is temporarily stored.
  • DRAM Dynamic RAM
  • SRAM Static RAM
  • the storage unit 16 is a nonvolatile memory such as a hard disk, an electrically erasable programmable ROM (EEPROM), and a flash memory.
  • the storage unit 16 executes a process of detecting the position and type of the object 6 included in the captured image 5 on a pixel-by-pixel basis and detecting an anomaly of the inspection object by the operation unit 11 controlling the operation of each component.
  • a computer program 16a for executing the program.
  • the storage unit 16 recognizes the shape of the various objects 6 and information such as feature amounts for detecting the type of the object 6 included in the captured image 5.
  • a threshold for determining whether or not it is stored is stored.
  • the threshold value differs for each type of object 6, and the storage unit 16 stores different threshold values in association with the types of the plurality of objects 6.
  • the storage unit 16 may store the computer program 16a read from a recording medium by a reading device (not shown).
  • the recording medium is an optical disk such as a CD (Compact Disc) -ROM, a DVD (Digital Versatile Disc) -ROM, a BD (Blu-ray (registered trademark) Disc), a magnetic disk such as a flexible disk and a hard disk, a magnetic optical disk, and a semiconductor memory.
  • the computer program 16a may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the storage unit 16.
  • the image input unit 13 is an interface to which the imaging unit 1a is connected.
  • the imaging unit 1a converts the image formed by the lens into an electric signal, such as a CCD or a CMOS, and converts the electric signal converted by the image pickup device into digital image data.
  • the image data output from the imaging unit 1a is input to the incident detection device 1 via the image input unit 13.
  • the imaging unit 1a and the anomaly detection device 1 may be connected by a dedicated cable or may be connected via a network such as a LAN (Local Area Network).
  • the image data is digital data in which each pixel arranged vertically and horizontally is represented by a luminance value of a predetermined gradation. In the present embodiment, a description will be given assuming that the image data is monochrome image data.
  • the output unit 14 is an interface to which the display unit 1b is connected.
  • the display unit 1b is a liquid crystal panel, an organic EL display, an electronic paper, a plasma display, or the like.
  • the display unit 1b displays various information corresponding to the image data provided from the calculation unit 11. For example, the content of the abnormal detection result, an image of a defective inspection object, and the like are displayed.
  • the display unit 1b is an example of an external output device that outputs a result of detecting an abnormal event, and may be a buzzer, a speaker, a light emitting element, or another notification device. The worker of the factory can recognize the state of the inspection object and the like as a result of the abnormal detection from the image displayed on the display unit 1b.
  • Operation unit 1c such as a keyboard, a mouse, and a touch sensor is connected to input unit 15.
  • a signal indicating the operation state of the operation unit 1c is input to the incident detection device 1 via the input unit 15.
  • the calculation unit 11 can recognize the operation state of the operation unit 1c via the input unit 15.
  • the data storage unit 17 is a nonvolatile memory such as a hard disk, an EEPROM, and a flash memory, like the storage unit 16.
  • the data storage unit 17 stores data such as the image data of the inspection object and the abnormal detection result.
  • the communication unit 18 is a communication device for transmitting and receiving data to and from the machine learning device 9.
  • FIG. 2 is a functional block diagram illustrating a configuration example of the anomaly detection device 1 according to the embodiment.
  • the abnormality detection device 1 includes a first detection unit 2, a second detection unit 3, and a pass / fail determination unit 4 as functional units.
  • Each functional unit of the incident detection device 1 is realized by hardware such as the arithmetic unit 11 and the temporary storage unit 12.
  • the first detection unit 2 recognizes the image of the object 6 included in the captured image 5 and detects the position, the range, and the type of the object 6. Specifically, when data of the captured image 5 is input, the first detection unit 2 outputs the position and range of one or more objects 6 included in the captured image 5 and the type of the object 6
  • the image recognition neural network 21 is provided.
  • the position of the object 6 is specified by the position and size of the bounding box 7 surrounding the object 6 (see FIG. 5B).
  • the bounding box 7 is, for example, rectangular and has a width and a height such that the object 6 is substantially inscribed.
  • the image recognition neural network 21 can be configured using, for example, a known Tensorflow (registered trademark).
  • the image recognition neural network 21 can be configured using another known convolutional neural network (CNN).
  • CNN convolutional neural network
  • the image recognition neural network 21 performs machine learning using image data of the object 6 and information indicating the type of the object 6 as teacher data so that the type of the object 6 included in the captured image 5 is output.
  • the second detector 3 includes an auto encoder 31 and a difference data generator 32.
  • the auto encoder 31 is a functional unit that receives image data output from the imaging unit 1a and outputs image data of a feature extraction image 5a obtained by extracting features of the inspection target included in the captured image 5 (see FIG. 6). ). Specifically, when the image data is input, the auto encoder 31 outputs the image data of the feature extraction image 5a representing the feature of the normal inspection object.
  • the captured image 5 may include an image of dust, a scratch, a shadow, an abnormal part of the inspection object itself, or the like.
  • the feature extraction image 5a is a captured image 5 that is obtained by removing these images and reproducing an ideal inspection target that is obtained when a normal inspection target having no abnormal change is captured.
  • Auto-encoding is realized by a neural network.
  • the neural network includes an intermediate layer that compresses image data in a dimension, and inputs and outputs image data having the same number of pixels.
  • the auto encoder 31 has an input layer 31a, an output layer 31b, a convolution layer (CONV layer) 31c, and a deconvolution layer (DECONV layer) 31d.
  • the input layer 31a is a layer to which data of each pixel value related to image data is input.
  • the convolution layer 31c is a layer for dimensionally compressing image data. For example, the convolution layer 31c performs dimensional compression by performing convolution integration. The feature amount of the inspection object is extracted by the dimensional compression.
  • the deconvolution layer 31d is a layer for restoring the data dimensionally compressed by the convolution layer 31c to the original dimensions. The deconvolution layer 31d performs a deconvolution process to restore the original dimension.
  • the output layer 31b is a layer that outputs data of each pixel value of the feature extraction image 5a from which the features of the inspection object are extracted by the convolution layer 31c and the deconvolution layer 31d.
  • the auto encoder 31 causes the neural network of the auto encoder 31 to perform machine learning so that the input image data and the output image data are the same. That is, the neural network is machine-learned so that the input captured image 5 and the output feature extraction image 5a are the same. Such machine learning is performed using image data obtained by imaging a normal inspection target.
  • the difference data generation unit 32 calculates a difference between the image data obtained from the imaging unit 1a and the image data output from the auto encoder 31. Specifically, the difference data generation unit 32 calculates a difference between pixel values of pixels at the same location in each image data for each pixel. Then, the difference data generation unit 32 performs binarization by comparing the difference between the pixel values and a predetermined threshold. By the binarization processing, an image including the image of the object 6 detected in pixel units is obtained.
  • a differential image 5b an image including the object 6 detected in pixel units is referred to as a differential image 5b (see FIG. 6).
  • the pass / fail determination unit 4 includes an object detection processing unit 41, a dimension measurement processing unit 42, and a pass / fail determination processing unit 43.
  • the object detection processing unit 41 is a functional unit that detects the position and type of one or a plurality of objects 6 included in the captured image 5 in pixel units.
  • the dimension measurement processing unit 42 is a functional unit that measures the dimensions of each object 6 detected in pixel units.
  • the pass / fail determination processing unit 43 executes a process of comparing the size of the object 6 with a threshold value according to the type of the object 6 to determine whether the change is acceptable, that is, determine whether the change is acceptable. It is a functional unit.
  • the machine learning device 9 is a server device that additionally learns the image recognition neural network 21 constituting the anomaly detection device 1.
  • the machine learning device 9 is a computer, and the basic hardware configuration is the same as that of the incident detection device 1.
  • the anomaly detection device 1 and the machine learning device 9 are separate computers, and operate by executing programs in parallel. Specifically, the anomaly detection device 1 provides a copy of the image recognition neural network 21 to the machine learning device 9 and, while the anomaly detection device 1 executes a process of detecting an anomaly of the inspection object, the machine learning The device 9 can execute an additional learning process of the image recognition neural network 21. The anomaly detection device 1 continues the anomaly detection process using the image recognition neural network 21 before learning, not the image recognition neural network 21 during learning. The machine learning device 9 transmits to the machine learning device 9 various parameters for configuring the image recognition neural network 21, for example, parameters such as the number of layers of the image recognition neural network 21, the number of neurons, the type of the neural network, and the weight coefficient. By doing so, a copy of the image recognition neural network 21 is provided.
  • the anomaly detection device 1 adds, when the position and range of the object 6 detected by the first detection unit 2 and the position of the object 6 detected by the second detection unit 3 do not match during the abnormality detection process. Requests processing related to learning from the machine learning device 9.
  • FIG. 3 is a flowchart illustrating a processing procedure related to object detection.
  • the calculation unit 11 acquires the image data output from the imaging unit 1a (Step S11).
  • the calculation unit 11 detects the position and the type of the object 6 included in the captured image 5 on a pixel-by-pixel basis by executing a mapping process described later (step S12).
  • the calculation unit 11 determines whether or not the detection of the object 6 has succeeded (step S13). Specifically, the calculation unit 11 determines the position and range of the object 6 specified by the first detection unit 2 in the bounding box 7 and the position of the pixel of the object 6 detected by the second detection unit 3. If they match, it is determined that the detection of the object 6 has succeeded. If they do not match, it is determined that the detection of the object 6 has failed.
  • a state in which the type of the object 6 is not detected by the first detection unit 2 even though the pixel of the object 6 is detected by the second detection unit 3 is an example of detection failure. It will be described as.
  • step S13 If it is determined that the detection of the object 6 has not failed (step S13: NO), the calculation unit 11 measures the size of the detected object 6 (step S14) and determines the quality of the object 6 (step S14). S15).
  • the calculation unit 11 determines the quality of the inspection object based on the determination result of step S15 (step S16). That is, the operation unit 11 determines whether or not there is an allowable incident. If it is determined to be good (step S16: YES), the calculation unit 11 returns the process to step S11.
  • the calculation unit 11 executes a predetermined process for coping with an abnormal change of the inspection target (step S17), and returns the process to step S11. For example, the calculation unit 11 executes a process of notifying that the inspection target has an abnormality. Further, the calculation unit 11 executes a process of displaying an image indicating the result of the pass / fail judgment (see the right diagram in FIG. 11) on the display unit 1b.
  • the information of the image indicating the result of the pass / fail determination is an example of information based on information obtained by the detection processing by the first detection unit 2 and information obtained by the detection processing by the second detection unit 3.
  • FIG. 4 is a flowchart showing a mapping processing procedure.
  • the first detection unit 2 specifies the position and range of one or more objects 6 included in the captured image 5 with the bounding box 7 and detects the type of the object 6 surrounded by the bounding box 7 (Step S31). ).
  • FIGS. 5A and 5B are explanatory diagrams illustrating an object detection method by the first detection unit 2.
  • FIG. 5A shows the captured image 5
  • FIG. 5B shows the captured image 5 showing the detection result of the object 6.
  • the captured image 5 includes a plurality of objects 6.
  • an object 61 that is a dust image, an object 62 that is a hair image, an object 63 that is a dent image, and the like are included.
  • each object 6 detected by the first detection unit 2 is surrounded by a bounding box 7, and the position of the object 6 is represented by the position and size of the bounding box 7.
  • the bounding box 71 indicates the position and range of the dust object 61
  • the bounding box 72 indicates the position and range of the hair object 62
  • the bounding box 73 indicates the position and range of the dent object 63. I have.
  • the type of the object 6 included in the bounding box 7 is displayed. As described above, according to the first detection unit 2, the approximate position, range, and type of each object 6 included in the captured image 5 are specified.
  • the second detection unit 3 detects the object 6 included in the captured image 5 on a pixel basis (Step S32).
  • FIG. 6 is an explanatory diagram showing an object detection method by the second detection unit 3.
  • the image data of the captured image 5 is input to the auto encoder 31, the image data of the feature extraction image 5a representing the original characteristics of the captured image 5 from which the abnormal part has been removed is output.
  • the difference data generation unit 32 calculates a difference between the acquired original image data and the image data output from the auto encoder 31. Specifically, the difference data generation unit 32 calculates a difference between pixel values of pixels at the same location in each image data for each pixel. Then, the difference data generation unit 32 performs binarization by comparing the difference between the pixel values and a predetermined threshold. By the binarization processing, an image including the image of the object 6 detected in pixel units is obtained.
  • an image including the object 6 detected in pixel units is referred to as a differential image 5b.
  • the difference image 5b does not include the inspection target itself, but includes only the object 6 that is the abnormal site.
  • the difference image 5b includes an object 61 that is a dust image, an object 62 that is a hair image, and an object 63 that is a dent image.
  • the calculation unit 11 determines the position and the type of the object 6 on a pixel-by-pixel basis by the mapping process (step S33), and ends the process related to the object detection.
  • the calculation unit 11 that performs the process of step S33 functions as a determination unit that determines the position and type of the object 6 on a pixel basis based on the detection results of the first detection unit 2 and the second detection unit 3.
  • FIG. 7 is an explanatory diagram illustrating a method for determining the position and type of the object 6 in pixel units.
  • the upper left diagram is a captured image 5 on which the detection result of the object 6 by the first detection unit 2 is reflected.
  • the position of each object 6 included in the captured image 5 is represented by the position and size of the bounding box 7.
  • the type of each object 6 is represented by a label attached to the bounding box 7.
  • the bounding box 7 indicates the type of the object 6, but does not have accurate information on the position, shape, or size of the object 6.
  • the lower left diagram is a difference image 5b reflecting the detection result of the object 6 by the second detection unit 3.
  • Each pixel of the object 6 included in the difference image 5b accurately indicates the position or shape of the object 6 in pixel units, but does not have information on the type of the object 6.
  • the middle diagram conceptually shows a state in which the bounding box 7 is mapped on the difference image 5b output from the second detection unit 3. By mapping the bounding box 7 to the difference image 5b, it becomes possible to determine the type of the object 6 in pixel units. That is, by associating the one type with the pixels of the object 6 included in the one type of bounding box 7, the type of the object 6 can be determined in pixel units.
  • the right diagram conceptually shows a state in which the type of the object 6 is determined for each pixel. For example, the type “dust” is associated with each pixel constituting the dust object 61. Similarly, the type “hair” is associated with each pixel forming the hair object 62, and the type “dent” is associated with each pixel forming the dent object 63.
  • FIG. 8 is a flowchart showing a processing procedure for measuring the size of the object 6, and FIG. 9 is an explanatory diagram showing a method for measuring the size of the object 6.
  • the calculation unit 11 selects a pixel group of one type of the object 6 (step S51). That is, a group of a plurality of pixels constituting one object 6 is selected. For example, as shown in FIG. 9, a group of a plurality of pixels constituting the dust object 61 is selected. A plurality of pixels having different types of the object 6 are not selected as a group of pixels even if they are connected or adjacent. Further, even if a plurality of pixels of the same type of the object 6 are separated by a predetermined pixel or more, they are not selected as a group of pixels.
  • the calculation unit 11 calculates the total number of pixels of a group of the selected object 6 as shown in the right diagram of FIG. 9 (step S52).
  • the total number of pixels constituting the dust object 61 is 13.
  • the total number of pixels constituting hair is 19.
  • the total number of pixels constituting the object 6 corresponds to the size of the object 6.
  • the shape of the object 6 is various, such as a lump-shaped object or a linear object, but the objects 6 of the same type have substantially the same shape. Therefore, if the type of the object 6 is known, the total number of pixels constituting the object 6 can be used as information indicating the size of the object 6.
  • the total number of pixels constituting the hair object 62 corresponds to the length of the hair.
  • the total number of pixels constituting the dust object 61 substantially corresponds to the product of the vertical and horizontal dimensions.
  • the calculation unit 11 determines whether or not the dimension measurement of all the objects 6 included in the difference image 5b has been completed (Step S53). If it is determined that there is an object 6 for which measurement has not been completed (step S53: NO), the process returns to step S51, and the same calculation processing is executed for the other objects 6 whose dimensions have not been measured. When it is determined that the measurement processing of all the objects 6 has been completed (step S53: YES), the calculation unit 11 ends the processing related to the dimension measurement.
  • FIG. 10 is a flowchart showing a procedure for determining whether or not the object 6 is good
  • FIG. 11 is an explanatory diagram showing a method for determining whether the object 6 is good.
  • the calculation unit 11 selects a threshold value corresponding to the type of the pixel group of the object 6 that is the target of the quality determination (step S71).
  • the storage unit 16 stores a different threshold value for each type of the object 6, and the calculation unit 11 selects a threshold value associated with the type of the object 6 to be determined.
  • the calculation unit 11 compares the total number of pixels of the object 6 as the quality determination target with the threshold value selected in step S71 (step S72), and stores the comparison result (step S73). For example, when the total number of pixels constituting one object 6 is equal to or greater than a threshold, the calculation unit 11 stores information indicating that the object 6 is an unacceptable anomaly. When the total number of pixels is less than the threshold value, information indicating that the object 6 is an allowable incident is stored. As shown in FIG. 11, the total number of pixels indicating the size of dust ( ⁇ pixel) is smaller than the first threshold value related to dust, so that it is determined to be acceptable.
  • step S74 determines whether the quality judgment has been completed for all the objects 6 (step S74). If it is determined that there is an object 6 for which the quality determination has not been completed (step S74: NO), the process returns to step S71, and the same calculation process is executed for the other objects 6 whose quality has not been measured. When it is determined that the quality determination has been completed for all the objects 6 (step S74: YES), the calculation unit 11 ends the processing related to the quality determination.
  • the state in which the plurality of objects 6 included in the captured image 5 are separated from each other has been described as an example.
  • the detection of the object 6 in pixel units is performed.
  • Dimension measurement and abnormality determination can be performed.
  • FIG. 12A, 12B, 12C, and 12D are explanatory diagrams illustrating a method of detecting the overlapping object 6 and measuring the dimension.
  • FIG. 12A shows a state where dust and hair objects 61 and 62 overlap each other.
  • the second detection unit 3 detects a plurality of pixels constituting the dust and hair objects 61 and 62 as a group of pixels without distinguishing the type of each object 6.
  • FIG. 12B shows a state mapped by the bounding box 71 indicating the position and range of the dust.
  • the calculation unit 11 recognizes a pixel group included in the bounding box 71 as a pixel constituting the dust object 61, and assigns a type “dust” to each pixel.
  • FIG. 12A shows a state where dust and hair objects 61 and 62 overlap each other.
  • the second detection unit 3 detects a plurality of pixels constituting the dust and hair objects 61 and 62 as a group of pixels without distinguishing the type of each object 6.
  • FIG. 12B
  • FIG. 12C shows a state mapped by the bounding box 72 indicating the position and range of the hair.
  • the calculation unit 11 recognizes the pixel group included in the bounding box 72 as a pixel constituting the hair object 62, and assigns the type “hair” to each pixel.
  • FIG. 12D shows the result of recognizing the type of the object 6 in pixel units by the mapping processing shown in FIGS. 12B and 12C. Pixels shown in black are given the type “hair”. Pixels with hatching are given the type “dust”. The white pixels are given both the types “dust” and “hair”. In this way, by assigning both types to the pixels of the portion where the object 6 overlaps, it is possible to measure the dimensions of each object 6 even if the objects 6 overlap.
  • the pixels to which the type of “dust” is assigned are hatched pixels and white pixels, and the size of the “dust” object 61 is measured by calculating the total number of the pixels. be able to.
  • the pixels to which the type of “hair” is given are black pixels and white pixels, and by calculating the total number of the pixels, the size of the “hair” object 62 is measured. Can be. In this way, even if a plurality of types of objects 6 overlap, the position and type of each object 6 can be detected in pixel units, and the dimensions of each object 6 can be measured.
  • step S13 When it is determined in step S13 that the detection of the object 6 has failed (step S13: YES), the calculation unit 11 transmits the current image recognition neural network 21 to the machine learning device 9 via the communication unit 18 (step S18). Specifically, various parameters for configuring the image recognition neural network 21 are transmitted to the machine learning device 9.
  • the machine learning device 9 receives the image recognition neural network 21 transmitted from the anomaly detection device 1 as an additional learning target (Step S19).
  • the abnormal detection apparatus 1 that has completed the processing in step S18 executes processing related to generation of learning data (step S20).
  • FIG. 13 is a flowchart showing a processing procedure for generating learning data
  • FIGS. 14, 15A and 15B are explanatory diagrams showing a method for generating learning data.
  • the calculation unit 11 divides the captured image 5 in which the detection of the object 6 has failed in a grid pattern as shown in the right diagram of FIG. 14, and assigns an array Y indicating information on the object 6 to each of the divided image blocks. Assigned (step S91).
  • the array Y is represented, for example, by the following formula (1).
  • the initial value of each variable of the array allocated in step S91 is 0.
  • the variable P in the array Y indicates whether or not the object 6 is included in the image block.
  • the variables Bx and By indicate the center position of the object 6, for example, the X coordinate and the Y coordinate of the center of gravity of the image.
  • the method of setting the coordinate system is not particularly limited.
  • the lower left vertex of each image block is the origin
  • the horizontal direction of the captured image 5 is the X axis
  • the vertical direction is the vertical direction. It is preferable to use an orthogonal coordinate system with the Y axis.
  • the variables Bw and Bh indicate the width and height of the object 6.
  • a variable indicating the type of the object 6 may be provided with an appropriate number of variables of the type “undecided” so as to correspond to the type of the new object 6.
  • the arithmetic unit 11 having completed the processing in step S91 refers to the detection result of the second detection unit 3 and specifies the presence / absence, position, and size of the object 6 in each image block (step S92). Then, as shown in FIGS. 15A and 15B, the calculation unit 11 substitutes the corresponding numerical values into the variables P, Bx, By, Bw, and Bh of the array Y assigned to each image block according to the specified result (Step S10). S93). When the object 6 is not included in the image block, each variable of the array Y is 0.
  • the calculation unit 11 performs a known shape recognition process on the captured image 5 to detect the type of the object 6 whose type has not been specified (step S94). For example, the calculation unit 11 detects an edge of the object 6, calculates a predetermined feature amount, and compares the calculated feature amount with the feature amount stored in the storage unit 16 to specify the type of the object 6 corresponding to the similar feature amount. By doing so, the type of the object 6 is detected. Further, the type of the object 6 may be specified by pattern matching.
  • step S94 determines whether the type of the object 6 has been successfully detected (step S95). If it is determined that the calculation has succeeded (step S95: YES), the arithmetic unit 11 substitutes the corresponding numerical values into the variables C1, C2, C3,... According to the detection result of step S94 (step S97), Is completed.
  • step S95 the calculation unit 11 receives the type of the object 6 from the user using the operation unit 1c (step S96).
  • the calculation unit 11 may display the captured image 5 in question on the display unit 1b and display an instruction image indicating an image portion in which the detection of the object 6 has failed.
  • a frame image surrounding the pixel group of the object 6 detected by the second detection unit 3 without being detected by the first detection unit 2 may be displayed so as to be superimposed on the captured image 5.
  • the frame image is an example, and may be an arrow image or the like.
  • the calculation unit 11 presents a plurality of types that are assumed to the user, and receives the selection of the type by the user. If the type is a new type, the calculation unit 11 may accept registration of the name of the type.
  • the calculation unit 11 receives a name of a new type from the user, and changes and registers a variable name of the type “undecided” to the name.
  • the arithmetic unit 11 substitutes the corresponding numerical values into the variables C1, C2, C3,... (Step S97), and ends the learning data generation process.
  • the arithmetic unit 11 substitutes the corresponding numerical values into the variables C1, C2, C3,... (Step S97), and ends the learning data generation process.
  • the arithmetic unit 11 stores the generated learning data in the data storage unit 17 (step S21). Then, the calculation unit 11 determines whether a predetermined amount of learning data has been accumulated (step S22). If it is determined that the predetermined amount of the learning data has not been accumulated (step S22: NO), the arithmetic unit 11 returns the process to step S14, and continues the abnormal change detection process and the accumulation of the learning data. If it is determined that a predetermined amount of learning data has been accumulated (step S22: YES), the arithmetic unit 11 transmits the learning data accumulated in the data accumulation unit 17 to the machine learning device 9 via the communication unit 18 ( Step S23).
  • the machine learning device 9 receives the learning data transmitted from the anomaly detection device 1 (step S24), and additionally learns the image recognition neural network 21 received in step S19 using the learning data (step S25). ). That is, when the image data of the captured image 5 including the unrecognizable object 6 is input to the image recognition neural network 21, the machine learning device 9 outputs data indicating the position, range, and type of the object 6. In this way, the image recognition neural network 21 is additionally trained using the learning data.
  • the additional learning is supervised learning.
  • the machine learning device 9 transmits the image recognition neural network 21 additionally learned in step S25 to the anomaly detection device 1 (step S26).
  • the incident detection device 1 receives the additionally learned image recognition neural network 21 transmitted from the machine learning device 9 by the communication unit 18 (Step S27).
  • the calculation unit 11 of the anomaly detection device 1 updates the image recognition neural network 21 before the additional learning to a new image recognition neural network 21 that has been additionally learned (step S28), and returns the process to step S11.
  • the failure is detected using the auto encoder 31 and the image recognition neural network 21 Can be additionally learned.
  • the auto encoder 31 it is possible to accurately recognize the object 6, which is an abnormal part, regardless of the type of the object 6, and to accurately detect the failure of the object 6 using the image recognition neural network 21. Can be detected.
  • the object 6 having various characteristics can be recognized, and the position, range and type of the object 6 can be detected.
  • the unknown object 6 can be recognized semi-automatically by the additional learning.
  • the type of the object 6 when the type of the object 6 is not detected by using the image recognition neural network 21, the type of the object 6 can be detected by shape recognition, and the image recognition neural network 21 can be additionally learned automatically.
  • the edge of the object 6, that is, the outline it is possible to detect the edge of the object 6, that is, the outline, calculate a predetermined characteristic amount, specify the type of the object 6, and automatically perform additional learning of the image recognition neural network 21.
  • the additional learning data can be generated by accepting the type of the object 6 from the user, and the image recognition neural network 21 can be additionally learned.
  • the detection of the object 6 or the abnormal detection of the inspection object and the additional learning of the image recognition neural network 21 can be executed in parallel. Therefore, the detection process of the object 6 can be continued even during the learning process of the image recognition neural network 21.
  • the position and type of the object 6 included in the captured image 5 are detected on a pixel-by-pixel basis by detecting the object 6 with the first detection unit 2 and the second detection unit 3 and performing the mapping process shown in FIG. can do. Since it is possible to detect the position and type of the object 6 in pixel units, it is possible to accurately measure the size of the object 6 that is an abnormal site. Furthermore, the abnormal site detected in pixel units and the quality thereof can be displayed as shown in FIG.
  • the above-described determination can be performed by a simple process of comparing the total number of pixels of the object 6 detected in pixel units with a threshold value without performing different measurement calculation processes according to the shape of the object 6. . That is, it is possible to determine whether or not the size of the abnormal site is an allowable size without calculating the size of the abnormal site by complicated processing.
  • the position of the object 6 can be accurately detected in pixel units. Further, the size of the object 6 can be accurately calculated.
  • the object 6 having various features can be recognized, and the position, range and type of the object 6 can be detected.
  • one computer operates as the anomaly detection device 1 and functions as the first detection unit 2, the second detection unit 3, the pass / fail determination unit 4, and the like.
  • a part or all of the processing to be realized may be configured to be executed by a cloud computer. Further, the processing to realize each functional unit may be executed by a virtual machine, such as by being executed by a plurality of computers.
  • the system for mainly detecting the quality of the inspection object is described.
  • the content of the object 6 to be detected is not particularly limited.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

撮像画像に含まれるオブジェクトを検出するオブジェクト検出方法であって、撮像画像に含まれるオブジェクトの位置及び種類を検出することが可能な第1の方式にてオブジェクトを検出し、不特定の種類の前記オブジェクトにおいて、オブジェクトの位置を検出することが可能な第2の方式にてオブジェクトを検出し、第1の方式によるオブジェクトの検出結果と、第2の方式によるオブジェクトの検出結果とに基づいて、第1の方式によるオブジェクトの検出の成否を判定し、第1の方式によるオブジェクトの検出に失敗していると判定された場合、第1の方式によるオブジェクトの検出方法を機械学習させる。

Description

オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム
 本開示はオブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラムに関する。
 本出願は、2018年8月6日出願の日本出願第2018-147980号に基づく優先権を主張し、前記日本出願に記載された全ての記載内容を援用するものである。
 工業的に生産される製造物を撮像し、撮像して得られる良品及び不良品の撮像画像を教師データとしてニューラルネットワークを深層機械学習させることにより、学習済みニューラルネットワークを用いた部品の良否判定を行うことができる。
 一方、Tensorflow(登録商標)を用いた画像認識技術を利用することにより、撮像画像に含まれるオブジェクトの位置及び範囲、当該オブジェクトの種類を検出する技術がある。例えば、撮像画像に含まれる人物、動物、車両等の画像部分を検出することができる。
 また、非特許文献1は、オートエンコーダを用いて、データの特徴量を自己学習する技術を開示している。
G. E. Hinton and R. Salakhutdinov, "Reducing the Dimensionality of Data with Neural Networks", Science, vol. 313, p. 504-507
 本開示のオブジェクト検出方法は、撮像画像に含まれるオブジェクトを検出するオブジェクト検出方法であって、前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出することが可能な第1の方式にて前記オブジェクトを検出し、不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出することが可能な第2の方式にて前記オブジェクトを検出し、前記第1の方式による前記オブジェクトの検出結果と、前記第2の方式による前記オブジェクトの検出結果とに基づいて、前記第1の方式による前記オブジェクトの検出の成否を判定し、前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式による前記オブジェクトの検出方法を機械学習させる。
 本開示のオブジェクト検出装置は、撮像画像に含まれるオブジェクトを検出するオブジェクト検出装置であって、前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出する第1検出部と、不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出する第2検出部と、前記第1検出部による前記オブジェクトの検出結果と、前記第2検出部による前記オブジェクトの検出結果とに基づいて、前記第1検出部による前記オブジェクトの検出の成否を判定する判定部と、該判定部が、前記第1検出部による前記オブジェクトの検出に失敗していると判定した場合、前記第1検出部による前記オブジェクトの検出方法を前記第1検出部に機械学習させる学習部とを備える。
 本開示のコンピュータプログラムは、コンピュータに撮像画像に含まれるオブジェクトを検出させるためのコンピュータプログラムであって、前記コンピュータに、前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出することが可能な第1の方式にて前記オブジェクトを検出し、不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出することが可能な第2の方式にて前記オブジェクトを検出し、前記第1の方式による前記オブジェクトの検出結果と、前記第2の方式による前記オブジェクトの検出結果とに基づいて、前記第1の方式による前記オブジェクトの検出の成否を判定し、前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式による前記オブジェクトの検出方法を機械学習させる処理を実行させる。
 なお、本願は、オブジェクト検出装置の一部又は全部を実現する半導体集積回路として実現したり、オブジェクト検出装置を含むその他のシステムとして実現したりすることができる。
図1は実施形態に係る異変検知システムの構成例を示すブロック図である。 図2は実施形態に係る異変検知装置の構成例を示す機能ブロック図である。 図3はオブジェクト検出及び追加学習に係る処理手順を示すフローチャートである。 図4はマッピング処理を示すフローチャートである。 図5Aは第1検出部によるオブジェクト検出方法を示す説明図である。 図5Bは第1検出部によるオブジェクト検出方法を示す説明図である。 図6は第2検出部によるオブジェクト検出方法を示す説明図である。 図7は画素単位でオブジェクトの位置及び種類を決定する方法を示す説明図である。 図8はオブジェクトの寸法測定に係る処理手順を示すフローチャートである。 図9はオブジェクトの寸法測定方法を示す説明図である。 図10はオブジェクトの良否判定処理手順を示すフローチャートである。 図11はオブジェクトの良否判定方法を示す説明図である。 図12Aは重なり合っているオブジェクトの検出及び寸法測定方法を示す説明図である。 図12Bは重なり合っているオブジェクトの検出及び寸法測定方法を示す説明図である。 図12Cは重なり合っているオブジェクトの検出及び寸法測定方法を示す説明図である。 図12Dは重なり合っているオブジェクトの検出及び寸法測定方法を示す説明図である。 図13は学習用データの生成に係る処理手順を示すフローチャートである。 図14は学習用データの生成方法を示す説明図である。 図15Aは学習用データの生成方法を示す説明図である。 図15Bは学習用データの生成方法を示す説明図である。
[本開示が解決しようとする課題]
 ところで、工場で生産される製造物は、製造内容の変更や製造方法の変更、工場ごとの環境などにより、発生する不良内容が変化する。そのため、不良検査技術には特定の不良を検知できるだけでなく、未知の異常を検知する能力も求められる。
 Tensorflow(登録商標)を用いた画像認識技術や、全層畳み込みネットワーク(FCN:Fully Convolution Network)などの画素単位でオブジェクト検出する方法では、事前に学習したことのあるオブジェクトしか検出できず、未知の不良を検出することができない。一方で、オートエンコーダを用いて異常を検知する方法では未知の異常であっても検出することができるが、異常内容を特定することができない。このため、異常内容に合わせた不良判定は実施できない。
 本開示の目的は、未知のオブジェクトを追加学習することにより、環境に合わせてオブジェクトの検知能力を向上させ、既知及び未知を問わず、製造物の異常等のオブジェクトを検知することができるオブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラムを提供することにある。
[本開示の効果]
 本開示によれば、未知のオブジェクトを追加学習することにより、環境に合わせてオブジェクトの検知能力を向上させ、既知及び未知を問わず、製造物の異常等のオブジェクトを検知することができる。
[本開示の実施形態の説明]
 最初に本開示の実施態様を列記して説明する。また、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
(1)本開示に係るオブジェクト検出方法は、撮像画像に含まれるオブジェクトを検出するオブジェクト検出方法であって、前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出することが可能な第1の方式にて前記オブジェクトを検出し、不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出することが可能な第2の方式にて前記オブジェクトを検出し、前記第1の方式による前記オブジェクトの検出結果と、前記第2の方式による前記オブジェクトの検出結果とに基づいて、前記第1の方式による前記オブジェクトの検出の成否を判定し、前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式による前記オブジェクトの検出方法を機械学習させる。
 本開示にあっては、主に第1の方式を用いてオブジェクトを検出する。第1の方式は、オブジェクトの位置及び種類を検出することができる。しかし、特定の種類のオブジェクトしか検出することができない。一方、第2の方式は、オブジェクトの種類に拘わらず、オブジェクトの位置を検出することができる方式である。つまり、第1の方式では検出に失敗する未知のオブジェクトであっても、第2の方式であれば当該オブジェクトを検出することができる。しかし、第2の方式ではオブジェクトの種類を検出することができない。
 そこで、第1の方式によるオブジェクトの検出結果と、第2の方式によるオブジェクトの検出結果とに基づいて、第1の方式によるオブジェクトの検出の成否を判定する。そして、第1の方式によるオブジェクトの検出に失敗していると判定された場合、第1の方式に係る検出方法を機械学習させる。
 未知のオブジェクトを追加学習することにより、環境に合わせてオブジェクトの検知能力を向上させ、既知及び未知を問わず、製造物の異常等のオブジェクトを検知することが可能になる。
 なお、第1の方式によるオブジェクトの検出処理と、第2の方式によるオブジェクトの検出処理とを実行する順序は限定されるものでは無く、逆順で実行してもよいし、同時並行的に実行してもよい。
(2)4前記第2の方式による前記オブジェクトの検出は、前記撮像画像のデータが入力された場合、入力された該データの特徴が抽出された特徴抽出画像のデータを出力する学習済みオートエンコーダを用いて行う構成が好ましい。
 本開示にあっては、学習済みオートエンコーダを用いることによって、未知のオブジェクトを検出することができる。
(3)5前記第1の方式による前記オブジェクトの検出は、前記撮像画像のデータが入力された場合、該撮像画像に含まれる前記オブジェクトの位置及び種類を出力する学習済みの画像認識ニューラルネットワークを用いて行う構成が好ましい。
 本開示にあっては、学習済みの画像認識ニューラルネットワークを用いることによって、様々な特徴を有するオブジェクトを認識し、オブジェクトの位置及び種類を検出することができる。また、追加学習によって、画像認識ニューラルネットワークは、未知のオブジェクトを認識できるようになる。
(4)6前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式と異なる第3の方式にて前記撮像画像に含まれる前記オブジェクトの種類を検出し、前記画像認識ニューラルネットワークに前記撮像画像のデータが入力された場合、前記第3の方式にて検出された前記オブジェクトの位置及び種類が出力されるように、前記撮像画像及び前記第3の方式に係る検出結果を用いて、前記画像認識ニューラルネットワークを機械学習させる構成が好ましい。
 本開示にあっては、態様(1)で説明した第1の方式によるオブジェクトの種類の検出に失敗した場合、第3の方式でオブジェクトの種類を検出する。そして、第3方式による検出結果を用いて画像認識ニューラルネットワークを追加学習させることによって、第1の方式によるオブジェクトの検出精度を自動的に向上させることができる。
(5)7前記第3の方式による前記オブジェクトの検出は、前記オブジェクトの輪郭線の形状パターンに基づいて前記オブジェクトの種類を検出する構成が好ましい。
 本開示にあっては、画像認識ニューラルネットワークで検出できなかったオブジェクトの種類を、当該オブジェクトの輪郭線の形状パターンに基づいて検出する。つまり、第1の方式で検出に失敗した何らかのオブジェクトを第2の方式にて認識し、第3の方式によってその種類を検出する。そして、その検出結果に基づいて、上記画像認識ニューラルネットワークを追加学習させることができる。
 なお、第3の方式のみでは、オブジェクトが認識されていない状態での検出処理となり、オブジェクトの種類を適切に検出することができないおそれがある。
(6)8前記第3の方式にて前記オブジェクトの種類を検出できなった場合、該オブジェクトの種類をユーザから受け付け、前記画像認識ニューラルネットワークに前記撮像画像のデータが入力された場合、前記オブジェクトの位置及び種類が出力されるように、前記撮像画像及び受け付けた前記オブジェクトの種類を用いて、前記画像認識ニューラルネットワークを機械学習させる構成が好ましい。
 本開示にあっては、第3の方式でもオブジェクトの種類を認識できなった場合、ユーザからオブジェクトの種類を受け付け、受け付けた内容を用いて画像認識ニューラルネットワークを追加学習させることができる。つまり上記態様(4)及び(5)により、可能な限り自動的に画像認識ニューラルネットワークを追加学習させると共に、第3の方式でも認識できない未知のオブジェクトに関してはユーザの人手を借りて画像認識ニューラルネットワークの追加学習を行う。
 従って、未知のオブジェクトが発生し得る環境においても、各種オブジェクトを認識できるよう、半自動的に画像認識ニューラルネットワークを追加学習させ、種々のオブジェクトの位置及び種類が検出可能となる。
(7)9前記画像認識ニューラルネットワークを用いた前記オブジェクトの検出と、該画像認識ニューラルネットワークの機械学習とを並行的に実行する構成が好ましい。
 本開示にあっては、画像認識ニューラルネットワークを用いたオブジェクトの検出と、画像認識ニューラルネットワークの追加学習を並行的に実行することができる。従って、画像認識ニューラルネットワークの学習処理中も、オブジェクトの検出処理を継続することができる。
(8)10前記撮像画像は検査対象物を撮像して得た画像であり、検出対象の前記オブジェクトは該検査対象物における異変部位である構成が好ましい。
 本開示にあっては、検査対象物の異変部位及び種類を検出することができ、未知の異変部位であっても、追加学習によりその位置及び種類を検出することが可能になる。
(9)本開示に係るオブジェクト検出装置は、撮像画像に含まれるオブジェクトを検出するオブジェクト検出装置であって、前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出する第1検出部と、不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出する第2検出部と、前記第1検出部による前記オブジェクトの検出結果と、前記第2検出部による前記オブジェクトの検出結果とに基づいて、前記第1検出部による前記オブジェクトの検出の成否を判定する判定部と、該判定部が、前記第1検出部による前記オブジェクトの検出に失敗していると判定した場合、前記第1検出部による前記オブジェクトの検出方法を前記第1検出部に機械学習させる学習部とを備える。
 本開示にあっては、態様(1)と同様にして、未知のオブジェクトを追加学習することにより、環境に合わせてオブジェクトの検知能力を向上させ、既知及び未知を問わず、製造物の異常等のオブジェクトを検知することが可能になる。
(10)本開示に係るコンピュータプログラムは、コンピュータに撮像画像に含まれるオブジェクトを検出させるためのコンピュータプログラムであって、前記コンピュータに、前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出することが可能な第1の方式にて前記オブジェクトを検出し、不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出することが可能な第2の方式にて前記オブジェクトを検出し、前記第1の方式による前記オブジェクトの検出結果と、前記第2の方式による前記オブジェクトの検出結果とに基づいて、前記第1の方式による前記オブジェクトの検出の成否を判定し、前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式による前記オブジェクトの検出方法を機械学習させる処理を実行させる。
 本開示にあっては、コンピュータを態様(9)に係るオブジェクト検出装置として機能させることができる。
[本開示の実施形態の詳細]
 本開示の実施形態に係るオブジェクト検出方法、異変検知装置及びコンピュータプログラムの具体例を、以下に図面を参照しつつ説明する。なお、本開示はこれらの例示に限定されるものではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
 図1は、実施形態に係る異変検知システムの構成例を示すブロック図である。実施形態に係る異変検知システムは、異変検知装置1と、機械学習装置9とを備える。異変検知装置1は、例えば検査対象物が製造される工場に設置され、機械学習装置9は工場外の施設に設置される。
<異変検知装置のハードウェア構成>
 異変検知装置1(オブジェクト検出装置)は、例えば一又は複数のCPU(Central Processing Unit)、マルチコアCPU、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)等の演算部11を有するコンピュータである。演算部11には、一時記憶部12、画像入力部13、出力部14、入力部15、記憶部16、データ蓄積部17及び通信部18がバスラインを介して接続されている。本実施形態に係る異変検知装置1は、製造される検査対象物を撮像して得られる撮像画像5(図5A参照)の画像データを取得し、撮像画像5に含まれる検出対象であるオブジェクト6、例えば検査対象物に付着した埃、髪、検査対象物のへこみ等の異変部位を検知するものである。検査対象物は、例えば、ワイヤハーネスを構成するコネクタである。また、本実施形態に係る異変検知装置1は、未知の異変部位も半自動で機械学習する機能を有し、このような異変部位の位置及び種類も検出できるようになる。
 演算部11は、記憶部16に記憶されている後述のコンピュータプログラム16aを実行することにより、各構成部の動作を制御する。演算部11は、検査対象物を撮像して得た撮像画像5に含まれるオブジェクト6の位置及び種類を画素単位で検出して検査対象物の異変を検知する処理を実行する。また、機械学習装置と通信を行い、未知の異変部位を機械学習させる処理を実行する。処理内容の詳細は後述する。
 一時記憶部12は、DRAM(Dynamic RAM)、SRAM(Static RAM)等のメモリであり、演算部11の演算処理を実行する際に記憶部16から読み出されたコンピュータプログラム16a、又は演算処理によって生ずる各種データを一時記憶する。
 記憶部16は、ハードディスク、EEPROM(Electrically Erasable Programmable ROM)、フラッシュメモリ等の不揮発性メモリである。記憶部16は、演算部11が各構成部の動作を制御することにより、撮像画像5に含まれるオブジェクト6の位置及び種類を画素単位で検出して検査対象物の異変を検知する処理を実行するためのコンピュータプログラム16aを記憶している。また、記憶部16は、各種オブジェクト6を形状認識し、撮像画像5に含まれるオブジェクト6の種類を検出するための特徴量等の情報、検出されたオブジェクト6、つまり異変が許容されるものか否かを判定するための閾値を記憶している。閾値はオブジェクト6の種類ごとに異なり、記憶部16は、複数のオブジェクト6の種類に対応付けて、異なる閾値を記憶している。
 なお記憶部16は、図示しない読出装置によって記録媒体から読み出されたコンピュータプログラム16aを記憶する態様であってもよい。記録媒体はCD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、BD(Blu-ray(登録商標) Disc)等の光ディスク、フレキシブルディスク、ハードディスク等の磁気ディスク、磁気光ディスク、半導体メモリ等である。また、図示しない通信網に接続されている図示しない外部コンピュータから本実施形態に係るコンピュータプログラム16aをダウンロードし、記憶部16に記憶させてもよい。
 画像入力部13は撮像部1aが接続されるインタフェースである。撮像部1aは、レンズにて結像した像を電気信号に変換するCCD、CMOS等の撮像素子と、撮像素子にて変換された電気信号をデジタルの画像データにAD変換し、AD変換された画像データを出力する。撮像部1aから出力された画像データは画像入力部13を介して異変検知装置1に入力される。撮像部1aと、異変検知装置1とは、専用ケーブルで接続される構成であってもよいし、LAN(Local Area Network)等のネットワークを介して接続される構成であってもよい。なお、画像データは、縦横に配列される各画素を所定階調の輝度値で示したデジタルのデータである。本実施形態では、モノクロの画像データであるものとして説明する。
 出力部14は表示部1bが接続されるインタフェースである。表示部1bは液晶パネル、有機ELディスプレイ、電子ペーパ、プラズマディスプレイ等である。表示部1bは、演算部11から与えられた画像データに応じた各種情報を表示する。例えば、異変検知結果の内容、不具合のある検査対象物の画像等を表示する。なお、表示部1bは、異変検知結果を出力する外部出力装置の一例であり、ブザー、スピーカ、発光素子、その他の報知装置であってもよい。工場の作業者は、表示部1bに表示された画像にて、異変検知の結果、検査対象物の状態等を認識することができる。
 入力部15には、キーボード、マウス、タッチセンサ等の操作部1cが接続される。操作部1cの操作状態を示した信号は入力部15を介して異変検知装置1に入力される。演算部11は、入力部15を介して操作部1cの操作状態を認識することができる。
 データ蓄積部17は、記憶部16と同様、ハードディスク、EEPROM、フラッシュメモリ等の不揮発性メモリである。データ蓄積部17は、検査対象物の画像データ、異変検知結果等のデータを記憶する。
 通信部18は、機械学習装置9との間でデータを送受信するための通信機である。
<異変検知装置の機能部>
 図2は、実施形態に係る異変検知装置1の構成例を示す機能ブロック図である。異変検知装置1は、機能部としての第1検出部2、第2検出部3、良否判定部4を有する。異変検知装置1の各機能部は、演算部11、一時記憶部12等のハードウェアによって実現される。
 第1検出部2は撮像画像5に含まれるオブジェクト6を画像認識し、当該オブジェクト6の位置及び範囲、並びに種類を検出する。具体的には、第1検出部2は、撮像画像5のデータが入力された場合、当該撮像画像5に含まれる一又は複数のオブジェクト6の位置及び範囲並びに当該オブジェクト6の種類を出力する学習済み画像認識ニューラルネットワーク21を備える。オブジェクト6の位置は、当該オブジェクト6を囲むバウンディングボックス7の位置及び大きさで特定される(図5B参照)。バウンディングボックス7は例えば矩形状であり、概ねオブジェクト6が内接するような幅及び高さを有する。画像認識ニューラルネットワーク21は、例えば公知のTensorflow(登録商標)を用いて構成することができる。また、画像認識ニューラルネットワーク21は、その他の公知の畳み込みニューラルネットワーク(CNN:Convolutional neural network)を用いて構成することができる。
 画像認識ニューラルネットワーク21は、撮像画像5に含まれるオブジェクト6の種類が出力されるように、オブジェクト6の画像データと、当該オブジェクト6の種類を示す情報とを教師データとして機械学習させる。
 第2検出部3はオートエンコーダ31及び差分データ生成部32を備える。オートエンコーダ31は、撮像部1aから出力された画像データが入力され、撮像画像5に含まれる検査対象物の特徴を抽出した特徴抽出画像5aの画像データを出力する機能部である(図6参照)。具体的には、オートエンコーダ31は、画像データが入力された場合、正常な検査対象物の特徴を表した特徴抽出画像5aの画像データを出力する。撮像画像5には、ゴミ、傷、影、検査対象物自体の異変部位等の画像が含まれることがある。特徴抽出画像5aはこれらの画像を除去し、異変が無い正常な検査対象物を撮像した場合に得られるような理想的な検査対象物を再現した撮像画像5である。オートエンコードはニューラルネットワークによって実現される。当該ニューラルネットワークは、画像データを次元圧縮する中間層を含み、同一画素数の画像データを入出力する。
 オートエンコーダ31は、入力層31aと、出力層31bと、コンボリューション層(CONV層)31cと、デコンボリューション層(DECONV層)31dとを有する。入力層31aは画像データに係る各画素値のデータが入力される層である。コンボリューション層31cは、画像データを次元圧縮する層である。例えば、コンボリューション層31cは、畳み込み積分を行うことにより、次元圧縮を行う。次元圧縮により、検査対象物の特徴量が抽出される。デコンボリューション層31dは、コンボリューション層31cで次元圧縮されたデータを元の次元に復元する層である。デコンボリューション層31dは、逆畳み込み処理を行い、元の次元に復元する。当該復元によって、検査対象物の本来の特徴、即ち正常な検査対象物の特徴を表した画像データが復元される。なお、コンボリューション層31c及びデコンボリューション層31dが2層である例を示したが、1層又は3層以上であってもよい。出力層31bは、コンボリューション層31c及びデコンボリューション層31dにて検査対象物の特徴が抽出された特徴抽出画像5aに係る各画素値のデータを出力する層である。
 オートエンコーダ31は、入力された画像データと、出力された画像データとが同じになるように、オートエンコーダ31のニューラルネットワークを機械学習させる。つまり、入力された撮像画像5と、出力される特徴抽出画像5aとが同じになるように、ニューラルネットワークを機械学習させる。かかる機械学習は、正常な検査対象物を撮像して得られる画像データを用いて行う。
 差分データ生成部32は、撮像部1aから取得した画像データと、オートエンコーダ31から出力された画像データとの差分を演算する。具体的には、差分データ生成部32は、各画像データの同一箇所の画素の画素値の差分を、画素ごとに演算する。そして、差分データ生成部32は、画素値の差分と、所定の閾値とを比較することによって二値化する。二値化処理によって、画素単位で検出されたオブジェクト6の画像を含む画像が得られる。以下、画素単位で検出されたオブジェクト6を含む画像を差分画像5b(図6参照)と呼ぶ。
 良否判定部4は、オブジェクト検出処理部41、寸法測定処理部42及び良否判定処理部43を備える。
 オブジェクト検出処理部41は、撮像画像5に含まれる一又は複数のオブジェクト6の位置及び種類を画素単位で検出する機能部である。
 寸法測定処理部42は、画素単位で検出された各オブジェクト6の寸法を測定する機能部である。
 良否判定処理部43は、オブジェクト6の寸法と、当該オブジェクト6の種類に応じた閾値とを比較することによって、異変が許容可能なものか否か、つまり異変の良否を判定する処理を実行する機能部である。
<機械学習装置の構成>
 機械学習装置9は、異変検知装置1を構成する画像認識ニューラルネットワーク21を追加学習させるサーバ装置である。機械学習装置9は、コンピュータであり、基本的なハードウェア構成は異変検知装置1と同様である。
 異変検知装置1と、機械学習装置9とは別個のコンピュータであり、並行的にプログラムを実行して動作する。具体的には、異変検知装置1は画像認識ニューラルネットワーク21のコピーを機械学習装置9へ提供し、異変検知装置1が検査対象物の異変を検知する処理を実行している傍らで、機械学習装置9は画像認識ニューラルネットワーク21の追加学習処理を実行することができる。異変検知装置1は、学習中の画像認識ニューラルネットワーク21では無く、学習前の画像認識ニューラルネットワーク21を用いて異変検知処理を継続する。
 なお、機械学習装置9は画像認識ニューラルネットワーク21を構成するための各種パラメータ、例えば画像認識ニューラルネットワーク21の層数、ニューロン数、ニューラルネットワークの種類、重み係数等のパラメータを機械学習装置9へ送信することによって、画像認識ニューラルネットワーク21のコピーを提供する。
 異変検知装置1は、異変検知処理中、第1検出部2にて検出されたオブジェクト6の位置及び範囲と、第2検出部3にて検出されたオブジェクト6の位置とが整合しない場合、追加学習に係る処理を機械学習装置9に要求する。
<異変部位検知処理>
 図3は、オブジェクト検出に係る処理手順を示すフローチャートである。演算部11は、撮像部1aから出力された画像データを取得する(ステップS11)。次いで、演算部11は、後述のマッピング処理を実行することにより、当該撮像画像5に含まれるオブジェクト6の位置及び種類を画素単位で検出する(ステップS12)。
 次いで、演算部11は、オブジェクト6の検出に成功したか否かを判定する(ステップS13)。具体的には、演算部11は、第1検出部2によってバウンディングボックス7にて特定されたオブジェクト6の位置及び範囲と、第2検出部3にて検出されたオブジェクト6の画素の位置とが整合している場合、オブジェクト6の検出に成功したと判定し、整合していない場合、オブジェクト6の検出に失敗したと判定する。本実施形態2では、第2検出部3にてオブジェクト6の画素が検出されているにも拘わらず、第1検出部2にてオブジェクト6の種類が検出できていない状態を、検出失敗の例として説明する。
 オブジェクト6の検出に失敗していないと判定した場合(ステップS13:NO)、演算部11は、検出されたオブジェクト6の寸法を測定して(ステップS14)、オブジェクト6の良否を判定する(ステップS15)。
 次いで、演算部11は、ステップS15の判定結果に基づいて、検査対象物の良否を判定する(ステップS16)。つまり、演算部11は、許容される異変があるか否かを判定する。良であると判定した場合(ステップS16:YES)、演算部11は処理をステップS11に戻す。不良であると判定した場合(ステップS16:NO)、演算部11は、検査対象物の異変に対処するための所定処理を実行し(ステップS17)、処理をステップS11に戻す。例えば、演算部11は、検査対象物に異常がある旨を報知する処理を実行する。また、演算部11は、良否判定結果を示した画像(図11右図参照)を表示部1bに表示させる処理を実行する。当該良否判定結果を示した画像の情報は、第1検出部2による検出処理にて得られた情報と、第2検出部3による検出処理にて得られる情報とに基づく情報の一例である。
 図4は、マッピング処理手順を示すフローチャートである。第1検出部2は、撮像画像5に含まれる一又は複数のオブジェクト6の位置及び範囲をバウンディングボックス7にて特定すると共に、当該バウンディングボックス7によって囲まれるオブジェクト6の種類を検出する(ステップS31)。
 図5A及び図5Bは、第1検出部2によるオブジェクト検出方法を示す説明図である。図5Aは撮像画像5を示し、図5Bはオブジェクト6の検出結果を示す撮像画像5である。図5Aに示すように、撮像画像5には複数のオブジェクト6が含まれている。例えば、埃の画像であるオブジェクト61、髪の画像であるオブジェクト62、へこみの画像であるオブジェクト63等が含まれている。そして、図5Bに示すように、第1検出部2にて検出された各オブジェクト6はバウンディングボックス7によって囲まれており、オブジェクト6の位置はバウンディングボックス7の位置及び大きさによって表される。例えば、バウンディングボックス71は、埃のオブジェクト61の位置及び範囲を示し、バウンディングボックス72は、髪のオブジェクト62の位置及び範囲を示し、バウンディングボックス73は、へこみのオブジェクト63の位置及び範囲を示している。また、各バウンディングボックス7には、当該バウンディングボックス7に包含されたオブジェクト6の種類が表示される。このように、第1検出部2によれば、撮像画像5に含まれる各オブジェクト6のおおよその位置及び範囲と、種類とが特定される。
 次いで、第2検出部3は、撮像画像5に含まれるオブジェクト6を画素単位で検出する(ステップS32)。
 図6は、第2検出部3によるオブジェクト検出方法を示す説明図である。撮像画像5の画像データがオートエンコーダ31に入力されると、異変部位が取り除かれた撮像画像5本来の特徴を表した特徴抽出画像5aの画像データが出力される。そして、差分データ生成部32は、取得した元の画像データと、オートエンコーダ31から出力された画像データとの差分を演算する。具体的には、差分データ生成部32は、各画像データの同一箇所の画素の画素値の差分を、画素ごとに演算する。そして、差分データ生成部32は、画素値の差分と、所定の閾値とを比較することによって二値化する。二値化処理によって、画素単位で検出されたオブジェクト6の画像を含む画像が得られる。以下、画素単位で検出されたオブジェクト6を含む画像を差分画像5bと呼ぶ。差分画像5bには、検査対象物自体は含まれず、異変部位であるオブジェクト6のみが含まれる。例えば、図6右図に示すように、差分画像5bには、埃の画像であるオブジェクト61、髪の画像であるオブジェクト62、へこみの画像であるオブジェクト63が含まれる。
 次いで、演算部11は、マッピング処理により、画素単位でオブジェクト6の位置及び種類を決定し(ステップS33)、オブジェクト検出に係る処理を終える。なお、ステップS33の処理を実行する演算部11は、第1検出部2及び第2検出部3の検出結果に基づいて、オブジェクト6の位置及び種類を画素単位で決定する決定部として機能する。
 図7は、画素単位でオブジェクト6の位置及び種類を決定する方法を示す説明図である。左上図は、第1検出部2によるオブジェクト6の検出結果が反映された撮像画像5である。撮像画像5に含まれる各オブジェクト6の位置はバウンディングボックス7の位置及び寸法によって表されている。また、各オブジェクト6の種類はバウンディングボックス7に付されたラベルによって表されている。バウンディングボックス7は、オブジェクト6の種類を示しているものの、オブジェクト6の位置、形状ないし寸法の正確な情報を有しない。
 一方、左下図は、第2検出部3によるオブジェクト6の検出結果が反映された差分画像5bである。差分画像5bに含まれるオブジェクト6の各画素は、オブジェクト6の位置ないし形状を画素単位で正確に示しているものの、オブジェクト6の種類に関する情報を有しない。
 中央の図は第2検出部3から出力された差分画像5bに対して、バウンディングボックス7のマッピングを行った状態を概念的に示したものである。バウンディングボックス7を差分画像5bにマッピングすることによって、画素単位でオブジェクト6の種類を決定することが可能になる。つまり、一の種類のバウンディングボックス7に包含されたオブジェクト6の画素に対して、当該一の種類を対応付けることにより、画素単位でオブジェクト6の種類を決定することができる。
 右図は、画素単位でオブジェクト6の種類が決定された状態を概念的に示したものである。例えば、埃のオブジェクト61を構成する各画素に対して、種類「埃」が対応付けられている。同様に、髪のオブジェクト62を構成する各画素に対して、種類「髪」が対応付けられ、へこみのオブジェクト63を構成する各画素に対して、種類「へこみ」が対応付けられている。
 図8は、オブジェクト6の寸法測定に係る処理手順を示すフローチャート、図9は、オブジェクト6の寸法測定方法を示す説明図である。演算部11は、一の種類のオブジェクト6の画素群を選択する(ステップS51)。つまり、一つのオブジェクト6を構成している一群の複数画素を選択する。例えば、図9に示すように、埃のオブジェクト61を構成する一群の複数画素を選択する。オブジェクト6の種類が異なる複数の画素は、たとえ連結ないし隣接していても一群の画素として選択されない。また、オブジェクト6の種類が同一の複数の画素であっても、所定画素以上離隔している場合は一群の画素として選択されない。
 そして、演算部11は、図9右図に示すように、選択されたオブジェクト6の一群の画素の総数を算出する(ステップS52)。例えば、埃のオブジェクト61を構成する画素の総数は13である。同様に、髪を構成する画素の総数は19である。オブジェクト6を構成する画素の総数は、オブジェクト6の寸法に相当するものである。
 なお、オブジェクト6には、塊状のもの、線状のもの等、形状は様々であるが、同一種類のオブジェクト6は概ね同一形状である。このため、オブジェクト6の種類が既知であれば、オブジェクト6を構成する画素の総数を、当該オブジェクト6の寸法を示す情報として利用することができる。
 例えば、髪のオブジェクト62を構成する画素の総数は、髪の長さ寸法に相当する。埃のオブジェクト61を構成する画素の総数は、概ね縦横寸法の積に相当する。
 次いで、演算部11は、差分画像5bに含まれる全オブジェクト6の寸法測定を終えたか否かを判定する(ステップS53)。測定を終えていないオブジェクト6があると判定した場合(ステップS53:NO)、処理をステップS51へ戻し、寸法未測定の他のオブジェクト6についても同様の算出処理を実行する。全てのオブジェクト6の測定処理を終えたと判定した場合(ステップS53:YES)、演算部11は寸法測定に係る処理を終える。
 図10は、オブジェクト6の良否判定処理手順を示すフローチャート、図11は、オブジェクト6の良否判定方法を示す説明図である。
 演算部11は、良否判定の対象であるオブジェクト6の画素群の種類に対応する閾値を選択する(ステップS71)。記憶部16は、オブジェクト6の種類ごとに異なる閾値を記憶しており、演算部11は判定対象のオブジェクト6の種類に対応付けられた閾値を選択する。
 そして、演算部11は、良否判定対象であるオブジェクト6の画素の総数と、ステップS71にて選択した閾値とを比較し(ステップS72)、比較結果を記憶する(ステップS73)。例えば演算部11は、一のオブジェクト6を構成する画素の総数が閾値以上である場合、当該オブジェクト6は許容できない異変であることを示す情報を記憶する。画素の総数が閾値未満である場合、当該オブジェクト6は許容できる異変であることを示す情報を記憶する。
 図11に示すように、埃の大きさを示す画素の総数(Σ画素)は、埃に係る第1閾値未満であるため、許容されると判定される。同様に、へこみの程度を示す画素の総数(Σ画素)は、へこみに係る第3閾値未満であるため、許容されると判定される。しかし、髪の長さを示す画素の総数(Σ画素)は、髪に係る第2閾値以上であるため、許容されない異変と判定される。
 次いで、演算部11は、全オブジェクト6に対して良否判定を終えたか否かを判定する(ステップS74)。良否判定を終えていないオブジェクト6があると判定した場合(ステップS74:NO)、処理をステップS71へ戻し、良否未測定の他のオブジェクト6についても同様の算出処理を実行する。全てのオブジェクト6の良否判定を終えたと判定した場合(ステップS74:YES)、演算部11は良否判定に係る処理を終える。
 上記の説明は、撮像画像5に含まれる複数のオブジェクト6が互いに離隔している状態を例に説明したが、本実施形態によればオブジェクト6が重なっていても、画素単位でオブジェクト6の検出、寸法測定及び異常判定を行うことができる。
 図12A、図12B、図12C、図12Dは、重なり合っているオブジェクト6の検出及び寸法測定方法を示す説明図である。図12Aは、埃と髪のオブジェクト61、62が重なりあっている状態を示している。第2検出部3は、各オブジェクト6の種類を区別することなく、埃及び髪のオブジェクト61、62を構成する複数の画素を一群の画素として検出している。
 図12Bは、埃の位置及び範囲を示すバウンディングボックス71によりマッピングされた状態を示している。演算部11は、当該バウンディングボックス71に包含される画素群を埃のオブジェクト61を構成する画素として認識し、各画素に種類「埃」を付与する。
 図12Cは、髪の位置及び範囲を示すバウンディングボックス72によりマッピングされた状態を示している。演算部11は、当該バウンディングボックス72に包含される画素群を髪のオブジェクト62を構成する画素として認識し、各画素に種類「髪」を付与する。
 図12Dは、図12B及び図12Cに示すマッピング処理により、画素単位でオブジェクト6の種類を認識した結果を示している。黒塗りで示した画素は、種類「髪」が付与されている。ハッチングが付された画素は、種類「埃」が付与されている。白塗りの画素は、種類「埃」及び「髪」の双方が付与されている。
 このように、オブジェクト6が重なり合っている部分の画素に、両方の種類を付与することにより、オブジェクト6が重なり合っていても、各オブジェクト6の寸法を測定することが可能となる。例えば、「埃」の種類が付与されている画素は、ハッチングが付された画素及び白抜きの画素であり、当該画素の総数を算出することによって、「埃」のオブジェクト61の寸法を測定することができる。同様に、「髪」の種類が付与されている画素は、黒塗りの画素及び白抜きの画素であり、当該画素の総数を算出することによって、「髪」のオブジェクト62の寸法を測定することができる。このように、複数種類のオブジェクト6が重なり合っていても、各オブジェクト6の位置及び種類を画素単位で検出することができ、各オブジェクト6の寸法を測定することもできる。
 ステップS13においてオブジェクト6の検出に失敗したと判定した場合(ステップS13:YES)、演算部11は、現在の画像認識ニューラルネットワーク21を通信部18にて、機械学習装置9へ送信する(ステップS18)。具体的には、画像認識ニューラルネットワーク21を構成するための各種パラメータを機械学習装置9へ送信する。
 機械学習装置9は、異変検知装置1から送信された画像認識ニューラルネットワーク21を追加学習対象として受信する(ステップS19)。
 ステップS18の処理を終えた異変検知装置1は、学習用データの生成に係る処理を実行する(ステップS20)。
 図13は、学習用データの生成に係る処理手順を示すフローチャート、図14及び図15A及び図15Bは、学習用データの生成方法を示す説明図である。まず演算部11は、オブジェクト6の検出に失敗した撮像画像5を、図14右図に示すように格子状に分割し、分割された各画像ブロックに対してオブジェクト6に関する情報を示す配列Yを割り当てる(ステップS91)。配列Yは、例えば下記式(1)で表される。ステップS91で割り当てられる配列の各変数の初期値は0である。
Figure JPOXMLDOC01-appb-M000001
 配列Yの変数Pは、画像ブロックにオブジェクト6が含まれているか否かを示す。図15A及び図15Bに示すように、P=1はオブジェクト6が含まれていることを示し、P=0はオブジェクト6が含まれていないことを示す。
 変数Bx、Byは、図15Aに示すように、オブジェクト6の中心位置、例えば画像の重心位置のX座標、及びY座標を示す。座標系の取り方は特に限定されるものでは無いが、例えば図15A及び図15Bに示すように、各画像ブロックの左下の頂点を原点とし、撮像画像5の水平方向をX軸、垂直方向をY軸とする直交座標系を用いるとよい。
 変数Bw、Bhは、オブジェクト6の幅及び高さを示す。
 変数C1、C2、C3、…は、オブジェクト6の種類に対応している。例えば、C1は「埃」、C2は「髪」、C3は「へこみ」等に対応している。変数C1=1は、オブジェクト6が「埃」であることを示し、変数C1=0はオブジェクト6が「埃」で無いことを示している。他の変数C2、C3、…も同様である。なお、オブジェクト6の種類を示す変数は、新規のオブジェクト6の種類に対応できるよう、種類「未定」の変数を適宜数用意しておくとよい。
 ステップS91の処理を終えた演算部11は、第2検出部3の検出結果を参照して、各画像ブロックにおけるオブジェクト6の有無、位置及び寸法を特定する(ステップS92)。そして、演算部11は、図15A及び図15Bに示すように特定結果に従って、各画像ブロックに割り当てられた配列Yの変数P、Bx、By、Bw、Bhに、該当する数値を代入する(ステップS93)。
 なお、画像ブロックにオブジェクト6が含まれていない場合、配列Yの各変数は0となる。
 次いで、演算部11は、撮像画像5に対して公知の形状認識処理を実行することによって、種類が特定されていなかったオブジェクト6の種類を検出する(ステップS94)。例えば、演算部11は、オブジェクト6のエッジを検出して所定の特徴量を算出し、記憶部16が記憶する特徴量と比較することによって、類似の特徴量に対応するオブジェクト6の種類を特定することによって、オブジェクト6の種類を検出する。また、パターンマッチングによって、オブジェクト6の種類を特定してもよい。
 そして、ステップS94の処理を終えた演算部11は、オブジェクト6の種類の検出に成功したか否かを判定する(ステップS95)。成功したと判定した場合(ステップS95:YES)、演算部11は、ステップS94の検出結果に応じて、変数C1、C2、C3…に、該当する数値を代入し(ステップS97)、学習用データの生成処理を終える。
 ステップS95で失敗したと判定した場合(ステップS95:NO)、演算部11は、操作部1cにてオブジェクト6の種類をユーザから受け付ける(ステップS96)。例えば、演算部11は、問題となる撮像画像5を表示部1bに表示させると共に、オブジェクト6の検出に失敗した画像部分を指し示す指示画像を表示するとよい。例えば、第1検出部2にて検出されず、第2検出部3で検出されたオブジェクト6の画素群を囲む枠画像を撮像画像5に重畳させて表示するとよい。枠画像は一例であり、矢印画像等でもよい。
 演算部11は、想定されている複数の種類をユーザに提示し、ユーザによる種類の選択を受け付ける。また新規の種類である場合、演算部11は、種類の名称の登録を受け付けとよい。演算部11は、ユーザから新規の種類の名称を受け付け、種類「未定」の変数名を当該名称に変更登録する。
 そして、演算部11は、ステップS96で受け付けた内容に従って、変数C1、C2、C3…に、該当する数値を代入し(ステップS97)、学習用データの生成処理を終える。
 上記処理によって、オブジェクト6の検出に失敗した画像データと、当該画像データに含まれるオブジェクト6の位置及び範囲並びに種類を示したデータとを組みとした学習用データを生成することができる。
 ステップS20において学習用データの生成に係る処理を終えた演算部11は、生成した学習用データをデータ蓄積部17に蓄積する(ステップS21)。そして、演算部11は、所定量の学習用データを蓄積したか否かを判定する(ステップS22)。所定量の学習用データが蓄積されていないと判定した場合(ステップS22:NO)、演算部11は処理をステップS14へ戻し、異変検知処理及び学習用データの蓄積を継続する。所定量の学習用データが蓄積されたと判定した場合(ステップS22:YES)、演算部11は、データ蓄積部17に蓄積された学習用データを通信部18にて機械学習装置9へ送信する(ステップS23)。
 機械学習装置9は、異変検知装置1から送信された学習用データを受信し(ステップS24)、ステップS19にて受信した画像認識ニューラルネットワーク21を、学習用データを用いて追加学習させる(ステップS25)。つまり、機械学習装置9は、認識不能であったオブジェクト6を含む撮像画像5の画像データが画像認識ニューラルネットワーク21に入力された場合、当該オブジェクト6の位置及び範囲並びに種類を示すデータが出力されるように、学習用データを用いて、画像認識ニューラルネットワーク21を追加学習させる。当該追加学習は、教師有り学習である。
 次いで、機械学習装置9はステップS25にて追加学習された画像認識ニューラルネットワーク21を異変検知装置1へ送信する(ステップS26)。異変検知装置1は、機械学習装置9から送信された追加学習済みの画像認識ニューラルネットワーク21を通信部18にて受信する(ステップS27)。そして、異変検知装置1の演算部11は、追加学習前の画像認識ニューラルネットワーク21を、追加学習済みの新しい画像認識ニューラルネットワーク21に更新し(ステップS28)、処理をステップS11に戻す。
 以上の通り、本実施形態によれば、画像認識ニューラルネットワーク21を用いたオブジェクト6の検出に失敗した場合であっても、オートエンコーダ31を用いて、その失敗を検知し、画像認識ニューラルネットワーク21を追加学習させることができる。
 また、オートエンコーダ31を用いることによって、オブジェクト6の種類に拘わらず、異変部位であるオブジェクト6を精度良く認識することができ、画像認識ニューラルネットワーク21を用いたオブジェクト6の検出の失敗を正確に検出することができる。
 更に、学習済みの画像認識ニューラルネットワーク21を用いることによって、様々な特徴を有するオブジェクト6を認識し、当該オブジェクト6の位置、範囲及び種類を検出することができる。しかも、追加学習によって未知のオブジェクト6も半自動で認識できるようになる。
 更にまた、画像認識ニューラルネットワーク21を用いてオブジェクト6の種類が検出されなかった場合、形状認識によりオブジェクト6の種類を検出し、画像認識ニューラルネットワーク21を自動的に追加学習させることができる。
 具体的には、オブジェクト6のエッジ、即ち輪郭線を検出して所定の特徴量を算出してオブジェクト6の種類を特定し、画像認識ニューラルネットワーク21を自動的に追加学習させることができる。
 更にまた、形状認識処理でもオブジェクト6の種類が特定されなかった場合、ユーザからオブジェクト6の種類を受け付けることによって、追加学習用データを生成し、画像認識ニューラルネットワーク21を追加学習させることができる。
 更にまた、本実施形態2によれば、オブジェクト6の検出ないし検査対象物の異変検知処理と、画像認識ニューラルネットワーク21の追加学習とを並行的に実行することができる。従って、画像認識ニューラルネットワーク21の学習処理中も、オブジェクト6の検出処理を継続することができる。
 更にまた、本実施形態では、特にワイヤハーネスを構成するコネクタ等の検査対象物の異変部位及び種類を検出することができ、未知の異変部位も半自動的に学習し、その位置及び種類を検出することができる。
 更にまた、第1検出部2及び第2検出部3にてオブジェクト6を検出し、図7に示すマッピング処理を行うことによって、撮像画像5に含まれるオブジェクト6の位置及び種類を画素単位で検出することができる。画素単位でオブジェクト6の位置及び種類を検出することが可能であるため、異変部位であるオブジェクト6の寸法を正確に測定することができる。
 更にまた、画素単位で検出された異変部位及びその良否を図11に示すように表示することができる。
 更にまた、オブジェクト6の種類に応じた異なる閾値を用いて、検出されたオブジェクト6が許容される異変か否かを判定することができる。
 更にまた、画素単位で検出されたオブジェクト6の画素の総数と、閾値とを比較する簡単な処理で、オブジェクト6の形状に応じた異なる測定算出処理を行わずとも、上記判定を行うことができる。つまり、複雑な処理で異変部位の寸法を算出しなくても、異変部位の大きさが許容される寸法であるか否かを判定することができる。
 更にまた、オートエンコーダ31を用いることによって、オブジェクト6の位置を画素単位で正確に検出することができる。また当該オブジェクト6の寸法を正確に算出することができる。
 更にまた、学習済みの画像認識ニューラルネットワーク21を用いることによって、様々な特徴を有するオブジェクト6を認識し、当該オブジェクト6の位置、範囲及び種類を検出することができる。
 なお、本実施形態では、1台のコンピュータが異変検知装置1として動作し、第1検出部2、第2検出部3及び良否判定部4等として機能する例を説明したが、各機能部を実現する処理の一部又は全部をクラウドコンピュータに実行させるように構成してもよい。また、各機能部を実現する処理を複数のコンピュータで実行させる等、仮想マシンで実行するように構成してもよい。
 また、本実施形態では、主に検査対象物の良、不良を検知するシステムを説明したが、検出対象であるオブジェクト6の内容は特に限定されるものでは無い。
 1 異変検知装置
 1a 撮像部
 1b 表示部
 1c 操作部
 2 第1検出部
 3 第2検出部
 4 良否判定部
 5 撮像画像
 5a 特徴抽出画像
 5b 差分画像
 6、61、62、63 オブジェクト
 7、71、72、73 バウンディングボックス
 9 機械学習装置
 11 演算部
 12 一時記憶部
 13 画像入力部
 14 出力部
 15 入力部
 16 記憶部
 16a コンピュータプログラム
 17 データ蓄積部
 18 通信部
 21 画像認識ニューラルネットワーク
 31 オートエンコーダ
 31a 入力層
 31b 出力層
 31c コンボリューション層
 31d デコンボリューション層
 32 差分データ生成部
 41 オブジェクト検出処理部
 42 寸法測定処理部
 43 良否判定処理部
 

Claims (10)

  1.  撮像画像に含まれるオブジェクトを検出するオブジェクト検出方法であって、
     前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出することが可能な第1の方式にて前記オブジェクトを検出し、
     不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出することが可能な第2の方式にて前記オブジェクトを検出し、
     前記第1の方式による前記オブジェクトの検出結果と、前記第2の方式による前記オブジェクトの検出結果とに基づいて、前記第1の方式による前記オブジェクトの検出の成否を判定し、
     前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式による前記オブジェクトの検出方法を機械学習させる
     オブジェクト検出方法。
  2.  前記第2の方式による前記オブジェクトの検出は、前記撮像画像のデータが入力された場合、入力された該データの特徴が抽出された特徴抽出画像のデータを出力する学習済みオートエンコーダを用いて行う
     請求項1に記載のオブジェクト検出方法。
  3.  前記第1の方式による前記オブジェクトの検出は、前記撮像画像のデータが入力された場合、該撮像画像に含まれる前記オブジェクトの位置及び種類を出力する学習済みの画像認識ニューラルネットワークを用いて行う
     請求項1又は請求項2に記載のオブジェクト検出方法。
  4.  前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式と異なる第3の方式にて前記撮像画像に含まれる前記オブジェクトの種類を検出し、
     前記画像認識ニューラルネットワークに前記撮像画像のデータが入力された場合、前記第3の方式にて検出された前記オブジェクトの位置及び種類が出力されるように、前記撮像画像及び前記第3の方式に係る検出結果を用いて、前記画像認識ニューラルネットワークを機械学習させる
     請求項3に記載のオブジェクト検出方法。
  5.  前記第3の方式による前記オブジェクトの検出は、前記オブジェクトの輪郭線の形状パターンに基づいて前記オブジェクトの種類を検出する
     請求項4に記載のオブジェクト検出方法。
  6.  前記第3の方式にて前記オブジェクトの種類を検出できなった場合、該オブジェクトの種類をユーザから受け付け、
     前記画像認識ニューラルネットワークに前記撮像画像のデータが入力された場合、前記オブジェクトの位置及び種類が出力されるように、前記撮像画像及び受け付けた前記オブジェクトの種類を用いて、前記画像認識ニューラルネットワークを機械学習させる
     請求項4又は請求項5に記載のオブジェクト検出方法。
  7.  前記画像認識ニューラルネットワークを用いた前記オブジェクトの検出と、該画像認識ニューラルネットワークの機械学習とを並行的に実行する
     請求項4~請求項6までのいずれか一項に記載のオブジェクト検出方法。
  8.  前記撮像画像は検査対象物を撮像して得た画像であり、検出対象の前記オブジェクトは該検査対象物における異変部位である
     請求項1~請求項7までのいずれか一項に記載のオブジェクト検出方法。
  9.  撮像画像に含まれるオブジェクトを検出するオブジェクト検出装置であって、
     前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出する第1検出部と、
     不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出する第2検出部と、
     前記第1検出部による前記オブジェクトの検出結果と、前記第2検出部による前記オブジェクトの検出結果とに基づいて、前記第1検出部による前記オブジェクトの検出の成否を判定する判定部と、
     該判定部が、前記第1検出部による前記オブジェクトの検出に失敗していると判定した場合、前記第1検出部による前記オブジェクトの検出方法を前記第1検出部に機械学習させる学習部と
     を備えるオブジェクト検出装置。
  10.  コンピュータに撮像画像に含まれるオブジェクトを検出させるためのコンピュータプログラムであって、
     前記コンピュータに、
     前記撮像画像に含まれる前記オブジェクトの位置及び種類を検出することが可能な第1の方式にて前記オブジェクトを検出し、
     不特定の種類の前記オブジェクトにおいて、前記オブジェクトの位置を検出することが可能な第2の方式にて前記オブジェクトを検出し、
     前記第1の方式による前記オブジェクトの検出結果と、前記第2の方式による前記オブジェクトの検出結果とに基づいて、前記第1の方式による前記オブジェクトの検出の成否を判定し、
     前記第1の方式による前記オブジェクトの検出に失敗していると判定された場合、前記第1の方式による前記オブジェクトの検出方法を機械学習させる
     処理を実行させるためのコンピュータプログラム。
     
PCT/JP2019/013135 2018-08-06 2019-03-27 オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム WO2020031423A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020536309A JP7198438B2 (ja) 2018-08-06 2019-03-27 オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-147980 2018-08-06
JP2018147980 2018-08-06

Publications (1)

Publication Number Publication Date
WO2020031423A1 true WO2020031423A1 (ja) 2020-02-13

Family

ID=69414661

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/013135 WO2020031423A1 (ja) 2018-08-06 2019-03-27 オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム

Country Status (2)

Country Link
JP (1) JP7198438B2 (ja)
WO (1) WO2020031423A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022030034A1 (ja) * 2020-08-04 2022-02-10 株式会社日立ハイテク 画像から関心オブジェクトを同定するためのモデルを生成する装置、方法及びシステム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018135246A1 (ja) * 2017-01-23 2018-07-26 株式会社Nttドコモ 情報処理システム及び情報処理装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10521902B2 (en) 2015-10-14 2019-12-31 The Regents Of The University Of California Automated segmentation of organ chambers using deep learning methods from medical imaging

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018135246A1 (ja) * 2017-01-23 2018-07-26 株式会社Nttドコモ 情報処理システム及び情報処理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
OKATANI TAKAYUKI: "Research trend in deep learning for visual recognition : Advances of convolutional neural networks and their use", JOURNAL OF THE JAPANESE SOCIETY FOR ARTIFICIAL INTELLIGENCE, vol. 31, no. 2, 2016, pages 169 - 179, ISSN: 2188-2266 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022030034A1 (ja) * 2020-08-04 2022-02-10 株式会社日立ハイテク 画像から関心オブジェクトを同定するためのモデルを生成する装置、方法及びシステム

Also Published As

Publication number Publication date
JP7198438B2 (ja) 2023-01-04
JPWO2020031423A1 (ja) 2021-08-12

Similar Documents

Publication Publication Date Title
US10885618B2 (en) Inspection apparatus, data generation apparatus, data generation method, and data generation program
KR101934313B1 (ko) 검사 이미지들 내에서 결함들을 검출하기 위한 시스템, 방법 및 컴퓨터 프로그램 제품
JP5546317B2 (ja) 外観検査装置、外観検査用識別器の生成装置及び外観検査用識別器生成方法ならびに外観検査用識別器生成用コンピュータプログラム
TW490591B (en) Pattern inspection apparatus, pattern inspection method, and recording medium
JP6794737B2 (ja) 情報処理装置、情報処理方法、プログラムおよび検査システム
US20210012476A1 (en) Abnormality inspection device and abnormality inspection method
JP2012026982A (ja) 検査装置
JP2015041164A (ja) 画像処理装置、画像処理方法およびプログラム
WO2019176354A1 (ja) 学習用データ収集方法、学習用データ収集装置、異変検知システム及びコンピュータプログラム
JP7393313B2 (ja) 欠陥分類装置、欠陥分類方法及びプログラム
JP6347589B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP7453813B2 (ja) 検査装置、検査方法、プログラム、学習装置、学習方法、および学習済みデータセット
JP2021086379A (ja) 情報処理装置、情報処理方法、プログラム及び学習モデルの生成方法
JP5075070B2 (ja) 教師データ作成方法、並びに、画像分類方法および画像分類装置
WO2020031423A1 (ja) オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム
JP2002140694A (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した記録媒体
CN117274258A (zh) 主板图像的缺陷检测方法、系统、设备及存储介质
JP2014126445A (ja) 位置合せ装置、欠陥検査装置、位置合せ方法、及び制御プログラム
JP2021117155A (ja) 検査装置、検査方法、及び検査プログラム
WO2016092783A1 (en) Information processing apparatus, method for processing information, discriminator generating apparatus, method for generating discriminator, and program
US11039096B2 (en) Image processing device, image processing method and storage medium
WO2020031422A1 (ja) オブジェクト検出方法、オブジェクト検出装置及びコンピュータプログラム
JP2023145412A (ja) 欠陥検出方法及びシステム
CN115131355A (zh) 利用电子设备数据检测防水布异常的智能方法
WO2022241574A1 (en) Texture mapping to polygonal models for industrial inspections

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020536309

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19848072

Country of ref document: EP

Kind code of ref document: A1