(57)【要約】【課題】  ユーザの部位、特に手と、この手を表す仮想物体との位置姿勢合わせ、サイズ合わせを簡便に行うための技術を提供すること。【解決手段】  グローブ２１０を装着した手を手形仮想物体にあわせて配置した旨を検知した場合には、磁気レシーバ２０３と磁気レシーバ２０２との位置姿勢関係、及び手形仮想物体と磁気レシーバ２０２との位置姿勢関係を用いて、磁気レシーバ２０３と手形仮想物体との位置姿勢関係を求める。【選択図】  図１
2006318095.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの部位の位置姿勢を取得する第１の取得工程と、
現実物体の表面上の所定領域中の１点の位置姿勢を取得する第２の取得工程と、
前記部位を表す仮想物体を所定の位置姿勢でもって前記所定領域内に配置する第１の配置工程と、
前記部位を前記仮想物体にあわせて配置した旨を検知した場合には、前記部位と前記１点との位置姿勢関係、及び前記仮想物体と前記１点との位置姿勢関係を用いて、前記部位と前記仮想物体との位置姿勢関係を求める計算工程と
を備えることを特徴とする画像処理方法。
【請求項２】
前記計算工程は、
前記部位を、前記仮想物体を前記表面上に正射影した領域にあわせて配置した旨を検知した場合には、前記部位と前記１点との位置姿勢関係、及び前記仮想物体と前記１点との位置姿勢関係を用いて、前記部位と前記仮想物体との位置姿勢関係を求めることを特徴とする請求項１に記載の画像処理方法。
【請求項３】
更に、
前記ユーザの視点から見える現実空間の画像を取得する第３の取得工程と、
前記画像中の前記部位が写っている画像領域と、前記視点から見える前記仮想物体の画像とに基づいて、前記仮想物体のサイズに対する前記部位のサイズの比率を求める比率計算工程と、
前記比率を用いて、前記仮想物体のサイズを前記部位のサイズにあわせるべく変更する変更工程と
を備えることを特徴とする請求項１又は２に記載の画像処理方法。
【請求項４】
ユーザの部位の位置姿勢を取得する第１の取得工程と、
前記ユーザの視点の位置姿勢を取得する第２の取得工程と、
現実物体の表面上の所定領域の位置姿勢を取得する第３の取得工程と、
前記第２の取得工程で取得した位置姿勢に基づき、前記所定領域に仮想物体の画像が合成された画像を提示するための表示工程と、
前記画像に前記部位を合わせたことを示す信号に基づき、前記部位の位置姿勢と前記仮想物体の画像との位置関係と、前記仮想物体の画像と前記所定領域の位置姿勢との位置関係を用いて、前記部位と前記仮想物体の位置姿勢関係を求める計算工程と
を備えることを特徴とする画像処理方法。
【請求項５】
ユーザの部位の位置姿勢を取得する第１の取得手段と、
現実物体の表面上の所定領域中の１点の位置姿勢を取得する第２の取得手段と、
前記部位を表す仮想物体を所定の位置姿勢でもって前記所定領域内に配置する第１の配置手段と、
前記部位を前記仮想物体にあわせて配置した旨を検知した場合には、前記部位と前記１点との位置姿勢関係、及び前記仮想物体と前記１点との位置姿勢関係を用いて、前記部位と前記仮想物体との位置姿勢関係を求める計算手段と
を備えることを特徴とする画像処理装置。
【請求項６】
ユーザの部位の位置姿勢を取得する第１の取得手段と、
前記ユーザの視点の位置姿勢を取得する第２の取得手段と、
現実物体の表面上の所定領域の位置姿勢を取得する第３の取得手段と、
前記第２の取得手段が取得した位置姿勢に基づき、前記所定領域に仮想物体の画像が合成された画像を提示するための表示手段と、
前記画像に前記部位を合わせたことを示す信号に基づき、前記部位の位置姿勢と前記仮想物体の画像との位置関係と、前記仮想物体の画像と前記所定領域の位置姿勢との位置関係を用いて、前記部位と前記仮想物体の位置姿勢関係を求める計算手段と
を備えることを特徴とする画像処理装置。
【請求項７】
コンピュータに請求項１乃至４の何れか１項に記載の画像処理方法を実行させることを特徴とするプログラム。
【請求項８】
請求項７に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現実空間と仮想空間との位置あわせ技術に関するものである。
【背景技術】
【０００２】
複合現実感システムとは、現実空間映像と、ユーザの視点位置、視線方向等に応じて生成される仮想空間映像とを合成することにより得られる合成映像をユーザに提供するものである（特許文献１を参照）。複合現実感システムでは、現実空間中に仮想物体が実在しているかのような感覚を観察者に提示することが可能であり、従来の仮想現実感システム（ＶＲシステム）に比べてよりリアルに、実寸感覚を伴った観察が可能である。
【０００３】
一方、従来、設計・製造分野において３次元ＣＡＤで設計された物体の操作性・メンテナンス性・組み立て性を検証する方法として、仮想空間上に表示した仮想物体の手を現実物体の手で操作することであたかも自分の手でそこに試作中の物体が有るかのように触れ、操作・検証する方法がある。
【０００４】
そのためには、現実物体の手に一致するように仮想物体の位置・姿勢および拡大倍率を補正する必要がある。
【特許文献１】特開２００２−１５９０１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上記のシステムにおいて現実物体の手と仮想物体の手とを正確にキャリブレーションするためには、全体の大きさ、手のひらの幅・高さ、指の長さなど多くの補正パラメータが存在する。さらに手のように複雑かつ柔軟な形状を持った物体のキャリブレーションにおいては手形状の変形にも対応する必要がある。通常はマウスや３次元ポインティングデバイスなど空間上の任意の点を指定することができる装置を使用して、拡大倍率を補正するためのすべての特徴点を指定することで拡大倍率を補正する手法を用いることが多い。しかしこのような手法では、キャリブレーションに長い時間がかかり、システムのインタフェースを損なう問題がある。
【０００６】
また、上記の検証システムを複数人数で使用する場合には、操作者が交代すると同時に現実物体の手が変更されるため、キャリブレーションを頻繁に行う必要があり、キャリブレーションの簡易化・高速化は大きな問題となる。
【０００７】
上記のように現実物体の手のような複雑・柔軟な形状の物体に対して頻繁にキャリブレーションを行う必要がある場合には高速に、簡易に現実物体と仮想物体とのキャリブレーションを行う方法が求められている。
【０００８】
本発明は以上のような問題に鑑みて成されたものであり、ユーザの部位、特に手と、この手を表す仮想物体との位置姿勢合わせ、サイズ合わせを簡便に行うための技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００１０】
即ち、ユーザの部位の位置姿勢を取得する第１の取得工程と、
現実物体の表面上の所定領域中の１点の位置姿勢を取得する第２の取得工程と、
前記部位を表す仮想物体を所定の位置姿勢でもって前記所定領域内に配置する第１の配置工程と、
前記部位を前記仮想物体にあわせて配置した旨を検知した場合には、前記部位と前記１点との位置姿勢関係、及び前記仮想物体と前記１点との位置姿勢関係を用いて、前記部位と前記仮想物体との位置姿勢関係を求める計算工程と
を備えることを特徴とする。
【００１１】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００１２】
即ち、ユーザの部位の位置姿勢を取得する第１の取得工程と、
前記ユーザの視点の位置姿勢を取得する第２の取得工程と、
現実物体の表面上の所定領域の位置姿勢を取得する第３の取得工程と、
前記第２の取得工程で取得した位置姿勢に基づき、前記所定領域に仮想物体の画像が合成された画像を提示するための表示工程と、
前記画像に前記部位を合わせたことを示す信号に基づき、前記部位の位置姿勢と前記仮想物体の画像との位置関係と、前記仮想物体の画像と前記所定領域の位置姿勢との位置関係を用いて、前記部位と前記仮想物体の位置姿勢関係を求める計算工程と
を備えることを特徴とする。
【００１３】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１４】
即ち、ユーザの部位の位置姿勢を取得する第１の取得手段と、
現実物体の表面上の所定領域中の１点の位置姿勢を取得する第２の取得手段と、
前記部位を表す仮想物体を所定の位置姿勢でもって前記所定領域内に配置する第１の配置手段と、
前記部位を前記仮想物体にあわせて配置した旨を検知した場合には、前記部位と前記１点との位置姿勢関係、及び前記仮想物体と前記１点との位置姿勢関係を用いて、前記部位と前記仮想物体との位置姿勢関係を求める計算手段と
を備えることを特徴とする。
【００１５】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１６】
即ち、ユーザの部位の位置姿勢を取得する第１の取得手段と、
前記ユーザの視点の位置姿勢を取得する第２の取得手段と、
現実物体の表面上の所定領域の位置姿勢を取得する第３の取得手段と、
前記第２の取得手段が取得した位置姿勢に基づき、前記所定領域に仮想物体の画像が合成された画像を提示するための表示手段と、
前記画像に前記部位を合わせたことを示す信号に基づき、前記部位の位置姿勢と前記仮想物体の画像との位置関係と、前記仮想物体の画像と前記所定領域の位置姿勢との位置関係を用いて、前記部位と前記仮想物体の位置姿勢関係を求める計算手段と
を備えることを特徴とする。
【発明の効果】
【００１７】
本発明の構成により、ユーザの部位、特に手と、この手を表す仮想物体との位置姿勢合わせ、サイズ合わせを簡便に行うことができる。
【発明を実施するための最良の形態】
【００１８】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００１９】
［第１の実施形態］
本実施形態では、ユーザの部位の一例として手を用いる。よって以下の説明では、ユーザの手と、手を表す仮想物体との位置姿勢合わせ、及びサイズ合わせを行うための技術について説明する。
【００２０】
図１は、現実空間に仮想空間を重畳させた複合現実空間を観察者に提供するための本実施形態に係るシステムの機能構成を示すブロック図である。
【００２１】
同図において２００はトランスミッタで、磁場を発生させる。１００は観察者の頭部に装着し、現実空間と仮想空間とを合成した複合現実空間の画像を観察者の眼前に提供する為の頭部装着型表示装置（以下、ＨＭＤ：Head Mounted Displayと呼称する）で、カメラ１０２ａ、１０２ｂ、表示装置１０１ａ、１０１ｂ、磁気レシーバ２０１により構成されている。
【００２２】
カメラ１０２ａ、１０２ｂはそれぞれＨＭＤ１００を頭部に装着した観察者の右目、左目の位置から見える現実空間の動画像を撮像するものであり、撮像した各フレームの画像は後段のコンピュータ４００に出力される。以下では、カメラ１０２ａ、１０２ｂを総称して「視点」と呼称する場合がある。
【００２３】
表示装置１０１ａ、１０１ｂはそれぞれ、観察者がＨＭＤ１００を頭部に装着したときに右目、左目の眼前に位置するようにＨＭＤ１００に装着されたものであり、後段のコンピュータ４００から出力された画像信号に基づいた画像を表示する。従って観察者の右目、左目の眼前にはコンピュータ４００が生成した画像が提供されることになる。
【００２４】
磁気レシーバ２０１は、上記トランスミッタ２００が発する磁場の変化を検知し、検知した結果の信号を後段の位置姿勢計測装置２０５に出力するものである。検知した結果の信号は、トランスミッタ２００の位置を原点とし、この原点の位置で互いに直交する３軸をｘ、ｙ、ｚ軸とする座標系（以下、センサ座標系と呼称する）において、磁気レシーバ２０１の位置姿勢に応じて検知される磁場の変化を示す信号である。位置姿勢計測装置２０５は、この信号に基づいて、センサ座標系における磁気レシーバ２０１の位置姿勢を求め、求めた位置姿勢を示すデータを後段のコンピュータ４００に出力する。
【００２５】
２１０は観察者の手に装着するグローブで、これには磁気レシーバ２０３が備わっている。従って観察者が手にこのグローブ２１０を装着してその位置や姿勢を変化させると、この磁気レシーバ２０３は磁気レシーバ２０１と同様に、センサ座標系における自身の位置姿勢に応じて検知される磁場の変化を示す信号（換言すれば、センサ座標系における磁気レシーバ２０３自身の位置姿勢を示す信号）を位置姿勢計測装置２０５に出力する。従って位置姿勢計測装置２０５は、この信号に基づいて、センサ座標系における磁気レシーバ２０３の位置姿勢を求めることができ、求めた位置姿勢を示すデータは後段のコンピュータ４００に出力される。なお、観察者の手の位置姿勢が計測できればグローブ２１０は必須なものではなく、例えば手に直接磁気レシーバ２０３を装着するようにしても良い。
【００２６】
３００は観察者の手を載置するためのトレイで、机など、水平面上に配置する。また、トレイ３００には磁気レシーバ２０２が備わっている。磁気レシーバ２０２は磁気レシーバ２０１と同様に、センサ座標系における自身の位置姿勢に応じて検知される磁場の変化を示す信号（換言すれば、センサ座標系における磁気レシーバ２０２自身の位置姿勢を示す信号）を位置姿勢計測装置２０５に出力する。従って位置姿勢計測装置２０５は、この信号に基づいて、センサ座標系における磁気レシーバ２０２の位置姿勢を求めることができ、求めた位置姿勢を示すデータは後段のコンピュータ４００に出力される。
【００２７】
４００はコンピュータで、ＨＭＤ１００の表示装置１０１ａ、１０１ｂに出力すべき画像信号を生成したり、位置姿勢計測装置２０５からのデータを受け、これを管理したり等の処理を行う。
【００２８】
図２は、このコンピュータ４００の機能構成を示す図である。
【００２９】
４０１Ｒ、４０１Ｌは映像キャプチャ部であり、それぞれカメラ１０２ａ、１０２ｂより入力した画像をディジタル信号として取り込む。
【００３０】
４０４は位置姿勢情報入力部であり、位置姿勢計測装置２０５から出力されたデータを取り込む。このデータには、磁気レシーバ２０１、２０２，２０３のセンサ座標系における位置姿勢を示すデータが含まれる。
【００３１】
４０５は位置姿勢算出部であり、カメラ１０２ａ、１０２ｂとトレイ３００（磁気レシーバ２０２）との位置姿勢関係を求める。ここで、磁気レシーバ２０１とカメラ１０２ａ、１０２ｂそれぞれとの位置姿勢関係（バイアス）は予め求められているものとする。よって、位置姿勢情報入力部４０４から磁気レシーバ２０１のセンサ座標系における位置姿勢を示すデータが入力されると、このデータに上記バイアスを加えることで、センサ座標系におけるカメラ１０２ａ、１０２ｂの位置姿勢を求めることができる。そして、センサ座標系におけるカメラ１０２ａ、１０２ｂの位置姿勢と、位置姿勢情報入力部４０４から入力される磁気レシーバ２０２のセンサ座標系における位置姿勢とを用いて、それぞれの位置姿勢関係を求める。
【００３２】
４０６は、３ＤＣＧ描画データＤＢで、仮想空間を構成する仮想物体の映像を生成するためのデータ（３ＤＣＧ描画データ）のＤＢである。３ＤＣＧ描画データには、仮想物体の幾何学形状や色を示すデータ、テクスチャデータ、位置、姿勢を示すデータなどが含まれる。本実施形態では、この３ＤＣＧ描画データには、一般的なサイズ、形状を有する手の仮想物体（以下、手形仮想物体と呼称する）の映像を生成するためのデータも含まれているものとする。
【００３３】
４０７はＣＧレンダリング部で、位置姿勢算出部４０５が算出したカメラ１０２ａ、１０２ｂの位置姿勢に応じて見える仮想空間の映像を生成する。
【００３４】
４０２Ｒ、４０２Ｌはそれぞれ映像合成部であり、映像キャプチャ部４０１Ｒ、４０１Ｌから入力した現実空間の画像上に、ＣＧレンダリング部４０７が生成したカメラ１０２ａの位置姿勢に応じて見える仮想物体の画像、カメラ１０２ｂの位置姿勢に応じて見える仮想物体の画像を重畳させるのであるが、その際に、現実空間の画像において観察者の手（ここではグローブ２１０を装着した手）が写っている領域内には仮想物体の画像は重畳させない。即ち、映像合成部４０２Ｒ、４０２Ｌが生成する複合現実空間の画像内に観察者の手が写っている場合には、この手は常に手前に表示されていることになる。このような技術については周知のものであるので、これに関する説明は省略する。
【００３５】
そして映像合成部４０２Ｒ、４０２Ｌは、生成した画像をそれぞれ、映像生成部４０３Ｒ、４０３Ｌに出力する。これにより、カメラ１０２ａの位置姿勢に応じて見える複合現実空間の画像、カメラ１０２ｂの位置姿勢に応じて見える複合現実空間の画像を生成することができる。
【００３６】
４０３Ｒ、４０３Ｌはそれぞれ映像生成部であり、それぞれ、映像合成部４０２Ｒ、４０２Ｌから出力された複合現実空間の画像をアナログデータに変換し、それぞれ表示装置１０１ａ、１０１ｂに映像信号として出力する。これにより、ＨＭＤ１００を頭部に装着した観察者の右目、左目の眼前には、それぞれの目に対応した複合現実空間の画像が表示される。
【００３７】
図４は、上記機能構成を有するコンピュータ４００のハードウェア構成を示すブロック図である。
【００３８】
４０１はＣＰＵで、ＲＡＭ４０２やＲＯＭ４０３に格納されているプログラムやデータを用いてコンピュータ４００全体の制御を行うと共に、コンピュータ４００が行う後述の各処理を実行する。
【００３９】
４０２はＲＡＭで、外部記憶装置４０６からロードされたプログラムやデータを一時的に記憶するためのエリア、Ｉ／Ｆ４０７、４０８を介して受信したデータを一時的に記憶する為のエリア、ＣＰＵ４０１が各種の処理を実行する際に用いるワークエリアなど、各種のエリアを適宜提供することができる。
【００４０】
４０３はＲＯＭで、コンピュータ４００の設定データやブートプログラムなどを格納する。
【００４１】
４０４は操作部で、キーボードやマウスなどにより構成されており、本コンピュータ４００の操作者が操作することで、各種の指示をＣＰＵ４０１に対して入力することができる。
【００４２】
４０５は表示部で、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ４０１による処理結果を画像や文字などでもって表示することができる。
【００４３】
４０６は外部記憶装置で、ハードディスクドライブ装置に代表される大容量情報記憶装置であって、ここにＯＳ（オペレーティングシステム）や、コンピュータ４００が行う後述の各処理をＣＰＵ４０１に実行させるためのプログラムやデータが保存されており、これらはＣＰＵ４０１による制御に従って適宜ＲＡＭ４０２にロードされ、ＣＰＵ４０１による処理対象となる。
【００４４】
４０７はＩ／Ｆで、上記位置姿勢計測装置２０５と接続するためのインターフェースとして機能するものであり、上記位置姿勢計測装置２０５から出力されるデータはこのＩ／Ｆ４０７を介してＲＡＭ４０２若しくは外部記憶装置４０６に入力される。
【００４５】
４０８はＩ／Ｆで、上記ＨＭＤ１００に備わっているカメラ１０２ａ、１０２ｂ、表示装置１０１ａ、１０１ｂと接続するためのインターフェースとして機能するものであり、カメラ１０２ａ、１０２ｂから送出された画像信号はこのＩ／Ｆ４０８を介してＲＡＭ４０２若しくは外部記憶装置４０６に入力される。また、本コンピュータ４００が生成した複合現実空間の画像はこのＩ／Ｆ４０８を介して表示装置１０１ａ、１０１ｂに送出される。
【００４６】
４０９は上述の各部を繋ぐバスである。
【００４７】
次に、上記構成を有するコンピュータ４００が行う処理について、同処理のフローチャートを示す図５を用いて以下説明する。図５は、グローブ２１０を装着した手と、手形仮想物体との位置姿勢合わせを行うための処理のフローチャートである。なお、同図のフローチャートに従った処理をＣＰＵ４０１に実行させるためのプログラムやデータは外部記憶装置４０６に保存されており、これらはＣＰＵ４０１による制御に従って適宜ＲＡＭ４０２にロードされ、ＣＰＵ４０１がこれを用いて処理を実行することで、コンピュータ４００は以下説明する各処理を実行する。
【００４８】
先ず、カメラ１０２ａ、１０２ｂのそれぞれが撮像した右目用の現実空間画像、左目用の現実空間画像がＩ／Ｆ４０８を介してＲＡＭ４０２若しくは外部記憶装置４０６に入力されるので、ＣＰＵ４０１はそれぞれをＲＡＭ４０２内に格納する（ステップＳ５０１）。
【００４９】
次に、Ｉ／Ｆ４０７を介して、位置姿勢計測装置２０５から送出されたデータ（磁気レシーバ２０１，２０２，２０３のそれぞれのセンサ座標系における位置姿勢を示すデータ）がＲＡＭ４０２に入力されるので、ＣＰＵ４０１はそれぞれをＲＡＭ４０２内に格納する（ステップＳ５０２）。
【００５０】
次に、ＣＰＵ４０１は、トレイ３００上に手形仮想物体の輪郭線（手形）を配置する（ステップＳ５０３）。ここで、ステップＳ５０３における処理について詳細に説明する。
【００５１】
トレイ３００は、図３Ａに示す如く、机などの水平面上に載置される。図３Ａは、トレイ３００の載置例を示す図である。また同図に示す如く、このトレイ３００上の任意の位置には磁気レシーバ２０２が装着されている。
【００５２】
先ずＣＰＵ４０１は、外部記憶装置４０６から手形仮想物体の描画データをＲＡＭ４０２にロードして手形仮想物体を生成し、これをトレイ３００上に配置する。センサ座標系におけるトレイ３００の面（以下、トレイ面と呼称する）を定義するためのデータ（以下、トレイ面定義データと呼称する）は予め外部記憶装置４０６に保存されているので、ＣＰＵ４０１はこれを読み出し、この面内の所定の位置に手形仮想物体を配置する。なお、手形仮想物体は、以下の処理のために仮想的に配置するものであって、表示するためのものではない。
【００５３】
次に、ＣＰＵ４０１は、この手形仮想物体を、トレイ面に正射影する事で、トレイ面上における手形仮想物体の領域を求める。そして、この領域の輪郭線部分、即ち手形を求め、これをトレイ３００上に配置する。
【００５４】
図３Ｂは、トレイ３００上に配置された手形仮想物体の輪郭線の例を示す図で、５０１がこの輪郭線を示す。以下では、観察者は、グローブ２１０を装着した手を、この輪郭線が示す手形に合わせるように載置する。
【００５５】
なお、ステップＳ５０３では、手形仮想物体の輪郭線をトレイ３００上に配置したが、これに限定するものではなく、観察者がトレイ３００上でどのような位置姿勢でもってグローブ２１０を装着した手を載置すればよいのかが分かるのであれば、これ以外のものをトレイ３００上に配置するようにしても良い。例えば、手形仮想物体をトレイ面上に正射影した領域そのものを配置するようにしても良い。
【００５６】
また、手形仮想物体の輪郭線や、手形仮想物体をトレイ面上に正射影した領域そのものは予め作成しておき、ステップＳ５０３では、この予め作成しておいたものをトレイ面上に配置するようにしても良い。
【００５７】
図５に戻って、次に、磁気レシーバ２０１とカメラ１０２ａとの位置姿勢関係を示すバイアスのデータを外部記憶装置４０６から読み出し、ステップＳ５０２で取得した磁気レシーバ２０１のセンサ座標系における位置姿勢を示すデータに加えることで、センサ座標系におけるカメラ１０２ａの位置姿勢を求めると共に、磁気レシーバ２０１とカメラ１０２ｂとの位置姿勢関係を示すバイアスのデータを外部記憶装置４０６から読み出し、ステップＳ５０２で取得した磁気レシーバ２０１のセンサ座標系における位置姿勢を示すデータに加えることで、センサ座標系におけるカメラ１０２ｂの位置姿勢を求める（ステップＳ５０４）。これにより、センサ座標系における視点の位置姿勢を求める。
【００５８】
そして、輪郭線を配置した仮想空間をカメラ１０２ａから見えた場合に見える画像、カメラ１０２ｂから見た場合に見える画像を生成し（ステップＳ５０５）、それぞれを、先にステップＳ５０１でＲＡＭ４０２内に格納した右目用の現実空間画像、左目用の現実空間画像上に重畳させることで、右目用の複合現実空間画像、左目用の複合現実空間画像をＲＡＭ４０２上に生成する（ステップＳ５０６）。なお、この重畳処理の際には上述の通り、現実空間画像において手の領域上には何も重畳させないようにする。
【００５９】
そして、右目用の複合現実空間画像、左目用の複合現実空間画像をそれぞれ、Ｉ／Ｆ４０８を介して表示装置１０１ａ、１０１ｂに出力する（ステップＳ５０７）。これにより、それぞれの表示装置１０１ａ、１０１ｂの表示画面上には、右目用の複合現実空間画像、左目用の複合現実空間画像が表示されるので、観察者の右目、左目の眼前には、それぞれの目の位置姿勢に応じた複合現実空間の画像が提示されることになる。
【００６０】
次に、観察者は、グローブ２１０を装着した手を上記手形に合わせるようにトレイ３００上に載置するのであるが、観察者が、グローブ２１０を装着した手と、手形とが一致したと判断した場合には（実際には、グローブ２１０を装着した手と、手形仮想物体とが一致したと判断した場合には）、その旨の指示をコンピュータ４００に入力する。入力形態については特に限定するものではなく、キーボードやマウスを用いて入力しても良いし、音声でもって入力するようにしても良い。
【００６１】
そしてＣＰＵ４０１がこの指示入力を検知すると、処理をステップＳ５０８を介してステップＳ５０９に進め、指示を検知した時点で位置姿勢計測装置２０５から受けた「センサ座標系における磁気レシーバ２０２の位置姿勢を示すデータ」と、「センサ座標系における磁気レシーバ２０３の位置姿勢を示すデータ」とを用いて、磁気レシーバ２０２と磁気レシーバ２０３との位置姿勢関係を求める（ステップＳ５０９）。
【００６２】
次に、指示を検知した時点で位置姿勢計測装置２０５から受けた「センサ座標系における磁気レシーバ２０２の位置姿勢を示すデータ」と、手形仮想物体の配置位置姿勢とを用いて、磁気レシーバ２０２と手形仮想物体との位置姿勢関係を求める（ステップＳ５１０）。
【００６３】
そして、ステップＳ５０９で求めた位置姿勢関係と、ステップＳ５１０で求めた位置姿勢関係とを用いて、磁気レシーバ２０３と手形仮想物体との位置姿勢関係を求める（ステップＳ５１１）。
【００６４】
ここで、ステップＳ５０９からステップＳ５１１における処理について図６を用いて説明する。図６は、磁気レシーバ２０２、２０３、手形仮想物体のそれぞれの位置姿勢関係を示す図である。ここで、ステップＳ５０９において磁気レシーバ２０２と磁気レシーバ２０３との位置姿勢関係、換言すれば、磁気レシーバ２０２の位置姿勢を磁気レシーバ２０３の位置姿勢に変換するためのマトリクスＹを求め、ステップＳ５１０において磁気レシーバ２０２と手形仮想物体との位置姿勢関係、換言すれば、手形仮想物体の配置位置姿勢を磁気レシーバ２０２の位置姿勢に変換するためのマトリクスＸを求めた場合、ステップＳ５１１では、マトリクスＸとＹとの積を求めることで、手形仮想物体の配置位置姿勢を磁気レシーバ２０３の位置姿勢に変換するためのマトリクスＺを求める。
【００６５】
このマトリクスＺが、観察者が自身の目で見て、グローブ２１０を装着した手と手形とが一致したと判断した時点での、手形仮想物体と磁気レシーバ２０３との位置姿勢のずれを示すものである。従って、このずれのデータを外部記憶装置４０６に保存しておけば、以降、磁気レシーバ２０３の位置姿勢をマトリクスＺで変換した位置姿勢に手形仮想物体を配置すれば、グローブ２１０を装着した手の位置姿勢に略一致させて手形仮想物体を配置することができる。
【００６６】
なお、本実施形態では以上の処理ではＨＭＤとしてビデオシースルータイプのものを用いていたが、光学シースルータイプのものを用いても良い。
【００６７】
ここで、以上の処理では、グローブ２１０を装着した手をトレイ３００、即ち水平面上に載置するのであるから、その位置の変化は平面内における２成分、及びこの平面内の回転成分（ヨー角）の３自由度となる。よって、以上の処理で「位置姿勢」とは、位置２成分、姿勢１成分となる。これにより、本来「位置姿勢」とは位置の３成分、及び姿勢３成分の合計６成分であるところ、以上の処理ではこれよりも少ない成分についてキャリブレーションを行うので、キャリブレーション処理を従来よりも高速に行うことができる。
【００６８】
しかし、以上の処理だけでは、グローブ２１０を装着した手のサイズと、手形仮想物体のサイズとは一致していない。これは手形仮想物体が一般的なサイズに作成されているためであり、このサイズは当然、特定の観察者に一致するとは限らない。そこで、以上の処理の後に、更に、手形仮想物体のサイズとグローブ２１０を装着した手のサイズとの比率を求める。そして、求めた比率分だけ手形仮想物体のサイズを変更することで、手形仮想物体のサイズをグローブ２１０を装着した手のサイズに略一致させる。
【００６９】
ここで、このような比率を求める為の処理については様々なものが考えられるが、例えば以下のようなものがある。先ず、現実空間画像内でグローブ２１０を装着した手の領域を包含する最小のボックス（第１のボックス）を定義する。次に、仮想空間画像内で、手形仮想物体が占める領域を包含する最小のボックス（第２のボックス）を定義する。そして、第１のボックスの縦（横）のサイズと第２のボックスの縦（横）との比率（第１のボックスの縦（横）のサイズ／第２のボックスの縦（横）のサイズ）を求める。
【００７０】
このようにして求めた比率分だけ手形仮想物体をスケーリングする（手形仮想物体を、手形仮想物体のローカル座標系における原点を中心にして拡大する）。なお、このようなサイズあわせの処理は必須なものではなく、上記位置姿勢合わせを行った後に、観察者が複合現実空間画像を見て、現実の手と仮想の手とであまりにサイズに違いがあるようであれば行うようにすればよい。
【００７１】
以上の説明により、本実施形態によって、高速かつ簡易に現実の手と仮想の手とのキャリブレーションを行うことができる。本来このようなシステムは複数人、もしくは個人が必要性を感じた時に使用できる直感的なシステムであり、複数の操作者が交互にシステムを利用するような場面においても交代時の手のキャリブレーション作業が高速に行われるため、ユーザビリティの高いシステムを提供することが可能となる。
【００７２】
また、従来では、現実物体と仮想物体とのキャリブレーションには多数の補正要素が必要であったものが、仮想空間における位置関係が既知な現実物体を中間に介在することにより自由度を下げ、現実物体上に手を乗せることにより手形状を仮想の手と同一になるように制限することを可能にし、高速かつ簡易にキャリブレーションを行うことができる。
【００７３】
［第２の実施形態］
第１の実施形態では、キャリブレーション時における補正要素を減らすべく、手は水平面上に載置するようにしたが、以上のような処理は一般にどのような形状の現実物体上に手を置いても適用可能であるし、また、載置する人間の部位は手以外にも、例えば足であっても良い。
【００７４】
また、第１の実施形態では、トレイ３００上に手を載置するようにしたが、トレイ３００を用いることに限定するものではなく、机などの水平面上に、手を置く領域を設けるようにしても良い。その場合、センサ座標系においてこの領域を定義するためのデータを上記トレイ面定義データの代わりに外部記憶装置４０６に保存しておく必要がある。
【００７５】
また、第１の実施形態では、センサとして磁気センサを用いているが、これ以外のセンサ、例えば光学式センサ、超音波センサなどを用いるようにしても良い。
【００７６】
［その他の実施形態］
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００７７】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７８】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７９】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００８０】
【図１】現実空間に仮想空間を重畳させた複合現実空間を観察者に提供するための本実施形態に係るシステムの機能構成を示すブロック図である。
【図２】コンピュータ４００の機能構成を示す図である。
【図３Ａ】トレイ３００の載置例を示す図である。
【図３Ｂ】トレイ３００上に配置された手形仮想物体の輪郭線の例を示す図である。
【図４】コンピュータ４００のハードウェア構成を示すブロック図である。
【図５】グローブ２１０を装着した手と、手形仮想物体との位置姿勢合わせを行うための処理のフローチャートである。
【図６】磁気レシーバ２０２、２０３、手形仮想物体のそれぞれの位置姿勢関係を示す図である。
【図１】
2006318095.tif 000003
【図２】
2006318095.tif 000004
【図３Ａ】
2006318095.tif 000005
【図３Ｂ】
2006318095.tif 000006
【図４】
2006318095.tif 000007
【図５】
2006318095.tif 000008
【図６】
2006318095.tif 000009