WO2022185494A1 - 異常検出プログラム、異常検出方法、および情報処理装置 - Google Patents

異常検出プログラム、異常検出方法、および情報処理装置 Download PDF

Info

Publication number
WO2022185494A1
WO2022185494A1 PCT/JP2021/008533 JP2021008533W WO2022185494A1 WO 2022185494 A1 WO2022185494 A1 WO 2022185494A1 JP 2021008533 W JP2021008533 W JP 2021008533W WO 2022185494 A1 WO2022185494 A1 WO 2022185494A1
Authority
WO
WIPO (PCT)
Prior art keywords
map
size
division
image
abnormal
Prior art date
Application number
PCT/JP2021/008533
Other languages
English (en)
French (fr)
Inventor
和也 米澤
拓郎 池田
Original Assignee
富士通株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士通株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2021/008533 priority Critical patent/WO2022185494A1/ja
Publication of WO2022185494A1 publication Critical patent/WO2022185494A1/ja

Links

Images

Classifications

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

Definitions

  • the present invention relates to an anomaly detection program, an anomaly detection method, and an information processing apparatus.
  • an autoencoder autoencoder: AE
  • GAN Geneative Adversarial Networks
  • AnoGAN AnoGAN
  • Patent Documents 1 to 4 techniques related to image inspection are known (for example, Patent Documents 1 to 4).
  • the anomaly detection accuracy may decrease.
  • the present invention aims to improve the detection accuracy of anomalies.
  • An information processing apparatus is a learned apparatus that reproduces an input image in an output image and is trained such that the reproduction accuracy of the input image is reduced in the output image in a region where an abnormality is captured.
  • a generating unit for generating a map of an abnormal region based on a difference between an input image and an output image of a model, wherein an image is input to a trained model with a plurality of different division sizes, and a map of the abnormal region corresponding to the division size and a selection map corresponding to each of the plurality of division sizes by selecting an abnormal region having a size equal to or larger than the threshold value according to the division size from the map of the abnormal region corresponding to each of the plurality of division sizes. and an integration unit that preferentially selects and integrates an abnormal region included in the sorting map corresponding to each of the plurality of split sizes, from the sorting map corresponding to the larger split size. .
  • the accuracy of anomaly detection is improved.
  • FIG. 1 is a diagram illustrating an anomaly detection system according to an embodiment
  • FIG. 1 is a diagram illustrating a functional block configuration of an information processing device according to an embodiment
  • FIG. 11 illustrates detection of anomalous regions according to an exemplary split size
  • FIG. 10 is a diagram illustrating a decrease in detection accuracy of an abnormal region that occurs when the division size is small
  • It is a figure which illustrates the flow of the detection process of the abnormal area
  • FIG. 7 is a diagram illustrating an operation flow of abnormal area map generation processing according to the embodiment
  • FIG. 5 is a diagram illustrating selection of an abnormal region in a map; It is a figure which illustrates selection of the abnormal area
  • FIG. 10 is a diagram illustrating selection of an abnormal region using a threshold when the division size is 3 or more according to the embodiment;
  • FIG. 10 is a diagram illustrating integration of abnormal regions of a plurality of maps generated for each division size when the division size is 3 or more;
  • FIG. 10 is a diagram illustrating threshold information when the division size is 3 or more; It is a figure which illustrates the hardware constitutions of the computer for implement
  • FIG. 1 is a diagram illustrating abnormality detection using an autoencoder.
  • An autoencoder is an algorithm that, for example, once compresses input data by reducing dimensions, leaves only important feature amounts, and then restores the data to the original dimensions. Then, for example, by learning an autoencoder using normal data, an abnormality in a target object can be detected using the obtained autoencoder.
  • the target object may be, for example, an object whose abnormality is to be detected, and may include articles, cloth, parts, clothing, processed products, moldings, and the like.
  • anomalies may include, for example, damage, scratches, presence of adherents, shape anomalies, discoloration, and the like of the object.
  • an abnormality in an object is detected from an image of the object.
  • an image showing a normal object without an abnormality is prepared as teacher data, and the normal data is used to train the neural network of the autoencoder to obtain a trained model.
  • the learned model of the autoencoder that has been learned in this way can correctly reproduce and output images of normal objects that do not include anomalies.
  • the object in the image contains an anomaly, the anomaly cannot be reproduced correctly by reconstructing the region with the anomaly with a trained model trained on normal images that do not contain an anomaly. As a result, the reproducibility of the abnormal region is reduced.
  • the difference in the region containing the abnormality becomes large. Then, for example, by specifying an area with a large difference as an abnormal area and generating a map of the abnormal area, it can be used for abnormality detection.
  • the input image is normalized to a predetermined size and input. Therefore, when an image to be detected as an abnormality detection target has a high resolution, if the image is input as it is, it may be compressed too much due to normalization, and abnormality detection may not be successful. Therefore, to prevent the image from being over-compressed, it is often done to split the image before input.
  • the division size is, for example, the size of the image after division.
  • the output image when reconstructing an image with an autoencoder, it is difficult for the output image to perfectly match the input image even in normal regions. Abnormal regions can occur. If the size of the anomaly is close to the size of the noise anomaly region, it may be difficult to distinguish between the anomaly-indicating anomaly region and the noise anomaly region. As a result, the anomaly detection accuracy is reduced. Sometimes. Alternatively, in another example, the division size may be too small to correctly detect an abnormal region.
  • an image to be detected as an anomaly is divided into a plurality of division sizes and input to a trained model to generate a map of an anomaly region. Then, in the embodiment, a map is generated by selecting an abnormal region from the generated map using a threshold corresponding to the division size. In addition, below, the map which selected this abnormal area may be called a selection map. Furthermore, in the embodiment, an abnormal region is selected according to the division size from among the abnormal regions of the sorting map generated for each division size. As a result, the abnormality detection accuracy can be improved. Embodiments will be described in more detail below.
  • FIG. 2 is a diagram illustrating an anomaly detection system 200 according to the embodiment.
  • the anomaly detection system 200 includes, for example, an information processing device 201 and an imaging device 202 .
  • the information processing apparatus 201 may be connected to the image capturing apparatus 202 via, for example, wired communication, wireless communication, or a communication network, and acquire image data captured by the image capturing apparatus 202 .
  • the information processing apparatus 201 may acquire image data captured by the image capturing apparatus 202 via another apparatus, for example.
  • the information processing device 201 is, for example, a computer such as a server computer, a personal computer (PC), a mobile PC, or a tablet terminal.
  • a computer such as a server computer, a personal computer (PC), a mobile PC, or a tablet terminal.
  • the photographing device 202 is, for example, a photographing device such as a camera.
  • the image capturing device 202 captures, for example, an object whose abnormality is to be detected, and generates an image showing the object.
  • the image of the object captured by the imaging device 202 may be used as an image for abnormality detection in the information processing device 201, for example.
  • the information processing apparatus 201 acquires an abnormality detection target image from the image capturing apparatus 202, executes processing for detecting an abnormality in the abnormality detection target image, and detects an abnormality included in the object captured in the image. .
  • FIG. 2 shows an example in which the abnormality detection system 200 includes the information processing device 201 and the imaging device 202
  • the embodiment is not limited to this.
  • the imaging device 202 and the information processing device 201 may be one integrated device.
  • FIG. 3 is a diagram illustrating the functional block configuration of the information processing device 201 according to the embodiment.
  • the information processing device 201 includes a control unit 301, a storage unit 302, and a communication unit 303, for example.
  • the control unit 301 includes, for example, a generation unit 311, a selection unit 312, and an integration unit 313, and may include other functional units.
  • the storage unit 302 of the information processing apparatus 201 stores information such as an image to be detected as an anomaly, threshold information 700 and 1400, a map 900, a sorting map 910, and a map 1000, which will be described later.
  • the communication unit 303 communicates with other devices such as the imaging device 202 according to instructions from the control unit 301, for example. Details of these units and details of information stored in the storage unit 302 will be described later.
  • an anomalous area may not be detected correctly.
  • FIG. 4 is a diagram showing detection of an abnormal region according to an exemplary division size.
  • the image targeted for anomaly detection includes a plurality of anomalies 401 of different sizes.
  • FIG. 4A exemplifies abnormality detection when an image is divided into a small number of divisions and the division size is large.
  • FIG. 4B illustrates an example of abnormality detection when the input image is divided into a large number of divisions and the division size is small.
  • an image is divided into four, each of the four divided images is input to an autoencoder as an input image, and a reconstructed output image is generated.
  • the difference between the divided image used as the input image and the reconstructed output image is shown as a map.
  • the map shows regions where the difference between the input image and the output image is large as abnormal regions 402 . Since noise can occur independently of the abnormality 401, the map includes an abnormal region 402 corresponding to the abnormality 401 appearing in the image of the abnormality detection target, and an abnormal region 402 generated as noise.
  • FIG. 4(a) two large-sized anomalies 401 and two small-sized anomalies 401 are shown in the image targeted for anomaly detection.
  • the map there are two large-sized abnormal regions 402, which match the actual abnormalities 401 in number and shape. more than the number of In this case, in the map of FIG. 4A, the size of the generated noise has a size similar to that of the small size abnormality 401 appearing in the image of the abnormality detection target. It is difficult to distinguish between abnormalities.
  • the features of the abnormality 401 will be lost in the normalization compression of the image when it is input to a neural network such as an autoencoder, and the abnormal region 402 corresponding to the abnormality 401 will disappear in the map.
  • a neural network such as an autoencoder
  • the abnormal region 402 corresponding to the abnormality 401 will disappear in the map.
  • FIG. 4A two small abnormalities 401 are shown in the image of the abnormality detection target, but there is no abnormal area 402 corresponding to the abnormality 401 on the right side of the map, and they have disappeared.
  • the size of the noise can depend, for example, on the size of the input image input to a neural network such as an autoencoder and the texture of the input image, and the noise size tends to increase as the size of the input image increases.
  • the abnormality may not be detected correctly.
  • FIG. 4(b) illustrates anomaly detection when the division size is reduced.
  • the image is divided into 56 segments, and each of the 56 segmented images is input to an autoencoder as an input image to produce a reconstructed output image.
  • the difference between the divided image used as the input image and the reconstructed output image is shown as a map.
  • the magnitude of the noise is smaller than in the map of FIG. 4(a).
  • the abnormal area 402 is identifiable. Also, an abnormal region 402 corresponding to the abnormality 401 that has disappeared in the map of FIG. 4(a) has been detected in the map of FIG. 4(b).
  • FIG. 5 is a diagram illustrating a decrease in detection accuracy of the abnormal region 402 that occurs when the division size is small.
  • FIG. 5 shows divided images obtained by dividing an abnormality detection target image 500 obtained by photographing an object into 36 parts. Also, in the image 500 targeted for abnormality detection, an abnormality in which a droplet 510 adheres to the surface of the object is shown. In this case, it is assumed that the area in which the droplet 510 is captured is to be detected as an abnormal area.
  • the texture of the image may resemble that of a normal area, and the difference between the input image and the output image of the autoencoder may become small.
  • the control unit 301 can reconstruct the divided image 501 and the corresponding output image with high accuracy. The difference from the output image becomes smaller.
  • the divided image 503 contains an abnormality, and the abnormality affects the texture in the divided image 503 as well. Therefore, when the divided image 503 is used as the input image, the reconstruction accuracy of the divided image 503 is lowered, and the difference between the input image and the output image becomes large. As a result, it is possible to detect an abnormal area in the divided image 503 in the map as an abnormal area.
  • the split image 502 is in an area showing an abnormality, but the texture of the split image 502 is similar to that of the normal split image 501 . Therefore, when the divided image 502 is used as an input image, the control unit 301 can reconstruct the divided image 502 with high accuracy, and even though the difference between the input image and the output image is an abnormal area, It gets smaller. As a result, the area corresponding to the divided image 502 on the map is no longer detected as an abnormal area.
  • FIG. 5(b) is a diagram illustrating a map corresponding to FIG. 5(a). As shown in FIG. 5B, the area corresponding to the divided image 502 is no longer detected as an abnormal area, although it is located inside the droplet 510 .
  • anomalies that can occur in an object include multiple different sizes
  • the division size is suitable for detecting some anomalies, it is difficult to detect other anomalies. Inappropriate split size may occur. Even if a uniform input image size is applied to abnormalities of a plurality of sizes, it may be difficult to correctly detect an abnormal region. Therefore, for example, it is conceivable to apply a plurality of division sizes to an image that is an abnormality detection target and generate a map for each division size. In this case, it is desired to provide a technology capable of appropriately integrating abnormal regions included in multiple maps generated for each division size.
  • FIG. 6 is a diagram illustrating the flow of abnormal area detection processing according to the embodiment.
  • the control unit 301 divides the image for abnormality detection into a plurality of division sizes.
  • FIG. 6A shows an example in which an image to be detected as an abnormality is divided into large division sizes.
  • FIG. 6B shows an example in which an image to be detected as an abnormality is divided into small division sizes.
  • control unit 301 generates an output image reconstructed using an autoencoder or the like for each divided image, and generates a map based on the difference between the divided image and the output image.
  • control unit 301 may generate a map of an abnormal area by regarding an area in which the difference between the divided image and the output image is equal to or greater than a predetermined value as an abnormal area.
  • control unit 301 generates a sorting map in which abnormal regions with a size smaller than the threshold are screened out from the map based on the threshold set for each division size, and abnormal regions with a size equal to or larger than the threshold are selected.
  • the control unit 301 removes regions having a size smaller than the first threshold among the abnormal regions included in the map, and selects abnormal regions having a size equal to or larger than the first threshold. Generate a map.
  • the first threshold value may be set to a value larger than the noise generated in the map, thereby removing the noise generated in the map.
  • control unit 301 removes regions of size less than the second threshold from among the abnormal regions included in the map, and selects abnormal regions of size greater than or equal to the second threshold.
  • the second threshold may be set to a value larger than the noise generated in the map, thereby removing the noise generated in the map.
  • the second threshold may be set to a value smaller than the first threshold.
  • the control unit 301 integrates the abnormal regions included in the plurality of screening maps generated for each division size. For example, among a plurality of sorting maps, an abnormal region of a sorting map generated with a certain division size overlaps an abnormal region of a sorting map generated with another division size when the sorting maps are superimposed.
  • the control unit 301 may preferentially select the abnormal region of the screening map having the larger division size among the abnormal regions having overlapping regions, and use it to generate the integrated map.
  • the control unit 301 may discard the abnormal area having the smaller division size among the abnormal areas having overlapping areas, and may not include it in the integrated map.
  • abnormal regions corresponding to large-sized abnormalities are selected from the sorting map with the larger division size in FIG. 6(a). For example, if the size of the abnormality is large and the division size is reduced, the shape of the abnormal region may not correspond to the actual shape of the abnormality, as illustrated in FIG. Therefore, for example, when an abnormal region is specified in both the sorting map with the larger division size and the sorting map with the smaller division size, the control unit 301 changes the division size as shown in FIG.
  • the larger anomalous region is preferentially selected and used for the integrated map. As a result, it is possible to improve the detection accuracy of large-sized anomalies.
  • the sifting using the first threshold can remove noise as well as small-sized abnormal regions that are difficult to distinguish from noise.
  • the control unit 301 can acquire an abnormal region corresponding to a small-sized abnormality from the map with the smaller division size.
  • an abnormal region corresponding to a small-sized abnormality that was difficult to identify due to its close size to noise is shown in FIG. 6(b). Therefore, identification is possible.
  • small-sized anomalies and corresponding anomalous regions can be identified and placed in the integrated map.
  • an abnormal region corresponding to an abnormality with high accuracy even when an image targeted for abnormality detection includes abnormalities of a plurality of different sizes.
  • map generation processing according to the embodiment will be described.
  • FIG. 7 is a diagram illustrating threshold information 700 according to the embodiment.
  • a threshold used for screening abnormal regions is registered in association with a division size.
  • FIG. 8 is a diagram illustrating an operational flow of map generation processing according to the embodiment.
  • the control unit 301 may start the operation flow of FIG. 8 when an instruction to execute map generation processing is input.
  • the control unit 301 selects a division size from among a plurality of different division sizes.
  • the division size may be set in advance.
  • the control unit 301 may select an unselected division size from the division sizes registered in the threshold information 700 .
  • control unit 301 divides the abnormality detection target image into the selected division size to generate a plurality of divided images.
  • control unit 301 uses each of the plurality of obtained divided images as an input image, inputs them to an autoencoder-based neural network, and generates an output image by reconstructing the input image.
  • the autoencoder-based neural network may include, for example, an autoencoder, a VAE (Variational Autoencoder), a U-Net, and the like.
  • the control unit 301 For each of the plurality of divided images, the control unit 301 generates a map corresponding to the divided image based on the difference between the divided image used as the input image and the output image.
  • the difference between the input image and the output image may be represented by, for example, a value called an anomaly score.
  • the control unit 301 may generate a map based on the anomaly score.
  • control unit 301 combines the maps generated for each of the plurality of divided images so that the positions of the abnormality detection target image before division correspond to each other, and generates a map corresponding to the abnormality detection target image.
  • the control unit 301 binarizes the generated image for abnormality detection and the corresponding map. For example, the control unit 301 may binarize the abnormality score of each pixel of the map depending on whether the abnormality score of each pixel of the map is equal to or greater than a preset predetermined value. In one example, the control unit 301 may binarize pixels with an abnormality score equal to or greater than a predetermined value into black, and pixels with an abnormality score of less than a predetermined value into white.
  • control unit 301 processes the binarized map with an image filter to reduce noise.
  • control unit 301 may process the binarized map with an image filter for noise reduction such as expansion/contraction, opening, and closing to reduce noise.
  • the control unit 301 labels the abnormal areas included in the map.
  • the abnormal region may be, for example, a region formed of pixels binarized to black in the map.
  • the control unit 301 may assign identifiers such as serial numbers to the abnormal areas in order, label the abnormal areas, and register the abnormal areas in the map 900 .
  • FIG. 9 is a diagram exemplifying selection of abnormal regions in the map 900 corresponding to the division size: large.
  • the map 900 registers records that associate assigned labels with abnormal regions identified by the labels. Information indicating the position and range of the abnormal area on the map may be registered in the abnormal area of the map 900, for example.
  • the anomalous regions of map 900 may register the locations in the map of pixels included in the anomalous regions identified by the label of the record.
  • the control unit 301 screens and selects the abnormal regions using the division size and the corresponding threshold to generate a selection map. For example, if the division size is large, the control unit 301 acquires the first threshold corresponding to the division size: large from the threshold information 700 . Then, the control unit 301 selects records of an abnormal region having a region size equal to or larger than the obtained first threshold among the records registered in the map 900 to generate a selection map 910 .
  • the first threshold may be a threshold set for the area of the abnormal region, the number of pixels, or the like. In another example, the first threshold may be set for a predetermined axial length of the abnormal region or other value representing the size of the abnormal region, such as the maximum width.
  • FIG. 9(b) illustrates sorting by sifting abnormal regions using the first threshold.
  • the control unit 301 may determine whether the size of the abnormal region registered in the map 900 is equal to or larger than the first threshold.
  • the records in which the size of the abnormal region is less than the first threshold are shaded.
  • the control unit 301 deletes, for example, records in which the size of the abnormal region is less than the first threshold from the map 900, and generates a sorting map 910 as shown in FIG. 9(c).
  • the sorting map 910 records whose size of the abnormal region is equal to or larger than the first threshold are sorted out.
  • control unit 301 can generate or draw the map of the abnormal region illustrated in FIG.
  • control unit 301 determines whether or not the image targeted for abnormality detection has been processed with all preset division sizes. If there is an unprocessed split size (NO in S810), the flow returns to S801 to repeat the process with an unselected split size. On the other hand, if the processing for all division sizes has been completed (YES in S810), the flow advances to S811.
  • control unit 301 integrates the abnormal area sorting maps so that abnormal areas are selected with priority given to the larger division size, and this operation flow ends.
  • FIG. 10 is a diagram illustrating selection of an abnormal region according to the embodiment.
  • FIG. 10(a) shows a sorting map 910 including an abnormal region detected with a division size of large having a size equal to or larger than the first threshold.
  • FIG. 10(b) shows a sorting map 910 including abnormal regions detected in the divided size having a size equal to or larger than the second threshold smaller than the first threshold.
  • the control unit 301 selects the abnormal region with the larger division size. For example, the abnormal area identified by the label A001 in FIG. 10A and the abnormal areas identified by the labels: B001 and B013 in FIG. Suppose we have In this case, the control unit 301 may select an abnormal region A001 corresponding to a larger division size, ie, large division size, and add the selected abnormal region to the integrated map 1000 . Also, in this case, the abnormal regions of B001 and B013 in the smaller division size: medium may not be registered in the integrated map 1000, and may be discarded in one example.
  • the control section 301 may register the abnormal region in the integrated map 1000 .
  • the abnormal regions identified by the labels B018 and B033 in FIG. 10(b) do not overlap with the abnormal regions registered in the classification map 910 of division size: large in FIG. 10(a). Therefore, the control unit 301 may add the abnormal regions of B018 and B033 to the integrated map 1000 of FIG. 10(c).
  • the control unit 301 selects and converts the abnormal regions of the maps obtained with a plurality of division sizes so that the actual abnormal locations are reflected with high accuracy. It can be integrated to generate a map of the anomalous region. Therefore, according to the embodiment, the abnormality detection accuracy is improved.
  • FIG. 11 is a diagram illustrating an example of selection and integration of abnormal regions in a map according to the embodiment.
  • FIG. 11(a) illustrates selection of an abnormal region using a threshold for region size.
  • a threshold for region size For example, it is assumed that a large-sized anomaly and a medium-sized anomaly are found in an image targeted for anomaly detection. In this case, the larger the division size, the larger the noise size. Therefore, for example, when the division size is large, an abnormal region corresponding to a large-sized anomaly can be distinguished from noise, but an abnormal region corresponding to a medium-sized anomaly can be distinguished from noise in terms of size. can be difficult. In this case, for example, as shown in FIG. 11( a ), by setting the first threshold to remove noise, noise and medium-sized abnormal regions close in size to noise are removed, Abnormal regions of large size distinguishable from noise can be sorted out.
  • the division size is large, the texture of the anomalies appearing in the input image may be crushed during compression when inputting to the neural network, and relatively small anomalies may not be detected as anomalous regions.
  • FIG. 11(a) if the division size is large, there is a possibility that a part of the abnormality within the size has disappeared without being detected as an abnormal area. In this way, when the division size is large, there is a possibility that detection of an abnormal region corresponding to an abnormality in the size will be imperfect.
  • the control unit 301 removes an abnormal area smaller than the first threshold, thereby removing an abnormal area of a medium size that is difficult to detect when the division size is large.
  • the division size when the division size is small, the division size is smaller than when the division size is large, so the noise size tends to be smaller accordingly. Therefore, when the division size is small, it is possible to identify abnormal regions corresponding to medium-sized abnormalities as noise. Then, for example, as shown in FIG. 11A, by setting the second threshold so as to remove small-sized noise, the noise is removed while leaving the abnormal region corresponding to the medium-sized abnormality. be able to.
  • hatching indicates abnormal regions and noise that are removed by sifting using a threshold.
  • FIG. 11(b) shows an example of integrating maps by preferentially selecting the abnormal region of the map with the larger division size.
  • the maps are integrated with priority given to the abnormal region with the larger division size. For example, in FIG. 11(b), regarding large-sized abnormalities, an abnormal region with a large division size is preferentially selected.
  • FIGS. 10 and 11 described above the case where there are two division sizes, large and small, is described as an example, but the embodiment is not limited to this. For example, even when the division size is 3 or more, the map can be generated with high accuracy by applying the embodiment.
  • FIG. 12 is a diagram illustrating selection of an abnormal region using a threshold when the division size is 3 or more according to the embodiment.
  • the first to third division sizes are exemplified as division sizes, where the first division size is larger than the second division size, and the second division size is , is larger than the third division size.
  • Four sizes A to D are also shown for the sizes of anomalies and noises, where size A is larger than size B, size B is larger than size C, and size C is larger than size be greater than D.
  • the control unit 301 leaves the abnormal region of size A and removes the noise can be removed.
  • the object includes an anomaly of size B and an anomaly of size C, which is smaller than size B, for example.
  • anomalous regions corresponding to size B anomalies and size C anomalies are, for example, difficult to distinguish from size B noise or disappear due to compression at the input to the autoencoder. Sometimes I feel relaxed.
  • the control unit 301 can remove, together with noise, abnormal regions corresponding to abnormalities that are difficult to detect with high accuracy by filtering out abnormal regions that are less than the first threshold. Then, with the first division size, an abnormal region corresponding to an abnormality of size A that can be detected with high accuracy can be sorted out.
  • the control unit 301 leaves abnormal regions of size A and size B. can be used to remove noise.
  • the object includes anomalies of size C in addition to anomalies of size A and B, for example.
  • the anomaly region corresponding to the anomaly of size C may be difficult to distinguish from noise of size C, or may disappear due to compression during input to the autoencoder. Therefore, with the second division size, for example, it is difficult to identify an abnormal region corresponding to an abnormality of size C with high accuracy.
  • control unit 301 can remove an abnormal region corresponding to an abnormality of size C, which is difficult to detect with high accuracy, together with noise by sieving and removing an abnormal region that is less than the second threshold. Then, with the second division size, for example, the abnormal regions corresponding to the size A and size B abnormalities can be sorted out.
  • the third threshold is set so as to remove noise of size D included in the map in the third division size.
  • the control unit 301 can remove noise of size D or less while leaving abnormal regions corresponding to abnormalities of size A, size B, and size C.
  • thresholds are set so that noise occurring at the division size can be removed.
  • the control unit 301 can remove noise and abnormal regions corresponding to abnormalities that are difficult to distinguish from noise or disappear.
  • FIG. 13 is a diagram illustrating selection of an abnormal region from a plurality of maps generated for each division size when the division size is 3 or more.
  • an abnormal region detected in a map of a certain division size is an abnormal region detected in a map of another division size. and an abnormal region with region overlap.
  • the control unit 301 preferentially selects an abnormal area detected with a larger division size among abnormal areas having overlapping areas.
  • an abnormal region corresponding to an abnormality of size A can be detected with high accuracy.
  • an abnormality of size B it is assumed that the abnormal region can be detected with high accuracy in the second division size.
  • the division size is too small, and an abnormality of size B may result in an inaccurate shape of the abnormal region.
  • anomalies of size B are difficult to distinguish from noise in the first division size, and are removed by sieving using the first threshold.
  • priority is given to anomalous regions detected with the second division size.
  • an abnormal region corresponding to an abnormality of size B can be detected with high accuracy.
  • an abnormal region corresponding to an abnormality of size C can be detected with high accuracy.
  • control unit 301 may use the threshold information 1400 of FIG. 14 instead of the threshold information 700 of FIG. 7 in the operation flow of FIG. 8, for example.
  • FIG. 14 is a diagram illustrating threshold information 1400 when the division size is 3 or more. As shown in FIG. 14, the threshold information 1400 registers, for example, a threshold used for sifting out abnormal regions in association with each division size.
  • the division sizes and thresholds registered in the threshold information 700 and the threshold information 1400 can be set in advance based on empirical rules, for example.
  • the control unit 301 generates a map with each division size for an image showing a normal object that does not include anomalies, thereby specifying the size of noise appearing in the map according to the division size. can be done.
  • the control unit 301 may set a threshold based on the size of noise that appears according to the division size, and register it in the threshold information 700 or the threshold information 1400 .
  • the control unit 301 may set a threshold larger than the maximum size of noise that appears in the division size and register it in the threshold information 700 or the threshold information 1400 so that noise that appears in the division size can be removed.
  • the control unit 301 may set the threshold to a value smaller than the abnormality size of the group to be detected in the division size, and register the threshold in the threshold information 700 or the threshold information 1400 . Also, the control unit 301 may determine a plurality of division sizes based on the distribution of sizes of abnormalities appearing on the object, and register them in the threshold information 700 or the threshold information 1400 .
  • control unit 301 sets the division size and the threshold is described, but in another embodiment, a person manually registers the division size and the threshold in the threshold information 700 or the threshold information 1400. may
  • the embodiment is not limited to this.
  • the operational flow described above is an example, and embodiments are not limited thereto.
  • the operation flow may be executed by changing the order of the processes, may include additional processes, or may omit some of the processes.
  • the processes of S806 and S807 of FIG. 8 may be performed in different orders.
  • the control unit 301 may process the abnormal score with a Gaussian filter to reduce noise before the binarization process of S806. may be executed.
  • an autoencoder-based neural network trained only with normal data is used as an example of a trained model used for anomaly detection.
  • the trained model that can be used for abnormality detection in the embodiment is not limited to this.
  • other trained models may be used as long as they are trained models in which the accuracy of reproducing an input image is reduced in an output image in an area where an abnormality appears.
  • a GAN-based neural network such as AnoGAN may be used instead of an autoencoder-based neural network.
  • control unit 301 operates as the generation unit 311 in the processes from S801 to S808. Further, for example, in the process of S809, the control unit 301 operates as the selection unit 312. For example, in the process of S ⁇ b>811 , the control unit 301 operates as the integration unit 313 .
  • FIG. 15 is a diagram illustrating the hardware configuration of a computer 1500 for realizing the information processing apparatus 201 according to the embodiment.
  • a hardware configuration for realizing the information processing apparatus 201 of FIG. 15 includes, for example, a processor 1501, a memory 1502, a storage device 1503, a reading device 1504, a communication interface 1506, and an input/output interface 1507. Note that the processor 1501, memory 1502, storage device 1503, reader 1504, communication interface 1506, and input/output interface 1507 are connected to each other via a bus 1508, for example.
  • the processor 1501 may be, for example, a single processor, a multiprocessor, or a multicore.
  • the processor 1501 uses the memory 1502 to provide a part or all of the functions of the control unit 301 described above, for example, by executing a program describing the procedure of the operation flow described above.
  • the processor 1501 of the information processing device 201 reads out and executes programs stored in the storage device 1503 to operate as the generation unit 311 , the selection unit 312 , and the integration unit 313 .
  • the memory 1502 is, for example, a semiconductor memory, and may include a RAM area and a ROM area.
  • the storage device 1503 is, for example, a hard disk, a semiconductor memory such as a flash memory, or an external storage device. Note that RAM is an abbreviation for Random Access Memory. Also, ROM is an abbreviation for Read Only Memory.
  • the reading device 1504 accesses the removable storage medium 1505 according to instructions from the processor 1501 .
  • the removable storage medium 1505 is implemented by, for example, a semiconductor device, a medium for inputting/outputting information by magnetic action, a medium for inputting/outputting information by optical action, or the like.
  • the semiconductor device is, for example, a USB (Universal Serial Bus) memory.
  • a medium for inputting and outputting information by magnetic action is, for example, a magnetic disk.
  • Media for inputting and outputting information by optical action are, for example, CD-ROM, DVD, Blu-ray Disc, etc. (Blu-ray is a registered trademark).
  • CD is an abbreviation for Compact Disc.
  • DVD is an abbreviation for Digital Versatile Disk.
  • the storage unit 302 includes a memory 1502, a storage device 1503, and a removable storage medium 1505, for example.
  • the storage device 1503 of the information processing apparatus 201 may store an image of an abnormality detection target, threshold information 700 and 1400, a map 900, a selection map 910, and a map 1000.
  • FIG. 1 A block diagram illustrating an abnormality detection target.
  • the communication interface 1506 communicates with other devices such as the imaging device 202 according to instructions from the processor 1501, for example.
  • Communication interface 1506 is an example of communication unit 303 described above.
  • the input/output interface 1507 may be, for example, an interface between an input device and an output device.
  • the input device is, for example, a device such as a keyboard, mouse, or touch panel that receives instructions from the user.
  • the output device is, for example, a display device such as a display and an audio device such as a speaker.
  • Each program according to the embodiment is provided to the information processing apparatus 201 in the following form, for example.
  • (1) Pre-installed in the storage device 1503 .
  • (2) provided by removable storage medium 1505;
  • (3) provided by a server such as a program server;
  • the hardware configuration of the computer 1500 for realizing the information processing apparatus 201 described with reference to FIG. 15 is an example, and the embodiment is not limited to this.
  • some of the configurations described above may be deleted, and new configurations may be added.
  • some or all of the functions of the control unit 301 described above may be implemented as hardware such as FPGA, SoC, ASIC, and PLD.
  • FPGA is an abbreviation for Field Programmable Gate Array.
  • SoC is an abbreviation for System-on-a-chip.
  • ASIC is an abbreviation for Application Specific Integrated Circuit.
  • PLD is an abbreviation for Programmable Logic Device.
  • abnormality detection system 201 information processing device 202 imaging device 301 control unit 302 storage unit 303 communication unit 311 generation unit 312 selection unit 313 integration unit 401 abnormality 402 abnormal region 500 image 501 divided image 502 divided image 503 divided image 510 droplet 700 threshold information 900 map 910 sorting map 1000 map 1400 threshold information 1500 computer 1501 processor 1502 memory 1503 storage device 1504 reader 1505 removable storage medium 1506 communication interface 1507 input/output interface 1508 bus

Abstract

一態様の情報処理装置は、入力画像を出力画像で再現するように、且つ、異常が写る領域では入力画像の再現精度が出力画像において低下するように学習が行われた学習済みモデルの入力画像と出力画像との差に基づいて異常領域のマップを生成する生成部であって、学習済みモデルに画像を異なる複数の分割サイズで入力し、分割サイズと対応する異常領域のマップを生成する生成部と、複数の分割サイズのそれぞれと対応する異常領域のマップから、分割サイズに応じた閾値以上のサイズの異常領域を選別して、複数の分割サイズのそれぞれと対応する選別マップを生成する選別部と、複数の分割サイズのそれぞれと対応する選別マップを、分割サイズの大きい方と対応する選別マップに含まれる異常領域を優先的に選択して統合する統合部と、を含む。

Description

異常検出プログラム、異常検出方法、および情報処理装置
 本発明は、異常検出プログラム、異常検出方法、および情報処理装置に関する。
 近年、外観検査では、ディープラーニングを用いる画像処理技術の導入が進んでいる。ディープラーニンを用いる外観検査手法として、正常データのみを用いて学習可能な方式がある。検査の現場において、異常なデータの数が正常データよりも極端に少ないことがしばしばあり、こうした現場では正常データのみを用いて学習可能な方式は有用である。
 例として、正常データのみで学習を行ったオートエンコーダ(自己符号化器:AE:Autoencoder)などのニューラルネットワークを利用して、再構成誤差を異常とする技術がある。他にもAnoGANなどのGAN(Generative Adversarial Networks)ベースの異常検出技術も知られている。
 また、画像検査に関連する技術が知られている(例えば、特許文献1から特許文献4)。
特開2020-032190号公報 国際公開第2020/100630号 米国特許第5331550号明細書 米国特許出願公開第2019/0213727号明細書
 しかしながら、例えば、オートエンコーダなどを用いて対象物における異常を検出する場合に、対象物に様々なサイズの異常が含まれると、異常の検出精度が低下してしまうことがある。
 1つの側面では、本発明は、異常の検出精度を向上させることを目的とする。
 本発明の一つの態様の情報処理装置は、入力画像を出力画像で再現するように、且つ、異常が写る領域では入力画像の再現精度が出力画像において低下するように学習が行われた学習済みモデルの入力画像と出力画像との差に基づいて異常領域のマップを生成する生成部であって、学習済みモデルに画像を異なる複数の分割サイズで入力し、分割サイズと対応する異常領域のマップを生成する生成部と、複数の分割サイズのそれぞれと対応する異常領域のマップから、分割サイズに応じた閾値以上のサイズの異常領域を選別して、複数の分割サイズのそれぞれと対応する選別マップを生成する選別部と、複数の分割サイズのそれぞれと対応する選別マップを、分割サイズの大きい方と対応する選別マップに含まれる異常領域を優先的に選択して統合する統合部と、を含む。
 異常の検出精度が向上する。
オートエンコーダを用いた異常検出について例示する図である。 実施形態に係る異常検出システムを例示する図である。 実施形態に係る情報処理装置の機能ブロック構成を例示する図である。 例示的な分割サイズに応じた異常領域の検出を示す図である。 分割サイズが小さい場合に生じる異常領域の検出精度の低下を例示する図である。 実施形態に係る異常領域の検出処理の流れを例示する図である。 実施形態に係る閾値情報を例示する図である。 実施形態に係る異常領域のマップの生成処理の動作フローを例示する図である。 マップにおける異常領域の選別を例示する図である。 実施形態に係る異常領域の選択を例示する図である。 実施形態に係るマップにおける異常領域の選別と統合について例を説明する図である。 実施形態に係る分割サイズが3以上である場合における閾値による異常領域の選別を例示する図である。 分割サイズが3以上である場合における分割サイズごとに生成された複数のマップの異常領域の統合を例示する図である。 分割サイズが3以上である場合における閾値情報を例示する図である。 実施形態に係る情報処理装置を実現するためのコンピュータのハードウェア構成を例示する図である。
 以下、図面を参照しながら、本発明のいくつかの実施形態について詳細に説明する。なお、複数の図面において対応する要素には同一の符号を付す。
 図1は、オートエンコーダを用いた異常検出について例示する図である。オートエンコーダは、例えば、入力されたデータを次元の削減により一度圧縮し、重要な特徴量だけを残した後、再度もとの次元に復元する処理を実行するアルゴリズムである。そして、例えば、正常なデータを用いてオートエンコーダの学習を行うことで、得られたオートエンコーダを用いて対象物の異常を検出することができる。なお、対象物は、例えば、異常を検出する対象であってよく、物品、布、部品、衣類、加工品、成形物などを含んでよい。また、異常は、例えば、対象物の破損、傷、付着物の存在、形状の異常、変色などを含んでよい。
 例えば、対象物を撮影した画像から、対象物の異常を検出するとする。この場合、まず異常を含まない正常な対象物が写る画像を教師データとして用意し、その正常なデータを用いてオートエンコーダのニューラルネットワークの学習を行って学習済みモデルを得る。このように学習されたオートエンコーダの学習済みモデルは、異常を含まない正常な対象物の画像は正しく再現して出力することができる。一方で、画像に写る対象物が異常を含む場合、異常のある領域は、異常を含まない正常な画像で学習された学習済みモデルで再構成すると、異常を正しく再現することができず、その結果、異常な領域の再現精度が低下する。
 そのため、図1に示すように、入力画像と、再構成された出力画像との差分をとると、異常を含む領域の差分が大きくなる。そして、例えば、差分の大きな領域を異常領域として特定し、異常領域のマップを生成することで、異常の検出に利用することができる。
 ところで、例えば、オートエンコーダなどのニューラルネットワークでは、入力層の数が決まっているため入力画像は所定サイズに正規化されて入力される。そのため、異常検出対象の画像が高解像度である場合、そのまま入力してしまうと、正規化により圧縮されすぎてしまい、異常検出がうまくいかないことがある。そのため、画像が圧縮され過ぎないように、画像を入力前に分割することがしばしば行われる。
 しかしながら、このように画像を分割して入力する場合にも、画像の分割サイズが適切なサイズでないと、異常のある領域を正しく検出できないことがある。なお、分割サイズは、例えば、画像の分割後のサイズである。
 例えば、オートエンコーダで画像を再構成する場合に、出力画像は、正常な領域でも入力画像と完全に一致させることが難しいため、図1に示すように、マップには異常とは無関係なノイズの異常領域が発生し得る。そして、異常のサイズが、ノイズの異常領域のサイズと近しい場合、異常を示す異常領域とノイズの異常領域とを識別することが難しいことがあり、その結果、異常の検出精度が低下してしまうことがある。或いは、別の例では、分割サイズが小さすぎてしまい、異常のある領域を正しく検出できないことがある。
 以下で述べる実施形態では、異常の検出対象の画像を複数の分割サイズで分割し、学習済みモデルに入力して異常領域のマップを生成する。そして、実施形態では、生成したマップから分割サイズに応じた閾値を用いて異常領域を選別したマップを生成する。なお、以下では、この異常領域を選別したマップを、選別マップと呼ぶことがある。更に、実施形態では分割サイズごとに生成した選別マップの異常領域のうちから、分割サイズに応じて異常領域を選択する。それにより、異常の検出精度を向上させることができる。以下、実施形態を更に詳細に説明する。
 図2は、実施形態に係る異常検出システム200を例示する図である。異常検出システム200は、例えば、情報処理装置201および撮影装置202を含む。情報処理装置201は、例えば、有線通信、無線通信、および通信ネットワークなどを介して撮影装置202に接続し、撮影装置202で撮影された撮影データを取得してよい。なお、情報処理装置201は、例えば、他の装置を介して撮影装置202で撮影された撮影データを取得してもよい。
 情報処理装置201は、例えば、サーバコンピュータ、パーソナルコンピュータ(PC)、モバイルPC、またはタブレット端末などのコンピュータである。
 撮影装置202は、例えば、カメラなどの撮影装置である。撮影装置202は、例えば、異常の検出対象の対象物を撮影して、対象物が写る画像を生成する。撮影装置202で撮影された対象物の画像は、例えば、情報処理装置201において異常検出対象の画像として用いられてよい。
 情報処理装置201は、例えば、撮影装置202から異常検出対象の画像を取得し、異常検出対象の画像に異常を検出する処理を実行して、画像に写る対象物に含まれる異常の検出を行う。
 なお、図2では、異常検出システム200が、情報処理装置201および撮影装置202を含む例が示されているが、実施形態はこれに限定されるものではない。例えば、別の実施形態では撮影装置202および情報処理装置201は、統合された1つの装置であってもよい。
 図3は、実施形態に係る情報処理装置201の機能ブロック構成を例示する図である。情報処理装置201は、例えば、制御部301、記憶部302、および通信部303を含む。制御部301は、例えば生成部311、選別部312、および統合部313などを含み、またその他の機能部を含んでよい。情報処理装置201の記憶部302は、例えば、異常検出対象の画像、後述する閾値情報700,1400、マップ900、選別マップ910、マップ1000などの情報を記憶している。通信部303は、例えば、制御部301の指示に従って撮影装置202などの他の装置と通信する。これらの各部の詳細および記憶部302に格納されている情報の詳細については後述する。
 上述のように、例えば、オートエンコーダなどのニューラルネットワークを用いて異常検出を行う場合に、入力画像のサイズが適切なサイズでないと、異常のある領域を正しく検出できないことがある。
 図4は、例示的な分割サイズに応じた異常領域の検出を示す図である。図4の例では、異常検出対象の画像は、大きさの異なる複数のサイズの異常401を含んでいる。図4(a)は、少ない分割数で画像の分割を行っており、分割サイズが大きい場合の異常検出を例示している。また、図4(b)は、多い分割数で入力画像の分割を行っており、分割サイズが小さい場合の異常検出を例示している。
 例えば、図4(a)では、画像が4つに分割され、4つのそれぞれの分割画像を入力画像としてオートエンコーダに入力し、再構成された出力画像が生成される。そして、入力画像として用いられた分割画像と、再構成された出力画像との差分がマップとして示されている。マップには、入力画像と出力画像との差が大きい領域が、異常領域402として示されている。なお、異常401とは無関係にノイズが発生し得るため、マップには、異常検出対象の画像に写る異常401と対応する異常領域402と、ノイズとして発生した異常領域402とが含まれている。
 例えば、図4(a)では異常検出対象の画像には大きいサイズの異常401が2つと、小さいサイズの異常が2つ写っている。一方、マップでは、大きいサイズの異常領域402は2つで、実際の異常401と数および形状が一致しているが、小さいサイズの異常領域402の数は6つで、ノイズにより実際の異常401の数よりも増えている。この場合に、図4(a)のマップでは、発生したノイズのサイズが、異常検出対象の画像に写っている小さいサイズの異常401と類似した大きさを有しているため、マップにおいてノイズと異常とを識別することが困難となっている。
 また、分割サイズが大きいと、オートエンコーダなどのニューラルネットワークに入力する際の画像の正規化による圧縮で、異常401の特徴がつぶれてしまい、マップにおいて異常401と対応する異常領域402が消えてしまうことがある。例えば、図4(a)では、異常検出対象の画像において小さい異常401が2つ写っているが、マップでは右側の異常401と対応する異常領域402が無く、消えてしまっている。
 このように、分割サイズが大きすぎると、ノイズと異常とのサイズが近しいためにノイズと異常とを識別できなかったり、異常と対応する異常領域が消えてしまったりすることがある。
 ノイズのサイズは、例えば、オートエンコーダなどのニューラルネットワークに入力する入力画像のサイズおよび入力画像のテクスチャなどに依存し得、入力画像のサイズが大きくなるとノイズサイズも大きくなる傾向がある。
 そのため、例えば、異常検出対象の画像をより細かく分割し、ニューラルネットワークに入力する入力画像のサイズをより小さくすることで、ノイズと異常との識別を可能にすることが考えられる。
 しかしながら、異常401のサイズに対して、画像を分割して得た入力画像のサイズを小さくしすぎてしまうと、異常を正しく検出できなくなることがある。
 図4(b)は、分割サイズを小さくした場合における異常検出を例示している。図4(b)では、画像が56分割され、56のそれぞれの分割画像を入力画像としてオートエンコーダに入力し、再構成された出力画像が生成される。そして、入力画像として用いられた分割画像と、再構成された出力画像との差分がマップとして示されている。
 図4(b)のマップでは、図4(a)のマップと比較してノイズの大きさが小さくなっており、その結果、小さいサイズの異常401と対応する異常領域402と、ノイズとして表れた異常領域402とが識別可能となっている。また、図4(a)のマップでは消えてしまっていた異常401と対応する異常領域402が、図4(b)のマップでは検出できている。このように、分割サイズを小さくすることで、小さいサイズの異常については検出精度を高めることができる。
 しかしながら、図4(b)の例では、大きいサイズの異常については、実際の異常401と、検出された異常領域402との形状が異なっており、異常領域402の内側に抜けなどが発生し、検出精度が低下している。
 図5は、分割サイズが小さい場合に生じる異常領域402の検出精度の低下を例示する図である。図5には、対象物を撮影した異常検出対象の画像500を36分割した分割画像が示されている。また、異常検出対象の画像500において対象物の表面に液滴510が付着する異常が写っている。この場合に、液滴510の写る領域を異常領域として検出したいとする。
 この場合に、例えば、異常が写る領域であっても、画像のテクスチャが正常な領域と似ていたりすることがあり、オートエンコーダの入力画像と出力画像との間で差分が小さくなってしまうことがある。
 例えば、図5では、分割画像501は正常な領域にあり、分割画像501を入力画像とした場合、制御部301は、高い精度で分割画像501と対応する出力画像を再構成でき、入力画像と出力画像との差分は小さくなる。
 また、分割画像503は、異常を含んでおり、異常が分割画像503内のテクスチャにも影響を与えている。そのため、分割画像503を入力画像とした場合、分割画像503の再構成の精度は低下し、入力画像と出力画像との差分は大きくなる。その結果、マップにおいて分割画像503内の異常の写る領域を異常領域として検出することができる。
 しかしながら、例えば、分割画像502は、異常が写る領域内にあるが、分割画像502のテクスチャは、正常な分割画像501と類似している。そのため、分割画像502を入力画像とした場合、制御部301は、高い精度で分割画像502を再構成することができ、入力画像と出力画像との差分は異常の写る領域であるにもかかわらず小さくなってしまう。その結果、マップにおいて分割画像502と対応する領域は、異常領域として検出されなくなる。
 図5(b)は、図5(a)と対応するマップを例示する図である。図5(b)に示すように、分割画像502と対応する領域は、液滴510の内側の領域であるにもかかわらず、異常領域として検出されなくなっている。
 以上の図4および図5を参照して例示したように、異常のサイズに対してオートエンコーダなどのニューラルネットワークに入力する入力画像のサイズが大きすぎても、小さすぎても異常の検出精度が低下してしまうことがある。そのため、異常検出対象の画像から異常の写る領域をより高精度に特定することのできる技術の提供が望まれている。
 また更に、例えば、対象物に発生する可能性のある異常が異なる複数のサイズを含む場合、分割サイズが一部の異常の検出に適したサイズとなっていても、他の異常の検出には不適切な分割サイズとなることがある。そして、複数のサイズの異常に対して一律な入力画像のサイズを適用しても、異常の写る領域を正しく検出することが難しいことがある。そのため、例えば、異常検出対象の画像に対して複数の分割サイズを適用して分割サイズごとにマップを生成することが考えられる。この場合に、分割サイズごとに生成された複数のマップに含まれる異常領域を、適切に統合することのできる技術の提供が望まれている。
 図6は、実施形態に係る異常領域の検出処理の流れを例示する図である。実施形態では制御部301は、異常検出対象の画像を複数の分割サイズで分割する。図6(a)には、大きい分割サイズで異常検出対象の画像を分割した例が示されている。また、図6(b)には、小さい分割サイズで異常検出対象の画像を分割した例が示されている。
 続いて、制御部301は、分割した分割画像のそれぞれについて、オートエンコーダなどを用いて再構成した出力画像を生成し、分割画像と出力画像との差に基づいてマップを生成する。一例では、制御部301は、分割画像と出力画像との差分が所定値以上の領域を異常領域として、異常領域のマップを生成してよい。
 そして、制御部301は、分割サイズごとに設定されている閾値に基づいてマップから閾値未満のサイズの異常領域をふるい分けで除き、閾値以上のサイズの異常領域を選別した選別マップを生成する。
 例えば、図6(a)では制御部301は、マップに含まれる異常領域のうちで、第1の閾値未満のサイズの領域を除去し、第1の閾値以上のサイズの異常領域を選別した選別マップを生成する。なお、例えば、第1の閾値には、マップに発生するノイズよりも大きい値が設定されてよく、それにより、マップに発生したノイズを除去することができる。
 また、例えば、図6(b)では制御部301は、マップに含まれる異常領域のうちで、第2の閾値未満のサイズの領域を除去し、第2の閾値以上のサイズの異常領域を選別した選別マップを生成する。例えば、第2の閾値には、マップに発生するノイズよりも大きい値が設定されていてよく、それにより、マップに発生したノイズを除去することができる。
 なお、図6(a)よりも図6(b)の方が分割画像のサイズが小さく、また、マップに発生するノイズのサイズは、分割サイズが小さくなるほど小さくなる傾向がある。そのため、第2の閾値は、第1の閾値よりも小さい値に設定されてよい。
 続いて、制御部301は、分割サイズごとに生成された複数の選別マップに含まれる異常領域を統合する。例えば、複数の選別マップのうちで、或る分割サイズで生成された選別マップの異常領域が、他の分割サイズで生成された選別マップの異常領域と、選別マップを重ねた際に領域の重なりを有するとする。この場合、制御部301は、領域の重なりを有する異常領域のうちで、分割サイズの大きい方の選別マップの異常領域を優先して選択し、統合されたマップの生成に用いてよい。また、制御部301は、領域の重なりを有する異常領域のうちで、分割サイズの小さい方の異常領域は破棄してよく、統合されたマップに含めなくてよい。
 図6の例では、大きいサイズの異常と対応する異常領域は、図6(a)の分割サイズの大きい方の選別マップから選択されている。例えば、異常のサイズが大きい場合に、分割サイズを小さくしてしまうと、図5で例示したように、異常領域の形状が実際の異常の形状と対応しなくなることがある。そのため、制御部301は、例えば、分割サイズの大きい方の選別マップと、分割サイズの小さい方の選別マップとの双方で異常領域が特定されている場合、図6に示すように、分割サイズの大きい方の異常領域を優先して選択し、統合されたマップに用いる。それにより、サイズの大きな異常の検出精度を向上させることができる。
 また、例えば、分割サイズが大きい場合、小さなサイズの異常については、異常と対応する異常領域とノイズとの識別がつきにくくなったり、異常と対応する異常領域がマップに存在しなくなったりすることがある。図6(a)の例では、第1の閾値を用いたふるい分けにより、ノイズとともに、ノイズと識別しにくい小さいサイズの異常領域を除くことができる。
 一方で、この場合も、図6(b)に示すように、制御部301は、分割サイズの小さい方のマップから、小さなサイズの異常と対応する異常領域を取得することができる。例えば、図6(a)では、ノイズとサイズが近しく識別が困難であった小さなサイズの異常と対応する異常領域が、図6(b)では、分割サイズを小さくしたことでノイズが小さくなるため、識別が可能となっている。そのため、小さなサイズの異常と対応する異常領域を特定し、統合されたマップに配置することができる。
 従って、実施形態によれば、異常検出対象の画像が、異なる複数のサイズの異常を含む場合にも、異常と対応する異常領域を高い精度で特定することが可能である。
 続いて、実施形態に係るマップの生成処理を説明する。
 図7は、実施形態に係る閾値情報700を例示する図である。閾値情報700には、例えば、分割サイズと対応づけて異常領域のふるい分けに用いる閾値が登録されている。
 図8は、実施形態に係るマップの生成処理の動作フローを例示する図である。制御部301は、例えば、マップの生成処理の実行指示が入力されると、図8の動作フローを開始してよい。
 ステップ801(以降、ステップを“S”と記載し、例えば、S801と表記する)において制御部301は、異なる複数の分割サイズのうちから分割サイズを選択する。なお、分割サイズは、予め設定されていてよく、例えば、制御部301は、閾値情報700に登録されている分割サイズのうちから未選択の分割サイズを選択してよい。
 S802において制御部301は、選択した分割サイズに異常検出対象の画像を分割し、複数の分割画像を生成する。
 S803において制御部301は、例えば、得られた複数の分割画像のそれぞれを入力画像として用いてオートエンコーダベースのニューラルネットワークに入力し、入力画像を再構成した出力画像を生成する。なお、オートエンコーダベースのニューラルネットワークは、例えば、オートエンコーダ、VAE(Variational Autoencoder)、U-Netなどを含んでよい。
 S804において制御部301は、複数の分割画像のそれぞれについて、入力画像として用いた分割画像と、その出力画像との差に基づいて分割画像と対応するマップを生成する。なお、入力画像と出力画像との差は、一例では、異常スコアと呼ばれる値で表されることがあり、この場合、制御部301は、異常スコアに基づいてマップを生成してよい。
 S805において制御部301は、複数の分割画像ごとに生成されたマップを、分割前の異常検出対象の画像と位置が対応するように結合し、異常検出対象の画像と対応するマップを生成する。
 S806において制御部301は、生成した異常検出対象の画像と対応するマップを二値化する。例えば、制御部301は、マップの各画素の異常スコアが、予め設定されている所定値以上か否かによりマップの各画素の異常スコアを二値化してよい。一例では、制御部301は、異常スコアが所定値以上の画素を黒に、異常スコアが所定値未満の画素を白に二値化してよい。
 S807において制御部301は、二値化したマップを画像フィルタで処理してノイズを低減する。例えば、制御部301は、二値化したマップを膨張・収縮、オープニング、およびクロージングなどのノイズ低減するための画像フィルタで処理して、ノイズを低減してよい。
 S808において制御部301は、マップに含まれる異常領域にラベリングを行う。なお、異常領域は、例えば、マップにおいて黒に二値化された画素で形成された領域であってよい。そして、制御部301は、例えば、通し番号などの識別子を異常領域に順に割り当てて、異常領域にラベリングを行い、マップ900に異常領域を登録してよい。
 図9は、分割サイズ:大と対応するマップ900における異常領域の選別を例示する図である。図9の例では、マップ900には、割り当てたラベルと、ラベルで識別される異常領域とを対応づけるレコードが登録されている。なお、マップ900の異常領域には、例えば、マップにおける異常領域の位置および範囲などを示す情報が登録されてよい。一例では、マップ900の異常領域には、レコードのラベルで識別される異常領域に含まれる画素のマップにおける位置が登録されていてよい。
 続いて、S809において制御部301は、分割サイズと対応する閾値を用いて異常領域をふるい分けて選別し、選別マップを生成する。例えば、分割サイズ:大である場合、制御部301は、閾値情報700から分割サイズ:大と対応する第1の閾値を取得する。そして、制御部301は、マップ900に登録されているレコードのうちで、取得した第1の閾値以上の領域サイズを有する異常領域のレコードを選別し、選別マップ910を生成する。なお、一例では、第1の閾値は、異常領域の面積または画素数などに対して設定された閾値であってよい。別の例では第1の閾値は、異常領域の所定の軸方向の長さ、または最大幅などの異常領域のサイズを表すその他の値に対して設定されていてもよい。
 図9(b)は、第1の閾値を用いた異常領域のふるい分けによる選別を例示している。例えば、制御部301は、マップ900に登録されている異常領域のサイズが、第1の閾値以上であるか否かを判定してよい。図9(b)の例では、異常領域のサイズが、第1の閾値未満であるレコードを網掛けで示している。そして、制御部301は、例えば、異常領域のサイズが第1の閾値未満であるレコードを、マップ900から削除して、図9(c)に示すように選別マップ910を生成する。それにより、選別マップ910には、異常領域のサイズが第1の閾値以上であるレコードが選別されることになる。
 なお、制御部301は、例えば、マップ900、および選別マップ910などに登録されている情報に基づいて、図1で例示した異常領域のマップを生成したり、描画したりすることができる。
 S810において制御部301は、予め設定されている全ての分割サイズで異常検出対象の画像を処理したか否かを判定する。未処理の分割サイズがある場合(S810がNO)、フローはS801に戻り、未選択の分割サイズで処理を繰り返す。一方、全ての分割サイズの処理が完了している場合(S810がYES)、フローはS811に進む。
 S811において制御部301は、分割サイズの大きい方を優先で異常領域を選択するように異常領域の選別マップを統合し、本動作フローは終了する。
 図10は、実施形態に係る異常領域の選択を例示する図である。図10(a)には、第1の閾値以上のサイズを有する分割サイズ:大で検出された異常領域を含む選別マップ910が示されている。一方、図10(b)には、第1の閾値よりも小さい第2の閾値以上のサイズを有する分割サイズ:中で検出された異常領域を含む選別マップ910が示されている。
 そして、例えば、或る分割サイズの選別マップ910に登録されているレコードの異常領域が、他の分割サイズの選別マップ910に登録されているいずれかのレコードの異常領域と重なり有しているとする。この場合、制御部301は、分割サイズの大きい方の異常領域を選択する。例えば、図10(a)のラベルA001で識別される異常領域と、図10(b)のラベル:B001、B013で識別される異常領域とは、選別マップ910を重ねた場合に、領域に重なりを有しているとする。この場合に、制御部301は、分割サイズがより大きい分割サイズ:大と対応するA001の異常領域を選択し、統合されたマップ1000に選択した異常領域を追加してよい。また、この場合、分割サイズがより小さい分割サイズ:中のB001およびB013の異常領域は、統合されたマップ1000には登録されなくてよく、一例では破棄されてよい。
 また、例えば、或る分割サイズの選別マップ910に登録されているレコードの異常領域が、他の分割サイズの選別マップ910に登録されているいずれのレコードの異常領域とも重なりを有していないとする。この場合、制御部301は、その異常領域を統合されたマップ1000に登録してよい。例えば、図10(b)ではB018およびB033のラベルで識別される異常領域は、図10(a)の分割サイズ:大の選別マップ910に登録されている異常領域と重なりを有していない。そのため、制御部301は、B018およびB033の異常領域を、図10(c)の統合されたマップ1000に追加してよい。
 以上で述べたように、図8の動作フローによれば、制御部301は、複数の分割サイズで得られたマップの異常領域を、実際の異常個所が高い精度で反映されるように選別および統合して異常領域のマップを生成することができる。従って、実施形態によれば異常の検出精度が向上する。
 図11は、実施形態に係るマップにおける異常領域の選別と統合について例を説明する図である。
 図11(a)は、領域サイズに対する閾値を用いた異常領域の選別を例示している。例えば、異常検出対象の画像において、大サイズの異常と、中サイズの異常とが見られるとする。この場合に、分割サイズが大きいと、ノイズのサイズも大きくなる。そのため、例えば、分割サイズ:大では、大サイズの異常と対応する異常領域は、ノイズとの識別が可能だが、中サイズの異常と対応する異常領域は、ノイズとサイズが近しく識別することが困難になることがある。この場合に、例えば、図11(a)に示すように、ノイズを除去するように第1の閾値を設定することで、ノイズ、およびノイズとサイズの近しい中サイズの異常領域を除去して、ノイズと識別可能な大サイズの異常領域を選別することができる。
 また、例えば、分割サイズが大きい場合、ニューラルネットワークに入力する際の圧縮で、入力画像に写る異常のテクスチャがつぶれてしまい、サイズの比較的小さい異常が、異常領域として検出されなくなることがある。例えば、図11(a)において、分割サイズ:大では、サイズ中の異常は異常領域として一部が検出されずに消えてしまっている可能性がある。このように、分割サイズ:大では、サイズ中の異常と対応する異常領域の検出が不完全となる可能性がある。制御部301は、第1の閾値未満の異常領域を除去することで、分割サイズ:大では検出することが難しいサイズ中の異常領域を取り除くことができる。
 また、分割サイズ:小では、分割サイズ:大と比較して分割サイズが小さくなるため、それに応じてノイズのサイズも小さくなる傾向がある。そのため、分割サイズ:小では、中サイズの異常と対応する異常領域を、ノイズと識別することが可能となる。そして、例えば、図11(a)に示すように、小サイズのノイズを除去するように第2の閾値を設定することで、中サイズの異常と対応する異常領域を残して、ノイズを除去することができる。
 なお、図11において、網掛けは閾値によるふるい分けで除去される異常領域およびノイズを示している。
 続いて、分割サイズごとに生成される複数のマップの統合について説明する。
 図11(b)は、分割サイズの大きい方のマップの異常領域を優先して選択することでマップを統合する例を示している。図5を参照して例示したように、検出対象画像に写る異常のサイズに対して分割サイズが小さすぎると、異常と対応する異常領域の形状が不正確になることがある。そのため、実施形態では、分割サイズの大きい方の異常領域を優先してマップを統合する。例えば、図11(b)では、サイズ大の異常については、分割サイズ:大の異常領域が優先して選択される。
 一方、サイズ中の異常については、分割サイズ:大では、ノイズとの識別が困難となっており、第1の閾値により削除されている。そのため、サイズ中の異常については、分割サイズ:小から取得されている。なお、分割サイズ:小ではノイズは、サイズ中の異常よりも小さいサイズででているため、第2の閾値によりノイズを除去することで、サイズ中の異常と対応する異常領域を高い精度で取得することが可能である。
 以上に述べたように、異なる複数の分割サイズで検出されたマップの異常領域を組合せることで、異常のある領域が高い精度で特定されたマップを生成することができる。
 なお、上述の図10および図11では、分割サイズが大と小の2つである場合を例に説明を行っているが、実施形態はこれに限定されるものではない。例えば、分割サイズが3以上である場合にも、実施形態を適用することで、高い精度でマップを生成することができる。
 図12は、実施形態に係る分割サイズが3以上である場合における閾値による異常領域の選別について例示する図である。図12では、分割サイズとして、第1の分割サイズ~第3の分割サイズが例示されており、ここで、第1の分割サイズは、第2の分割サイズよりも大きく、第2の分割サイズは、第3の分割サイズよりも大きいものとする。また、異常およびノイズのサイズについて、A~Dの4つのサイズが示されており、ここで、サイズAは、サイズBよりも大きく、サイズBは、サイズCよりも大きく、サイズCは、サイズDよりも大きいものとする。
 そして、第1の分割サイズでは、例えば、サイズB以下のノイズが異常領域に含まれているとする。この場合に、例えば、第1の分割サイズにおいてマップに含まれるサイズBのノイズを除去できるように第1の閾値を設定することで、制御部301は、サイズAの異常領域を残して、ノイズを除去することができる。また、対象物には、例えば、サイズAの異常の他にも、サイズBの異常、およびサイズBよりも小さいサイズCの異常が含まれているとする。この場合に、サイズBの異常およびサイズCの異常と対応する異常領域は、例えば、サイズBのノイズと識別が困難であったり、または、オートエンコーダに入力する際の圧縮に起因して消えてしまったりすることがある。そのため、第1の分割サイズでは、例えば、サイズBおよびサイズCの異常と対応する異常領域を高い精度で特定することが難しい。制御部301は、例えば、第1の閾値未満の異常領域をふるい分けで除去することで、高い精度で検出することが難しい異常と対応する異常領域をノイズとともに除去することができる。そして、第1の分割サイズでは、高い精度で検出可能なサイズAの異常と対応する異常領域を選別することができる。
 また、第2の分割サイズでは、例えば、サイズC以下のノイズが異常領域に含まれているとする。この場合に、例えば、第2の分割サイズにおいてマップに含まれるサイズCのノイズを除去できるように第2の閾値を設定することで、制御部301は、サイズAおよびサイズBの異常領域を残して、ノイズを除去することができる。また、対象物には、例えば、サイズAおよびサイズBの異常の他にも、サイズCの異常が含まれているとする。この場合、サイズCの異常と対応する異常領域は、例えば、サイズCのノイズと識別が困難であったり、または、オートエンコーダに入力する際の圧縮で消えてしまったりすることがある。そのため、第2の分割サイズでは、例えば、サイズCの異常と対応する異常領域を高い精度で特定することが難しい。制御部301は、例えば、第2の閾値未満の異常領域をふるい分けで除去することで、高い精度で検出することが難しいサイズCの異常と対応する異常領域をノイズとともに除去することができる。そして、第2の分割サイズでは、例えば、サイズAおよびサイズBの異常と対応する異常領域を選別することができる。
 第3の分割サイズでは、例えば、サイズD以下のノイズが異常領域に含まれているとする。この場合に、例えば、第3の分割サイズにおいてマップに含まれるサイズDのノイズを除去できるように第3の閾値を設定する。それにより、制御部301は、サイズA、サイズB、およびサイズCの異常と対応する異常領域を残して、サイズD以下のノイズを除去することができる。
 また、第3の分割サイズよりも小さい分割サイズについても、同様に、その分割サイズにおいて発生するノイズを除去できるように閾値を設定する。それにより、制御部301は、ノイズおよびノイズと識別し難かったり、消えてしまったりする異常と対応する異常領域を除去することができる。
 続いて、分割サイズが3以上である場合における分割サイズごとに生成された複数のマップからの異常領域の選択について説明する。
 図13は、分割サイズが3以上である場合における分割サイズごとに生成された複数のマップからの異常領域の選択を例示する図である。
 上述のように、例えば、分割サイズごとに生成された複数のマップ同士を重ねたときに、或る分割サイズのマップで検出された異常領域が、他の分割サイズのマップで検出された異常領域と、領域の重なりを有する異常領域を含むとする。この場合に、実施形態では制御部301は、領域の重なりを有する異常領域のうちで、分割サイズの大きい方で検出された異常領域を優先して選択する。
 例えば、図13では、サイズAの異常については、最も分割サイズの大きい第1の分割サイズで検出された異常領域が優先される。そのため、第1の分割サイズよりも小さい第2の分割サイズおよび第3の分割サイズなどで検出された不正確な可能性のあるサイズAの異常に対する異常領域は、統合されたマップでは採用されなくなる。従って、実施形態によればサイズAの異常と対応する異常領域を高い精度で検出することができる。
 また、例えば、サイズBの異常については、第2の分割サイズにおいて高い精度で異常領域を検出できているものとする。一方で、例えば、第3の分割サイズなどの第2の分割サイズよりも小さい分割サイズでは、分割サイズが小さすぎてしまいサイズBの異常は異常領域の形状が不正確になってしまうことがあるとする。なお、サイズBの異常は、図13に示すように、第1の分割サイズでは、ノイズとの識別がつきにくく、第1の閾値を用いたふるい分けにより除去されている。この場合に、例えば、図13に示すように、サイズBの異常については、第2の分割サイズで検出された異常領域が優先される。そのため、例えば、第2の分割サイズよりも小さい第3の分割サイズなどで検出された不正確な可能性のあるサイズBの異常と対応する異常領域は、統合されたマップでは採用されなくなる。従って、実施形態によればサイズBの異常と対応する異常領域を高い精度で検出することができる。
 また、サイズCの異常については、第1の分割サイズおよび第2の分割サイズでは、ノイズとの識別がつきにくく、第1の閾値または第2の閾値を用いたふるい分けにより除去されており、第3の分割サイズで検出された異常領域が優先して選択される。従って、実施形態によればサイズCの異常と対応する異常領域を高い精度で検出することができる。
 更に、第3の分割サイズよりも小さい分割サイズについても同様に、分割サイズの大きい方の異常領域を優先することで、異常の検出精度の高い分割サイズで得られた異常領域を選択することができる。
 従って、実施形態によれば、画像からの対象物の異常の検出精度を向上させることができる。
 なお、分割サイズが3以上である場合、制御部301は、例えば、図8の動作フローにおいて図7の閾値情報700の代りに図14の閾値情報1400を用いてよい。
 図14は、分割サイズが3以上である場合における閾値情報1400を例示する図である。図14に示すように、閾値情報1400には、例えば、各分割サイズと対応づけて異常領域のふるい分けに用いる閾値が登録されている。
 なお、閾値情報700および閾値情報1400に登録される分割サイズと閾値とは、例えば、経験則などに基づき予め設定しておくことができる。或いは、制御部301は、異常を含まない正常な対象物を写した画像に対して、それぞれの分割サイズでマップを生成することで、分割サイズに応じてマップに現れるノイズのサイズを特定することができる。この場合、制御部301は、分割サイズに応じて現れるノイズのサイズに基づいて閾値を設定し、閾値情報700または閾値情報1400に登録してよい。例えば、制御部301は、分割サイズにおいて現れるノイズを除去できるように、分割サイズにおいて現れるノイズの最大サイズよりも大きいサイズに閾値を設定し、閾値情報700または閾値情報1400に登録してよい。
 また、例えば、対象物に現れる異常のサイズの分布などが分かっている場合、異常のサイズの分布から異常をサイズでグループ分けすることができる。この場合、制御部301は、例えば、分割サイズにおいて検出対象とするグループの異常のサイズよりも小さい値に閾値を設定し、閾値情報700または閾値情報1400に登録してよい。また、制御部301は、対象物に現れる異常のサイズの分布に基づいて、複数の分割サイズを決定し、閾値情報700または閾値情報1400に登録してよい。
 なお、ここでは、分割サイズおよび閾値の設定を制御部301が実行する例を述べているが、別の実施形態では人が手作業で分割サイズおよび閾値を閾値情報700または閾値情報1400に登録してもよい。
 以上において、実施形態を例示したが、実施形態はこれに限定されるものではない。例えば、上述の動作フローは例示であり、実施形態はこれに限定されるものではない。可能な場合には、動作フローは、処理の順番を変更して実行されてもよく、別に更なる処理を含んでもよく、または、一部の処理が省略されてもよい。例えば、図8のS806とS807の処理は、異なる順序で実行されてもよい。一例では、制御部301は、S806の二値化の処理の前に異常スコアをガウシアンフィルタで処理してノイズを低減してもよく、この場合、S807の処理は、S806の処理の前にも実行されてよい。
 また、上述の実施形態では、異常検出に用いる学習済みモデルとして、正常データのみで学習を行ったオートエンコーダベースのニューラルネットワークを例に説明を行っている。しかしながら、実施形態で異常検出に利用可能な学習済みモデルは、これに限定されるものではない。例えば、異常が写る領域では入力画像の再現精度が出力画像において低下するように学習が行われた学習済みモデルであれば、その他の学習済みモデルが用いられてもよい。例えば、別の実施形態では、AnoGANなどのGANベースのニューラルネットワークが、オートエンコーダベースのニューラルネットワークの代わりに用いられてもよい。
 なお、上述の実施形態において、例えば、S801からS808の処理では、制御部301は、生成部311として動作する。また、例えば、S809の処理では、制御部301は、選別部312として動作する。例えば、S811の処理では、制御部301は、統合部313として動作する。
 図15は、実施形態に係る情報処理装置201を実現するためのコンピュータ1500のハードウェア構成を例示する図である。図15の情報処理装置201を実現するためのハードウェア構成は、例えば、プロセッサ1501、メモリ1502、記憶装置1503、読取装置1504、通信インタフェース1506、および入出力インタフェース1507を備える。なお、プロセッサ1501、メモリ1502、記憶装置1503、読取装置1504、通信インタフェース1506、入出力インタフェース1507は、例えば、バス1508を介して互いに接続されている。
 プロセッサ1501は、例えば、シングルプロセッサであっても、マルチプロセッサやマルチコアであってもよい。プロセッサ1501は、メモリ1502を利用して例えば上述の動作フローの手順を記述したプログラムを実行することにより、上述した制御部301の一部または全部の機能を提供する。例えば、情報処理装置201のプロセッサ1501は、記憶装置1503に格納されているプログラムを読み出して実行することで、生成部311、選別部312、および統合部313として動作する。
 メモリ1502は、例えば半導体メモリであり、RAM領域およびROM領域を含んでいてよい。記憶装置1503は、例えばハードディスク、フラッシュメモリ等の半導体メモリ、または外部記憶装置である。なお、RAMは、Random Access Memoryの略称である。また、ROMは、Read Only Memoryの略称である。
 読取装置1504は、プロセッサ1501の指示に従って着脱可能記憶媒体1505にアクセスする。着脱可能記憶媒体1505は、例えば、半導体デバイス、磁気的作用により情報が入出力される媒体、光学的作用により情報が入出力される媒体などにより実現される。なお、半導体デバイスは、例えば、USB(Universal Serial Bus)メモリである。また、磁気的作用により情報が入出力される媒体は、例えば、磁気ディスクである。光学的作用により情報が入出力される媒体は、例えば、CD-ROM、DVD、Blu-ray Disc等(Blu-rayは登録商標)である。CDは、Compact Discの略称である。DVDは、Digital Versatile Diskの略称である。
 記憶部302は、例えばメモリ1502、記憶装置1503、および着脱可能記憶媒体1505を含む。例えば、情報処理装置201の記憶装置1503には、異常検出対象の画像、閾値情報700,1400、マップ900、選別マップ910、マップ1000が格納されてよい。
 通信インタフェース1506は、例えば、プロセッサ1501の指示に従って撮影装置202などの他の装置と通信する。通信インタフェース1506は、上述の通信部303の一例である。
 入出力インタフェース1507は、例えば、入力装置および出力装置との間のインタフェースであってよい。入力装置は、例えばユーザからの指示を受け付けるキーボード、マウス、タッチパネルなどのデバイスである。出力装置は、例えばディスプレーなどの表示装置、およびスピーカなどの音声装置である。
 実施形態に係る各プログラムは、例えば、下記の形態で情報処理装置201に提供される。
(1)記憶装置1503に予めインストールされている。
(2)着脱可能記憶媒体1505により提供される。
(3)プログラムサーバなどのサーバから提供される。
 なお、図15を参照して述べた情報処理装置201を実現するためのコンピュータ1500のハードウェア構成は、例示であり、実施形態はこれに限定されるものではない。例えば、上述の構成の一部が、削除されてもよく、また、新たな構成が追加されてもよい。また、別の実施形態では、例えば、上述の制御部301の一部または全部の機能がFPGA、SoC、ASIC、およびPLDなどによるハードウェアとして実装されてもよい。なお、FPGAは、Field Programmable Gate Arrayの略称である。SoCは、System-on-a-chipの略称である。ASICは、Application Specific Integrated Circuitの略称である。PLDは、Programmable Logic Deviceの略称である。
 以上において、いくつかの実施形態が説明される。しかしながら、実施形態は上記の実施形態に限定されるものではなく、上述の実施形態の各種変形形態および代替形態を包含するものとして理解されるべきである。例えば、各種実施形態は、その趣旨および範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、前述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施され得ることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して、または実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施され得ることが当業者には理解されよう。
200   異常検出システム
201   情報処理装置
202   撮影装置
301   制御部
302   記憶部
303   通信部
311   生成部
312   選別部
313   統合部
401   異常
402   異常領域
500   画像
501   分割画像
502   分割画像
503   分割画像
510   液滴
700   閾値情報
900   マップ
910   選別マップ
1000  マップ
1400  閾値情報
1500  コンピュータ
1501  プロセッサ
1502  メモリ
1503  記憶装置
1504  読取装置
1505  着脱可能記憶媒体
1506  通信インタフェース
1507  入出力インタフェース
1508  バス

Claims (6)

  1.  入力画像を出力画像で再現するように、且つ、異常が写る領域では前記入力画像の再現精度が前記出力画像において低下するように学習が行われた学習済みモデルの前記入力画像と前記出力画像との差に基づいて異常領域のマップを生成することであって、前記学習済みモデルに画像を異なる複数の分割サイズで入力し、分割サイズと対応する異常領域のマップを生成することと、
     前記複数の分割サイズのそれぞれと対応する異常領域のマップから、分割サイズに応じた閾値以上のサイズの異常領域を選別して、前記複数の分割サイズのそれぞれと対応する選別マップを生成することと、
     前記複数の分割サイズのそれぞれと対応する前記選別マップを、分割サイズの大きい方と対応する選別マップに含まれる異常領域を優先的に選択して統合することと、
    を含む処理を、コンピュータに実行させる異常検出プログラム。
  2.  前記選別マップを生成することは、
      前記画像を第1の分割サイズで分割して前記学習済みモデルに入力し得た第1のマップから第1の閾値以上の異常領域を選別して第1の選別マップを生成することと、
      前記画像を前記第1の分割サイズよりも小さい第2の分割サイズで分割して前記学習済みモデルに入力し得た第2のマップから前記第1の閾値よりも小さい第2の閾値以上の異常領域を選別して第2の選別マップを生成することと、
    を含む、請求項1に記載の異常検出プログラム。
  3.  前記統合することは、前記複数の分割サイズのそれぞれと対応する前記選別マップが、他の分割サイズの前記選別マップと、前記選別マップ同士を重ねた際に領域の重なりを有する異常領域を含む場合、前記領域の重なりを有する異常領域のうちで、分割サイズの大きい方の選別マップに含まれる異常領域を優先的に選択して、前記複数の分割サイズのそれぞれと対応する前記選別マップを統合することを含む、請求項1または2に記載の異常検出プログラム。
  4.  前記学習済みモデルは、オートエンコーダベースまたはGANベースのニューラルネットワークである、ことを特徴とする請求項1から3のいずれか1項に記載の異常検出プログラム。
  5.  入力画像を出力画像で再現するように、且つ、異常が写る領域では前記入力画像の再現精度が前記出力画像において低下するように学習が行われた学習済みモデルの前記入力画像と前記出力画像との差に基づいて異常領域のマップを生成することであって、前記学習済みモデルに画像を異なる複数の分割サイズで入力し、分割サイズと対応する異常領域のマップを生成することと、
     前記複数の分割サイズのそれぞれと対応する異常領域のマップから、分割サイズに応じた閾値以上のサイズの異常領域を選別して、前記複数の分割サイズのそれぞれと対応する選別マップを生成することと、
     前記複数の分割サイズのそれぞれと対応する前記選別マップを、分割サイズの大きい方と対応する選別マップに含まれる異常領域を優先的に選択して統合することと、
    を含む、コンピュータが実行する異常検出方法。
  6.  入力画像を出力画像で再現するように、且つ、異常が写る領域では前記入力画像の再現精度が前記出力画像において低下するように学習が行われた学習済みモデルの前記入力画像と前記出力画像との差に基づいて異常領域のマップを生成する生成部であって、前記学習済みモデルに画像を異なる複数の分割サイズで入力し、分割サイズと対応する異常領域のマップを生成する生成部と、
     前記複数の分割サイズのそれぞれと対応する異常領域のマップから、分割サイズに応じた閾値以上のサイズの異常領域を選別して、前記複数の分割サイズのそれぞれと対応する選別マップを生成する選別部と、
     前記複数の分割サイズのそれぞれと対応する前記選別マップを、分割サイズの大きい方と対応する選別マップに含まれる異常領域を優先的に選択して統合する統合部と、
    を含む、情報処理装置。
PCT/JP2021/008533 2021-03-04 2021-03-04 異常検出プログラム、異常検出方法、および情報処理装置 WO2022185494A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/008533 WO2022185494A1 (ja) 2021-03-04 2021-03-04 異常検出プログラム、異常検出方法、および情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/008533 WO2022185494A1 (ja) 2021-03-04 2021-03-04 異常検出プログラム、異常検出方法、および情報処理装置

Publications (1)

Publication Number Publication Date
WO2022185494A1 true WO2022185494A1 (ja) 2022-09-09

Family

ID=83154108

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/008533 WO2022185494A1 (ja) 2021-03-04 2021-03-04 異常検出プログラム、異常検出方法、および情報処理装置

Country Status (1)

Country Link
WO (1) WO2022185494A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020255224A1 (ja) * 2019-06-17 2020-12-24 日本電信電話株式会社 異常検知装置、学習装置、異常検知方法、学習方法、異常検知プログラム、及び学習プログラム
JP6818961B1 (ja) * 2020-04-08 2021-01-27 三菱電機株式会社 学習装置、学習方法、および推論装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020255224A1 (ja) * 2019-06-17 2020-12-24 日本電信電話株式会社 異常検知装置、学習装置、異常検知方法、学習方法、異常検知プログラム、及び学習プログラム
JP6818961B1 (ja) * 2020-04-08 2021-01-27 三菱電機株式会社 学習装置、学習方法、および推論装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KAMADA, SHOHEI; NAKATSUKA, SHUNSUKE; YAMAMOTO, HARUMI: "Proposal of a New Deep Neural Network for Visual Inspection", PANASONIC TECHNICAL JOURNAL, vol. 66, no. 2, 2 November 2020 (2020-11-02), JP , pages 31 - 36, XP009539625, ISSN: 1883-115X *

Similar Documents

Publication Publication Date Title
Wang et al. CNN-generated images are surprisingly easy to spot... for now
Scherhag et al. Detection of face morphing attacks based on PRNU analysis
Cao et al. Forensic detection of median filtering in digital images
Kang et al. Robust median filtering forensics using an autoregressive model
Yuan Blind forensics of median filtering in digital images
KR102559021B1 (ko) 불량 이미지 생성 장치 및 방법
Saadatpanah et al. Adversarial attacks on copyright detection systems
Ding et al. A novel method for detecting image sharpening based on local binary pattern
Khodabakhsh et al. A generalizable deepfake detector based on neural conditional distribution modelling
Hashim et al. An extensive analysis and conduct comparative based on statistical attach of LSB substitution and LSB matching
Bagiwa et al. Digital video inpainting detection using correlation of hessian matrix
CN111192241A (zh) 一种人脸图像的质量评估方法、装置及计算机存储介质
Swaminathan et al. Component forensics of digital cameras: A non-intrusive approach
JP5939023B2 (ja) コンピュータプログラム及び画像抽出装置
Siddiqui et al. Social media origin based image tracing using deep CNN
WO2022185494A1 (ja) 異常検出プログラム、異常検出方法、および情報処理装置
Celiktutan et al. Blind identification of cellular phone cameras
US7646892B2 (en) Image inspecting apparatus, image inspecting method, control program and computer-readable storage medium
JP4804382B2 (ja) 画像処理方法、画像処理プログラムおよび画像処理装置
JPWO2002043001A1 (ja) 画像処理方法
KR20230055991A (ko) 합성 데이터 및 기계 학습을 사용한 결함 검출
Jin et al. Object-based video forgery detection via dual-stream networks
JP2007199865A (ja) 画像処理アルゴリズム評価装置、画像処理アルゴリズムの生成装置および画像検査装置ならびに画像処理アルゴリズム評価方法、画像処理アルゴリズムの生成方法および画像検査方法
CN111985423A (zh) 活体检测方法、装置、设备及可读存储介质
JPWO2012127639A1 (ja) 画像処理装置及び画像処理方法

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21929066

Country of ref document: EP

Kind code of ref document: A1