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

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

▶ 株式会社アドバンテストの特許一覧

特許7190047検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム
<>
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図1
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図2
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図3
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図4
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図5
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図6
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図7
  • 特許-検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-06
(45)【発行日】2022-12-14
(54)【発明の名称】検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20221207BHJP
【FI】
G06T7/00 610C
G06T7/00 350B
【請求項の数】 16
(21)【出願番号】P 2021536617
(86)(22)【出願日】2020-05-11
(86)【国際出願番号】 JP2020018851
(87)【国際公開番号】W WO2021019865
(87)【国際公開日】2021-02-04
【審査請求日】2021-10-06
(31)【優先権主張番号】16/524,162
(32)【優先日】2019-07-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390005175
【氏名又は名称】株式会社アドバンテスト
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】池田 皓甫
(72)【発明者】
【氏名】レーベンサール アイラ
(72)【発明者】
【氏名】ショーブ キース
【審査官】新井 則和
(56)【参考文献】
【文献】特開2017-054239(JP,A)
【文献】特開2018-173814(JP,A)
【文献】特開2019-093126(JP,A)
【文献】特開2000-341705(JP,A)
【文献】特開2020-071615(JP,A)
【文献】米国特許出願公開第2019/0392201(US,A1)
【文献】米国特許第10867327(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
(57)【特許請求の範囲】
【請求項1】
検査対象を撮影した対象画像を取得する対象画像取得部と、
前記対象画像の一部をマスクする対象画像マスク部と、
前記対象画像においてマスクされたマスク領域の画像を予測するマスク領域予測部と、
複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成する再現画像生成部と、
前記対象画像および前記再現画像の差分を検出する差分検出部と、
を備える検査装置。
【請求項2】
前記差分検出部は、予め定められた領域毎に前記対象画像および前記再現画像を比較して、前記予め定められた領域毎の前記差分の度合いを算出する、請求項1に記載の検査装置。
【請求項3】
前記差分の度合いが予め定められた品質を満たさない場合に、前記検査対象が不良品であると判定する判定部を更に備える、請求項2に記載の検査装置。
【請求項4】
前記判定部は、前記予め定められた領域毎の前記差分の度合いのうち、最も大きい前記差分の度合いが予め定められた閾値を超える場合に、前記検査対象が不良品であると判定する、請求項3に記載の検査装置。
【請求項5】
前記判定部は、前記検査対象が不良品であると判定した場合に、不良品であると判定した前記検査対象を撮影した前記対象画像から、前記検査対象の電気的特性を予測し、前記電気的特性が予め定められた品質を満たさない場合に、前記検査対象が不良品であると確定する、請求項3または4に記載の検査装置。
【請求項6】
前記判定部は、前記検査対象が不良品であると判定した場合に、不良品であると判定した前記検査対象を撮影した前記対象画像から、前記検査対象の電気的特性を予測し、前記電気的特性が予め定められた品質を満たす場合に、前記検査対象が良品であると確定する、請求項3から5のいずれか一項に記載の検査装置。
【請求項7】
前記差分検出部は、前記差分の度合いに応じて前記予め定められた領域毎の表示態様を異ならせた検出マップを出力する、請求項2から6のいずれか一項に記載の検査装置。
【請求項8】
前記差分検出部は、前記対象画像と前記再現画像とのユークリッド距離に基づいて、前記差分の度合いを算出する、請求項2から7のいずれか一項に記載の検査装置。
【請求項9】
前記対象画像マスク部は、前記対象画像を複数のセルに分割したうちの1つのセルを順次マスクし、
前記再現画像生成部は、異なるセルのそれぞれについて予測した複数の予測画像を用いて前記再現画像を生成する、請求項1から8のいずれか一項に記載の検査装置。
【請求項10】
前記対象画像取得部は、前記検査対象を撮影した画像をグレースケール化した画像を前記対象画像として取得する、請求項1から9のいずれか一項に記載の検査装置。
【請求項11】
前記対象画像取得部は、前記検査対象を撮影した画像において、前記検査対象をオブジェクト検出して対象領域を狭めた画像を前記対象画像として取得する、請求項1から10のいずれか一項に記載の検査装置。
【請求項12】
検査対象を撮影した対象画像を取得することと、
前記対象画像の一部をマスクすることと、
前記対象画像においてマスクしたマスク領域の画像を予測することと、
複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成することと、
前記対象画像および前記再現画像の差分を検出することと、
を備える検査方法。
【請求項13】
コンピュータにより実行されて、前記コンピュータを
検査対象を撮影した対象画像を取得する対象画像取得部と、
前記対象画像の一部をマスクする対象画像マスク部と、
前記対象画像においてマスクしたマスク領域の画像を予測するマスク領域予測部と、
複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成する再現画像生成部と、
前記対象画像および前記再現画像の差分を検出する差分検出部と、
して機能させる、検査プログラム。
【請求項14】
トレーニング画像を取得するトレーニング画像取得部と、
トレーニング画像の一部をマスクするトレーニング画像マスク部と、
マスクされたトレーニング画像を入力して、前記トレーニング画像を予測したモデル画像を出力する予測モデルと、
前記トレーニング画像および前記モデル画像の誤差に基づいて前記予測モデルを更新するモデル更新部と、
を備える学習装置。
【請求項15】
トレーニング画像を取得することと、
トレーニング画像の一部をマスクすることと、
マスクされたトレーニング画像を予測モデルに入力して、前記トレーニング画像を予測したモデル画像を出力することと、
前記トレーニング画像および前記モデル画像の誤差に基づいて前記予測モデルを更新することと、
を備える学習方法。
【請求項16】
コンピュータにより実行されて、前記コンピュータを、
トレーニング画像を取得するトレーニング画像取得部と、
トレーニング画像の一部をマスクするトレーニング画像マスク部と、
マスクされたトレーニング画像を入力して、前記トレーニング画像を予測したモデル画像を出力する予測モデルと、
前記トレーニング画像および前記モデル画像の誤差に基づいて前記予測モデルを更新するモデル更新部と、
して機能させる、学習プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検査装置、検査方法、および、検査プログラム、ならびに、学習装置、学習方法、および、学習プログラムに関する。
【背景技術】
【0002】
従来、検査対象の良否を判定するために外観検査が行われている。例えば、半導体試験向けのプローブピンの外観検査においては、プローブピンを撮影した画像を数値化し、数値化したデータを予め定められたルールに従って評価することで、プローブピンの良否を判定していた。
【解決しようとする課題】
【0003】
しかしながら、検査対象を検査するにあたって、検査対象の状態を容易に把握することが望まれている。
【一般的開示】
【0004】
上記課題を解決するために、本発明の第1の態様においては、検査装置を提供する。検査装置は、検査対象を撮影した対象画像を取得する対象画像取得部を備えてよい。検査装置は、対象画像の一部をマスクする対象画像マスク部を備えてよい。検査装置は、対象画像においてマスクされたマスク領域の画像を予測するマスク領域予測部を備えてよい。検査装置は、複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成する再現画像生成部を備えてよい。検査装置は、対象画像および再現画像の差分を検出する差分検出部を備えてよい。
【0005】
差分検出部は、予め定められた領域毎に対象画像および再現画像を比較して、予め定められた領域毎の差分の度合いを算出してよい。
【0006】
検査装置は、差分の度合いが予め定められた品質を満たさない場合に、検査対象が不良品であると判定する判定部を更に備えてよい。
【0007】
判定部は、予め定められた領域毎の差分の度合いのうち、最も大きい差分の度合いが予め定められた閾値を超える場合に、検査対象が不良品であると判定してよい。
【0008】
判定部は、検査対象が不良品であると判定した場合に、不良品であると判定した検査対象を撮影した対象画像から、検査対象の電気的特性を予測し、電気的特性が予め定められた品質を満たさない場合に、検査対象が不良品であると確定してよい。
【0009】
判定部は、検査対象が不良品であると判定した場合に、不良品であると判定した検査対象を撮影した対象画像から、検査対象の電気的特性を予測し、電気的特性が予め定められた品質を満たす場合に、検査対象が良品であると確定してよい。
【0010】
差分検出部は、差分の度合いに応じて予め定められた領域毎の表示態様を異ならせた検出マップを出力してよい。
【0011】
差分検出部は、対象画像と再現画像とのユークリッド距離に基づいて、差分の度合いを算出してよい。
【0012】
対象画像マスク部は、対象画像を複数のセルに分割したうちの1つのセルを順次マスクし、再現画像生成部は、異なるセルのそれぞれについて予測した複数の予測画像を用いて再現画像を生成してよい。
【0013】
対象画像取得部は、検査対象を撮影した画像をグレースケール化した画像を対象画像として取得してよい。
【0014】
対象画像取得部は、検査対象を撮影した画像において、検査対象をオブジェクト検出して対象領域を狭めた画像を対象画像として取得してよい。
【0015】
本発明の第2の態様においては、検査方法を提供する。検査方法は、検査対象を撮影した対象画像を取得することと、対象画像の一部をマスクすることと、対象画像においてマスクしたマスク領域の画像を予測することと、複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成することと、対象画像および再現画像の差分を検出することと、を備えてよい。
【0016】
本発明の第3の態様においては、検査プログラムを提供する。検査プログラムは、コンピュータにより実行されて、コンピュータを、検査対象を撮影した対象画像を取得する対象画像取得部と、対象画像の一部をマスクする対象画像マスク部と、対象画像においてマスクしたマスク領域の画像を予測するマスク領域予測部と、複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成する再現画像生成部と、対象画像および再現画像の差分を検出する差分検出部と、して機能させてよい。
【0017】
本発明の第4の態様においては、学習装置を提供する。学習装置は、トレーニング画像を取得するトレーニング画像取得部と、トレーニング画像の一部をマスクするトレーニング画像マスク部と、マスクされたトレーニング画像を入力して、トレーニング画像を予測したモデル画像を出力する予測モデルと、トレーニング画像およびモデル画像の誤差に基づいて予測モデルを更新するモデル更新部と、を備えてよい。
【0018】
本発明の第5の態様においては、学習方法を提供する。学習方法は、トレーニング画像を取得することと、トレーニング画像の一部をマスクすることと、マスクされたトレーニング画像を予測モデルに入力して、トレーニング画像を予測したモデル画像を出力することと、トレーニング画像およびモデル画像の誤差に基づいて予測モデルを更新することと、を備えてよい。
【0019】
本発明の第6の態様においては、学習プログラムを提供する。学習プログラムは、コンピュータにより実行されて、コンピュータを、トレーニング画像を取得するトレーニング画像取得部と、トレーニング画像の一部をマスクするトレーニング画像マスク部と、マスクされたトレーニング画像を入力して、トレーニング画像を予測したモデル画像を出力する予測モデルと、トレーニング画像およびモデル画像の誤差に基づいて予測モデルを更新するモデル更新部と、して機能させてよい。
【0020】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0021】
図1】本実施形態に係る検査装置100のブロック図の一例を示す。
図2】本実施形態に係る検査装置100が検査対象を検査するフローの一例を示す。
図3】本実施形態に係る検査装置100を用いた検査における、対象画像310、マスク画像320、予測画像330、および、再現画像340の一例を示す。
図4】本実施形態において、検査対象が良品である場合における検査結果の一例を示す。
図5】本実施形態において、検査対象が不良品である場合における検査結果の一例を示す。
図6】本実施形態に係る学習装置600のブロック図の一例を示す。
図7】本実施形態に係る学習装置600が予測モデル630を学習するフローの一例を示す。
図8】本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。
【発明を実施するための形態】
【0022】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0023】
図1は、本実施形態に係る検査装置100のブロック図の一例を示す。検査装置100は、検査対象の実際の状態を撮影した画像と、検査対象があるべき状態を予測して生成した画像との差分を検出することで、検査対象の状態を容易に把握することができる。本実施形態においては、検査装置100が、半導体試験向けのプローブピンを検査対象とする場合を一例として説明する。しかしながら、これに限定されるものではない。検査装置100は、半導体デバイスにおけるバンプの画像解析や、配線基板におけるパターン検査等、他の電気部品の検査に用いられてもよいし、電気部品とは異なるあらゆる物品の検査に用いられてもよい。
【0024】
検査装置100は、PC(パーソナルコンピュータ)、タブレット型コンピュータ、スマートフォン、ワークステーション、サーバコンピュータ、または汎用コンピュータ等のコンピュータであってよく、複数のコンピュータが接続されたコンピュータシステムであってもよい。このようなコンピュータシステムもまた広義のコンピュータである。また、検査装置100は、コンピュータ内で1または複数実行可能な仮想コンピュータ環境によって実装されてもよい。これに代えて、検査装置100は、検査対象の検査用に設計された専用コンピュータであってもよく、専用回路によって実現された専用ハードウェアであってもよい。また、検査装置100がインターネットに接続可能な場合、検査装置100は、クラウドコンピューティングにより実現されてもよい。
【0025】
検査装置100は、対象画像取得部110、対象画像マスク部120、マスク領域予測部130、再現画像生成部140、差分検出部150、および、判定部160を備える。
【0026】
対象画像取得部110は、検査対象を撮影した対象画像を取得する。対象画像取得部110は、検査対象を撮影した画像を前処理した画像を対象画像として取得してもよい。この際、対象画像取得部110は、例えば、ネットワークを介して対象画像を取得してもよいし、ユーザ入力を介して対象画像を取得してもよいし、データを記憶可能なメモリデバイス等を介して対象画像を取得してもよい。そして、対象画像取得部110は、取得した対象画像を対象画像マスク部120および差分検出部150へ供給する。
【0027】
対象画像マスク部120は、対象画像の一部をマスクする。そして、対象画像マスク部120は、対象画像の異なる部分をそれぞれマスクした複数のマスク画像をマスク領域予測部130へ供給する。
【0028】
マスク領域予測部130は、対象画像においてマスクされたマスク領域の画像を予測する。そして、マスク領域予測部130は、複数のマスク画像におけるマスク領域のそれぞれについて予測した、複数の予測画像を再現画像生成部140へ供給する。
【0029】
再現画像生成部140は、複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成する。再現画像生成部140は、生成した再現画像を差分検出部150へ供給する。
【0030】
差分検出部150は、対象画像および再現画像の差分を検出する。この際、差分検出部150は、例えば、予め定められた領域毎に、対象画像取得部110から供給された対象画像および再現画像生成部140から供給された再現画像を比較して、予め定められた領域毎の差分の度合いを算出してよい。そして、差分検出部150は、算出した差分の度合いを判定部160へ供給する。
【0031】
判定部160は、差分の度合いが予め定められた品質を満たさない場合に、検査対象が不良品であると判定する。そして、判定部160は、判定結果を他の機能部および他の装置等へ出力する。このような検査装置100を用いて検査対象を検査する場合について、フローを用いて詳細に説明する。
【0032】
図2は、本実施形態に係る検査装置100が検査対象を検査するフローの一例を示す。ステップ210において、対象画像取得部110は、検査対象を撮影した対象画像を取得する。一例として、対象画像取得部110は、半導体試験向けのプローブピンを、光学顕微鏡等を用いて撮影した画像を、ネットワークを介して取得する。
【0033】
そして、対象画像取得部110は、検査対象を撮影した画像をグレースケール化する。光学顕微鏡等を用いてプローブピンを撮影した画像は、R、G、および、Bの各色に対応する3つのチャンネルを含み得る。しかしながら、これら3つのチャンネルは、本実施形態にかかる検査の観点からみれば、ほぼ同じ特徴を有しており、いずれのチャンネルも他のチャンネルに比べてユニークな特徴を有さない。したがって、対象画像取得部110は、取得した画像をグレースケール化することによって、取得した画像をシングルチャンネル化する。このように、対象画像取得部110は、検査対象を撮影した画像をグレースケール化した画像を対象画像として取得してよい。検査装置100は、対象画像を取得するにあたって、取得した画像をグレースケール化してシングルチャンネルとすることにより、検査処理の負荷を軽減させることができる。なお、複数のチャンネルを用いた方が好ましい場合、例えば、検査の精度が向上する場合等には、対象画像取得部110は、検査対象を撮影した画像をグレースケール化することなく対象画像として取得してもよい。
【0034】
また、対象画像取得部110は、検査対象を撮影した画像を狭領域化する。例えば、対象画像取得部110は、Yolo(You Only Look Once)等のオブジェクト検出アルゴリズムを用いて、画像内におけるプローブピンの位置および大きさを認識する。そして、対象画像取得部110は、認識したプローブピンの位置および大きさに基づいて画像をクリップし、対象領域を狭める。このように、対象画像取得部110は、検査対象を撮影した画像において、検査対象をオブジェクト検出して対象領域を狭めた画像を対象画像として取得してよい。このように、検査装置100は、対象画像を取得するにあたって、検査対象をオブジェクト検出して対象領域を狭めることにより、検査処理の高速化を図るとともに、検査の精度を向上させることができる。対象画像取得部110は、前処理(例えば、グレースケール化および狭領域化)した画像を対象画像として取得し、当該対象画像を対象画像マスク部120および差分検出部150へ供給する。
【0035】
ステップ220において、対象画像マスク部120は、対象画像の一部をマスクする。一例として、対象画像マスク部120は、ステップ210において取得された対象画像を複数のセルに分割する。そして、対象画像マスク部120は、対象画像を複数のセルに分割したうちの1つのセルを順次マスクする。対象画像マスク部120は、複数のセルのそれぞれがマスクされた複数のマスク画像をマスク領域予測部130へ供給する。
【0036】
ステップ230において、マスク領域予測部130は、対象画像においてマスクされたマスク領域の画像を予測する。この際、マスク領域予測部130は、例えば、良品であることが既知であるトレーニング画像のみを用いて、一部の領域がマスクされた画像が入力されると、マスクされていない他の領域の画像からマスク領域の画像を予測可能なように学習された、CNN(Convolution Neural Network)等の学習済みモデルを用いてよい。すなわち、マスク領域予測部130は、良品であることが既知であるトレーニング画像のみを用いて、検査対象が良品であった場合にマスク領域がどのような状態であるべきかを予測可能なように学習された学習済みモデルを用いてよい。マスク領域予測部130は、例えば、ステップ220においてマスクされた複数のマスク画像を学習済みモデルへそれぞれ入力し、複数のセルのそれぞれについてマスク領域の画像を予測する。このようなモデルの学習については、後述する。なお、上述の説明では、マスク領域予測部130が、学習済みのCNNモデルを用いる場合を一例として示したが、これに限定されるものではない。マスク領域予測部130は、他のアルゴリズムの学習済みモデルを用いてマスク領域の画像を予測してもよいし、学習とは異なるアルゴリズムを用いてマスク領域の画像を予測してもよい。マスク領域予測部130は、複数のマスク領域のそれぞれについて予測した複数の予測画像を再現画像生成部140へ供給する。
【0037】
ステップ240において、再現画像生成部140は、複数のマスク領域のそれぞれについて予測した複数の予測画像を用いて再現画像を生成する。一例として、再現画像生成部140は、異なるセルのそれぞれについて予測した複数の予測画像を用いて再現画像を生成する。この際、再現画像生成部140は、例えば、ステップ230において複数のセルのそれぞれについて予測された複数の予測画像を、元のセルの位置に配置し直すことによって再現画像を生成してよい。再現画像生成部140は、生成した再現画像を差分検出部150へ供給する。
【0038】
ステップ250において、差分検出部150は、対象画像および再現画像の差分を検出する。一例として、差分検出部150は、予め定められた領域毎(例えば、ピクセル毎、ピクセルグループ毎、および、対象画像をマスクする際に用いたセル毎等)に、対象画像取得部110から供給された対象画像および再現画像生成部140から供給された再現画像を比較して、予め定められた領域毎の差分の度合いを算出する。この際、差分検出部150は、対象画像と再現画像とのL2ノルム、すなわち、ユークリッド距離に基づいて、差分の度合いを算出してよい。また、差分検出部150は、差分の度合いに応じて予め定められた領域毎の表示態様(例えば、色や濃度等)を異ならせた検出マップを出力してよい。そして、差分検出部150は、予め定められた領域毎の差分の度合いを判定部160へ供給する。
【0039】
ステップ260において、判定部160は、ステップ250において算出された差分の度合いが予め定められた閾値以下であるか否か判定する。そして、判定部160は、差分の度合いが予め定められた閾値以下である場合、すなわち、差分の度合いが予め定められた品質を満たす場合に、ステップ270へ進み、検査対象が良品であると判定して処理を終了する。一方、判定部160は、差分の度合いが予め定められた閾値を超える場合、すなわち、差分の度合いが予め定められた品質を満たさない場合に、ステップ280へ進み、検査対象が不良品であると判定して処理を終了する。この際、判定部160は、例えば、予め定められた領域毎の差分の度合いのうち、最も大きい差分の度合いが予め定められた閾値を超える場合に、検査対象が不良品であると判定してよい。そして、判定部160は、判定結果を他の機能部および他の装置等へ出力する。なお、当該判定に用いる閾値は、不良品であることが既知である検査対象を撮像した画像を用いて本実施形態に係る検査装置100により差分の度合いを算出した場合に得られた最小値、または、当該最小値よりもやや小さい値とするとよい。また、上述の説明では、判定部160が、予め定められた領域毎の差分の度合いのうちの最も大きい差分の度合いに基づいて、検査対象の良否を判定する場合を一例として示したが、これに限定されるものではない。判定部160は、差分の度合いの他の統計値、例えば、中央値および平均値や、分布等に基づいて、検査対象の良否を判定してもよい。
【0040】
図3は、本実施形態に係る検査装置100を用いた検査における、対象画像310、マスク画像320、予測画像330、および、再現画像340の一例を示す。対象画像取得部110は、一例として本図に示すような対象画像310を取得する。対象画像マスク部120は、対象画像310を複数のセル322(本図においては、[縦,横]=[1,1]~[5,5]の計25セル)に分割する。そして、対象画像マスク部120は、マスク324を用いてそれぞれのセル322を順次マスクし、複数のマスク画像320をそれぞれ生成する。一例として、本図上段、中段、および、下段は、それぞれ、セル[2,3]、セル[3,3]、および、セル[4,3]がマスクされた場合を示している。そして、マスク領域予測部130は、複数のセル322のそれぞれについてマスク領域332の画像を予測して、複数の予測画像330をそれぞれ生成する。そして、再現画像生成部140は、複数のセル322のそれぞれについて予測された複数の予測画像330を、元のセル322の位置に配置し直すことによって再現画像340を生成する。
【0041】
図4は、本実施形態において、検査対象が良品である場合における検査結果の一例を示す。検査対象が良品である場合、検査装置100が生成する再現画像340は、対象画像310とほぼ同様となる。なぜなら、検査装置100は、良品であることが既知であるトレーニング画像のみにより学習された学習済みモデルを用いて、検査対象が良品であった場合にマスク領域がどのような状態であるべきかを予測するため、検査装置100が生成する再現画像340は、検査対象が良品である場合にあるべき状態を再現した画像だからである。したがって、差分の度合いに応じて予め定められた領域毎の表示態様を異ならせた検出マップ400においても、全ての領域においてほぼ一様の表示態様となる。また、差分の度合い毎に単位領域(本図においては、セル単位領域)の数をカウントした分布(本図下)においても、大半のセルが差分の度合い=0の近傍でカウントされ、また、いずれのセルも差分の度合い>1.5(閾値)の位置でカウントされていない。なお、ここで、単位領域は、例えば、ピクセル単位、ピクセルグループ単位、および、セル単位等の領域であってよく、本図においては、一例として、単位領域がセル単位領域である場合を示している。また、縦軸が幅広である程、カウントされたセルの数が多いことを示している。検査装置100は、このように対象画像310と再現画像340との間の差分が小さい場合に、対象画像310内の検査対象が良品であると判定する。
【0042】
図5は、本実施形態において、検査対象が不良品である場合における検査結果の一例を示す。検査対象が不良品である場合(例えば、検査対象がクラックを含む場合)、検査装置100が生成する再現画像340は、対象画像310とは異なり得る。この場合、検出マップ400においても、差分の度合いが異なる領域が、異なる態様で表示され得る。また、差分の度合いの分布においても、多くのセルが差分の度合いが大きい位置でカウントされ、いくつかのセルは、差分の度合い>1.5の位置でカウントされている。検査装置100は、このように対象画像310と再現画像340との間の差分が大きい場合に、対象画像310内の検査対象が不良品であると判定する。
【0043】
このように、本実施形態に係る検査装置100によれば、検査対象の実際の状態を撮影した画像(対象画像310)と、検査対象が良品である場合にあるべき状態を予測して再現した画像(再現画像340)との差分を検出することで、検査対象の状態を容易に把握することができる。また、検査装置100は、差分の度合いに応じて領域毎の表示態様を異ならせた検出マップ400を出力するので、検査対象の欠陥位置を容易に把握することができる。また、検査装置100は、差分の度合い毎に単位領域の数をカウントした分布を出力するので、差分の度合いが異なる領域がどのような頻度で画像内に出現しているかを把握することができる。
【0044】
本実施形態に係る検査装置100を用いたこのような検査は、例えば、プローブの製造過程において、プローブの出荷前等に実施されてもよいし、プローブを用いた実際の半導体デバイスの試験の直前、または、合間等に実施されてもよい。また、多方向からの画像を用いた外観検査が有用である場合には、検査装置100は、検査対象を複数の方向から撮影した画像を用いて当該検査を行うことで、検査対象の状態をより詳細に把握してもよい。
【0045】
なお、上述の説明では、検査装置100が、画像を用いた外観検査のみに基づいて、検査対象の良否を判定する場合を一例と示したが、これに限定されるものではない。検査装置100は、画像を用いた外観検査および電気的特性の両者に基づいて、検査対象の良否を判定してもよい。
【0046】
一例として、判定部160は、検査対象が不良品であると判定した場合に、不良品であると判定した検査対象を撮影した対象画像から、検査対象の電気的特性を予測し、電気的特性が予め定められた品質を満たさない場合に、検査対象が不良品であると確定してよい。例えば、判定部160は、検査対象を撮影した対象画像を入力すると、検査対象の電気的特性を予測可能なように学習された学習済みモデルを用いてよい。すなわち、判定部160は、プローブピンを撮影した対象画像を入力すると、プローブピンの電気的特性、例えば、抵抗値等を予測可能なように学習された学習済みモデルを用いてよい。そして、判定部160は、図2のステップ280において、プローブピンが不良品であると判定した場合に、不良品であると判定したプローブピンを撮影した対象画像を当該学習済みモデルに入力し、プローブピンの抵抗値を予測して、抵抗値が予め定められた品質を満たさない場合に、検査対象のプローブピンが不良品であると確定してよい。なお、上述の説明では、判定部160が、学習済みモデルを用いて検査対象の電気的特性を予測する場合を一例として示したが、これに限定されるものではない。判定部160は、学習とは異なるアルゴリズムを用いて、対象画像から検査対象の電気的特性を予測してもよい。
【0047】
また、判定部160は、同様に、検査対象が不良品であると判定した場合に、不良品であると判定した検査対象を撮影した対象画像から、検査対象の電気的特性を予測し、電気的特性が予め定められた品質を満たす場合に、検査対象が良品であると確定してもよい。例えば、判定部160は、図2のステップ280において、プローブピンが不良品であると判定した場合に、不良品であると判定したプローブピンを撮影した対象画像を学習済みモデルに入力し、プローブピンの抵抗値を予測して、抵抗値が予め定められた品質を満たす場合に、検査対象のプローブピンが良品であると確定してもよい。
【0048】
これにより、検査装置100は、画像を用いた外観検査のみでなく、電気的特性をも考慮して検査対象の良否を正確に判定することができる。例えば、検査対象を撮影した場合に映り込んだ影やパーティクル等の影響により、画像を用いた外観検査では不良品として判定された検査対象であっても、電気的な性能としては問題ない場合があり得る。そこで、検査装置100は、外観検査と電気的特性とを組み合わせることで、検査対象の良否をより正確に判定することができる。
【0049】
図6は、本実施形態に係る学習装置600のブロック図の一例を示す。学習装置600は、良品であることが既知であるトレーニング画像のみを用いて、一部の領域がマスクされた画像が入力されると、マスクされていない他の領域の画像からマスク領域を予測可能なようにモデルを学習する。すなわち、学習装置600は、検査対象が良品であった場合にマスクされた一部の領域がどのような状態であるべきかを予測可能なように、良品であることが既知であるトレーニング画像のみを用いてモデルを学習する。本実施形態に係る検査装置100は、一例として、本図に示すような学習装置600により学習された学習済みモデルを用いてマスク領域を予測してよい。
【0050】
学習装置600は、PC(パーソナルコンピュータ)、タブレット型コンピュータ、スマートフォン、ワークステーション、サーバコンピュータ、または汎用コンピュータ等のコンピュータであってよく、複数のコンピュータが接続されたコンピュータシステムであってもよい。このようなコンピュータシステムもまた広義のコンピュータである。また、学習装置600は、コンピュータ内で1または複数実行可能な仮想コンピュータ環境によって実装されてもよい。これに代えて、学習装置600は、モデルの学習用に設計された専用コンピュータであってもよく、専用回路によって実現された専用ハードウェアであってもよい。また、学習装置600がインターネットに接続可能な場合、学習装置600は、クラウドコンピューティングにより実現されてもよい。
【0051】
学習装置600は、トレーニング画像取得部610、トレーニング画像マスク部620、予測モデル630、誤差算出部640、および、モデル更新部650を備える。
【0052】
トレーニング画像取得部610は、トレーニング画像を取得する。一例として、トレーニング画像取得部610は、撮影されている検査対象が良品であることが既知である複数の画像をトレーニング画像として取得してよい。この際、トレーニング画像取得部610は、例えば、ネットワークを介してトレーニング画像を取得してもよいし、ユーザ入力を介してトレーニング画像を取得してもよいし、データを記憶可能なメモリデバイス等を介してトレーニング画像を取得してもよい。そして、トレーニング画像取得部610は、取得したトレーニング画像をトレーニング画像マスク部620および誤差算出部640へ供給する。
【0053】
トレーニング画像マスク部620は、トレーニング画像の一部をマスクする。一例として、トレーニング画像マスク部620は、トレーニング画像として取得した複数の画像をランダムにマスクした複数のマスク画像を予測モデル630へ供給する。
【0054】
予測モデル630は、一部の領域がマスクされたトレーニング画像を入力して、トレーニング画像を予測したモデル画像を出力する。予測モデル630は、一例として、一部の領域がマスクされたトレーニング画像が入力されると、検査対象が良品であった場合にマスク領域がどのような状態であるべきかを予測し、トレーニング画像を予測したモデル画像を出力する。この際、予測モデル630は、マスク領域の予測において、例えば、CNN等のアルゴリズムを用いてよい。なお、上述の説明では、予測モデル630がCNNを用いる場合を一例として説明したが、これに限定されるものではない。予測モデル630は、CNNとは異なるアルゴリズムを用いてマスク領域の画像を予測してよい。予測モデル630は、出力したモデル画像を誤差算出部へ供給する。
【0055】
誤差算出部640は、トレーニング画像取得部610から供給されたトレーニング画像および予測モデル630から供給されたモデル画像の誤差を算出する。誤差算出部640は、算出した誤差をモデル更新部650へ供給する。
【0056】
モデル更新部650は、トレーニング画像取得部610から供給されたトレーニング画像および予測モデル630から供給されたモデル画像の誤差に基づいて予測モデル630を更新する。このような学習装置600を用いてモデルを学習する場合について、フローを用いて詳細に説明する。
【0057】
図7は、本実施形態に係る学習装置600が予測モデル630を学習するフローの一例を示す。ステップ710において、トレーニング画像取得部610は、トレーニング画像を取得する。一例として、トレーニング画像取得部610は、撮影されている検査対象が良品であることが既知である複数の画像を、ネットワークを介して取得する。そして、トレーニング画像取得部610は、対象画像取得部110と同様に、取得した画像を前処理した画像をトレーニング画像として取得する。この際、トレーニング画像取得部610は、輪郭検出フィルタ等を用いて焦点が検査対象から外れている画像を、トレーニング画像として取得せずにドロップさせてもよい。トレーニング画像取得部610は、取得したトレーニング画像をトレーニング画像マスク部620および誤差算出部640へ供給する。
【0058】
ステップ720において、トレーニング画像マスク部620は、トレーニング画像の一部をマスクする。例えば、トレーニング画像マスク部620は、トレーニング画像として取得した複数の画像をランダムに選択する。次に、トレーニング画像マスク部620は、ランダムに選択された画像のそれぞれに対して、画像領域を複数のセルに分割したうちの1つのセルをランダムにマスクする。そして、トレーニング画像マスク部620は、ランダムに選択された画像をランダムにマスクした複数のマスク画像を予測モデル630へ供給する。
【0059】
ステップ730において、予測モデル630は、マスクされたトレーニング画像を入力して、トレーニング画像を予測したモデル画像を出力する。例えば、予測モデル630は、一部の領域がランダムにマスクされたマスク画像が入力されると、マスクされていない他の領域の画像からマスク領域の画像を予測する。そして、予測モデル630は、トレーニング画像のマスク領域に予測した画像を埋め込むことで、モデル画像を出力する。予測モデル630は、モデル画像を誤差算出部640へ供給する。
【0060】
ステップ740において、誤差算出部640は、トレーニング画像取得部610から供給されたトレーニング画像および予測モデル630から供給されたモデル画像の誤差を算出する。誤差算出部640は、算出した誤差をモデル更新部650へ供給する。
【0061】
ステップ750において、モデル更新部650は、トレーニング画像取得部610から供給されたトレーニング画像および予測モデル630から供給されたモデル画像の誤差に基づいて予測モデル630を更新する。例えば、モデル更新部650は、ステップ740において算出された誤差を目的関数とし、当該目的関数を最小化するように、予測モデル630におけるウェイト等のパラメータを更新する。
【0062】
ステップ760において、学習装置600は、トレーニングが終了したか否か判定する。学習装置600は、ステップ760において、トレーニングが終了していないと判定した場合、処理をステップ710に戻して処理を繰り返す。一方、学習装置600は、ステップ760において、トレーニングが終了したと判定した場合、処理を終了する。この際、学習装置600は、例えば、トレーニング時間、トレーニング回数、および、トレーニング精度等、どのような条件に基づいてトレーニングが終了したか否か判定してもよい。
【0063】
このように、本実施形態に係る学習装置600によれば、撮影されている検査対象が良品であることが既知である複数の画像のみをトレーニング画像として用いて、トレーニング画像とモデル画像との誤差を最小化するように予測モデル630を更新するので、学習装置600は、予測モデル630を、検査対象が良品である場合にマスク領域があるべき状態の画像を予測可能なように更新することができる。
【0064】
本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、および/またはコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでよく、集積回路(IC)および/またはディスクリート回路を含んでよい。プログラマブル回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。
【0065】
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(RTM)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0066】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。
【0067】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0068】
図8は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。コンピュータ2200にインストールされたプログラムは、コンピュータ2200に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ2200に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ2200に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU2212によって実行されてよい。
【0069】
本実施形態によるコンピュータ2200は、CPU2212、RAM2214、グラフィックコントローラ2216、およびディスプレイデバイス2218を含み、それらはホストコントローラ2210によって相互に接続されている。コンピュータ2200はまた、通信インターフェイス2222、ハードディスクドライブ2224、DVD-ROMドライブ2226、およびICカードドライブのような入/出力ユニットを含み、それらは入/出力コントローラ2220を介してホストコントローラ2210に接続されている。コンピュータはまた、ROM2230およびキーボード2242のようなレガシの入/出力ユニットを含み、それらは入/出力チップ2240を介して入/出力コントローラ2220に接続されている。
【0070】
CPU2212は、ROM2230およびRAM2214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ2216は、RAM2214内に提供されるフレームバッファ等またはそれ自体の中にCPU2212によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス2218上に表示されるようにする。
【0071】
通信インターフェイス2222は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ2224は、コンピュータ2200内のCPU2212によって使用されるプログラムおよびデータを格納する。DVD-ROMドライブ2226は、プログラムまたはデータをDVD-ROM2201から読み取り、ハードディスクドライブ2224にRAM2214を介してプログラムまたはデータを提供する。ICカードドライブは、プログラムおよびデータをICカードから読み取り、および/またはプログラムおよびデータをICカードに書き込む。
【0072】
ROM2230はその中に、アクティブ化時にコンピュータ2200によって実行されるブートプログラム等、および/またはコンピュータ2200のハードウェアに依存するプログラムを格納する。入/出力チップ2240はまた、様々な入/出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入/出力コントローラ2220に接続してよい。
【0073】
プログラムが、DVD-ROM2201またはICカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ2224、RAM2214、またはROM2230にインストールされ、CPU2212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ2200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ2200の使用に従い情報の操作または処理を実現することによって構成されてよい。
【0074】
例えば、通信がコンピュータ2200および外部デバイス間で実行される場合、CPU2212は、RAM2214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インターフェイス2222に対し、通信処理を命令してよい。通信インターフェイス2222は、CPU2212の制御下、RAM2214、ハードディスクドライブ2224、DVD-ROM2201、またはICカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。
【0075】
また、CPU2212は、ハードディスクドライブ2224、DVD-ROMドライブ2226(DVD-ROM2201)、ICカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM2214に読み取られるようにし、RAM2214上のデータに対し様々なタイプの処理を実行してよい。CPU2212は次に、処理されたデータを外部記録媒体にライトバックする。
【0076】
様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU2212は、RAM2214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM2214に対しライトバックする。また、CPU2212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU2212は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0077】
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ2200上またはコンピュータ2200近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ2200に提供する。
【0078】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
【0079】
請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0080】
100 検査装置
110 対象画像取得部
120 対象画像マスク部
130 マスク領域予測部
140 再現画像生成部
150 差分検出部
160 判定部
600 学習装置
610 トレーニング画像取得部
620 トレーニング画像マスク部
630 予測モデル
640 誤差算出部
650 モデル更新部
2200 コンピュータ
2201 DVD-ROM
2210 ホストコントローラ
2212 CPU
2214 RAM
2216 グラフィックコントローラ
2218 ディスプレイデバイス
2220 入/出力コントローラ
2222 通信インターフェイス
2224 ハードディスクドライブ
2226 DVD-ROMドライブ
2230 ROM
2240 入/出力チップ
2242 キーボード
図1
図2
図3
図4
図5
図6
図7
図8