(57)【要約】      （修正有）【課題】材料表面の欠陥の効率的な識別方法を提供する。【解決手段】方法は、ニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成しＳ１０１、対象材料表面の画像を取得しＳ１０２、取得された画像をニューラルネットワークに入力して取得された画像の欠陥低減バージョンを生成しＳ１０３、取得された画像の生成された欠陥低減バージョンを取得された画像と比較して差異を識別しＳ１０４、識別された差異の位置で対象材料表面の欠陥を識別するＳ１０５。【選択図】図１
2020187735.tif 000002
【特許請求の範囲】
【請求項１】
材料表面の画像を処理して画像化された材料表面の欠陥を識別する方法であって、
第１のニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、
対象材料表面の画像を取得するステップと、
前記取得された画像を前記第１のニューラルネットワークに入力して前記取得された画像の欠陥低減バージョンを生成するステップと、
前記取得された画像の前記生成された欠陥低減バージョンを前記取得された画像と比較して差異を識別するステップと、
前記識別された差異の位置で前記対象材料表面の欠陥を識別するステップと、
を含む方法。
【請求項２】
各訓練画像は複数の画像部分として前記第１のニューラルネットワークに入力され、各画像部分は前記訓練画像の空間的細分化を表し、当該方法は、前記画像部分の欠陥低減バージョンを前記訓練画像の欠陥低減バージョンに集約するステップをさらに含み、
前記取得された画像は複数の画像部分として前記第１のニューラルネットワークに入力され、各画像部分は前記取得された画像の空間的細分化を表し、当該方法は、前記画像部分の欠陥低減バージョンを集約して前記取得された画像の欠陥低減バージョンを得るステップをさらに含む、
請求項１に記載の方法。
【請求項３】
前記比較することは、前記画像の欠陥低減バージョンと前記取得された画像との間で差異が識別された１つ以上の位置を特定することと、前記１つ以上の位置を出力することとを含む、請求項１又は２に記載の方法。
【請求項４】
前記取得された画像から、前記画像の欠陥低減バージョンと前記取得された画像との間で差異が識別された前記１つ以上の位置のうちの位置又は各位置と境を接する画像部分を抽出するステップと、
前記又は各画像部分を第２のニューラルネットワークに入力するステップであり、前記第２のニューラルネットワークは、材料表面欠陥を示す入力画像部分を処理することにより前記材料表面欠陥のエンコードされた特徴を出力するように訓練されたエンコーディングニューラルネットワークである、ステップと、
前記取得された画像から抽出された前記又は各画像部分をそれぞれの出力されたエンコードされた特徴に基づきラベルと共に出力するステップと、
をさらに含む請求項３に記載の方法。
【請求項５】
前記１つ以上の位置は、前記画像の欠陥低減バージョンと前記取得された画像との間で差異が識別された複数の位置であり、前記取得された画像から抽出された複数の画像部分があり、各々がそれぞれの位置と境を接し、
前記複数の画像部分は、過去に取得された画像と該画像のそれぞれの欠陥低減バージョンとから差異が識別された位置と境を接する画像部分の記憶された集合に追加され、前記画像部分の集合の各メンバは、前記画像部分を前記エンコーディングニューラルネットワークで処理することにより得られたそれぞれのエンコードされた特徴と共に記憶され、
前記取得された画像から抽出された前記画像部分の前記エンコードされた特徴に対してクラスタリングアルゴリズムが実行されて前記画像部分をグループに分割し、前記取得された画像から抽出された前記複数の画像部分の各々はそれぞれのグループのメンバであり、
前記取得された画像から抽出された前記複数の画像部分の各々に対して出力されるラベルは、前記画像部分の前記エンコードされた特徴の、過去に取得された画像からの記憶された画像部分のエンコードされた特徴との比較に基づいて、過去に取得された画像から抽出された記憶された画像部分に割り当てられたラベルから選択される、
請求項４に記載の方法。
【請求項６】
ユーザインターフェースを介して、同じグループ内の前記又は各画像部分をそれぞれの出力されたエンコードされた特徴に基づきラベルと共に出力することは、前記画像部分に対する複数の候補ラベルを出力することを含み、前記候補ラベルの各々は、前記画像部分の前記エンコードされた特徴の、過去に取得された画像及び前記画像部分からの記憶された画像部分のエンコードされた特徴との比較に基づき、過去に取得された画像に割り当てられたラベルから選択され、
当該方法は、
ユーザインターフェースを介して、前記出力された候補ラベルの中からのラベルの選択を受け入れ、前記選択されたラベルを前記画像部分に割り当てるステップ
をさらに含む、請求項５に記載の方法。
【請求項７】
前記複数の画像部分の各々に対して出力されるラベル、又は前記複数の画像部分の各々に対して出力される候補ラベルのうち１つは、画像部分へのラベルの過去の割り当てに基づき機械学習アルゴリズムにより選択された推奨されたラベルである、
請求項５又は６に記載の方法。
【請求項８】
前記第１のニューラルネットワークは敵対的生成ネットワークであり、前記訓練することは、前記第１のニューラルネットワークを訓練して、生成された画像データが訓練データセットに属するディスクリミネータネットワークを満たす画像データを生成することと、前記ディスクリミネータネットワークを訓練して、訓練データセットに属する画像データと生成された画像データとを区別することとを含む、請求項１乃至７のうちいずれか１項に記載の方法。
【請求項９】
プロセッサに、
第１のニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、
対象材料表面の画像を取得するステップと、
前記取得された画像を前記第１のニューラルネットワークに入力して前記取得された画像の欠陥低減バージョンを生成するステップと、
前記取得された画像の前記生成された欠陥低減バージョンを前記取得された画像と比較して差異を識別するステップと、
前記識別された差異の位置で前記対象材料表面の欠陥を識別するステップと、
を含む方法を実行させるコンピュータプログラム。
【請求項１０】
プロセッサハードウェア及びメモリハードウェアを含む装置であって、前記メモリハードウェアは、前記プロセッサハードウェアにより実行されたときに前記プロセッサハードウェアに方法を実行させる処理命令を記憶し、前記方法は、
第１のニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、
対象材料表面の画像を取得するステップと、
前記取得された画像を前記第１のニューラルネットワークに入力して前記取得された画像の欠陥低減バージョンを生成するステップと、
前記取得された画像の前記生成された欠陥低減バージョンを前記取得された画像と比較して差異を識別するステップと、
前記識別された差異の位置で前記対象材料表面の欠陥を識別するステップと、
を含む、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、材料表面欠陥識別の分野に存する。特に、本発明は、欠陥検出及び識別を自動化するための機械学習アルゴリズムの使用に関する。
【背景技術】
【０００２】
材料製造会社は、かなり厳しい基準の下で制約されている。より複雑なコンポーネントを常に生産しながら可能な最高品質の材料を提供するために、製造業者は自社製品を効率的にコントロールする必要がある。そのために、非破壊試験（ＮＤＴ）が用いられてきた。ＮＤＴは、材料、コンポーネント、又はシステムの特性を損傷をもたらさずに評価するために科学及び技術産業で使用される広範な解析手法群をカバーしている。しかしながら、自動化された生産レーンにおいて、検査プロセスはボトルネックであり、ゆえに生産コストを増加させる。
【０００３】
製造業者は、製品を画像化することにより大量のデータを捕捉するが、それらがラベル付けされていないとき、検査プロセスにおいて人間の入力が必要とされる。
【０００４】
材料表面検査を自動化する既存の手法は、２つの方法にカテゴリ分けできる。
‐  第１には、人間によりラベル付けされた画像の大きいデータセットを作成することであり、これは非常に骨が折れ、注釈者の専門知識により制限される。
‐  第２には、手作りのアルゴリズムを作成することである。この手法は、ラベル付けされていないデータセット上でコンピュータビジョン法を適用し、小さいラベル付けされたデータセット上でアルゴリズムを評価する。このような手法は、効果的なアルゴリズムを設計することの困難さに悩まされる。
【発明の概要】
【０００５】
実施形態は、材料表面の画像を処理して画像化された材料表面の欠陥を識別する方法を含み、該方法は、ニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、対象材料表面の画像を取得するステップと、取得された画像をニューラルネットワークに入力して取得された画像の欠陥低減バージョンを生成するステップと、取得された画像の生成された欠陥低減バージョンを取得された画像と比較して差異を識別するステップと、識別された差異の位置で対象材料表面の欠陥を識別するステップとを含む。
【０００６】
実施形態は、自動化された欠陥検査メカニズムを提供する。実施形態は、自動的に訓練されたニューラルネットワークを利用して対象材料表面の画像の欠陥なし又は欠陥低減バージョンを生成し、これは、実際の画像と比較すると欠陥の位置を明らかにする。このようにして、ラベル付けされた訓練データのない状態でＡＩベースの欠陥識別を行うことができる。
【０００７】
実施形態は、教師なし人工知能を使用し、これは、モデル（すなわち、ニューラルネットワーク及び画像比較ステップ）が自身で学習して欠陥を検出することを意味する。実施形態は、欠陥なし又はほぼ欠陥なしのサンプル画像を利用してニューラルネットワークを訓練し、画像からかき傷、へこみなどの欠陥を取り除き、それにより、欠陥が見える元の画像との比較により、欠陥を検出することができる。訓練は自動化されるため、システムを訓練するコストは既存の手法と比較して大幅に低減される。さらに、検出される欠陥は、人間のトレーナーの知識により制限されない。
【０００８】
画像の欠陥低減バージョンは、欠陥なしでもよい。訓練は、ニューラルネットワークを訓練して画像の欠陥なしバージョンを生成することでもよい。低減は、画像の取得されたバージョンに相対的であり、それにより、ニューラルネットワークは入力画像内の欠陥を低減するように訓練される。
【０００９】
ニューラルネットワークは、インペインタニューラルネットワーク又はオートエンコーダでもよい。ニューラルネットワークは、ジェネレータニューラルネットワーク、生成ニューラルネットワーク、又は生成するニューラルネットワークでもよく、それにより、入力データセットの制約下でデータを生成するニューラルネットワーク又はモデルが存在することが意図され、換言すれば、生成されたデータは入力データセットの新しいバージョンである。
【００１０】
比較は、例えば、残差（２つのバージョン間の差異のビットマップ又は何らかの他の表現）を作成して欠陥を発見するための視覚的比較である。例えば、それは、いくつかの局所的なメトリックを用いて、又は予め訓練されたニューラル活性化に基づいて、又はこれらの手法の何らかの組み合わせとして、画素ごと、ブロックごとに行われてもよい。
【００１１】
実施形態は、材料表面が製造される材料又はコンポーネントの表面である製造分野での実現に適する。実施形態はまた、材料表面が組織表面などのヒト又は非ヒト（特に爬虫類、鳥、動物を含む）の身体の表面、組織又は電気的活動のスキャンを含む内臓の画像である医療分野での実現にも適する。実施形態はまた、（ドローンから画像化された）風力タービンのブレード、（ドローンから画像化された）橋、又は（車両取り付けカメラで画像化された）道路表面などの構造物における欠陥を識別するためのインフラストラクチャ検査の分野での実現にも適する。
【００１２】
欠陥は、背景（表される背景が規則的なテクスチャ又は一連の構造である例を含む）から目立つ何らかであり得、これは、隆起／沈下（厚さの非一貫性を示し得る）、脱色を含んでもよい。欠陥は、動物などの特定の形状を含まないように構成されてもよい。
【００１３】
任意で、各訓練画像は、複数の画像部分としてニューラルネットワークに入力され、各画像部分は、訓練画像の空間的細分化（subdivision）を表し、本方法は、画像タイルの欠陥低減バージョンを訓練画像の欠陥低減バージョンに集約するステップをさらに含み、取得された画像は、複数の画像タイルとして生成ニューラルネットワークに入力され、各画像タイルは、取得された画像の空間的細分化を表し、本方法は、画像タイルの欠陥低減バージョンを集約して、取得された画像の欠陥低減バージョンを得るステップをさらに含む。
【００１４】
有利には、タイルベースの訓練手順は、ニューラルネットワークを訓練するためのより多数のサンプルを提供し、訓練データ中に存在するあらゆる欠陥の影響を低減する。さらに、処理に対するタイルベースのアプローチは計算的に効率的であり、欠陥の位置特定において結果的な利点を有する。タイルサイズは、ニューラルネットワークの訓練及び／又はニューラルネットワークによる取得された画像の欠陥低減バージョンの生成がＧＰＵにより実行可能であることを確実にするように選択されてもよい。ＧＰＵは、一実施形態の方法を実行する特定のコンピュータ又はコンピュータシステムの一部でもよい。
【００１５】
任意で、比較は、画像の欠陥低減バージョンと取得された画像との間で差異が識別された１つ以上の位置を特定することと、１つ以上の位置を出力することとを含む。
【００１６】
ユーザは、画像化された材料表面上に欠陥があるか否か、又はいくつの欠陥があるかを単に知ることに関心がある可能性がある。一方、欠陥の位置は特に関心がある可能性があり、例えば、それにより、材料表面自体で欠陥をチェックすることができる。位置を出力することは、取得された画像を参照して出力することでもよく、あるいは例えば照明により材料表面自体に直接出力することでもよい。
【００１７】
実施形態は、取得された画像から、再生成された取得された画像と取得された画像との間で差異が識別された１つ以上の位置のうちの位置又は各位置と境を接する画像部分を抽出するステップと、上記又は各画像部分を、材料表面欠陥を示す入力画像部分を処理すること（上記又は各画像部分をニューラルネットワークで処理すること）により材料表面欠陥のエンコードされた特徴を出力するように訓練されたエンコーディングニューラルネットワークに入力するステップと、取得された画像から抽出された上記又は各画像部分を、それぞれの出力されたエンコードされた特徴に基づき、ラベルと共に出力するステップとをさらに含んでもよい。
【００１８】
有利には、そのような実施形態はさらなるニューラルネットワークを利用し、このネットワークは、欠陥を特徴付け、したがってラベル付けするように訓練される。これは、例えば重大度を評価する目的で、存在する欠陥の性質を要約したいユーザにとって特に関心がある可能性がある。例えば、ラベルは、欠陥を記述する語又は用語などの意味ラベルでもよい。さらなるニューラルネットワークは予め訓練されてもよく、あるいは画像部分にラベルを割り当てる処理の間に訓練されてもよい。
【００１９】
出力は、画像部分のラベル付けされたバージョンを記憶装置に出力すること、若しくは画像部分のラベル付けされたバージョンをユーザによる観察のために表示ユニットに出力すること、又は上記の双方でもよい。
【００２０】
任意で、１つ以上の位置は、取得された画像の欠陥低減バージョンと取得された画像との間で差異が識別された複数の位置であり、取得された画像から抽出された複数の画像部分があり、各々がそれぞれの位置と境を接し、複数の画像部分は、過去に取得された画像及びそれぞれの欠陥低減バージョンから差異が識別された位置と境を接する画像部分の記憶された集合（population）に追加され、画像部分の集合の各メンバは、画像部分をエンコーディングニューラルネットワークで処理することにより得られたそれぞれのエンコードされた特徴と共に記憶され、取得された画像から抽出された画像部分のエンコードされた特徴に対してクラスタリングアルゴリズムが実行されて、該画像部分をグループに分割し、取得された画像から抽出された複数の画像部分の各々は、それぞれのグループのメンバであり、取得された画像から抽出された複数の画像部分の各々に対して出力されるラベルは、画像部分のエンコードされた特徴の、過去に取得された画像からの記憶された画像部分のエンコードされた特徴との比較に基づいて、過去に取得された画像から抽出された記憶された画像部分に割り当てられたラベルから選択される。
【００２１】
有利には、クラスタリングアルゴリズムは、類似の特性を有する欠陥領域をグループ化し、ゆえに、ユーザはグループ内の欠陥を考慮し、それらに効率的な方法でラベル付けすることができる。
【００２２】
任意で、クラスタリングアルゴリズムは、過去に取得された画像から抽出された記憶された画像部分と、取得された画像から抽出された画像部分とに対して作用し（過去に取得された画像はラベルを既に割り当てられている）、同じグループ内の（現在）取得された画像から抽出された各画像部分に対して出力されるラベルは、共通してグループ化された（すなわち、現在取得されている画像からの画像部分でグループ化された）画像部分の中からの（最も一般的な）ラベルである。
【００２３】
任意で、同じグループ内の画像部分に割り当てられるラベルは、ユーザインターフェースを介してユーザによりそれぞれの画像部分に前に割り当てられたラベルである。
【００２４】
有利には、そのような実施形態は、アルゴリズムが過去のユーザ活動から学習することを可能にする。
【００２５】
具体的には、実施形態は、ユーザインターフェースを介して、同じグループ内の上記又は各画像部分をそれぞれの出力されたエンコードされた特徴に基づきラベルと共に出力することが、画像部分に対する複数の候補ラベルを出力することであり、候補ラベルの各々はグループ内の画像部分に割り当てられたラベルから選択されることを含むことを含んでもよい。本方法は、ユーザインターフェースを介して、出力された候補ラベルの中からのラベルの選択を受け入れ、選択されたラベルを画像部分に割り当てることをさらに含んでもよい。
【００２６】
有利には、このような実施形態は、欠陥、又は欠陥を示す画像領域にラベル付けするための簡便なメカニズムを提供する。ラベル付けされた画像領域は、画像領域が抽出された取得された画像を識別するか又はそれに関連するユーザクエリに応答して出力されてもよい。
【００２７】
任意で、複数の画像部分の各々に対して出力されるラベル、又は複数の画像部分の各々に対して出力される候補ラベルのうち１つは、画像部分へのラベルの過去の割り当てに基づき機械学習アルゴリズムにより選択された推奨されたラベルである。
【００２８】
有利には、このような実施形態は、アクティブ学習アルゴリズムなどの機械学習アルゴリズムを利用して、過去のユーザ入力から学習し、欠陥にラベル付けする処理を完全に又は部分的に自動化する。
【００２９】
任意で、訓練は、敵対的生成ネットワークの一部としてニューラルネットワークモデルを訓練して、生成された画像データが訓練データセットに属するディスクリミネータネットワークを満たす画像データを生成することと、ディスクリミネータネットワークを訓練して、訓練データセットに属する画像データと生成された画像データとを区別することとを含む。
【００３０】
有利には、敵対的生成ネットワークは、手動介入がない状態でジェネレータニューラルネットワークを訓練するメカニズムを提供する。
【００３１】
ニューラルネットワークは、インペインタ、ジェネレータニューラルネットワーク、畳み込みノイズ除去ニューラルネットワーク、又はこれらの何らかの組み合わせでもよい。
【００３２】
実施形態は、プロセッサハードウェア及びメモリハードウェアを含むコンピューティングシステムにより実行されたときにプロセッサハードウェアに方法を実行させるコンピュータプログラムであって、方法は、ニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、対象材料表面の画像を取得するステップと、取得された画像をニューラルネットワークに入力して取得された画像の欠陥低減バージョンを生成するステップと、取得された画像の生成された欠陥低減バージョンを取得された画像と比較して差異を識別するステップと、識別された差異の位置で対象材料表面の欠陥を識別するステップと、を含む、コンピュータプログラムを含んでもよい。
【００３３】
実施形態は、プロセッサハードウェア及びメモリハードウェアを含む装置であって、メモリハードウェアは、プロセッサハードウェアにより実行されたときにプロセッサハードウェアに方法を実行させる処理命令を記憶し、方法は、第１のニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、対象材料表面の画像を取得するステップと、取得された画像を第１のニューラルネットワークに入力して取得された画像の欠陥低減バージョンを生成するステップと、取得された画像の生成された欠陥低減バージョンを取得された画像と比較して差異を識別するステップと、識別された差異の位置で対象材料表面の欠陥を識別するステップと、を含む、装置をさらに含んでもよい。
【００３４】
任意で、プロセッサハードウェアはＧＰＵを含む。
【００３５】
実施形態は、とりわけ、２つの顕著な特徴を有する。第１に、訓練フェーズが自動的であり、すなわち、人間の入力又は介入なしで実行される。第２に、実施形態は、材料表面を検査すると同時に一貫したデータセットを作成して欠陥のさらなる局所化、検出、及び／又は分類をサポートするための安定した手法を提供する。
【図面の簡単な説明】
【００３６】
次に、以下の図面を参照して純粋に例示として実施形態を説明する。
【図１】一実施形態の方法を示す。
【図２】訓練を実現するためのニューラルネットワークアーキテクチャを示す。
【図３】図３Ａは画像の取得されたバージョンを示し、図３Ｂは訓練されたインペインタの出力を示し、図３Ｃはクリーニングされた画像を示し、図３Ｄは出力を示す。
【図４】図４Ａは取得された画像を示し、図４Ｂはその生成された欠陥低減バージョンを示し、図４Ｃは出力を示す。
【図５】訓練処理及び推論処理における画像を示す。
【図６】畳み込みノイズ除去人工ニューラルネットワークを示す。
【図７】畳み込みノイズ除去人工ニューラルネットワークの機能性を示す。
【図８】一実施形態の方法における一連のステップを示すフローチャートである。
【図９Ａ】実施形態の一部を形成する方法ステップを示す。
【図９Ｂ】実施形態の一部を形成する方法ステップを示す。
【図１０】画像の断片化及び集約を示す。
【図１１】図１１Ａ及び図１１Ｂは同じ画像の欠陥ありバージョン及び欠陥低減バージョンを示す。
【図１２Ａ】訓練フェーズにおける処理の間の画像を示す。
【図１２Ｂ】推論フェーズにおける処理の間の画像を示す。
【図１３】一実施形態の出力を示す。
【図１４】図１４Ａは取得された画像から抽出された欠陥を示し、図１４Ｂは取得された画像から抽出された背景を示す。
【図１５】一実施形態の装置を示す。
【発明を実施するための形態】
【００３７】
図１は、一実施形態の方法を示す。実施形態の説明は、例として、製造環境の広い視点及びその分野に典型的に関連づけられる欠陥のタイプから記載される。実施形態は、そのような実装に限定されず、表面欠陥の識別を必要とする任意の技術的環境に適用されてよい。例えば、実施形態は、「材料表面（material  surface）」上の表面の非標準的な何らかを識別することを望む任意の技術分野に適用されてよい。例えば、材料表面は、ヒト組織、植物の表面、織物、検査に対するインフラストラクチャ（ドローンを使用するタービンブレード又は橋、車両取り付けカメラを使用する道路表面）を含むことができる。
【００３８】
ステップＳ１０１において、ニューラルネットワークの自動化された訓練が実行される。Ｓ１０１は、ニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減（reduced-defect）バージョンを生成することを含んでもよい。この文脈における自動は、教師なしである（unsupervised）、すなわち、訓練がニューラルネットワークからの出力の手動補正のない状態で実行されることを意味するとみなされる。
【００３９】
図２は、ステップＳ１０１を実行するためのニューラルネットワークアーキテクチャを概略的に示す。Ｓ１０１は、例えば、敵対的生成（generative  adversarial）ニューラルネットワークにより実行されてもよく、これにおいて、ニューラルネットワーク２０１は、ディスクリミネータ（discriminator）ニューラルネットワーク２０２による実データとの弁別のためのデータを生成する。ニューラルネットワーク２０１の目標は、ディスクリミネータニューラルネットワーク２０２が実データと弁別できないデータを生成することである。ディスクリミネータニューラルネットワーク２０２からの出力（ジェネレータ（generator）データが実データであるか否か）は、例えば、逆誤差伝搬（backwards  error  propagation）によりニューラルネットワーク２０１を訓練する。ニューラルネットワーク２０１は、ディスクリミネータニューラルネットワーク２０２が実データと区別できないデータを生成するように訓練される。一方、ディスクリミネータニューラルネットワーク２０２も訓練されるが、生成されたデータと実データとを弁別するように訓練される。例えば、ディスクリミネータニューラルネットワーク２０２は、それが実データと生成されたデータとを成功裏に弁別したか否かについて通知され、例えば逆誤差伝搬により、成功裏に弁別するように訓練される。したがって、人間又は手動の介入なしで、ニューラルネットワーク２０１及びディスクリミネータニューラルネットワーク２０２は互いに訓練する。訓練データがラベル付けされる必要はなく、したがって、人間の専門家からの入力の必要を排除する。
【００４０】
実データは材料表面の画像でもよい。任意で、実データは、ｎ個の領域に（例えば、グリッドで）分割されたときに閾値より高い比率の欠陥なしの（defect-free）領域を有する材料表面の画像でもよい。閾値比率は、例えば、０．９９、０．９５、０．９０でもよく、あるいは０．９より大きく１以下の範囲でもよい。例えば、訓練画像は、取得された画像に画像化された材料と同じ材料の表面の画像でもよい。
【００４１】
実施形態は、図２に示されるような敵対的生成ネットワーク技術を利用して、欠陥を有する表面の画像を欠陥低減表面の画像として再生成する方法を学習する。（前処理にもかかわらず）画像の生成されたバージョンと画像の取得されたバージョンとの間に生じる誤差又は差異は、欠陥の位置でより大きい。したがって、２つのバージョン間の画素値の比較は、欠陥が検出されることを可能にする。例えば、２つのバージョン上の相当画素間の画素値差の比率は誤差として登録してもよく、所与のサイズの領域における閾値より大きい比率の誤差は欠陥として登録してもよい。
【００４２】
ステップＳ１０２は、ステップＳ１０１の実行の後、前、又は間に実行される。ステップＳ１０２は、対象材料表面の画像を取得することを含む。例えば、対象材料表面は、ユーザ又はオペレータが何らかの欠陥の存在及び／又は位置を識別したい材料表面である。画像は、例えば、ネットワークを介した受信、記憶装置からの読み出し、画像化ハードウェアにより実行される画像化処理のうち１つ以上により取得されてもよい。
【００４３】
ステップＳ１０３は、ステップＳ１０２及びＳ１０３の後に実行される。ステップＳ１０３はＳ１０１の後に実行され、なぜならば、ニューラルネットワーク２０１はそれが取得された画像を処理するときまでに訓練されているためである。しかしながら、ニューラルネットワーク２０１のさらなる訓練が継続して行われてもよいことに留意する。Ｓ１０３において、取得された画像はニューラルネットワーク２０１に入力され、取得された画像の欠陥低減バージョンを生成する。例えば、Ｓ１０３において、訓練されたニューラルネットワーク２０１は取得された画像（これは前処理されていてもよい）を供給され、取得された画像の欠陥が取り除かれた新しいバージョンを生成する。例えば、訓練されたニューラルネットワーク２０１はＣＤＡＮＮであり、画像のノイズ除去された、ゆえに欠陥除去された新しいバージョンを生成する。
【００４４】
ＣＤＡＮＮは、画像又は画像のパッチを再生成し、必要に応じて画像パッチを画像に再構成するように訓練される。再構成された画像は入力画像と比較され、画像の２つのバージョンにわたる相当画素の画素値間の差異の位置に基づいて欠陥を識別する。一ＣＤＡＮＮは、図６に示される、ニューラルネットワーク２０１の例示的な特定のアーキテクチャであり、これは、Ｓ１０１で訓練され、Ｓ１０３で画像の新しいバージョンを生成し、入力画像が何らかのノイズにより破壊されている場合に入力画像（訓練画像又は対象材料表面の取得された画像のいずれか）を処理し、入力画像を（エンコードされた）潜在空間にエンコードし、次いで画像をデコードするように構成される。ＣＤＡＮＮは、入力画像を再構成するために最適化するが、図７に示すようにノイズ除去される。図７において、ＣＤＡＮＮはエンコーダ７０１及びデコーダ７０２を含む。ノイズのある入力は、入力画像の圧縮された表現７０３（エンコードされた表現）からの特徴の抽出によりノイズ除去される。
【００４５】
ニューラルネットワーク２０１は、インペインタ（inpainter）ニューラルネットワーク又はオートエンコーダでもよい。ニューラルネットワーク２０１は、ジェネレータニューラルネットワーク、生成ニューラルネットワーク、又は生成するニューラルネットワークでもよく、それにより、入力データセットの制約下でデータを生成するニューラルネットワーク又はモデルが存在することが意図され、換言すれば、生成されたデータは入力データセットの新しいバージョンである。ニューラルネットワーク２０１は、畳み込みニューラルネットワーク、特に、畳み込みノイズ除去オートエンコーダニューラルネットワーク（convolutional  denoising  autoencoder  neural  network、ＣＤＡＮＮ）でもよい。ニューラルネットワーク２０１は、通常から通常へ、又はクリーンからクリーンへマッピングするように訓練される。畳み込みノイズ除去オートエンコーダニューラルネットワークの例において、ニューラルネットワークは、図７に示すように、入力画像を潜在空間７０３へ、次いでノイズが取り除かれた状態で同じ入力画像へエンコードするように最適化される。
【００４６】
ニューラルネットワーク２０１は、２つのモデル、例えば、入力画像（領域ごと）の新しい欠陥低減バージョンを生成するインペインタモデルと、新たに生成された画像からノイズを取り除くクリーニングモデルとを含んでもよい。図３Ａ〜３Ｄは、一実施形態において生成された取得された画像の異なるバージョンを示す。特に、図３Ａは取得された画像を例示し、図３Ｂは生成された画像を例示する。図３Ｃは、ニューラルネットワーク２０１がクリーニングモデルを含む一実施形態において生成された画像をさらに例示する。図３Ｄは、ユーザに対する欠陥の位置を識別する画像マスクを示す。
【００４７】
図３Ａは、画像の取得されたバージョンを示す。
【００４８】
図３Ｂは、（図３Ａで画像化されたのと同じ材料の表面の画像で訓練された）訓練されたインペインタの出力を示すが、別のタイプのニューラルネットワーク２０１もまた、取得された画像の新しいバージョンを生成するために使用されてよいことに留意する。例えば、インペインタモデルは、上に詳述したような敵対的生成ネットワークの一部として訓練されていてもよい。ニューラルネットワーク２０１の全部又は一部としてインペインタモデルを含む実施形態において、インペインタモデルは、取得された画像を画像全体をカバーする領域に分割し、各領域を順に「欠損」領域として扱い、訓練されたインペインタモデルを使用して欠損領域の新しいバージョンを生成する。次いで、欠損領域の生成された新しいバージョンが組み合わせられ、画像全体の新しいバージョンを提供する。例えば、各領域は、一画素、ｎ×ｎ画素の正方形、ｎ×ｍ画素の長方形、又は何らかの他のサイズ若しくは形状の領域でもよい。
【００４９】
図３Ｃは、画像の生成されたバージョンのクリーニングされたバージョンを示す。例えば、クリーニングモデルは、インペインタモデルを訓練するために使用された同じ訓練データセット上で訓練されていてもよい。クリーニングモデルは、例えばノイズ除去人工ニューラルネットワークでもよい。このような訓練では、インペインタモデル及びクリーニングモデルの双方が、テストデータセット（すなわち、テスト画像）とクリーニングモデルにより出力されたテスト画像のバージョンとの間の差異解析を実行することにより評価されることがあってもよい。
【００５０】
図３Ｄは、図３Ａの取得された画像における欠陥の位置を強調又は識別する出力を示す。マスクが使用され、マスクされた領域は、差異又は誤差が検出されていない（あるいは、閾値より小さい差異又は誤差が検出され、例えば、領域内の集約画素値差が所定閾値を下回る）領域を表し、透過領域は、差異又は誤差が検出されている領域を識別し、そのような領域は、取得された画像内の欠陥の位置である。マスクは、対象材料表面の取得された画像（すなわち、図３Ａの画像）、インペイントされた画像（すなわち、図３Ｂ）、又はクリーニングされたインペイントされた画像（すなわち、図３Ｃ）のいずれかに重ねられる。いずれの場合も、マスクは、検出された欠陥の位置をユーザに対し強調する。
【００５１】
図４Ａ〜図４Ｃは、取得された画像（図４Ａ）の新しいバージョン（図４Ｂ）の生成と、ユーザに対し欠陥の位置を強調するマスク（図４Ｃ）の出力のさらなる例を示す。例えば、インペインタモデルがニューラルネットワークとして使用されていて、図４Ａによる入力画像から図４Ｂの画像を生成してもよい。
【００５２】
図５は、訓練処理及び推論処理における画像を示す。訓練処理は、ステップＳ１０１の例示である。推論処理は、ステップＳ１０２〜Ｓ１０５の例示である。図５は、訓練フェーズにおいて、モデルが、通常又は欠陥なしの画像を通常又は欠陥なしの画像にマッピングするように訓練されることを示す。左手側の入力訓練データに基づいて、モデル（モデルはニューラルネットワーク２０１である）は、データを生成又は再生成する方法を学習する。ライブフェーズ又は実現フェーズとも呼ばれ得る推論フェーズにおいて、欠陥なしの取得された画像がモデルにより処理され、これは同じ画像の生成された（又は再生成された）バージョンを出力する。画素ごとに画素値を比較することにより、検出される誤差又は差異はかなり小さく、ゆえに、出力マスクはいかなる欠陥位置も示さない。一方、欠陥ありの取得された画像を処理することにより、モデルは、画像の欠陥なし又は欠陥低減バージョンを出力し、したがって、比較において、差異の領域が識別され、出力マスク上に示される。取得された画像と画像の生成された（又は再生成された）バージョンとの差異は、残差誤差と呼ばれてもよい。
【００５３】
図５において、訓練データは、欠陥なし画像により表される。欠陥ありサンプルを用いた訓練もまた実現可能だが、訓練されたモデルの性能が訓練データの品質により部分的に制約されることに留意する。ニューラルネットワーク２０１が画像を一度に１つのサブセクション（又はタイル）で処理し、次いでサブセクションを集約するように訓練される、画像の訓練及び処理に対するタイル化アプローチは、訓練データにおける欠陥の影響を緩和するのに役立つ。例えば、２５６×２５６の画像が１０％の欠陥率発生で、サイズ３２×３２のタイルのものである。画像の３２×３２タイルバージョンを生成する際、０．１＊（３２×３２）／（２５６×２５６）のおよその欠陥選択機会があり、これは約０．１％である。
【００５４】
ステップＳ１０３の後、ステップＳ１０４が実行される。ステップＳ１０４において、再生成された取得された画像、すなわち取得された画像の生成されたバージョンが、取得された画像と比較され、差異を識別する。取得された画像の生成されたバージョンと比較される取得された画像は、元々取得されたバージョンでもよく、あるいはその前処理されたバージョンでもよいことに留意する。前処理は、Ｓ１０２の一部として実行されて、例えば、取得された画像をフォーマットし、任意で、取得された画像をニューラルネットワーク２０１による処理のためにタイル化又はその他の方法で領域に分割してもよい。
【００５５】
比較は、画像の２つのバージョン間の相当画素位置における画素値に基づいてもよい。画像は、比較のためにタイル化又はその他の方法で領域に分割されてもよい。画素値は、ＲＧＢのうち１つ以上、又は画素における強度の何らかの他のインジケータであってもよい。したがって、この比較は、直接の画素ごとの欠陥予測の形式をとる。
【００５６】
ステップＳ１０４の後、ステップＳ１０５が実行される。ステップＳ１０５は、識別された差異の位置で対象材料表面の欠陥を検出することを含む。ステップＳ１０５は、取得された画像を参照して実行されてもよく、例えば、取得された画像の識別された差異の位置が強調されたバージョンをユーザに対し出力する。任意で、画像がタイルなどの領域で処理及び解析される実施形態において、ステップＳ１０５は、差異が識別された領域を強調するマスクを出力すること（例えば、表示すること）を含んでもよい（識別される差異は、同じ領域の２つのバージョン間の画素ごとの差異の閾値レベルに基づいてもよい）。あるいは、本方法は、対象材料表面上の差異の位置を直接照明（illumination）又はその他の方法で強調することを含んでもよい。例えば図５から、Ｓ１０４の比較は欠陥の位置を識別できるようにし、その欠陥は、観察者が材料表面上の欠陥の位置を容易に識別できるようにするマスクの表示を介して出力できることが分かる。
【００５７】
図８は、一実施形態の方法における一連のステップを示すフローチャートである。ステップＳ１０１〜Ｓ１０５は、図１に関連して上述したとおりである。
【００５８】
ステップＳ１０６〜Ｓ１０８は任意的な拡張であり、これはＳ１０５で識別された欠陥を取り、Ａｌｅｘｎｅｔなどの訓練された人工知能アルゴリズムを使用して欠陥にラベル付けし、そのラベル付けされた欠陥が出力される。
【００５９】
ステップＳ１０６はステップＳ１０５の完了後に実行され、取得された画像から、再生成された取得された画像と取得された画像との間で差異が識別された１つ以上の位置のうちの位置又は各位置と境を接する（bounding）画像部分を抽出することを含む。
【００６０】
ステップＳ１０７はステップＳ１０６の後に実行され、上記又は各画像部分を、材料表面欠陥を示す入力画像部分を処理すること（上記又は各画像部分をニューラルネットワークで処理すること）により材料表面欠陥のエンコードされた特徴を出力するように訓練されたエンコーディングニューラルネットワークに入力することを含む。
【００６１】
エンコーディングニューラルネットワークは、エンコードされた特徴に基づいて入力画像部分にラベルを割り当てるようにさらに訓練される。ステップＳ１０８は、取得された画像から抽出された上記又は各画像部分を、それぞれの出力されたエンコードされた特徴に基づき、ラベルと共に出力することを含む。例えば、出力することは、グラフィカルユーザインターフェースを介してユーザに対し、それぞれに割り当てられたラベルを有する上記又は各画像部分を表示することでもよい。
【００６２】
ステップＳ１０６において、潜在的に検出される欠陥（すなわち、画像の取得されたバージョンと画像の再生成されたバージョンとの間の差異のレベルが閾値を超える画像部分）は、取得された画像から切り取られる。ステップＳ１０７において、画像の切り取られた部分は、Ａｌｅｘｎｅｔなどの訓練されたニューラルネットワークを通して順方向に供給され、各々の抽出された画像部分のための埋め込みを生成する。埋め込みは、画像領域のベクトル表現である。Ｓ１０８において、埋め込みに基づくラベルが各々の抽出された画像部分に割り当てられ、抽出された画像部分及びそのラベルがユーザに表示される。階層的クラスタリングアルゴリズムがステップＳ１０８で使用されて、埋め込みをクラスタリングし、クラスタの全てのメンバに割り当てるべき単一のラベルを決定してもよい。
【００６３】
任意で、同じグループ内の画像部分に割り当てられるラベルは、グラフィカルユーザインターフェースを介してユーザによりそれぞれの画像部分に前に割り当てられたラベルである。グラフィカルユーザインターフェースは、グラフィカルユーザインターフェースを介して、取得された画像から抽出された上記又は各画像部分をそれぞれの出力されたエンコードされた特徴に基づきラベルと共に出力することが、画像部分のための複数の候補ラベルを出力することであり、候補ラベルの各々は同じグループ内の画像部分に割り当てられたラベルから選択される、ことと、グラフィカルユーザインターフェースを介して、出力された候補ラベルの中からのラベルの選択を受け入れ、選択されたラベルを画像部分に割り当てることとを容易にし得る。特に、複数の画像部分の各々に対して出力されるラベル、又は複数の画像部分の各々に対して出力される候補ラベルのうち１つは、画像部分へのラベルの過去の割り当てに基づき機械学習アルゴリズムにより選択された推奨されたラベルである。
【００６４】
図９Ａ及び図９Ｂは、図１の方法の一例をより詳細に示す。図９Ａは、ニューラルネットワーク２０１による、訓練又は推論のいずれかにおける、画像の処理におけるステップのフローを示す。図９Ａの特定の例において、処理のための画像は、訓練のために画像タイルに断片化され、次いで、出力の前に集約される。
【００６５】
ステップＳ９０１において、画像がニューラルネットワーク２０１に入力される。画像は材料表面の画像であり、ニューラルネットワーク２０１の訓練フェーズにおける訓練画像でもよく、あるいは推論フェーズにおける対象材料表面の取得された画像でもよい。
【００６６】
ステップＳ９０２において、入力画像はタイル又は画像部分に断片化される。例えば、４０００×３０００画素の高解像度画像は、訓練のためのＧＰＵに適合するには大きすぎる可能性がある。画像をそのより小さい画像部分、例えば２５６×２５６画素に分割することにより、ニューラルネットワーク２０１はＧＰＵ上で訓練できる。
【００６７】
ステップＳ１０１などの訓練フェーズでは、フローはＳ９０２からステップＳ９０３に進み、ニューラルネットワーク２０１は、ステップＳ１０１を参照して上で詳述されたように、例えば図２に示されるような敵対的生成ニューラルネットワークにより訓練される。
【００６８】
推論フェーズでは、フローはＳ９０２からＳ９０４に進み、画像は、ステップＳ１０３に関して上述したように処理され、すなわち、入力画像の新しいバージョン（部分ごと）が、入力画像に基づきニューラルネットワーク２０１により再生成される。
【００６９】
フローはＳ９０３又はＳ９０４からＳ９０５に進む。Ｓ９０５において、画像部分が集約され、任意でフォーマットされて、Ｓ９０１の入力画像と同じサイズ、フォーマットの入力画像の一バージョンに到達する。
【００７０】
図１２Ａは、訓練フェーズにおける図９Ａの方法の種々の段階における画像を示す。
【００７１】
図１２Ｂは、推論フェーズにおける図９Ａの方法の種々の段階における画像を示す。参照を容易にするため欠陥の存在を強調するようにボックスが追加されているが、このようなボックスは実施形態中の画像には存在しないことに留意する。
【００７２】
図１０は、入力画像を断片化（Ｓ９０２）及び集約（Ｓ９０５）する処理を示す。図１０に示されるように、ビットマップ又はマスクが各画像部分に関連づけられ、それにより、Ｓ９０３又はＳ９０４における生成ニューラルネットワーク２０１による処理の後、画像はＳ９０５において再構成できる。
【００７３】
Ｓ９０６において、集約された画像は、例えばＳ１０４などの比較ステップによるさらなる処理のために出力される。
【００７４】
図１１Ａは、推論フェーズにおけるステップＳ９０１における、欠陥を示す入力画像を示し、図１１Ｂは、ステップＳ９０２、Ｓ９０４、及びＳ９０５に続くＳ９０６における同じ画像の出力バージョンを示す。
【００７５】
ステップＳ９０６に続き、ステップＳ１０４などの処理が実行されて、Ｓ９０１における入力としての画像の取得されたバージョンと、Ｓ９０４で生成ニューラルネットワーク２０１により生成されＳ９０６で出力された画像のバージョンとの間の差異を識別する。
【００７６】
提示された例において、Ｓ９０５における画像の集約は比較ステップの前に実行されることに留意する。部分単位で比較を実行することは、可能である。最適解は、画像を集約し、集約された画像全体と元の入力画像とを使用して関心領域の閾値を定義することであり、それにより、関心領域の定義が画像全体にわたり正規化され得る。
【００７７】
図９Ｂは、図１のステップＳ１０４〜Ｓ１０５の例を示す。Ｓ９０６において、集約された画像、すなわち、生成ニューラルネットワーク２０１により再生成された画像が出力され、Ｓ９０７において、画像の再生成されたバージョンと画像の入力バージョンとの間で画素値の比較が実行される。画像の２つのバージョンにわたる相当画素位置における画素値（例えば、ＲＧＢ又は強度）が比較され、差異が評価される。評価は、ある領域にわたる集約でもよく、あるいは、画素値の差異が閾値を上回り又は下回ることに基づく、２つの画像間における画素位置の異なる又は異ならないとしてのマーク付けでもよい。閾値は予め定義されてもよく、あるいは画像全体にわたる差異に基づき適応的に決定されてもよい。例えば、平均差異から１標準偏差を超える差異が、異なるとしてフラグを立てられてもよい。
【００７８】
Ｓ９０８において、差異の画素位置に基づいて、局所的差異（例えば、異なるとしてフラグを立てられた画素位置の途切れない領域）が括られる（bound）。例えば、スマート境界ボックスが、差異の画素位置の周囲に作成されてもよい。任意で、画像がユーザに提示される場合、誤差に対する処理が適用されて差異を強調してもよい。このような処理は、例えば、平滑化、セグメント化でもよい。ここで、誤差は、画素差異位置を意味するとみなされる。
【００７９】
Ｓ９０９において、括られた領域を強調するマスクが出力され、それにより、ユーザは材料表面上の欠陥又は潜在的欠陥の位置を識別することができる。図１３は、そのようなマスクの一例を示す。マスクはユーザに出力されなくてもよく、欠陥のある又は潜在的に欠陥のある領域として元の画像からどの領域を抽出すべきかをマッピングするために、処理目的でビットマップとして使用されてもよいことに留意する。例えば、括られた領域は、閾値処理（thresholding）方法を使用してクラスタリングに基づく画像閾値処理を自動的に実行することにより定義されてもよい。アルゴリズムは、画像が二峰性ヒストグラム（差異の位置における前景画素と差異のない位置における背景画素）に従う２つのクラスの画素を含むと仮定し、次いで、それらの組み合わせられた分布したクラス内分散が最小又は等価であり（ペアごとの２乗差の和が一定であるため）、したがってそれらのクラス間分散が最大であるように、２つのクラスを分離する閾値を算出する。この閾値処理から、フレームワークは、与えられた閾値処理方法より上の平均値を有するあらゆるゾーンの周りに境界ボックスを作成する。各々の括られた領域は、領域における異常の可能性を表すスコアと関連して記憶されてもよく、これは、例えば、括られた領域内の誤差の和でもよい。
【００８０】
図８のステップＳ１０６〜Ｓ１０８に示されるように、ラベル付けなどのさらなる処理のために、潜在的な欠陥を有する領域のデータセットを記憶することができる。図１４Ａは、欠陥を有する入力画像から抽出された領域を示す。図１４Ｂは、欠陥又は潜在的欠陥を含まないと決定された入力画像から抽出された領域を示し、すなわち、これらの領域内の位置における画像の２つのバージョンにわたる画素値の差異は、差異の閾値を満たさなかった。領域は、ファイル名と共に記憶されてもよい。
【００８１】
図１５は、本発明を具現化し、図１、図８、図９Ａ、及び図９Ｂに示されるように材料表面の画像を処理して画像化された材料表面上の欠陥を識別する方法を実現するために使用され得る、コンピューティング装置又はサーバなどのコンピューティングデバイス１０のブロック図である。コンピューティングデバイスは、プロセッサ９９３及びメモリ９９４を備える。任意で、コンピューティングデバイスは、他のコンピューティングデバイスと、例えば発明実施形態の他のコンピューティングデバイスと通信するためのネットワークインターフェース９９７をさらに含む。
【００８２】
例えば、一実施形態は、そのようなコンピューティングデバイスのネットワークから構成されてもよい。任意で、コンピューティングデバイスは、キーボード及びマウス９９６などの１つ以上の入力機構、及び１つ以上のモニタ９９５などの表示ユニットをさらに含む。コンポーネントは、バス９９２を介して互いに接続可能である。コンピューティングデバイスは、材料表面の画像を取得するためにカメラなどの画像化デバイスを含み、あるいはそれとデータ通信してもよい。
【００８３】
メモリ９９４は、コンピュータ読取可能媒体を含んでもよく、この用語は、コンピュータ実行可能命令を搬送し又はデータ構造を記憶させるように構成された、単一の媒体又は複数の媒体（例えば、集中型又は分散型データベース、及び／又は関連づけられたキャッシュ及びサーバ）を参照してもよい。コンピュータ実行可能命令は、例えば、汎用コンピュータ、専用コンピュータ、又は専用処理デバイス（例えば、１つ以上のプロセッサ）によりアクセス可能であり、かつこれらに１つ以上の機能又は動作を実行させる命令及びデータを含んでもよい。ゆえに、用語「コンピュータ読取可能記憶媒体」は、マシンによる実行のための命令のセットを記憶、符号化、又は搬送することができ、マシンに本開示の方法のいずれか１つ以上を実行させる任意の媒体をさらに含んでもよい。したがって、用語「コンピュータ読取可能記憶媒体」は、これらに限られないがソリッドステートメモリ、光学媒体、及び磁気媒体を含むとみなされてもよい。限定でなく例として、このようなコンピュータ読取可能媒体は、ランダムアクセスメモリ（ＲＡＭ）、読取専用メモリ（ＲＯＭ）、電気的消去可能プログラマブル読取専用メモリ（ＥＥＰＲＯＭ）、コンパクトディスク読取専用メモリ（ＣＤ‐ＲＯＭ）又は他の光ディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶デバイス、フラッシュメモリデバイス（例えば、ソリッドステートメモリデバイス）を含む、非一時的コンピュータ読取可能記憶媒体を含んでもよい。
【００８４】
プロセッサ９９３は、コンピューティングデバイスを制御し、処理動作を実行するように構成され、例えば、本明細書及び特許請求の範囲に記載された図１、図８、図９Ａ、及び図９Ｂの種々の異なるステップを実現するために、メモリに記憶されたコードを実行する。プロセッサ９９３は、生成ニューラルネットワーク２０１などの１つ以上のニューラルネットワークを実現するように適合されたＧＰＵ（グラフィックス処理ユニット）を含んでもよい。メモリ９９４は、プロセッサ９９３により読み出され、書き込まれるデータを記憶する。本明細書で参照されるとき、プロセッサは、マイクロプロセッサ、中央処理ユニットなどの１つ以上の汎用処理デバイスを含んでもよい。プロセッサは、複合命令セットコンピューティング（ＣＩＳＣ）マイクロプロセッサ、縮小命令セットコンピューティング（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、又は他の命令セットを実現するプロセッサ若しくは命令セットの組み合わせを実現する複数のプロセッサを含んでもよい。プロセッサは、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサなどの１つ以上の専用処理デバイスをさらに含んでもよい。１つ以上の実施形態において、プロセッサは、本明細書で論じられる動作及びステップを実行するための命令を実行するように構成される。
【００８５】
表示ユニット９９７は、コンピューティングデバイスにより記憶されたデータの表現を表示することができ、ユーザとコンピューティングデバイスに記憶されたプログラム及びデータとの間の対話を可能にするカーソル及びダイアログボックス及び画面をさらに表示してもよい。入力機構９９６は、ユーザがデータ及びコンピューティングデバイスへの命令を入力することを可能にし得る。
【００８６】
ネットワークインターフェース（ネットワークＩ／Ｆ）９９７は、インターネットなどのネットワークに接続されてもよく、ネットワークを介して他のこのようなコンピューティングデバイスに接続可能である。ネットワークＩ／Ｆ９９７は、ネットワークを介して他の装置から／他の装置へ入力／出力されるデータを制御することができる。マイクロホン、スピーカ、プリンタ、電源ユニット、ファン、ケース、スキャナ、トラッカーボール等などの他の周辺デバイスが、コンピューティングデバイスに含まれてもよい。
【００８７】
本発明を具現化する方法は、図１５に示すものなどのコンピューティングデバイスで実行できる。このようなコンピューティングデバイスは、図１５に示すあらゆるコンポーネントを有する必要はなく、これらのコンポーネントのサブセットから構成されてもよい。本発明を具現化する方法は、ネットワークを介して１つ以上のデータ記憶サーバと通信する単一のコンピューティングデバイスにより実行されてもよい。コンピューティングデバイスは、訓練された生成ニューラルネットワーク２０１と、取得された画像からの欠陥の出力された識別とを記憶するデータ記憶装置自体でもよい。
【００８８】
本発明を具現化する方法は、互いに協働して動作する複数のコンピューティングデバイスにより実行されてもよい。複数のコンピューティングデバイスのうち１つ以上が、訓練された生成ニューラルネットワーク２０１の少なくとも一部分と、取得された画像からの欠陥の出力された識別とを記憶するデータ記憶サーバでもよい。
【００８９】
上記の実施形態につき以下の付記を残しておく。
（付記１）
材料表面の画像を処理して画像化された材料表面の欠陥を識別する方法であって、
第１のニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、
対象材料表面の画像を取得するステップと、
前記取得された画像を前記第１のニューラルネットワークに入力して前記取得された画像の欠陥低減バージョンを生成するステップと、
前記取得された画像の前記生成された欠陥低減バージョンを前記取得された画像と比較して差異を識別するステップと、
前記識別された差異の位置で前記対象材料表面の欠陥を識別するステップと、
を含む方法。
（付記２）
各訓練画像は複数の画像部分として前記第１のニューラルネットワークに入力され、各画像部分は前記訓練画像の空間的細分化を表し、当該方法は、前記画像部分の欠陥低減バージョンを前記訓練画像の欠陥低減バージョンに集約するステップをさらに含み、
前記取得された画像は複数の画像部分として前記第１のニューラルネットワークに入力され、各画像部分は前記取得された画像の空間的細分化を表し、当該方法は、前記画像部分の欠陥低減バージョンを集約して前記取得された画像の欠陥低減バージョンを得るステップをさらに含む、
付記１に記載の方法。
（付記３）
前記比較することは、前記画像の欠陥低減バージョンと前記取得された画像との間で差異が識別された１つ以上の位置を特定することと、前記１つ以上の位置を出力することとを含む、付記１又は２に記載の方法。
（付記４）
前記取得された画像から、前記画像の欠陥低減バージョンと前記取得された画像との間で差異が識別された前記１つ以上の位置のうちの位置又は各位置と境を接する画像部分を抽出するステップと、
前記又は各画像部分を第２のニューラルネットワークに入力するステップであり、前記第２のニューラルネットワークは、材料表面欠陥を示す入力画像部分を処理することにより前記材料表面欠陥のエンコードされた特徴を出力するように訓練されたエンコーディングニューラルネットワークである、ステップと、
前記取得された画像から抽出された前記又は各画像部分をそれぞれの出力されたエンコードされた特徴に基づきラベルと共に出力するステップと、
をさらに含む付記３に記載の方法。
（付記５）
前記１つ以上の位置は、前記画像の欠陥低減バージョンと前記取得された画像との間で差異が識別された複数の位置であり、前記取得された画像から抽出された複数の画像部分があり、各々がそれぞれの位置と境を接し、
前記複数の画像部分は、過去に取得された画像と該画像のそれぞれの欠陥低減バージョンとから差異が識別された位置と境を接する画像部分の記憶された集合に追加され、前記画像部分の集合の各メンバは、前記画像部分を前記エンコーディングニューラルネットワークで処理することにより得られたそれぞれのエンコードされた特徴と共に記憶され、
前記取得された画像から抽出された前記画像部分の前記エンコードされた特徴に対してクラスタリングアルゴリズムが実行されて前記画像部分をグループに分割し、前記取得された画像から抽出された前記複数の画像部分の各々はそれぞれのグループのメンバであり、
前記取得された画像から抽出された前記複数の画像部分の各々に対して出力されるラベルは、前記画像部分の前記エンコードされた特徴の、過去に取得された画像からの記憶された画像部分のエンコードされた特徴との比較に基づいて、過去に取得された画像から抽出された記憶された画像部分に割り当てられたラベルから選択される、
付記４に記載の方法。
（付記６）
同じグループ内の画像部分に割り当てられるラベルは、ユーザインターフェースを介してユーザによりそれぞれの画像部分に前に割り当てられたラベルである、
付記５に記載の方法。
（付記７）
ユーザインターフェースを介して、同じグループ内の前記又は各画像部分をそれぞれの出力されたエンコードされた特徴に基づきラベルと共に出力することは、前記画像部分に対する複数の候補ラベルを出力することを含み、前記候補ラベルの各々は、前記画像部分の前記エンコードされた特徴の、過去に取得された画像及び前記画像部分からの記憶された画像部分のエンコードされた特徴との比較に基づき、過去に取得された画像に割り当てられたラベルから選択され、
当該方法は、
ユーザインターフェースを介して、前記出力された候補ラベルの中からのラベルの選択を受け入れ、前記選択されたラベルを前記画像部分に割り当てるステップ
をさらに含む、付記５又は６に記載の方法。
（付記８）
前記複数の画像部分の各々に対して出力されるラベル、又は前記複数の画像部分の各々に対して出力される候補ラベルのうち１つは、画像部分へのラベルの過去の割り当てに基づき機械学習アルゴリズムにより選択された推奨されたラベルである、
付記５、６、又は７に記載の方法。
（付記９）
前記第１のニューラルネットワークは敵対的生成ネットワークであり、前記訓練することは、前記第１のニューラルネットワークを訓練して、生成された画像データが訓練データセットに属するディスクリミネータネットワークを満たす画像データを生成することと、前記ディスクリミネータネットワークを訓練して、訓練データセットに属する画像データと生成された画像データとを区別することとを含む、付記１乃至８のうちいずれか１項に記載の方法。
（付記１０）
前記第１のニューラルネットワークは、材料表面の入力訓練画像の欠陥低減バージョンを生成するインペインタモデルと、前記生成された画像からノイズを取り除くクリーニングモデルとを含む、付記１乃至９のうちいずれか１項に記載の方法。
（付記１１）
前記第１のニューラルネットワークは畳み込みノイズ除去ニューラルネットワークを含む、付記１乃至１０のうちいずれか１項に記載の方法。
（付記１２）
プロセッサハードウェア及びメモリハードウェアを含むコンピューティングシステムにより実行されたときに前記プロセッサハードウェアに方法を実行させるコンピュータプログラムであって、前記方法は、
第１のニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、
対象材料表面の画像を取得するステップと、
前記取得された画像を前記第１のニューラルネットワークに入力して前記取得された画像の欠陥低減バージョンを生成するステップと、
前記取得された画像の前記生成された欠陥低減バージョンを前記取得された画像と比較して差異を識別するステップと、
前記識別された差異の位置で前記対象材料表面の欠陥を識別するステップと、
を含む、コンピュータプログラム。
（付記１３）
プロセッサハードウェア及びメモリハードウェアを含む装置であって、前記メモリハードウェアは、前記プロセッサハードウェアにより実行されたときに前記プロセッサハードウェアに方法を実行させる処理命令を記憶し、前記方法は、
第１のニューラルネットワークを自動的に訓練して材料表面の入力訓練画像の欠陥低減バージョンを生成するステップと、
対象材料表面の画像を取得するステップと、
前記取得された画像を前記第１のニューラルネットワークに入力して前記取得された画像の欠陥低減バージョンを生成するステップと、
前記取得された画像の前記生成された欠陥低減バージョンを前記取得された画像と比較して差異を識別するステップと、
前記識別された差異の位置で前記対象材料表面の欠陥を識別するステップと、
を含む、装置。
（付記１４）
前記プロセッサハードウェアはＧＰＵを含む、付記１３に記載の装置。
【図１】
2020187735.tif 000003
【図２】
2020187735.tif 000004
【図３】
2020187735.tif 000005
【図４】
2020187735.tif 000006
【図５】
2020187735.tif 000007
【図６】
2020187735.tif 000008
【図７】
2020187735.tif 000009
【図８】
2020187735.tif 000010
【図９Ａ】
2020187735.tif 000011
【図９Ｂ】
2020187735.tif 000012
【図１０】
2020187735.tif 000013
【図１１】
2020187735.tif 000014
【図１２Ａ】
2020187735.tif 000015
【図１２Ｂ】
2020187735.tif 000016
【図１３】
2020187735.tif 000017
【図１４】
2020187735.tif 000018
【図１５】
2020187735.tif 000019