(57)【要約】【課題】  カメラ付き３次元座標計測用多関節アームシステムを用いて撮影画像から３次元モデリングを行うためには、正確なカメラ位置情報が必要である。【解決手段】  回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係は、回転台座標系からアーム基準座標系への変換行列Ｍ１により規定され、カメラ設置軸２０ｄとカメラ３０の位置関係は、カメラ設置座標系からカメラ座標系への変換行列Ｍ２により規定される。これらの位置関係を事前にキャリブレーションする。アーム基準関節１８ａとカメラ設置関節１８ｃの位置関係を規定するアーム基準座標系からカメラ設置軸座標系への変換行列Ｍａはカメラ付き３次元座標計測用多関節アームシステム４０のアーム出力データから得られる。任意のアームポジションにおける回転台−カメラ座標変換行列Ｍ０は、計算式Ｍ０＝Ｍ２・Ｍａ・Ｍ１により算出される。【選択図】        図８
2006098065.tif 000002
【特許請求の範囲】
【請求項１】
カメラ付き３次元座標計測用多関節アームと対象物を載せるための台とを含む３次元モデリング装置をキャリブレーションする装置であって、
前記台上に設置された較正用パネルに設けられた計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正を行うアーム設置位置較正部と、
前記台上に設置された前記較正用パネルに設けられた参照マークを前記カメラにより撮影して取得される前記参照マークの座標値に基づいて、撮影時における前記台に対する前記カメラの位置情報を算出する撮影位置算出部と、
前記較正用パネルに設けられた前記参照マークを前記カメラにより撮影したときの３次元座標計測用多関節アームの位置情報を算出するアーム位置算出部と、
前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、撮影時における前記台に対する前記カメラの位置情報、および前記３次元座標計測用多関節アームの位置情報を利用して、前記カメラ付き３次元座標計測用多関節アームのカメラ設置関節と前記カメラの位置関係の較正を行うカメラ設置位置較正部とを含むことを特徴とするキャリブレーション装置。
【請求項２】
前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、および前記カメラ設置関節と前記カメラの位置関係の較正結果を利用して、任意のアーム位置における前記台に対する前記カメラの位置情報を算出するカメラ位置算出部をさらに含むことを特徴とする請求項１に記載のキャリブレーション装置。
【請求項３】
前記台は、対象物を載せて回転させることのできる回転台であり、
前記回転台の回転角を異ならせて前記較正用パネル上の前記計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記較正用パネルの前記回転台に対するずれを補正する較正パネル補正部をさらに含むことを特徴とする請求項１または２に記載のキャリブレーション装置。
【請求項４】
前記カメラにより撮影された画像から前記台に置かれた対象物に投影されたスリット光を抽出するスリット光抽出部と、
投影されたスリット光の座標位置を照射されたスリット光のつくる平面方程式に当てはめることにより、前記カメラに対するスリット光の投影位置を較正するスリット光位置較正部をさらに含むことを特徴とする請求項１から３のいずれかに記載のキャリブレーション装置。
【請求項５】
前記較正用パネルに設けられた複数の前記参照マークは、ランダムに配置されていることを特徴とする請求項１から４のいずれかに記載のキャリブレーション装置。
【請求項６】
前記較正用パネルに設けられた複数の前記参照マークは、ランダムに複数のタイプに分類されていることを特徴とする請求項１から４のいずれかに記載のキャリブレーション装置。
【請求項７】
前記較正用パネルに設けられた複数の前記参照マークは、複数のタイプに分類されており、前記計測点は異なるタイプの前記参照マークに対応づけて設けられていることを特徴とする請求項１から４のいずれかに記載のキャリブレーション装置。
【請求項８】
カメラが設置された３次元座標計測用多関節アームと、
前記カメラにより撮影される対象物を載せるための台と、
前記台に設置される較正用パネルとを含み、
前記較正用パネルは、
前記台と前記３次元座標計測用多関節アームの位置関係の較正を行うために前記３次元座標計測用多関節アームによって計測される複数の計測点と、
前記台に対する前記カメラの位置情報を算出するために、前記カメラによって撮影される複数の参照マークとを含むことを特徴とする３次元モデリング装置。
【請求項９】
前記較正用パネルに設けられた複数の前記参照マークは、ランダムに複数種類の色によって色分けされていることを特徴とする請求項８に記載の３次元モデリング装置。
【請求項１０】
前記較正用パネルに設けられた複数の前記参照マークは、複数種類の色によって色分けされており、前記計測点は異なる色の前記参照マーク内に設けられていることを特徴とする請求項８に記載の３次元モデリング装置。
【請求項１１】
カメラ付き３次元座標計測用多関節アームと対象物を載せるための台とを含む３次元モデリング装置と、
前記３次元モデリング装置をキャリブレーションするキャリブレーション装置とを含み、
前記キャリブレーション装置は、
前記台上に設置された較正用パネルに設けられた計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正を行うアーム設置位置較正部と、
前記台上に設置された前記較正用パネルに設けられた参照マークを前記カメラにより撮影して取得される前記参照マークの座標値に基づいて、撮影時における前記台に対する前記カメラの位置情報を算出する撮影位置算出部と、
前記較正用パネルに設けられた前記参照マークを前記カメラにより撮影したときの３次元座標計測用多関節アームの位置情報を算出するアーム位置算出部と、
前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、撮影時における前記台に対する前記カメラの位置情報、および前記３次元座標計測用多関節アームの位置情報を利用して、前記カメラ付き３次元座標計測用多関節アームのカメラ設置関節と前記カメラの位置関係の較正を行うカメラ設置位置較正部とを含むことを特徴とする３次元モデリングシステム。
【請求項１２】
前記台に載せられる対象物を撮影するための、撮影位置が固定された固定式カメラをさらに含み、
前記キャリブレーション装置の前記撮影位置算出部は、前記固定式カメラを当該システムに追加してシステムを拡張するために、前記台上に設置された前記較正用パネルに設けられた参照マークを前記固定式カメラにより撮影して取得される前記参照マークの座標値に基づいて、前記台に対する前記固定式カメラの位置関係を算出することを特徴とする請求項１１に記載の３次元モデリングシステム。
【請求項１３】
前記台に載せられる対象物を計測するためのカメラ無し３次元座標計測用多関節アームをさらに含み、
前記キャリブレーション装置の前記アーム設置位置較正部は、前記３次元座標計測用多関節アームを当該システムに追加してシステムを拡張するために、前記台上に設置された較正用パネルに設けられた計測点を前記カメラ無し３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ無し３次元座標計測用多関節アームの位置関係の較正を行うことを特徴とする請求項１１に記載の３次元モデリングシステム。
【請求項１４】
カメラ付き３次元座標計測用多関節アームと対象物を載せるための台とを含む３次元モデリング装置をキャリブレーションする方法であって、
前記台上に設置された較正用パネルに設けられた計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正を行うステップと、
前記台上に設置された前記較正用パネルに設けられた参照マークを前記カメラにより撮影して取得される前記参照マークの座標値に基づいて、撮影時における前記台に対する前記カメラの位置情報を算出するステップと、
前記較正用パネルに設けられた前記参照マークを前記カメラにより撮影したときの３次元座標計測用多関節アームの位置情報を算出するステップと、
前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、撮影時における前記台に対する前記カメラの位置情報、および前記３次元座標計測用多関節アームの位置情報を利用して、前記カメラ付き３次元座標計測用多関節アームのカメラ設置関節と前記カメラの位置関係の較正を行うステップとを含むことを特徴とするキャリブレーション方法。
【請求項１５】
カメラ付き３次元座標計測用多関節アームと対象物を載せるための台とを含む３次元モデリング装置をキャリブレーションするためのプログラムであって、
前記台上に設置された較正用パネルに設けられた計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正を行うステップと、
前記台上に設置された前記較正用パネルに設けられた参照マークを前記カメラにより撮影して取得される前記参照マークの座標値に基づいて、撮影時における前記台に対する前記カメラの位置情報を算出するステップと、
前記較正用パネルに設けられた前記参照マークを前記カメラにより撮影したときの３次元座標計測用多関節アームの位置情報を算出するステップと、
前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、撮影時における前記台に対する前記カメラの位置情報、および前記３次元座標計測用多関節アームの位置情報を利用して、前記カメラ付き３次元座標計測用多関節アームのカメラ設置関節と前記カメラの位置関係の較正を行うステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元モデリング技術に関し、特に対象物を撮影した画像から３次元形状を生成する３次元モデリング装置および３次元モデリングシステム、ならびに３次元モデリング装置をキャリブレーションするキャリブレーション装置および方法に関する。
【背景技術】
【０００２】
コンピュータグラフィックスが各種分野で利用されており、３次元ＣＡＤなど高精度の３次元グラフィックス画像が必要とされるビジネスアプリケーションもある。また、コンピュータゲームなどのエンドユーザアプリケーションにおいても、ユーザの３次元グラフィックス画像に対する品質の要求が高くなっており、より複雑な３次元形状を画面上で表現したいというニーズがある。複雑で精細な３次元グラフィックス画像を描画するためには、実際の３次元物体をモデル化し、その３次元モデルデータを入力する必要があるが、そのデータ量は膨大であり、初期入力の効率化が望まれる。そこで、対象物体を撮影して３次元形状データを自動取得する３次元スキャナが利用されている。
【０００３】
たとえば、特許文献１には、位置検出用マークを付与した回転台上に載せた対象物体を回転台とともにカメラで撮影し、その複数の撮影画像の各画像における位置検出マークから撮影位置情報を、またその撮影画像からシルエット画像を得て、立体モデルを生成する３次元モデリング装置が開示されている。
【特許文献１】特開２００１−１０８４２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の３次元モデリング装置では、カメラの位置が固定されており、複雑な形状の対象物体をいろいろな角度から撮影して３次元形状を取得するためには不向きであった。カメラ位置の自由度を上げるためにはカメラを３次元座標計測用多関節アームに取り付けることが考えられるが、３次元座標計測用多関節アームでカメラの位置を移動させた場合、撮影毎にカメラの正確な位置情報が必要となる。３次元モデリングにおいては、撮影画像から３次元形状を再現するため、わずかな誤差の影響で３次元形状の再現精度が悪くなる。カメラ付き３次元座標計測用多関節アームを用いた３次元モデリングシステムでは、システムをキャリブレーションしてカメラの位置情報を正確に効率良く算出することが不可欠である。
【０００５】
本発明はこうした状況に鑑みてなされたもので、その目的は、撮影位置に自由度をもたせることのできる３次元モデリング技術を提供することにある。また別の目的は、撮影位置に自由度をもたせた３次元モデリング装置のキャリブレーション技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様のキャリブレーション装置は、カメラ付き３次元座標計測用多関節アームと対象物を載せるための台とを含む３次元モデリング装置をキャリブレーションする装置であって、前記台上に設置された較正用パネルに設けられた計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正を行うアーム設置位置較正部と、前記台上に設置された前記較正用パネルに設けられた参照マークを前記カメラにより撮影して取得される前記参照マークの座標値に基づいて、撮影時における前記台に対する前記カメラの位置情報を算出する撮影位置算出部と、前記較正用パネルに設けられた前記参照マークを前記カメラにより撮影したときの３次元座標計測用多関節アームの位置情報を算出するアーム位置算出部と、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、撮影時における前記台に対する前記カメラの位置情報、および前記３次元座標計測用多関節アームの位置情報を利用して、前記カメラ付き３次元座標計測用多関節アームのカメラ設置関節と前記カメラの位置関係の較正を行うカメラ設置位置較正部とを含む。
【０００７】
この態様によると、カメラの位置の自由度の高いカメラ付き３次元座標計測用多関節アームと対象物を載せるための台を含む３次元モデリング装置のキャリブレーションを効率良く行うことができる。
【０００８】
前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、および前記カメラ設置関節と前記カメラの位置関係の較正結果を利用して、任意のアーム位置における前記台に対する前記カメラの位置情報を算出するカメラ位置算出部をさらに含んでもよい。これにより、任意のアーム位置において対象物を撮影するときの正確なカメラ位置を得ることができる。
【０００９】
前記台は、対象物を載せて回転させることのできる回転台であってもよい。回転台を用いることにより、カメラ位置の自由度がさらに高くなる。前記回転台の回転角を異ならせて前記較正用パネル上の前記計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記較正用パネルの前記回転台に対するずれを補正する較正パネル補正部をさらに含んでもよい。「前記較正用パネルの前記回転台に対するずれ」には、較正用パネルの前記回転台の回転中心からの位置ずれ、前記回転台の回転平面に対する傾きなどが含まれる。
【００１０】
前記カメラにより撮影された画像から前記台に置かれた対象物に投影されたスリット光を抽出するスリット光抽出部と、投影されたスリット光の座標位置を照射されたスリット光のつくる平面方程式に当てはめることにより、前記カメラに対するスリット光の投影位置を較正するスリット光位置較正部をさらに含んでもよい。対象物の３次元形状データの取得にスリット光投影法を用いる場合において、スリット光位置をキャリブレーションして高い精度で３次元形状データを取得することができる。
【００１１】
前記較正用パネルに設けられた複数の前記参照マークは、ランダムに配置されていてもよい。参照マークの配置のランダム性により、任意の個数の参照マークからなるパターンが、異なる角度から撮影した場合に同一の形状になることを避けることができ、不定性を排除することができる。また、前記較正用パネルに設けられた複数の前記参照マークは、ランダムに複数のタイプに分類されていてもよい。較正用パネルに設けられた複数の参照マークが、仮に何らかの規則性をもって、たとえば台の中心に関して対称に配置されていたとしても、参照マークがランダムに複数のタイプに分類されていることより、タイプの違いによって、撮影方向による不定性を排除することができる。また、撮影位置算出部は、参照マークのタイプにもとづいて、カメラにより撮影された画像から抽出される参照マークと較正用パネルの参照マークの対応関係を判定して、無意味な組み合わせを処理対象から外すことができる。
【００１２】
前記較正用パネルに設けられた複数の前記参照マークは、複数のタイプに分類されており、前記計測点は異なるタイプの前記参照マークに対応づけて設けられていてもよい。たとえば、参照マークが色や形状によって分類され、計測点は参照マーク内に設けられてもよい。これにより、計測点を参照マークの色や形状などのタイプで特定することができ、また、複数の計測点を計測する順序を参照マークのタイプにより指定することができる。
【００１３】
本発明の別の態様は、３次元モデリング装置である。この３次元モデリング装置は、カメラが設置された３次元座標計測用多関節アームと、前記カメラにより撮影される対象物を載せるための台と、前記台に設置される較正用パネルとを含み、前記較正用パネルは、前記台と前記３次元座標計測用多関節アームの位置関係の較正を行うために前記３次元座標計測用多関節アームによって計測される複数の計測点と、前記台に対する前記カメラの位置情報を算出するために、前記カメラによって撮影される複数の参照マークとを含む。
【００１４】
この態様によると、カメラの位置の設定の自由度を高め、精細な３次元モデリングが可能となる。また、較正用パネルを用いて、カメラ、３次元座標計測用多関節アーム、および対象物を載せるための台の位置関係を効率良くキャリブレーションすることができる。
【００１５】
本発明の別の態様は、３次元モデリングシステムである。この３次元モデリングシステムは、カメラ付き３次元座標計測用多関節アームと対象物を載せるための台とを含む３次元モデリング装置と、前記３次元モデリング装置をキャリブレーションするキャリブレーション装置とを含む。前記キャリブレーション装置は、前記台上に設置された較正用パネルに設けられた計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正を行うアーム設置位置較正部と、前記台上に設置された前記較正用パネルに設けられた参照マークを前記カメラにより撮影して取得される前記参照マークの座標値に基づいて、撮影時における前記台に対する前記カメラの位置情報を算出する撮影位置算出部と、前記較正用パネルに設けられた前記参照マークを前記カメラにより撮影したときの３次元座標計測用多関節アームの位置情報を算出するアーム位置算出部と、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、撮影時における前記台に対する前記カメラの位置情報、および前記３次元座標計測用多関節アームの位置情報を利用して、前記カメラ付き３次元座標計測用多関節アームのカメラ設置関節と前記カメラの位置関係の較正を行うカメラ設置位置較正部とを含む。
【００１６】
本発明のさらに別の態様は、キャリブレーション方法である。この方法は、カメラ付き３次元座標計測用多関節アームと対象物を載せるための台とを含む３次元モデリング装置をキャリブレーションする方法であって、前記台上に設置された較正用パネルに設けられた計測点を前記カメラ付き３次元座標計測用多関節アームによって計測して取得される前記計測点の座標値に基づいて、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正を行うステップと、前記台上に設置された前記較正用パネルに設けられた参照マークを前記カメラにより撮影して取得される前記参照マークの座標値に基づいて、撮影時における前記台に対する前記カメラの位置情報を算出するステップと、前記較正用パネルに設けられた前記参照マークを前記カメラにより撮影したときの３次元座標計測用多関節アームの位置情報を算出するステップと、前記台と前記カメラ付き３次元座標計測用多関節アームの位置関係の較正結果、撮影時における前記台に対する前記カメラの位置情報、および前記３次元座標計測用多関節アームの位置情報を利用して、前記カメラ付き３次元座標計測用多関節アームのカメラ設置関節と前記カメラの位置関係の較正を行うステップとを含む。
【００１７】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１８】
本発明によれば、撮影位置を自由に変えて対象物体を撮影して３次元形状を効率良く、高い精度で取得することができる。また、撮影位置に自由度をもたせた３次元モデリング装置のキャリブレーションを効率良く、正確に行うことができる。
【発明を実施するための最良の形態】
【００１９】
図１は、実施の形態に係る３次元モデリングシステム３００の構成図である。３次元モデリングシステム３００は、カメラ付き３次元座標計測用多関節アームシステム４０、回転台１０、およびカメラ付き３次元座標計測用多関節アームシステム４０に接続された３次元データ処理装置１００を含む。
【００２０】
カメラ付き３次元座標計測用多関節アームシステム４０は、５つの回転軸をもつ多関節アーム２０ａ〜２０ｄにカメラ３０を設置したものである。支持台１２に設置された第１アーム２０ａは、第１の回転方向２１に回転可能である。第２アーム２０ｂは、第１関節１８ａを介して第１アーム２０ａと接続しており、第１関節１８ａを中心として第２の回転方向２２に回転可能である。第１関節１８ａをアーム基準関節ともいう。第３アーム２０ｃは、第２関節１８ｂを介して第２アーム２０ｂと接続しており、第２関節１８ｂを中心とした第３の回転方向２３およびアーム軸の回りの第４の回転方向２４に回転可能である。
【００２１】
第３アーム２０ｃの先端の第３関節１８ｃにはカメラ設置軸２０ｄが設けられ、カメラ設置軸２０ｄは、軸回りの第５の回転方向２５に回転可能である。第３関節１８ｃをカメラ設置関節ともいう。カメラ設置軸２０ｄには、カメラ３０、ラインレーザ３６、および計測用プローブ３２が設けられている。
【００２２】
回転台１０は、３次元モデリングの対象物体を載せるものであり、回転軸を中心に符号１１に示した回転方向に回転可能である。
【００２３】
３次元データ処理装置１００は、カメラ付き３次元座標計測用多関節アームシステム４０の各関節の回転角のデータや各軸の法線ベクトル、位置ベクトルのデータなどのアーム出力データ、カメラ３０により撮影された画像データ、および計測用プローブ３２による計測データをカメラ付き３次元座標計測用多関節アームシステム４０から受け取り、システムのキャリブレーションおよび３次元モデルデータの生成を行う。
【００２４】
図２は、カメラ設置軸２０ｄの詳細な構成図である。カメラ設置軸２０ｄは回転軸２６の回りに回転可能である。カメラ設置軸２０ｄには取り付け部３７が設けられ、カメラ３０およびラインレーザ３６が取り付け部３７に固定されている。カメラ３０およびラインレーザ３６は図示しない接続ケーブルを介してそれぞれの制御ユニットに接続されている。また、カメラ設置軸２０ｄには計測用プローブ３２が設けられ、対象物体の表面などに計測用プローブ３２の先端を当てることにより、計測対象の点の位置情報を取得することができる。
【００２５】
図３は、回転台１０上に設けられたキャリブレーションパネルを説明する図である。回転台１０の天板がキャリブレーションパネルを兼ねてもよく、キャリブレーション時に回転台１０の上にキャリブレーションパネルを載せてもよい。キャリブレーションパネルは、カメラ付き３次元座標計測用多関節アームシステム４０の計測用プローブ３２により計測するための複数の計測点１５と、カメラ３０により撮影するための複数の参照マーク１６からなる参照パターンが設けられている。計測点１５は、計測用プローブ３２の先端が入る穴であり、複数の参照マーク１６は、青、赤、黄、緑など数種類の色でランダムに着色された円マークである。
【００２６】
キャリブレーションパネル上の複数の参照マーク１６が数種類の色でランダムに着色されていることから、後述の投票処理によって撮影画像から抽出された参照マーク１６に基づいてカメラ位置のキャリブレーションを行うとき、撮影画像から抽出された参照マーク１６とキャリブレーションパネル上の参照マーク１６の対応を取りやすくなり、組み合わせ数が少なくなることから、計算時間を短縮することができる。
【００２７】
また、キャリブレーションパネル上の複数の参照マーク１６が数種類の色でランダムに着色されているため、異なる角度から撮影した場合でも、任意の個数の複数の参照マーク１６からなるパターンが、色の組み合わせの違いのゆえ、同一のパターンになることを避けることができ、不定性を排除することができる。
【００２８】
なお、図３のキャリブレーションパネルでは、設計を容易にするため、複数の参照マーク１６が規則性をもって、ここでは、キャリブレーションパネルの中心に関して対称に配置されているが、この配置をランダムにしてもよい。その場合は、参照マーク１６が同一色であっても、参照マーク１６の配置のランダム性から、前述の不定性を排除することができる。同じ色の参照マーク１６について見た場合、その配置がランダムになっているからである。
【００２９】
計測点１５は、参照マーク１６内に設けられているが、これは、計測点１５の設けられた参照マーク１６の色を異ならせておくことで、計測用プローブ３２により計測すべき計測点１５を色によって特定することができるようにするためである。たとえば、複数の計測点１５の計測順序を赤、青、黄の順など参照マーク１６の色によってユーザに指定することができる。ユーザが指定された色順で計測点１５を計測するなら、ユーザの計測した計測点１５が、キャリブレーションパネル上のどの位置にある計測点１５であるか、一意に特定することが可能となる。
【００３０】
図４は、本実施の形態に係る３次元モデリングシステム３００により３次元モデルデータを取得する様子を説明する図である。回転台１０上に対象物体１４を載せ、カメラ付き３次元座標計測用多関節アームシステム４０の多関節アームを手動で操作し、対象物体１４を撮影可能な位置にカメラ３０を移動する。ラインレーザ３６により回転台１０上の対象物体１４にスリット光を照射し、カメラ３０により対象物体１４に投影されたレーザライン３８を撮影する。回転台１０を回転させたり、カメラ３０の位置を移動させることで、さまざまな角度から対象物体１４に投影されたレーザライン３８を撮影する。３次元データ処理装置１００は、投影されたレーザライン３８の撮影画像を用いて、スリット光投影法（光切断法ともいう）によって対象物体１４の３次元形状データを取得し、対象物体１４の３次元モデリングを行う。
【００３１】
図５は、回転台１０に設定される座標系を説明する図である。回転台１０の表面をｘｚ平面とし、回転台１０の回転軸をｙ軸とする直交座標系ｘ０−ｙ０−ｚ０を定義する。これを回転台座標系と呼ぶ。
【００３２】
図６は、カメラ付き３次元座標計測用多関節アームシステム４０のアーム基準関節１８ａに設定される座標系を説明する図である。第１アーム２０ａおよび第２アーム２０ｂを接続するアーム基準関節１８ａに、第１アーム２０ａの回転軸をｚ軸とする直交座標系ｘ１−ｙ１−ｚ１を定義する。これをアーム基準座標系と呼ぶ。
【００３３】
図７は、カメラ設置関節１８ｃに設定される座標系とカメラ３０に設定される座標系を説明する図である。カメラ設置軸２０ｄは、アームの関節軸のうち、カメラ３０との位置関係が不変の軸である。カメラ設置関節１８ｃを原点として、カメラ設置軸２０ｄをｙ軸とする直交座標系ｘ２−ｙ２−ｚ２を定義する。これをカメラ設置軸座標系と呼ぶ。また、カメラ３０の焦点を原点とし、焦点面３４をｘｙ平面とし、光軸をｚ軸とする直交座標系ｘ３−ｙ３−ｚ３を定義する。これをカメラ座標系と呼ぶ。
【００３４】
図５〜７で示したように、３次元モデリングシステム３００には、回転台座標系、アーム基準座標系、カメラ設置軸座標系、カメラ座標系の４つの座標系があり、これらの異なる座標系の間で座標変換が必要となる。一般に座標変換は、変換元座標系における座標値をＸ＝（ｘ，ｙ，ｚ）ｔ、変換先座標系における座標値をＸ’＝（ｘ’，ｙ’，ｚ’）ｔとすると、次式の座標変換式で表される。
【００３５】
Ｘ’＝Ｍｒ・Ｘ＋ｔ
ここで、行列Ｍｒは、変換元座標系の回転成分を与える３行３列の行列であり、ベクトルｔは、変換元座標系の並進成分を与えるベクトルである。
【００３６】
回転成分を与える行列Ｍｒの第１行、第２行、第３行をそれぞれＭｒ１＝（ｍ１１，ｍ１２，ｍ１３）、Ｍｒ２＝（ｍ２１，ｍ２２，ｍ２３）、Ｍｒ３＝（ｍ３１，ｍ３２，ｍ３３）とおき、並進成分を与えるベクトルｔをｔ＝（ｍ１４，ｍ２４，ｍ３４）とおくと、上記の座標変換式は、
ｘ’＝ｍ１１ｘ＋ｍ１２ｙ＋ｍ１３ｚ＋ｍ１４
ｙ’＝ｍ２１ｘ＋ｍ２２ｙ＋ｍ２３ｚ＋ｍ２４
ｚ’＝ｍ３１ｘ＋ｍ３２ｙ＋ｍ３３ｚ＋ｍ３４
と書くことができる。
【００３７】
３行４列の座標変換行列Ｍの各行をＭ１＝（ｍ１１，ｍ１２，ｍ１３，ｍ１４）、Ｍ２＝（ｍ２１，ｍ２２，ｍ２３，ｍ２４）、Ｍ３＝（ｍ３１，ｍ３２，ｍ３３，ｍ３４）と定義し、変換元座標系における座標値Ｘに第４成分として１を加えたベクトルＸ＋＝（ｘ，ｙ，ｚ，１）ｔを定義すると、座標変換式は、
Ｘ’＝Ｍ・Ｘ＋
と書くことができる。このように、異なる座標系間の位置関係は、３行４列の変換行列Ｍにより一意に定めることができる。
【００３８】
なお、３行４列の座標変換行列どうしの積の計算や３行４列の座標変換行列の逆行列の計算は本来はできないが、以下では記述における便宜上、それらの計算を行うような記載をしている。これは以下のように計算することを意味する。
【００３９】
３行４列の行列の積の計算について、Ｍ０＝Ｍ１・Ｍ２とは、
Ｍ０・Ｘ＋＝Ｍ１・Ｍ２・Ｘ＋
Ｍｒ０・Ｘ＋ｔ０＝Ｍｒ１・（Ｍｒ２・Ｘ＋ｔ２）＋ｔ１
のように、３行３列の回転成分と１列の並進成分に分けて計算することとし、
Ｍｒ０＝Ｍｒ１・Ｍｒ２
ｔ０＝Ｍｒ１・ｔ２＋ｔ１
とする。
【００４０】
逆行列の計算についても同様に、
Ｘ’＝Ｍ・Ｘ＋
Ｘ’＝Ｍｒ・Ｘ＋ｔ
Ｘ＝Ｍｒ−１・（Ｘ’−ｔ）
＝Ｍｒ−１・Ｘ’−Ｍｒ−１・ｔ
のように、回転成分と並進成分に分け、Ｍの逆行列Ｍ−１の回転成分Ｍｒ−１と並進成分ｔ−１をそれぞれ
Ｍｒ−１＝Ｍｒ−１
ｔ−１＝−Ｍｒ−１・ｔ
と計算する。
【００４１】
なお、回転成分を与える３行３列の行列Ｍｒの各成分ｍｉｊはオイラー角α、β、γを用いて次のように書くこともできるから、回転成分のパラメータ数は実質的には３個である。
【００４２】
ｍ１１＝ｃｏｓαｃｏｓβｃｏｓγ−ｓｉｎαｓｉｎγ
ｍ１２＝−ｃｏｓαｃｏｓβｓｉｎγ−ｓｉｎαｃｏｓγ
ｍ１３＝ｃｏｓαｓｉｎβ
ｍ２１＝ｓｉｎαｃｏｓβｃｏｓγ＋ｃｏｓαｓｉｎγ
ｍ２２＝−ｓｉｎαｃｏｓβｓｉｎγ＋ｃｏｓαｃｏｓγ
ｍ２３＝ｓｉｎαｓｉｎβ
ｍ３１＝−ｓｉｎβｃｏｓγ
ｍ３２＝ｓｉｎαｓｉｎγ
ｍ３３＝ｃｏｓβ
【００４３】
並進成分を与えるベクトルｔをｔ＝（ｔｘ、ｔｙ、ｔｚ）とおくと、オイラー角α、β、γ、および並進成分ｔｘ、ｔｙ、ｔｚの６つのパラメータは、座標変換行列Ｍを規定する座標変換パラメータであり、座標変換行列Ｍを求める際の未知パラメータの個数は６個である。
【００４４】
図８は、カメラ付き３次元座標計測用多関節アームシステム４０と回転台１０のキャリブレーションの計算原理を説明する図である。カメラ付き３次元座標計測用多関節アームシステム４０により３次元データを取得するためには、回転台１０に対するカメラ３０の正確な位置情報が必要である。カメラ付き３次元座標計測用多関節アームシステム４０を操作して、カメラ３０を適当な位置に移動させたときに、回転台１０に対するカメラ３０の位置を把握するためには、回転台座標系からカメラ座標系への変換行列Ｍ０（これを回転台−カメラ座標変換行列と呼ぶ）が必要である。
【００４５】
回転台−カメラ座標変換行列Ｍ０を正確に求めるためには、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係のキャリブレーション、およびカメラ設置軸２０ｄとカメラ３０の位置関係のキャリブレーションが必要である。
【００４６】
回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係は、回転台座標系からアーム基準座標系への変換行列Ｍ１（これを回転台−アーム基準関節座標変換行列と呼ぶ）により規定され、カメラ設置軸２０ｄとカメラ３０の位置関係は、カメラ設置座標系からカメラ座標系への変換行列Ｍ２（これをカメラ設置関節−カメラ座標変換行列と呼ぶ）により規定される。これらの位置関係のキャリブレーション結果が与えられると、アーム基準関節１８ａとカメラ設置関節１８ｃの位置関係を規定するアーム基準座標系からカメラ設置軸座標系への変換行列Ｍａ（これをアーム基準関節−カメラ設置関節座標変換行列と呼ぶ）はカメラ付き３次元座標計測用多関節アームシステム４０のアーム出力データから得られるから、回転台−カメラ座標変換行列Ｍ０は、次式により算出することができる。
【００４７】
Ｍ０＝Ｍ２・Ｍａ・Ｍ１
ここで、各座標変換行列Ｍ０、Ｍ１、Ｍ２、Ｍａはいずれも３行４列の行列である。
【００４８】
このように、回転台−アーム基準関節座標変換行列Ｍ１と、カメラ設置関節−カメラ座標変換行列Ｍ２を事前にキャリブレーションしておけば、アーム出力データを用いて、任意のアームポジションにおいて回転台座標系とカメラ座標系間の位置関係を定める回転台−カメラ座標変換行列Ｍ０を算出することができる。
【００４９】
回転台座標系における座標値をＸ０＝（ｘ０，ｙ０，ｚ０）とすると、カメラ座標系における座標値Ｘ３＝（ｘ３，ｙ３，ｚ３）は、回転台−カメラ座標変換行列Ｍ０により次のように求めることができる。
【００５０】
Ｘ３＝Ｍ０・Ｘ０＋
ここで、Ｘ０＋＝（ｘ０，ｙ０，ｚ０，１）である。
【００５１】
図９（ａ）〜（ｃ）は、カメラ付き３次元座標計測用多関節アームシステム４０と回転台１０のキャリブレーションの手順を説明する図である。図９（ａ）のように、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置を決め、計測用プローブ３２により回転台１０上のキャリブレーションパネルの計測点を計測して、回転台−アーム基準関節座標変換行列Ｍ１を求める。
【００５２】
次に、図９（ｂ）のように、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置を図９（ａ）と同じ状態に保ったまま、カメラ３０により回転台１０上のキャリブレーションパネルの参照パターンを撮影し、キャリブレーションパネル撮影時における回転台−カメラ座標変換行列Ｍ０’を求める。また、このとき、キャリブレーションパネル撮影時におけるアーム出力データを取得し、アーム基準関節−カメラ設置関節座標変換行列Ｍａを求めておく。後で図９（ａ）で求めた回転台−アーム基準関節座標変換行列Ｍ１を利用するため、キャリブレーションパネル撮影時において、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係は、図９（ａ）で回転台−アーム基準関節座標変換行列Ｍ１を求めたとき同じでなければならないが、カメラ３０の位置は任意である。
【００５３】
図９（ａ）、図９（ｂ）の２つの手順でキャリブレーションに必要なすべてのデータが揃う。最後に、図９（ｃ）に示すように、図９（ａ）で取得した回転台−アーム基準関節座標変換行列Ｍ１、および図９（ｂ）で取得したキャリブレーションパネル撮影時の回転台−カメラ座標変換行列Ｍ０’とアーム基準関節−カメラ設置関節座標変換行列Ｍａを用いて、次式により、カメラ設置関節−カメラ座標変換行列Ｍ２を算出する。
【００５４】
Ｍ２＝Ｍ０’・Ｍ１−１・Ｍａ−１
ここで、アーム基準関節−カメラ設置関節座標変換行列Ｍａは、図９（ｂ）でキャリブレーションパネルを撮影したときのアーム出力データから求めたものである。
【００５５】
図１０は、３次元データ処理装置１００の構成図である。これらの構成は、ハードウエア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウエア的にはメモリにロードされた３次元モデリング機能および画像処理機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【００５６】
撮影画像入力部１６０は、カメラ付き３次元座標計測用多関節アームシステム４０のカメラ３０により撮影されたキャリブレーションパネルの画像、スリット光の照射された対象物体の画像を取得し、キャリブレーションパネルの画像は撮影位置算出部１２０に、スリット光の照射された対象物体の画像はスリット光抽出部２００に与える。
【００５７】
アームデータ入力部１７０は、カメラ付き３次元座標計測用多関節アームシステム４０のアーム出力データおよび計測用プローブ３２による計測データを取得し、アーム設置位置較正部１１０、アーム位置算出部１８０、および較正パネル補正部１９０に与える。
【００５８】
アーム位置算出部１８０は、アーム出力データをもとに、現在のアームポジションにおけるアーム基準関節−カメラ設置関節座標変換行列Ｍａを算出し、アーム位置情報としてカメラ設置位置較正部１３０とカメラ位置算出部１４０に与える。
【００５９】
アーム設置位置較正部１１０は、カメラ付き３次元座標計測用多関節アームシステム４０の計測用プローブ３２による回転台１０上のキャリブレーションパネルの複数の計測点１５の計測結果を利用して、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係をキャリブレーションする。アーム設置位置較正部１１０は、キャリブレーションパネルの計測点１５の回転台座標系における既知の座標値と、計測用プローブ３２により計測されたアーム基準座標系における座標値にもとづいて、座標変換パラメータを求めることにより、回転台−アーム基準関節座標変換行列Ｍ１を算出する。
【００６０】
アーム設置位置較正部１１０は、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係のキャリブレーション結果として、算出された回転台−アーム基準関節座標変換行列Ｍ１をカメラ設置位置較正部１３０、カメラ位置算出部１４０、および較正パネル補正部１９０に与える。
【００６１】
撮影位置算出部１２０は、カメラ付き３次元座標計測用多関節アームシステム４０のカメラ３０により回転台１０上のキャリブレーションパネルの複数の参照マーク１６からなる参照パターンを撮影した画像を利用して、キャリブレーションパネル撮影時における回転台１０とカメラ３０の位置関係を求める。撮影位置算出部１２０は、キャリブレーションパネルの撮影画像から画像処理によってすべての参照マーク１６を抽出する。
【００６２】
撮影位置算出部１２０は、キャリブレーションパネルの参照マーク１６の回転台座標系における既知の座標値と、撮影画像から抽出された参照マーク１６の撮影画像における座標値にもとづいて、座標変換パラメータを求めることにより、キャリブレーションパネル撮影時における回転台−カメラ座標変換行列Ｍ０’を算出し、撮影位置情報としてカメラ設置位置較正部１３０に与える。
【００６３】
カメラ設置位置較正部１３０は、撮影位置算出部１２０により与えられた撮影位置情報をもとに、カメラ付き３次元座標計測用多関節アームシステム４０のカメラ設置関節１８ｃとカメラ３０の位置関係をキャリブレーションする。カメラ設置位置較正部１３０は、アーム位置算出部１８０から与えられたキャリブレーションパネル撮影時のアーム基準関節−カメラ設置関節座標変換行列Ｍａ、アーム設置位置較正部１１０から与えられた回転台−アーム基準関節座標変換行列Ｍ１、および撮影位置算出部１２０から与えられたキャリブレーションパネル撮影時における回転台−カメラ座標変換行列Ｍ０’を用いて、次式により、カメラ設置関節−カメラ座標変換行列Ｍ２を算出する。
【００６４】
Ｍ２＝Ｍ０’・Ｍ１−１・Ｍａ−１
【００６５】
カメラ設置位置較正部１３０は、カメラ設置関節１８ｃとカメラ３０の位置関係のキャリブレーション結果として、算出されたカメラ設置関節−カメラ座標変換行列Ｍ２をカメラ位置算出部１４０に与える。
【００６６】
カメラ位置算出部１４０は、アーム設置位置較正部１１０およびカメラ設置位置較正部１３０により、カメラ付き３次元座標計測用多関節アームシステム４０と回転台１０からなるシステムのキャリブレーションが完了した後、回転台１０に置かれた対象物体１４の３次元形状データを取得する際に必要となる任意のアームポジションにおけるカメラ位置情報をキャリブレーション結果にもとづいて算出する。
【００６７】
カメラ位置算出部１４０は、アーム設置位置較正部１１０からキャリブレーション結果として与えられた回転台−アーム基準関節座標変換行列Ｍ１と、カメラ設置位置較正部１３０からキャリブレーション結果として与えられたカメラ設置関節−カメラ座標変換行列Ｍ２と、アーム位置算出部１８０からアーム位置情報として与えられたアーム基準関節−カメラ設置関節座標変換行列Ｍａとを利用して、次式により、現在のアームポジションにおける回転台−カメラ座標変換行列Ｍ０を算出する。
【００６８】
Ｍ０＝Ｍ２・Ｍａ・Ｍ１
【００６９】
カメラ位置算出部１４０は、算出された回転台−カメラ座標変換行列Ｍ０を現在のアームポジションにおけるカメラ位置情報として３次元データ生成部１５０に与える。
【００７０】
スリット光抽出部２００は、カメラ付き３次元座標計測用多関節アームシステム４０のラインレーザ３６によりスリット光の照射された対象物体の撮影画像からスリット光を抽出し、抽出されたスリット光の情報を３次元データ生成部１５０に与える。
【００７１】
３次元データ生成部１５０は、カメラ位置算出部１４０からカメラ位置情報として与えられた回転台−カメラ座標変換行列Ｍ０と、スリット光抽出部２００により撮影画像から抽出されたスリット光の情報とを利用して、スリット光投影法により、対象物体の３次元形状データを生成し、記録する。
【００７２】
キャリブレーションパネルが回転台１０の回転中心からずれている場合や回転台１０の回転平面に対して傾いている場合などに、較正パネル補正部１９０は、回転台１０に対するキャリブレーションパネルのずれを補正する処理を行う。較正パネル補正部１９０は、回転台１０の回転角θを変えながらキャリブレーションパネル上の複数の計測点１５を計測用プローブ３２により計測した結果と、アーム設置位置較正部１１０により算出された回転台−アーム基準関節座標変換行列Ｍ１とを利用して、回転台１０に対するキャリブレーションパネルのずれを補正するための座標変換補正行列Ｍｍを算出する。
【００７３】
較正パネル補正部１９０は、算出された座標変換補正行列Ｍｍをアーム設置位置較正部１１０、カメラ設置位置較正部１３０、およびカメラ位置算出部１４０に与える。アーム設置位置較正部１１０は、座標変換補正行列Ｍｍを用いて、キャリブレーションパネル上の計測点１５の回転台座標系における座標値を補正した上で、前述の回転台−アーム基準関節座標変換行列Ｍ１の計算を行う。カメラ設置位置較正部１３０は、前述のカメラ設置関節−カメラ座標変換行列Ｍ２の計算式を座標変換補正行列Ｍｍにより補正する。カメラ位置算出部１４０は、前述の回転台−カメラ座標変換行列Ｍ０の計算式を座標変換補正行列Ｍｍにより補正する。
【００７４】
スリット光位置較正部２１０は、カメラ３０とラインレーザ３６の位置関係のキャリブレーションを行う。スリット光抽出部２００は、キャリブレーション用の平面板をカメラ３０との位置を変えながら撮影した画像から、ラインレーザ３６によるスリット光を抽出する。スリット光位置較正部２１０は、撮影画像から抽出されたスリット光の３次元位置を求め、ラインレーザ３６によるスリット光が作る平面方程式に当てはめることにより、スリット光位置のキャリブレーションを行う。スリット光位置較正部２１０は、スリット光位置のキャリブレーションの結果をスリット光抽出部２００に与え、スリット光抽出部２００は抽出されたスリット光の位置情報をキャリブレーション結果にもとづいて補正する。
【００７５】
以上の構成の３次元モデリングシステム３００によるシステムキャリブレーション手順を説明する。
【００７６】
図１１は、システムキャリブレーションの大まかな手順を説明するフローチャートである。回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係を較正する（Ｓ１００）。次に、カメラ付き３次元座標計測用多関節アームシステム４０のカメラ設置関節１８ｃとカメラ３０の位置関係を較正する（Ｓ２００）。ステップＳ１００とステップＳ２００の較正結果にもとづいて、任意のアームポジションにおいてカメラ位置を算出する（Ｓ３００）。
【００７７】
図１２は、図１１の回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係の較正処理Ｓ１００の手順を説明するフローチャートである。
【００７８】
カメラ付き３次元座標計測用多関節アームシステム４０の計測用プローブ３２により回転台１０に設置されたキャリブレーションパネル上の複数の計測点１５を計測する（Ｓ１１０）。
【００７９】
計測用プローブ３２でキャリブレーションパネル上の計測点１５を計測すると、アーム出力データからアーム基準座標系における計測点１５の座標値が得られる。また、キャリブレーションパネル上の計測点１５の位置は設計仕様により決まっているため、計測点１５の回転台座標系における座標値は既知である。ｎ個の計測点１５を計測するとして、ｎ個の計測点１５の回転台座標系における座標値をｔ０，ｔ１，…，ｔｎとし、同じ計測点１５のアーム基準座標系における座標値をａ０，ａ１，…，ａｎとする。
【００８０】
アーム設置位置較正部１１０は、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の位置関係を較正するために、回転台−アーム基準関節座標変換行列Ｍ１を算出する（Ｓ１２０）。回転台−アーム基準関節座標変換行列Ｍ１の座標変換パラメータは、原理的にはキャリブレーションパネル上の３つの計測点１５の座標値により算出することができる。
【００８１】
ある３つの計測点１５を選び、その３つの計測点１５の回転台座標系における座標値ｔ０，ｔ１，ｔ２を用いて、次式により、３つのベクトルｖｔ１，ｖｔ２，ｖｔ３を求め、さらに同じ３つの計測点１５のアーム基準座標系における座標値ａ０，ａ１，ａ２を用いて、ｖａ１，ｖａ２，ｖａ３を求める。
ｖｔ１＝ｔ１−ｔ０，ｖｔ２＝ｔ２−ｔ０，ｖｔ３＝ｖｔ１×ｖｔ２
ｖａ１＝ａ１−ａ０，ｖａ２＝ａ２−ａ０，ｖａ３＝ｖａ１×ｖａ２
ここで、記号×はベクトルの外積を表す。
【００８２】
回転台座標系における３つのベクトルｖｔ１，ｖｔ２，ｖｔ３を列とする３行３列の行列Ｔ、およびアーム基準座標系における３つのベクトルｖａ１，ｖａ２，ｖａ３を列とする３行３列の行列Ａを次のように定義する。
Ｔ＝（ｖｔ１  ｖｔ２  ｖｔ３）
Ａ＝（ｖａ１  ｖａ２  ｖａ３）
【００８３】
求めたい回転台−アーム基準関節座標変換行列Ｍ１の回転成分Ｍｒは次式で与えられる。
Ｍｒ＝Ａ・Ｔ−１
【００８４】
また、回転台−アーム基準関節座標変換行列Ｍ１の並進成分ｔは次式で与えられる。
ｔ＝ａ０−Ｍｒ・ｔ０
【００８５】
次に、アーム設置位置較正部１１０は、ステップＳ１２０で求めた回転台−アーム基準関節座標変換行列Ｍ１の精度を上げるために、キャリブレーションパネル上の３つ以上の計測点１５を用いて、回転台−アーム基準関節座標変換行列Ｍ１の座標変換パラメータを最小二乗法により最適化する（Ｓ１３０）。
【００８６】
ステップＳ１２０で求めた回転台−アーム基準関節座標変換行列Ｍ１により、回転台座標系における計測点１５の既知の座標値をアーム基準座標系における座標値（計算上の座標値という）に変換し、同じ計測点１５を計測用プローブ３２で計測した座標値（実測上の座標値という）と比較し、計算上の座標値と実測上の座標値の各成分の差の二乗和により、これらの座標値の誤差を求める。キャリブレーションパネル上のすべての計測点１５について、計算上の座標値と実測上の座標値の誤差を求め、すべての計測点１５について誤差の総和を求める。誤差の総和が最小となるように、回転台−アーム基準関節座標変換行列Ｍ１の回転成分を与える行列Ｍｒのオイラー角α、β、γ、および並進成分を与えるベクトルｔの各成分ｔｘ、ｔｙ、ｔｚをステップＳ１２０で求めた結果を初期値として、最小二乗法により最適化する。
【００８７】
以上により算出される回転台−アーム基準関節座標変換行列Ｍ１は、回転台１０の回転角が０の場合である。回転台１０の回転角がθである場合に一般化するためには、回転台座標系における座標値ｔ０，ｔ１，…，ｔｎを次のように回転行列Ｒにより回転させたｔ０’，ｔ１’，…，ｔｎ’に置き換えればよい。
ｔｉ’＝Ｒ・ｔｉ  （ｉ＝０，１，…，ｎ）
【００８８】
ここで、回転行列Ｒの第１行Ｒ１，第２行Ｒ２，第３行Ｒ３は、
Ｒ１＝（ｃｏｓθ，０，−ｓｉｎθ）
Ｒ２＝（０，１，０）
Ｒ３＝（ｓｉｎθ，０，ｃｏｓθ）
である。
なお、以降の計算式では、回転行列Ｒは各行の４列目として０を追加し、３行４列の変換行列として表現する。
【００８９】
図１３は、図１１のカメラ設置関節１８ｃとカメラ３０の位置関係の較正処理Ｓ２００の手順を説明するフローチャートである。
【００９０】
カメラ付き３次元座標計測用多関節アームシステム４０のカメラ３０を適当な位置に移動して、キャリブレーションパネル上の複数の参照マーク１６からなる参照パターンを撮影する（Ｓ２１０）。このとき、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の相対的な位置関係は、ステップＳ１００のデータ取得時と同じであることが必要である。後の計算でステップＳ１００の回転台とアームの位置関係の較正結果を用いるからである。
【００９１】
撮影位置算出部１２０は、撮影画像を利用して、キャリブレーションパネル撮影時における回転台−カメラ座標変換行列Ｍ０’を算出する（Ｓ２２０）。この処理については、図１４において詳述する。
【００９２】
アーム位置算出部１８０は、アーム出力データからキャリブレーションパネル撮影時におけるアームの位置情報として、アーム基準関節−カメラ設置関節座標変換行列Ｍａを算出する（Ｓ２３０）。
【００９３】
アーム基準関節−カメラ設置関節座標変換行列Ｍａはアーム出力データから算出される。アーム出力データとして、カメラ設置軸２０ｄの位置ベクトルｅと方向ベクトルｖ、および計測用プローブ３２の位置ベクトルｐの情報を用いる。これらのデータはカメラ付き３次元座標計測用多関節アームシステム４０から得られるので、アーム基準座標系における値である。
【００９４】
アーム基準関節−カメラ設置関節座標変換行列Ｍａは以下の手順で算出される。まず、次式により、アーム基準座標系から見たカメラ設置軸座標系の座標軸ベクトルｖｘ、ｖｙ、ｖｚを算出する。
ｖｙ＝ｖ／｜ｖ｜
ｖｐ＝ｐ−ｅ
ｖｎ＝ｖ×ｖｐ
ｖｘ＝ｖｎ／｜ｖｎ｜
ｖｚ＝ｖｘ×ｖｙ
【００９５】
これらの座標軸ベクトルｖｘ、ｖｙ、ｖｚを用いると、アーム基準関節−カメラ設置関節座標変換行列Ｍａの回転成分を与える行列Ｍｒは、
Ｍｒ＝（ｖｘ  ｖｙ  ｖｚ）
で与えられる。アーム基準関節−カメラ設置関節座標変換行列Ｍａの並進成分を与えるベクトルｔは、カメラ設置軸２０ｄの位置ベクトルｅに等しく、
ｔ＝ｅ
である。
【００９６】
カメラ設置位置較正部１３０は、ステップＳ１００で得られた回転台−アーム基準関節座標変換行列Ｍ１、ステップＳ２２０で得られたキャリブレーションパネル撮影時における回転台−カメラ座標変換行列Ｍ０’、およびステップＳ２３０で得られたアーム基準関節−カメラ設置関節座標変換行列Ｍａを用いて、カメラ設置関節−カメラ座標変換行列Ｍ２を次式により算出する（Ｓ２４０）。
Ｍ２＝Ｍ０’・Ｍ１−１・Ｍａ−１
【００９７】
上記のカメラ設置関節−カメラ座標変換行列Ｍ２を求める式は、回転台の回転角が０の場合である。回転角がθである場合に一般化するなら、前述の回転行列Ｒを用いて、次式によりカメラ設置関節−カメラ座標変換行列Ｍ２を求めればよい。
Ｍ２＝Ｍ０’・Ｒ−１・Ｍ１−１・Ｍａ−１
【００９８】
図１４は、図１３のキャリブレーションパネル撮影時の回転台−カメラ座標変換行列Ｍ０’の算出処理Ｓ２２０の手順を説明するフローチャートである。ここでは、カメラ３０のレンズの焦点距離、歪み中心、歪み係数など内部パラメータは事前に得られているものとする。
【００９９】
撮影位置算出部１２０は、キャリブレーションパネルの撮影画像から画像処理によって複数の参照マーク１６を抽出する（Ｓ２２２）。
【０１００】
撮影位置算出部１２０は、キャリブレーションパネル上の参照マーク１６の回転台座標系における既知の座標値と、撮影画像から抽出された参照マーク１６の撮影画像における実測上の座標値にもとづいて、投票処理によって撮影時における回転台−カメラ座標変換行列Ｍ０’の座標変換パラメータを算出する（Ｓ２２４）。
【０１０１】
投票処理による回転台−カメラ座標変換行列Ｍ０’の座標変換パラメータの算出手順を説明する。
【０１０２】
（１）座標変換パラメータ（α，β，γ，ｔｘ，ｔｙ，ｔｚ）に対応する６次元のパラメータ空間（ハフ空間ともいう）を設定し、すべての領域に投票数０をセットする。
【０１０３】
（２）キャリブレーションパネルのすべての参照マーク１６の内、任意の３つの参照マーク１６からなる組をすべてリストアップする。キャリブレーションパネルからリストアップされた３つの参照マーク１６の全組み合わせを参照集合と呼ぶ。
【０１０４】
（３）キャリブレーションパネルの撮影画像から抽出された参照マーク１６の内、任意の３つの参照マーク１６からなる組をすべてリストアップする。撮影画像からリストアップされた３つの参照マーク１６の全組み合わせを抽出集合と呼ぶ。
【０１０５】
（４）抽出集合に含まれる任意の３つの参照マーク１６の組と、参照集合に含まれる任意の３つの参照マーク１６の組の間のすべての組み合わせについて以下の処理を行う。
【０１０６】
（４−１）抽出集合から選択された３つの参照マーク１６の組と、参照集合から選択された３つの参照マーク１６の組とで、参照マーク１６の色の組み合わせが異なる場合、以下の（４−２）、（４−３）の処理は行わない。
【０１０７】
（４−２）抽出集合から選択された３つの参照マーク１６の撮影画像における座標値と、参照集合から選択された３つの参照マーク１６の回転台座標系における座標値をカメラ座標系に変換し、さらにそれを撮影画像面に射影した座標値にもとづいて、座標変換パラメータ（α，β，γ，ｔｘ，ｔｙ，ｔｚ）を算出する。
【０１０８】
カメラ座標系における点を撮影画像面に射影する計算は、カメラ座標系における点を（ｘ，ｙ，ｚ）、撮影画像面上に射影された点を（ｘ’，ｙ’）とすると、
ｘ’＝ｘ・ｆ／ｚ＋ｃｘ
ｙ’＝ｙ・ｆ／ｚ＋ｃｙ
と書ける。ここで、ｆは焦点距離、（ｃｘ，ｃｙ）は画像中心である。ただし、焦点距離の単位はピクセルである。
【０１０９】
（４−３）パラメータ空間において、算出された座標変換パラメータ（α，β，γ，ｔｘ，ｔｙ，ｔｚ）の値に対応する領域に投票する。これによりパラメータ空間の対応領域の投票数が１だけ増える。
【０１１０】
（５）すべての投票が終わると、パラメータ空間から投票数のピークを検出し、ピークとなっている領域に対応する座標変換パラメータ（α，β，γ，ｔｘ，ｔｙ，ｔｚ）の値を正解として出力する。
【０１１１】
上述の投票処理により、抽出集合から選択された参照マーク１６の組と、参照集合から選択された参照マーク１６の組の対応関係が正しいものから算出される座標変換パラメータが正解として得られることになる。キャリブレーションパネルにおいて参照マーク１６が複数の種類の色で色分けされていることから、抽出集合から選択された参照マーク１６の組と、参照集合から選択された参照マーク１６の組との間で無意味な組み合わせを判別してスキップすることができ、無駄な計算をなくし、処理時間を高速化することができる。
【０１１２】
キャリブレーションパネルに設けられた複数の参照マーク１６は、ランダムに配色されていることから、上述の投票処理において３つの参照マーク１６の組を選択した場合、それらを異なる角度から撮影した場合に、他の３つの参照マーク１６の組と同一パターンになることを極力避けることができ、撮影方向による不定性を排除して、一意性をもたせることができるようになる。さらに、複数の参照マーク１６の配置をもランダムにするならば、その効果をさらに高めることができ、投票処理の精度が上がる。
【０１１３】
さらに、撮影位置算出部１２０は、ステップＳ２２４で求めた回転台−カメラ座標変換行列Ｍ０’の座標変換パラメータについて、これらの座標変換パラメータとカメラ内部パラメータによって参照マーク１６の回転台座標系における既知の座標値をカメラ座標系に変換し、さらにそれを撮像画像面に射影した座標値と、撮影画像から抽出された参照マーク１６の座標値を比較し、これらの座標値の各成分の差の二乗和により誤差を求める。すべての参照マーク１６についてこの誤差を求め、その総和が最小となるように、ステップＳ２２４で得られた座標変換パラメータを初期値として、最小二乗法により座標変換パラメータを最適化する（Ｓ２２６）。
【０１１４】
図１５は、図１１のシステムの較正結果に基づくカメラ位置の算出処理を説明するフローチャートである。
【０１１５】
回転台１０に対象物体１４を置き、カメラ付き３次元座標計測用多関節アームシステム４０によりカメラ３０を適当な位置に移動する。アーム位置算出部１８０は、カメラ付き３次元座標計測用多関節アームシステム４０のアーム出力データにもとづいて、現在のアームポジションにおけるアーム基準関節−カメラ設置関節座標変換行列Ｍａを算出する（Ｓ３１０）。アーム基準関節−カメラ設置関節座標変換行列Ｍａの算出には、図１３のステップＳ２３０で述べた計算方法が用いられる。
【０１１６】
カメラ位置算出部１４０は、ステップＳ１００のキャリブレーション処理で得られた回転台−アーム基準関節座標変換行列Ｍ１、ステップＳ２００のキャリブレーション処理で得られたカメラ設置関節−カメラ座標変換行列Ｍ２、およびステップＳ３１０で得られた現在のアームポジションにおけるアーム基準関節−カメラ設置関節座標変換行列Ｍａを用いて、次式により、回転台−カメラ座標変換行列Ｍ０を算出する（Ｓ３２０）。
Ｍ０＝Ｍ２・Ｍａ・Ｍ１
【０１１７】
上記の回転台−カメラ座標変換行列Ｍ０の計算式は、回転台１０の回転角が０である場合であるが、回転台１０の回転角がθである一般の場合は、次式により回転台−カメラ座標変換行列Ｍ０を算出することができる。
Ｍ０＝Ｍ２・Ｍａ・Ｍ１・Ｒ
ここで、Ｒは前述の回転角θの回転行列である。
【０１１８】
以上、カメラ付き３次元座標計測用多関節アームシステム４０と回転台１０からなるシステムのキャリブレーションの手順を説明したが、他にキャリブレーションの必要が生じるものとして、回転台１０とキャリブレーションパネルの位置関係、およびカメラ３０とラインレーザ３６によるスリット光の位置関係がある。以下これらの位置関係のキャリブレーションについて補足する。
【０１１９】
まず、回転台１０とキャリブレーションパネルの位置関係のキャリブレーションについて説明する。
【０１２０】
キャリブレーションパネルは回転台１０の天板も兼ねており、キャリブレーションパネル座標系の原点は回転台１０の回転中心となるように設計されている。しかし実際には、キャリブレーションパネルの原点は回転台１０の回転中心からずれることがありうる。また、回転台１０上のキャリブレーションパネルが傾いている可能性もある。
【０１２１】
そのため、キャリブレーションパネルの回転中心からのずれ、回転平面に対する傾きなど、回転台１０に対するキャリブレーションパネルのずれを補正するパラメータを算出しておく。補正パラメータの算出には、キャリブレーションパネルに設置された計測点１５を計測用プローブ３２によって計測したデータを用いる。ただし、回転台１０の回転角を変えてデータを取得することが必要である。
【０１２２】
キャリブレーションパネルのずれの補正は以下の手順で行う。まず、各回転角θにおける計測点１５の計測データを取得し、ステップＳ１００の手順により回転台−アーム基準関節座標変換行列Ｍ１を算出する。
【０１２３】
キャリブレーションパネルの回転台１０に対するずれを補正するパラメータを変換行列Ｍｍ（座標変換補正行列と呼ぶ）で表し、キャリブレーションパネルの計測点１５の回転台座標系における座標値をｐで表し、その計測点１５のアーム基準座標系における座標値をａで表すと、次の変換式が成り立つ。
ａ＝Ｍ１・Ｒ・Ｍｍ・ｐ
【０１２４】
上記の変換式により、回転台座標系における計測点１５の既知の座標値をアーム基準座標系に変換した座標値と、計測用プローブ３２により計測された計測点１５の座標値の各成分の差の二乗和により誤差を求める。キャリブレーションパネルのすべての計測点１５についてこの誤差を求め、誤差の総和が最小となるように、最小二乗法によって回転中心からのずれ補正の変換行列Ｍｍの座標変換パラメータを最適化する。ただし、回転台−アーム基準関節座標変換行列Ｍ１は、回転台１０の回転角θを変えてステップＳ１００により求めたＭ１の平均値、座標変換補正行列Ｍｍは、最初の計測点１５について得られた回転成分α、β、γ、並進成分ｔｘ、ｔｙ、ｔｚを初期値とする。ただし、座標変換補正行列Ｍｍについては、回転成分α、β、γのうち１つ、並進成分ｔｘ、ｔｙ、ｔｚのうち１つは固定にしておく。
【０１２５】
このようにして算出された座標変換補正行列Ｍｍを用いるには、ステップＳ１００の計算の際、ｎ個の計測点１５の回転台座標系における座標値ｔ０，ｔ１，…，ｔｎを次式により補正されたｔ０’，ｔ１’，…，ｔｎ’に置き換えればよい。
ｔｉ’＝Ｒ・Ｍｍ・ｔｉ  （ｉ＝０，１，…，ｎ）
【０１２６】
また、ステップＳ２００でカメラ設置関節−カメラ座標変換行列Ｍ２を求める際、座標変換補正行列Ｍｍを用いて、次式のように補正して計算すればよい。
Ｍ２＝Ｍ０’・Ｍｍ−１・Ｒ−１・Ｍ１−１・Ｍａ−１
【０１２７】
また、ステップＳ３２０において、回転台−カメラ座標変換行列Ｍ０を求める際には、座標変換補正行列Ｍｍを用いて、次式にように補正して計算すればよい。
Ｍ０＝Ｍ２・Ｍａ・Ｍ１・Ｒ・Ｍｍ
【０１２８】
次に、スリット光位置のキャリブレーションについて説明する。
【０１２９】
図１６は、スリット光位置のキャリブレーションの方法を説明する図である。カメラ設置軸２０ｄには、カメラ３０とラインレーザ３６からなる計測ユニットが取り付けられている。ラインレーザ３６によりスリット光投影法を行うには、カメラ３０とラインレーザ３６によるスリット光の位置関係のキャリブレーションが必要となる。カメラ３０とスリット光の位置関係は、カメラ座標系におけるスリット光の平面方程式により規定することができる。
【０１３０】
カメラ座標系において、スリット光の平面の方程式は、
ａ・ｘ＋ｂ・ｙ＋ｃ・ｚ＋ｄ＝０
と書くことができる。この平面の方程式の係数ａ、ｂ、ｃ、ｄを求めることにより、投影されたスリット光位置のキャリブレーションを行う。
【０１３１】
キャリブレーション用のデータを取得するため、キャリブレーション用の円パターンを付与した平面板４２にスリット光を投射し、その画像を撮影する。その撮影を平面板４２の位置を変えて２回以上行う。
【０１３２】
平面板４２上の円パターンは平面板４２の周辺部のみに配置され、中央部は空白となっている。スリット光抽出部２００が平面板４２の撮影画像からスリット光を抽出する際、中央の空白領域のみに限定して処理することで、スリット光の抽出の精度が確保される。また、スリット光抽出部２００は、撮影画像から周辺領域にある円パターンを抽出することで平面板４２とカメラ３０の相対的な位置関係を求めることができる。したがって、平面板４２を撮影することにより、カメラ３０に対する平面板４２の位置関係の取得と、撮影画像上のスリット光の２次元座標位置の測定とを同時に行うことができる。
【０１３３】
スリット光位置較正部２１０によるスリット光位置のキャリブレーションは以下の手順で行われる。
【０１３４】
（１）スリット光位置較正部２１０は、平面板４２の撮影画像から円パターンを抽出して、平面板４２とカメラの位置関係を算出する。この位置関係は、平面板座標系からカメラ座標系への変換行列により表現される。これにより、平面板４２の位置が得られる。
【０１３５】
（２）スリット光抽出部２００は、（１）の処理により得られた変換行列を用いて、平面板４２の撮影画像からキャリブレーション用の円パターンのない平面板中央の空白領域を抽出する。
【０１３６】
（３）スリット光抽出部２００は、（２）の処理で抽出された空白領域からラインレーザ３６によるスリット光を抽出する。
【０１３７】
（４）スリット光位置較正部２１０は、（３）のスリット光の抽出処理において、スリット光投影位置と判定された画素について、焦点と結んだ直線と平面板が交わる点のカメラ座標系における座標値を算出する。
【０１３８】
（５）スリット光位置較正部２１０は、平面板４２の位置を変えることにより、スリット光投影位置と判定される複数の点ｐｉ＝（ｐｘｉ，ｐｙｉ，ｐｚｉ）（ｉ＝０，１，…，ｎ）を取得し、次式ｆが最小となるような係数ａ、ｂ、ｃ、ｄを最小二乗法により算出する。
ｆ＝Σi（ａ・ｐｘｉ＋ｂ・ｐｙｉ＋ｃ・ｐｚｉ＋ｄ）２
【０１３９】
図１６は、平面板４２を符号４２ａ、４２ｂで示す位置に移動させ、ラインレーザ３６からレーザ光を照射し、平面板４２ａ、ｂ上のレーザライン４４ａ、４４ｂをカメラ３０により撮影する様子を示している。平面板４２ａ、４２ｂの撮影画像からスリット光投影位置と判定される画素ｐ１、ｐ２が抽出され、その画素ｐ１、ｐ２のカメラ座標系における３次元座標値が算出される。画素ｐ１、ｐ２の３次元座標値をラインレーザ３６によるスリット光が作る平面４６の方程式に当てはめて、平面方程式の係数ａ、ｂ、ｃ、ｄを求め、スリット光位置のキャリブレーションを行う。
【０１４０】
上記のスリット光位置のキャリブレーションの手順において、スリット光の抽出処理を行う領域は、キャリブレーション用の円パターンと重複しない、平面板中央の空白部分に限定することにより、スリット光の抽出の誤差を減らすことができる。また、円パターンを付与した平面板を撮影することで、平面板の位置情報の取得とスリット光の抽出を同じ撮影画像を利用して行うことができ、撮影の手間を減らすことができる。撮影画像から投影レーザの２次元位置を抽出し、先立って得た平面板の位置情報から投影レーザの３次元位置が求まり、複数の投影レーザラインを結ぶことによりレーザ平面が算出できる。
【０１４１】
以上説明したように、本実施の形態の３次元モデリングシステム３００によれば、回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０を組み合わせた撮影システムであるため、カメラ３０の位置の自由度が高く、対象物体の精細なモデリングが可能である。また、カメラ３０を移動させて撮影する際、システムのキャリブレーション結果にもとづいて、３次元モデリングの計算に必要な撮影時のカメラ位置情報を回転台１０の回転角とアーム位置情報から正確に求めることができ、撮影画像から取得される３次元形状データの精度を保証することができる。
【０１４２】
図１７は、３次元モデリングシステム３００の拡張例を説明する図である。これまで説明した回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０以外に、カメラ無し３次元座標計測用多関節アームシステム５０と固定カメラ６０がシステムに追加されている。回転台１０とカメラ付き３次元座標計測用多関節アームシステム４０の組み合わせについては、これまで説明したキャリブレーション手順により既にキャリブレーションが完了しているとする。
【０１４３】
固定カメラ６０はいったん設置すると、カメラ位置が固定し、移動することはない。そのため、固定カメラ６０をシステムに追加するには、回転台１０上のキャリブレーションパネルの参照パターンを撮影することにより、回転台１０と固定カメラ６０の位置関係をキャリブレーションすることで足りる。具体的には、撮影位置算出部１２０が、図１４で説明したステップＳ２２０の手順と同様の手順にしたがって、固定カメラ６０により回転台１０上のキャリブレーションパネルの複数の参照マーク１６からなる参照パターンを撮影した画像を利用して、回転台１０と固定カメラ６０の位置関係を求める。
【０１４４】
このように固定カメラ６０と既に設置された回転台１０の位置関係のキャリブレーションを後から行うことにより、固定カメラ６０は３次元モデリングシステム３００に組み込まれ、システムの拡張を図ることができる。固定カメラ６０は、たとえば、回転台１０上の対象物体を遠方から撮影して対象物体の大まかな３次元形状データを取得するために用いられる。一方、カメラ付き３次元座標計測用多関節アームシステム４０は、対象物体を接写して対象物体のより細かな３次元形状データを取得するために用いられる。
【０１４５】
カメラ無し３次元座標計測用多関節アームシステム５０は、多関節アームの先端に計測用プローブがついているが、カメラは設けられていない。カメラ無し３次元座標計測用多関節アームシステム５０は、対象物体の表面に計測用プローブを当てることにより、対象物体上の計測点の３次元座標を取得するものである。カメラ無し３次元座標計測用多関節アームシステム５０をシステムに追加するためには、計測用プローブによって回転台１０上のキャリブレーションパネルの計測点を計測することにより、回転台１０とカメラ無し３次元座標計測用多関節アームシステム５０の位置関係をキャリブレーションすることで足りる。具体的には、アーム設置位置較正部１１０が、図１２で説明したステップＳ１００の手順と同様の手順にしたがって、カメラ無し３次元座標計測用多関節アームシステム５０の計測用プローブによる回転台１０上のキャリブレーションパネルの複数の計測点１５の計測結果を利用して、回転台１０とカメラ無し３次元座標計測用多関節アームシステム５０の位置関係をキャリブレーションする。
【０１４６】
このようにカメラ無し３次元座標計測用多関節アームシステム５０と既に設置された回転台１０の位置関係のキャリブレーションを後から行うことにより、カメラ無し３次元座標計測用多関節アームシステム５０は３次元モデリングシステム３００に組み込まれ、システムの拡張を図ることができる。カメラ無し３次元座標計測用多関節アームシステム５０は、アームの先端にカメラやラインレーザーを搭載せず、計測用プローブだけを搭載するため、構成が簡単であり、計測用プローブの設置自由度が高いという利点がある。
【０１４７】
カメラ無し３次元座標計測用多関節アームシステム５０は、たとえば、次のような使い方ができる。対象物体が透明もしくは半透明である場合や、鏡面反射物体である場合、カメラによる撮影では対象物体の３次元形状データを取得することが困難であるが、カメラ無し３次元座標計測用多関節アームシステム５０の計測用プローブを用いれば、そのような対象物体でも表面の３次元座標を計測することにより３次元形状データを取得することができる。
【０１４８】
また、カメラ無し３次元座標計測用多関節アームシステム５０を用いれば、計測用プローブの先端の球の大きさがわかっているとして、回転台１０上の対象物体の存在しうる３次元空間の領域を初期化しておき、カメラ無し３次元座標計測用多関節アームシステム５０のアームを操作して、計測用プローブを対象物体の周辺で動かし、計測用プローブの先端の球が通過することのできた３次元空間の領域には対象物体が存在しないとして、その領域を候補から削り、対象物体が占める３次元空間の候補領域を絞っていくことができる。
【０１４９】
このように、最初にカメラ付き３次元座標計測用多関節アームシステム４０と回転台１０からなるシステムのキャリブレーションを行っておけば、その後、カメラ無し３次元座標計測用多関節アームシステム５０や固定カメラ６０を追加して、システムを容易に拡張することができる。
【０１５０】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１５１】
上記の説明では、キャリブレーションパネルの参照マーク１６は複数種類の色によって色分けされていたが、参照マーク１６の形状によって参照マーク１６が分類されてもよい。異なる形状の参照マーク１６内に計測点１５が設けられることにより、計測点１５を参照マーク１６の形状によって特定し、複数の計測点１５の計測順序を形状によって指定することができる。また、計測点１５は参照マーク１６の内部に設けられなくても、参照マーク１６との対応がわかるなら、参照マーク１６の外部に設けられてもよい。たとえば、計測点１５を参照マーク１６の近傍に設けることにより、計測点１５と参照マーク１６を対応づけてもよい。また、計測点１５を参照マーク１６の位置とは無関係に設け、計測点１５自身を色分けしてもよい。たとえば、計測点１５の穴の周囲に色を塗ったり、穴底に色を塗って色分けすることができる。
【図面の簡単な説明】
【０１５２】
【図１】実施の形態に係る３次元モデリングシステムの構成図である。
【図２】図１のカメラ付き３次元座標計測用多関節アームシステムのカメラ設置軸の詳細な構成図である。
【図３】図１の回転台上に設けられたキャリブレーションパネルを説明する図である。
【図４】実施の形態に係る３次元モデリングシステムにより３次元モデルデータを取得する様子を説明する図である。
【図５】図１の回転台に設定される座標系を説明する図である。
【図６】図１のカメラ付き３次元座標計測用多関節アームシステムのアーム基準関節に設定される座標系を説明する図である。
【図７】図１のカメラ付き３次元座標計測用多関節アームシステムのカメラ設置関節に設定される座標系とカメラに設定される座標系を説明する図である。
【図８】図１のカメラ付き３次元座標計測用多関節アームシステムと回転台のキャリブレーションの計算原理を説明する図である。
【図９】図１のカメラ付き３次元座標計測用多関節アームシステムと回転台のキャリブレーションの手順を説明する図である。
【図１０】図１の３次元データ処理装置の構成図である。
【図１１】本実施の形態に係る３次元モデリングシステムのキャリブレーションの大まかな手順を説明するフローチャートである。
【図１２】図１１の回転台とカメラ付き３次元座標計測用多関節アームシステムの位置関係の較正処理の手順を説明するフローチャートである。
【図１３】図１１のカメラ設置関節とカメラの位置関係の較正処理の手順を説明するフローチャートである。
【図１４】図１３のキャリブレーションパネル撮影時の回転台−カメラ座標変換行列の算出処理の手順を説明するフローチャートである。
【図１５】図１１のシステムの較正結果に基づくカメラ位置の算出処理を説明するフローチャートである。
【図１６】スリット光位置のキャリブレーションの方法を説明する図である。
【図１７】実施の形態に係る３次元モデリングシステムの拡張例を説明する図である。
【符号の説明】
【０１５３】
１０  回転台、  １２  支持台、  １５  計測点、  １６  参照マーク、  １８ａ  アーム基準関節、  １８ｃ  カメラ設置関節、  ２０ｄ  カメラ設置軸、  ３０  カメラ、  ３２  計測用プローブ、  ３６  ラインレーザ、  ４０  カメラ付き３次元座標計測用多関節アームシステム、  ５０  カメラ無し３次元座標計測用多関節アームシステム、  ６０  固定カメラ、  １００  ３次元データ処理装置、  １１０  アーム設置位置較正部、  １２０  撮影位置算出部、  １３０  カメラ設置位置較正部、  １４０  カメラ位置算出部、  １５０  ３次元データ生成部、  １６０  撮影画像入力部、  １７０  アームデータ入力部、  １８０  アーム位置算出部、  １９０  較正パネル補正部、  ２００  スリット光抽出部、  ２１０  スリット光位置較正部、  ３００  ３次元モデリングシステム。
【図１】
2006098065.tif 000003
【図２】
2006098065.tif 000004
【図３】
2006098065.tif 000005
【図４】
2006098065.tif 000006
【図５】
2006098065.tif 000007
【図６】
2006098065.tif 000008
【図７】
2006098065.tif 000009
【図８】
2006098065.tif 000010
【図９】
2006098065.tif 000011
【図１０】
2006098065.tif 000012
【図１１】
2006098065.tif 000013
【図１２】
2006098065.tif 000014
【図１３】
2006098065.tif 000015
【図１４】
2006098065.tif 000016
【図１５】
2006098065.tif 000017
【図１６】
2006098065.tif 000018
【図１７】
2006098065.tif 000019