(57)【特許請求の範囲】
【請求項１】
物体の表面の３次元形状を測定する３次元測定装置であって、
支持部材上の所定距離だけ離れた位置に設置した投光部と受光部とを用いて光投影法で物体の表面の３次元形状を測定して測定データを取得する３次元測定機と、
前記３次元測定機の重力方向に対する姿勢を検出する姿勢センサと、
前記３次元測定機により物体を測定して得られる測定データに基づいて物体の表面上の各サンプリング点の３次元座標を求める３次元座標算出手段と、
前記各サンプリング点の３次元座標についての、前記３次元測定機の姿勢に対応して当該３次元測定機の前記支持部材に生じるメカ的な歪みにともなう誤差を補正するために用いるものであって、当該３次元測定機の姿勢に対応して予め記憶された、測定空間における３次元の各方向における倍率または加算値を含む誤差補正パラメータ、を格納した誤差補正パラメータテーブルと、
前記３次元測定機の測定時の姿勢に対応した誤差補正パラメータを前記誤差補正パラメータテーブルから選択して読み出す選択手段と、
前記３次元座標算出手段により求められた前記３次元座標と前記誤差補正パラメータテーブルから読み出された誤差補正パラメータとを用いて前記物体の３次元形状データを演算する演算手段と、
を有することを特徴とする３次元測定装置。
【請求項２】
前記３次元測定機の温度を検出する温度センサを有し、
前記誤差補正パラメータテーブルは、前記３次元測定機の温度に対応した誤差補正パラメータを格納しており、
前記選択手段は、前記３次元測定機の測定時の温度に対応した誤差補正パラメータを選択して読み出す、
請求項１記載の３次元測定装置。
【請求項３】
前記姿勢センサは、前記３次元測定機の位置を検出可能であり、
前記３次元測定機により異なる位置から前記物体を測定して取得した測定データに基づく３次元形状データを統合する際に、前記姿勢センサにより検出された前記３次元測定機の位置を用いる、
請求項１または２記載の３次元測定装置。
【請求項４】
前記誤差補正パラメータテーブルは、前記誤差補正パラメータを、前記３次元測定機の姿勢について離散的に格納する、
請求項１ないし３のいずれかに記載の３次元測定装置。
【請求項５】
前記選択手段は、前記誤差補正パラメータテーブルの中から、前記３次元測定機の姿勢に最も近い誤差補正パラメータをそれぞれ１つ選択する、
請求項４記載の３次元測定装置。
【請求項６】
前記選択手段は、前記誤差補正パラメータテーブルの中から、前記３次元測定機の姿勢に近い誤差補正パラメータをそれぞれ複数選択し、
前記演算手段は、選択されたそれぞれ複数の誤差補正パラメータから補間演算によって求められたそれぞれ１つの誤差補正パラメータを用いて物体の３次元形状データを演算する、
請求項４記載の３次元測定装置。
【請求項７】
前記３次元測定機は、光切断法によって前記測定データを取得する、
請求項１ないし６のいずれかに記載の３次元測定装置。
【請求項８】
前記３次元測定機は、パターン投影法によって前記測定データを取得する、
請求項１ないし６のいずれかに記載の３次元測定装置。
【請求項９】
前記３次元測定機は、互いに異なる複数の視線方向から撮影した画像に基づくステレオ法によって前記測定データを取得する、
請求項１ないし６のいずれかに記載の３次元測定装置。
【請求項１０】
前記３次元測定機は、モアレを用いたモアレ法によって前記測定データを取得する、
請求項１ないし６のいずれかに記載の３次元測定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光学式などの非接触式の３次元測定機を用いて物体の表面の３次元形状の測定を行う３次元測定装置に関する。
【背景技術】
【０００２】
従来より、物体の外観検査などのために、光学式の３次元測定機（３次元計測機）を用いて物体の表面の３次元形状を測定（計測）することが行われている。
【０００３】
一般的な３次元測定機の原理として、レーザスリット光などを用いた光切断法、パターン光を用いたパターン投影法、１つの物体を異なる複数の視線方向から撮影して得た複数の画像に基づくステレオ法、モアレを用いたモアレ法などがある。３次元測定機は、これらの測定法によって物体についての測定データを取得し、測定データと種々のパラメータとを用いて３次元化演算を行い、物体の表面上の各点の３次元座標（ＸＹＺ座標）やポリゴンからなる３次元データ（３次元形状データ）を生成する。
【０００４】
３次元測定機による測定に際しては、物体の全周の３次元データを得るために、物体に対して３次元測定機の位置および姿勢を種々異ならせて測定を行う必要がある。また、そのために、３次元測定機をロボットのアームなどの多関節のマニピュレータによって保持し、マニピュレータを制御して物体と３次元測定機との相対的な位置および姿勢を変更しながら測定することも行われる。
【０００５】
その場合に、３次元測定機は、上向き、下向き、横向き、正対など、様々な測定姿勢に保持されて測定が行われる。３次元測定機は、このように様々な測定姿勢で使用されることを想定して、測定姿勢が変わっても測定精度が維持されるように、筐体や重要な部材が十分な剛性を有するように設計されている。例えば、光切断法の３次元測定機では、図７（Ａ）に示すように、投光部２０ａ、受光部２０ｂ、または投光部と受光部とを互いに連結して支持する支持部材ＳＢの剛性が特に重要である。
【０００６】
しかし、３次元測定機の測定姿勢を様々に変化させた際には、内部の重心バランスも変化し、十分な剛性を有していてもごく僅かではあるが曲がりや歪みなどが生じる。この僅かな曲がりや歪みが、３次元測定機の測定精度に影響を与える投光部、受光部、または支持部材で生じた場合は、図７（Ｂ）に示すように投光部と受光部との位置バランスが崩れ、測定データに影響を及ぼすこととなる。
【０００７】
例えば、３次元測定機の姿勢を上向きや下向きに設定した場合に、支持部材ＳＢなどは、正対０度を基準とすると、０度の時と比べて膨張しまたは収縮したり、測定空間が歪んだりする。この現象は「姿勢差」と呼ばれている。
【０００８】
ところで、３次元測定機の使用の際における温度変化や経時変化などの環境変化の影響を抑えるため、ユーザが立体物などを測定して３次元測定機の簡易的な校正を行うことができるようになっている。これは「ユーザ校正」と呼ばれる。しかし、ユーザ校正を行うときの測定姿勢はある決まった姿勢であり、実際に測定を行うときの測定姿勢と異なる場合がある。その場合には、せっかく高精度のユーザ校正を行ったとしても姿勢が異なるがゆえに姿勢差が発生して測定精度が低下する。
【０００９】
従来において、このような姿勢差に基づく測定精度の低下を防ぐため、３次元測定機のフレームなどの曲がり量や伸び量を検出センサで測定し、測定した曲がり量や伸び量のデータを元に、データ補正のための校正パラメータを算出する手法が提案されている（特許文献１、２）。
【特許文献１】特開平７−３２４９２９
【特許文献２】特許第３４４７４３０号
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、上に述べたような曲がり量を測定する従来の方法による場合と、実際の曲がり量や伸び量は数μｍ以下の微量であることが多く、検出センサでの検出が困難であったり精度の良い検出ができなかったりするため、適正な校正を行うことは非常に困難である。
【００１１】
また、３次元測定機において曲がりや伸びが生じる箇所は１箇所とは限らず、曲がり量や伸び量を全て正確に測定するには多数の検出センサが必要である。そのため、３次元測定機が大型化しコスト高となる。
【００１２】
さらに、複数個所の曲がり量や伸び量と測定誤差との関係は複雑である場合が多いため、それらを測定機の様々な姿勢毎に正確に関連付けることは非常に難しい。そのため、各箇所に対応した多量の校正データと膨大な計算が必要であるにもかかわらず、それに見合った高精度の補正を期待することはできない。
【００１３】
一方、３次元測定機の筐体や支持部材のメカ的な剛性をさらに向上させ、歪みの発生を極力抑えて、測定誤差を極小化する方法もある。しかし、その場合には、３次元測定機の体積および重量が増加し、またより剛性の高い高価な材質への変更というトレードオフが避けられない。
【００１４】
本発明は、上述の問題に鑑みてなされたもので、３次元測定機の姿勢を様々に変化させたときに生じる測定データの誤差を簡便に且つより精度よく補正して精度のよい３次元測定を行うことを目的とする。
【課題を解決するための手段】
【００１７】
本発明に係る装置は、物体の表面の３次元形状を測定する３次元測定装置であって、支持部材上の所定距離だけ離れた位置に設置した投光部と受光部とを用いて光投影法で物体の表面の３次元形状を測定して測定データを取得する３次元測定機と、前記３次元測定機の重力方向に対する姿勢を検出する姿勢センサと、前記３次元測定機により物体を測定して得られる測定データに基づいて物体の表面上の各サンプリング点の３次元座標を求める３次元座標算出手段と、前記各サンプリング点の３次元座標についての、前記３次元測定機の姿勢に対応して当該３次元測定機の前記支持部材に生じるメカ的な歪みにともなう誤差を補正するために用いるものであって、当該３次元測定機の姿勢に対応して予め記憶された、測定空間における３次元の各方向における倍率または加算値を含む誤差補正パラメータ、を格納した誤差補正パラメータテーブルと、前記３次元測定機の測定時の姿勢に対応した誤差補正パラメータを前記誤差補正パラメータテーブルから選択して読み出す選択手段と、前記３次元座標算出手段により求められた前記３次元座標と前記誤差補正パラメータテーブルから読み出された誤差補正パラメータとを用いて前記物体の３次元形状データを演算する演算手段と、を有する。
【００２１】
また、前記３次元測定機の温度を検出する温度センサを有し、前記パラメータテーブルは、前記３次元測定機の温度に対応したパラメータを格納しており、前記選択手段は、前記３次元測定機の測定時の温度に対応したパラメータを選択して読み出す。
【００２２】
また、前記姿勢センサは、前記３次元測定機の位置を検出可能であり、前記３次元測定機により異なる位置から前記物体を測定して取得した測定データに基づく３次元形状データを統合する際に、前記姿勢センサにより検出された前記３次元測定機の位置を用いる。
【００２３】
また、前記パラメータテーブルは、前記パラメータを、前記３次元測定機の姿勢について離散的に格納する。
【００２４】
また、前記選択手段は、前記パラメータテーブルの中から、前記３次元測定機の姿勢に最も近いパラメータをそれぞれ１つ選択する。
【００２５】
また、前記選択手段は、前記パラメータテーブルの中から、前記３次元測定機の姿勢に近いパラメータをそれぞれ複数選択し、前記演算手段は、選択されたそれぞれ複数のパラメータから補間演算によって求められたそれぞれ１つのパラメータを用いて物体の３次元形状データを演算する。
【００２６】
また、前記３次元測定機は、光切断法、パターン投影法、ステレオ法、またはモアレ法によって前記測定データを取得する。
【００２７】
このように、本発明による場合は、３次元測定機の部材のメカ的な曲がり量や伸び量を直接に測定するのではなく、３次元測定機の測定時の姿勢、例えば３次元空間における角度姿勢を測定する。３次元測定機の様々な測定姿勢に対応したパラメータを格納したパラメータテーブルを、装置内のフラッシュメモリなどに予め記憶しておく。そして、測定データと測定時の姿勢に対応した校正パラメータとを用いて３次元化演算を行って３次元データを生成する。または、測定データを用いて３次元化演算を行って得た３次元データに対して、測定時の姿勢に対応した誤差補正パラメータを適用して誤差の補正演算を行う。または校正と誤差補正の両方を行う。
【発明の効果】
【００２８】
本発明によると、３次元測定機の姿勢を様々に変化させたときに生じる測定データの誤差を簡便に且つより精度よく補正して精度のよい３次元測定を行うことができる。
【発明を実施するための最良の形態】
【００２９】
図１は本発明に係る実施形態の３次元測定システム１の構成の例を示す図である。
【００３０】
図１において、３次元測定システム１は、スリット光投影法によって物体（被写体）Ｑの表面の３次元形状の測定を行う３次元測定機２と、３次元測定機２の出力データを処理するホスト３とから構成される。
【００３１】
３次元測定機２は、物体Ｑの表面上の複数のサンプリング点の３次元座標を特定するための測定データ（計測データ、スリット画像データともいう）とともに、物体Ｑのカラー情報を示す２次元画像、サンプリング点の３次元座標を演算するために必要なパラメータ、キャリブレーションに必要なデータなどを出力する。ホスト３は、これらのデータおよびパラメータなどを用い、三角測量法を適用してサンプリング点の３次元座標（３次元位置）を演算により求める。３次元座標を演算する際に、カメラ視線方程式および検出光平面方程式などが適用される。
【００３２】
また、３次元測定機２には、測定時における３次元測定機２の姿勢を検出する姿勢センサＳＥ１、および温度を検出する温度センサＳＥ２が設けられている。姿勢センサＳＥ１は、測定時、つまり測定データＤ１を取得した時点での、３次元測定機２の３次元空間における角度姿勢を検出して姿勢データを出力する。また、温度センサＳＥ２は、３次元測定機２の周囲温度を検出して温度データＤ３を出力する。詳しくは後述する。
【００３３】
ホスト３は、処理装置３ａ、ディスプレイ３ｂ、キーボード３ｃ、およびマウス３ｄなどから構成されたコンピュータシステムである。処理装置３ａには、ＲＯＭ、ＲＡＭなどのメモリが実装されており、それらのメモリには測定データＤ１の処理のためのソフトウェアが組み込まれている。また、処理装置３ａのメモリには、後述する３次元座標の演算のために用いるパラメータおよび種々の方程式または演算式などが記憶される。ホスト３と３次元測定機２との間では、オンラインと可搬型の記録メディア４によるオフラインとの両方の形態のデータ受渡しが可能である。記録メディア４として、光磁気ディスクまたはメモリカ−ドなどが用いられる。
【００３４】
なお、図１に示した３次元測定システム１は、３次元測定機２と、これとは別体のホスト３とによって構成したが、ホスト３の機能を３次元測定機２の内部に組み込むことによって３次元測定システム（３次元測定装置）を構成してもよい。
【００３５】
図２は一実施形態の３次元測定機２の外観を示す斜視図である。
【００３６】
図２において、３次元測定機２は、光学ユニットＯＵを内蔵した略直方体形状のハウジング２０を有する。ハウジング２０の前面に投光窓２０ａおよび受光窓２０ｂが設けられる。投光窓２０ａは受光窓２０ｂの上側の所定距離だけ離れた位置にある。光学ユニットＯＵは、水平方向に拡がるレーザビームであるスリット光Ｕを射出する。つまり、スリット光Ｕは、水平方向に放射角度φで拡がり、垂直方向に沿った幅ｗを有する平面状の光である。スリット光Ｕの水平方向の長さＭ１は、投光窓２０ａからの距離によって変わる。スリット光Ｕは、計測対象（測定対象）の物体Ｑに向かう。スリット光Ｕは物体Ｑの表面で反射し、その一部が受光窓２０ｂに入り、光学ユニットＯＵに入射する。
【００３７】
ハウジング２０の上面には、ズーミングボタン２５ａ，２５ｂ、手動フォーカシングボタン２６ａ，２６ｂ、およびシャッタボタン２７が設けられる。図２（ｂ）のように、ハウジング２０の背面には、液晶ディスプレイ（ＬＣＤ）２１、カーソルボタン２２、セレクトボタン２３、キャンセルボタン２４、アナログ出力端子３１，３２、デジタル出力端子３３、および記録メディア４の着脱口３０ａが設けられる。
【００３８】
液晶ディスプレイ２１は、操作画面の表示手段および電子ファインダとして用いられる。ユーザは背面の各ボタン２１〜２４によって撮影モードの設定を行うことができる。アナログ出力端子３１，３２からは２次元画像信号が出力され、デジタル出力端子３３からは測定データＤ１が出力される。
【００３９】
３次元測定機２は、通常、ハウジング２０の底面に設けられたフランジ部材を利用して、ロボットのアームや支持機構などに取り付けられる。つまり、３次元測定機２は、測定時における全ての姿勢において、底面に設けられたフランジ部材によって３次元測定機２の全体が支持される。
【００４０】
図３は３次元測定システム１における測定データＤ１の処理に関する概略の機能を示すブロック図である。
【００４１】
図３において、ホスト３には、制御部１０、記憶部１１、選択部１２、および演算部１３が設けられる。
【００４２】
制御部１０は、測定データＤ１に対して３次元化演算を行って３次元データ（３次元形状データ）Ｄ５を得るための一連の処理を統括するなど、３次元測定のための種々の制御を行う。例えば、制御部１０は、３次元測定機２から出力される測定データＤ１、姿勢データＤ２、温度データＤ３、その他のデータまたは信号を受信し、適当なメモリ領域に記憶する。それらのデータを必要に応じて各部へ転送する。また、３次元測定機２に対して、種々の設定信号やパラメータＰＭなどのデータＤ１１を出力する。
【００４３】
記憶部１１には、３次元測定機２の姿勢および温度に対応した種々のパラメータＰＭを格納した種々のパラメータテーブルＰＴが記憶される。本実施形態においては、パラメータテーブルＰＴとして、校正パラメータテーブルＰＴＫ、誤差補正パラメータテーブルＰＴＧなどが設けられる。記憶部１１として、磁気ディスク装置、半導体メモリ、その他の種々の記憶装置または記憶媒体が用いられる。
【００４４】
校正パラメータテーブルＰＴＫは、校正パラメータＰＭＫを格納する。校正パラメータＰＭＫは、測定データＤ１に基づいて物体Ｑの表面上の各点の３次元座標を求めるために用いるものであって、３次元測定機２の姿勢または姿勢と温度に対応して校正されたパラメータＰＭである。
【００４５】
誤差補正パラメータテーブルＰＴＧは、誤差補正パラメータＰＭＧを格納する。誤差補正パラメータＰＭＧは、測定データＤ１に基づいて求めた物体Ｑの表面上の各点の３次元座標を、３次元測定機２の姿勢に対応して誤差補正するためのパラメータＰＭである。
【００４６】
なお、これらのパラメータテーブルＰＴは、後述するように、パラメータＰＭを、３次元測定機２の姿勢または温度について離散的に格納する。離散的とはするものの、姿勢または温度のピッチ（間隔）が小さくデータの個数が多いほど、精度が向上して正確な３次元データＤ５を得ることが可能である。
【００４７】
選択部１２は、３次元測定機２の測定時の姿勢および温度に対応したパラメータＰＭをパラメータテーブルＰＴから選択して読み出す。選択部１２による選択方法として種々の方法があるが、その一例をあげると、パラメータテーブルＰＴの中から、３次元測定機２の姿勢または温度に最も近いパラメータＰＭをそれぞれ１つ選択する。または、パラメータテーブルＰＴの中から、３次元測定機２の姿勢または温度に近いパラメータＰＭをそれぞれ複数選択する。後者の場合には、演算部１３において、選択部１２で選択されたそれぞれ複数のパラメータＰＭから補間演算によって求められたそれぞれ１つのパラメータＰＭを用いて物体Ｑの３次元データＤ５を演算により求める。
【００４８】
演算部１３は、３次元測定機２により物体Ｑを測定して得られた測定データＤ１と、３次元測定機２の測定時の姿勢および温度に対応してパラメータテーブルＰＴから読み出されたパラメータＰＭとを用いて、物体Ｑの３次元データＤ５を演算する。演算部１３における処理内容については後で詳しく説明する。
【００４９】
なお、３次元測定機２の内部にホスト３の機能を組み込んだ場合に、そのような３次元測定機２Ｂの構成は例えば次のようになる。
【００５０】
すなわち、図４は３次元測定システム１の全体の機能を組み込んだ３次元測定機２Ｂの図３に対応するブロック図である。
【００５１】
図４において、３次元測定機２Ｂには、制御部１０Ｂ、記憶部１１Ｂ、選択部１２Ｂ、および演算部１３Ｂが設けられる。これらの機能は上に述べた制御部１０、記憶部１１、選択部１２、および演算部１３とほぼ同じである。制御部１０Ｂは、投光部４０に対する制御信号や設定信号を出力する。また、受光部５０で得られたデータに基づいて測定データＤ１が生成され、制御部１０Ｂに入力される。姿勢センサＳＥ１からの姿勢データＤ２、温度センサＳＥ２からの温度データＤ３も、制御部１０Ｂに入力される。
【００５２】
なお、制御部１０Ｂ、選択部１２Ｂ、演算部１３Ｂなどは、ＣＰＵまたはＤＳＰがプログラムを実行することにとより、または適当なハード回路との組み合わせにより、実現することが可能である。また、記憶部１１Ｂとして、フラッシュメモリや各種メディアカードなどを用いることも可能である。
【００５３】
ここで、３次元測定機２の姿勢の表現方法および姿勢センサＳＥ１と温度センサＳＥ２について説明する。
【００５４】
図５は３次元空間内における姿勢の表現方法を説明する図、図６は３次元測定機２の種々の姿勢を示す図、図７は姿勢の変化によって３次元測定機２の内部に生じる歪みを説明する図、図８は３次元測定機２の姿勢の検出方法の他の例を示す図、図９は３次元測定機２の姿勢の検出方法のさらに他の例を示す図である。
【００５５】
図５において、立方体は、水平面および鉛直線に対してどのような角度位置にあるかによって、その姿勢が示される。つまり、図５において、立方体の１つの頂点が水平面上にあり、立方体の互いに直交する３辺の軸Ａｘ、Ａｙ、Ａｚが、その頂点に立てた垂線に対して、θｘ、θｙ、θｚの角度を有することを示している。このとき、軸Ａｘ、Ａｙは、水平面に対して、α（＝９０度−θｘ）、β（＝９０度−θｙ）の角度を有する。立方体の姿勢は、この２つの角度α、βによって示される。水平面内における角度位置、つまり垂線の回りの角度については、それがどんな値であっても、重力による３次元測定機２への影響に変化をもたらすことはないので、考慮する必要がない。
【００５６】
図６（Ａ）に示す３次元測定機２の姿勢は、正対の状態であり、上に述べたα、βはいずれも零である。この状態では、水平方向の前方にある物体Ｑを測定することができる。この状態を「基本姿勢」とする。図６（Ａ）において、３次元測定機２を右側へ倒すと下向きになり、左側へ倒すと上向きになり、紙面の向こう側（３次元測定機２の左側）へ倒すと左向きとなり、紙面の手前側（３次元測定機２の右側）へ倒すと右向きとなる。
【００５７】
図６（Ｂ）に示す３次元測定機２の姿勢は、下向き９０度の姿勢である。この状態では、真下にある物体Ｑを測定することができる。図６（Ｃ）に示す３次元測定機２の姿勢は、上向き９０度の姿勢である。この状態では、真上にある物体Ｑを測定することができる。図で示す以外に種々の姿勢とすることが可能である。
【００５８】
図７（Ａ）に示すように、３次元測定機２が正対の場合には、支持部材ＳＢに歪みは生じないが、図７（Ｂ）に示すように、３次元測定機２が傾いた場合には、支持部材ＳＢに歪みや曲がりが生じ、これによって測定データＤ１の精度に影響がでる。
【００５９】
そこで、上に述べたように、３次元測定機２の測定時における姿勢を検出するために、姿勢センサＳＥ１が設けられている。
【００６０】
姿勢センサＳＥ１として、例えば加速度センサが用いられる。加速度センサとして、例えば、半導体ピエゾ素子による抵抗効果を利用したものを用いる。これは、加速度に応じて引張応力が発生し、半導体ピエゾ素子の結晶格子に歪みが生じて抵抗値が変化するものである。抵抗値の変化が、Ｘ，Ｙ，Ｚの各方向の出力電圧レベルＡｘ，Ａｙ，Ａｚにそれぞれ反映されるので、次式を用いて図５で表されるような姿勢（角度）に変換する。
【００６１】
【数１】
0004839827.tif 000002
なお、測定姿勢の調節が可能な測定冶具を用い、そのような測定冶具に３次元測定機２を取り付けている測定を行う場合には、図８に示すように、測定冶具ＳＧの姿勢調節機構（歯車など）ＳＧＴのメカ的な位置を電気信号に変換し、その電気信号を制御部１０に入力するようにしてもよい。
【００６２】
また、図９に示すように、レーザトラッカーなどのように、３次元測定機２とは別の外部の検出センサを用いることも可能である。図９において、３次元測定機２には反射器ＨＫが取り付けてあり、レーザトラッカーＬＴから発したレーザ光の反射器ＨＫによる反射光を検出することによって、３次元測定機２の姿勢を検出することが可能である。レーザトラッカーＬＴそれ自体は市販されており、公知である。
【００６３】
また、レーザトラッカーＬＴによって３次元測定機２の位置を検出可能であり、３次元測定機２により異なる位置から物体Ｑを測定して取得した測定データＤ１に基づく３次元データＤ５を統合する際に、姿勢データＤ２であるレーザトラッカーＬＴにより検出された３次元測定機２の位置を用いることができる。
【００６４】
また、３次元測定機２の姿勢のさらに他の検出方法として、２台の３次元測定機２を用い、１台を物体Ｑの測定用とし、他の１台を３次元測定機２の姿勢検出用とすることも可能である。
【００６５】
このように、３次元測定機２とは別の外部の検出センサを用いることにより、３次元測定機２の位置を変更して物体Ｑを測定した場合に、それら全体の測定データＤ１を１つの座標系に統合して物体Ｑについての１つの３次元データＤ５とすることが容易である。        
【００６６】
次に、３次元測定システム１における３次元測定の原理および３次元化演算の内容などについて説明する。
【００６７】
図１０はスリット光投影法の概要を示す図、図１１はスリット光投影法による３次元測定の原理を説明するための図である。
【００６８】
図１０において、物体Ｑにスリット光Ｕを投射し、その反射光を撮像素子（イメージセンサ）の撮像面Ｓ２に入射させる〔図１０（ａ）〕。物体Ｑの照射部分が平坦であれば、撮影像（スリット画像）は直線となる〔図１０（ｂ）〕。照射部分に凹凸があれば、直線が曲がったり階段状になったりする〔図１０（ｃ）〕。つまり、３次元測定機２と物体Ｑとの間の距離の大小が撮像面Ｓ２における反射光の入射位置に反映する〔図１０（ｄ）〕。スリット光Ｕをその幅方向（図の上下方向）に偏向することにより、物体Ｑの表面を走査して３次元座標をサンプリングすることができる。
【００６９】
図１１において、投光の起点Ａと受光系のレンズの主点Ｏとを結ぶ基線ＡＯが受光軸と垂直になるように、投光系と受光系とが配置されている。受光軸は撮像面Ｓ２に対して垂直である。なお、レンズの主点とは、有限遠の被写体の像が撮像面Ｓ２に結像したときの、いわゆる像距離（image distance）ｂだけ撮像面Ｓ２から離れた受光軸上の点（後側主点）である。以下において、像距離ｂを実効焦点距離Ｆｒｅａｌということがある。
【００７０】
主点Ｏを３次元直交座標系の原点とする。受光軸がＺ軸、基線ＡＯがＹ軸、スリット光の長さ方向がＸ軸である。スリット光Ｕが物体上の点Ｐ（Ｘ，Ｙ，Ｚ）を照射したときの投光軸と投光基準面（受光軸と平行な投光面）との角度をθａ、受光角をθｐとすると、点Ｐの座標Ｚは（１）式で表される。
【００７１】
基線長Ｌ＝Ｌ１＋Ｌ２＝Ｚｔａｎθａ＋Ｚｔａｎθｐ  
∴    Ｚ＝Ｌ／（ｔａｎθａ＋ｔａｎθｐ）    …（１）
なお、受光角θｐとは、点Ｐと主点Ｏとを結ぶ直線と、受光軸を含む平面（受光軸平面）とがなす角度である。
【００７２】
撮像倍率β＝ｂ／Ｚであるので、撮像面Ｓ２の中心と受光画素とのＸ方向の距離をｘｐ、Ｙ方向の距離をｙｐとすると〔図１１（ａ）参照〕、点Ｐの座標Ｘ，Ｙは、（２），（３）式で表される。
【００７３】
Ｘ＝ｘｐ／β      …（２）
Ｙ＝ｙｐ／β      …（３）
角度θａは、スリット光Ｕの偏向の角速度から求められる。受光角θｐは、
ｔａｎθｐ＝ｂ／ｙｐ
の関係から算出できる。つまり、撮像面Ｓ２上での位置（ｘｐ，ｙｐ）を測定することにより、そのときの角度θａに基づいて点Ｐの３次元座標を求めることができる。
【００７４】
このように、光投影法による３次元データＤ５は、カメラパラメータや投光光学系パラメータなどの種々のパラメータを用いて、カメラ視線方程式および検出光平面方程式などを適用して比較的容易に演算で求めることができる。
【００７５】
以上の説明は、理想的な薄肉レンズ系を前提としたものである。実際の厚肉レンズ系では、図１１（ｃ）のように主点Ｏは前側主点Ｈと後側主点Ｈ’とに分かれる。
【００７６】
図１２は３次元測定システム１における３次元座標の算出の原理図である。
【００７７】
イメージセンサの撮像面Ｓ２上で複数画素分となる比較的に幅の広いスリット光Ｕを物体Ｑに照射する。具体的にはスリット光Ｕの幅を５画素分とする。スリット光Ｕは、サンプリング周期毎に撮像面Ｓ２上で１画素ピッチｐｖだけ移動するように上から下に向かって偏向され、それによって物体Ｑが走査される。サンプリング周期毎にイメージセンサから１フレーム分の光電変換情報が出力される。
【００７８】
撮像面Ｓ２の１つの画素ｇに注目すると、走査中に行うＮ回のサンプリングのうちの５回のサンプリングにおいて有効な受光データが得られる。これら５回分の受光データに対する補間演算によって注目画素ｇがにらむ範囲の物体表面ａｇをスリット光Ｕの光軸が通過するタイミング（時間重心Ｎｐｅａｋ：注目画素ｇの受光量が最大となる時刻）を求める。図１２（ｂ）の例では、ｎ回目とその１つ前の（ｎ−１）回目の間のタイミングで受光量が最大である。求めたタイミングにおけるスリット光の投射方向と、注目画素ｇに対するスリット光の入射方向との関係に基づいて、物体Ｑの位置（座標）を算出する。これにより、撮像面の画素ピッチｐｖで規定される分解能よりも高い分解能の計測が可能となる。
【００７９】
例えば、３次元測定機２がイメージセンサの画素ｇ毎に５回分の受光データを測定データＤ１としてホスト３に出力し、ホスト３が測定データＤ１に基づいて物体Ｑの座標を算出する。
【００８０】
図１３は３次元測定機２におけるデータの流れを示す図、図１４はホスト３におけるデータの流れを示す図、図１５は光学系の各点と物体Ｑとの位置関係を示す図である。
【００８１】
図１３において、ユーザによる画角選択操作つまりズーミングに応じて、ズームユニットのバリエータ部が移動するとともにフォーカシング部の移動によるフォーカシングが行われる。フォーカシングの過程でおおよその対物間距離ｄ0 が測定される。このような受光系のレンズ駆動に呼応して、投光側のバリエータレンズの移動量が演算により算出され、算出結果に基づいてバリエータレンズの移動制御が行われる。投光側のレンズ制御は、撮影距離および画角に係わらず、イメージセンサに５画素分の幅のスリット光Ｕを入射させるためのものである。
【００８２】
３次元測定機２の内部において、歪曲収差テーブルＬＵＴ１３、主点位置ＬＵＴ１４、および像距離ＬＵＴ１５が参照され、繰り出し量Ｅｄおよびズーム刻み値ｆｐに対応したパラメータである撮影条件データが、ホスト３へ出力される。ここでの撮影条件データは、歪曲収差パラメータ（レンズ歪み補正係数ｄ１，ｄ２）、前側主点位置ＦＨ、および像距離ｂである。前側主点位置ＦＨは、ズームユニット５１の前側端点Ｆと前側主点Ｈとの距離で表される〔図１１（ｃ）参照〕。前側端点Ｆは固定であるので、前側主点位置ＦＨにより前側主点Ｈを特定することができる。
【００８３】
また、場合によっては、特定の方向にスリット光Ｕを投射して計測環境を測定する予備計測を実行し、予備計測で得られた撮影情報に基づいて対物間距離ｄを求め、その対物間距離ｄに基づいて、繰り出し量Ｅｄを再設定するとともにレンズ駆動を行い、本計測の動作設定をする。設定項目には、半導体レーザの出力（レーザ光強度）、スリット光Ｕの偏向条件（投射開始角、投射終了角、偏向角速度）などがある。対物間距離ｄの算定に際しては、測距基準点である受光系の前側主点Ｈと投光の起点ＡとのＺ方向のオフセットｄｏｆｆを考慮する。偏向条件の算定に際しては、走査方向の端部においても中央部と同様の計測可能距離範囲ｄ’を確保するため、所定量（例えば８画素分）のオーバースキャンを行うようにする。投射開始角ｔｈ１、投射終了角ｔｈ２、偏向角速度ωは、次式で表される。
ｔｈ１＝ｔａｎ-1〔（β×ｐｖ（ｎｐ／２＋８）＋Ｌ）／（ｄ＋ｄｏｆｆ）〕
×１８０／π
ｔｈ２＝ｔａｎ-1〔−（β×ｐｖ（ｎｐ／２＋８）＋Ｌ）／（ｄ＋ｄｏｆｆ）〕                                                          ×１８０／π
ω＝（ｔｈ１−ｔｈ２）／ｎｐ
β：撮像倍率（＝ｄ／実効焦点距離Ｆｒｅａｌ）
ｐｖ：画素ピッチ
ｎｐ：撮像面Ｓ２のＹ方向の有効画素数
Ｌ：基線長
このようにして算出された条件で本計測が行われる。物体Ｑが走査され、１画素当たり５フレーム分の計測データ（スリット画像データ）Ｄｓがホスト２へ送られる。ここでの「計測データＤｓ」は、上で述べた測定データＤ１のことである。同時に、偏向条件（偏向制御データＤ４３）およびイメージセンサの仕様などを示す装置情報Ｄ１０も、ホスト３へ送られる。表１は３次元カメラ２がホスト３へ送る主なデータをまとめたものである。
【００８４】
【表１】
0004839827.tif 000003
投射開始角ｔｈ１および投射終了角ｔｈ２の設定に際して、上述の式に代えて次の式を適用すれば、測定可能距離範囲を光軸方向にシフトさせることができる。
ｔｈ１＝ｔａｎ-1〔（β×ｐｖ（ｎｐ／２＋８＋ｐｉｔｃｈｏｆｆ）＋Ｌ）
／（ｄ＋ｄｏｆｆ）〕×１８０／π
ｔｈ２＝ｔａｎ-1〔−（β×ｐｖ（ｎｐ／２＋８＋ｐｉｔｃｈｏｆｆ）＋Ｌ）
／（ｄ＋ｄｏｆｆ）〕×１８０／π
ｐｉｔｃｈｏｆｆ：測定可能距離範囲のシフト量
後述のように対物間距離の算定の基準位置を物体の近接位置（３次元測定機２側）に設定し、その前後に計測可能範囲ｄ’を設定すると、前側（３次元測定機２側）の計測可能範囲が無駄になることが多い。したがって、シフト量ｐｉｔｃｈｏｆｆを設定して、前側２５％、後側７５％の割合になるように計測可能範囲ｄ’を後側へシフトさせるのが望ましい。
【００８５】
ホスト３において、３次元測定機２から送られてきた計測データＤｓなどに基づいて、各サンプリング点の３次元座標を演算する。
【００８６】
図１４に示すように、スリット重心演算、歪曲収差の補正演算、カメラ視線方程式の演算、スリット面方程式の演算、および３次元位置演算が実行され、それによって例えば２４４×２５６個のサンプリング点の３次元位置（座標Ｘ，Ｙ，Ｚ）が算定される。サンプリング点はカメラ視線（サンプリング点と前側主点Ｈとを結ぶ直線）とスリット面（サンプリング点を照射するスリット光Ｕの光軸面）との交点である。演算に当たっては、パラメータテーブルＰＴから適用すべきパラメータＰＭが抽出され、抽出したパラメータを用いて演算が行われる。
【００８７】
スリット光Ｕの時間重心Ｎｐｅａｋ（図１２参照）は、各サンプリング時の受光データＤｇ（ｉ）を用いて（４）式で与えられる。
【００８８】
Ｎｐｅａｋ＝ｎ＋Δｎ      …（４）
Δｎ＝〔−２×Ｄｇ（ｎ−２）−Ｄｇ（ｎ−１）＋Ｄｇ（ｎ＋１）
＋２×Ｄｇ（ｎ＋２）〕／ΣＤｇ（ｉ）
（ｉ＝ｎ−２，ｎ−１，ｎ，ｎ＋１，ｎ＋２）
または
Δｎ＝［−２×〔Ｄｇ〔ｎ−２）−ｍｉｎＤｇ（ｉ）〕        
−〔Ｄｇ（ｎ−１）−ｍｉｎＤｇ（ｉ）〕        
＋〔Ｄｇ（ｎ＋１）−ｍｉｎＤｇ（ｉ）〕        
＋２×〔Ｄｇ（ｎ＋２）−ｍｉｎＤｇ（ｉ）〕］／ΣＤｇ（ｉ）  ５つの受光データの内の最小のデータｍｉｎＤｇ（ｉ）を差し引いて加重平均を求めることにより、環境光の影響を軽減することができる。
【００８９】
さて、カメラ視線方程式は、次の（５）式および（６）式で示される。
【００９０】
（ｕ−ｕ０）＝（ｘｐ）＝（ｂ／ｐｕ）×〔Ｘ／（Ｚ−ＦＨ）〕  …（５）
（ｖ−ｖ０）＝（ｙｐ）＝（ｂ／ｐｖ）×〔Ｙ／（Ｚ−ＦＨ）〕  …（６）                        ｂ：像距離
ＦＨ：前側主点位置
ｐｕ：撮像面における水平方向の画素ピッチ
ｐｖ：撮像面における垂直方向の画素ピッチ
ｕ：撮像面における水平方向の画素位置
ｕ０：撮像面における水平方向の中心画素位置
ｖ：撮像面における垂直方向の画素位置
ｖ０：撮像面における垂直方向の中心画素位置
また、スリット面方程式は次の（７）式で示される。
【００９１】
〔Ｘ−ａ，Ｙ−Ｌ，Ｚ−ｓ〕・Ｒ・（０，１，０）t ＝０    ……（７）
但し、ａ：Ｘ軸方向に沿った誤差
Ｌ：基線長
ｓ：基点Ａのオフセット（＝ｄｏｆｆ）
ここで、行列式Ｒは次の（８）式で示される。
【００９２】
【数２】
0004839827.tif 000004
これら、（５）（６）（７）式で示されるカメラ視線方程式およびスリット面方程式（検出光平面方程式）を解いて、撮像面Ｓ２上において座標（ｕ，ｖ）で示される各画素に対応する３次元座標（Ｘ，Ｙ，Ｚ）を算出するのである。
【００９３】
そして、（５）（６）（７）式を適用する際に、パラメータテーブルＰＴから選択したパラメータＰＭを用いて演算を行うのである。
【００９４】
なお、上に示したパラメータＰＭのうち、校正パラメータＰＭＫとなり得るものは、カメラ視線方程式の関係では、ｂ、ＦＨ、ｐｕ、ｐｖ、ｕ０、ｖ０であり、スリット面方程式の関係では、ｔｈ１、ｔｈ２、ｔｈ３、ｔｈ４、Ｌである。これらについて、離散的な姿勢位置でそれぞれ最適化されたものを校正パラメータテーブルＰＴＫに記憶しておく。校正パラメータテーブルＰＴＫに記憶する際に、パラメータそれ自体の値でもよく、また既知の設計値に対する補正量であってもよい。
【００９５】
このように、本実施形態においては、校正パラメータＰＭＫとして、メカ的な曲がり量や伸び量を直接に持たすのではなく、メカ的な変化に直接に関係のないものを含む校正パラメータＰＭＫの最適化によって、測定姿勢にともなう誤差を吸収することがポイントである。
【００９６】
ところで、幾何収差は画角に依存する。歪はほぼ中心画素を中心として対称に生じる。したがって、歪み量は中心画素からの距離の関数で表される。ここでは、距離の３次関数で近似する。２次の補正係数をｄ１、３次の補正係数をｄ２とする。つまり、受光系における補正後の画素位置ｕ’，ｖ’は、次の（９）式および（１０）式で与えられる。
【００９７】
ｕ’＝ｕ０＋ｄ１×ｔ２2 ×（ｕ−ｕ０）＋ｄ２×ｔ２3 ×（ｕ−ｕ０）
……（９）
ｖ’＝ｖ０＋ｄ１×ｔ２2 ×（ｖ−ｖ０）＋ｄ２×ｔ２3 ×（ｖ−ｖ０）
……（１０）
但し、ｔ２＝（ｔ１）1/2  
ｔ１＝〔（ｕ−ｕ０）×ｐｕ〕2 ＋〔（ｖ−ｖ０）×ｐｖ〕2 
上述の（５）式および（６）式において、ｕに代えてｕ’を代入し、ｖに代えてｖ’を代入することにより、歪曲収差を考慮した３次元座標を求めることができる。
【００９８】
なお、３次元化演算については特許第３４９３４０３号を参照することができる。
【００９９】
次に、パラメータテーブルＰＴについて説明する。
【０１００】
図１６はパラメータテーブルＰＴ１の例を示す図、図１７は図１６のパラメータテーブルＰＴ１の１つの姿勢について格納された校正パラメータＰＭＫ１の例を示す図、図１８はパラメータテーブルＰＴ１の１つの姿勢について格納された誤差補正パラメータＰＭＧ１の例を示す図、図１９は姿勢と温度とを組み合わせたパラメータテーブルＰＴの例を示す図、図２０は誤差補正パラメータＰＭＧによる補正の様子を示す図である。
【０１０１】
図１６において、パラメータテーブルＰＴ１は、横軸に上向きまたは下向きの方向の姿勢の角度が、縦軸に左向きまたは右向きの方向の姿勢の角度が、それぞれ示されている。それらのマトリックスの交点の枠内に、その姿勢に対応するパラメータＰＭが格納されている。このパラメータテーブルＰＴ１の中から、３次元測定機２による測定時の姿勢に応じたパラメータＰＭが、選択部１２によって選択されて読み出される。
【０１０２】
例えば、３次元測定機２が、図６（Ｂ）に示す姿勢である場合には、下向き９０度、左向き０度であり、この姿勢に該当する枠内に格納されたパラメータＰＭが選択される。
【０１０３】
図１６に示す例では、１５度ごとにパラメータＰＭが設定されているが、これをもっと小さくしても大きくしてもよい。小さくするほど精度が向上することは上に述べたとおりである。
【０１０４】
図１７において、校正パラメータＰＭＫ１として、ｐｕ、ｐｖ、ｕ０、ｖ０、ｔｈ１、ｔｈ２、ｔｈ３、Ｌについての値が格納されている。この例では、校正パラメータＰＭＫとして、それぞれの補正量が格納されている。つまり、それぞれのパラメータＰＭについて、別途決められた設計値（標準値）に対して、図１７に格納された校正パラメータＰＭＫの値を加算することによってそれぞれのパラメータＰＭを校正し、校正した値を用いて、演算部１３において３次元化演算を行うのである。
【０１０５】
例えば、図１７に示す校正パラメータＰＭＫの「Ｌ」について見れば、校正パラメータＰＭＫ１における値は「０．００１３２」であるので、これを設計値である「２５０」に加算した値「２５０．００１３２」を用いて３次元化演算を行うこととなる。なお、そのような設計値は、記憶部１１または演算部１３の適当なメモリ領域に格納されている。また、図１７の校正パラメータＰＭＫが格納された図１６のパラメータテーブルＰＴ１は、校正パラメータテーブルＰＴＫである。
【０１０６】
図１７の例では、校正パラメータＰＭＫとして補正量を格納したが、校正パラメータＰＭＫとして絶対値を格納しておいてもよい。つまり、別途設計値を用いることなく、そのまま３次元化演算に用いることのできる値を校正パラメータＰＭＫとして格納しておいてもよい。また、ある計算式の係数でもよい。
【０１０７】
このように、校正パラメータＰＭＫを用いることによって、３次元測定機２の姿勢を様々に変化させたときに生じる測定データＤ１の誤差を簡便に且つより精度よく補正することができ、精度のよい３次元測定を行うことができる。
【０１０８】
パラメータテーブルＰＴに誤差補正パラメータＰＭＧが格納されている場合においては、最も簡易的なモデルとして、ＸＹＺの軸方向に対する倍率的な度さを補正する補正倍率（１．０００倍など）が挙げられる。
【０１０９】
すなわち、図１８において、誤差補正パラメータＰＭＧ１として、Ｘ，Ｙ，Ｚの各方向の倍率が格納されている。この例では、つまり、３次元化演算によって算出された各点の３次元座標（Ｘ，Ｙ，Ｚ）に対して、図１８に格納された誤差補正パラメータＰＭＧの値を乗じることによって、誤差補正された３次元座標（Ｘ，Ｙ，Ｚ）を得るのである。
【０１１０】
つまり、次の式によって補正された３次元データＤ５を得る。
【０１１１】
Ｘ座標補正後＝Ｘ座標補正前×Ｘ倍率
Ｙ座標補正後＝Ｙ座標補正前×Ｙ倍率
Ｚ座標補正後＝Ｚ座標補正前×Ｚ倍率
これによって、図２０に示すように、測定空間において、実線で示す３次元データＤ５が、破線で示すように補正される。
【０１１２】
なお、誤差補正パラメータＰＭＧ１として、Ｘ，Ｙ，Ｚの各方向の倍率ではなく、加算値であってもよい。その場合には、全ての座標（Ｘ，Ｙ，Ｚ）に対して誤差補正パラメータＰＭＧを格納しておくか、または離散的に格納しておいて補間を行うようにする。
【０１１３】
つまり、この場合には、次の式によって補正された３次元データＤ５を得る。
【０１１４】
Ｘ座標補正後＝Ｘ座標補正前＋Ｘ加算値
Ｙ座標補正後＝Ｙ座標補正前＋Ｙ加算値
Ｚ座標補正後＝Ｚ座標補正前＋Ｚ加算値
なお、補正演算は、全ての画素について行う。したがって、例えば、イメージセンサの画素数が３０万画素である場合は、３０万画素のそれぞれの画素についての３次元データに対して、姿勢に対応した同じ倍率を掛け算する。
【０１１５】
なお、図１８の誤差補正パラメータＰＭＧが格納された図１６のパラメータテーブルＰＴ１は、誤差補正パラメータテーブルＰＴＧということになる。
【０１１６】
また、測定データＤ１に対して、校正および誤差補正の両方を行う、つまり校正パラメータテーブルＰＴＫおよび誤差補正パラメータテーブルＰＴＧの両方を適用するようにしてもよい。
【０１１７】
上の例では、パラメータテーブルＰＴに格納された校正パラメータＰＭＫまたは誤差補正パラメータＰＭＧは、環境温度に関係なく適用されたが、３次元測定機２の測定時の温度に対応した校正パラメータＰＭＫまたは誤差補正パラメータＰＭＧを選択するようにしてもよい。つまり、選択部１２によって、３次元測定機２の測定時の温度に対応したパラメータを選択して読み出すようにしてもよい。
【０１１８】
次に、パラメータテーブルＰＴの適用に際し、姿勢と温度とを組み合わせた例について説明する。
【０１１９】
図１９に示すように、離散的なそれぞれの温度について、パラメータテーブルＰＴ１〜５を設けて格納しておく。温度センサＳＥ２からの温度データＤ３に基づいて、それに対応する温度のパラメータテーブルＰＴが選択され、選択されたパラメータテーブルＰＴの中から、姿勢に対応したパラメータＰＭ（校正パラメータＰＭＫ、誤差補正パラメータＰＭＧ）が選択される。
【０１２０】
さて、パラメータテーブルＰＴにおいて、姿勢または温度に対応したパラメータＰＭを選択する際に、パラメータテーブルＰＴから読み出されたパラメータＰＭをそのまま適用するのでなく、読み出された複数のパラメータＰＭに基づいて、適用すべきパラメータＰＭを補間演算によって求める方法について説明する。
【０１２１】
すなわち、選択部１２において、パラメータテーブルＰＴの中から、３次元測定機２の姿勢または温度に近いパラメータＰＭがそれぞれ２組ずつ選択される。
【０１２２】
演算部１３において、例えば、上向きａ度に最適な校正パラメータＰＭＫを求める補間演算が行われる。補間方式として線形補間が用いられる。例えば、ｐｕ、ｐｖについて、補間演算により最適の校正パラメータＰＭＫを求めるとする。上向きａ度のときがｐｕａ、ｐｖａ、上向きｂ度のときがｐｕｂ、ｐｖｂ、上向きｃ度のときがｐｕｃ、ｐｖｃとすると、ｐｕａ、ｐｖａは、次の式で与えられる。
【０１２３】
ｐｕａ＝〔（ｐｕｃ−ｐｕｂ）／（ｃ−ｂ）〕×（ａ−ｂ）＋ｐｕｂ
ｐｖａ＝〔（ｐｖｃ−ｐｖｂ）／（ｃ−ｂ）〕×（ａ−ｂ）＋ｐｖｂ
同様に、他のパラメータＰＭである、ｂ、ＦＨ、ｕ、ｕ０、ｖ、ｖ０についても補間演算を行う。
【０１２４】
なお、ここでの例では、２箇所の姿勢でのパラメータＰＭを線形補間する例を説明したが、もっと簡易的に求めるためには、最も近い姿勢、例えば上向きｂ度のパラメータＰＭをそのまま上向きａ度のパラメータＰＭとして選択してもよい。
【０１２５】
これとは逆に、３つのパラメータＰＭ、つまり、上向きｂ度、ｃ度、および、同じく近傍のｄ度のパラメータＰＭを選択し、２次関数で近似して補間演算を行ってもよい。４つのパラメータＰＭを用いる場合には、３次関数で近似すればよい。
【０１２６】
また、図１６および図１７のように、設計値に対する補正量による２次元の校正パラメータテーブルＰＴＫの場合に、例えば「上向きａ度、左向きｐ度」のときを考えると、左向きｑ度において、上向きｂ度と上向きｃ度のデータから、上向きａ度のパラメータＰＭを補正計算する（計算Ａ）。左向きｒ度において、上向きｂ度と上向きｃ度のデータから、上向きａ度のパラメータＰＭを補正計算する（計算Ｂ）。計算Ａと計算Ｂから、左向きｐ度のパラメータＰＭを補正計算する（計算Ｃ）。既知の設計値に計算Ｃを加えて最終的なパラメータＰＭの値を得る（図２１参照）。
【０１２７】
このような手順で計算することにより、「上向きａ度、左向きｐ度」の両方を満たすパラメータＰＭを求めることができる。なお、ここで、図２１の計算Ｄおよび計算Ｅのように先に左向きｐ度のパラメータＰＭを２つ算出した後に計算Ｃを求める手順でもほぼ同じ計算結果が得られる。
【０１２８】
また、Ｘ，Ｙ，Ｚの座標に対する誤差補正値の補間についても、補間方式として線形補間が用いられる。例えば、上向きａ度のときのＸ、Ｙ、Ｚの補正量をそれぞれＸａ、Ｙａ、Ｚａ、上向きｂ度のときのＸ、Ｙ、Ｚの補正量をそれぞれＸｂ、Ｙｂ、Ｚｂ、上向きｃ度のときのＸ、Ｙ、Ｚの補正量をそれぞれＸｃ、Ｙｃ、Ｚｃとすると、Ｘａ、Ｙａ、Ｚａは、次の式で与えられる。
【０１２９】
Ｘａ＝〔（Ｘｃ−Ｘｂ）／（ｃ−ｂ）〕×（ａ−ｂ）＋Ｘｂ
Ｙａ＝〔（Ｙｃ−Ｙｂ）／（ｃ−ｂ）〕×（ａ−ｂ）＋Ｙｂ
Ｚａ＝〔（Ｚｃ−Ｚｂ）／（ｃ−ｂ）〕×（ａ−ｂ）＋Ｚｂ
なお、ここでの例では、２箇所の姿勢でのパラメータＰＭを線形補間する例を説明したが、もっと簡易的に求めるためには、最も近い姿勢、例えば上向きｂ度の補正倍率をそのまま上向きａ度のパラメータＰＭとして選択してもよい。
【０１３０】
これとは逆に、３つのパラメータＰＭ、つまり、上向きｂ度、ｃ度、および、同じく近傍のｄ度のパラメータＰＭを選択し、２次関数で近似して補間演算を行ってもよい。４つのパラメータＰＭを用いる場合には、３次関数で近似すればよい。
【０１３１】
なお、誤差補正パラメータＰＭＧは、ここでは補正倍率で記憶しているが、さらに簡易的に算出するのであれば、補正量で記憶して補正時に加算すればよい。逆に、さらに高度な演算を行うのであれば、ＸＹＺの各変数からなる２次式や３次式の係数として複数個からなるパラメータＰＭを記憶してもよい。
【０１３２】
例えば、Ｘ座標の補正後は、
Ａ×（Ｘ2 ）＋Ｂ×（Ｙ2 ）＋Ｃ×（Ｚ2 ）
＋Ｄ×Ｘ×Ｙ＋Ｅ×Ｙ×Ｚ＋Ｆ×Ｚ×Ｘ＋Ｇ×Ｘ＋Ｈ×Ｙ＋Ｉ×Ｚ＋Ｊ
として、Ａ〜ＪがＸ座標に対する誤差補正パラメータＰＭＧである。
【０１３３】
また、図１６および図１８のように、２次元の誤差補正パラメータテーブルＰＴＧの場合に、例えば「上向きａ度、左向きｐ度」のときを考えると、左向きｑ度において、上向きｂ度と上向きｃ度のデータから、上向きａ度のパラメータＰＭを補正計算する（計算Ａ）。左向きｒ度において、上向きｂ度と上向きｃ度のデータから、上向きａ度のパラメータＰＭを補正計算する（計算Ｂ）。計算Ａと計算Ｂから、左向きｐ度のパラメータＰＭを補正計算する（計算Ｃ）。なお、図２１を参照のこと。
【０１３４】
このような手順で計算することにより、「上向きａ度、左向きｐ度」の両方を満たすパラメータＰＭを求めることができる。なお、ここで、図２１の計算Ｄおよび計算Ｅのように先に左向きｐ度のパラメータＰＭを２つ算出した後に計算Ｃを求める手順でもほぼ同じ計算結果が得られる。
【０１３５】
また、図９に示したように、レーザトラッカーＬＴと３次元測定機２とを組み合わせた場合には、従来は物体Ｑを複数の角度から測定し、レーザトラッカーＬＴから３次元測定機２の位置と姿勢の情報を得てそれらの複数の測定データＤ１を貼り合わせるときの精度向上に用いていた。これに、本実施形態の姿勢による補正を組み合わせることによって、さらに高精度の３次元測定システム１とすることができる。
【０１３６】
なお、上に説明したようなパラメータＰＭの値は、３次元測定機２の１つ１つについて、実測によって取得する。パラメータＰＭの値を取得する方法は公知であるが、次に簡単に説明する。
【０１３７】
図２２はパラメータＰＭの値を取得するための校正装置の例を示す図、図２３は図２２の一部を拡大して示す図である。
【０１３８】
図２２および図２３において、３次元測定機２は支持回転機構８１によって支持されており、その周りにレール８２が設けられている。レール８２には、動力機構付きで自走する校正測定物８３が設置されている。これら支持回転機構８１および校正測定物８３は、制御装置８４によって制御され、且つ得られたデータが取り込まれる。
【０１３９】
校正測定物８３がレール８２に沿って走行し、校正測定物８３が少しずつ異なった位置に位置決めされる。それぞれの位置において、支持回転機構８１が回転し、３次元測定機２が校正測定物８３を正面から測定できるように位置決めする。このようにして、３次元測定機２について離散的な姿勢で測定し、校正用データを得る。１回の測定において、例えば３０万点についてのデータを得る。得られた校正用データを元に、最小２乗法などに代表される最適化演算を用いてパラメータＰＭが算出される。
【０１４０】
なお、図２２および図２３では、上向きと下向きの姿勢のみが示されているが、これに加えて左右方向にも姿勢の変更を行うようになっている。
【０１４１】
次に、３次元測定システム１における処理の概略について、フローチャートを参照して説明する。
【０１４２】
図２４は校正パラメータテーブルＰＴＫを適用して測定データＤ１の校正を行う処理を示すフローチャート、図２５は誤差補正パラメータＰＭＧを適用して３次元データＤ５の誤差補正を行う場合の処理を示すフローチャートである。
【０１４３】
図２４において、３次元測定機２によって物体Ｑを測定し、測定データＤ１を生成する（＃１１）。姿勢センサＳＥ１によって、測定時における３次元測定機２の姿勢データＤ２を取得する（＃１２）。校正パラメータテーブルＰＴＫから、姿勢に応じた最適な校正パラメータＰＭＫを選択する（＃１３）。測定データＤ１に対して、選択した校正パラメータＰＭＫを適用して３次元化演算を行って３次元データＤ５を生成する（＃１４）。
【０１４４】
図２５において、３次元測定機２によって物体Ｑを測定し、測定データＤ１を生成する（＃２１）。姿勢センサＳＥ１によって、測定時における３次元測定機２の姿勢データＤ２を取得する（＃２２）。誤差補正パラメータテーブルＰＴＧから、姿勢に応じた最適な誤差補正パラメータＰＭＧを選択する（＃２３）。測定データＤ１に対して、姿勢とは関係しない固定されたパラメータを用いて３次元化演算を行い、３次元データＤ５を生成する（＃２４）。生成された３次元データＤ５に対して、誤差補正パラメータＰＭＧを用いて誤差補正演算を行い、補正された３次元データＤ５を得る（＃２５）。
【０１４５】
上に述べた実施形態によると、３次元測定機２の測定時の姿勢を変化させた場合に、３次元測定機２の内部の曲がりや歪みが生じても、それにともなう誤差（姿勢差）を補正することができる。また、メカ的な曲がり量や伸び量によって生じる測定誤差を、校正パラメータＰＭＫ、誤差補正パラメータＰＭＧの最適化により吸収して補正できるため、曲がり量や伸び量を直接的に測定する補正方法と比べて、簡便で確実な補正を行うことが可能である。また、３次元測定機２の筐体や支持部材の体積および重量の増加や高コスト化を抑えることができる。
【０１４６】
上に述べた実施形態において、３次元測定機２の姿勢を、ｘ軸回りの回転角度とｙ軸回りの回転角度とによって表現してもよい。この場合に、例えば、ｘ軸回りおよびｙ軸回りのそれぞれについて、０〜３６０度、または−１８０〜１８０度などとすればよい。
【０１４７】
上に述べた実施形態において、３次元測定機２として光切断法による場合を説明したが、これに限らず、パターン投影法、ステレオ法、モアレ法などによる場合でもよい。
【０１４８】
その他、３次元測定機２、ホスト３、または３次元測定システム１の全体または各部の構成、構造、形状、寸法、機能、個数、配置、処理内容、処理順序などは、本発明の趣旨に沿って上に述べた以外の種々のものとすることができる。
【図面の簡単な説明】
【０１４９】
【図１】本発明に係る実施形態の３次元測定システムの構成の例を示す図である。
【図２】一実施形態の３次元測定機の外観を示す斜視図である。
【図３】測定データの処理に関する概略の機能を示すブロック図である。
【図４】全体の機能を組み込んだ３次元測定機の図３に対応するブロック図である。
【図５】３次元空間内における姿勢の表現方法を説明する図である。
【図６】３次元測定機の種々の姿勢を示す図である。
【図７】姿勢の変化によって３次元測定機の内部に生じる歪みを説明する図である。
【図８】３次元測定機の姿勢の検出方法の他の例を示す図である。
【図９】３次元測定機の姿勢の検出方法のさらに他の例を示す図である。
【図１０】スリット光投影法の概要を示す図である。
【図１１】スリット光投影法による３次元測定の原理を説明するための図である。
【図１２】３次元測定システムにおける３次元座標の算出の原理図である。
【図１３】３次元測定機におけるデータの流れを示す図である。
【図１４】ホストにおけるデータの流れを示す図である。
【図１５】光学系の各点と物体との位置関係を示す図である。
【図１６】パラメータテーブルの例を示す図である。
【図１７】校正パラメータの例を示す図である。
【図１８】誤差補正パラメータの例を示す図である。
【図１９】姿勢と温度とを組み合わせたパラメータテーブルの例を示す図である。
【図２０】誤差補正パラメータによる補正の様子を示す図である。
【図２１】パラメータの補正計算の例を示す図である。
【図２２】パラメータの値を取得するための校正装置の例を示す図である。
【図２３】図２２の一部を拡大して示す図である。
【図２４】測定データの校正を行う処理を示すフローチャートである。
【図２５】３次元データの誤差補正を行う場合の処理を示すフローチャートである。
【符号の説明】
【０１５０】
１  ３次元測定システム
２  ３次元測定機
３  ホスト
１１  記憶部
１２  選択部
１３  演算部
ＰＴ  パラメータテーブル
ＰＴＫ  校正パラメータテーブル（パラメータテーブル）
ＰＴＧ  誤差補正パラメータテーブル（パラメータテーブル）
ＰＭ  パラメータ
ＰＭＫ  校正パラメータ（パラメータ）
ＰＭＧ  誤差補正パラメータ（パラメータ）
ＳＥ１  姿勢センサ
ＳＥ２  温度センサ
Ｄ１  測定データ
Ｄ２  姿勢データ
Ｄ３  温度データ
Ｄ５  ３次元データ
【図６】
0004839827.tif 000005
【図１】
0004839827.tif 000006
【図２】
0004839827.tif 000007
【図３】
0004839827.tif 000008
【図４】
0004839827.tif 000009
【図５】
0004839827.tif 000010
【図７】
0004839827.tif 000011
【図８】
0004839827.tif 000012
【図９】
0004839827.tif 000013
【図１０】
0004839827.tif 000014
【図１１】
0004839827.tif 000015
【図１２】
0004839827.tif 000016
【図１３】
0004839827.tif 000017
【図１４】
0004839827.tif 000018
【図１５】
0004839827.tif 000019
【図１６】
0004839827.tif 000020
【図１７】
0004839827.tif 000021
【図１８】
0004839827.tif 000022
【図１９】
0004839827.tif 000023
【図２０】
0004839827.tif 000024
【図２１】
0004839827.tif 000025
【図２２】
0004839827.tif 000026
【図２３】
0004839827.tif 000027
【図２４】
0004839827.tif 000028
【図２５】
0004839827.tif 000029