(57)【要約】【課題】動作データ作成プロジェクトの現場状況とは無関係に、カメラパラメータのキャリブレーション用の撮影環境を常に十分かつ容易に行なうことができる方法を提供する。【解決手段】カメラパラメータキャリブレーション手段の機能を実現するための動作データ作成システムのコンピュータプログラムに、該動作データ作成に不可欠なカメラパラメータキャリブレーション用の基準マーカ２０１と、実体マーカ位置座標が特定可能な形でこれを固定するマーカ固定手段２０３とからなる基準マーカユニット２００を組み合わせる。プログラムに添付された基準マーカユニット２００を用いれば、いかなる状況にあっても、カメラパラメータのキャリブレーションに好都合な基準マーカを直ちに用意でき、さらにマーカ固定手段により、実体マーカ位置座標が把握できる形でこれを実体空間内に固定することができる。【選択図】    図１２
2004212213.tif 000002
【特許請求の範囲】
【請求項１】
複数のカラーマーカーが設けられた被写体の動作をカメラにより撮影したカラー動画の各フレームにおいて、前記カラーマーカーの色として予め指定された色であるマーカー指定色の画素のデータを抽出し、カメラの結像光軸に対し垂直なフレーム平面上に定められた二次元座標をフレーム二次元座標として、前記カラー動画の各フレームにおいて、前記マーカー指定色を有する画素領域であるマーカー領域を見出し、各カラーマーカーの前記マーカー領域の位置座標を、前記フレーム二次元座標にて表示したマーカー位置座標であるフレームマーカー位置座標として演算する動作データ作成システムに使用され、
コンピュータを、
前記被写体が存在する撮影用実体空間内に定められた三次元座標を撮影用実体空間座標として、前記フレーム二次元座標と該撮影用実体空間座標との関係を表すカメラパラメータを用い、前記フレームマーカー位置座標を、前記撮影用実体空間座標にて表示したマーカー位置である実体マーカー位置座標に変換し、前記動画のフレーム毎に各カラーマーカーの位置を前記実体マーカー位置座標にて特定した動作データを作成する動作データ作成手段と、
前記実体マーカー位置座標が特定可能な形で前記撮影用実体空間内に配置された複数の基準マーカーを前記カメラにより撮影して得られるキャリブレーション用画像の、画像フレーム上に表れる各基準マーカーのフレームマーカー位置座標と実体マーカー位置座標とを用いて前記カメラパラメータのキャリブレーションを行なうカメラパラメータキャリブレーション手段と、
を備えた動作データ作成システムとして機能させるコンピュータプログラムを格納した記録媒体と、
前記複数の基準マーカーと、前記撮影用実体空間の予め定められた位置にそれら基準マーカーを、前記記実体マーカー位置座標が特定可能な形で固定するマーカー固定手段と、を備えた基準マーカーユニットと、
を有することを特徴とする動作データ作成用コンピュータプログラムパッケージ。
【請求項２】
複数のカラーマーカーが設けられた被写体の動作をカメラにより撮影したカラー動画の各フレームにおいて、前記カラーマーカーの色として予め指定された色であるマーカー指定色の画素のデータを抽出し、
カメラの結像光軸に対し垂直なフレーム平面上に定められた二次元座標をフレーム二次元座標として、前記カラー動画の各フレームにおいて、前記マーカー指定色を有する画素領域であるマーカー領域を見出し、各カラーマーカーの前記マーカー領域の位置座標を、前記フレーム二次元座標にて表示したマーカー位置座標であるフレームマーカー位置座標として演算し、
前記被写体が存在する撮影用実体空間内に定められた三次元座標を撮影用実体空間座標として、前記フレーム二次元座標と該撮影用実体空間座標との関係を表すカメラパラメータを用い、前記フレームマーカー位置座標を、前記撮影用実体空間座標にて表示したマーカー位置である実体マーカー位置座標に変換し、前記動画のフレーム毎に各カラーマーカーの位置を前記実体マーカー位置座標にて特定した動作データを作成する動作データ作成方法において、
マーカー固定用ベースと、複数の基準マーカーを、各々前記マーカー固定用ベースの底面からの高さが定められた値となるように前記マーカー固定用ベース上にて支持するマーカー支持体と、を有する基準マーカーユニットを、前記撮影用実体空間内に予め定められた基面上に、前記マーカー固定用ベースの該基面上での位置が特定可能な形で配置し、
該基準マーカーユニットに取り付けられた前記基準マーカーをカメラにより撮影する一方、前記マーカー固定用ベースの前記基面上での位置と、該固定用ベースの底面から各基準マーカーまでの高さ位置とにより、各基準マーカーの実体マーカー位置座標を求め、前記撮影により得られるキャリブレーション用画像のフレーム上に表れる各基準マーカーのフレームマーカー位置座標と前記実体マーカー位置座標とを用いて前記カメラパラメータのキャリブレーションを行なうことを特徴とする動作データ作成方法。
【請求項３】
前記基準マーカーユニットを複数用意し、前記基面上の位置が互いに異なるものとなるように、それら基準マーカーユニットを前記基面上に一括配置して、前記カメラにより各基準マーカーの撮影を行なう請求項２記載の動作データ作成方法。
【請求項４】
前記基準マーカーユニットとして、前記マーカー固定用ベースの底面からの高さが互いに異なる２以上の位置に前記基準マーカーが前記マーカー支持体により支持されたものを用い、該基準マーカーユニットを前記基面上にて、同一直線上に存在しない３つ以上の位置に配置して各基準マーカーの撮影を行なう請求項３記載の動作データ作成方法。
【請求項５】
前記基準マーカーユニットを前記基面上にて位置変更しながら、同じ基準マーカーユニット上の基準マーカーを前記カメラにより繰り返し撮影する請求項２記載の動作データ作成方法。
【請求項６】
前記基準マーカーユニットとして、前記マーカー固定用ベースの底面からの高さが互いに異なる２以上の位置に前記基準マーカーが前記マーカー支持体により支持されたものを用い、該基準マーカーユニット位置を、記基面上にて同一直線上に存在しない３以上の位置間で変更する請求項５記載の動作データ作成方法。
【請求項７】
請求項２ないし６のいずれか１項に記載の動作データ作成用方法に用いる基準マーカーユニットであって、
マーカー固定用ベースと、複数の基準マーカーを、各々前記マーカー固定用ベース上の底面からの高さが定められた値となるように前記マーカー固定用ベース上にて支持するマーカー支持体と、を有することを特徴とする基準マーカーユニット。
【請求項８】
マーカー支持体は、前記マーカー固定用ベース上に立設される棒状支持体であり、前記複数の基準マーカーは該棒状支持体の長手方向に予め定められた間隔にて固定されている請求項７記載の基準マーカーユニット。
【請求項９】
前記マーカー固定用ベース上にベース側係合部が、また、前記基準マーカー側に基準マーカー側係合部がそれぞれ設けられる一方、前記棒状支持体は、複数の部分支持体として長手方向に分割して形成され、各部分支持体の両端部に支持体側係合部が設けられ、それぞれ前記ベース側係合部又は基準マーカー側係合部に着脱可能に係合するようになっている請求項８記載の基準マーカーユニット。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、被写体に形成されたカラーマーカーの動作軌跡を検出し、その検出情報に基づいて被写体の動作データを作成する動作データ作成システム（いわゆるモーションキャプチャシステム）の実現に使用する動作データ作成用コンピュータプログラムパッケージと、動作データ作成用のカメラパラメータのキャリブレーション方法、及びそれに使用するカメラパラメータキャリブレーション用の基準マーカーユニットに関する。
【０００２】
【従来の技術】
【特許文献１】
特開平４−９３７０４号公報
【特許文献２】
特開平６−５０９８３号公報
【特許文献３】
特開平１１−８３４４０号公報
【特許文献４】
特開２０００−１６３５９６号公報
【０００３】
近年、アニメーションやバーチャルリアリティ、あるいはコンピュータグラフィックス（ＣＧ）を利用した映画等の分野において、合成した動画キャラクタに実際の人間の動作データを入力して、よりリアルな動画の動きを実現する技術が普及しつつある。この場合、身体中に多数のセンサを取り付けた人間が演技した動きをカメラ撮影し、その撮影された動画像上でのセンサの動きを解析して動作データを作成する、いわゆるモーションキャプチャシステムと呼ばれるシステムが使用される。このようなデータを、ＣＧ等で作成したキャラクタに適用することにより、例えば実際には存在しないモンスターと人間が格闘するようなシーンもリアルな動きで表現することができる。
【０００４】
このようなモーションキャプチャシステムにおけるデータの入力には、例えば装着した磁気センサによって空間上の位置やねじれの方向を三次元計測する方法がある。しかしながら、この方法では、磁気センサを用いるのでシステムが複雑化する問題がある。
【０００５】
そこで、上述のような問題点を解消すべく、個々のターゲットをカラーマーカーとして被写体に取り付け、これらのカラーマーカーをビデオカメラで撮影しながらモニタ用としてのビデオレコーダーを介して、そのマーカーの色と形状の情報信号をビデオボードに抽出し、例えば、その情報信号に基づいてマーカー位置を求めていくことで、測定対象部位の三次元的な動きを知るようにしたモーションキャプチャシステムが、特許文献１〜４に開示されている。
【０００６】
ところで、モーションキャプチャシステムにおいてビデオボードに抽出されるデータは、二次元的な動画フレームのデータであり、マーカー位置情報もカメラ座標系によるフレーム上の二次元座標として求めることになる。しかし、コンピュータグラフィック等に使用する動作データは、被写体が存在する実体空間での三次元のマーカー位置であるから、カメラ座標系による二次元マーカー位置座標のままでは使用できない。そこで、実体空間の三次元座標とカメラ内のフレームの二次元座標との関係を特定するカメラパラメータを用いて、フレーム上のマーカー位置座標を実体空間の三次元座標に変換する演算を最終的には行なうことになる。
【０００７】
【発明が解決しようとする課題】
ところで、カメラパラメータは、被写体の撮影を行なうカメラの特性とセッティング状態に応じて固有に定まるものであり、一般には、被写体の動画撮影を行なうのと同じ種類及びセッティング状態のカメラを用いて、実体空間内の三次元位置座標が知れた基準体の撮影を行い、その基準体の三次元位置座標と画像フレーム上の二次元位置座標とを用いて算出することになる（これをカメラパラメータのキャリブレーションという）。
【０００８】
しかしながら、市販のモーションキャプチャシステム用のソフトウェアにおいては、カメラパラメータの演算自体は行なえても、基準体を用いたキャリブレーション用のデータ収集に関しては全く配慮がなされていない。また、動作データ作成プロジェクトの現場状況はケースによってまちまちであり、適当な基準体が見つからなかったり、見つかっても数が足りなかったりするなど、カメラパラメータのキャリブレーションを考慮した撮影環境が必ずしも整えられていない場合がある。
【０００９】
本発明の課題は、動作データ作成プロジェクトの現場状況とは無関係に、カメラパラメータのキャリブレーション用の撮影環境を常に十分かつ容易に行なうことができるコンピュータプログラムパッケージと、動作データ作成用のカメラパラメータのキャリブレーション方法、及びそれに使用するカメラパラメータキャリブレーション用の基準マーカーユニットを提供することにある。
【００１０】
【課題を解決するための手段及び作用・効果】
上記の課題を解決するために、本発明の動作データ作成用コンピュータプログラムパッケージは、複数のカラーマーカーが設けられた被写体の動作をカメラにより撮影したカラー動画の各フレームにおいて、カラーマーカーの色として予め指定された色であるマーカー指定色の画素のデータを抽出し、カメラの結像光軸に対し垂直なフレーム平面上に定められた二次元座標をフレーム二次元座標として、カラー動画の各フレームにおいて、マーカー指定色を有する画素領域であるマーカー領域を見出し、各カラーマーカーのマーカー領域の位置座標を、フレーム二次元座標にて表示したマーカー位置座標であるフレームマーカー位置座標として演算する動作データ作成システムに使用され、
コンピュータを、
被写体が存在する撮影用実体空間内に定められた三次元座標を撮影用実体空間座標として、フレーム二次元座標と該撮影用実体空間座標との関係を表すカメラパラメータを用い、フレームマーカー位置座標を、撮影用実体空間座標にて表示したマーカー位置である実体マーカー位置座標に変換し、動画のフレーム毎に各カラーマーカーの位置を実体マーカー位置座標にて特定した動作データを作成する動作データ作成手段と、
実体マーカー位置座標が特定可能な形で撮影用実体空間内に配置された複数の基準マーカーをカメラにより撮影して得られるキャリブレーション用画像の、画像フレーム上に表れる各基準マーカーのフレームマーカー位置座標と実体マーカー位置座標とを用いてカメラパラメータのキャリブレーションを行なうカメラパラメータキャリブレーション手段と、
を備えた動作データ作成システムとして機能させるコンピュータプログラムを格納した記録媒体と、
複数の基準マーカーと、撮影用実体空間の予め定められた位置にそれら基準マーカーを、記実体マーカー位置座標が特定可能な形で固定するマーカー固定手段と、を備えた基準マーカーユニットと、を有することを特徴とする。
【００１１】
動作データ作成システムにおけるカメラパラメータキャリブレーションは、撮影用実体空間内に配置された複数の基準マーカーをカメラにより撮影し、その撮影により得られる二次元的なフレームマーカー位置座標と、三次元的な実体マーカー位置座標とを用いて行なう。上記本発明のコンピュータプログラムパッケージの構成においては、そのカメラパラメータキャリブレーション手段の機能を実現するための動作データ作成システムのコンピュータプログラムに、該動作データ作成に不可欠なカメラパラメータキャリブレーション用の基準マーカーと、実体マーカー位置座標が特定可能な形でこれを固定するマーカー固定手段とからなる基準マーカーユニットを組み合わせた。すなわち、プログラムに添付された基準マーカーユニットを用いれば、いかなる状況にあっても、カメラパラメータのキャリブレーションに好都合な基準マーカーを直ちに用意でき、さらにマーカー固定手段により、実体マーカー位置座標が把握できる形でこれを実体空間内に固定することができる。こうして固定した基準マーカーを、動作データ作成用のカメラにて撮影すれば、撮影により得られるキャリブレーション用画像のフレーム上に表れる各基準マーカーのフレームマーカー位置座標と、同じく実体マーカー位置座標とを用いてカメラパラメータのキャリブレーションを簡単かつ正確に行なうことができる。
【００１２】
次に、本発明の動作データ作成方法は、複数のカラーマーカーが設けられた被写体の動作をカメラにより撮影したカラー動画の各フレームにおいて、カラーマーカーの色として予め指定された色であるマーカー指定色の画素のデータを抽出し、
カメラの結像光軸に対し垂直なフレーム平面上に定められた二次元座標をフレーム二次元座標として、カラー動画の各フレームにおいて、マーカー指定色を有する画素領域であるマーカー領域を見出し、各カラーマーカーのマーカー領域の位置座標を、フレーム二次元座標にて表示したマーカー位置座標であるフレームマーカー位置座標として演算し、
被写体が存在する撮影用実体空間内に定められた三次元座標を撮影用実体空間座標として、フレーム二次元座標と該撮影用実体空間座標との関係を表すカメラパラメータを用い、フレームマーカー位置座標を、撮影用実体空間座標にて表示したマーカー位置である実体マーカー位置座標に変換し、動画のフレーム毎に各カラーマーカーの位置を実体マーカー位置座標にて特定した動作データを作成する動作データ作成方法において、
マーカー固定用ベースと、複数の基準マーカーを、各々マーカー固定用ベース上の底面からの高さが定められた値となるようにマーカー固定用ベース上にて支持するマーカー支持体と、を有する基準マーカーユニットを、撮影用実体空間内に予め定められた基面上に、マーカー固定用ベースの該基面上での位置が特定可能な形で配置し、
該基準マーカーユニットに取り付けられた基準マーカーをカメラにより撮影する一方、マーカー固定用ベースの基面上での位置と、該固定用ベースの底面から各基準マーカーまでの高さ位置とにより、各基準マーカーの実体マーカー位置座標を求め、撮影により得られるキャリブレーション用画像のフレーム上に表れる各基準マーカーのフレームマーカー位置座標と実体マーカー位置座標とを用いてカメラパラメータのキャリブレーションを行なうことを特徴とする。
【００１３】
また、本発明の基準マーカーユニットは、上記本発明の動作データ作成用方法に用いるものであり、マーカー固定用ベースと、複数の基準マーカーを、各々マーカー固定用ベース上の底面からの高さが定められた値となるようにマーカー固定用ベース上にて支持するマーカー支持体と、を有することを特徴とする。
【００１４】
上記本発明の方法及び基準マーカーユニットの構成によると、基準マーカーユニットに使用するマーカー固定手段が、マーカー固定用ベースと、複数の基準マーカーを、各々マーカー固定用ベースの底面からの高さが定められた値となるようにマーカー固定用ベース上にて支持するマーカー支持体とからなる。このような基準マーカーユニットは、例えば屋内の場合は床面や、床面上に固定された基台の水平な頂面、屋外の場合は路面や地面、ないしはその上に置かれた基台の水平な頂面などを基面として用い、撮影用実体空間の原点を（例えば基面上に）適当に定めた後、その基面上にマーカー固定用ベースを載置する。マーカー固定用ベースの基面上の位置を、前記原点を基準として測定すれば、基準マーカーがマーカー支持体により、マーカー固定用ベースの底面からの高さが定められた値となるように設定されているので、高さ方向の基準マーカー位置は自動的に定まる。すなわち、マーカー固定用ベースの基面上の設置位置を測定するだけで、基準マーカーの実体マーカー位置座標を簡単に特定することができ、結果としてカメラパラメータのキャリブレーションを手軽に行なうことができる。
【００１５】
前述の動作データ作成システムは、複数のカラーマーカーが設けられた被写体の動作を撮影するカラーカメラと、
カラーカメラからのカラー映像出力に基づく動画データの各フレームにおいて、カラーマーカーの色として予め指定された色（マーカー指定色）の画素のデータを抽出するマーカー指定色抽出手段と、
動画データの各フレームを複数のブロックに分割するフレーム分割手段と、
マーカー指定色を有する画素領域（マーカー領域）をブロック毎に見出して、該マーカー領域の重心位置を演算する重心演算手段と、
各ブロックのマーカー領域のうち同一マーカーに関係したものを、重心演算結果に基づいて識別するマーカー領域識別手段と、
該識別された同一マーカーに関係する各マーカー領域の重心演算結果に基づいて、それらマーカー領域の統合体の重心位置をフレームマーカー位置座標として演算する重心統合手段と、
統合体の重心位置をフレームマーカー位置座標として出力するフレームマーカー位置座標出力手段と、
を備えたものとして構成することができる。
【００１６】
上記の構成においては、動画データの各フレームを複数のブロックに分割し、１つのマーカーの画像領域を複数ブロックにまたがる領域として捉え、ブロックのマーカー領域を個別に抽出するとともに、マーカー領域毎に重心位置を求める。それらマーカー領域が同一マーカーに由来したものであれば、画像上に現われるマーカー領域は、例えば隣接するブロックなど必ず近接して現われ、別のマーカーに由来したものであれば一定以上の距離を隔てて現われる。従って、各ブロックのマーカー領域は、同一マーカーに関係したものであるか否かを、マーカー領域毎の重心演算結果に基づいて識別することができる。識別された各マーカー領域の重心演算結果を用いれば、ブロック分割しないマーカー画像の重心位置（つまり、マーカー領域の統合体の重心位置）は簡単に演算できる。
【００１７】
従来の動作データ作成システム（モーションキャプチャ）においては、同一色のマーカーを被写体に複数取り付けると、色抽出によりマーカーを識別しようとした場合、それら複数のマーカーはどんなに遠くに離れていても同じマーカーに属するものとみなされるから、マーカーの個々の重心を合成した演算結果しか得られなかった。しかし、上記の方式によると、動画データのフレームがブロックに分割されることで、離れたマーカー領域と近接したマーカー領域とを、それらが現われるブロック位置を媒介として容易に区別でき、同一色の別のマーカーであっても分離して識別できる。つまり、同じ色のカラーマーカーを複数被写体に取り付けることが可能となり、カラーマーカーの設定色を少数に留めつつ、被写体に取付け可能なマーカー数を従来よりも大幅に増加させることができる。これにより、動作トレースの精度を格段に向上させることが可能となる。例えば、従来は異色識別を確実に行なうために、使用可能なマーカー色つまりマーカー個数は、１６個程度が限度であったが、本発明では、同じ色のマーカーを６個使用すれば、８色程度の識別で６×８＝４８個ものマーカーが使用可能となる。
【００１８】
【発明の実施の形態】
図１は、本発明の動作データ作成システム１の電気的構成を示す全体ブロック図である。動作データ作成システム１は、大きく分けて画像入力部４、画像抽出部５、抽出画像データ出力制御部６及びマーカー画素計数部７の４つの部分を含むハードウェアシーケンス部２と、Ｉ／Ｆボード９を介してこれらが接続されるアニメーションやＣＧ動画等を作成するためのホストコンピュータ８とを有する。また、ハードウェアシーケンス部２には、画素転送クロックパルスを与えるクロックパルス発生回路が組み込まれた、画像入出力部４における各種制御を司るシステムコントローラ３が設けられている。ホストコンピュータ８は、ＣＰＵ、ＲＯＭ、ＲＡＭを有する本体１１と、モニタ１０、記憶装置１２（例えばハードディスクドライブ）、及び記録媒体読取装置としてのＣＤ−ＲＯＭドライブ２４９を備えている。記憶装置１２には、動作データ作成システムの機能を実現するコンピュータプログラム（動作データ作成プログラム）２５１がインストールされている。また、記憶装置１２には、ハードウェアシーケンス部２からの重心演算用データをもとに作成された動作データファイル２５２、及び、その動作データファイル２５２の作成に使用するカメラパラータファイル２５３が記憶されている。また、コンピュータプログラム２５１はＣＤ−ＲＯＭ２５０に記録された形で供給され、ＣＤ−ＲＯＭドライブ２４９により読み取られて記憶装置１２にインストールされる。
【００１９】
動作データ作成システム１は、モーションキャプチャとして動作データを生成するために、人間や動物などの被写体にカラーマーカー（以下、単にマーカーともいう）を取り付けてこれを撮影する。カラーマーカーとしては、例えば全体が単色に着色されたものを使用し、取り込むべき動作に関与する必要部位にピン止めあるいは面ファスナ等により適宜取り付ける。このように複数のカラーマーカーが設けられた被写体の動作を、図２のカラーカメラ１５により撮影する。カラーカメラ１５は、被写体の動作により、死角に入って撮影不能となるカラーマーカーが生じないように、撮影アングルの異なるものを複数台（例えば２台）設けており、適宜切り替えて撮影を行なう。
【００２０】
そして、その基本機能を、例えば以下のような実現手段により構成するものである。
・マーカー指定色抽出手段：複数のカラーマーカーが設けられた被写体の動作を、カラーカメラ１５により撮影したカラー動画の各フレームにおいて、カラーマーカーの色として予め指定された色であるマーカー指定色の画素のデータを抽出する。
・フレームマーカー位置座標演算手段：カメラ１５の結像光軸（図１５のＺ軸）に対し垂直なフレーム平面（図１５のＸ−Ｙ平面）上に定められた二次元座標をフレーム二次元座標として、カラー動画の各フレームにおいて、マーカー指定色を有する画素領域であるマーカー領域を見出し、各カラーマーカーのマーカー領域の位置座標を、フレーム二次元座標にて表示したマーカー位置座標であるフレームマーカー位置座標として演算する。
・動作データ作成手段：被写体が存在する撮影用実体空間内に定められた三次元座標を撮影用実体空間座標として、フレーム二次元座標と該撮影用実体空間座標との関係を表すカメラパラメータを用い、フレームマーカー位置座標を、撮影用実体空間座標にて表示したマーカー位置である実体マーカー位置座標に変換し、動画のフレーム毎に各カラーマーカーの位置を実体マーカー位置座標にて特定した動作データを作成する：本実施形態では、以下の各手段を含んでいる。
（フレーム分割手段）：動画データの各フレームを、図７に示すように複数のブロックに分割する。
（重心演算手段）：ブロック毎にマーカー指定色を有する画素領域（以下、マーカー領域という）を見出して、該マーカー領域の重心位置を演算する。
・マーカー領域識別手段：各ブロックのマーカー領域のうち同一マーカーに関係したものを識別する。
（重心統合手段）：該識別された同一マーカーに関係する各マーカー領域の重心演算結果に基づいて、それらマーカー領域の統合体の重心位置をフレームマーカー位置座標として演算する。
（マーカー位置出力手段）：統合体の重心位置を、被写体の動作データであるフレームマーカー位置座標として出力する。
・カメラパラメータキャリブレーション手段：実体マーカー位置座標が特定可能な形で撮影用実体空間内に配置された複数の基準マーカーをカメラ１５により撮影し、その撮影により得られるキャリブレーション用画像のフレーム上に表れる各基準マーカーのフレームマーカー位置座標と実体マーカー位置座標とを用いてカメラパラメータのキャリブレーションを行なう。
【００２１】
以上の個々の機能実現手段が、どのようなハードウェアあるいはソフトウェア構成により実現されるかの一例を、以下に詳細に説明する。
【００２２】
まず、被写体に着用させるマーカーであるが、例えば２以上のマーカーの取付け位置が十分に離れており、かつ、動作中もそれらが過度に近接する惧れがない場合は、それらのマーカーを互いに同じマーカー指定色に設定できる。例えば人体の全体動作を取得する場合、頭と胴体、腕と足などの位置関係にあるマーカー同士である。他方、上腕と下碗、両足、片手の複数の指同士など、過剰な近接が生じやすくなると思われる部位同士は、異なる色のマーカーを装着することが望ましい（特に、明度や色相においてなるべく離れた色を用いると、照明や反射等の影響も受けにくくできる）。
【００２３】
次に、マーカー指定色抽出手段の中核をなすのは、図１の画像入力部４及び画像抽出部５である。図２は、その詳細を示すブロック図である。この部分は、カラーカメラ１５からの映像出力に基づくデジタルカラー映像信号ＤＳを、マーカー指定色を有したマーカー領域の信号と、マーカー指定色以外を有する非マーカー領域の信号とにデコードし、これを画素信号ＭＫＤとして出力する画素信号出力回路として構成されている。このようにすることで、出力される全ての画素信ＭＫＤは、個々のマーカー指定色の画素か、またはマーカー指定色以外の画素のいずれかに属するものとなり、以下の画素分離に係るデジタル処理を格段に容易に進めることができる。カラーカメラ１５からの映像出力は、例えばカラーＣＣＤセンサからのアナログＲＧＢ信号であるが、本実施形態では、これを個別のＡ／Ｄ変換器１６，１７，１８によりデジタルＲＧＢ信号ＤＳに変換しており、これらカラーカメラ１５とＡ／Ｄ変換器１６，１７，１８とが画像入力部４を構成する。
【００２４】
また、画像抽出部５（画素信号出力回路）は、デジタルカラー映像信号のデコード処理を行なうルックアップテーブル（以下、ＬＵＴと略記する）１９，２０を有する。ルックアップテーブルの使用により、入力されるデジタルカラー映像信号ＤＳの上記デコード処理を、ハードウェアロジックにより迅速に実行できる。本実施形態において、ＬＵＴ１９，２０は、ＲＧＢ信号（本実施形態では各８ビット）として入力されるデジタルカラー映像信号ＤＳを、入力される当該デジタルカラー映像信号ＤＳよりもビット数の減じられた色信号ＭＫＤ（本実施形態では４ビット）として出力するものとして構成されている。非マーカー領域により１色が占有されることを考慮して、２４−１＝１５通りのマーカー色の採用が可能である。
【００２５】
ＲＧＢ信号は３次元データであるが、図２の構成では、二次元ＬＵＴの組合せにより回路全体を安価に構成するため、前段側のＬＵＴ１９により２色（１６ビット）の信号成分（ここではＲとＢであるが、これに限られるものではない）をデコード（８ビット）する第一のデコード処理を経た後、そのデコード後のＲ−Ｂ信号をさらに後段側のＬＵＴ２０により、残余の１色（ここではＧ）と組合せてデコードする第二のデコード処理（４ビット）を行なうようにしている。
【００２６】
なお、ＲＧＢ信号に代えて輝度信号Ｙと、ＲＧＢのいずれか２色とその輝度Ｙとの色差信号を用いたり、あるいはその色差信号をさらに色相及び彩度の信号に変換した後、上記と同様のデコード処理を行なってもよい。これは、特開平１１−８３４４０号及び特開２０００−１６３５９６号の各公報に開示されている方式であり、近接した色彩のマーカーの識別に問題が生ずる場合に、照明むらや反射などによるかく乱の影響を軽減する上で効果を発揮する。しかしながら、色差信号を生成するために余分な回路を付加しなければならないデメリットもある。本実施形態の構成では、色による識別が本質的に不可能な同一色マーカー同士であっても、前記ブロック分割方式を採用することで、動画のフレーム上にて問題なく識別できるから、安価なＲＧＢデコード方式でも十分に目的を達成できる利点がある。
【００２７】
図２の各ＬＵＴ回路１９又は２０は同一のハードウェア構成を有し、これをより詳細に示したものが図３である。また、図４は、そのＬＵＴ回路のメモリセル部の一例をごく概念的に示すものであり、１６ビットの入力データをデータＡ及びデータＢとして、それらの内容に対応したアドレス線の選択により、対応するセルの登録データＤＲ１１，ＤＲ１２‥‥等のいずれかが読み出される二次元テーブルとなっている。図３でデータＡ及びデータＢの各入力信号は、ＬＵＴ回路１９ではＲとＢ、ＬＵＴ回路２０ではＲ−ＢとＧに相当するもので、それがＯＤ信号となって出力される。ＬＵＴメモリ１６０には、ＬＵＴメモリコントローラ１５９（以下、ＬＭＣＮと記す：この実施例では、図１のシステムコントローラ３に組み込まれている）が付属し、また、そのデータの入力側に、Ｄ型フリップフロップ回路１６１，１６２が、また、出力側にＤ型フリップフロップ回路１６４が設けられている（以下、Ｄ−ＦＦと略記する）。これらのＤ−ＦＦは、いずれもアウトプットコントロール端子（インヒビット入力端子）ＯＣを有するものが使用されている。
【００２８】
ホストコンピュータ８からのデータバスは、双方向バストランシーババッファ１６６を介してＬＵＴメモリ１６０に接続される。また、ホストコンピュータ８からのアドレスバスは、バスバッファ１６８，１６９を介してＬＵＴメモリ１６０のデータＡ用のアドレスとデータＢ用のアドレスとにそれぞれつながっている。
【００２９】
ＬＵＴ回路に初期設定を行なう場合、ホストコンピュータ８はＬＵＴメモリ制御信号を用いてＬＵＴメモリコントローラ１５９にバス要求命令を送る。これに従い、ＬＵＴメモリコントローラ１５９は、Ｄ−ＦＦ１６１，１６２，１６４のアウトプットコントロール信号（ＯＣ）を制御し、Ｄ−ＦＦ１６１，１６２，１６４の出力を非能動状態とするとともに、双方向バストランシーババッファ１６６及びバスバッファ１６８，１６９の出力イネーブル信号Ｇを制御し、これらの出力を能動状態にする。これにより、ホストコンピュータ８がＬＵＴメモリ１６０に対し読み書きができる状態になり、初期設定が行われる。
【００３０】
ＬＵＴメモリ１６０へのデータ入力終了後、ホストコンピュータ８は前記ＬＵＴメモリ制御信号を用いてＬＵＴメモリコントローラ１５９にバス解放命令（演算実行命令）を送る。これにより、ＬＵＴメモリコントローラ１５９は双方向バストランシーババッファ１６６及びバスバッファ１６８，１６９の出力イネーブル信号Ｇを制御し、Ｄ−ＦＦ１６１，１６２，１６４のアウトプットコントロール信号（ＯＣ）を制御し、Ｄ−ＦＦ１６１，１６２，１６４の出力を能動状態にする。その結果、ＬＵＴメモリ１６０への入力データＡとデータＢにより字引的に求められた演算結果がＯＤに出力されるようになる。ここで、Ｄ−ＦＦ１６１，１６２その他は処理を行なう画素の転送クロックパルスを用いてこれに同期して動作させることで、高速演算処理を実現している。なお、各Ｄ−ＦＦにおけるＣＫはクロックパルス入力の端子であり、双方向バストランシーババッファ１６６のＤＩＲはバス方向制御信号入力の端子である。そして、前述の通りクロックパルスは、システムコントローラ３（図２）に組み込まれたパルス発生回路が発する画素転送クロックパルスが使用される。
【００３１】
図１に戻り、フレーム分割手段は、本実施形態では抽出画像データ出力制御部６によりハードウェア的に実現されている。これは、動作データの作成処理を、リアルタイム処理が可能となるように高速化することが狙いである。図５は、その詳細を示すものである。この回路には、画素信号を指定されたアドレスに画素データとして格納するフレームメモリ２２，２３が設けられている。フレームメモリが２系統設けられているのは、片側のメモリに画素データＭＫＤの書き込みを行なっている間に、他方のメモリからすでに書き込まれている前画面の画素データを読み出して、画像出力ＭＫとして出力することにより、絶え間なく処理が継続できるようにするためである。Ｄ−ＦＦ４４〜４７は、この書き込みと読み出しの制御を行なうために設けられたものであり、全てインヒビット入力端子を有している。これらは、インヒビット入力端子への出力イネーブル信号ＯＥの入力（システムコントローラ３により制御される）により、書き込み側のＤ−ＦＦ４４，４７と読み出し側のＤ−ＦＦ４５，４６は、一方のメモリの書き込み側Ｄ−ＦＦ出力が能動化されているとき、常に他方のメモリの読み出し側Ｄ−ＦＦ出力が能動化されるよう、それぞれ交互に切り替えられる。Ｄ−ＦＦ４４〜４７はいずれもクロック端子を省略して描いており、画素クロックを受ける毎に、メモリへの書き込みもしくはメモリからの読み出しのために画素データを４ビット単位で出力する。
【００３２】
次に、抽出画像データ出力制御部６には、画素データのフレームメモリ２２，２３への格納に際して、該画素データを書き込むべき画素アドレスを生成してフレームメモリ２２，２３に入力する書き込み側画素アドレス生成回路３０が設けられている。フレームメモリ２２，２３は、それぞれ１フレーム全ブロック（つまり全画面）の画素が格納可能とされており、書き込み側画素アドレス生成回路３０はＸ−Ｙ走査により画素の格納先となるアドレスを順次フレームメモリ２２又は２３に入力する。入力先となるメモリ２２，２３の切替えは、各メモリ２２，２３に対応するバッファ４０，４２のいずれかの出力が、システムコントローラ３からの出力イネーブル信号ＯＥを受けて能動化されることにより行なわれる。
【００３３】
他方、抽出画像データ出力制御部６には、フレームメモリ２２，２３に記憶された画素データの読み出しに際して、該画素データを読み出すべき画素アドレスを生成してフレームメモリ２２，２３に入力するための、読み出し側画素アドレス生成回路３５が設けられている。読み出し側画素アドレス生成回路３５は、画素データを読み出すべきブロックのアドレス（ブロックアドレス）を生成してフレームメモリ２２，２３に入力するブロックアドレス生成回路３８，３９と、同じく該ブロックアドレスが指定したブロック内にて読み出すべき画素データの画素アドレスを生成するブロック内画素アドレス生成回路３６，３７とを含む。これにより、フレームメモリ２２，２３内の領域のうち、ブロックアドレスが指定するブロックの画素を選択的に読み出し、１ブロック分の画素のみを切り出す形で画像出力ＭＫとして出力することが可能となる。
【００３４】
書き込み側画素アドレス生成回路３０、読み出し側画素アドレス生成回路３５に含まれるブロックアドレス生成回路３８，３９及びブロック内画素アドレス生成回路３６，３７は、それぞれ画面をＸ−Ｙ走査するためのＸカウンタ３１，３６，３８及びＹカウンタ３２，３７，３９を含むＸ−Ｙカウンタ回路として構成されている。このうち、書き込み側画素アドレス生成回路３０は、飛越し走査にて出力されてくるカメラ１５（図２）からの映像信号を合成して、順次走査信号に走査変換するために、Ｘカウンタ３１とＹカウンタ３２とが互いに独立したカウンタとして構成されている。Ｙカウンタ３２は、偶数走査時と奇数走査時において互いに異なる画素アドレスを生成し、フレームメモリ２２，２３に入力する。本実施形態では、Ｘカウンタ３１が１ライン分６４０画素を入力するために１０ビット出力とされ、Ｙカウンタは４８０ライン分を入力するために９ビット出力とされている。
【００３５】
他方、読み出し側画素アドレス生成回路３５は、合成後の画面からの画素読み出しとなるので、ブロック内画素アドレス生成回路３６，３７をなすＸカウンタ３６とＹカウンタ３７、及びブロックアドレス生成回路３８，３９をなすＸカウンタ３８とＹカウンタ３９は、いずれも縦続接続されるとともに、ＹカウンタがＸカウンタからの桁上がり信号を受けてカウントアップするものとなっている。また、ブロックアドレス生成回路３８，３９はブロック内画素アドレス生成回路３６，３７の後段側に縦続接続されてなり、当該ブロック内画素アドレス生成回路３６，３７の桁上がり信号を受けてカウントアップするようになっている。
【００３６】
これにより、以下のような出力処理が、単一のクロックパルス列によるハードウェアシーケンスによりきわめて迅速に行なわれる。すなわち、各ブロックではＸ方向（例えば左から右）の画素データが順次出力され、端まで行くとＹ方向に１画素分（例えば下側へ）移動して、再びＸ方向（例えば左から右）の画素データが順次出力される。そして、１つのブロックで画素データ出力が終了すると、次のブロックに移動して同じ処理が繰り返される。このブロックの移動もＸ方向に順次的になされ、端まで行くとＹ方向に１ブロック分移動して再びＸ方向へ移動する動作の繰り返しとされる。本実施形態では、図７に示すように、１画面がＸ方向に４０ブロック、Ｙ方向に３０ブロックの計１２００ブロックに分割されるようになっている。また、１ブロックの画素数は、Ｘ方向及びＹ方向のいずれも１６画素である。従って、ブロック内画素アドレス生成回路のＸカウンタ３６及びＹカウンタ３７の出力はいずれも４ビット、ブロックアドレス生成回路のＸカウンタ３８の出力は６ビット、同じくＹカウンタ３９の出力は５ビットである。なお、データの読み出し先となるフレームメモリ２２，２３の切替えは、各カウンタ３６〜３９のアドレス入力を切り替えることにより行なわれ、その切替えは、各メモリ２２，２３に対応するバッファ４１，４３のいずれかの出力を、システムコントローラ３からの出力イネーブル信号ＯＥを受けて能動化することにより行なわれる。
【００３７】
図１に戻り、マーカー画素計数部７は重心演算手段の要部をなすものである。図６にその回路の詳細を示す。まず、該回路には、マーカー領域に含まれる画素のＸ方向座標和ＳＸ、Ｙ方向座標和ＳＹ、及び画素総数和ＮＤを、それぞれブロック毎にブロックアドレス及びマーカー指定色アドレスと対応付けて記憶する個別のデータメモリ７０，７１，７２が設けられている。各データメモリ７０，７１，７２には、ブロックアドレス及びマーカー指定色アドレスを入力するアドレス入力部が設けられている。ブロックアドレスは、前段の抽出画像データ出力制御部６のブロックアドレス生成回路３８，３９のＸカウンタ出力ＸＢと、同じくＹカウンタ出力ＹＢとが流用されている。また、マーカー指定色アドレスは、読み出される画素データの画像出力ＭＫがマーカー色そのものを表すので、これを流用してアドレス設定を行なうとともに、画像出力ＭＫをそのままアドレス信号として用いている。
【００３８】
また、各データメモリ７０，７１，７２に対応する形で加算器５５，５６，５７が設けられている。これら加算器５５，５６，５７は、個々のデータメモリ７０，７１，７２に格納されているブロック及びマーカー指定色毎のＸ方向座標和ＳＸ、Ｙ方向座標和ＳＹ、又は画素総数和ＮＤの出力に、新たに入力されたＸ方向座標値、Ｙ方向座標値、又は画素計数信号を加算して、その加算値を各データメモリ７０，７１，７２に上書き入力するものである。
【００３９】
データメモリ７０は、指定された色のマーカー領域をなす画素のＸ方向座標和ＳＸを記憶するためのもので、画像出力ＭＫによりマーカー指定色を識別し、指定色毎に異なるＳＸの記憶エリアが確保されている（アドレスＡ１１〜Ａ１４により指定される）。また、記憶されるＳＸがどのブロックに係るものかが、ブロックアドレスＸＢ（Ａ０〜Ａ５）及びＹＢ（Ａ６〜Ａ１０）により特定され、ブロック別にＳＸが記憶される。加算器５５は、ＸＢ，ＹＢ及びＭＫにより特定されるブロック及び指定色のマーカー領域の、現在のＳＸの値をメモリ７０から読み出して、これが第一入力端子Ａに入力される一方、第二入力端子Ｂには次に加算すべき画素のＸ座標値が入力され、ＳＸに加算する。Ｘ座標値は、図５のブロック内画素アドレス生成回路のＸカウンタ３６の出力値（つまり、対応する画素のＸ方向アドレスである）を流用している。
【００４０】
なお、加算器５５とメモリ７０との間に設けられたＤ−ＦＦ６１，６２は、メモリ７０からのＳＸの読み出しと書き換えとの処理を制御するためのものであり、Ｄ−ＦＦ６２はインヒビット入力端子を有したものが使用される。そして、読み出しの際にはＤ−ＦＦ６２の出力が非能動化され、メモリ７０内のＳＸが上書き更新されないようにする。他方、書き換えの際には、Ｄ−ＦＦ６２の出力を能動化し、加算器５５の出力をメモリ７０に入力する。Ｄ−ＦＦ６１は、システムコントローラ７０からのクロックパルスを受ける毎に、メモリ７０からその時点でのＳＸの値が入力されてこれをラッチ保持し、加算器５５に向けて出力する。こうして、指定されたブロック内における指定されたマーカー色の全ての画素について、ＳＸへの新たな画素のＸ座標の加算演算が、メモリ７０内のＳＸの値を更新しながら繰り返し行なわれる。１つのブロックの加算演算が終了したら、ブロックアドレスＸＢ，ＹＢの切替えにより、次のブロックに切り替えて同じ処理を繰り返す。なお、画素の読み出しは、１ブロック内にてＸ−Ｙ走査により全ての画素について順次的に行なわれるが、個々の画素に対応してＭＫが切り替わりながら入力されるので、各画素のＸアドレスは、対応するマーカー色のエリアに分別されながら加算されることになる。つまり、画素を走査方向に順次転送しながら加算処理を並行して行なうことができるので、リアルタイム処理を行なう上で好都合である。他方、リアルタイム処理を行なわないのであれば、個々のブロック内にて、指定されたマーカー色のみを検索／加算する処理を、全てのマーカー色について繰り返す方式も採用可能である。
【００４１】
また、データメモリ７１は、指定された色のマーカー領域をなす画素のＹ方向座標和ＹＸを記憶するためのもので、データメモリ７０と同様、加算器５６とＤ−ＦＦ６３，６４が随伴している。その動作は、加算値がＹ座標（図５のブロック内画素アドレス生成回路のＹカウンタ３７の出力値を流用する）となる以外は、データメモリ７１側と動作は同じである。従って、詳細な説明は省略する。さらに、データメモリ７２は、指定された色のマーカー領域の総画素数ＮＤを記憶するものであり、データメモリ７０と同様、加算器５７とＤ−ＦＦ６５，６６が随伴している。これは、画素の座標と関係なく、その個数を計数したいので、加算値は＋１に固定されている。
【００４２】
上記のようにハードウェア的に算出されたＳＸ、ＳＹ、ＮＤを用いることにより、マーカー指定色別に各ブロックのマーカー領域の重心位置座標を（ＳＸ／ＮＤ，ＳＹ／ＮＤ）として算出できることは明らかである。この重心算出処理も、除算器を用いたハードウェア処理により行なうことができるが、その演算自体は非常に簡単なので、本実施形態ではＳＸ、ＳＹ、ＮＤの組をホストコンピュータ８に転送し、そこでマーカー指定色各ブロックのマーカー領域の重心位置座標を演算するようにしている。図８のフローチャートはその処理の流れを示すものであり、Ｓ１で着目しているブロックにつきマーカー指定色（ＭＫ）を出力し、Ｓ２〜Ｓ４で、そのカラーマーカーのＳＸ、ＳＹ及びＮＤの値をリードする。そして、これを用いることにより、指定されたマーカー指定色及びブロックのマーカー領域の重心座標Ｇを演算し、マーカー指定色ＭＫ及びブロックアドレス（ＸＢ，ＹＢ）と対応付けた形で、図１のＣＧデータ記憶部１２に記憶する。
【００４３】
図７は、１フレームの画像例を示している。フレームはＸ方向に４０個、Ｙ方向に３０個の計１２００個のブロックに分割されている。各ブロックを、Ｘ方向のブロック番号をｉ、Ｙ方向のブロック番号をｊとして、二次元配列Ｂｉｊにより表す。このフレーム中には第一色の３つのマーカーＭ１−１、Ｍ１−２、Ｍ１−３と、第二色のマーカーＭ２−１の計４つの画像領域が現われている。フレームがブロック分割されていることで、個々のマーカーの画像領域は特別な場合を除き、複数ブロックにまたがって現われる。そして、上記の説明からも明らかなように、本実施形態のシステム１では、ブロック別にマーカー領域を個別に抽出し、マーカー領域毎に重心位置を求める。図９に示すように、マーカー領域Ａ１〜Ａ４が同一マーカーに由来したものであれば、画像上に現われるマーカー領域Ａ１〜Ａ４は、互いに隣接するブロックＢ１〜Ｂ４に近接した形で現われる。他方、図７のマーカーＭ１−１、Ｍ１−２、Ｍ１−３のように、別のマーカーに由来したマーカー領域は、一定以上の距離を隔てて現われる。従って、各ブロックのマーカー領域は、同一マーカーに関係したものであるか否かを、マーカー領域毎の重心演算結果に基づいて識別することができる。
【００４４】
本実施形態では、マーカー領域識別手段を以下のような機能を有するものとして、ホストコンピュータ８上にてソフトウェア的に実現している。すなわち、図９に示すように、同一マーカー指定色に関してマーカー領域が存在する互いに隣接したブロック（隣接マーカーブロック）Ｂ１，Ｂ２を見出し、それら隣接マーカーブロックの一方Ｂ１について、そのブロックＢ１のマーカー領域Ａ１の画素総数和ＮＤに基づき、当該マーカー領域Ａ１の寸法を反映した寸法パラメータｒ１を算出し、該マーカー領域Ａ１の重心位置Ｇ１と算出された寸法パラメータｒ１とに基づいて、他方のブロックＢ２のマーカー領域Ａ２が同一マーカーに基づくものであるか否かを判定する。重心位置Ｇ１と寸法パラメータｒ１とを用いた単純な比較処理により、同一マーカーに基づくマーカー領域であるか否かを判定することができる。
【００４５】
具体的には、寸法パラメータｒ１が表すマーカー領域Ａ１の寸法と、重心位置Ｇ１から他方のブロックＢ２との境界Σまでの距離ｄｎとの大小関係に基づいて判定を行なうことができる。ｄｎとｒ１とは直接比較を行なってもよいし、ｒ１に一定の重み計数を乗じて比較することもできる。しかし、寸法パラメータは、図９にＣ１〜Ｃ４にて示されるような、マーカー領域と同一面積を有する円（以下、等価円という：正方形あるいはそれ以上の辺数を有する正多角形を用いてもよい）の半径ｒ１を採用したとき、ｄｎとｒ１とを直接比較により同一マーカーに基づくマーカー領域であるか否かを判定でき、判定制度も高めることができる。具体的には、図９（ａ）に示すように、ｄｎ≦ｒ１のときマーカー領域Ａ１，Ａ２は同一マーカーに由来するものとして判定し、（ｂ）に示すように、ｄｎ＞ｒ１であれば異なるマーカーに由来するものとして判定する。
【００４６】
図１０は、マーカー領域毎の重心演算結果に基づいて個々のマーカーの重心位置、すなわちフレームマーカー位置座標を求めるソフトウェアの処理の流れを一例として示すものである。各ブロックを前記した二次元配列Ｂｉｊにて表す。まず。Ｓ１０１では、マーカー指定色ＭＫを選択し、Ｓ１０２、Ｓ１０３では最初のブロック（図７の左上端）を指定するため、ｉ＝ｊ＝１とする。Ｓ１０４では、指定されたブロックＢｉｊ（現在はＢ１１になっている）にマーカー領域があるかどうかを確認する（ＮＤがゼロになっていないものを見出せばよい）。Ｓ１０５では、Ｓ１０５’に示すように、そのブロックＢｉｊの周囲に隣接する８ブロックを、処理の便宜を図るためにＢ１〜Ｂ８の一次元配列に変換する（画面外にはみ出すブロックもｉ，ｊの定義範囲を拡張して、仮想ブロックとして取扱い可能にしておく。ただし、その仮想ブロックは、常にＮＤがゼロである）。
【００４７】
Ｓ１０６では、それら８ブロックＢ１〜Ｂ２のうち、指定されたマーカー色のマーカー領域の存在するものを抽出する。また、Ｓ１０７において、それらマーカー領域の存在するブロックにつき、図９に示した方法に従い、画素数ＮＤから等価円半径ｒを求め、また、隣接ブロックにマーカー領域が存在していれば、マーカー領域の重心Ｇから該隣接ブロックとの境界までの距離ｄｎを算出する。そして、Ｓ１０８にて、ｒ≧ｄｎとなっている隣接ブロックを抽出し、それら隣接ブロックに統合フラグを付与する。
【００４８】
そして、Ｓ１０９では、統合フラグの確認により、抽出されたブロックのマーカー領域の重心Ｇを１つのマーカーの重心として統合する演算を行なう。抽出されたブロックがｋ個であり、各マーカー領域の重心座標Ｇ及び総画素数ＮＤを（Ｘ１，Ｙ１）；ＮＤ１，（Ｘ２，Ｙ２）；ＮＤ２，‥‥，（Ｘｋ，Ｙｋ）；ＮＤｋとしたとき、統合後の重心位置（つまり統合体の重心位置）ＧｓのＸ座標Ｘｓ及びＹ座標Ｙｓは、それぞれ
Ｘｓ＝（ＮＤ１・Ｘ１＋‥＋ＮＤｋ・Ｘｋ）／（ＮＤ１＋‥ＮＤｋ）
Ｙｓ＝（ＮＤ１・Ｙ１＋‥＋ＮＤｋ・Ｙｋ）／（ＮＤ１＋‥ＮＤｋ）
により求めることができる。なお、Ｓ１０４にてマーカー領域のないブロックであった場合は、上記Ｓ１０５〜Ｓ１０９の処理をスキップする。
【００４９】
Ｓ１１０以下は、各ブロックについて上記の処理を繰り返す処理を記述したものであり、Ｓ１１０ではｉを１加算することにより、Ｘ方向にブロックを１だけ移動させる。また、Ｓ１１１でその加算後のｉがＸ方向のブロック数ｉｍａｘ（本実施形態では４０）を超えたときは、Ｓ１１３に進み、ｊを１加算してＹ方向に１ブロック分移動し、さらにｉ＝１としてＸ方向の先頭のブロックに戻る。Ｓ１１４で加算後のｊがＹ方向のブロック数ｊｍａｘ（本実施形態では３０）を超えたときは、処理終了となる。
【００５０】
移動先のブロックでは、Ｓ１１２において統合フラグの有無を確認することで、すでに重心統合済みのブロックであるか否かを確認する。統合済みならばＳ１１０に戻って次のブロックに移動する。そして、重心統合済みでないブロックが見出された時点でＳ１０４に戻り、そのブロックにつき以降の処理を繰り返す。
【００５１】
こうして演算されたマーカー（統合体）の重心位置は、フレームマーカー位置座標として、フレーム毎に動作データファイル２５２（図１）に記憶される。図１５に示すように、カメラ座標系（Ｘ，Ｙ，Ｚ）において、カメラの結像光軸（Ｚ軸）に対し垂直なフレーム平面（Ｘ−Ｙ平面）上に定められた二次元座標をフレーム二次元座標とする（原点はＺ軸の位置）。フレームマーカー位置座標は、フレーム二次元座標にて表示したマーカー位置座標である。他方、コンピュータグラフィック等に使用する動作データは、被写体が存在する撮影用実体空間内に定められた三次元座標を撮影用実体空間座標（ｘ，ｙ，ｚ）として、該撮影用実体空間座標にて表示したマーカー位置である実体マーカー位置座標である。各フレームマーカー位置座標は、フレーム二次元座標と該撮影用実体空間座標との関係を表すカメラパラメータを用いて実体マーカー位置座標に変換され、動画のフレーム毎に各カラーマーカーの位置を実体マーカー位置座標にて特定した動作データファイルとされる。
【００５２】
本実施形態においては、前述の動作データ作成プログラム２５１にカメラパラメータキャリブレーションのプログラムが組み込まれ、図１のＣＤ−ＲＯＭ２５０に格納される。該ＣＤ−ＲＯＭ２５０は、図１１に示す基準マーカーユニット２００が組み合わされたコンピュータプログラムパッケージの形で供給される。
【００５３】
図１２に示すように、基準マーカーユニット２００は、マーカー固定用ベース２０２と、複数の基準マーカー２０１を、各々マーカー固定用ベース上の底面からの高さが定められた値となるようにマーカー固定用ベース２０２上にて支持するマーカー支持体２０３とを有する。該基準マーカーユニット２００は、例えば屋内の場合は床面や、床面上に固定された基台の水平な頂面、屋外の場合は路面や地面、ないしはその上に置かれた基台の水平な頂面などを基面ＳＰとして用い、その基面ＳＰ上にマーカー固定用ベース２０２を載置する。他方、撮影用実体空間の原点Ｏを基面ＳＰ上に適宜定める。マーカー固定用ベース２０２の基面上の位置Ｆ（例えば基準マーカー２０１の直下位置）を、原点Ｏを基準として測定すれば、基準マーカー２０１がマーカー支持体２０３により、マーカー固定用ベース２０２の底面２０２ｂからの高さが、予め定められた値（ｄ１、ｄ１＋ｄ２、ｄ１＋ｄ２＋ｄ３）となるように設定されているので、高さ方向（ｚ方向）の各基準マーカー２０１の位置は自動的に定まる。従って、マーカー固定用ベース２０２の基面ＳＰ上の設置位置Ｆを測定するだけで、基準マーカー２０１の実体マーカー位置座標が簡単に特定できる。
【００５４】
図１１に示すように、基準マーカーユニット２００に取り付けられた基準マーカー２０１は、被写体を撮影する際に使用するのと同じカメラ１５により、同じアングルセッティングにより撮影される。各基準マーカー２０１の実体マーカー位置座標は、上記のように、マーカー固定用ベース２０２の基面ＳＰ上での位置と、該固定用ベース２０２の底面２０２ｂから各基準マーカー２０１までの高さ位置とにより特定でき、カメラ１５により撮影して得られるキャリブレーション用画像のフレーム上に表れる各基準マーカー２０１のフレームマーカー位置座標と、前記実体マーカー位置座標とを用いて、前述の動作データ作成プログラム２５１内のキャリブレーションプログラムの実行により、カメラパラメータのキャリブレーションが行なわれる。
【００５５】
図１５に示すように、被写体に取り付けられた複数のマーカー（各マーカーの重心位置にて実体マーカー位置座標ｐ（ｘ，ｙ，ｚ）を表す）の、実体空間内での三次元的配置状態をカメラにより撮影すると、カメラ座標系ではその画像は、カメラの結像光軸に対し垂直なフレーム平面上への二次元投影となって表れる。図１５においては、カメラ光軸をカメラ座標系のＺ軸に合わせ、フレーム平面を、カメラ座標系のＸ−Ｙ平面（Ｚ＝０）に一致させている。この場合、各マーカー位置ｐの配置の、フレーム平面上への二次元投影は、元の実体空間内でのマーカーの三次元的配置を斜め方向から透視変換したものに相当し、三次元アフィン変換理論により、カメラパラメータは、下記（１）〜（３）式により与えられる。
【００５６】
【数１】
2004212213.tif 000003
【００５７】
（Ｘｃ，Ｙｃ）はＺ＝０、つまりフレーム二次元座標に投影されたマーカー位置座標、すなわちフレームマーカー位置座標Ｐであり、Ｈｃはカメラ焦点距離ｆと実体マーカー位置座標ｐの高さ方向座標値ｚとを用いて（２）式及び（３）式により与えられる。カメラパラメータは４行３列の行列であり、（１）式の左辺のフレームマーカー位置座標Ｐに関係した行ベクトルを＜Ｐ＞、同じく実体マーカー位置座標ｐに関係した右辺の行ベクトルを＜ｐ＞、カメラパラメータ行列を［Ｃ］にて表せば、（１）式は（１）’式のごとく簡単に表現される。また、（１）’式の両辺に右側から［Ｃ］の逆行列［Ｃ］−１を乗ずると（１）”
式が得られる。すなわち、カメラパラメータ行列［Ｃ］が既知であり、フレームマーカー位置座標Ｐが動画フレームの解析結果から知れている場合は、（１）”から＜ｐ＞を計算することができ、その最初の三項（ｘ，ｙ，ｚ）を読み取れば、実体マーカー位置座標ｐを求めることができる。こうして、動画のフレーム毎に各カラーマーカーの位置を実体マーカー位置座標にて特定した動作データを作成することができる。
【００５８】
次に（１）式を、カメラパラメータ行列［Ｃ］が未知である状態を前提に再考する。この場合、カラーマーカーは、（動作する）被写体に取り付けたマーカーでなく、図１１に示すように、実体マーカー位置座標ｐが既知である基準マーカー２０１であり、カメラ１５により撮影された画像フレーム上にて、各フレームマーカー位置座標Ｐ（被写体に取り付けるマーカーと全く同様に、その重心位置にて定義する）も特定できているものとする。（４）式に示すように、ｎ個の複数の基準マーカー（実体マーカー位置座標：ｐ１，ｐ２，‥，ｐｎ）が実体空間上に配置され、（５）式に示すように、画像フレーム上にその投影点（フレームマーカー位置座標：Ｐ１，Ｐ２，‥，Ｐｎ）が表れているとすれば、そのうちの１個の基準マーカーについて知れている実体マーカー位置座標ｐｉ：（ｘｉ，ｙｉ，ｚｉ）と、フレームマーカー位置座標Ｐｉ：（Ｘｃｉ，Ｙｃｉ）とを（１）式に代入することにより、カメラパラメータ行列［Ｃ］の未知成分に関して、（６）式に示す２つの方程式が得られる。
【００５９】
【数２】
2004212213.tif 000004
【００６０】
【数３】
2004212213.tif 000005
【００６１】
（１）式に示すように、カメラパラメータ行列［Ｃ］は１２個の成分を含んでいるから、基準マーカー１個につき２つの方程式が得られるということは、同一平面上に存在しない６個の基準マーカーの実体マーカー位置座標ｐと、フレームマーカー位置座標Ｐとが与えられることにより、６×２＝１２個の方程式が得られる。従って、これらを連立させて解くことにより、カメラパラメータ行列［Ｃ］の１２個の成分を一義的に定めることができる。この解は、カメラパラメータ行列［Ｃ］が定義される１２次元空間内にて、各方程式が規定する１２個の超平面が交わってできる交点座標により与えられる。
【００６２】
しかしながら、基準マーカー２０１の実体マーカー位置座標ｐとフレームマーカー位置座標Ｐとは、前者は実体空間内での測定により、後者は画像フレーム上での測定によりそれぞれ決定されるものであるから、求まるカメラパラメータ行列［Ｃ］の成分もその測定誤差の影響を受ける。上記基準マーカー２０１の数が、数学的に最小限の個数である６個に留められていると、その誤差の影響も当然に大きくなる。従って、カメラパラメータの決定制度を向上させるには、６個を超える基準マーカー２０１を用いる合理的な方法を考える必要がある。６個を超えるｎ個の基準マーカー２０１を全て用いて（６）式による方程式を作ると、方程式数（２ｎ個）が未知数である［Ｃ］の成分数（１２個）を上回るから、カメラパラメータ行列［Ｃ］の解を数学的に厳密に決定することは不可能であるが、最小二乗法を用いた統計的な解の決定は依然可能である。具体的には、前述の１２次元空間内において、２ｎ個の方程式が与える各超平面からの距離が最小化される点を最小二乗法により求め、該点の１２次元座標値をカメラパラメータ行列［Ｃ］の成分として求めるのである。
【００６３】
（１）式においては、カメラパラメータ行列［Ｃ］の成分のうちＣ３４と、係数Ｈｃとが、いずれも実体マーカー位置座標系とフレームマーカー位置座標系との間の拡大・縮小を表すことが三次元アフィン変換理論によりわかっているので、その一方を定数として固定しても数学的には同値である。そこで、Ｃ３４を「１」とすれば、ｎ個の基準マーカーが与える前述の２ｎ個の方程式は未知数が１個減り、行列を用いて（７）のように表すことができる。
【００６４】
【数４】
2004212213.tif 000006
【００６５】
上記（７）式に表れる＜Ｃ＞はカメラパラメータベクトルであり、カメラパラメータ行列［Ｃ］の成分のうちＣ３４を除いた１１個を成分とする列ベクトルである。該カメラパラメータベクトル＜Ｃ＞を最小二乗解の意味で解くと、その解は下記（５）式を満足するものであることがわかっている。従って、該（５）式よりカメラパラメータベクトル＜Ｃ＞の各成分を決定することができ、ひいてはカメラパラメータ行列［Ｃ］を決定することができる。
【００６６】
【数５】
2004212213.tif 000007
【００６７】
以上説明したごとく、カメラパラメータのキャリブレーションには、同一平面上に存在しない最低でも６個の基準マーカーが必要であり、高精度なキャリブレーションを行なうにはさらに多くの基準マーカーが必要である。この場合、１つの基準マーカーユニットにより、多数の基準マーカーの三次元的な配置を一挙に形成しようとすると、マーカー支持体の形状が複雑化し、カメラによる撮影を行なったとき、マーカー支持体の影になる基準マーカーが生じやすくなる。また、マーカー支持体の寸法や方向にも狂いが生じやすくなる。これらはいずれも、正確なキャリブレーションが行ないにくくなる不具合につながる。
【００６８】
そこで、図１１に示すように、基準マーカーユニット２００を複数用意し、基面ＳＰ上の位置が互いに異なるものとなるように、それら基準マーカーユニット２００を基面ＳＰ上に一括配置して、カメラ１５により各基準マーカー２０１の撮影を行なう方法を採用できる。複数の基準マーカー２０１を、基準マーカーユニット２００により複数組に区分して配置することにより、マーカー支持体２０３の形状が複雑化したり、マーカー支持体２０３の寸法ないし方向の狂いによる基準マーカー２０１の位置決め精度の低下も生じにくくなり、上記の不具合を効果的に防止できる。
【００６９】
この場合、基準マーカーユニット２００としては、図１２に示すように、マーカー固定用ベース２０２の底面からの高さが互いに異なる２以上の位置に基準マーカー２０１がマーカー支持体２０３により支持されたものを用いることができる。そして、図１１に示すように、該基準マーカーユニット２００を、基面ＳＰ上にて同一直線上に存在しない３つ以上の位置に配置して各基準マーカー２０１の撮影を行なうことが望ましい。つまり、高さ位置が異なる２以上の基準マーカー２０１を有した基準マーカーユニットを、基面上に３つ以上配置すれば、キャリブレーションに必要な基準マーカー数（６以上）を充足でき、かつ、３つ以上の基準マーカーユニット２００に分かれることで、マーカー支持体２０１の複雑化や寸法ないし方向の狂いをより効果的に抑制することができる。図１１の実施形態では、１つの基準マーカーユニット２００に各々３つの基準マーカー２０１を割り当て、３台の基準マーカーユニット２００により合計９個の基準マーカー２０１を配置できるようにしてある。また、図１４は、１つの基準マーカーユニット２００に各々２つの基準マーカー２０１を割り当て、４台の基準マーカーユニット２００により合計８個の基準マーカー２０１を配置した例である。
【００７０】
他方、図１３に示すように、基準マーカーユニット２００を基面ＳＰ上にて位置変更しながら、同じ基準マーカーユニット２００上の基準マーカー２０１を（同じ）カメラ１５により繰り返し撮影する方法を採用することもできる。つまり、カメラ１５の仕様とアングルなどのセッティング条件が同じであれば、同じ基準マーカーユニット２００を、基面ＳＰ上での位置を変えながら撮影することにより、撮影回数は増えるものの、複数の基準マーカーユニット２００を一括セッティングして撮影した場合と同じ撮影情報が得られる。これにより、基準マーカーユニット２００の数を減ずることができ、また、複数の基準マーカーユニット２００間で影になって撮影できなくなる基準マーカー２０１が発生する不具合を、より効果的に防止することができる。
【００７１】
この場合も、基準マーカーユニット２００は、図１２に示すものと同様のもの、すなわち、マーカー固定用ベース２０２の底面２０２ｂからの高さが互いに異なる２以上の位置に、基準マーカー２０１がマーカー支持体２０３により支持されたものを用いることが望ましい。すなわち、高さ位置が異なる２以上の基準マーカー２０１を有した基準マーカーユニット２００を、基面ＳＰ上にて同一直線上に存在しない３以上の位置間で変更しながら各基準マーカーの撮影を行なうことにより、キャリブレーションに必要な基準マーカー数を実質的に充足でき、マーカー支持体２０３の構造も単純化するので、その寸法ないし方向の狂いをより効果的に抑制することができる。図１３においては、図１２の基準マーカーユニット２００を、基面ＳＰ上にて３角形状に配置された３つの固定位置間で順次位置変更しながら、撮影を行なう例を示している（工程１→工程２→工程３）。一箇所での撮影により、３つの基準マーカー２０１の位置情報が撮影できるから、３回の撮影で３×３＝９種類の基準マーカー２０１の位置情報が得られる。マーカー固定用ベース２０２、基準マーカー２０１及びマーカー支持体２０３は、例えば高分子材料の射出成形体として構成できる。
【００７２】
図１２において、マーカー支持体２０３は、マーカー固定用ベース２０２上に立設される棒状支持体２０３とされている。複数の基準マーカーは、該棒状支持体２０３の長手方向に予め定められた間隔に（ｄ１，ｄ２，ｄ３）て固定することができる。棒状支持体２０３上に一次元的に基準マーカー２０１を配置した基準マーカーユニット２００は、構造や形状が特に単純であり、また、水平方向にはマーカー支持体２０３が生じないことから、マーカー支持体２０３の影になる基準マーカー２０１が生じたり、マーカー支持体２０３の寸法や方向にも狂いが生じる不具合を一層効果的に防止できる。
【００７３】
図１２の基準マーカーユニット２００は、具体的には、マーカー固定用ベース２０２上にベース側係合部２０２ａが、また、基準マーカー２０１側に基準マーカー側係合部２０１ａがそれぞれ設けられている。棒状支持体２０３は、複数の部分支持体２０３として長手方向に分割して形成されている。各部分支持体２０３の両端部に支持体側係合部２０３ａが設けられ、それぞれベース側係合部２０２ａ又は基準マーカー側係合部２０１ａに着脱可能に係合するようになっているものとして構成されている。棒状支持体を部分支持体２０３に区切って構成し、支持体側係合部２０３ａとベース側係合部２０２ａ又は基準マーカー側係合部２０１ａとにより、マーカー固定用ベース２０２あるいは基準マーカー２０１とに着脱可能に係合させるようにすることで、基準マーカーユニット２００の分解・組立が容易になり、動作データ作成用コンピュータプログラムパッケージにおいて、分解状態でコンパクトに添付することができる。
【００７４】
本実施形態では、ベース側係合部２０２ａは、マーカー固定用ベース２０２に設けられたソケット部２０２ｂ（この実施形態では筒状であるが、形状はこれに限定されない）の上面に開口する固定穴であり、基準マーカー側係合部２０１ａは球状の基準マーカーの表面に開口する固定穴である。他方、支持体側係合部２０３ａは、部分支持体２０３の本体部２０３ｍよりも径小に形成された嵌合突起であり、上記固定穴内に締まり嵌め形態で挿入される。また、本体部２０３ｍの端面外縁に生ずる段付き面は基準マーカー側係合部２０１ａのストッパ面２０３ｔとされ、ベース側係合部２０２ａないし基準マーカー側係合部２０１ａの開口周縁部と当接するようになっている。
【００７５】
以下、カメラパラメータのキャリブレーション処理の一例を、図１６及び図１７のフローチャートを用いて説明する。図１１ないし図１３に示すように、基準マーカーユニット２００を用いて基準マーカー２００の撮影を行い、その静止画のフレーム上にて各基準マーカーの重心位置を、被写体上のマーカーの重心位置演算と同様に演算し、フレームマーカー位置座標（Ｘｃｉ，Ｙｃｉ）として確定する。また、基準マーカーユニット２００毎に、各基準マーカー２０１の実体空間内での位置を実測することにより実体マーカー位置座標（ｘｉ，ｙｉ，ｚｉ）を求め、フレームマーカー位置座標（Ｘｃｉ，Ｙｃｉ）と対応付けて動作データファイル２５２（図１）に記憶する。
【００７６】
次に、図１６のＴ１において、予め入力してあるカメラ１５の焦点距離ｆの値を読み取り、Ｔ２で基準マーカーの番号ｉを１とし、Ｔ３でフレームマーカー位置座標Ｐｉ（Ｘｃｉ，Ｙｃｉ）を読み取る。Ｔ４では実体マーカー位置座標ｐｉ（ｘｉ，ｙｉ，ｚｉ）を読み取る。Ｔ５，Ｔ６では番号ｉをインクリメントしながらＴ３，Ｔ４の処理を繰り返し、全ての基準マーカーのフレームマーカー位置座標Ｐｉ及び実体マーカー位置座標ｐｉを読み出したらＴ７に進み、以下のカメラパラメータ演算処理に移る。
【００７７】
三次元アフィン変換を用いたカメラパラメータ演算処理自体はすでに周知であるので、詳細なアルゴリズムの説明は省略するが、概略は以下の通りである。すなわち、前記（７）式の行列Ａ、ベクトル＜Ｃ＞、Ｒを定義に従い演算・生成する。また、Ｔ８ではＡの転置行列ＡＴを演算・生成する（＜Ｃ＞に含まれるカメラパラメータ行列の要素は、この時点では未知数である）。そして、Ｔ９では、（８）式の左辺であるＡＴＡ＜Ｃ＞を演算する。さらに、Ｔ１０では、（８）式の右辺であるＡＴＲを演算する。そして、Ｔ１１に進み、ＡＴＡ＜Ｃ＞とＡＴＲとを比較することにより、カメラパラメータ行列の各要素を演算・決定する。得られたカメラパラメータは、図１において、カメラパラメータファイル２５３の形で記憶される。
【００７８】
図１７は、被写体の動作撮影により得られる各フレームのフレームマーカー位置座標を、上記のように求めたカメラパラメータを用いて実体マーカー位置座標に変換し、動作データとする処理の一例を示すものである。Ｔ１０１ではカメラパラメータベクトル＜Ｃ＞をカメラパラメータ行列［Ｃ］に変換し、Ｔ１０２ではその逆行列［Ｃ］−１を演算する。Ｔ１０３とＴ１０４でフレームの番号ｋとマーカーの番号ｉを初期化する。Ｔ１０５では、番号ｊのマーカーの重心位置、すなわちフレームマーカー位置座標Ｐｊ（Ｘｃｊ，Ｙｃｊ）を読み出し、（１）式の左辺のベクトル＜Ｐ＞を演算・生成する。また、Ｔ１０６では、既に演算してある［Ｃ］−１をベクトル＜Ｐ＞に乗じる。得られるベクトル＜ｐ＞は、（１）”式により最初の三項が実体マーカー位置座標（ｘ，ｙ，ｚ）に相当するので、Ｔ１０７においてこれを取り出せば着目しているマーカーの実体マーカー位置座標が得られる。上記演算を、全てのフレームの全てのマーカーについて繰り返せば（Ｔ１０９→Ｔ１０５、Ｔ１１１→Ｔ１０４）、最終的な動作データへの変換処理が終わる。
【図面の簡単な説明】
【図１】本発明の動作データ作成方法を実施するための、動作データ作成システムの電気的構成を全体的に示すブロック図。
【図２】その画像入出力部の内容を示すブロック図。
【図３】ルックアップテーブルメモリ回路の具体的な構成例を示す回路図。
【図４】二次元ルックアップテーブルのデータ内容を概念的に示す図。
【図５】画像抽出部の一例を示す回路図。
【図６】マーカー画素計数部の構成例を示す回路図。
【図７】フレームをブロック分割する例を示す概念図。
【図８】マーカー領域別の重心演算処理の流れを示すフローチャート。
【図９】マーカー領域が同一マーカーに属するか否かの判定原理を説明する図。
【図１０】マーカー領域別の重心演算結果から、最終的なマーカー重心を求める処理の一例を示すフローチャート。
【図１１】基準マーカーユニットを用いたカメラパラメータキャリブレーション処理の第一例を示す斜視図。
【図１２】基準マーカーユニットの具体例を、分解状態と組立状態との両方により示す斜視図。
【図１３】基準マーカーユニットを用いたカメラパラメータキャリブレーション処理の第二例を示す斜視図。
【図１４】基準マーカーユニットを用いたカメラパラメータキャリブレーション処理の第三例を示す斜視図。
【図１５】カメラ座標系と実体座標系との関係を示す説明図。
【図１６】カメラパラメータキャリブレーション処理の流れの一例を示すフローチャート。
【図１７】カメラパラメータを用いた動作データの変換処理の一例を示すフローチャート。
【符号の説明】
１  動作データ作成システム
４  画像入力部（マーカー指定色抽出手段）
５  画像抽出部（マーカー指定色抽出手段）
６  抽出画像データ出力制御部（フレーム分割手段）
７  マーカー画素計数部（重心演算手段）
８  ホストコンピュータ（動作データ作成手段、カメラパラメータキャリブレーション手段、重心演算手段、マーカー領域識別手段、重心統合手段、マーカー位置出力手段）
１５  カラーカメラ
２００  基準マーカーユニット
２０１  基準マーカー
２０１ａ  基準マーカー側係合部
２０２  マーカー固定用ベース
２０２ａ  ベース側係合部
２０３  マーカー支持体（棒状支持体、部分支持体）
２０３ａ  支持体側係合部
２５０  記録媒体
【図１】
2004212213.tif 000008
【図２】
2004212213.tif 000009
【図３】
2004212213.tif 000010
【図４】
2004212213.tif 000011
【図５】
2004212213.tif 000012
【図６】
2004212213.tif 000013
【図７】
2004212213.tif 000014
【図８】
2004212213.tif 000015
【図９】
2004212213.tif 000016
【図１０】
2004212213.tif 000017
【図１１】
2004212213.tif 000018
【図１２】
2004212213.tif 000019
【図１３】
2004212213.tif 000020
【図１４】
2004212213.tif 000021
【図１５】
2004212213.tif 000022
【図１６】
2004212213.tif 000023
【図１７】
2004212213.tif 000024