(57)【要約】【課題】  系統誤差を除去し簡易且つ迅速な校正作業を可能とする。【解決手段】  格子パターンを投影する投影部1と、カメラ4と、校正時に複数の高さの平面2毎に当該平面2上に投影され且つ撮影された投影格子パターンの撮影画像からカメラ4の受光面42上の座標と光強度と平面2の高さの組を複数含む第1の集合を生成する手段53と、光強度を投影格子パターンの位相角に変換し、受光面42上の座標と位相角と高さの組を複数含む第2の集合を生成する手段53と、第2の集合のデータからテンソル積型複合超曲面を表すデータを生成する手段55と、測定時に被測定物体に対して投影され且つ撮影された投影格子パターンの撮影画像から受光面42上の座標と光強度の組のデータを抽出し、光強度を投影格子パターンの位相角に変換し、受光面42における座標と位相角の組のデータを生成し、テンソル積型複合超曲面を表すデータを用いて高さデータを補間計算する手段56とを有する。【選択図】  図４
2005098985.tif 000002
【特許請求の範囲】
【請求項１】
所定の格子パターンを投影する投影手段と、
撮影手段と、
校正時に複数の高さの面毎に前記投影手段により当該面上に投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面において各前記面に共通の縦方向個数及び横方向個数存在する点の座標と当該点の光強度と前記高さとからなる組を含む第１の集合を生成し、当該第１の集合のデータを記憶装置に格納する手段と、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における前記点の座標と前記位相角と前記高さとからなる組を含み且つ各組をノードとして矩形グリッドを構成するための第２の集合のデータを記憶装置に格納する手段と、
を有する計測装置。
【請求項２】
前記第２の集合のデータからテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する超曲面生成手段と、
をさらに有する請求項１記載の計測装置。
【請求項３】
測定時に被測定物体に対して前記投影手段により投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面における座標と光強度の組のデータを抽出し、記憶装置に格納する手段と、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における座標と前記位相角の組のデータを記憶装置に格納する手段と、
前記テンソル積型複合超曲面を表すデータを用いて、前記受光面における座標と前記位相角の組のデータに対応する高さデータを補間計算し、記憶装置に格納する補間手段と、
をさらに有する請求項２記載の計測装置。
【請求項４】
校正時に１又は複数の高さを有し且つ実座標が判明している複数のポイントを含む面毎に前記投影手段による格子パターンの投影なしに前記撮影手段により撮影された当該面の撮影画像から、前記撮影手段の受光面における座標と前記ポイントの実座標と前記高さとからなる組を複数含む第３の集合を生成し、当該第３の集合のデータを記憶装置に格納する手段と、
前記第３の集合のデータから第２のテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する第２超曲面生成手段と、
をさらに有する請求項３記載の計測装置。
【請求項５】
前記第２のテンソル積型複合超曲面を表すデータを用いて、前記補間手段により生成された高さデータと前記受光面における対応座標の組のデータに対応する実座標のデータを補間計算し、記憶装置に格納する手段と、
をさらに有する請求項４記載の計測装置。
【請求項６】
スリット光を投影する投影手段と、
撮影手段と、
校正時に複数の高さの面毎に前記投影手段により当該面上に投影され且つ前記撮影手段により撮影された投影パターンの撮影画像から、前記撮影手段の受光面における、スリット光が投影された部分に係る点の座標と前記高さとからなる組を含む集合データを生成し、記憶装置に格納する手段と、
を有する計測装置。
【請求項７】
前記記憶装置に格納された前記集合データからテンソル積型複合曲面を表すデータを生成し、記憶装置に格納する曲面生成手段
をさらに有する請求項６記載の計測装置。
【請求項８】
請求項１乃至７のいずれか１つ記載の計測装置と、
前記面の高さを制御する手段と、
を有するコンピュータ数値制御装置。
【請求項９】
校正時に複数の高さの面毎に撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面において各前記面に共通の縦方向個数及び横方向個数存在する点の座標と当該点の光強度と前記高さとからなる組を含む第１の集合を生成し、当該第１の集合のデータを記憶装置に格納するステップと、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における前記点の座標と前記位相角と前記高さとからなる組を含み且つ各組をノードとして矩形グリッドを構成するための第２の集合のデータを記憶装置に格納するステップと、
をコンピュータに実行させるためのプログラム。
【請求項１０】
前記第２の集合のデータからテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する超曲面生成ステップと、
測定時に被測定物体に対して投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面における座標と光強度の組のデータを抽出し、記憶装置に格納するステップと、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における座標と前記位相角の組のデータを記憶装置に格納するステップと、
前記テンソル積型複合超曲面を表すデータを用いて、前記受光面における座標と前記位相角の組のデータに対応する高さデータを補間計算し、記憶装置に格納する補間ステップと、
をさらにコンピュータに実行させるための請求項９記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被測定物体に対して光を投影して当該被測定物体の３次元形状を計測するための技術に関する。
【背景技術】
【０００２】
３次元形状の計測は工業のみならず、医学、生物学、考古学、美術品の調査復元など社会の多くの領域で使用されるようになってきている。３次元計測では、従来からの接触型よりも光を用いた非接触型の光計測が望まれている。光計測における領域計測には、１本の線状のスリット光をスリット方向と直交する方向に走査することにより領域の計測を行う光切断法と、面単位で一括して計測する計測方法に分類される。
【０００３】
光切断法については、様々な態様が開発されているが、基本的には図１に示すような原理に基づく。すなわち、光切断法による計測装置は、レーザー等の光源とスリット１０１０とを含むスリット光投影系と、レンズ１０１２及び受光素子（の受光面）１０１３を含む撮影系とを含む。すなわち、スリット光投影系からのスリット光は、被測定物体１０１１に投影される。図１の例では、ハッチング付きのスリット光が被測定物体１０１１に投影されている。その様子を撮影系に含まれるレンズ１０１２により受光素子１０１３に結像させるようになっている。例えば、スリット光が投影された被測定物体上の点Ｐ（Ｘ，Ｙ，Ｚ）（（Ｘ，Ｙ，Ｚ）は実体座標系の座標値））は、受光素子（の受光面）１０１３におけるｐ（ｘ，ｙ）（（ｘ，ｙ）は受光面における座標値））として観測される。なお、計測装置のスリット光投影系及び撮影系は、スリット光により被測定物体１０１１の計測部分を走査するように、所定の間隔で移動させられ、その都度撮影系において画像が撮影される。また、レンズ１０１２の中心をとおり且つ受光素子（の受光面）１０１３と直交する直線（図１における一点鎖線）とスリット光による平面との交点を点Ｑとし、スリット光投影系のスリット１０１０の中心とレンズ１０１２の中心とを結ぶ線分αの長さをＬとする。
【０００４】
次に図２を用いて、図１に示した測定装置及び被測定物体の位置関係の詳細を説明する。なお、スリット１０１０の中心を点Ｒとし、レンズ１０１２の中心を点Ｓとする。この時、線分ＲＰと線分ＰＳとの間の角はβ＋γであり、線分ＲＳへの垂線（基準線）でβとγに分割される。また、線分ＰＲと線分ＲＳとの間の角はθであり、線分ＰＳと線分ＳＲとの間の角はΦである。さらに、主軸と重なる線分ＱＳと線分ＳＲとの間の角はΦ0であり、Φ0−Φ＝Φ'である。また、点Ｓから受光素子の受光面１０１３までの距離はｌであり、線分ＲＳと点Ｐとの距離を測定すべき長さＺとする。そうすると、以下の式が成り立つ。
【数１】
2005098985.tif 000003
なお、点Ｐは、受光素子の受光面１０１３において主軸に対してΔｘずれた点ｐで観測されたので、Φ'＝tan-1（Δｘ／ｌ）となり、Φ＝Φ0＋Φ'が計算できる。従って、角度θ、Φ0、Φ'、長さｌ及びＬが得られれば、上記式に従ってＺを算出することができる。これらのパラメータは、当然ながら計測誤差を含んでいる。
【０００５】
光切断法では、上でも述べたようにスリット光の投影部などの機械的な移動機構を必要としており、これが隘路となって計測時間を短縮することができず、能率が悪いという問題がある。従って計測時間を短縮する必要がある分野における適用には問題がある。また、機械的移動機構を有するため保守調整に手間が掛かるという問題点もある。
【０００６】
一方、面を一括して処理する代表的な方法には、モアレ縞により等高線を取得するモアレ法、縞状の格子を物体に投影してできる格子パターンを観測する格子パターン投影法がある。特に計測精度及び装置の価格からして、現在では後者が期待されている。
【０００７】
格子パターン投影装置は、通常、図３に示すように、投影部１０００、プロジェクタのレンズ１００２及び格子１００１を含む投影系と、被計測物体１００４に投影された変形格子パターン１００３をレンズ１００６を介して撮影する撮影部１００５を含む撮影系との二つの系統に分けられる。投影部１０００は格子１００１による縞状の格子をレンズ１００２を介して被計測物体１００４に投影する。投影により生ずる格子パターンは被計測物体１００４の凹凸によって変形される。撮影部１００５は、変形された格子パターン１００３を投影方向とは異なる角度から撮影し、ＣＣＤ（Charge Coupled Device）などの受光素子を介して電気信号に変換し、記憶装置に蓄積する。これを解析することによって被計測物体１００４の３次元形状を計測する。なお、各受光素子はその点における光強度に対応した電圧などの電気信号を出力する。格子１００１については、以前はガラスの表面などに作成され固定的であったが、最近は液晶等による格子が実用化され、コンピュータにより液晶デバイスに実体化された縞格子を使用するようになっている。
【０００８】
通常、投影部１０００の光軸に直交する基準平面を設定し、この上で縞方向Ｙ及び縞直交方向Ｘの二つの軸を設定する。詳しくは非特許文献１（H.Lu et al.,"Automatic Measurement of 3-D Object Shapes Based on Computer-generated Reference Surface", Bull. Japan Soc. of Prec. Eng. Vol. 21, No.4, p251 (1987)）に開示されているが、この方法では、格子パターンを、縞と直交する軸Ｘ上の位置に対する、光強度Ｉの波として表現し、被計測物体１００４を基準平面上に設置した場合の波の位相Φ（＝Φ2）、又は基準平面についての波の位相Φ1と被計測物体１００４を基準平面上に設置した場合の波の位相Φ2との差分ΔΦ（＝Φ2−Φ1）を用いて解析する。これにより格子パターン投影法は別名「変調格子位相法」とも呼ばれる。ここで波の位相の差分ΔΦを使用するのは、計測における系統誤差が引き算によって消滅するので、精度が向上するためである。この方法では、縞波（明の縞と暗の縞のペア）番号は相対的であれば任意に設定することができる。なお、位相角は縞波１波長に対して２πとして計算するのが通例である。
【０００９】
詳しい計算式は非特許文献１に開示されているのでここでは詳細な説明を省略するが、ΔΦを求めるために、Φ1を、格子１００１とレンズ１００２の間の距離、撮影部１００５の光軸と投影部１０００の光軸との交点とレンズ１００２との距離、格子間隔、撮影部１００５の光軸と投影部１０００の光軸の角度などの光学的な幾何位置関係から計算にて求める。これらの幾何位置には当然計測誤差が含まれる。
【００１０】
この他、非特許文献３（山谷謙ほか，液晶格子パターン投影による３次元形状計測，精密工学会誌，vol.67, No.5, p.786, (2001)）や、非特許文献４（Mitsuo Takeda et al., Fourier transform profilometry for the automatic measurement of 3-D object shapes, Applied OPTICS, vol. 22, no. 4, p. 3977 (1983)）にも、別の計算式にて計測値や高さを算出する方法が開示されているが、共に光学的な幾何位置の計測結果を用いて計算するようになっている。
【００１１】
なお、（Φ2＝２π×縞波番号＋縞内部位相角）であって、計測にて求めることになる。このように上で述べた方法では、特に縞波番号を特定することが必要となる。
【００１２】
縞内部位相角を取得するために、基準平面上に設定した縞直交方向のＸ軸（図３参照）に沿って走査が行われる。正弦波格子はもちろん、縞格子が２値化されたいわゆるロンキー格子であっても、明及び暗の縞の境界付近は、光の回折現象や受光素子による離散化誤差などによって、縞直交方向のＸ軸に沿って格子パターンの光強度Ｉは除変する。この光強度分布を波と認識し、正弦波の基点を始点とする縞波内位相角を求める。
【００１３】
縞内部位相角を求めるため、正弦波格子を用いるという条件の下、格子をπ／２，π，３π／２シフトさせたときの光強度をＩ0，Ｉ1，Ｉ2，Ｉ3とすれば、任意の点ｘにおける縞内部位相角を次式で計算できることが知られている（非特許文献１）。この方法は「位置固定型縞内部位相角計算法」である。
【数２】
2005098985.tif 000004
【００１４】
この他に、谷から山に至る区間の中央値となる点を縞波内部位相角０とする方法や、谷や山のピークを検出する方法などが存在するが、このときは格子をπ／２，π，３π／２シフトさせて内部位相角０，π／２，π，３π／２の位置を求めることになり、これは「位相角固定型位置計算法」である。いずれの方法を用いるにせよ、縞内部位相角０の点で縞波番号は変化し、そこで１つの縞波が区分される。
【００１５】
このように、格子パターン投影法などでは、縞波番号が分からなければ３次元計測ができないことになる。縞波が連続的である場合にはＸ軸に沿って縞波番号は１ずつ増減するため、容易に位相差ΔΦを計算することができる。しかし、縞が不連続になる場合がある。このように縞が不連続となってしまった場合には、縞波番号の連続性を使用することはできないので、位相差を計算することは容易ではなくなってしまう。また、縞波番号を誤って認識してしまうと、計測誤差が生じてしまう。
【００１６】
これに対して、縞の不連続性に対応して自動的に縞波番号を取得する方法として、非特許文献３に概括されているように白黒の縞格子に対して多数の研究がなされている。この他、カラー縞格子を用いる方法が知られている（特許文献１及び非特許文献２）。
【００１７】
また、特開２００３−６５７３８号（特許文献２）には、以下のような技術が開示されている。すなわち、カメラキャリブレーションを行うために、互いに異なるＺ方向位置において、ＸＹ座標が既知のマーカが付された平面板を複数回撮像する。これによって、同一平面上にないマーカの画像上の位置と、各マーカのワールド座標位置とから、カメラパラメータを計算する。次に、縞平面方程式を得るため、縞空間位置を実測する。この際、投影部によって、縞パターンを平面板に投影する。平面板を移動させ、互いに異なるＺ方向位置において、少なくとも２回、撮像部によって撮像する。そして、投影された各縞について、その光平面（ＸＹ平面と交差する平面）に含まれて且つ一直線上にない少なくとも３点Ｐａ，Ｐｂ，Ｐｃについて、空間座標を取得する。このためには、撮像部から遠い方の画像において、１つの縞による直線画像上の任意の２つの点Ｑａ，Ｑｂを決定する。それらの点Ｑａ，Ｑｂの画素座標位置Ｑａ（ｕａ，ｖａ），Ｑｂ（ｕｂ，ｖｂ）を求める。また撮像部から近い方の画像において、同様に、同じ縞による直線画像上の任意の１つの点Ｑｃを決定する。その点Ｑｃの画素座標位置Ｑｃ（ｕｃ，ｖｃ）を求める。これらの点Ｑａ，Ｑｂ，Ｑｃの画素座標位置、距離ｚ１，ｚ２、およびカメラパラメータを用いて、ワールド座標系での縞上の各点の位置Ｐａ（ｘａ，ｙａ，ｚ１）、Ｐｂ（ｘｂ，ｙｂ，ｚ１）、Ｐｃ（ｘｃ，ｙｃ，ｚ２）を求める。このような処理を、縞パターンの全ての縞について行う。求められたそれぞれの点の位置（座標データ）を、縞空間位置として記憶装置に記憶する。また、縞空間位置に基づいて、それぞれの縞平面方程式を求め、これを記憶装置に記憶する。縞平面方程式は、一般的には次の式で示される。ａｘ＋ｂｙ＋ｃｚ＝ｄ。縞平面方程式のデータとして、例えばこの式のパラメータａ，ｂ，ｃ，ｄが記憶される。なお、上の説明では１つの縞について３点の座標位置を求めたが、平面板のＺ座標位置または画像上の位置などを密にして、４点以上の点の座標位置を求めてもよい。その場合に、それらの点が１つの平面上にない場合には、近似的な縞平面方程式を求める。それによって、さらに精度の高い縞平面方程式が得られる。
【００１８】
このような技術では、あくまで各縞の縞平面方程式を得ることが目的となっているため、縞間の関係は把握されておらず、空間全体を正しく表すことができていない。従って、正しい計測値を得ることができない場合もある。また、縞平面方程式の算出にはカメラパラメータの算出結果を用いているが、カメラパラメータがどのようなデータであるか及びその算出方法が明示されておらず、カメラパラメータが十分な精度で算出されていない場合には、縞平面方程式の精度も落ちてしまう。
【００１９】
【特許文献１】特開平３−１９２４７４号公報
【特許文献２】特開２００３−６５７３８号
【非特許文献１】H.Lu et al.,"Automatic Measurement of 3-D Object Shapes Based on Computer-generated Reference Surface", Bull. Japan Soc. of Prec. Eng. Vol. 21, No.4, p251 (1987)
【非特許文献２】W. Liu et al., Color Coded Projection Grating Method for Shape Measurement with a Single Exposure, Applied Optics Vol.39, No.20, p3503 (2000)
【非特許文献３】山谷謙ほか，液晶格子パターン投影による３次元形状計測，精密工学会誌，vol.67, No.5, p.786, (2001)
【非特許文献４】Mitsuo Takeda et al., Fourier transform profilometry for the automatic measurement of 3-D object shapes, Applied OPTICS, vol. 22, no. 4, p. 3977 (1983)
【非特許文献５】Curves and Surfaces for Cagd: A Practical Guide (Morgan Kaufmann Series in Computer Graphics and Geometric Modeling), Gerald E. Farin, Morgan Kaufmann Pub; ISBN: 1558607374
【非特許文献６】形状処理工学(II)  山口富士夫、日刊工業新聞社
【非特許文献７】Byoung K. Choi et al., Sculptured Surface Machining, Kluwer Academic Publishers, (1998)
【発明の開示】
【発明が解決しようとする課題】
【００２０】
上でも述べたように従来の光切断法においては、計算に必要なパラメータに計測誤差が含まれており、計測精度の制限となっている。
【００２１】
また、上で述べた従来技術が実現している格子パターン投影法は、「位置固定型縞内部位相角計算法」の場合正弦格子を前提としており、その実現度によって計測精度が左右されるので、実現度を向上させるための研究がなされている（非特許文献３）。しかしながら、液晶は離散型であるので正弦格子の実現度にも限界があるのは明らかであり、これにより精度が制限される。また、従来の方法では計算式の係数の精度を向上させるための努力がなされているが、計測ボリューム内の全ての点に対して高精度な値を得るのは困難である。さらに、「位相角固定型位置計算法」の場合は異なった点を参照するが、参照する点のバックグランドの明るさの違いによって誤差を生じ、これにより精度が制限される。
【００２２】
また、格子パターン投影法において、非特許文献１、非特許文献３及び非特許文献４に示されたΔΦなどを計算するための計算式は校正パラメタを含むが、これも誤差を含み精度に制限を与える。たとえば、校正パラメタに０．２％の誤差が含まれている場合、非線形性による誤差があれば２００ｍｍ幅の物体を計測すると０．４ｍｍの誤差を生ずる。
【００２３】
さらに、これらの計算式は受光データに系統誤差がある場合、工業的に重要な水平面の計測値の水平性を保証しないと言う問題もある。なお、非特許文献４における式は基準平面に対してのみ偶発誤差がなければ水平性を保証するが、それ以外の高さの水平面に対してはその保証がない。
【００２４】
また、格子パターン投影レンズ、格子パターン撮影レンズは歪曲収差を有する。例えば０．５％の歪曲収差のレンズを用いて２００ｍｍの幅の物体を計測すると、歪曲収差によって１．０ｍｍの誤差を生ずる。ある程度は計算による補正が可能であるが、これでも限度があるのは明らかである。歪曲収差については、光切断法でも同様である。
【００２５】
さらに、光学的な校正は計測座標系に対して行われる。しかしながら、計測装置を例えばＮＣ（Numerical Control）工作機に取り付けて計測し、計測データを用いてＮＣ計測機を制御しようとするときは、計測装置と工作機械は軸が一致せず誤差をもつ。この場合、工作装置の座標系で計測装置の校正を行いたいが、現在のところその方法は知られていない。
【００２６】
また、従来、計測装置のパラメタを高精度に校正するのは高度の技術と長い時間を必要とし、精度を必要とする再校正は計測装置製作者に依頼するのが常である。当該計測装置を製品の生産に使用する場合には、製造停止など経済的な問題がある。特に技術を必要とせず簡単に誰でも短時間で校正を行う方法は知られていない。
【００２７】
従って、本発明の目的は、非接触型の光計測において系統誤差を除去する新規な計測技術を提供することである。
【００２８】
また他の目的は、計測装置と座標系が異なるコンピュータ数値制御（CNC：Computer Numerical Control）装置の座標系で計測装置の校正を可能にし、さらに簡易且つ迅速な校正作業を可能とする新規な計測技術を提供することである。
【００２９】
さらに他の目的は、偶発誤差を除き平面の計測値の水平性及び平坦性を保証し、レンズの歪曲収差の影響を軽減する新規な計測技術を提供することである。
【課題を解決するための手段】
【００３０】
本発明の第１の態様に係る計測装置は、所定の格子パターンを投影する投影手段と、撮影手段と、校正時に複数の高さの面毎に投影手段により当該面上に投影され且つ撮影手段により撮影された投影格子パターンの撮影画像から、撮影手段の受光面において各上記面に共通の縦方向個数及び横方向個数存在する点の座標と当該点の光強度と高さとからなる組を含む第１の集合を生成し、当該第１の集合のデータを記憶装置に格納する手段と、光強度を投影格子パターンの位相角に変換し、受光面における上記点の座標と位相角と高さとからなる組を含み且つ各組をノードとして矩形グリッドを構成するための第２の集合のデータを記憶装置に格納する手段とを有する。
【００３１】
このように撮影手段の受光面における座標と高さと投影格子パターンの位相角の組を複数含む第２の集合を保持しておくことにより、受光面における座標と投影格子パターンの位相角という観測側のデータと実体の高さというデータとが適切に対応付けられ、計測時に受光面における座標と投影格子パターンの位相角とから被測定物体の高さを導出できるようになる。このように計測データのみで校正が行われるので系統誤差が消滅する。なお、上記面は、平面の方が装置製作上及び精度保持上有利ではあるが、曲面であっても機能実現上問題はない。
【００３２】
また、本発明の第１の態様に係る計測装置は、第２の集合のデータからテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する超曲面生成手段をさらに有するようにしてもよい。このように本発明では、４次元（受光面における座標（２次元）と位相角（１次元）と高さ（１次元）とで計４次元）空間中においてテンソル積型複合超曲面の形式で、受光面における座標、位相角及び高さの関係を表現する。４次元空間におけるテンソル積型複合超曲面は、３次元空間におけるテンソル積型複合曲面の次元を１つ増加させたものである。
【００３３】
３次元空間におけるテンソル積型複合曲面については、非特許文献５において詳細が述べられているように、「曲面は、形を変えながら空間を移動する曲線（以下「第１の曲線」と呼ぶ）の軌跡である」と捉え、「移動する第１の曲線」を制御点（以下「第１の制御点」と呼ぶ）を用いて表現し、その第１の制御点が、ある曲線（以下「第２の曲線」と呼ぶ）に沿って移動するものとして、第１の制御点を更に異なる制御点を用いて表現するものである。
【００３４】
第１の曲線が第２の曲線に沿って移動するので、第１の曲線を表現する制御点の数と第２の曲線を表現する制御点の数はそれぞれ同一となり、これによって上記各面に共通の縦方向個数及び横方向個数の点から矩形グリッドが構成される。
【００３５】
４次元におけるテンソル積型複合超曲面については、「超曲面は、形を変えながら空間を移動する曲面の軌跡である」と捉え、３次元空間におけるテンソル積型複合曲面を制御点（以下「第２の制御点」と呼ぶ）を用いて表現し、その第２の制御点が第３の座標（例えば時間）に沿って移動するとして、第２の制御点をさらに異なる第３の制御点を用いて表現することによって得ることができる。このようにして生成されたテンソル積型複合超曲面は近似であるが、第２の集合に含まれる組の数が十分多ければ十分な精度を得ることができる。
【００３６】
このテンソル積型複合超曲面の表現式には、ベジエ曲面、B-Spline曲面の次数を１つ増やしたものを使用することができる。なお、本発明におけるテンソル積型複合超曲面は、テンソル積型複合曲面が射影変換された、有理ベジエ曲面や有理B-Spline曲面の次数を１つ増やしたものをも含むものとする。さらに、数学的に等価な方法として、超曲面が座標値を表現する代わりに、上で述べた非特許文献３又は４等に記載されている理論式からの差分を表現する方法を採用しても良い。
【００３７】
また、上で述べた超曲面生成手段が、第２の集合のデータを入力点として用い、テンソル積型複合超曲面の制御点を算出するようにしてもよい。この制御点群がテンソル積型複合超曲面を表すデータとなる。
【００３８】
さらに、本発明の第１の態様に係る計測装置は、測定時に被測定物体に対して投影手段により投影され且つ撮影手段により撮影された投影格子パターンの撮影画像から、撮影手段の受光面における座標と光強度の組のデータを抽出し、記憶装置に格納する手段と、光強度を投影格子パターンの位相角に変換し、受光面における座標と位相角の組のデータを記憶装置に格納する手段と、テンソル積型複合超曲面を表すデータを用いて、受光面における座標と位相角の組のデータに対応する高さデータを補間計算し、記憶装置に格納する補間手段とをさらに有するようにしてもよい。
【００３９】
計測面の傾き以外は校正時と同じ条件で計測結果の補間データを得られるので、格子パターンの精度の影響や校正パラメータの精度の影響を軽減することができる。また、高さ一定の平面では校正時と同じ条件で計測がなされるので、水平性及び平坦性の保証ができる。なお、補間については、受光面における座標と位相角を与えて超曲面を参照し、当該超曲面と直線の交差問題を解くことによって可能となる。これは、例えば多次元ニュートン法であるヤコビの反転算法によって解くことができる。
【００４０】
また、本発明の第１の態様に係る計測装置は、校正時に１又は複数の高さを有し且つ実座標が判明している複数のポイントを含む面毎に投影手段による格子パターンの投影なしに撮影手段により撮影された当該面の撮影画像から、撮影手段の受光面における座標とポイントの実座標と高さとからなる組を複数含む第３の集合を生成し、当該第３の集合のデータを記憶装置に格納する手段をさらに有するようにしてもよい。
【００４１】
このようにして、投影格子パターンの位相角ではなく実座標についても、受光面における座標と高さとの組の集合で表すことにより、適切に空間を表すことができるようになる。なお、上記面は、平面の方が装置製作上及び精度保持上有利ではあるが、曲面であっても機能実現上問題はない。
【００４２】
そして、本発明に係る計測装置は、第３の集合のデータから第２のテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する第２超曲面生成手段をさらに有するようにしてもよい。
【００４３】
さらに、第２のテンソル積型複合超曲面を表すデータを用いて、補間手段により生成された高さデータと受光面における対応座標の組のデータに対応する実座標のデータを補間計算し、記憶装置に格納する手段をさらに有するようにしてもよい。
【００４４】
このようにすれば、レンズの歪曲収差などを除去することができるようになる。なお、実体のＸ軸方向及びＹ軸方向については、超曲面ではなく曲面を用いても空間を表すことができる。
【００４５】
また、本発明の第２の態様に係る計測装置は、スリット光を投影する投影手段と、撮影手段と、校正時に複数の高さの面毎に投影手段により当該面上に投影され且つ撮影手段により撮影された投影パターンの撮影画像から、撮影手段の受光面における、スリット光が投影された部分に係る点の座標と高さとからなる組を含む集合データを生成し、記憶装置に格納する手段とを有する。このように光切断法の高さ方向の校正時には、校正時に取得されるデータの種類が１種類少なくなる。
【００４６】
従って、本発明の第２の態様に係る計測装置は、記憶装置に格納された集合データからテンソル積型複合曲面を表すデータを生成し、記憶装置に格納する曲面生成手段をさらに有するようにしてもよい。光切断法の高さ方向については、テンソル積型複合超曲面ではなく、テンソル積型複合曲面を表すデータを生成すればよい。計算負荷を軽減できる。
【００４７】
また、本発明の第２の態様に係る計測装置は、測定時に被測定物体に対して投影手段により投影され且つ撮影手段により撮影された投影パターンの撮影画像から、撮影手段の受光面における、スリット光が投影された部分に係る点の座標データを抽出し、記憶装置に格納する手段と、テンソル積型複合曲面を表すデータを用いて、受光面における座標データに対応する高さデータを補間計算し、記憶装置に格納する補間手段とをさらに有するようにしてもよい。
【００４８】
さらに、本発明の第２の態様に係る計測装置は、校正時に１又は複数の高さを有し且つ実座標が判明している複数のポイントを含む面毎に投影手段によるスリット光の投影なしに撮影手段により撮影された当該面の撮影画像から、撮影手段の受光面における座標とポイントの実座標と高さとからなる組を複数含む第２の集合を生成し、当該第２の集合のデータを記憶装置に格納する手段をさらに有するようにしてもよい。このように、Ｘ軸及びＹ軸方向についての校正については、光切断法でも格子パターン投影法と同様のデータを用意する必要がある。
【００４９】
また、本発明の第２の計測装置は、第２の集合のデータからテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する超曲面生成手段をさらに有するようにしてもよい。
【００５０】
さらに、本発明の第２の計測装置は、テンソル積型複合超曲面を表すデータを用いて、補間手段により生成された高さデータと受光面における対応座標の組のデータに対応する第１の実座標のデータを補間計算し、記憶装置に格納する手段と、第１の実座標のデータを、投影手段及び撮影手段の全体の座標系における位置に従って修正し、当該修正結果を記憶装置に格納する手段とをさらに有するようにしてもよい。１本のスリット光だけでは、被測定物体の計測部分を全てカバーできないので、投影手段及び撮影手段については移動させる必要がある。その際の移動のデータを用いて修正が必要となる。
【００５１】
なお、修正結果及び対応する高さデータを用いて、測定されなかった点における座標データを補間計算する手段をさらに有するようにしてもよい。
【００５２】
本発明の第３の態様に係る計測装置は、所定の格子パターンを投影する投影手段と、撮影手段と、校正時に複数の高さの面毎に投影手段により当該面上に投影され且つ撮影手段により撮影された投影格子パターンの撮影画像から、撮影手段の受光面において各上記面に共通のグラフ構造のノードとなる点の座標と当該点の光強度と前記高さとからなる組を含む第１の集合を生成し、当該第１の集合のデータを記憶装置に格納する手段と、光強度を投影格子パターンの位相角に変換し、受光面における点の座標と位相角と高さとからなる組を含み且つ各組をノードとしてグリッドを構成するための第２の集合のデータを記憶装置に格納する手段とを有する。
【００５３】
グラフとは、ノードの集まりと二つのノードを結ぶエッジの集まりであり、ノード間の関係を表現するものである。本発明の第１の態様とは異なるデータ構造を用いても、同様の効果を実現できる。
【００５４】
また、本発明の第３の態様に係る計測装置は、第２の集合のデータから複合自由超曲面を表すデータを生成し、記憶装置に格納する自由超曲面生成手段をさらに有するようにしてもよい。複合自由超曲面とは、テンソル積型、有理テンソル積型、三角形パッチ型、三角形及び四辺形型細分曲面などの自由曲面一般の次元拡張を掃引などの方法を用いて行ったものである。
【００５５】
さらに、本発明の第３の態様に係る計測装置は、測定時に被測定物体に対して投影手段により投影され且つ撮影手段により撮影された投影格子パターンの撮影画像から、撮影手段の受光面における座標と光強度の組のデータを抽出し、記憶装置に格納する手段と、光強度を投影格子パターンの位相角に変換し、受光面における座標と位相角の組のデータを記憶装置に格納する手段と、複合自由超曲面を表すデータを用いて、受光面における座標と位相角の組のデータに対応する高さデータを補間計算し、記憶装置に格納する補間手段とをさらに有するようにしてもよい。
【００５６】
本発明に係るコンピュータ数値制御装置（ＣＮＣ装置とも呼ぶ）は、上で述べた計測装置と、少なくとも面の高さを制御する手段とを有する。このようにすれば、校正を迅速及び簡易に行うことができ、さらに計測装置とＣＮＣ装置の座標系を統合することができる。なお、ここでＣＮＣ装置は、計算機を用いた数値制御を有する機械装置のことであり、その代表的なものがＮＣ工作装置である。
【００５７】
本発明の装置は、例えばコンピュータとプログラムの組み合わせにより実現され、このプログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークなどを介してデジタル信号として配信される場合もある。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【発明の効果】
【００５８】
本発明によれば、非接触型の光計測において系統誤差を除去することができる。
【００５９】
また他の側面として、計測装置と座標系が異なる工作装置の座標系で校正を可能にし、さらに簡易且つ迅速な校正作業を可能にできる。
【００６０】
さらに他の観点として、偶発誤差を除き平面の計測値の水平性及び平坦性を保証し、レンズの歪曲収差の影響を軽減することができる。
【発明を実施するための最良の形態】
【００６１】
［実施の形態１］
図４に、格子パターン投影法を採用した本発明の第１の実施の形態における機能ブロック図を示す。本実施の形態における計測装置を含むＣＮＣ装置（例えば工作装置。但し、これに限定するものではない。）は、本実施の形態における主要な処理を実施し且つコンピュータである画像処理装置５と、当該画像処理装置５に接続されており且つランプなどの投影部１１と格子を形成するための液晶パネル１２とレンズ１３とを有する液晶プロジェクタ１と、画像処理装置５に接続されており且つレンズ４１とＣＣＤ４２と図示しないメモリを有するカメラ４と、校正時に基準面となる基準平面２（但し高さＺ＝Ｚ1の場合の基準平面を２ａとし、高さＺ＝Ｚ2の場合の基準平面を２ｂとする。）と、画像処理装置５と接続されており且つ当該基準平面２の少なくともＺ方向の移動を制御する移動制御部６とを含む。なお、基準平面２上において、投影格子パターンの縞直交方向をＸ軸とし、縞方向をＹ軸とし、Ｚ軸方向にカメラ４の光軸が設けられている。一方、ＣＣＤ４２の受光面においても、投影格子パターンの像の縞直交方向をｘ軸とし、縞方向をｙ軸とする。なお、大文字のＸＹＺについては実空間上の軸又は座標を表し、小文字のｘｙについては受光面における像の軸又は座標を表すものとする。
【００６２】
画像処理装置５には、カメラ４の制御を行うカメラ制御部５１と、液晶プロジェクタ１の制御を行う投影制御部５２と、校正時の画像処理などを実施するキャリブレーション処理部５３と、移動制御部６に対して基準面の高さＺなどＣＮＣデータの設定を行うＣＮＣデータ設定部５４と、校正時に行われる処理の一部であるテンソル積型複合超曲面などの制御点を生成する制御点生成部５５と、測定時における被測定物体の実座標を算出する実座標算出部５６とが含まれている。また、画像処理装置５は、校正時に生成されるテンソル積型複合超曲面などの制御点データなどを格納する校正データ格納部５７と、測定時に生成される被測定物体の実座標データなどを格納する測定データ格納部５８とを管理している。
【００６３】
１．高さＺを求める場合
（１）校正時の処理
まず被測定物体の基準面からの高さを測定する場合の校正時の処理について図５乃至図１２を用いて説明する。図５は処理フローを示す。例えば、ユーザが画像処理装置５に校正処理の実施を指示すると、ＣＮＣデータ設定部５４は、例えば予め設定されている高さＺ（＝Ｚ1）の設定データを移動制御部６に出力し、移動制御部６はＣＮＣデータ設定部５４から受け取った高さＺ（＝Ｚ1）の設定データに従って、基準平面２の高さを高さＺ1になるように制御する。そして、投影制御部５２は、所定の格子パターンを基準平面２ａに対して投影するように、液晶プロジェクタ１を制御する。投影制御部５２の指示に応じて、液晶プロジェクタ１は、所定の格子パターンを液晶パネル１２にて形成し、投影部１１により基準平面２ａに対して液晶パネル１２により形成された所定の格子パターンを投影する。また、カメラ制御部５１は、当該投影格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば校正データ格納部５７などの記憶装置に撮影画像データを格納する。
【００６４】
次に、ＣＮＣデータ設定部５４は、例えば予め設定されている別の高さＺ（＝Ｚ2）の設定データを移動制御部６に出力し、移動制御部６はＣＮＣデータ設定部５４から受け取った高さＺ（＝Ｚ2）の設定データに従って、基準平面２の高さを高さＺ2になるように制御する。そして、投影制御部５２は、所定の格子パターンを基準平面２ｂに対して投影するように、液晶プロジェクタ１を制御する。投影制御部５２の指示に応じて、液晶プロジェクタ１は、所定の格子パターンを液晶パネル１２にて形成し、投影部１１により基準平面２ｂに対して液晶パネル１２により形成された所定の格子パターンを投影する。なお、高さＺ1において一度投影しているので、そのまま投影しつづけている場合には投影制御部５２及び液晶プロジェクタ１における処理は不要である。そして、カメラ制御部５１は、当該投影格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば校正データ格納部５７などの記憶装置に撮影画像データを格納する。
【００６５】
以上の処理を基準平面２の高さＺを変更して繰り返す（ステップＳ１）。このとき最低限１回基準平面２の高さＺを変更する必要があるが、好ましくは２回以上変更する。多ければそれだけ近似がより正確になるので多い方が好ましい。
【００６６】
ステップＳ１における撮影の概念図を図６（ａ）乃至（ｃ）に示す。図６（ａ）は、図４に示したＺ軸と視線を垂直に直交させた場合の模式図である。液晶プロジェクタ１に設けられ且つ所定の格子パターンが形成される液晶パネル１２を介して光を照射することにより、基準平面２には投影格子パターンが投影される。図６（ａ）では、計測の下限となる高さは直線４２２で示され、計測の上限となる高さは直線４２１で示されている。直線４２１及び４２２に平行で高さが一定の直線が基準平面２を表す。ここではＺ1からＺ4までの４つの基準平面が示されている。また、投影格子パターンにおいて、例えば液晶パネル１２において光が遮断されており位相角Φが一定の直線が直線４１１乃至４１６で表されている。すなわち、直線４１１乃至４１６のうちいずれかの直線上では位相角Φは一定であり、基準平面２のいずれにおいても黒のラインで表される。撮影範囲は、直線４０１及び４０２により囲まれた範囲であり、さらに計測の上限を表す直線４２１と計測の下限を表す直線４２２とによりさらに囲まれた範囲が計測範囲（計測ボリューム）となる。
【００６７】
このような状況においてＣＣＤ４２においてレンズ４１を介して基準平面２に投影された投影格子パターンを撮像すると、例えば図６（ｂ）及び（ｃ）のようになる。なお、直線４１１乃至４１６で表される部分のみで光が遮断されており、またＣＣＤ４２のｘ軸方向の受光素子（丸で表す）が２０個、ｙ軸方向の受光素子が１０個と仮定する。また、図６（ｂ）は基準平面２ａでありＺ＝Ｚ1の場合を、図６（ｃ）は基準平面２ｂでありＺ＝Ｚ2の場合をそれぞれ示しているものとする。図６（ｂ）及び図６（ｃ）においては、白丸が光を検出した受光素子を、黒丸が光を検出しなかった受光素子を示している。このように高さＺが異なる場合には、異なる受光素子において、直線４１２、直線４１３、直線４１４及び直線４１５が表す影を検出している。すなわち、基準平面２の高さが異なる場合には、投影格子パターンにおける位相角Φが同一となる受光面上の座標は異なる。ここでは、４本の直線４１２乃至４１５に対応して４列の受光素子のみ光を検出せず、残り受光素子が全て同じように光を検出したような状態を示しているが、実際には格子の縞直交方向に順次変化する光強度が各受光素子において検出される。
【００６８】
図５の処理フローの説明に戻って、キャリブレーション処理部５３は、ステップＳ１で撮影された撮影画像のデータ及びＣＮＣデータ設定部５４により設定された高さＺのデータとを用いて、高さＺと受光面における受光座標（ｘ，ｙ）と光強度Ｉとからなる組のデータを作成し、当該組のデータの集合を例えば校正データ格納部５７に格納する（ステップＳ３）。より具体的には、特定の高さＺにおける撮影画像の各画素の座標（ｘ，ｙ）と光強度Ｉと当該特定の高さＺと対応付けて組を生成し、例えば校正データ格納部５７に格納する。
【００６９】
校正データ格納部５７に格納されるデータ・テーブルの一例を図７に示す。図７の例では、例えばＺ方向の受光素子番号（格子番号とも呼ぶ）を表すｉの列５０１と、例えばｘ方向の格子番号を表すｊの列５０２と、例えばｙ方向の格子番号を表すｋの列５０３と、受光素子のｘ座標の列５０４と、受光素子のｙ座標の列５０５と、高さＺ（Ｚ座標とも呼ぶ）の列５０６と、光強度Ｉの列５０７と、位相角の列５０８とが設けられている。このように、受光面においてｊ列ｋ行に配置された受光素子の受光面における座標（ｘ，ｙ）とその受光素子でｉ番目の高さＺで撮影した場合の光強度Ｉが１レコードとして登録されるようになっている。この段階ではまだ位相角は登録されない。
【００７０】
次に、キャリブレーション処理部５３は、校正データ格納部５７に格納されたデータのうち光強度Ｉを位相角Φに変換し、校正データ格納部５７の例えば図７のデータ・テーブルに格納する（ステップＳ５）。格子パターン投影法において光強度Ｉから位相角Φを計算する方法は、背景技術の欄で述べた（１）式のほか様々な方法が既に考案されており、その技術を用いれば計算できるため、ここではこれ以上説明しない。
【００７１】
そして、制御点生成部５５は、受光座標（ｘ，ｙ）と高さＺと位相角Φとからなる各組を入力点として、テンソル積型複合超曲面を表すための制御点を生成し、校正データ格納部５７に格納する（ステップＳ７）。超曲面は、ｎ次元空間において１個の拘束を与えて得られる図形を意味する。複合は、パッチが複数連結して存在することを表す。テンソル積は多重線形空間であることを表す。ステップＳ５で得られた受光座標（ｘ，ｙ）と高さＺと位相角Φとからなる組の集合で表される空間は、４次元のテンソル積型複合超曲面で表現でき、この表現式には、ベジエ曲面、B-Spline曲面、有理B-Spline曲面、ＮＵＲＢＳ曲面などの次数を１つ増やしたものを使用する。このようなテンソル積型複合超曲面を用いることにより、計測範囲における高さと受光面の座標と位相角との関係をより正確に表すことができるようになる。なお、テンソル積型複合超曲面は計測点を含む計測ボリューム全体を補間するものであり、近似となってしまうが、連続性があるため、より多くのデータにて制御点を規定できれば、十分な精度を得ることができる。
【００７２】
ここで入力点は図８のような矩形格子型となる。すなわち、図６（ｂ）又は図６（ｃ）を何層にも重ねたような構造である。但し、位相的に矩形格子が成り立てばよく、立方体を組み合わせた矩形格子に限定されるものではない。各格子点Ｐはｉｊｋという３つのパラメータで特定され、また各格子点Ｐは、受光面における座標（ｘ，ｙ）と高さＺと位相角Φとからなる組を表す。
【００７３】
このように入力点群は図８に示したような矩形格子構造を有しておりｉ，ｊ，ｋのいずれの方向においても掃引方向の連結性が保証されている。したがって、ｉ，ｊ、ｋを独立に掃引して制御点を求めればよい。すなわち、図９に示すように、第１の方向（例えばｉ）に入力点列を掃引して制御点を生成し、当該制御点のデータを例えば校正データ格納部５７に格納する（ステップＳ１１）。例えばｊ及びｋを固定してｉ方向に入力点列を掃引して制御点を生成した後、ｊ又はｋを変更してｉ方向に入力点列を掃引して制御点を生成する。これを繰り返してｉ方向に伸びる入力点列について全て制御点を生成する。また、第２の方向（例えばｊ）に入力点列を掃引して制御点を生成し、当該制御点のデータを例えば校正データ格納部５７に格納する（ステップＳ１３）。ここでも、例えばｉ及びｋを固定してｊ方向に入力点列を掃引して制御点を生成した後、ｉ又はｋを変更してｊ方向に入力点列を掃引して制御点を生成する。これを繰り返してｊ方向に伸びる入力点列について全て制御点を生成する。なお、既にステップＳ１１で生成されている制御点については入力点として用いて制御点を生成する。そして、第３の方向（例えばｋ）に入力点列を掃引して制御点を生成し、当該制御点のデータを例えば校正データ格納部５７に格納する（ステップＳ１５）。例えばｉ及びｊを固定してｋ方向に入力点列を掃引して制御点を生成した後、ｉ又はｊを変更してｋ方向に入力点列を掃引して制御点を生成する。これを繰り返してｋ方向に伸びる入力点列について全て制御点を生成する。ここでもステップＳ１１及びＳ１３において生成された制御点については入力点として用い、制御点を生成する。なお、図８に示すような矩形格子構造ではなくグラフ構造を用いる場合もある。
【００７４】
また、校正データ格納部５７において制御点は、例えば図１０に示すようなデータ・テーブルにて格納されている。図１０の例では、制御点番号の列８００と、ｘ座標の列８０１と、ｙ座標の列８０２と、Ｚ座標の列８０３と、位相角の列８０４とが設けられている。
【００７５】
では具体的に、入力点から制御点を生成する手法について簡単に説明する。比較的簡単な３次のベジエ曲線を用いる場合を示す。図１１（ａ）は、入力点列の一例を示している。このようにＰ1、Ｐ2、Ｐ3、Ｐ4という入力点列が存在するとする。このような場合には、隣接する２入力点（例えばＰ1及びＰ2）を選択し、それぞれの接ベクトル（例えばｍ1及びｍ2）を求める。そうすると、中間の制御点（Ｐ11及びＰ12）は、以下のように求められる。なお、詳しくは非特許文献５を参照されたい。
【数３】
2005098985.tif 000005
【００７６】
これを繰り返せば図１１（ｂ）に示すような制御点列を得ることができる。なお、ベジエ曲線では入力点列Ｐ1、Ｐ2、Ｐ3、Ｐ4も制御点であり、区別するためＰ10、Ｐ20、Ｐ30、Ｐ40と表している。すなわち、Ｐ10とＰ20の間には、Ｐ11及びＰ12が生成され、Ｐ20とＰ30の間には、Ｐ21とＰ22が生成され、Ｐ30とＰ40の間には、Ｐ31とＰ32とが生成される。
【００７７】
このように求められた制御点により、ベジエ超曲面は、１次元のセグメントや２次元のパッチに相当する３次元の超パッチごとに、以下の式で表される。
【数４】
2005098985.tif 000006
但し、Ｂin(t)＝ｎＣｉｔi(１−ｔ）n-i
であって、Bernstein多項式である。Bernstein多項式についても非特許文献５を参照されたい。なお、Ｐijkは制御点である。（２）式は従来から知られているベジエ曲面（例えば非特許文献５記載）の以下の式に対して次元の拡張を行ったものである。
【数５】
2005098985.tif 000007
【００７８】
また本実施の形態においてはベジエ曲線だけではなく、ユニフォームなB-Spline曲線を用いることも可能である。３次のB-Spline曲線の場合を図１２を用いて説明する。ここでＰ1、...Ｐi、Ｐi+1...Ｐnは入力点列である。これに対して、B-Spline曲線の制御点は、Ｑ0、Ｑ1、...Ｑi-1、Ｑi、Ｑi+1、Ｑi+2、...Ｑn、Ｑn+1となる。入力点列Ｐと制御点列Ｑは、上付のサフィックスが同じもの同士対応しており、Ｑ0とＱn+1のみが余分に設けられるようになっている。すなわちベジエの場合よりも制御点の数は少なく、制御点データを保持する場合におけるメモリ容量が少なく済む。
【００７９】
図１２のような制御点列を生成するためには、第１ステップとしてｉ＝１乃至ｎについて、ＱiをＰiと同じに設定する。なお、Ｑ0についてはＱ1と同じに設定する。また、Ｑn+1をＱnと同じに設定する。第２ステップとしてｉ＝１乃至ｎについて、
【数６】
2005098985.tif 000008
を計算し、δi＋Ｑiを、新たなＱiに設定する。なお、Ｑ0についてはＱ1と同じに設定する。また、Ｑn+1をＱnと同じに設定する。
【００８０】
第３ステップにおいては、ｍａｘ｛δi｝＞δs（固定値）であるか判断し、この条件が満たされている場合には第２ステップに戻る。一方、この条件が満たされていない場合には、処理を終了する。このようにすれば、制御点列を算出することができる。なお、詳しい内容については、非特許文献６のＰ６９乃至７２を参照のこと。
【００８１】
このように求められた制御点により、B-Spline超曲面は、１次元のセグメントや２次元のパッチに相当する３次元の超パッチごとに、以下の式で表される。
【数７】
2005098985.tif 000009
なお、Ｑijkは制御点である。
【００８２】
このほかユニフォームでないB-Spline曲線やさらにＮＵＲＢＳや有理B-Splineなどを用いることも可能であり、ベジエ及びB-Splineに限定されるものではない。
【００８３】
以上述べたような処理を実施することにより、制御点というテンソル積型複合超曲面を表すデータを得ることができ、以下で述べる測定時に高さＺを得ることができるようになる。
【００８４】
なお、上では撮影画像の位置が固定される形態の画素について格子点を構成する例を示したが、必ずしもこれに限定されるものではなく、例えば特定の位相角の画素についてのみ格子点を構成するようにしても良い。
【００８５】
（２）測定時の処理
測定時には、ユーザはまず所定の高さの平面（図６の計測上限４２１と計測下限４２２の間に設定された計測ボリューム内の平面。以下「平面２ｃ」と呼ぶ。）上に被測定物体を設置する。そして画像処理装置５に測定の指示を行う。そうすると、投影制御部５２は所定の格子パターンを平面２ｃ上に設置された被測定物体に対して投影するように、液晶プロジェクタ１を制御する。投影制御部５２の指示に応じて、液晶プロジェクタ１は、所定の格子パターンを液晶パネル１２にて形成し、投影部１１により平面２ｃ上の被測定物体に対して液晶パネル１２により形成された所定の格子パターンを投影する。また、カメラ制御部５１は、当該投影格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば測定データ格納部５８などの記憶装置に撮影画像データを格納する（図１３：ステップＳ２１）。
【００８６】
次に、実座標算出部５６は、例えば測定データ格納部５８に格納された撮影画像データに基づき、受光座標（ｘ，ｙ）と光強度Ｉの組を特定し、例えば測定データ格納部５８に格納する（ステップＳ２３）。図１４に測定データ格納部５８に格納されるデータ・テーブルの一例を示す。図１４の例では、画素番号の列１２０１と、受光面のｘ座標の列１２０２と、ｙ座標の列１２０３の列と、光強度Ｉの列１２０４と、位相角の列１２０５と、Ｚ座標の列１２０６とが含まれる。この段階では、ｘ座標とｙ座標と光強度Ｉのデータのみが登録される。
【００８７】
そして、実座標算出部５６は、測定データ格納部５８に格納されたデータ・テーブル（図１４）を参照して、光強度Ｉを位相角Φに変換し、測定データ格納部５８のデータ・テーブル（図１４）に格納する（ステップＳ２５）。この処理は、図５に示したステップＳ５と同じであり、既存の技術にて算出する。その後、実座標算出部５６は、受光座標（ｘ，ｙ）と位相角Φとの各組について多次元ニュートン法（例えばヤコビ反転算法）で高さＺを算出し、例えば測定データ格納部５８に格納されたデータ・テーブル（図１４）に格納する（ステップＳ２７）。
【００８８】
２次元のヤコビ反転算法については、Byoung K. Choi et al., Sculptured Surface Machining, Kluwer Academic Publishers, (1998)に述べられており、ここでは３次元に単純に拡張したものを適用する。以下、簡単に説明するが、ここで行う計算というのは、テンソル積型複合超曲面Ｐのパラメタ表現Ｐ(u,v,w)＝（ｘ(u,v,w)，ｙ(u,v,w)，Ｚ(u,v,w)，Φ(u,v,w)）において、データ・テーブル（図１４）に格納されているｘ*、ｙ*及びΦ*に対応するＺを求める問題である。
【００８９】
第１ステップとして、初期推定点ｕ0，ｖ0及びｗ0を与える。そして、第２ステップとして、以下の３つの式の連立方程式にてδu，δv及びδwを解く。
【数８】
2005098985.tif 000010
なお、ｘu(u0,v0,w0)は、ｕ＝ｕ0，ｖ＝ｖ0，ｗ＝ｗ0にて評価した偏導関数である。ｙu(u0,v0,w0)及びΦu(u0,v0,w0)についても同様である。
【００９０】
第３ステップとして、このようにして得られたδu，δv，δwによりｕ0，ｖ0及びｗ0を以下のように更新する。
ｕ0＝ｕ0＋δu
ｖ0＝ｕ0＋δv
ｗ0＝ｗ0＋δw
【００９１】
そして、第４ステップとして、
（ｘ*−ｘ(u0,v0,w0)）2＋（ｙ*−ｙ(u0,v0,w0)）2＋（Φ*−Φ(u0,v0,w0)）2を評価し、これが十分小さいか判断する。この他評価値として絶対値の和を用いてもよい。もし、十分小さいとするならば、第３ステップで得られたｕ＝ｕ0，ｖ＝ｖ0，ｗ＝ｗ0が解となる。一方、十分小さいとはいえない場合には、第２ステップに戻る。
【００９２】
最後に、解として得られたｕ＝ｕ0，ｖ＝ｖ0，ｗ＝ｗ0を用いて、例えば（２）式や（３）式に入力することにより、高さＺを得ることができる。
【００９３】
以上のような処理を実施すれば、高さＺを求めることができる。また、波としての格子パターンの精度に対する影響を軽減することができる。また、校正パラメータの精度の影響を軽減することができるようになる。さらに、Ｚ座標については、計測装置とＣＮＣ装置の座標系を揃えることができるようになる。また、校正作業は非常に簡単且つ迅速に行うことができ、高さＺ一定平面では校正時と同じ条件で測定されるので偶発誤差を除けば水平性も保証できる。
【００９４】
２．Ｘ座標とＹ座標を求める場合
上では高さＺだけが分かればよい場合について説明した。しかし実際の測定では被測定物体のＸ座標及びＹ座標が不要ということはあまりない。以下、Ｘ座標及びＹ座標の求め方について説明する。
【００９５】
（１）校正時の処理
以下、校正時の処理を図１５の処理フローに沿って説明する。例えば、ユーザが画像処理装置５に校正処理の実施を指示すると、ＣＮＣデータ設定部５４は、例えば予め設定されている高さＺ（＝Ｚ1）の設定データを移動制御部６に出力し、移動制御部６はＣＮＣデータ設定部５４から受け取った高さＺ（＝Ｚ1）の設定データに従って、基準平面２の高さを高さＺ1になるように制御する。
【００９６】
なお、今回の校正時には、基準平面２には、Ｘ座標値、Ｙ座標値又はＸ及びＹ座標値が既知の実体格子パターンが描かれている（又は実体格子パターンが描かれた物を設置する）ものとする。例えば、図１６（ａ）に示すように、Ｙ軸に平行でＸ座標が既知の実体格子パターンと、図１６（ｂ）に示すように、Ｘ座標に平行でＹ座標が既知の実体格子パターンとを別途用意して、以下の処理を実施する。又は、図１６（ｃ）に示すように、Ｘ軸に平行でＹ座標が既知の実体格子パターンとＹ軸に平行でＸ座標が既知の実体格子パターンとの組み合わせである交差格子パターンを用いるようにしても良い。なお、投影制御部５２は、格子パターンではなく単に照明として光を照射するように、液晶プロジェクタ１を制御する。投影制御部５２の指示に応じて、液晶プロジェクタ１は、格子パターンを液晶パネル１２にて形成することなく、投影部１１により基準平面２ａに対して光を照射する。
【００９７】
そして、カメラ制御部５１は実体格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば校正データ格納部５７などの記憶装置に撮影画像データを格納する。
【００９８】
次に、ＣＮＣデータ設定部５４は、例えば予め設定されている別の高さＺ（＝Ｚ2）の設定データを移動制御部６に出力し、移動制御部６はＣＮＣデータ設定部５４から受け取った高さＺ（＝Ｚ2）の設定データに従って、基準平面２の高さを高さＺ2になるように制御する。そして、カメラ制御部５１は、実体格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば校正データ格納部５７などの記憶装置に撮影画像データを格納する。
【００９９】
以上の処理を基準平面２の高さＺを変更して繰り返す（ステップＳ３１）。このとき最低限１回基準平面２の高さＺを変更する必要があるが、好ましくは２回以上変更する。多ければそれだけ近似がより正確になるので多い方が好ましい。
【０１００】
次に、キャリブレーション処理部５３は、例えば校正データ格納部５７に格納された撮影画像データを読み出し、当該撮影画像中実体格子パターンの受光画素を抽出し、当該受光画素の受光座標（ｘ，ｙ）と高さＺと当該実体格子の実座標値（Ｘ座標、Ｙ座標又はＸ座標及びＹ座標）とからなる組の集合のデータを、例えば校正データ格納部５７に格納する（ステップＳ３３）。例えば実体格子パターンを黒いラインにしておき、その他の面を白くしておけば、光強度Ｉの値により黒と判断される画素が抽出できる。また、ラインの端などにマーカを付すなどの方法にて、その黒いラインがどの実体座標の実体格子パターンに対応するかを特定できるようにしておけば、抽出された画素に対応する実座標を特定できる。
【０１０１】
図１７に校正データ格納部５７に格納されるデータ・テーブルの一例を示す。図１７の例では、例えばＺ方向の受光素子番号（格子番号とも呼ぶ）を表すｉの列１５０１と、例えばｘ方向の格子番号を表すｊの列１５０２と、例えばｙ方向の格子番号を表すｋの列１５０３と、受光素子のｘ座標の列１５０４と、受光素子のｙ座標の列１５０５と、実空間のＸ座標の列１５０６と、実空間のＹ座標の列１５０７と、高さＺの列１５０８と、光強度Ｉの列１５０９とが設けられている。このように、受光面においてｘ方向にｊ番目にｙ方向にｋ番目に抽出された受光素子の受光面における座標（ｘ，ｙ）とその時の高さＺ及び光強度Ｉ、並びに特定された実座標（Ｘ座標、Ｙ座標又はＸ座標及びＹ座標）が１レコードとして登録されるようになっている。なお、実座標は、Ｘ座標だけが登録される場合も、Ｙ座標だけが登録される場合もあり、ここではＸ座標だけが特定された例を示している。
【０１０２】
このようにすると、受光座標（ｘ，ｙ）と高さＺと実座標Ｘとからなる組の第１の集合と、受光座標（ｘ，ｙ）と高さＺと実座標Ｙとからなる組の第２の集合とが得られるようになる。したがって、制御点生成部５５は、この第１の集合又は第２の集合に含まれる各組を入力点として、ステップＳ７（図５）に関連して説明した処理を実施して制御点を生成し、当該制御点のデータを例えば校正データ格納部５７に格納する（ステップＳ３５）。
【０１０３】
例えば図１８（ａ）及び図１８（ｂ）に示すような制御点用のデータ・テーブルが校正データ格納部５７に格納される。図１８（ａ）の例では、制御点番号の列１６０１と、ｘ座標の列１６０２と、ｙ座標の列１６０３と、Ｚ座標の列１６０４と、Ｘ座標の列１６０５とが設けられている。また、図１８（ｂ）の例では、制御点番号の列１６１１と、ｘ座標の列１６１２と、ｙ座標の列１６１３と、Ｚ座標の列１６１４と、Ｙ座標の列１６１５とが設けられている。このように、Ｘ座標を求めるための制御点群と、Ｙ座標を求めるための制御点群とは分けて保管される。
【０１０４】
以上のようにテンソル積型複合超曲面を表すデータがＸ座標について及びＹ座標について求められているので、以下の測定時の処理を実施すれば、Ｘ座標及びＹ座標を取得することができるようになる。
【０１０５】
（２）測定時の処理
測定時の処理においては高さＺ値の算出が必要になるので、高さＺ値の算出を含む処理フロー（図１９）を用いて説明する。
【０１０６】
測定時には、ユーザはまず計測ボリューム内に被測定物体を設置する。そして画像処理装置５に測定の指示を行う。そうすると、投影制御部５２は所定の格子パターンを計測ボリューム内に設置された被測定物体に対して投影するように、液晶プロジェクタ１を制御する。投影制御部５２の指示に応じて、液晶プロジェクタ１は、所定の格子パターンを液晶パネル１２にて形成し、投影部１１により基準平面２上の被測定物体に対して液晶パネル１２により形成された所定の格子パターンを投影する。また、カメラ制御部５１は、当該投影格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば測定データ格納部５８などの記憶装置に撮影画像データを格納する（図１９：ステップＳ４１）。
【０１０７】
次に、実座標算出部５６は、例えば測定データ格納部５８に格納された撮影画像データに基づき、受光座標（ｘ，ｙ）と光強度Ｉの組を特定し、例えば測定データ格納部５８に格納する（ステップＳ４３）。図２０に測定データ格納部５８に格納されるデータ・テーブルの一例を示す。図２０の例では、画素（受光素子）番号の列１８０１と、受光面のｘ座標の列１８０２と、ｙ座標の列１８０３の列と、光強度Ｉの列１８０４と、位相角の列１８０５と、Ｚ座標の列１８０６と、Ｘ座標の列１８０７と、Ｙ座標の列１８０８とが含まれる。この段階では、ｘ座標とｙ座標と光強度Ｉのデータのみが登録される。
【０１０８】
そして、実座標算出部５６は、測定データ格納部５８に格納されたデータ・テーブル（図２０）を参照するなどして、光強度Ｉを位相角Φに変換し、測定データ格納部５８のデータ・テーブル（図２０）に格納する（ステップＳ４５）。この処理は、図５に示したステップＳ５と同じであり、既存の技術にて算出する。その後、実座標算出部５６は、受光座標（ｘ，ｙ）と位相角Φとの各組について多次元ニュートン法（例えばヤコビ反転算法）で高さＺを算出し、例えば測定データ格納部５８に格納されたデータ・テーブル（図２０）に格納する（ステップＳ４７）。ステップＳ２７に関連して説明した処理を実施する。
【０１０９】
次に、受光座標（ｘ，ｙ）と高さＺとの各組について多次元ニュートン法（例えばヤコビ反転算法）で実体座標Ｘを算出し、例えば測定データ格納部５８に格納されたデータ・テーブル（図２０）に格納する（ステップＳ４９）。ステップＳ２７に関連した説明ではΦとなっていた部分をＺに置き換え、図１８（ａ）に示した制御点のデータを用いて同様の処理を行えばよい。そうすれば、受光座標（ｘ，ｙ）と高さＺの組毎に実体空間のＸ座標を得ることができる。
【０１１０】
同様に、受光座標（ｘ，ｙ）と高さＺとの各組について多次元ニュートン法（例えばヤコビ反転算法）で実体座標Ｙを算出し、例えば測定データ格納部５８に格納されたデータ・テーブル（図２０）に格納する（ステップＳ５１）。ステップＳ２７に関連した説明ではΦとなっていた部分をＺに置き換え、図１８（ｂ）に示した制御点のデータを用いて同様の処理を行えばよい。そうすれば、受光座標（ｘ，ｙ）と高さＺの組毎に実体空間のＹ座標を得ることができる。
【０１１１】
以上のような処理を実施すれば、被測定物体のＸ座標値、Ｙ座標値及び高さＺを求めることができる。また、波としての格子パターンの精度に対する撮影レンズなどの影響を軽減することができる。さらに、Ｚ座標については、計測装置とＣＮＣ装置の座標系を揃えることができるようになる。また、校正作業は非常に簡単且つ迅速に行うことができ、高さＺ一定平面では校正時と同じ条件で測定されるので偶発誤差を除けば水平性も保証できる。さらに、このようにＸ座標及びＹ座標についてもテンソル積型複合超曲面を用いて算出できるようになったため、撮影レンズなどの歪曲収差の影響を軽減することができる。
【０１１２】
３．Ｘ座標及びＹ座標の簡易な計測方法
２．で述べた方法では、Ｘ座標及びＹ座標についてもテンソル積型複合超曲面により求めるようにしていたが、Ｘ座標及びＹ座標については高さＺに比例すると考えても問題が無いため、テンソル積型複合曲面にて算出することができる。以下の説明では、テンソル積型複合曲面を用いる場合の処理を説明する。
【０１１３】
（１）校正時の処理
図２１を用いて校正時の処理を説明する。なお、高さＺに関する校正処理は同じであるから説明は省略する。
【０１１４】
例えば、ユーザが画像処理装置５に校正処理の実施を指示すると、ＣＮＣデータ設定部５４は、例えば予め設定されている高さＺ（＝Ｚ0）の設定データを移動制御部６に出力し、移動制御部６はＣＮＣデータ設定部５４から受け取った高さＺ（＝Ｚ0）の設定データに従って、基準平面２の高さを高さＺ0になるように制御する。
【０１１５】
なお、今回の校正時には、基準平面２には、Ｘ座標値、Ｙ座標値又はＸ及びＹ座標値が既知の実体格子パターンが描かれている（又は実体格子パターンが描かれた物を設置する）ものとする。これについては図１５のステップＳ３１と同じである。また、液晶プロジェクタ１による格子パターンの投影は行わない。
【０１１６】
そして、カメラ制御部５１は実体格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば校正データ格納部５７などの記憶装置に撮影画像データを格納する（ステップＳ６１）。上では複数の高さの基準平面２について撮影を行うことになっていたが、ここでは１つの高さの基準平面２を撮影すれば十分である。
【０１１７】
次に、キャリブレーション処理部５３は、例えば校正データ格納部５７に格納された撮影画像データを読み出し、当該撮影画像中実体格子パターンの受光画素を抽出し、当該受光画素の受光座標（ｘ，ｙ）と当該実体格子の実座標値（Ｘ座標、Ｙ座標又はＸ座標及びＹ座標）との組の集合のデータを、例えば校正データ格納部５７に格納する（ステップＳ６３）。この処理も図１５のステップＳ３３とほぼ同じであるが、本ステップでは、高さＺについては全て同じであるから、高さＺについては別途保管していても良い。但し図１７に示したように高さＺを対応付けて保管しておいても良い。
【０１１８】
このようにすると、受光座標（ｘ，ｙ）と実座標Ｘの組の第１の集合と、受光座標（ｘ，ｙ）と実座標Ｙの組の第２の集合とが得られるようになる。したがって、制御点生成部５５は、この第１の集合又は第２の集合に含まれる各組を入力点として、ステップＳ７（図５）に関連して説明した処理を実施して制御点を生成し、当該制御点のデータを例えば校正データ格納部５７に格納する（ステップＳ６５）。なお、図１５のステップＳ３５では、テンソル積型複合超曲面を表すデータとして制御点を算出していたが、ここではテンソル積型複合曲面を表すデータとして制御点を算出する。算出の仕方は基本的には同じであり、ｕ、ｖ及びｗで表されていた（２）式及び（３）式が、ｕとｖだけで表されるようになるだけである。校正データ格納部５７では、図１８（ａ）及び図１８（ｂ）に示すような形で制御点のデータが格納される。但し、高さＺを各レコードに対応付けて格納しておく必要は無い。
【０１１９】
以上のようにテンソル積型複合曲面を表すデータがＸ座標について及びＹ座標について求められているので、以下の測定時の処理を実施すれば、Ｘ座標及びＹ座標を取得することができるようになる。
【０１２０】
（２）測定時の処理
測定時には、ユーザはまず計測ボリューム内に被測定物体を設置する。そして画像処理装置５に測定の指示を行う。そうすると、投影制御部５２は所定の格子パターンを計測ボリューム内に設置された被測定物体に対して投影するように、液晶プロジェクタ１を制御する。投影制御部５２の指示に応じて、液晶プロジェクタ１は、所定の格子パターンを液晶パネル１２にて形成し、投影部１１により基準平面２上の被測定物体に対して液晶パネル１２により形成された所定の格子パターンを投影する。また、カメラ制御部５１は、当該投影格子パターンを撮影するようにカメラ４を制御する。カメラ制御部５１の指示に応じてカメラ４はＣＣＤ４２により撮影を行う。ＣＣＤ４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置５に出力される。画像処理装置５は、例えば測定データ格納部５８などの記憶装置に撮影画像データを格納する（図２２：ステップＳ７１）。ステップＳ４１と同じである。
【０１２１】
次に、実座標算出部５６は、例えば測定データ格納部５８に格納された撮影画像データに基づき、受光座標（ｘ，ｙ）と光強度Ｉの組を特定し、例えば測定データ格納部５８に格納する（ステップＳ７３）。ステップＳ４３と同じである。
【０１２２】
そして、実座標算出部５６は、測定データ格納部５８に格納されたデータ・テーブルを参照して、光強度Ｉを位相角Φに変換し、測定データ格納部５８のデータ・テーブルに格納する（ステップＳ７５）。ステップＳ５及びステップＳ４５と同じである。その後、実座標算出部５６は、受光座標（ｘ，ｙ）と位相角Φとの各組について多次元ニュートン法（例えばヤコビ反転算法）で高さＺを算出し、例えば測定データ格納部５８に格納されたデータ・テーブルに格納する（ステップＳ７７）。ステップＳ２７に関連して説明した処理を実施する。ステップＳ４７と同じである。
【０１２３】
次に、実座標算出部５６は、各受光座標（ｘ，ｙ）について多次元ニュートン法（例えばヤコビ反転算法）で実体座標Ｘを算出し、さらに高さＺ／校正時の高さＺ0倍し、例えば測定データ格納部５８に格納されたデータ・テーブルに格納する（ステップＳ７９）。前半の処理は、上で述べた論文に書かれている２次元のヤコビ反転算法そのもので算出可能であるが、ここではさらに、得られたＸ座標値をＺ／Ｚ0倍する処理を行って、受光座標（ｘ，ｙ）に対応するＸ座標とする。Ｘ座標値は高さＺに比例するため、校正時の高さＺ0を用いて補正する。このようにして受光座標（ｘ，ｙ）と高さＺの組毎に実体空間のＸ座標を算出する。
【０１２４】
同様に、実体座標算出部５６は、受光座標（ｘ，ｙ）と高さＺとの各組について多次元ニュートン法（例えばヤコビ反転算法）で実体座標Ｙを算出し、さらに高さＺ／校正時の高さＺ0倍し、例えば測定データ格納部５８に格納されたデータ・テーブルに格納する（ステップＳ８１）。ステップＳ７９と同様に、前半の処理は上で述べた論文に書かれている２次元のヤコビ反転算法そのもので算出可能であるが、ここではさらに得られたＹ座標をＺ／Ｚ0倍する処理を行って、受光座標（ｘ，ｙ）に対応するＹ座標とする。このようにして受光座標（ｘ，ｙ）と高さＺの組毎に実体空間のＹ座標を算出する。
【０１２５】
以上のような処理を実施すればテンソル積型複合超曲面を用いずにＸ座標及びＹ座標を算出することができる。１次元だけ次数が低いので、計算負荷が低く抑えられる。
【０１２６】
［実施の形態２］
次に光切断法を用いた場合の構成について図２３乃至図２９を用いて説明する。まず図２３に機能ブロック図を示す。本実施の形態における計測装置を含むＣＮＣ装置は、本実施の形態における主要な処理を実施し且つコンピュータである画像処理装置２３０５と、当該画像処理装置２３０５に接続されており且つスリット光を投影する投影部２３０１とカメラ２３０４とを有する計測部２３３０と、校正時に基準面となる基準平面２３０２（但し高さＺ＝Ｚ1の場合の基準平面を２３０２ａとし、高さＺ＝Ｚ2の場合の基準平面を２３０２ｂとする。）と、画像処理装置２３０５と接続されており且つ当該基準平面２３０２の少なくともＺ方向の移動を制御する移動制御部２３０６とを含む。投影部２３０１は、例えばレーザー光源などの光源２３１１とスリット２３１２とを有する。また、カメラ２３０４は、レンズ２３４１とＣＣＤ２３４２と図示しないメモリを有する。計測部２３３０は、スリット光で被測定物体を走査するため、図示しない移動機構を保持している。当該移動機構は、計測部２３３０が例えば基準位置からどれだけ移動したかを表すデータを画像処理装置２３０５に出力する。なお、基準平面２３０２上において、スリット光による明暗パターンに直交する方向をＸ軸とし、明暗パターン方向をＹ軸とし、Ｚ軸方向にカメラ２３０４の光軸が設けられている。一方、ＣＣＤ２３４２の受光面においても、明暗パターンに直行する方向をｘ軸とし、明暗パターン方向をｙ軸とする。なお、大文字のＸＹＺについては実空間上の軸又は座標を表し、小文字のｘｙについては受光面における像の軸又は座標を表すものとする。
【０１２７】
画像処理装置２３０５には、カメラ２３０４の制御を行うカメラ制御部２３５１１と投影部２３０１の制御を行う投影制御部２３５１２とを有する計測部制御部２３５１と、校正時の画像処理などを実施するキャリブレーション処理部２３５３と、移動制御部２３０６に対して基準面の高さＺなどＣＮＣデータの設定を行うＣＮＣデータ設定部２３５４と、校正時に行われる処理の一部であるテンソル積型複合超曲面やテンソル積型複合曲面などの制御点を生成する制御点生成部２３５５と、測定時における被測定物体の実座標を算出する実座標算出部２３５６と、実座標算出部２３５６により算出された被測定物体の実座標の補間処理を実施する補間処理部２３５９とが含まれている。また、画像処理装置２３０５は、校正時に生成されるテンソル積型複合超曲面やテンソル積型複合曲面などの制御点データなどを格納する校正データ格納部２３５７と、測定時に生成される被測定物体の実座標データなどを格納する測定データ格納部２３５８とを管理している。
【０１２８】
１．校正時の処理
（１）高さＺを求めるための校正時の処理
高さＺを求めるための校正時の処理について図２４乃至図２６を用いて説明する。図２４は処理フローを示す。例えば、ユーザが画像処理装置２３０５に校正処理の実施を指示すると、ＣＮＣデータ設定部２３５４は、例えば予め設定されている高さＺ（＝Ｚ1）の設定データを移動制御部２３０６に出力し、移動制御部２３０６はＣＮＣデータ設定部２３５４から受け取った高さＺ（＝Ｚ1）の設定データに従って、基準平面２３０２の高さを高さＺ1になるように制御する。そして、計測部制御部２３５１の投影制御部２３５１２は、スリット光を基準平面２３０２ａに対して投影するように、投影部２３０１を制御する。投影制御部２３５１２の指示に応じて、投影部２３０１は、スリット光を投影する。また、計測部制御部２３５１のカメラ制御部２３５１１は、投影されたスリット光の明暗パターンを撮影するようにカメラ２３０４を制御する。カメラ制御部２３５１１の指示に応じてカメラ２３０４はＣＣＤ２３４２により撮影を行う。ＣＣＤ２３４２において得られた撮影画像のデータは、一旦カメラ２３０４内のメモリに格納された後、画像処理装置２３０５に出力される。画像処理装置２３０５は、例えば校正データ格納部２３５７などの記憶装置に撮影画像データを格納する。
【０１２９】
次に、ＣＮＣデータ設定部２３５４は、例えば予め設定されている別の高さＺ（＝Ｚ2）の設定データを移動制御部２３０６に出力し、移動制御部２３０６はＣＮＣデータ設定部２３５４から受け取った高さＺ（＝Ｚ2）の設定データに従って、基準平面２３０２の高さを高さＺ2になるように制御する。そして、計測部制御部２３５１の投影制御部２３５１２は、スリット光を基準平面２３０２ｂに対して投影するように、投影部２３０１を制御する。投影制御部２３５１２の指示に応じて、投影部２３０１はスリット光を投影する。なお、高さＺ1において一度投影しているので、そのまま投影しつづけている場合には投影制御部２３５１２及び投影部２３０１における処理は不要である。そして、計測部制御部２３５１のカメラ制御部２３５１１は、投影されたスリット光の明暗パターンを撮影するようにカメラ２３０４を制御する。カメラ制御部２３５１１の指示に応じてカメラ２３０４はＣＣＤ２３４２により撮影を行う。ＣＣＤ２３４２において得られた撮影画像のデータは、一旦カメラ４内のメモリに格納された後、画像処理装置２３０５に出力される。画像処理装置２３０５は、例えば校正データ格納部２３５７などの記憶装置に撮影画像データを格納する。
【０１３０】
以上の処理を基準平面２３０２の高さＺを変更して繰り返す（ステップＳ１０１）。このとき最低限１回基準平面２３０２の高さＺを変更する必要があるが、好ましくは２回以上変更する。多ければそれだけ近似がより正確になるので多い方が好ましい。
【０１３１】
ステップＳ１０１における撮影の概念図を図２５（ａ）乃至（ｃ）に示す。図２５（ａ）は、図２３に示したＺ軸と視線を垂直に直交させた場合の模式図である。投影部２３０１に設けられるスリット２３１２を介してレーザー等を照射することにより、基準平面２３０２にはスリット光２４１１が投影される。図２５（ａ）では、計測の下限となる高さは直線２４２２で示され、計測の上限となる高さは直線２４２１で示されている。直線２４２１及び２４２２に平行で高さが一定の直線が基準平面２３０２を表す。ここではＺ1からＺ4までの４つの基準平面が示されている。撮影範囲は、直線２４０１及び２４０２により囲まれた範囲であり、さらに計測の上限を表す直線２４２１と計測の下限を表す直線２４２２とによりさらに囲まれた範囲が計測範囲（計測ボリューム）となる。
【０１３２】
このような状況においてＣＣＤ２３４２においてレンズ２３４１を介して基準平面２３０２に投影されたスリット光の明暗パターンを撮像すると、例えば図２５（ｂ）及び図２５（ｃ）のようになる。なお、直線２４１１で表される部分のみで光が照射されており、またＣＣＤ２３４２のｘ軸方向の受光素子（丸で表す）が２０個、ｙ軸方向の受光素子が１０個と仮定する。また、図２５（ｂ）は基準平面２３０２ａでありＺ＝Ｚ1の場合を、図２５（ｃ）は基準平面２３０２ｂでありＺ＝Ｚ2の場合をそれぞれ示しているものとする。図２５（ｂ）及び図２５（ｃ）においては、白丸が光を検出した受光素子を、黒丸が光を検出しなかった受光素子を示している。また、グレーの丸が、中間の光強度を検出した受光素子を示している。このように高さＺが異なる場合には、異なる受光素子において、直線２４１１が表すスリット光の明ラインを検出している。すなわち、基準平面２３０２の高さが異なる場合には、スリット光の明ラインが検出される受光面上の座標は異なる。ここでは、スリット光に対応して１列の受光素子のみ光を検出し、その両脇に中間的な光強度を検出した受光素子が存在し、残りの受光素子では全く光を検出していない状態を示しているが、より多くの受光素子において中間的な光強度を検出する場合もある。また、スリット光の明ラインが、斜めのラインとして検出されたり、曲線的なラインとして検出される場合もある。
【０１３３】
図２４の処理フローの説明に戻って、キャリブレーション処理部２３５３は、ステップＳ１０１で撮影された撮影画像のデータから、受光面における受光座標（ｘ，ｙ）を特定し、例えばメインメモリ等の記憶装置に格納する（ステップＳ１０３）。例えば、スリット光の明ラインに垂直な方向における光強度の分布により、最も光強度が高いと推定される、受光面における受光座標（ｘ，ｙ）を算出する。そして、キャリブレーション処理部２３５３は、ステップＳ１０３で特定された受光面における受光座標（ｘ，ｙ）及びＣＮＣデータ設定部２３５４により設定された高さＺのデータとを用いて、高さＺと受光面における受光座標（ｘ，ｙ）とからなる組のデータを作成し、当該組のデータの集合を例えば校正データ格納部２３５７に格納する（ステップＳ１０５）。
【０１３４】
校正データ格納部２３５７に格納されるデータ・テーブルの一例を図２６に示す。図２６の例では、例えばＺ方向の格子番号を表すｉの列２６０１と、例えばスリット光の明ラインに沿った格子番号を表すｊの列２６０２と、受光座標のｘ座標値の列２６０３と、受光座標のｙ座標値の列２６０４と、高さＺ（Ｚ座標とも呼ぶ）の列２６０５とが設けられている。このように、各高さＺについて、受光面においてスリット光の明ラインに沿って特定された受光座標（ｘ，ｙ）が登録されるようになっている。
【０１３５】
そして、制御点生成部２３５５は、受光座標（ｘ，ｙ）と高さＺとからなる各組を入力点として、テンソル積型複合曲面を表すための制御点を生成し、校正データ格納部２３５７に格納する（ステップＳ１０７）。テンソル積型複合曲面は、テンソル積型複合超曲面より１次元低くく、ベジエ曲面、B-Spline曲面、有理B-Spline曲面、ＮＵＲＢＳ曲面などである。このようなテンソル積型複合曲面を用いることにより、計測範囲における高さと受光面の座標との関係をより正確に表すことができるようになる。テンソル積型複合曲面については、非特許文献５など様々な文献に記載されているため、ここでは詳細な説明を省略する。
【０１３６】
（２）Ｘ座標及びＹ座標を求めるための校正時の処理
この処理については第１の実施の形態と同じであるから説明を省略する。なお、Ｘ座標及びＹ座標を求めるための校正時の処理では、本実施の形態であっても、スリット光ではなく、基準平面２３０２全体に光を投影する。
【０１３７】
（３）測定時の処理
測定時には、ユーザはまず計測ボリューム内に被測定物体を設置する。そして画像処理装置２３０５に測定の指示を行う。そうすると、実座標算出部２３５６は、計測部２３３０から計測部位置のデータを取得し、例えばメインメモリ等の記憶装置に格納する（図２７：ステップＳ１１１）。そして、計測部制御部２３５１の投影制御部２３５１２はスリット光を計測ボリューム内に設置された被測定物体に対して投影するように、投影部２３０１を制御する。投影制御部２３５１２の指示に応じて、投影部２３０１は、スリット光を基準平面２３０２上の被測定物体に対して投影する。また、計測部制御部２３５１のカメラ制御部２３５１１は、当該スリット光の明暗パターンを撮影するようにカメラ２３０４を制御する。カメラ制御部２３５１１の指示に応じてカメラ２３０４はＣＣＤ２３４２により撮影を行う。ＣＣＤ２３４２において得られた撮影画像のデータは、一旦カメラ２３０４内のメモリに格納された後、画像処理装置２３０５に出力される。画像処理装置２３０５は、例えば測定データ格納部２３５８などの記憶装置に撮影画像データを格納する（ステップＳ１１３）。基本的にはステップＳ１０１と同じである。
【０１３８】
次に、実座標算出部２３５６は、例えば測定データ格納部２３５８に格納された撮影画像データに基づき、受光面における受光座標（ｘ，ｙ）を特定し、例えば測定データ格納部２３５８に格納する（ステップＳ１１５）。ステップＳ１０３と同じである。例えば、測定データ格納部２３５８に図２８に示すようなデータ・テーブルを設け、受光座標（ｘ，ｙ）を格納する。図２８の例では、受光座標の番号の列２７０１と、受光面のｘ座標の列２７０２と、ｙ座標の列２７０３の列と、Ｚ座標の列２７０４と、Ｘ座標の列２７０５と、Ｙ座標の列２７０６とが含まれる。この段階では、ｘ座標とｙ座標のデータのみが登録される。
【０１３９】
そして、実座標算出部２３５６は、受光面における受光座標（ｘ，ｙ）について多次元ニュートン法（例えばヤコビ反転算法）で高さＺを算出し、例えば測定データ格納部２３５８に格納されたデータ・テーブル（図２８）に格納する（ステップＳ１１７）。ステップＳ１０７において生成されたテンソル積型複合曲面を表すデータを用いて高さＺを算出する。なお、２次元のヤコビ反転算法については周知であり、ここでは詳細な説明を省略する。
【０１４０】
次に、実座標算出部２３５６は、各受光座標（ｘ，ｙ）について多次元ニュートン法（例えばヤコビ反転算法）で実体座標Ｘを算出し、例えば測定データ格納部２３５８に格納されたデータ・テーブル（図２８）に格納する（ステップＳ１１９）。ステップＳ２７に関連した説明ではΦとなっていた部分をＺに置き換え、図１８（ａ）に示した制御点のデータを用いて同様の処理を行えばよい。そうすれば、受光座標（ｘ，ｙ）と高さＺの組毎に実体空間のＸ座標を得ることができる。
【０１４１】
同様に、実体座標算出部２３５６は、受光座標（ｘ，ｙ）と高さＺとの各組について多次元ニュートン法（例えばヤコビ反転算法）で実体座標Ｙを算出し、例えば測定データ格納部２３５８に格納されたデータ・テーブル（図２８）に格納する（ステップＳ１２１）。ステップＳ２７に関連した説明ではΦとなっていた部分をＺに置き換え、図１８（ｂ）に示した制御点のデータを用いて同様の処理を行えばよい。そうすれば、受光座標（ｘ，ｙ）と高さＺの組毎に実体空間のＹ座標を得ることができる。
【０１４２】
そして、実座標算出部２３５６は、ステップＳ１１１において取得した計測部２３３０の位置のデータを用いて、ステップＳ１１９及びＳ１２１において算出されたＸ座標及びＹ座標を補正し、例えば測定データ格納部２３５８に格納されたデータ・テーブル（図２８）に格納する（ステップＳ１２３）。例えば、基準位置から計測部２３３０が移動機構によってΔｘ移動している場合には、Ｘ座標値＋Δｘというような補正を実施する。
【０１４３】
その後、計測部２３３０の全ての位置について処理を実施したか判断する（ステップＳ１２５）。すなわち、被測定物体の測定部分の全てをスリット光で走査したか判断する。もし、未処理の位置が存在する場合には、計測部制御部２３５１は、計測部２３３０に計測部２３３０の位置を１単位分変更するように命じ、計測部２３３０は移動機構によってその位置を１単位分変更する（ステップＳ１２７）。そしてステップＳ１１１に戻る。一方、全ての位置について処理したと判断された場合には、補間処理部２３５９は、補間処理を実施する（ステップＳ１２９）。図２９に補間処理の概要を示す。図２９において、丸印が図２８に示したデータ・テーブルに格納されている１レコードに対応する点を示している。このように隣接する点を結んで例えば三角形メッシュを構成し、三角形メッシュ内部の点については、三角形の３頂点の座標値（Ｘ，Ｙ，Ｚ）を補間することによって求める。求められたデータについては、例えば図２８に示したデータ・テーブルにそのためのレコードを追加登録する。但し、ステップＳ１２９はスキップしてもよい。
【０１４４】
以上のような処理を実施すれば、被測定物体のＸ座標値、Ｙ座標値及び高さＺを求めることができる。なお、光切断法においても、格子パターン投影法で示したＸ座標及びＹ座標の簡易な測定方法を採用することも可能である。
【０１４５】
このようにすれば、光切断法でも、絶対値計測が可能になり、レンズの歪曲収差の影響を受けないようにすることができ、スリット光が直線でなくともよく、光軸が合っていなくともよく、ＣＮＣ環境では校正を自動化でき、平面度、平行度及びＣＮＣ精度を向上させることができる。
【０１４６】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。すなわち、図４及び図２３に示した機能ブロック図は一例であって、特に画像処理装置５及び２３０５内の機能ブロックは必ずしもプログラムのモジュールに対応せず、他の機能分割を行っても良い。さらに、データ格納部についても例えば１つのハードディスクなどの記憶装置内を領域を分けて用いるようにしても良い。また、処理フローについても一部のステップについては同時に又は順番を入れ替えて実行することが可能となっている。
【０１４７】
また、テンソル積型複合超曲面又はテンソル積型複合曲面を用いるような説明をしたが、例えばその射影変換を施したものであっても同様に処理できる。
【０１４８】
（付記１）
所定の格子パターンを投影する投影手段と、
撮影手段と、
校正時に複数の高さの面毎に前記投影手段により当該面上に投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面において各前記面に共通の縦方向個数及び横方向個数存在する点の座標と当該点の光強度と前記高さとからなる組を含む第１の集合を生成し、当該第１の集合のデータを記憶装置に格納する手段と、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における前記点の座標と前記位相角と前記高さとからなる組を含み且つ各組をノードとして矩形グリッドを構成するための第２の集合のデータを記憶装置に格納する手段と、
を有する計測装置。
【０１４９】
（付記２）
前記第２の集合のデータからテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する超曲面生成手段と、
をさらに有する付記１記載の計測装置。
【０１５０】
（付記３）
前記超曲面生成手段が、前記第２の集合のデータを入力点として用い、前記テンソル積型複合超曲面の制御点を算出する
ことを特徴とする付記２記載の計測装置。
【０１５１】
（付記４）
測定時に被測定物体に対して前記投影手段により投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面における座標と光強度の組のデータを抽出し、記憶装置に格納する手段と、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における座標と前記位相角の組のデータを記憶装置に格納する手段と、
前記テンソル積型複合超曲面を表すデータを用いて、前記受光面における座標と前記位相角の組のデータに対応する高さデータを補間計算し、記憶装置に格納する補間手段と、
をさらに有する付記２記載の計測装置。
【０１５２】
（付記５）
校正時に１又は複数の高さを有し且つ実座標が判明している複数のポイントを含む面毎に前記投影手段による格子パターンの投影なしに前記撮影手段により撮影された当該面の撮影画像から、前記撮影手段の受光面における座標と前記ポイントの実座標と前記高さとからなる組を複数含む第３の集合を生成し、当該第３の集合のデータを記憶装置に格納する手段、
をさらに有する付記４記載の計測装置。
【０１５３】
（付記６）
前記第３の集合のデータから第２のテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する第２超曲面生成手段、
をさらに有する付記５記載の計測装置。
【０１５４】
（付記７）
前記第３の集合に含まれる各組のデータのうち前記高さのデータ以外のデータを用いてテンソル積型複合曲面を表すデータを生成し、記憶装置に格納する曲面生成手段、
をさらに有する付記５記載の計測装置。
【０１５５】
（付記８）
前記第２のテンソル積型複合超曲面を表すデータを用いて、前記補間手段により生成された高さデータと前記受光面における対応座標の組のデータに対応する実座標のデータを補間計算し、記憶装置に格納する手段、
をさらに有する付記６記載の計測装置。
【０１５６】
（付記９）
前記テンソル積型複合曲面を表すデータを用いて、前記受光面における対応座標のデータに対応する補正前の実座標データを補間計算し、記憶装置に格納する手段と、
前記補間手段により生成された高さデータと前記校正時における高さのデータとに基づき、前記補正前の実座標データを補正し、記憶装置に格納する手段と、
をさらに有する付記７記載の計測装置。
【０１５７】
（付記１０）
前記実座標が判明している複数のポイントが、実体格子パターンに含まれるポイントであることを特徴とする付記５乃至９のいずれか１つ記載の計測装置。
【０１５８】
（付記１１）
前記実体格子パターンが、前記面においてＸ座標に平行な第１実体格子パターンと前記面のＹ座標に平行な第２実体格子パターンと前記第１及び第２実体格子パターンの組み合わせとのいずれかであることを特徴とする付記１０記載の計測装置。
【０１５９】
（付記１２）
スリット光を投影する投影手段と、
撮影手段と、
校正時に複数の高さの面毎に前記投影手段により当該面上に投影され且つ前記撮影手段により撮影された投影パターンの撮影画像から、前記撮影手段の受光面における、スリット光が投影された部分に係る点の座標と前記高さとからなる組を含む集合データを生成し、記憶装置に格納する手段と、
を有する計測装置。
【０１６０】
（付記１３）
前記記憶装置に格納された前記集合データからテンソル積型複合曲面を表すデータを生成し、記憶装置に格納する曲面生成手段
をさらに有する付記１２記載の計測装置。
【０１６１】
（付記１４）
前記曲面生成手段が、前記集合データを入力点として用い、前記テンソル積型複合曲面の制御点を算出する
ことを特徴とする付記１３記載の計測装置。
【０１６２】
（付記１５）
測定時に被測定物体に対して前記投影手段により投影され且つ前記撮影手段により撮影された投影パターンの撮影画像から、前記撮影手段の受光面における、スリット光が投影された部分に係る点の座標データを抽出し、記憶装置に格納する手段と、
前記テンソル積型複合曲面を表すデータを用いて、前記受光面における座標データに対応する高さデータを補間計算し、記憶装置に格納する補間手段と、
をさらに有する付記１３記載の計測装置。
【０１６３】
（付記１６）
校正時に１又は複数の高さを有し且つ実座標が判明している複数のポイントを含む面毎に前記投影手段による前記スリット光の投影なしに前記撮影手段により撮影された当該面の撮影画像から、前記撮影手段の受光面における座標と前記ポイントの実座標と前記高さとからなる組を複数含む第２の集合を生成し、当該第２の集合のデータを記憶装置に格納する手段、
をさらに有する付記１５記載の計測装置。
【０１６４】
（付記１７）
前記第２の集合のデータからテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する超曲面生成手段、
をさらに有する付記１６記載の計測装置。
【０１６５】
（付記１８）
前記テンソル積型複合超曲面を表すデータを用いて、前記補間手段により生成された高さデータと前記受光面における対応座標の組のデータに対応する第１の実座標のデータを補間計算し、記憶装置に格納する手段と、
前記第１の実座標のデータを、前記投影手段及び撮影手段の全体の座標系における位置に従って修正し、当該修正結果を記憶装置に格納する手段と、
をさらに有する付記１７記載の計測装置。
【０１６６】
（付記１９）
前記修正結果及び対応する前記高さデータを用いて、測定されなかった点における座標データを補間計算する手段
をさらに有する付記１８記載の計測装置。
【０１６７】
（付記２０）
所定の格子パターンを投影する投影手段と、
撮影手段と、
校正時に複数の高さの面毎に前記投影手段により当該面上に投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面において各前記面に共通のグラフ構造のノードとなる点の座標と当該点の光強度と前記高さとからなる組を含む第１の集合を生成し、当該第１の集合のデータを記憶装置に格納する手段と、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における前記点の座標と前記位相角と前記高さとからなる組を含み且つ各組をノードとしてグリッドを構成するための第２の集合のデータを記憶装置に格納する手段と、
を有する計測装置。
【０１６８】
（付記２１）
前記第２の集合のデータから複合自由超曲面を表すデータを生成し、記憶装置に格納する自由超曲面生成手段と、
をさらに有する付記２０記載の計測装置。
【０１６９】
（付記２２）
測定時に被測定物体に対して前記投影手段により投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面における座標と光強度の組のデータを抽出し、記憶装置に格納する手段と、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における座標と前記位相角の組のデータを記憶装置に格納する手段と、
前記複合自由超曲面を表すデータを用いて、前記受光面における座標と前記位相角の組のデータに対応する高さデータを補間計算し、記憶装置に格納する補間手段と、
をさらに有する付記２１記載の計測装置。
【０１７０】
（付記２３）
付記１乃至２２のいずれか１つ記載の計測装置と、
前記面の高さを制御する手段と、
を有するコンピュータ数値制御装置。
【０１７１】
（付記２４）
校正時に複数の高さの面毎に撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面において各前記面に共通の縦方向個数及び横方向個数存在する点の座標と当該点の光強度と前記高さとからなる組を含む第１の集合を生成し、当該第１の集合のデータを記憶装置に格納するステップと、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における前記点の座標と前記位相角と前記高さとからなる組を含み且つ各組をノードとして矩形グリッドを構成するための第２の集合のデータを記憶装置に格納するステップと、
をコンピュータに実行させるためのプログラム。
【０１７２】
（付記２５）
前記第２の集合のデータからテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納する超曲面生成ステップ、
をさらにコンピュータに実行させるための付記２４記載のプログラム。
【０１７３】
（付記２６）
測定時に被測定物体に対して投影され且つ前記撮影手段により撮影された投影格子パターンの撮影画像から、前記撮影手段の受光面における座標と光強度の組のデータを抽出し、記憶装置に格納するステップと、
前記光強度を前記投影格子パターンの位相角に変換し、前記受光面における座標と前記位相角の組のデータを記憶装置に格納するステップと、
前記テンソル積型複合超曲面を表すデータを用いて、前記受光面における座標と前記位相角の組のデータに対応する高さデータを補間計算し、記憶装置に格納する補間ステップと、
をさらにコンピュータに実行させるための付記２５記載のプログラム。
【０１７４】
（付記２７）
校正時に複数の高さの面毎に投影手段により当該面上に投影され且つ撮影手段により撮影された、スリット光の投影パターンの撮影画像から、前記撮影手段の受光面における、前記投影像上の点の座標と前記高さとからなる組を含む集合データを生成し、記憶装置に格納するステップと
前記記憶装置に格納された前記集合データからテンソル積型複合曲面を表すデータを生成し、記憶装置に格納するステップと、
をコンピュータに実行させるためのプログラム。
【０１７５】
（付記２８）
測定時に被測定物体に対して前記投影手段により投影され且つ前記撮影手段により撮影された、スリット光の投影パターンの撮影画像から、前記撮影手段の受光面における、スリット光が投影された部分に係る点の座標データを抽出し、記憶装置に格納する手段と、
前記テンソル積型複合曲面を表すデータを用いて、前記受光面における座標データに対応する高さデータを補間計算し、記憶装置に格納する補間手段と、
をさらにコンピュータに実行させるための付記２７記載のプログラム。
【０１７６】
（付記２９）
校正時に１又は複数の高さを有し且つ実座標が判明している複数のポイントを含む面毎に前記投影手段による前記スリット光の投影なしに前記撮影手段により撮影された当該面の撮影画像から、前記撮影手段の受光面における座標と前記ポイントの実座標と前記高さとからなる組を複数含む第２の集合を生成し、当該第２の集合のデータを記憶装置に格納するステップと、
前記第２の集合からテンソル積型複合超曲面を表すデータを生成し、記憶装置に格納するステップと、
をさらにコンピュータに実行させるための付記２８記載のプログラム。
【０１７７】
（付記３０）
前記テンソル積型複合超曲面を表すデータを用いて、前記補間手段により生成された高さデータと前記受光面における対応座標の組のデータに対応する第１の実座標のデータを補間計算し、記憶装置に格納するステップと、
前記第１の実座標のデータを、前記投影手段及び撮影手段の全体の座標系における位置に従って修正し、当該修正結果を記憶装置に格納するステップと、
をさらにコンピュータに実行させるための付記２９記載のプログラム。
【図面の簡単な説明】
【０１７８】
【図１】従来技術の光切断法における原理概念図である。
【図２】従来技術の光切断法における測定計算の概念図である。
【図３】従来技術の格子パターン投影法における装置構成図である。
【図４】本発明の第１の実施の形態に係る格子パターン投影法を実施する計測装置を含むＣＮＣ装置の機能ブロック図である。
【図５】高さＺ測定のための校正処理時の処理フローの一例を示す図である。
【図６】（ａ）は格子パターンの投影及び撮影について説明するための模式図である。（ｂ）及び（ｃ）は撮影結果の画像例を示す図である。
【図７】校正データ格納部に格納されるデータの一例を示す図である。
【図８】テンソル積型複合超曲面の制御点を生成する基となる入力点の構造を表す模式図である。
【図９】制御点生成処理の処理フローの一例を示す図である。
【図１０】校正データ格納部に格納されるデータの一例を示す図である。
【図１１】（ａ）及び（ｂ）はベジエ曲線における制御点の生成処理を説明するための図である。
【図１２】B-Spline曲線における制御点の生成処理を説明するための図である。
【図１３】高さＺ測定のための測定時の処理フローの一例を示す図である。
【図１４】測定データ格納部に格納されるデータの一例を示す図である。
【図１５】Ｘ座標及びＹ座標の測定のための校正処理時の処理フローの一例を示す図である。
【図１６】（ａ）乃至（ｃ）は実体格子パターンの一例を示す図である。
【図１７】校正データ格納部に格納されるデータの一例を示す図である。
【図１８】（ａ）及び（ｂ）は校正データ格納部に格納されるデータの一例を示す図である。
【図１９】測定処理時における処理フローの一例を示す図である。
【図２０】測定データ格納部に格納されるデータの一例を示す図である。
【図２１】Ｘ座標及びＹ座標の測定のための校正処理時の第２の処理フローの一例を示す図である。
【図２２】Ｘ座標及びＹ座標の測定処理時における第２の処理フローの一例を示す図である。
【図２３】本発明の第２の実施の形態に係る光切断法を実施する計測装置を含むＣＮＣ装置の機能ブロック図である。
【図２４】高さＺを測定するための校正時の処理フローを示す図である。
【図２５】（ａ）はスリット光の投影及び撮影について説明するための模式図である。（ｂ）及び（ｃ）は撮影結果の画像例を示す図である。
【図２６】校正データ格納部に格納されるデータの一例を示す図である。
【図２７】測定時の処理フローを示す図である。
【図２８】測定データ格納部に格納されているデータの一例を示す図である。
【図２９】補間処理の概要を説明するための図である。
【符号の説明】
【０１７９】
１  液晶プロジェクタ    ２，２３０２  基準平面    ４，２３０４  カメラ
５，２３０５  画像処理装置    ６，２３０６  移動制御部
１１，２３０１  投影部    １２  液晶パネル    １３  レンズ
４１，２３４１  レンズ    ４２，２３４２  ＣＣＤ
５１，２３５１１  カメラ制御部
５２，２３５１２  投影制御部
５３，２３５３  キャリブレーション処理部
５４，２３５４  ＣＮＣデータ設定部
５５，２３５５  制御点生成部
５６，２３５６  実座標算出部
５７，２３５７  校正データ格納部
５８，２３５８  測定データ格納部
２３５１  計測部制御部
２３３０  計測部
２３１１  光源
２３１２  スリット
２３５９  補間処理部
【図１】
2005098985.tif 000011
【図２】
2005098985.tif 000012
【図３】
2005098985.tif 000013
【図４】
2005098985.tif 000014
【図５】
2005098985.tif 000015
【図６】
2005098985.tif 000016
【図７】
2005098985.tif 000017
【図８】
2005098985.tif 000018
【図９】
2005098985.tif 000019
【図１０】
2005098985.tif 000020
【図１１】
2005098985.tif 000021
【図１２】
2005098985.tif 000022
【図１３】
2005098985.tif 000023
【図１４】
2005098985.tif 000024
【図１５】
2005098985.tif 000025
【図１６】
2005098985.tif 000026
【図１７】
2005098985.tif 000027
【図１８】
2005098985.tif 000028
【図１９】
2005098985.tif 000029
【図２０】
2005098985.tif 000030
【図２１】
2005098985.tif 000031
【図２２】
2005098985.tif 000032
【図２３】
2005098985.tif 000033
【図２４】
2005098985.tif 000034
【図２５】
2005098985.tif 000035
【図２６】
2005098985.tif 000036
【図２７】
2005098985.tif 000037
【図２８】
2005098985.tif 000038
【図２９】
2005098985.tif 000039