IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧

<>
  • 特許-欠陥分類装置、方法およびプログラム 図1
  • 特許-欠陥分類装置、方法およびプログラム 図2
  • 特許-欠陥分類装置、方法およびプログラム 図3
  • 特許-欠陥分類装置、方法およびプログラム 図4
  • 特許-欠陥分類装置、方法およびプログラム 図5
  • 特許-欠陥分類装置、方法およびプログラム 図6
  • 特許-欠陥分類装置、方法およびプログラム 図7
  • 特許-欠陥分類装置、方法およびプログラム 図8
  • 特許-欠陥分類装置、方法およびプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-05
(45)【発行日】2024-04-15
(54)【発明の名称】欠陥分類装置、方法およびプログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240408BHJP
   G01N 21/956 20060101ALI20240408BHJP
【FI】
G06T7/00 610C
G01N21/956 A
【請求項の数】 12
(21)【出願番号】P 2021039436
(22)【出願日】2021-03-11
(65)【公開番号】P2022139174
(43)【公開日】2022-09-26
【審査請求日】2023-02-17
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】平井 隆介
(72)【発明者】
【氏名】浅香 沙織
(72)【発明者】
【氏名】坂田 幸辰
(72)【発明者】
【氏名】谷沢 昭行
【審査官】吉川 康男
(56)【参考文献】
【文献】特開2003-098114(JP,A)
【文献】特開2020-085757(JP,A)
【文献】特開2016-017838(JP,A)
【文献】米国特許出願公開第2015/0120220(US,A1)
【文献】検査における映像情報メディア技術,映像情報メディア学会誌 第52巻 第5号,1998年05月20日,647~652
【文献】Hiroyuki Ukida,Visual defect inspection of rotating screw heads,SICE Annual Conference 2007,IEEE,2007年09月17日,1478-1483,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4421216
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G01N 21/956
(57)【特許請求の範囲】
【請求項1】
設計ソフトウェアにより作成された設計データに基づく画像であって、第1検査対象に関する第1設計画像を取得する第1取得部と、
前記設計データに基づき生成された前記第1検査対象を撮影した第1撮影画像を取得する第2取得部と、
前記第1設計画像を、欠陥のない第2検査対象を撮影した第2撮影画像を用いて表現した参照画像に変換する変換部と、
前記参照画像の信頼度を算出する算出部と、
前記参照画像と前記第1撮影画像とを比較して、前記第1検査対象における欠陥を検出する検出部と、
前記信頼度に基づき前記欠陥を分類する分類部と、
を具備する欠陥分類装置。
【請求項2】
前記第2撮影画像の部分画像である第2撮影パッチ画像と、前記第2検査対象に関する設計データに基づく第2設計画像の部分画像である第2設計パッチ画像とが紐づけられ、
前記変換部は、前記第1設計画像から一部を切り出した部分画像である第1設計パッチ画像に類似する第2設計パッチ画像に紐づく第2撮影パッチ画像を、前記第1設計パッチ画像の切り出し位置に対応させて貼り付けることで前記参照画像を生成し、
前記算出部は、前記第1設計パッチ画像と前記第2設計パッチ画像との類似度が高いほど、前記切り出し位置の前記信頼度を高く設定する、請求項1に記載の欠陥分類装置。
【請求項3】
前記類似度は、前記第1設計パッチ画像と前記第2設計パッチ画像との差分が小さいほど高く設定される、請求項2に記載の欠陥分類装置。
【請求項4】
前記類似度は、前記第1設計パッチ画像と前記第2設計パッチ画像との正規化相互相関の値が大きいほど高く設定される、請求項2に記載の欠陥分類装置。
【請求項5】
前記算出部は、複数の第2撮影パッチ画像が重畳した画素位置において、前記第1設計パッチ画像と前記複数の第2設計パッチ画像それぞれとの類似度に関する統計量を前記画素位置の信頼度として算出する、請求項2から請求項4のいずれか1項に記載の欠陥分類装置。
【請求項6】
前記検出部は、前記参照画像と前記第1撮影画像とを比較して差分が閾値以上となる画素の領域を前記欠陥として検出し、前記欠陥の位置と、前記欠陥の位置に対応する前記参照画像の信頼度とを取得する、請求項1から請求項5のいずれか1項に記載の欠陥分類装置。
【請求項7】
前記検出部は、前記参照画像と前記第1撮影画像とをそれぞれ正規化した画像の画素値に基づいて前記欠陥の位置を検出する、請求項6に記載の欠陥分類装置。
【請求項8】
前記分類部は、欠陥を有する画像と対応する信頼度とを入力し、欠陥の種類を出力するように学習された学習済みモデルに対して、前記第1撮影画像と前記欠陥の位置と対応する信頼度とを入力することにより、前記第1撮影画像に関する前記欠陥の種類を分類する、請求項1から請求項7のいずれか1項に記載の欠陥分類装置。
【請求項9】
前記分類部は、前記欠陥の位置と対応する信頼度が閾値未満である場合、前記欠陥を疑似欠陥に分類する、請求項1から請求項8のいずれか1項に記載の欠陥分類装置。
【請求項10】
前記第1撮影画像に前記欠陥の位置と前記欠陥の種類とを表示する表示部をさらに具備する、請求項1から請求項9のいずれか1項に記載の欠陥分類装置。
【請求項11】
設計ソフトウェアにより作成された設計データに基づく画像であって、第1検査対象に関する第1設計画像を取得し、
前記設計データに基づき生成された前記第1検査対象を撮影した第1撮影画像を取得し、
前記第1設計画像を、欠陥のない第2検査対象を撮影した第2撮影画像を用いて表現した参照画像に変換し、
前記参照画像の信頼度を算出し、
前記参照画像と前記第1撮影画像とを比較して、前記第1検査対象における欠陥を検出し、
前記信頼度に基づき前記欠陥を分類する、欠陥分類方法。
【請求項12】
コンピュータを、
設計ソフトウェアにより作成された設計データに基づく画像であって、第1検査対象に関する第1設計画像を取得する第1取得手段と、
前記設計データに基づき生成された前記第1検査対象を撮影した第1撮影画像を取得する第2取得手段と、
前記第1設計画像を、欠陥のない第2検査対象を撮影した第2撮影画像を用いて表現した参照画像に変換する変換手段と、
前記参照画像の信頼度を算出する算出手段と、
前記参照画像と前記第1撮影画像とを比較して、前記第1検査対象における欠陥を検出する検出手段と、
前記信頼度に基づき前記欠陥を分類する分類手段として機能させるための欠陥分類プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、欠陥分類装置、方法およびプログラムに関する。
【背景技術】
【0002】
半導体デバイスなどの回路パターンに基づき製品を製造する工程では、製品の歩留まりの低下を抑えるための欠陥検査が重要である。例えば半導体デバイスにおいては、Die to Database検査と呼ばれる、回路パターンの撮影画像と回路パターンから撮影画像を疑似的に生成したマスク画像とを比較する欠陥検査がある。この検査は、単純に2枚の画像を比較するだけであり、原理的に簡単なため、様々な検査装置に実装される。
また、欠陥検査においては、修正すべき欠陥、転写後の半導体デバイスの動作には影響がない欠陥、または疑似欠陥といったように欠陥を分類して判断することが有用である。一般的に、目視による分類は評価者の熟練度で精度のばらつきが大きいこと、さらに時間がかかることから、欠陥の分類に関する自動化手法が様々提案されている。
例えば、対象画像と参照画像との差分が大きい領域を設計データに重畳し、設計レイアウトに依存する欠陥を分類する手法がある。使用される参照画像は、欠陥が混入していないマスクの撮影画像を忠実に再現することを前提とする。そのため、参照画像の再現性が低いと上述の差分が大きくなり、欠陥が誤検出される場合に対応できない。
【先行技術文献】
【特許文献】
【0003】
【文献】国際公開第2011/004534号
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示は、上述の課題を解決するためになされたものであり、高精度な欠陥検査を支援できる欠陥分類装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
本実施形態に係る欠陥分類装置は、第1取得部と、第2取得部と、変換部と、算出部と、検出部と、分類部とを含む。第1取得部は、設計ソフトウェアにより作成された設計データに基づく画像であって、第1検査対象に関する第1設計画像を取得する。第2取得部は、前記設計データに基づき生成された前記第1検査対象を撮影した第1撮影画像を取得する。変換部は、前記第1設計画像を、欠陥のない第2検査対象を撮影した第2撮影画像を用いて表現した参照画像に変換する。算出部は、前記参照画像の信頼度を算出する。検出部は、前記参照画像と前記第1撮影画像とを比較して、前記第1検査対象における欠陥を検出する。分類部は、前記信頼度に基づき前記欠陥を分類する。
【図面の簡単な説明】
【0006】
図1】本実施形態に係る欠陥分類装置を示すブロック図。
図2】変換部の詳細を示すブロック図。
図3】辞書格納部に格納される辞書を木構造で保持する場合の概念図。
図4】第2撮影パッチ画像の貼り付けの一例を示す図。
図5】第2撮影パッチ画像の貼り付けの別例を示す図。
図6】本実施形態に係る欠陥分類装置の動作例を示すフローチャート。
図7】分類部における欠陥の分類結果の第1例を示す図。
図8】分類部における欠陥の分類結果の第2例を示す図。
図9】欠陥分類装置のハードウェア構成の一例を示す図。
【発明を実施するための形態】
【0007】
以下、図面を参照しながら本実施形態に係る欠陥分類装置、方法およびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の参照符号を付した部分は同様の動作を行うものとして、重複する説明を適宜省略する。
本実施形態に係る欠陥分類装置を図1のブロック図を参照して説明する。
【0008】
本実施形態に係る欠陥分類装置10は、設計画像取得部101と、撮影画像取得部102と、画像格納部103と、変換部104と、算出部105と、検出部106と、分類部107と、表示部108とを含む。
【0009】
設計画像取得部101は、検査対象となる検査対象品(第1検査対象)に関する、設計ソフトウェアにより生成した設計データに基づく第1設計画像を取得する。設計ソフトウェアは、例えばCAD(Computer Aided Design)のようなコンピュータ設計用のソフトウェアである。設計においては、要求される機能を実現する機能設計や、回路図を作成する論理設計、素子の配置や配線レイアウトを実行する部筒設計などの工程を経て設計データが作成される。第1設計画像は、例えば、Die to Database検査と同様に、設計データのパターンの有無に応じた2値化画像である。その他、設計データのパターンに基づいた画像であってもよい。
【0010】
撮影画像取得部102は、検査対象の設計データに基づき実際に生成された検査対象を撮影した第1撮影画像を取得する。使用する撮影装置は、例えば、光学カメラである。または、一般の電子顕微鏡やX線撮影カメラやそれらに原理的に類似する各種カメラでもよい。つまり、光源から光(電磁波)を検査対象である被写体にスキャン照射し、透過または反射された光(電磁波)がセンサに到達したときの強度などに応じて画素値に変換することで、被写体を画像化する。ここでの光源は、例えば、DUV(Deep Ultraviolet:遠紫外光)レーザがある。また、センサは、CMOSセンサと同様に2次元アレイ状に並べられたものを用いる。これら光源やセンサは、検査対象のパターンの細かさに応じて、その光の波長やセンサアレイの配置が適切に定められるものとする。
【0011】
画像格納部103は、第2設計画像と、第2設計画像に対応する第2撮影画像との画像ペアを収集し、データベースとして格納する。第2設計画像は、上述の検査対象とは異なる、以前に検査された検査対象(第2検査対象)に関する設計データに基づく設計画像である。第2撮影画像は、第2設計画像に関する設計データに基づいて生成された欠陥がない検査対象品(良品または正常な製品ともいう)の撮影画像である。「欠陥がない」とは、例えば、目視または他の外観検査システムにより撮影画像に欠陥がないと判定されることを示す。
画像ペアに含まれる第2撮影画像は、検査対象の第1撮影画像取得時に用いられる撮影系と同一の構成により撮影された画像であることが望ましいが、他の撮影系で取得した画像ペアでもよい。また、画像ペアは、同一の解像度であることが望ましいが、画像ペアを構成する画像間で解像度が異なってもよい。
【0012】
画像ペアは、画像の取得に関する撮影系などの画像の作成情報や、画像の解像度の情報、設計データのパターンに応じてカテゴリ化された情報に応じて仕分けられてもよい。カテゴリに応じて仕分けされた画像ペアの集合を画像ペアクラスとも呼ぶ。ここでの設計データのパターンとは、直線の長さ、曲線の曲率などの幾何学的情報や、RF回路のようなアナログ回路、論理演算回路のようなデジタル回路など、設計した回路の種類の情報を示す。
【0013】
変換部104は、設計画像取得部101から第1設計画像を受け取る。変換部104は、画像格納部103の画像ペアを参照して、第1設計画像を、第1設計画像に関する欠陥のない撮影画像を再現するように第2撮影画像を用いて表現した参照画像に変換する。言い換えれば、変換部104は、第1設計画像に基づいて、欠陥がない場合の検査対象の疑似撮影画像となる参照画像を生成する。参照画像は、例えば欠陥検査に用いられるマスク画像となる。
算出部105は、変換部104で生成された参照画像に関して、参照画像の再現性に対する信頼度を算出する。
【0014】
検出部106は、変換部104から参照画像を、撮影画像取得部102から第1撮影画像をそれぞれ受け取る。検出部106は、参照画像と第1撮影画像とを比較して、検査対象に欠陥が存在するか否か、および欠陥が存在する場合は第1撮影画像における欠陥の位置(以下、欠陥位置ともいう)を検出する。
【0015】
分類部107は、変換部104から参照画像を、算出部105から信頼度を、検出部106から第1撮影画像および欠陥位置に関する情報をそれぞれ受け取る。分類部107は、欠陥位置における欠陥を分類し、分類結果を得る。欠陥の分類としては、例えば修正すべき欠陥(線幅欠陥、ホール欠陥)のほか、回路の動作上問題にならない欠陥や、良品(正常な製品)を誤検出した疑似欠陥が挙げられる。
【0016】
表示部108は、分類部107から第1撮影画像、欠陥位置、および欠陥の分類結果を受け取り、例えば欠陥分類装置10に備え付けのディスプレイに表示する。また、表示部108は、表示に限らず、第1撮影画像、欠陥位置、および欠陥の分類結果のデータを外部に出力してもよい。例えば、外部のタブレット端末、スマートフォンなど画面表示機能を有するデバイスに、第1撮影画像、欠陥位置、および欠陥の分類結果のデータを送信してもよい。
【0017】
なお、本実施形態に係る欠陥分類装置10は画像格納部103を含むが、画像格納部103が欠陥分類装置10と接続可能な外部サーバなど、欠陥分類装置10の外部に存在してもよい。
【0018】
次に、変換部104の詳細について図2のブロック図を参照して説明する。
変換部104は、パッチ画像取得部1041と、探索部1042と、辞書格納部1043と、参照画像生成部1044とを含む。
【0019】
パッチ画像取得部1041は、設計画像取得部101から第1設計画像を受け取り、第1設計画像から部分画像を切り出す。以下では、切り出された部分画像を第1設計パッチ画像と呼ぶ。第1設計パッチ画像の切り出し方法としては、取得した第1設計画像上に複数のサンプリング点を設定し、サンプリング点を中心に、所定サイズの部分画像を切り出すことで第1設計パッチ画像を生成すればよい。
【0020】
探索部1042は、画像格納部103から複数の画像ペアを取得し、第2設計画像から第2設計パッチ画像を、第2撮影画像から第2撮影パッチ画像をそれぞれ紐づけて抽出し、辞書として辞書格納部1043に格納する。画像格納部103から複数の画像ペアを取得する方法としては、例えば、画像格納部103に含まれる全ての画像ペアを取得してもよいし、ランダムに画像ペアを取得してもよい。また、複数の画像ペアクラスが存在する場合は、複数の画像ペアクラスそれぞれから同数の画像ペアをランダムに取得してもよいし、1つの画像ペアクラスからのみ取得してもよい。
第2設計パッチ画像は、第2設計画像から切り出された部分画像であり、第2撮影パッチ画像は、第2撮影画像から切り出された部分画像である。切り出す部分画像の数は、辞書格納部1043が保持できる記憶容量に応じて適宜設定されればよい。また、切り出し位置は、第2設計パッチ画像と第2撮影パッチ画像とで被写体における同じ位置を想定する。
【0021】
探索部1042は、パッチ画像取得部1041から第1設計パッチ画像を受け取り、辞書格納部1043を参照して、第1設計パッチ画像に類似する第2設計パッチ画像を探索し、類似する第2設計パッチ画像のペアとなる第2撮影パッチ画像を抽出する。第1設計パッチ画像に類似する第2設計パッチ画像を探索する場合の類似度は、ベクトル間の距離を計算できる指標であればよい。例えば、第1設計パッチ画像の画素値の並びをベクトルとみなし、第2設計パッチ画像の画素値のベクトルとの差のL1ノルムまたはL2ノルムを用いて計算すればよい。または、正規化相互相関値を類似度としてもよい。つまり、第1設計パッチ画像と第2設計パッチ画像との画素値の差分に関するSSD(Sum of Squared Difference)、SAD(Sum of Squared Difference)などのパターンマッチングでもよく、画像間の類似度を算出する手法であれば、どのような手法を用いてもよい。探索部1042は、辞書格納部1043から算出された類似度と第2撮影パッチ画像とを抽出してもよい。
【0022】
なお、探索部1042は、第1設計パッチ画像に類似する第2設計パッチ画像を探索する前に、パッチ画像に関する辞書を生成し、辞書格納部1043に辞書を格納しておくことを想定するが、これに限らない。例えば、画像格納部103から定期的に辞書が生成され、辞書格納部1043に辞書が格納されるようにしてもよい。または、新たな画像ペアが画像格納部103に格納される度に、当該新たな画像ペアからパッチ画像に関する辞書が生成され、辞書格納部1043にパッチ画像の組が格納されてもよい。
【0023】
辞書格納部1043は、探索部1042から第2設計パッチ画像および第2撮影パッチ画像の複数のペアを受け取り、辞書として格納する。
【0024】
参照画像生成部1044は、パッチ画像取得部1041または探索部1042から第1設計画像を、探索部1042から第2撮影パッチ画像をそれぞれ受け取る。参照画像生成部1044は、第1設計画像からの第1設計パッチ画像の切り出し位置に第2撮影パッチ画像を割り当てる。参照画像生成部1044は、第1設計画像のうちの第1パッチ画像の各切り出し位置に、探索された第2パッチ画像を割り当てることで、参照画像を生成する。
【0025】
なお、パッチ画像取得部1041におけるサンプリング点の配置は、第1設計画像の全ての画素が少なくとも1度はパッチ画像として切り出されるように配置されることを想定する。従って、サンプリング点が密に配置される場合は、パッチ画像として部分画像が切り出される回数が増加し、結果として、貼り付けられる第2撮影パッチ画像の数が増加する。よって、参照画像生成部1044では、参照画像を生成する際に手がかりが増えるため、参照画像の画質を向上させることができる。一方、サンプリング点が密に配置されることで、探索部1042による第2撮影パッチ画像を抽出する処理回数(問い合わせ回数)が増加するため、計算量が増加してしまう。よって、サンプリング点の数は、参照画像の画質と計算量とのトレードオフを考慮して設定されればよい。
【0026】
なお、第1設計画像においてパターンが存在しない画像の領域については、サンプリング点を疎にして、サンプリング点の数を減らしてもよい。また、切り出した第2設計パッチ画像がすでに辞書格納部1043に登録済みの第2設計パッチ画像と同一であれば、変換部104は、当該切り出した第2設計パッチ画像に対応する第2撮影パッチ画像を新たに登録せずに削除してもよいし、切り出した第2設計パッチ画像に対応する第2撮影パッチ画像と登録済みの第2撮影パッチ画像との平均画像を生成し、当該平均画像を、登録済みの第2撮影パッチ画像に代えて登録してもよい。
【0027】
または、第2設計パッチ画像と対応する複数の第2撮影パッチ画像とがペアとして辞書格納部1043に格納されてもよいし、例えば表示部108が、第2設計パッチ画像と複数の第2撮影パッチ画像とをディスプレイに表示し、ユーザに選択させてもよい。
【0028】
第2設計パッチ画像としての切り出し位置が近い場合、同じ位置の画像が重複して切り出されている可能性が高い。よって、辞書格納部1043は、パッチ画像を記憶することに限らず、第2設計画像と第2撮影画像との画像ペアと、第2設計画像および第2撮影画像上でのそれぞれの切り出し位置に関する位置情報とを記憶してもよい。位置情報は、例えば、切り出し位置の中心座標およびパッチサイズでもよいし、切り出されるパッチ画像の左上の座標および右下の座標との組でもよい。探索部1042は、位置情報に基づいて第2設計画像および第2撮影画像からパッチ画像を切り出して、画像のマッチングを実行すればよい。
【0029】
また、第2設計パッチ画像および第2撮影パッチ画像の少なくとも一方の次元を削減したベクトルデータとして保持してもよい。例えば、第2設計パッチ画像および第2撮影パッチ画像の少なくとも一方に対して主成分解析を行い、所定の寄与率の主成分のみで表現されたパッチ画像のベクトルデータを保持すればよい。これにより、必要な辞書の記憶容量を削減することができる。
【0030】
また、一般的なクラスタリング手法を用いて、辞書格納部1043に保持される第2設計パッチ画像および第2撮影パッチ画像をクラスタ化してもよい。クラスタリング手法としては、例えばK-means法を用いればよい。または、木構造などの階層的表現を用いて多数のクラスに分類してもよい。
【0031】
次に、辞書格納部1043に格納されるパッチ画像を木構造で保持する場合の概念図について図3を参照して説明する。
図3は、辞書に含まれる第2設計パッチ画像がプロットされ、パターンによってx軸およびy軸の2軸で分類されたプロット図である。プロット間の距離が近いほど、第2設計パッチ画像が類似していることを示す。図3において、第2設計パッチ画像がパターンの類似度に応じてクラスタリングされ、第2設計パッチ画像が、破線と座標軸とで区切られる複数のクラスに分割される。各クラスが木構造で関連づけられることで、辞書が木構造で保持される例を示す。
【0032】
各クラスでは代表点が求められる。代表点は、クラスに含まれる複数の第2設計パッチ画像を代表するパターンを示す画像であり、クラスに含まれる複数の第2設計パッチ画像の中から1つ選択されてもよいし、複数の第2設計パッチ画像の平均画像など、新たに算出される画像でもよい。各代表点をノードとして、木構造が形成される。
【0033】
具体的に図3の例では、クラスaおよびbの代表点302-1と、クラスc、dおよびeの代表点302-2が同一層のノードとして形成される。代表点302-1の下位層として、クラスaの代表点303-1と、クラスbの代表点303-2とが同一層のノードとして形成される。同様に、代表点302-2の下位層として、クラスcの代表点303-3と、クラスdおよびeの代表点303-4とが同一層のノードとして形成される。さらに代表点303-4の下位層として、クラスdの代表点304-1とクラスeの代表点304-2とが同一層のノードとして形成される。
【0034】
ここで、探索部1042が木構造に基づいて第1設計パッチ画像に類似する第2設計パッチ画像を探索する例について説明する。
探索部1042は、第1設計パッチ画像350と、木構造のノードを形成する代表点とを比較し、パターンが類似するノードを下位層に向かって順に辿る。具体的に図3の例では、第1設計パッチ画像350と、木構造の一番上の層の2つの代表点302-1および302-2とのそれぞれの類似度を比較、例えば画像間の距離を計算する。ここでは、代表点302-2のほうが第1設計パッチ画像350と距離が近い(つまり類似する)場合を想定する。探索部1042は、第1設計パッチ画像350と代表点302-2の下位層(代表点303-3および303-4)との間の距離を計算する。ここで、第1設計パッチ画像350が代表点303-4との距離が近い場合を想定し、同様に、第1設計パッチ画像350と代表点303-4の下位層(代表点304-1および304-2)との間の距離を計算する。ここで最終的に第1設計パッチ画像350と代表点304-2との距離が近いと想定すると、探索部1042は、代表点304-2のクラスeに含まれる第2設計パッチ画像とのみ、第1設計パッチ画像350との距離計算を行えばよい。
【0035】
図3に示す木構造によれば、探索部1042は、第1設計パッチ画像に類似する第2設計パッチ画像を探索する際、類似するパターンを有する第2設計パッチ画像について木構造の上位層から下位層に向かって順に辿って探索することにより、辞書に含まれる第2設計パッチ画像を全探索する場合に比べて、探索回数(距離計算)を減らすことができる。これは、辞書に格納されるデータ数が多いほど実益があり、探索時間を短縮でき、探索効率を向上させることができる。
【0036】
なお、木構造の構築段階または更新段階において、ノード画像が同一、つまり重複するノード画像は1つのペアが存在すればよいため、画像の類似度が閾値以上となる複数のノード画像(第2設計パッチ画像および対応する第2撮影パッチ画像)は削除されてもよい。また、ノード画像に対して平準化処理が行われてもよい。例えば、木構造の構築段階または更新段階において、ノード画像である第2設計パッチ画像では同一の画像であるが、対応する第2撮影パッチ画像は実際に撮影した画像であるため、第2撮影パッチ画像は輝度などが異なる場合がありうる。よって、画像の類似度が閾値以上となるノード画像を1つとし、ノード画像である第2設計パッチ画像に紐付く複数の第2撮影パッチ画像を平均化することで、重複した冗長なノード画像を減らし、辞書のデータサイズを減らすことができる。
【0037】
なお、図3の例では、第2設計パッチ画像に含まれる検査対象のパターン形状(凹凸、直線であるか曲線であるかといった曲率度など)の類似度に基づく木構造を想定したが、輝度値の分布など他の類似度指標を基準として木構造を構築し、辞書として保持してもよい。
また、図3の例では、木構造のノードでの分岐にクラスの代表点との類似度を用いたが、第1設計パッチ画像350がどのクラスに属するかを判定できるルールであれば何でもよい。例えば、領域を分割する超平面を利用することも可能で、その場合は各ノードに代表点の代わりに超平面を保存しておくと同様の処理がおこなえる。
他にも、木構造を用いずに探索を効率化する方法もある。例えば、図3で一番小さい領域の代表点(303-1、303-2、303-3、304-1および304-2)を保存しておき、探索時は第1設計パッチ画像350とそれぞれの代表点の距離計算をして探索画像である第1設計パッチ画像が属するクラスを特定することも可能である。
【0038】
辞書格納部1043における上述の手法により、第1設計パッチ画像と類似する第2設計パッチ画像の探索にかかる計算時間を短縮できる。
なお、辞書格納部1043は、画像格納部103から取得した画像ペアの種別に応じて、異なる辞書を保持してもよい。例えば、回路設計時に定められた最小線幅または最小加工寸法に応じて、それぞれ異なる辞書を保持してもよい。
なお本実施形態では、辞書格納部1043が変換部104に含まれることを想定したが、これに限らず、欠陥分類装置10の内部に存在してもよい。また、欠陥分類装置10の外部に辞書格納部1043が存在してもよい。変換部104が参照画像生成の際に、外部にある辞書格納部1043にアクセスしてもよい。または、画像格納部103に辞書が格納されてもよい。
【0039】
なお、各パッチ画像の形状は、ここでは正方形の場合を想定するが、これに限らず、台形、平行四辺形など他の四角形でもよいし、三角形や五角形以上の多角形でもよい。または、円形、十字形状など、どのような形状であってもよい。例えば、直線が多い、曲線が多いなどの検査対象の回路パターンに応じて、パッチ画像の形状を適宜決定してもよい。
また、パッチ画像のサイズは、固定サイズに限らず、複数のサイズを設定してもよい。例えば、回路設計時に定められた最小線幅あるいは最小加工寸法に応じて、パターンが細かくなるほど小さくなるようにパッチ画像のサイズを設定してもよい。
【0040】
次に、第2撮影パッチ画像の貼り付け例について図4および図5を参照して説明する。
図4は、4つのサンプリング点41と、各サンプリング点41に対応する4つの第2撮影パッチ画像42と、参照画像の画素値となる生成画素43とを示す。
【0041】
4つのサンプリング点41それぞれに1つの第2撮影パッチ画像42が対応するため、生成画素43の位置と重複する第2撮影パッチ画像42それぞれの画素値の平均値を、生成画素43の画素値とする。また、第2撮影パッチ画像42に類似度が紐付けられる場合は、当該類似度を重みとした、第2撮影パッチ画像42それぞれの画素値の重み付き平均を生成画素43の画素値としてもよい。
【0042】
また、図5は、1つのサンプリング点41と2つの第2撮影パッチ画像42とが対応している場合である。図5のように、サンプリング点41を共通として、大きさの異なる2つの第2撮影パッチ画像42が重複する場合も図4と同様の手法で生成画素43の画素値を算出してもよい。さらに、大きい第2撮影パッチ画像42が貼り付けられる場合は、参照画像の部分画像として類似度が高いと考えられるため、大きい第2撮影パッチ画像42の重みを大きくするような重み付け平均を生成画素43の画素値としてもよい。
【0043】
なお、第2撮影パッチ画像を貼り付ける際は、サブピクセル精度で貼り付けてもよい。これは、第1設計パッチ画像と第2設計パッチ画像とで画像の位相が異なる場合もあり、第1設計パッチ画像を切り出した位置そのものよりも少しずれた位置のほうが、すなわち、画素単位よりもサブピクセル単位で調整したほうが、より精度よく対応する場合があるからである。よって、参照画像生成部1044は、第2設計パッチ画像を第1設計パッチ画像の切り出し位置にサブピクセル精度で位置合わせし、最適な貼り付け位置を決定してもよい。
【0044】
次に、本実施形態に係る欠陥分類装置10の動作例について図6のフローチャートを参照して説明する。
ステップS601では、設計画像取得部101が、第1設計画像を取得する。
ステップS602では、変換部104が、上述の手法により、第1設計画像から参照画像を生成する。
【0045】
ステップS603では、算出部105が、参照画像の信頼度を算出する。信頼度は、例えば参照画像を生成する際の類似度に基づいて、参照画像の画素ごとに算出される。参照画像の生成過程では、第1設計パッチ画像と第2設計パッチ画像との類似度が算出される。類似度が小さいほど、辞書格納部1043に格納される辞書に第1設計パッチ画像に対応する望ましいデータが存在しないことを示すため、当該類似度が小さい第2設計パッチ画像に対応する第2撮影パッチ画像から生成された参照画像の画素値は、信頼度が低いといえる。
一方、類似度が高いほど、当該類似度が高い第2設計パッチ画像に対応する第2撮影パッチ画像から生成された参照画像の画素値は、信頼度が高いといえる。よって、参照画像における1つの画素値の計算において、複数の第2撮影パッチ画像を用いた場合は、複数の第2撮影パッチ画像それぞれの類似度の平均、分散、複数の類似度のうちの最大値または最小値、およびこれらの2つ以上の組み合わせといった統計量に基づいて、信頼度を算出すればよい。
【0046】
ステップS604では、撮影画像取得部102が、第1撮影画像を取得する。
ステップS605では、検出部106が、第1撮影画像と参照画像とを比較する。具体的には、同一位置における画素ごとに、第1撮影画像の画素値と参照画像の画素値との差分を計算する。なお、第1撮影画像および参照画像の少なくとも一方の画像を、平均化フィルタ等で平滑化したのちに差分を計算してもよい。第1撮影画像および参照画像の少なくとも一方の画像を、エッジ強調フィルタ等で先鋭化して差分を計算してもよい。
【0047】
なお、第1撮影画像および参照画像の両方に対してダイナミックレンジの調整を行なってもよい。例えば、第1撮影画像および参照画像を合わせた全体の画素値の平均値を引くことで、2枚の画像間の平均値の差(直流成分)の差による違いをなくしてから、第1撮影画像と参照画像とを比較してもよい。その他、それぞれの画像を正規化してから比較してもよい。また、差分を相関値で表してもよい。例えば、画像の全体または一部分を切り出し、切り出された部分画像間の正規化相互相関などを算出すればよい。正規化相互相関の値が高いほど、画像の差分が小さいといえる。
【0048】
ステップS606では、検出部106が、欠陥の有無を判定する。具体的には、ステップS605で算出した差分が閾値以上であるか否かを判定する。差分が閾値以上である場合、欠陥ありと判定してステップS607に進み、差分が閾値未満である場合、欠陥なしと判定して処理を終了する。
【0049】
ステップS607では、検出部106が、欠陥位置を検出する。具体的には、検出部106は、ステップS606で欠陥ありと判定された画素位置を欠陥位置として推定すればよい。
【0050】
ステップS608では、分類部107が、欠陥位置の欠陥を分類し、欠陥の種類を示す情報を出力する。例えば、識別器を利用して分類する。識別器は、欠陥を含む第1撮影画像と、参照画像と、参照画像の信頼度と、欠陥位置とを入力データとし、欠陥の種類を正解データとして機械学習モデルを学習した学習済みモデルを含む。分類部107は、当該学習済みモデルに対して、第1撮影画像と、欠陥位置と、信頼度とを入力することで、当該欠陥位置における欠陥の種類が出力される。機械学習モデルは、サポートベクターマシン、ランダムフォレスト、深層学習などを利用すればよい。
【0051】
なお、識別器は、複数の欠陥の種類のうちの確度が最も高い欠陥の種類を分類結果として出力する。なお、複数の欠陥の種類それぞれの確率を分類結果として出力してもよい。例えば、確率値の最大値が所定の閾値よりも小さいデータについては、欠陥の種類を特定せずに、それぞれの種類の確率値をユーザに提示してもよい。
なお、分類部107は、学習済みモデルを含む識別器を用いた欠陥の分類に限らず、参照画像の信頼度に応じて、ルールベースにより欠陥を分類してもよい。
【0052】
ステップS609では、表示部108が、検出した欠陥の種類をユーザに提示する。さらに欠陥位置もあわせてユーザに提示してもよい。例えば、第1撮影画像または参照画像における欠陥位置を画像に重畳表示してもよいし、参照画像の欠陥位置における信頼度を表示してもよい。表示部108は、信頼度を第1撮影画像における欠陥位置に対応する位置に重畳表示してもよい。重畳表示する場合、信頼度をヒートマップで色分けして表示してもよいし、参照画像のIDなど、欠陥を検出した参照画像を同定できる情報を表示してもよい。また、欠陥が検出されなかった場合は、異常なし(正常な製品)である旨をユーザに通知してもよい。
【0053】
なお、分類部107で用いる学習済みモデルの学習時は、第1撮影画像と、欠陥位置と、信頼度が閾値以上である参照画像と、対応する信頼度とを入力データとして、欠陥位置における欠陥の種類を正解データとして機械学習モデルを学習する。信頼度が低い参照画像による検査結果は、機械学習結果に悪影響を及ぼす可能性があるため、予め学習用のデータから除外することで、機械学習の精度を向上させることができる。
または、信頼度が低い参照画像についても入力データとして用いてもよく、この場合は信頼度の値を重視するように学習することで、信頼度が低い参照画像による分類結果の重みを低く、信頼度が高い参照画像による分類結果の重みを高く学習させてもよい。
【0054】
学習済みモデルの学習時は、入力データおよび正解データを事前に準備したデータで学習する。学習済みモデルの推論時は、検査対象の欠陥の分類において、予め用意された欠陥の種類の画像パターンと欠陥が類似していれば、分類の精度(正解率)が高いことが期待されるが、同種の欠陥であっても新たな画像パターンで欠陥が発生した場合は、(正解率)が低くなる可能性がある。よって、分類部107から出力された分類結果の確率が閾値以上である場合、学習済みモデルに入力された第1撮影画像、参照画像および信頼度を学習用データとして追加し、機械学習モデルの学習に適用してもよい。
また、学習済みモデルの学習時には、欠陥位置における回路形状情報を入力データとしてさらに追加してもよい。回路形状情報は、例えば、配線の幅、配線のコーナー部、断線形状といった情報である。学習時に回路形状情報を入力データとして用いた場合は、学習済みモデルの推論時に、第1撮影画像の欠陥位置における回路形状情報を入力してもよい。
【0055】
次に、分類部107における欠陥の分類結果の第1例について図7を参照して説明する。
図7は、分類部107に含まれる識別器(学習済みモデル)の入出力を示す。参照画像701と、参照画像701の信頼度702と、第1撮影画像703とが識別器704に入力される。図7の例では、参照画像701の信頼度702は、90%であるとする。また、検査対象には欠陥710が存在し、第1撮影画像703には欠陥710が映り込んでいる場合を想定する。
【0056】
識別器704は、参照画像701と、信頼度702と、第1撮影画像703との入力に基づいて欠陥を分類し、欠陥の種類を示す結果を出力する。一例として、欠陥710の位置を示す画像705と欠陥710の種類に関する欠陥情報706を提示する。欠陥710の位置を示す画像705は、例えば参照画像701と第1撮影画像703との差分画像である。欠陥情報706は、欠陥710の種類と信頼度702とを表示する。具体的に図7の例では、「種類:ホール欠陥、信頼度:90%」が表示される。なお、欠陥情報706に信頼度702を表示しなくともよい。
【0057】
次に、分類部107における欠陥の分類結果の第2例について図8を参照して説明する。
図8は、図7と同様の識別器704に対する入出力を示すが、参照画像801の信頼度802が異なる。図8の場合は信頼度が30%と、比較的低い場合を想定する。
【0058】
参照画像801と、信頼度802と、第1撮影画像803とが識別器704に入力され、識別器704から欠陥の位置を示す画像804と欠陥情報805とが出力される。
欠陥の位置を示す画像804は、参照画像801と第1撮影画像803との差分が示され、参照画像801では途切れている箇所が、欠陥として画像804に表される。識別器704では、参照画像801の信頼度802が低いことが考慮されるため、参照画像801に基づく欠陥は不正確である可能性が高いとして、欠陥情報805は、「種類:疑似欠陥、信頼度:30%」が表示される。
【0059】
なお、本実施形態では、半導体設計のような回路設計における検査を想定するが、これに限らない。例えば、第1検査対象は建物でもよく、この場合、第1設計画像は建物に関する3次元設計データに基づく。つまり、本実施形態に係る欠陥分類装置10により、コンピュータ設計用のソフトウェアにより生成された3次元設計データに基づく建物の外観などの予想図(参照画像)と、実際に建物が完成したあとの建物の撮影画像とを比較し、予想図の信頼度に応じて欠陥の有無を検出してもよい。例えば、検出部106が、予想図の信頼度が閾値以上であれば、欠陥ありとして欠陥位置を検出し、表示部108が欠陥位置に関する情報を提示すればよい。一方、予想図の信頼度が閾値未満であれば、検出部106は欠陥なしと判定すればよい。なお、表示部108が、信頼度が閾値未満であるため、欠陥と判定していない旨、ユーザに提示してもよい。
また、第1検査対象の構造を定める設計データに加えて、例えば、木造であるか鉄筋コンクリートであるかなどといった素材の情報、および、壁の色といった色に関する情報を付与した第1設計画像が生成されてもよい。
すなわち、コンピュータ設計用のソフトウェアにより生成されるデータに基づいて製造される製品および建築される建造物であれば、本実施形態に係る欠陥分類装置10の処理を適用できる。
【0060】
次に、上述の実施形態に係る欠陥分類装置10のハードウェア構成の一例を図9に示す。
欠陥分類装置10は、CPU(Central Processing Unit)901と、RAM(Random Access Memory)902と、ROM(Read Only Memory)903と、ストレージ904と、表示装置905と、入力装置906と、通信装置907とを含み、それぞれバスにより接続される。
【0061】
CPU901は、プログラムに従って演算処理および制御処理などを実行するプロセッサである。CPU901は、RAM902の所定領域を作業領域として、ROM903およびストレージ904などに記憶されたプログラムとの協働により、欠陥分類装置10に関する上述の各種処理を実行する。
【0062】
RAM902は、SDRAM(Synchronous Dynamic Random Access Memory)などのメモリである。RAM902は、CPU901の作業領域として機能する。ROM903は、プログラムおよび各種情報を書き換え不可能に記憶するメモリである。
【0063】
ストレージ904は、HDD等の磁気記録媒体、フラッシュメモリなどの半導体による記憶媒体、または、HDD(Hard Disc Drive)などの磁気的に記録可能な記憶媒体、または光学的に記録可能な記憶媒体などにデータを書き込みおよび読み出しをする装置である。ストレージ904は、CPU901からの制御に応じて、記憶媒体にデータの書き込みおよび読み出しをする。
【0064】
表示装置905は、LCD(Liquid Crystal Display)などの表示デバイスである。表示装置905は、CPU901からの表示信号に基づいて、各種情報を表示する。
入力装置906は、マウスおよびキーボード等の入力デバイスである。入力装置906は、ユーザから操作入力された情報を指示信号として受け付け、指示信号をCPU901に出力する。
通信装置907は、CPU901からの制御に応じて外部機器とネットワークを介して通信する。
【0065】
以上に示した本実施形態によれば、第1設計画像に基づく欠陥がない場合の検査対象のマスク画像となる参照画像を生成する場合に、画素ごとに参照画像の信頼度を算出し、信頼度に応じて当該検査対象の欠陥を分類する。これにより、例えば、参照画像の信頼度が低ければ、当該参照画像により検出された欠陥は疑似欠陥である可能性があるといった判定ができる。よって、参照画像の再現性に応じて欠陥分類が可能となり、分類精度を向上させることができる。
【0066】
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した欠陥分類装置の制御動作による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD-ROM、CD-R、CD-RW、DVD-ROM、DVD±R、DVD±RW、Blu-ray(登録商標)Discなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の欠陥分類装置の制御と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
【0067】
なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
【0068】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行なうことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0069】
10…欠陥分類装置、350…第1設計パッチ画像、41…サンプリング点、42…第2撮影パッチ画像、43…生成画素、101…設計画像取得部、102…撮影画像取得部、103…画像格納部、104…変換部、105…算出部、106…検出部、107…分類部、108…表示部、302-1,302-2,303-1,303-2,303-3,303-4,304-1,304-2…代表点、701,801…参照画像、702,802…信頼度、703,803…第1撮影画像、704…識別器、705,804…画像、706,805…欠陥情報、710…欠陥、901…CPU、902…RAM、903…ROM、904…ストレージ、905…表示装置、906…入力装置、907…通信装置、1041…パッチ画像取得部、1042…探索部、1043…辞書格納部、1044…参照画像生成部。
図1
図2
図3
図4
図5
図6
図7
図8
図9