以下、図面を参照して本発明の好ましい実施形態について説明する。本実施形態の画像測定機のブロック図を図1に示すとともに、本実施形態の画像測定機の概略構成を図2に示している。この画像測定機は、測定機本体1と、制御ユニット2とを主体に構成される。また、制御ユニット2には、モニタ4が設けられている。
測定機本体1は、図2に示すように、支持体3と、支持体3のベース部3a上に設けられた(本発明におけるステージに対応する)XYステージ5と、このXYステージ5の上方に位置するように支持体3の支柱部3bに支持された撮像ユニット6とを備えて構成される。
XYステージ5は、水平面内における直交する2方向(X軸及びY軸方向)に移動可能に構成される。図2に示すように、このXYステージ5の上面には、二次元的な輪郭形状を有しかつ僅かな厚みを有する被検物7(例えば、図3を参照)が載置される。被検物7は、ベース部3aに設けられた透過照明光学系8又は撮像ユニット6に設けられた落射照明光学系9によって照明される(図2を参照)。
XYステージ5には、図1に示すように、入力されるステージ移動信号に基づきXYステージ5を2方向に電動で移動させる(本発明における移動装置に対応する)XYステージ駆動部10と、XYステージ5の座標を検出し、ステージ座標値を表わす信号を出力するステージ位置検出部11とが設けられている。XYステージ駆動部10は、XYステージ5をX軸及びY軸方向にそれぞれ駆動するX軸用モータ及びY軸用モータ(図示せず)を有して構成される。ステージ位置検出部11は、XYステージ5のX軸及びY軸方向の位置をそれぞれ検出するX軸用エンコーダ及びY軸用エンコーダ(図示せず)を有して構成される。
撮像ユニット6は、図2に示すように、落射照明光学系9の他に、被検物7からの光を結像する結像光学系12と、この光学系12により結像された被検物7の像を検出し(すなわち、被検物7の一部分を撮像し)、検出した像の光強度分布に応じた電気信号を出力する(本発明における撮像装置に対応する)CCDカメラ13とを備えて構成される。なお、結像光学系12の拡大倍率は、固定であってもよく、可変であってもよい。
制御ユニット2は、図1に示すように、CCDカメラ13から出力される電気信号が入力される画像処理部21と、輪郭形状測定部22と、指標設定部23と、測定条件テーブル24と、測定データテーブル25と、データ出力部26とを備えている。制御ユニット2は、それぞれ図示を省略したキーボードなどの入力装置、入力回路、出力回路、中央演算処理回路などを有するコンピュータで構成されている。
画像処理部21は、CCDカメラ13の各画素から出力される電気信号を画像処理し、検出した被検物7の像をモニタ4のモニタ画面4a(図4を参照)上に画像として表示させるための画像信号をモニタ4へ出力するように構成されている。また、画像処理部21は、指標設定部23から出力される指標位置のデータを受け、エッジの検出領域を示す指標15をモニタ画面4a上の指標位置のデータに対応する位置及び角度方向に表示させるための信号をモニタ4へ出力するように構成されている。
さらに、画像処理部21は、CCDカメラ13から出力される電気信号を画像処理し、指標15内にある被検物7の輪郭形状7aのエッジを検出し、検出したエッジ点16(図4を参照)のモニタ画面4a内(すなわち、CCDカメラ13の撮像範囲内)でのエッジ座標値をプレ測定時に設定される(輪郭形状7aに沿った)各測定点17について順次検出し、各エッジ座標値のデータを輪郭形状測定部22へ出力するように構成されている。
輪郭形状測定部22は、画像処理部21により被検物7の輪郭形状7aに沿って検出された各測定点17のエッジ座標値を取り込む測定を行う。輪郭形状測定部22は、仮測定を行うプレ測定部51と、(本発明における位置決定部に対応する)測定指示データ作成部52と、本測定を行うリプレイ測定部53とから構成されている。
プレ測定部51は、被検物7の輪郭形状7aに沿って一定間隔で各測定点17のエッジ座標値を取り込むプレ測定を実行するように構成されている。プレ測定部51は、プレ測定を行うために、指標15の移動先である次の測定目標点18(図7を参照)を設定し、この測定目標点18に対応する指標15の位置及び測定目標方向30(図7を参照)に対して直交する角度方向を表す指標設定信号を指標設定部23に出力するとともに、次の測定目標点を測定できるようにステージ移動信号をXYステージ駆動部10へ出力するように構成されている。
また、プレ測定部51は、画像処理部21から出力される各測定点のエッジ座標値と、ステージ位置検出部11から出力される各測定でのステージ座標値とに基づき各測定点の座標値(測定点座標値)を演算し、その演算結果を測定指示データ作成部52へ順次出力する演算部を備えている。この演算部は、下記の式で表す演算を行う。
(測定点座標値)=(ステージ座標値)+(エッジ座標値×モニタ画面補正値)
ここで、モニタ画面補正値は、XYステージ5上での寸法とモニタ画面4a上での寸法との比である。そして、測定指示データ作成部52は、プレ測定部51から出力される各測定点の測定点座標値を取り込んでデータテーブルに保存する。
測定指示データ作成部52は、プレ測定部51から出力される各測定点の測定点座標値(プレ測定部51で取り込んだ各測定点のエッジ座標値)に基づいて、各測定点での指標15の位置及び方向を表す方向指示データを作成し、リプレイ測定部53へ出力するように構成されている。
また、測定指示データ作成部52は、プレ測定部51から出力される全測定点の測定点座標値(プレ測定部51で取り込んだ全測定点のエッジ座標値)と、CCDカメラ13の撮像範囲とに基づいて、最小の撮像回数(Shot数)となるようにCCDカメラ13による被検物7の撮像位置および撮像順序を決定するとともに、決定した被検物7の撮像位置および撮像順序を示す撮像指示データを作成してリプレイ測定部53へ出力するように構成されている。
リプレイ測定部53は、プレ測定で仮測定された各測定点17のエッジ座標値を取り込むリプレイ測定処理を実行するように構成されている。すなわち、測定指示データ作成部52から出力される撮像指示データに従ってステージ移動信号をXYステージ駆動部10へ出力するとともに、測定指示データ作成部52から出力される方向指示データに従って各測定点毎に指標15の位置と角度方向とを表す指標設定指令を指標設定部23へ出力し、画像処理部21から各測定点のエッジ座標値を取り込み、各測定点のエッジ座標値と各測定でのステージ座標値とに基づき各測定点の測定点座標値を演算し、その演算結果を測定データテーブル25へ順次出力するように構成されている。
なお、測定点座標値の演算は、プレ測定部51の演算部での演算と同じである。また、リプレイ測定部53は、被検物7が測定指示データ作成部52に決定された撮像位置へ移動するようにXYステージ駆動部10の作動を制御する撮像制御部としての機能を有している。
指標設定部23は、指標15をプレ測定部51又はリプレイ測定部53から出力される指標設定信号により指定されたモニタ画面4a上の位置及び角度方向に設定させるための指標位置のデータを、画像処理部21へ出力するようになっている。
測定条件テーブル24は、被検物7の輪郭形状7aの測定開始位置(最初の測定点)及び測定終了位置(最後の測定点)の座標、測定開始位置での測定目標方向、各測定点17の間隔(例えば一定間隔で、図7に示す測定ピッチP)をそれぞれ表すデータなどを含む測定条件が予めキーボードなどにより入力されて記憶されている。
測定データテーブル25は、リプレイ測定部53から出力される各測定点の座標値(測定点座標値)のデータを格納するようになっている。
データ出力部26は、測定終了後に測定データテーブル25に格納された測定データ(全測定点の座標値)を表示又は印刷して出力するためのものである。
このような構成の画像測定機を用いて、被検物7の輪郭形状7aを測定する場合の作用について説明する。まず、プレ測定部51により実行されるプレ測定処理について図5に示すフローチャートを参照しながら説明する。
プレ測定処理が開始されると、ステップ101において、予め設定された測定開始位置と測定終了位置との座標値を測定条件テーブル24からそれぞれ取り込む。
次のステップ102では、ステップ101で取り込んだ測定開始位置を、最初の測定目標点に設定する。
次のステップ103では、モニタ画面4a上の測定目標点(ここではステップ102で設定された最初の測定目標点)に指標15が位置するように指標15を移動させる。このとき、モニタ画面4a上において指標15が最初の測定目標点に表示される。
次のステップ104では、指標15内にある輪郭形状7aのエッジ点座標(ここでは最初の測定目標点のエッジ点座標)を取り込む。すなわち、画像処理部21から出力される最初の測定目標点のエッジ座標値を取り込む。
次のステップ105では、ステージ位置検出部11から出力されるステージ座標値と、ステップ104で取り込んだエッジ座標値とに基づき指標15内にある測定点の座標値(測定点座標値:ここでは最初の測定目標点の座標値)を演算する。
次のステップ106では、ステップ105で演算した最初の測定点の測定点座標値をデータ作成部52のデータテーブルへ出力して保存する。
次のステップ107では、次の測定目標点を設定する。すなわち、直前にエッジが検出された直前測定点(ここでは、最初の測定目標点)とその前にエッジが検出された点を含む複数の点のエッジ座標値から次の測定目標点18とこの点での指標15の角度方向とを設定する。
ステップ107での測定目標点18の設定方法としては、例えば次のような方法がある。図7に示すように直前にエッジが検出された直前測定点17aの前にエッジが検出された前々測定点17bから直前測定点17aへ向かう方向を測定目標方向とし、測定目標点18を測定目標方向に直前測定点17aから測定ピッチPだけ離れた位置に設定する。指標15の角度方向は、測定目標方向に対して垂直となる向きに設定する。
上記方法の他に測定目標点18を設定する方法として、直前測定点とその前の複数個の測定点のエッジ座標値に基づき、円弧補間やスプライン補間などを用いて予想輪郭形状を作り、この予想輪郭形状上で直前測定点17aから測定ピッチPだけ離れた位置に測定目標点18を設定する方法を用いてもよい。この場合、指標15の角度方向は測定目標点18における予想輪郭形状の法線方向に設定する。
このような方法により、ステップ107において次の測定目標点18とこの点での指標15の角度方向とを設定する。ここでは、直前測定点17aは最初の測定目標点であり、前々測定点17bは存在しない。そのため、ステップ107において次の測定目標点(2番目の測定目標点)18とこの点での指標15の角度方向とを設定するために、最初の測定目標点(測定開始位置)での測定目標方向を示すデータが測定条件テーブル24に予め記憶されている。このデータを使って2番目の測定目標点18とこの点での指標15の角度方向とが設定される。
この設定後ステップ108へ進む。このステップ108では、終了条件を満たしたか否かを判定する。すなわち、ステップ107で設定した次の測定目標点の座標がステップ101で取り込んだ測定終了位置の座標値(最後の測定目標点の座標値)を越えたか否かを判定する。ここでは、ステップ108で設定した次の測定目標点は2番目の測定目標点であるので、ステップ108の判定結果はNoになり、ステップ103に戻る。
ステップ103〜107を実行してステップ108に進み、このステップ108の判定結果がNoであれば、ステップ103に戻る。
このようにして、ステップ108の判定結果がNoである間、ステップ103〜108を繰り返し実行することにより、被検物7の輪郭形状7aに沿って一定間隔で指標15を移動させながら測定を行ない、各測定点の測定点座標値を演算し、その演算結果をデータ作成部52のデータテーブルに順次格納する。
ステップ108の判定結果がYesになると、すなわち、ステップ107で設定した次の測定目標点の座標値がステップ101で取り込んだ測定終了位置の座標値(最後の測定目標点の座標値)を越えると、被検物7の全ての輪郭形状7aの測定が終了したことになるので、図5のプレ測定処理を終了する。
データ作成部52は、プレ測定部51から出力される各測定点の測定点座標値から、各測定点での指標15の位置及び方向を表す方向指示データを作成し、リプレイ測定部53へ出力する。続いて、測定指示データ作成部52は、プレ測定部51から出力される全測定点の測定点座標値(プレ測定部51で取り込んだ全測定点のエッジ座標値)と、CCDカメラ13の撮像範囲とに基づいて、最小の撮像回数(Shot数)となるようにCCDカメラ13による被検物7の撮像位置および撮像順序を決定するとともに、決定した被検物7の撮像位置および撮像順序を示す撮像指示データを作成してリプレイ測定部53へ出力する。
CCDカメラ13による被検物7の撮像位置を決定する方法としては、例えば次のような方法がある。前述のプレ測定により、被検物7における全測定点の座標値が得られているので、そのデータとCCDカメラ13の撮像範囲とに基づいて、被検物7における撮像位置を決定する。図8は、CCDカメラ13の撮像範囲13aと被検物7における測定点17との関係を示している。図8において、全ての測定点17が撮像できるように、被検物7に対して撮像範囲13aを異なる位置で複数回当てはめてみる。図8の場合、撮像位置A,B,Cの3回で全ての測定点17が撮像できることになる。すなわち、この3箇所の撮像位置で撮像すればよい。
次に、3箇所の撮像の順序を決定する。まず、3箇所における撮像範囲のうち、最も測定点17を多く含むものを抽出する。図8においては、最も測定点17を多く含むのは、撮像位置Aのときである。このときの撮像位置Aにおける撮像範囲の座標中心位置19aが第1撮像位置として決定される。次に、撮像位置Aの撮像範囲に含まれる測定点17を除き、撮像範囲に含まれる測定点17の数が最も多い撮像位置を抽出する。図8においては、撮像位置Bがこれに該当する。したがって、撮像位置Bにおける撮像範囲の座標中心位置19bが第2撮像位置として決定される。最後に、撮像位置A、撮像位置Bの撮像範囲に含まれる測定点17を除き、撮像範囲に含まれる測定点17の数が最も多い撮像位置Cにおける撮像範囲の座標中心位置19cが第3撮像位置として決定される。
上記方法の他に被検物7の撮像位置を決定する方法として、被検物7の領域を格子状に等分割し、分割された領域内に含まれる測定点の数が多い箇所(測定点の密度が高い箇所)をスキャンしていくようにしてもよい。
また、被検物7の撮像順序を決定する方法としては、先に決定された各撮像位置への移動時間が最少となるように(例えば、総移動量が最小となるように)撮像順序を決定してもよい。例えば、図8において、撮像位置A、撮像位置B、そして撮像位置Cの順に決定される。
このような方法により、CCDカメラ13による被検物7の撮像位置および撮像順序を決定し、決定した被検物7の撮像位置および撮像順序を示す撮像指示データを作成してリプレイ測定部53へ出力する。
次に、リプレイ測定部53により実行されるリプレイ測定処理について図6に示すフローチャートを参照しながら説明する。リプレイ測定処理が開始されると、ステップ201において、全撮像指示データだけ繰り返したか否かを判定する。すなわち、測定指示データ作成部52で作成された撮像指示データを、先頭のデータ(例えば、図8における第1撮像位置19aのデータ)から最後のデータ(例えば、図8における第3撮像位置19cのデータ)まで、測定指示データ作成部52で決定された撮像順序によって撮像および測定を繰り返すことにより、測定が終了したか否かを判定する。
使用していない撮像指示データが残っていて測定が終了していない場合には、ステップ201の判定結果がNoになり、ステップ202に進む。最後のデータを使った測定が終了して撮像指示データが残っていない場合には、処理を終了する。すなわち、ステップ201の判定結果がNoである間、ステップ201〜207を繰り返し実行する。
ステップ202では、CCDカメラ13による被検物7の撮像位置が、ある撮像指示データ(例えば、最初の撮像を行う第1撮像位置19aのデータ)が示す撮像位置となるように、XYステージ駆動部10へステージ移動信号を出力する。すなわち、XYステージ駆動部10により被検物7をCCDカメラ13に対し相対移動させて撮像位置(例えば、第1撮像位置19a)に位置させるとともに、この撮像位置における被検物7の像をCCDカメラ13に検出させる(すなわち、撮像(Shot)を取得する)制御を行う。
次のステップ203では、CCDカメラ13に検出された撮像範囲内(例えば、撮像位置Aの撮像範囲内)において、ある(測定指示データ作成部52で決定された)測定点での方向指示データが示す指標15の位置と方向に指標15を移動させる。
次のステップ204では、画像処理部21から指標内15にある輪郭形状7aのエッジ点の座標(エッジ座標値)を取り込む。
次のステップ205では、ステージ位置検出部11から出力されるステージ座標値と、ステップ204で取り込んだエッジ座標値とに基づき測定点の座標値(測定点座標値)を演算する。
次のステップ206では、ステップ205で演算した測定点座標値を測定データテーブル25に保存する。
測定点座標値を測定データテーブル25に保存すると、ステップ207へ進む。このステップ207では、ある撮像位置(例えば、第1撮像位置19a)でCCDカメラ13に検出された撮像範囲内(例えば、撮像位置Aの撮像範囲内)における全ての測定点についてエッジ座標値を画像処理部21から取り込んだか否かを判定する。このとき、ステップ207の判定結果がNoであれば、ステップ202に戻る。
そして、ステップ202〜206を再び実行してステップ207に進み、このステップ207の判定結果がNoであれば、再びステップ202に戻る。
このようにして、ステップ207の判定結果がNoである間、ステップ202〜206を繰り返し実行することにより、ある撮像位置(例えば、第1撮像位置19a)でCCDカメラ13に検出された撮像範囲内(例えば、撮像位置Aの撮像範囲内)における全ての測定点において検出された輪郭形状のエッジ座標値を画像処理部21から取り込み、各測定点の測定点座標値をそれぞれ演算してその演算結果を測定データテーブル25に順次格納する。なおこのとき、算出された各測定点の測定点座標値から、ある2点の測定点間の距離を演算し、その演算結果を測定データテーブル25に格納することもできる。
ステップ207の判定結果がYesになると、すなわち、ある撮像位置(例えば、第1撮像位置19a)でCCDカメラ13に検出された撮像範囲内(例えば、撮像位置Aの撮像範囲内)における全ての測定点についてエッジ座標値を画像処理部21から取り込むと、ステップ201へ戻る。
そして、上記ステップ202〜207を繰り返すことにより、最後のデータを使った測定が終了して撮像指示データがなくなる、すなわち、測定指示データ作成部52で決定された撮像順序によって撮像および測定を繰り返すことにより、測定指示データ作成部52で決定された全ての撮像(Shot)が取得されて各測定点17の測定が終了すると、ステップ201の判定結果がYesとなって処理を終了する。
この結果、以上のような構成の画像測定装置によれば、測定指示データ作成部52(位置決定部)が最小の撮像回数(Shot数)となるようにCCDカメラ13による被検物7の撮像位置を決定することにより、リプレイ測定時において被検物7の移動回数が減少し、1回のステージ移動(被検物7の移動)で複数の測定点を取得することができるため、画像測定機による測定時間を短縮することができる。さらに、各撮像位置への移動順序を考慮する必要がないため、XYステージ5およびXYステージ駆動部10の性能に合わせて撮像順序を決定することができ、より短時間で全撮像(Shot)を取得することができる。
なお、上述の実施形態において、各測定点17をプレ測定処理の際に自動的に設定しているが、これに限られるものではなく、全ての測定点を予め設定しておくようにしてもよい。
また、上述の実施形態において、リプレイ測定部53は、被検物7が測定指示データ作成部52に決定された撮像位置へ移動するようにXYステージ駆動部10の作動を制御する撮像制御部としても機能しているが、これに限られるものではなく、XYステージ駆動部10に被検物7を撮像位置へ相対移動させ、撮像位置における被検物7の像をCCDカメラ13に検出させる制御を行う撮像制御部を制御ユニット2に別途設けるようにしてもよい。
さらに、上述の実施形態において、測定指示データ作成部52(位置決定部)が最小の撮像回数(Shot数)となるようにCCDカメラ13による被検物7の撮像位置を決定しているが、これに限られるものではなく、予め設定された(被検物7の)測定点の位置を撮像位置に相対移動させ、CCDカメラ13に撮像された撮像範囲内における複数の測定点について、それぞれのエッジ座標値を(1回の撮像で)画像処理部21から取り込む構成であれば、(リプレイ)測定時において被検物7の移動回数を減少させることができ、画像測定機による測定時間を短縮することができる。