モーショントラッカ装置
【課題】 頭部装着型表示装置付ヘルメット等の対象物に取り付けられた3個以上のLED等の光学マーカーのそれぞれの現在位置を識別する際に、各光学マーカーを確実に識別することができるモーショントラッカ装置を提供する。
【解決手段】 3個以上の同一の光学マーカー7と、カメラ装置2と、光学マーカー位置情報算出部24と、カメラ装置2に対する対象物10の現在位置及び現在角度を含む相対情報を算出する相対情報算出部22とを備えるモーショントラッカ装置1であって、対象物10に作用する対象物角速度を検出する対象物角速度検出センサ4と、対象物角速度に基づいて、対象物10の角度移動量を算出する角度移動量算出部23と、光学マーカー位置情報及び角度移動量に基づいて、光学マーカー7の予想移動位置を推定する光学マーカー推定部26とを備え、光学マーカー位置情報算出部24は、光学マーカー7の予想移動位置に基づいて、3個以上の光学マーカー7をそれぞれ識別することを特徴とする。
【解決手段】 3個以上の同一の光学マーカー7と、カメラ装置2と、光学マーカー位置情報算出部24と、カメラ装置2に対する対象物10の現在位置及び現在角度を含む相対情報を算出する相対情報算出部22とを備えるモーショントラッカ装置1であって、対象物10に作用する対象物角速度を検出する対象物角速度検出センサ4と、対象物角速度に基づいて、対象物10の角度移動量を算出する角度移動量算出部23と、光学マーカー位置情報及び角度移動量に基づいて、光学マーカー7の予想移動位置を推定する光学マーカー推定部26とを備え、光学マーカー位置情報算出部24は、光学マーカー7の予想移動位置に基づいて、3個以上の光学マーカー7をそれぞれ識別することを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、光学方式のモーショントラッカ装置(以下、MT装置ともいう)に関し、さらに詳細には、光学マーカーの現在位置及び現在角度を検出する機能を備える光学方式のMT装置に関する。本発明は、例えば、ゲーム機や乗物等で用いられる頭部装着型表示装置付ヘルメットの現在位置及び現在角度(すなわち、現在の頭部位置及び頭部角度)を検出するヘッドモーショントラッカ装置(以下、HMT装置ともいう)等に利用される。
ここで、光学方式のHMT装置とは、反射板や発光体等の光学マーカーを取り付けたヘルメット等を頭部に装着して、光学マーカーの位置を立体視が可能なカメラ装置で測定することにより、頭部の動きを追跡する装置等のことをいう。
【背景技術】
【0002】
時々刻々と変動する物体の現在位置や現在角度を正確に測定する技術は、様々な分野で利用されている。例えば、ゲーム機では、バーチャルリアリティ(VR)を実現するために、頭部装着型表示装置付ヘルメットを用いることにより、映像を表示することがなされている。このとき、頭部装着型表示装置付ヘルメットの現在位置や現在角度に合わせて、映像を変化させる必要がある。よって、頭部装着型表示装置付ヘルメットの現在位置や現在角度を測定するために、HMT装置が利用されている。
【0003】
また、救難飛行艇による救難活動では、発見した救難目標を見失うことがないようにするため、頭部装着型表示装置付ヘルメットにより表示される照準画像と救難目標とが対応した時にロックすることにより、ロックされた救難目標の位置を演算することが行われている。このとき、その救難目標の位置を演算するために、飛行体の緯度、経度、高度、姿勢に加えて、飛行体に設定された相対座標系に対するパイロットの頭部角度及び頭部位置を測定している。このときに、HMT装置が利用されている。
【0004】
頭部装着型表示装置付ヘルメットに利用されるHMT装置としては、光学的に頭部装着型表示装置付ヘルメットの現在位置や現在角度を測定するものが開示されている(例えば、特許文献1参照)。例えば、複数の反射板を頭部装着型表示装置付ヘルメットに取り付けるとともに光源から光を照射したときの反射光をカメラ装置でモニタする光学方式のHMT装置が開示されている。また、発光体を互いに離隔するようにして複数箇所に取り付けた光学方式のHMT装置もある(例えば、特許文献2参照)。具体的には、頭部装着型表示装置付ヘルメットの外周面上に、光学マーカー群として、発光体であるLED(発光ダイオード)を互いに離隔するようにして3箇所に取り付け、これら3個のLEDの相対的な位置関係をHMT装置に予め記憶させておく。そして、これら3個のLEDを、ステレオ視が可能でかつ設置場所が固定された2台のカメラで同時に立体視で撮影することで、所謂、三角測量の原理により、現在の3個のLEDの相対的な位置関係を測定している。頭部装着型表示装置付ヘルメットに固定された3点の位置(3個のLEDの位置)が特定できれば、頭部装着型表示装置付ヘルメットの位置や角度が特定できるので、これにより、2台のカメラに対する頭部装着型表示装置付ヘルメットの移動位置や移動角度を算出している。
【特許文献1】特表平9−506194号公報
【特許文献2】特願2005−106418号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
上述したような光学方式のHMT装置で、3個の光学マーカーの相対的な位置関係を測定するためには、3個の光学マーカーをそれぞれ識別する必要がある。よって、頭部装着型表示装置付ヘルメットには、それぞれが識別可能な3個の光学マーカーが取り付けられている。例えば、頭部装着型表示装置付ヘルメットの外周面上に、3個の光学マーカーとして、互いに異なる波長の赤外光を発光するLEDを互いに離隔するようにして取り付け、これら3個のLEDのそれぞれの位置をHMT装置に予め記憶させておく。そして、これら3個のLEDを波長差によりそれぞれ識別しながら、3個のLEDのそれぞれの現在位置を測定していた。
【0006】
しかしながら、それぞれが識別可能な3個の光学マーカーを取り付けた場合、1個の光学マーカーが故障等したときに、故障した1個の光学マーカーを新品の1個の光学マーカーと交換するとともに、新品の1個の光学マーカーの識別情報(例えば、波長情報)を改めてHMT装置に記憶させる必要があった。よって、新品の光学マーカーと交換するたびに、新品の光学マーカーの識別情報をHMT装置に記憶させる手間がかかった。
また、識別情報を有さない3個の光学マーカーを、1個1個順番に点灯させることにより、識別することも考えられるが、1個1個順番に点灯させなければならないので、時々刻々と変化する頭部装着型表示装置付ヘルメットの動きをモニタリングすることには困難である。
【0007】
そこで、本出願人は、対象物とする頭部装着型表示装置付ヘルメット50等に取り付けられた3個のLED57a、57b、57cのそれぞれの現在位置を識別する際に、LED57a、57b、57cに識別情報を持たせたり、1個1個順番に点灯させたりすることもなく、LED57a、57b、57cのそれぞれの現在位置を識別することができる方法を見出した。例えば、時間がt1、t2と順に流れたとすると、図10に示すように、時間t1に、LED57a、57b、57cのそれぞれの位置を記憶するとともに、記憶されたそれぞれのLED57a、57b、57cの位置を中心とする一定の大きさの球状である予想移動範囲(Da、Db、Dc)を設定することにより、時間t2に、予想移動範囲(Da、Db、Dc)に存在するLEDを、時間t1に設定された予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別した。
【0008】
しかしながら、図11に示すように、頭部装着型表示装置付ヘルメット50の移動速度が速い場合(特に頭部装着型表示装置付ヘルメットが回転移動する場合)に、予想移動範囲(Da、Db、Dc)にLEDが存在しなくなることがあった。また、設定する予想移動範囲(Da、Db、Dc)の大きさを大きくすると、予想移動範囲(Da、Db、Dc)に2個のLEDが同時に存在することがあった。つまり、予想移動範囲(Da、Db、Dc)に存在するLEDを、その予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別することができなくなることがあった。
【0009】
そこで、本発明は、頭部装着型表示装置付ヘルメット等の対象物に取り付けられた3個以上のLED等の光学マーカーのそれぞれの現在位置を識別する際に、光学マーカーに識別情報を持たせたり、1個1個順番に点灯させたりすることなく、各光学マーカーを確実に識別することができるモーショントラッカ装置を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するためになされた本発明のモーショントラッカ装置は、対象物に位置決めされて取り付けられた3個以上の同一の光学マーカーと、前記光学マーカーからの光線を立体視で検出するカメラ装置と、検出された光線に基づいて、前記3個以上の光学マーカーのそれぞれの現在位置を含む光学マーカー位置情報を算出する光学マーカー位置情報算出部と、前記光学マーカー位置情報を記憶する光学マーカー記憶部と、前記光学マーカー位置情報に基づいて、前記カメラ装置に対する対象物の現在位置及び現在角度を含む相対情報を算出する相対情報算出部とを備えるモーショントラッカ装置であって、前記対象物に位置決めされて取り付けられ、前記対象物に作用する対象物角速度を、前記カメラ装置での光線の検出間隔時間より短時間で検出する対象物角速度検出センサと、前記対象物角速度に基づいて、前記対象物の角度移動量を算出する角度移動量算出部と、前記光学マーカー記憶部に記憶された光学マーカー位置情報及び角度移動量に基づいて、前記光学マーカーの予想移動位置を推定する光学マーカー推定部とを備え、前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記3個以上の光学マーカーをそれぞれ識別するようにしている。
【0011】
ここで、「対象物角速度検出センサ」とは、センサ自体に3軸が定義されて、この3軸を基準とする角速度を短時間(例えば、4msec)で検出できるもののことをいい、具体的には、ジャイロセンサ等が用いられる。
また、「カメラ装置での光線の検出間隔時間」とは、例えば、カメラ装置による撮影と撮影との間隔時間(例えば、16msec)等のこという。
本発明のモーショントラッカ装置によれば、例えば、時間がt1、t2’(t2の直前)、t2と順に流れたとすると、時間t1に記憶された3個以上の光学マーカーのそれぞれの位置と、時間t1から時間t2’で対象物に作用する対象物角速度とにより、対象物の角度移動量を算出することで、時間t2’での光学マーカーの予想移動位置を推定する。次に、例えば、推定された各光学マーカーの予想移動位置を中心とする球状である予想移動範囲を設定することにより、時間t2に予想移動範囲に存在する光学マーカーを、時間t2’に設定された予想移動範囲に対応する光学マーカーと同一のものであると識別する。
【発明の効果】
【0012】
以上のように、本発明のモーショントラッカ装置によれば、例えば、時間t1に記憶された光学マーカーの位置を中心とする予想移動範囲を設定するのではなく、対象物角速度により推定された光学マーカーの位置を中心とする予想移動範囲を設定するので、対象物の移動速度が速い場合にも、予想移動範囲に光学マーカーが存在しなくなることを防ぐことができる。
【0013】
(他の課題を解決するための手段および効果)
また、上記の発明において、前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記光学マーカーの予想移動範囲を設定することで、前記3個以上の光学マーカーをそれぞれ識別するようにしてもよい。
また、上記の発明において、前記光学マーカーの予想移動範囲は、各光学マーカーの予想移動位置を中心とする球状であるようにしてもよい。
【0014】
そして、上記の発明において、前記角度移動量に基づいて、前記光学マーカーの移動距離量を算出することで、前記光学マーカーの予想移動範囲の大きさを決定する予想移動範囲決定部を備えるようにしてもよい。
本発明によれば、例えば、時間t1から時間t2’で対象物に作用する対象物角速度により、対象物の角度移動量を算出することで、時間t1から時間t2’までの光学マーカーの移動距離量を算出する。これにより、1個の光学マーカーの予想移動位置を中心とする予想移動範囲の大きさを、例えば、光学マーカーの移動距離量が長い場合には大きくし、一方、光学マーカーの移動距離量が短い場合には小さくすることができる。よって、対象物の移動速度が速い場合にも、予想移動範囲に光学マーカーが存在しなくなることをより防ぐとともに、対象物の移動速度が遅い場合に、予想移動範囲に2個以上の光学マーカーが同時に存在することをより防ぐことができる。
【0015】
さらに、上記の発明において、前記対象物は、搭乗者の頭部に装着されるヘルメットであり、かつ、前記カメラ装置は、前記搭乗者が搭乗する移動体に取り付けられ、さらに、前記移動体に取り付けられ、前記移動体に作用する移動体角速度を、前記対象物角速度検出センサと同時間に検出する移動体角速度検出センサを備え、前記角度移動量算出部は、前記対象物角速度と移動体角速度とに基づいて、前記カメラ装置に対する対象物の角度移動量を算出するようにしてもよい。
ここで、「移動体角速度検出センサ」とは、対象物角速度検出センサと同様に、センサ自体に3軸が定義されて、この3軸を基準とする角速度を短時間(例えば、4msec)で検出できるもののことをいい、具体的には、ジャイロセンサ等が用いられる。
本発明によれば、対象物角速度検出センサで、移動体中では搭乗者の頭部の動きと移動体の動きとが合成された動きの情報が検出されるが、移動体角速度検出センサで移動体の動きのみの情報が検出されるため、対象物角速度と移動体角速度とを用いて、移動体の動きを除外した搭乗者の頭部の動きのみの情報を算出することができる。これにより、例えば、搭乗者が移動体に搭乗していても、推定された光学マーカーの予想移動位置を中心とする予想移動範囲を設定することができるので、対象物の移動速度が速い場合にも、予想移動範囲に光学マーカーが存在しなくなることを防ぐことができる。
【発明を実施するための最良の形態】
【0016】
以下、本発明の実施形態について図面を用いて説明する。なお、本発明は、以下に説明するような実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の態様が含まれることはいうまでもない。
【0017】
(実施形態1)
図1は、本発明の一実施形態であるHMT装置の概略構成を示す図であり、図2は、図1に示す頭部装着型表示装置付ヘルメットの平面図である。本実施形態は、ゲーム機で遊戯者が着用する頭部装着型表示装置付ヘルメットの現在位置及び現在角度を算出するものである。つまり、HMT装置1は、ゲーム機30に設定された相対座標系(XYZ座標系)に対する、遊戯者3の頭部位置及び頭部角度を含む相対情報を算出するものである。なお、相対座標系(XYZ座標系)は、後述するカメラ装置2(2a、2b)を基準とするものであり、相対座標記憶部43に記憶されている。
【0018】
HMT装置1は、遊戯者3の頭部に装着される頭部装着型表示装置付ヘルメット10と、ゲーム機30の天井に取り付けられたカメラ装置2(2a、2b)と、コンピュータにより構成される制御部20とから構成される。
頭部装着型表示装置付ヘルメット10は、表示器(図示せず)と、表示器から出射される画像表示光を反射することにより、遊戯者3の目に導くコンバイナ8と、位置や角度(すなわち、頭部位置や頭部角度)を測定する際の指標となる光学マーカーとして機能するLED群7と、3軸ジャイロセンサ(対象物角速度検出センサ)4とを有する。なお、頭部装着型表示装置付ヘルメット10を装着した遊戯者3は、表示器による表示映像とコンバイナ8の前方実在物とを視認することが可能となっている。
【0019】
ここで、頭部装着型表示装置付ヘルメット10自体にも、ヘルメット座標系(X’Y’Z’座標系)が定められているが、3軸ジャイロセンサ4はヘルメット座標系と正確に軸合わせされ、かつ、ヘルメット座標系に位置決めされて取り付けられているとともに、ヘルメット座標系は遊戯者3によって相対座標系(XYZ座標系)と軸合わせ(軸のズレの調整)される。頭部装着型表示装置付ヘルメット10自体のヘルメット座標系(X’Y’Z’座標系)と相対座標系(XYZ座標系)との軸合わせの方法については、広く用いられている一般的な方法(例えば、頭部装着型表示装置付ヘルメットを装着した遊戯者に特定方向を向くように指示することにより軸合わせを行う方法)等により行われる。
【0020】
LED群7は、図2に示すように、同じ波長の赤外光を発光する3個(あるいは3個以上の数)のLED7a、7b、7cがお互い一定の距離(d2)を隔てるようにして、ヘルメット座標系(X’Y’Z’座標系)に位置決めされて取り付けられたものである。つまり、LED7a、7b、7cは、同じ波長の赤外光を発光するものなので、各LEDを識別することはできないことになる。
3軸ジャイロセンサ4は、頭部装着型表示装置付ヘルメット10に作用する角速度を短時間(例えば、4msec)で検出するものである。なお、3軸ジャイロセンサ4は、ヘルメット座標系(X’Y’Z’座標系)に軸を合わせられている。よって、ロール方向(X’軸に対する回転)、エレベーション方向(Y’軸に対する回転)、アジマス方向(Z’軸に対する回転)における対象物角速度(VRL、VEL、VAZ)が検出される。また、3軸ジャイロセンサ4は、ヘルメット座標系(X’Y’Z’座標系)の原点に取り付けられているが、ヘルメット座標系(X’Y’Z’座標系)の原点以外の位置に取り付けられた場合には、ヘルメット座標系(X’Y’Z’座標系)の原点の位置での角速度を求めるために、原点位置と取付位置とのオフセット分を調整するためのオフセット行列M0を乗算したりする一般的な計算方法等で、対象物角速度(VRL、VEL、VAZ)を変換することになる。
【0021】
ゲーム機30は、遊戯者3が着席する座席30aを備える。
カメラ装置2(2a、2b)は、2台のカメラ2a、2bからなり、撮影方向が頭部装着型表示装置付ヘルメット10に向けられているとともに、頭部装着型表示装置付ヘルメット10の立体視が可能な一定の距離(d1)を隔てるように、ゲーム機30の天井に固定軸を介して設置されている。
よって、図3に示すように、LED7aのカメラ装置2(2a、2b)に対する位置は、カメラ装置2(2a、2b)に撮影された画像中に映し出されているLED7aの位置を抽出し、さらにカメラ2aからの方向角度(α)とカメラ2bからの方向角度(β)とを抽出し、カメラ2aとカメラ2bとの間の距離(d1)を用いることにより、三角測量の手法で算出することができるようにしてある。他の光学マーカーであるLED7b、7cのカメラ装置2(2a、2b)に対する位置についても、同様に算出されるようにしてある。
【0022】
このときの各LED7a、7b、7cの位置を、空間座標で表現することができるようにするために、カメラ装置2(2a、2b)に固定され、カメラ装置2とともに移動する座標系である相対座標系(XYZ座標系)を用いる。なお、相対座標系(XYZ座標系)の具体的な原点位置やXYZ軸方向の説明については後述する。相対座標系(XYZ座標系)によりLED7a、7b、7cの位置座標は、(X1、Y1、Z1)、(X2、Y2、Z2)、(X3、Y3、Z3)として表現できる。これにより、カメラ装置2(2a、2b)に対する3つのLED7a、7b、7cの位置座標(X1、Y1、Z1)、(X2、Y2、Z2)、(X3、Y3、Z3)がそれぞれどのLEDか識別されて特定されれば、LED7a、7b、7cが位置決めされて取り付けられている頭部装着型表示装置付ヘルメット10の位置(X、Y、Z)及び角度(Θ、Φ、Ψ)は、相対座標系(XYZ座標系)に対する位置及び角度を用いて表現できるようになる。なお、角度(Θ)は、ロール方向(X軸に対する回転)の角度であり、角度(Φ)は、エレベーション方向(Y軸に対する回転)の角度であり、角度(Ψ)は、アジマス方向(Z軸に対する回転)の角度である。
【0023】
制御部20は、図1に示すように、CPU21、メモリ41等からなるコンピュータにより構成され、各種の制御や演算処理を行うものである。CPU21が実行する処理を、機能ブロックごとに分けて説明すると、モーショントラッカ駆動部28と、角度移動量算出部23と、相対情報算出部22と、光学マーカー位置情報算出部24と、光学マーカー推定部26と、映像表示部25とを有する。なお、図4は、制御部20が実行する流れを説明するタイムチャートである。
【0024】
また、メモリ41には、制御部20が処理を実行するために必要な種々のデータを蓄積する領域が形成してあり、相対座標系(XYZ座標系)を記憶する相対座標記憶部43と、時間記憶部42と、3個のLED7a、7b、7cのヘルメット座標系(X’Y’Z’座標系)でのそれぞれの位置(X’DIS、Y’DIS、Z’ DIS)や、3個のLED7a、7b、7cの時間tnのそれぞれの位置(XLED、YLED、ZLED)を含む光学マーカー位置情報を順次記憶する光学マーカー記憶部44と、d2を直径とする球状とする予想移動範囲の大きさを記憶する予想移動範囲記憶部45とを有する。
ここで、相対座標系(XYZ座標系)は、原点及び各座標軸の方向を任意に定めることができるが、本実施形態では図3に示すように、カメラ2bからカメラ2aへの方向をX軸方向とし、X軸方向に垂直かつ天井に垂直で下向き方向をZ軸方向とし、X軸方向に垂直かつ天井に水平で右向き方向をY軸方向とするように定義し、原点をカメラ2a、カメラ2bの中点として定義するように相対座標記憶部43に設定されている。
また、時間記憶部44は、カメラ装置2でLED7a、7b、7cが検出される毎に更新される時間(t)と、3軸ジャイロセンサ4で対象物角速度(VRL、VEL、VAZ)が検出される毎に更新される時間(s)とを記憶する。ただし、ここでの時間は、実時間を単位とする代わりに、後述するモーショントラッカ駆動部28や角度移動量算出部23が、画像データ、角度移動量(RLDEP、ELDEP、AZDEP)を算出するプログラム(図4、図8、図9参照)を実行する際の処理回数カウンタt、sの値を、「時間」として扱うものであり、例えば、s0はs=0(すなわちカウンタ値sが0)に対応し、t1はt=1(すなわちカウンタ値が1)に対応する。
【0025】
モーショントラッカ駆動部28は、LED群7を点灯させる指令信号を出力するとともに、カメラ装置2(2a、2b)でLED群7から出射される光線の画像データを時間(t)毎に検出させる制御を行うものである。しかし、LED7a、7b、7cは、同じ波長の赤外光を発光するものなので、各LEDを識別することはできない。そこで、後述する光学マーカー位置情報算出部24から光学マーカー位置情報を得ることで、各LEDが識別される。よって、画像データと光学マーカー位置情報とが光学マーカー記憶部44に記憶されて、蓄積されていくことになる。
【0026】
角度移動量算出部23は、3軸ジャイロセンサ4で検出された時間tnから時間tn+s2までの対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tnから時間tn+s2までのヘルメット座標系(X’Y’Z’座標系)の角度移動量(RLDEP、ELDEP、AZDEP)を算出する制御を行うものである。
例えば、まず、3軸ジィイロセンサ4で検出された時間s0の対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tnに記憶された頭部装着型表示装置付ヘルメット10の角度(Θ、Φ、Ψ)からの角度移動量(RLs0、ELs0、AZs0)を算出する。次に、3軸ジィイロセンサ4で検出された時間s1の対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tn+s0に記憶された頭部装着型表示装置付ヘルメット10の角度(Θ、Φ、Ψ)からの移動角度量(RLs1、ELs1、AZs1)を算出する。このように角度移動量を算出していき、時間s0〜s2に算出された移動角度量を合計して、時間tから時間tn+s2までの頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を算出する。
【0027】
光学マーカー推定部26は、時間tnの光学マーカー位置情報、時間tnの画像データ、及び、時間tnから時間tn+s2までの角度移動量(RLDEP、ELDEP、AZDEP)に基づいて、LED7a、7b、7cの予想移動位置17a、17b、17cを推定する制御を行うものである。
例えば、時間tnから時間tn+s2までの頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を用いて下記式(1)により、頭部装着型表示装置付ヘルメット10に位置決めして取り付けられたLED7aの時間tnから時間tn+s2までの移動距離量(ΔX、ΔY、ΔZ)を算出する。そして、下記式(2)により、時間tnのLED7aの位置(XLED、YLED、ZLED)に移動距離量(ΔX、ΔY、ΔZ)を加算することで、時間tn+s2でのLED7aの予想移動位置17a(XDEP、YDEP、ZDEP)を推定する(図5参照)。また、LED7b、7cについても、同様に移動距離量を算出して、時間tn+s2でのLED7b、7cの予想移動位置17b、17cを推定する。
【0028】
【数1】
【0029】
【数2】
【0030】
光学マーカー位置情報算出部24は、時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17cを用いて、LED7a、7b、7cのそれぞれの予想移動範囲(Da、Db、Dc)を設定することにより、時間tn+1の画像データを用いて、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報を算出する制御を行うものである。
まず、図6に示すように、光学マーカー推定部26により推定された時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17cを中心としd2を直径とする球状である予想移動範囲(Da、Db、Dc)をXYZ座標系に設定する。これにより、時間tn+1に、予想移動範囲(Da、Db、Dc)に存在するLEDを、時間tn+s2に設定された予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別する。例えば、図7に示すように、時間tn+1に、予想移動範囲(Da)に存在するLED7aを、時間tn+s2に設定された予想移動範囲(Da)に対応するLED7aと同一のものであると識別する。同様に、予想移動範囲(Db)に存在するLED7bを、LED7bと同一のものであるとし、予想移動範囲(Dc)に存在するLED7cを、LED7cと同一のものであると識別する。このようにして、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報が算出される。
【0031】
相対情報算出部22は、時間tn+1の光学マーカー位置情報に基づいて、カメラ2a及びカメラ2b(XYZ座標系)に対する遊戯者3の頭部位置(X、Y、Z)及び頭部角度(Θ、Φ、Ψ)を含む相対情報を算出する制御を行うものである。
つまり、光学マーカーであるLED群7から発光される赤外光を検出することにより3個のLED7a、7b、7cのそれぞれの現在の位置座標である時間tn+1の光学マーカー位置情報を得ることで、カメラ装置2a、2bに対する3個の現在位置が特定されるので、XYZ座標系に対するLED7a、7b、7cが固定されている頭部装着型表示装置付ヘルメット10の現在位置(X、Y、Z)や現在角度(Θ、Φ、Ψ)が算出される。
映像表示部25は、相対情報に基づいて、表示器から映像表示光を出射する制御を行うものである。これにより、遊戯者3は、表示器による表示映像を視認することができるようになる。
【0032】
次に、HMT装置1により、相対座標系(XYZ座標系)に対する遊戯者3の頭部位置(X、Y、Z)及び頭部角度(Θ、Φ、Ψ)を測定する測定動作について説明する。図8及び図9は、HMT装置1による測定動作について説明するためのフローチャートである。
まず、ステップS101の処理において、頭部装着型表示装置付ヘルメット10を装着した遊戯者3に特定方向(初期位置)を向くように指示する。
次に、ステップS102の処理において、時間(t)にtn=t0と時間記憶部42に記憶させる。
【0033】
次に、ステップS103の処理において、モーショントラッカ駆動部28は、カメラ装置2(2a、2b)でLED群7の画像データを検出させる。なお、予め、光学マーカー記憶部44には、ヘルメット座標系(X’Y’Z’座標系)でのLED群7の座標位置(X’DIS、Y’DIS、Z’ DIS)を初期画像データとして記憶させているものとし、時間t0の光学マーカー位置情報は、初期画像データを用いてLED7a、7b、7cがそれぞれ識別されて、LED7a、7b、7cのそれぞれの現在位置を含む時間t0の光学マーカー位置情報が光学マーカー記憶部44に記憶される。
次に、ステップS104の処理において、時間(s)にsn=s0と時間記憶部42に記憶させる。
次に、ステップS105の処理において、3軸ジャイロセンサ4が、対象物角速度(VRL、VEL、VAZ)を検出する。
【0034】
次に、ステップS106の処理において、時間(s)がsn>s1を満たすか否かを判定する。sn>s1を満たさないときには、ステップS107の処理において、時間(s)に+1と更新するように、sn=sn+1と時間記憶部44に記憶させて、ステップS105の処理に戻る。つまり、sn>s1を満たすと判定されるときまで、ステップS105〜ステップS107の処理は繰り返される。
一方、sn>s1を満たすと判定されたときには、ステップS108の処理において、角度移動量算出部23は、3軸ジャイロセンサ4で検出された時間tnから時間tn+s2までの対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tnから時間tn+s2までのヘルメット座標系(X’Y’Z’座標系)の角度移動量(RLDEP、ELDEP、AZDEP)を算出する。
【0035】
次に、ステップS109の処理において、光学マーカー推定部26は、時間tnの光学マーカー位置情報、時間tnの画像データ、及び、時間tnから時間tn+s2までの角度移動量(RLDEP、ELDEP、AZDEP)に基づいて、LED7a、7b、7cの予想移動位置17a、17b、17cを推定する。
次に、ステップS110の処理において、光学マーカー位置情報算出部24は、時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17cを用いて、LED7a、7b、7cのそれぞれの予想移動範囲(Da、Db、Dc)を相対座標系(XYZ座標系)に設定する。
【0036】
次に、ステップS111の処理において、光学マーカー位置情報算出部24は、時間tn+1の画像データを用いて、予想移動範囲(Da、Db、Dc)に存在するLEDを、時間tn+s2に設定された予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別することにより、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報を算出する。このとき、光学マーカー記憶部44に時間tn+1の光学マーカー位置情報を記憶させる。
次に、ステップS112の処理において、相対頭部情報算出部22は、時間tn+1の光学マーカー位置情報に基づいて、カメラ装置2(2a、2b)(相対座標系)に対する遊戯者3の位置(X、Y、Z)及び角度(Θ、Φ、Ψ)を算出する。
【0037】
次に、ステップS113の処理において、映像表示光を出射することを終了させるか否かを判定する。映像表示光を出射することを終了させるときには、本フローチャートを終了させる。一方、映像表示光を出射することを終了させないと判定されたときには、ステップS114の処理において、時間(t)に+1と更新するように、tn=tn+1と時間記憶部44に記憶させて、ステップS103の処理に戻る。つまり、映像表示光を出射することを終了させると判定されるときまで、ステップS103〜ステップS114の処理は繰り返される。
【0038】
以上のように、HMT装置1によれば、時間がtn、tn+s2(tn+1の直前)、tn+1と順に流れたとすると、時間tnに記憶された3個のLED7a、7b、7cのそれぞれの位置と、時間tnから時間tn+s2で頭部装着型表示装置付ヘルメット10に作用する対象物角速度(VRL、VEL、VAZ)とにより、頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を算出することで、時間tn+s2でのLED7a、7b、7cの予想移動位置17a、17b、17cを推定する。次に、推定された予想移動位置17a、17b、17cを中心とする球状である予想移動範囲(Da、Db、Dc)を設定することにより、時間tn+1に予想移動範囲(Da、Db、Dc)に存在するLED7a、7b、7cを、時間tn+s2に設定された予想移動範囲(Da、Db、Dc)に対応するLED7a、7b、7cと同一のものであると識別する。
したがって、時間tnに記憶されたLED7a、7b、7cの位置を中心とする予想移動範囲(Da、Db、Dc)を設定するのではなく、対象物角速度(VRL、VEL、VAZ)により推定されたLED7a、7b、7cの位置を中心とする予想移動範囲(Da、Db、Dc)を設定するので、頭部装着型表示装置付ヘルメット10の移動速度が速い場合にも、予想移動範囲(Da、Db、Dc)にLED7a、7b、7cが存在しなくなることを防ぐことができる。
【0039】
(実施形態2)
図12は、本発明の他の一実施形態であるHMT装置の概略構成を示す図である。本実施形態は、飛行機(移動体)でパイロットが着用する頭部装着型表示装置付ヘルメットの現在位置及び現在角度を算出するものである。つまり、HMT装置61は、飛行機62に設定された相対座標系(XYZ座標系)に対する、パイロット63の頭部位置及び頭部角度を含む相対情報を算出するものである。なお、上述した実施形態1と同様のものについては、同じ符号を付して、説明を省略することとする。
【0040】
HMT装置61は、パイロット63の頭部に装着される頭部装着型表示装置付ヘルメット10と、飛行体62の天井に取り付けられたカメラ装置2(2a、2b)と、飛行体62に取り付けられた3軸ジャイロセンサ(移動体角速度検出センサ)64と、コンピュータにより構成される制御部20とから構成される。
3軸ジャイロセンサ(対象物角速度検出センサ)4は、頭部装着型表示装置付ヘルメット10と飛行体62とに作用する角速度を短時間(例えば、4msec)で検出するものである。つまり、パイロット63は飛行体62に乗っており、飛行体62も動いているので、対象物角速度は、頭部装着型表示装置付ヘルメット10の角速度だけでなく、飛行機62の角速度も含んだものとなる。
一方、3軸ジャイロセンサ64は、飛行体62のみに作用する角速度を、3軸ジャイロセンサ4と同時間で検出するものである。なお、3軸ジャイロセンサ64は、相対座標系(XYZ座標系)に軸を合わせられている。よって、ロール方向(X軸に対する回転)、エレベーション方向(Y軸に対する回転)、アジマス方向(Z軸に対する回転)における移動体角速度が検出される。
【0041】
制御部20は、図12に示すように、CPU21、メモリ41等からなるコンピュータにより構成され、各種の制御や演算処理を行うものである。CPU21が実行する処理を、機能ブロックごとに分けて説明すると、モーショントラッカ駆動部28と、対象物角速度と移動体角速度とに基づいてカメラ装置2に対する頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を算出する角度移動量算出部65と、相対情報算出部22と、光学マーカー位置情報算出部24と、光学マーカー推定部26と、映像表示部25と、予想移動位置17a、17b、17c及び光学マーカー位置情報に基づいてLED7a、7b、7cの移動距離量を算出することで予想移動範囲(Da、Db、Dc)の大きさを決定する予想移動範囲決定部66とを有する。
また、予想移動範囲記憶部45には、LED7a、7b、7cの移動距離量と、予想移動範囲(Da、Db、Dc)の大きさとを対応させたテーブルが記憶されている。
【0042】
角度移動量算出部65は、3軸ジャイロセンサ4で検出された時間tnから時間tn+s2までの対象物角速度と、3軸ジャイロセンサ64で検出された時間tnから時間tn+s2までの対象物角速度との差分を積分演算することにより、時間tnから時間tn+s2までの相対座標系(XYZ座標系)に対するヘルメット座標系(X’Y’Z’座標系)の角度移動量(RLDEP、ELDEP、AZDEP)を算出する制御を行うものである。
【0043】
予想移動範囲決定部66は、予想移動位置17a、17b、17c及び時間tnの光学マーカー位置情報に基づいてLED7a、7b、7cの移動距離量を算出することで予想移動範囲(Da、Db、Dc)の大きさを決定する制御を行うものである。
例えば、LED7aの予想移動位置17aを中心とする予想移動範囲(Da)の大きさを、LED7aの移動距離量が長い場合には大きくし、一方、LED7aの移動距離量が短い場合には小さくする。
【0044】
光学マーカー位置情報算出部24は、時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17c、及び、予想移動範囲決定部66で決定された予想移動範囲(Da、Db、Dc)の大きさを用いて、LED7a、7b、7cのそれぞれの予想移動範囲(Da、Db、Dc)を設定することにより、時間tn+1の画像データを用いて、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報を算出する制御を行うものである。
【0045】
以上のように、HMT装置61によれば、3軸ジャイロセンサ4で、飛行体62中ではパイロット63の頭部の動きと飛行体62の動きとが合成された動きの情報が検出されるが、3軸ジャイロセンサ64で飛行体62の動きのみの情報が検出されるため、対象物角速度と移動体角速度とを用いて、飛行体62の動きを除外したパイロット63の頭部の動きのみの情報を算出することができる。これにより、パイロット63が飛行体62に搭乗していても、推定されたLED7a、7b、7cの予想移動位置17a、17b、17cを中心とする予想移動範囲(Da、Db、Dc)を設定することができるので、パイロット63の頭部の移動速度が速い場合にも、予想移動範囲(Da、Db、Dc)に光LED7a、7b、7cが存在しなくなることを防ぐことができる。
また、予想移動範囲決定部66は、時間tnから時間tn+s2で頭部装着型表示装置付ヘルメット10の角度移動量を算出することで、時間tnから時間tn+s2までのLED7a、7b、7cの移動距離量を算出する。これにより、LED7aの予想移動位置LED17aを中心とする予想移動範囲(Da)の大きさを、LED7aの移動距離量が長い場合には大きくし、一方、LED7aの移動距離量が短い場合には小さくする。よって、頭部装着型表示装置付ヘルメット10の移動速度が速い場合にも、予想移動範囲(Da、Db、Dc)にLED7a、7b、7cが存在しなくなることをより防ぐとともに、頭部装着型表示装置付ヘルメット10の移動速度が遅い場合に、予想移動範囲(Da、Db、Dc)に2個以上のLED7a、7b、7cが同時に存在することをより防ぐことができる。
【産業上の利用可能性】
【0046】
本発明のHMT装置は、例えば、ゲーム機や乗物等で用いられる頭部装着型表示装置付ヘルメットの現在位置及び現在角度を検出するものとして、利用される。
【図面の簡単な説明】
【0047】
【図1】本発明の一実施形態であるHMT装置の概略構成を示す図である。
【図2】図1に示す頭部装着型表示装置付ヘルメットの平面図である。
【図3】相対座標系の設定を説明するための図である。
【図4】制御部が実行する流れを説明するためのタイムチャートである。
【図5】頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図6】頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図7】頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図8】HMT装置による測定動作について説明するためのフローチャートである。
【図9】HMT装置による測定動作について説明するためのフローチャートである。
【図10】従来の頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図11】従来の頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図12】本発明の他の一実施形態であるHMT装置の概略構成を示す図である。
【符号の説明】
【0048】
1 ヘッドモーショントラッカ装置
2 カメラ装置
3 遊戯者
4 3軸ジャイロセンサ(対象物角速度検出センサ)
7 LED群(光学マーカー)
10 頭部装着型表示装置付ヘルメット(対象物)
22 相対情報算出部
23 角度移動量算出部
24 光学マーカー位置情報算出部
26 光学マーカー推定部
44 光学マーカー記憶部
【技術分野】
【0001】
本発明は、光学方式のモーショントラッカ装置(以下、MT装置ともいう)に関し、さらに詳細には、光学マーカーの現在位置及び現在角度を検出する機能を備える光学方式のMT装置に関する。本発明は、例えば、ゲーム機や乗物等で用いられる頭部装着型表示装置付ヘルメットの現在位置及び現在角度(すなわち、現在の頭部位置及び頭部角度)を検出するヘッドモーショントラッカ装置(以下、HMT装置ともいう)等に利用される。
ここで、光学方式のHMT装置とは、反射板や発光体等の光学マーカーを取り付けたヘルメット等を頭部に装着して、光学マーカーの位置を立体視が可能なカメラ装置で測定することにより、頭部の動きを追跡する装置等のことをいう。
【背景技術】
【0002】
時々刻々と変動する物体の現在位置や現在角度を正確に測定する技術は、様々な分野で利用されている。例えば、ゲーム機では、バーチャルリアリティ(VR)を実現するために、頭部装着型表示装置付ヘルメットを用いることにより、映像を表示することがなされている。このとき、頭部装着型表示装置付ヘルメットの現在位置や現在角度に合わせて、映像を変化させる必要がある。よって、頭部装着型表示装置付ヘルメットの現在位置や現在角度を測定するために、HMT装置が利用されている。
【0003】
また、救難飛行艇による救難活動では、発見した救難目標を見失うことがないようにするため、頭部装着型表示装置付ヘルメットにより表示される照準画像と救難目標とが対応した時にロックすることにより、ロックされた救難目標の位置を演算することが行われている。このとき、その救難目標の位置を演算するために、飛行体の緯度、経度、高度、姿勢に加えて、飛行体に設定された相対座標系に対するパイロットの頭部角度及び頭部位置を測定している。このときに、HMT装置が利用されている。
【0004】
頭部装着型表示装置付ヘルメットに利用されるHMT装置としては、光学的に頭部装着型表示装置付ヘルメットの現在位置や現在角度を測定するものが開示されている(例えば、特許文献1参照)。例えば、複数の反射板を頭部装着型表示装置付ヘルメットに取り付けるとともに光源から光を照射したときの反射光をカメラ装置でモニタする光学方式のHMT装置が開示されている。また、発光体を互いに離隔するようにして複数箇所に取り付けた光学方式のHMT装置もある(例えば、特許文献2参照)。具体的には、頭部装着型表示装置付ヘルメットの外周面上に、光学マーカー群として、発光体であるLED(発光ダイオード)を互いに離隔するようにして3箇所に取り付け、これら3個のLEDの相対的な位置関係をHMT装置に予め記憶させておく。そして、これら3個のLEDを、ステレオ視が可能でかつ設置場所が固定された2台のカメラで同時に立体視で撮影することで、所謂、三角測量の原理により、現在の3個のLEDの相対的な位置関係を測定している。頭部装着型表示装置付ヘルメットに固定された3点の位置(3個のLEDの位置)が特定できれば、頭部装着型表示装置付ヘルメットの位置や角度が特定できるので、これにより、2台のカメラに対する頭部装着型表示装置付ヘルメットの移動位置や移動角度を算出している。
【特許文献1】特表平9−506194号公報
【特許文献2】特願2005−106418号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
上述したような光学方式のHMT装置で、3個の光学マーカーの相対的な位置関係を測定するためには、3個の光学マーカーをそれぞれ識別する必要がある。よって、頭部装着型表示装置付ヘルメットには、それぞれが識別可能な3個の光学マーカーが取り付けられている。例えば、頭部装着型表示装置付ヘルメットの外周面上に、3個の光学マーカーとして、互いに異なる波長の赤外光を発光するLEDを互いに離隔するようにして取り付け、これら3個のLEDのそれぞれの位置をHMT装置に予め記憶させておく。そして、これら3個のLEDを波長差によりそれぞれ識別しながら、3個のLEDのそれぞれの現在位置を測定していた。
【0006】
しかしながら、それぞれが識別可能な3個の光学マーカーを取り付けた場合、1個の光学マーカーが故障等したときに、故障した1個の光学マーカーを新品の1個の光学マーカーと交換するとともに、新品の1個の光学マーカーの識別情報(例えば、波長情報)を改めてHMT装置に記憶させる必要があった。よって、新品の光学マーカーと交換するたびに、新品の光学マーカーの識別情報をHMT装置に記憶させる手間がかかった。
また、識別情報を有さない3個の光学マーカーを、1個1個順番に点灯させることにより、識別することも考えられるが、1個1個順番に点灯させなければならないので、時々刻々と変化する頭部装着型表示装置付ヘルメットの動きをモニタリングすることには困難である。
【0007】
そこで、本出願人は、対象物とする頭部装着型表示装置付ヘルメット50等に取り付けられた3個のLED57a、57b、57cのそれぞれの現在位置を識別する際に、LED57a、57b、57cに識別情報を持たせたり、1個1個順番に点灯させたりすることもなく、LED57a、57b、57cのそれぞれの現在位置を識別することができる方法を見出した。例えば、時間がt1、t2と順に流れたとすると、図10に示すように、時間t1に、LED57a、57b、57cのそれぞれの位置を記憶するとともに、記憶されたそれぞれのLED57a、57b、57cの位置を中心とする一定の大きさの球状である予想移動範囲(Da、Db、Dc)を設定することにより、時間t2に、予想移動範囲(Da、Db、Dc)に存在するLEDを、時間t1に設定された予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別した。
【0008】
しかしながら、図11に示すように、頭部装着型表示装置付ヘルメット50の移動速度が速い場合(特に頭部装着型表示装置付ヘルメットが回転移動する場合)に、予想移動範囲(Da、Db、Dc)にLEDが存在しなくなることがあった。また、設定する予想移動範囲(Da、Db、Dc)の大きさを大きくすると、予想移動範囲(Da、Db、Dc)に2個のLEDが同時に存在することがあった。つまり、予想移動範囲(Da、Db、Dc)に存在するLEDを、その予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別することができなくなることがあった。
【0009】
そこで、本発明は、頭部装着型表示装置付ヘルメット等の対象物に取り付けられた3個以上のLED等の光学マーカーのそれぞれの現在位置を識別する際に、光学マーカーに識別情報を持たせたり、1個1個順番に点灯させたりすることなく、各光学マーカーを確実に識別することができるモーショントラッカ装置を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するためになされた本発明のモーショントラッカ装置は、対象物に位置決めされて取り付けられた3個以上の同一の光学マーカーと、前記光学マーカーからの光線を立体視で検出するカメラ装置と、検出された光線に基づいて、前記3個以上の光学マーカーのそれぞれの現在位置を含む光学マーカー位置情報を算出する光学マーカー位置情報算出部と、前記光学マーカー位置情報を記憶する光学マーカー記憶部と、前記光学マーカー位置情報に基づいて、前記カメラ装置に対する対象物の現在位置及び現在角度を含む相対情報を算出する相対情報算出部とを備えるモーショントラッカ装置であって、前記対象物に位置決めされて取り付けられ、前記対象物に作用する対象物角速度を、前記カメラ装置での光線の検出間隔時間より短時間で検出する対象物角速度検出センサと、前記対象物角速度に基づいて、前記対象物の角度移動量を算出する角度移動量算出部と、前記光学マーカー記憶部に記憶された光学マーカー位置情報及び角度移動量に基づいて、前記光学マーカーの予想移動位置を推定する光学マーカー推定部とを備え、前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記3個以上の光学マーカーをそれぞれ識別するようにしている。
【0011】
ここで、「対象物角速度検出センサ」とは、センサ自体に3軸が定義されて、この3軸を基準とする角速度を短時間(例えば、4msec)で検出できるもののことをいい、具体的には、ジャイロセンサ等が用いられる。
また、「カメラ装置での光線の検出間隔時間」とは、例えば、カメラ装置による撮影と撮影との間隔時間(例えば、16msec)等のこという。
本発明のモーショントラッカ装置によれば、例えば、時間がt1、t2’(t2の直前)、t2と順に流れたとすると、時間t1に記憶された3個以上の光学マーカーのそれぞれの位置と、時間t1から時間t2’で対象物に作用する対象物角速度とにより、対象物の角度移動量を算出することで、時間t2’での光学マーカーの予想移動位置を推定する。次に、例えば、推定された各光学マーカーの予想移動位置を中心とする球状である予想移動範囲を設定することにより、時間t2に予想移動範囲に存在する光学マーカーを、時間t2’に設定された予想移動範囲に対応する光学マーカーと同一のものであると識別する。
【発明の効果】
【0012】
以上のように、本発明のモーショントラッカ装置によれば、例えば、時間t1に記憶された光学マーカーの位置を中心とする予想移動範囲を設定するのではなく、対象物角速度により推定された光学マーカーの位置を中心とする予想移動範囲を設定するので、対象物の移動速度が速い場合にも、予想移動範囲に光学マーカーが存在しなくなることを防ぐことができる。
【0013】
(他の課題を解決するための手段および効果)
また、上記の発明において、前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記光学マーカーの予想移動範囲を設定することで、前記3個以上の光学マーカーをそれぞれ識別するようにしてもよい。
また、上記の発明において、前記光学マーカーの予想移動範囲は、各光学マーカーの予想移動位置を中心とする球状であるようにしてもよい。
【0014】
そして、上記の発明において、前記角度移動量に基づいて、前記光学マーカーの移動距離量を算出することで、前記光学マーカーの予想移動範囲の大きさを決定する予想移動範囲決定部を備えるようにしてもよい。
本発明によれば、例えば、時間t1から時間t2’で対象物に作用する対象物角速度により、対象物の角度移動量を算出することで、時間t1から時間t2’までの光学マーカーの移動距離量を算出する。これにより、1個の光学マーカーの予想移動位置を中心とする予想移動範囲の大きさを、例えば、光学マーカーの移動距離量が長い場合には大きくし、一方、光学マーカーの移動距離量が短い場合には小さくすることができる。よって、対象物の移動速度が速い場合にも、予想移動範囲に光学マーカーが存在しなくなることをより防ぐとともに、対象物の移動速度が遅い場合に、予想移動範囲に2個以上の光学マーカーが同時に存在することをより防ぐことができる。
【0015】
さらに、上記の発明において、前記対象物は、搭乗者の頭部に装着されるヘルメットであり、かつ、前記カメラ装置は、前記搭乗者が搭乗する移動体に取り付けられ、さらに、前記移動体に取り付けられ、前記移動体に作用する移動体角速度を、前記対象物角速度検出センサと同時間に検出する移動体角速度検出センサを備え、前記角度移動量算出部は、前記対象物角速度と移動体角速度とに基づいて、前記カメラ装置に対する対象物の角度移動量を算出するようにしてもよい。
ここで、「移動体角速度検出センサ」とは、対象物角速度検出センサと同様に、センサ自体に3軸が定義されて、この3軸を基準とする角速度を短時間(例えば、4msec)で検出できるもののことをいい、具体的には、ジャイロセンサ等が用いられる。
本発明によれば、対象物角速度検出センサで、移動体中では搭乗者の頭部の動きと移動体の動きとが合成された動きの情報が検出されるが、移動体角速度検出センサで移動体の動きのみの情報が検出されるため、対象物角速度と移動体角速度とを用いて、移動体の動きを除外した搭乗者の頭部の動きのみの情報を算出することができる。これにより、例えば、搭乗者が移動体に搭乗していても、推定された光学マーカーの予想移動位置を中心とする予想移動範囲を設定することができるので、対象物の移動速度が速い場合にも、予想移動範囲に光学マーカーが存在しなくなることを防ぐことができる。
【発明を実施するための最良の形態】
【0016】
以下、本発明の実施形態について図面を用いて説明する。なお、本発明は、以下に説明するような実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の態様が含まれることはいうまでもない。
【0017】
(実施形態1)
図1は、本発明の一実施形態であるHMT装置の概略構成を示す図であり、図2は、図1に示す頭部装着型表示装置付ヘルメットの平面図である。本実施形態は、ゲーム機で遊戯者が着用する頭部装着型表示装置付ヘルメットの現在位置及び現在角度を算出するものである。つまり、HMT装置1は、ゲーム機30に設定された相対座標系(XYZ座標系)に対する、遊戯者3の頭部位置及び頭部角度を含む相対情報を算出するものである。なお、相対座標系(XYZ座標系)は、後述するカメラ装置2(2a、2b)を基準とするものであり、相対座標記憶部43に記憶されている。
【0018】
HMT装置1は、遊戯者3の頭部に装着される頭部装着型表示装置付ヘルメット10と、ゲーム機30の天井に取り付けられたカメラ装置2(2a、2b)と、コンピュータにより構成される制御部20とから構成される。
頭部装着型表示装置付ヘルメット10は、表示器(図示せず)と、表示器から出射される画像表示光を反射することにより、遊戯者3の目に導くコンバイナ8と、位置や角度(すなわち、頭部位置や頭部角度)を測定する際の指標となる光学マーカーとして機能するLED群7と、3軸ジャイロセンサ(対象物角速度検出センサ)4とを有する。なお、頭部装着型表示装置付ヘルメット10を装着した遊戯者3は、表示器による表示映像とコンバイナ8の前方実在物とを視認することが可能となっている。
【0019】
ここで、頭部装着型表示装置付ヘルメット10自体にも、ヘルメット座標系(X’Y’Z’座標系)が定められているが、3軸ジャイロセンサ4はヘルメット座標系と正確に軸合わせされ、かつ、ヘルメット座標系に位置決めされて取り付けられているとともに、ヘルメット座標系は遊戯者3によって相対座標系(XYZ座標系)と軸合わせ(軸のズレの調整)される。頭部装着型表示装置付ヘルメット10自体のヘルメット座標系(X’Y’Z’座標系)と相対座標系(XYZ座標系)との軸合わせの方法については、広く用いられている一般的な方法(例えば、頭部装着型表示装置付ヘルメットを装着した遊戯者に特定方向を向くように指示することにより軸合わせを行う方法)等により行われる。
【0020】
LED群7は、図2に示すように、同じ波長の赤外光を発光する3個(あるいは3個以上の数)のLED7a、7b、7cがお互い一定の距離(d2)を隔てるようにして、ヘルメット座標系(X’Y’Z’座標系)に位置決めされて取り付けられたものである。つまり、LED7a、7b、7cは、同じ波長の赤外光を発光するものなので、各LEDを識別することはできないことになる。
3軸ジャイロセンサ4は、頭部装着型表示装置付ヘルメット10に作用する角速度を短時間(例えば、4msec)で検出するものである。なお、3軸ジャイロセンサ4は、ヘルメット座標系(X’Y’Z’座標系)に軸を合わせられている。よって、ロール方向(X’軸に対する回転)、エレベーション方向(Y’軸に対する回転)、アジマス方向(Z’軸に対する回転)における対象物角速度(VRL、VEL、VAZ)が検出される。また、3軸ジャイロセンサ4は、ヘルメット座標系(X’Y’Z’座標系)の原点に取り付けられているが、ヘルメット座標系(X’Y’Z’座標系)の原点以外の位置に取り付けられた場合には、ヘルメット座標系(X’Y’Z’座標系)の原点の位置での角速度を求めるために、原点位置と取付位置とのオフセット分を調整するためのオフセット行列M0を乗算したりする一般的な計算方法等で、対象物角速度(VRL、VEL、VAZ)を変換することになる。
【0021】
ゲーム機30は、遊戯者3が着席する座席30aを備える。
カメラ装置2(2a、2b)は、2台のカメラ2a、2bからなり、撮影方向が頭部装着型表示装置付ヘルメット10に向けられているとともに、頭部装着型表示装置付ヘルメット10の立体視が可能な一定の距離(d1)を隔てるように、ゲーム機30の天井に固定軸を介して設置されている。
よって、図3に示すように、LED7aのカメラ装置2(2a、2b)に対する位置は、カメラ装置2(2a、2b)に撮影された画像中に映し出されているLED7aの位置を抽出し、さらにカメラ2aからの方向角度(α)とカメラ2bからの方向角度(β)とを抽出し、カメラ2aとカメラ2bとの間の距離(d1)を用いることにより、三角測量の手法で算出することができるようにしてある。他の光学マーカーであるLED7b、7cのカメラ装置2(2a、2b)に対する位置についても、同様に算出されるようにしてある。
【0022】
このときの各LED7a、7b、7cの位置を、空間座標で表現することができるようにするために、カメラ装置2(2a、2b)に固定され、カメラ装置2とともに移動する座標系である相対座標系(XYZ座標系)を用いる。なお、相対座標系(XYZ座標系)の具体的な原点位置やXYZ軸方向の説明については後述する。相対座標系(XYZ座標系)によりLED7a、7b、7cの位置座標は、(X1、Y1、Z1)、(X2、Y2、Z2)、(X3、Y3、Z3)として表現できる。これにより、カメラ装置2(2a、2b)に対する3つのLED7a、7b、7cの位置座標(X1、Y1、Z1)、(X2、Y2、Z2)、(X3、Y3、Z3)がそれぞれどのLEDか識別されて特定されれば、LED7a、7b、7cが位置決めされて取り付けられている頭部装着型表示装置付ヘルメット10の位置(X、Y、Z)及び角度(Θ、Φ、Ψ)は、相対座標系(XYZ座標系)に対する位置及び角度を用いて表現できるようになる。なお、角度(Θ)は、ロール方向(X軸に対する回転)の角度であり、角度(Φ)は、エレベーション方向(Y軸に対する回転)の角度であり、角度(Ψ)は、アジマス方向(Z軸に対する回転)の角度である。
【0023】
制御部20は、図1に示すように、CPU21、メモリ41等からなるコンピュータにより構成され、各種の制御や演算処理を行うものである。CPU21が実行する処理を、機能ブロックごとに分けて説明すると、モーショントラッカ駆動部28と、角度移動量算出部23と、相対情報算出部22と、光学マーカー位置情報算出部24と、光学マーカー推定部26と、映像表示部25とを有する。なお、図4は、制御部20が実行する流れを説明するタイムチャートである。
【0024】
また、メモリ41には、制御部20が処理を実行するために必要な種々のデータを蓄積する領域が形成してあり、相対座標系(XYZ座標系)を記憶する相対座標記憶部43と、時間記憶部42と、3個のLED7a、7b、7cのヘルメット座標系(X’Y’Z’座標系)でのそれぞれの位置(X’DIS、Y’DIS、Z’ DIS)や、3個のLED7a、7b、7cの時間tnのそれぞれの位置(XLED、YLED、ZLED)を含む光学マーカー位置情報を順次記憶する光学マーカー記憶部44と、d2を直径とする球状とする予想移動範囲の大きさを記憶する予想移動範囲記憶部45とを有する。
ここで、相対座標系(XYZ座標系)は、原点及び各座標軸の方向を任意に定めることができるが、本実施形態では図3に示すように、カメラ2bからカメラ2aへの方向をX軸方向とし、X軸方向に垂直かつ天井に垂直で下向き方向をZ軸方向とし、X軸方向に垂直かつ天井に水平で右向き方向をY軸方向とするように定義し、原点をカメラ2a、カメラ2bの中点として定義するように相対座標記憶部43に設定されている。
また、時間記憶部44は、カメラ装置2でLED7a、7b、7cが検出される毎に更新される時間(t)と、3軸ジャイロセンサ4で対象物角速度(VRL、VEL、VAZ)が検出される毎に更新される時間(s)とを記憶する。ただし、ここでの時間は、実時間を単位とする代わりに、後述するモーショントラッカ駆動部28や角度移動量算出部23が、画像データ、角度移動量(RLDEP、ELDEP、AZDEP)を算出するプログラム(図4、図8、図9参照)を実行する際の処理回数カウンタt、sの値を、「時間」として扱うものであり、例えば、s0はs=0(すなわちカウンタ値sが0)に対応し、t1はt=1(すなわちカウンタ値が1)に対応する。
【0025】
モーショントラッカ駆動部28は、LED群7を点灯させる指令信号を出力するとともに、カメラ装置2(2a、2b)でLED群7から出射される光線の画像データを時間(t)毎に検出させる制御を行うものである。しかし、LED7a、7b、7cは、同じ波長の赤外光を発光するものなので、各LEDを識別することはできない。そこで、後述する光学マーカー位置情報算出部24から光学マーカー位置情報を得ることで、各LEDが識別される。よって、画像データと光学マーカー位置情報とが光学マーカー記憶部44に記憶されて、蓄積されていくことになる。
【0026】
角度移動量算出部23は、3軸ジャイロセンサ4で検出された時間tnから時間tn+s2までの対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tnから時間tn+s2までのヘルメット座標系(X’Y’Z’座標系)の角度移動量(RLDEP、ELDEP、AZDEP)を算出する制御を行うものである。
例えば、まず、3軸ジィイロセンサ4で検出された時間s0の対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tnに記憶された頭部装着型表示装置付ヘルメット10の角度(Θ、Φ、Ψ)からの角度移動量(RLs0、ELs0、AZs0)を算出する。次に、3軸ジィイロセンサ4で検出された時間s1の対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tn+s0に記憶された頭部装着型表示装置付ヘルメット10の角度(Θ、Φ、Ψ)からの移動角度量(RLs1、ELs1、AZs1)を算出する。このように角度移動量を算出していき、時間s0〜s2に算出された移動角度量を合計して、時間tから時間tn+s2までの頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を算出する。
【0027】
光学マーカー推定部26は、時間tnの光学マーカー位置情報、時間tnの画像データ、及び、時間tnから時間tn+s2までの角度移動量(RLDEP、ELDEP、AZDEP)に基づいて、LED7a、7b、7cの予想移動位置17a、17b、17cを推定する制御を行うものである。
例えば、時間tnから時間tn+s2までの頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を用いて下記式(1)により、頭部装着型表示装置付ヘルメット10に位置決めして取り付けられたLED7aの時間tnから時間tn+s2までの移動距離量(ΔX、ΔY、ΔZ)を算出する。そして、下記式(2)により、時間tnのLED7aの位置(XLED、YLED、ZLED)に移動距離量(ΔX、ΔY、ΔZ)を加算することで、時間tn+s2でのLED7aの予想移動位置17a(XDEP、YDEP、ZDEP)を推定する(図5参照)。また、LED7b、7cについても、同様に移動距離量を算出して、時間tn+s2でのLED7b、7cの予想移動位置17b、17cを推定する。
【0028】
【数1】
【0029】
【数2】
【0030】
光学マーカー位置情報算出部24は、時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17cを用いて、LED7a、7b、7cのそれぞれの予想移動範囲(Da、Db、Dc)を設定することにより、時間tn+1の画像データを用いて、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報を算出する制御を行うものである。
まず、図6に示すように、光学マーカー推定部26により推定された時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17cを中心としd2を直径とする球状である予想移動範囲(Da、Db、Dc)をXYZ座標系に設定する。これにより、時間tn+1に、予想移動範囲(Da、Db、Dc)に存在するLEDを、時間tn+s2に設定された予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別する。例えば、図7に示すように、時間tn+1に、予想移動範囲(Da)に存在するLED7aを、時間tn+s2に設定された予想移動範囲(Da)に対応するLED7aと同一のものであると識別する。同様に、予想移動範囲(Db)に存在するLED7bを、LED7bと同一のものであるとし、予想移動範囲(Dc)に存在するLED7cを、LED7cと同一のものであると識別する。このようにして、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報が算出される。
【0031】
相対情報算出部22は、時間tn+1の光学マーカー位置情報に基づいて、カメラ2a及びカメラ2b(XYZ座標系)に対する遊戯者3の頭部位置(X、Y、Z)及び頭部角度(Θ、Φ、Ψ)を含む相対情報を算出する制御を行うものである。
つまり、光学マーカーであるLED群7から発光される赤外光を検出することにより3個のLED7a、7b、7cのそれぞれの現在の位置座標である時間tn+1の光学マーカー位置情報を得ることで、カメラ装置2a、2bに対する3個の現在位置が特定されるので、XYZ座標系に対するLED7a、7b、7cが固定されている頭部装着型表示装置付ヘルメット10の現在位置(X、Y、Z)や現在角度(Θ、Φ、Ψ)が算出される。
映像表示部25は、相対情報に基づいて、表示器から映像表示光を出射する制御を行うものである。これにより、遊戯者3は、表示器による表示映像を視認することができるようになる。
【0032】
次に、HMT装置1により、相対座標系(XYZ座標系)に対する遊戯者3の頭部位置(X、Y、Z)及び頭部角度(Θ、Φ、Ψ)を測定する測定動作について説明する。図8及び図9は、HMT装置1による測定動作について説明するためのフローチャートである。
まず、ステップS101の処理において、頭部装着型表示装置付ヘルメット10を装着した遊戯者3に特定方向(初期位置)を向くように指示する。
次に、ステップS102の処理において、時間(t)にtn=t0と時間記憶部42に記憶させる。
【0033】
次に、ステップS103の処理において、モーショントラッカ駆動部28は、カメラ装置2(2a、2b)でLED群7の画像データを検出させる。なお、予め、光学マーカー記憶部44には、ヘルメット座標系(X’Y’Z’座標系)でのLED群7の座標位置(X’DIS、Y’DIS、Z’ DIS)を初期画像データとして記憶させているものとし、時間t0の光学マーカー位置情報は、初期画像データを用いてLED7a、7b、7cがそれぞれ識別されて、LED7a、7b、7cのそれぞれの現在位置を含む時間t0の光学マーカー位置情報が光学マーカー記憶部44に記憶される。
次に、ステップS104の処理において、時間(s)にsn=s0と時間記憶部42に記憶させる。
次に、ステップS105の処理において、3軸ジャイロセンサ4が、対象物角速度(VRL、VEL、VAZ)を検出する。
【0034】
次に、ステップS106の処理において、時間(s)がsn>s1を満たすか否かを判定する。sn>s1を満たさないときには、ステップS107の処理において、時間(s)に+1と更新するように、sn=sn+1と時間記憶部44に記憶させて、ステップS105の処理に戻る。つまり、sn>s1を満たすと判定されるときまで、ステップS105〜ステップS107の処理は繰り返される。
一方、sn>s1を満たすと判定されたときには、ステップS108の処理において、角度移動量算出部23は、3軸ジャイロセンサ4で検出された時間tnから時間tn+s2までの対象物角速度(VRL、VEL、VAZ)を積分演算することにより、時間tnから時間tn+s2までのヘルメット座標系(X’Y’Z’座標系)の角度移動量(RLDEP、ELDEP、AZDEP)を算出する。
【0035】
次に、ステップS109の処理において、光学マーカー推定部26は、時間tnの光学マーカー位置情報、時間tnの画像データ、及び、時間tnから時間tn+s2までの角度移動量(RLDEP、ELDEP、AZDEP)に基づいて、LED7a、7b、7cの予想移動位置17a、17b、17cを推定する。
次に、ステップS110の処理において、光学マーカー位置情報算出部24は、時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17cを用いて、LED7a、7b、7cのそれぞれの予想移動範囲(Da、Db、Dc)を相対座標系(XYZ座標系)に設定する。
【0036】
次に、ステップS111の処理において、光学マーカー位置情報算出部24は、時間tn+1の画像データを用いて、予想移動範囲(Da、Db、Dc)に存在するLEDを、時間tn+s2に設定された予想移動範囲(Da、Db、Dc)に対応するLEDと同一のものであると識別することにより、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報を算出する。このとき、光学マーカー記憶部44に時間tn+1の光学マーカー位置情報を記憶させる。
次に、ステップS112の処理において、相対頭部情報算出部22は、時間tn+1の光学マーカー位置情報に基づいて、カメラ装置2(2a、2b)(相対座標系)に対する遊戯者3の位置(X、Y、Z)及び角度(Θ、Φ、Ψ)を算出する。
【0037】
次に、ステップS113の処理において、映像表示光を出射することを終了させるか否かを判定する。映像表示光を出射することを終了させるときには、本フローチャートを終了させる。一方、映像表示光を出射することを終了させないと判定されたときには、ステップS114の処理において、時間(t)に+1と更新するように、tn=tn+1と時間記憶部44に記憶させて、ステップS103の処理に戻る。つまり、映像表示光を出射することを終了させると判定されるときまで、ステップS103〜ステップS114の処理は繰り返される。
【0038】
以上のように、HMT装置1によれば、時間がtn、tn+s2(tn+1の直前)、tn+1と順に流れたとすると、時間tnに記憶された3個のLED7a、7b、7cのそれぞれの位置と、時間tnから時間tn+s2で頭部装着型表示装置付ヘルメット10に作用する対象物角速度(VRL、VEL、VAZ)とにより、頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を算出することで、時間tn+s2でのLED7a、7b、7cの予想移動位置17a、17b、17cを推定する。次に、推定された予想移動位置17a、17b、17cを中心とする球状である予想移動範囲(Da、Db、Dc)を設定することにより、時間tn+1に予想移動範囲(Da、Db、Dc)に存在するLED7a、7b、7cを、時間tn+s2に設定された予想移動範囲(Da、Db、Dc)に対応するLED7a、7b、7cと同一のものであると識別する。
したがって、時間tnに記憶されたLED7a、7b、7cの位置を中心とする予想移動範囲(Da、Db、Dc)を設定するのではなく、対象物角速度(VRL、VEL、VAZ)により推定されたLED7a、7b、7cの位置を中心とする予想移動範囲(Da、Db、Dc)を設定するので、頭部装着型表示装置付ヘルメット10の移動速度が速い場合にも、予想移動範囲(Da、Db、Dc)にLED7a、7b、7cが存在しなくなることを防ぐことができる。
【0039】
(実施形態2)
図12は、本発明の他の一実施形態であるHMT装置の概略構成を示す図である。本実施形態は、飛行機(移動体)でパイロットが着用する頭部装着型表示装置付ヘルメットの現在位置及び現在角度を算出するものである。つまり、HMT装置61は、飛行機62に設定された相対座標系(XYZ座標系)に対する、パイロット63の頭部位置及び頭部角度を含む相対情報を算出するものである。なお、上述した実施形態1と同様のものについては、同じ符号を付して、説明を省略することとする。
【0040】
HMT装置61は、パイロット63の頭部に装着される頭部装着型表示装置付ヘルメット10と、飛行体62の天井に取り付けられたカメラ装置2(2a、2b)と、飛行体62に取り付けられた3軸ジャイロセンサ(移動体角速度検出センサ)64と、コンピュータにより構成される制御部20とから構成される。
3軸ジャイロセンサ(対象物角速度検出センサ)4は、頭部装着型表示装置付ヘルメット10と飛行体62とに作用する角速度を短時間(例えば、4msec)で検出するものである。つまり、パイロット63は飛行体62に乗っており、飛行体62も動いているので、対象物角速度は、頭部装着型表示装置付ヘルメット10の角速度だけでなく、飛行機62の角速度も含んだものとなる。
一方、3軸ジャイロセンサ64は、飛行体62のみに作用する角速度を、3軸ジャイロセンサ4と同時間で検出するものである。なお、3軸ジャイロセンサ64は、相対座標系(XYZ座標系)に軸を合わせられている。よって、ロール方向(X軸に対する回転)、エレベーション方向(Y軸に対する回転)、アジマス方向(Z軸に対する回転)における移動体角速度が検出される。
【0041】
制御部20は、図12に示すように、CPU21、メモリ41等からなるコンピュータにより構成され、各種の制御や演算処理を行うものである。CPU21が実行する処理を、機能ブロックごとに分けて説明すると、モーショントラッカ駆動部28と、対象物角速度と移動体角速度とに基づいてカメラ装置2に対する頭部装着型表示装置付ヘルメット10の角度移動量(RLDEP、ELDEP、AZDEP)を算出する角度移動量算出部65と、相対情報算出部22と、光学マーカー位置情報算出部24と、光学マーカー推定部26と、映像表示部25と、予想移動位置17a、17b、17c及び光学マーカー位置情報に基づいてLED7a、7b、7cの移動距離量を算出することで予想移動範囲(Da、Db、Dc)の大きさを決定する予想移動範囲決定部66とを有する。
また、予想移動範囲記憶部45には、LED7a、7b、7cの移動距離量と、予想移動範囲(Da、Db、Dc)の大きさとを対応させたテーブルが記憶されている。
【0042】
角度移動量算出部65は、3軸ジャイロセンサ4で検出された時間tnから時間tn+s2までの対象物角速度と、3軸ジャイロセンサ64で検出された時間tnから時間tn+s2までの対象物角速度との差分を積分演算することにより、時間tnから時間tn+s2までの相対座標系(XYZ座標系)に対するヘルメット座標系(X’Y’Z’座標系)の角度移動量(RLDEP、ELDEP、AZDEP)を算出する制御を行うものである。
【0043】
予想移動範囲決定部66は、予想移動位置17a、17b、17c及び時間tnの光学マーカー位置情報に基づいてLED7a、7b、7cの移動距離量を算出することで予想移動範囲(Da、Db、Dc)の大きさを決定する制御を行うものである。
例えば、LED7aの予想移動位置17aを中心とする予想移動範囲(Da)の大きさを、LED7aの移動距離量が長い場合には大きくし、一方、LED7aの移動距離量が短い場合には小さくする。
【0044】
光学マーカー位置情報算出部24は、時間tn+s2でのLED7a、7b、7cのそれぞれの予想移動位置17a、17b、17c、及び、予想移動範囲決定部66で決定された予想移動範囲(Da、Db、Dc)の大きさを用いて、LED7a、7b、7cのそれぞれの予想移動範囲(Da、Db、Dc)を設定することにより、時間tn+1の画像データを用いて、LED7a、7b、7cのそれぞれの現在位置を含む時間tn+1の光学マーカー位置情報を算出する制御を行うものである。
【0045】
以上のように、HMT装置61によれば、3軸ジャイロセンサ4で、飛行体62中ではパイロット63の頭部の動きと飛行体62の動きとが合成された動きの情報が検出されるが、3軸ジャイロセンサ64で飛行体62の動きのみの情報が検出されるため、対象物角速度と移動体角速度とを用いて、飛行体62の動きを除外したパイロット63の頭部の動きのみの情報を算出することができる。これにより、パイロット63が飛行体62に搭乗していても、推定されたLED7a、7b、7cの予想移動位置17a、17b、17cを中心とする予想移動範囲(Da、Db、Dc)を設定することができるので、パイロット63の頭部の移動速度が速い場合にも、予想移動範囲(Da、Db、Dc)に光LED7a、7b、7cが存在しなくなることを防ぐことができる。
また、予想移動範囲決定部66は、時間tnから時間tn+s2で頭部装着型表示装置付ヘルメット10の角度移動量を算出することで、時間tnから時間tn+s2までのLED7a、7b、7cの移動距離量を算出する。これにより、LED7aの予想移動位置LED17aを中心とする予想移動範囲(Da)の大きさを、LED7aの移動距離量が長い場合には大きくし、一方、LED7aの移動距離量が短い場合には小さくする。よって、頭部装着型表示装置付ヘルメット10の移動速度が速い場合にも、予想移動範囲(Da、Db、Dc)にLED7a、7b、7cが存在しなくなることをより防ぐとともに、頭部装着型表示装置付ヘルメット10の移動速度が遅い場合に、予想移動範囲(Da、Db、Dc)に2個以上のLED7a、7b、7cが同時に存在することをより防ぐことができる。
【産業上の利用可能性】
【0046】
本発明のHMT装置は、例えば、ゲーム機や乗物等で用いられる頭部装着型表示装置付ヘルメットの現在位置及び現在角度を検出するものとして、利用される。
【図面の簡単な説明】
【0047】
【図1】本発明の一実施形態であるHMT装置の概略構成を示す図である。
【図2】図1に示す頭部装着型表示装置付ヘルメットの平面図である。
【図3】相対座標系の設定を説明するための図である。
【図4】制御部が実行する流れを説明するためのタイムチャートである。
【図5】頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図6】頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図7】頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図8】HMT装置による測定動作について説明するためのフローチャートである。
【図9】HMT装置による測定動作について説明するためのフローチャートである。
【図10】従来の頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図11】従来の頭部装着型表示装置付ヘルメットの移動を説明するための図である。
【図12】本発明の他の一実施形態であるHMT装置の概略構成を示す図である。
【符号の説明】
【0048】
1 ヘッドモーショントラッカ装置
2 カメラ装置
3 遊戯者
4 3軸ジャイロセンサ(対象物角速度検出センサ)
7 LED群(光学マーカー)
10 頭部装着型表示装置付ヘルメット(対象物)
22 相対情報算出部
23 角度移動量算出部
24 光学マーカー位置情報算出部
26 光学マーカー推定部
44 光学マーカー記憶部
【特許請求の範囲】
【請求項1】
対象物に位置決めされて取り付けられた3個以上の同一の光学マーカーと、
前記光学マーカーからの光線を立体視で検出するカメラ装置と、
検出された光線に基づいて、前記3個以上の光学マーカーのそれぞれの現在位置を含む光学マーカー位置情報を算出する光学マーカー位置情報算出部と、
前記光学マーカー位置情報を記憶する光学マーカー記憶部と、
前記光学マーカー位置情報に基づいて、前記カメラ装置に対する対象物の現在位置及び現在角度を含む相対情報を算出する相対情報算出部とを備えるモーショントラッカ装置であって、
前記対象物に位置決めされて取り付けられ、前記対象物に作用する対象物角速度を、前記カメラ装置での光線の検出間隔時間より短時間で検出する対象物角速度検出センサと、
前記対象物角速度に基づいて、前記対象物の角度移動量を算出する角度移動量算出部と、
前記光学マーカー記憶部に記憶された光学マーカー位置情報及び角度移動量に基づいて、前記光学マーカーの予想移動位置を推定する光学マーカー推定部とを備え、
前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記3個以上の光学マーカーをそれぞれ識別することを特徴とするモーショントラッカ装置。
【請求項2】
前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記光学マーカーの予想移動範囲を設定することで、前記3個以上の光学マーカーをそれぞれ識別することを特徴とする請求項1に記載のモーショントラッカ装置。
【請求項3】
前記光学マーカーの予想移動範囲は、各光学マーカーの予想移動位置を中心とする球状であることを特徴とする請求項2に記載のモーショントラッカ装置。
【請求項4】
前記角度移動量に基づいて、前記光学マーカーの移動距離量を算出することで、前記光学マーカーの予想移動範囲の大きさを決定する予想移動範囲決定部を備えることを特徴とする請求項2又は3に記載のモーショントラッカ装置。
【請求項5】
前記対象物は、搭乗者の頭部に装着されるヘルメットであり、かつ、
前記カメラ装置は、前記搭乗者が搭乗する移動体に取り付けられ、
さらに、前記移動体に取り付けられ、前記移動体に作用する移動体角速度を、前記対象物角速度検出センサと同時間に検出する移動体角速度検出センサを備え、
前記角度移動量算出部は、前記対象物角速度と移動体角速度とに基づいて、前記カメラ装置に対する対象物の角度移動量を算出することを特徴とする請求項1〜4のいずれか1項に記載のモーショントラッカ装置。
【請求項1】
対象物に位置決めされて取り付けられた3個以上の同一の光学マーカーと、
前記光学マーカーからの光線を立体視で検出するカメラ装置と、
検出された光線に基づいて、前記3個以上の光学マーカーのそれぞれの現在位置を含む光学マーカー位置情報を算出する光学マーカー位置情報算出部と、
前記光学マーカー位置情報を記憶する光学マーカー記憶部と、
前記光学マーカー位置情報に基づいて、前記カメラ装置に対する対象物の現在位置及び現在角度を含む相対情報を算出する相対情報算出部とを備えるモーショントラッカ装置であって、
前記対象物に位置決めされて取り付けられ、前記対象物に作用する対象物角速度を、前記カメラ装置での光線の検出間隔時間より短時間で検出する対象物角速度検出センサと、
前記対象物角速度に基づいて、前記対象物の角度移動量を算出する角度移動量算出部と、
前記光学マーカー記憶部に記憶された光学マーカー位置情報及び角度移動量に基づいて、前記光学マーカーの予想移動位置を推定する光学マーカー推定部とを備え、
前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記3個以上の光学マーカーをそれぞれ識別することを特徴とするモーショントラッカ装置。
【請求項2】
前記光学マーカー位置情報算出部は、前記光学マーカーの予想移動位置に基づいて、前記光学マーカーの予想移動範囲を設定することで、前記3個以上の光学マーカーをそれぞれ識別することを特徴とする請求項1に記載のモーショントラッカ装置。
【請求項3】
前記光学マーカーの予想移動範囲は、各光学マーカーの予想移動位置を中心とする球状であることを特徴とする請求項2に記載のモーショントラッカ装置。
【請求項4】
前記角度移動量に基づいて、前記光学マーカーの移動距離量を算出することで、前記光学マーカーの予想移動範囲の大きさを決定する予想移動範囲決定部を備えることを特徴とする請求項2又は3に記載のモーショントラッカ装置。
【請求項5】
前記対象物は、搭乗者の頭部に装着されるヘルメットであり、かつ、
前記カメラ装置は、前記搭乗者が搭乗する移動体に取り付けられ、
さらに、前記移動体に取り付けられ、前記移動体に作用する移動体角速度を、前記対象物角速度検出センサと同時間に検出する移動体角速度検出センサを備え、
前記角度移動量算出部は、前記対象物角速度と移動体角速度とに基づいて、前記カメラ装置に対する対象物の角度移動量を算出することを特徴とする請求項1〜4のいずれか1項に記載のモーショントラッカ装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2008−289645(P2008−289645A)
【公開日】平成20年12月4日(2008.12.4)
【国際特許分類】
【出願番号】特願2007−137804(P2007−137804)
【出願日】平成19年5月24日(2007.5.24)
【出願人】(000001993)株式会社島津製作所 (3,708)
【Fターム(参考)】
【公開日】平成20年12月4日(2008.12.4)
【国際特許分類】
【出願日】平成19年5月24日(2007.5.24)
【出願人】(000001993)株式会社島津製作所 (3,708)
【Fターム(参考)】
[ Back to top ]