特許第6792842号(P6792842)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社デンソーの特許一覧 ▶ 学校法人 名城大学の特許一覧

特許6792842外観検査装置、変換データ生成装置、及びプログラム
<>
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000006
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000007
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000008
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000009
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000010
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000011
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000012
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000013
  • 特許6792842-外観検査装置、変換データ生成装置、及びプログラム 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6792842
(24)【登録日】2020年11月11日
(45)【発行日】2020年12月2日
(54)【発明の名称】外観検査装置、変換データ生成装置、及びプログラム
(51)【国際特許分類】
   G01N 21/88 20060101AFI20201119BHJP
   G06T 7/00 20170101ALI20201119BHJP
【FI】
   G01N21/88 Z
   G06T7/00 350C
   G06T7/00 610C
   G06T7/00 250
【請求項の数】6
【全頁数】14
(21)【出願番号】特願2017-111572(P2017-111572)
(22)【出願日】2017年6月6日
(65)【公開番号】特開2018-205163(P2018-205163A)
(43)【公開日】2018年12月27日
【審査請求日】2019年6月10日
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(73)【特許権者】
【識別番号】599002043
【氏名又は名称】学校法人 名城大学
(74)【代理人】
【識別番号】110000578
【氏名又は名称】名古屋国際特許業務法人
(72)【発明者】
【氏名】横山 良雄
(72)【発明者】
【氏名】坂本 佳隆
(72)【発明者】
【氏名】堀田 一弘
(72)【発明者】
【氏名】村田 智和
【審査官】 蔵田 真彦
(56)【参考文献】
【文献】 特開平10−274626(JP,A)
【文献】 特開2000−046749(JP,A)
【文献】 特開平02−268380(JP,A)
【文献】 特開2011−014152(JP,A)
【文献】 特開2004−354251(JP,A)
【文献】 米国特許第07440607(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G01N 21/84−21/958
G06T 1/00、7/00
JSTPlus/JMEDPlus/JST7580(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
検査対象物の外観を表す検査対象画像を取得する取得部(S310)と、
前記取得部にて取得された前記検査対象画像から、予め設定された変換データを用いて、良品と判断される外観を表す復元画像を生成するように構成された復元部(S340、S350)と、
前記検査対象画像と前記復元画像との差分から前記検査対象画像に写った前記検査対象物の良否を判断するように構成された判断部(S360、S380)と、
画像の特徴を表すベクトルを特徴ベクトルとして、良品と判断される前記検査対象物の外観を写した複数の良品画像のそれぞれから前記特徴ベクトルを抽出し、抽出された前記特徴ベクトルを良品ベクトルするように構成された抽出部(S150)と、
前記特徴ベクトルによって表されるベクトル空間を全体空間とし、前記全体空間のうち前記良品ベクトルの分布を近似する部分空間を特徴空間として、前記特徴ベクトルを前記全体空間から前記特徴空間へ写像する第1の写像、および前記第1の写像の結果を前記全体空間へ写像する第2の写像を連続して行うことを表現する行列である変換行列を、前記抽出部にて抽出された前記複数の良品ベクトルを用いて生成するように構成された生成部(S160、S170)と、
前記良品画像に欠陥を表す画像を合成した擬似欠陥画像から抽出された前記特徴ベクトルを学習データとして、前記生成部で生成された前記変換行列の各要素を調整するように構成された調整部(S180)と、
を備え、前記復元部は、前記調整部にて調整された変換行列を、前記変換データとして用いるように構成された外観検査装置。
【請求項2】
検査対象物の外観を表す検査対象画像から、良品と判断される外観を表す復元画像を生成するための変換データを生成する変換データ生成装置であって、
画像の特徴を表すベクトルを特徴ベクトルとして、良品と判断される前記検査対象物の外観を写した複数の良品画像のそれぞれから前記特徴ベクトルを抽出し、抽出された前記特徴ベクトルを良品ベクトルするように構成された抽出部(S150)と、
前記特徴ベクトルによって表されるベクトル空間を全体空間とし、前記全体空間のうち前記良品ベクトルの分布を近似する部分空間を特徴空間として、前記特徴ベクトルを前記全体空間から前記特徴空間へ写像する第1の写像、および前記第1の写像の結果を前記全体空間へ写像する第2の写像を連続して行うことを表現する行列である変換行列を、前記抽出部にて抽出された前記複数の良品ベクトルを用いて生成するように構成された生成部(S160、S170)と、
前記良品画像に欠陥を表す画像を合成した擬似欠陥画像から抽出された前記特徴ベクトルを学習データとして、前記生成部で生成された前記変換行列の各要素を調整することで前記変換データを生成するように構成された調整部(S180)と、
を備える変換データ生成装置。
【請求項3】
請求項2に記載の変換データ生成装置であって、
前記複数の良品画像のそれぞれを複数の部分画像に分割する分割部(S130)を更に備え、
前記抽出部、前記生成部、前記調整部は、前記分割部によって分割された複数の部分画像が表す部位毎に処理を実行するように構成された、
変換データ生成装置。
【請求項4】
請求項2または請求項3に記載の変換データ生成装置であって、
前記生成部は、前記抽出部にて抽出された前記複数の特徴ベクトルから自己相関行列を生成し、該自己相関行列をKarhunen-Loeve展開することで、前記変換行列を求めるように構成された
変換データ生成装置。
【請求項5】
請求項2から請求項4のいずれか1項に記載の変換データ生成装置であって、
前記調整部は、前記変換行列をニューラルネットワークの中間層とみなし、Denoisinng Autoencoderを適用することで前記変換行列の各要素を調整するように構成された、
変換データ生成装置。
【請求項6】
検査対象物の外観を表す検査対象画像から、良品と判断される外観を表す復元画像を生成するための変換データを生成するプログラムであって、
画像の特徴を表すベクトルを特徴ベクトルとして、良品と判断される前記検査対象物の外観を写した複数の良品画像のそれぞれから前記特徴ベクトルを抽出し、抽出された前記特徴ベクトルを良品ベクトルするように構成された抽出部(S150)と、
前記特徴ベクトルによって表されるベクトル空間を全体空間とし、前記全体空間のうち前記良品ベクトルの分布を近似する部分空間を特徴空間として、前記特徴ベクトルを前記全体空間から前記特徴空間へ写像する第1の写像、および前記第1の写像の結果を前記全体空間へ写像する第2の写像を連続して行うことを表現する行列である変換行列を、前記抽出部にて抽出された前記複数の良品ベクトルを用いて生成するように構成された生成部(S160、S170)と、
前記良品画像に欠陥を表す画像を合成した擬似欠陥画像から抽出された前記特徴ベクトルを学習データとして、前記生成部で生成された前記変換行列の各要素を調整することで前記変換データを生成するように構成された調整部(S180)と、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像を用いて検査対象物の外観を検査する技術に関する。
【背景技術】
【0002】
検査工程の省力化をはかり、または検査精度を向上するために、検査対象物を撮影して得られた検査画像を解析することにより、検査対象物の表面についた疵等の結果を検出して、検査対象物が良品か不良品であるかを判定する技術が知られている。
【0003】
例えば、下記特許文献1では、以下の技術が開示されている。即ち、検査対象物の表面についた疵などの欠陥が写っている欠陥画像を擬似的に生成する。生成した擬似欠陥画像から良品および不良品の境界を大まかに決定する。決定した境界に従って、良品とすべき欠陥の像の特徴量と、不良品とすべき欠陥の像の特徴量を学習サンプルとして多数生成する。生成した学習サンプルを用いて外観検査用の識別器を学習する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第5546317号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、発明者による詳細な検討の結果、特許文献1に記載の従来技術では以下の課題が見出された。即ち、従来技術では、良品と不良品の境界を決定する方法が客観的、定量的ではなく、あいまいである。また、従来技術では、擬似欠陥画像によって表現されていない未知の欠陥に対する検査能力が不明である。
【0006】
本開示は、検査対象物の外観の検査精度を向上させる技術を提供する。
【課題を解決するための手段】
【0007】
本開示の一態様による外観検査装置は、取得部(S310)と、復元部(S340、S350)と、判断部(S360、S380)と、抽出部(S150)と、生成部(S160、S170)と、調整部(S180)と、を備える。
【0008】
取得部は、検査対象物の外観を表す検査対象画像を取得する。復元部は、取得部にて取得された検査対象画像から、予め設定された変換データを用いて、良品と判断される外観を表す復元画像を生成する。判断部は、検査対象画像と復元画像との差分から検査対象画像に写った検査対象物の良否を判断する。抽出部は、良品と判断される検査対象物の外観を写した複数の良品画像のそれぞれから該良品画像の特徴を表す特徴ベクトルである良品ベクトルを抽出する。生成部は、抽出部にて抽出された複数の良品ベクトルを用いて変換行列を生成する。変換行列は、特徴ベクトルを特徴空間へ写像する第1の写像、および第1の写像の結果を全体空間へ写像する第2の写像を連続して行うことを表現する行列である。但し、全体空間は、特徴ベクトルによって表されるベクトル空間であり、特徴空間は、全体空間のうち良品ベクトルの分布を近似する部分空間である。調整部は、良品画像に欠陥を表す画像を合成した擬似欠陥画像から抽出された特徴ベクトルを学習データとして、生成部で生成された変換行列の各要素を調整する。そして、復元部は、調整部にて調整された変換行列を、変換データとして用いて復元画像を生成する。
【0009】
このような構成によれば、検査対象画像と復元画像との差分から検査対象物の良否を判断するため、検査対象画像に撮像された検査対象物が、復元画像に示された良品と判断される検査対象物と異なってさえいれば、未知の欠陥であっても検出することができ、検査対象物の外観の検査精度を向上させることができる。
【0010】
また、復元画像の生成に用いる変換データは、良品画像を用いて生成される変換行列をそのまま用いるのではなく、擬似欠陥画像を用いた学習によって調整されている。このため、変換データによって生成される復元画像の精度、ひいては、検査対象物の外観の検査精度をより一層向上させることができる。
【0011】
本開示の一態様による変換データ生成装置は、抽出部と、生成部と、調整部と、を備える。また、本開示の一態様によるプログラムは、抽出部と、生成部と、調整部と、としてコンピュータを機能させるためのものである。これら変換データ生成装置およびプログラムにおける抽出部、生成部、調整部は、上記外観検査装置において説明した抽出部、生成部、調整部と同様のものである。
【0012】
このような構成によれば、良品を表す画像への復元精度の高い変換データを生成することができ、生成された変換データを用いることで、検査対象物の外観の検査精度を向上させることができる。
【0013】
なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
【図面の簡単な説明】
【0014】
図1】外観検査装置の構成を示すブロック図である。
図2】変換データ生成処理のフローチャートである。
図3】擬似欠陥画像の生成に使用するテンプレートを例示する説明図である。
図4】検査対象画像および検査対象画像を複数に分割した部分画像を例示する説明図である。
図5】変換行列の作用を示す説明図である。
図6】3層のニューラルネットワークと変換行列の関係を示す説明図である。
図7】外観検査処理のフローチャートである。
図8】外観検査の結果を、他の手法と比較して示したグラフである。
図9】外観検査時に得られる誤差画像を他の手法と比較して、テスト画像および正解画像と共に示した説明図である。
【発明を実施するための形態】
【0015】
以下、図面を参照しながら、本開示の実施形態を説明する。
[1.構成]
図1に示す外観検査装置1は、入力部10と、演算部20と、記憶部30と、出力部40とを備える。
【0016】
入力部10は、検査対象物の外観を、同一の撮像条件で撮像した画像を入力する。検査対象物は、各種の工業製品または工業製品の部品等である。入力される画像には、検査対象画像と良品画像とが含まれる。検査対象画像は、良否判定の対象となる検査対象物を撮像した画像である。良品画像は、良品と判断された既知の検査対象物を撮像した画像である。
【0017】
演算部20は、CPU21と、RAM、ROM、フラッシュメモリ等の半導体メモリ(以下、メモリ22)と、を有するマイクロコンピュータを備える。演算部20の各種機能は、CPU21が非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、メモリ22が、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。なお、演算部は、1つのマイクロコンピュータを備えてもよいし、複数のマイクロコンピュータを備えてもよい。
【0018】
演算部20の機能を実現する処理には、外観検査処理と、変換データ生成処理とが含まれる。これらの処理の詳細については後述する。演算部20がこれらの処理を実現する手法はソフトウェアに限るものではなく、その一部又は全部の要素について、一つあるいは複数のハードウェアを用いて実現してもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は多数の論理回路を含むデジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現してもよい。
【0019】
記憶部30は、読み出し、書き込みが可能な不揮発性メモリを備える。記憶部30は、例えば、HDD、フラッシュメモリ、コンピュータに対して着脱自在なUSBメモリ等であってもよい。記憶部30には、複数のデータベース(以下、DB)が構築される。具体的には、記憶部30は、良品画像DB31、学習画像DB32、変換データDB33を備える。良品画像DB31には、変換データの生成に使用する複数の良品画像が蓄積される。学習画像DB32には、変換データを調整する際の学習データとして使用される擬似欠陥画像が蓄積される。擬似欠陥画像は、変換データ生成処理によって生成される。変換データDB33には、検査対象画像から復元画像を生成する際に使用する変換データが記憶される。変換データは、擬似欠陥画像と同様に、変換データ生成処理によって生成される。
【0020】
出力部40は、少なくとも表示画面を有し、演算部20での外観検査処理による良否判定の判定結果や、判定の対象となった検査対象画像、処理の過程で得られる復元画像などを表示する。
【0021】
[2.処理]
[2−1.変換データ生成処理]
次に、演算部20が実行する変換データ生成処理について、図2のフローチャートを用いて説明する。本処理は、良品画像DB31に複数の良品画像が格納されている状態で、入力部10を介して外部から生成指示が入力されると起動する。良品画像DB31に格納される良品画像は、例えば、入力部10を介して外部から取得してもよいし、外観検査処理により良品と判断された検査対象画像を用いてもよい。また、演算部20として機能するコンピュータに、良品画像が格納されたUSBメモリ等を良品画像DB31として接続してもよい。
【0022】
本処理が起動すると、演算部20は、S110では、良品画像DB31に蓄積された複数の良品画像を取得する。ここでは、例えば、数千個オーダーの良品画像を用いるものとする。
【0023】
S120では、取得した複数の良品画像の一部について、擬似欠陥画像を生成し、学習画像DB32に格納する。擬似欠陥画像は、検査対象物の表面についた疵などの欠陥を模擬した模擬画像を、良品画像に合成することによって生成する。具体的には、欠陥の形状を模擬した複数種類のテンプレート(即ち、欠陥の形状)を用意し、使用するテンプレートをランダムに選択すると共に、選択されたテンプレートによって表される欠陥の大きさ、色、傾き等をランダムに変化させた多種類の模擬画像を生成する。この模擬画像を、良品画像に示された検査対象物上で位置や数をランダムに変化させて良品画像に合成することで、擬似欠陥画像を生成する。図3は、模擬画像の生成に使用するテンプレートの一部を示したものであり、白抜きされた部分が欠陥の形状を表す。模擬画像を良品画像に合成することで生成された擬似欠陥画像の例を、図9に、テスト画像として示す。図中、黒く塗りつぶされた部位が模擬画像を合成した箇所であり、実際の色は黒に限定されるものではなく、ランダムに選択された色が付与される。また、図に示された3つの検査対象物には、汚れの付着および撮像時の条件(例えば、周囲の明るさ)等に基づく輝度むらが生じているが、これらは抽出すべき欠陥ではない。
【0024】
S130では、S110で取得した複数の良品画像およびS120で生成した擬似欠陥画像のそれぞれを、複数の領域に分割する。ここで使用する良品画像は、擬似欠陥画像の生成に使用した以外のものを用いる。但し、これに限定されるものではなく、擬似欠陥画像の生成に用いた良品画像が含まれていてもよい。以下では、分割された各領域の画像を部分画像という。本実施形態では、図4に示すように、全ての部分画像がほぼ同じ形状となるように9個の領域に分割する。
【0025】
S140では、S130にて分割された画像の領域のうち、以下で説明するS150〜S200の処理が実施されていない領域の一つを選択領域として選択する。
S150では、擬似欠陥画像の生成に使用していないn個の良品画像のそれぞれについて、S140で選択された選択領域の部分画像から特徴ベクトル(以下、良品ベクトル)xを生成する。nは数百〜数千オーダーの正整数である。ここでは、良品ベクトルxとして、部分画像に属する全ての画素のRGBの輝度情報を並べることで生成されるd次元のベクトルを用いる。例えば、部分画像の画素数がmである場合、良品ベクトルxの次元は、d=3×mとなる。
【0026】
S160では、S150にて生成されたn個の良品ベクトルxを用いて、自己相関行列Rを生成する。具体的には、良品ベクトルxを(1)式で表すものとして、自己相関行列Rは(2)式により求められる。但し、Tは行列の転置を表す。
【0027】
【数1】
S170では、良品ベクトルxを表現するd次元のベクトル空間を全体空間とし、S150にて生成された良品ベクトルxの分布を最もよく近似するより次元の低い部分空間への写像を表す写像行列Uを生成する。ここでは、(3)式を用いて、S150で求めた相関関数RをKL展開することにより写像行列Uを生成する。KLは、Karhunen-Loeveの略である。但し、rは自己相関関数Rのランクであり、r<dとなる正整数である。写像行列Uは、(4)式に示すように、d次元の固有ベクトルu1〜urをr個並べたd行r列の固有ベクトル行列であり、Λは、(5)式に示すように、対角成分に固有値λを持つr行r列の固有値行列である。
【0028】
【数2】
S180では、S170で算出された写像行列Uの各要素を、DAEにより学習することによって調整する。DAEは、Denoising Auto Encoderの略である。オートエンコーダは、3層のニューラルネットを、入力層と出力層に同じデータを用いて教師あり学習させたものである。DAEは、オートエンコーダにおいて、入力層に加える学習データにノイズを加えて学習させたものをいう。
【0029】
写像行列Uは、(6)式に示すように、検査対象画像から抽出した特徴ベクトルyから、良品と判断される復元画像を表す特徴ベクトルy〜を生成するために使用される。以下では、U×Uによって表される行列、およびU、Uを調整した行列V,Wを用いたV×Wによって表される行列を変換行列Kという。
【0030】
【数3】
図5に示すように、変換行列Kのうち、転置した写像行列Uによる写像(以下、第1の写像)は、全体空間から良品画像の特徴を表現したより低次元の部分空間への写像、即ち、特徴ベクトルyを、より情報が圧縮された符号zへの符号化を表す。この符号化により、特徴ベクトルyに付与されている欠陥に関する情報が除去された符号zが生成される。変換行列Kのうち写像行列Uによる更なる写像(以下、第2の写像)は、部分空間から元の全体空間への写像、即ち、符号zから特徴ベクトルへの復号化を行っていることを表す。この復号化により、欠陥に関する情報が欠落した画像、即ち、良品と判断される復元画像を表す特徴ベクトルy〜が生成される。
【0031】
また、変換行列Kは、図6に示すように、3層のニューラルネットワークの接続状態を表すものであると見なすことができる。つまり、変換行列Kのうち、転置した写像行列Uによる第1の写像が、3層のニューラルネットワークにおける入力層から中間層へ接続状態を表現する。また、写像行列Uによる第2の写像が、ニューラルネットワークにおける中間層から出力層への接続状態を表現する。これにより、変換行列Kの学習、ひいては写像行列Uの学習には、ニューラルネットワークにおいて公知の学習手法であるバックプロパゲーション等の適用が可能となる。また、DAEによる学習では、ノイズを加えた学習データとして、S130で領域毎に分割された擬似欠陥画像のうち、S140で選択された選択領域に関するものを使用する。
【0032】
S190では、部分画像の画素毎に、その画素が欠陥箇所であるか否かを判断するための判定閾値THを設定する。ここでは、LMedS推定を用いる。具体的には、S180で算出される変換行列Kを用いて、複数の良品画像の選択領域に関する部分画像のそれぞれについて復元画像を生成する。生成された複数の復元画像に基づき、部分画像に属する画素毎に、復元誤差の標準偏差σを算出する。標準偏差σを算出する際には、まず、算出対象の画素について復元誤差の2乗の中央値Mを求め、更にその中央値Mを用いて標準偏差σを推定する。そして、推定された標準偏差σに基づき、例えば、2.5σを判定閾値THとして設定する。以下では、各画素の判定閾値THを総称して判定閾値群という。但し、σに乗じる係数は、2.5に限定されるものではなく、実験結果から適切な係数を設定してもよい。
【0033】
S200では、S180にて算出された調整後の変換行列KおよびS190にて算出された判定閾値群を変換データとして、変換データDB33に格納する。なお、調整後の変換行列Kの代わりに調整後の写像行列V,Wを格納してもよい。
【0034】
S210では、分割された全ての領域について処理が終了しているか否かを判断する。未処理の領域があればS140に戻り、全ての領域について処理が終了していれば、本処理を終了する。
【0035】
本処理を実行することにより、変換データDB33には、分割される領域毎に算出された変換行列Kと、入力画像の画素毎に算出された判定閾値THとが格納される。
なお、本処理において、S130が分割部、S150が抽出部、S160〜S170が生成部、S180が調整部に相当する。
【0036】
[2−2.外観検査処理]
演算部20が実行する外観検査処理について、図7のフローチャートを用いて説明する。本処理は、入力部10に検査対象画像が入力される毎に起動する。
【0037】
本処理が起動すると、演算部20は、まず、S310にて、入力部10を介して検査対象画像を取得する。
S320では、検査対象画像を、図4に示すように、複数の領域に分割する。
【0038】
S330では、S320で分割された各領域の画像である部分画像の一つを選択画像に設定する。
S340では、選択画像から特徴ベクトルyを抽出する。特徴ベクトルyの抽出方法は、上述した良品画像から抽出する特徴ベクトルxの場合と同様である。以下では、この抽出された特徴ベクトルyを選択ベクトルという。
【0039】
S350では、S340で抽出された選択ベクトルyと、変換データDB33から取得した選択画像に対応する領域の変換データである変換行列Kとを用い、上述の(6)式に従って、復元画像の特徴ベクトルである復元ベクトルy〜を生成する。
【0040】
S360では、復元ベクトルy〜と、選択ベクトルyとの差分を表す誤差ベクトルeを生成する。つまり、誤差ベクトルeは、復元ベクトルy〜から生成される復元画像に示された良品と判断される検査対象物と検査対象画像に示された検査対象物との差分、即ち、欠陥箇所を示すものとなる。但し、誤差ベクトルeの各要素は、変換データDB33から取得した各要素に対応する画素の判定閾値THを用いて2値化される。即ち、誤差ベクトルeの要素が1である場合、その要素に対応した画素は、欠陥有りと判断されたことを意味し、誤差ベクトルeの要素が0である場合、その要素に対応した画素は、欠陥無しと判断されたことを意味する。
【0041】
なお、誤差ベクトルeを生成する際に、予め設定された基準画像に基づく基準ベクトルを用いるのではなく、選択ベクトルyから生成される復元ベクトルy〜を用いるのは、以下の理由による。つまり、検査対象画像に撮像された検査対象物は、いずれも同じ形状、同じ大きさのものであるが、撮像時の条件によって、検査対象画像毎に、検査対象物の位置が微妙にずれていたり、検査対象物がネジであれば、ねじ山の位相が異なっていたりする。従って、基準画像に撮像された検査対象物の状態は、必ずしも検査対象画像に撮像された検査対象物の状態と一致するとは限らず、そのずれによって誤検出が生じる可能性がある。このような検査対象物の状態の違いによる誤検出を抑制するために、選択ベクトルyから生成した復元ベクトルy〜(即ち、復元画像)を用いる必要がある。
【0042】
S370では、S320で分割した全ての領域について、上述のS330〜S360の処理を実行済みであるか否かを判断する。未処理の領域があればS330に戻り、全ての領域が処理済みであれば、S380に移行する。
【0043】
S380では、検査対象画像を分割した複数の部分画像のそれぞれについて生成された誤差ベクトルeの要素がいずれも0であれは、検査対象画像に撮像されている検査対象物は良品であると判断する。また、誤差ベクトルeの要素が一つでも1であれば、検査対象物は不良品であると判断する。そして、この判断結果を、検査対象画像および誤差ベクトルeから再現される誤差画像等と共に出力部40の表示画面に表示して、本処理を終了する。
【0044】
なお、本処理において、S310が取得部、S340〜S350が復元部、S360及びS380が判断部に相当する。
[3.評価]
本開示の手法および比較例1〜4のそれぞれについて変換行列Kおよびこれに相当する行列を生成し、擬似欠陥画像を検査対象画像(以下、テスト画像)として、性能を評価した結果について説明する。
【0045】
比較例1では、変換行列Kの初期値をランダムに設定し、この変換行列Kに対してDAEによる学習を行うことで変換行列Kの各要素を調整した。但し、中間層のユニット数を2000とした。以下、比較例1の手法をDAEと表記する。
【0046】
比較例2では、中間層のユニット数を8000に増加させ、比較例1と同じ手法で変換行列Kの生成および調整を行った。但し、テスト画像に対して2画素×2画素の平均プーリングを行うことによって、テスト画像の解像度を1/2とした。以下、比較例2の手法をSD_DAEと表記する。
【0047】
比較例3では、比較例2と同様の手法で解像度を1/2にした良品画像を用い、部分空間法(即ち、KL展開)により変換行列Kを生成した。なお、固有ベクトルの成分数はr=3750であった。以下、比較例3の手法をSD_EVと表記する。
【0048】
比較例4では、比較例3と同様の手法で生成した変換行列Kを初期値として、DAEによる学習を行うことで変換行列Kの各要素を調整した。以下、比較例4の手法をSD_EV_DAEと表記する。
【0049】
本開示は、画像を9つの領域に分割し、分割された部位毎に、比較例4と同様の手法を用いて変換行列Kの生成および調整を行った。以下、本開示の手法を局所DAEと表記する。
【0050】
このようにして生成および調整した変換行列Kを用いて、テスト画像について外観検査処理を実行し、正解数G、検出数T、誤検出数Fを求めた。正解数Gは、テスト画像中で欠陥が存在する画素の総数であり、使用するテスト画像によって決まる既知の値である。検出数Tは、外観検査処理の結果、欠陥であると正しく判定された画素の総数である。誤検出数Fは、外観検査処理の結果、実際には欠陥ではないにも関わらず欠陥であると誤判定された画素の総数(以下、誤検出数)である。また、判定閾値THは、最高の精度が得られるように適宜調整した。
【0051】
図8に示すグラフは、precision-recall曲線であり、(7)式で算出される適合率、即ちprecisionと、(8)式で算出される再現率、即ちrecallとの関係を示したものである。
【0052】
【数4】
図8からは、本開示および比較例4と比較例1〜3との比較から、部分空間法を用いて算出された変換行列Kを初期値として、DAEによる学習を行うことで変換行列Kの各要素を調整することが有効であることがわかる。更に、本開示と比較例4との比較から、画像全体を一括で処理するのではなく、複数に分割して処理を行う局所DAEが有効であることがわかる。
【0053】
図9は、3つのテスト画像について、擬似欠陥がある画素の位置を示す正解画像GT、本開示の局所DAEによる復元画像を用いて生成した誤差画像、比較例3のSD_EVによる復元画像を用いて生成した誤差画像、比較例4のSD_EV_DAEによる復元画像を用いて生成した誤差画像を並べて示したものである。
【0054】
図中において1行目のテスト画像には、検出対象物の白い部分に黒い擬似欠陥がある。このとき、正常なサンプルとの輝度値の差が大きいため、比較例3では、擬似欠陥の周辺に誤検出が多く現れている。比較例4および本開示の手法では、擬似欠陥の箇所を正しく検出していることがわかる。また、本開示の手法では、比較例4に比べて、擬似欠陥以外で欠陥ありと判定されて画素の数(即ち、誤検出数)が、大幅に減少していることがわかる。
【0055】
2行目および3行目のテスト画像には、検出対象物の白い部分以外の箇所に、緑色および紫色の擬似欠陥がある。これらの場合も、1行目のテスト画像と同様の傾向を読み取ることができる。
【0056】
[4.効果]
以上詳述した第1実施形態によれば、以下の効果を奏する。
(1)外観検査装置1では、特徴ベクトルy(即ち、検査対象画像)と、復元ベクトルy〜(即ち、復元画像)との差分である誤差ベクトルe(即ち、誤差画像)から、検査対象物の良否を判断する。このため、検査対象画像に撮像された検査対象物が、復元画像に示された良品と判断される復元された検査対象物と異なってさえいれば、未知の欠陥であっても検出することができ、検査対象物の外観の検査精度を向上させることができる。
【0057】
(2)外観検査装置1では、復元画像の生成に用いる変換データとして、良品画像から抽出された特徴ベクトルxに基づく相関関数RをKL展開すること、即ち、部分空間法を用いることで生成された変換行列をそのまま用いるのではなく、擬似欠陥画像を用いた学習であるDAEを施すことによって調整された変換行列Kを用いている。このため、変換データによって生成される復元画像の精度、ひいては、検査対象物の外観の検査精度をより向上させることができる。
【0058】
(3)外観検査装置1では、検査対象画像を複数の領域に分割し、分割された領域毎に、変換データの生成および変換データを用いた外観検査を実施する。このため、検査対象画像の一部の領域を原因として発生するノイズが、その領域以外に波及することを抑制することができ、より高品質な復元画像を生成することができ、ひいては検査対象物の外観の検査精度を更に向上させることができる。
【0059】
[5.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
【0060】
(a)上記実施形態では、検査対象画像や良品画像を複数の領域に分割して処理を行っているが、領域分割を行うことなく、検査対象画像や良品画像をそのまま一括して処理してもよい。
【0061】
(b)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【0062】
(c)上述した外観検査装置の他、外観検査装置ら外観検査処理の機能を除外した変換データ生成装置、当該外観検査装置または変換データ生成装置を構成要素とするシステム、外観検査装置または変換データ生成装置としてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、外観検査方法、変換データ生成方法など、種々の形態で本開示を実現することもできる。
【符号の説明】
【0063】
1…外観検査装置、10…入力部、20…演算部、21…CPU、22…メモリ、30…記憶部、31…良品画像DB、32…学習画像DB、33…変換データDB、40…出力部。
図1
図2
図3
図4
図5
図6
図7
図8
図9