WO2023276595A1 - 異常表示装置、異常表示プログラム、異常表示システム及び異常表示方法 - Google Patents

異常表示装置、異常表示プログラム、異常表示システム及び異常表示方法 Download PDF

Info

Publication number
WO2023276595A1
WO2023276595A1 PCT/JP2022/023096 JP2022023096W WO2023276595A1 WO 2023276595 A1 WO2023276595 A1 WO 2023276595A1 JP 2022023096 W JP2022023096 W JP 2022023096W WO 2023276595 A1 WO2023276595 A1 WO 2023276595A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
input image
unit
abnormality
information
Prior art date
Application number
PCT/JP2022/023096
Other languages
English (en)
French (fr)
Inventor
敦思 花元
隆治 田中
Original Assignee
LeapMind株式会社
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 LeapMind株式会社 filed Critical LeapMind株式会社
Priority to JP2023531749A priority Critical patent/JPWO2023276595A1/ja
Publication of WO2023276595A1 publication Critical patent/WO2023276595A1/ja

Links

Images

Classifications

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

Definitions

  • the present invention relates to an abnormality display device, an abnormality display program, an abnormality display system, and an abnormality display method.
  • This application claims priority based on Japanese Patent Application No. 2021-108017 filed in Japan on June 29, 2021, and incorporates all the content described in the application.
  • anomaly detection technology using image processing is applied in the process of sorting out defective products by inspecting the appearance of manufactured products.
  • an anomaly detection technology using machine learning is known (see Patent Document 1, for example).
  • an image of a product captured at a manufacturing site is transferred to a server installed at a location different from the manufacturing site via a communication network such as the Internet.
  • the inspection image itself may be confidential information, and it may not be desired to transfer the image to the outside.
  • the transfer time cannot be ignored depending on the network line, and efficient inspection cannot be performed.
  • an object of the present invention to provide an anomaly detection program, an anomaly detection device, an anomaly detection system, and an anomaly detection method that enable easy anomaly detection.
  • An abnormality display device includes a start information acquisition unit that acquires start information including information for starting abnormality detection for detecting an abnormality in an image included in an input image, and acquires the input image. and an anomaly detection unit that executes the anomaly detection by comparing the acquired input image with information based on a pre-stored normal image based on the acquired start information. and a display unit for superimposing and displaying information based on the information detected by the abnormality detection unit on the input image.
  • the start information includes a path indicating a location where the input image is stored, and the input image acquisition unit stores the image in the location indicated by the path. obtain the input image.
  • the start information includes an image capturing start signal for causing the image capturing unit to capture the image
  • the input image acquiring unit causes the image to be captured by the image capturing unit. Acquire the captured input image.
  • the abnormality display device further includes an image correction unit that corrects the input image
  • the abnormality detection unit includes the input image corrected by the image correction unit and the previously stored image. The abnormality detection is performed by comparing the normal image.
  • the abnormality display device further includes a correction selection information acquiring section that acquires correction selection information for selecting the type of correction processing to be executed by the image correction section.
  • the abnormality detection unit is learned in advance using a predetermined normal image.
  • the start information indicates whether the abnormality detection unit performs learning based on a predetermined normal image or executes the abnormality detection.
  • Learning execution selection information is included, and the abnormality detection unit executes either the learning or the abnormality detection based on the learning execution selection information included in the start information.
  • the information based on the pre-stored normal image includes information on a mean value vector and variance of the normal image
  • the abnormality detection unit divides the input image. Anomaly detection is performed for a plurality of divided areas, which are the detected areas, and the display unit displays the information detected by the anomaly detection unit in association with the divided areas and superimposed on the input image.
  • an abnormality display program includes a start information acquisition step of acquiring start information including information for causing a computer to start abnormality detection for detecting an abnormality of an image included in an input image; an input image acquisition step of acquiring the input image; and anomaly detection of executing the anomaly detection by comparing the acquired input image with a pre-stored normal image based on the acquired start information. and a display step of superimposing and displaying information based on the information detected by the abnormality detection step on the input image.
  • an abnormality display system includes an imaging unit that captures the image, executes the abnormality detection on the input image captured by the imaging unit, and displays information obtained as a result of the execution. and the abnormality display device described above.
  • an abnormality display method includes: a start information obtaining step of obtaining start information including information for starting abnormality detection for detecting an abnormality of an image included in an input image; an anomaly detection step of executing the anomaly detection by comparing the acquired input image with a pre-stored normal image based on the acquired start information; and a display step of superimposing and displaying information based on the information detected by the abnormality detection step on the input image.
  • anomalies can be easily detected from image information.
  • FIG. 1 is a functional configuration diagram showing an example of the functional configuration of an anomaly detection system according to an embodiment
  • FIG. FIG. 4 is a diagram showing an example of a normal input image and an abnormal input image according to the embodiment; BRIEF DESCRIPTION OF THE DRAWINGS It is a figure for demonstrating the concept of the abnormality detection system which concerns on embodiment.
  • FIG. 4 is a diagram for explaining a hierarchy included in an inference unit according to the embodiment;
  • FIG. It is a functional configuration diagram showing an example of the functional configuration of an abnormality detection unit according to the embodiment.
  • FIG. 4 is a diagram for explaining division according to the embodiment;
  • It is a functional configuration diagram showing an example of the functional configuration of a calculation unit according to the embodiment.
  • 4 is a flowchart for explaining a series of operations in "detection” processing of the anomaly detection system according to the embodiment; 4 is a flowchart for explaining a series of operations in "learning” processing of the anomaly detection system according to the embodiment; It is a figure for demonstrating the problem of the product inspection system by a prior art. It is a figure for demonstrating the learning process of the abnormality display apparatus which concerns on embodiment. It is a figure for demonstrating the test
  • FIG. 5 is a diagram showing an example of image correction of an input image according to the embodiment; It is a figure which shows an example of the normal image which concerns on embodiment. It is a figure which shows an example of the inspection result of the abnormality display apparatus which concerns on embodiment.
  • FIG. 7 is a flowchart for explaining a series of operations of learning processing of the abnormality display device according to the embodiment; 4 is a flowchart for explaining a series of operations of inspection processing of the abnormality display device according to the embodiment; It is a figure for demonstrating the 1st modification of the abnormality display apparatus which concerns on embodiment. It is a figure for demonstrating the 2nd modification of the abnormality display apparatus which concerns on embodiment.
  • FIG. 12 is a diagram for explaining the problem of the product inspection system according to the prior art.
  • a conventional product inspection system 90 will be described with reference to FIG.
  • a product inspection system 90 according to the prior art is installed in a product manufacturing factory, detects whether or not defects occur in the appearance of manufactured products, and removes products in which defects are detected from the manufacturing line.
  • a conventional product inspection system 90 comprises a product conveyor belt 91 , an imaging unit 93 , a gripping device 94 and an image processing server 95 .
  • the product conveying belt 91 conveys the manufactured product 98.
  • the product conveying belt 91 may be a belt conveyor or the like.
  • the product 98 is placed on the product conveying belt 91 and conveyed within the manufacturing factory.
  • the product 98 may be a finished product manufactured in a manufacturing plant, or may be a part in the process of being manufactured.
  • the product 98 is not limited to an industrial product, and may be a material, food, medicine, or the like.
  • the image capturing unit 93 is provided at a position capable of capturing an image of the product 98 conveyed on the product conveying belt 91 and captures an image of the appearance of the product 98 .
  • the captured image is transferred to the image processing server 95 via a predetermined communication network NW.
  • the image processing server 95 is provided at a site different from the manufacturing factory where the conventional product inspection system 90 is provided.
  • the image processing server 95 performs image processing on the transferred image and determines whether the image is a normal image or an abnormal image.
  • the image processing server 95 has an anomaly detection algorithm based on machine learning, for example. The anomaly detection algorithm may be learned in advance.
  • the image processing server 95 transmits the result of determining whether the transferred image is a normal image or an abnormal image via a predetermined communication network NW to predetermined equipment provided in the manufacturing factory according to the prior art, for example, Transfer to gripping device 94 .
  • the gripping device 94 grips the product 98 detected as an abnormal image based on the result determined by the image processing server 95, and removes it from the production line.
  • the gripping device 94 may remove the product 98 detected as an abnormal image from the production line by other methods than gripping. Another method may be, for example, changing the route of the product conveying belt 91, which is a belt conveyor.
  • the product inspection system 90 it is necessary to once transfer the captured image to the outside of the manufacturing factory via the communication network NW. Therefore, transfer may take time depending on the line speed of the network line connecting the communication network NW and the manufacturing plant.
  • the product conveying belt 91 may convey the product 98 at high speed, and especially in such a case, it is necessary to quickly detect the appearance abnormality. Therefore, there is a demand for an abnormality detection system that can quickly determine whether or not there is an abnormality in the appearance.
  • the product 98 may be a product that has not yet been distributed on the market, and in such a case, there is a particular demand to prevent leakage of confidential information. Also, the manufacturing process or processing process itself may be confidential information. Therefore, there is a demand for an anomaly detection system capable of judging an anomalous image without transferring the image to the outside of the manufacturing plant.
  • the anomaly detection system 1 according to this embodiment is intended to solve the above-described problems.
  • FIG. 1 is a functional configuration diagram showing an example of the functional configuration of an anomaly detection system according to an embodiment.
  • An abnormality detection system 1 according to the present embodiment will be described with reference to the figure.
  • the abnormality detection system 1 is not limited to the case where it is installed in a manufacturing factory. may be used for Further, the abnormality detection system 1 may be provided in an edge device driven by a battery or the like, or may be provided inside a mobile electronic device such as a digital camera or a smart phone, for example.
  • the anomaly detection system 1 is not limited to the case of performing anomaly detection on images captured in a factory.
  • the anomaly detection system 1 can also use, for example, pre-captured images as input images.
  • the anomaly detection system 1 includes an imaging device 50 , an inference unit (inference device) 10 , an anomaly detection unit (anomaly detection device) 30 , and an information processing device 60 .
  • Each block included in the abnormality detection system 1 is integrally controlled by a host processor (not shown).
  • the host processor controls each block by executing a program pre-stored in a memory (not shown). Note that the host processor may be configured to implement a part of the functions of the anomaly detection system 1 by executing a program stored in the memory.
  • the imaging device 50 images an object.
  • the imaging device 50 acquires information about the appearance of the product by imaging the object.
  • the imaging device 50 transfers the captured image as an input image P to the inference unit 10 .
  • the imaging device 50 is, for example, a fixed camera installed in the production line. note that.
  • the anomaly detection system 1 may include a storage device (not shown) instead of the imaging device 50 .
  • the inference unit 10 acquires the input image P from the imaging device 50 and extracts one or more feature maps F from the input image P.
  • the inference unit 10 includes a neural network trained to predict the class and likelihood of objects contained in the input image P.
  • a plurality of feature maps F are extracted from the intermediate layer of the inference unit 10 as a result of computation based on a plurality of features.
  • the computational processing load related to the neural network may become excessive. In such a case, it is desirable to configure the neural network so as to include a quantization operation in the arithmetic processing related to the neural network.
  • quantization that quantizes activations that perform convolutional operations included in arithmetic processing related to neural networks to 8 bits or less (e.g., 2 bits or 4 bits) and weights to 4 bits or less (e.g., 1 bit or 2 bits). You may provide a calculating part in a neural network.
  • the size of the input image P input to the inference unit 10 may be arbitrary.
  • the size of the input image P input to the inference unit 10 is desirably the same as the size of the image used when the inference unit 10 learns.
  • the size and conditions of the input image P are corrected by a correction unit (not shown), and then the corrected input image P is input to the inference unit 10. good too.
  • VGG 16 can be used as the inference unit 10 .
  • VGG16 is a convolutional neural network (so-called CNN: Convolutional Neural Network) consisting of a total of 16 layers.
  • CNN Convolutional Neural Network
  • the trained model an existing trained model may be used, or a model obtained by subjecting the existing trained model to additional learning may be used.
  • additional learning it is preferable to use a normal image as the input image P as a reference for abnormality detection.
  • a large amount of images may be required in the learning of the neural network included in the inference unit 10 . In such cases, it is often difficult to prepare a natural image captured by a camera or the like.
  • the neural network included in the inference unit 10 of this embodiment is used for anomaly detection
  • images used for learning do not necessarily have to be natural images.
  • learning may be performed using a fractal image generated by a predetermined algorithm.
  • a fractal image is an image containing edges and features in arbitrary directions, so it is suitable for an anomaly detection neural network for feature detection.
  • the inference unit 10 is not limited to the VGG 16 as an example.
  • the reasoning unit 10 may use, for example, the RESNET 50 instead of the VGG 16 .
  • RESNET 50 is a CNN configured with a total of 50 convolution layers.
  • the inference unit 10 may be composed of a single CNN, or may be composed of a plurality of CNNs. When the inference unit 10 is composed of a plurality of CNNs, the inference unit 10 may be selectively switched from a plurality of deep learning models according to the detection target, or may be configured by combining a plurality of deep learning models. good too.
  • FIG. 2 is a diagram illustrating an example of a normal input image and an abnormal input image according to the embodiment; An example of the input image P will be described with reference to FIG.
  • FIG. 2A shows an input image P1 as an example of a normal input image.
  • the input image P1 is an image of a nut.
  • FIG. 2B shows an input image P2 as an example of an abnormal input image.
  • the input image P2 is also an image of a nut, similar to the input image P1, but the nut in the input image P2 has cracks. Therefore, the anomaly detection system 1 detects a cracked nut as an anomaly.
  • the anomaly detection unit 30 acquires at least one feature map F from the inference unit 10 .
  • the anomaly detection unit 30 performs an anomaly detection based on the acquired feature map F.
  • FIG. The anomaly detection unit 30 outputs the result of the anomaly detection to the information processing device 60 as an anomaly detection result R.
  • FIG. The abnormality detection performed by the abnormality detection unit 30 may be detection of whether or not there is a defect in the appearance of the object captured in the input image P (that is, binary), or detection of whether or not there is a defect in the appearance of the object. It may be one that estimates the place where the The presence of a defect in an object indicates that there is a specific difference from the normal image that the inference unit 10 has learned in advance. Further, the abnormality detection unit 30 may detect the degree of defects or the likelihood of defects in the appearance of the object captured in the input image P.
  • All or part of each function of the inference unit 10 and the abnormality detection unit 30 is implemented using hardware such as ASIC (Application Specific Integrated Circuit), PLD (Programmable Logic Device), or FPGA (Field-Programmable Gate Array). may be implemented.
  • ASIC Application Specific Integrated Circuit
  • PLD Programmable Logic Device
  • FPGA Field-Programmable Gate Array
  • a processor that executes program processing may be combined with an accelerator that executes operations related to neural networks.
  • a neural network operation accelerator for repeatedly executing convolution operations and quantization operations may be used in combination with the processor.
  • the inference unit 10 may be referred to as a backbone, and the abnormality detection unit 30 as a head.
  • the inference unit 10 and the anomaly detection unit 30 function as the inference unit 10 and the anomaly detection unit 30 by executing the inference program and the anomaly detection program, respectively.
  • the inference program and the anomaly detection program may be recorded on a computer-readable recording medium.
  • Computer-readable recording media include portable media such as flexible disks, magneto-optical disks, ROMs and CD-ROMs, and storage devices such as hard disks incorporated in computer systems.
  • the display screen control program may be transmitted via an electric communication line.
  • the information processing device 60 acquires the abnormality detection result R from the abnormality detection unit 30 .
  • the information processing device 60 may display an image based on the obtained abnormality detection result R, or may perform a predetermined operation on the corresponding object based on the obtained abnormality detection result R. What is the prescribed action? For example, it may be an operation of removing defective products from the production line, or an operation of storing an inspection log based on the abnormality detection result R, or the like.
  • FIG. 3 is a diagram for explaining the concept of the anomaly detection system according to the embodiment.
  • the concept of the anomaly detection system 1 will be described with reference to the figure.
  • feature maps 71-1, 71-2, and 71-3 are extracted as feature maps 71 from different intermediate layers among the plurality of intermediate layers provided in the inference unit 10. be done.
  • the plurality of feature maps 71 obtained from different intermediate layers may have different sizes.
  • the anomaly detection system 1 may perform calculations based on one or more feature maps, but anomaly detection can be performed more accurately by using a plurality of feature maps.
  • anomaly detection can be performed more accurately by using a plurality of feature maps.
  • the feature map has different characteristics such as field of view and detection direction depending on the intermediate layer to be acquired. Therefore, the anomaly detection system 1 can perform anomaly detection based on various features by using a plurality of feature maps.
  • the anomaly detection system 1 compresses the acquired feature maps 71 .
  • the feature map 71 is multidimensional data.
  • the feature map 71 is a four-dimensional tensor having elements (i, j, c, n) as constituent elements.
  • the i-direction and the j-direction are the image directions of the input image P, that is, the vertical direction and the horizontal direction of the input image P, respectively.
  • the c-direction is the channel direction.
  • the channel direction includes, for example, the color (R, G, B) direction of pixels.
  • n is information indicating which feature map it is among a plurality of feature maps.
  • the anomaly detection system 1 performs compression in the i direction and j direction (that is, the vertical direction and horizontal direction of the input image P).
  • the acquired feature maps 71 have different sizes. Therefore, the anomaly detection system 1 compresses the acquired feature maps 71 so that the sizes in the i-direction and the j-direction of the plurality of feature maps 71 are the same.
  • the anomaly detection system 1 preferably compresses the i-direction and j-direction according to the feature map 71 having the smallest size. However, the anomaly detection system 1 may or may not compress according to the feature map 71 having the largest size in the i and j directions.
  • the size of the feature map 71 suitable for anomaly detection may vary depending on the detection target. For example, in mass-produced industrial products such as screws and electronic components, normal products have substantially the same appearance for each product, and variations are relatively small. On the other hand, foods such as boxed lunches and frozen foods, and textile products such as fabrics and clothes may have different appearances even if they are normal products, and have relatively large variations. For example, if the size of the feature map is increased for a detection target with small variations in appearance, a small difference in appearance that is not actually abnormal may be erroneously detected as abnormal. Also, if the size of the feature map is reduced for a detection target with large variations in appearance, it may be erroneously detected as not being abnormal even though it is actually abnormal.
  • the size of the feature map 71 may be varied according to the detection target (that is, the target or state to be detected in the captured image). For example, the size of the feature map may be reduced for industrial products with small variations in appearance, and the size of the feature map may be increased for foods and textile products with large variations in appearance. In addition, when detecting the state after machine mounting or machining of factory products that originally have small variations, the size of the feature map 71 may be increased. Detection accuracy can be improved by varying the size of the feature map 71 according to the target to be detected.
  • the size of the feature map 71 according to the detection target may be determined during learning. For example, during learning, it may be learned which of a plurality of different feature map sizes can be detected with high accuracy. In addition, it is possible to output the accuracy and the like according to the sizes of a plurality of different feature maps 71, and the size of the feature map 71 according to the detection target can be set as a parameter by UI (User Interface). may be configured.
  • UI User Interface
  • the anomaly detection system 1 compresses the acquired plurality of feature maps 71 by a technique such as average pooling or max pooling.
  • a technique such as average pooling or max pooling.
  • the feature map 71 after compression is referred to as a feature map 72 .
  • the anomaly detection system 1 divides the feature map 72 into the i direction and the j direction.
  • the anomaly detection system 1 may divide the feature map 72 into an odd number in the i direction and an odd number in the j direction.
  • the anomaly detection system 1 divides the feature map 72 into 7 in the i direction and 7 in the j direction, for a total of 49 pieces.
  • the number of elements in the i-direction and the j-direction of the feature map 73 after division is set to 1 by aligning the number of elements in the i-direction and the j-direction of the compressed feature map 72 and the number of respective divisions.
  • this embodiment is not limited to this.
  • the feature map 72 after division is referred to as a feature map 73.
  • the anomaly detection system 1 calculates the distance between the input image P and the pre-learned normal image for each feature map 73 . Specifically, the anomaly detection system 1 calculates the distance from the pre-learned normal image by calculating the Mahalanobis distance instead of the Euclidean distance based on the values of the elements included in the feature map 73 . Since each element included in the feature map 73 is not an independent value, and particularly the c-direction element is a feature amount obtained based on the output of the same image, some correlation can be expected. As a result, even when the normal images in the population have a characteristic spread, the abnormality detection system 1 can accurately calculate the distance between the normal image and the abnormal image.
  • the Mahalanobis distance is calculated for each divided feature map 73 instead of the Mahalanobis distance for the entire input image P, so the calculation can be easily performed.
  • the reason why the feature map is divided is that the amount of calculation can be reduced by reducing the number of elements included in the feature map.
  • the number of elements in the i and j directions of the compressed feature map 72 can be set to 1. .
  • the calculation load can be greatly reduced.
  • FIG. 4 is a diagram for explaining a hierarchy included in an inference unit according to the embodiment.
  • Hierarchies included in the inference unit 10 will be described with reference to FIG.
  • the inference unit 10 has, for example, nine layers from layer L1 to layer L9.
  • layer L1, layer L3, layer L4, layer L5 and layer L7 are pooling layers
  • layer L2, layer L6, layer L8 and layer L9 are convolution layers.
  • the anomaly detection system 1 extracts feature maps 71 from multiple different hierarchies.
  • the anomaly detection system 1 calculates the Mahalanobis distance M1 based on the feature map F1 extracted from the layer L1, and calculates the Mahalanobis distance M1 based on the feature map F2 extracted from the layer L2. 2 is calculated, and the Mahalanobis distance M9 is calculated based on the feature map F9 extracted from the layer L9.
  • the abnormality detection system 1 calculates the Mahalanobis distance M after dividing the extracted feature map F, the number of Mahalanobis distances for one feature map F is calculated according to the number of divisions.
  • the anomaly detection system 1 adds the Mahalanobis distance M9 from the calculated Mahalanobis distance M1. Note that the anomaly detection system 1 does not need to add all Mahalanobis distances calculated for each layer. For example, the anomaly detection system 1 may selectively add a value with a large calculated Mahalanobis distance, or may add weighted values. Further, the abnormality detection system 1 may be configured to calculate distribution information such as an average value and standard deviation instead of addition. According to this embodiment, by calculating the Mahalanobis distance after division, it is possible to specify the position where an abnormality is detected in the image to be detected.
  • the abnormality detection at the corresponding image position may be performed by adding the Mahalanobis distance M at the corresponding image position.
  • FIG. 5 is a functional configuration diagram showing an example of the functional configuration of an abnormality detection unit according to the embodiment; An example of the functional configuration of the abnormality detection unit 30 will be described with reference to the same drawing.
  • the anomaly detection unit 30 includes a feature map acquisition unit 310 , a compression unit 320 , a division unit 330 , a calculation unit 340 and an output unit 350 .
  • the feature map acquisition unit 310 acquires the feature map F extracted from the input image P from the inference unit 10 .
  • the feature map acquisition unit 310 acquires a plurality of feature maps F extracted from different intermediate layers among the plurality of feature maps F extracted from the input image P by the inference unit 10 .
  • the feature map acquisition unit 310 transfers the acquired feature map F to the compression unit 320 .
  • the compression unit 320 compresses the acquired feature map F.
  • the feature map F has at least the image direction, which has vertical and horizontal directions, and the channel direction as feature quantities.
  • the compression unit 320 compresses the elements of the feature map in the image direction. Note that the compression unit 320 of this embodiment does not compress in the channel direction. Therefore, according to the compression section 320, the amount of information can be compressed while maintaining the amount of information in the channel direction.
  • the compression unit 320 transfers the compressed feature map F to the division unit 330 as a feature map F1. Note that the compression unit 320 may compress in the c direction in order to appropriately reduce the amount of data.
  • a dividing unit 330 divides the compressed feature map F1. Specifically, the dividing unit 330 divides the feature map F1 in the image direction. Note that the dividing unit 330 desirably divides the feature map F into an odd number of pieces in each of the vertical direction and the horizontal direction. By dividing the feature map F into an odd number of pieces, the division unit 330 can obtain the median value during the calculation, thereby facilitating the calculation. However, it does not necessarily have to be divided into an odd number, and may be divided into an even number depending on the data to be detected and the application.
  • FIG. 6 is a diagram for explaining division according to the embodiment.
  • the division of the feature map F1 will be described with reference to FIG.
  • An image P3 is an input image P, and is an example showing a positional relationship with the input image P when the feature map F1 is divided in the image direction by the dividing unit 330.
  • the feature map acquired from the intermediate layer includes information beyond the divided area by convolution operation or the like. Therefore, it is possible to perform detection with higher accuracy than simply dividing the input image and performing abnormality detection.
  • the dividing unit 330 transfers the divided feature map F to the computing unit 340 as a feature map F2.
  • the calculation unit 340 performs calculation based on the pre-determined mean value vector and variance for each divided feature map F2.
  • the calculation based on the mean value vector and the variance is specifically the calculation of the Mahalanobis distance. That is, the computing unit 340 computes the Mahalanobis distance for each divided feature map F2 as a computation based on the mean value vector and the variance. Further, the calculation unit performs calculation based on the mean value vector and the variance based on the plurality of acquired feature maps F2.
  • FIG. 7 is a functional configuration diagram showing an example of a functional configuration of an arithmetic unit according to the embodiment;
  • the functional configuration of the calculation unit 340 will be described with reference to the figure.
  • the calculation unit 340 performs calculation based on the average value vector and the variance for each divided feature map F2, and performs abnormality detection in the input image P.
  • the calculation unit 340 transfers the result of the calculation to the output unit 350 as the abnormality detection result R.
  • the calculator 340 includes a calculator 341 and an adder 342 .
  • the calculation unit 341 performs calculation based on the average value vector and the variance for each of the plurality of divided feature maps F2.
  • the computation based on the mean value vector and the variance is, specifically, computation of the Mahalanobis distance M based on the following equation (1).
  • D 2 is the Mahalanobis distance
  • x is a vector consisting of elements of a plurality of divided feature maps F2 to be computed
  • m is a vector of pre-determined average values
  • C ⁇ 1 is T indicates the inverse matrix of the pre-determined covariance matrix
  • T indicates the transpose operation.
  • the Mahalanobis distance itself can take from 0 to infinity, but the upper limit may be set to a value such as 8 bits or 16 bits, or it may be normalized.
  • the Mahalanobis distance is shown as D2, which is in the form of a square , for simplification of calculation, it may be in a form that is not raised to a power.
  • the calculation unit 341 calculates the Mahalanobis distance D2 for each of the plurality of divided feature maps F2 based on the above equation ( 1 ), and adds the Mahalanobis distance D2, which is the calculated result, as the Mahalanobis distance M. 342.
  • a pseudo-inverse matrix may be used as the covariance inverse matrix.
  • the adder 342 obtains an abnormality detection result R by adding a plurality of calculated results based on a predetermined condition.
  • the predetermined condition may be, for example, the top three values among the calculated Mahalanobis distances M, or the like.
  • the addition unit 342 may add a value selected based on a predetermined threshold among the values calculated by the calculation unit 341 .
  • the addition unit 342 may obtain the abnormality detection result R by taking an average value instead of adding the calculated results.
  • the addition unit 342 may obtain the abnormality detection result R by combining the variances in addition to adding the plurality of calculated results.
  • the abnormality detection result R may be obtained, for example, by statistically calculating a plurality of calculated results.
  • the top m (m is a natural number of 1 or more) are extracted from a plurality of calculated results, and the total value, average value, median value (median value) or mode value of the extracted values etc. may be calculated.
  • the target for which the statistical calculation is performed is not limited to an example extracted from the top m items, and may be extracted from each of the top m items and the bottom m items, or the remaining results excluding the results below a predetermined value (threshold) A value may be extracted, or a value whose variance is equal to or greater than a predetermined value (eg, 3 ⁇ ) may be extracted.
  • a predetermined value eg, 3 ⁇
  • anomaly detection result R may be obtained by performing statistical calculation based on a plurality of results.
  • the abnormality detection result R may be obtained by performing calculations based on the maximum and minimum values of the plurality of calculated results.
  • the abnormality detection result R may be obtained based on the difference between the maximum value and the minimum value of a plurality of calculated results.
  • the method of obtaining the abnormality detection result R from the plurality of calculated results is not limited to the example described above, and various known methods can be applied.
  • the addition unit 342 may generate a distribution based on the result of the Mahalanobis distance and use the generated distribution as the abnormality detection result R, instead of adding a plurality of calculated results.
  • the output unit 350 outputs the abnormality detection result R, which is the result calculated by the calculation unit 340.
  • the output unit 350 outputs the abnormality detection result R to the information processing device 60, for example.
  • FIG. 8 is a functional configuration diagram showing a modification of the functional configuration of the abnormality detection unit according to the embodiment; 30 A of abnormality detection parts which are modifications of the abnormality detection part 30 are demonstrated, referring the same figure.
  • the abnormality detection unit 30A calculates the degree of abnormality of the input image P based on the abnormality detection result R calculated by the calculation unit 340 .
  • the degree of abnormality in the input image P may be the distance from a pre-learned normal image.
  • the abnormality detection section 30A differs from the abnormality detection section 30 in that it includes a comparison section 360 and a threshold information storage section 361 . Configurations similar to those of the abnormality detection unit 30 may be denoted by similar reference numerals, and description thereof may be omitted.
  • the abnormality detection result R calculated by the calculation unit 340 is described as an abnormality detection result R1.
  • the comparison unit 360 acquires the abnormality detection result R1 from the calculation unit 340 . Also, the comparison unit 360 acquires a predetermined threshold TH from the threshold information storage unit 361 . The comparison unit 360 compares the obtained abnormality detection result R1 with a predetermined threshold TH. For example, if the obtained abnormality detection result R1 is larger than the predetermined threshold value TH as a result of comparison by the comparison unit 360, the object captured in the input image P has some abnormality.
  • the output unit 350 outputs an abnormality detection result R2, which is the result of comparison by the comparison unit 360.
  • the predetermined threshold TH stored in the threshold information storage unit 361 may be divided into multiple stages.
  • the comparison unit 360 classifies the abnormality detection result R1 for each layer by comparing the abnormality detection result R1, which is the result calculated by the calculation unit 340, with a plurality of predetermined threshold values TH.
  • the comparison unit 360 can calculate the degree of abnormality of the input image P by classifying the abnormality detection result R1 for each layer.
  • the comparison unit 360 outputs the result of classification for each layer to the output unit 350 as an abnormality detection result R2.
  • the output unit 350 outputs an abnormality detection result R2, which is the result of classification.
  • the predetermined threshold TH stored in the threshold information storage unit 361 may be set by the user before starting detection, or may be obtained as a result of learning processing described later.
  • FIG. 9 is a diagram illustrating an example of an output result of an output unit according to the embodiment;
  • FIG. A display result based on the anomaly detection result R2, which is the result of classification for each layer by the comparison unit 360, will be described with reference to FIG.
  • FIG. 9A shows an example of a display image in which the degree of abnormality according to the position of the input image P is color-coded.
  • FIG. 9B shows an example of a legend for color coding. In the figure, locations that are presumed to be abnormal are shown in dark colors, and locations that are presumed to be normal are shown in light colors. The part indicated by symbol A is shown in a dark color because it is assumed to be abnormal.
  • the comparison unit 360 may determine whether or not to remove the object imaged in the input image P from the production line by comparing the abnormality detection result R1 with a predetermined threshold TH.
  • the anomaly detection system 1 may remove the object imaged in the input image P by setting a plurality of stages of thresholds, distinguishing between a plurality of locations according to the extent of the anomaly.
  • FIG. 10 is a flowchart for explaining a series of operations in "detection" processing of the anomaly detection system according to the embodiment.
  • a series of operations of the anomaly detection system 1 will be described with reference to FIG. (Step S110)
  • the abnormality detection system 1 acquires the input image P.
  • the anomaly detection system 1 acquires the input image P from the imaging device 50, for example.
  • Step S ⁇ b>120 The anomaly detection system 1 inputs the acquired image to a DL (Deep Learning) model, that is, the inference unit 10 .
  • DL Deep Learning
  • Step S130 The feature map acquisition unit 310 included in the anomaly detection unit 30 acquires a feature map F from each of the plurality of intermediate layers included in the DL model.
  • Step S140 The compression unit 320 included in the abnormality detection unit 30 compresses the acquired feature map F in the image direction.
  • Step S150 The dividing unit 330 included in the abnormality detecting unit 30 divides the compressed feature map in the image direction.
  • Step S160 The calculation unit 340 included in the abnormality detection unit 30 calculates the Mahalanobis distance M for each divided feature map.
  • Step S170 The calculation unit 340 included in the abnormality detection unit 30 adds the Mahalanobis distance M obtained for each feature map.
  • Step S180 The comparison unit 360 compares the added value with a predetermined threshold.
  • Step S190 If the added value is greater than the predetermined threshold (that is, step S190; YES), the comparison unit 360 advances the process to step S200. If the added value is not greater than the predetermined threshold value (that is, step S190; NO), comparing section 360 advances the process to step S210.
  • Step S200 It is determined that the input image P has an abnormality, and the output section 350 outputs the result to the information processing device 60.
  • FIG. (Step S210) It is determined that the input image P is normal, and the output section 350 outputs the result to the information processing device 60.
  • FIG. 11 is a flowchart for explaining a series of operations in "learning" processing of the anomaly detection system according to the embodiment.
  • the learning operation of the anomaly detection system 1 will be described with reference to FIG.
  • Step S210 the abnormality detection system 1 acquires the input image P.
  • the anomaly detection system 1 acquires the input image P from the imaging device 50, for example.
  • control is performed so that only normal images are selected and acquired.
  • the anomaly detection system 1 detects an anomaly present in the input image P by treating the given image as a normal image when performing a learning operation and calculating the deviation from the normal image as the Mahalanobis distance.
  • Step S ⁇ b>220 The anomaly detection system 1 inputs the acquired image to the DL model, that is, the inference unit 10 .
  • Step S230 The feature map acquisition unit 310 included in the anomaly detection unit 30 acquires a feature map F from each of the plurality of intermediate layers included in the DL model.
  • Step S240 The compression unit 320 included in the abnormality detection unit 30 compresses the acquired feature map F in the image direction.
  • Step S250 The dividing section 330 included in the abnormality detecting section 30 divides the compressed feature map in the image direction.
  • Step S260 A parameter calculation unit (not shown) provided in the abnormality detection unit 30 calculates parameters used for calculation by the calculation unit 340 based on each element of the divided feature map.
  • the parameters used for calculation by the calculation unit 340 are specifically the mean value vector and the covariance matrix in the normal image.
  • step S250 may be omitted and the whole image may be obtained. That is, the feature map acquisition unit 310 acquires a plurality of feature maps extracted from at least one normal image, and the parameter calculation unit calculates parameters based on the plurality of feature maps extracted from the normal image. Parameters may include mean vectors and covariance matrices.
  • Step S270 The average value vector and covariance matrix in the input image P are output.
  • the output mean value vector and covariance matrix are parameters generated in advance from normal images, and are used in the detection operation as predetermined parameters.
  • the anomaly detection system 1 uses dozens of images to obtain an average value vector and a shared value. It is preferable to determine the covariance matrix.
  • the abnormality detection system 1 is used in a product inspection system or the like, it is preferable to perform the learning operation according to the target image included in the input image P.
  • the learning operation corresponding to the image of the object included in the input image P may be for each product line, inspection type, or the like.
  • the learning operation needs to be performed before the sensing operation shown in FIG.
  • the anomaly detection system 1 may prompt re-learning after a predetermined period of time has elapsed since the learning operation was performed.
  • backbone learning is not performed in the learning operation of this embodiment.
  • the backbone may be additionally learned using normal images.
  • a threshold value for detecting abnormality may be calculated when calculating the mean value vector and covariance matrix in the normal image. Specifically, it may be determined automatically based on variations in Mahalanobis distance in normal images calculated when the learning process is executed.
  • the abnormality detection system 1 performs abnormality detection based on the feature map F extracted from the input image P by including the abnormality detection unit 30 .
  • the abnormality detection unit 30 acquires the feature map F by having the feature map acquisition unit 310, compresses the acquired feature map F by having the compression unit 320, and compresses the acquired feature map F by having the division unit 330.
  • the anomaly detection unit 30 performs an operation based on the mean value vector and the variance for each compressed and divided feature map F, the operation can be facilitated. Therefore, according to the anomaly detection system 1, it is possible to easily detect the presence or absence of an anomaly existing in the object from the image information of the input image P.
  • the compression unit 320 compresses the feature map F in the image direction. Therefore, the abnormality detection unit 30 can reduce the processing load of the calculation unit 340 by including the compression unit 320 .
  • the object anomaly detection technology there are cases where processing speed is required rather than the accuracy of specifying an anomaly location. According to this embodiment, since compression is performed in the image direction, anomaly detection can be performed at high speed due to a trade-off with the accuracy of specifying an anomaly.
  • the dividing unit 330 divides the feature map F into an odd number of pieces.
  • the division unit 330 divides the feature map F into an odd number of pieces, so the calculation unit 340 can easily perform calculations for abnormality detection.
  • the compression unit 320 does not compress the feature map F in the channel direction. Therefore, the compression unit 320 can compress in the image direction while maintaining the amount of information in the channel direction. Since the calculation unit 340 performs calculations based on the feature map F after compression, it is possible to reduce the processing load in the image direction while maintaining accuracy in the channel direction.
  • the anomaly detection technology of an object there are cases where the accuracy of the presence or absence of an anomaly is required rather than the accuracy of specifying a location where an anomaly exists. Also, there are cases where processing speed is required rather than the accuracy of identifying a location where an abnormality exists.
  • anomaly detection can be performed at high speed while maintaining the accuracy of the presence/absence of anomalies due to the trade-off with the accuracy of specifying the locations where anomalies exist.
  • the computing unit 340 computes the Mahalanobis distance for each divided feature map F as computation based on the mean value vector and the variance. Specifically, the calculation unit 340 performs calculation based on the formula (1) described above. Therefore, according to the calculation unit 340, the calculation can be easily performed.
  • the feature map acquisition unit 310 acquires a plurality of feature maps F extracted from different intermediate layers among the plurality of feature maps F extracted from the input image P. Further, the calculation unit 340 performs calculation based on the average value vector and the variance based on the plurality of acquired feature maps F.
  • FIG. Therefore, according to this embodiment, if the accuracy is important, the feature maps F may be obtained from a large number of intermediate layers, and if the speed is important, the feature maps F should be obtained from a small number of intermediate layers. . Therefore, according to the present embodiment, in the trade-off between the accuracy of abnormality detection and the processing speed, it is possible to set one of them to be emphasized.
  • the calculation unit 340 includes the calculation unit 341, and performs calculation based on the average value vector and the variance for each of the plurality of feature maps F extracted from different intermediate layers. . Moreover, the calculation unit 340 is provided with an addition unit 342 . The values calculated for each feature map F are added. Therefore, according to the present embodiment, the calculation unit 340 can perform calculations based on values calculated for each of a plurality of different feature amounts, so that abnormality detection can be performed with higher accuracy.
  • the adding unit 342 adds a value selected based on a predetermined threshold among the values calculated by the calculating unit 341 . That is, according to this embodiment, abnormality detection is performed based on a specific value among the calculated values. Therefore, according to the present embodiment, feature amounts that do not contribute to abnormality detection can be excluded from calculation. Therefore, according to this embodiment, it is possible to detect an abnormality at high speed and with high accuracy.
  • the comparison unit 360 by providing the comparison unit 360, the value calculated by the calculation unit 340 is compared with a predetermined threshold value. Therefore, according to the present embodiment, it is possible to output the result of abnormality detection.
  • the comparison unit 360 classifies the results calculated by the calculation unit 340 for each layer.
  • the output unit 350 outputs results classified by hierarchy. Therefore, according to the present embodiment, it is possible to output a display image in which an abnormal portion can be easily discriminated visually.
  • the inference unit 10 is a neural network trained to predict the class and likelihood of objects included in the input image P. Therefore, the inference unit 10 can extract the feature map F from the input image P at high speed. In addition, by using a pre-learned neural network as the inference unit 10, the anomaly detection system 1 can detect an anomaly without learning in accordance with an object to be anomaly detected.
  • the abnormality display system 8 is a system that uses the abnormality detection system 1 to display an abnormality location present in the input image P.
  • FIG. the abnormality display system 8 is used, for example, by a worker who maintains objects such as infrastructure equipment.
  • the infrastructure facilities in this embodiment may be, for example, water and sewage pipes, gas pipes, power transmission facilities, communication facilities, roads for automobiles, railway tracks, and the like.
  • the worker may be a person who inspects an object such as a house or an automobile.
  • the abnormality display system 8 may be used by a moving object such as a drone or an AGV (Automated Guided Vehicle) instead of being used by a worker.
  • the abnormality display system 8 may detect an abnormality based on an image picked up by the moving object and display the location of the abnormality to the operator who controls the controller or the central control unit.
  • the anomaly display system 8 is not limited to the case where it is used by workers, drones, or other moving objects for equipment or inspection, and may be fixed in the manufacturing factory.
  • the abnormality display system 8 installed in the manufacturing factory may detect external abnormalities in manufactured products and parts and display the detection results to the operator. Further, the abnormality display system 8 is installed in a food processing factory or the like, and is used for shipment inspection by detecting an abnormality in the appearance of food, materials, etc. and displaying the detection result to the operator. good too.
  • the abnormality display system 8 performs "learning” and "inspection”. “Learning” means learning the range of normal images based on normal images, and “inspection” means learning the appearance of the input image P to be inspected based on the learned range of normal images. It is to perform anomaly detection. First, “learning” will be described with reference to FIG. 13, and then “testing” will be described with reference to FIG.
  • FIG. 13 is a diagram for explaining learning processing of the abnormality display device according to the embodiment.
  • the “learning” performed by the abnormality display system 8 will be described with reference to FIG.
  • the anomaly display system 8 has an anomaly detection model 830 .
  • the learned backbone 820 and the learning image P11 are input to the anomaly detection model 830 .
  • the anomaly detection model 830 is learned based on the learned backbone 820 and the learning image P11, and outputs a learning result head 834 as a result of learning.
  • the learned backbone 820 is an example of the inference unit 10
  • the learning image P11 is an example of the input image P.
  • the anomaly detection model 830 includes a pre-process 831 , a CNN (Convolutional Neural Network) 832 and a post-process 833 .
  • Anomaly detection model 830 is an example of anomaly detection unit 30 . All or part of the processing of anomaly detection model 830 may be implemented as a hardware accelerator.
  • the pre-process 831 calculates the position coordinates indicating the range in which the object is expected to exist in the input image P, and the likelihood of the class corresponding to the position coordinates.
  • the pre-process 831 performs processing for each element matrix obtained by dividing the input image P in the image direction. That is, the pre-process 831 outputs, for each element matrix, position coordinates indicating a range in which an object is expected to exist, and the likelihood of the class corresponding to the position coordinates.
  • the CNN 832 performs a convolution operation on the position coordinates and likelihood output by the preprocess 831.
  • the CNN 832 may perform an operation for each element matrix and output a plurality of operation results performed for each element matrix. For example, when the input image P has an image size of 224 [pixels] ⁇ 224 [pixels], the element matrix has an image size of 7 [pixels] ⁇ 7 [pixels] resulting from division into 32 ⁇ 32 pixels. may In addition, the input image P has color information of 3 [ch (channel)] ⁇ 8 [bit] consisting of R (Red), G (Green), and B (Blue) at the time when it is input to the anomaly detection model 830. You may have
  • the post-process 833 learns the mean value vector and covariance matrix in the input image P based on the calculation results for each of the multiple element matrices output by the CNN 832 .
  • the post-process 833 outputs the learned result as a learned result head 834 .
  • the learning result head 834 is a trained model. Note that it is preferable to use a plurality of images as the input image P in the learning process. A normal image (including an image acceptable as normal) is preferable as the input image P used in the learning process.
  • the pre-process 831 may perform predetermined image processing instead of calculating the position coordinates indicating the range in which an object is expected to exist in the input image P and the likelihood of the class corresponding to the position coordinates. good. Examples include processing for improving the image quality of the input image P, processing of the image itself, other data processing, and the like.
  • the processing for image quality improvement may be luminance/color conversion, black level adjustment, noise improvement, correction of optical aberration, or the like.
  • Processing of the image itself may be processing such as clipping, enlargement/reduction/transformation of the image.
  • Other data processing may be data processing such as gradation reduction, compression encoding/decoding, or data duplication.
  • FIG. 14 is a diagram for explaining inspection processing of the abnormality display device according to the embodiment.
  • the "inspection" performed by the abnormality display system 8 will be described with reference to FIG.
  • the anomaly detection model 830 is input with the learned backbone 820, the learning result head 834 learned in the "learning” stage, and the inspection image P12.
  • the anomaly detection model 830 outputs at least one of an inspection result heat map image R1 and an inspection result score R2 as an anomaly detection result R.
  • the inspection result heat map image R1 may be the abnormality detection result R described in the abnormality detection system 1 .
  • the inspection result heat map image R1 is an image obtained by superimposing and displaying information based on the result of abnormality detection on the input image P.
  • the inspection result heat map image R1 is an example of the embodiment, and may be displayed by a method other than the heat map.
  • the inspection result score R2 may be the total processing time required for the inspection, the number of inspected images, a path indicating the storage location of the inspection result, or the like.
  • FIG. 15 is a functional configuration diagram showing an example of the functional configuration of the abnormality display device according to the embodiment; FIG. An example of the functional configuration of the abnormality display system 8 and the abnormality display device 80 according to the present embodiment will be described with reference to the same drawing.
  • Each block included in the abnormality display system 8 is controlled by a processor (not shown). Alternatively, at least part of each block may be realized by a processor executing a program stored in a memory (not shown).
  • the abnormality display system 8 includes a storage device 81 , an input device 82 and an abnormality display device 80 .
  • the storage device 81 stores the input image P (the learning image P11 and the inspection image P12) and the like.
  • the storage device 81 outputs the input image P to the abnormality display device 80 .
  • the abnormality display device 80 is “learned” based on the input image P which is a normal image, “inspects” the input image P to be inspected, and displays the result.
  • the input device 82 inputs information acquired from the user to the abnormality display device 80 based on the user's operation.
  • the input device 82 may be, for example, an input device such as a keyboard, touch panel, or voice input device. Note that the input device 82 does not have to be based on the user's operation. For example, information may be input periodically, or information may be input using object detection or the like as a trigger.
  • the abnormality display device 80 includes a start information acquisition section 810, an input image acquisition section 805, a correction selection information acquisition section 806, an image correction section 807, an inference section 10, an abnormality detection section 30, and a display section 840. Prepare. Configurations similar to those of the anomaly detection system 1 may be denoted by similar reference numerals, and description thereof may be omitted.
  • the start information acquisition unit 810 acquires start information IS.
  • the start information IS includes information for causing the abnormality detection unit 30 to start abnormality detection.
  • Abnormality detection means detecting an abnormality in the appearance of an image included in the input image P.
  • the start information acquisition unit 810 may acquire the start information IS by the operation of the user using the abnormality display system 8 .
  • the start information IS may include information indicating which of the anomaly detection unit 30 performs “learning” based on a predetermined normal image or performs “inspection (abnormality detection)”. good. Information indicating whether to perform “learning” or “examination” is also described as learning execution selection information. That is, the start information IS may include learning execution selection information. The anomaly detection unit 30 executes either “learning” or “inspection” based on the learning execution selection information included in the start information IS.
  • An input image acquisition unit 805 acquires an input image P.
  • the start information IS acquired by the start information acquisition unit 810 includes a path indicating the location where the input image P is stored, and the input image acquisition unit 805 acquires the input image stored in the location indicated by the bus. Acquire an image P.
  • the input image P may be stored in the storage device 81 . Although the input image P is designated by a path in the present embodiment, it may be selectively designated and acquired in a folder or the like that holds a plurality of images.
  • An image correction unit 807 corrects the input image P acquired by the input image acquisition unit 805 by image processing.
  • the image correction unit 807 outputs the corrected input image P to the inference unit 10 as an input image P'.
  • the image processing performed by the image correction unit 807 is also referred to as correction processing.
  • the correction selection information acquisition unit 806 acquires correction selection information ISEL.
  • the correction selection information ISEL is information for selecting the type of correction processing to be executed by the image correction unit 807 .
  • the image correction unit 807 performs correction processing according to the type of correction processing indicated in the correction selection information ISEL. Note that if the correction selection information ISEL includes information indicating that no correction is to be made, the correction selection information acquisition unit 806 does not need to correct the input image P.
  • the abnormality display system 8 may include an imaging unit (imaging device) (not shown).
  • the start information IS may include an imaging start signal for causing the imaging section to pick up an image.
  • the start information acquisition unit 810 may acquire the start information IS in response to the user's operation of an imaging button (not shown). If the abnormality display system 8 includes an imaging unit, the input image acquisition unit 805 acquires the input image P captured by the imaging unit.
  • the inference unit 10 After obtaining the start information IS, the inference unit 10 extracts the feature map F from the corrected input image P'. The inference unit 10 outputs the extracted feature amount map F. FIG. The inference unit 10 outputs multiple feature maps F from multiple intermediate layers.
  • the abnormality detection unit 30 performs abnormality detection by comparing the acquired input image P or the corrected input image P′ with information based on a normal image stored in advance based on the acquired start information IS. Run.
  • the information based on the pre-stored normal image may be information learned based on the learning image P11.
  • the anomaly detection unit 30 may be a neural network pre-learned using predetermined normal images.
  • the display unit 840 displays information based on the information detected by the abnormality detection unit 30 so as to be superimposed on the input image P.
  • FIG. the display unit 840 displays the inspection result heat map image R1 by superimposing a predetermined color filter on the input image P and displaying it.
  • the predetermined color filter may be color-coded so that the portion detected as abnormal can be visually determined.
  • the display unit 840 may display a portion of the input image P that has a high probability of being abnormal by a method capable of identifying it.
  • FIG. 16 is a diagram illustrating an example of a screen configuration of a display screen of the abnormality display device according to the embodiment; An example of the screen configuration of the display screen D1 displayed by the abnormality display device 80 will be described with reference to FIG.
  • the abnormality display device 80 is operated by a user. The user operates the abnormality display device 80 by performing operations based on the information displayed on the display screen D1.
  • a display screen D ⁇ b>1 shows an example of the screen configuration of the display screen displayed by the abnormality display device 80 .
  • the display screen displayed by the abnormality display device 80 has a screen configuration of a data set display portion D10, a mode display portion D20, an image display portion D30, and a log information display portion D40.
  • the data set display section D10 is a screen configuration for selecting the correction of the input image P.
  • the data set display section D10 has a screen configuration of a code D11, a code D12, and a code D13.
  • Code D11, code D12 and code D13 each have a selection button D111, a selection button D121 and a selection button D131. If there is no distinction between the selection button D111, the selection button D121, and the selection button D131, the selection button may be simply referred to as the selection button.
  • the abnormality display device 80 performs the selected correction on the input image P, and then performs “learning” or “inspection”.
  • the "original image” does not correct the input image P.
  • the input image P is subjected to exposure correction processing.
  • the "sharpened image” performs image sharpening processing on the input image P.
  • the correction processing performed on the input image P by the abnormality display device 80 is performed by the image correction unit 807 .
  • the type of processing that can be corrected by the image correction unit 807 is not limited to the above example, and may be histogram conversion processing such as “contrast correction”, “brightness correction”, “color correction”, or “noise removal”. , and edge enhancement, or affine transformation.
  • the mode display section D20 is a screen configuration for the user to select either "study” or “examination”.
  • the mode display section D20 has a screen configuration of a code D21, a code D22, and an execution button D23.
  • Code D21 and code D22 are provided with selection button D211 and selection button D221, respectively.
  • the user selects "learning” by selecting the selection button D211, and selects “inspection” by selecting the selection button D221.
  • the user causes the selected "learning” or "examination” to be executed by operating the execution button D23.
  • the start information acquiring unit 810 may acquire the start information IS including information on the selection status of the selection button when the execution button D23 is selected.
  • “inspection” may have a “batch processing mode” and a “sequential processing mode”.
  • the “batch processing mode” a plurality of input images P are collectively processed.
  • the input image P is processed one by one.
  • the image display unit D30 displays at least one of the input image P used for "learning” and the abnormality detection result R detected as a result of "inspection”.
  • the image display section D30 includes an image display box D31, a left scroll button D321, and a right scroll button D322.
  • the image display box D31 displays images at three locations, D311, D312, and D313. When displaying three or more images, the user can view any three of the four or more images by operating the left scroll button D321 or the right scroll button D322. In this example, the image display box D31 displays three images, but the number of images displayed by the image display box D31 is not limited to this example.
  • the log information display part D40 displays the result of "learning” or “examination”. For example, in the case of "learning”, the log information display section D40 displays the number of learning images, the processing time per image, the total processing time, the learning result head, and the like. For example, in the case of "inspection”, the log information display unit D40 outputs the number of inspection images, the processing time per image, the total processing time, the inspection result, the storage location (path) of the inspection result image, and the like.
  • FIG. 17 is a diagram illustrating an example of image correction of an input image according to the embodiment.
  • An example of the input image P displayed by the image display unit D30 in the "learning" process will be described with reference to FIG.
  • the image display unit D30 displays three different input images P among a plurality of input images P to be learned (also referred to as data sets in the following description).
  • the images shown in FIGS. 17A to 17C are all images of tiles, and are images based on the same input image P. In FIG.
  • FIG. 17(A) is the input image P' when the code D111 is selected, that is, the uncorrected image.
  • FIG. 17B shows the input image P′ when the code D121 is selected, that is, the image after exposure correction by the image correction unit 807 .
  • FIG. 16C shows the input image P′ when the code D131 is selected, that is, the image after the image sharpening processing is performed by the image correction unit 807 .
  • the image display unit D30 displays the same photograph when different filters are used (for example, FIGS. 17A to 17C) on the image display unit D30 so that the user can to select the filter type.
  • filters for example, FIGS. 17A to 17C
  • the image display unit D30 displays the same photograph when different filters are used (for example, FIGS. 17A to 17C) on the image display unit D30 so that the user can to select the filter type.
  • a predetermined filter type it is preferable to use the same filter in both the "learning” and “inspection” processes.
  • information about what type of filter was selected during the "learning” process may be stored together with the learning result.
  • a plurality of filters may be used to perform "learning” and "inspection", and a selection may be made therefrom.
  • the anomaly detection unit 30 may be configured to "learn” for each filter using a plurality of filters in advance, and “inspect” using a learning model corresponding to the filter selected at the time of "inspection”. .
  • FIG. 18 is a diagram illustrating an example of a normal image according to the embodiment.
  • An example of the input image P displayed by the image display unit D30 in the "learning" process will be described with reference to FIG.
  • the image display unit D30 displays three different input images P from the data set.
  • the images shown in FIGS. 18A to 18C are all images of tiles and are different input images P images.
  • 18A to 18C are images that have not been corrected by the image correction unit 807.
  • FIG. for example, the image display unit D30 displays the diagram shown in FIG. 18A at the reference D311, displays the diagram shown in FIG. 18B at the reference D312, and displays the diagram shown in FIG. 18C at the reference D313. indicate.
  • FIG. 19 is a diagram illustrating an example of an inspection result of the abnormality display device according to the embodiment; FIG. An example of the image displayed by the image display unit D30 in the "inspection" process will be described with reference to the same figure.
  • the image display unit D30 displays an input image P or an input image P′ to be inspected and an abnormality detection result R corresponding to the input image P.
  • FIG. 19A shows an example of the input image P.
  • FIG. 19B shows an example of an abnormality detection result R corresponding to the input image P shown in FIG. 19A.
  • FIG. 19(C) shows an example of a legend corresponding to FIG. 19(B).
  • locations that are presumed to be abnormal are shown in dark colors, and locations that are presumed to be normal are shown in light colors.
  • the cracked portion Since a crack occurs in the input image P shown in FIG. 19A, the cracked portion is abnormal. Therefore, in the abnormality detection result R shown in FIG. 19B, the color of the crack portion is dark. The user can see that there is an abnormality in the location where the dark portion exists.
  • the input image P may be displayed in the code D311, and the abnormality detection result R may be displayed in the code D313.
  • Code D312 may display nothing, or may display other information such as company logos, advertisements, and operation methods.
  • FIG. 20 is a flowchart for explaining a series of operations of learning processing of the abnormality display device according to the embodiment.
  • a series of operations of the "learning" process of the abnormality display device 80 will be described with reference to FIG. (Step S310)
  • start information acquisition section 810 Upon detecting that the "study" button has been pressed, start information acquisition section 810 outputs start information IS to inference section 10, and advances the process to step S320.
  • Pressing the "learn” button does not necessarily mean pressing the "learn” button directly, and includes, for example, selecting the select button D211 and pressing the execute button D23.
  • the start information acquiring section 810 may output the start information IS triggered by the imaging by the imaging section.
  • Step S320 The correction selection information acquisition unit 806 acquires the selection information of the dataset, that is, the correction selection information ISEL.
  • Step S330 The inference unit 10 acquires the input image P corrected based on the correction selection information ISEL as the input image P'.
  • Step S340 The abnormality detection unit 30 is learned based on the corrected input image P'.
  • Step S350 The display unit 840 causes the log information display unit D40 to display the time required for learning, the number of processed images, and the like as learning results.
  • FIG. 21 is a flowchart for explaining a series of operations of inspection processing of the abnormality display device according to the embodiment.
  • a series of operations of the "inspection" process of the abnormality display device 80 will be described with reference to FIG. (Step S410)
  • start information acquisition unit 810 Upon detecting that the "inspection” button has been pressed, start information acquisition unit 810 outputs start information IS to inference unit 10, and advances the process to step S420.
  • the pressing of the "inspection” button does not necessarily mean that the "inspection” button has been pressed directly, and includes, for example, selection of the select button D221 and pressing of the execution button D23.
  • the start information acquiring section 810 may output the start information IS triggered by the imaging by the imaging section.
  • Step S420 The correction selection information acquisition unit 806 acquires the selection information of the data set, that is, the correction selection information ISEL.
  • Step S430 The inference unit 10 acquires the input image P corrected based on the correction selection information ISEL as the input image P'.
  • Step S440 The abnormality detection unit 30 performs abnormality detection on the corrected input image P'.
  • Step S450 The display section 840 displays the abnormality detection result R, the path of the location where the abnormality detection result R is stored, the time required for abnormality detection, the number of processed images, etc. as inspection results on the log information display section D40. display.
  • FIG. 22 is a diagram for explaining a first modification of the abnormality display device according to the embodiment.
  • the mode display section D20A will be described with reference to FIG.
  • the mode display section D20A is a modification of the mode display section D20.
  • the same reference numerals may be given to the same configurations as those of the mode display section D20, and the description thereof may be omitted.
  • the mode display section D20A differs from the mode display section D20 in that it has an imaging button D24 instead of the execution button D23.
  • the imaging button D24 is pressed by the user's operation, the imaging unit provided in the abnormality display system 8 performs imaging, and the captured image is used as the input image P.
  • the abnormality display system 8 may employ a configuration in which an image is captured by performing a predetermined operation while the application is running, for example, instead of the configuration including the image capturing button D24.
  • FIG. 23 is a diagram for explaining a second modification of the abnormality display device according to the embodiment.
  • the image display section D30A will be described with reference to FIG.
  • the image display section D30A is a modification of the image display section D30.
  • the same components as those of the image display section D30 are denoted by the same reference numerals, and the description thereof may be omitted.
  • the image display section D30A differs from the image display section D30 in that it further includes codes D314 to D316 as normal/abnormal selection buttons.
  • the normal/abnormal selection button is operated by the user to select either normal or abnormal.
  • the anomaly detection unit 30 learns based only on images that are selected as normal when performing “learning”.
  • the abnormality display system 8 is provided with the start information acquisition unit 810 to obtain the start information IS, which is information for starting abnormality detection, and is provided with the input image acquisition unit 805.
  • the input image P is acquired, the abnormality detection is executed based on the start information IS by providing the abnormality detection unit 30, and the information based on the detected result is displayed by providing the display unit 840.
  • FIG. The anomaly display device 80 does not need to communicate with an external device via a communication network until the anomaly display device 80 acquires the start information IS, executes anomaly detection, and displays the result.
  • the processing speed of the abnormality detection performed by the abnormality display device 80 does not depend on the line speed of the communication network or the processing speed of the external device, and the abnormality can be detected at high speed.
  • the abnormality display device 80 since the abnormality display device 80 does not transfer the input image P to an external device via the communication network, it is possible to prevent confidential information from being leaked.
  • the anomaly detection unit 30 learns based on the feature map extracted by the inference unit 10 .
  • a plurality of feature maps are extracted from one input image P.
  • the abnormality display device 80 can be sufficiently learned even with about 40 input images P, for example.
  • the abnormality display device 80 learning for abnormality detection can be performed even in a site where it is difficult to collect the input image P. Further, according to the present embodiment, since the number of input images P may be small, the abnormality display device 80 can be learned at high speed.
  • the start information IS includes a path indicating the location where the input image P is stored, and the input image acquisition unit 805 acquires the input image stored in the location indicated by the path. Get P. Therefore, according to this embodiment, the user can easily learn the abnormality display device 80 .
  • the start information IS includes an imaging start signal for causing the imaging unit to pick up an image, and the input image obtaining unit 805 obtains an input image picked up by the imaging unit. Get P. Therefore, according to this embodiment, even if the input image P is not prepared in advance, the user can make the abnormality display device 80 learn based on the image captured on site.
  • the image correction unit 807 that corrects the input image P is further provided, and the abnormality detection unit 30 executes abnormality detection based on the input image P′ corrected by the image correction unit 807. do. Therefore, according to the present embodiment, the abnormality display device 80 can be “learned” or “inspected” based on the corrected input image P′ even when the contrast of the input image P is not clear. can be done.
  • the correction selection information ISEL is obtained by including the correction selection information acquisition unit 806 .
  • the image correction unit 807 executes correction processing based on the acquired correction selection information ISEL.
  • the correction selection information ISEL is information selected by the user. That is, the user can select the type of correction. Therefore, according to the present embodiment, even if the input image P is not clear, the abnormality display device 80 performs “learning” or “inspection” based on the input image P′ corrected to make the image clear. ' can be done.
  • the abnormality detection unit 30 is preliminarily learned using predetermined normal images. Therefore, the user can easily use the abnormality display device 80 . Further, the abnormality display device 80 can accurately detect an abnormality.
  • the start information IS includes learning execution selection information indicating either “learning” or “inspection”, and the abnormality detection unit 30 selects learning execution selection included in the start information IS. Based on the information, either 'learn' or 'test'. Therefore, according to the abnormality display device 80, both "learning” and “inspection” can be performed by the display screen D1, which is one GUI. Therefore, the user can easily use the abnormality display device 80 .
  • the anomaly detection unit 30 divides the feature map generated from the input image, and performs anomaly detection based on the average value vector and variance for a plurality of divided areas. Then, the display unit 840 displays the results calculated for each of the divided regions in association with the input image, thereby allowing the user to easily find out at which position in the input image the abnormality occurs. can be done. As a result, the user can easily recognize an abnormal portion included in the input image.
  • the screen configuration of the display screen D1 is not limited to the example described above.
  • the "learning” process may include a selection unit for normal images to be learned, a learning parameter setting unit, and a display unit for thresholds for judging abnormalities calculated from learning results.
  • a threshold value setting unit for determining abnormality a display setting unit for inspection results, a display unit for determination results such as normality or abnormality, and the like may be provided.
  • each unit provided in the image detection system 1 and the abnormality display system 8 in the above-described embodiment can be achieved by recording a program for realizing these functions in a computer-readable recording medium. Then, the program recorded on the recording medium may be loaded into the computer system and executed.
  • the "computer system” referred to here includes hardware such as an OS and peripheral devices.
  • “computer-readable recording media” refers to portable media such as magneto-optical discs, ROMs and CD-ROMs, and storage units such as hard disks built into computer systems.
  • “computer-readable recording medium” refers to a medium that dynamically stores a program for a short period of time, such as a communication line for transmitting a program via a network such as the Internet. It may also include something that holds the program for a certain period of time, such as a volatile memory inside a computer system that serves as a server or client.
  • the program may be for realizing part of the functions described above, or may be capable of realizing the functions described above in combination with a program already recorded in the computer system. .

Landscapes

  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Analytical Chemistry (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Alarm Systems (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Image Analysis (AREA)

Abstract

異常表示装置は、入力画像に含まれる像が有する異常を検知する異常検知を開始させるための情報を含む開始情報を取得する開始情報取得部と、前記入力画像を取得する入力画像取得部と、取得した前記開始情報に基づいて、取得された前記入力画像と、予め記憶された正常画像とを比較することにより、前記異常検知を実行する異常検知部と、前記異常検知部により検知された情報に基づいた情報を、前記入力画像に重ねて表示する表示部とを備える。

Description

異常表示装置、異常表示プログラム、異常表示システム及び異常表示方法
 本発明は、異常表示装置、異常表示プログラム、異常表示システム及び異常表示方法に関する。
 本願は、2021年6月29日に、日本に特許出願された特願2021―108017に基づき優先権を主張し、当該出願に記載された全ての記載内容を援用するものである。
 従来、製造現場では生産ラインの自動化による生産効率化が望まれている。特に、生産した製品の外観を検査することにより不良品を選別する工程において、画像処理を用いた異常検知技術が適用されている。このような技術の一例として、機械学習を用いた異常検知技術が知られている(例えば、特許文献1を参照)。
特開2021-064356号公報
 しかしながら、このような従来技術によれば、製造現場において製品を撮像した画像は、製造現場とは異なる場所に設置したサーバへ、インターネット等の通信ネットワークを介して転送される。
 ここで、製造現場において製造される製品によっては、検査画像自体が秘密情報である場合があり、外部へ画像転送したくない場合がある。また、検査画像を外部へ転送した場合には、ネットワーク回線によっては転送時間が無視できないものとなり、効率的な検査が行えないという問題があった。
 そこで、本発明は、容易に異常検知をすることが可能な異常検知プログラム、異常検知装置、異常検知システム及び異常検知方法の提供を目的とする。
 本発明の一態様に係る異常表示装置は、入力画像に含まれる像が有する異常を検知する異常検知を開始させるための情報を含む開始情報を取得する開始情報取得部と、前記入力画像を取得する入力画像取得部と、取得した前記開始情報に基づいて、取得された前記入力画像と、予め記憶された正常画像に基づく情報とを比較することにより、前記異常検知を実行する異常検知部と、前記異常検知部により検知された情報に基づいた情報を、前記入力画像に重ねて表示する表示部とを備える。
 また、本発明の一態様に係る異常表示装置において、前記開始情報には、前記入力画像が記憶された場所を示すパスが含まれ、前記入力画像取得部は、前記パスに示される場所に記憶された前記入力画像を取得する。
 また、本発明の一態様に係る異常表示装置において、前記開始情報には、撮像部に前記像を撮像させるための撮像開始信号が含まれ、前記入力画像取得部は、撮像部により前記像が撮像された前記入力画像を取得する。
 また、本発明の一態様に係る異常表示装置は、前記入力画像を補正する画像補正部を更に備え、前記異常検知部は、前記画像補正部により補正された前記入力画像と、予め記憶された正常画像とを比較することにより、前記異常検知を実行する。
 また、本発明の一態様に係る異常表示装置は、前記画像補正部が実行する補正処理の種類を選択する補正選択情報を取得する補正選択情報取得部を更に備える。
 また、本発明の一態様に係る異常表示装置において、前記異常検知部は、所定の正常画像により予め学習されている。
 また、本発明の一態様に係る異常表示装置において、前記開始情報は、前記異常検知部が所定の正常画像に基づいた学習を行うか、前記異常検知を実行するかのうち、いずれかを示す学習実行選択情報を含み、前記異常検知部は、前記開始情報に含まれる前記学習実行選択情報に基づいて、前記学習又は前記異常検知のいずれかを実行する。
 また、本発明の一態様に係る異常表示装置において、前記予め記憶された正常画像に基づく情報は、前記正常画像の平均値ベクトルと分散の情報を含み、前記異常検知部は前記入力画像が分割された領域である複数の分割領域に対応して異常検知を行い、前記表示部は前記異常検知部により検知された情報を、前記分割領域に対応付けて前記入力画像に重ねて表示する。
 また、本発明の一態様に係る異常表示プログラムは、コンピュータに、入力画像に含まれる像が有する異常を検知する異常検知を開始させるための情報を含む開始情報を取得する開始情報取得ステップと、前記入力画像を取得する入力画像取得ステップと、取得した前記開始情報に基づいて、取得された前記入力画像と、予め記憶された正常画像とを比較することにより、前記異常検知を実行する異常検知ステップと、前記異常検知ステップにより検知された情報に基づいた情報を、前記入力画像に重ねて表示する表示ステップとを実行させる。
 また、本発明の一態様に係る異常表示システムは、前記像を撮像する撮像部と、前記撮像部により撮像された前記入力画像の前記異常検知を実行し、実行した結果得られた情報を表示する上述した異常表示装置とを備える。
 また、本発明の一態様に係る異常表示方法は、入力画像に含まれる像が有する異常を検知する異常検知を開始させるための情報を含む開始情報を取得する開始情報取得工程と、前記入力画像を取得する入力画像取得工程と、取得した前記開始情報に基づいて、取得された前記入力画像と、予め記憶された正常画像とを比較することにより、前記異常検知を実行する異常検知工程と、前記異常検知工程により検知された情報に基づいた情報を、前記入力画像に重ねて表示する表示工程とを有する。
 本発明によれば、画像情報から容易に異常検知をすることができる。
実施形態に係る異常検知システムの機能構成の一例を示す機能構成図である。 実施形態に係る正常な入力画像と異常な入力画像の一例を示す図である。 実施形態に係る異常検知システムの概念を説明するための図である。 実施形態に係る推論部が備える階層について説明するための図である。 実施形態に係る異常検知部の機能構成の一例を示す機能構成図である。 実施形態に係る分割について説明するための図である。 実施形態に係る演算部の機能構成の一例を示す機能構成図である。 実施形態に係る異常検知部の機能構成の変形例を示す機能構成図である。 実施形態に係る出力部の出力結果の一例を示す図である。 実施形態に係る異常検知システムの「検知」処理における一連の動作を説明するためのフローチャートである。 実施形態に係る異常検知システムの「学習」処理における一連の動作を説明するためのフローチャートである。 従来技術による製品検査システムの問題点を説明するための図である。 実施形態に係る異常表示装置の学習処理について説明するための図である。 実施形態に係る異常表示装置の検査処理について説明するための図である。 実施形態に係る異常表示装置の機能構成の一例を示す機能構成図である。 実施形態に係る異常表示装置の表示画面の画面構成の一例を示す図である。 実施形態に係る入力画像の画像補正の一例を示す図である。 実施形態に係る正常画像の一例を示す図である。 実施形態に係る異常表示装置の検査結果の一例を示す図である。 実施形態に係る異常表示装置の学習処理の一連の動作を説明するためのフローチャートである。 実施形態に係る異常表示装置の検査処理の一連の動作を説明するためのフローチャートである。 実施形態に係る異常表示装置の第1の変形例について説明するための図である。 実施形態に係る異常表示装置の第2の変形例について説明するための図である。
 以下、本発明の実施形態について、図面を参照しながら説明する。以下において説明する実施形態は一例に過ぎず、本発明が適用される実施形態は、以下の実施形態に限定されない。
[従来技術による問題点]
 まず、従来技術による問題点について説明する。
 図12は、従来技術による製品検査システムの問題点を説明するための図である。同図を参照しながら、従来技術による製品検査システム90について説明する。従来技術による製品検査システム90は、製品の製造工場に備えられ、製造された製品の外観に不良が生じているか否かを検出し、不良が検出された製品を製造ラインから除去する。
 従来技術による製品検査システム90は、製品搬送ベルト91と、撮像部93と、把持装置94と、画像処理サーバ95とを備える。
 製品搬送ベルト91は、製造された製品98を搬送する。製品搬送ベルト91は、ベルトコンベア等であってもよい。製品98は、製品搬送ベルト91に載置され、製造工場内において搬送される。製品98は、製造工場で製造された完成品であってもよいし、製造途中における部品であってもよい。また、製品98は工業製品に限られず、材料、食品、医薬品等であってもよい。撮像部93は、製品搬送ベルト91上を搬送される製品98を撮像可能な位置に備えられ、製品98の外観を撮像する。撮像された画像は、所定の通信ネットワークNWを介し、画像処理サーバ95に転送される。
 画像処理サーバ95は、従来技術による製品検査システム90が備えられる製造工場とは異なる現場に備えられる。画像処理サーバ95は、転送された画像を画像処理し、当該画像が正常画像であるか異常画像であるかを判定する。画像処理サーバ95は、例えば機械学習による異常検知アルゴリズムを有する、異常検知アルゴリズムは予め学習されていてもよい。画像処理サーバ95は、転送された画像が正常画像であるか異常画像であるかを判定した結果を、所定の通信ネットワークNWを介し、従来技術による製造工場に備えられた所定の機器、例えば、把持装置94に転送する。
 把持装置94は、画像処理サーバ95により判定された結果に基づいて、異常画像と検出された製品98を把持し、製造ラインから除去する。把持装置94は、把持とは異なるその他の方法により、異常画像と検出された製品98を製造ラインから除去してもよい。その他の方法とは、例えば、ベルトコンベアである製品搬送ベルト91の経路を変えること等であってもよい。
 図12に示す一例においては、製品98-1、製品98-2、製品98-3及び製品98-4が、製品搬送ベルト91上を搬送されており、製品98-2については、外観が異常であると判定されている。そのため、把持装置94は、製品98-2を把持し、製造ラインから除去する。
 ここで、従来技術による製品検査システム90によれば、撮像した画像を一度、通信ネットワークNWを介して、製造工場外部に転送する必要がある。したがって、通信ネットワークNWと製造工場とを接続するネットワーク回線の回線速度によっては、転送に時間がかかる場合がある。製品搬送ベルト91は、製品98を高速に搬送する場合があり、このような場合は特に、外観異常検知を迅速に行う必要がある。
 そこで、外観において異常があるか否かを迅速に判断可能な異常検知システムについての需要があった。
 また、従来技術による製品検査システム90によれば、撮像した画像を製造工場外部に転送することを要するため、転送途中の回線又は画像処理サーバ95において、第三者により秘密情報を取得される可能性がある。製品98は、まだ市場に流通していない製品である場合もあり、このような場合は特に、秘密情報が漏洩することを抑止したいとの需要がある。また、製造工程や加工工程自体が秘密情報である場合もある。
 そこで、製造工場外部に画像を転送することなく異常画像の判定が可能な異常検知システムについて、需要があった。
 本実施形態に係る異常検知システム1は、上述したような問題を解決しようとするものである。
[異常検知システムの概要]
 図1は、実施形態に係る異常検知システムの機能構成の一例を示す機能構成図である。同図を参照しながら、本実施形態に係る異常検知システム1について説明する。以下の説明において、本実施形態にかかる異常検知システム1は、製造工場に備えられ、製造された製品や部品の異常検知を行う場合の一例ついて説明する。しかしながら、異常検知システム1は、製造工場に備えられる場合の一例に限定されない、例えば、異常検知システム1は、食品加工工場等に設置され、食品や材料等の異常を検知することにより、出荷検査に使用されてもよい。
 また、異常検知システム1は、バッテリー等で駆動するエッジデバイスに設けられてもよく、一例としてデジタルカメラや、スマートフォン等の携帯電子機器の内部に設けられてもよい。
 また、本実施形態にかかる異常検知システム1は、工場内において撮像された画像の異常検知を行う場合の一例に限定されない。異常検知システム1は、例えば、予め撮像された画像を入力画像として用いることもできる。
 異常検知システム1は、撮像装置50と、推論部(推論装置)10と、異常検知部(異常検知装置)30と、情報処理装置60とを備える。
 なお、異常検知システム1に含まれる各ブロックは不図示のホストプロセッサにより統合的に制御される。当該ホストプロセッサは、不図示のメモリに事前に記憶されたプログラムを実行することにより、各ブロックを制御する。なお、メモリに記憶されたプログラムを実行することにより、ホストプロセッサが異常検知システム1の一部の機能を実現するように構成してもよい。
 撮像装置50は、物体を撮像する。撮像装置50は、物体を撮像することにより、製品の外観についての情報を取得する。撮像装置50は、撮像した画像を入力画像Pとして推論部10に転送する。撮像装置50は、例えば、製造ラインに設置された固定式カメラである。
 なお。異常検知システム1が予め撮像された画像を入力画像Pとして用いる場合、異常検知システム1は、撮像装置50に代えて、不図示の記憶装置を備えてもよい。
 推論部10は、撮像装置50から入力画像Pを取得し、入力画像Pから1以上の特徴マップFを抽出する。具体的には、推論部10は、入力画像Pに含まれる物体のクラスと尤度を予測するように学習されたニューラルネットワークを含む。推論部10の中間層からは、複数の特徴に基づいて演算した結果として、複数の特徴マップFが抽出される。
 なお、異常検知システム1が設置される機器によっては、ニューラルネットワークに関する演算処理負荷が過大になる恐れがある。このような場合には、ニューラルネットワークに関する演算処理において、量子化演算を含むようにニューラルネットワークを構成することが望ましい。一例として、ニューラルネットワークに関する演算処理に含まれる畳み込み演算を行うアクティベーションを8ビット以下(例えば2ビットや4ビット)に、重みを4ビット以下(例えば1ビットや2ビット)に量子化する量子化演算部をニューラルネットワークに設けてもよい。
 ここで、推論部10に入力される入力画像Pのサイズは、任意であってもよい。
 なお、推論部10に入力される入力画像Pのサイズは、推論部10の学習時に用いられた画像のサイズと同一であることが望ましい。推論部10に入力される画像を学習時と同条件にするため、不図示の補正部により入力画像Pのサイズや条件等を補正した後、補正した入力画像Pを推論部10に入力してもよい。
 推論部10として、具体的には、VGG16を用いることができる。VGG16とは、計16層から成る畳み込みニューラルネットワーク(いわゆる、CNN:Convolutional Neural Network)である。学習済みモデルとしては、既存の学習済モデルを用いてもよいし、既存の学習済みモデルに追加学習をさせたモデルを用いてもよい。なお、追加学習を行う場合には、入力画像Pとして異常検知の基準となる正常画像を用いることが好ましい。
 ここで、推論部10に含まれるニューラルネットワークの学習においては大量の画像が必要になる場合がある。このような場合に、カメラ等で撮影した自然画像を用意することが困難な場合も少なくない。一方で、本実施形態の推論部10に含まれるニューラルネットワークは異常検知に用いることから、学習に用いる画像は必ずしも自然画像である必要はない。一例として、所定のアルゴリズムによって生成されるフラクタル画像を用いて学習を行なってもよい。フラクタル画像は任意の方向にエッジや特徴を含む画像であるため、特徴検出を行うための異常検知用のニューラルネットに適している。
 なお、推論部10は、VGG16である場合の一例に限定されない。推論部10は、VGG16に代えて、例えば、RESNET50を用いてもよい。RESNET50とは、計50層の畳み込み層を有して構成されるCNNである。推論部10は、単一のCNNから構成されていてもよいし、複数のCNNから構成されていてもよい。推論部10が複数のCNNから構成される場合、推論部10は、検出対象に応じて複数のディープラーニングモデルから選択的に切り替えられてもよいし、複数のディープラーニングモデルを組み合わせて構成されてもよい。
 図2は、実施形態に係る正常な入力画像と異常な入力画像の一例を示す図である。同図を参照しながら、入力画像Pの一例について説明する。
 図2(A)は、正常な入力画像の一例として、入力画像P1を示す。入力画像P1は、木の実を撮像したものである。図2(B)は、異常な入力画像の一例として、入力画像P2を示す。入力画像P2も、入力画像P1と同様に木の実を撮像したものであるが、入力画像P2における木の実には、亀裂が生じている。したがって、異常検知システム1は、亀裂が生じている木の実を、異常と検知する。
 図1に戻り、異常検知部30は、推論部10から少なくとも1以上の特徴マップFを取得する。異常検知部30は、取得した特徴マップFに基づき、異常検知を行う。異常検知部30は、異常検知を行った結果を、異常検知結果Rとして情報処理装置60に出力する。
 異常検知部30が行う異常検知は、入力画像Pに撮像された物体の外観に瑕疵があるか否か(すなわち二値)の検知であってもよいし、物体の外観のうち、瑕疵が存在する場所を推定するものであってもよい。物体に瑕疵が存在するとは、推論部10が予め学習された正常画像と特定の差異があることを示す。
 また、異常検知部30は、入力画像Pに撮像された物体の外観に存在する瑕疵の程度、又は瑕疵の尤度を検知してもよい。
 なお、推論部10及び異常検知部30の各機能の全てまたは一部は、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)又はFPGA(Field-Programmable Gate Array)等のハードウェアを用いて実現されてもよい。
 例えば、推論部10及び異常検知部30の各機能を構成するために、プログラム処理を実行するプロセッサと、ニューラルネットワークに関する演算を実行するアクセラレータとを組み合わせてもよい。具体的には、畳み込み演算や量子化演算を繰り返し実行するためのニューラルネットワーク演算用アクセラレータを、プロセッサと組み合わせて用いてもよい。
 なお、以後の説明において推論部10をバックボーンと、異常検知部30をヘッドと記載する場合がある。
 推論部10及び異常検知部30は、それぞれ、推論プログラム、異常検知プログラムが実行されることにより、推論部10及び異常検知部30として機能する。推論プログラム及び異常検知プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。表示画面制御プログラムは、電気通信回線を介して送信されてもよい。
 情報処理装置60は、異常検知部30から異常検知結果Rを取得する。情報処理装置60は、取得した異常検知結果Rに基づいた画像を表示させてもよいし、取得した異常検知結果Rに基づいて、対応する物体に対し所定の動作を行ってもよい。所定の動作とは。例えば、瑕疵ある製品を製造ラインから除去する動作等であってもよいし、異常検知結果Rに基づく検査ログ等を保存する動作等であってもよい。
 図3は、実施形態に係る異常検知システムの概念を説明するための図である。同図を参照しながら、異常検知システム1の概念について説明する。
 まず、同図に示す一例においては、推論部10が備える複数の中間層のうち、異なる中間層から特徴マップ71として、特徴マップ71-1、特徴マップ71-2及び特徴マップ71-3が抽出される。
 ここで、異なる中間層から取得される複数の特徴マップ71は、サイズがそれぞれ異なる場合がある。
 なお、本実施形態において、異常検知システム1は、1以上の特徴マップに基づいて演算すればよいが、複数の特徴マップに基づくことにより、より精度よく異常検知することができる。なお、図2を参照しながら行う説明においては、複数の特徴マップに基づく場合の一例について説明する。特徴マップは、取得する中間層によって視野や検知方向等の特性が異なる。したがって、異常検知システム1は、複数の特徴マップを利用することにより、様々な特徴に基づいた異常検知をすることができる。
 次に、異常検知システム1は、取得した複数の特徴マップ71を、圧縮する。
 ここで、特徴マップ71は、多次元データである。具体的には、特徴マップ71は、要素(i,j,c、n)を構成要素として有する4次元テンソルである。i方向及びj方向とは、入力画像Pの画像方向、すなわち入力画像Pの縦方向及び横方向である。c方向とは、チャンネル方向である。チャンネル方向とは、例えば画素が有する色彩(R、G、B)方向を含む。nとは、複数の特徴マップのうちいずれの特徴マップであるかを示す情報である。
 異常検知システム1は、i方向及びj方向(すなわち入力画像Pの縦方向及び横方向)について圧縮を行う。
 ここで、取得した特徴マップ71は、サイズがそれぞれ異なる。したがって、異常検知システム1は、取得した複数の特徴マップ71のi方向及びj方向のサイズが同一になるように、特徴マップ71を圧縮する。
 なお、異常検知システム1は、i方向及びj方向が一番小さいサイズの特徴マップ71に合わせて圧縮することが好ましい。しかしながら、異常検知システム1は、i方向及びj方向が一番大きいサイズの特徴マップ71に合わせて圧縮してもよいし、圧縮しなくてもよい。
 異常検知に好適な特徴マップ71のサイズは、検出対象に応じて異なる場合がある。例えば、大量生産されるねじや電子部品等の工業製品は、正常品における個体ごとの外観は略同一であり、比較的にばらつきが小さい。一方、弁当や冷凍食品等の食品や、布地や衣服等の繊維製品などは、正常品であっても個体ごとの外観が異なる場合があり、比較的にばらつきが大きい。
 例えば、外観上のばらつきが小さい検出対象に対して特徴マップのサイズを大きくしてしまうと、実際には異常でない小さな外観上の差を異常であると誤検出してしまう場合がある。また、外観上のばらつきが大きい検出対象に対して特徴マップのサイズを小さくしてしまうと、実際には異常であるにもかかわらず異常でないと誤検出してしまう場合がある。
 そこで、異常検知システム1においては検出対象(すなわち撮像された画像内における検出を行いたい対象や状態)に応じて特徴マップ71のサイズを異ならせてもよい。例えば外観上のばらつきが小さい工業製品は特徴マップのサイズを小さくし、外観上のばらつきが大きい食品や繊維製品は特徴マップのサイズを大きくしてもよい。また、本来ばらつきが小さい工場製品に対する機械実装や機械加工の後の状態を検出する場合には、特長マップ71のサイズを大きくしてもよい。検出を行いたい対象に応じて特徴マップ71のサイズを異ならせることにより、検出精度を上げることができる。また、好適な特徴マップ71のサイズとした結果、特徴マップ71のサイズが小さい場合には、演算量が減少するため、演算動作を早くすることができる。すなわち、本実施形態によれば、検出精度をよくし、かつ演算動作を早くすることができる。
 なお、検出対象に応じた特徴マップ71の大きさは、学習時に判定されてもよい。例えば学習時において、複数の異なる特徴マップのサイズのうち、いずれのサイズが精度よく検出できるかを学習されてもよい。また、複数の異なる特徴マップ71のサイズに応じた精度等を出力することも可能であるし、検出対象に応じた特徴マップ71の大きさを、パラメータとしてUI(User Interface)により設定可能なよう構成されていてもよい。
 例えば、異常検知システム1は、取得した複数の特徴マップ71をアベレージプーリングやマックスプーリング等の手法により圧縮する。
 以降の説明において、圧縮後の特徴マップ71を、特徴マップ72と記載する。
 次に、異常検知システム1は、特徴マップ72を、i方向及びj方向に分割する。ここで、異常検知システム1は、特徴マップ72を、i方向に奇数個、j方向に奇数個に分割してもよい。例えば、異常検知システム1は、特徴マップ72をi方向に7個、j方向に7個の合計49個に分割する。
 ここで、圧縮した特徴マップ72のi方向及びj方向の要素数とそれぞれの分割数とを揃えることで、分割後の特徴マップ73のi方向及びj方向の要素数を1にすることが好ましいが、本実施形態は、これに限定されるものではない。特徴マップ72をi方向またはj方向に分割することで、異常検出の演算負荷を低減することができる。
 以降の説明において、分割後の特徴マップ72を、特徴マップ73と記載する。
 次に、異常検知システム1は、特徴マップ73ごとに、入力画像Pと、予め学習された正常画像との距離を計算する。具体的には、異常検知システム1は、特徴マップ73に含まれる要素の値に基づいて、ユークリッド距離ではなくマハラノビス距離を算出することにより、予め学習された正常画像との距離を計算する。特徴マップ73に含まれる各要素はそれぞれ独立の値ではなく、特にc方向の要素は同一の画像の出力に基づいて取得した特徴量であることから、何らかの相関が期待できる。これにより、母集団である正常画像に特徴的な広がりが存在する場合であっても、異常検知システム1は、正常画像と異常画像との距離を精度良く算出することができる。
 本実施形態においては、入力画像P全体におけるマハラノビス距離ではなく、分割された特徴マップ73ごとにマハラノビス距離を計算するため、容易に演算を行うことができる。
 ここで、特徴マップを分割したのは、特徴マップ内に含まれる要素数を分割により減じることで、演算量を低減することができるためである。特に、圧縮した特徴マップ72のi方向及びj方向の要素数とそれぞれ方向の分割数とを揃えることによって、分割後の特徴マップ73のi方向及びj方向の要素数を1にすることができる。マハラノビス距離を演算する上で、i方向及びj方向の要素数を1にすることによって、大幅に演算負荷を低減することができる。
 図4は、実施形態に係る推論部が備える階層について説明するための図である。同図を参照しながら推論部10が備える階層について説明する。
 推論部10は、例えば、階層L1から階層L9までの9層を有する。同図に示す一例において、階層L1、階層L3、階層L4、階層L5及び階層L7はプーリング層であって、階層L2、階層L6、階層L8及び階層L9は、畳み込み層である。異常検知システム1は、複数の異なる階層から、特徴マップ71を抽出する。
 図4に示す一例において、異常検知システム1は、階層L1から抽出された特徴マップFに基づいてマハラノビス距離Mを算出し、階層L2から抽出された特徴マップFに基づいてマハラノビス距離Mを算出し、…、階層L9から抽出された特徴マップFに基づいてマハラノビス距離Mを算出する。
 ここで、異常検知システム1は、抽出した特徴マップFを分割した後にマハラノビス距離Mを算出するため、1つの特徴マップFに対して、分割した数に応じた数のマハラノビス距離が算出される。
 異常検知システム1は、算出されたマハラノビス距離Mからマハラノビス距離Mを加算する。
 なお、異常検知システム1は、各層について算出されたマハラノビス距離の全てを加算することを要しない。例えば、異常検知システム1は、算出されたマハラノビス距離が大きい値を選択的に加算してもよいし、重みをかけて加重的に加算してもよい。
 また、異常検知システム1は、加算に代えて、平均値や標準偏差等の分布情報を算出するように構成されてもよい。本実施形態によれば、分割した後にマハラノビス距離を算出することにより、検出対象の画像内における異常が検知される位置を特定することができる。
 なお、異常検知システム1は、抽出した特徴マップFを画像方向に分割しているため、対応する画像位置におけるマハラノビス距離Mを加算することにより、当該画像位置における異常検知を行ってもよい。
[異常検知部の機能構成]
 図5は、実施形態に係る異常検知部の機能構成の一例を示す機能構成図である。同図を参照しながら、異常検知部30の機能構成の一例について説明する。異常検知部30は、特徴マップ取得部310と、圧縮部320と、分割部330と、演算部340と、出力部350とを備える。
 特徴マップ取得部310は、入力画像Pから抽出される特徴マップFを、推論部10から取得する。特徴マップ取得部310は、推論部10により入力画像Pから抽出される複数の特徴マップFのうち、異なる中間層から抽出される複数の特徴マップFを取得する。特徴マップ取得部310は、取得した特徴マップFを圧縮部320に転送する。
 圧縮部320は、取得した特徴マップFを圧縮する。特徴マップFは、少なくとも縦方向と横方向とを有する画像方向と、チャンネル方向とを特徴量として有する。圧縮部320は、特徴マップが有する要素のうち、画像方向に圧縮する。
 なお、本実施形態の圧縮部320は、チャンネル方向には圧縮しない。したがって、圧縮部320によれば、チャンネル方向の情報量を維持したまま、情報量を圧縮することができる。
 圧縮部320は、圧縮した特徴マップFを特徴マップF1として分割部330に転送する。
なお、圧縮部320は、適宜データ量を削減するために、c方向に圧縮しても良い。
 分割部330は、圧縮された特徴マップF1を分割する。具体的には、分割部330は、特徴マップF1を画像方向に分割する。
 なお、分割部330は、特徴マップFを、縦方向及び横方向において、それぞれ奇数個に分割することが望ましい。分割部330は、特徴マップFを、奇数個に分割することにより、演算の際に中央値を得ることができるようになるため、演算が容易になる。ただし、必ずしも奇数に分割することを要せず、検出すべきデータやアプリケーションに応じて、偶数個に分割してもよい。
 図6は、実施形態に係る分割について説明するための図である。同図を参照しながら、特徴マップF1の分割について説明する。画像P3は入力画像Pであって、分割部330により、特徴マップF1を画像方向に分割した場合の入力画像Pとの位置関係を示す一例である。同図に示す一例において、分割部330は、特徴マップF1を縦方向に7個、横方向に7個の合計49個に分割する。つまり、分割部330は、入力画像である画像P3を縦方向に7個、横方向に7個の合計49個に分割し、異常検知システム1は、分割部330により分割された領域ごとに、異常検知のための演算を行うことに相当する。
 ここで、中間層から取得する特徴マップは、畳み込み演算等により、分割された領域を超えた情報を含むことになる。そのため、単に入力画像を分割して異常検知を行うよりも、高い精度で検出することができる。
 分割部330は、分割した特徴マップFを特徴マップF2として演算部340に転送する。
 図5に戻り、演算部340は、分割された特徴マップF2ごとに、事前に決定された平均値ベクトルと分散に基づいた演算を行う。平均値ベクトルと分散に基づいた演算とは、具体的には、マハラノビス距離の演算である。すなわち、演算部340は、分割された特徴マップF2ごとに、平均値ベクトルと分散に基づいた演算として、マハラノビス距離を演算する。
 また、演算部は、取得された複数の特徴マップF2に基づいて、平均値ベクトルと分散に基づいた演算をする。
 図7は、実施形態に係る演算部の機能構成の一例を示す機能構成図である。同図を参照しながら、演算部340の機能構成について説明する。演算部340は、分割された特徴マップF2ごと、平均値ベクトルと分散に基づいた演算を行い、入力画像Pにおける異常検知を行う。演算部340は、演算を行った結果を、異常検知結果Rとして出力部350に転送する。
 演算部340は、算出部341と、加算部342とを備える。
 算出部341は、分割された複数の特徴マップF2ごとに、平均値ベクトルと分散に基づいた演算をする。平均値ベクトルと分散に基づいた演算とは、具体的には、下の式(1)に基づいて、マハラノビス距離Mを演算することである。
Figure JPOXMLDOC01-appb-M000001
 このとき、Dはマハラノビス距離を、xは演算対象である分割された複数の特徴マップF2の要素からなるベクトルを、mは事前に決定しておいた平均値のベクトルを、C-1は事前に決定しておいた共分散行列の逆行列を、Tは転置演算を示す。ここで、マハラノビス距離自体は0から無限まで取り得るが、8bitや16bit等の値を上限としてもよいし、正規化させてもよい。なお、演算の簡略化のためマハラノビス距離を2乗の形式であるDで示したが、べき乗しない形式であってもよい。
 算出部341は、上の式(1)に基づいて、分割された複数の特徴マップF2ごとのマハラノビス距離Dを算出し、算出された結果であるマハラノビス距離Dを、マハラノビス距離Mとして加算部342に転送する。
 なお、共分散の逆行列として、疑似逆行列を用いてもよい。
 加算部342は、算出された複数の結果を所定の条件に基づいて加算することにより、異常検知結果Rを得る。所定の条件とは、例えば、算出されたマハラノビス距離Mのうち、上位3つの値等であってもよい。
 また、加算部342は、算出部341により算出された値のうち、所定の閾値に基づいて選択された値を加算してもよい。また、加算部342は、算出された複数の結果を加算することに代えて、平均値をとることによって異常検知結果Rを得てもよい。また加算部342は、算出された複数の結果を加算することに加えて、分散を組み合わせて異常検知結果Rを得てもよい。
 以下、算出された複数の結果から異常検知結果Rを得る手法の具体例について説明する。異常検知結果Rは、例えば、算出された複数の結果を統計演算することにより得られてもよい。統計演算の一例としては、算出された複数の結果のうち上位m個(mは1以上の自然数)を抽出し、抽出した値の合計値、平均値、中央値(メディアン値)又は最頻値等を算出することであってもよい。統計演算が行われる対象は、上位m個から抽出される一例に限定されず、上位及び下位それぞれからm個ずつ抽出されてもよいし、所定の値(閾値)以下の結果を除外した残りの値が抽出されてもよいし、分散が所定値(例えば3σ)以上の値が抽出されてもよい。また、算出された複数の結果から統計演算の対象を抽出することに代えて、複数回の結果に基づいた統計演算を行うことにより異常検知結果Rを得てもよい。また、算出された複数の結果を統計演算することに代えて、算出された複数の結果の最大値と最小値に基づいた演算を行うことにより異常検知結果Rを得てもよい。例えば、算出された複数の結果の最大値と最小値の差に基づいて異常検知結果Rを得てもよい。算出された複数の結果から異常検知結果Rを得る手法は上述した一例に限定されず、様々な既知の手法を適用することが可能である。
 なお、加算部342は、算出された複数の結果を加算することに代えて、マハラノビス距離の結果による分布を生成し、生成した分布を異常検知結果Rとしてもよい。
 図5に戻り、出力部350は、演算部340により演算された結果である異常検知結果Rを出力する。出力部350は、例えば、異常検知結果Rを情報処理装置60に出力する。
[異常検知部の変形例]
 図8は、実施形態に係る異常検知部の機能構成の変形例を示す機能構成図である。同図を参照しながら、異常検知部30の変形例である異常検知部30Aについて説明する。異常検知部30Aは、演算部340により演算された異常検知結果Rに基づき、入力画像Pが有する異常の程度について算出する。入力画像Pが有する異常の程度とは、予め学習された正常画像との距離であってもよい。
 異常検知部30Aは、比較部360及び閾値情報記憶部361を備える点において、異常検知部30とは異なる。異常検知部30と同様の構成については、同様の符号を付すことにより、説明を省略する場合がある。同図における説明において、演算部340により演算された異常検知結果Rを、異常検知結果R1記載する。
 比較部360は、演算部340から異常検知結果R1を取得する。また、比較部360は、閾値情報記憶部361から所定の閾値THを取得する。
 比較部360は、取得した異常検知結果R1と、所定の閾値THとを比較する。例えば、比較部360が比較した結果、取得した異常検知結果R1の方が、所定の閾値THより大きければ、入力画像Pに撮像された物体は何らかの異常を有する。出力部350は、比較部360により比較された結果である異常検知結果R2を出力する。
 ここで、閾値情報記憶部361に記憶された所定の閾値THは、複数段階に分かれている場合がある。この場合、比較部360は、演算部340により演算された結果である異常検知結果R1と、複数の所定の閾値THとを比較することにより、異常検知結果R1を、階層ごとに区分する。比較部360は、異常検知結果R1を、階層ごとに区分することにより、入力画像Pが有する異常の度合いについて算出することができる。比較部360は、階層ごとに区分した結果を異常検知結果R2として出力部350に出力する。
 出力部350は、区分した結果である異常検知結果R2を出力する。
 なお、閾値情報記憶部361に記憶された所定の閾値THは、検知を開始前にユーザによって設定されてもよいし、後述する学習処理の結果として取得してもよい。
 図9は、実施形態に係る出力部の出力結果の一例を示す図である。同図を参照しながら、比較部360により階層ごとに区分された結果である異常検知結果R2に基づいた表示結果について説明する。
 図9(A)には、入力画像Pの位置に応じた異常の度合いについて色分けした表示画像の一例を示す。図9(B)には、色分けにおける凡例の一例を示す。同図において、異常であると推定される箇所は濃い色で、正常であると推定される箇所は薄い色で示す。符号Aで示した部分は、異常であると推定されるため、濃い色で示されている。
 なお、比較部360は、異常検知結果R1と所定の閾値THとを比較することにより、入力画像Pに撮像された物体を製造ラインから除去するか否かを判定してもよい。この場合、異常検知システム1は、複数段階の閾値を設定することにより、入力画像Pに撮像された物体を、異常の程度に応じた複数の箇所に区別して除去してもよい。
[異常検知システムの一連の動作]
 次に、図10及び図11を参照しながら、実施形態に係る異常検知システムの「検知」及び「学習」についての一連の動作を説明する。
 図10は、実施形態に係る異常検知システムの「検知」処理における一連の動作を説明するためのフローチャートである。同図を参照しながら、異常検知システム1の一連の動作について説明する。
(ステップS110)まず、異常検知システム1は、入力画像Pを取得する。異常検知システム1は、例えば、撮像装置50から入力画像Pを取得する。
(ステップS120)異常検知システム1は、取得した画像をDL(Deep Learning)モデル、すなわち推論部10に入力する。
(ステップS130)異常検知部30が備える特徴マップ取得部310は、DLモデルが有する複数の中間層それぞれから、特徴マップFを取得する。
(ステップS140)異常検知部30が備える圧縮部320は、取得した特徴マップFを、画像方向に圧縮する。
(ステップS150)異常検知部30が備える分割部330は、圧縮した特徴マップを、画像方向に分割する。
(ステップS160)異常検知部30が備える演算部340は、分割した特徴マップごとに、マハラノビス距離Mを算出する。
(ステップS170)異常検知部30が備える演算部340は、特徴マップごとに求めたマハラノビス距離Mを加算する。
(ステップS180)比較部360は、加算された値と所定の閾値とを比較する。
(ステップS190)比較部360は、加算された値が所定の閾値より大きい場合(すなわち、ステップS190;YES)、処理をステップS200に進める。また、比較部360は、加算された値が所定の閾値より大きくない場合(すなわち、ステップS190;NO)、処理をステップS210に進める。
(ステップS200)入力画像Pは異常を有すると判断し、出力部350は、情報処理装置60にその結果を出力する。
(ステップS210)入力画像Pは正常であると判断し、出力部350は、情報処理装置60にその結果を出力する。
 図11は、実施形態に係る異常検知システムの「学習」処理における一連の動作を説明するためのフローチャートである。同図を参照しながら、異常検知システム1の学習の動作について説明する。
(ステップS210)まず、異常検知システム1は、入力画像Pを取得する。異常検知システム1は、例えば、撮像装置50から入力画像Pを取得する。ここで、学習の動作を行う場合には正常画像のみを選別して取得するように制御する。言い換えれば、異常検知システム1は学習の動作を行う場合に与えられた画像を正常画像とし、正常画像からの乖離をマハラノビス距離として算出することにより、入力画像Pに存在する異常を検知する。
(ステップS220)異常検知システム1は、取得した画像をDLモデル、すなわち推論部10に入力する。
(ステップS230)異常検知部30が備える特徴マップ取得部310は、DLモデルが有する複数の中間層それぞれから、特徴マップFを取得する。
(ステップS240)異常検知部30が備える圧縮部320は、取得した特徴マップFを、画像方向に圧縮する。
(ステップS250)異常検知部30が備える分割部330は、圧縮した特徴マップを、画像方向に分割する。
(ステップS260)異常検知部30に備えられる不図示のパラメータ算出部は、分割した特徴マップの各要素に基づいて演算部340が演算に用いるパラメータを算出する。ここで、演算部340が演算に用いるパラメータとは、具体的には正常画像における平均値ベクトルと共分散行列である。なお、ここでは正常画像における平均値ベクトルと共分散行列は分割したが演算負荷を低減するために、ステップS250を省略し、画像全体で求めるようにしてもよい。
 すなわち、特徴マップ取得部310は、少なくとも1枚の正常画像から抽出された複数の特徴マップを取得し、パラメータ算出部は、正常画像から抽出された複数の特徴マップに基づいてパラメータを算出する。パラメータとは、平均値ベクトルと共分散行列を含んでいてもよい。
(ステップS270)入力画像Pにおける平均値ベクトル及び共分散行列を出力する。出力した平均値ベクトル及び共分散行列は、事前に正常画像から生成されたパラメータであり、事前に決定されたパラメータとして検知動作に用いられる。
 ここで、説明の簡略化のために、1枚の入力画像Pに基づいて学習の動作を行う例を示したが、異常検知システム1は、数十枚の画像を用いて平均値ベクトル及び共分散行列を求めることが好ましい。また、異常検知システム1が製品検査システム等に用いる場合には、入力画像Pに含まれる対象の像に応じて当該学習動作を行うことが好ましい。入力画像Pに含まれる対象の像に応じた学習動作とは、製品ラインや、検査種類ごと等であってもよい。
 また、当該学習動作は、図10に示す検知動作の前に行われる必要がある。さらに当該学習動作は、定期的に行われることが望ましい。この場合、異常検知システム1は、学習動作が行われてから所定期間経過後に、再学習することを促してもよい。
 また、本実施形態の学習動作においては、バックボーンの学習は行わない。学習に多くの画像を必要とするバックボーンの学習を別途に行うことにより、異常検知に関する学習を少ない画像枚数及び学習時間で完了することが可能となる。ただし、学習時間を確保できる場合には、バックボーンについて正常画像により追加学習等を行ってもよい。
 なお、ステップS260において、正常画像における平均値ベクトルと共分散行列を算出する際に異常を検知するための閾値を算出するようにしてもよい。具体的には学習処理を実行時に算出される正常画像におけるマハラノビス距離のばらつきに基づいて、自動的に決定するようにしてもよい。
[異常検知システムのまとめ]
 以上説明した実施形態によれば、異常検知システム1は、異常検知部30を備えることにより、入力画像Pから抽出された特徴マップFに基づいて、異常検知を行う。具体的には、異常検知部30は、特徴マップ取得部310を備えることにより特徴マップFを取得し、圧縮部320を備えることにより取得した特徴マップFを圧縮し、分割部330を備えることにより圧縮された特徴マップFを分割し、演算部340を備えることにより、圧縮及び分割された特徴マップFごとに平均値ベクトルと分散に基づいた演算を行う。異常検知部30は、圧縮及び分割された特徴マップFごとに平均値ベクトルと分散に基づいた演算を行うため、演算を容易にすることができる。したがって、異常検知システム1によれば、入力画像Pが有する画像情報から、物体に存在する異常の有無を容易に検知することができる。
 また、以上説明した実施形態によれば、圧縮部320は、特徴マップFを画像方向に圧縮する。したがって、異常検知部30は、圧縮部320を備えることにより、演算部340の処理負担を減少することができる。
 ここで、物体の異常検知技術において、異常が存在している箇所の特定精度よりも、処理速度が要求される場合がある。本実施形態によれば、画像方向に圧縮するため、異常が存在している箇所の特定精度とのトレードオフにより、高速に異常検知することができる。
 また、以上説明した実施形態によれば、分割部330は、特徴マップFを奇数個に分割する。ここで、特徴マップFが分割された数が偶数の場合、中央値が存在しないため、演算が複雑になる場合がある。本実施形態によれば、分割部330は、特徴マップFを奇数個に分割するため、演算部340は、容易に異常検知のための演算をすることができる。
 また、以上説明した実施形態によれば、圧縮部320は、特徴マップFをチャンネル方向には圧縮しない。したがって、圧縮部320によればチャンネル方向についての情報量を維持したまま、画像方向に圧縮することができる。演算部340は、圧縮後の特徴マップFに基づいて演算を行うため、チャンネル方向についての精度は維持したまま、画像方向への処理負担を減少することができる。
 ここで、物体の異常検知技術において、異常が存在している箇所の特定精度よりも、異常の有無の精度が要求される場合がある。また、異常が存在している箇所の特定精度よりも、処理速度が要求される場合がある。本実施形態によれば、画像方向に圧縮するため、異常が存在している箇所の特定精度とのトレードオフにより、異常の有無の精度を維持したまま、高速に異常検知することができる。
 また、以上説明した実施形態によれば、演算部340は、分割された特徴マップFごとに、平均値ベクトルと分散に基づいた演算として、マハラノビス距離を演算する。具体的には、演算部340は、上述した式(1)に基づいた演算を行う。したがって、演算部340によれば、容易に演算することができる。
 また、以上説明した実施形態によれば、特徴マップ取得部310は、入力画像Pから抽出される複数の特徴マップFのうち、異なる中間層から抽出される複数の特徴マップFを取得する。また、演算部340は、取得された複数の特徴マップFに基づいて、平均値ベクトルと分散に基づいた演算をする。
 したがって、本実施形態によれば、精度を重視する場合には多くの中間層から特徴マップFを取得すればよいし、速度を重視する場合には少ない中間層から特徴マップFを取得すればよい。よって、本実施形態によれば、異常検知の精度と処理速度とのトレードオフにおいて、いずれかを重視することを設定することができる。
 また、以上説明した実施形態によれば、演算部340は、算出部341を備えることにより、異なる中間層から抽出される複数の特徴マップFそれぞれについて、平均値ベクトルと分散に基づいた演算をする。また、演算部340は、加算部342を備えることにより。特徴マップFごとに算出された値を加算する。したがって、本実施形態によれば、演算部340は、異なる複数の特徴量ごとに算出された値に基づいた演算をすることができるため、より精度よく異常検知することができる。
 また、以上説明した実施形態によれば、加算部342は、算出部341により算出された値のうち、所定の閾値に基づいて選択された値を加算する。すなわち、本実施形態によれば、算出された値のうち、特定の値に基づいて異常検知を行う。したがって、本実施形態によれば、異常検知に寄与していない特徴量については、演算から除くことができる。よって、本実施形態によれば、高速に、かつ精度よく異常検知することができる。
 また、以上説明した実施形態によれば、比較部360を備えることにより、演算部340により演算された値を所定の閾値と比較する。したがって、本実施形態によれば、異常検知をした結果を、出力することができる。
 また、以上説明した実施形態によれば、比較部360は、演算部340により演算された結果を階層ごとに区分する。出力部350は、階層ごとに区分された結果を出力する。したがって、本実施形態によれば、視覚的に異常個所が判別容易な表示画像を出力することができる。
 また、以上説明した実施形態によれば、推論部10は、入力画像Pに含まれる物体のクラスと尤度を予測するように学習されたニューラルネットワークである。したがって、推論部10によれば、入力画像Pから高速に特徴マップFを抽出することができる。また、推論部10として、予め学習されたニューラルネットワークを用いることにより、異常検知の対象となる物体に合わせた学習をしなくても、異常検知システム1は、異常検知することができる。
[異常表示システムの概要]
 次に、図13から図23を参照しながら、異常表示システム8について説明する。異常表示システム8は、異常検知システム1を用いて、入力画像Pに存在する異常個所を表示するシステムである。
 以下の説明において、異常表示システム8は、例えば、インフラ設備等の対象物を整備する作業者によって使用される。本実施形態におけるインフラ設備とは、例えば、上下水道管、ガス管、送電設備、通信設備、自動車用道路、鉄道用線路等であってもよい。また、作業者は、住宅や自動車等の対象物の点検を行う者であってもよい。
 また、異常表示システム8は、作業者に用いられる場合の一例に代えて、ドローンやAGV(Automated guided vehicle)等の移動体によって用いられてもよい。この場合、異常表示システム8は、移動体が撮像した像に基づいて異常検知を行い、コントローラ又は中央制御装置を制御するオペレータに対して異常個所を表示してもよい。
 異常表示システム8は、作業者やドローン等の移動体によって設備や点検のために使用される場合の一例に限定されず、製造工場に固定されていてもよい。製造工場に備えられた異常表示システム8は、製造された製品や部品に存在する外観上の異常を検知し、検知した結果をオペレータに対して表示してもよい。また、異常表示システム8は、食品加工工場等に設置され、食品や材料等に存在する外観上の異常を検知し、検知した結果をオペレータに対して表示することにより、出荷検査に使用されてもよい。
 異常表示システム8は、「学習」と「検査」とを行う。「学習」とは、正常画像に基づいて、正常画像の範囲を学習することであり、「検査」とは、学習した正常画像の範囲に基づいて、検査対象となる入力画像Pの外観上の異常検知を行うことである。まず、図13を参照しながら「学習」について説明し、次に、図14を参照しながら「検査」について説明する。
 図13は、実施形態に係る異常表示装置の学習処理について説明するための図である。同図を参照しながら、異常表示システム8が行う「学習」について説明する。異常表示システム8は、異常検知モデル830を備える。異常検知モデル830には、学習済バックボーン820及び学習用画像P11が入力される。異常検知モデル830は、学習済バックボーン820と学習用画像P11とに基づき学習され、学習した結果として学習結果ヘッド834を出力する。
 学習済バックボーン820とは推論部10の一例であり、学習用画像P11とは入力画像Pの一例である。
 異常検知モデル830は、プリプロセス831と、CNN(Convolutional Neural Network)832と、ポストプロセス833とを備える。異常検知モデル830は、異常検知部30の一例である。
 異常検知モデル830の全部又は一部の処理は、ハードウェアアクセラレータとして実装されてもよい。
 プリプロセス831は、入力画像Pに物体が存在すると予想される範囲を示す位置座標と、当該位置座標に対応するクラスの尤度とを算出する。プリプロセス831は、入力画像Pが画像方向に分割された要素マトリクスごとに、処理を行う。すなわち、プリプロセス831は、要素マトリクスごとに、物体が存在すると予想される範囲を示す位置座標と、当該位置座標に対応するクラスの尤度とを出力する。
 CNN832は、プリプロセス831により出力された位置座標及び尤度について畳み込み演算を行う。CNN832は、要素マトリクスごとに演算を行い、要素マトリクスごとに行われた複数の演算結果を出力するようにしてもよい。例えば入力画像Pが224[画素]×224[画素]の画像サイズを有する場合、要素マトリクスは、32×32に分割した結果である7[画素]×7[画素]の画像サイズを有していてもよい。また、入力画像Pは、異常検知モデル830に入力される時点でR(Red)、G(Green)、B(Blue)からなる3[ch(チャネル)]×8[bit]の色彩情報を有していてもよい。
 ポストプロセス833は、CNN832により出力された複数の要素マトリクスごとの演算結果に基づいて、入力画像Pにおける平均値ベクトルと共分散行列を学習する。ポストプロセス833は、学習した結果を学習結果ヘッド834として出力する。学習結果ヘッド834とは、すなわち、学習済みモデルである。なお、学習処理においては入力画像Pとして複数枚の画像を用いることが好ましい。学習処理に用いられる入力画像Pとして正常画像(正常と許容し得る画像を含む)が好ましい。
 なお、プリプロセス831は、入力画像Pに物体が存在すると予想される範囲を示す位置座標と、当該位置座標に対応するクラスの尤度とを算出する代わりに、所定の画像処理を行ってもよい。一例として入力画像Pの画質改善のための処理や、画像自体の加工処理、その他のデータ処理等を含む。画質改善のための処理とは、輝度・色変換、黒レベル調整、ノイズ改善、又は光学収差の修正等であってもよい。画像自体の加工処理とは、画像の切り出し、拡大・縮小・変形等の処理であってもよい。その他のデータ処理とは、階調削減、圧縮符号化・復号化、又はデータ複製等のデータ処理等であってもよい。
 図14は、実施形態に係る異常表示装置の検査処理について説明するための図である。同図を参照しながら、異常表示システム8が行う「検査」について説明する。異常表示システム8において、異常検知モデル830には、学習済バックボーン820、「学習」段階において学習された学習結果ヘッド834及び検査用画像P12が入力される。異常検知モデル830は、異常検知結果Rとして検査結果ヒートマップ画像R1又は検査結果スコアR2の少なくとも一方を出力する。
 検査結果ヒートマップ画像R1とは、異常検知システム1において説明した異常検知結果Rであってもよい。なお、検査結果ヒートマップ画像R1は、入力画像Pに、異常検知した結果に基づいた情報を重ねて表示した画像である。検査結果ヒートマップ画像R1は実施形態の一例であって、ヒートマップ以外の方法によって、表示してもよい。
 検査結果スコアR2とは、検査に要した合計処理時間や、検査した画像の枚数、検査結果の保存場所を示すパス等であってもよい。
 図15は、実施形態に係る異常表示装置の機能構成の一例を示す機能構成図である。同図を参照しながら、本実施形態に係る異常表示システム8及び異常表示装置80の機能構成の一例について説明する。なお、異常表示システム8に含まれる各ブロックは不図示のプロセッサによって制御される。また、各ブロックの少なくとも一部を不図示のメモリに記憶されるプログラムをプロセッサが実行することで実現してもよい。
 異常表示システム8は、記憶装置81と、入力装置82と、異常表示装置80とを備える。記憶装置81は、入力画像P(学習用画像P11及び検査用画像P12)等を記憶する。記憶装置81は、入力画像Pを異常表示装置80に出力する。異常表示装置80は、正常画像である入力画像Pに基づいて「学習」され、検査対象となる入力画像Pを「検査」し、その結果を表示する。入力装置82は、ユーザからの操作に基づき、ユーザから取得した情報を異常表示装置80に入力する。入力装置82は、例えば、キーボード、タッチパネル、音声入力装置等の入力装置であってもよい。
 なお、入力装置82はユーザからの操作に基づかなくてもよい。例えば、定期的に情報を入力してもよいし、物体検知等をトリガとして情報を入力してもよい。
 異常表示装置80は、開始情報取得部810と、入力画像取得部805と、補正選択情報取得部806と、画像補正部807と、推論部10と、異常検知部30と、表示部840とを備える。異常検知システム1と同様の構成については、同様の符号を付すことにより、説明を省略する場合がある。
 開始情報取得部810は、開始情報ISを取得する。開始情報ISは、異常検知部30に異常検知を開始させるための情報を含む。異常検知とは、入力画像Pに含まれる像が有する外観上の異常を検知することである。例えば、開始情報取得部810は、異常表示システム8を使用するユーザの操作により開始情報ISを取得してもよい。
 また、開始情報ISは、異常検知部30が所定の正常画像に基づいた「学習」を行うか、「検査(異常検知)」を実行するかのうち、いずれかを示す情報を含んでいてもよい。「学習」又は「検査」のいずれを行うかを示す情報を学習実行選択情報とも記載する。すなわち、開始情報ISは、学習実行選択情報を含んでいてもよい。
 異常検知部30は、開始情報ISに含まれる学習実行選択情報に基づいて、「学習」又は「検査」のいずれかを実行する。
 入力画像取得部805は、入力画像Pを取得する。例えば、開始情報取得部810により取得された開始情報ISには、入力画像Pが記憶された場所を示すパスが含まれ、入力画像取得部805は、当該バスに示される場所に記憶された入力画像Pを取得する。入力画像Pは、記憶装置81に記憶されていてもよい。
 なお、本実施形態において入力画像Pはパスにより指定される例を示したが、複数の画像が保持されているフォルダ等において選択的に指定して取得するようにしてもよい。
 画像補正部807は、入力画像取得部805により取得された入力画像Pを、画像処理により補正する。画像補正部807は、補正した入力画像Pを、入力画像P’として推論部10に出力する。画像補正部807が行う画像処理を、補正処理とも記載する。
 補正選択情報取得部806は、補正選択情報ISELを取得する。補正選択情報ISELとは、画像補正部807が実行する補正処理の種類を選択する情報である。画像補正部807は、補正選択情報ISELに示された補正処理の種類に応じた補正処理を行う。
 なお、補正選択情報ISELが、補正しないことを示す情報が含まれている場合、補正選択情報取得部806は、入力画像Pを補正しなくてもよい。
 なお、異常表示システム8は、不図示の撮像部(撮像装置)を備えていてもよい。異常表示システム8が撮像部を備える場合、開始情報ISには、撮像部に像を撮像させるための撮像開始信号が含まれていてもよい。開始情報取得部810は、不図示の撮像ボタンがユーザにより操作されたことに伴い、開始情報ISを取得してもよい。
 異常表示システム8が撮像部を備える場合、入力画像取得部805は、撮像部により像が撮像された入力画像Pを取得する。
 推論部10は、開始情報ISを取得すると、補正された入力画像P’から特徴マップFを抽出する。推論部10は、抽出した特徴量マップFを出力する。推論部10は、複数の中間層から、複数の特徴マップFを出力する。
 異常検知部30は、取得した開始情報ISに基づいて、取得された入力画像P又は補正された入力画像P’と、予め記憶された正常画像に基づく情報とを比較することにより、異常検知を実行する。予め記憶された正常画像に基づく情報とは、学習用画像P11に基づいて学習された情報であってもよい。
 異常検知部30は、所定の正常画像により予め学習されたニューラルネットワークであってもよい。
 表示部840は、異常検知部30により検知された情報に基づいた情報を、入力画像Pに重ねて表示する。例えば、表示部840は、入力画像Pに、所定の色フィルタを重ねて表示することにより、検査結果ヒートマップ画像R1を表示する。所定の色フィルタは、異常と検知された箇所が視覚的に判断可能なよう、色分けされていてもよい。
 その他、表示部840は、入力画像Pのうち異常が存在する確率が高い部分を識別可能な方法により、表示してもよい。
 図16は、実施形態に係る異常表示装置の表示画面の画面構成の一例を示す図である。同図を参照しながら、異常表示装置80が表示する表示画面D1の画面構成の一例について説明する。異常表示装置80は、ユーザにより操作される。ユーザは、表示画面D1に表示される情報に基づいた操作をすることにより、異常表示装置80を操作する。
 表示画面D1は、異常表示装置80が表示する表示画面の画面構成の一例を示す。異常表示装置80が表示する表示画面は、データセット表示部D10と、モード表示部D20と、画像表示部D30と、ログ情報表示部D40とを画面構成として有する。
 データセット表示部D10は、入力画像Pの補正について選択するための画面構成である。データセット表示部D10は、符号D11と、符号D12と、符号D13とを画面構成として備える。符号D11、符号D12及び符号D13は、それぞれ選択ボタンD111、選択ボタンD121及び選択ボタンD131を備える。選択ボタンD111、選択ボタンD121及び選択ボタンD131のうち、いずれの選択ボタンか区別しない場合、単に選択ボタンと記載する場合がある。
 ユーザは、いずれかの選択ボタンを選択することにより、入力画像Pに補正を行うか否かを選択する。異常表示装置80は、入力画像Pに対して、選択された補正を行ったうえで、「学習」又は「検査」を行う。図16に示す一例では、補正の一例として、「オリジナル画像」と、「露出アンダー画像」と、「鮮明化画像」とを有する。
 「オリジナル画像」は、入力画像Pに補正をしない。「露出アンダー画像」は、入力画像Pに露出補正処理を行う。「鮮明化画像」は、入力画像Pに画像鮮明化処理を行う。
 なお、異常表示装置80が入力画像Pに行う補正処理は、画像補正部807により行われる。画像補正部807が補正可能な処理の種類は上述した一例に限定されず、「コントラスト補正」、「明るさ補正」、「色補正」等のヒストグラム変換処理であってもよいし、「ノイズ除去」、「エッジ強調」等のフィルタ処理であってもよいし、アフィン変換等であってもよい。
 モード表示部D20は、ユーザが「学習」又は「検査」のいずれかを選択するための画面構成である。モード表示部D20は、符号D21と、符号D22と、実行ボタンD23とを画面構成として備える。符号D21及び符号D22は、それぞれ選択ボタンD211及び選択ボタンD221を備える。ユーザは、選択ボタンD211を選択することにより「学習」を選択し、選択ボタンD221を選択することにより「検査」を選択する。ユーザは、実行ボタンD23を操作することにより、選択した「学習」又は「検査」のいずれかを実行させる。ここで、開始情報取得部810は、実行ボタンD23が選択されることにより、選択ボタンの選択状況の情報を含む開始情報ISを取得してもよい。
 なお、「検査」は、「一括処理モード」と「逐次処理モード」とを有していてもよい。「一括処理モード」では、複数枚の入力画像Pを一括して処理する。「逐次処理モード」では、入力画像Pを一枚ずつ処理する。
 画像表示部D30は、「学習」に用いられる入力画像P又は、「検査」の結果異常検知がされた異常検知結果Rのうち少なくとも一方を表示する。画像表示部D30は、画像表示ボックスD31と、左スクロールボタンD321と、右スクロールボタンD322とを備える。画像表示ボックスD31は、符号D311、符号D312及び符号D313の3箇所に、画像を表示する。3以上の画像を表示する場合、ユーザは、左スクロールボタンD321又は右スクロールボタンD322を操作することにより、4以上の画像のうちいずれか3枚の画像を見ることができる。この一例では、画像表示ボックスD31は3枚の画像を表示するが、画像表示ボックスD31が表示する画像の枚数は、この一例に限定されない。
 ログ情報表示部D40は、「学習」又は「検査」の結果を表示する。例えば、「学習」の場合、ログ情報表示部D40は、学習画像枚数、1画像あたりの処理時間、合計処理時間、学習結果ヘッド等を表示する。例えば、「検査」の場合、ログ情報表示部D40は、検査画像枚数、1画像あたりの処理時間、合計処理時間、検査結果、検査結果画像の記憶場所(パス)等を出力する。
 次に、図17から図19を参照しながら、画像表示部D30が表示する入力画像Pの一例について説明する。
 図17は、実施形態に係る入力画像の画像補正の一例を示す図である。同図を参照しながら、「学習」処理において画像表示部D30が表示する入力画像Pの一例について説明する。画像表示部D30は、学習対象となる複数の入力画像P(以降の説明において、データセットとも記載する。)のうち、異なる3枚の入力画像Pを表示する。
 図17(A)から図17(C)に示す画像は、いずれもタイルの画像であり、同一の入力画像Pに基づいた画像である。
 図17(A)は、符号D111が選択された場合における入力画像P’、すなわち補正がされていない画像である。図17(B)は、符号D121が選択された場合における入力画像P’、すなわち画像補正部807により露出補正がされた場合の画像である。図16(C)は、符号D131が選択された場合における入力画像P’、すなわち画像補正部807により画像鮮明化処理がされた場合の画像である。
 なお、他の実施例として、画像表示部D30は、異なるフィルタを採用した場合の同一の写真(例えば、図17(A)から図17(C))を、画像表示部D30に表示し、ユーザにフィルタの種類を選択させてもよい。
 なお、所定のフィルタの種類を選択した場合に、「学習」と「検査」の両処理においては同一のフィルタを用いることが好ましい。この場合、「学習」処理の際にどのようなフィルタの種類を選択したかについての情報を学習結果と共に記憶するようにしてもよい。また、複数のフィルタを用いて「学習」と「検査」を行い、そこから選択するようにしてもよい。例えば、異常検知部30は予め複数のフィルタを用いてフィルタごとに「学習」され、「検査」時に選択されたフィルタに応じた学習モデルを用いて、「検査」するように構成してもよい。
 図18は、実施形態に係る正常画像の一例を示す図である。同図を参照しながら、「学習」処理において画像表示部D30が表示する入力画像Pの一例について説明する。画像表示部D30は、データセットのうち、異なる3枚の入力画像Pを表示する。図18(A)から図18(C)に示す画像は、いずれもタイルの画像であり、異なる入力画像P画像である。図18(A)から図18(C)は、いずれも画像補正部807による補正がされていない画像である。
 画像表示部D30は、例えば、符号D311に図18(A)に示す図を表示し、符号D312に図18(B)に示す図を表示し、符号D313に図18(C)に示す図を表示する。
 図19は、実施形態に係る異常表示装置の検査結果の一例を示す図である。同図を参照しながら、「検査」処理において画像表示部D30が表示する画像の一例について説明する。画像表示部D30は、検査対象となる入力画像P又は入力画像P’、及び入力画像Pに応じた異常検知結果Rを表示する。
 図19(A)は、入力画像Pの一例を示す。図19(B)は、図19(A)に示す入力画像Pに応じた異常検知結果Rの一例を示す。図19(C)は、図19(B)に対応する凡例の一例を示す。同図において、異常であると推定される箇所は濃い色で、正常であると推定される箇所は薄い色で示す。
 図19(A)に示す入力画像Pには亀裂が生じているため、亀裂部分が異常である。したがって、図19(B)に示す異常検知結果Rにおいては、亀裂部分の色が濃く表示されている。ユーザは、濃い部分が存在する箇所に異常があることが分かる。
 画像表示ボックスD31のうち、例えば、符号D311には入力画像Pが表示され、符号D313には異常検知結果Rが表示されてもよい。符号D312は、何も表示しなくてもよいし、企業ロゴや広告、操作方法等のその他の情報を表示してもよい。
 図20は、実施形態に係る異常表示装置の学習処理の一連の動作を説明するためのフローチャートである。同図を参照しながら、異常表示装置80の「学習」処理の一連の動作について説明する。
(ステップS310)開始情報取得部810は、「学習」ボタンが押下されたことを検知すると、開始情報ISを推論部10に出力し、処理をステップS320に進める。「学習」ボタンが押下されたとは、直接的に「学習」ボタンが押下されなくてもよく、例えば、選択ボタンD211が選択され、実行ボタンD23が押下されたことを含む。また、開始情報取得部810は、撮像部により撮像されたことをトリガとして開始情報ISを出力してもよい。
(ステップS320)補正選択情報取得部806は、データセットの選択情報、すなわち補正選択情報ISELを取得する。
(ステップS330)推論部10は、補正選択情報ISELに基づいた補正がされた入力画像Pを、入力画像P’として取得する。
(ステップS340)異常検知部30は、補正された入力画像P’に基づいて学習される。
(ステップS350)表示部840は、学習に要した時間や画像を処理した枚数等を学習結果としてログ情報表示部D40に表示させる。
 図21は、実施形態に係る異常表示装置の検査処理の一連の動作を説明するためのフローチャートである。同図を参照しながら、異常表示装置80の「検査」処理の一連の動作について説明する。
(ステップS410)開始情報取得部810は、「検査」ボタンが押下されたことを検知すると、開始情報ISを推論部10に出力し、処理をステップS420に進める。「検査」ボタンが押下されたとは、直接的に「検査」ボタンが押下されなくてもよく、例えば、選択ボタンD221が選択され、実行ボタンD23が押下されたことを含む。
 また、開始情報取得部810は、撮像部により撮像されたことをトリガとして開始情報ISを出力してもよい。
(ステップS420)補正選択情報取得部806は、データセットの選択情報、すなわち補正選択情報ISELを取得する。
(ステップS430)推論部10は、補正選択情報ISELに基づいた補正がされた入力画像Pを、入力画像P’として取得する。
(ステップS440)異常検知部30は、補正された入力画像P’について異常検知を行う。
(ステップS450)表示部840は、異常検知結果Rや、異常検知結果Rが記憶された場所のパス、異常検知に要した時間や画像を処理した枚数等を検査結果としてログ情報表示部D40に表示させる。
[モード表示部の変形例]
 図22は、実施形態に係る異常表示装置の第1の変形例について説明するための図である。同図を参照しながら、モード表示部D20Aについて説明する。モード表示部D20Aは、モード表示部D20の変形例である。モード表示部D20Aの説明において、モード表示部D20と同様の構成については、同様の符号を付すことにより、説明を省略する場合がある。
 モード表示部D20Aは、実行ボタンD23に代えて撮像ボタンD24を備える点において、モード表示部D20とは異なる。ユーザの操作により撮像ボタンD24が押下されると、異常表示システム8に備えられた撮像部は撮像を行い、撮像した画像を入力画像Pとする。
 なお、異常表示システム8は、撮像ボタンD24を備える構成に代えて、例えばアプリケーション起動中に所定の動作をすることにより撮像を行う構成を採用してもよい。
[画像表示部の変形例]
 図23は、実施形態に係る異常表示装置の第2の変形例について説明するための図である。同図を参照しながら、画像表示部D30Aについて説明する。画像表示部D30Aは、画像表示部D30の変形例である。画像表示部D30Aの説明において、画像表示部D30と同様の構成については、同様の符号を付すことにより、説明を省略する場合がある。
 画像表示部D30Aは、正常・異常選択ボタンとして符号D314から符号D316を更に備える点において画像表示部D30とは異なる。正常・異常選択ボタンは、ユーザの操作により、正常又は異常のいずれかが選択される。異常検知部30は、「学習」する際に、正常と選択された画像のみに基づいて学習される。
[異常表示システムのまとめ]
 以上説明した実施形態によれば、異常表示システム8は、開始情報取得部810を備えることにより異常検知を開始するための情報である開始情報ISを取得し、入力画像取得部805を備えることにより入力画像Pを取得し、異常検知部30を備えることにより開始情報ISに基づいて異常検知を実行し、表示部840を備えることにより検知された結果に基づく情報を表示する。異常表示装置80は、開始情報ISを取得してから、異常検知を実行し、その結果を表示するまで、通信ネットワークを介して外部装置と通信を行わなくてもよい。
 したがって本実施形態によれば、異常表示装置80が行う異常検知の処理速度は、通信ネットワークの回線速度や、外部装置の処理速度に依存せず、高速に異常検知をすることができる。また、本実施形態によれば、異常表示装置80は入力画像Pを、通信ネットワークを介して外部装置に転送しないため、秘密情報が漏洩するような事態を抑止することができる。
 ここで、本実施形態によれば、異常検知部30は、推論部10により抽出された特徴マップに基づき学習される。1枚の入力画像Pからは複数の特徴マップが抽出される。例えば、図4に示す一例では、推論部10は9階層を有し、1枚の入力画像Pから、32+16+24+40+80+112+192+320+1280=2096の特徴マップが抽出される。すなわち、1枚の入力画像Pから抽出された大量の特徴マップに基づいて学習されるため、入力画像Pの枚数が少なくても、十分に学習されることができる。異常表示装置80は、例えば、40枚程度の入力画像Pであっても、十分に学習されることができる。
 したがって、異常表示装置80によれば、入力画像Pの収集が困難な現場であっても、異常検知のための学習をすることができる。
 また、本実施形態によれば、入力画像Pの枚数が少なくてもよいため、異常表示装置80は、高速に学習されることができる。
 また、以上説明した実施形態によれば、開始情報ISには、入力画像Pが記憶された場所を示すパスが含まれ、入力画像取得部805は、パスに示される場所に記憶された入力画像Pを取得する。したがって、本実施形態によれば、ユーザは、異常表示装置80を容易に学習させることができる。
 また、以上説明した実施形態によれば、開始情報ISには、撮像部に像を撮像させるための撮像開始信号が含まれ、入力画像取得部805は、撮像部により像が撮像された入力画像Pを取得する。したがって、本実施形態によれば、予め入力画像Pが用意されていなくとも、ユーザは、現場で撮像した画像に基づいて異常表示装置80を学習させることができる。
 また、以上説明した実施形態によれば、入力画像Pを補正する画像補正部807を更に備え、異常検知部30は、画像補正部807により補正された入力画像P’に基づき、異常検知を実行する。したがって、本実施形態によれば、異常表示装置80は、入力画像Pのコントラストが鮮明でない場合等であっても、補正された入力画像P’に基づいて「学習」又は「検査」されることができる。
 また、以上説明した実施形態によれば、補正選択情報取得部806を備えることにより、補正選択情報ISELを取得する。画像補正部807は、取得された補正選択情報ISELに基づき補正処理を実行する。補正選択情報ISELは、ユーザによって選択される情報である。すなわちユーザは、補正の種類を選択することができる。
 よって、本実施形態によれば異常表示装置80は、入力画像Pが鮮明でない場合であっても、画像が鮮明となるように補正された入力画像P’に基づいて、「学習」又は「検査」をすることができる。
 また、以上説明した実施形態によれば、異常検知部30は、所定の正常画像により予め学習されている。したがって、ユーザは容易に異常表示装置80を使用することができる。
 また、異常表示装置80は、精度よく異常検知することができる。
 また、以上説明した実施形態によれば、開始情報ISは、「学習」又は「検査」のいずれかを示す学習実行選択情報を含み、異常検知部30は、開始情報ISに含まれる学習実行選択情報に基づいて、「学習」又は「検査」のいずれかを実行する。
 したがって、異常表示装置80によれば、1つのGUIである表示画面D1により、「学習」又は「検査」の両方を実行することができる。したがって、ユーザは容易に異常表示装置80を使用することができる。
 また、異常検知部30は入力画像から生成される特徴マップを分割し、分割した領域である複数の分割領域に対応して平均値ベクトルと分散に基づいた異常検知を行う。そして、表示部840は当該分割領域ごとに算出された結果と入力画像とを対応付けて表示することにより、入力画像内のいずれの位置に異常が発生しているかをユーザに容易に発見させることができる。その結果、ユーザは入力画像に含まれる異常個所を容易に認識することができる。
 なお、表示画面D1の画面構成は上述した一例に限定されるものではない。例えば、「学習」処理用として、学習対象とする正常画像の選択部、学習パラメータの設定部、学習結果から算出される異常を判定する閾値の表示部を含んでもよい。さらに、「検査」処理用として、異常を判定するための閾値設定部、検査結果の表示設定部、正常または異常等の判定結果の表示部等を設けてもよい。
 なお、上述した実施形態における画像検知システム1及び異常表示システム8が備える各部の機能の全体あるいはその機能の一部は、これらの機能を実現するためのプログラムをコンピュータにより読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
 また、「コンピュータにより読み取り可能な記録媒体」とは、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶部のことをいう。さらに、「コンピュータにより読み取り可能な記録媒体」とは、インターネット等のネットワークを介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
 以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
1…画像検知システム、10…推論部、30…異常検知部、50…撮像装置、60…情報処理装置、310…特徴マップ取得部、320…圧縮部、330…分割部、340…演算部、350…出力部、341…算出部、342…加算部、360…比較部、361…閾値情報記憶部、P…入力画像、R…異常検知結果、90…従来技術による製品検査システム、91…製品搬送ベルト、93…撮像部、94…把持装置、95…画像処理サーバ、98…製品、NW…通信ネットワーク、8…異常表示システム、81…記憶装置、82…入力装置、80…異常表示装置、805…入力画像取得部、806…補正選択情報取得部、807…画像補正部、810…開始情報取得部、820…学習済バックボーン、830…異常検知モデル、840…表示部、831…プリプロセス、832…CNN、833…ポストプロセス、834…学習結果ヘッド、P11…学習用画像、P12…検査用画像、R1…検査結果ヒートマップ画像、R2…検査結果スコア、IS…開始情報、ISEL補正選択情報、D1…表示画面、D10…データセット表示部、D20…モード表示部、D23…実行ボタン、D30…画像表示部、D31…画像表示ボックス、D40…ログ情報表示部

Claims (11)

  1.  入力画像に含まれる像が有する異常を検知する異常検知を開始させるための情報を含む開始情報を取得する開始情報取得部と、
     前記入力画像を取得する入力画像取得部と、
     取得した前記開始情報に基づいて、取得された前記入力画像と、予め記憶された正常画像に基づく情報とを比較することにより、前記異常検知を実行する異常検知部と、
     前記異常検知部により検知された情報に基づいた情報を、前記入力画像に重ねて表示する表示部と
     を備える異常表示装置。
  2.  前記開始情報には、前記入力画像が記憶された場所を示すパスが含まれ、
     前記入力画像取得部は、前記パスに示される場所に記憶された前記入力画像を取得する
     請求項1に記載の異常表示装置。
  3.  前記開始情報には、撮像部に前記像を撮像させるための撮像開始信号が含まれ、
     前記入力画像取得部は、撮像部により前記像が撮像された前記入力画像を取得する
     請求項1に記載の異常表示装置。
  4.  前記入力画像を補正する画像補正部を更に備え、
     前記異常検知部は、前記画像補正部により補正された前記入力画像と、予め記憶された正常画像とを比較することにより、前記異常検知を実行する
     請求項1から請求項3のいずれか一項に記載の異常表示装置。
  5.  前記画像補正部が実行する補正処理の種類を選択する補正選択情報を取得する補正選択情報取得部を更に備える
     請求項4に記載の異常表示装置。
  6.  前記異常検知部は、所定の正常画像により予め学習されている
     請求項1から請求項5のいずれか一項に記載の異常表示装置。
  7.  前記予め記憶された正常画像に基づく情報は、前記正常画像の平均値ベクトルと分散の情報を含み、
     前記異常検知部は前記入力画像が分割された領域である複数の分割領域に対応して異常検知を行い、
     前記表示部は前記異常検知部により検知された情報を、前記分割領域に対応付けて前記入力画像に重ねて表示する
     請求項1から請求項6のいずれか一項に記載の異常表示装置。
  8.  前記開始情報は、前記異常検知部が所定の正常画像に基づいた学習を行うか、前記異常検知を実行するかのうち、いずれかを示す学習実行選択情報を含み、
     前記異常検知部は、前記開始情報に含まれる前記学習実行選択情報に基づいて、前記学習又は前記異常検知のいずれかを実行する
     請求項1から請求項5のいずれか一項に記載の異常表示装置。
  9.  コンピュータに、
     入力画像に含まれる像が有する異常を検知する異常検知を開始させるための情報を含む開始情報を取得する開始情報取得ステップと、
     前記入力画像を取得する入力画像取得ステップと、
     取得した前記開始情報に基づいて、取得された前記入力画像と、予め記憶された正常画像とを比較することにより、前記異常検知を実行する異常検知ステップと、
     前記異常検知ステップにより検知された情報に基づいた情報を、前記入力画像に重ねて表示する表示ステップと
     を実行させる異常表示プログラム。
  10.  前記像を撮像する撮像部と、
     前記撮像部により撮像された前記入力画像の前記異常検知を実行し、実行した結果得られた情報を表示する請求項3に記載の異常表示装置と
     を備える異常表示システム。
  11.  入力画像に含まれる像が有する異常を検知する異常検知を開始させるための情報を含む開始情報を取得する開始情報取得工程と、
     前記入力画像を取得する入力画像取得工程と、
     取得した前記開始情報に基づいて、取得された前記入力画像と、予め記憶された正常画像とを比較することにより、前記異常検知を実行する異常検知工程と、
     前記異常検知工程により検知された情報に基づいた情報を、前記入力画像に重ねて表示する表示工程と
     を有する異常表示方法。
PCT/JP2022/023096 2021-06-29 2022-06-08 異常表示装置、異常表示プログラム、異常表示システム及び異常表示方法 WO2023276595A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023531749A JPWO2023276595A1 (ja) 2021-06-29 2022-06-08

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021108017 2021-06-29
JP2021-108017 2021-06-29

Publications (1)

Publication Number Publication Date
WO2023276595A1 true WO2023276595A1 (ja) 2023-01-05

Family

ID=84692652

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/023096 WO2023276595A1 (ja) 2021-06-29 2022-06-08 異常表示装置、異常表示プログラム、異常表示システム及び異常表示方法

Country Status (2)

Country Link
JP (1) JPWO2023276595A1 (ja)
WO (1) WO2023276595A1 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007132757A (ja) * 2005-11-09 2007-05-31 Osaka City 外観検査方法および同装置
JP2013205071A (ja) * 2012-03-27 2013-10-07 Hioki Ee Corp 外観検査装置及び外観検査方法
JP2018074757A (ja) * 2016-10-28 2018-05-10 株式会社東芝 巡視点検システム、情報処理装置、巡視点検制御プログラム
JP2018084443A (ja) * 2016-11-21 2018-05-31 株式会社リコー 画像処理装置、画像処理システム、画像処理方法、及び画像処理プログラム
JP2019158500A (ja) * 2018-03-12 2019-09-19 オムロン株式会社 外観検査システム、画像処理装置、撮像装置および検査方法
WO2020031984A1 (ja) * 2018-08-08 2020-02-13 Blue Tag株式会社 部品の検査方法及び検査システム
WO2020071162A1 (ja) * 2018-10-01 2020-04-09 株式会社システムスクエア 教師データ生成装置及び教師データ生成プログラム
JP2020091161A (ja) * 2018-12-04 2020-06-11 株式会社ニューフレアテクノロジー 検査装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007132757A (ja) * 2005-11-09 2007-05-31 Osaka City 外観検査方法および同装置
JP2013205071A (ja) * 2012-03-27 2013-10-07 Hioki Ee Corp 外観検査装置及び外観検査方法
JP2018074757A (ja) * 2016-10-28 2018-05-10 株式会社東芝 巡視点検システム、情報処理装置、巡視点検制御プログラム
JP2018084443A (ja) * 2016-11-21 2018-05-31 株式会社リコー 画像処理装置、画像処理システム、画像処理方法、及び画像処理プログラム
JP2019158500A (ja) * 2018-03-12 2019-09-19 オムロン株式会社 外観検査システム、画像処理装置、撮像装置および検査方法
WO2020031984A1 (ja) * 2018-08-08 2020-02-13 Blue Tag株式会社 部品の検査方法及び検査システム
WO2020071162A1 (ja) * 2018-10-01 2020-04-09 株式会社システムスクエア 教師データ生成装置及び教師データ生成プログラム
JP2020091161A (ja) * 2018-12-04 2020-06-11 株式会社ニューフレアテクノロジー 検査装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RYUJI IMAMURA; KOHEI AZUMA; ATSUSHI HANAMOTO; ATSUNORI KANEMURA: "MLF-SC: Incorporating multi-layer features to sparse coding for anomaly detection", ARXIV.ORG, 9 April 2021 (2021-04-09), pages 1 - 5, XP081936654 *

Also Published As

Publication number Publication date
JPWO2023276595A1 (ja) 2023-01-05
TW202303449A (zh) 2023-01-16

Similar Documents

Publication Publication Date Title
CN109829914B (zh) 检测产品缺陷的方法和装置
JPWO2020031984A1 (ja) 部品の検査方法及び検査システム
JP6798619B2 (ja) 情報処理装置、情報処理プログラム及び情報処理方法
CN111815564B (zh) 一种检测丝锭的方法、装置及丝锭分拣***
CN111008961B (zh) 一种输电线路设备缺陷检测方法及其***、设备、介质
Thakur et al. An innovative approach for fruit ripeness classification
US20230222645A1 (en) Inspection apparatus, unit selection apparatus, inspection method, and computer-readable storage medium storing an inspection program
CN112862770A (zh) 一种基于人工智能的缺陷分析诊断***、方法、装置
US20210390282A1 (en) Training data increment method, electronic apparatus and computer-readable medium
TW202242390A (zh) 缺陷檢查裝置、缺陷檢查方法以及製造方法
CN114998290A (zh) 基于有监督模式的织物瑕疵检测方法、装置、设备及介质
CN111652297B (zh) 用于图像检测模型训练的故障图片生成方法
CN111814825B (zh) 基于遗传算法优化支持向量机的苹果检测分级方法及***
KR101905000B1 (ko) 이미지 데이터의 보정 방법, 장치 및 컴퓨터-판독가능 저장 매체에 저장된 컴퓨터 프로그램
CN115272350A (zh) 一种计算机pcb主板生产质量检测方法
CN113781511B (zh) 传送带边缘磨损检测方法、装置、计算机设备及存储介质
WO2020175666A1 (ja) カラーフィルタ検査装置、検査装置、カラーフィルタ検査方法および検査方法
CN117522869A (zh) 图像处理方法和缺陷检测方法、***、电子设备
WO2023276595A1 (ja) 異常表示装置、異常表示プログラム、異常表示システム及び異常表示方法
JP4649498B2 (ja) 画像データの色補正方法及びシステム
JP2023005822A (ja) 異常検知プログラム、異常検知装置、異常検知システム及び異常検知方法
JP7404817B2 (ja) 学習装置、検出装置、学習方法、及び学習プログラム
TWI844868B (zh) 異常顯示裝置、異常顯示程式、異常顯示系統及異常顯示方法
US11651602B1 (en) Machine learning classification based on separate processing of multiple views
CN114937042A (zh) 基于机器视觉的塑料制品质量评估方法

Legal Events

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

Ref document number: 22832752

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023531749

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22832752

Country of ref document: EP

Kind code of ref document: A1