(57)【要約】      （修正有）【課題】白点不良を容易に検出すること。【解決手段】検査システムは、被検査体に対して光の強度の周期的な時間変化および空間変化を与える面的な照明部１２０と、時間相関カメラ１１０またはそれと等価な動作をする撮像システムから出力される画像データから振幅画像を生成する画像生成部１０４と、振幅画像に対して所定のフィルタサイズのラプラシアンフィルタを用いた第１フィルタ処理を実行するフィルタ処理部１０５と、第１フィルタ処理後の振幅画像であるラプラシアン画像に基づいて、フィルタサイズに応じた大きさの白点不良を検出する白点不良検出部１０７と、を備える。【選択図】図１
2019002761.tif 000002
【特許請求の範囲】
【請求項１】
被検査体に対して光の強度の周期的な時間変化および空間変化を与える面的な照明部と、
時間相関カメラまたはそれと等価な動作をする撮像システムから出力される画像データから振幅画像を生成する画像生成部と、
前記振幅画像に対して所定のフィルタサイズのラプラシアンフィルタを用いた第１フィルタ処理を実行するフィルタ処理部と、
前記第１フィルタ処理後の前記振幅画像であるラプラシアン画像に基づいて、前記フィルタサイズに応じた大きさの白点不良を検出する白点不良検出部と、
を備える、検査システム。
【請求項２】
前記フィルタ処理部は、前記振幅画像に対して１次微分フィルタを用いた第２フィルタ処理を実行し、
前記白点不良検出部は、前記ラプラシアン画像と、前記第２フィルタ処理後の前記振幅画像である微分画像と、に基づいて、前記白点不良を検出する、
請求項１に記載の検査システム。
【請求項３】
前記白点不良検出部は、前記ラプラシアン画像に第１閾値を用いた第１閾値処理を実行することで抽出した第１領域と、前記微分画像のうち前記第１領域を膨張させた膨張領域に対応した領域に第２閾値を用いた第２閾値処理を実行することで抽出した第２領域と、の論理和に対応した領域を、前記白点不良として検出する、
請求項２に記載の検査システム。
【請求項４】
前記ラプラシアンフィルタは、前記フィルタサイズが９×９に設定されている、
請求項１〜３のいずれか１項に記載の検査システム。
【請求項５】
光の強度の周期的な時間変化および空間変化を与える面的な照明部により照らされた被検査体を撮像する時間相関カメラまたはそれと等価な動作をする撮像システムから出力される画像データから振幅画像を生成する画像生成ステップと、
前記振幅画像に対して所定のフィルタサイズのラプラシアンフィルタを用いた第１フィルタ処理を実行するフィルタ処理ステップと、
前記第１フィルタ処理後の前記振幅画像であるラプラシアン画像に基づいて、前記フィルタサイズに応じた大きさの白点不良を検出する白点不良検出ステップと、
を備える、検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、検査システムおよび検査方法に関する。
【背景技術】
【０００２】
従来、周期的に変化する光を被検査体に照射し、当該被検査体の表面からの反射光を撮像することで、光の強度のみならず、光の時間遷移に関する情報をも含んだ時間相関画像を取得する技術が提案されている。このような時間相関画像は、たとえば、被検査体の異常を検出するために用いられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１９７３４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、検査対象がメッキ製品である場合、メッキ製品特有の検出すべき異常として、白点不良がある。白点不良とは、メッキ製品の表面に表れる白い斑点状のシミのような異常である。
【０００５】
白点不良は、たとえばキズなどと異なり、検査対象の表面の凹凸の変化としてほとんど表れない異常であるため、従来の異常検出手法では、白点不良を検出することが困難であった。
【課題を解決するための手段】
【０００６】
実施形態の検査システムは、被検査体に対して光の強度の周期的な時間変化および空間変化を与える面的な照明部と、時間相関カメラまたはそれと等価な動作をする撮像システムから出力される画像データから振幅画像を生成する画像生成部と、振幅画像に対して所定のフィルタサイズのラプラシアンフィルタを用いた第１フィルタ処理を実行するフィルタ処理部と、第１フィルタ処理後の振幅画像であるラプラシアン画像に基づいて、フィルタサイズに応じた大きさの白点不良を検出する白点不良検出部と、を備える。
【図面の簡単な説明】
【０００７】
【図１】図１は、実施形態の検査システムの構成例を示した図である。
【図２】図２は、実施形態の時間相関カメラの構成を示したブロック図である。
【図３】図３は、実施形態の時間相関カメラで時系列順に蓄積されるフレームを表した概念図である。
【図４】図４は、実施形態の照明装置が照射する縞パターンの一例を示した図である。
【図５】図５は、実施形態の時間相関カメラによる、被検査体の異常の第１の検出例を示した図である。
【図６】図６は、実施形態において、図５に示される異常が被検査体に存在する場合に、当該異常に応じて変化する、光の振幅の例を表した図である。
【図７】図７は、実施形態の時間相関カメラによる、被検査体の異常の第２の検出例を示した図である。
【図８】図８は、実施形態の時間相関カメラによる、被検査体の異常の第３の検出例を示した図である。
【図９】図９は、実施形態の照明制御部が照明装置に出力する縞パターンの例を示した図である。
【図１０】図１０は、実施形態のスクリーンを介した後の縞パターンを表した波の形状の例を示した図である。
【図１１】図１１は、実施形態の検出対象である白点不良の特性を説明するための図である。
【図１２】図１２は、実施形態のラプラシアンフィルタの具体例を示した図である。
【図１３】図１３は、実施形態のラプラシアン画像の具体例を示した図である。
【図１４】図１４は、比較例のラプラシアンフィルタの具体例を示した図である。
【図１５】図１５は、比較例のラプラシアン画像の具体例を示した図である。
【図１６】図１６は、実施形態の１次微分フィルタの具体例を示した図である。
【図１７】図１７は、実施形態の微分画像の具体例を示した図である。
【図１８】図１８は、実施形態における白点不良の特定手順を示した図である。
【図１９】図１９は、実施形態の検査システムが被検査体の検査を行う際に実行する一連の処理を示したフローチャートである。
【図２０】図２０は、実施形態の検査システムが実行する異常検出処理の一例としての白点検出処理の詳細を示したフローチャートである。
【図２１】図２１は、第２変形例の照明制御部が出力する縞パターンの切り替え例を示した図である。
【図２２】図２２は、第２変形例の照明制御部が、異常（欠陥）を含んだ被検査体の表面に縞パターンを照射した例を示した図である。
【図２３】図２３は、第２変形例において、ｙ方向に縞パターンを変化させた場合における、異常（欠陥）とスクリーン上の縞パターンの関係を示した図である。
【図２４】図２４は、第３変形例の照明制御部が照明装置に出力する縞パターンの例を示した図である。
【発明を実施するための形態】
【０００８】
＜実施形態＞
以下、実施形態の検査システムについて説明する。実施形態の検査システムは、被検査体を検査するために様々な構成を備えている。図１は、実施形態の検査システムの構成例を示した図である。図１に示されるように、実施形態の検査システムは、ＰＣ１００と、時間相関カメラ１１０と、照明装置１２０と、スクリーン１３０と、アーム１４０と、を備えている。
【０００９】
アーム１４０は、被検査体１５０を固定するために用いられ、ＰＣ１００からの制御に応じて、時間相関カメラ１１０が撮像可能な被検査体１５０の表面の位置と向きを変化させる。
【００１０】
照明装置１２０は、被検査体１５０に光を照射する装置であって、ＰＣ１００からの縞パターンに従って、照射する光の強度を領域単位で制御できる。さらに、照明装置１２０は、周期的な時間の遷移に従って当該領域単位の光の強度を制御できる。換言すれば、照明装置１２０は、光の強度の周期的な時間変化および空間変化を与えることができる。なお、具体的な光の強度の制御手法については後述する。
【００１１】
スクリーン１３０は、照明装置１２０から出力された光を拡散させた上で、被検査体１５０に対して面的に光を照射する。実施形態のスクリーン１３０は、照明装置１２０から入力された周期的な時間変化および空間変化が与えられた光を、面的に被検査体１５０に照射する。なお、照明装置１２０とスクリーン１３０との間には、集光用のフレネルレンズ等の光学系部品（図示されず）が設けられてもよい。
【００１２】
なお、実施形態は、照明装置１２０とスクリーン１３０とを組み合わせて、光強度の周期的な時間変化および空間変化を与える面的な照明部を構成する例について説明するが、実施形態の照明部は、このような組み合わせに制限されるものではない。実施形態では、たとえば、ＬＥＤを面的に配置したり、大型モニタを配置したりするなどして、照明部を構成してもよい。
【００１３】
図２は、実施形態の時間相関カメラ１１０の構成を示したブロック図である。時間相関カメラ１１０は、光学系２１０と、イメージセンサ２２０と、データバッファ２３０と、制御部２４０と、参照信号出力部２５０と、を備えている。
【００１４】
光学系２１０は、撮像レンズ等を含み、時間相関カメラ１１０の外部の被写体（被検査体１５０を含む）からの光束を透過し、その光束により形成される被写体の光学像を結像させる。
【００１５】
イメージセンサ２２０は、光学系２１０を介して入射された光の強弱を光強度信号として画素毎に高速に出力可能なセンサとする。
【００１６】
実施形態の光強度信号は、検査システムの照明装置１２０が被写体（被検査体１５０を含む）に対して光を照射し、当該被写体からの反射光を、イメージセンサ２２０が受け取ったものである。
【００１７】
イメージセンサ２２０は、たとえば従来のものと比べて高速に読み出し可能なセンサであり、行方向（ｘ方向）、列方向（ｙ方向）の２種類の方向に画素が配列された２次元平面状に構成されたものとする。そして、イメージセンサ２２０の各画素を、画素Ｐ（１，１），……，Ｐ（ｉ，ｊ），……，Ｐ（Ｘ，Ｙ）とする（なお、実施形態の画像サイズをＸ×Ｙとする。）。なお、イメージセンサ２２０の読み出し速度を制限するものではなく、従来と同様であってもよい。
【００１８】
イメージセンサ２２０は、光学系２１０によって透過された、被写体（被検査体１５０を含む）からの光束を受光して光電変換することで、被写体から反射された光の強弱を示した光強度信号（撮像信号）で構成される、２次元平面状のフレームを生成し、制御部２４０に出力する。実施形態のイメージセンサ２２０は、読み出し可能な単位時間毎に、当該フレームを出力する。
【００１９】
実施形態の制御部２４０は、プロセッサやメモリなどといった通常のコンピュータと同様のハードウェアを有し、メモリに格納されたソフトウェア（検査プログラム）をプロセッサにより実行することで、転送部２４１と、読出部２４２と、強度画像用重畳部２４３と、第１の乗算器２４４と、第１の相関画像用重畳部２４５と、第２の乗算器２４６と、第２の相関画像用重畳部２４７と、画像出力部２４８と、を実現する。なお、実施形態では、制御部２４０が有する機能的構成の一部または全部が、ＦＰＧＡやＡＳＩＣなどを利用した専用のハードウェア（回路）のみによって実現されてもよい。
【００２０】
転送部２４１は、イメージセンサ２２０から出力された、光強度信号で構成されたフレームを、データバッファ２３０に、時系列順に蓄積する。
【００２１】
データバッファ２３０は、イメージセンサ２２０から出力された、光強度信号で構成されたフレームを、時系列順に蓄積する。
【００２２】
図３は、実施形態の時間相関カメラ１１０で時系列順に蓄積されるフレームを表した概念図である。図３に示されるように、実施形態のデータバッファ２３０には、時刻ｔ（ｔ＝ｔ０，ｔ１，ｔ２，……，ｔｎ）毎の複数の光強度信号Ｇ（１，１，ｔ），……，Ｇ（ｉ，ｊ，ｔ），……，Ｇ（Ｘ，Ｙ，ｔ）の組み合わせで構成された複数のフレームＦｋ（ｋ＝１，２，……，ｎ）が、時系列順に蓄積される。なお、時刻ｔで生成される１枚のフレームは、光強度信号Ｇ（１，１，ｔ），……，Ｇ（ｉ，ｊ，ｔ），……，Ｇ（Ｘ，Ｙ，ｔ）で構成される。
【００２３】
実施形態の光強度信号（撮像信号）Ｇ（１，１，ｔ），……，Ｇ（ｉ，ｊ，ｔ），……，Ｇ（Ｘ，Ｙ，ｔ）には、フレームＦｋ（ｋ＝１，２，……，ｎ）を構成する各画素Ｐ（１，１），……，Ｐ（ｉ，ｊ），……，Ｐ（Ｘ，Ｙ）が対応づけられている。
【００２４】
イメージセンサ２２０から出力されるフレームは、光強度信号のみで構成されており、換言すればモノクロの画像データとも考えることができる。なお、実施形態は、解像度、感度、およびコスト等を考慮して、イメージセンサ２２０がモノクロの画像データを生成する例について説明するが、イメージセンサ２２０としてモノクロ用のイメージセンサに制限するものではなく、カラー用のイメージセンサを用いてもよい。
【００２５】
図２に戻り、実施形態の読出部２４２は、データバッファ２３０から、光強度信号Ｇ（１，１，ｔ），……，Ｇ（ｉ，ｊ，ｔ），……，Ｇ（Ｘ，Ｙ，ｔ）をフレーム単位で、時系列順に読み出して、第１の乗算器２４４と、第２の乗算器２４６と、強度画像用重畳部２４３と、に出力する。
【００２６】
実施形態の時間相関カメラ１１０は、読出部２４２の出力先毎に画像データを生成する。換言すれば、時間相間カメラ１１０は、３種類の画像データを生成する。
【００２７】
実施形態の時間相関カメラ１１０は、３種類の画像データとして、強度画像データと、２種類の時間相関画像データと、を生成する。なお、実施形態は、強度画像データと、２種類の時間相関画像データと、を生成することに制限されるものではなく、強度画像データを生成しない場合や、１種類又は３種類以上の時間相関画像データを生成する場合なども考えられる。
【００２８】
実施形態のイメージセンサ２２０は、上述したように単位時間毎に、光強度信号で構成されたフレームを出力している。しかしながら、通常の画像データを生成するためには、撮像に必要な露光時間分の光強度信号が必要になる。そこで、実施形態では、強度画像用重畳部２４３が、撮像に必要な露光時間分の複数のフレームを重畳して、強度画像データを生成する。なお、強度画像データの各画素値（光の強度を表す値）Ｇ（ｘ，ｙ）は、以下に示す式（１）から導き出すことができる。なお、露光時間は、ｔ０とｔｎの時間差とする。
【００２９】
【数１】
2019002761.tif 000003
【００３０】
これにより、従来のカメラの撮像と同様に、被写体（被検査体１５０を含む）が撮像された強度画像データが生成される。そして、強度画像用重畳部２４３は、生成した強度画像データを、画像出力部２４８に出力する。
【００３１】
時間相関画像データは、時間遷移に応じた光の強弱の変化を示す画像データである。つまり、実施形態では、時系列順のフレーム毎に、当該フレームに含まれる光強度信号に対して、時間遷移を示した参照信号を乗算し、参照信号と光強度信号との乗算結果である時間相関値で構成された、時間相関値フレームを生成し、複数の時間相関値フレームを重畳することで、時間相関画像データを生成する。
【００３２】
ところで、時間相関画像データを用いて、被検査体１５０の異常を検出するためには、イメージセンサ２２０に入力される光強度信号を、参照信号に同期させて変化させる必要がある。このため、実施形態の照明装置１２０は、上述したように、スクリーン１３０を介して周期的に時間変化および縞の空間的な移動を与えるような、面的な光の照射を行うように構成される。
【００３３】
実施形態では、２種類の時間相関画像データを生成する。参照信号は、時間遷移を表した信号であればよいが、実施形態では、複素正弦波ｅ-jωtを用いる。なお、角周波数ω、時刻ｔとする。参照信号を表す複素正弦波ｅ-jωtが、上述した露光時間（換言すれば強度画像データ、および時間相関画像データを生成するために必要な時間）の一周期と相関をとるように、角周波数ωが設定されるものとする。換言すれば、照明装置１２０およびスクリーン１３０等の照明部によって形成された面的かつ動的な光は、被検査体１５０の表面（反射面）の各位置で第１の周期（時間周期）での時間的な照射強度の変化を与えるとともに、表面に沿った少なくとも一方向に沿った第２の周期（空間周期）での空間的な照射強度の増減分布を与える。この面的な光は、表面で反射される際に、当該表面のスペック（法線ベクトルの分布等）に応じて複素変調される。時間相関カメラ１１０は、表面で複素変調された光を受光し、第１の周期の参照信号を用いて直交検波（直交復調）することにより、複素信号としての時間相関画像データを得る。このような複素信号としての時間相関画像データに基づく変復調により、表面の法線ベクトルの分布に対応した特徴を検出することができる。
【００３４】
複素正弦波ｅ-jωtは、ｅ-jωt＝ｃｏｓωｔ−ｊ・ｓｉｎωｔと表すこともできる。従って、時間相関画像データの各画素値Ｃ（ｘ，ｙ）は、以下に示す式（２）から導き出すことができる。
【００３５】
【数２】
2019002761.tif 000004
【００３６】
実施形態では、式（２）において、実部を表す画素値Ｃ１（ｘ，ｙ）と、虚部を表す画素値Ｃ２（ｘ，ｙ）と、に分けて、２種類の時間相関画像データを生成する。
【００３７】
このため、参照信号出力部２５０は、第１の乗算器２４４と、第２の乗算器２４６と、に対してそれぞれ異なる参照信号を生成し、出力する。実施形態の参照信号出力部２５０は、複素正弦波ｅ-jωtの実部に対応する第１の参照信号ｃｏｓωｔを第１の乗算器２４４に出力し、複素正弦波ｅ-jωtの虚部に対応する第２の参照信号ｓｉｎωｔを第２の乗算器２４６に出力する。このように、実施形態の参照信号出力部２５０は、一例として、互いにヒルベルト変換対をなす正弦波および余弦波の時間関数として表される２種類の参照信号を出力する。しかしながら、参照信号は、ここで説明する例に制限されるものではなく、時間関数のような、時間遷移に応じて変化する参照信号であればよい。
【００３８】
そして、第１の乗算器２４４は、読出部２４２から入力されたフレーム単位で、当該フレームの光強度信号毎に、参照信号出力部２５０から入力された複素正弦波ｅ-jωtの実部ｃｏｓωｔを乗算する。
【００３９】
第１の相関画像用重畳部２４５は、撮像に必要な露光時間分の複数のフレームについて、第１の乗算器２４４の乗算結果を画素毎に重畳する処理を行う。これにより、第１の時間相関画像データの各画素値Ｃ１（ｘ，ｙ）が、以下の式（３）から導出される。
【００４０】
【数３】
2019002761.tif 000005
【００４１】
そして、第２の乗算器２４６は、読出部２４２から入力されたフレームの光強度信号に対して、参照信号出力部２５０から入力された複素正弦波ｅ-jωtの虚部ｓｉｎωｔを乗算する。
【００４２】
第２の相関画像用重畳部２４７は、撮像に必要な露光時間分の複数のフレームについて、第２の乗算器２４６の乗算結果を画素毎に重畳する処理を行う。これにより、第２の時間相関画像データの各画素値Ｃ２（ｘ，ｙ）が、以下に示す式（４）から導出される。
【００４３】
【数４】
2019002761.tif 000006
【００４４】
上述した処理を行うことで、２種類の時間相関画像データ、換言すれば２自由度を有する時間相関画像データを生成できる。
【００４５】
また、実施形態は、参照信号の種類を制限するものでない。たとえば、実施形態では、複素正弦波ｅ-jωtの実部と虚部の２種類の時間相関画像データを生成するが、光の振幅と、光の位相と、による２種類の画像データを生成してもよい。
【００４６】
なお、実施形態の時間相関カメラ１１０は、時間相関画像データとして、複数系統分生成可能とする。これにより、たとえば複数種類の幅の縞が組み合わされた光が照射された際に、上述した実部と虚部とによる２種類の時間相関画像データを、縞の幅毎に生成可能とする。このために、時間相関カメラ１１０は、２個の乗算器と２個の相関画像用重畳部とからなる組み合わせを、複数系統分備えるとともに、参照信号出力部２５０は、系統毎に適した角周波数ωによる参照信号を出力可能とする。
【００４７】
そして、画像出力部２４８が、２種類の時間相関画像データと、強度画像データと、をＰＣ１００に出力する。これにより、ＰＣ１００が、２種類の時間相関画像データと、強度画像データと、を用いて、被検査体１５０の異常を検出する。そのためには、被検査体１５０に対して光を照射する必要がある。
【００４８】
実施形態の照明装置１２０は、高速に移動する縞パターンを照射する。図４は、実施形態の照明装置１２０が照射する縞パターンの一例を示した図である。図４に示す例では、１周期分の縞幅がＷに設定された縞パターンをｘ方向にスクロール（移動）させている例とする。白い領域が縞に対応した明領域、黒い領域が縞と縞との間に対応した間隔領域（暗領域）である。
【００４９】
実施形態では、時間相関カメラ１１０が強度画像データおよび時間相関画像データを撮像する露光時間で、照明装置１２０が照射する縞パターンが一周期分移動する。これにより、照明装置１２０は、光の強度の縞パターンの空間的な移動により光の強度の周期的な時間変化を与える。実施形態では、図４の縞パターンが一周期分移動する時間を、露光時間と対応させることで、時間相関画像データの各画素には、少なくとも、縞パターン一周期分の光の強度信号に関する情報が埋め込まれる。
【００５０】
図４に示されるように、実施形態では、照明装置１２０が矩形波に基づく縞パターンを照射する例について説明するが、矩形波以外を用いてもよい。実施形態では、照明装置１２０がスクリーン１３０を介して照射されることで、矩形波の明暗の境界領域をぼかすことができる。
【００５１】
実施形態では、照明装置１２０が照射する縞パターンを、Ａ（１＋ｃｏｓ（ωｔ＋ｋｘ））と表す。すなわち、縞パターンには、複数の縞が反復的に（周期的に）含まれる。なお、被検査体１５０に照射される光の強度は０〜２Ａの間で調整可能とし、光の位相ｋｘとする。ｋは、縞の波数である。ｘは、位相が変化する方向である。
【００５２】
そして、フレームの各画素の光強度信号ｆ（ｘ，ｙ，ｔ）の基本周波数成分は、以下に示す式（５）として表すことができる。式（５）で示されるように、ｘ方向で縞の明暗が変化する。
【００５３】
ｆ（ｘ，ｙ，ｔ）＝Ａ（１＋ｃｏｓ（ωｔ＋ｋｘ））
＝Ａ＋Ａ／２｛ｅj(ωt+kx)＋ｅ-j(ωt+kx)｝  …（５）
【００５４】
式（５）で示されるように、照明装置１２０が照射する縞パターンの強度信号は、複素数として考えることができる。
【００５５】
そして、イメージセンサ２２０には、当該照明装置１２０からの光が被写体（被検査体１５０を含む）から反射して入力される。
【００５６】
したがって、イメージセンサ２２０に入力される光強度信号Ｇ（ｘ，ｙ，ｔ）を、照明装置１２０が照射された際のフレームの各画素の光強度信号ｆ（ｘ，ｙ，ｔ）とすることができる。そこで、強度画像データを導出するための式（１）に式（５）を代入すると、以下に示す式（６）を導出できる。なお、位相をｋｘとする。
【００５７】
【数５】
2019002761.tif 000007
【００５８】
式（６）から、強度画像データの各画素には、露光時間Ｔに、照明装置１２０が出力している光の強度の中間値Ａを乗じた値が入力されていることが確認できる。さらに、時間相関画像データを導出するための式（２）に式（５）を代入すると、以下に示す式（７）を導出できる。なお、ＡＴ／２を振幅とし、ｋｘを位相とする。
【００５９】
【数６】
2019002761.tif 000008
【００６０】
これにより、式（７）で示された複素数で示された時間相関画像データは、上述した２種類の時間相関画像データと置き換えることができる。つまり、上述した実部と虚部とで構成される時間相関画像データには、被検査体１５０に照射された光強度変化における位相変化と振幅変化とが含まれている。換言すれば、実施形態のＰＣ１００は、２種類の時間相関画像データに基づいて、照明装置１２０から照射された光の位相変化と、光の振幅変化と、を検出できる。
【００６１】
そこで、実施形態のＰＣ１００は、時間相関画像データおよび強度画像データに基づいて、画素毎に入る光の位相変化を表した位相画像と、画素毎に入る光の振幅を表した振幅画像と、を生成する。また、ＰＣ１００は、強度画像データに基づいて、画素毎に入る光の強度を表した強度画像を生成する。そして、ＰＣ１００は、位相画像と、振幅画像と、強度画像と、の少なくともいずれかに基づいて、被検査体１５０の異常を検出する。
【００６２】
ところで、被検査体１５０の表面形状に凹凸に基づく異常が生じている場合、被検査体１５０の表面の法線ベクトルの分布には、異常に対応した変化が生じている。また、被検査体１５０の表面に光を吸収するような異常が生じている場合、反射した光の強度に変化が生じる。法線ベクトルの分布の変化は、光の位相変化および振幅変化のうち少なくともいずれか一つとして検出される。そこで、実施形態では、時間相関画像データを用いて、法線ベクトルの分布の変化に対応した、光の位相変化および振幅変化のうち少なくともいずれか一つを検出する。これにより、表面形状の異常が存在する可能性がある領域を特定することが可能となる。以下、被検査体１５０の異常、法線ベクトル、および光の位相変化又は振幅変化の関係について例を挙げて説明する。
【００６３】
図５は、実施形態の時間相関カメラ１１０による、被検査体の異常の第１の検出例を示した図である。図５に示される例では、被検査体５００に突形状の異常５０１がある状況とする。当該状況においては、異常５０１の点５０２の近傍領域においては、法線ベクトル５２１、５２２、５２３が異なる方向を向いていることを確認できる。そして、当該法線ベクトル５２１、５２２、５２３が異なる方向を向いていることで、異常５０１から反射した光に拡散（たとえば、光５１１、５１２、５１３）が生じ、時間相関カメラ１１０のイメージセンサ２２０の任意の画素５３１に入る縞パターンの幅５０３が広くなる。
【００６４】
図６は、図５に示される異常５０１が被検査体５００にある場合に、当該異常に応じて変化する、光の振幅の例を表した図である。図６に示される例では、光の振幅を実部（Ｒｅ）と虚部（Ｉｍ）とに分けて２次元平面上に表している。図６では、図５の光５１１、５１２、５１３に対応する光の振幅６１１、６１２、６１３として示している。そして、光の振幅６１１、６１２、６１３は互いに打ち消し合い、イメージセンサ２２０の当該任意の画素５３１には、振幅６２１の光が入射する。
【００６５】
したがって、図６に示される状況では、被検査体５００の異常５０１が撮像された領域で、局所的に振幅が小さいことが確認できる。換言すれば、振幅変化を示した振幅画像において、周囲と比べて暗くなっている領域がある場合に、当該領域で局所的に光同士の振幅の打ち消し合いが生じていると推測できるため、当該領域に対応する被検査体５００の位置で、異常５０１が生じていると判断できる。なお、ここでは、突形状の異常５０１に対応する領域で、振幅画像が局所的に暗くなる場合を例示したが、キズなどの凹み状の異常に対応する領域でも、振幅画像は局所的に暗くなる。
【００６６】
実施形態の検査システムは、図５の異常５０１のように傾きが急峻に変化しているものに限らず、緩やかに変化する異常も検出できる。図７は、実施形態の時間相関カメラ１１０による、被検査体の異常の第２の検出例を示した図である。図７には、平面状（換言すれば法線が平行）の正常な表面を有した被検査体７００に緩やかな勾配７０１が生じている状況が示されている。このような状況においては、勾配７０１上の法線ベクトル７２１、７２２、７２３も同様に緩やかに変化する。したがって、イメージセンサ２２０に入力する光７１１、７１２、７１３も少しずつずれていく。図７に示される例では、緩やかな勾配７０１のために光の振幅の打ち消し合いは生じないため、図５および図６に示される例と異なり、光の振幅はほとんど変化しない。しかしながら、本来スクリーン１３０から投影された光が、そのままイメージセンサ２２０に平行に入るはずが、緩やかな勾配７０１のために、スクリーン１３０から投影された光が平行の状態でイメージセンサ２２０に入らないために、光に位相変化が生じる。従って、光の位相変化について、周囲等との違いを検出することで、図７に示したような緩やかな勾配７０１による異常を検出できる。
【００６７】
また、被検査体の表面形状（換言すれば、被検査体の法線ベクトルの分布）以外にも異常が生じる場合がある。図８は、実施形態の時間相関カメラ１１０による、被検査体の異常の第３の検出例を示した図である。図８に示される例では、被検査体８００に汚れ８０１が付着しているため、照明装置１２０から照射された光が吸収あるいは拡散反射し、時間相関カメラ１１０の、汚れ８０１を撮像している任意の画素領域では光の強度がほとんど変化しない例を表している。換言すれば、汚れ８０１を撮像している任意の画素領域では、光の強度変化が打ち消し合ってキャンセルされ、ほとんど直流的な明るさになる例を示している。
【００６８】
このような場合、汚れ８０１を撮像している画素領域においては、光の振幅がほとんどないため、振幅画像を表示した際に、周囲と比べて暗くなる領域が生じる。したがって、当該領域に対応する被検査体８００の位置に、汚れ８０１があることを推定できる。
【００６９】
このように、実施形態では、時間相関画像データに基づいて、光の振幅の変化と、光の位相の変化と、を検出することで、被検査体における、異常が存在する可能性のある領域を特定することができる。
【００７０】
図１に戻り、ＰＣ１００について説明する。ＰＣ１００は、検査システム全体の制御を行う。ＰＣ１００は、アーム制御部１０１と、照明制御部１０２と、制御部１０３と、を備える。
【００７１】
アーム制御部１０１は、被検査体１５０の時間相関カメラ１１０による撮像対象となる表面を変更するために、アーム１４０を制御する。実施形態では、ＰＣ１００において、被検査体１５０の撮像対象となる表面を複数設定しておく。当該設定に従い、アーム制御部１０１は、時間相関カメラ１１０が被検査体１５０の撮像を終了する毎に、時間相関カメラ１１０が設定された表面を撮像できるように、アーム１４０を制御して被検査体１５０を移動させる。なお、実施形態によるアーム１４０の移動方法は、撮像が終了する毎にアーム１４０を移動させ、撮像が開始する前に停止させるのを繰り返すことに制限されるものではなく、継続的にアーム１４０を駆動させることも含まれ得る。なお、アーム１４０は、搬送部、移動部、位置変更部、姿勢変更部などとも称されうる。
【００７２】
照明制御部１０２は、被検査体１５０を検査するために照明装置１２０が照射する縞パターンを出力する。実施形態の照明制御部１０２は、少なくとも３枚以上の縞パターンを、照明装置１２０に受け渡し、当該縞パターンを露光時間中に切り替えて表示するように照明装置１２０に指示する。
【００７３】
図９は、照明制御部１０２が照明装置１２０に出力する縞パターンの例を示した図である。図９（Ｂ）に示す矩形波に従って、図９（Ａ）に示す黒領域と白領域とが設定された縞パターンが出力されるように、照明制御部１０２が制御を行う。
【００７４】
実施形態で照射する縞パターン毎の縞の間隔（縞幅）は、検出対象となる異常（欠陥）の大きさに応じて設定されるものとして、ここでは詳しい説明を省略する。
【００７５】
また、実施形態では、縞パターンを出力するための矩形波の角周波数ωが、参照信号の角周波数ωと一致するものとする。
【００７６】
図９に示されるように、照明制御部１０２が出力する縞パターンは、矩形波として示すことができるが、スクリーン１３０を介することで、縞パターンの境界領域をぼかす、すなわち、縞パターンにおける明領域（縞の領域）と暗領域（間隔の領域）との境界での光の強度変化を緩やかにする（鈍らせる）ことで、正弦波に近似させることができる。図１０は、スクリーン１３０を介した後の縞パターンを表した波の形状の例を示した図である。図１０に示されるように波の形状が、正弦波に近づくことで、計測精度を向上させることができる。また、縞に明度が多段階に変化するグレー領域を追加したり、グラデーションを与えたりしてもよい。また、カラーの縞を含む縞パターンを用いてもよい。
【００７７】
図１に戻り、制御部１０３は、画像生成部１０４と、フィルタ処理部１０５と、異常検出部１０６と、を備えている。また、異常検出部１０６は、後述する白点不良を検出するための白点不良検出部１０７を備えている。なお、上述した制御部２４０と同様、実施形態では、制御部１０３が有する機能的構成が、ハードウェアとソフトウェアとの協働によって実現されてもよいし、ハードウェアのみによって実現されてもよい。
【００７８】
画像生成部１０４は、時間相関カメラ１１０から入力される、強度画像データや時間相関画像データなどといった画像データに基づいて、振幅画像、位相画像、および強度画像を生成する。前述したように、振幅画像とは、画素毎に入る光の振幅を表した画像であり、位相画像とは、画素毎に入る光の位相を表した画像であり、強度画像とは、画素毎に入る光の強度を表した画像である。
【００７９】
なお、実施形態において、画像生成部１０４は、振幅成分と位相成分とで分けた極形式の複素数で示される時間相関画像データ（複素時間相関画像データと称されうる）ではなく、当該複素数を実部と虚部とで分けた２種類の時間相関画像データを、時間相関カメラ１１０から受け取るものとする。
【００８０】
実施形態は、振幅画像の算出手法を制限するものではないが、たとえば、画像生成部１０４は、２種類の時間相関画像データの画素値Ｃ１（ｘ，ｙ）およびＣ２（ｘ，ｙ）から、以下に示す式（８）を用いて、振幅画像の各画素値Ｆ（ｘ，ｙ）を導き出すことが可能である。
【００８１】
【数７】
2019002761.tif 000009
【００８２】
また、画像生成部１０４は、画素値Ｃ１（ｘ，ｙ）およびＣ２（ｘ，ｙ）から、以下に示す式（９）を用いて、位相画像の各画素値Ｐ（ｘ，ｙ）を導き出すことが可能である。
【００８３】
【数８】
2019002761.tif 000010
【００８４】
式（９）から分かるように、位相画像の各画素値は、−π〜πの範囲に折りたたまれる。したがって、位相画像の各画素値は、−πからπに、またはπから−πに周期的に不連続に変化し得る（位相ジャンプ）。これにより、検査対象面が、凹凸などの局所的な異常（欠陥）を含まない平坦面で構成されている場合でも、当該平坦面を撮像した位相画像上には、位相ジャンプの影響による周期的なエッジが表れる。
【００８５】
なお、画像生成部１０４が、時間相関カメラ１１０から入力される強度画像データに基づいて強度画像を生成することも可能であることは言うまでもないため、ここでは、強度画像の各画素値の導出方法についての説明を省略する。
【００８６】
異常検出部１０６は、画像生成部１０４により生成された振幅画像、位相画像、および強度画像に基づいて、被検査体１５０の異常を検出する。なお、ここで用いられうる異常検出手法のいくつかの例については、前述した通りである。
【００８７】
ところで、検査対象がメッキ製品である場合、メッキ製品特有の検出すべき異常として、白点不良がある。白点不良とは、メッキ製品の表面に表れる白い斑点状のシミのような異常である。
【００８８】
白点不良は、たとえばキズなどと異なり、検査対象の表面の凹凸の変化としてほとんど表れない異常であるため、従来の異常検出手法では、白点不良を検出することが困難であった。
【００８９】
図１１は、実施形態の検出対象である白点不良の特性を説明するための図である。より具体的に、図１１は、実際に白点不良Ｘが存在する被検査体１５０を時間相関カメラ１１０によって撮像した結果に基づく強度画像１１０１、振幅画像１１０２、および位相画像１１０３の事例を対比して示した図である。
【００９０】
図１１において、点線で囲んだ領域Ｒは、被検査体１５０の白点不良Ｘが写っている（あるいは写っているはずの）領域を表している。図１１に示された強度画像１１０１、振幅画像１１０２、および位相画像１１０３の各々の領域Ｒから分かるように、白点不良Ｘは、振幅画像１１０２上の変化としては僅かに表れるが、位相画像１１０３および強度画像１１０１上の変化としてはほとんど表れない。
【００９１】
すなわち、白点不良Ｘは、高さを持たない異常であるため、白点不良Ｘが存在する領域では、上述したような凹凸に基づく光強度の位相変化が発生しない。したがって、白点不良Ｘを位相画像１１０３上で観察することは非常に困難である。
【００９２】
一方、メッキ製品では、通常、表面で光の鏡面的な反射が発生するが、白点不良Ｘが存在する領域では、光の鏡面的な反射が相対的に減少し、拡散的な反射が相対的に増加する。したがって、白点不良Ｘが存在する領域では、光強度の振幅が相対的に小さくなるので、白点不良Ｘが存在する領域は、振幅画像１１０２上で相対的に暗くなる。ただし、白点不良Ｘに起因する光の反射具合の変化は、非常に緩やかなものであるため、白点不良Ｘに基づく振幅画像１１０２の画素値（振幅値）の変化も、非常に緩やかなものである。
【００９３】
なお、白点不良Ｘに起因する光の反射具合の変化は、強度画像１１０１上の変化としても表れている可能性はある。しかしながら、光の反射具合の変化の影響は、画像の性質上、強度画像１１０１よりも、振幅画像１１０２の方に表れやすいので、通常、白点不良Ｘに基づく変化を強度画像１１０１上で観察することは困難である。
【００９４】
このように、一般論として、白点不良は、位相画像および強度画像上の変化としては観察不可能であり、振幅画像上の変化としてのみ観察可能であるという特性を有する。しかしながら、白点不良に基づく振幅画像の画素値（振幅値）の変化は、非常に緩やかなものであるため、従来の異常検出手法では、振幅画像から白点不良を検出することが困難であった。
【００９５】
そこで、実施形態は、以下で説明する構成により、白点不良を振幅画像上で強調し、振幅画像から白点不良を容易に検出することを可能にする。
【００９６】
すなわち、図１に戻り、フィルタ処理部１０５は、振幅画像に対して所定のフィルタサイズのラプラシアンフィルタを用いたラプラシアン処理（第１フィルタ処理）を実行する。ラプラシアンフィルタは、ある画素とその周囲の画素との画素値の差分の変化量が極端に変化する部分を抽出するための２次微分フィルタである。したがって、ラプラシアン処理によれば、振幅画像上で白点不良に基づく変化が表れる領域を強調することが可能である。
【００９７】
ただし、前述したように、白点不良に基づく振幅画像の画素値（振幅値）の変化は、非常に緩やかなものである。このような緩やかな変化を抽出するためには、たとえば３×３の狭い領域の画素値のみを考慮するのではなく、より広い領域の画素値を考慮して、２次微分の値を求める必要がある。特に、白点不良は、ある程度の面積を持った斑点状のシミのような異常であるので、白点不良が写った領域（画素）を含んだより広い領域の画素値を考慮するためには、ラプラシアンフィルタのフィルタサイズを大きめに設定する必要がある。しかしながら、フィルタサイズを大きくし過ぎると、計算の負荷が増大するため、計算の負荷の観点では、フィルタサイズは小さめに設定する必要がある。
【００９８】
そこで、実施形態では、ラプラシアンフィルタのフィルタサイズが、振幅画像に写る白点不良をカバーすることが可能な程度の、大き過ぎも小さ過ぎもしない適度な大きさに設定される。たとえば、実施形態では、以下に示すような、９×９のラプラシアンフィルタが用いられる。
【００９９】
図１２は、実施形態のラプラシアンフィルタの具体例を示した図である。図１２に示されるように、実施形態では、９×９の一般的なラプラシアンフィルタ１２０１が用いられる。
【０１００】
図１１に示された振幅画像１１０２に、図１２に示されたラプラシアンフィルタ１２０１を用いたラプラシアン処理を実行すると、次のような画像が得られる。なお、以下では、ラプラシアン処理後の振幅画像を、ラプラシアン画像と記載する。
【０１０１】
図１３は、実施形態のラプラシアン画像の具体例を示した図である。なお、図１３において、点線で囲んだ領域Ｒは、図１１に示された領域Ｒと対応している。
【０１０２】
図１１に示される振幅画像１１０２と、図１３に示されるラプラシアン画像１３０１と、を比較すれば分かるように、ラプラシアン画像１３０１では、領域Ｒ内の白点不良Ｘが振幅画像１１０２よりも明確に写っている。したがって、図１２に示されるラプラシアンフィルタ１２０１によれば、振幅画像１１０２の白点不良Ｘをより強調することが可能である。
【０１０３】
ここで、比較例として、実施形態よりも小さいフィルタサイズのラプラシアンフィルタを用いる例について説明する。
【０１０４】
図１４は、比較例のラプラシアンフィルタの具体例を示した図である。図１４に示されるように、比較例では、３×３のラプラシアンフィルタ１４０１を使用することを想定する。このラプラシアンフィルタ１４０１を、図１１に示された振幅画像１１０２に適用すると、次のようなラプラシアン画像が得られる。
【０１０５】
図１５は、比較例のラプラシアン画像の具体例を示した図である。なお、図１５において、点線で囲んだ領域Ｒは、図１１および図１３に示された領域Ｒと対応している。
【０１０６】
比較例のラプラシアンフィルタ１４０１が、実施形態のラプラシアンフィルタ１２０１と同等の効果を有していれば、図１５に示される比較例のラプラシアン画像１５０１にも、白点不良Ｘが明確に写っているはずである。しかしながら、図１５に示される比較例のラプラシアン画像１５０１と、図１３に示される実施形態のラプラシアン画像１３０１と、を比較すれば分かるように、比較例のラプラシアン画像１５０１には、実施形態のラプラシアン画像１３０１程には、白点不良Ｘが明確に写っていない。
【０１０７】
比較例において白点不良Ｘが実施形態程に明確化されない理由は、比較例のラプラシアンフィルタ１４０１のフィルタサイズが、振幅画像１１０２に写る白点不良Ｘに対して小さいためだと考えられる。すなわち、比較例のラプラシアンフィルタ１４０１は、３×３の狭い領域の画素値のみを考慮して２次微分値を算出するものであり、白点不良Ｘに基づく振幅画像１１０２の画素値（振幅値）の緩やかな変化を十分に抽出することができないためだと考えられる。
【０１０８】
これに対して、実施形態のラプラシアンフィルタ１２０１は、比較例のラプラシアンフィルタ１４０１と異なり、白点不良Ｘに対してフィルタサイズが十分に大きい。したがって、実施形態のラプラシアンフィルタ１２０１によれば、白点不良Ｘに基づく振幅画像１１０２の画素値（振幅値）の緩やかな変化を十分に抽出し、白点不良Ｘが明確化されたラプラシアン画像１３０１を得ることが可能である。
【０１０９】
図１に戻り、白点不良検出部１０７は、ラプラシアンフィルタ１２０１を用いたラプラシアン処理後の振幅画像１１０２であるラプラシアン画像１３０１に基づいて、ラプラシアンフィルタ１２０１のフィルタサイズに応じた大きさの白点不良Ｘを検出する。たとえば、白点不良検出部１０７は、ラプラシアン画像１３０１に対して閾値処理などを実行することで、白点不良Ｘに対応した領域を抽出する（詳細は後述する）。
【０１１０】
ところで、実施形態では、ラプラシアン画像１３０１の他にも、白点不良Ｘが明確化された画像をさらに取得することができれば、それら２種類の画像を考慮して、白点不良Ｘをより正確に検出することが可能になるので、有意義である。
【０１１１】
そこで、図１に戻り、実施形態のフィルタ処理部１０５は、振幅画像１１０２に対して、以下に説明するような１次微分フィルタを用いた１次微分処理（第２フィルタ処理）を実行する。前述したラプラシアンフィルタと同様、１次微分フィルタも、画像の中にある領域の境界（エッジ）を検出するために一般的に用いられるフィルタである。したがって、１次微分処理によっても、ラプラシアン処理と同様、振幅画像上で白点不良に基づく変化が表れる領域を強調することが可能である。
【０１１２】
図１６は、実施形態の１次微分フィルタの具体例を示した図である。図１６に示されるように、実施形態では、ｘ方向の１次微分に対応した１次微分フィルタ１６０１と、ｘ方向と直交するｙ方向の１次微分に対応した１次微分フィルタ１６０２と、の２種類のフィルタが使用される。なお、図１６において、ｋ１およびｋ２は、適宜設定されるフィルタ係数である。
【０１１３】
実施形態では、１次微分フィルタ１６０１に基づいて算出されるｘ方向の１次微分値と、１次微分フィルタ１６０２に基づいて算出されるｙ方向の１次微分値と、の二乗和の平方根が、以下に示す微分画像の画素値として採用される。
【０１１４】
図１７は、実施形態の微分画像の具体例を示した図である。なお、図１７において、点線で囲んだ領域Ｒは、図１１および図１３に示された領域Ｒと対応している。図１７に示されるように、微分画像１７０１では、領域Ｒ内の白点不良Ｘの輪郭が明確化されている。したがって、図１６に示される１次微分フィルタ１６０１および１６０２によれば、振幅画像１１０２の白点不良Ｘをより強調することが可能である。
【０１１５】
このように、実施形態では、ラプラシアン画像および微分画像といった、白点不良が明確化された２種類の画像が得られる。白点不良検出部１０７は、これら２種類の画像に基づいて、以下に説明するような手順で、白点不良Ｘを検出（特定）する。
【０１１６】
図１８は、実施形態における白点不良の特定手順を示した図である。
【０１１７】
図１８の（Ａ）に示されるように、実施形態の白点不良検出部１０７は、まず、ラプラシアン画像に第１閾値を用いた第１閾値処理を実行することで、第１領域Ａ１（斜線が付された領域参照）を抽出する。そして、図１８の（Ｂ）に示されるように、白点不良検出部１０７は、第１領域Ａ１を所定回数膨張させることで、膨張領域Ａ１ａを得る。
【０１１８】
一方、図１８の（Ｃ）に示されるように、白点不良検出部１０７は、微分画像のうち上記の膨張領域Ａ１ａに対応した領域に対して第２閾値を用いた第２閾値処理を実行することで、第２領域Ａ２（斜線が付されたドーナツ状の領域参照）を抽出する。そして、図１８の（Ｄ）に示されるように、白点不良検出部１０７は、第１領域Ａ１と第２領域Ａ２との論理和に対応した領域Ａ０を特定する。
【０１１９】
ここで、前述したラプラシアン画像および微分画像の特性から、第１領域Ａ１は、ある画素とその周囲の画素との画素値（振幅値）の差分の変化量が相対的に大きい領域、つまり白点不良を含んだ領域に対応し、第２領域Ａ２は、ある画素とその周囲の画素との画素値（振幅値）の差分が相対的に大きい領域、つまり白点不良とその周囲との境界（エッジ）を表す領域に対応する、と言える。このため、第１領域Ａ１と第２領域Ａ２との論理和に対応した領域Ａ０は、白点不良が存在する領域だと言える。
【０１２０】
したがって、実施形態の白点不良検出部１０７は、ラプラシアン画像に第１閾値を用いた第１閾値処理を実行することで抽出した第１領域Ａ１と、微分画像のうち膨張領域Ａ１ａに対応した領域に第２閾値を用いた第２閾値処理を実行することで抽出した第２領域Ａ２と、の論理和に対応した領域Ａ０を、白点不良として検出する。
【０１２１】
なお、図１８に示される例において、白点不良として検出される領域Ａ０（＝第１領域Ａ１と第２領域Ａ２との論理和）は、第２領域Ａ２に対して穴埋め処理（クロージング処理）を施した領域と一致する。このため、実施形態では、第２領域Ａ２に対して穴埋め処理を施した領域を、白点不良として検出してもよい。
【０１２２】
以下、実施形態において実行される処理について説明する。
【０１２３】
図１９は、実施形態の検査システムが被検査体１５０の検査を行う際に実行する一連の処理を示したフローチャートである。以下では、被検査体１５０は、既にアーム１４０に固定された状態で、検査の初期位置に配置されているものとする。
【０１２４】
図１９に示されるように、実施形態のＰＣ１００は、まず、照明装置１２０に対して、被検査体を検査するための縞パターンを出力する（Ｓ１９０１）。
【０１２５】
照明装置１２０は、ＰＣ１００から入力された縞パターンを格納する（Ｓ１９２１）。そして、照明装置１２０は、格納された縞パターンを、時間遷移に従って変化するように表示する（Ｓ１９２２）。なお、照明装置１２０が表示を開始する条件は、縞パターンが格納されることに制限するものではなく、たとえば検査者が照明装置１２０に対して開始操作を行ったことであってもよい。
【０１２６】
そして、ＰＣ１００の制御部１０３は、時間相関カメラ１１０に対して、撮像開始指示を送信する（Ｓ１９０２）。
【０１２７】
次に、時間相関カメラ１１０は、送信されてきた撮像開始指示に従って、被検査体１５０および当該被検査体１５０の周囲を含む領域について撮像を開始する（Ｓ１９１１）。そして、時間相関カメラ１１０の制御部２４０は、強度画像データと、時間相関画像データと、を生成する（Ｓ１９１２）。そして、時間相関カメラ１１０の制御部２４０は、強度画像データと、時間相関画像データと、をＰＣ１００に出力する（Ｓ１９１３）。
【０１２８】
ＰＣ１００の制御部１０３は、強度画像データと、時間相関画像データと、を受け取る（Ｓ１９０３）。そして、画像生成部１０４は、受け取った強度画像データおよび時間相関画像データから、振幅画像を生成する（Ｓ１９０４）。なお、ここでは、説明の便宜上、振幅画像以外の画像が生成される例について説明を省略するが、実施形態では、Ｓ１９０４において、振幅画像のみならず、位相画像および強度画像も生成されうる。
【０１２９】
異常検出部１０６は、Ｓ１９０４で生成された振幅画像に基づいて、被検査体１５０の異常を検出する（Ｓ１９０５）。このＳ１９０５では、様々な異常を検出するための様々な異常検出処理が実行されうるが、以下では、異常検出処理の一例として、被検査体１５０に存在する白点不良を検出するための白点検出処理が実行される例について説明する。
【０１３０】
図２０は、実施形態の検査システムが実行する異常検出処理の一例としての白点検出処理の詳細を示したフローチャートである。
【０１３１】
図２０に示されるように、白点検出処理では、まず、フィルタ処理部１０５は、Ｓ１９０４で生成された振幅画像に、想定される白点不良の大きさに対応したフィルタサイズのラプラシアンフィルタを用いたラプラシアン処理を実行する（Ｓ２００１）。このＳ２００１では、たとえば図１２に示されるような、９×９のラプラシアンフィルタ１２０１が用いられる。
【０１３２】
そして、白点不良検出部１０７は、ラプラシアン処理後のラプラシアン画像に第１閾値を用いた第１閾値処理を実行することで、ラプラシアン画像から第１領域を抽出する（Ｓ２００２）。
【０１３３】
一方、フィルタ処理部１０５は、Ｓ１９０４で生成された振幅画像に、１次微分フィルタを用いた１次微分処理を実行する（Ｓ２００３）。このＳ２００３では、たとえば図１６に示されるような、ｘ方向およびｙ方向にそれぞれ対応した２種類の１次微分フィルタ１６０１および１６０２が用いられる。
【０１３４】
そして、白点不良検出部１０７は、１次微分処理後の微分画像のうちＳ２００２で抽出された第１領域を所定回数膨張させた膨張領域に対応する領域に第２閾値を用いた第２閾値処理を実行することで、第２領域を抽出する（Ｓ２００４）。
【０１３５】
そして、白点不良検出部１０７は、Ｓ２００２で抽出された第１領域と、Ｓ２００４で抽出された第２領域と、の論理和に対応した領域を、白点不良が存在する領域として検出（特定）する（Ｓ２００５）。そして、処理が終了する。
【０１３６】
図２０のＳ２００５の処理が終了すると、図１９のＳ１９０５の異常検出処理が終了し、Ｓ１９０６に処理が移行する。そして、制御部１０３は、Ｓ１９０５における検出結果、つまり白点不良の検出結果を出力する（Ｓ１９０６）。
【０１３７】
なお、白点不良の検出結果は、たとえば、ＰＣ１００が備える（図示しない）表示装置に出力される。具体的な出力方法としては、たとえば、振幅画像を表示するとともに、当該振幅画像のうち、白点不良として検出された領域を、検査者が異常を認識できるように装飾表示する方法などが考えられる。なお、実施形態では、検出結果を視覚的に出力することに限らず、検出結果を音声などにより出力してもよい。
【０１３８】
検出結果の出力が終了すると、制御部１０３は、被検査体１５０の検査が終了したか否かを判定する（Ｓ１９０７）。
【０１３９】
被検査体１５０の検査が終了していないと判定された場合（Ｓ１９０７：Ｎｏ）、アーム制御部１０１は、次の検査対象となる被検査体１５０の表面が時間相関カメラ１１０で撮像できるように、予め定められた設定にしたがってアーム１４０の移動制御を行う（Ｓ１９０８）。そして、アーム１４０の移動制御が終了すると、制御部１０３は、再び時間相関カメラ１１０に対して、撮像開始指示を送信する（Ｓ１９０２）。
【０１４０】
一方、被検査体１５０の検査が終了したと判定された場合（Ｓ１９０７：Ｙｅｓ）、制御部１０３は、検査が終了した旨を通知するための終了指示を時間相関カメラ１１０に対して出力する（Ｓ１９０９）。これにより、ＰＣ１００が実行する一連の処理が終了する。
【０１４１】
一方、時間相関カメラ１１０は、終了指示を受け付けたか否かを判定する（Ｓ１９１４）。終了指示が受け付けられていない場合（Ｓ１９１４：Ｎｏ）、再びＳ１９１１からの処理が行われる。一方、終了指示が受け付けられた場合（Ｓ１９１４：Ｙｅｓ）、時間相関カメラ１１０が実行する一連の処理が終了する。
【０１４２】
なお、照明装置１２０の終了処理は、検査者が行ってもよいし、他の構成からの指示に従って終了してもよい。
【０１４３】
以上により、実施形態の検査システムが被検査体１５０の検査を行う際に実行する一連の処理が終了する。
【０１４４】
なお、上述した実施形態では、時間相関カメラ１１０を用いて生成された強度画像データと、時間相関画像データと、を生成する例について説明した。しかしながら、強度画像データと、時間相関画像データと、を生成するために時間相関カメラ１１０を用いることに制限するものではなく、アナログ的な処理で実現可能な時間相関カメラや、それと等価な動作をする撮像システムを用いてもよい。たとえば、通常のデジタルスチルカメラが生成した画像データを出力し、情報処理装置が、デジタルスチルカメラが生成した画像データを、フレーム画像データとして用いて参照信号を重畳することで、時間相関画像データを生成してもよいし、イメージセンサ内で光強度信号に参照信号を重畳するようなデジタルカメラを用いて、時間相関画像データを生成してもよい。
【０１４５】
以上説明したように、実施形態の検査システムは、振幅画像に対して所定のフィルタサイズのラプラシアンフィルタを用いたラプラシアン処理（第１フィルタ処理）を実行するフィルタ処理部１０５と、ラプラシアン処理後の振幅画像であるラプラシアン画像に基づいて、ラプラシアンフィルタのフィルタサイズに応じた大きさの白点不良を検出する白点不良検出部１０７と、を備える。これにより、白点不良に基づく振幅画像の画素値（振幅値）の変化の度合をラプラシアンフィルタによって明確化することができるので、白点不良を容易に検出することができる。
【０１４６】
また、実施形態において、フィルタ処理部１０５は、振幅画像に対して１次微分フィルタを用いた１次微分処理（第２フィルタ処理）をさらに実行し、白点不良検出部１０７は、ラプラシアン画像と、１次微分処理後の振幅画像である微分画像と、に基づいて、白点不良を検出する。これにより、白点不良とその周囲との境界（エッジ）が明確化された微分画像をラプラシアン画像に加えて考慮することで、白点不良をより精度よく検出することができる。
【０１４７】
また、実施形態の白点不良検出部１０７は、ラプラシアン画像に第１閾値を用いた第１閾値処理を実行することで抽出した第１領域と、微分画像のうち第１領域を膨張させた膨張領域に対応した領域に第２閾値を用いた第２閾値処理を実行することで抽出した第２領域と、の論理和に対応した領域を、白点不良（が存在する領域）として検出する。これにより、ラプラシアン画像による検出結果と、微分画像による検出結果と、の双方を考慮して、白点不良を容易にかつ精度よく検出することができる。
【０１４８】
なお、上記では、図１２に示されるラプラシアンフィルタ１２０１のような、９×９のラプラシアンフィルタが用いられる例について説明したが、実施形態では、検出対象の白点不良の大きさに対応したフィルタサイズのラプラシアンフィルタであれば、９×９より小さい、あるいは９×９より大きいフィルタサイズのラプラシアンフィルタが用いられてもよい。また、ラプラシアンフィルタのフィルタ係数も、図１２に示される例に制限されるものではない。同様に、実施形態では、１次微分フィルタのフィルタサイズおよびフィルタ係数についても、図１６に示される例に制限されない。
【０１４９】
以下、実施形態のいくつかの変形例について説明する。
【０１５０】
＜第１変形例＞
上述した実施形態では、位相、振幅および強度の局所的な変化（周囲との違い）に基づいて、異常領域を特定する例について説明したが、周囲との違いに基づいて異常領域を特定することに制限するものではない。たとえば、第１変形例として、予め設定（取得）された参照形状のデータ（参照データ）との差異に基づいて異常領域を特定する場合も考えられる。この場合、空間位相変調照明（縞パターン）の位置合わせおよび同期の状況を、参照データを設定（取得）した時の状況に合わせる必要がある。
【０１５１】
第１変形例では、異常検出部１０６が、予め（図示しない）記憶部に記憶された、参照表面から得られた位相画像、振幅画像および強度画像と、被検査体１５０の位相画像、振幅画像および強度画像と、を比較し、被検査体１５０の表面と参照表面との間で、光の位相、振幅および強度のうちいずれか１つ以上について所定の基準以上の違いがあるか否かを判定する。
【０１５２】
以下では、第１変形例において、実施形態と同じ構成の検査システムが用いられ、参照表面の例として、正常な被検査体の表面が用いられるものとする。
【０１５３】
この場合、照明装置１２０がスクリーン１３０を介して縞パターンを照射している間に、時間相関カメラ１１０が、正常な被検査体の表面を撮像し、強度画像データと、時間相関画像データと、を生成する。そして、ＰＣ１００が、時間相関カメラ１１０で生成された強度画像データおよび時間相関画像データから、位相画像、振幅画像および強度画像を生成し、ＰＣ１００の記憶部（図示せず）に、生成した位相画像、振幅画像および強度画像を記憶させておく。
【０１５４】
そして、時間相関カメラ１１０は、異常が存在する可能性の有無を判定したい被検査体を撮像し、強度画像データと、時間相関画像データとを生成する。そして、ＰＣ１００は、強度画像データおよび時間相関画像データから、位相画像、振幅画像および強度画像を生成した後、過去に記憶部に記憶した、正常な被検査体の位相画像、振幅画像および強度画像と、を比較する。
【０１５５】
なお、上記の比較の際において、ＰＣ１００は、正常な被検査体の位相画像、振幅画像および強度画像と、検査対象の被検査体の位相画像、振幅画像および強度画像との比較結果を、異常領域を特定するための特徴を表すデータとして出力するものとする。これにより、ＰＣ１００は、異常領域を特定するための特徴が、所定の基準以上となっている画素（領域）を特定することで、位相画像、振幅画像および強度画像の各々の異常領域を特定することができる。
【０１５６】
以上の手順により、第１変形例では、正常な被検査体の表面と差異が生じているか否か、換言すれば、被検査体の表面に異常が存在する可能性の有無を判定できる。なお、位相画像、振幅画像および強度画像の比較手法は、どのような手法を用いてもよいので、説明を省略する。
【０１５７】
なお、第１変形例では、参照表面との違いに基づいて、異常領域を抽出するための特徴を示したデータを出力する例について説明した。しかしながら、第１変形例で説明した参照表面の違いを用いる技術と、実施形態で説明した周囲との違いを用いる技術と、を組み合わせて、異常領域を特定することも考えられる。なお、第１変形例の技術と、実施形態の技術と、を組み合わせる手法は、どのような手法を用いてもよいので、ここでは説明を省略する。
【０１５８】
＜第２変形例＞
また、上述した実施形態では、ｘ方向に縞パターンを動かして、被検査体の異常（欠陥）を検出する例について説明した。しかしながら、ｘ方向に垂直なｙ方向で急峻に法線の分布が変化する異常（欠陥）が被検査体に生じている場合、ｘ方向に縞パターンを動かすよりも、ｙ方向に縞パターンを動かす方が欠陥の検出が容易になる場合がある。そこで、第２変形例として、ｘ方向に移動する縞パターンと、ｙ方向に移動する縞パターンとを、交互に切り替える例について説明する。
【０１５９】
第２変形例の照明制御部１０２は、所定の時間間隔毎に、照明装置１２０に出力する縞パターンを切り替える。これにより、照明装置１２０は、１つの検査対象面に対して、異なる方向に延びた複数の縞パターンを出力する。
【０１６０】
図２１は、第２変形例の照明制御部１０２が出力する縞パターンの切り替え例を示した図である。図２１の（Ａ）では、照明制御部１０２は、照明装置１２０が表示する縞パターンをｘ方向に遷移させる。その後、図２１の（Ｂ）に示されるように、照明制御部１０２は、照明装置１２０が表示する縞パターンをｙ方向に遷移させる。
【０１６１】
そして、ＰＣ１００の制御部１０３は、図２１の（Ａ）の縞パターン照射から得られた時間相関画像データに基づいて、異常検出を行い、図２１の（Ｂ）の縞パターン照射から得られた時間相関画像データに基づいて、異常検出を行う。
【０１６２】
図２２は、第２変形例の照明制御部１０２が、異常（欠陥）２２０１を含めた表面に縞パターンを照射した例を示した図である。図２２に示される例では、異常（欠陥）２２０１が、ｘ方向に延びている。この場合、照明制御部１０２は、ｘ方向に交差するｙ方向、換言すれば異常（欠陥）２２０１の長手方向に交差する方向に縞パターンが移動するように設定する。当該設定により、検出精度を向上させることができる。
【０１６３】
図２３は、図２２において、ｙ方向、換言すれば異常（欠陥）２２０１の長手方向に直交する方向に縞パターンを変化させた場合における、異常（欠陥）２２０１とスクリーン１３０上の縞パターンの関係を示した図である。図２３に示されるように、ｙ方向に幅が狭く、且つ当該ｙ方向に交差するｘ方向を長手方向とする異常（欠陥）２２０１が生じている場合、照明装置１２０から照射された光は、ｘ方向に交差するｙ方向で光の振幅の打ち消しが大きくなる。このため、ＰＣ１００は、ｙ方向に移動させた縞パターンに対応する振幅画像データから、当該異常（欠陥）２２０１を検出することが可能である。
【０１６４】
第２変形例の検査システムにおいて、被検査体に生じる欠陥の長手方向がランダムな場合には、複数方向（例えば、ｘ方向、および当該ｘ方向に交差するｙ方向等）で縞パターンを表示することで、欠陥の形状を問わずに当該欠陥の検出が可能となり、異常（欠陥）の検出精度を向上させることができる。また、異常の形状に合わせた縞パターンを投影することで、異常の検出精度を向上させることができる。
【０１６５】
＜第３変形例＞
さらに、実施形態の技術は、上述した第２変形例のような、ｘ方向の異常検出と、ｙ方向の異常検出と、を行うために縞パターンを切り替える技術に制限されるものでない。そこで、第３変形例として、照明制御部１０２が照明装置１２０に出力する縞パターンをｘ方向およびｙ方向に同時に動かす例について説明する。
【０１６６】
図２４は、第３変形例の照明制御部１０２が照明装置１２０に出力する縞パターンの例を示した図である。図２４に示される例では、照明制御部１０２が縞パターンを、方向２４０１に移動させる。
【０１６７】
図２４に示される縞パターンは、ｘ方向では１周期２４０２の縞パターンを含み、ｙ方向では一周期２４０３の縞パターンを含んでいる。つまり、図２４に示される縞パターンは、幅が異なる交差する方向に延びた複数の縞を有している。ここで、第３変形例では、ｘ方向の縞パターンの幅と、ｙ方向の縞パターンの幅と、を異ならせる必要がある。これにより、ｘ方向に対応する時間相関画像データと、ｙ方向に対応する時間相関画像データと、を生成する際に、対応する参照信号を異ならせることができる。なお、縞パターンによる光の強度の変化の周期（周波数）が変化すればよいので、縞の幅を変化させるのに代えて、縞パターン（縞）の移動速度を変化させてもよい。
【０１６８】
そして、時間相関カメラ１１０が、ｘ方向の縞パターンに対応する参照信号に基づいて、ｘ方向の縞パターンに対応する時間相関画像データを生成し、ｙ方向の縞パターンに対応する参照信号に基づいて、ｙ方向の縞パターンに対応する時間相関画像データを生成する。そして、ＰＣ１００の制御部１０３は、ｘ方向の縞パターンに対応する時間相関画像データに基づいて、異常検出を行った後、ｙ方向の縞パターンに対応する時間相関画像データに基づいて、異常検出を行う。これにより、第３変形例では、欠陥の生じた方向を問わずに検出が可能となり、異常（欠陥）の検出精度を向上させることができる。
【０１６９】
上述した実施形態のＰＣ１００で実行される検査プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【０１７０】
また、上述した実施形態のＰＣ１００で実行される検査プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述した実施形態のＰＣ１００で実行される検査プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１７１】
以上、本発明のいくつかの実施形態および変形例を説明したが、これらの実施形態および変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態および変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形例は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１７２】
１００…ＰＣ、１０４…画像生成部、１０５…フィルタ処理部、１０７…白点不良検出部、１１０…時間相関カメラ、１２０…照明装置（照明部）、１３０…スクリーン（照明部）。
【図１】
2019002761.tif 000011
【図２】
2019002761.tif 000012
【図３】
2019002761.tif 000013
【図４】
2019002761.tif 000014
【図５】
2019002761.tif 000015
【図６】
2019002761.tif 000016
【図７】
2019002761.tif 000017
【図８】
2019002761.tif 000018
【図９】
2019002761.tif 000019
【図１０】
2019002761.tif 000020
【図１１】
2019002761.tif 000021
【図１２】
2019002761.tif 000022
【図１３】
2019002761.tif 000023
【図１４】
2019002761.tif 000024
【図１５】
2019002761.tif 000025
【図１６】
2019002761.tif 000026
【図１７】
2019002761.tif 000027
【図１８】
2019002761.tif 000028
【図１９】
2019002761.tif 000029
【図２０】
2019002761.tif 000030
【図２１】
2019002761.tif 000031
【図２２】
2019002761.tif 000032
【図２３】
2019002761.tif 000033
【図２４】
2019002761.tif 000034