以下、本発明の実施形態を図面に基づいて詳細に説明する。尚、以下の好ましい実施形態の説明は、本質的に例示に過ぎず、本発明、その適用物或いはその用途を制限することを意図するものではない。
図1は、本発明の実施形態に係る画像検査装置1の運用時を示す概略図である。画像検査装置1は、ある方向に移動するワークW(検査対象物)を撮像した画像を用いてワークWの欠陥を検査するように構成されており、具体的には、ワークWに対して光を照射する照明部2と、撮像部3と、制御ユニット4と、モニタ5と、キーボード6及びマウス7とを少なくとも備えているが、これら以外の機器を備えることもできる。たとえば、制御ユニット4には、プログラマブル・ロジック・コントローラ(PLC)等からなる外部制御機器8が接続されている。この外部制御機器8は、画像検査装置1の一部を構成するものとしてもよい。また、外部制御機器8は、画像検査装置1の構成要素としなくてもよい。
図1では、工場等において、複数のワークWが搬送用ベルトコンベアBの上面に載置された状態で図1における白抜き矢印で示す方向へ搬送されている場合を示している。ワークWは検査対象物である。外部制御機器8は、搬送用ベルトコンベアB及び画像検査装置1をシーケンス制御するための機器であり、汎用のPLCを利用することができる。
尚、この実施形態の説明では、搬送用ベルトコンベアBによるワークWの搬送方向(ワークWの移動方向)をY方向とし、搬送用ベルトコンベアBの平面視でY方向に直交する方向をX方向とし、X方向及びY方向に直交する方向(搬送用ベルトコンベアBの上面に直交する方向)をZ方向と定義するが、これは説明の便宜を図るために定義するだけである。
画像検査装置1は、ワークWの外観検査、即ちワークWの表面の傷、汚れ、打痕等の欠陥の有無を検査する場合に使用することができるものであり、外観検査装置と呼ぶこともできる。画像検査装置1は、その運用時において、外部制御機器8から信号線を介して、欠陥検査の開始タイミングを規定する検査開始トリガ信号を受信する。画像検査装置1は、この検査開始トリガ信号に基づいてワークWの撮像及び照明等を行って所定の処理後、検査用画像を得る。その後、検査結果は、信号線を介して外部制御機器8へ送信される。このように、画像検査装置1の運用時には、画像検査装置1と外部制御機器8との間で、信号線を介して検査開始トリガ信号の入力と検査結果の出力が繰り返し行われる。なお、検査開始トリガ信号の入力や検査結果の出力は、上述したように、画像検査装置1と外部制御機器8との間の信号線を介して行ってもよいし、それ以外の図示しない信号線を介して行ってもよい。例えば、ワークWの到着を検知するためのセンサと画像検査装置1とを直接的に接続し、そのセンサから画像検査装置1へ検査開始トリガ信号を入力するようにしてもよい。
また、画像検査装置1は、専用のハードウェアで構成する他、汎用の機器にソフトウェアをインストールしたもの、たとえば汎用もしくは専用のコンピュータに画像検査プログラムをインストールした構成としてもよい。以下の例では、グラフィックボードなどのハードウェアを画像検査処理に特化させた専用のコンピュータに、画像検査プログラムをインストールした構成とした場合について説明する。
また、画像検査装置1は、いわゆるデフレクトメトリの原理を応用した画像検査装置であっても良い。その場合、照明部2によって照度が周期的に変化するパターン光を検査対象物に照射し、パターン光が照射されている検査対象物を撮像部3によって撮像する。照明部2は照度分布の位相をシフトさせた複数のパターン光を順次照射し、パターン光を照射する都度、撮像部3が検査対象物を撮像し、得られた複数の輝度画像に基づいて検査対象物の形状を示す位相データを生成する。位相データに基づいて検査用画像を生成し、この検査用画像を用いることにより、検査対象物の形状に係る欠陥検査を行うことができるようになっている。デフレクトメトリの原理を応用した画像検査の方法は、従来から周知の方法であってもよいので、詳細な説明は省略する。尚、検査用画像の生成については、デフレクトメトリの原理の応用に限られるものではなく、他の手法によって検査用画像を生成するようにしてもよい。
画像検査装置1は、搬送用ベルトコンベアBによって次々と搬送されてくるワークWの外観検査を行うモード、すなわち実際にワークWの良否判定を行う運転モード(Runモード)と、検査に用いるサーチ処理アルゴリズム、欠陥検査アルゴリズム、各種パラメータ、前処理等の選択や設定を行う設定モード(非Runモード)とに切替可能に構成されている。運転モードと設定モードとの切替は、例えばモニタ5に表示されたユーザーインターフェース上のモード切替手段によって行うことができる。使用者は、運転モードにおいて搬送用ベルトコンベアBによって次々と搬送されてくるワークWの外観検査を行う前に、設定モードにおいて各種設定や選択を行うとともに調整を行う。設定モードでは、モニタ5に表示されたユーザーインターフェース上で各種設定や選択等を行うことが可能になっている。
基本的に、各種パラメータに対してはデフォルト値が設定されており、使用者がパラメータ値としてデフォルト値が最適であると判断した場合には、特段、パラメータ値を調整する必要はない。しかし、実際のところ、周囲の照明環境、撮像部3の取り付け位置、撮像部3の姿勢ずれ、ピント調整等の相違に起因して、デフォルト値のままでは使用者が望む結果を得ることができない場合がある。そこで、設定モードにおいて、モニタ5上にて、運転モードから設定モードに切り換え、各種パラメータの内容を編集できるようになっている。
運転モードでは、搬送用ベルトコンベアBのライン上を流れてくる複数のワークWを撮像部3によって撮像し、ワークWに傷や欠陥等が存在するか否かの判断を行う。ワークWに傷や欠陥等が存在すると判断した場合には、NG判定となる。一方、ワークWに傷や欠陥等が存在しないと判断した場合には、OK判定となる。このように、画像検査装置1は、ワークWを撮像した画像を用いて、ワークWの外観の良否判定を行う。
(照明部2の構成)
照明部2は、ワークWを照明する照明装置で構成されており、例えば、面照明、光沢を際立たせる同軸落射照明、傷や刻印のエッジが際立つローアングル照明、ブラックライトを当てるブラックライト照明、四方八方から拡散光を照射するドーム照明等、各種の照明を行う照明装置を使用することができる。照明部2は、制御ユニット4に対して信号線100aを介して接続されており、撮像部3及び制御ユニット4から離して設置することができるようになっている。
また、デフレクトメトリ処理を行う場合、照明部2は、周期的な照度分布を有するパターン光をワークWに照射するパターン光照明装置であってもよい。パターン光照明装置は、たとえば複数の発光ダイオード、液晶パネル、有機ELパネル、デジタルマイクロミラーデバイス(DMD)等で構成することができ、単に照明部と呼ぶこともできる。液晶パネル、有機ELパネル、DMDについては図示しないが、従来から周知の構造のものを用いることができる。
パターン光照明装置からなる照明部2に複数の発光ダイオードを用いる場合には、複数の発光ダイオードをドットマトリクス状に配置して電流値制御によって周期的な照度分布を有するパターン光を生成することができる。液晶パネル及び有機ELパネルの場合は、各パネルを制御することで各パネルから照射される光が周期的な照度分布を有するパターン光となるようにすることができる。デジタルマイクロミラーデバイスの場合は、内蔵された微小鏡面を制御することで周期的な照度分布を有するパターン光を生成して照射することができる。尚、照明部2の構成は上述したものに限られるものではなく、周期的な照度分布を有するパターン光を生成することができる機器や装置等も使用することができる。
照明部2には、図2に示す制御ユニット4の照明制御部42から送信される照明トリガ信号が信号線100aを介して入力されるようになっている。照明部2は、照明トリガ信号を受信したら、その都度、ワークWを照明するように構成されている。
照明部2の照度分布が面内で均一な光を照射することもでき、例えば、暗い面発光状態から明るい面発光状態まで発光状態を変化させることもできる。また、デフレクトメトリ処理を行う場合、ワークWに照射するパターン光はsin波形だけでなく、三角波等のパターン光でも可能である。
(撮像部3の構成)
図1に示す撮像部3は、受光素子と集光系光学系とを有している。受光素子は、集光系光学系を通して得られた光の強度を電気信号に変換するCCD(charge-coupled device)やCMOS(complementary metal oxide semiconductor)等の撮像素子からなるイメージセンサである。集光系光学系は、外部から入射する光を集光するための光学系であり、典型的には一以上の光学レンズを有している。集光系光学系には、従来から周知のオートフォーカス機構を設けることができる。
撮像部3は、図2に示す制御ユニット4に対して信号線100bを介して接続されている。尚、この実施形態では、撮像部3と照明部2とが別体である場合について説明するが、撮像部3と照明部2とは一体化されていてもよい。
撮像部3には、制御ユニット4の画像入力部41から送信される撮像トリガ信号が信号線100bを介して入力されるようになっている。撮像部3は、画像データを取り込むタイミングを規定する撮像トリガ信号を受信したら、その都度、ワークWの撮像を実行するように構成されている。
(モニタ5の構成)
図1に示すモニタ5は、たとえば有機ELディスプレイや液晶ディスプレイ等からなるものであり、表示部と呼ぶこともできる。モニタ5は、図2に示す制御ユニット4の表示制御部43に接続され、たとえば、撮像部3で撮像された画像、撮像部3で撮像した画像に基づいて生成された各種画像、各種設定用画像、ワークWの欠陥検査結果、操作用のインターフェース、各種設定用のインターフェース、設定値等を表示させることができるように構成されている。モニタ5には、一度に複数の設定用画像や、検査用画像等を表示させることもできるようになっている。モニタ5をタッチ操作パネル型モニタとすることで、モニタ5に各種情報の入力機能を持たせることができる。
使用者は、設定モード中にモニタ5を視認することで各種設定を行うことができ、また、運転モード中にモニタ5を視認することで動作状態を確認することができる。
(キーボード6及びマウス7の構成)
図1に示すキーボード6及びマウス7は、従来から周知のコンピュータ操作用の機器であり、制御ユニット4が有する操作入力部44(図2に示す)に接続されている。キーボード6またはマウス7の操作により、各種情報を制御ユニット4に入力することができるとともに、モニタ5に表示されている画像等の選択やボタン操作等を行うことができる。尚、マウス7はポインティングデバイスの一例であり、他のポインティングデバイスを用いることもできる。また、キーボード6及びマウス7の代わり、またはキーボード6及びマウス7に加えて、たとえば、音声入力機器、タッチ操作パネル等のコンピュータ操作用の機器を使用することもできる。
(制御ユニット4の構成)
制御ユニット4は、画像検査装置1の各部を制御するためのユニットであり、CPUやMPU、システムLSI、DSPや専用ハードウェア等で構成することができる。制御ユニット4は、後述するように様々な機能を搭載しているが、これらは論理回路によって実現されていてもよいし、ソフトウェアを実行することによって実現されていてもよい。制御ユニット4の一部又は全部がモニタ5に組み込まれていてもよいし、制御ユニット4の一部が照明部2や撮像部3に組み込まれていてもよい。
図2に一例を示すように、制御ユニット4は、画像入力部41と、照明制御部42と、表示制御部43と、操作入力部44と、主制御部45と、記憶部46と、設定部47と、欠陥検査用特徴量抽出部48と、項目入力部49と、画像処理部50と、選択部51とを有している。制御ユニット4の各部は、上述したように分けて記載しているが、同じ部分が複数種の処理を実行するように構成してもよいし、更に細かく分けてこれらを連携させて1つの処理を実行するように構成してもよい。
上記各ハードウェアは、バスなどの電気的な通信路(配線)を介し、双方向通信可能または一方向通信可能に接続されている。
図1に示す外部制御機器8は、図示しない通信部を介して制御ユニット4に対して通信可能に接続されている。通信部は、ワークWの到着タイミングを認識するために製造ラインに設置され、外部制御機器8に接続されたセンサ(光電センサ等、図示せず)からトリガ入力があったときに、外部制御機器8から撮像トリガ信号を受信するインターフェース(I/F)として機能する。また、通信部は、外部から転送されてくる制御プログラムなどを受信するインターフェース(I/F)としても機能する。
図2に示す主制御部45は、各種プログラムに基づき数値計算や情報処理を行うとともに、ハードウェア各部の制御を行う。主制御部45は、中央演算処理装置として機能するCPU45aと、主制御部45が各種プログラムを実行する際のワークエリアとして機能するRAM等のワークメモリ45bと、起動プログラムや初期化プログラム等が格納されたROM、フラッシュROMまたはEEPROM等のプログラムメモリ45cとを備えている。
照明制御部42は、主制御部45のCPU45や外部制御機器8からの命令に基づいて、照明部2に対して照明トリガ信号を送信する。照明トリガ信号には、照度やパターン光に関する情報が含まれていてもよい。
画像入力部41は、撮像部3での撮像により得られた画像データを取り込むASIC(Application Specific Integrated Circuit)などから構成することができる。画像入力部41には、画像データをバッファリングするためのフレームバッファが含まれていてもよい。具体的に、画像入力部41は、CPU45aから撮像部3の撮像指令を受信すると、撮像部3に対して画像データ取り込み信号(撮像トリガ信号)を送信する。そして、画像入力部41は、撮像部3で撮像が行われた後、撮像により得られた画像データを取り込む。取り込んだ画像データは、一旦バッファリング(キャッシュ)される。デフレクトメトリの原理に基づく画像処理は、図示しない処理部において行うことができる。
操作入力部44には、キーボード6やマウス7、その他の操作用デバイスからの操作信号が入力される。操作入力部44は、使用者の操作に基づきキーボード6やマウス7等からの操作信号を受信するインターフェース(I/F)として機能する部分である。
表示制御部43は、モニタ5に対して画像を表示させる表示用DSPなどから構成される。表示制御部43には、画像を表示させる際に画像データを一時記憶するVRAMなどのビデオメモリが含まれていてもよい。CPU45aから送られてきた表示指令(表示コマンド)に基づいて、モニタ5に対して所定の画像を表示させるための制御信号を送信する。たとえば、撮像部3で撮像した画像データ(デフレクトメトリの原理に基づいて処理された画像)、画像処理後の画像データ、各種ユーザーインターフェース等を表示するために、モニタ5に対して制御信号を送信する。また、表示制御部43は、キーボード6やマウス7を用いた使用者の操作内容をモニタ5に表示させるための制御信号も送信する。また、マウス7で操作可能なポインタ等もモニタ5に表示することができるようになっている。
(検査ツール)
画像検査装置1は、外観検査を実行する計測モジュールを複数備えている。ここでは、外観検査を実行する計測モジュールを検査ツールと呼ぶことにする。検査ツールには様々なものがあり、主要な画像処理ツールとしては、エッジ位置計測ツール、エッジ角度計測ツール、エッジ幅計測ツール、エッジピッチ計測ツール、エリア計測ツール、ブロブ計測ツール、パターンサーチ計測ツール、傷計測ツールなどがある。詳細な説明は省略するが、各検査ツールは、従来から存在する各種画像処理の手法を用いて実現することができる。
画像検査装置1が備える検査ツールは複数あり、例えば、一覧表の形式でモニタ5上に表示することができ、同時にモニタ5に表示されているポインタを使用者がマウス7等で操作し、使用したい検査ツールを選択することができるようになっている。
以下、各検査ツールの概要について説明するが、検査ツールの名称は説明の便宜を図るためだけに決めたものであり、どのような名称を用いてもよい。
エッジ位置計測ツール:ワークWの画像が表示される画面上において、エッジ位置を検出したい検査領域に対してウインドウを設定することにより、設定された検査領域内で、任意の方向にスキャンして複数のエッジ(明から暗に切り替わる箇所または暗から明に切り替わる箇所)を検出する。検出した複数のエッジから、一のエッジの指定を受け付け、指定を受け付けたエッジの位置を計測する。
エッジ角度計測ツール:設定を受け付けた検査領域内に2つのセグメントを設定し、それぞれのセグメントで検出したエッジからのワークWの傾斜角度を計測する。傾斜角度は、たとえば時計回りを正とすることができる。
エッジ幅計測ツール:設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出し、検出した複数のエッジ間の幅を計測する。
エッジピッチ計測ツール:設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出する。検出した複数のエッジ間の距離(角度)の最大値/最小値や平均値を計測する。
エリア計測ツール:撮像部3で撮像したワークWの画像を二値化処理して、白色領域または黒色領域の面積を計測する。たとえば、計測する対象として白色領域または黒色領域の指定をパラメータとして受け付けることにより、白色領域または黒色領域の面積を計測する。
ブロブ計測ツール:撮像部3で撮像したワークWの画像を二値化処理して、同一の輝度値(255または0)の画素の集合(ブロブ)に対してパラメータとしての数、面積、重心位置等を計測する。ブロブ計測ツールは、検出される傷の大きさ(面積)が、実際の欠陥と同じ大きさで検出されるが、細かいノイズも検出されやすい傾向がある。また、検出状態に応じて処理時間が変動しやすい。
パターンサーチ計測ツール:比較対象とする画像パターン(モデル画像)を事前に記憶装置に記憶しておき、撮像したワーク8の画像の中から、事前に記憶してある画像パターンに類似している部分を検出することで、画像パターンの位置、傾斜角度、相関値を計測する。
傷検査ツール:設定を受け付けた検査領域内で、小領域(セグメント)を移動させて画素値の平均濃度値を算出し、閾値以上の濃度差となった位置を傷が存在すると判定する。すなわち、傷検査とは、単純な二値化処理によって得られた白黒画像での面積判定ではなく、周辺の濃淡レベルと比較しながら傷や汚れなどの欠陥を探す外観検査アルゴリズムである。傷検査ツールは、傷検出処理を行うツールと呼ぶこともできる。
傷検査の検出原理を以下に説明する。ここでは、傷の検出方向としてX方向を指定した場合を例に取って説明する。
(1)まず、検査領域内で任意サイズの小領域(セグメント)を、所定量だけ移動させながら平均濃度計測を行う。移動させる量は、セグメントのサイズを基準に決定でき、例えばセグメントサイズの1/4とする。
(2)次に、注目セグメントを含む検出方向の所定の距離(ここではX方向に4セグメント)内での最大濃度と最小濃度の差を計測する。この値が、注目セグメントの「傷レベル」となる。
(3)傷レベルが、予め設定されたしきい値を超えている場合、その注目セグメントは傷としてカウントされる。このカウント値は「傷量」と呼ばれる検査結果となる。
以後、領域内で注目セグメントを移動量分ずらして上記(1)〜(3)の工程を繰り返す。
以上は、傷の検出方向としてX方向を指定した場合を説明した。傷の検出方向は、Y方向やXY方向で指定することもできる。ここで、傷の検出方向をXYの2次元方向に指定した場合の処理方法について説明する。XY方向を指定した場合は、注目セグメントを含むXY方向それぞれ4セグメント、計16セグメント内での最大濃度と最小濃度の差を計測する。傷検査ツールによれば、ワークWの形状や照明ムラなどの影響を受けず、検出すべき欠陥のみを検出できる。また、傷検査ツールは、セグメント化を行って処理するため、細かいノイズへの耐性が強いが、検出される傷の大きさ(面積)が、実際の欠陥よりも大き目に検出される傾向がある。
その他にも、検査領域内の文字情報を切り出して辞書データ等と照合することで文字列を認識するOCR認識ツール、画像上に設定したウインドウ(領域)をシフトさせながら、各ウインドウの位置においてエッジの検出を繰り返す機能を有するトレンドエッジツール、設定したウインドウ内の濃淡の平均、偏差等を計測する機能を有する濃淡ツール、設定したウインドウ内の濃度の平均、偏差等を計測する機能を有する濃度ツールなどもあり、ユーザは検査内容に応じて必要な画像処理ツールを選択することができる。なお、これらの検査ツールは、典型的な機能およびその実現方法の代表例を示すものに過ぎない。あらゆる画像処理に対応する検査ツールを画像検査装置1が備えるように構成することもできる。また、各検査ツールは、それぞれ、個別の検査アルゴリズムに基づいて実現されるものであることから、検査アルゴリズムと呼ぶこともできる。
(検査ツールのパラメータ)
図3は、傷検査ツールのパラメータの例を示している。図3に示す表示例は、使用者が傷検出ツールのパラメータを手動で設定するためのユーザーインターフェースであり、傷検査ツールパラメータ設定部61としてモニタ5上に表示することができる。傷検査ツールパラメータ設定部61の各値等は、キーボード6やマウス7等を操作することによって変更することができる。
傷検査ツールのパラメータとしては、検出方向、方向別設定、高速モードのON/OFF、傷レベル、設定方向、セグメントサイズ、比較間隔設定、移動量、比較セグメント間隔、ゲイン等が挙げられる。図3に示す傷検査ツールパラメータ設定部61は、検出方向設定欄61a、方向別設定欄61b、高速モードのON/OFF設定欄61c、傷レベル設定欄61d、設定方向設定欄61e、セグメントサイズ設定欄61f、比較間隔設定欄61g、移動量設定欄61h、比較セグメント間隔設定欄61i、ゲイン設定欄61jを備えている。
検出方向は、傷がどの方向に伸びているかを示すパラメータである。ここでは、ドロップダウンリストからXY、X、Yの何れかを選択する。例えば縦方向に傷が伸びている場合は、X方向を選択することで、横方向に差分を取って傷を検出できるようになる。
方向別設定は、画像処理パラメータをX方向やY方向で異なる値に設定したい場合に指定する。
高速モードは、処理の高速化のON/OFFを切り替えるためのパラメータである。高速モードをONとした場合は、画像処理パラメータとして選択できる値が限られるものの(例えば4の倍数など)、内部処理の高速化が図られる。
傷レベルは、傷として判定する周囲画素の平均濃度との差を規定するパラメータであり、例えば10を指定すると、周囲画素の平均濃度との差が10未満の画素は傷として判定されず、10以上の画素は傷として判定される。
設定方向は、方向別設定と連動し、方向別設定がOFFの場合は、検出方向で設定された方向に共通で(図3の例ではXY共通)以下の画像処理パラメータが設定される。方向別設定がONの場合は、方向毎に以下の画像処理パラメータを個別に設定することになる。
セグメントサイズは、傷の大きさに応じて規定するパラメータである。例えば図3の例ではセグメントサイズとして8を指定しており、検査対象の形状画像のある部位の周囲で8×8の領域を取り、これを4分割して領域毎の差分を取り、傷の量を決定する。このようにセグメントサイズは、傷を検出する領域の大きさを規定するパラメータである。
比較間隔設定は、マニュアル又は自動を選択する。
移動量は、比較間隔を指定した画素(ここでは4ピクセル)毎に移動させる。
比較セグメント間隔は、濃度差を比較するセグメントの間隔を規定する。
(前処理フィルタ)
画像検査装置1は、検査画像に適用される画像処理を前処理フィルタとして複数備えている。図4は、前処理フィルタの例を示している。図4に示す例は、使用者が検査画像に適用したい前処理フィルタを手動で設定するためのユーザーインターフェースであり、前処理フィルタ設定部62としてモニタ5上に表示することができる。前処理フィルタ設定部62には、ドロップダウンリストボタン62aが設けられており、このドロップダウンリストボタン62aをマウス7でクリック操作すると、図4に示すような前処理フィルタが表示され、マウス7によって選択することができる。前処理フィルタが不要な場合には、「なし」を選択すればよい。前処理フィルタには、「リアルタイム濃淡補正」(シェーディング補正)フィルタが含まれている。シェーディング補正は、周辺に対して明るい部分や、暗い部分のみを抽出するなど、明暗の選別機能を有している。
図5は、リアルタイム濃淡補正のパラメータの例を示している。図5に示す例は、使用者がリアルタイム濃淡補正のパラメータを手動で設定するためのユーザーインターフェースであり、リアルタイム濃淡補正パラメータ設定部63としてモニタ5上に表示することができる。リアルタイム濃淡補正パラメータ設定部63の各値等は、キーボード6やマウス7等を操作することによって変更することができる。
リアルタイム濃淡補正のパラメータとしては、補正方法、抽出サイズ、処理方向、抽出色、ゲイン、ノイズ除去、コントラスト均一化、領域外参照、回数等が挙げられる。リアルタイム濃淡補正パラメータ設定部63は、補正方法設定欄63a、抽出サイズ設定欄63b、処理方向設定欄63c、抽出色設定欄63d、ゲイン設定欄63e、ノイズ除去設定欄63f、コントラスト均一化設定欄63g、領域外参照設定欄63h、回数設定欄63iを備えている。
(記憶部46の構成)
図2に示す記憶部46は、例えばRAM等で構成することができ、登録画像記憶部46aと、サーチ処理用特徴量記憶部46bと、検査設定記憶部46cとを備えている。登録画像記憶部46aは、ワークWを撮像して得られた登録画像を記憶する部分である。登録画像は、設定モード時にワークWを撮像部3によって撮像した画像とすることができる。登録画像は、後述するサーチ処理に用いるパターン領域を設定する際に使用される。
サーチ処理用特徴量記憶部46bは、パターン領域内の画像から抽出された第1のサーチ処理用特徴量と、第2のサーチ処理用特徴量とを記憶する部分である。第1のサーチ処理用特徴量は、例えばパターン領域内の画像から抽出することができる濃淡画像であり、正規化相関量とすることができる。第2のサーチ処理用特徴量は、パターン領域内の画像から抽出することができるエッジ情報(エッジ画像や向き、大きさといった幾何情報)である。
検査設定記憶部46cは、後述するサーチ処理選択部により選択されたサーチ処理(サーチアルゴリズム)を検査設定として記憶するとともに、検査処理選択部51bにより選択された欠陥検査処理(欠陥検査アルゴリズム)を検査設定として記憶する部分である。選択されたサーチ処理及び選択された欠陥検査処理は、設定モード時に検査設定記憶部46cに記憶される。運転モード時には、検査設定記憶部46cに記憶されているサーチ処理及び欠陥検査処理を検査設定記憶部46cから読み出して適用する。
(設定部47の構成)
設定部47は、パターン領域設定部47aと、検査領域設定部47bと、欠陥サイズ設定部47cとを備えている。パターン領域設定部47aは、登録画像記憶部46aに記憶されている登録画像を読み込み、当該登録画像上で、サーチ処理に用いるパターン領域を設定するための部分である。
具体的には、パターン領域設定部47aは、登録画像記憶部46aに記憶されている登録画像を読み込んだ後、表示制御部43を制御し、図6に示すように、登録画像64をモニタ5に表示させる。使用者がマウス7の操作により、パターン領域を囲むように枠線64aを描いたことをパターン領域設定部47aが検出する。使用者が例えばマウス7のボタンをクリックした状態でマウス7を動かすことで、パターン領域を囲む枠線64aを、登録画像64上に描くことができる。また、パターン領域の端を複数箇所クリックすることにより、パターン領域を囲むように枠線64aを自動で描くこともできる。パターン領域設定部47aは上述したようなマウス7の操作を検出して登録画像64上で、サーチ処理に用いるパターン領域の設定を受け付ける。パターン領域は、制御ユニット4の記憶部46に記憶しておくこともできる。
また、図2に示す設定部47は、サーチ領域の設定を受け付けることもできように構成されている。サーチ領域の設定は、登録画像64上で受け付けることができ、パターン領域の設定と同様に、マウス7の操作により、サーチ領域を囲むように枠線64bを描く。設定部47は、上述したような使用者によるマウス7の操作を検出し、サーチ処理に用いるサーチ領域の設定を受け付ける。サーチ領域は、制御ユニット4の記憶部46に記憶しておくこともできる。サーチ領域は、サーチ処理を行う領域であり、サーチ領域以外の領域に対してはサーチ処理を行わないので、サーチ領域を小さくすればするほどサーチ処理に要する時間が短くなる。
検査領域設定部47bは、検査画像上で検査領域の設定を受け付ける部分である。検査領域は、欠陥検査処理を行う領域であり、検査領域以外の領域に対しては欠陥検査処理を行わないので、検査領域を小さくすればするほど欠陥検査処理に要する時間が短くなる。検査画像は、設定モード時にワークWを撮像部3によって撮像した画像とすることができ、上記登録画像と同様に記憶部46に記憶させておくことができる。従って、検査領域設定部47bは、記憶部46に記憶されている検査画像を読み込み、当該検査画像上で、欠陥検査処理を設定するための部分である。
具体的には、検査領域設定部47bは、記憶部46に記憶されている検査画像を読み込んだ後、表示制御部43を制御し、図7に示すように、検査画像65をモニタ5に表示させる。上記パターン領域の設定時と同様に、使用者がマウス7の操作により、検査領域を囲むように枠線65aを描く。検査領域設定部47bは、上述したような使用者によるマウス7の操作を検出して検査画像65上で、欠陥検査処理に用いる検査領域の設定を受け付ける。検査領域は、制御ユニット4の記憶部46に記憶しておくこともできる。
図2に示す欠陥サイズ設定部47cは、検査領域設定部47bで受け付けた検査領域の中で欠陥として検出すべき画像領域の大きさである欠陥サイズの設定を使用者から受け付ける部分である。欠陥サイズは、検査領域の大きさよりも小さく、具体的には、図7に符号65cで欠陥部を示した場合、この欠陥部65cを全て入れることのできる最小の枠線(矩形領域)65bをマウス7の操作によって描くことによって欠陥サイズを設定することができる。欠陥サイズ設定部47cは、上述したようなマウス7の操作を検出して、検査画像65上で、欠陥サイズの設定を受け付けることができる。このように、欠陥サイズは、使用者が自ら設定しているので、実際の欠陥の大きさを反映した正確なものになる。
欠陥サイズ設定部47cは、上述した矩形領域の描画による入力以外にも、例えば、欠陥サイズの数値での入力、欠陥部位の描画による入力のうち、少なくとも1つの入力が可能に構成することができる。欠陥サイズの数値での入力方法としては、例えば、キーボード6やマウス7等を操作することにより、欠陥部65cの縦寸法及び横寸法を入力する方法や、欠陥部65cの縦ピクセル数及び横ピクセル数を入力する方法等がある。欠陥部位の描画による入力方法としては、例えば、検査画像65上においてマウス7のポインタで欠陥部65cをなぞるように当該マウス7を操作する方法や、感圧ペンによって欠陥部65cをなぞるようにする方法等がある。これら何れの入力方法であっても欠陥サイズ設定部47cが欠陥サイズの設定を受け付ける。
(欠陥検査用特徴量抽出部48の構成)
図2に示す欠陥検査用特徴量抽出部48は、検査領域設定部47bで受け付けた検査領域65a(図7に示す)内の各画素について、第1の欠陥検査用特徴量と、該第1の欠陥検査用特徴量とは異なる第2の欠陥検査用特徴量とを抽出する部分である。第1の欠陥検査用特徴量は、周辺画素との濃淡値の差であり、第2の欠陥検査用特徴量は、濃淡値である。従って、欠陥検査用特徴量抽出部48は、検査領域65a内の各画素について、周辺画素との濃淡値の差を求めるとともに、濃淡値も求め、これらに基づいて、周辺画素との濃淡値の差を第1の欠陥検査用特徴量とし、濃淡値を第2の欠陥検査用特徴量として抽出する。抽出した第1の欠陥検査用特徴量及び第2の欠陥検査用特徴量は、記憶部46に記憶させておくことができる。
(項目入力部49の構成)
図2に示す項目入力部49は、第1の欠陥検査処理及び第2の欠陥検査処理の共通設定項目を入力するための部分である。第1の欠陥検査処理を傷検査ツールとし、第2の欠陥検査処理をブロブ計測ツールとした場合、共通設定項目は、欠陥の明暗指定とすることができる。欠陥の明暗を指定することは、明暗情報の入力ということもできる。
具体的には、図8に示すように、項目入力部49は、表示制御部43を制御し、検査画像65をモニタ5に表示させ、この検査画像65が表示されたモニタ5に、共通設定項目入力欄66を表示させる。共通設定項目入力欄66には、ドロップダウンリストボタン66aが設けられており、このドロップダウンリストボタン66aをマウス7でクリック操作すると、図8に示すように、明暗指定の選択枝として、「白黒両方」、「白い傷のみ」、「黒い傷のみ」の3つの選択枝が表示される。キーボード6やマウス7により、3つの選択枝のうち、1つを選択することができ、項目入力部49は、この選択操作を検出して共通設定項目の入力を受け付ける。受け付けた共通項目は、記憶部46に記憶させておくことができ、第1の欠陥検査処理及び第2の欠陥検査処理に適用される。
また、項目入力部49は、第1のサーチ処理及び第2のサーチ処理の共通設定項目を入力することが可能な部分でもある。第1のサーチ処理をパターンサーチとし、第2のサーチ処理をエッジベースサーチとした場合、共通設定項目は、サーチ処理を行う角度範囲とすることができる。運転モードのサーチ処理時に、設定されているパターン領域が傾いた状態で現れる可能性がある場合には、角度範囲を設定しておく。角度範囲は、例えば時計回り方向を「+」とし、反時計回り方向を「−」として設定することができる。
具体的には、図9に示すように、項目入力部49は、表示制御部43を制御し、登録画像64をモニタ5に表示させ、この登録画像64が表示されたモニタ5に、共通設定項目入力欄67を表示させる。共通設定項目入力欄67には、角度範囲入力部67aが設けられており、この角度範囲入力部67aをマウス7でクリック操作すると、角度を数値で入力することができる。尚、キーボード6の操作により数値を直接入力するようにしてもよい。
項目入力部49は、キーボード6やマウス7の入力操作を検出して共通設定項目の入力を受け付ける。図9に示すように、「30」と入力された場合、設定されているパターン領域の中心線がモニタ5の縦方向に対してプラスマイナス30°傾いても、サーチ処理で画像領域を検出することが可能になる。項目入力部49で受け付けた共通項目は、記憶部46に記憶させておくことができ、第1のサーチ処理及び第2のサーチ処理に適用される。
(画像処理部50)
図2に示す画像処理部50は、サーチ処理部50aと、欠陥検査部50bとを備えている。
(選択部51の構成)
図2に示す選択部51は、サーチ処理選択部51aと、検査処理選択部51bとを備えている。
(サーチ処理部50aの構成)
サーチ処理部50aには、登録画像64とは別に、撮像部3によって新たにワークWを撮像して得られた画像が入力される。撮像部3によって新たにワークWを撮像して得られた画像を入力画像と呼ぶ。サーチ処理部50aは、入力画像に対して、第1のサーチ処理用特徴量と所定値以上の相関値(スコアー)を有する画像領域を検出する第1のサーチ処理と、第2のサーチ処理用特徴量と所定値以上の相関値を有する画像領域を検出する第2のサーチ処理とを実行する。サーチ処理部50aが使用する第1のサーチ処理用特徴量及び第2のサーチ処理用特徴量は、サーチ処理用特徴量記憶部46bから読み込む。
第1のサーチ処理用特徴量が正規化相関量である場合には、第1のサーチ処理はパターンサーチとすることができる。パターンサーチは、正規化相関サーチであり、パターン領域と、入力画像の一部との相関値(類似度)を算出し、その相関値に基づいて相関値が高い(所定値以上)画像領域を検出する。
第2のサーチ処理用特徴量がエッジ情報である場合には、第2のサーチ処理はエッジベースサーチとすることができる。エッジベースサーチは、パターン領域のエッジ情報と、入力画像の一部のエッジ情報とを得て、両者のエッジの相関値(類似度)を算出し、その相関値に基づいて相関値が高い(所定値以上)画像領域を検出する。
サーチ処理部50aは、第1のサーチ処理の処理時間と、第2のサーチ処理の処理時間とを取得する。すなわち、第1のサーチ処理を開始してから終了するまでの時間と、第2のサーチ処理を開始してから終了するまでの時間とをそれぞれ計測して保持または記憶部46に記憶させておくことができる。第1のサーチ処理と第2のサーチ処理とは並行して進めてもよいし、異なるタイミングで実施してもよい。
図2に示す表示制御部43は、第1のサーチ処理の結果得られた画像領域の位置を表示した第1サーチ処理結果画像と、第2のサーチ処理の結果得られた画像領域の位置を表示した第2サーチ処理結果画像とをモニタ5に同時に表示させるように構成されている。図10に示すように、表示制御部43は、サーチ結果画像表示用ユーザーインターフェース68をモニタ5に表示させる。サーチ結果画像表示用ユーザーインターフェース68には、第1のサーチ処理の結果得られた画像領域の位置を表示した第1サーチ処理結果画像71が表示される第1画像表示領域68aと、第2のサーチ処理の結果得られた画像領域の位置を表示した第2サーチ処理結果画像72が表示される第2画像表示領域68bと、検出レベル調整領域68cとが設けられている。第1サーチ処理結果画像71及び第2サーチ処理結果画像72は、入力画像に対して画像領域の位置を重畳表示した画像である。
この実施形態では、第1サーチ処理結果画像71と第2サーチ処理結果画像72をモニタ5に同時に表示するようにしているが、これに限らず、第1サーチ処理結果画像71と第2サーチ処理結果画像72を切り替えてモニタ5に表示するようにしてもよい。例えば、サーチ結果画像表示用ユーザーインターフェース68に、画像切替手段(例:ボタン等)を設けておき、画像切替手段を使用者がマウス7等で操作することにより、第1サーチ処理結果画像71のみを表示させたり、第2サーチ処理結果画像72のみを表示させることができる。また、例えば、第1サーチ処理結果画像71及び第2サーチ処理結果画像72のそれぞれの周辺部にタブを設けておき、タブを操作することにより、第1サーチ処理結果画像71のみを表示させたり、第2サーチ処理結果画像72のみを表示させることもできる。
表示制御部43は、所定値以上の相関値を持った複数の画像領域の中で、相関値が最も高い最高相関画像領域と、最高相関画像領域の相関値未満の相関値を有する画像領域とを異なる表示形態で表示するように構成されている。例えば、図10に示す第1画像71には、最も大きな枠線(検出枠)71aと、この枠線71aよりも小さな枠線(検出枠)71bとが入力画像に重畳表示されている。枠線71aで囲まれた領域は、最高相関画像領域であり、この領域は、相関値が最も高い画像領域となる。一方、枠線71bで囲まれた領域は、枠線71aで囲まれた領域よりも相関値が低い画像領域である。枠線71a及び枠線71bの大きさは、相関値の大きさと関連しており、相関値の大きさが大きければ大きいほど枠線を大きくするように、表示制御部43が構成されている。第2サーチ処理結果画像72についても同様な枠線72aや枠線72b(図11に示す)を表示させることができる。枠線71a、71b内の矢印は、検出した画像領域の姿勢を表している。
パターンサーチでは、第1サーチ処理結果画像71に示すように、複数の画像領域が表示されており、しかも、検出したいパターンとは反対向きのものが高い相関値で検出されてしまっているので、安定性が低いとい判断できる。一方、エッジベースサーチでは、第2サーチ処理結果画像72で示すように、検出された画像領域が1つであり、かつ、相関値が高いので、画像領域を安定して検出することができそうであると判断できる。
従って、使用者は、サーチ結果画像表示用ユーザーインターフェース68に表示されている第1サーチ処理結果画像71及び第2サーチ処理結果画像72を見ることで、どの程度の相関値で画像領域が検出されているのかを容易に把握することができる。
サーチ結果画像表示用ユーザーインターフェース68の第1画像表示領域68aには、サーチ処理部50aが取得した第1のサーチ処理の処理時間を表示する第1処理時間表示領域68dが設けられている。また、サーチ結果画像表示用ユーザーインターフェース68の第2画像表示領域68bには、サーチ処理部50aが取得した第2のサーチ処理の処理時間を表示する第2処理時間表示領域68fが設けられている。これにより、使用者は、第1のサーチ処理の処理時間と第2のサーチ処理の処理時間とを容易に比較することができる。相関値は、0〜100の範囲で表示することができる。
サーチ結果画像表示用ユーザーインターフェース68の第1画像表示領域68aには、最高相関画像領域の相関値を表示する第1相関値表示領域68eが設けられている。また、サーチ結果画像表示用ユーザーインターフェース68の第2画像表示領域68bには、最高相関画像領域の相関値を表示する第2相関値表示領域68gが設けられている。これにより、使用者は、第1のサーチ処理の最高相関値と第2のサーチ処理の最高相関値とを容易に比較することができる。
検出レベル調整領域68cは、検出レベル(所定値)を調整するための領域である。検出レベルは相関値とすることができ、例えば検出レベル調整領域68cに「60」と入力することで、相関値が60以上の画像領域だけを抽出して第1画像表示領域68a及び第2画像表示領域68bに表示させることができるようになっている。検出レベル調整領域68cに入力された検出レベルは、第1のサーチ処理と第2のサーチ処理の両方に適用される。つまり、第1のサーチ処理で使用される検出レベルと、第2のサーチ処理で使用される検出レベルとを一括して調整可能に構成されている。第1のサーチ処理で使用される検出レベルと、第2のサーチ処理で使用される検出レベルとは同じ値である。
例えば、図11に示すように、検出レベル調整領域68cに「40」と入力して検出レベルを下げると、表示制御部43は、検出レベル調整後の第1サーチ処理結果画像71及び第2サーチ処理結果画像72をモニタ5に表示させる。検出レベル調整後の第1サーチ処理結果画像71及び第2サーチ処理結果画像72は、同時に表示してもよいし、切り替えて表示してもよい。
検出レベルを下げると、第1画像表示領域68a及び第2画像表示領域68bに表示される画像領域の数が増えることになる。検出レベルを下げても画像領域の数が増えない場合は、最高相関画像領域と、それ未満の相関値を有する画像領域との相関値の差が大きいということであり、画像領域の検出が安定しているといえる。従って、検出レベルの調整によって画像領域の検出の安定度を把握することもできる。
この実施形態では、最高相関画像領域と、それ未満の相関値を有する画像領域とを容易に区別するために、これら画像領域を異なる表示形態で表示するようにしている。その一例として、枠線71a、71bの大きさを相関値によって変える形態を示したが、異なる表示形態の例としては、最高相関画像領域を囲む枠線の色と、それ未満の相関値を有する画像領域を囲む枠線の色とを変える、枠線の線種を変える、枠線の太さを変える等を挙げることができる。また、最高相関画像領域に着色する色と、それ未満の相関値を有する画像領域に着色する色とを変えことも、異なる表示形態の一つである。さらに、最高相関画像領域と、それ未満の相関値を有する画像領域とにそれぞれ相関値を表示する形態であってもよい。
サーチ処理部50aは、項目入力部49で受け付けた共通項目を第1のサーチ処理及び第2のサーチ処理に適用する。これにより、例えば角度範囲のように、第1のサーチ処理及び第2のサーチ処理に適用する項目を複数回入力しなくて済む。
サーチ処理部50aは、複数の入力画像を連続的に取得して各入力画像に対して第1のサーチ処理と第2のサーチ処理とを実行する。そして、表示制御部43は、第1サーチ処理結果画像71及び第2サーチ処理結果画像72を更新するように構成されている。1回のサーチ処理の結果を見ただけでは、サーチ処理の安定性を推測するのが難しい場合があるが、異なる入力画像のそれぞれに対して第1のサーチ処理を実行して、複数の第1サーチ処理結果画像71を得て、モニタ5に順次表示することで、第1のサーチ処理の安定性を推測することができる。第2のサーチ処理についても同様である。複数の第1サーチ処理結果画像71及び第2サーチ処理結果画像72をモニタ5に表示させて安定性を見ることもできる。
(サーチ処理選択部51aの構成)
サーチ処理選択部51aは、図11に示すサーチ結果画像表示用ユーザーインターフェース68に第1サーチ処理結果画像71と第2サーチ処理結果画像72が表示された後に、第1のサーチ処理又は第2のサーチ処理のいずれかの選択を受け付ける部分である。具体的には、サーチ処理選択部51aは、表示制御部43により表示された第1サーチ処理結果画像71または第2サーチ処理結果画像72が選択されたか否かを検出し、第1サーチ処理結果画像71が選択されたことを検出した場合には第1のサーチ処理を選択し、第2サーチ処理結果画像72が選択されたことを検出した場合には第2のサーチ処理を選択するように構成されている。
つまり、使用者がモニタ5に表示された第1サーチ処理結果画像71を選択すると、第1のサーチ処理が自動的に選択され、使用者がモニタ5に表示された第2サーチ処理結果画像72を選択すると、第2のサーチ処理が自動的に選択される。これにより、使用者の直感的な操作によってサーチ処理を選択することができる。
尚、第1サーチ処理結果画像71の選択とは、第1サーチ処理結果画像71そのものの選択操作であってもよいし、第1サーチ処理結果画像71を囲む枠を選択する操作や、各種ボタン等による選択操作であってもよい。第2サーチ処理結果画像72の選択も同様である。このような操作の検出は、例えば、マウス7のポインタ位置の検出及びクリック操作の検出により可能となる。あるいは、図11に示すサーチ結果画像表示用ユーザーインターフェース68の検出レベル調整領域68c内にあるツール選択のドロップダウンリストから、いずれかを選択しても良い。ツール選択後に検出レベル調整領域68cのインターフェース内にある「次へ」ボタンを押すと、検査に用いるツールが確定される。
(サーチ処理におけるパラメータ変更)
サーチ処理部50aは、入力画像に適用される画像処理に係るパラメータ(サーチ処理用パラメータ)を変更して、検査設定記憶部46cに記憶されたサーチ処理を繰り返し実行して複数の検出結果を取得するように構成されている。そして、表示制御部43は、サーチ処理部50aで取得された複数の検出結果を同時又は切り替えて表示可能に構成されている。
サーチ処理用パラメータには、フィルタ処理の有無、フィルタ処理の種別、フィルタ処理の強度のうち、いずれか1つまたは複数が含まれており、特に、画像縮小度を含むことができる。サーチ処理用パラメータには、フィルタ処理の有無、フィルタ処理の種別及びフィルタ処理の強度の全てが含まれていてもよい。サーチ処理用パラメータに含まれる項目や値は、第1のサーチ処理と第2のサーチ処理とで異なっていてもよい。
エッジベースサーチの場合、サーチ処理用パラメータには、エッジベースサーチで調整頻度の高いパラメータを含むことができ、例えば、エッジ抽出のための「画像縮小度」と、「エッジ抽出しきい値」の2つのパラメータを挙げることができる。
図12は、サーチ処理選択部51aによって確定されたツールがエッジベースサーチの場合に、入力画像に適用される画像処理に係るパラメータを変更してサーチ処理し、その結果得られた画像を一覧表示した例であり、一覧表示用インターフェース90を示している。本例では、サーチ処理選択部51aによって確定されたツールが、第2のサーチ処理(エッジベースサーチ)としているので、図12に示す画像は、第2サーチ処理結果画像72とするが、サーチ処理選択部51aによって確定されたツールが、第1のサーチ処理(パターンサーチ)とする場合には、第1サーチ処理結果画像71を図12に示すような一覧表示形態として表示することもできる。以下、第2サーチ処理結果画像72を表示した場合について説明するが、第1サーチ処理結果画像71を表示した場合も同様である。
図12に示す一覧表示用インターフェース90は、縦方向に並ぶ画像が「画像縮小度」を変更した画像であり、横方向に並ぶ画像が「エッジ抽出しきい値」を変更した画像となっている。8通りのパラメータ設定を行っているため、8つの第2サーチ処理結果画像72を表示しているが、これに限らず、2通り以上のパラメータ設定を行えばよく、従って、一覧表示用インターフェース90には少なくとも2つの第2サーチ処理結果画像72を表示することができる。一覧表示用インターフェース90では、表示される画像を切り替えたり、拡大して表示することもできるようになっている。
一覧表示用インターフェース90には、検出レベル調整領域90aが設けられている。検出レベル調整領域90aは、図10や図11に示す検出レベル調整領域68cと同じであり、第2サーチ処理結果画像72を一覧表示した状態で検出レベルを調整可能になっている。調整した検出レベルは、全ての第2サーチ処理結果画像72に対して適用される。
使用者は、一覧表示用インターフェース90に表示されている複数の第2サーチ処理結果画像72の中から任意の1つの第2サーチ処理結果画像72を選択することができる。使用者による第2サーチ処理結果画像72の選択操作は、例えば操作入力部44によって受け付けられる。例えば、使用者がモニタ5に表示された複数の第2サーチ処理結果画像72の中から「7」と表示されている画像にマウス7のポインタを合わせてクリック操作すると、当該画像の選択が完了する。
尚、第2サーチ処理結果画像72の選択とは、第2サーチ処理結果画像72そのものの選択操作であってもよいし、第2サーチ処理結果画像72を囲む枠を選択する操作や、各種ボタン等による選択操作であってもよい。このような操作の検出は、例えば、マウス7のポインタ位置の検出及びクリック操作の検出により可能となる。あるいは、図12に示す一覧表示用インターフェース90の検出レベル調整領域90a内にある画像選択のドロップダウンリストから、「7」を選択しても良い。画像選択後に検出レベル調整領域90aのインターフェース内にある「終了」ボタンを押すと、検査に用いるパラメータが確定される。
例えば、図12に示す一覧表示用インターフェース90の検出レベル調整領域90a内にある「終了」ボタンの変わりに「次へ」ボタンにするなどし、始めに第1段階のパラメータ変更を行った後、変更後のパラメータに関連する第2段階のパラメータを調整する等、パラメータの変更を多階層化することにより、パラメータの詳細な設定を可能にしてもよい。多階層化された場合には、図13のような画像選択の画面が、画像選択の過程で複数回出現することになる。
また、検出レベル調整領域90a内にある「前へ」ボタンを押すことで、1つ前の選択画面に戻る操作を受け付けるように構成することもできる。画像選択されているパラメータを維持した状態で1つ前の画面に戻ることで、好ましいパラメータに調整された状態で図10に示す画面に戻って検査ツール同士の比較を行うこともできる。
図13は、パラメータ確定後に最終確認するために、選択された第2サーチ処理結果画像72を拡大表示する選択表示インターフェース91を示すものである。この選択表示インターフェース91には、パラメータ調整領域91aが設けられている。このパラメータ調整領域91aには、パラメータを個別に変更するための操作ボタン等が設けられており、使用者は、第2サーチ処理結果画像72の選択後においても必要に応じてパラメータの変更、微調整が可能である。
サーチ処理選択部51aで選択されたサーチ処理との組み合わせによってサーチ処理の安定性を高める画像処理を予め設定しておき、選択されたサーチ処理を行う入力画像に対して当該画像処理を自動で行うように構成することもできる。例えば、正規化相関のサーチ処理は、ワークWの細かい濃淡変化の影響をキャンセルするために、前処理フィルタとして「ぼかし処理」のような大きな範囲での平滑化フィルタと相性がよいので、正規化相関のサーチ処理では、「ぼかし処理」を入力画像に自動的に適用する。正規化相関のサーチ処理の場合、「ぼかし処理」の強度と、「画像縮小度」を変更することにより、図12に示すような複数のサーチ処理結果画像を得るのが好ましい。
(欠陥検査部50bの構成)
欠陥検査部50bは、第1の欠陥検査処理と、第2の欠陥検査処理とを実行する部分である。第1の欠陥検査処理は、所定の閾値よりも大きな第1の欠陥検査用特徴量を有する画素の集合を、欠陥サイズ設定部47cで設定された欠陥サイズに基づいて欠陥として検出すべきか否かを判定する処理である。第2の欠陥検査処理は、所定の閾値よりも大きな第2の欠陥検査用特徴量を有する画素の集合を、欠陥サイズ設定部47cで設定された欠陥サイズに基づいて欠陥として検出すべきか否かを判定する処理である。第1の欠陥検査処理で使用する欠陥サイズと、第2の欠陥検査処理で使用する欠陥サイズとは同じである。第1の欠陥検査処理及び第2の欠陥検査処理は、撮像部3によって新たにワークWを撮像して得られた入力画像を用いて実行される。また、第1の欠陥検査用特徴量及び第2の欠陥検査用特徴量は、欠陥検査用特徴量抽出部48で抽出される。
第1の欠陥検査用特徴量が周辺画素との濃淡値の差である場合には、第1の欠陥検査処理は傷検査ツールとすることができる。第2の欠陥検査用特徴量が濃淡値である場合には、第2の欠陥検査処理はブロブ計測ツールとすることができる。
欠陥検査部50bは、第1の欠陥検査処理の処理時間と、第2の欠陥検査処理の処理時間とを取得する。すなわち、第1の欠陥検査処理を開始してから終了するまでの時間と、第2の欠陥検査処理を開始してから終了するまでの時間とをそれぞれ計測して保持または記憶部46に記憶させておくことができる。第1の欠陥検査処理と第2の欠陥検査処理とは並行して進めてもよいし、異なるタイミングで実施してもよい。
表示制御部43は、第1の欠陥検査処理により検出された欠陥領域を表示した第1欠陥検査処理画像と、第2の欠陥検査処理により検出された欠陥領域を表示した第2欠陥検査処理画像とをモニタ5に同時に表示させるように構成されている。
図14に示すように、表示制御部43は、欠陥検査結果画像表示用ユーザーインターフェース78をモニタ5に表示させる。欠陥検査結果画像表示用ユーザーインターフェース78には、第1の欠陥検査処理の結果得られた画素の集合の位置を表示した第1欠陥検査処理画像81が表示される第1画像表示領域78aと、第2の欠陥検査処理の結果得られた画素の集合の位置を表示した第2欠陥検査処理画像82が表示される第2画像表示領域78bと、検出レベル調整領域78cとが設けられている。第1欠陥検査処理画像81及び第2欠陥検査処理画像82は、入力画像に対して画素の集合の位置を重畳表示した画像である。
この実施形態では、第1欠陥検査処理画像81と第2欠陥検査処理画像82をモニタ5に同時に表示するようにしているが、これに限らず、第1欠陥検査処理画像81と第2欠陥検査処理画像82を切り替えてモニタ5に表示するようにしてもよい。例えば、欠陥検査結果画像表示用ユーザーインターフェース78に、画像切替手段(例:ボタン等)を設けておき、画像切替手段を使用者がマウス7等で操作することにより、第1欠陥検査処理画像81のみを表示させたり、第2欠陥検査処理画像82のみを表示させることができる。また、例えば、第1欠陥検査処理画像81及び第2欠陥検査処理画像82のそれぞれの周辺部にタブを設けておき、タブを操作することにより、第1欠陥検査処理画像81のみを表示させたり、第2欠陥検査処理画像82のみを表示させることもできる。
表示制御部43は、第1の欠陥検査処理により検出された欠陥領域に目印81aを付し、この目印81aを第1欠陥検査処理画像81に重畳表示するように構成されている。目印81aは、例えば+印、矢印、丸印等を挙げることができる。また、欠陥領域を囲む枠線を第1欠陥検査処理画像81に重畳表示するように構成することもできる。
さらに、表示制御部43は、第2の欠陥検査処理により検出された欠陥領域に、第1欠陥検査処理画像81の場合と同様な目印82aを付し、この目印82aを第2欠陥検査処理画像82に重畳表示するように構成されている。また、欠陥領域を囲む枠線を第2欠陥検査処理画像82に重畳表示するように構成することもできる。
欠陥検査結果画像表示用ユーザーインターフェース78の第1画像表示領域78aには、欠陥検査部50bが取得した第1の欠陥検査処理の処理時間を表示する第1処理時間表示領域78dが設けられている。また、欠陥検査結果画像表示用ユーザーインターフェース78の第2画像表示領域78bには、欠陥検査部50bが取得した第2の欠陥検査処理の処理時間を表示する第2処理時間表示領域78fが設けられている。これにより、使用者は、第1の欠陥検査処理の処理時間と第2の欠陥検査処理の処理時間とを容易に比較することができる。
傷検査ツールにより得られた第1欠陥検査処理画像81と、ブロブ計測ツールにより得られた第2欠陥検査処理画像82と比較すると、第1欠陥検査処理画像81の方は、傷検査ツールによりセグメント化を行って処理するため、細かいノイズへの耐性が強いが、検出される傷の大きさ(面積)が、実際の欠陥よりも大きめに検出される傾向があることが分かる。一方、ブロブ計測ツールにより得られた第2欠陥検査処理画像82の方は、検出される傷の大きさ(面積)が、実際の欠陥と同じ大きさで検出されるが、細かいノイズも検出されやすい傾向がある。また、ブロブ計測ツールの場合、検出状態に応じて処理時間が変動しやすい。
検出レベル調整領域78cは、検出レベル(閾値)を調整するための領域である。検出レベルは階調値とすることができ、例えば検出レベル調整領域78cに「50」と入力することで、階調値が50よりも大きな画素の集合を抽出して第1画像表示領域78a及び第2画像表示領域78bに表示させることができるようになっている。検出レベル調整領域78cに入力された検出レベルは、第1の欠陥検査処理と第2の欠陥検査処理の両方に適用される。つまり、第1の欠陥検査処理で使用される検出レベルと、第2の欠陥検査処理で使用される検出レベルとを一括して調整可能に構成されている。第1の欠陥検査処理で使用される検出レベルと、第2の欠陥検査処理で使用される検出レベルとは同じ値である。傷検査ツールを用いる第1の欠陥検査処理では、小領域(セグメント)の平均濃度値の周辺との変化量が、指定された検出レベルを超える部分を検出する。ブロブ計測ツールを用いる第2の欠陥検査処理では、画面全体の濃淡値の平均値に対して、検出レベルを超える濃度値をもった部分を検出する。
例えば、図15に示すように、検出レベル調整領域78cに「30」と入力して検出レベルを下げると、表示制御部43は、検出レベル調整後の第1欠陥検査処理画像81及び第2欠陥検査処理画像82をモニタ5に表示させる。検出レベル調整後の第1欠陥検査処理画像81及び第2欠陥検査処理画像82は、同時に表示してもよいし、切り替えて表示してもよい。
検出レベルを下げると、第1画像表示領域78a及び第2画像表示領域78bに表示される画素の集合の数が増えることになる。検出レベルを変更することで、欠陥の検出状態を調整することができ、検出レベルの違いによる検出処理の安定性を比較することができる。
欠陥検査部50bは、項目入力部49で受け付けた共通項目を第1の欠陥検査処理及び第2の欠陥検査処理に適用する。これにより、例えば明暗指定のように、第1の欠陥検査処理及び第2の欠陥検査処理に適用する項目を複数回入力しなくて済む。
欠陥検査部50bは、複数の検査画像を連続的に取得して各検査画像に対して第1の欠陥検査処理と第2の欠陥検査処理とを実行する。そして、表示制御部43は、第1欠陥検査処理画像81及び第2欠陥検査処理画像82を更新するように構成されている。1回の欠陥検査処理の結果を見ただけでは、欠陥検査処理の安定性を推測するのが難しい場合があるが、異なる入力画像のそれぞれに対して第1の欠陥検査処理を実行して、複数の第1欠陥検査処理画像81を得て、モニタ5に順次表示することで、第1の欠陥検査処理の安定性を推測することができる。第2の欠陥検査処理についても同様である。複数の第1欠陥検査処理画像81及び第2欠陥検査処理画像82をモニタ5に表示させて安定性を見ることもできる。
(検査処理選択部51bの構成)
検査処理選択部51bは、図14に示す欠陥検査結果画像表示用ユーザーインターフェース78に第1欠陥検査処理画像81と第2欠陥検査処理画像82が表示された後に、第1の欠陥検査処理又は第2の欠陥検査処理のいずれかの選択を受け付ける部分である。具体的には、検査処理選択部51bは、表示制御部43により表示された第1欠陥検査処理画像81または第2欠陥検査処理画像82が選択されたか否かを検出し、第1欠陥検査処理画像81が選択されたことを検出した場合には第1の欠陥検査処理を選択し、第2欠陥検査処理画像82が選択されたことを検出した場合には第2の欠陥検査処理を選択するように構成されている。
つまり、使用者がモニタ5に表示された第1欠陥検査処理画像81を選択すると、第1の欠陥検査処理が自動的に選択され、使用者がモニタ5に表示された第2欠陥検査処理画像82を選択すると、第2の欠陥検査処理が自動的に選択される。これにより、使用者の直感的な操作によってサーチ処理を選択することができる。
尚、第1欠陥検査処理画像81の選択とは、第1欠陥検査処理画像81そのものの選択操作であってもよいし、第1欠陥検査処理画像81を囲む枠を選択する操作や、各種ボタン等による選択操作であってもよい。第2欠陥検査処理画像82の選択も同様である。このような操作の検出は、例えば、マウス7のポインタ位置の検出及びクリック操作の検出により可能となる。あるいは、図14に示す欠陥検査結果画像表示用ユーザーインターフェース78の検出レベル調整領域78c内にあるツール選択のドロップダウンリストから、いずれかを選択しても良い。ツール選択後に検出レベル調整領域78cのインターフェース内にある「次へ」ボタンを押すと、検査に用いるツールが確定される。
(欠陥検査処理におけるパラメータ変更)
図2に示す欠陥検査部50bは、検査画像に適用される画像処理に係るパラメータ(欠陥検査用パラメータ)を変更して、検査設定記憶部46cに記憶された欠陥検査処理を繰り返し実行して複数の検出結果を取得するように構成されている。そして、表示制御部43は、欠陥検査部50bで取得された複数の検出結果を同時又は切り替えて表示可能に構成されている。
欠陥検査用パラメータには、フィルタ処理の有無、フィルタ処理の種別、フィルタ処理の強度のうち、いずれか1つまたは複数が含まれている。欠陥検査用パラメータには、フィルタ処理の有無、フィルタ処理の種別及びフィルタ処理の強度の全てが含まれていてもよい。欠陥検査用パラメータに含まれる項目や値は、第1の欠陥検査処理と第2の欠陥検査処理とで異なっていてもよい。
傷検査ツールの場合、検査画像に適用される画像処理に係る欠陥検査用パラメータには、傷検査ツールを使用する際に調整頻度の高いパラメータや、傷検査ツールと相性のよい前処理フィルタを含むことができる。傷検査ツールを使用する際に調整頻度の高いパラメータとしては、例えば、「セグメント」のサイズがある。傷検査ツールと相性のよい前処理フィルタは、「リアルタイム濃淡補正」があり、この「リアルタイム濃淡補正」の「抽出サイズ」を欠陥検査用パラメータとすることができる。
図16は、検査処理選択部51bによって確定されたツールが傷検査ツールの場合に、検査画像に適用される画像処理に係るパラメータを変更して欠陥検査処理して得られた画像を一覧表示した例であり、一覧表示用インターフェース93を示している。本例では、検査処理選択部51bによって確定されたツールを第1の欠陥検査処理(傷検査ツール)としているので、図16に示す画像は、第1欠陥検査処理画像81とするが、検査処理選択部51bによって確定されたツールが、第2の欠陥検査処理(ブロブ計測ツール)とする場合には、第2欠陥検査処理画像82を図16に示すような一覧表示とすることもできる。以下、第1欠陥検査処理画像81を表示した場合について説明するが、第2欠陥検査処理画像82を表示した場合も同様である。
図16に示す一覧表示用インターフェース93は、縦方向に並ぶ画像が「セグメントサイズ」を変更した画像であり、横方向に並ぶ画像が「リアルタイム濃淡補正」の「抽出サイズ」を変更した画像となっている。8通りのパラメータ設定を行っているため、8つの第1欠陥検査処理画像81を表示しているが、これに限らず、2通り以上のパラメータ設定を行えばよく、従って、一覧表示用インターフェース93には少なくとも2つの第1欠陥検査処理画像81を表示することができる。一覧表示用インターフェース93では、表示される画像を切り替えたり、拡大して表示することもできるようになっている。
一覧表示用インターフェース93には、検出レベル調整領域93aが設けられている。検出レベル調整領域93aは、図14や図15に示す検出レベル調整領域78cと同じであり、第1欠陥検査処理画像81を一覧表示した状態で検出レベルを調整可能になっている。調整した検出レベルは、全ての第1欠陥検査処理画像81に対して適用される。
使用者は、一覧表示用インターフェース93に表示されている複数の第1欠陥検査処理画像81の中から任意の1つの第1欠陥検査処理画像81を選択することができる。使用者による第1欠陥検査処理画像81の選択操作は、例えば操作入力部44によって受け付けられる。例えば、使用者がモニタ5に表示された複数の第1欠陥検査処理画像81の中から「2」と表示されている画像にマウス7のポインタを合わせてクリック操作すると、当該画像の選択が完了する。
尚、第1欠陥検査処理画像81の選択とは、第1欠陥検査処理画像81そのものの選択操作であってもよいし、第1欠陥検査処理画像81を囲む枠を選択する操作や、各種ボタン等による選択操作であってもよい。このような操作の検出は、例えば、マウス7のポインタ位置の検出及びクリック操作の検出により可能となる。あるいは、図16に示す一覧表示用インターフェース93の検出レベル調整領域93a内にある画像選択のドロップダウンリストから、「7」を選択しても良い。画像選択後に検出レベル調整領域93aのインターフェース内にある「終了」ボタンを押すと、検査に用いるパラメータが確定される。
例えば、検出レベル調整領域93a内にある「終了」ボタンの変わりに「次へ」ボタンを配置するなどし、始めに第1段階のパラメータ変更を行った後、変更後のパラメータに関連する第2段階のパラメータを調整する等、パラメータの変更を多階層化することにより、パラメータの詳細な設定を可能にしてもよい。
多階層化された場合には、図16のような画像選択の画面が、画像選択の過程で複数回出現することになる。また、検出レベル調整領域93aのインターフェース内にある「前へ」ボタンを押すことで、1つ前の選択画面に戻る操作を受け付けるように構成することもできる。画像選択されているパラメータを維持した状態で1つ前の画面に戻ることで、好ましいパラメータに調整された状態で図14の画面に戻って検査ツール同士の比較を行うこともできる。
図17は、パラメータ確定後に最終確認するために、選択された第1欠陥検査処理画像81を拡大表示する選択表示インターフェース94を示すものである。この選択表示インターフェース94には、パラメータ調整領域94aが設けられている。このパラメータ調整領域94aには、パラメータを個別に変更するための操作ボタン等が設けられており、使用者は、第1欠陥検査処理画像81の選択後においても必要に応じてパラメータの変更、微調整が可能である。
検査処理選択部51bで選択された欠陥検査処理との組み合わせによって欠陥検査処理の安定性を高める画像処理を予め設定しておき、選択された欠陥検査処理を行う検査画像に対して当該画像処理を自動で行うように構成することもできる。
例えば、傷検査ツールのアルゴリズムは、周辺との差分を検出する処理のため、単体のアルゴリズム自体は、周辺に対して白い傷も、黒い傷も両方検出してしまい、明暗の選別機能がない。これに対し、前処理フィルタとして搭載している「リアルタイム濃淡補正」は、周辺に対して明るい部分や、暗い部分の明暗の選別機能があるため、「リアルタイム濃淡補正」を傷検査ツールと組み合わせて使うことで、傷検査ツールに、明暗の選別機能を加えることができる。使用者に事前に入力してもらう欠陥(傷)の明暗情報に基づいて、画像検査装置1が前処理フィルタのパラメータを適切に設定することで、アルゴリズムの特性や、前処理フィルタの知識がなくても、熟練者が行うような設定を簡単に作ることができる。前処理フィルタの種別については図18に示すが、これらフィルタ以外のフィルタを搭載することもできる。図18に示すフィルタ種別表示インターフェース96には、前処理フィルタの名称を表示する前処理フィルタ表示部96aと、前処理フィルタ表示部96aに表示されている前処理フィルタの詳細設定画面を開くための詳細ボタン96bとが設けられている。前処理フィルタ表示部96aには、ドロップダウンリストが設けられており、ドロップダウンリストから前処理フィルタの選択が可能になっている。
傷検査ツールのパラメータである「セグメント」のサイズは、検出したい欠陥と同程度の大きさに設定するのが、検出能力を最も引き出すことができる設定になる。使用者に事前に入力してもらう欠陥のサイズ情報に基づいて、画像検査装置1が初期値を適切に設定することで、アルゴリズムの特性を踏まえた、適切な設定を初期段階で提示することができる。
ブロブ計測ツールは、単純な2値化をベースにしているため、明暗のシェーディングがかかると、2値化が安定しない。これに対し、前処理フィルタとして搭載している「リアルタイム濃淡補正」は、明暗のシェーディングを除外する効果を得られるため、「リアルタイム濃淡補正」をブロブ計測ツール組み合わせて使うことで、ブロブ計測ツールによる2値化を安定させることができる。
また、ブロブ計測ツールは、細かいノイズにも反応してしまうデメリットがあるが、前処理フィルタとして搭載している「ぼかし処理」と組み合わせることで、ノイズ耐性を大きく上げることができる。使用者に事前に入力してもらう欠陥の明暗情報や欠陥のサイズ情報に基づいて、画像検査装置1が前処理フィルタのパラメータ初期値を適切に設定することで、前処理フィルタの知識がなくても、熟練者が行うような設定を簡単に作ることができる。
また、ブロブ計測ツールでは、一定以下の面積を持つものを除外するパラメータを内部で持っているが、使用者に事前に入力してもらう欠陥のサイズ情報に基づいて、画像検査装置1が初期値を適切に設定する(例えば、指定された欠陥のサイズの半分以下の面積のものは除外するなど)ことで、使用者側でパラメータ調整せずに、適切な設定を初期段階で提示することができる。
傷検査ツールのアルゴリズムについて、内部的に変更するパラメータとして、「検出方向」を設定するのもよい。背景模様が一様な方向に連続しているワークWに対しては、検出方向のパラメータが効きやすいからである。また、ブロブ計測ツールの場合、「リアルタイム濃淡補正」の抽出サイズと、「ぼかし処理」の強度を変更することにより、図16に示すような複数の検出結果画像を得るのが好ましい。
(画像検査装置1の設定モードの説明)
次に、画像検査装置1の設定モードについて具体的に説明する。図19に示すフローチャートは、サーチ処理の設定モードの手順を示しており、使用者による所定の開始操作によってステップSA1に進み、ステップSA1では、撮像部3によりワークWを撮像して登録画像を取得する。ステップSA2では、ステップSA1で取得した登録画像64を登録画像記憶部46aに記憶するとともに、モニタ5に表示する。登録画像64の記憶及び表示後、ステップSA3に進む。ステップSA3では、図20に示すように、選択用インターフェース98を登録画像64に重畳表示する。選択用インターフェース98には、「傷検査」ボタン98aと、「サーチ」ボタン98bとが設けられており、使用者がマウス7でクリック操作することができるようになっている。図20では、「サーチ」ボタン98bがクリックされた状態を示している。
図19のステップSA3では、サーチ処理が選択されたか否かを判定する。具体的には、図20に示す選択用インターフェース98の「サーチ」ボタン98bがクリックされたか否か及び「傷検査」ボタン98aがクリックされたか否かを検出し、「サーチ」ボタン98bがクリックされた場合にはYESと判定してステップSA4に進み、「傷検査」ボタン98aがクリックされた場合にはNOと判定し、後述する図21に示すフローチャートのステップSB4以降のステップを行う。
図19に示すフローチャートのステップSA4では、サーチ処理の角度範囲の設定を受け付ける。具体的には、図9に示す共通設定項目入力欄67をモニタ5に表示させ、使用者が角度範囲入力部67aを操作することにより、サーチ処理の角度範囲を設定することができる。
サーチ処理の角度範囲の設定が終了して「OK」ボタンが押されたことを検出すると、図17に示すフローチャートのステップSA5に進み、サーチ領域の設定を受け付ける。具体的には、図6に示すようにモニタ5に表示された登録画像64上で、使用者がマウス7の操作によってサーチ領域を囲むように枠線64bを描く。これにより、サーチ領域が設定される。
サーチ領域が設定された後、ステップSA6に進み、パターン領域の設定を受け付ける。具体的には、図6に示すようにモニタ5に表示された登録画像64上で、使用者がマウス7の操作によってサーチ対象のワークを囲むように枠線64aを描く。これにより、パターン領域が設定される。ステップSA4〜SA6の順番は入れ替えることができる。
ステップSA4〜SA6を経た後、ステップSA7に進み、パターン領域内の画像から第1のサーチ処理用特徴量及び第2のサーチ処理用特徴量を抽出し、サーチ処理用特徴量記憶部46bに記憶させる。
ステップSA7の後、ステップSA8に進み、サーチ処理部50aが第1のサーチ処理と第2のサーチ処理を実行する。この例では、第1のサーチ処理をパターンサーチとし、第2のサーチ処理をエッジベースサーチとする。
サーチ処理を実行した後、ステップSA9では、図10に示すサーチ結果画像表示用ユーザーインターフェース68をモニタ5に表示し、第1サーチ処理結果画像71及び第2サーチ処理結果画像72を当該モニタ5に表示する。
第1サーチ処理結果画像71及び第2サーチ処理結果画像72をモニタ5に表示した状態で、ステップSA10に進み、検出レベル調整領域68cの検出レベルを調整する。検出レベル調整後の第1サーチ処理結果画像71及び第2サーチ処理結果画像72がモニタ5に表示される(図11参照)。このステップSA10は必要に応じて行えばよく、省略してもよい。
その後のステップSA11では、サーチ処理選択部51aによりサーチ処理の選択を受け付ける。サーチ処理の選択後、ステップSA12に進み、選択したサーチ処理を検査設定記憶部46cに記憶させる。
サーチ処理を記憶した後、ステップSA13に進み、サーチ処理用パラメータを変更し、ステップSA11で選択されたサーチ処理を各パラメータで実行し、複数のサーチ処理結果画像を得る。続くステップSA14では、図12に示す一覧表示用インターフェース90をモニタ5に表示し、ステップSA13のサーチ処理結果画像を当該モニタ5に表示させる。
ステップSA15では、サーチ処理用パラメータの選択を受け付ける。使用者が、一覧表示用インターフェース90上の複数のサーチ処理結果画像の中から1つのサーチ処理結果画像をマウス7等の操作によって選択すると、選択されたサーチ処理結果画像に適用されているサーチ処理用パラメータを読み込んで一旦記憶する。
ステップSA15で選択されたサーチ処理結果画像は、図13に示すように、選択表示インターフェース91によってモニタ5に表示される。ステップSA16では、選択表示インターフェース91のパラメータ調整領域91aの操作ボタンを操作してパラメータの変更、微調整を行う。ステップSA16は必要に応じて行えばよく、省略してもよい。
図21に示すフローチャートは、欠陥検査処理の設定モードの手順を示しており、使用者による所定の開始操作によってステップSB1に進み、ステップSB1では、撮像部3によりワークWを撮像して検査画像を取得する。ステップSB2では、ステップSB1で取得した検査画像を記憶部46に記憶するとともに、モニタ5に表示する。検査画像の記憶及び表示後、ステップSB3に進む。ステップSB3では、図22に示すように、図20と同様な選択用インターフェース98を検査画像に重畳表示する。図22では、「傷検査」ボタン98aがクリックされた状態を示している。
図21のステップSB3では、欠陥検査(傷検査)処理が選択されたか否かを判定する。具体的には、図22に示す選択用インターフェース98の「サーチ」ボタン98bがクリックされたか否か及び「傷検査」ボタン98aがクリックされたか否かを検出し、「傷検査」ボタン98aがクリックされた場合にはYESと判定してステップSB4に進み、「サーチ」ボタン98bがクリックされた場合にはNOと判定し、図19に示すフローチャートのステップSA4以降のステップを行う。
図21に示すフローチャートのステップSB4では、明暗情報の入力を受け付ける。具体的には、図8に示す共通設定項目入力欄66をモニタ5に表示させ、使用者がドロップダウンリストボタン66aを操作することにより、「白黒両方」、「白い傷のみ」、「黒い傷のみ」のうちから1つを選択することができる。
明暗情報の入力が終了して「OK」ボタンが押されたことを検出すると、図21に示すフローチャートのステップSB5に進み、検査領域の設定を受け付ける。具体的には、図7に示すようにモニタ5に表示された検査画像65上で、使用者がマウス7の操作によって検査領域を囲むように枠線65aを描く。これにより、検査領域が設定される。
検査領域が設定された後、ステップSB6に進み、欠陥サイズの設定を受け付ける。具体的には、図7に示すようにモニタ5に表示された検査画像65上で、使用者がマウス7の操作によって欠陥部65cを囲むように枠線65bを描く。枠線65bを描く代わりに、上述した欠陥サイズの数値での入力、欠陥部位の描画による入力であってもよい。これにより、欠陥サイズが設定される。ステップSB4〜SB6の順番は入れ替えることができる。
ステップSB4〜SB6を経た後、ステップSB7に進み、検査領域内の各画像について、第1の欠陥検査用特徴量及び第2の欠陥検査用特徴量を抽出し、記憶部46に記憶させる。
ステップSB7の後、ステップSB8に進み、欠陥検査部50bが第1の欠陥検査処理と第2の欠陥検査処理を実行する。この例では、第1の欠陥検査処理を傷検査ツールとし、第2の欠陥検査処理をブロブ計測ツールとする。
欠陥検査処理を実行した後、ステップSB9では、図14に示す欠陥検査結果画像表示用ユーザーインターフェース78をモニタ5に表示し、第1欠陥検査処理画像81及び第2欠陥検査処理画像82を当該モニタ5に表示する。
第1欠陥検査処理画像81及び第2欠陥検査処理画像82をモニタ5に表示した状態で、ステップSB10に進み、検出レベル調整領域78cの検出レベルを調整する。検出レベル調整後の第1欠陥検査処理画像81及び第2欠陥検査処理画像82がモニタ5に表示される(図15参照)。このステップSB10は必要に応じて行えばよく、省略してもよい。
その後のステップSB11では、検査処理選択部51bにより欠陥検査処理の選択を受け付ける。欠陥検査処理の選択後、ステップSB12に進み、選択した欠陥検査処理を検査設定記憶部46cに記憶させる。
欠陥検査処理を記憶した後、ステップSB13に進み、欠陥検査用パラメータを変更し、ステップSB11で選択された欠陥検査処理を各パラメータで実行し、複数の欠陥検査処理画像を得る。続くステップSB14では、図16に示す一覧表示用インターフェース93をモニタ5に表示し、ステップSB13の欠陥検査処理画像を当該モニタ5に表示させる。
ステップSB15では、欠陥検査用パラメータの選択を受け付ける。使用者が、一覧表示用インターフェース93上の複数の欠陥検査処理画像の中から1つの欠陥検査処理画像をマウス7等の操作によって選択すると、選択された欠陥検査処理画像に適用されている欠陥検査用パラメータを読み込んで一旦記憶する。
ステップSB15で選択された欠陥検査処理画像は、図17に示すように、選択表示インターフェース94によってモニタ5に表示される。ステップSB16では、選択表示インターフェース94のパラメータ調整領域94aの操作ボタンを操作してパラメータの変更、微調整を行う。ステップSB16は必要に応じて行えばよく、省略してもよい。
(実施形態の作用効果)
以上説明したように、この実施形態に係る画像検査装置1によれば、サーチ処理に用いるパターン領域内の画像から抽出された第1のサーチ処理用特徴量を用いた第1のサーチ処理の結果得られた第1サーチ処理結果画像と、第2のサーチ処理用特徴量を用いた第2のサーチ処理の結果得られた第2サーチ処理結果画像をモニタ5に表示させて簡単に検出状態を比較することができるので、複数のサーチアルゴリズムについての特性やワークWとの相性を知らない使用者であっても、適切なサーチアルゴリズムを簡単に決定することができる。また、指定してもらう情報を元に、アルゴリズム特性を踏まえた適切なパラメータや、有効な前処理フィルタの組み合わせを設定することができるため、アルゴリズムの特性を知らない使用者であっても、適切なパラメータを簡単に決定することができる。
また、欠陥検査処理に用いる検査領域内で第1のサーチ処理用特徴量を用いた第1の欠陥検査処理の結果得られた欠陥領域を表示した第1欠陥検査処理画像と、第2のサーチ処理用特徴量を用いた第2の欠陥検査処理の結果得られた欠陥領域を表示した第2欠陥検査処理画像を表示させて簡単に検出状態を比較することができるので、複数の欠陥検査アルゴリズムについての特性や検査対象物との相性を知らない使用者であっても、適切な欠陥検査アルゴリズムを簡単に決定することができる。また、指定してもらう情報を元に、アルゴリズム特性を踏まえた適切なパラメータや、有効な前処理フィルタの組み合わせを設定することが出来るため、アルゴリズムの特性を知らない使用者であっても、適切なパラメータを簡単に決定することができる。
上述の実施形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。さらに、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内のものである。