(57)【要約】      （修正有）【課題】測定対象物の表面の３次元形状を短時間で測定できるようにした３次元形状測定装置及び３次元形状測定方法を提供する。【解決手段】測定対象物ＯＢの表面にライン状のレーザ光を照射するレーザ照射装置と、測定対象物ＯＢの表面に照射されたライン状のレーザ光における散乱光の一部である反射光を受光する複数の受光素子からなるエリアセンサとを有する測定カメラ２０を備え、測定対象物ＯＢの表面をライン状のレーザ光によって走査する。エリアセンサの各受光素子によって受光された反射光の受光強度をそれぞれ表す受光データは、ライン状のレーザ光の照射位置ごとに記憶され、エリアセンサにおけるライン状のレーザ光の反射光による直線状の受光ラインを設定して、受光ラインの両側においてエリアセンサの幅よりも狭い所定幅内に属する受光素子による受光データのみを抽出し、３次元形状データを測定する。【選択図】図１
2010190812.tif 000002
【特許請求の範囲】
【請求項１】
測定対象物の表面にライン状のレーザ光を照射するレーザ照射装置と、互いに直交する第１及び第２軸に沿ってマトリクス状に配置され、測定対象物の表面に照射されたライン状のレーザ光における散乱光の一部である反射光を受光する複数の受光素子からなる第１エリアセンサとを有する測定カメラであって、前記ライン状のレーザ光の延設方向に沿った各位置からの反射光を前記第１軸方向の各位置に配置された複数の受光素子で受光し、所定の基準位置から前記ライン状のレーザ光の延設方向に沿った各位置までの距離に応じて前記第２軸方向のいずれかの位置の受光素子で強度の大きな反射光を受光するように構成した測定カメラを備え、平らな部分の一部に溝又は凸状部分を形成した測定対象物の表面に対する前記ライン状のレーザ光の照射位置を変化させながら、３角測量法の原理を用いて、前記第１エリアセンサによって受光される反射光の位置及び前記ライン状のレーザ光の照射位置により測定対象物の表面の３次元形状を測定する３次元形状測定装置において、
前記第１エリアセンサの各受光素子によって受光された反射光の受光強度をそれぞれ表す受光データを、前記ライン状のレーザ光の照射位置ごとに記憶する受光データ記憶手段と、
前記第１エリアセンサにおける前記ライン状のレーザ光の反射光による受光ラインであって、前記第1軸方向の一端における前記第２軸方向のいずれかの位置から前記第1軸方向の他端における前記第２軸方向のいずれかの位置に向かって延びる受光ラインを設定して、前記設定した受光ラインの前記第２軸方向両側に位置して前記第２軸方向の両端までの幅より狭い所定幅内に属する受光素子によって受光された反射光の強度をそれぞれ表す受光データを、前記受光データ記憶手段に記憶された受光データの中から、前記ライン状のレーザ光の照射位置ごとに抽出するデータ抽出手段と、
前記データ抽出手段によって前記ライン状のレーザ光の照射位置ごとに抽出された受光データを用いて、３角測量法の原理に従って、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記所定の基準位置からの距離をそれぞれ検出し、前記ライン状のレーザ光の延設方向に沿った各位置に関する情報を加えて、測定対象物の表面の３次元形状を表す３次元形状データを計算する３次元形状データ計算手段を設けたことを特徴とする３次元形状測定装置。
【請求項２】
請求項１に記載の３次元形状測定装置において、
前記データ抽出手段は、
前記ライン状のレーザ光の照射位置ごとに、前記受光データ記憶手段に記憶されていて前記第１エリアセンサの第１軸方向の一端部における第２軸方向に沿った複数の受光素子によって受光された反射光の受光強度を表す複数の受光データを用いて、前記第１軸方向の一端部における第２軸方向に沿った複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出する第１ピーク位置検出手段と、
前記ライン状のレーザ光の照射位置ごとに、前記受光データ記憶手段に記憶されていて前記第１エリアセンサの第１軸方向の他端部における第２軸方向に沿った複数の受光素子によって受光された反射光の受光強度を表す複数の受光データを用いて、前記第１軸方向の他端部における第２軸方向に沿った複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出する第２ピーク位置検出手段と、
前記ライン状のレーザ光の照射位置ごとに、前記検出された第１ピーク位置と前記検出された第２ピーク位置とを結ぶ直線を前記受光ラインとして設定する受光ライン設定手段とを備えたことを特徴とする３次元形状測定装置。
【請求項３】
請求項２に記載の３次元形状測定装置において、
前記第１ピーク位置検出手段は、前記ライン状のレーザ光の照射位置ごとの第１ピーク位置の検出において、最初、前記第１軸方向の一端部における第２軸方向に沿った第１の所定数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出し、次から、前記第１軸方向の一端部における第２軸方向に沿った複数の受光素子であって前回検出した第１ピーク位置を中心にして両側に位置する前記第１の所定数よりも少ない数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出し、かつ
前記第２ピーク位置検出手段は、前記ライン状のレーザ光の照射位置ごとの第２ピーク位置の検出において、最初、前記第１軸方向の他端部における第２軸方向に沿った第２の所定数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出し、次から、前記第１軸方向の他端部における第２軸方向に沿った複数の受光素子であって前回検出した第２ピーク位置を中心にして両側に位置する前記第２の所定数よりも少ない数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出するようにしたことを特徴とする３次元形状測定装置。
【請求項４】
請求項１乃至３のうちのいずれか一つに記載の３次元形状測定装置において、
前記３次元形状データ計算手段は、
前記データ抽出手段によって前記ライン状のレーザ光の照射位置ごとに抽出された受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置として検出する距離検出用ピーク位置検出手段と、
前記検出された各距離検出用ピーク位置に応じて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記所定の基準位置からの距離をそれぞれ計算する距離計算手段とを備えたことを特徴とする３次元形状測定装置。
【請求項５】
請求項１乃至３のうちのいずれか一つの３次元形状測定装置において、
前記測定カメラ内に、さらに、前記第１エリアセンサと同じ構成の第２エリアセンサを、前記レーザ照射装置を中心として前記第１エリアセンサと対称位置に設け、
前記受光データ記憶手段は、さらに、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関する受光データに対応した前記第２エリアセンサに関する受光データも記憶し、
前記データ抽出手段は、さらに、前記第２エリアセンサに関しても、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関して抽出した受光データに対応した前記第２エリアセンサに関する受光データを抽出し、かつ
前記３次元形状データ計算手段は、
前記データ抽出手段によって前記ライン状のレーザ光の照射位置ごとに抽出された前記第１エリアセンサ及び第２エリアセンサに関する受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第１エリアセンサ及び第２エリアセンサに関して、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置としてそれぞれ検出する距離検出用ピーク位置検出手段と、
前記距離検出用ピーク位置検出手段によって検出された前記第１エリアセンサ及び第２エリアセンサに関する両距離検出用ピーク位置を、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに比較して、前記両距離検出用ピーク位置が所定の範囲内にある場合にのみ、前記両距離検出用ピーク位置を正規な反射光による距離検出用ピーク位置とする正規反射光決定手段と、
前記正規反射光決定手段によって正規な反射光による距離検出用ピーク位置と判定された前記両距離検出用ピーク位置の少なくとも一方を用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記所定の基準位置からの距離をそれぞれ計算する距離計算手段とを備えたことを特徴とする３次元形状測定装置。
【請求項６】
請求項１乃至３のうちのいずれか一つの３次元形状測定装置において、
前記測定カメラ内に、さらに、前記第１エリアセンサと同じ構成の第２エリアセンサを、前記レーザ照射装置を中心として前記第１エリアセンサと対称位置に設け、
前記受光データ記憶手段は、さらに、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関する受光データに対応した前記第２エリアセンサに関する受光データも記憶し、
前記データ抽出手段は、さらに、前記第２エリアセンサに関しても、前記第１エリアセンサと場合と同様に、前記第１エリアセンサに関して抽出した受光データに対応した前記第２エリアセンサに関する受光データを抽出し、かつ
前記３次元形状データ計算手段は、
前記データ抽出手段によって前記ライン状のレーザ光の照射位置ごとに抽出された前記第１エリアセンサ及び第２エリアセンサに関する受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第１エリアセンサ及び第２エリアセンサに関して、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置としてそれぞれ検出する距離検出用ピーク位置検出手段と、
前記検出された各距離検出用ピーク位置に応じて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記第１エリアセンサ及び第２エリアセンサに関して、前記所定の基準位置からの距離をそれぞれ計算する距離計算手段と、
前記距離計算手段によって検出された前記第１エリアセンサ及び第２エリアセンサに関する両距離を、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに比較して、前記両距離が所定の範囲内にある場合にのみ、前記両距離の少なくもいずれか一方に基づいて正規な反射光による前記所定の基準位置からの距離として決定する正規反射光距離決定手段とを備えたことを特徴とする３次元形状測定装置。
【請求項７】
請求項１乃至６のうちのいずれか一つに記載の３次元形状測定装置において、
前記３次元形状データ計算手段は、測定対象物の表面の各位置が互いに直交する３つの座標軸により規定される３次元座標の座標値でそれぞれ表される３次元形状データを計算するものであり、溝又は凸状部分以外の測定対象物の平らな部分に関しては前記３つの座標軸のうちの１つの座標軸の座標値が同一であり、溝又は凸状部分が形成された部分に関しては溝の深さ又は凸状部分の高さに応じて前記１つの座標軸の座標値が異なるように３次元座標の座標値を計算することを特徴とする３次元形状測定装置。
【請求項８】
測定対象物の表面にライン状のレーザ光を照射するレーザ照射装置と、互いに直交する第１及び第２軸に沿ってマトリクス状に配置され、測定対象物の表面に照射されたライン状のレーザ光における散乱光の一部である反射光を受光する複数の受光素子からなる第１エリアセンサとを有する測定カメラであって、前記ライン状のレーザ光の延設方向に沿った各位置からの反射光を前記第１軸方向の各位置に配置された複数の受光素子で受光し、所定の基準位置から前記ライン状のレーザ光の延設方向に沿った各位置までの距離に応じて前記第２軸方向のいずれかの位置の受光素子で強度の大きな反射光を受光するように構成した測定カメラを用い、平らな部分の一部に溝又は凸状部分を形成した測定対象物の表面に対する前記ライン状のレーザ光の照射位置を変化させながら、３角測量法の原理を用いて、前記第１エリアセンサによって受光される反射光の位置及び前記ライン状のレーザ光の照射位置により測定対象物の表面の３次元形状を測定する３次元形状測定方法において、
前記第１エリアセンサの各受光素子によって受光された反射光の受光強度をそれぞれ表す受光データを、前記ライン状のレーザ光の照射位置ごとにメモリに記憶する受光データ記憶工程と、
前記第１エリアセンサにおける前記ライン状のレーザ光の反射光による受光ラインであって、前記第1軸方向の一端における前記第２軸方向のいずれかの位置から前記第1軸方向の他端における前記第２軸方向のいずれかの位置に向かって延びる受光ラインを設定して、前記設定した受光ラインの前記第２軸方向両側に位置して前記第２軸方向の両端までの幅より狭い所定幅内に属する受光素子によって受光された反射光の強度をそれぞれ表す受光データを、前記受光データ記憶工程でメモリに記憶された受光データの中から、前記ライン状のレーザ光の照射位置ごとに抽出するデータ抽出工程と、
前記データ抽出工程によって前記ライン状のレーザ光の照射位置ごとに抽出された受光データを用いて、３角測量法の原理に従って、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記所定の基準位置からの距離をそれぞれ検出し、前記ライン状のレーザ光の延設方向に沿った各位置に関する情報を加えて、測定対象物の表面の３次元形状を表す３次元形状データを計算する３次元形状データ計算工程を含むことを特徴とする３次元形状測定方法。
【請求項９】
請求項８に記載の３次元形状測定方法において、
前記データ抽出工程は、
前記ライン状のレーザ光の照射位置ごとに、前記受光データ記憶工程でメモリに記憶されていて前記第１エリアセンサの第１軸方向の一端部における第２軸方向に沿った複数の受光素子によって受光された反射光の受光強度を表す複数の受光データを用いて、前記第１軸方向の一端部における第２軸方向に沿った複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出する第１ピーク位置検出工程と、
前記ライン状のレーザ光の照射位置ごとに、前記受光データ記憶工程でメモリに記憶されていて前記第１エリアセンサの第１軸方向の他端部における第２軸方向に沿った複数の受光素子によって受光された反射光の受光強度を表す複数の受光データを用いて、前記第１軸方向の他端部における第２軸方向に沿った複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出する第２ピーク位置検出工程と、
前記ライン状のレーザ光の照射位置ごとに、前記検出された第１ピーク位置と前記検出された第２ピーク位置とを結ぶ直線を前記受光ラインとして設定する受光ライン設定工程とを含むことを特徴とする３次元形状測定方法。
【請求項１０】
請求項９に記載の３次元形状測定方法において、
前記第１ピーク位置検出工程は、前記ライン状のレーザ光の照射位置ごとの第１ピーク位置の検出において、最初、前記第１軸方向の一端部における第２軸方向に沿った第１の所定数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出し、次から、前記第１軸方向の一端部における第２軸方向に沿った複数の受光素子であって前回検出した第１ピーク位置を中心にして両側に位置する前記第１の所定数よりも少ない数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出し、かつ
前記第２ピーク位置検出工程は、前記ライン状のレーザ光の照射位置ごとの第２ピーク位置の検出において、最初、前記第１軸方向の他端部における第２軸方向に沿った第２の所定数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出し、次から、前記第１軸方向の他端部における第２軸方向に沿った複数の受光素子であって前回検出した第２ピーク位置を中心にして両側に位置する前記第２の所定数よりも少ない数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出するようにしたことを特徴とする３次元形状測定方法。
【請求項１１】
請求項８乃至１０のうちのいずれか一つに記載の３次元形状測定方法において、
前記３次元形状データ計算工程は、
前記データ抽出工程によって前記ライン状のレーザ光の照射位置ごとに抽出された受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置として検出する距離検出用ピーク位置検出工程と、
前記検出された各距離検出用ピーク位置に応じて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記所定の基準位置からの距離をそれぞれ計算する距離計算工程とを含むことを特徴とする３次元形状測定方法。
【請求項１２】
請求項８乃至１０のうちのいずれか一つの３次元形状測定方法において、
前記測定カメラ内に、さらに、前記第１エリアセンサと同じ構成の第２エリアセンサを、前記レーザ照射装置を中心として前記第１エリアセンサと対称位置に設け、
前記受光データ記憶工程は、さらに、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関する受光データに対応した前記第２エリアセンサに関する受光データもメモリに記憶し、
前記データ抽出工程は、さらに、前記第２エリアセンサに関しても、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関して抽出した受光データに対応した前記第２エリアセンサに関する受光データを抽出し、かつ
前記３次元形状データ計算工程は、
前記データ抽出工程によって前記ライン状のレーザ光の照射位置ごとに抽出された前記第１エリアセンサ及び第２エリアセンサに関する受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第１エリアセンサ及び第２エリアセンサに関して、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置としてそれぞれ検出する距離検出用ピーク位置検出工程と、
前記距離検出用ピーク位置検出工程によって検出された前記第１エリアセンサ及び第２エリアセンサに関する両距離検出用ピーク位置を、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに比較して、前記両距離検出用ピーク位置が所定の範囲内にある場合にのみ、前記両距離検出用ピーク位置を正規な反射光による距離検出用ピーク位置とする正規反射光決定工程と、
前記正規反射光決定工程によって正規な反射光による距離検出用ピーク位置と判定された前記両距離検出用ピーク位置の少なくとも一方を用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記所定の基準位置からの距離をそれぞれ計算する距離計算工程とを含むことを特徴とする３次元形状測定方法。
【請求項１３】
請求項８乃至１０のうちのいずれか一つの３次元形状測定方法において、
前記測定カメラ内に、さらに、前記第１エリアセンサと同じ構成の第２エリアセンサを、前記レーザ照射装置を中心として前記第１エリアセンサと対称位置に設け、
前記受光データ記憶工程は、さらに、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関する受光データに対応した前記第２エリアセンサに関する受光データもメモリに記憶し、
前記データ抽出工程は、さらに、前記第２エリアセンサに関しても、前記第１エリアセンサと場合と同様に、前記第１エリアセンサに関して抽出した受光データに対応した前記第２エリアセンサに関する受光データを抽出し、かつ
前記３次元形状データ計算工程は、
前記データ抽出工程によって前記ライン状のレーザ光の照射位置ごとに抽出された前記第１エリアセンサ及び第２エリアセンサに関する受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第１エリアセンサ及び第２エリアセンサに関して、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置としてそれぞれ検出する距離検出用ピーク位置検出工程と、
前記検出された各距離検出用ピーク位置に応じて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記第１エリアセンサ及び第２エリアセンサに関して、前記所定の基準位置からの距離をそれぞれ計算する距離計算工程と、
前記距離計算工程によって検出された前記第１エリアセンサ及び第２エリアセンサに関する両距離を、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに比較して、前記両距離が所定の範囲内にある場合にのみ、前記両距離の少なくもいずれか一方に基づいて正規な反射光による前記所定の基準位置からの距離として決定する正規反射光距離決定工程とを含むことを特徴とする３次元形状測定方法。
【請求項１４】
請求項８乃至１３のうちのいずれか一つに記載の３次元形状測定方法において、
前記３次元形状データ計算工程は、測定対象物の表面の各位置が互いに直交する３つの座標軸により規定される３次元座標の座標値でそれぞれ表される３次元形状データを計算するものであり、溝又は凸状部分以外の測定対象物の平らな部分に関しては前記３つの座標軸のうちの１つの座標軸の座標値が同一であり、溝又は凸状部分が形成された部分に関しては溝の深さ又は凸状部分の高さに応じて前記１つの座標軸の座標値が異なるように３次元座標の座標値を計算することを特徴とする３次元形状測定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、溝又は凸状部分が形成された平らな測定対象物の表面にレーザ光を照射し、その反射光を受光することにより、溝又は凸状部分が形成された平らな測定対象物の表面の３次元形状を測定する３次元形状測定装置及び３次元形状測定方法に関する。
【背景技術】
【０００２】
従来から、レーザ光を用いて測定対象物の３次元形状を測定する３次元形状測定装置は知られている。この３次元形状測定装置においては、測定対象物にレーザ光を照射するとともにレーザ光の照射位置を変化させ、各照射位置における散乱光の一部である反射光を一列に配置された複数の受光素子からなるラインセンサで受光して、反射光の受光位置に応じて、３角測量の原理を用いて、所定の基準点（例えば、レーザ光源の位置）から各照射位置までの距離を検出するようにしている。そして、この種の３次元形状測定装置の中には、刻印文字、刻印マーク、デザインなどを構成する溝又は凸状部分が形成された平らな測定対象物の表面の３次元形状を測定するものもある。この溝又は凸状部分が形成された平らな測定対象物の表面の３次元形状を測定する場合には、溝又は凸状部分において発生する２次反射による反射光のために、ラインセンサは複数の位置で反射光を受光する。具体的には、ラインセンサによって受光された受光信号は、複数の受光素子の配列方向において、複数のピークを有する。特に、反射率が高い金属板に、刻印文字、刻印マーク、デザインを構成する溝又は凸状部分を設けた場合に、前記２次反射による影響は大きい。
【０００３】
この２次反射による影響を除外するようにした３次元形状測定装置も提案されている(例えば、下記特許文献１参照)。この３次元形状測定装置においては、図１３に示すように、レーザ光源１及びコリメートレンズ２を中心とする対称位置に、一対の集光レンズ３ａ，３ｂ及び一列に配置された複数の受光素子からそれぞれなる一対のラインセンサ４ａ，４ｂを配置して、測定対象物ＯＢの表面にて反射されたレーザ光のＹ軸方向の受光位置に応じて、所定の基準点（例えば、レーザ光源１の位置）から測定対象物ＯＢの表面までの距離（Ｚ軸方向距離）を検出する。レーザ光源１からコリメートレンズ２を介して出射されるレーザ光は、紙面横方向の軸線周り（Ｙ軸回り）に回転するガルバノミラー５によって反射されて、測定対象物ＯＢの表面に照射される。また、測定対象物ＯＢの表面で反射された散乱光の一部も、ガルバノミラー５によって反射されて、集光レンズ３ａ，３ｂを介してラインセンサ４ａ，４ｂに入射する。そして、ガルバノミラー５の回転により、測定対象物ＯＢの表面に対するレーザ光の照射位置がＸ軸方向に走査される。これと共に、レーザ光源１、コリメートレンズ２、集光レンズ３ａ，３ｂ、ラインセンサ４ａ，４ｂ及びガルバノミラー５をＹ軸方向に移動することにより、測定対象物ＯＢの表面に対するレーザ光の照射位置は、ジグザグの軌跡を描きながらＸ軸方向とＹ軸方向に走査される。
【０００４】
そして、この３次元形状測定装置においては、ラインセンサ４ａによって検出された距離と、ラインセンサ４ｂによって検出された距離とがほぼ一致するものを選択して、基準点から測定対象物ＯＢの照射位置までの距離としている。これは、測定対象物ＯＢの表面に溝又は凸状部分がある場合、測定対象物ＯＢの表面の点ａで反射した散乱光に基づいてラインセンサ４ａ，４ｂによって検出される距離は、共に基準点から点ａまでの距離となる。しかし、点ａで反射した後に、点ｂで２次反射した散乱光に基づいてラインセンサ４ａによって検出される距離は、基準点から点ｃまでの距離となる。一方、ラインセンサ４ｂによって検出される距離は、レーザ光源１から点ｄまでの距離となるからである。また、この３次元形状測定装置においては、前記選択される距離が複数選択されることがあることも考慮して、選択された複数の距離の中から、既に検出された隣接するレーザ光の照射位置に関する距離に近い１つの距離を選択するようにもしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１８０６４６号公報
【発明の概要】
【０００６】
上記のように構成した従来の３次元形状測定装置によれば、基準点からレーザ光の照射位置までの前記検出した距離を用いて、刻印文字、刻印マーク、デザインなどを構成する溝又は凸状部分が形成された平らな測定対象物の表面の３次元形状を高精度で測定することができる。しかし、レーザ光の２次反射による影響を考慮しながら、ラインセンサ４ａ，４ｂを構成する全ての受光素子により検出された受光量に関するデータを測定対象物の表面全体にわたって処理する必要があり、基準点からレーザ光の照射位置までの距離を測定対象物の表面全体にわたって検出するためには、処理されるデータ量が膨大であり、全ての照射位置に関する距離を検出するのに多くの時間を必要とし、ひいては３次元形状データ(座標値の集合データ)を算出するまでに多くの時間を要する。
【０００７】
本発明は上記問題に対処するためなされたもので、その目的は、溝又は凸状部分が形成された平らな測定対象物の表面の３次元形状を短時間で測定できるようにした３次元形状測定装置及び３次元形状測定方法を提供することにある。
【０００８】
上記目的を達成するため、本発明の特徴は、測定対象物の表面にライン状のレーザ光を照射するレーザ照射装置と、互いに直交する第１及び第２軸に沿ってマトリクス状に配置され、測定対象物の表面に照射されたライン状のレーザ光における散乱光の一部である反射光を受光する複数の受光素子からなる第１エリアセンサとを有する測定カメラであって、前記ライン状のレーザ光の延設方向に沿った各位置からの反射光を前記第１軸方向の各位置に配置された複数の受光素子で受光し、所定の基準位置から前記ライン状のレーザ光の延設方向に沿った各位置までの距離に応じて前記第２軸方向のいずれかの位置の受光素子で強度の大きな反射光を受光するように構成した測定カメラを備え、平らな部分の一部に溝又は凸状部分を形成した測定対象物の表面に対する前記ライン状のレーザ光の照射位置を変化させながら、３角測量法の原理を用いて、前記第１エリアセンサによって受光される反射光の位置及び前記ライン状のレーザ光の照射位置により測定対象物の表面の３次元形状を測定する３次元形状測定装置において、前記第１エリアセンサの各受光素子によって受光された反射光の受光強度をそれぞれ表す受光データを、前記ライン状のレーザ光の照射位置ごとに記憶する受光データ記憶手段と、前記第１エリアセンサにおける前記ライン状のレーザ光の反射光による受光ラインであって、前記第1軸方向の一端における前記第２軸方向のいずれかの位置から前記第1軸方向の他端における前記第２軸方向のいずれかの位置に向かって延びる受光ラインを設定して、前記設定した受光ラインの前記第２軸方向両側に位置して前記第２軸方向の両端までの幅より狭い所定幅内に属する受光素子によって受光された反射光の強度をそれぞれ表す受光データを、前記受光データ記憶手段に記憶された受光データの中から、前記ライン状のレーザ光の照射位置ごとに抽出するデータ抽出手段と、前記データ抽出手段によって前記ライン状のレーザ光の照射位置ごとに抽出された受光データを用いて、３角測量法の原理に従って、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記所定の基準位置からの距離をそれぞれ検出し、前記ライン状のレーザ光の延設方向に沿った各位置に関する情報を加えて、測定対象物の表面の３次元形状を表す３次元形状データを計算する３次元形状データ計算手段を設けたことにある。
【０００９】
この場合、測定対象物が測定カメラに対して常に同一位置に高精度で配置されて、測定対象物の表面が測定カメラに対して常に同一位置に高精度で位置するならば、前記第１エリアセンサにおける前記ライン状のレーザ光の反射光による受光ラインは固定されていてもよい。しかし、測定対象物を配置する位置が測定カメラに対して変動したり、測定対象物の表面の測定カメラに対する角度が変動したり、測定対象物の表面の湾曲具合が変動する場合には、後述するように受光ラインを受光データを用いて設定するようにするとよい。
【００１０】
また、前記３次元形状データ計算手段は、前記データ抽出手段によって前記ライン状のレーザ光の照射位置ごとに抽出された受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置として検出する距離検出用ピーク位置検出手段と、前記検出された各距離検出用ピーク位置に応じて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記所定の基準位置からの距離をそれぞれ計算する距離計算手段とを備えるように構成するとよい。
【００１１】
前記本発明の特徴によれば、データ抽出手段によって抽出される受光データが、第１エリアセンサの所定の狭い幅内に属する受光素子によって受光された反射光の強度をそれぞれ表す受光データ、すなわち少ない数の受光データに抑えられる。そして、３次元形状データ計算手段は、この少ない数の受光データを用いて、測定対象物の表面の３次元形状を表す３次元形状データを計算することになる。したがって、処理されるデータ量を少なく抑えることができ、３次元形状データの演算処理を高速で行うことができる。その結果、溝又は凸状部分が形成された測定対象物の表面の３次元形状を短時間で測定できるようになる。
【００１２】
また、本発明の他の特徴は、前記データ抽出手段は、前記ライン状のレーザ光の照射位置ごとに、前記受光データ記憶手段に記憶されていて前記第１エリアセンサの第１軸方向の一端部における第２軸方向に沿った複数の受光素子によって受光された反射光の受光強度を表す複数の受光データを用いて、前記第１軸方向の一端部における第２軸方向に沿った複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出する第１ピーク位置検出手段と、前記ライン状のレーザ光の照射位置ごとに、前記受光データ記憶手段に記憶されていて前記第１エリアセンサの第１軸方向の他端部における第２軸方向に沿った複数の受光素子によって受光された反射光の受光強度を表す複数の受光データを用いて、前記第１軸方向の他端部における第２軸方向に沿った複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出する第２ピーク位置検出手段と、前記ライン状のレーザ光の照射位置ごとに、前記検出された第１ピーク位置と前記検出された第２ピーク位置とを結ぶ直線を前記受光ラインとして設定する受光ライン設定手段とを備えるようにしたことにある。
【００１３】
前記本発明の他の特徴においては、第１軸方向の一端部及び他端部における第２軸方向に沿った複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置が第１及び第２ピーク位置として検出される。この場合、この第１軸方向の一端部及び他端部には、一般的には、溝又は凸状部分が形成されていない。また、溝又は凸状部分が形成されていない部分を第１軸方向の一端部及び他端部として選択することも可能である。そして、溝又は凸状部分が形成されていなければ、測定対象物の表面の反射率が高い場合でも、溝又は凸状部分による２次反射による影響がないので、第１及び第２ピーク位置を簡単かつ確実に検出できる。これにより、測定対象物を配置する位置が測定カメラに対して変動したり、測定対象物の表面の測定カメラに対する角度が変動したり、測定対象物の表面の湾曲具合が変動する場合でも、受光ラインが高精度で設定される。その結果、データ抽出手段によって抽出される受光データを少なくすることが可能となるとともに、測定対象物の表面の３次元形状データの演算処理を高速で行うことができる。
【００１４】
また、本発明の他の特徴は、前記第１ピーク位置検出手段は、前記ライン状のレーザ光の照射位置ごとの第１ピーク位置の検出において、最初、前記第１軸方向の一端部における第２軸方向に沿った第１の所定数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出し、次から、前記第１軸方向の一端部における第２軸方向に沿った複数の受光素子であって前回検出した第１ピーク位置を中心にして両側に位置する前記第１の所定数よりも少ない数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第１ピーク位置として検出し、かつ前記第２ピーク位置検出手段は、前記ライン状のレーザ光の照射位置ごとの第２ピーク位置の検出において、最初、前記第１軸方向の他端部における第２軸方向に沿った第２の所定数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出し、次から、前記第１軸方向の他端部における第２軸方向に沿った複数の受光素子であって前回検出した第２ピーク位置を中心にして両側に位置する前記第２の所定数よりも少ない数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を第２ピーク位置として検出するようにしたことにある。この場合、前記第１の所定数と前記第２の所定数は、同じであっても、異なっていてもよい。
【００１５】
前記本発明の他の特徴においては、最初、第１及び第２ピーク位置は、第１及び第２の所定数の受光素子による反射光の受光強度を用いてそれぞれ検出される。しかし、次からは、第１及び第２ピーク位置は、前回検出した第２ピーク位置を中心にして両側に位置する前記第１および第２の所定数よりも少ない数の受光素子による反射光の受光強度を用いてそれぞれ検出される。これは、ライン状のレーザ光の照射位置が変化しても、その変化量は極めて微量であり、今回検出される第１及び第２ピーク位置は前回検出された第１及び第２ピーク位置からそれほど変化していないことに基づく。したがって、第１及び第２ピーク位置は、少ない数の受光素子による反射光の受光強度のみでも高精度で検出される。その結果、第１及び第２ピーク位置の検出精度を悪化させることなく、第１及び第２ピーク位置の検出のための演算速度を高速化でき、ライン状のレーザ光の照射位置ごとの第１及び第２ピーク位置の検出を短時間で済ますことができる。
【００１６】
また、本発明の他の特徴は、前記測定カメラ内に、さらに、前記第１エリアセンサと同じ構成の第２エリアセンサを、前記レーザ照射装置を中心として前記第１エリアセンサと対称位置に設け、前記受光データ記憶手段は、さらに、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関する受光データに対応した前記第２エリアセンサに関する受光データも記憶し、前記データ抽出手段は、さらに、前記第２エリアセンサに関しても、前記第１エリアセンサの場合と同様に、前記第１エリアセンサに関して抽出した受光データに対応した前記第２エリアセンサに関する受光データを抽出し、かつ前記３次元形状データ計算手段は、前記データ抽出手段によって前記ライン状のレーザ光の照射位置ごとに抽出された前記第１エリアセンサ及び第２エリアセンサに関する受光データを用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、前記第１エリアセンサ及び第２エリアセンサに関して、前記第２軸方向の複数の受光素子のうちで、受光強度がピークとなる反射光を受光した受光素子の第２軸方向の位置を距離検出用ピーク位置としてそれぞれ検出する距離検出用ピーク位置検出手段と、前記距離検出用ピーク位置検出手段によって検出された前記第１エリアセンサ及び第２エリアセンサに関する両距離検出用ピーク位置を、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに比較して、前記両距離検出用ピーク位置が所定の範囲内にある場合にのみ、前記両距離検出用ピーク位置を正規な反射光による距離検出用ピーク位置とする正規反射光決定手段と、前記正規反射光決定手段によって正規な反射光による距離検出用ピーク位置と判定された前記両距離検出用ピーク位置の少なくとも一方を用いて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記所定の基準位置からの距離をそれぞれ計算する距離計算手段とを備えたことにある。
【００１７】
前記のように構成した本発明の他の特徴においては、正規反射光決定手段により、２つのエリアセンサによって検出された反射光の受光強度に基づいてそれぞれ検出された両距離検出用ピーク位置が所定の範囲内にある場合にのみ、両距離検出用ピーク位置が正規な反射光による距離検出用ピーク位置として決定される。したがって、たとえ２次反射による影響があっても、正規な反射光による距離検出用ピーク位置が高精度で検出されることになり、この距離検出用ピーク位置を用いて計算される距離も２次反射による影響のないものとなる。その結果、２次反射光の影響を除外して精度のよい３次元形状データを得ることができる。
【００１８】
また、前記本発明の他の特徴の正規反射光決定手段及び距離計算手段に代えて、距離検出用ピーク位置検出手段によって検出された前記第１及び第２エリアセンサに関する各距離検出用ピーク位置に応じて、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに、３角測量法の原理に従い、前記第１エリアセンサ及び第２エリアセンサに関して、前記所定の基準位置からの距離をそれぞれ計算する距離計算手段と、前記距離計算手段によって検出された前記第１エリアセンサ及び第２エリアセンサに関する両距離を、前記ライン状のレーザ光の照射位置ごと、かつ前記ライン状のレーザ光の延設方向に沿った位置ごとに比較して、前記両距離が所定の範囲内にある場合にのみ、前記両距離の少なくもいずれか一方に基づいて正規な反射光による前記所定の基準位置からの距離として決定する正規反射光距離決定手段とを備えるようにしてもよい。
【００１９】
前記のように構成した本発明の他の特徴においては、距離計算手段により、２つのエリアセンサによって検出された反射光の受光強度に基づく両距離がそれぞれ計算される。そして、正規反射光距離決定手段により、両距離が所定の範囲内にある場合にのみ、前記両距離の少なくとも一方に基づいて、正規な反射光による距離が決定される。したがって、たとえ２次反射による影響があっても、正規な反射光による距離が高精度で検出されることになる。その結果、２次反射光の影響を除外して精度のよい３次元形状データを得ることができる。
【００２０】
また、本発明の他の特徴は、前記３次元形状データ計算手段は、測定対象物の表面の各位置が互いに直交する３つの座標軸により規定される３次元座標の座標値でそれぞれ表される３次元形状データを計算するものであり、溝又は凸状部分以外の測定対象物の平らな部分に関しては前記３つの座標軸のうちの１つの座標軸の座標値が同一であり、溝又は凸状部分が形成された部分に関しては溝の深さ又は凸状部分の高さに応じて前記１つの座標軸の座標値が異なるように３次元座標の座標値を計算するようにしたことにある。
【００２１】
この本発明の他の特徴によれば、測定対象物の平らな表面に形成された溝の深さ又は凸状部分の高さを一つの座標値に基づいて評価できるため、溝の深さ又は凸状部分の高さの評価を簡単に行えるようになる。
【００２２】
さらに、本発明は前記３次元形状測定装置に限定されるものではなく、３次元形状測定方法によっても実施できるものである。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施形態に係る３次元形状測定装置の全体ブロック図である。
【図２Ａ】図１の測定カメラを、上から縦方向（Ｘ軸方向）に沿って見た内部透視概略図である。
【図２Ｂ】図１の測定カメラを、右側から横方向（Ｙ軸方向）に沿って見た内部透視概略図である。
【図３】図１の３次元形状測定装置の機能ブロック図である。
【図４】図２Ａ及び図２Ｂのエリアセンサの概念図である。
【図５】(Ａ)は図２Ａ及び図２Ｂのエリアセンサにより基準点から測定対象物のレーザ光の照射位置までの距離の検出について説明するための説明図であり、(Ｂ)は測定対象物の表面にライン状のレーザ光が照射される状態を説明するための説明図であり、(Ｃ)は測定対象物の表面からの反射光が図２Ａ及び図２Ｂのエリアセンサに入射する状態を説明するための説明図である。
【図６】図２Ａ及び図２Ｂのエリアセンサの受光素子で受光されるレーザ光の強度分布を示す図である。
【図７】図３のデータ抽出回路のメモリに記憶されるディジタル受光データＤ(ｎ,ｍ,ｐ)の概念図である。
【図８】(Ａ)〜(Ｄ)は、図２Ａ及び図２Ｂのエリアセンサに形成される反射レーザ光跡を示す図である。
【図９】図３のデータ抽出回路によって実行されるプログラムを示すフローチャートである。
【図１０】(Ａ)〜(Ｄ)は、図２Ａ及び図２Ｂのエリアセンサに形成される反射レーザ光跡と、図３のデータ抽出回路によって抽出されるディジタル受光データとの関係を説明するための説明図である。
【図１１】図３のデータ演算回路によって実行されるプログラムを示すフローチャートである。
【図１２】(Ａ)，(Ｂ)は、変形例に係る３次元形状データの生成を説明するための説明図である。
【図１３】従来の３次元形状測定装置の概略図である。
【発明を実施するための形態】
【００２４】
以下、本発明の一実施形態について図面を用いて説明する。図1は、本発明の一実施形態に係る３次元形状測定装置の全体ブロック図である。この３次元形状測定装置は、平板状の測定台１１を備えている。測定台１１は、左右方向を長手方向とする長方形状に構成されており、その上面には、方形状の測定カメラ２０を支持するためのカメラ支持体１２と、平板状の測定対象物ＯＢを固定支持するための対象物支持体１３とが測定台１１と一体的に設けられている。
【００２５】
カメラ支持体１２は、測定台１１の前端部上面の両側から上方へ立設した一対の脚部１２ａ，１２ｂと、一対の脚部１２ａ，１２ｂの上端部間を連結するように、測定台１１の上面に平行に左右方向に延設された支持部１２ｃとからなり、全体としてコ字状に形成されている。支持部１２ｃには、前後方向に貫通した長尺状の貫通孔１２ｃ１が形成されている。貫通孔１２ｃ１の下面には、左右方向に延設された長尺状のガイド溝１２ｃ２が形成されている。対象物支持体１３は、測定台１１の後端部上面の両側から上方へ立設した一対の脚部１３ａ，１３ｂを備えている。一対の脚部１３ａ，１３ｂには、上面から垂直に切り欠いた一対の溝が形成されて、一対の溝には測定対象物ＯＢが固定支持されるようになっている。測定対象物ＯＢは、本実施形態では、刻印文字(例えば、ＡＢＣ文字)、刻印マーク、デザインなどを構成する溝又は凸状部分が形成された高反射率の金属製の平板である。しかし、測定対象物ＯＢは、これに限られるわけではなく、他の立体的な物体でもよく、この場合には対象物支持体１３の形状を測定対象物ＯＢの形状に合わせて変更すればよい。
【００２６】
ガイド溝１２ｃ２には、測定カメラ２０の下面に突出した係合部(図示しない)が摺動可能に侵入しており、測定カメラ２０は左右方向にのみ変位可能となっている。貫通孔１２ｃ１の左端部には、長尺かつ円柱状のロッド３１をその一端にて軸線周りに回転させるフィードモータ３０が固定されている。ロッド３１は、測定カメラ２０を貫通し、その他端は脚部１２ｂの内側面にて回転可能に支持されている。ロッド３１の外周面上には雄ねじが形成されており、この雄ねじには測定カメラ２０の貫通孔に設けた雌ねじが噛み合っている。これらの雄ねじ及び雌ねじによってねじ送り機構が構成されており、フィードモータ３０の駆動によるロッド３１の軸線周りの回転により、測定カメラ２０が左右に移動するようになっている。なお、ねじ送り機構に代えて、動力伝達手段(例えば、ベルト)を用いてフィードモータ３０により測定カメラ２０を左右方向に変位させるようにしてもよい。
【００２７】
ここで、３次元形状測定装置及び測定対象物ＯＢに関する３次元座標軸の方向すなわちＸ，Ｙ，Ｚ座標軸の方向について説明しておく。図１において、上下方向をＸ軸方向とする。左右方向すなわち測定カメラ２０が変位する方向をＹ軸方向とする。前後方向すなわち測定カメラ２０によって測定対象物ＯＢの表面までの距離を検出する方向を、Ｚ軸方向とする。なお、Ｘ、Ｙ，Ｚ軸方向は互いに直交する。
【００２８】
次に、測定カメラ２０について説明する。図２Ａは、測定カメラ２０を、上から縦方向（すなわちＸ軸方向）に沿って見た内部透視概略図である。図２Ｂは、測定カメラ２０を、右から横方向（すなわちＹ軸方向）に沿って見た内部透視概略図である。測定カメラ２０のケース内の左右方向の中央位置には、レーザ光源２１が収容されている。レーザ光源２１は、後方(Ｚ軸方向)に向けてレーザ光を出射する。レーザ光源２１の後方には、コリメートレンズ２２及びシリンドリカルレンズ２３が設けられている。コリメートレンズ２２は、レーザ光源２１からのレーザ光を入射して、そのレーザ光を平行光に変換する。シリンドリカルレンズ２３は、コリメートレンズ２２からの平行レーザ光を、Ｘ軸方向にライン状に延びたライン状レーザ光に変換する。シリンドリカルレンズ２３からのライン状レーザ光は、ケースの後面に設けた開口窓から後方へ出射されて、測定対象物ＯＢの前面にライン状のレーザ光照射跡を形成する。
【００２９】
測定カメラ２０のケース内には、一対の集光レンズ２４ａ，２４ｂ及びエリアセンサ２５ａ，２５ｂが設けられている。集光レンズ２４ａ，２４ｂ及びエリアセンサ２５ａ，２５ｂは、レーザ光源２１の両側にて、レーザ光源２１を中心として対称に配置、すなわちＸＹ平面内にてレーザ光源２１を中心としたＹ軸方向の対称位置に配置されている。集光レンズ２４ａ，２４ｂは、それぞれ凸レンズで構成されていて、測定対象物ＯＢのレーザ光照射跡にて発生し、ケースの後面に設けた開口窓を介して入射する散乱光の一部である反射光を集光してエリアセンサ２５ａ，２５ｂ上に結像する。エリアセンサ２５ａ，２５ｂは、図４に示すように、それぞれＸ軸方向及びＹ軸方向にマトリクス状に配置された複数の受光素子からなる受光センサである。複数の受光素子は、受光した反射光の強度に比例した大きさを有する受光信号をそれぞれ出力する。この場合、エリアセンサ２５ａ，２５ｂに結像される反射光は、測定対象物ＯＢでＸ軸方向に延びたライン状のレーザ光照射跡からの反射光である。したがって、エリアセンサ２５ａ，２５ｂには、測定対象物ＯＢのＸ軸方向の照射位置に対応してＸ軸方向に分布するとともに、所定の基準点Ｐ０から前記Ｘ軸方向の照射位置までの距離に応じてＹ軸方向に分布した反射光跡が形成される。なお、基準点Ｐ０は測定カメラ２０に対して固定された基準位置であり、エリアセンサ２５ａ，２５ｂの対称配置の関係上、レーザ光源２１の中心位置を含むＸ−Ｚ平面内の位置が好ましく、例えばレーザ光源２１の中心位置である。したがって、測定カメラ２０が移動すれば、基準点Ｐ０は測定カメラ２０すなわちレーザ光源２１、エリアセンサ２５ａ，２５ｂと共に移動する。
【００３０】
ここで、エリアセンサ２５ａ，２５ｂにおいて、Ｙ軸方向に分布する反射光の受光位置について説明しておく。レーザ光源２１から出射されてコリメートレンズ２２及びシリンドリカルレンズ２３を介して測定対象物ＯＢの表面に照射されたレーザ光は、測定対象物ＯＢの表面で照射方向に反射する反射光と散乱して反射する反射光を生じる。散乱して反射する反射光の一部が集光レンズ２４ａ，２４ｂを介してエリアセンサ２５ａ，２５ｂに集光する。図５は、測定対象物ＯＢのＸ軸方向の一点で散乱された反射光がエリアセンサ２５ａ，２５ｂに受光されるレーザ光の状態を示している。図示実線で示すように、基準点Ｐ０から測定対象物ＯＢのレーザ光照射位置までの距離Ｌが基準距離Ｌｓ（例えば、基準点Ｐ０から測定対象物ＯＢの平らな部分までのＺ軸方向距離）にある場合、エリアセンサ２５ａ，２５ｂのＸ軸方向の一つの位置における複数の受光素子のうちで、Ｙ軸方向の中心付近位置の受光素子の受光強度が最大になる。この位置を基準位置とする。図６の実線は、この状態における前記複数の受光素子によって検出される受光強度をつなげたラインを表している。一方、基準点Ｐ０から測定対象物ＯＢのレーザ光照射位置までの距離Ｌが、前記基準距離Ｌｓよりも大きい場合、図５(Ａ)の破線で示すように、前記複数の受光素子のうちで受光強度が最大（ピーク値）となる受光素子は、エリアセンサ２５ａ，２５ｂのＹ軸方向の基準位置からずれる。これらのずれは、エリアセンサ２５ａでは前記中心から右となり、エリアセンサ２５ｂでは左になる。基準点Ｐ０から測定対象物ＯＢのレーザ光照射位置までの距離Ｌが、前記基準距離Ｌｓよりも小さい場合には、前記ずれは逆となる。図６の破線は、基準点Ｐ０から測定対象物ＯＢのレーザ光照射位置までの距離Ｌが前記基準距離Ｌｓからずれた状態における、前記複数の受光素子によるレーザ光の受光強度をつなげたラインを表している。したがって、エリアセンサ２５ａ，２５ｂにおいて、受光強度が最大（ピーク値）となるＹ軸方向基準位置からのずれ量を検出することにより、基準点Ｐ０から測定対象物ＯＢのレーザ光照射位置までの距離Ｌが検出される。なお、基準距離と基準位置を複数取得しておき、この関係と受光強度が最大となるＹ軸方向位置から距離Ｌを検出するようにしてもよい。
【００３１】
次に、測定対象物ＯＢの表面のＸ軸方向に沿ったライン状のレーザ光の照射により、エリアセンサ２５ａ，２５ｂにて受光される反射光の状態を説明しておく。図５(Ｂ)は、測定対象物ＯＢの表面にライン状のレーザ光が照射される状態を示している。図示のように、レーザ光源２１から出射されてコリメートレンズ２２によって平行光に変換されたレーザ光は、シリンドリカルレンズ２３によってＸ軸方向に延びたライン状のレーザ光に変換され、測定対象物ＯＢの表面にＸ軸方向に延びたライン状のレーザ光跡を形成する。なお、基準点Ｐ０から測定対象物ＯＢのレーザ光照射位置Ｐ１までの距離Ｌは、破線で示されている。図５(Ｃ)は、前記ライン状のレーザ光により、測定対象物ＯＢの表面で反射された散乱光の一部がエリアセンサ２５ａ，２５ｂに入射する状態を示している。図示のように、レーザ光跡のＸ軸方向の上端位置Ｐ１で反射された散乱光の一部である反射光は、集光レンズ２４ａ，２４ｂにより、エリアセンサ２５ａ，２５ｂのＸ軸方向の中心位置から下方に位置する受光素子に集光される。一方、レーザ光跡のＸ軸方向の下端位置Ｐ２で反射された散乱光の一部である反射光は、集光レンズ２４ａ，２４ｂにより、エリアセンサ２５ａ，２５ｂのＸ軸方向の中心位置から上方に位置する受光素子に集光される。そして、これらの反射光を受光する受光素子のＸ軸方向における中心位置からのずれ量は、測定対象物ＯＢからの反射光のＸＺ平面における方向に対応する。したがって、エリアセンサ２５ａ，２５ｂにおいて、前記反射光のＸ軸方向の受光位置に応じて、測定対象物ＯＢからの反射光のＸＺ平面における方向を決定できる。なお、この場合も、基準点Ｐ０から測定対象物ＯＢのレーザ光照射位置Ｐ１までの距離Ｌは、破線で示されている。
【００３２】
また、この３次元形状測定装置は、図１に示すように、測定カメラ２０に加えて、３次元画像処理装置４０、コントローラ５０、入力装置５１及び表示装置５２を備えている。入力装置５１は、スイッチ、マウスなどの複数の操作子からなり、コントローラ５０に接続されて、作業者の操作により３次元形状測定装置の作動をコントローラ５０に指示する。表示装置５２は、文字、図形などを表示する液晶ディスプレイ装置からなり、３次元画像処理装置４０にて生成された測定対象物ＯＢの表面の３次元形状及びそれらに関する情報を表示する。コントローラ５０は、入力装置５１の作動指示に応じて、測定カメラ２０及び３次元画像処理装置４０の作動を制御するとともに、フィードモータ３０を駆動制御する。フィードモータ３０は、回転子の回転を検出するエンコーダ３２を内蔵している。エンコーダ３２による回転検出信号は、測定カメラ２０のＹ軸方向の位置を検出するために、３次元画像処理装置４０に供給される。
【００３３】
測定カメラ２０は、図３の機能ブロック図に示すように、レーザ駆動回路２６、レーザ強度制御回路２７、センサ信号取出し回路２８ａ，２８ｂ及びデータ抽出回路２９ａ，２９ｂも備えている。レーザ駆動回路２６は、コントローラ５０により制御されて、レーザ光源２１の作動及び非作動、すなわちレーザ光源２１によるレーザ光の出射及び非出射を制御する。レーザ強度制御回路２７は、コントローラ５０からのレーザ強度信号に応じてレーザ駆動回路２６を制御して、レーザ光源２１から出射されるレーザ光の強度を制御する。センサ信号取出し回路２８ａ，２８ｂは、コントローラ５０の指示により、エリアセンサ２５ａ，２５ｂを構成する複数の受光素子から受光信号をそれぞれ順次入力し、入力した各受光信号をその大きさを表すディジタル受光データに変換してデータ抽出回路２９ａ，２９ｂにそれぞれ出力する。データ抽出回路２９ａ，２９ｂは、入力されたディジタル受光データをメモリ２９ａ１，２９ｂ１にそれぞれ順次記憶する。センサ信号取出し回路２８ａ，２８ｂ及びデータ抽出回路２９ａ，２９ｂもコントローラ５０に接続されて、それらの作動がコントローラ５０によって制御される。
【００３４】
ここで、メモリ２９ａ１，２９ｂ１に記憶されるディジタル受光データについて説明しておく。測定対象物ＯＢにて反射された散乱光の一部である反射光は、エリアセンサ２５ａ、２５ｂに入射する。そして、レーザ光源２１からコリメートレンズ２２及びシリンドリカルレンズ２３を介して測定対象物ＯＢの表面に照射されるレーザ光は、Ｘ軸方向に延びたライン状のレーザ光である。このレーザ光の照射される位置の測定対象物ＯＢの表面が凹凸のない平面であれば、エリアセンサ２５ａ，２５ｂには、Ｘ軸方向に延びたライン状の反射光跡（受光ライン）が形成される。このとき、エリアセンサ２５ａ，２５ｂは、ライン状の反射光跡の形成位置がエリアセンサ２５ａ，２５ｂのＹ軸方向の中心付近にそれぞれなるように、測定カメラ２０内に配置されている。したがって、ライン状の反射レーザ光は、図４のＬ０で示すように、エリアセンサ２５ａ，２５ｂのＹ軸方向の中心付近位置にて、Ｘ軸方向に延びたものとなる。そして、エリアセンサ２５ａ，２５ｂを構成する複数の受光素子のうちで、Ｙ軸方向の中心付近位置に位置し、Ｘ軸方向に沿った１列の複数の受光素子の受光量が最大(すわなちピーク)となる。一方、測定対象物ＯＢの表面に凹凸がある場合には、凹凸が存在するＸ軸方向位置にあるＹ軸方向に沿った複数の受光素子のうちで、前記Ｘ軸方向に沿った１列の複数の受光素子からずれた受光素子の受光量が最大(すなわちピーク)となる。そして、受光量が最大となる受光素子の前記Ｘ軸方向に沿った１列の複数の受光素子からのずれ量は、基準点Ｐ０から前記凹凸による測定対象物ＯＢの表面までのＺ軸方向の距離に応じたものである。
【００３５】
そして、前記エリアセンサ２５ａ，２５ｂの複数の受光素子で受光されたレーザ光の強度を表す受光信号が、センサ信号取出し回路２８ａ，２８ｂによってディジタル受光データに変換されてデータ抽出回路２９ａ，２９ｂのメモリ２９ａ１，２９ｂ１に記憶される。このディジタル受光データを、Ｄ(ｍ,ｐ)とする。変数ｍは、エリアセンサ２５ａ，２５ｂのＸ軸方向に沿った受光素子０〜ｍmaxを表す。変数ｐは、エリアセンサ２５ａ，２５ｂのＹ軸方向に沿った受光素子０〜ｐmaxを表す。また、測定カメラ２０は、フィードモータ３０によりＹ軸方向に移動しながら、レーザ光源２１からコリメートレンズ２２及びシリンドリカルレンズ２３を介して測定対象物ＯＢの表面にライン状のレーザ光を照射するとともに、測定対象物ＯＢの表面よりの反射光をエリアセンサ２５ａ，２５ｂで受光する。したがって、データ抽出回路２９ａ，２９ｂは、測定対象物ＯＢのＹ軸方向に沿った表面に関するディジタル受光データＤ(ｍ,ｐ)を、センサ信号取出し回路２８ａ，２８ｂから入力してメモリ２９ａ１，２９ｂ１にそれぞれ順次記憶することになる。この測定カメラ２０のＹ軸方向の移動に伴い、測定対象物ＯＢのレーザ光の照射位置がＹ軸方向に移動しながら、データ抽出回路２９ａ，２９ｂに順次入力されるディジタル受光データＤ(ｍ,ｐ)をディジタル受光データＤ(ｎ,ｍ,ｐ)と表すと、メモリ２９ａ１，２９ｂ１にはディジタル受光データＤ(ｎ,ｍ,ｐ)が記憶されることになる。変数ｎは、データ抽出回路２９ａ，２９ｂに順次入力されるディジタル受光データＤ(ｍ,ｐ)の順番０〜ｎmaxを表す。このメモリ２９ａ１，２９ｂ１に記憶されるディジタル受光データＤ(ｎ,ｍ,ｐ)を図７の概念図に示す。
【００３６】
また、データ抽出回路２９ａ，２９ｂは、詳しくは後述する図９のプログラムを実行することにより、前記メモリ２９ａ１，２９ｂ１に記憶したディジタル受光データＤ(０,０,０)〜Ｄ(ｎmax,ｍmax,ｐmax)のうちで、受光ライン近傍の一部のディジタル受光データを抽出して３次元画像処理装置４０に出力する。なお、このデータ抽出回路２９ａ，２９ｂに加え、コントローラ５０、並びに後述する３次元画像処理装置４０のデータ演算回路４２及び３次元画像生成装置４３は、プログラムの実行により各種機能を実現するコンピュータにより構成されている。
【００３７】
３次元画像処理装置４０は、送り量計算回路４１、データ演算回路４２及び３次元画像生成装置４３を備えている。送り量計算回路４１は、フィードモータ３０内に設けたエンコーダ３２から回転検出信号を入力し、この回転検出信号を用いて測定カメラ２０のＹ軸方向位置(測定対象物ＯＢのライン状のレーザ光のＹ軸方向位置)Ｙｐを計算する。具体的には、測定カメラ２０は、コントローラ５０による初期制御により、Ｙ軸方向の駆動限界位置(すなわち原点)に移動する。この状態では、レーザ光源２１からコリメートレンズ２２及びシリンドリカルレンズ２３を介したライン状のレーザ光は、測定対象物ＯＢの初期位置(Ｙ軸方向の原点)に照射される。一方、送り量計算回路４１は、コントローラ５０による初期制御により、Ｙ軸方向位置Ｙｐを「０」に初期設定する。送り量計算回路４１は、フィードモータ３０の回転角に対する測定カメラ２０のＹ軸方向への変位量の比を表す変換定数を予め記憶している。そして、フィードモータ３０が駆動されて測定カメラ２０がＹ軸方向に沿って移動し始めると、送り量計算回路４１は、エンコーダ３２からの回転検出信号により表されるフィードモータ３０の回転角に前記変換定数を乗算することにより、測定カメラ２０のＹ軸方向への変位量を計算し始める。この変位量が、測定カメラ２０のＹ軸方向位置Ｙｐである。
【００３８】
また、送り量計算回路４１は、コントローラ５０との信号の授受により、センサ信号取出し回路２８ａ，２８ｂと同期制御され、センサ信号取出し回路２８ａ，２８ｂがエリアセンサ２５ａ，２５ｂの複数の受光素子から受光信号をそれぞれ入力したタイミングごとに、前記計算したＹ軸方向位置ＹｐをＹ軸方向位置データＹＤ(ｎ)としてデータ演算回路４２に出力する。この変数ｎは、「０」から順次「１」ずつ変更されるもので、前述したディジタル受光データＤ(ｎ,ｍ,ｐ)の変数ｎに対応する。したがって、送り量計算回路４１から出力されるＹ軸方向位置データＹＤ(０)〜ＹＤ(ｎmax)は、データ抽出回路２９ａのメモリ２９ａ１に記憶されるディジタル受光データＤ(０,ｍ,ｐ)〜Ｄ(ｎmax,ｍ,ｐ)(ｍ＝０〜ｍmax,ｐ＝０〜ｐmax)にそれぞれ対応し、ディジタル受光データＤ(０,ｍ,ｐ)〜Ｄ(ｎmax,ｍ,ｐ)を取得した時の測定対象物ＯＢの表面におけるライン状のレーザ光のＹ軸方向位置を表す。なお、センサ信号取出し回路２８ａ，２８ｂによるディジタル受光データＤ(ｍ,ｐ)(ｍ＝０〜ｍmax，ｐ＝０〜ｐmax)の取出し数の最大値ｎmaxと、送り量計算回路４１によるＹ軸方向位置データＹＤの出力最大数ｎmaxは同じである。すなわち、送り量計算回路４１はコントローラ５０によって制御され、送り量計算回路４１によるＹ軸方向位置Ｙｐの計算は、センサ信号取出し回路２８ａ，２８ｂによるディジタル受光データＤ(ｍ,ｐ)の取出しの終了時に終了する。
【００３９】
データ演算回路４２は、メモリ４２ａを備えており、データ抽出回路２９ａ，２９ｂから出力された受光ライン近傍の一部のディジタル受光データをメモリ４２ａに記憶するとともに、送り量計算回路４１から出力されるＹ軸位置データＹＤ(ｎ)(ｎ＝０〜ｎmax)をメモリ４２ａに記憶する。そして、データ演算回路４２は、図１１のプログラムの実行により、測定対象物ＯＢの表面の３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を計算して、計算した３次元形状データ３Ｄ(ｘ,ｙ,ｚ)をメモリ４２ａに記憶するとともに、３次元画像生成装置４３に出力する。３次元画像生成装置４３は、メモリ４３ａを備えていて、データ演算回路４２から出力された３次元形状データ３Ｄ(ｘ,ｙ,ｚ)をメモリ４３ａに記憶する。また、３次元画像生成装置４３は、コントローラ５０によって制御され、前記メモリ４３ａに記憶した３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を用いて測定対象物ＯＢの表面の３次元画像を表す３次元画像データを生成して、生成した３次元画像データをメモリ４３ａに記憶するとともに表示装置５２に出力する。表示装置５２は、この３次元画像データを用いて、測定対象物ＯＢの表面形状を画像表示する。
【００４０】
次に、上記のように構成した３次元形状測定装置の作動を説明する。作業者は、刻印文字、刻印マーク、デザインなどを構成する溝又は凸状部分を表面に形成した測定対象物ＯＢを対象物支持体１３にセットする。この場合、作業者は、前記溝又は凸状部分が３次元形状の測定範囲内すなわちレーザ光の照射範囲内に位置するように、測定対象物ＯＢをセットする。そして、作業者は、入力装置５１を操作して、レーザ光源２１から出射されるレーザ光の強度を設定した後、測定対象物ＯＢの３次元形状の測定開始をコントローラ５０に指示する。なお、作業者によって以前に設定されてコントローラ５０に記憶されているレーザ光の強度を選択する場合には、前記レーザ光の強度の設定は不要である。
【００４１】
コントローラ５０は、前記測定開始の指示に応答して、設定されているレーザ光の強度を表す信号をレーザ強度制御回路２７に出力するとともに、レーザ駆動回路２６に作動開始を指示する。レーザ駆動回路２６は、レーザ強度制御回路２７により制御されて、前記設定された強度に対応した大きさの駆動制御信号をレーザ光源２１に出力し始める。レーザ光源２１は、前記設定された強度のレーザ光をコリメートレンズ２２及びシリンドリカルレンズ２３を介して測定対象物ＯＢの表面に照射する。この場合、コリメートレンズ２２及びシリンドリカルレンズ２３は、レーザ光源２１から出射されたレーザ光をＸ軸方向に延びるライン状のレーザ光に変換する。したがって、測定対象物ＯＢの表面には、Ｘ軸方向に延びたライン状のレーザ光が照射される。
【００４２】
また、コントローラ５０は、前記測定開始の指示に応答して、フィードモータ３０を作動開始させる。フィードモータ３０は、この作動開始により回転を開始し、ロッド３１を一定速度で軸線周りに回転させ始める。このロッド３１の回転はねじ送り機構により測定カメラ２０の直線運動に変換され、測定カメラ２０は初期位置(Ｙ軸方向位置Ｙｐ＝０)からＹ軸方向に一定速度で移動し始める。この測定カメラ２０の移動に伴い、前記測定対象物ＯＢの表面に照射されたライン状のレーザ光もＹ軸方向に一定速度で移動し始める。そして、測定対象物ＯＢの表面へのライン状のレーザ光の照射により、測定対象物ＯＢの表面からの散乱光の一部である反射光が、集光レンズ２４ａ，２４ｂを介してエリアセンサ２５ａ，２５ｂに入射する。このレーザ光源２１のレーザ光の出射及びフィードモータ３０の作動は、測定カメラ２０がコントローラ５０に記憶してある測定終了位置に達するまで続行する。測定カメラ２０が測定終了位置に達すると、コントローラ５０は、送り量計算回路４１から入力される信号により測定終了位置に達したことを検出し、レーザ光の出射及びフィードモータ３０の作動を停止させる。そして、この時点で、コントローラ５０は、測定終了信号をデータ抽出回路２９ａ，２９ｂに出力する。なお、測定カメラ２０が測定終了位置に達する前に、作業者が入力装置５１を操作して測定終了をコントローラ５０に指示した場合にも、コントローラ５０はレーザ光の出射及びフィードモータ３０の作動を停止させるとともに、測定終了信号をデータ抽出回路２９ａ，２９ｂに出力する。
【００４３】
したがって、測定開始から測定終了まで、ライン状のレーザ光が測定対象物ＯＢの表面をＹ軸方向に一定速度で移動し、測定対象物ＯＢの表面で反射した散乱光の一部が、集光レンズ２４ａ，２４ｂによって集光されてエリアセンサ２５ａ，２５ｂにそれぞれ入射する。図８は、測定カメラ２０が初期位置からＹ軸方向に移動した場合における、エリアセンサ２５ａ，２５ｂに形成される反射光跡（受光ライン）を示している。この場合、測定対象物ＯＢの表面が平面であれば、測定カメラ２０をＹ軸方向に移動させながら、エリアセンサ２５ａ，２５ｂに形成される受光ラインは、ほぼＸ軸方向に沿った直線となる。一方、測定対象物ＯＢの表面に溝又は凸状部分が存在する場合には、エリアセンサ２５ａ，２５ｂに形成される受光ラインにおける溝又は凸状部分に相当する部分は、３角測量の原理に従って、前記ほぼＸ軸方向に沿った直線からＹ軸方向にずれて位置する。このＹ軸方向へのずれ量は、前述のように、溝の深さ又は凸状部分の高さに対応するので、前記直線からのＹ軸方向へのずれ量が基準点Ｐ０（例えば、レーザ光源２１）から測定対象物ＯＢの表面までの距離の変化を表すことになる。
【００４４】
また、エリアセンサ２５ａ，２５ｂに形成される受光ラインは、測定対象物ＯＢの対象物支持体１３への取付け状態においても変化する。測定対象物ＯＢの表面がＸ−Ｙ平面に正確に平行であれば、図８(Ａ)のように、エリアセンサ２５ａ，２５ｂには、そのＹ軸方向の中心付近においてＸ軸に沿った受光ラインＲＬ(反射光跡)が形成される。ただし、測定対象物ＯＢの表面の溝又は凸状部分に関しては、図示のように、Ｘ軸に沿った受光ラインＲＬからＹ軸方向にずれた受光ラインＲＬが形成される(以下の図８(Ｂ)〜図８(Ｄ)においても同じ)。これに対して、図８(Ｂ)に示すように、測定対象物ＯＢの表面がＹ軸方向に対して傾いている場合には、測定カメラ２０が初期位置にある状態におけるエリアセンサ２５ａ，２５ｂには、図８(Ａ)と同様な受光ラインＲＬが形成される。しかし、測定カメラ２０が測定終了位置にある状態におけるエリアセンサ２５ａ，２５ｂには、Ｙ軸方向の中心付近からずれた位置にてＸ軸に沿った受光ラインＲＬが形成される。
【００４５】
また、図８(Ｃ)に示すように、測定対象物ＯＢの表面がＸ軸方向に対して傾いている場合には、測定カメラ２０が初期位置及び測定終了位置にある状態におけるエリアセンサ２５ａ，２５ｂには、そのＹ軸方向の中心付近においてＸ軸方向から傾いた受光ラインＲＬが形成される。さらに、図８(Ｄ)に示すように、測定対象物ＯＢの表面が湾曲している場合には、測定カメラ２０が初期位置及び測定終了位置にある状態におけるエリアセンサ２５ａ，２５ｂには、そのＹ軸方向の中心付近においてＸ軸に沿った受光ラインＲＬが形成される。しかし、測定カメラ２０が中間位置にある状態におけるエリアセンサ２５ａ，２５ｂには、Ｙ軸方向の中心付近からずれた位置にてＸ軸に沿った受光ラインＲＬが形成される。
【００４６】
前述のように、反射光がエリアセンサ２５ａ，２５ｂに入射されている間、コントローラ５０は、所定の短時間ごとにセンサ信号取出し回路２８ａ，２８ｂに受光信号の取出しを指示する。この指示に応答して、センサ信号取出し回路２８ａ，２８ｂは、エリアセンサ２５ａ，２５ｂの複数の受光素子が出力する反射光の強度を表す各受光信号を入力して、前記各受光信号をディジタル受光データＤ(ｍ,ｐ)(ｍ＝０〜ｍmax，ｐ＝０〜ｐmax)に変換して、データ抽出回路２９ａ，２９ｂにそれぞれ供給する。そして、データ抽出回路２９ａ，２９ｂは、前記入力されたディジタル受光データＤ(ｍ,ｐ)を、入力された順番を表わす変数ｎを「０」から順次「１」ずつ増加させながら、ディジタル受光データＤ(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍmax，ｐ＝０〜ｐmax)としてメモリ２９ａ１，２９ｂ１にそれぞれ順次記憶する。
【００４７】
また、前記センサ信号取出し回路２８ａ，２８ｂに対する受光信号の取出しに同期して、コントローラ５０は、送り量計算回路４１にＹ軸方向位置Ｙｐの出力を指示する。この指示に応答して、送り量計算回路４１は、フィードモータ３０内に設けたエンコーダ３２から入力した回転検出信号から計算した測定カメラ２０のＹ軸方向位置(測定対象物ＯＢのライン状のレーザ光のＹ軸方向位置)Ｙｐを、前記ディジタル受光データＤ(ｎ,ｍ,ｐ)の順番を表わす変数ｎと同じように「０」から順次「１」ずつ増加する変数ｎを用いて、Ｙ軸方向位置データＹＤ(ｎ)(ｎ＝０〜ｎmax)としてデータ演算回路４２に出力する。データ演算回路４２は、このデータ演算回路４２から出力されるＹ軸方向位置データＹＤ(ｎ)をメモリ４２ａに順次記憶する。
【００４８】
このようなディジタル受光データＤ(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍmax，ｐ＝０〜ｐmax)のメモリ２９ａ１，２９ｂ１への記憶中、データ抽出回路２９ａ，２９ｂは図９に示すプログラムをそれぞれ実行する。データ抽出回路２９ａ，２９ｂは、メモリ２９ａ１，２９ｂ１に記憶されたディジタル受光データＤ(ｎ,ｍ,ｐ)をそれぞれ用いて、全く同じこのプログラムを実行するので、以下の説明においては、データ抽出回路２９ａのプログラム処理についてのみ詳しく説明する。
【００４９】
このプログラムの実行はステップＳ１００にて開始され、データ抽出回路２９ａは、ステップＳ１０２にて、ディジタル受光データＤ(ｎ,ｍ,ｐ)の順番を表わす変数ｎを「０」に初期設定するとともに、後述するピークポイントｐｋＡを「０」に初期設定する。次に、データ抽出回路２９ａは、ステップＳ１０４にて変数ｎによって指定されるディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,ｍmax,ｐmax)がメモリ２９ａ１内に既に存在するかを判定し、存在するまでステップＳ１０４，Ｓ１０６の循環処理を続ける。なお、ステップＳ１０６の判定処理は測定終了か否かを判定する処理である。ディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,ｍmax,ｐmax)が存在すれば、データ抽出回路２９ａは、ステップＳ１０４にて「Ｙｅｓ」と判定して、ステップＳ１０８にてピークポイントｐｋＡが「０」であるかを判定する。ピークポイントｐｋＡは前記初期設定により「０」に設定されているので、データ抽出回路２９ａは、ステップＳ１０８にて「Ｙｅｓ」と判定して、ステップＳ１１０に進む。
【００５０】
ステップＳ１１０においては、データ抽出回路２９ａは、メモリ２９ａ１からディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,０,ｐmax)を抽出して、ステップＳ１１２にてディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,０,ｐmax)を用いてピークポイントｐｋＡを検出する。このピークポイントｐｋＡの検出は、ディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,０,ｐmax)のうちで、所定の比較値(図６の一点鎖線参照)よりも大きな受光強度を表すディジタル受光データＤ群を抽出し、その中から一つのピーク値を抽出する。そして、変数０〜ｐmaxのうちで、前記抽出したピーク値に対応したエリアセンサ２５ａのＹ軸方向位置ｐをピークポイントｐｋＡとする。また、ディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,０,ｐmax)により表された受光分布において複数のピークが存在する場合には、複数のピークポイントｐｋＡが設定される。この場合、ディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,０,ｐmax)は、エリアセンサ２５ａのＸ軸方向の一端においてＹ軸方向に沿った複数の受光素子による受光強度を表している。したがって、ピークポイントｐｋＡは、図１０(Ａ)に示すように、エリアセンサ２５ａのＸ軸方向の一端において受光ラインＲＬが位置するＹ軸方向位置(Ｚ軸方向距離)を表す。
【００５１】
前記ステップＳ１１２の処理後、データ抽出回路２９ａは、ステップＳ１１４にて、前記検出されたピークポイントｐｋＡが一つであるか否かを判定する。この場合、ピークポイントｐｋＡは、エリアセンサ２５ａのＸ軸方向の一端において受光ラインＲＬが位置するＹ軸方向位置である。そして、測定開始は溝又は凸状部分が形成されない位置(測定対象物ＯＢのＸ軸方向端部及びＹ軸方向端部)すなわち平面部分から行われるので、溝又は凸状部分による２次反射による影響はなく、ピーク値は一つだけ存在する。言い換えれば、ピーク値が２つ以上ある場合は、レーザ光照射位置が溝又は凸状部分の形成位置に位置している場合である。また、ピーク値が存在しない場合は、レーザ光照射位置に測定対象物ＯＢが存在しない場合である。したがって、ピークポイントｐｋＡが１つでない場合には、データ抽出回路２９ａは、ステップＳ１１４にて「Ｎｏ」と判定して、ステップＳ１５４にてコントローラ５０を介して表示装置５２に異常を表示させて、ステップＳ１５６にてプログラムの実行を終了する。
【００５２】
ピークポイントｐｋＡが１つだけ存在する場合には、データ抽出回路２９ａは、ステップＳ１１４にて「Ｙｅｓ」と判定して、ステップＳ１１６にてピークポイントｐｋＡをピークポイントデータＪ(ｎ,０)として設定する。ピークポイントデータＪ(ｎ,０)は、図１０(Ａ)でピークポイントｐｋＡとして示すように、測定カメラ２０が初期位置にある状態でエリアセンサ２５ａのＸ軸方向一端におけるピークポイントのＹ軸方向位置、すなわち測定対象物ＯＢの表面のＸ軸方向及びＹ軸方向の初期位置における、基準点Ｐ０からレーザ光照射位置までの距離Ｌを表す。
【００５３】
次に、データ抽出回路２９ａは、ステップＳ１１８にて、メモリ２９ａ１からディジタル受光データＤ(ｎ,ｍmax,０)〜Ｄ(ｎ,ｍmax,ｐmax)を抽出して、ステップＳ１２０にてディジタル受光データＤ(ｎ,ｍmax,０)〜Ｄ(ｎ,ｍmax,ｐmax)を用いて、前記ステップＳ１１２と同様にピークポイントｐｋＢを検出する。したがって、ピークポイントｐｋＢは、図１０(Ａ)に示すように、エリアセンサ２５ａのＸ軸方向の他端において受光ラインＲＬが位置するＹ軸方向位置(基準点Ｐ０からレーザ光照射位置までの距離Ｌ)を表す。次に、データ抽出回路２９ａは、ステップＳ１２２にて、前記検出されたｐｋＢが一つであるか否かを判定する。この場合、ピークポイントｐｋＢは、エリアセンサ２５ａのＸ軸方向の他端において受光ラインＲＬが位置するＹ軸方向位置である。そして、この場合も、前記場合と同様に、ピーク値は一つだけ存在する。したがって、ピークポイントｐｋＢが１つでない場合には、データ抽出回路２９ａは、ステップＳ１２２にて「Ｎｏ」と判定して、ステップＳ１５４にてコントローラ５０を介して表示装置５２に異常を表示させて、ステップＳ１５６にてプログラムの実行を終了する。
【００５４】
ピークポイントｐｋＢが１つだけ存在する場合には、データ抽出回路２９ａは、ステップＳ１２２にて「Ｙｅｓ」と判定して、ステップＳ１２４にてピークポイントｐｋＢをピークポイントデータＪ(ｎ,ｍmax)として設定する。ピークポイントデータＪ(ｎ,ｍmax)は、図１０(Ａ)でピークポイントｐｋＢとして示すように、測定カメラ２０が初期位置にある状態でエリアセンサ２５ａのＸ軸方向他端におけるピークポイントのＹ軸方向位置、すなわち測定対象物ＯＢの表面のＸ軸方向の最終位置かつＹ軸方向の初期位置における、基準点Ｐ０からレーザ光照射位置までの距離Ｌを表す。ここまでの処理により、図１０(Ｂ)に示すように、エリアセンサ２５ａに形成された受光ラインの位置情報が、ピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)として得られる。
【００５５】
次に、データ抽出回路２９ａは、ステップＳ１２６にて変数ｍを「０」に初期設定して、ステップＳ１３４の処理によって変数ｍを順次「１」ずつ増加させながら、ステップＳ１３２の比較判定処理によって変数ｍが値ｍmax以上になるまで、ステップＳ１２８，Ｓ１３０の処理を繰り返し実行する。ステップＳ１２８においては、「０」からｍmaxまで「１」ずつ変化する変数ｍに対して、下記式１の演算の実行により、前記ステップＳ１１２，Ｓ１２０の処理により計算したピークポイントｐｋＡ，ｐｋＢを結ぶ直線上のＹ軸方向位置Ｌｐを順次計算する。
Ｌｐ＝ｐｋＡ＋(ｐｋＢ−ｐｋＡ)・ｍ／ｍmax    …式１
なお、Ｌｐはエリアセンサ２５ａのＹ軸方向に配置された受光素子の順番を表わす整数値であって、前記式１の計算結果の少数点未満は四捨五入される。
【００５６】
ステップＳ１３０においては、前記計算したＹ軸方向位置Ｌｐを用いて、メモリ２９ａ１に記憶されているディジタル受光データＤ(ｎ,ｍ,０)〜Ｄ(ｎ,ｍ,ｐmax)の中からＤ(ｎ,ｍ,Ｌｐ−Ｅ)〜Ｄ(ｎ,ｍ,Ｌｐ＋Ｅ)を抽出して、データ演算回路４２に供給する。なお、値Ｅは予め決められた整数値であって、測定対象物ＯＢの表面に形成される溝の最大深さ又は凸状部分の最大高さに応じて、エリアセンサ２５ａにおけるレーザ光の受光位置がＹ軸方向に変化する変位量を受光素子の数に換算した値よりも若干大きな値である。データ演算回路４２は、前記供給されたディジタル受光データＤ(ｎ,ｍ,Ｌｐ−Ｅ)〜Ｄ(ｎ,ｍ,Ｌｐ＋Ｅ)を、(２Ｅ＋１)個のディジタル受光データＤ(ｎ,ｍ,ｐ)（ｐ＝０〜２Ｅ）としてメモリ４２ａに記憶する。このステップＳ１３０の処理により、変数ｍが値ｍmax以上になった時点では、変数ｎによって指定され、エリアセンサ２５ａにおける図１０(Ｃ)の破線で示す枠内の受光素子によって検出されたレーザ光の強度を表すディジタル受光データＤ(ｎ,ｍ,ｐ)(ｍ＝０〜ｍmax，ｐ＝Ｌｐ−Ｅ〜Ｌｐ＋Ｅ)が、ディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ）としてデータ演算回路４２のメモリ４２ａに記憶される。すなわち、ピークポイントｐｋＡ，ｐｋＢを結ぶ直線に対してＹ軸方向に値Ｅの幅内にある受光素子によって検出されたレーザ光の強度を表すディジタル受光データＤ(ｎ,ｍ,ｐ)がメモリ４２ａに記憶される。
【００５７】
前記ステップＳ１２８〜Ｓ１３４からなる循環処理後、データ抽出回路２９ａは、ステップＳ１３６にて、前記ステップＳ１１６，Ｓ１２４の処理によって設定された、変数ｎによって指定されるピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)をデータ演算回路４２に供給する。このピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)は、前記データ演算回路４２のメモリ４２ａに前記変数ｎによって指定されるディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ）に対応して記憶される。なお、ピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)は、後述する３次元形状データの計算の際に、エリアセンサ２５ａにおけるディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ）のＹ軸方向の位置を計算するためのデータとして用いられる。
【００５８】
次に、データ抽出回路２９ａは、ステップＳ１３８にて変数ｎに「１」を加算することにより変数ｎを更新して、ステップＳ１０４に戻る。ステップＳ１０４においては、更新された変数ｎによって指定されるディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,ｍmax,ｐmax)がメモリ２９ａ１内に既に存在するかをふたたび判定する。ディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,ｍmax,ｐmax)がメモリ２９ａ１内に存在していなければ、データ抽出回路２９ａは、ステップＳ１０４，Ｓ１０６の循環処理を続ける。ディジタル受光データＤ(ｎ,０,０)〜Ｄ(ｎ,ｍmax,ｐmax)が存在すれば、データ抽出回路２９ａは、ステップＳ１０４にて「Ｙｅｓ」と判定して、ステップＳ１０８にてピークポイントｐｋＡが「０」であるかをふたたび判定する。ピークポイントｐｋＡは前記ステップＳ１１２の処理により「０」以外の値に設定されているので、データ抽出回路２９ａは、ステップＳ１０８にて「Ｎｏ」と判定して、ステップＳ１４０に進む。
【００５９】
ステップＳ１４０においては、データ抽出回路２９ａは、メモリ２９ａ１からディジタル受光データＤ(ｎ,０,ｐｋＡ−Ｈ)〜Ｄ(ｎ,０,ｐｋＡ＋Ｈ)を抽出する。ただし、値Ｈは予め決められた小さな所定値である。これにより、エリアセンサ２５ａのＸ軸方向の一端の位置(ｍ＝０)において、図１０(Ｄ)に示すように、前回の処理により計算したピークポイントｐｋＡ(Ｙ軸方向のピーク位置)からＹ軸方向両側に幅Ｈの範囲内にある受光素子に関するディジタル受光データＤ(ｎ,０,ｐ)だけが抽出される。そして、データ抽出回路２９ａは、ステップＳ１４２にて、前記ステップＳ１１２の処理と同様に、ディジタル受光データＤ(ｎ,０,ｐｋＡ−Ｈ)〜Ｄ(ｎ,０,ｐｋＡ＋Ｈ)を用いてピークポイントｐｋＡを検出する。これらのステップＳ１４０，Ｓ１４２の処理おいては、前回の処理により変数ｎが「１」だけ小さい状態におけるピークポイントｐｋＡが検出されており、今回のステップＳ１３２の処理により検出されるピークポイントｐｋＡは前回の処理によるピークポイントｐｋＡの位置から大きく変化していないはずである。したがって、ピークポイントｐｋＡの検出のためには、少ない数のディジタル受光データＤ(ｎ,０,ｐｋＡ−Ｈ)〜Ｄ(ｎ,０,ｐｋＡ＋Ｈ)を用いれば充分である。これにより、演算処理が簡単になる。
【００６０】
次に、データ抽出回路２９ａは、ステップＳ１４４にて、前記ステップＳ１４２の処理により検出されたｐｋＡが存在するか否かを判定する。この場合も、レーザ光が照射される位置は、測定対象物ＯＢのＸ軸方向の一端であり、平面部である可能性が高い。また、たとえ、レーザ光の照射位置に溝若しくは凸状部分が形成されていて、溝又は凸状部分による２次反射があったとしても、ピークポイントｐｋＡの検出に用いる少ない数のディジタル受光データＤ(ｎ,０,ｐｋＡ−Ｈ)〜Ｄ(ｎ,０,ｐｋＡ＋Ｈ)は、エリアセンサ２５ａのＹ軸方向に短い幅２Ｈの範囲内だけのものであるので、ピーク値が存在する可能性はほとんどない。また、この所定値Ｈを小さくすることにより、ピーク値を単一にすることは可能である。なお、ピークポイントｐｋＡが存在しない場合は、測定対象物ＯＢが存在しないとみなすことができる。したがって、ステップＳ１４４の判定処理においては、ピークポイントｐｋＡが存在するか否かだけが判定される。
【００６１】
ピークポイントｐｋＡが存在しない場合には、データ抽出回路２９ａは、ステップＳ１４４にて「Ｎｏ」と判定して、前述したステップＳ１５４にてコントローラ５０を介して表示装置５２に異常を表示させて、ステップＳ１５６にてプログラムの実行を終了する。ピークポイントｐｋＡが存在する場合には、データ抽出回路２９ａは、ステップＳ１４４にて「Ｙｅｓ」と判定して、ステップＳ１４６にて、前記ステップＳ１１６と同様な処理により、ピークポイントｐｋＡをピークポイントデータＪ(ｎ,０)として設定する。
【００６２】
次に、データ抽出回路２９ａは、ステップＳ１４８にて、メモリ２９ａ１からディジタル受光データＤ(ｎ,ｍmax,ｐｋＢ−Ｈ)〜Ｄ(ｎ,ｍmax,ｐｋＢ＋Ｈ)を抽出して、ステップＳ１５０にて、前記ステップＳ１１８の処理と同様に、ディジタル受光データＤ(ｎ,０,ｐｋＢ−Ｈ)〜Ｄ(ｎ,０,ｐｋＢ＋Ｈ)を用いてピークポイントｐｋＢを検出する。この場合も、前記ステップＳ１４０，Ｓ１４２の場合と同様に、エリアセンサ２５ａのＸ軸方向の他端の位置(ｍ＝ｍmax)において、前回の処理により計算したピークポイントｐｋＢ(Ｙ軸方向のピーク位置)からＹ軸方向両側の幅Ｈの範囲内にある受光素子に関する、少ない数のディジタル受光データＤ(ｎ,ｍmax,ｐｋＢ−Ｈ)〜Ｄ(ｎ,ｍmax,ｐｋＢ＋Ｈ)の中のピーク値に対応したピークポイントｐｋＢが検出される。なお、この場合も、前記場合と同様に、ピークポイントｐｋＢは通常一つであり、ピークポイントｐｋＢが存在しない場合は、測定対象物ＯＢが存在しない場合である。したがって、ピークポイントｐｋＢが存在しない場合には、データ抽出回路２９ａは、ステップＳ１５２にて「Ｎｏ」と判定して、前述したステップＳ１５４にてコントローラ５０を介して表示装置５２に異常を表示させて、ステップＳ１５６にてプログラムの実行を終了する。ピークポイントｐｋＢが存在する場合には、データ抽出回路２９ａは、ステップＳ１５２にて「Ｙｅｓ」と判定して、前述したステップＳ１２４にて、ピークポイントｐｋＢをピークポイントデータＪ(ｎ,ｍmax)として設定する。
【００６３】
次に、データ抽出回路２９ａは、前述したように、ステップＳ１２６にて変数ｍを「０」に初期設定して、ステップＳ１３４の処理によって変数ｍを順次「１」ずつ増加させながら、ステップＳ１３２の比較判定処理によって変数ｍが値ｍmax以上になるまで、ステップＳ１２８〜Ｓ１３４の循環処理を繰り返し実行する。これらのステップＳ１２８〜Ｓ１３４の循環処理により、前述のように、データ抽出回路２９ａのメモリ２９ａ１に記憶されていて変数ｎによって指定されるディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax,ｐ＝０〜ｐmax)の中からディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝Ｌｐ−Ｅ〜Ｌｐ＋Ｅ）が抽出されて、データ演算回路４２に供給される。データ演算回路４２のメモリ４２ａには、前記ディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝Ｌｐ−Ｅ〜Ｌｐ＋Ｅ）が、ディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ）として記憶される。すなわち、ピークポイントｐｋＡ，ｐｋＢを結ぶ直線に対してＹ軸方向に値Ｅの幅内にある受光素子によって検出されたレーザ光の強度を表すディジタル受光データＤ(ｎ,ｍ,ｐ)がメモリ４２ａに記憶される。
【００６４】
前記ステップＳ１２８〜Ｓ１３４からなる循環処理後、データ抽出回路２９ａは、前述したステップＳ１３６にて、前記ステップＳ１４６，Ｓ１２４の処理によって設定されたピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)をデータ演算回路４２に供給する。このピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)は、前述した場合と同様に、前記データ演算回路４２のメモリ４２ａに前記ディジタル受光データＤ(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ）に対応して記憶される。そして、データ抽出回路２９ａは、ステップＳ１３８にて変数ｎを更新して、ステップＳ１０４に戻る。そして、コントローラ５０から測定終了の指示があるまで、データ抽出回路２９ａは、ステップＳ１０４〜Ｓ１０８，Ｓ１４０〜Ｓ１５２，Ｓ１２４〜Ｓ１３８の処理を繰り返し実行する。測定終了の指示があれば、ステップＳ１０６にて「Ｙｅｓ」と判定して、プログラムの実行を終了する。これにより、データ演算回路４２のメモリ４２ａには、ディジタル受光データＤ(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝０〜２Ｅ)及びピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)(ｎ＝０〜ｎmax)が記憶されることになる。以降の説明では、これらのデータを、エリアセンサ２５ａに関するデータとして、ディジタル受光データＤ１(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝０〜２Ｅ)及びピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)(ｎ＝０〜ｎmax)と呼ぶことにする。
【００６５】
また、データ演算回路４２には、データ抽出回路２９ａと同様に動作するデータ抽出回路２９ｂからも、データ抽出回路２９ａの場合と同様に、ディジタル受光データＤ(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝Ｌｐ−Ｅ〜Ｌｐ＋Ｅ)及びピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)(ｎ＝０〜ｎmax)が供給される。そして、データ演算回路４２のメモリ４２ａには、ディジタル受光データＤ(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝０〜２Ｅ)及びピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)(ｎ＝０〜ｎmax)として記憶される。この場合には、エリアセンサ２５ａによるデータと区別するために、これらのデータを、ディジタル受光データＤ２(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝０〜２Ｅ)及びピークポイントデータＪ２(ｎ,０)，Ｊ２(ｎ,ｍmax)(ｎ＝０〜ｎmax)と呼ぶことにする。ただし、図５に示すように、エリアセンサ２５ａ，２５ｂは互いにＹ軸方向に対称位置に配置され、レーザ光を受光する受光素子もＹ軸方向に対称に分布するので、ディジタル受光データＤ２(ｎ,ｍ,ｐ)の変数ｐは、ディジタル受光データＤ２(ｎ,ｍ,ｐ)の変数ｐとはＹ軸方向の反対方向に向かって増加(又は減少)する。
【００６６】
次に、データ演算回路４２の動作について説明する。データ演算回路４２は、前記データ抽出回路２９ａ，２９ｂから供給されるデータをメモリ４２ａに記憶した後、図１１のプログラムの実行を開始する。このプログラムの実行はステップＳ２００にて開始され、ステップＳ２０２〜Ｓ２２６の処理により、メモリ４２ａに記憶されていて、エリアセンサ２５ａの検出に基づくディジタル受光データＤ１(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ)及びピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)(ｎ＝０〜ｎmax)と、エリアセンサ２５ｂの検出に基づくディジタル受光データＤ２(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ)及びピークポイントデータＪ２(ｎ,０)，Ｊ２(ｎ,ｍmax)(ｎ＝０〜ｎmax)とを用いて、正規反射光によるピークポイントデータＪ(ｎ,ｍ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍmax)を計算してメモリ４２ａに記憶する。正規反射光とは、測定対象物ＯＢの表面における溝又は凸状部分による２次反射を起こさず、測定対象物ＯＢの表面から直接集光レンズ２４ａ、２４ｂを介してエリアセンサ２５ａ，２５ｂに入射する散乱光である。そして、正規反射光によるピークポイントデータＪ(ｎ,ｍ)は、基準点Ｐ０（例えば、前述のようにレーザ光源２１）から測定対象物ＯＢの表面までの距離Ｌを間接的に表し、測定対象物ＯＢの表面の３次元形状データの演算に用いるデータである。
【００６７】
このピークポイントデータＪ(ｎ,ｍ)の計算及び記憶処理においては、データ演算回路４２は、まず、ステップＳ２０２にて変数ｎを「０」に設定した後、ステップＳ２０４〜Ｓ２２６の循環処理を実行する。ステップＳ２０４においては、変数ｎ(＝０)により指定されるディジタル受光データＤ１(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ)，Ｄ２(ｎ,ｍ,ｐ)（ｍ＝０〜ｍmax，ｐ＝０〜２Ｅ)及びピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)，Ｊ２(ｎ,０)，Ｊ２(ｎ,ｍmax)をメモリ４２ａから抽出する。そして、ステップＳ２０６にて、ピークポイントデータＪ(ｎ,０)をピークポイントデータＪ１(ｎ,０)（又はＪ２(ｎ,０)）に設定するとともに、ピークポイントデータＪ(ｎ，ｍmax)をピークポイントデータＪ１(ｎ,ｍmax)（又はＪ２(ｎ,ｍmax）)に設定し、これらの設定されたピークポイントデータＪ(ｎ,０)，Ｊ(ｎ,ｍmax)をメモリ４２ａに記憶する。この場合、ピークポイントデータＪ１(ｎ,０)，Ｊ２(ｎ,０)は、それぞれ一つずつしか存在しないデータであって、２次反射の影響のない正規反射光によるピークポイントを表すもので、互いにほぼ等しい値である。また、ピークポイントデータＪ１(ｎ,ｍmax)，Ｊ２(ｎ,ｍmax)も、それぞれ一つずつしか存在しないデータであって、２次反射の影響のない正規反射光によるピークポイントを表すもので、互いにほぼ等しい値である。なお、ピークポイントデータＪ１(ｎ,０)，Ｊ２(ｎ,０)の平均値をピークポイントデータＪ(ｎ,０)として設定し、ピークポイントデータＪ１(ｎ,ｍmax)，Ｊ２(ｎ,ｍmax)の平均値をピークポイントデータＪ(ｎ,ｍmax)としてもよい。
【００６８】
前記ステップＳ２０６の処理後、データ演算回路４２は、ステップＳ２０８にて、変数ｍを「１」に設定し、ステップＳ２１０にて、前記図９のステップＳ１１２，Ｓ１２０，Ｓ１４２，Ｓ１５０の処理と同様な処理により、変数ｎ，ｍによって指定されるディジタル受光データＤ１(ｎ,ｍ,０)〜Ｄ１(ｎ,ｍ,２Ｅ)を用いて、エリアセンサ２５ａの変数ｍに対応したＸ軸方向位置における受光強度のピーク位置ｐｋ１を検出する。次に、ステップＳ２１２にて、この検出したピーク位置ｐｋ１を、ピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)を用いた下記式２の演算の実行により補正して、エリアセンサ２５ａにおける絶対的なＹ軸方向位置を計算する。
ｐｋ１＝ｐｋ１＋(Ｊ１(ｎ,ｍmax)−Ｊ１(ｎ,０))・ｍ／ｍmax)−Ｅ    …式２
【００６９】
この補正は、ディジタル受光データＤ１(ｎ,ｍ,ｐ)〜Ｄ１(ｎ,ｍ,２Ｅ)は、図１０(Ｃ)に示すように、変数ｍによって指定されるＸ軸方向位置における幅２Ｅ内の複数の受光素子による受光強度を表すデータ群であり、前記ステップＳ２１０の処理により検出されたピークポイントｐｋ１は、前記幅２Ｅ内のＹ軸方向の相対位置を表しているが、エリアセンサ２５ａのＹ軸方向の絶対位置を表していないからである。すなわち、前記式２のように、エリアセンサ２５ａにおいて、受光ラインＲＬと変数ｍによって指定されるＸ軸方向位置との交点位置((Ｊ１(ｎ,ｍmax)−Ｊ１(ｎ,０))・ｍ／ｍmax)から幅Ｅを減算した、破線の一端の絶対的なＸ軸方向位置((Ｊ１(ｎ,ｍmax)−Ｊ１(ｎ,０))・ｍ／ｍmax)−Ｅを用いて検出ピークポイントｐｋ１を補正している。なお、ピークポイントデータＪ１(ｎ,ｍmax)，Ｊ１(ｎ,０)は、前述した式１のｐｋＢ，ｐｋＡにそれぞれ対応し、この場合もＸ軸方向位置((Ｊ１(ｎ,ｍmax)−Ｊ１(ｎ,０))・ｍ／ｍmax)は、小数点以下が四捨五入された整数値である。
【００７０】
前記ステップＳ２１２の処理後、データ演算回路４２は、前記ステップＳ２１０の処理と同様なステップＳ２１４の処理により、変数ｎ，ｍによって指定されるディジタル受光データＤ２(ｎ,ｍ,０)〜Ｄ２(ｎ,ｍ,２Ｅ)を用いて、エリアセンサ２５ａの変数ｍに対応したＸ軸方向位置における受光強度のピーク位置ｐｋ２を検出する。また、前記ステップＳ２１２の処理と同様なステップＳ２１６の処理により、前記計算されたピーク位置ｐｋ２も、ピークポイントデータＪ２(ｎ,０)，Ｊ２(ｎ,ｍmax)を用いて補正される。なお、前記ステップＳ２１０，Ｓ２１４の処理により検出されるピーク位置ｐｋ１，ｐｋ２として、溝又は凸状部分による２次反射により、それぞれ複数のピーク位置が検出される場合もある。
【００７１】
前記ステップＳ２１６の処理後、データ演算回路４２は、ステップＳ２１８にて、ピーク位置ｐｋ１，ｐｋ２が正規反射光によるピーク位置であるかを判定する。具体的には、ピーク位置ｐｋ１，ｐｋ２が互いにほぼ等しいかを判定する。エリアセンサ２５ａ，２５ｂは、レーザ光源２１に対してＹ軸方向に対称位置に配置されているので、これらのピーク位置ｐｋ１，ｐｋ２が正規反射光によるものであれば、ピーク位置ｐｋ１，ｐｋ２はほぼ等しいはずである。そして、ピーク位置ｐｋ１，ｐｋ２がほぼ等しいことを条件に、ピーク位置ｐｋ１（又はｐｋ２）を、変数ｎ，ｍによって指定されるピークポイントデータＪ(ｎ,ｍ)として決定してメモリ４２ａに記憶する。また、ピーク位置ｐｋ１，ｐｋ２の平均値を、ピークポイントデータＪ(ｎ,ｍ)としてもよい。なお、ピーク位置ｐｋ１，ｐｋ２として複数のピーク位置が検出されている場合には、ピーク位置ｐｋ１とピーク位置ｐｋ２との間で互いにほぼ等しいピーク位置がピークポイントデータＪ(ｎ,ｍ)として決定される。また、ピーク位置ｐｋ１又はピーク位置ｐｋ２が検出されない場合には、ピークポイントデータＪ(ｎ,ｍ)は無しとされる。
【００７２】
前記ステップＳ２１８の処理後、ステップＳ２２０にて変数ｍが最大値ｍmax以上であるかが判定され、変数ｍが最大値ｍmax以上でなければ、データ演算回路４２は、ステップＳ２２０にて「Ｎｏ」と判定して、ステップＳ２２２にて変数ｍに「１」を加算し、ステップＳ２１０〜Ｓ２２２の循環処理をふたたび実行する。前記ステップＳ２０６の処理及び前記ステップＳ２１０〜Ｓ２２２の循環処理により、変数ｎによって指定されるピークポイントデータＪ(ｎ,０)〜Ｊ(ｎ,ｍmax）がメモリ４２ａに記憶される。そして、変数ｍが最大値ｍmax以上になると、データ演算回路４２は、ステップＳ２２０にて「Ｙｅｓ」と判定して、ステップＳ２２４にて変数ｎが最大値ｎmaxよりも大きいか判定する。変数ｎが最大値ｎmaxよりも大きくなければ、データ演算回路４２は、ステップＳ２２４にて「Ｎｏ」と判定して、ステップＳ２２６にて変数ｎに「１」を加算して、ステップＳ２０４〜Ｓ２２６の循環処理をふたたび実行する。この循環処理により、変数ｎが順次「１」ずつ更新されながら、メモリ４２ａにはピークポイントデータＪ(ｎ,０)〜Ｊ(ｎ,ｍmax）（ｎ＝０〜ｎmax）が記憶される。そして、変数ｎが最大値ｎmaxよりも大きくなった時点で、データ演算回路４２は、ステップＳ２２４にて「Ｙｅｓ」と判定して、ステップＳ２２８に進む。この状態では、メモリ４２ａには、ピークポイントデータＪ(ｎ,ｍ）（ｎ＝０〜ｎmax,ｍ＝０〜ｍmax）が記憶されることになる。
【００７３】
ステップＳ２２８においては、データ演算回路４２は、メモリ４２ａに記憶されているピークポイントデータＪ(ｎ,ｍ）（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax）を用いて、基準点Ｐ０から変数ｎ，ｍによって規定される測定対象物ＯＢの表面の各点（Ｘ，Ｙ座標値）までの距離を表す距離データＬ(ｎ,ｍ)をそれぞれ計算する。この計算においては、前述した図５(Ａ)に示すように、３角測量の原理に基づいて、ピークポイントデータＪ(ｎ,ｍ）によって指定されるエリアセンサ２５ａ，２５ｂのＹ軸方向の正規反射光の受光位置に応じて、前記距離Ｌ(ｎ,ｍ)が計算される。また、この計算においては、予め定められていて前記正規反射光の受光位置と距離Ｌとの関係を定めた変換テーブルが利用される。そして、前記計算された基準点Ｐ０から測定対象物ＯＢの表面の各点（Ｘ，Ｙ座標値）までの距離を表す距離データＬ(ｎ,ｍ)（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax）がメモリ４２ａに記憶される。
【００７４】
次に、データ演算回路４２は、前記メモリ４２ａに記憶した距離データＬ(ｎ,ｍ)（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax）と、送り量計算回路４１から供給されてメモリ４２ａに記憶されている測定カメラのＹ軸方向位置（測定対象物ＯＢの表面における正規反射光のＹ軸方向位置）を表すＹ軸方向位置データＹＤ(ｎ)とを用いて、測定対象物ＯＢの表面に関する３次元形状データ３Ｄ(ｘ,ｙ,ｚ)すなわち変数ｎ，ｍによって指定されるＸ−Ｙ平面における各点の３次元座標値を計算する。この場合、変数ｎによって指定される位置のｙ座標値は、Ｙ軸方向位置データＹＤ(ｎ)により表される。しかし、変数ｎ，ｍによって指定されるｘ，ｚ座標値は、前述した図５(Ｂ)(Ｃ)に示すように、測定対象物ＯＢの表面における正規反射光のＸ軸方向の反射位置に応じて変化する。すなわち、基準位置Ｐ０と正規反射光の反射位置とを結ぶ直線（すなわち、距離Ｌの計算に用いられる直線）と、Ｙ−Ｚ平面とのなす角度θｘに応じて、３次元形状データ３Ｄ(ｘ,ｙ,ｚ)の両座標値ｘ，ｚは変化する。
【００７５】
一方、前記角度θｘは、エリアセンサ２５ａ（又は２５ｂ）において正規反射光を受光するＸ軸方向位置すなわち変数ｍに応じて定まるもので、変数ｍを角度θｘに変換するための変換テーブルは、データ演算回路４２に予め記憶されている。データ演算回路４２は、変数ｍを用いて角度θｘ(ｍ)を計算する。そして、データ演算回路４２は、前記角度θｘ(ｍ)及び距離データＬ(ｎ,ｍ)を用いて、３次元形状データの座標値ｘ，ｚを、下記式３，４の演算によって計算する。
ｘ＝Ｌ(ｎ,ｍ)・sinθｘ(ｍ)    …式３
ｚ＝Ｌ(ｎ,ｍ)・cosθｘ(ｍ)    …式４
そして、データ演算回路４２は、０〜ｎmaxにわたって変化する変数ｎ及び０〜ｍmaxにわたって変化する変数ｍのそれぞれに対して、前記式３，４の演算の実行に加えてＹ軸方向位置データＹＤ(ｎ)を考慮して、３次元形状データ３Ｄ(ｘ,ｙ,ｚ)＝３Ｄ（Ｌ(ｎ,ｍ)・sinθｘ(ｍ)，ＹＤ(ｎ)，Ｌ(ｎ,ｍ)・cosθｘ(ｍ)）（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax）を計算する。この３次元形状データ３Ｄ(ｘ,ｙ,ｚ)も、メモリ４２ａに記憶されるとともに、３次元画像生成装置４３に供給される。前記ステップＳ２３０の処理後、データ演算回路４２は、ステップＳ２３２にて、プログラムの実行を終了する。
【００７６】
３次元画像生成装置４３は、前記供給された３次元形状データ３Ｄ(ｘ,ｙ,ｚ)をメモリ４３ａに記憶する。そして、３次元画像生成装置４３は、前記記憶した３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を用いて、測定対象物ＯＢの表面の３次元画像を表す３次元画像データを生成し、前記生成した３次元画像データを用いて測定対象物ＯＢの表面を表す３次元画像を表示装置５２に表示させる。
【００７７】
上記作動説明からも理解できるとおり、上記実施形態によれば、データ抽出回路２９ａ，２９ｂが図９のプログラムの実行により、センサ信号取出し回路２８ａ，２８ｂによってそれぞれ取出されたディジタル受光データＤ(ｎ,ｍ,ｐ)（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax，ｐ＝０〜ｐmax）の中から、受光ラインＲＬ近傍に関するディジタル受光データＤ(ｎ,ｍ,Ｌｐ−Ｅ)〜Ｄ(ｎ,ｍ,Ｌｐ＋Ｅ)（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax）だけが抽出されて、データ演算回路４２に供給される。そして、データ演算回路４２は、この少ない数のディジタル受光データＤ(ｎ,ｍ,Ｌｐ−Ｅ)〜Ｄ(ｎ,ｍ,Ｌｐ＋Ｅ)（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax）を用いて、測定対象物ＯＢの表面の３次元形状を表す３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を計算する。これにより、３次元形状データ３Ｄ(ｘ,ｙ,ｚ)の演算処理を高速で行うことができ、溝又は凸状部分が形成された測定対象物ＯＢの表面の３次元形状を短時間で測定できるようになる。
【００７８】
この場合、データ抽出回路２９ａ，２９ｂは、ピークポイントｐｋＡ、ｐｋＢを検出して、ピークポイントｐｋＡ、ｐｋＢを結ぶ受光ラインＲＬのＹ軸方向両側に所定幅Ｅの範囲内に関するディジタル受光データＤ(ｎ,ｍ,Ｌｐ−Ｅ)〜Ｄ(ｎ,ｍ,Ｌｐ＋Ｅ)（ｎ＝０〜ｎmax，ｍ＝０〜ｍmax）を抽出する。このピークポイントｐｋＡ、ｐｋＢの検出においては、データ抽出回路２９ａ，２９ｂは、最初、図９のステップＳ１１０〜Ｓ１３４の処理により、ディジタル受光データＤ(ｎ,０,０)〜Ｄ（ｎ,０,ｐmax)，Ｄ(ｎ,ｍmax,０)〜Ｄ（ｎ,ｍmax,ｐmax)の中からピーク値を検出し、ピーク値に対応するピークポイントｐｋＡ、ｐｋＢを決定する。しかし、次からは、ステップＳ１４０〜Ｓ１５２，Ｓ１２４〜Ｓ１３４の処理により、前回検出したピークポイントｐｋＡ、ｐｋＢを用いて、少ない数のディジタル受光データＤ(ｎ,０,ｐｋＡ−Ｈ)〜Ｄ（ｎ,０,ｐｋＡ＋Ｈ)，Ｄ(ｎ,ｍmax,ｐｋＢ−Ｈ)〜Ｄ（ｎ,ｍmax,ｐｋＢ＋Ｈ)の中からピーク値を検出し、ピーク値に対応するピークポイントｐｋＡ、ｐｋＢを決定する。したがって、ピークポイントｐｋＡ、ｐｋＢの決定のための演算時間を短縮できる。また、このピークポイントｐｋＡ、ｐｋＢの位置する受光ラインＲＬの両端部には、溝又は凸状部分が形成されていることはないので、測定対象物ＯＢの表面の反射率が高い場合でも、溝又は凸状部分による２次反射による影響がない。その結果、受光ラインＲＬの決定も高精度で行われる。
【００７９】
また、上記実施形態によれば、一対のエリアセンサ２５ａ，２５ｂをレーザ光源２１を中心としたＹ軸方向の対称位置に設けている。そして、データ演算回路４２は、図１１のステップＳ２１０〜Ｓ２２４の処理により、測定対象物ＯＢの表面までの各位置までの距離Ｌ(ｍ,ｎ)を検出するために利用するピークポイントデータＪ(ｎ,ｍ)を、エリアセンサ２５ａ，２５ｂによる２組のピークポイントｐｋ１，ｐｋ２の位置がほぼ等しいことを条件に決定している。これにより、たとえ測定対象物ＯＢの表面における２次反射による影響があっても、正規な反射光による距離検出用ピーク位置が高精度で検出されることになり、この距離検出用ピーク位置を用いて計算される距離Ｌ(ｍ,ｎ)も２次反射による影響のないものとなる。その結果、２次反射光の影響を除外して精度のよい３次元形状データ３Ｄを得ることができる。
【００８０】
さらに、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。
【００８１】
上記実施形態において、測定対象物ＯＢが対象物支持体１３に高精度でセットされて、測定対象物ＯＢの表面がＸ軸方向及びＹ軸方向に対して傾いておらず、また測定対象物ＯＢの表面が湾曲していなければ、すなわち測定対象物ＯＢの表面がＸ−Ｙ平面に平行であれば、図１１のステップＳ２３０の処理により計算した３次元形状データ３Ｄ(ｘ,ｙ,ｚ)のＺ座標成分のみを用いて、測定対象物ＯＢの表面に形成された溝又は凸状部分を評価できる。すなわち、３次元形状データ３Ｄ(ｘ,ｙ,ｚ)のＺ座標成分のみを用いて、測定対象物ＯＢの表面全体にわたるＺ軸方向距離の平均値、最大値、最小値、標準偏差などを計算して、前記平均値、最大値、最小値、標準偏差などに基づいて測定対象物ＯＢの表面に形成された溝又は凸状部分を評価すればよい。
【００８２】
しかし、測定対象物ＯＢが対象物支持体１３に高精度でセットされず、測定対象物ＯＢの表面がＸ軸方向及びＹ軸方向に対して傾いていたり、また測定対象物ＯＢの表面が湾曲したりしている場合には、図１１のステップＳ２３０の処理により計算した３次元形状データ３Ｄ(ｘ,ｙ,ｚ)のＺ座標成分のみを用いて、測定対象物ＯＢの表面に形成された溝又は凸状部分を評価することはできない。すなわち、図８(Ｂ)〜(Ｄ)に示すように、測定対象物ＯＢの表面がＸ軸方向に対して傾いていたり、Ｙ軸方向に対して傾いていたり、また、測定対象物ＯＢの表面が湾曲していたりしている場合には、測定対象物ＯＢの表面とＸ−Ｙ平面とが平行である３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を得ることができない。この場合、測定対象物ＯＢの表面（ほぼ平面）とＸ−Ｙ平面とが平行である３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を得ることができれば、測定対象物ＯＢの置き方及び形状（例えば、湾曲）によらず、測定対象物ＯＢに形成された溝の深さ又は凸状部分の高さは、Ｚ座標成分のみにより評価できるようになる。
【００８３】
以下、測定対象物ＯＢの表面（ほぼ平面）の３次元形状データを、測定対象物ＯＢの表面がＸ−Ｙ平面と平行である測定対象物ＯＢの表面の３次元形状データ３Ｄ(ｘ,ｙ,ｚ)に変換する計算方法について説明する。この場合、データ演算回路４２は、次の手順で３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を計算する。この具体的な計算手順の説明の前に、この計算手順で想定される測定対象物ＯＢの表面とエリアセンサ２５ａ,２５ｂに形成される受光ラインＲＬについて説明しておく。図１２(Ａ)に示すように、ライン状のレーザ光が実際に照射される測定対象物ＯＢの表面のＸ軸方向に沿った図示実線位置を、座標原点（基準点Ｐ０）から基準距離Ｌｓにあり、レーザ光が照射される測定対象物ＯＢの表面の法線ベクトルがＺ軸方向と平行である位置（図示一点差線）まで移動させ、この移動させたレーザ光の照射位置が測定対象物ＯＢの測定表面であることを想定するものである。この場合、図１２(Ｂ)で示すように、受光ラインＲＬは、溝又は凸状部分による受光ラインを除き、エリアセンサ２５ａ，２５ｂのＹ軸方向中心位置にて、Ｘ軸方向に沿って延びたものとなる。
【００８４】
以下、次の手順に従って、３次元形状データ３Ｄ(ｘ,ｙ,ｚ)を計算する。
（手順１）
上記実施形態の図１１のステップＳ２３０の処理と同様に、前記距離データＬ(ｍ,ｎ)及び角度θｘ(ｍ)を用いて、測定対象物ＯＢの表面の測定位置Ｐ１のＸ座標値ｘ１及びＺ座標値ｚ１をそれぞれ下記式５，６に従って計算する。
ｘ１＝Ｌ(ｎ,ｍ)・sinθｘ(ｍ)    …式５
ｚ１＝Ｌ(ｎ,ｍ)・cosθｘ(ｍ)    …式６
【００８５】
（手順２）
上記実施形態の図１１のステップＳ２２８の処理と同様に、ピークポイントデータＪ(ｎ,０），Ｊ(ｎ,ｍmax）を距離データＬ(ｎ,０），Ｌ(ｎ,ｍmax）に変換する。すなわち、図１２(Ａ)に示すように、測定対象物ＯＢの表面の測定位置Ｐａ，Ｐｂ（ピーク位置ｐｋＡ，ｐｋＢに対応）に関する基準点Ｐ０からの距離Ｌ(ｎ,０），Ｌ(ｎ,ｍmax）を計算する。
【００８６】
（手順３）
上記実施形態の図１１のステップＳ２３０の処理と同様に、前記距離Ｌ(ｎ,０），Ｌ(ｎ,ｍmax）及び角度θｘ(０)，θｘ(ｍmax)を用いて、測定対象物ＯＢの表面の測定位置ＰａのＸ座標値ｘａ及びＺ座標値ｚａ、並びに測定位置ＰｂのＸ座標値ｘｂ及びＺ座標値ｚｂをそれぞれ下記式７〜１０に従って計算する。
ｘａ＝Ｌ(ｎ,０)・sinθｘ(０)    …式７
ｚａ＝Ｌ(ｎ,０)・cosθｘ(０)    …式８
ｘｂ＝Ｌ(ｎ,ｍmax)・sinθｘ(ｍmax)    …式９
ｚｂ＝Ｌ(ｎ,ｍmax)・cosθｘ(ｍmax)    …式１０
【００８７】
（手順４）
前記計算した座標値ｘａ，ｚａ，ｘｂ，ｚｂを用いて、測定対象物ＯＢのレーザ光照射面が、Ｚ軸に垂直な平面となす角度θｓを下記式１１に従って計算する。
θｓ＝tan-1((ｚａ−ｚｂ)／(ｘａ−ｘｂ))    …式１１
【００８８】
（手順５）
前記計算した座標値ｘ１，ｚ１，ｘｂ，ｚｂを用いて、測定位置Ｐ１と測定位置Ｐｂとを結ぶ直線が、Ｚ軸に垂直な平面となす角度θｍを下記式１２に従って計算する。
θｍ＝tan-1((ｚ１−ｚｂ)／(ｘ１−ｘｂ))    …式１２
【００８９】
（手順６）
前記計算した座標値ｘ１，ｚ１，ｘｂ，ｚｂを用いて、測定位置Ｐ１と測定位置Ｐｂとの距離Ｌｂを下記式１３に従って計算する。
Ｌｂ＝((ｘ１−ｘｂ)2＋(ｚ１−ｚｂ)2)1/2    …式１３
【００９０】
（手順７）
測定位置ＰｂのＺ軸方向距離が基準距離Ｌｓであり、かつ測定対象物ＯＢのレーザ光受光面がＸ−Ｙ平面に平行になるように、測定対象物ＯＢを移動することを想定する。すなわち、測定位置ＰｂのＺ軸方向距離が基準距離Ｌｓである点Ｐｂ’になる位置まで測定対象物ＯＢをＺ軸方向に平行移動し（破線参照）、その後に、測定対象物ＯＢのレーザ光受光面がＺ軸方向に垂直（すなわちＸ−Ｙ平面に平行）になるように測定対象物ＯＢを点Ｐｂ’を通るＹ軸回りに回転したこと（一点鎖線参照）を想定する。これにより、測定位置Ｐ１は、点Ｐ１’を介して点Ｐ１”に移動する。この場合、点Ｐｂ’のＸ座標値ｘｂ’及びＺ座標値ｚｂ’はそれぞれ下記式１４，１５で表される。
ｘｂ’＝Ｌ(ｎ,ｍmax)・sinθｘ(ｍmax)    …式１４
ｚｂ’＝Ｌｓ    …式１５
また、点Ｐ１”と点Ｐｂ’の間の距離は、前記計算した距離Ｌｂである。そして、点Ｐ１”と点Ｐｂ’を結ぶ線がＺ軸に垂直な平面となす角度はθｍ−θｓである。したがって、点Ｐ１”のＸ座標値ｘ３及びＺ座標値ｚ３はそれぞれ下記式１６，１７のようになる。
ｘ３＝ｘｂ’＋Ｌｂ・cos (θｍ−θｓ)
＝Ｌ(ｎ,ｍmax)・sinθｘ(ｍmax)＋Ｌｂ・cos (θｍ−θｓ)    …式１６
ｚ３＝ｚｂ’＋Ｌｂ・sin (θｍ−θｓ)
＝Ｌｓ＋Ｌｂ・sin (θｍ−θｓ)    …式１７
【００９１】
（手順７）
最後に、点Ｐ１”のＹ軸方向位置は、測定位置Ｐ１のＹ軸方向位置ＹＤ(ｎ)と同じであるので、点Ｐ１”のＹ座標値ｙ３をＹＤ(ｎ)とすれば、測定対象物ＯＢの表面がＸ−Ｙ平面と平行となる測定対象物ＯＢの表面の３次元形状データ３Ｄ(ｘ,ｙ,ｚ)は式１８〜２０のように表される。
ｘ＝Ｌ(ｎ,ｍmax)・sinθｘ(ｍmax)＋Ｌｂ・cos (θｍ−θｓ)    …式１８
ｙ＝ＹＤ(ｎ)    …式１９
ｚ＝Ｌｓ＋Ｌｂ・sin (θｍ−θｓ)    …式２０
【００９２】
前述のように、変数ｎ，ｍの各値に対して、測定対象物ＯＢの表面がＸ−Ｙ平面と平行となる測定対象物ＯＢの表面の３次元形状データ３Ｄ(ｘ,ｙ,ｚ)は式１８〜２０のように表される。したがって、変数ｎを「０」から値ｎmaxまで「１」ずつ増加させるとともに、変数ｎの各値に対して変数ｍを「０」から値ｍmaxまで「１」ずつ増加させながら、Ｘ，Ｙ，Ｚ座標値ｘ，ｙ，ｚをそれぞれ計算すれば、測定対象物ＯＢの全体にわたる前記３次元形状データ３Ｄ(ｘ,ｙ,ｚ)が計算される。なお、前記説明では、測定対象物ＯＢの表面に溝が形成された場合について説明したが、測定対象物ＯＢの表面に凸状部分が形成された場合も同じである。
【００９３】
その結果、この変形例によれば、測定対象物ＯＢが対象物支持体１３に高精度でセットされず、測定対象物ＯＢの表面がＸ軸方向及びＹ軸方向に対して傾いていたり、また測定対象物ＯＢの表面が湾曲したりしていても、３次元形状データ３Ｄ(ｘ,ｙ,ｚ)のＺ座標成分のみを用いて、測定対象物ＯＢの表面に形成された溝又は凸状部分を評価することができる。すなわち、前記３次元形状データ３Ｄ(ｘ,ｙ,ｚ)のＺ座標成分のみを用いて、測定対象物ＯＢの表面全体にわたるＺ軸方向距離の平均値、最大値、最小値、標準偏差などを計算して、前記計算結果により、測定対象物ＯＢの表面に形成された溝の深さ又は凸状部分の高さを評価すればよい。その結果、前記評価を短時間の計算処理で済ますことができる。
【００９４】
また、上記実施形態においては、シリンドリカルレンズ２３を用いてライン状のレーザ光を生成して、測定対象物ＯＢの表面にＸ軸方向に沿ったライン状のレーザ光を照射した。しかし、これに代えて、ガルバノミラーでレーザ光を走査することにより測定対象物ＯＢの表面にＸ軸方向に沿ったライン上のレーザ光を照射するようにしてもよい。この場合、前記背景技術の欄で説明した特開２００８−１８０６４６号公報に示されるガルバノミラーの回転軸方向の長さを短くし、レーザ光源から出射されたレーザ光をコリメートレンズを介してこのガルバノミラーで反射させるようにする。そして、測定対象物ＯＢからの散乱光の一部である反射光を、ガルバノミラーは介さずに、上記実施形態と同様に直接エリアセンサ２５ａ，２５ｂに入射させるようにすればよい。なお、レーザ光を走査してライン上のレーザ光を形成することができれば、走査手段はどのような手段でもよい。例えば、ポリゴンミラーによりレーザ光を走査するようにしてもよい。
【００９５】
また、上記実施形態では、図９のプログラム処理により、エリアセンサ２５ａ，２５ｂのＸ軸方向の両端のピークポイントｐｋＡ，ｐｋＢを検出して、両ピークポイントｐｋＡ，ｐｋＢを結ぶ直線を受光ラインＲＬとし、受光ラインＲＬの両側の幅Ｅ内のディジタル受光データＤ１(ｎ,ｍ,ｐ)，Ｄ２(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝０〜２Ｅ)を抽出するようにした。しかし、ピークポイントｐｋＡ，ｐｋＢに代え又は加えて、３つ以上のピークポイントを検出して、最小２乗法などにより、３つ以上のピークポイント又はそれらの近傍を通る直線を受光ラインＲＬとするようにしてもよい。
【００９６】
また、前記とは逆に、測定対象物ＯＢのセット位置の変動量が少なければ、前記抽出ディジタル受光データＤ１(ｎ,ｍ,ｐ)，Ｄ２(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝０〜２Ｅ)の位置を固定しておいてもよい。これによれば、ピークポイントｐｋＡ，ｐｋＢの検出処理が不要となるので、さらにデータ処理速度を速くすることができる。この場合、測定対象物ＯＢの表面の３次元形状の開始時に、作業者は、入力装置５１を用いて、ピークポイントｐｋＡ，ｐｋＢの検出処理が不要であることを、コントローラ５０を介してデータ抽出回路２９ａ，２９ｂに指示するようにするとよい。
【００９７】
また、上記実施形態では、図９のプログラムにおいて、データ抽出回路２９ａ，２９ｂは、最初、ディジタル受光データＤ(ｎ,０,０)〜Ｄ（ｎ,０,ｐmax)，Ｄ(ｎ,ｍmax,０)〜Ｄ（ｎ,ｍmax,ｐmax)の中からピーク値を検出し、次からは、前回検出したピークポイントｐｋＡ、ｐｋＢを用いて、少ない数のディジタル受光データＤ(ｎ,０,ｐｋＡ−Ｈ)〜Ｄ（ｎ,０,ｐｋＡ＋Ｈ)，Ｄ(ｎ,ｍmax,ｐｋＡ−Ｈ)〜Ｄ（ｎ,ｍmax,ｐｋＡ＋Ｈ)の中からピーク値を検出するようにした。しかし、前記のように、測定対象物ＯＢのセット位置の変動量が少なければ、最初から、ディジタル受光データＤ(ｎ,０,０)〜Ｄ（ｎ,０,ｐmax)，Ｄ(ｎ,ｍmax,０)〜Ｄ（ｎ,ｍmax,ｐmax)のうちの一部の少ない数のディジタル受光データＤのみを用いて、それらの中から、ピーク値を検出するようにしてもよい。そして、この場合には、最初のピーク値の検出と、次回からのピーク値の検出とを区別することなく、ディジタル受光データＤ(ｎ,０,０)〜Ｄ（ｎ,０,ｐmax)，Ｄ(ｎ,ｍmax,０)〜Ｄ（ｎ,ｍmax,ｐmax)の一部からなる少ない同じ数のディジタル受光データＤのみを常に用いて、それらの中から、ピーク値を検出するようにしてもよい。
【００９８】
また、上記実施形態では、データ抽出回路２９ａの図９のプログラムの実行によりディジタル受光データＤ１(ｎ,ｍ,ｐ)，Ｄ２(ｎ,ｍ,ｐ)(ｎ＝０〜ｎmax，ｍ＝０〜ｍma，ｐ＝０〜２Ｅ)及びピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)，Ｊ２(ｎ,０)，Ｊ２(ｎ,ｍmax) (ｎ＝０〜ｎmax)をデータ演算回路４２に転送して、データ演算回路４２のメモリ４２ａに前記ディジタル受光データＤ１(ｎ,ｍ,ｐ)，Ｄ２(ｎ,ｍ,ｐ) 及びピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)，Ｊ２(ｎ,０)，Ｊ２(ｎ,ｍmax)を記憶させた。そして、データ演算回路４２が、前記記憶したディジタル受光データＤ１(ｎ,ｍ,ｐ)，Ｄ２(ｎ,ｍ,ｐ) 及びピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)，Ｊ２(ｎ,０)，Ｊ２(ｎ,ｍmax)を用いて、ピークポイントデータＪ(ｎ,ｍ) (ｎ＝０〜ｎmax，ｍ＝０〜ｍma)を計算するようにした。しかし、データ演算回路４２のメモリ４２ａに前記ディジタル受光データＤ１(ｎ,ｍ,ｐ)，Ｄ２(ｎ,ｍ,ｐ) 及びピークポイントデータＪ１(ｎ,０)，Ｊ１(ｎ,ｍmax)，Ｊ２(ｎ,０)，Ｊ２(ｎ,ｍmax)を記憶させることなく、前記ピークポイントデータＪ(ｎ,ｍ)を計算するようにしてもよい。
【００９９】
また、上記実施形態においては、図１１のステップＳ２１８の処理において、エリアセンサ２５ａ，２５ｂによってそれぞれ検出された受光位置に基づいてピークポイントｐｋ１，ｐｋ２を求めて、両ピークポイントｐｋ１，ｐｋ２の比較により正規反射光によりピークポイントＪ(ｎ,ｍ)を決定するようにした。しかし、これに代えて、図１１のステップＳ２２８の処理と同様に、前記ピークポイントｐｋ１，ｐｋ２に対応した２組の距離データＬ(ｍ,ｎ)をそれぞれ計算し、前記計算した２組の距離データＬ(ｍ,ｎ)を比較して、２組の距離データＬ(ｍ,ｎ)によって表された距離が所定の小さな距離以下である場合にのみ、正規反射光による距離データＬ(ｎ，ｍ)として決定するようにしてもよい。
【０１００】
また、上記実施形態においては、前記のように、２つのピークポイントｐｋ１，ｐｋ２の比較により正規反射光によりピークポイントＪ(ｎ,ｍ)を決定するようにした。しかし、測定対象物ＯＢの反射率が低く、２次反射光による影響が小さい場合には、一つの集光レンズ２４ａ（又は２４ｂ）及び一つのエリアセンサ２５ａ（又は２５ｂ）のみを設けて、エリアセンサ２５ａ（又は２５ｂ）によって検出された受光位置に基づいてピークポイントｐｋ１（又はｐｋ２）を求めて、前記一つのピークポイントｐｋ１（又はｐｋ２）を正規反射光によりピークポイントＪ(ｎ,ｍ)として決定するようにしてもよい。
【０１０１】
さらに、上記実施形態では、測定対象物ＯＢを測定台１１の前部に設けた対象物支持体１３にセットするようにしたが、測定対象物ＯＢを測定台１１の上面に載置して、測定対象物ＯＢの表面の３次元形状を測定するようにしてもよい。この場合、レーザ光をＸ軸方向に出射させて、Ｙ−Ｚ平面に対するＸ軸方向距離を検出するようにすればよい。また、上記実施形態では、測定カメラ２０を測定対象物ＯＢに対して移動させるようにしたが、逆に測定カメラ２０を固定して測定対象物ＯＢを移動させるようにしてもよい。
【符号の説明】
【０１０２】
ＯＢ…測定対象物、ＲＬ…受光ライン、１１…測定台、１３…対象物支持体、２０…測定カメラ、２１…レーザ光源、２２…コリメートレンズ、２３…シリンドリカルレンズ、２４ａ，２４ｂ…集光レンズ、２５ａ，２５ｂ…エリアセンサ、２６…レーザ駆動回路、２８ａ，２８ｂ…センサ信号取出し回路、２９ａ，２９ｂ…データ抽出回路、３０…フィードモータ、３１…ロッド、３２…エンコーダ、４０…３次元画像処理装置、４１…送り量計算回路、４２…データ演算回路、４３…３次元画像生成装置、５０…コントローラ、５１…入力装置、５２…表示装置
【図１】
2010190812.tif 000003
【図２Ａ】
2010190812.tif 000004
【図２Ｂ】
2010190812.tif 000005
【図３】
2010190812.tif 000006
【図４】
2010190812.tif 000007
【図５】
2010190812.tif 000008
【図６】
2010190812.tif 000009
【図７】
2010190812.tif 000010
【図８】
2010190812.tif 000011
【図９】
2010190812.tif 000012
【図１０】
2010190812.tif 000013
【図１１】
2010190812.tif 000014
【図１２】
2010190812.tif 000015
【図１３】
2010190812.tif 000016