(57)【要約】【課題】疑似画像の生成精度を向上させて、疑似画像のぼけやエッジの崩れ等の発生を抑制することを可能とする。【解決手段】実施形態の画像処理装置は、一例として、学習用画像を取得する取得部と、学習用画像を複数の学習用パッチ画像に分割する分割部と、予め設定されたラベル付与条件に従って、複数の学習用パッチ画像のそれぞれに対してラベルを付与するラベル付与部と、学習用パッチ画像およびラベルを入力として、学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する疑似画像生成部と、を備える。【選択図】図２
2020160997.tif 000002
【特許請求の範囲】
【請求項１】
学習用画像を取得する取得部と、
前記学習用画像から、複数の学習用パッチ画像を生成するパッチ画像生成部と、
予め設定されたラベル付与条件に従って、前記複数の学習用パッチ画像のそれぞれに対してラベルを付与するラベル付与部と、
前記学習用パッチ画像および前記ラベルを入力として、前記学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する疑似画像生成部と、
を備える画像処理装置。
【請求項２】
前記疑似画像生成部は、前記学習用パッチ画像および前記ラベルを入力として前記学習用パッチ画像を潜在変数に変換するエンコーダと、前記エンコーダによって前記学習用パッチ画像から変換された前記潜在変数および前記ラベルを入力として、前記疑似画像を生成するデコーダと、を含むニューラルネットワークを学習する請求項１に記載の画像処理装置。
【請求項３】
前記疑似画像生成部は、
前記疑似画像または前記学習用パッチ画像である入力画像を入力として、当該入力画像の真偽の判定を行うニューラルネットワークを学習する画像分類部と、
前記疑似画像が偽と判定される確率が低減されるように、前記疑似画像を生成するニューラルネットワークを学習する画像生成部と、
を備える請求項１に記載の画像処理装置。
【請求項４】
前記疑似画像生成部は、
前記疑似画像および当該疑似画像の生成に用いた前記ラベル、または前記学習用パッチ画像および当該学習用パッチ画像に付与される前記ラベルを入力として、前記疑似画像または前記学習用パッチ画像の真偽を判定するニューラルネットワークを学習する画像分類部と、
前記疑似画像および当該疑似画像の生成に用いた前記ラベルが前記画像分類部に入力された際に、前記疑似画像が偽と判定される確率、および、前記学習用パッチ画像および当該学習用パッチ画像に付与される前記ラベルが前記画像分類部に入力された際に、前記学習用パッチ画像が真と判定される確率が低減されるように、前記疑似画像を生成するニューラルネットワークを学習する画像生成部と、
を備える請求項１に記載の画像処理装置。
【請求項５】
前記疑似画像と、検出対象画像の一部の検出用パッチ画像と、の差分が予め設定された閾値以上である場合に、前記検出対象画像の異常を検出する検出部をさらに備える請求項１から４のいずれか一に記載の画像処理装置。
【請求項６】
前記閾値は、前記検出用パッチ画像の種類毎に設定され、
前記検出部は、前記疑似画像と前記検出用パッチ画像との差分が、当該検出用パッチ画像に設定された前記閾値以上である場合に、前記検出対象画像の異常を検出する請求項５に記載の画像処理装置。
【請求項７】
画像処理装置で実行される画像処理方法であって、
取得部が、学習用画像を取得する工程と、
パッチ画像生成部が、前記学習用画像から、複数の学習用パッチ画像を生成する工程と、
ラベル付与部が、予め設定されたラベル付与条件に従って、前記複数の学習用パッチ画像のそれぞれに対してラベルを付与する工程と、
疑似画像生成部が、前記学習用パッチ画像および前記ラベルを入力として、前記学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する工程と、
を含む画像処理方法。
【請求項８】
コンピュータを、
学習用画像を取得する取得部と、
前記学習用画像から、複数の学習用パッチ画像を生成するパッチ画像生成部と、
予め設定されたラベル付与条件に従って、前記複数の学習用パッチ画像のそれぞれに対してラベルを付与するラベル付与部と、
前記学習用パッチ画像および前記ラベルを入力として、前記学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する疑似画像生成部と、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像処理装置、画像処理方法、およびプログラムに関する。
【背景技術】
【０００２】
機械学習を用いた異常検出方法として、学習用画像としての正常な画像を入力として、当該正常な画像を潜在変数に変換するエンコーダと、正常な画像から変換された潜在変数を入力として正常な画像を復元した疑似画像を生成するデコーダと、を含むニューラルネットワークを学習し、当該ニューラルネットワークを用いて生成した疑似画像と、異常検出対象の画像との差分に基づいて、異常な画像を検出する技術が開発されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−４９３５５号公報
【特許文献２】国際公開第２０１７／０９４２６７号
【非特許文献】
【０００４】
【非特許文献１】立花亮介、他２名、「深層生成モデルによる非正則化異常度を用いた工業製品の異常検知」、人工知能学会全国大会論文集、２０１８年、２Ａ１０３
【非特許文献２】S.Thomas、他４名、“Unsupervised  Anomaly  Detection  with  Generative  Adversarial  Networks  to  Guide  Maker  Discovery”、［online］、平成２９年３月１７日、arXiv、［平成３１年３月６日検索］インターネット＜https://arxiv.org/＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、この異常検出方法では、ニューラルネットワークの学習に用いる正常な画像が、全ての正常な画像を網羅していない場合、学習していない新規の正常な画像が入力されると、新規の正常な画像と疑似画像との差分に基づいて、正常な画像であるにも関わらず、異常な画像として検出してしまい、異常の検出精度が低下する場合がある。また、異常検出対象の画像に含まれる異常領域のサイズが相対的に小さい場合、疑似画像と、異常検出対象の画像との差分を異常の指標とした場合に、異常の検出精度が低下する場合がある。
【０００６】
そこで、実施形態の課題の一つは、ニューラルネットワークにより学習していない正常な画像が、異常検出対象の画像として入力された場合でも、当該学習していない正常な画像を異常な画像として検出することを抑制する疑似画像を生成可能な画像処理装置、画像処理方法、およびプログラムを提供する。
【課題を解決するための手段】
【０００７】
実施形態の画像処理装置は、一例として、学習用画像を取得する取得部と、学習用画像から、複数の学習用パッチ画像を生成するパッチ画像生成部と、予め設定されたラベル付与条件に従って、複数の学習用パッチ画像のそれぞれに対してラベルを付与するラベル付与部と、学習用パッチ画像およびラベルを入力として、学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する疑似画像生成部と、を備える。よって、一例として、入力された学習用画像に限らず、学習していない新規な画像を復元した疑似画像を生成可能となる。
【０００８】
また、実施形態の画像処理装置は、一例として、疑似画像生成部は、学習用パッチ画像およびラベルを入力として学習用パッチ画像を潜在変数に変換するエンコーダと、エンコーダによって学習用パッチ画像から変換された潜在変数およびラベルを入力として、疑似画像を生成するデコーダと、を含むニューラルネットワークを学習する。よって、一例として、入力された学習用画像に限らず、学習していない新規な画像を復元した疑似画像を生成可能となる。
【０００９】
また、実施形態の画像処理装置は、一例として、疑似画像生成部が、疑似画像または学習用パッチ画像である入力画像を入力として、当該入力画像の真偽の判定を行うニューラルネットワークを学習する画像分類部と、疑似画像が偽と判定される確率が低減されるように、疑似画像を生成するニューラルネットワークを学習する画像生成部と、を備える。よって、一例として、学習用パッチ画像により近くかつ当該学習用パッチ画像に付与されるラベルの画像により特化した疑似画像の生成が可能となる。
【００１０】
また、実施形態の画像処理装置は、一例として、疑似画像生成部が、疑似画像および当該疑似画像の生成に用いたラベル、または学習用パッチ画像および当該学習用パッチ画像に付与されるラベルを入力として、疑似画像または学習用パッチ画像の真偽を判定するニューラルネットワークを学習する画像分類部と、疑似画像および当該疑似画像の生成に用いたラベルが画像分類部に入力された際に、疑似画像が偽と判定される確率、および、学習用パッチ画像および当該学習用パッチ画像に付与されるラベルが画像分類部に入力された際に、学習用パッチ画像が真と判定される確率が低減されるように、疑似画像を生成するニューラルネットワークを学習する画像生成部と、を備える。よって、一例として、学習用パッチ画像により近い疑似画像の生成が可能となる。
【００１１】
また、実施形態の画像処理装置は、一例として、疑似画像と、検出対象画像の一部の検出用パッチ画像と、の差分が予め設定された閾値以上である場合に、検出対象画像の異常を検出する検出部をさらに備える。よって、一例として、学習していない学習していない新規な学習用画像から復元した疑似画像を用いて、検出対象画像の異常を検出可能となる。
【００１２】
また、実施形態の画像処理装置は、一例として、閾値は、検出用パッチ画像の種類毎に設定され、検出部は、疑似画像と検出用パッチ画像との差分が、当該検出用パッチ画像に設定された閾値以上である場合に、検出対象画像の異常を検出する。よって、一例として、検出対象画像の異常の検出精度をより向上させることができる。
【００１３】
また、実施形態の画像処理方法は、一例として、画像処理装置で実行される画像処理方法であって、取得部が、学習用画像を取得する工程と、パッチ画像生成部が、学習用画像から、複数の学習用パッチ画像を生成する工程と、ラベル付与部が、予め設定されたラベル付与条件に従って、複数の学習用パッチ画像のそれぞれに対してラベルを付与する工程と、疑似画像生成部が、学習用パッチ画像およびラベルを入力として、学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する工程と、を含む。よって、一例として、入力された学習用画像に限らず、学習していない新規な画像を復元した疑似画像を生成可能となる。
【００１４】
また、実施形態のプログラムは、一例として、コンピュータを、学習用画像を取得する取得部と、学習用画像から、複数の学習用パッチ画像を生成するパッチ画像生成部と、予め設定されたラベル付与条件に従って、複数の学習用パッチ画像のそれぞれに対してラベルを付与するラベル付与部と、学習用パッチ画像およびラベルを入力として、学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する疑似画像生成部と、として機能させる。よって、一例として、入力された学習用画像に限らず、学習していない新規な画像を復元した疑似画像を生成可能となる。
【図面の簡単な説明】
【００１５】
【図１】図１は、第１の実施形態にかかる画像処理装置を適用した異常検出装置のハードウェア構成の一例を示すブロック図である。
【図２】図２は、第１の実施形態にかかる異常検出装置の機能構成の一例を示すブロック図である。
【図３】図３は、第１の実施形態にかかる異常検出装置による学習用パッチ画像の生成処理およびラベルの付与処理の一例を説明するための図である。
【図４】図４は、第１の実施形態にかかる異常検出装置による学習用パッチ画像の生成処理およびラベルの付与処理の他の例を説明するための図である。
【図５】図５は、第１の実施形態にかかる異常検出装置による学習用パッチ画像の生成処理およびラベルの付与処理の他の例を説明するための図である。
【図６】図６は、第１の実施形態にかかる異常検出装置による疑似画像の生成例を示す図である。
【図７】図７は、第１の実施形態にかかる異常検出装置によるニューラルネットワークの学習処理の流れの一例を示すフローチャートである。
【図８】図８は、第２の実施形態にかかる異常検出装置の機能構成の一例を示すブロック図である。
【図９】図９は、第３の実施形態にかかる異常検出装置の機能構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下、本発明の例示的な実施形態が開示される。以下に示される実施形態の構成、ならびに当該構成によってもたらされる作用、結果、および効果は、一例である。本発明は、以下の実施形態に開示される構成以外によって実現可能であるとともに、基本的な構成に基づく種々の効果や、派生的な効果のうち、少なくとも１つを得ることが可能である。
【００１７】
（第１の実施形態）
まず、図１を用いて、本実施形態にかかる画像処理装置を適用した異常検出装置のハードウェア構成について説明する。
【００１８】
図１は、第１の実施形態にかかる画像処理装置を適用した異常検出装置のハードウェア構成の一例を示すブロック図である。図１に示すように、本実施形態にかかる異常検出装置１００は、ＰＣ（Personal  Computer）等の一般的な情報処理装置と同様のコンピュータ資源を有している。
【００１９】
図１に示す例において、異常検出装置１００は、ＣＰＵ（Central  Processing  Unit）１０１と、ＲＯＭ（Read  Only  Memory）１０２と、ＲＡＭ（Random  Access  Memory）１０３と、通信インターフェース（Ｉ／Ｆ）１０４と、入出力インターフェース（Ｉ／Ｆ）１０５と、ＳＳＤ（Solid  State  Drive）１０６と、を有している。これらのハードウェアは、データバス１０７を介して互いに接続されている。
【００２０】
ＣＰＵ１０１は、異常検出装置１００を統括的に制御するハードウェアプロセッサである。ＣＰＵ１０１は、ＲＯＭ１０２等に記憶された各種の制御プログラム（コンピュータプログラム）を読み出し、当該各種の制御プログラムに規定されたインストラクションに従って各種の機能を実現する。
【００２１】
ＲＯＭ１０２は、上述した各種の制御プログラムの実行に必要なパラメータなどを記憶する不揮発性の主記憶装置である。
【００２２】
ＲＡＭ１０３は、ＣＰＵ１０１の作業領域を提供する揮発性の主記憶装置である。
【００２３】
通信インターフェース１０４は、異常検出装置１００と外部装置との間の通信を実現するインターフェースである。
【００２４】
入出力インターフェース１０５は、異常検出装置１００と外部装置との接続を実現するインターフェースである。外部装置としては、例えば、異常検出装置１００のオペレータが使用する入出力デバイスなどが考えられる。
【００２５】
ＳＳＤ１０６は、書き換え可能な不揮発性の補助記憶装置である。本実施形態にかかる異常検出装置１００においては、補助記憶装置として、ＳＳＤ１０６に替えて（またはＳＳＤ１０６に加えて）、ＨＤＤ（Hard  Disk  Drive）が設けられていても良い。
【００２６】
ところで、機械学習を用いた異常検出方法において、学習用の画像（以下、学習用画像と言う）としての正常な画像を入力として、当該正常な画像を潜在変数に変換するエンコーダと、正常な画像から変換された潜在変数を入力として正常な画像を復元した疑似画像を生成するデコーダと、を含むニューラルネットワークを学習し、当該ニューラルネットワークを用いて生成した疑似画像と、異常検出対象の画像との差分に基づいて、異常な画像を検出する技術が開発されている。
【００２７】
しかし、この異常検出方法では、ニューラルネットワークの学習に用いる正常な画像が、全ての正常な画像を網羅していない場合、学習していない新規の正常な画像が入力されると、新規の正常な画像と疑似画像との差分に基づいて、正常な画像であるにも関わらず、異常な画像として検出されてしまい、異常の検出精度が低下する場合がある。また、異常検出対象の画像に含まれる異常領域のサイズが相対的に小さい場合、疑似画像と、異常検出対象の画像との差分を異常の指標とした場合に、異常の検出精度を低下する場合がある。
【００２８】
また、機械学習を用いた異常検出方法において、学習用画像としての正常な画像を分割したパッチ画像を入力として、正常な画像を復元した疑似画像を生成するニューラルネットワークを学習し、当該ニューラルネットワーク用いて生成した疑似画像と、異常検出対象の画像との差分に基づいて、異常な画像を検出する技術も開発されている。
【００２９】
しかし、この異常検出方法では、疑似画像に表出される特徴の位置や形状の汎化性能を高めることはできるが、ニューラルネットワークが学習すべき正常な画像の特徴が増えるため、疑似画像の生成精度が低下し、疑似画像のぼけやエッジの崩れ等が発生してしまい、異常な画像の検出精度が低下する場合がある。
【００３０】
そこで、本実施形態では、異常検出装置１００に対して以下のような機能を持たせることで、ニューラルネットワークにより学習していない正常な画像が、異常検出対象の画像として入力された場合でも、当該学習していない正常な画像を異常な画像として検出することを抑制することを実現する。
【００３１】
本実施形態では、異常検出装置１００をＰＣ等の一般的な情報処理装置において実現する例について説明するが、以下に示す異常検出装置１００の一部または全ての機能を、エッジやクラウド等の外部装置において実現することも可能である。また、本実施形態では、異常な画像の検出に用いる疑似画像を生成する技術について説明するが、ニューラルネットワークにより疑似画像を生成する技術であれば、同様に適用可能である。例えば、ニューラルネットワークにより所望の画像を復元した疑似画像を生成する技術にも適用可能である。
【００３２】
次に、図２を用いて、本実施形態にかかる異常検出装置１００の機能構成の一例について説明する。図２は、第１の実施形態にかかる異常検出装置の機能構成の一例を示すブロック図である。
【００３３】
図２に示す異常検出装置１００において実現される機能は、ソフトウェアとハードウェアとの協働によって実現される。つまり、図２に示す例において、異常検出装置１００の機能は、ＣＰＵ１０１がＲＯＭ１０２などに記憶されたプログラムを読み出して実行した結果として実現される。図２示す異常検出装置１００の機能の一部または全部が専用のハードウェア（回路）によって実現されても良い。
【００３４】
図２に示すように、本実施形態にかかる異常検出装置１００は、機能構成として、取得部２０１、入力パッチ画像生成部２０２、パッチ画像ラベル付与部２０３、疑似画像生成部２０４、および識別部２０５を有している。
【００３５】
取得部２０１は、ニューラルネットワークの学習用画像を取得する。本実施形態では、取得部２０１は、正常な画像（以下、正常画像と言う）を学習用画像として取得する。ここで、正常画像とは、異常を有しない物体の画像である。
【００３６】
ただし、取得部２０１は、学習用画像として取得する正常画像の数に対して、予め設定された割合以下であれば、少数の異常な画像（以下、異常画像と言う）を、正常画像として取得しても良い。ここで、異常画像は、異常を有する物体の画像である。
【００３７】
本実施形態では、取得部２０１は、正常画像を学習用画像として取得しているが、ニューラルネットワークにより生成する画像の学習用画像を取得するものであれば、これに限定するものではない。例えば、取得部２０１は、ニューラルネットワークにより生成する画像が異常画像である場合には、異常画像を学習用画像として取得しても良い。その場合、取得部２０１は、学習用画像として取得する異常画像の数に対して、予め設定された割合以下であれば、少数の正常画像を異常画像として取得しても良い。
【００３８】
また、取得部２０１は、物体の異常を検出する場合には、異常を検出する物体（異常検出対象）の画像（以下、検出対象画像と言う）を取得する。本実施形態では、取得部２０１は、物体の異常を検出する場合、学習用画像として取得される正常画像と同じサイズの画像を検出対象画像として取得する。
【００３９】
入力パッチ画像生成部２０２は、取得部２０１により取得した学習用画像から、複数のパッチ画像（以下、学習用パッチ画像と言う）を生成する生成部である。ここで、学習用パッチ画像は、学習用画像の一部の画像である。本実施形態では、入力パッチ画像生成部２０２は、学習用画像を、予め設定された分割条件に従って複数の画像に分割して、当該分割した複数の画像のそれぞれを学習用パッチ画像とする。
【００４０】
または、本実施形態では、入力パッチ画像生成部２０２は、学習用画像上において、予め設定されたウィンドウを、当該ウィンドウを移動させた領域同士が互いに重ならないように移動（スライド）させ、当該ウィンドウを移動させた領域の画像を、学習用パッチ画像として生成しても良い。または、本実施形態では、入力パッチ画像生成部２０２は、学習用画像上において、予め設定されたウィンドウを、当該ウィンドウを移動させた領域同士の一部が互いに重なるように移動させ、当該ウィンドウを移動させた領域の画像を、学習用パッチ画像として生成しても良い。または、本実施形態では、入力パッチ画像生成部２０２は、学習用画像の一部をランダムにクロッピングした画像を、学習用パッチ画像として生成しても良い。
【００４１】
また、入力パッチ画像生成部２０２は、物体の異常を検出する場合も、学習用パッチ画像を生成する場合と同様にして、検出対象画像から、複数のパッチ画像（以下、検出用パッチ画像と言う）を生成する。
【００４２】
本実施形態では、入力パッチ画像生成部２０２は、ニューラルネットワークを学習する場合および物体の異常を検出する場合のいずれの場合でも、同じ条件で、取得部２０１により取得された画像からパッチ画像を生成するものとするが、学習用パッチ画像のサイズと、検出用パッチ画像のサイズとが同じであれば、異なる条件で、取得された画像からパッチ画像を生成しても良い。
【００４３】
パッチ画像ラベル付与部２０３は、ラベル付与条件に従って、入力パッチ画像生成部２０２により生成された各学習用パッチ画像に対してラベルを付与するラベル付与部である。ここで、ラベル付与条件は、各学習用パッチ画像に対してラベルを付与する予め設定された条件である。例えば、ラベル付与条件は、学習用画像に対する物体（例えば、異常を検出する物体）の写りこみ、学習用画像における異常ではない汚れ等の特徴量（以下、変動特徴量と言う）、異常を検出する物体の形状、学習用パッチ画像の特徴量（例えば、画素値、エッジ）等である。
【００４４】
本実施形態では、パッチ画像ラベル付与部２０３は、学習用パッチ画像に付与するラベルとして、０〜ｎの正の整数のラベル番号を、ランダムに学習用パッチ画像に対して付与するものとするが、これに限定するものではない。
【００４５】
例えば、パッチ画像ラベル付与部２０３は、学習用パッチ画像間の類似度に基づいて、当該学習用パッチ画像に対して、ラベル番号をラベルとして付与しても良い。具体的には、パッチ画像ラベル付与部２０３は、複数の学習用パッチ画像間における類似度が高くなるに従って、当該複数の学習用パッチ画像のそれぞれに付与するラベル番号を近くする。一方、パッチ画像ラベル付与部２０３は、複数の学習用パッチ画像間における類似度が低くなるに従って、当該複数の学習用パッチ画像のそれぞれに付与するラベル番号を遠くする。
【００４６】
疑似画像生成部２０４は、入力パッチ画像生成部２０２により生成される学習用パッチ画像および当該学習用パッチ画像に付与されるラベルを入力として、当該学習用パッチ画像を復元した疑似画像を生成するニューラルネットワーク（本実施形態では、ディープニューラルネットワーク）を学習する。
【００４７】
これにより、疑似画像に表出される特徴の位置や形状の汎化性能を高めることができる。その結果、入力された正常画像に限らず、学習していない新規な正常画像を復元した疑似画像を生成可能となり、ニューラルネットワークにより学習していない正常画像が、検出対象画像として入力された場合でも、当該学習していない正常画像を異常な画像として検出することを抑制することができる。
【００４８】
また、学習用パッチ画像とともに入力されるラベルによって、当該ラベルが付与された学習用パッチ画像の特徴に特化した疑似画像の生成が可能となり、疑似画像に反映させる学習用画像の特徴を減らすことができる。その結果、疑似画像の生成精度を向上させて、疑似画像のぼけやエッジの崩れ等の発生を抑制することができる。
【００４９】
本実施形態では、疑似画像生成部２０４は、学習用パッチ画像およびラベルを入力として当該学習用パッチ画像を潜在変数に変換するエンコーダ２０４ａと、学習用パッチ画像から変換された潜在変数およびラベルを入力として疑似画像を生成するデコーダ２０４ｂと、を含むニューラルネットワークを学習する。
【００５０】
例えば、疑似画像生成部２０４は、学習用パッチ画像およびラベルを入力した場合に、入力されたラベルが付与された学習用パッチ画像から変換される潜在変数の分布が正規分布となるように、エンコーダ２０４ａのパラメータ（例えば、重み係数、バイアス）を調整する。また、疑似画像生成部２０４は、学習用画像から生成した学習用パッチ画像と、当該学習用パッチ画像の疑似画像と、の差異が小さくなるように、デコーダ２０４ｂのパラメータ（例えば、重み係数、バイアス）を調整する。
【００５１】
識別部２０５は、疑似画像生成部２０４により学習したニューラルネットワークにより生成される疑似画像と、入力パッチ画像生成部２０２により生成される検出用パッチ画像と、を比較して、検出対象画像の異常を検出する検出部である。これにより、学習していない学習していない新規な学習用画像から復元した疑似画像を用いて、検出対象画像の異常を検出可能となるので、検出対象画像の異常の検出精度を向上させることができる。
【００５２】
本実施形態では、識別部２０５は、疑似画像と検出用パッチ画像との差分（例えば、疑似画像から変換される潜在変数と、検出用パッチ画像から変換される潜在変数との間の距離）が、予め設定された閾値以上である場合に、検出対象画像に異常があることを検出する。
【００５３】
本実施形態では、検出対象画像から生成される検出用パッチ画像の種類（例えば、ラベル）毎に閾値が予め設定されているものとする。そして、識別部２０５は、疑似画像と検出用パッチ画像との差分が、当該検出用パッチ画像の種類に設定された閾値以上である場合に、検出対象画像に異常があることを検出する。これにより、検出対象画像から生成される各検出用パッチ画像に特化した閾値を用いて、検出対象画像の異常を検出可能となるので、検出対象画像の異常の検出精度をより向上させることができる。
【００５４】
次に、図３を用いて、本実施形態にかかる異常検出装置１００による学習用パッチ画像の生成処理およびラベルの付与処理の一例について説明する。図３は、第１の実施形態にかかる異常検出装置による学習用パッチ画像の生成処理およびラベルの付与処理の一例を説明するための図である。
【００５５】
あるオブジェクトＸ１の正常画像Ｇ１が学習用画像として取得されると、入力パッチ画像生成部２０２は、図３に示すように、取得された正常画像Ｇ１を、格子状に分割した複数の学習用パッチ画像を生成する。次いで、パッチ画像ラベル付与部２０３は、正常画像Ｇ１におけるオブジェクトＸ１の形状に基づいて、当該正常画像Ｇ１を分割した各学習用パッチ画像にラベル番号を付与する。
【００５６】
例えば、パッチ画像ラベル付与部２０３は、図３に示すように、正常画像Ｇ１を分割した学習用パッチ画像のうち、オブジェクトＸ１の画像を含み、かつ、オブジェクトＸ１の形状を特定可能な情報を含まない学習用パッチ画像に対しては、ラベル番号：０を付与する。また、パッチ画像ラベル付与部２０３は、図３に示すように、正常画像Ｇ１を分割した学習用パッチ画像のうち、オブジェクトＸ１の画像を含み、かつ、オブジェクトＸ１の形状を特定可能な情報を含む学習用パッチ画像に対しては、当該学習用パッチ画像に含まれるオブジェクトＸ１の画像の形状に応じたラベル番号：１〜ｎ（ｎは１以上の整数）を付与する。
【００５７】
また、パッチ画像ラベル付与部２０３は、図示しないが、学習用パッチ画像の特徴量としてのエッジに基づいて、学習用パッチ画像に対してラベルを付与することも可能である。具体的には、パッチ画像ラベル付与部２０３は、エッジの強さが予め設定された強さ以上の学習用パッチ画像に対しては、ラベル番号：１を付与する。一方、パッチ画像ラベル付与部２０３は、エッジの強さが予め設定された強さより低い学習用パッチ画像に対しては、ラベル番号：０を付与する。
【００５８】
また、パッチ画像ラベル付与部２０３は、図示しないが、学習用パッチ画像の画素値またはその統計量に基づいて、学習用パッチ画像に対してラベルを付与することも可能である。具体的には、パッチ画像ラベル付与部２０３は、学習用パッチ画像における画素値が０以外の面積が予め設定された面積より大きい学習用パッチ画像に対しては、ラベル番号：０を付与する。一方、パッチ画像ラベル付与部２０３は、学習用パッチ画像における画素値が０の面積が予め設定された面積以下の学習用パッチ画像に対しては、ラベル番号：１を付与する。
【００５９】
次に、図４を用いて、本実施形態にかかる異常検出装置１００による学習用パッチ画像の生成処理およびラベルの付与処理の他の例について説明する。図４は、第１の実施形態にかかる異常検出装置による学習用パッチ画像の生成処理およびラベルの付与処理の他の例を説明するための図である。
【００６０】
あるオブジェクトＸ２の正常画像Ｇ２が学習用画像として取得されると、入力パッチ画像生成部２０２は、図４に示すように、取得される正常画像Ｇ２を、格子状に分割した複数の学習用パッチ画像を生成する。次いで、パッチ画像ラベル付与部２０３は、正常画像Ｇ２に対するオブジェクトＸ２の写りこみに基づいて、当該正常画像Ｇ２を分割した各学習用パッチ画像にラベル番号を付与する。
【００６１】
例えば、パッチ画像ラベル付与部２０３は、図４に示すように、正常画像Ｇ２を分割した学習用パッチ画像のうち、オブジェクトＸ２が写りこんだ学習用パッチ画像に対しては、ラベル番号：０を付与する。また、パッチ画像ラベル付与部２０３は、図４に示すように、正常画像Ｇ２を分割した学習用パッチ画像のうち、オブジェクトＸ２が写りこんでいない学習用パッチ画像に対しては、ラベル番号：１を付与する。
【００６２】
次に、図５を用いて、本実施形態にかかる異常検出装置１００による学習用パッチ画像の生成処理およびラベルの付与処理の一例について説明する。図５は、第１の実施形態にかかる異常検出装置による学習用パッチ画像の生成処理およびラベルの付与処理の他の例を説明するための図である。
【００６３】
あるオブジェクトＸ２の正常画像Ｇ３が学習用画像として取得されると、入力パッチ画像生成部２０２は、図５に示すように、取得される正常画像Ｇ３を、格子状に分割した複数の学習用パッチ画像を生成する。次いで、パッチ画像ラベル付与部２０３は、変動特徴量に基づいて、当該正常画像Ｇ３を分割した各学習用パッチ画像にラベル番号を付与する。
【００６４】
例えば、パッチ画像ラベル付与部２０３は、図５に示すように、正常画像Ｇ２を分割した学習用パッチ画像のうち、ある変動特徴量である第１変動特徴量Ａ（例えば、赤色の汚れ）が想定される学習用パッチ画像に対しては、ラベル番号：０を付与する。一方、パッチ画像ラベル付与部２０３は、図５に示すように、第１変動特徴量とは異なる変動特徴量である第２変動特徴量Ｂ（例えば、青色の汚れ）が想定される学習用パッチ画像に対しては、ラベル番号：１を付与する。
【００６５】
次に、図６を用いて、本実施形態にかかる異常検出装置１００による疑似画像の生成例について説明する。図６は、第１の実施形態にかかる異常検出装置による疑似画像の生成例を示す図である。
【００６６】
本実施形態では、図６に示すように、取得部２０１によって学習用画像として取得される正常画像の中に、傷６０１および汚れ６０２を含むオブジェクトＸ１の画像（すなわち、異常画像）Ｇ４が含まれていた場合に、疑似画像生成部２０４は、異常画像Ｇ４内の複数の学習用パッチ画像のそれぞれに付与されるラベルに特化した特徴を反映させた疑似画像が生成可能となる。すなわち、疑似画像生成部２０４は、図６に示すように、異常画像Ｇ４に含まれる傷６０１を含まず、通常、オブジェクトＸ１に含まれる汚れ６０２のみが反映された画像（疑似画像）Ｇ５を生成することができる。
【００６７】
これにより、傷６０１を含むオブジェクトＸ１の異常画像Ｇ４からも、正常画像を復元した疑似画像Ｇ５が生成可能となるので、ニューラルネットワークにより学習していない正常画像が、検出対象画像として入力された場合でも、当該学習していない正常画像を異常な画像として検出することを抑制することができる。
【００６８】
次に、図７を用いて、本実施形態にかかる異常検出装置１００によるニューラルネットワークの学習処理の流れの一例について説明する。図７は、第１の実施形態にかかる異常検出装置によるニューラルネットワークの学習処理の流れの一例を示すフローチャートである。
【００６９】
まず、取得部２０１が、ニューラルネットワークの学習用画像を取得する（ステップＳ７０１）。
【００７０】
次いで、入力パッチ画像生成部２０２は、取得部２０１により取得した学習用画像から、複数の学習用パッチ画像を生成する（ステップＳ７０２）。
【００７１】
パッチ画像ラベル付与部２０３は、予め設定されたラベル付与条件に従って、入力パッチ画像生成部２０２により生成される複数の学習用パッチ画像のそれぞれに対してラベルを付与する（ステップＳ７０３）。
【００７２】
疑似画像生成部２０４は、入力パッチ画像生成部２０２により生成される学習用パッチ画像および当該学習用パッチ画像に付与されるラベルを入力として、当該学習用パッチ画像を復元した疑似画像を生成するニューラルネットワークを学習する（ステップＳ７０４）。
【００７３】
このように、第１の実施形態にかかる異常検出装置１００によれば、疑似画像に表出される特徴の位置や形状の汎化性能を高めることができる。その結果、入力された正常画像に限らず、学習していない新規な正常画像を復元した疑似画像を生成可能となり、ニューラルネットワークにより学習していない正常画像が、検出対象画像として入力された場合でも、当該学習していない正常画像を異常な画像として検出することを抑制することができる。
【００７４】
また、第１の実施形態にかかる異常検出装置１００によれば、学習用パッチ画像とともに入力されるラベルによって、当該ラベルが付与された学習用パッチ画像の特徴に特化した疑似画像の生成が可能となり、疑似画像に反映させる学習用画像の特徴を減らすことができる。その結果、疑似画像の生成精度を向上させて、疑似画像のぼけやエッジの崩れ等の発生を抑制することができる。
【００７５】
（第２の実施形態）
本実施形態は、疑似画像または学習用パッチ画像である入力画像を入力として、当該入力画像の真偽の判定を行うニューラルネットワークを学習し、疑似画像が偽と判定される確率が低減されるように、疑似画像を生成するニューラルネットワークを学習する例である。以下の説明では、第１の実施形態と同様の構成については説明を省略する。
【００７６】
図８は、第２の実施形態にかかる異常検出装置の機能構成の一例を示すブロック図である。図８に示すように、本実施形態にかかる異常検出装置８００は、機能構成として、取得部２０１、入力パッチ画像生成部２０２、パッチ画像ラベル付与部２０３、疑似画像生成部８０１、および識別部２０５を有している。
【００７７】
疑似画像生成部８０１は、深層生成ネットワークの１つである敵対的生成ネットワーク（ＧＡＮ）を用いて疑似画像を生成する。具体的には、疑似画像生成部７０１は、画像生成部８０１ａ、および画像分類部８０１ｂを有する。
【００７８】
画像分類部８０１ｂは、後述する画像生成部８０１ａにより生成される疑似画像、または入力パッチ画像生成部２０２により生成される学習用パッチ画像である入力画像を入力として、当該入力画像の真偽の判定を行うニューラルネットワークを学習する。
【００７９】
画像生成部８０１ａは、画像分類部８０１ｂにおいて疑似画像が偽と判定される確率が低減されるように、疑似画像を生成するニューラルネットワークを学習する。
【００８０】
これにより、一般的な疑似画像の真偽の判定を行う分類部を持つＧＡＮと比較して、画像分類部８０１ｂにおいて疑似画像が偽と判定される確率が低減されるように訓練されるため、学習用パッチ画像により近い疑似画像の生成が可能となる。
【００８１】
例えば、画像生成部８０１ａは、疑似画像が偽と判定された場合における、疑似画像を生成するニューラルネットワークのパラメータ（例えば、重み係数、バイアス）の調整量を、疑似画像を真と判定した場合における、疑似画像を生成するニューラルネットワークのパラメータの調整量よりも大きくする。
【００８２】
このように、第２の実施形態にかかる異常検出装置８００によれば、画像分類部８０１ｂにおいて疑似画像が偽と判定される確率が低減され、学習用パッチ画像のいずれかのラベルと推定される確率が高くなるように学習が進み、学習用パッチ画像により近くかつ当該学習用パッチ画像に付与されるラベルの画像により特化した疑似画像の生成が可能となる。その結果、検出対象画像の異常の検出精度を向上させることができる。
【００８３】
（第３の実施形態）
本実施形態は、疑似画像および当該疑似画像の生成に用いたラベル、または、学習用パッチ画像および当該学習用パッチ画像に付与されるラベルを入力として、疑似画像または学習用パッチ画像の真偽を判定するニューラルネットワークを学習し、疑似画像および当該疑似画像の生成に用いたラベルが、上記のニューラルネットワークに入力された際に、疑似画像が偽と判定される確率、および、学習用パッチ画像および当該学習用パッチ画像に付与されるラベルが、上記のニューラルネットワークに入力された際に、学習用パッチ画像が真と判定される確率が低減されるように、疑似画像を生成するニューラルネットワークを学習する例である。以下の説明では、第１の実施形態と同様の構成については説明を省略する。
【００８４】
図９は、第３の実施形態にかかる異常検出装置の機能構成の一例を示すブロック図である。図９に示すように、本実施形態にかかる異常検出装置９００は、機能構成として、取得部２０１、入力パッチ画像生成部２０２、パッチ画像ラベル付与部２０３、疑似画像生成部９０１、および識別部２０５を有している。
【００８５】
疑似画像生成部９０１は、第２の実施形態と同様に、深層生成ネットワークの１つである敵対的生成ネットワークを用いて疑似画像を生成する。具体的には、疑似画像生成部９０１は、画像生成部９０１ａ、および画像分類部９０１ｂを有する。
【００８６】
画像分類部９０１ｂは、疑似画像および当該疑似画像の生成に用いたラベル、または、学習用パッチ画像および当該学習用パッチ画像に付与されるラベルを入力として、疑似画像または学習用パッチ画像の真偽を判定するニューラルネットワークを学習する。
【００８７】
画像生成部９０１ａは、疑似画像および当該疑似画像の生成に用いたラベルが画像分類部９０１ｂに入力された際に、疑似画像が偽と判定される確率、および、学習用パッチ画像および当該学習用パッチ画像に付与されるラベルが画像分類部９０１ｂに入力された際に、学習用パッチ画像が真と判定される確率が低減されるように、疑似画像を生成するニューラルネットワークを学習する。
【００８８】
これにより、疑似画像および当該疑似画像の生成に用いたラベルが画像分類部９０１ｂに入力された際に、疑似画像が偽と判定される確率、および、学習用パッチ画像および当該学習用パッチ画像に付与されるラベルが画像分類部９０１ｂに入力された際に、学習用パッチ画像が真と判定される確率が低減され、疑似画像と学習用パッチ画像の分類が困難になるように学習が進むため、学習用パッチ画像により近い疑似画像の生成が可能となる。その結果、検出対象画像の異常の検出精度を向上させることができる。
【００８９】
例えば、画像生成部９０１ａは、画像分類部９０１ｂによって疑似画像が偽と判定された場合における、疑似画像を生成するニューラルネットワークのパラメータ（例えば、重み係数、バイアス）の調整量を、疑似画像を真と判定した場合における、疑似画像を生成するニューラルネットワークのパラメータの調整量より大きくする。
【００９０】
このように、第３の実施形態にかかる異常検出装置９００によれば、疑似画像および当該疑似画像の生成に用いたラベルが画像分類部９０１ｂに入力された際に、疑似画像が偽と判定される確率、および、学習用パッチ画像および当該学習用パッチ画像に付与されるラベルが画像分類部９０１ｂに入力された際に、学習用パッチ画像が真と判定される確率が低減され、疑似画像と学習用パッチ画像の分類が困難になるように学習が進むため、学習用パッチ画像により近い疑似画像の生成が可能となる。その結果、検出対象画像の異常の検出精度を向上させることができる。
【符号の説明】
【００９１】
１００，８００，９００  異常検出装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  通信Ｉ／Ｆ
１０５  入出力Ｉ／Ｆ
１０６  ＳＳＤ
１０７  データバス
２０１  取得部
２０２  入力パッチ画像生成部
２０３  パッチ画像ラベル付与部
２０４，８０１，９０１  疑似画像生成部
２０４ａ  エンコーダ
２０４ｂ  デコーダ
２０５  識別部
８０１ａ，９０１ａ  画像生成部
８０１ｂ，９０１ｂ  画像分類部
【図１】
2020160997.tif 000003
【図２】
2020160997.tif 000004
【図３】
2020160997.tif 000005
【図４】
2020160997.tif 000006
【図５】
2020160997.tif 000007
【図６】
2020160997.tif 000008
【図７】
2020160997.tif 000009
【図８】
2020160997.tif 000010
【図９】
2020160997.tif 000011