(実施形態)
実施形態の検査システムについて説明する。実施形態の検査システムは、被検査体を検査するために様々な構成を備えている。図1は、実施形態の検査システムの構成例を示した図である。図1に示されるように、実施形態の検査システムは、PC100と、時間相関カメラ110と、照明装置120と、スクリーン130と、アーム140と、を備えている。
アーム140は、被検査体150を固定するために用いられ、PC100からの制御に応じて、時間相関カメラ110が撮影可能な被検査体150の表面の位置と向きを変化させる。
照明装置120は、被検査体150に光を照射する装置であって、PC100からの縞パターンに従って、照射する光の強度を領域単位で制御できる。さらに、照明装置120は、周期的な時間の遷移に従って当該領域単位の光の強度を制御できる。換言すれば、照明装置120は、光の強度の周期的な時間変化および空間変化を与えることができる。なお、具体的な光の強度の制御手法については後述する。
スクリーン130は、照明装置120から出力された光を拡散させた上で、被検査体150に対して面的に光を照射する。実施形態のスクリーン130は、照明装置120から入力された周期的な時間変化および空間変化が与えられた光を、面的に被検査体150に照射する。なお、照明装置120とスクリーン130との間には、集光用のフレネルレンズ等の光学系部品(図示されず)が設けられてもよい。
なお、実施形態は、照明装置120とスクリーン130とを組み合わせて、光強度の周期的な時間変化および空間変化を与える面的な照射部を構成する例について説明するが、このような組み合わせに制限するものではなく、例えば、LEDを面的に配置して照明部を構成してもよい。
図2は、実施形態の時間相関カメラ110の構成を示したブロック図である。時間相関カメラ110は、光学系210と、イメージセンサ220と、データバッファ230と、制御部240と、参照信号出力部250と、を備えている。
光学系210は、撮影レンズ等を含み、時間相関カメラ110の外部の被写体(被検査体150を含む)からの光束を透過し、その光束により形成される被写体の光学像を結像させる。
イメージセンサ220は、光学系210を介して入射された光の強弱を光強度信号として画素毎に高速に出力可能なセンサとする。
実施形態の光強度信号は、検査システムの照明装置120が被写体(被検査体150を含む)に対して光を照射し、当該被写体からの反射光を、イメージセンサ220が受け取ったものである。
イメージセンサ220は、例えば従来のものと比べて高速に読み出し可能なセンサであり、行方向(x方向)、列方向(y方向)の2種類の方向に画素が配列された2次元平面状に構成されたものとする。そして、イメージセンサ220の各画素を、画素P(1,1),……,P(i,j),……,P(X,Y)とする(なお、実施形態の画像サイズをX×Yとする)。なお、イメージセンサ220の読み出し速度を制限するものではなく、従来と同様であってもよい。
イメージセンサ220は、光学系210によって透過された、被写体(被検査体150を含む)からの光束を受光して光電変換することで、被写体から反射された光の強弱を示した光強度信号(撮影信号)で構成される、2次元平面状のフレームを生成し、制御部240に出力する。実施形態のイメージセンサ220は、読み出し可能な単位時間毎に、当該フレームを出力する。
実施形態の制御部240は、例えばCPU、ROM、およびRAM等で構成され、ROMに格納された検査プログラムを実行することで、転送部241と、読出部242と、強度画像用重畳部243と、第1の乗算器244と、第1の相関画像用重畳部245と、第2の乗算器246と、第2の相関画像用重畳部247と、画像出力部248と、を実現する。なお、CPU等で実現することに制限するものではなく、FPGA、またはASICで実現してもよい。
転送部241は、イメージセンサ220から出力された、光強度信号で構成されたフレームを、データバッファ230に、時系列順に蓄積する。
データバッファ230は、イメージセンサ220から出力された、光強度信号で構成されたフレームを、時系列順に蓄積する。
図3は、実施形態の時間相関カメラ110で時系列順に蓄積されたフレームを表した概念図である。図3に示されるように、実施形態のデータバッファ230には、時刻t(t=t1,t2,……,tn)毎の複数の光強度信号G(1,1,t),……,G(i,j,t),……,G(X,Y,t)の組み合わせで構成された複数のフレーム画像Fk(k=1,2,……,n)が、時系列順に蓄積される。なお、時刻tで作成される一枚のフレームは、光強度信号G(1,1,t),……,G(i,j,t),……,G(X,Y,t)で構成される。
実施形態の光強度信号(撮像信号)G(1,1,t),……,G(i,j,t),……,G(X,Y,t)には、フレーム画像Fk(k=1,2,……,n)を構成する各画素P(1,1),……,P(i,j),……,P(X,Y)が対応づけられている。
イメージセンサ220から出力されるフレームは、光強度信号のみで構成されており、換言すればモノクロの画像データとも考えることができる。なお、実施形態は、解像度、感度、およびコスト等を考慮して、イメージセンサ220がモノクロの画像データを生成する例について説明するが、イメージセンサ220としてモノクロ用のイメージセンサに制限するものではなく、カラー用のイメージセンサを用いてもよい。
図2に戻り、実施形態の読出部242は、データバッファ230から、光強度信号G(1,1,t),……,G(i,j,t),……,G(X,Y,t)をフレーム単位で、時系列順に読み出して、第1の乗算器244と、第2の乗算器246と、強度画像用重畳部243と、に出力する。
実施形態の時間相関カメラ110は、読出部242の出力先毎に画像データを生成する。換言すれば、時間相関カメラ110は、3種類の画像データを作成する。
実施形態の時間相関カメラ110は、3種類の画像データとして、強度画像データと、2種類の時間相関画像データと、を生成する。なお、実施形態は、2種類の時間相関画像データを生成することに制限されるものではなく、1種類又は3種類以上の時間相関画像データを生成する場合も考えられる。
実施形態のイメージセンサ220は、上述したように単位時間毎に、光強度信号で構成されたフレームを出力している。しかしながら、通常の画像データを生成するためには、撮影に必要な露光時間分の光強度信号が必要になる。そこで、実施形態では、強度画像用重畳部243が、撮影に必要な露光時間分の複数のフレームを重畳して、強度画像データを生成する。なお、強度画像データの各画素値(光の強度を表す値)G(x,y)は、以下に示す式(1)から導き出すことができる。なお、露光時間は、t0とtnの時間差とする。
これにより、従来のカメラの撮影と同様に、被写体(被検査体150を含む)が撮影された強度画像データが生成される。そして、強度画像用重畳部243は、生成した強度画像データを、画像出力部248に出力する。
時間相関画像データは、時間遷移に応じた光の強弱の変化を示す画像データである。つまり、実施形態では、時系列順のフレーム毎に、当該フレームに含まれる光強度信号に対して、時間遷移を示した参照信号を乗算し、参照信号と光強度信号との乗算結果である時間相関値で構成された、時間相関値フレームを生成し、複数の時間相関値フレームを重畳することで、時間相関画像データを生成する。
ところで、時間相関画像データを用いて、被検査体150の異常を検出するためには、イメージセンサ220に入力される光強度信号を、参照信号に同期させて変化させる必要がある。このために、照明装置120が、上述したように、スクリーン130を介して周期的に時間変化および縞の空間的な移動を与えるような、面的な光の照射を行うこととした。
実施形態では、2種類の時間相関画像データを生成する。参照信号は、時間遷移を表した信号であればよいが、実施形態では、複素正弦波e-jωtを用いる。なお、角周波数ω、時刻tとする。参照信号を表す複素正弦波e-jωtが、上述した露光時間(換言すれば強度画像データ、時間相関画像データを生成するために必要な時間)の一周期と相関をとるように、角周波数ωが設定されるものとする。換言すれば、照明装置120およびスクリーン130等の照明部によって形成された面的かつ動的な光は、被検査体150の表面(反射面)の各位置で第一の周期(時間周期)での時間的な照射強度の変化を与えるとともに、表面に沿った少なくとも一方向に沿った第二の周期(空間周期)での空間的な照射強度の増減分布を与える。この面的な光は、表面で反射される際に、当該表面のスペック(法線ベクトルの分布等)に応じて複素変調される。時間相関カメラ110は、表面で複素変調された光を受光し、第一の周期の参照信号を用いて直交検波(直交復調)することにより、複素信号としての時間相関画像データを得る。このような複素時間相関画像データに基づく変復調により、表面の法線ベクトルの分布に対応した特徴を検出することができる。
複素正弦波e-jωtは、e-jωt=cos(ωt)−j・sin(ωt)と表すこともできる。従って、時間相関画像データの各画素値C(x,y)は、以下に示す式(2)から導き出すことができる。
実施形態では、式(2)において、実数部を表す画素値C1(x,y)と、虚数部を表す画素値C2(x,y)と、に分けて2種類の時間相関画像データを生成する。
このため、参照信号出力部250は、第1の乗算器244と、第2の乗算器246と、に対してそれぞれ異なる参照信号を生成し、出力する。実施形態の参照信号出力部250は、複素正弦波e-jωtの実数部に対応する第1の参照信号cosωtを第1の乗算器244に出力し、複素正弦波e-jωtの虚数部に対応する第2の参照信号sinωtを第2の乗算器246に出力する。このように実施形態の参照信号出力部250は、互いにヒルベルト変換対をなす正弦波および余弦波の時間関数として表される2種類の参照信号を出力する例について説明するが、参照信号は時間関数のような時間遷移に応じて変化する参照信号であればよい。
そして、第1の乗算器244は、読出部242から入力されたフレーム単位で、当該フレームの光強度信号毎に、参照信号出力部250から入力された複素正弦波e-jωtの実数部cosωtを乗算する。
第1の相関画像用重畳部245は、撮影に必要な露光時間分の複数のフレームについて、第1の乗算器244の乗算結果を画素毎に重畳する処理を行う。これにより、第1の時間相関画像データの各画素値C1(x,y)が、以下の式(3)から導出される。
そして、第2の乗算器246は、読出部242から入力されたフレームの光強度信号に対して、参照信号出力部250から入力された複素正弦波e-jωtの虚数部sinωtを乗算する。
第2の相関画像用重畳部247は、撮影に必要な露光時間分の複数のフレームについて、第2の乗算器246の乗算結果を画素毎に重畳する処理を行う。これにより、第2の時間相関画像データの各画素値C2(x,y)が、以下の式(4)から導出される。
上述した処理を行うことで、2種類の時間相関画像データ、換言すれば2自由度を有する時間相関画像データを生成できる。
また、実施形態は、参照信号の種類を制限するものではない。例えば、実施形態では、複素正弦波e-jωtの実部と虚部の2種類の時間相関画像データを作成するが、光強度変化(光の強度変調)の振幅と、光強度変化(光の強度変調)の位相と、による2種類の画像データを生成してもよい。
なお、実施形態の時間相関カメラ110は、時間相関画像データとして、複数系統分作成可能とする。これにより、例えば複数種類の幅の縞が組み合わされた光が照射された際に、上述した実部と虚部とによる2種類の時間相関画像データを、縞の幅毎に作成可能とする。このために、時間相関カメラ110は、2個の乗算器と2個の相関画像用重畳部とからなる組み合わせを、複数系統分備えるとともに、参照信号出力部250は、系統毎に適した角周波数ωによる参照信号を出力可能とする。
そして、画像出力部248が、2種類の時間相関画像データと、強度画像データと、をPC100に出力する。これにより、PC100が、2種類の時間相関画像データと、強度画像データと、を用いて、被検査体150の異常を検出する。そのためには、被写体に対して光を照射する必要がある。
実施形態の照明装置120は、高速に移動する縞パターンを照射する。図4は、実施形態の照明装置120が照射する縞パターンの一例を示した図である。図4に示す例では、縞パターンをx方向にスクロール(移動)させている例とする。白い領域が縞に対応した明領域、黒い領域が縞と縞との間に対応した間隔領域(暗領域)である。
実施形態では、時間相関カメラ110が強度画像データおよび時間相関画像データを撮影する露光時間で、照明装置120が照射する縞パターンを一周期分移動させる。これにより、照明装置120は、光の強度の縞パターンの空間的な移動により光の強度の周期的な時間変化を与える。実施形態では、図4の縞パターンが一周期分移動する時間を、露光時間と対応させることで、時間相関画像データの各画素には、少なくとも、縞パターン一周期分の光の強度信号に関する情報が埋め込まれる。
図4に示されるように、実施形態では、照明装置120が矩形波に基づく縞パターンを照射する例について説明するが、矩形波以外を用いてもよい。実施形態では、照明装置120がスクリーン130を介して照射されることで、矩形波の明暗の境界領域をぼかすことができる。
実施形態では、照明装置120が照射する縞パターンをA(1+cos(ωt+kx))と表す。すなわち、縞パターンには、複数の縞が反復的に(周期的に)含まれる。なお、被検査体150に照射される光の強度は0〜2Aの間で調整可能とし、光の位相kxとする。kは、縞の波数である。xは、位相が変化する方向である。
そして、フレームの各画素の光強度信号f(x,y,t)の基本周波数成分は、以下の式(5)として表すことができる。式(5)で示されるように、x方向で縞の明暗が変化する。
f(x,y,t)=A(1+cos(ωt+kx))
=A+A/2{ej(ωt+kx)+e-j(ωt+kx)}……(5)
式(5)で示されるように、照明装置120が照射する縞パターンの強度信号は、複素数として考えることができる。
そして、イメージセンサ220には、当該照明装置120からの光が被写体(被検査体150を含む)から反射して入力される。
したがって、イメージセンサ220に入力される光強度信号G(x,y,t)を、照明装置120が照射された際のフレームの各画素の光強度信号f(x,y,t)とできる。そこで、強度画像データを導出するための式(1)に式(5)を代入すると、式(6)を導出できる。なお、位相kxとする。
式(6)から、強度画像データの各画素には、露光時間Tに、照明装置120が出力している光の強度の中間値Aを乗じた値が入力されていることが確認できる。さらに、時間相関画像データを導出するための式(2)に式(5)を代入すると、式(7)を導出できる。なお、AT/2を振幅とし、kxを位相とする。
これにより、式(7)で示された複素数で示された時間相関画像データは、上述した2種類の時間相関画像データと置き換えることができる。つまり、上述した実部と虚部とで構成される時間相関画像データには、被検査体150に照射された光強度変化における位相変化と振幅変化とが含まれている。換言すれば、実施形態のPC100は、2種類の時間相関画像データに基づいて、照明装置120から照射された光の位相変化と、光の振幅変化と、を検出できる。
そこで、実施形態のPC100は、時間相関画像データおよび強度画像データに基づいて、画素毎に入る光の位相変化を表した位相画像データと、画素毎に入る光の振幅を表した振幅画像データと、を生成する。さらに、PC100は、複素時間相関画像データに位相限定ラプラシアンを用いた処理を施すことで得られた位相ラプラシアン画像データを生成する。
そして、PC100は、強度画像データ、振幅画像データ、位相画像データ、及び位相ラプラシアン画像データに基づいて、被検査体150の異常を検出する。
ところで、被検査体150の表面形状に凹凸に基づく異常が生じている場合、被検査体150の表面の法線ベクトルの分布には、凹凸に基づく異常に対応した変化が生じている。また、被検査体150の表面に光を吸収するような異常が生じている場合、反射した光の強度に変化が生じる。法線ベクトルの分布の変化は、光の位相変化および振幅変化のうち少なくともいずれか一つとして検出される。そこで、実施形態では、時間相関画像データおよび強度画像データを用いて、法線ベクトルの分布の変化に対応した、光の位相変化および振幅変化のうち少なくともいずれか一つを検出する。これにより、表面形状の異常を検出可能となる。次に、被検査体150の異常、法線ベクトル、および光の位相変化又は振幅変化の関係について説明する。
図5は、実施形態の時間相関カメラ110による、被検査体の異常の第1の検出例を示した図である。図5に示される例では、被検査体500に凸形状の異常501がある状況とする。当該状況においては、異常501の点502の近傍領域においては、法線ベクトル521、522、523が異なる方向を向いていることを確認できる。そして、当該法線ベクトル521、522、523が異なる方向を向いていることで、異常501から反射した光に拡散(例えば、光511、512、513)が生じ、時間相関カメラ110のイメージセンサ220の任意の画素531に入る縞パターンの幅503が広くなる。
図6は、図5に示される異常501が被検査体500にある場合に、当該異常501に応じて変化する、光の振幅の例を表した図である。図6に示される例では、光の振幅を実部(Re)と、虚部(Im)に分けて2次元平面上に表している。図6では、図5の光511、512、513に対応する光の振幅611、612、613として示している。そして、光の振幅611、612、613は互いに打ち消し合い、イメージセンサ220の当該任意の画素531には、振幅621の光が入射する。
したがって、図6に示される状況では、被検査体500の異常501が撮像された領域で、局所的に振幅が小さいことが確認できる。換言すれば、振幅変化を示した振幅画像で、周囲と比べて暗くなっている領域がある場合に、当該領域で局所的に光同士の振幅の打ち消し合いが生じていると推測できるため、当該領域に対応する被検査体500の位置で異常501が生じていると判断できる。
実施形態の検査システムは、図5の異常501のように傾きが急峻に変化しているものに限らず、緩やかに変化する異常も検出できる。図7は、実施形態の時間相関カメラ110による、被検査体150の異常の第2の検出例を示した図である。図7に示される例では、正常な場合は被検査体の表面が平面(換言すれば法線が平行)となるが、被検査体700に緩やかな勾配701が生じた状況とする。このような状況においては、勾配701上の法線ベクトル721、722、723も同様に緩やかに変化する。したがって、イメージセンサ220に入力する光711、712、713も少しずつずれていく。図7に示される例では、緩やかな勾配701のために光の振幅の打ち消し合いは生じないため、図5、図6で表したような光の振幅はほとんど変化しない。しかしながら、本来スクリーン130から投影された光が、そのままイメージセンサ220に平行に入るはずが、緩やかな勾配701のために、スクリーン130から投影された光が平行の状態でイメージセンサ220に入らないために、光に位相変化が生じる。従って、光の位相変化について、周囲等との違いを検出することで、図7に示したような緩やかな勾配701による異常を検出できる。
また、被検査体の表面形状(換言すれば、被検査体の法線ベクトルの分布)以外にも異常が生じる場合がある。図8は、実施形態の時間相関カメラ110による、被検査体の異常の第3の検出例を示した図である。図8に示される例では、被検査体800に汚れ801が付着しているため、照明装置120から照射された光が吸収あるいは拡散反射し、時間相関カメラ110の、汚れ801を撮影している任意の画素領域では光がほとんど強度変化しない例を表している。換言すれば、汚れ801を撮影している任意の画素領域では、光強度は位相打ち消しを起こし振動成分がキャンセルされ、ほとんど直流的な明るさになる例を示している。
このような場合、汚れ801を撮影している画素領域においては、光の振幅がほとんどないため、振幅画像を表示した際に、周囲と比べて暗くなる領域が生じる。したがって、当該領域に対応する被検査体800の位置に、汚れ801等の異常があることを推定できる。
このように、実施形態では、強度画像データと、時間相関画像データ(位相画像データおよび振幅画像データ)とを用いて、光の位相、振幅および強度の少なくとも1つの局所的な変化を検出することで、被検査体の異常箇所を推定できる。
図1に戻り、PC100について説明する。PC100は、検出システム全体の制御を行う。PC100は、アーム制御部101と、照明制御部102と、制御部103と、を備える。
アーム制御部101は、被検査体150の時間相関カメラ110による撮像対象となる表面を変更するために、アーム140を制御する。実施形態では、PC100において、被検査体150の撮影対象となる表面を複数設定しておく。そして、時間相関カメラ110による被検査体150の撮影が終了する毎に、アーム制御部101は、当該設定に従って、時間相関カメラ110が設定された表面を撮影できるように、アーム140を制御して、被検査体150を移動させる。なお、実施形態は撮影が終了する毎にアーム140を移動させ、撮影が開始する前に停止させることを繰り返すことに制限するものではなく、継続的にアーム140を駆動させてもよい。なお、アーム140は、搬送部、移動部、位置変更部、姿勢変更部等とも称されうる。
照明制御部102は、被検査体150を検査するために照明装置120が照射する縞パターンを出力する。実施形態の照明制御部102は、少なくとも3枚以上の縞パターンを、照明装置120に受け渡し、当該縞パターンを露光時間中に切り替えて表示するように照明装置120に指示する。
図9は、照明制御部102が照明装置120に出力する縞パターンの例を示した図である。図9(B)に示す矩形波に従って、図9(A)に示す黒領域と白領域とが設定された縞パターンが出力されるように、照明制御部102が制御を行う。
実施形態で照射する縞パターン毎の縞の間隔は、検出対象となる異常(欠陥)の大きさに応じて設定されるものとして、ここでは詳しい説明を省略する。
また、縞パターンを出力するための矩形波の角周波数ωは、参照信号の角周波数ωと同じ値とする。
図9に示されるように、照明制御部102が出力する縞パターンは、矩形波として示すことができるが、スクリーン130を介することで、縞パターンの境界領域をぼかす、すなわち、縞パターンにおける明領域(縞の領域)と暗領域(間隔の領域)との境界での光の強度変化を緩やかにする(鈍らせる)ことで、正弦波に近似させることができる。図10は、スクリーン130を介した後の縞パターンを表した波の形状の例を示した図である。図10に示されるように波の形状が、正弦波に近づくことで、計測精度を向上させることができる。また、縞に明度が多段階に変化するグレー領域を追加したり、グラデーションを与えたりしてもよい。また、カラーの縞を含む縞パターンを用いてもよい。
図1に戻り、制御部103は、振幅−位相画像生成部104と、位相限定微分値算出部105と、領域特定部106と、補正部107と、検出処理部108と、を備え、時間相関カメラ110から入力された強度画像データと、時間相関画像データと、により被検査体150の検査対象面の異常を検出する処理を行う。なお、本実施形態は、複素数で示した時間相関画像データ(複素時間相関画像データと称す)と、複素時間相関画像データの実部と虚部とで分けた2種類の時間相関画像データと、を時間相関カメラ110から受け取ることができる。
振幅−位相画像生成部104は、時間相関カメラ110から入力された強度画像データと、時間相関画像データと、に基づいて、振幅画像データと、位相画像データと、を生成する。
振幅画像データは、時間相関カメラ110により撮像されている間(撮像間隔の間)に被検査体150の検査対象面から反射した光の光強度信号の輝度変化と、時間遷移を示した参照信号とを乗算して算出される、画素毎に入る光の振幅を表した画像データとする。
位相画像データは、時間相関カメラ110により撮像されている間(撮像間隔の間)に被検査体150の検査対象面から反射した光の光強度信号の輝度変化と、時間遷移を示した参照信号とを乗算して算出される、光強度信号と参照信号との位相差を表す画像データとする。すなわち、位相画像データは、光の位相に関する画像データである。
本実施形態は振幅画像データの算出手法を制限するものではないが、例えば、振幅−位相画像生成部104は、2種類の時間相関画像データの画素値C1(x,y)及びC2(x,y)から、式(8)を用いて、振幅画像データの各画素値F(x,y)を導き出せる。
同様に、振幅−位相画像生成部104は、画素値C1(x,y)及びC2(x,y)から、式(9)を用いて、位相画像データの各画素値φ(x,y)を導き出せる。
式(9)から分かるように、位相画像データの各画素値は、−π〜πの範囲に折りたたまれる。したがって、位相画像データの各画素値は、−πからπに、またはπから−πに不連続に変化し得る(位相ジャンプ)。このような位相ジャンプは、検査対象面が、凹凸などの局所的な異常(欠陥)を含まない平坦になっている場合でも、位相画像データ上にエッジとして現れる。
図11は、実施形態の検査システムによって得られる位相画像データの例を示した図である。図11に示される位相画像データは、上記の位相ジャンプの影響で周期的に現れる複数のエッジ部分1001を含んでいる。本実施形態では、エッジ部分1001から次のエッジ部分1001まで色が黒から白(例えば、画素値0から画素値255)に変化する。本実施形態では、エッジ部分1001間の黒から白(または白から黒)に変化するまでの領域を、位相画像データに生じる縞とも称する。また、検査対象面の端部の領域1002のように、縞の幅が狭くなる領域は、複素時間相関画像の位相限定微分値から算出される位相の変化量が大きくなっている。
位相画像データを用いて異常の検出を行う場合、検査対象の表面の位相の傾きの変化として現れる。このため、検査対象の表面の位相の傾きが、予め定められた閾値以上に変化する領域を検出することで、異常を検出できる。
ところで、検査対象となる表面の塗装肌の状態は、検査対象の塗装色、ロット、側面/正面等に応じて、塗装面(表面)の粗さが異なる。
図12は、検査対象の表面の高低差を例示した図である。図12に示される例では、表面の塗装肌が、正常で細かめの場合と、正常で粗めの場合と、肌欠陥(異常)が生じている場合と、を示している。
本実施形態においては、表面の全体的な高低差は、おおよそ許容の範囲内(例えば4μm以内)におさまっていれば良いものとする。このため、表面の高低差が2μm程度の場合には、表面が正常であって細かめとみなされる。
また、表面の高低差が3μm〜4μm程度の場合には、表面が正常ではあるが粗め、所謂ゆず肌とみなされる。
一方、表面の高低差が5μm程度の場合には、表面が異常であり、所謂肌欠陥とみなされる。
このように検査対象の表面の高低差は、検査対象の塗装色、ロット、側面/正面等に応じて異なるが、塗装面の異常を適切に検知することが求められている。
例えば、検査対象の表面において、全体的には細かめの表面であっても、粗めの領域が含まれている場合には、消費者は当該表面が気になることがある。一方、検査対象の表面において、全体的に粗めな表面には、当該粗めな表面より少し粗めな領域が含まれていたとしても、消費者は当該表面が気にならないことが多い。このため、表面の粗さに応じた、検査対象の表面の欠陥検出を行うのが好ましい。
本実施形態においては、検査対象の表面の粗さを、検査対象の表面における位相の傾きの変化量として考えるものとする。換言すれば、位相画像データから算出される位相ラプラシアン画像データの各画素値を、検査対象の表面の粗さを示した情報と考える。なお、位相ラプラシアン画像データの算出手法については後述する。
図13は、表面の高低差が全体的に2μm程度の位相画像データの例を示した図である。図13に示される例では、当該位相画像データから算出された位相ラプラシアン画像データの各画素値において、所定の基準値以上となった領域が存在しない例とする。
図14は、表面の高低差が全体的に3μm〜4μm程度の位相画像データの例を示した図である。図14に示される位相画像データは、図13で示された位相画像データと比べて、位相の変化が生じていることが確認できる。
図15は、表面の高低差が全体的に3μm〜4μm程度の位相画像データ上に、当該位相画像データから算出された位相ラプラシアン画像データの各画素値が、所定の基準値以上になった領域を示した図である。図15に示される例では、領域1501が、位相ラプラシアン画像データにおいて、所定の基準値以上となった画素値が含まれた領域とする。このような場合であっても、人が視覚で確認する限り、表面の粗さはあまり気にならない例とする。
図16は、表面の高低差が全体的に5μm程度の位相画像データの例を示した図である。図16に示される位相画像データは、図13や図14で示された位相画像データと比べて、位相の変化が大きいことが確認できる。
図17は、表面の高低差が全体的に5μm程度の位相画像データ上に、当該位相画像データから算出された位相ラプラシアン画像データの各画素値が、所定の基準値以上になった領域を示した図である。図17に示される例では、領域1701が、位相ラプラシアン画像データにおいて、所定の基準値以上となった画素値が含まれた領域とする。
図17で示される例では、検査対象の表面が、表面の高低差が全体的に5μm程度の場合であるため、所謂肌欠陥となる。図17に示される例では、人が視覚で確認すると、全体的に表面が粗いと視認される。
例えば、図13に示される例のように、表面の高低差が全体的に2μm程度であって、位相ラプラシアン画像データの画素値が所定の基準値以上となった領域が含まれている場合には、当該領域の異常が目立つことが多い。
一方、図14に示される例のように、表面の高低差が全体的に3μm〜4μm程度であって、位相ラプラシアン画像データの画素値が所定の基準値以上となった領域が含まれている場合でも、周囲の高低差を考慮すると、当該領域の異常が目立たないこともあり、過検出とみなされる場合が多い。
そこで、本実施形態は、表面が粗い場合(所謂、ゆず肌の場合)等に、異常の過検出を抑止するために、検査対象の表面の粗さに応じた、異常の検出を行う手法について説明する。
なお、図16に示される例のように、表面の高低差が全体的に5μm程度であって、位相ラプラシアン画像データの画素値が所定の基準値以上となった領域が含まれている場合には、当該領域の異常が目立たない可能性もあるが、そもそも表面の高低差が5μm程度であることが表面の異常であるため、本実施形態では考慮しないものとする。
次に、複数の検査対象となるサンプルに基づいて、検査対象の表面の粗さの違いについて説明する。本実施形態は、検査対象の表面の粗さを、位相ラプラシアン画像データを画素値として示した例である。換言すれば、位相ラプラシアン画像データの画素値の分布を、検査対象の表面の位相の傾きの変化量の分布として表すことができる。
図18は、検査対象の表面が細かめの場合、換言すれば肌粗れが少ないサンプル(検査対象)における、表面の位相の傾きの変化量の分布を例示した図である。図18に示される例では、縦軸が画素数であって、横軸が位相ラプラシアン、換言すれば位相の傾きの変化量とする。図18に示されるように、検査対象の表面が細かめの場合、X軸が‘0’近傍で急峻に励起する軌跡を描くグラフとなる。
図19は、検査対象の表面が粗めの場合、換言すれば肌粗れが多いサンプル(検査対象)における、表面の位相の傾きの変化量の分布を例示した図である。図19に示されるように、検査対象の表面が粗めの場合、X方向に緩やかに広がる軌跡を描くグラフとなる。
図20は、複数のサンプル(検査対象)における、表面の位相の傾きの変化量の分布を例示した図である。図20に示される例では、検査対象毎に、表面の粗さが異なるため、検査対象ごとに異なる軌跡が描かれた例とする。
本実施形態では、検査対象ごとに表面の粗さが異なる場合に、当該検査対象の表面の粗さに応じた肌粗れの検出を行うため、複数の検査対象(サンプル)から、表面の粗さの基準(平均)を示す情報として、位相の傾きの変化量の標準偏差を求めることとした。本実施形態では、標準偏差を求めるためにサンプルを95個用いたが、サンプル数を制限するものではない。
具体的には、検査システムにおいては、予め、複数の検査対象(サンプル)の表面における、位相の傾きの変化量の分布を算出する。そして、算出された位相の傾きの変化量の分布から、標準偏差を算出する。
なお、位相の傾きの変化量の分布を算出する際には、当該表面において、ホコリやゴミが付いている領域や、欠陥が存在する領域は、算出対象となる領域から除くものとする。このように、ノイズ成分が含まれた領域を除くことで、肌状態の算出の正確性を向上させることができる。
そして、本実施形態の検査システムの記憶部109は、算出された標準偏差を記憶する。
本実施形態の補正部107は、実際の検査対象の表面の位相の傾きの変化量に対して、記憶部109に記憶された標準偏差を用いて補正する。
具体的には、補正部107は、検査対象の表面を表した位相ラプラシアン画像データを算出する。そして、補正部107は、位相ラプラシアン画像データに含まれている画素値から、標準偏差を算出する。
そして、補正部107は、算出された標準偏差と、記憶部109に基準として記憶された標準偏差と、を比較して、検査対象の表面の粗さを、基準に合わせるための変換係数を算出する。
さらに、補正部107は、位相ラプラシアン画像データのうち、検査対象となる領域に含まれている全画素に対して、算出された変換係数を乗算して、肌補正を行う。そして肌補正が行われた後に、検出処理部108による異常の検出が行われる。
ところで、検査対象の表面の位相の傾きの変化量を算出する際に、位相画像データの画素の微分値(換言すれば隣接2画素の差分)を用いることになるが、図11で示されるような位相画像データにおける各画素の微分値では、位相ギャップが生じている領域で過検出が生じる。そこで、本実施形態では、位相微分値ではなく、位相限定微分値(複素時間相関位相微分値、又は複素位相微分値とも称する)を用いることとした。
位相限定微分値算出部105は、振幅−位相画像生成部104が生成した位相画像データを取得し、検査対象領域内における位相限定微分値を算出する。位相限定微分とは、複素時間相関画像の位相成分のみを微分する処理(なお、複素位相微分とも称する)のことである。
位相限定微分値は、複素時間相関画像の位相成分の、互いに直交する二方向(x方向およびy方向とする)の微分値の二乗和に基づいて算出される。より具体的に、処理対象の画素の値をg(x,y)とした場合、g(x,y)およびg(x+1,y)の位相成分の差分(x方向の位相限定微分)と、g(x,y)およびg(x,y+1)の位相成分の差分(y方向の位相限定微分)と、の二乗和の平方根が、位相限定微分値として算出される。
上記の処理は、例えば、図21、図22に示されたような配列のフィルタに基づいて行われる。図21、図22は、実施形態において実行される位相限定微分に対応するフィルタ配列を例示した図である。実施形態の位相限定微分値算出部105は、図21に示されたような配列のフィルタに基づいて、x方向の位相限定微分を行い、図22に示されたような配列のフィルタに基づいて、y方向の位相限定微分を行う。そして、位相限定微分値算出部105は、これら2種類のフィルタに基づいて算出された2つの値の二乗和の平方根を、位相限定微分値として算出する。
このように、実施形態では、x方向の位相限定微分を∂φ/∂x、y方向の位相限定微分を∂φ/∂yとした場合、位相限定微分値|∇φ|は、次の式(200)で表すことができる。
ここで、複素数を、振幅成分と位相成分とに分けた極形式で表した場合、位相成分は、指数部分に表れる。このため、複素数の位相成分の差分である位相限定微分∂φ/∂xおよび∂φ/∂yは、複素数の除算に基づいて算出される。
つまり、複素数であるg(x,y)の位相成分をφ(x,y)とした場合、g(x,y)およびg(x+1,y)の位相成分の差分∂φ/∂xは、下記の式(201)によって得られる。
∂φ/∂x=φ(x+1,y)−φ(x,y)
=arg[g(x+1,y)/g(x,y)] … (201)
同様に、複素数であるg(x,y)の位相成分をφ(x,y)とした場合、g(x,y)およびg(x,y+1)の位相成分の差分∂φ/∂yは、下記の式(202)によって得られる。
∂φ/∂y=φ(x,y+1)−φ(x,y)
=arg[g(x,y+1)/g(x,y)] … (202)
なお、実施形態の検査システムで実際に用いられるデータは、振幅成分と位相成分とに分かれた極形式の複素数のデータではなく、当該複素数に対応する実部のデータおよび虚部のデータである。
したがって、実施形態では、上記の式(201)におけるg(x+1,y)/g(x,y)という計算の結果が、実部を表すCrという値と、虚部を表すCiという値と、の2つの値として出力される。そして、∂φ/∂xは、これら2つの値に基づき、arctan(Ci/Cr)という式によって計算される。同様に、実施形態では、上記の式(202)におけるg(x,y+1)/g(x,y)という計算の結果が、実部を表すCr´という値と、虚部を表すCi´という値と、の2つの値として出力される。そして、∂φ/∂yは、これら2つの値に基づき、arctan(Ci´/Cr´)という式によって計算される。
上述した処理により、位相限定微分値算出部105は、x方向の位相限定微分∂φ/∂x、y方向の位相限定微分∂φ/∂yを算出できる。さらに、位相限定微分値算出部105は、上述した式(200)を用いることで、位相限定微分値|∇φ|を求めることができる。
図23は、位相限定微分値|∇φ|を求めることで導出された画像データを例示した図である。図23に示される画像データには、図11の位相画像データに見られたような周期的なエッジ部分が無い。このため、位相ジャンプの影響を受けることなく、異常部分を容易に検出できる。
さらに、位相限定微分値算出部105は、位相限定ラプラシアンを用いた処理を、時間相関画像データの全画素について実行することにより、時間相関画像データから、2階微分が施された位相画像データ、すなわち位相ラプラシアン画像データを算出する。位相限定ラプラシアンとは、振幅及び位相を含む複素数で表現される時間相関画像データのうち、振幅部分を無視した位相部分にのみ2階微分を施すための演算式であり、位相の定常的な変化を無視し、位相の傾きの変化量を検出するための演算式である。
本実施形態の位相ラプラシアン画像データの算出手法は、振幅−位相画像生成部104が生成した位相画像データに対して、ラプラシアンフィルタに対応する処理を行うこととした。ラプラシアンフィルタは、位相部分にのみ2階微分を施すための重み付けしたフィルタ係数を有する。なお、ラプラシアンフィルタの構成については説明を省略する。
位相ラプラシアン画像データは、位相画像データに見られたような周期的なエッジ部分が無く、局所位相の分布の勾配に関する特徴が示されている。位相ラプラシアン画像データは、閾値などを用いた通常の検出処理をするだけで、位相ジャンプの影響を受けることなく、異常部分を検出できる。
上述したように、本実施形態においては、位相ラプラシアン画像データの各画素値を、位相の傾き(角度)の変化量として用いて、肌補正を行うこととする。しかしながら、検査対象となる領域に、異常が生じている領域が含まれている場合に、補正部107が、当該検査対象となる領域から、画素値の標準偏差を算出し、上述した記憶部109に記憶された標準偏差と変換係数を求めると、適切な変換係数が得られない。換言すれば、補正部107が、当該変換係数で、検査領域に含まれている全画素に対して、算出された変換係数を乗算したとしても、基準として定義した表面の粗さにならない。
そこで、本実施形態では、異常が存在する可能性がある領域を、検査領域から除いた上で、標準偏差を算出する。本実施形態では、異常が存在する可能性がある領域として、検査対象となる領域のうち、他の領域と比べて位相の変化が大きい領域を特定する。
領域特定部106は、検査対象面の領域における位相の微分値の変化に基づいて、検査対象面に含まれる、所定の基準以上の位相の変化が含まれた所定の領域を特定する。
図24は、本実施形態の位相画像データの例を示した図である。図24に示される例では、領域2401、2402、2403は、他の領域と比べて大きい位相の変化が生じている。そこで、領域特定部106は、領域2401、2402、2403を、他の領域と比べて大きい位相の変化が生じている領域として特定する。
本実施形態の領域特定部106は、検査対象の面が検査境界線(検査する範囲と検査しない範囲とを区別する境界線)近傍であるか否かに応じて、領域の特定処理を異ならせる。
さらに、本実施形態の領域特定部106は、検査対象面の領域において、方向毎の位相の微分値の変化を考慮して、他の領域と比べて位相の変化が大きい領域を特定する。本実施形態では、他の領域と比べて位相の変化が大きい領域の特定を複数の基準に基づいて行う。
図25は、位相限定微分値に基づいた第1の基準を例示した図である。図26は、位相限定微分値に基づいた第2の基準を例示した図である。図25及び図26で示される例では、位置座標の遷移に従って変化する、位相限定微分値が示されている。本実施形態では、図25で示される第1の基準値k1以上の変化や、図26で示される第2の基準値k2以下になる変化が生じた場合に、周辺領域と同様の検出感度で補正する領域の可能性があると考える。
本実施形態では、所定の領域内のX方向で、図25に示される位相限定微分値の変化が第1の基準値k1以上となるか否かを、X方向の第1の変化V1xとして示す。第1の変化V1xは、第1の基準値k1以上となる場合に“1”となり、第1の基準値k1以上にならない場合に“0”となる。以降で示すV1y、V3x、V3yについても同様とする。
本実施形態では、所定の領域内のY方向で、図25に示される位相限定微分値の変化が第1の基準値k1以上となるか否かを、Y方向の第1の変化V1yとして示す。
同様に、所定の領域内のX方向で、図26に示される位相限定微分値の変化が第2の基準値k2以下となるか否かを、X方向の第2の変化V2xとして示す。第2の変化V2xは、第2の基準値k2以下となる場合に“1”となり、第2の基準値k2以下にならない場合に“0”となる。また、所定の領域内のY方向で、図26に示される位相限定微分値の変化が第2の基準値k2以下となるか否かを、Y方向の第2の変化V2yとして示す(なお、第2の基準値k2>第1の基準値k1となる)。以降で示すV4x、V4yについても同様とする。
本実施形態の領域特定部106は、検査境界線近傍でない所定の領域内で、X方向の第1の変化V1x=1、X方向の第2の変化V2x=1の場合(V1x・V2x=1)に、当該所定の領域を、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
具体的には、本実施形態の領域特定部106は、X方向の第1の変化V1x=1となる領域を検出した場合に、当該領域を基準として所定の数の画素(例えば5ピクセル)だけ膨張させる。そして、領域特定部106は、膨張させた領域に、X方向の第2の変化V2x=1が含まれている場合に、膨張させた後の領域を、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
同様に、領域特定部106は、検査境界線近傍でない所定の領域内で、Y方向の第1の変化V1y=1、Y方向の第2の変化V2y=1の場合(V1y・V2y=1)に、当該所定の領域を、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
検査対象の面が検査境界線(検査する範囲と検査しない範囲とを区別する境界線)近傍の場合の、検査領域のうち他の領域と比べて位相の変化が大きい領域を特定する手法について説明する。図27は、検査境界線近傍の位相限定微分値に基づいた第3の基準を例示した図である。図28は、検査境界線近傍の位相限定微分値に基づいた第4の基準を例示した図である。本実施形態では、所定の領域で、図27で示される第3の基準値k3以上になる変化や図28で示される第4の基準値k4以下になる変化が生じた際に(換言すれば、所定の領域で、位相限定微分値が境界面に近づくに従って、位相限定微分値が増加又は減少している際に)、境界線に近づく方向と直交する方向で、図25で示した第1の基準値k1以上となる変化や、図26で示した第2の基準値k2以下となる変化が生じている場合に、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
本実施形態では、所定の領域内のX方向で、図27に示される位相限定微分値数の変化が第3の基準値k3以上となるか否かを、X方向の第3の変化V3xとして示す。所定の領域内のY方向で、図27に示される位相限定微分値の変化が第3の基準値k3以上となるか否かを、Y方向の第3の変化V3yとして示す。
本実施形態では、所定の領域内のX方向で、図28に示される位相限定微分値の変化が第4の基準値k4以下となるか否かを、X方向の第4の変化V4xとして示す。所定の領域内のY方向で、図28に示される位相限定微分値の変化が第4の基準値k4以下となるか否かを、Y方向の第4の変化V4yとして示す。
領域特定部106は、X方向に検査境界線が存在する所定の領域内で、X方向の第3の変化V3x=1又はX方向の第4の変化V4x=1であって、Y方向の第1の変化V1y=1又はY方向の第2の変化V2y=1である場合((V3x+V4x)・(V1y+V2y)=1)に、当該所定の領域を、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
また、領域特定部106は、Y方向に検査境界線が存在する所定の領域内で、Y方向の第3の変化V3y=1又はY方向の第4の変化V4y=1であって、X方向の第1の変化V1x=1又はX方向の第2の変化V2x=1である場合((V1x+V2x)・(V3y+V4y)=1)に、当該所定の領域を、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
つまり、領域特定部106は、下記の論理式(203)において、Ans=1となった所定の領域について、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
図29は、領域特定部106に特定された、検査領域のうち他の領域と比べて位相の変化が大きい領域を例示した図である。図29に示される例では、図24で示される位相画像データのうち、領域2401、2402、2403に含まれている、所定の領域2901、2902、2903が、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定されたことを示している。
さらに、領域特定部106は、振幅画像データに基づいて、異常と判断された領域についても、検査領域のうち他の領域と比べて位相の変化が大きい領域として特定する。
そして、領域特定部106は、検査対象の表面のうち、検査領域のうち他の領域と比べて位相の変化が大きい領域を除いた領域を、検査対象の表面の検査対象領域として特定する。検査対象の表面のうち、斜線で示された領域2951、換言すれば領域2901、2902、2903を除いた領域が、検査対象の表面の検査対象領域となる。
補正部107は、検査対象面の領域における、複素時間相関画像の位相限定微分値から算出される位相の変化量に基づいて、検査対象面の領域における表面の粗さを示した情報を、所定の基準にする補正を行う。本実施形態では、検査対象面の領域における表面の粗さを示した情報として、位相限定ラプラシアンを用いた処理を施すことで得られた位相ラプラシアン画像データの画素値を用いた例とする。
まず、補正部107は、検査対象の表面の検査対象領域における、位相ラプラシアン画像データの画素値による、標準偏差を算出する。
そして、補正部107は、算出した標準偏差と、記憶部109に基準として記憶された標準偏差と、を比較し、検査対象の表面の検査対象領域における表面の粗さを、基準となる表面粗さに合わせるための変換係数を算出する。具体的な例としては、本実施形態では、記憶部109に基準として記憶された標準偏差を、算出した標準偏差で、除算して変換係数を求める。
そして、補正部107は、検査対象の表面の検査対象領域に含まれている(位相ラプラシアン画像データの)全画素に対して、算出された変換係数を乗算して、表面の肌補正を行う。なお、本実施形態は、このような演算手法に制限するものではなく、算出された標準偏差と、記憶部109に記憶された標準偏差と、に基づいて、位相ラプラシアン画像データの画素値を、表面の粗さを表した所定の基準にする補正を行うものであれば良い。
図30は、補正部107による、表面の肌補正を説明した図である。図30の領域3001は、補正部107による肌補正前を示し、領域3002は、補正部107による肌補正後を示している。図30に示される例では、領域3001の表面の粗さが、基準となる表面より粗いため、補正部107による補正で、表面の粗さが細かくなっている例とする。
次に、表面の肌補正を行った場合における、位相の傾きの変化量の分布の変化について説明する。図31は、補正部107による複数の検査対象の肌補正を行う前後の、表面の位相の傾きの変化量の分布を例示した図である。図31に示されるように、補正前の位相の傾きの変化量の分布3101では、検査対象ごとに、位相の傾きの変化量が異なることが把握できる。これに対して、補正後の角度分布3102では、検査対象ごとの、位相の傾きの変化量の違いが小さくなっていることが把握できる。
換言すれば、検査対象ごとに異なっていた表面の粗さが、共通する基準になるように補正されたことになる。補正部107により補正された後の表面においては、補正された後の画素値が、所定の基準値以上となるか否かを検出することで、表面の粗さに応じた異常の検出を実現できる。
検出処理部108は、補正部107により、位相ラプラシアン画像データが、当該画像データに含まれる標準偏差が所定の基準になる補正が行われた、検査対象面の領域に対して、複素時間相関画像の位相の分布に基づいて異常を検出する。
本実施形態においては、検査対象面の領域として、補正部107により肌補正された位相ラプラシアン画像データから異常の検出を行うこととする。本実施形態では、補正された位相ラプラシアン画像データの全ての画素値について、予め定められた一つの基準値以上であるか否かに応じて、異常の検出処理を行う。このように、本実施形態では、表面の粗さが補正されているため、検査対象面の表面の粗さに応じた異常の検出処理を行うことができる。
次に、実施形態の検査システムにおける被検査体の検査処理について説明する。図32は、実施形態の検査システムにおける上述した処理の手順を示すフローチャートである。なお、被検査体150は、すでにアーム140に固定された状態で、検査の初期位置に配置されているものとする。
実施形態のPC100が、照明装置120に対して、被検査体150を検査するための縞パターンを出力する(S3201)。
照明装置120は、PC100から入力された縞パターンを格納する(S3221)。そして、照明装置120は、格納された縞パターンを、時間遷移に従って変化するように表示する(S3222)。なお、照明装置120が表示を開始する条件は、縞パターンが格納された際に制限するものではなく、例えば検査者が照明装置120に対して開始操作を行った際でもよい。
そして、PC100の制御部103が、時間相関カメラ110に対して、撮像の開始指示を送信する(S3202)。
次に、時間相関カメラ110が、送信されてきた撮像の開始指示に従って、被検査体150を含む領域について撮像を開始する(S3214)。次に、時間相関カメラ110の制御部240が、強度画像データと、時間相関画像データと、を生成する(S3215)。そして、時間相関カメラ110の制御部240が、強度画像データと、時間相関画像データと、を、PC100に出力する(S3216)。
PC100の制御部103は、強度画像データと、時間相関画像データと、を受け取る(S3203)。そして、振幅−位相画像生成部104は、受け取った強度画像データと時間相関画像データとから、振幅画像データと、位相画像データと、を生成する(S3204)。
位相限定微分値算出部105は、振幅−位相画像生成部104が生成した位相画像データを取得し、検査対象領域内における位相限定微分値を算出する(S3205)。位相限定微分値算出部105は、さらに、位相ラプラシアン画像データを生成する(S3206)。
領域特定部106は、他の領域と比べて位相の変化が大きい領域を特定する(S3207)。
そして、補正部107は、他の領域と比べて位相の変化が大きい領域を除いた、検査対象領域における、位相ラプラシアン画像データの画素値による、標準偏差を算出する(S3208)。
補正部107は、標準偏差に基づいて、変換係数を算出した後、当該変換係数を用いて、(位相ラプラシアン画像データの)検査対象領域における肌補正を行う(S3209)。
そして、検出処理部108が、振幅画像データと、位相画像データと、補正された後の位相ラプラシアン画像データと、に基づいて、被検査体150の異常検出処理を実行する(S3210)。
そして、検出処理部108は、異常検出結果を、PC100が備える(図示しない)表示装置に出力する(S3211)。
異常検出結果の出力例としては、強度画像データを表示するとともに、振幅画像データと位相画像データとに基づいて異常が検出された領域に対応する、強度画像データの領域を、検査者が異常を認識できるように装飾表示するなどが考えられる。また、視覚に基づく出力に制限するものではなく、音声等で異常が検出されたことを出力してもよい。
制御部103は、当該被検査体150の検査と共に、被検査体150の撮像が終了したか否かを判定する(S3212)。被検査体150の撮像が終了していないと判定した場合(S3212:No)、アーム制御部101が、予め定められた設定に従って、次の検査対象となる被検査体の表面が、時間相関カメラ110で撮像できるように、アーム140の移動制御を行う(S3213)。アーム140の移動制御が終了した後、制御部103が、再び時間相関カメラ110に対して、撮像の開始指示を送信する(S3202)。
一方、制御部103は、当該被検査体150の検査と共に、被検査体150の撮像が終了したと判定した場合(S3212:Yes)、終了指示を時間相関カメラ110に対して出力し(S3214)、処理を終了する。
そして、時間相関カメラ110は、終了指示を受け付けたか否かを判定する(S3217)。終了指示を受け付けていない場合(S3217:No)、再びS3214から処理を行う。一方、終了指示を受け付けた場合(S3217:Yes)、処理を終了する。
なお、照明装置120の終了処理は、検査者が行ってもよいし、他の構成からの指示に従って終了してもよい。
また、実施形態では、強度画像データと、時間相関画像データと、を時間相関カメラ110を用いて生成する例について説明した。しかしながら、強度画像データと、時間相関画像データと、を生成するために時間相関カメラ110を用いることに制限するものではなく、アナログ的な処理で実現可能な時間相関カメラや、それと等価な動作をする撮像システムを用いてもよい。例えば、通常のデジタルスチルカメラが生成した画像データを出力し、情報処理装置が、デジタルスチルカメラが生成した画像データを、フレーム画像データとして用いて参照信号を重畳することで、時間相関画像データを生成してもよいし、イメージセンサ内で光強度信号に参照信号を重畳するようなデジタルカメラを用いて、時間相関画像データを生成してもよい。
本実施形態の検査システムにおいては、上述した構成を備えることで、表面の粗さに応じた異常の検出を行うことができる。これにより、本実施形態は、所謂ゆず肌のような表面が粗い場合における、異常の過検出を抑止できるので、被検査体の異常をより高精度に検出できる。
(第1変形例)
上述の実施形態では、周囲との違いに基づいて、異常に関連する特徴を検出する例について説明したが、周囲との違いに基づいて当該特徴を検出することに制限するものではない。例えば、第1変形例として、参照形状のデータ(参照データ、例えば、時間相関データや、振幅画像データ、位相画像データ等)との差異に基づいて当該特徴を検出する場合も考えられる。この場合、参照データの場合とで、空間位相変調照明(縞パターン)の位置合わせおよび同期が必要となる。
第1変形例では、検出処理部108が、予め(図示しない)記憶部に記憶された、参照表面から得られた振幅画像データおよび位相画像データと、被検査体150の振幅画像データおよび位相画像データと、を比較し、被検査体150の表面と参照表面との間で、光の振幅および光の位相とのうちいずれか一つ以上について所定の基準以上の違いがあるか否かを判定する。
第1変形例は、実施形態と同じ構成の検査システムを用い、参照表面として正常な被検査体の表面を用いる例とする。
照明装置120がスクリーン130を介して縞パターンを照射している間に、時間相関カメラ110が、正常な被検査体の表面を撮像し、時間相関画像データを生成する。そして、PC100が、時間相関カメラ110で生成された時間相関画像データを入力し、振幅画像データおよび位相画像データを生成し、PC100の図示しない記憶部に振幅画像データおよび位相画像データを記憶させておく。そして、時間相関カメラ110が、異常が生じているか否か判定したい被検査体150を撮像し、時間相関画像データを生成する。そして、PC100が、時間相関画像データから、振幅画像データおよび位相画像データを生成した後、記憶部に記憶されていた、正常な被検査体の振幅画像データおよび位相画像データと比較する。その際に、正常な被検査体の振幅画像データおよび位相画像データと、検査対象の被検査体150の振幅画像データおよび位相画像データと、の比較結果を、異常を検出する特徴を示したデータとして出力する。そして、異常を検出する特徴が、当該所定の基準以上の場合に、被検査体150に対して異常があると推測できる。
これにより、第1変形例では、正常な被検査体の表面と差異が生じているか否か、換言すれば、被検査体の表面に異常が生じているか否かを判定できる。なお、振幅画像データおよび位相画像データの比較手法は、どのような手法を用いてもよいので、説明を省略する。
さらに、第1変形例では、参照表面の違いに基づいて、異常を検出する特徴を示したデータを出力する例について説明したが、参照表面の違いと、実施形態で示した周囲との違いと、を組み合わせて、異常を検出する特徴を算出してもよい。組み合わせる手法は、どのような手法を用いてもよいので、説明を省略する。
(第2変形例)
上述の実施形態では、x方向に縞パターンを動かして、被検査体の異常(欠陥)を検出する例について説明した。しかしながら、x方向に垂直なy方向で急峻に法線の分布が変化する異常(欠陥)が被検査体に生じている場合、x方向に縞パターンを動かすよりも、y方向に縞パターンを動かす方が欠陥の検出が容易になる場合がある。そこで、第2変形例として、x方向に移動する縞パターンと、y方向に移動する縞パターンとを、交互に切り替える例について説明する。
第2変形例の照明制御部102は、所定の時間間隔毎に、照明装置120に出力する縞パターンを切り替える。これにより、照明装置120は、一つの検査対象面に対して、異なる方向に延びた複数の縞パターンを出力する。
図33は、第2変形例の照明制御部102が出力する縞パターンの切り替え例を示した図である。図33の(A)では、照明制御部102は、照明装置120が表示する縞パターンをx方向に遷移させる。その後、(B)に示されるように、照明制御部102は、照明装置120が表示する縞パターンをy方向に遷移させる。
そして、PC100の制御部103は、図33の(A)の縞パターン照射から得られた時間相関画像データに基づいて、異常検出を行い、図25の(B)の縞パターン照射から得られた時間相関画像データに基づいて、異常検出を行う。
図34は、第2変形例の照明制御部102が、異常(欠陥)3401を含めた表面に縞パターンを照射した例を示した図である。図34に示す例では、異常(欠陥)3401が、x方向に延びている。この場合、照明制御部102は、x方向に交差するy方向、換言すれば異常(欠陥)3401の長手方向に交差する方向に縞パターンが移動するように設定する。当該設定により、検出精度を向上させることができる。
図35は、図34においてy方向、換言すれば異常(欠陥)3401の長手方向に直交する方向に縞パターンを変化させた場合における、異常(欠陥)3401とスクリーン130上の縞パターンの関係を示した図である。図35に示されるように、y方向に幅が狭く、且つ当該y方向に交差するx方向を長手方向とする異常(欠陥)3401が生じている場合、照明装置120から照射された光は、x方向に交差するy方向で光の振幅の打ち消しが大きくなる。このため、PC100では、y方向に移動させた縞パターンに対応する振幅画像データから、当該異常(欠陥)3401を検出できる。
第2変形例の検査システムにおいて、被検査体に生じる欠陥の長手方向がランダムな場合には、複数方向(例えば、x方向、および当該x方向に交差するy方向等)で縞パターンを表示することで、欠陥の形状を問わずに当該欠陥の検出が可能となり、異常(欠陥)の検出精度を向上させることができる。また、異常の形状に合わせた縞パターンを投影することで、異常の検出精度を向上させることができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。