(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024068105
(43)【公開日】2024-05-17
(54)【発明の名称】欠陥検出方法及び装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20240510BHJP
G06N 3/02 20060101ALI20240510BHJP
G06V 10/82 20220101ALI20240510BHJP
【FI】
G06T7/00 350C
G06N3/02
G06T7/00 610C
G06V10/82
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2023140715
(22)【出願日】2023-08-31
(31)【優先権主張番号】10-2022-0146416
(32)【優先日】2022-11-04
(33)【優先権主張国・地域又は機関】KR
(71)【出願人】
【識別番号】390019839
【氏名又は名称】三星電子株式会社
【氏名又は名称原語表記】Samsung Electronics Co.,Ltd.
【住所又は居所原語表記】129,Samsung-ro,Yeongtong-gu,Suwon-si,Gyeonggi-do,Republic of Korea
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】金 炳在
(72)【発明者】
【氏名】金 英東
(72)【発明者】
【氏名】林 鍾仁
(72)【発明者】
【氏名】韓 承周
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096BA03
5L096CA02
5L096DA02
5L096GA08
5L096HA11
5L096KA04
5L096MA03
(57)【要約】
【課題】本発明の目的は、欠陥検出方法及びそれを行う装置を提供することにある。
【解決手段】一実施形態に係る欠陥検出装置は、命令を含むメモリと、メモリと電気的に接続され、命令を実行するためのプロセッサを含む。プロセッサによって命令が実行されるとき、プロセッサは複数の動作を行うことができる。複数の動作は、入力イメージ(input image)及び基準イメージ(reference image)に基づいて、入力イメージに含まれた欠陥領域(defective area)が強調された強化イメージ(enhanced image)を取得する動作と、ニューラルネットワークに基準イメージ、入力イメージ、及び強化イメージを入力し、入力イメージの欠陥予測スコアを出力する動作を含む。ニューラルネットワークは、アテンションマップの強度を適応的に調整するアテンションマップ変調器を含む。その他にも様々な実施形態が可能である。
【選択図】
図2
【特許請求の範囲】
【請求項1】
欠陥検出装置であって、
命令を含むメモリと、
前記メモリと電気的に接続され、前記命令を実行するためのプロセッサを含み、
前記プロセッサによって前記命令が実行されるとき、前記プロセッサは複数の動作を行い、
前記複数の動作は、
入力イメージ及び基準イメージに基づいて、前記入力イメージに含まれた欠陥領域が強調された強化イメージを取得する動作と、
ニューラルネットワークに前記基準イメージ、前記入力イメージ、及び前記強化イメージを入力して前記入力イメージの欠陥予測スコアを出力する動作と、
を含み、
前記ニューラルネットワークは、アテンションマップの強度を適応的に調整するアテンションマップ変調器を含む、欠陥検出装置。
【請求項2】
前記強化イメージは、前記入力イメージ及び前記基準イメージが入力され、欠陥領域が強調されたイメージを出力する強化モジュールから取得される、請求項1に記載の欠陥検出装置。
【請求項3】
前記強化モジュールは、
前記入力イメージ及び前記基準イメージに基づいて差動イメージを取得し、
前記差動イメージに含まれた欠陥領域の強度を調整して前記強化イメージを出力する、請求項2に記載の欠陥検出装置。
【請求項4】
前記ニューラルネットワークは、
前記基準イメージ及び前記入力イメージが入力され、フィーチャーマップを抽出するフィーチャー抽出モジュールと、
前記フィーチャーマップ及び前記強化イメージが入力され、変調されたフィーチャーマップを出力するアテンションモジュールと、
を含む、請求項1~3のうちの何れか一項に記載の欠陥検出装置。
【請求項5】
前記アテンションモジュールは、前記フィーチャーマップに含まれた欠陥に関する値の加重値を高めるように学習されたものである、請求項4に記載の欠陥検出装置。
【請求項6】
前記アテンションモジュールは、
前記強化イメージが入力され、変調されたアテンションマップを出力するアテンションマップ生成器と、
前記変調されたアテンションマップ及び前記フィーチャーマップが入力され、前記変調されたフィーチャーマップを出力するフィーチャー変調器と、
を含む、請求項4に記載の欠陥検出装置。
【請求項7】
前記アテンションマップ生成器は、
前記強化イメージが入力され、アテンションマップを出力する生成モジュールと、
前記アテンションマップが入力され、前記変調されたアテンションマップを出力するアテンションマップ変調器と、
を含み、
前記変調されたアテンションマップは、前記アテンションマップの強度が適応的に調整されているものである、請求項6に記載の欠陥検出装置。
【請求項8】
前記フィーチャー変調器は、前記フィーチャーマップに前記変調されたアテンションマップを適用し、前記変調されたフィーチャーマップを出力する、請求項6に記載の欠陥検出装置。
【請求項9】
前記フィーチャー変調器は、
前記フィーチャーマップの一部に前記変調されたアテンションマップを適用し、
前記変調されたアテンションマップの適用結果と前記一部を除いた前記フィーチャーマップの残りを結合し、前記変調されたフィーチャーマップを出力する、請求項6に記載の欠陥検出装置。
【請求項10】
前記フィーチャー変調器は、前記フィーチャーマップの少なくとも一部及び前記変調されたアテンションマップに対してエレメントワイズ演算を行う、請求項6に記載の欠陥検出装置。
【請求項11】
前記ニューラルネットワークは、前記変調されたフィーチャーマップが入力され、前記入力イメージの欠陥予測スコアを出力する欠陥分類器をさらに含む、請求項4に記載の欠陥検出装置。
【請求項12】
欠陥検出方法であって、
入力イメージ及び基準イメージに基づいて、前記入力イメージに含まれた欠陥領域が強調された強化イメージを取得する動作と、
ニューラルネットワークに前記基準イメージ、前記入力イメージ、及び前記強化イメージを入力して前記入力イメージの欠陥予測スコアを出力する動作と、
を含み、
前記ニューラルネットワークは、アテンションマップの強度を適応的に調整するアテンションマップ変調器を含む、欠陥検出方法。
【請求項13】
前記強化イメージは、前記入力イメージ及び前記基準イメージが入力され、欠陥領域が強調されたイメージを出力する強化モジュールから取得される、請求項12に記載の欠陥検出方法。
【請求項14】
前記強化モジュールは、
前記入力イメージ及び前記基準イメージに基づいて差動イメージを取得し、
前記差動イメージに含まれた欠陥領域の強度を調整して前記強化イメージを出力する、請求項13に記載の欠陥検出方法。
【請求項15】
前記ニューラルネットワークは、
前記基準イメージ及び入力イメージが入力され、フィーチャーマップを抽出するフィーチャー抽出モジュールと、
前記フィーチャーマップ及び前記強化イメージが入力され、変調されたフィーチャーマップを出力するアテンションモジュールと、
を含む、請求項12~14のうちの何れか一項に記載の欠陥検出方法。
【請求項16】
前記アテンションモジュールは、前記フィーチャーマップに含まれた、欠陥に関する値の加重値を高めるように学習されたものである、請求項15に記載の欠陥検出方法。
【請求項17】
前記アテンションモジュールは、
前記強化イメージが入力され、変調されたアテンションマップを出力するアテンションマップ生成器と、
前記変調されたアテンションマップ及び前記フィーチャーマップが入力され、前記変調されたフィーチャーマップを出力するフィーチャー変調器と、
を含む、請求項15に記載の欠陥検出方法。
【請求項18】
前記アテンションマップ生成器は、
前記強化イメージが入力され、アテンションマップを出力する生成モジュールと、
前記アテンションマップが入力され、前記変調されたアテンションマップを出力するアテンションマップ変調器と、
を含み、
前記変調されたアテンションマップは、前記アテンションマップの強度が適応的に調整されたものである、請求項17に記載の欠陥検出方法。
【請求項19】
前記フィーチャー変調器は、前記フィーチャーマップに前記変調されたアテンションマップを適用して前記変調されたフィーチャーマップを出力する、請求項17に記載の欠陥検出方法。
【請求項20】
前記フィーチャー変調器は、
前記フィーチャーマップの一部に前記変調されたアテンションマップを適用し、
前記変調されたアテンションマップの適用結果と前記一部を除いた前記フィーチャーマップの残りを結合し、前記変調されたフィーチャーマップを出力する、請求項17に記載の欠陥検出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は欠陥検出方法及びそれを行う装置に関する。
【背景技術】
【0002】
製品を生産する産業環境で、製品の不良(例えば、欠陥)を検出することは、信頼性のある製品生産で重要な部分を占めている。製品の不良を検出するために、製品のイメージ(又は、映像)を活用する方法が研究されている。製品又は製造工程を撮影した映像から生産工程及び設備異常がリアルタイムにモニタリングされてもよい。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明の目的は、欠陥検出方法及びそれを行う装置を提供することにある。
【課題を解決するための手段】
【0004】
一実施形態に係る欠陥検出装置は、命令を含むメモリと、前記メモリと電気的に接続され、前記命令を実行するためのプロセッサを含み、前記プロセッサによって前記命令が実行されるとき、前記プロセッサは複数の動作を行うことができる。前記複数の動作は、入力イメージ及び基準イメージに基づいて、前記入力イメージに含まれた欠陥領域が強調された強化イメージを取得する動作と、ニューラルネットワークに前記基準イメージ、前記入力イメージ、及び前記強化イメージを入力して前記入力イメージの欠陥予測スコアを出力する動作とを含む。前記ニューラルネットワークは、アテンションマップの強度を適応的に調整するアテンションマップ変調器を含むことができる。
【0005】
前記強化イメージは、前記入力イメージ及び前記基準イメージが入力され、欠陥領域が強調されたイメージを出力する強化モジュールから取得されることができる。
【0006】
前記強化モジュールは、前記入力イメージ及び前記基準イメージに基づいて差動イメージを取得することができる。前記強化モジュールは、前記差動イメージに含まれた欠陥領域の強度を調整して前記強化イメージを出力することができる。
【0007】
前記ニューラルネットワークは、前記基準イメージ及び前記入力イメージが入力され、フィーチャーマップを抽出するフィーチャー抽出モジュールと、前記フィーチャーマップ及び前記強化イメージが入力され、変調されたフィーチャーマップを出力するアテンションモジュールとを含むことが出k理宇。
【0008】
前記アテンションモジュールは、前記フィーチャーマップに含まれた欠陥に関する値の加重値を高めるように学習されたものである。
【0009】
前記アテンションモジュールは、前記強化イメージが入力され、変調されたアテンションマップを出力するアテンションマップ生成器と、前記変調されたアテンションマップ及び前記フィーチャーマップが入力され、前記変調されたフィーチャーマップを出力するフィーチャー変調器とを含むことができる。
【0010】
前記アテンションマップ生成器は、前記強化イメージが入力され、アテンションマップを出力する生成モジュールと、前記アテンションマップが入力され、前記変調されたアテンションマップを出力するアテンションマップ変調器とを含むことができる。前記変調されたアテンションマップは、前記アテンションマップの強度が適応的に調整されているものである。
【0011】
前記フィーチャー変調器は、前記フィーチャーマップに前記変調されたアテンションマップを適用し、前記変調されたフィーチャーマップを出力することができる。
【0012】
前記フィーチャー変調器は、前記フィーチャーマップの一部に前記変調されたアテンションマップを適用することができる。前記変調されたアテンションマップの適用結果と前記一部を除いた前記フィーチャーマップの残りを結合し、前記変調されたフィーチャーマップを出力することができる。
【0013】
前記フィーチャー変調器は、前記フィーチャーマップの少なくとも一部及び前記変調されたアテンションマップに対してエレメントワイズ演算を行うことができる。
【0014】
前記ニューラルネットワークは、前記変調されたフィーチャーマップが入力され、前記入力イメージの欠陥予測スコアを出力する欠陥分類器をさらに含むことができる。
【0015】
一実施形態に係る欠陥検出方法は、入力イメージ及び基準イメージに基づいて、前記入力イメージに含まれた欠陥領域が強調された強化イメージを取得する動作と、ニューラルネットワークに前記基準イメージ、前記入力イメージ、及び前記強化イメージを入力して前記入力イメージの欠陥予測スコアを出力する動作と含みむことができる。前記ニューラルネットワークは、アテンションマップの強度を適応的に調整するアテンションマップ変調器を含むことができる。
【0016】
前記強化イメージは、前記入力イメージ及び前記基準イメージが入力され、欠陥領域が強調されたイメージを出力する強化モジュールから取得されることができる。
【0017】
前記強化モジュールは、前記入力イメージ及び前記基準イメージに基づいて差動イメージを取得することができる。前記強化モジュールは、前記差動イメージに含まれた欠陥領域の強度を調整して前記強化イメージを出力することができる。
【0018】
前記ニューラルネットワークは、前記基準イメージ及び入力イメージが入力され、フィーチャーマップを抽出するフィーチャー抽出モジュールと、前記フィーチャーマップ及び前記強化イメージが入力され、変調されたフィーチャーマップを出力するアテンションモジュールとを含むことができる。
【0019】
前記アテンションモジュールは、前記フィーチャーマップに含まれた、欠陥に関する値の加重値を高めるように学習されたものである。
【0020】
前記アテンションモジュールは、前記強化イメージが入力され、変調されたアテンションマップを出力するアテンションマップ生成器と、前記変調されたアテンションマップ及び前記フィーチャーマップが入力され、前記変調されたフィーチャーマップを出力するフィーチャー変調器と、を含むことができる。
【0021】
前記アテンションマップ生成器は、前記強化イメージが入力され、アテンションマップを出力する生成モジュールと、前記アテンションマップが入力され、前記変調されたアテンションマップを出力するアテンションマップ変調器とを含むことができる。前記変調されたアテンションマップは、前記アテンションマップの強度が適応的に調整されたものである。
【0022】
前記フィーチャー変調器は、前記フィーチャーマップに前記変調されたアテンションマップを適用して前記変調されたフィーチャーマップを出力することができる。
【0023】
前記フィーチャー変調器は、前記フィーチャーマップの一部に前記変調されたアテンションマップを適用することができる。前記フィーチャー変調器は、前記変調されたアテンションマップの適用結果と前記一部を除いた前記フィーチャーマップの残りを結合し、前記変調されたフィーチャーマップを出力することができる。
【0024】
前記フィーチャー変調器は、前記フィーチャーマップの少なくとも一部及び前記変調されたアテンションマップに対してエレメントワイズ演算を行うことができる。
【0025】
前記ニューラルネットワークは、前記変調されたフィーチャーマップが入力され、前記入力イメージの欠陥予測スコアを出力する欠陥分類器をさらに含むことができる。
【発明の効果】
【0026】
本発明によると、欠陥検出方法及びそれを行う装置を提供することができる。
【図面の簡単な説明】
【0027】
【
図1A】欠陥検査方法の例示を説明するための図である。
【
図1B】欠陥検査方法の例示を説明するための図である。
【
図2】一実施形態に係る欠陥検査装置の概略的なブロック図を示す。
【
図3】一実施形態に係るニューラルネットワーク基盤欠陥検査方法を説明するための図である。
【
図4】一実施形態に係る
図3に示されたフィーチャー変調器の構成及び動作を説明するための図である。
【
図5】一実施形態に係る欠陥検査方法のフローチャートを示す。
【発明を実施するための形態】
【0028】
実施形態に対する特定な構造的又は機能的な説明は単なる例示のための目的として開示されたものであって、様々な形態に変更されることができる。したがって、実施形態は特定な開示形態に限定されるものではなく、本明細書の範囲は技術的な思想に含まれる変更、均等物ないし代替物を含む。
【0029】
第1又は第2などの用語を複数の構成要素を説明するために用いることがあるが、このような用語は1つの構成要素を他の構成要素から区別する目的としてのみ解釈されなければならない。例えば、第1構成要素は第2構成要素と命名することができ、同様に、第2構成要素は第1構成要素にも命名することができる。
【0030】
いずれかの構成要素が他の構成要素に「連結」されているか「接続」されていると言及されたときには、その他の構成要素に直接的に連結されているか又は接続されているが、中間に他の構成要素が存在し得るものと理解されなければならない。構成要素間の関係を説明する表現、例えば「~間の」と「すぐ~間の」または「~に隣接する」と「~に直接隣接する」なども同様に解釈されなければならない。
【0031】
単数の表現は、文脈上、明白に異なる意味をもたない限り複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は、明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを示すものであって、1つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
【0032】
異なるように定義さがれない限り、技術的又は科学的な用語を含んで、ここで用いる全ての用語は、本実施形態が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈されなければならず、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
【0033】
本文書で使用された用語「モジュール」は、ハードウェア、ソフトウェア又はファームウェアに具現されたユニットを含んでもよく、例えば、ロジック、論理ブロック、部品、又は、回路のような用語と互いに互換的に使用されてもよい。モジュールは、一体に構成された部品又は1つ又はそれ以上の機能を行う、前記部品の最小単位又はその一部になり得る。例えば、一実施形態によれば、モジュールは、ASIC(application-specific integrated circuit)の形態に実現されることができる。
【0034】
本文書で使用される「~部」は、用語は、ソフトウェア又はFPGA又はASICのようなハードウェア構成要素を意味し、「~部」はいずれかの役割を行う。ところが、「~部」は、ソフトウェア又はハードウェアに限定される意味ではない。「~部」は、アドレッシングされる格納媒体にあるように構成されてもよく、1つ又はそれ以上のプロセッサを再生させるように構成されてもよい。例えば、「~部」は、ソフトウェア構成要素、オブジェクト指向ソフトウェア構成要素、クラス構成要素、及びタスク構成要素のような構成要素と、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、及び変数を含んでもよい。構成要素と「~部」の中から提供される機能は、さらに小さい数の構成要素及び「~部」に結合されたり、追加的な構成要素と「~部」にさらに分離されてもよい。それだけでなく、構成要素及び「~部」は、デバイス又はセキュリティーマルチメディアカード内の1つや又はそれ以上のCPUを再生させるように実現されてもよい。また、「~部」は、1つ以上のプロセッサを含んでもよい。
【0035】
以下、添付する図面を参照しながら実施形態を詳細に説明する。添付図面を参照して説明するにおいて、図面符号に関係なく同じ構成要素には同じ参照符号を付与し、それに対する重複する説明は省略することにする。
【0036】
図1A及び
図1Bは、欠陥検査方法の例示を説明するための図である。
【0037】
図1Aを参照すると、欠陥検出アルゴリズムは3ステップに分類される。最初のステップ101において、検査対象製品(例えば、欠陥検出対象製品)を撮影して取得された入力映像(例えば、defective video)に含まれた欠陥関連情報が強化される。ステップ101において、正常製品の映像(reference video)と検査対象製品の映像(defective video)から差動映像が取得され、差動映像に含まれた欠陥関連情報が強化される。ステップ102において、正常製品映像、検査対象製品の映像、及び差動映像に基づいて映像ごとにフィーチャーが推定される。フィーチャー推定動作は、人の直観と有機的に結合して実行され得る。ステップ103において、検査対象製品の欠陥があるかが決定される。ステップ103において、特徴(例えば、ステップ102で推定された特徴)に基づく決定木(decision tree)が構成されてもよく、予め設定された欠陥条件に対応する製品は欠陥があるものとして決定されてもよい。
【0038】
図1Bを参照すると、
図1Aで上述したステップ102,103がニューラルネットワークによって代替されてもよい。ニューラルネットワークに正常製品の映像(reference video)、検査対象製品の映像(defective video)、及び差動映像(differential video)を入力することで、検査対象製品の欠陥の有無が判断される。
【0039】
図2は、一実施形態に係る欠陥検査装置の概略的なブロック図を示す。
【0040】
図1Aを参照して説明した例示の場合、人の直観に依存して製品の不良を探す方法である。
図1Aの例示で開示された、人の直観に依存したフィーチャーの性能は、人工知能モデルのデータ基盤フィーチャーの性能よりも低い可能性がある。以下、
図2~
図5を参照して説明する実施形態は、人工知能モデル基盤のフィーチャーを用いてもよい。
【0041】
図1Bを参照して説明した例示の場合、人工知能モデルを利用しているが、欠陥検出のための入力映像の特性が考慮されてはいない。
図1Bの例示で活用される差動映像は、欠陥関連情報が強化されたものとして、人工知能モデルが差動映像に依存的である。
図1Bの例示では差動映像の特性が変化する場合、オーバーフィッティングの問題が発生して人工知能モデルの検出力が減少し得る。以下、
図2~
図5を参照して説明する実施形態は、アテンションメカニズム(attention mechanism)を使用することで少量の学習データ環境でも汎化性能を向上させて一定の検出力を保持することができる。
【0042】
一実施形態によれば、欠陥検出装置10は、欠陥環境に応じて欠陥領域の強度を調整した強化イメージを活用することで、信頼性のある欠陥検出結果を取得することができる。欠陥検出装置10は、欠陥関連情報(例えば、フィーチャーマップに含まれた欠陥関連値)に加重値を高める役割を行うアテンションメカニズムを活用することにより、欠陥検出力を向上させることができる。欠陥検出装置10は、欠陥環境に応じて強度(例えば、対比)が適応的に調整されたアテンションマップを活用することで、変化に強靭な欠陥検出方法を提供することができる。
【0043】
図2を参照すると、欠陥検出装置10は、入力イメージ(例えば、検査対象製品のイメージ)及び基準イメージ(例えば、正常製品のイメージ)に基づいて入力イメージの欠陥を検出することができる。
【0044】
欠陥検出装置10は、ニューラルネットワークを用いて欠陥を検出することができる。ニューラルネットワークは、シナプスの結合でネットワークを形成した人工ニューロン(ノード)が学習を介してシナプスの結合強度を変化させ、問題解決能力を有するモデルの全般を意味する。
【0045】
ニューラルネットワークのニューロンは、加重値又はバイアスの組み合わせを含んでもよい。ニューラルネットワークは、1つ以上のニューロン又はノードで構成された1つ以上のレイヤ(layer)を含んでもよい。ニューラルネットワークは、ニューロンの加重値を学習を介して変化させることで、任意の入力から予測しようとする結果を推論することができる。
【0046】
ニューラルネットワークは、深層ニューラルネットワーク(Deep Neural Network)を含んでもよい。ニューラルネットワークは、CNN(Convolutional Neural Network)、RNN(Recurrent Neural Network)、パーセプトロン(perceptron)、多層パーセプトロン(multilayer perceptron)、FF(Feed Forward)、RBF(Radial Basis Network)、DFF(Deep Feed Forward)、LSTM(Long Short Term Memory)、GRU(Gated Recurrent Unit)、AE(Auto Encoder)、VAE(Variational Auto Encoder)、DAE(Denoising Auto Encoder)、SAE(Sparse Auto Encoder)、MC(Markov Chain)、HN(Hopfield Network)、BM(Boltzmann Machine)、RBM(Restricted Boltzmann Machine)、DBN(Depp Belief Network)、DCN(Deep Convolutional Network)、DN(Deconvolutional Network)、DCIGN(Deep Convolutional Inverse Graphics Network)、GAN(Generative Adversarial Network)、LSM(Liquid State Machine)、ELM(Extreme Learning Machine)、ESN(Echo State Network)、DRN(Deep Residual Network)、DNC(Differentiable Neural Computer)、NTM(Neural Turning Machine)、CN(Capsule Network)、KN(Kohonen Network)及びAN(Attention Network)を含んでもよい。
【0047】
欠陥検出装置10は、PC(personal computer)、データサーバ、又は、携帯用装置内に実現されてもよい。
【0048】
携帯用装置は、ラップトップ(laptop)コンピュータ、移動電話機、スマートフォン(smart phone)、タブレット(tablet)PC、モバイルインターネットデバイス(mobile internet device(MID))、PDA(personal digital assistant)、EDA(enterprise digital assistant)、デジタルスチールカメラ(digital still camera)、デジタルビデオカメラ(digital video camera)、PMP(portable multimedia player)、PND(personal navigation device、又は、portable navigation device)、携帯用ゲームコンソール(handheld game console)、e-ブック(e-book)、又は、スマートデバイス(smart device)に実現することができる。スマートデバイスは、スマートワッチ(smart watch)、スマートバンド(smart band)、又は、スマートリング(smart ring)に実現することができる。
【0049】
欠陥検出装置10は、プロセッサ100及びメモリ200を含む。
【0050】
プロセッサ100は、メモリ200に格納されたデータを処理できる。プロセッサ100は、メモリ200に格納されたコンピュータで読出し可能なコード(例えば、ソフトウェア)及びプロセッサ100によって誘発された命令(instruction)を実行してもよい。
【0051】
プロセッサ100は、目的とする動作(desired operations)を実行させるための物理的な構造を有する回路を有するハードウェアで具現されたデータ処理装置であってもよい。例えば、目的とする動作は、プログラムに含まれたコード又は命令を含んでもよい。
【0052】
例えば、ハードウェアで具現されたデータ処理装置は、マイクロプロセッサー(microprocessor)、中央処理装置(central processing unit)、プロセッサコア(processor core)、マルチ-コアプロセッサ(multi-core processor)、マルチプロセッサ(multiprocessor)、ASIC(Application-Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)を含んでもよい。
【0053】
プロセッサ100によって命令が実行されるとき、プロセッサ100は複数の動作を行ってもよい。プロセッサ100は、入力イメージ(input image)及び基準イメージ(reference image)に基づいて入力イメージに含まれた欠陥領域(defective area)が強調された強化イメージ(enhanced image)を取得できる。プロセッサ100は、ニューラルネットワークに基準イメージ、入力イメージ、及び強化イメージを入力し、入力イメージの欠陥予測スコアを出力してもよい。ニューラルネットワークは、アテンションマップの強度(例えば、対比)を適応的に調整するアテンションマップ変調器を含んでもよい。プロセッサ100が行う動作及びニューラルネットワークの構成は、
図3を参照して詳しく説明する。
【0054】
メモリ200は、揮発性メモリ装置又は不揮発性メモリ装置に実現することができる。
【0055】
揮発性メモリ装置は、DRAM(dynamic random access memory)、SRAM(static random access memory)、T-RAM(thyristor RAM)、Z-RAM(zero capacitor RAM)、又はTTRAM(Twin Transistor RAM)に実現することができる。
【0056】
不揮発性メモリ装置は、EEPROM(Electrically Erasable Programmable Read-Only Memory)、フラッシュ(flash)メモリ、MRAM(Magnetic RAM)、スピン伝達トルクMRAM(Spin-Transfer Torque(STT)-MRAM)、Conductive Bridging RAM(CBRAM)、FeRAM(Ferroelectric RAM)、PRAM(Phase change RAM)、抵抗メモリ(Resistive RAM(RRAM))、ナノ チューブRRAM(Nanotube RRAM)、ポリマーRAM(Polymer RAM(PoRAM))、ナノ浮遊ゲートメモリ(Nano Floating Gate Memory(NFGM))、ホログラフィックメモリ(holographic memory)、分子電子メモリ素子(Molecular Electronic Memory Device)、又は、絶縁抵抗変化メモリ(Insulator Resistance Change Memory)に実現することができる。
【0057】
図3は、一実施形態に係るニューラルネットワーク基盤欠陥検査方法を説明するための図である。
【0058】
一実施形態によれば、プロセッサ(例えば、
図2のプロセッサ100)は、強化イメージを活用してもよい。強化イメージは、差動イメージに含まれた欠陥領域を強調したイメージであってもよい。プロセッサ100は、欠陥環境に応じて欠陥領域の強度を調整することで信頼性のある欠陥検出結果を取得し得る。
【0059】
一実施形態によれば、プロセッサ100は、欠陥検出アルゴリズムにアテンションメカニズムを適用してもよい。アテンションメカニズムは、欠陥関連情報(例えば、フィーチャーマップに含まれた欠陥関連値)に加重値を高める役割を行うことができる。プロセッサ100は、アテンションメカニズムを使用することによって欠陥検出力を向上させ得る。プロセッサ100は、アテンションメカニズムを使用することで少量の学習データ環境でも一般化性能を向上させて一定の検出力を保持し得る。
【0060】
一実施形態によれば、プロセッサ100は、欠陥環境の変化(又は、欠陥の変化)に強靭なアテンションマップを活用することができる。プロセッサ100は、欠陥環境に応じて、強度(例えば、対比)が適応的に調整されたアテンションマップを活用することにより、変化に強靭な欠陥検出方法を提供することができる。
【0061】
図3を参照すると、プロセッサ100は、強化モジュール310及びニューラルネットワーク320を活用することができる。
【0062】
強化モジュール310は、基準イメージ301(例えば、正常製品のイメージ)及び入力イメージ(例えば、検査対象製品のイメージ)が入力され、欠陥領域が強調された強化イメージ311を出力してもよい。強化モジュール310は、信号処理を行うモジュールであってもよい。強化モジュール310は、基準イメージ301及び入力イメージ302に基づいて差動イメージ(differential image)を取得してもよい。強化モジュール310は、差動イメージに含まれた欠陥領域の強度を調整した、強化イメージ311を出力してもよい。
【0063】
ニューラルネットワーク320は、基準イメージ301、入力イメージ302、及び強化イメージ311に基づいて入力イメージ302の欠陥有無(例えば、入力イメージ302に含まれる検査対象製品の欠陥有無)を判断できる欠陥予測スコア351を出力することができる。ニューラルネットワーク320は、フィーチャー抽出モジュール330、アテンションモジュール340、及び欠陥分類器350を含む。
【0064】
フィーチャー抽出モジュール330は、基準イメージ301及び入力イメージ302が入力され、フィーチャーマップ(feature map)331を抽出する。
【0065】
アテンションモジュール340はフィーチャーマップ331に含まれている、欠陥に関する値の加重値を高めるように学習されたものである。アテンションモジュール340は、フィーチャー(例えば、フィーチャーマップ331)のクォリティーを高めるためのものである。アテンションモジュール340は、アテンションマップ生成器341-1及びフィーチャー変調器341-2を含む。
【0066】
アテンションマップ生成器341-1は強化イメージ311が入力され、変調されたアテンションマップ345を出力する。アテンションマップ生成器341-1は、欠陥環境に応じて、強度(例えば、対比)が適応的に調整されたアテンションマップ(例えば、変調されたオテンションマップ345)を生成してもよい。アテンションマップ生成器341-1は、欠陥環境の変化(又は、欠陥の変化)に強靭なアテンションマップ(例えば、変調されたオテンションマップ345)を生成してもよい。アテンションマップ生成器341-1は、生成モジュール342及びアテンションマップ変調器344を含む。
【0067】
生成モジュール342は、強化イメージ311が入力され、アテンションマップ343を出力してもよい。アテンションマップ変調器344はアテンションマップ343が入力され、変調されたアテンションマップ345を出力してもよい。アテンションマップ変調器344は、欠陥環境に応じて、アテンションマップ343の強度(例えば、対比)を適応的に調整することができる。変調されたアテンションマップ345は、数式(1)を介して導き出される。
【0068】
【0069】
数式(1)において、Aはアテンションマップ343、Amodulatedは変調されたアテンションマップ345、σ及びuはアテンションマップ343の強度(例えば、対比)を調整するパラメータである。パラメータ(σ及びu)は、検出力向上に寄与する方向に学習されてもよい。変調されたアテンションマップ345の個数は1個に限定されず、フィーチャー変調器341-2の構成により互いに異なってもよい。
【0070】
フィーチャー変調器341-2は、変調されたアテンションマップ345及びフィーチャーマップ341が入力され、変調されたフィーチャーマップ346を出力する。フィーチャー変調器341-2は、フィーチャーマップ331の少なくとも一部及び変調されたアテンションマップ345に対してエレメントワイズ(element-wise)演算を行った結果として、変調されたフィーチャーマップ346を取得し得る。変調されたフィーチャーマップ346は数式(2)介して導き出されてもよい。
【0071】
【0072】
数式(2)において、yは変調されたフィーチャーマップ346、A
w及びA
bは変調されたオテンションマップ345、xはフィーチャーマップ331である。フィーチャー変調器341-2の構成は
図4を参照して詳しく説明する。
【0073】
フィーチャー抽出モジュール330及びアテンションモジュール340は直列接続されてもよく、直列接続されたフィーチャー抽出モジュール330及びアテンションモジュール340は複数回繰り返してもよい。アテンションモジュール340は、plug-in形態に考案されたもので、
図3に示されていない人工知能モデルとも互換されてもよい。
【0074】
欠陥分類器350は変調されたフィーチャーマップ346が入力され、入力イメージ302の欠陥要否(例えば、入力イメージに含まれた検査対象製品の欠陥有無)を示す欠陥予測スコアを出力する。
【0075】
一実施形態に係る欠陥検出装置10は、イメージ(又は、映像)に基づく不良検査アルゴリズムを用いて、製品(例えば、素子、部品、完成品)を生産する産業環境に多様に適用され得る。欠陥検出装置10は、半導体工程に適用されてもよい。欠陥検出装置10は、入力イメージ(又は入力映像)に基づいて生産工程及び設備異常をリアルタイムにモニタリングし、製品の生産収率を予め予測することができる。一実施形態に係る欠陥検出装置10は、製品を生産する産業環境を越えて、セキュリティーカメラ映像で異常事態を自動検出する分野でも活用されることができる。
【0076】
図4は、一実施形態に係る、
図3に示されたフィーチャー変調器の構成及び動作を説明するための図である。
【0077】
図4を参照すると、フィーチャー変調器341-2の構成及び動作の例示を確認することができる。フィーチャー変調器341-2は、フィーチャーマップ331の少なくとも一部及び変調されたアテンションマップ345に対してエレメントワイズ演算を行う。
【0078】
一例401として、フィーチャー変調器341-2は、フィーチャーマップ331に変調されたアテンションマップ345を適用し、変調されたフィーチャーマップ346を出力するように構成されてもよい。異なる例402として、フィーチャー変調器341-2は、フィーチャーマップの一部331-2に変調されたアテンションマップ345を適用し、変調されたアテンションマップの適用結果(例えば、変調されたフィーチャーマップ332)とフィーチャーマップの残りの331-1を結合し、変調されたフィーチャーマップ346を出力するように構成してもよい。入力イメージ固有の情報を含むフィーチャーマップの残りの331-1と変調されたフィーチャーマップ332から構成された変調されたフィーチャーマップ346を活用することで、欠陥検出装置(例えば、
図2の欠陥検出装置10)は向上した欠陥検出技術を提供してもよい。
【0079】
図5は、一実施形態に係る欠陥検査方法のフローチャートを示す。
【0080】
図5を参照すると、一実施形態によれば、動作510及び動作520は順次実行されることができるが、それに限定されることはない。例えば、2以上の動作が並列的に実行されてもよい。
【0081】
動作510において、プロセッサ(例えば、
図2のプロセッサ100)は、入力イメージ(例えば、
図3の入力イメージ302)及び基準イメージ(例えば、
図3の基準イメージ301)に基づいて入力イメージ302に含まれた欠陥領域が強調された強化イメージ(例えば、
図3の強化イメージ311)を取得する。強化イメージ311は、入力イメージ302及び基準イメージ301が入力され、欠陥領域が強調されたイメージを出力する強化モジュール(例えば、
図3の強化モジュール310)から取得されてもよい。強化モジュール310は、入力イメージ302及び基準イメージ301に基づいて差動イメージを取得し、差動イメージに含まれた欠陥領域の強度を調整して強化イメージ311を出力することができる。
【0082】
動作520において、プロセッサ100は、ニューラルネットワーク(例えば、
図3のニューラルネットワーク320)に基準イメージ301、入力イメージ302、及び強化イメージ301を入力し、入力イメージの欠陥予測スコア(例えば、
図3の欠陥予測スコア351)を出力する。ニューラルネットワーク302は、アテンションマップの強度(例えば、対比)を適応的に調整するアテンションマップ変調器(例えば、
図3のアテンションマップ変調器344)を含む。
【0083】
ニューラルネットワーク320は、基準イメージ301及び入力イメージ302が入力され、フィーチャーマップ(例えば、
図3のフィーチャーマップ331)を抽出するフィーチャー抽出モジュール(例えば、
図3のフィーチャー抽出モジュール330)、及びフィーチャーマップ331及び強化イメージ311が入力され、変調されたフィーチャーマップ(例えば、
図3の変調されたフィーチャーマップ346)を出力するアテンションモジュール(例えば、
図3のアテンションモジュール340)を含む。
【0084】
アテンションモジュール340はフィーチャーマップ331に含まれた、欠陥に関する値の加重値を高めるように学習されたものである。アテンションモジュール340は、強化イメージ311が入力され、変調されたアテンションマップ(例えば、
図3の変調されたアテンションマップ345)を出力するアテンションマップ生成器(例えば、
図3のアテンションマップ生成器341-1)を含む。アテンションモジュール340は、変調されたアテンションマップ345及びフィーチャーマップ331が入力され、変調されたフィーチャーマップ346を出力するフィーチャー変調器(例えば、
図3のフィーチャー変調器341-2)を含む。
【0085】
アテンションマップ生成器341-1は強化イメージ311が入力され、アテンションマップ343を出力する生成モジュール(例えば、
図3の生成モジュール342)及びアテンションマップ343が入力され、変調されたアテンションマップ345を出力するアテンションマップ変調器(例えば、
図3のアテンションマップ変調器344)を含むことができる。
【0086】
フィーチャー変調器341-2は、フィーチャーマップ331に変調されたアテンションマップ345を適用し、変調されたフィーチャーマップ346を出力する。フィーチャー変調器341-2は、フィーチャーマップの一部(例えば、
図4のフィーチャーマップの一部331-2)に変調されたアテンションマップ345を適用し、変調されたアテンションマップの適用結果(例えば、
図4の変調されたフィーチャーマップ332)とフィーチャーマップの残り(例えば、
図4のフィーチャーマップの残りの331-1)を結合し、変調されたフィーチャーマップ346を出力してもよい。フィーチャー変調器341-2は、フィーチャーマップ331の少なくとも一部及び変調されたアテンションマップ345に対してエレメントワイズ演算を行う。
【0087】
ニューラルネットワーク320は変調されたフィーチャーマップ346が入力され、入力イメージ302の欠陥予測スコアを出力する欠陥分類器(
図3の欠陥分類器350)をさらに含んでもよい。
【0088】
以上で説明された実施形態は、ハードウェア構成要素、ソフトウェア構成要素、又はハードウェア構成要素及びソフトウェア構成要素の組み合せで具現される。例えば、本実施形態で説明した装置及び構成要素は、例えば、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ(digital signal processor)、マイクロコンピュータ、FPA(field programmable array)、PLU(programmable logic unit)、マイクロプロセッサー、又は命令(instruction)を実行して応答する異なる装置のように、1つ以上の汎用コンピュータ又は特殊目的コンピュータを用いて具現される。処理装置は、オペレーティングシステム(OS)及びオペレーティングシステム上で実行される1つ以上のソフトウェアアプリケーションを実行する。また、処理装置は、ソフトウェアの実行に応答してデータをアクセス、格納、操作、処理、及び生成する。理解の便宜のために、処理装置は1つが使用されるものとして説明する場合もあるが、当技術分野で通常の知識を有する者は、処理装置が複数の処理要素(processing element)及び/又は複数類型の処理要素を含むことが把握する。例えば、処理装置は、複数のプロセッサ又は1つのプロセッサ及び1つのコントローラを含む。また、並列プロセッサ(parallel processor)のような、他の処理構成も可能である。
【0089】
ソフトウェアは、コンピュータプログラム、コード、命令、又はそのうちの一つ以上の組合せを含み、希望の通りに動作するよう処理装置を構成したり、独立的又は結合的に処理装置を命令することができる。ソフトウェア及び/又はデータは、処理装置によって解釈されたり処理装置に命令又はデータを提供するために、いずれかの類型の機械、構成要素、物理的装置、仮想装置、コンピュータ格納媒体又は装置、又は送信される信号波に永久的又は一時的に具体化することができる。ソフトウェアはネットワークに連結されたコンピュータシステム上に分散され、分散した方法で格納されたり実行され得る。ソフトウェア及びデータは一つ以上のコンピュータで読出し可能な記録媒体に格納され得る。
【0090】
本実施形態による方法は、様々なコンピュータ手段を介して実施されるプログラム命令の形態で具現され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組み合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例として、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD-ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気-光媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。
【0091】
上記で説明したハードウェア装置は、本発明に示す動作を実行するために1つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
【0092】
上述したように実施形態をたとえ限定された図面によって説明したが、当技術分野で通常の知識を有する者であれば、上記の説明に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順に実行され、及び/又は説明されたシステム、構造、装置、回路などの構成要素が説明された方法とは異なる形態に結合又は組み合わせられてもよく、他の構成要素又は均等物によって置き換え又は置換されたとしても適切な結果を達成することができる。
【0093】
したがって、他の具現、他の実施形態及び特許請求の範囲と均等なものも後述する特許請求範囲の範囲に属する。