(57)【要約】【課題】  眼間距離の異なる各々の使用者に対して、各使用者に適切な立体感を知覚させる為の技術を提供すること。【解決手段】  実写画像調整部２３０は実写画像ａ、及び／又は実写画像ｂを調整し、位置姿勢調整部２４０は、位置姿勢計測値ａ’、ｂ’を調整し、合成画像調整部２６０は、実写画像ａ’上に仮想画像生成部２１０が生成した仮想空間画像ａを合成した合成画像ａ、実写画像ｂ’上に仮想画像生成部２１０が生成した仮想空間画像ｂを合成した合成画像ｂを調整し、調整した合成画像ａ’、ｂ’をそれぞれ、表示部１２０ａ、１２０ｂに出力する。【選択図】  図３
2006285609.tif 000002
【特許請求の範囲】
【請求項１】
頭部装着型表示装置に備わっている右目用撮像装置、左目用撮像装置からそれぞれ、右目用現実空間画像、左目用現実空間画像を取得する画像取得工程と、
前記右目用現実空間画像、及び／又は前記左目用現実空間画像を調整する画像調整工程と、
前記右目用撮像装置の略光学中心の位置姿勢を示す第１の位置姿勢情報、前記左目用撮像装置の略光学中心の位置姿勢を示す第２の位置姿勢情報を取得する位置姿勢取得工程と、
前記第１の位置姿勢情報、及び／又は前記第２の位置姿勢情報を調整する位置姿勢調整工程と、
前記第１の位置姿勢情報が示す位置姿勢を有する視点から見える右目用仮想空間画像を生成すると共に、前記第２の位置姿勢情報が示す位置姿勢を有する視点から見える左目用仮想空間画像を生成する生成工程と、
前記右目用現実空間画像と前記右目用仮想空間画像とを合成した右目用合成画像を生成すると共に、前記左目用現実空間画像と前記左目用仮想空間画像とを合成した左目用合成画像を生成する合成工程と、
前記右目用合成画像、及び／又は前記左目用合成画像を調整する合成画像調整工程と、
前記右目用合成画像、前記左目用合成画像をそれぞれ、前記頭部装着型表示装置に備わっている右目用表示装置、左目用表示装置に対して出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項２】
前記画像調整工程では、画像の水平シフト量、垂直シフト量、画像の水平方向のサイズ、垂直方向のサイズ、画像の中心位置を中心とした当該画像の回転角度、のうち１以上を調整した画像を元の画像のサイズでクリッピングすることで、画像を調整することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記位置姿勢調整工程では、前記第１の位置姿勢情報、前記第２の位置姿勢情報において、ｘ軸方向シフト量、ｙ軸方向シフト量、ｚ軸方向シフト量、ロール角、ピッチ角、ヨー角のうち１以上を調整することで、右目用の射影変換行列、左目用の射影変換行列を生成することを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記位置姿勢調整工程では更に、前記仮想空間の画像を生成する際に用いる水平画角、垂直画角、ニアクリップ面、ファークリップ面のうち１以上を調整することで、右目用のモデルビュー行列、左目用のモデルビュー行列を生成することを特徴とする請求項３に記載の画像処理方法。
【請求項５】
更に、それぞれの観察者について、観察者を識別するための識別情報と、前記画像調整工程での調整に用いる調整値と、前記位置姿勢調整工程での調整に用いる調整値と、前記合成画像調整工程での調整に用いる調整値と、のセットを管理する管理工程と、
識別情報を入力する入力工程とを備え、
前記画像調整工程、前記位置姿勢調整工程、前記合成画像調整工程では、前記入力工程で入力された識別情報に対応する調整値を用いて調整処理を行うことを特徴とする請求項１乃至４の何れか１項に記載の画像処理方法。
【請求項６】
更に、それぞれの仮想物体について、仮想物体を識別するための識別情報と、前記画像調整工程での調整に用いる調整値と、前記位置姿勢調整工程での調整に用いる調整値と、前記合成画像調整工程での調整に用いる調整値と、のセットを管理する管理工程と、
識別情報を入力する入力工程とを備え、
前記画像調整工程、前記位置姿勢調整工程、前記合成画像調整工程では、前記入力工程で入力された識別情報に対応する調整値を用いて調整処理を行うことを特徴とする請求項１乃至４の何れか１項に記載の画像処理方法。
【請求項７】
更に、それぞれの仮想物体について、仮想物体を識別するための識別情報と、前記画像調整工程での調整に用いる調整値と、前記位置姿勢調整工程での調整に用いる調整値と、前記合成画像調整工程での調整に用いる調整値と、のセットを管理する管理工程と、
観察者が注視している仮想物体を特定する特定工程と
を備え、
前記画像調整工程、前記位置姿勢調整工程、前記合成画像調整工程では、前記特定工程で特定された仮想物体の識別情報に対応する調整値を用いて調整処理を行うことを特徴とする請求項１乃至４の何れか１項に記載の画像処理方法。
【請求項８】
頭部装着型表示装置に備わっている右目用撮像装置、左目用撮像装置からそれぞれ、右目用現実空間画像、左目用現実空間画像を取得する画像取得手段と、
前記右目用現実空間画像、及び／又は前記左目用現実空間画像を調整する画像調整手段と、
前記右目用撮像装置の略光学中心の位置姿勢を示す第１の位置姿勢情報、前記左目用撮像装置の略光学中心の位置姿勢を示す第２の位置姿勢情報を取得する位置姿勢取得手段と、
前記第１の位置姿勢情報、及び／又は前記第２の位置姿勢情報を調整する位置姿勢調整手段と、
前記第１の位置姿勢情報が示す位置姿勢を有する視点から見える右目用仮想空間画像を生成すると共に、前記第２の位置姿勢情報が示す位置姿勢を有する視点から見える左目用仮想空間画像を生成する生成手段と、
前記右目用現実空間画像と前記右目用仮想空間画像とを合成した右目用合成画像を生成すると共に、前記左目用現実空間画像と前記左目用仮想空間画像とを合成した左目用合成画像を生成する合成手段と、
前記右目用合成画像、及び／又は前記左目用合成画像を調整する合成画像調整手段と、
前記右目用合成画像、前記左目用合成画像をそれぞれ、前記頭部装着型表示装置に備わっている右目用表示装置、左目用表示装置に対して出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項９】
コンピュータに請求項１乃至７の何れか１項に記載の画像処理方法を実行させることを特徴とするプログラム。
【請求項１０】
請求項９に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現実空間の画像と仮想空間の画像とを合成した画像を生成して観察者に提示するための技術に関するものである。
【背景技術】
【０００２】
現実世界と仮想世界とを違和感なく自然に結合する複合現実感（MR: Mixed Reality）の技術を応用した提示装置が盛んに提案されている。これらの複合現実感提示装置は、カメラなどの撮像装置によって撮影した現実世界の画像上に、コンピュータグラフィックス（CG: Computer Graphics）で描画した仮想世界の画像を重畳させることで合成し、これをヘッドマウントディスプレイ（HMD: Head-Mounted Display）などの表示装置に表示することで、複合現実感提示装置の使用者に提示している。
【０００３】
これらの複合現実感提示装置は、現実世界の画像の変化に追従させるかたちで仮想世界の画像を生成するために、装置の使用者の視点位置姿勢をリアルタイムで取得する必要がある。この視点位置姿勢の取得には、６自由度位置姿勢センサ装置が広く用いられている。複合現実感提示装置は、６自由度位置姿勢センサ装置によって計測した使用者の視点位置姿勢を仮想世界での仮想の視点位置姿勢として設定し、ＣＧによって仮想世界の画像を描画して、現実世界の画像と結合する。このことにより、複合現実感提示装置の使用者は、あたかも現実世界の中に仮想の物体が存在しているかのような画像を観察することができる。
【０００４】
図１は、従来の複合現実感提示装置の構成の例を示すブロック図である。
【０００５】
図１において示される複合現実感提示装置は、ＨＭＤ部１００、複合現実感提示部２００、位置姿勢計測部３００から構成される。
【０００６】
ＨＭＤ部１００は、複合現実感提示装置の使用者が頭部に装着することによって用いられる。ＨＭＤ部１００は、撮像部１１０および表示部１２０から構成される。撮像部１１０は、ビデオカメラなどの撮像装置によって実現され、複合現実感提示装置の使用者の視点から見た実写画像を撮像する。表示部１２０は、ＬＣＤなどの表示装置によって実現され、複合現実感提示部２００で生成された合成画像を、複合現実感提示装置の使用者に対して提示する。
【０００７】
複合現実感提示部２００は、仮想画像生成部２１０、画像合成部２５０から構成される。仮想画像生成部２１０は、複合現実感提示装置の使用者の視点から観測される仮想世界の画像を生成する。画像合成部２５０は、実写画像と、仮想画像生成部２１０で生成された仮想画像とを合成し、表示部１２０に表示する合成画像を生成する。
【０００８】
位置姿勢計測部３００は、６自由度位置姿勢センサ装置などによって実現され、複合現実感提示装置の使用者の視点の位置および姿勢を計測し、複合現実感提示部２００に供給する。複合現実感提示部２００は、位置姿勢計測部３００が計測した位置姿勢を、仮想世界を生成するための視点位置姿勢として設定し、仮想画像を生成する。
【０００９】
図２は、図１で示される複合現実感提示装置が、実写画像上に仮想空間の画像を重畳させた画像を生成してＨＭＤ部１００に対して出力する為の処理のフローチャートである。
【００１０】
まず、複合現実感提示装置が起動されると、ステップＳ１０１０において、撮像部１１０によって、複合現実感提示装置の使用者が観察する現実世界の画像である実写画像が撮像され、実写画像が複合現実感提示部２００に送出される。
【００１１】
次に、ステップＳ１０２０では、位置姿勢計測部３００によって、複合現実感提示装置の使用者の視点の位置姿勢が計測され、位置姿勢計測値が複合現実感提示部２００に送出される。
【００１２】
次に、ステップＳ１０３０では、仮想画像生成部２１０によって、仮想画像が生成される。より具体的には、ステップＳ１０２０において計測された位置姿勢計測値を参照し、その位置姿勢を有する視点から見た仮想世界のＣＧモデルを描画することによって、仮想画像を生成する。
【００１３】
次に、ステップＳ１０４０では、ステップＳ１０１０で入力された実写画像と、ステップＳ１０３０で生成された仮想画像とが画像合成部２５０によって合成され、合成画像が生成される。
【００１４】
次に、ステップＳ１０５０では、ステップＳ１０４０で生成された合成画像が表示部１２０に送出され、表示部１２０に合成画像が表示される。
【００１５】
そして最後にステップＳ１０６０で、処理を中断する指示が入力されない限りは、ステップＳ１０１０に戻り、処理を継続する。
【００１６】
複合現実感提示装置の使用者に対して、あたかも現実世界の中に仮想の物体が存在しているかのような感覚を与えるためには、使用者に提示される画像に対して、使用者の視点の動きが即座に反映されていなければならない。そのため、ステップＳ１０２０からステップＳ１０６０までの１回の処理は、数ミリ秒から数百ミリ秒以内の時間で完了する必要がある。
【００１７】
図１において示される複合現実感提示装置では、以上の手順で処理を行うことによって、複合現実感提示装置の使用者に合成画像、すなわち、複合現実感画像を提示する。
【００１８】
さらに、装着者の右目と左目から観測可能な位置に２つの表示装置を持ち、右目と左目に独立に映像を提示できるＨＭＤと、ＨＭＤに固定された２つの撮像装置を用いて、複合現実感を立体的に知覚させるような複合現実感提示装置が提案されている。複合現実感提示装置の使用者の右目視点および左目視点から観測される実写画像に対し、それぞれの視点から観測される仮想画像を重畳し、ＨＭＤの表示装置に左右独立の合成画像を表示することにより、より自然な複合現実感を提示することを可能としている。
【００１９】
このような複合現実感提示装置では、使用者の右目と左目に、視差を持つ別々の画像を導き、両眼立体視を可能とするようなＨＭＤが必須となる。両眼立体視が可能な従来のＨＭＤは、使用者に対して表示装置が固定されているものが多く、必ずしも、使用者が左右の表示装置を正視できるとは限らない。本来、人間の眼間距離には個人差があり、使用者の眼間距離と、ＨＭＤの表示装置間の距離とが一致しない場合には、使用者は適切な両眼立体視を行うことができず、不自然な立体感を知覚する要因となっていた。
【００２０】
これに対し、使用者の視線を検知し、物理的に表示装置を駆動して、適切な立体感を与えることができるＨＭＤ装置が従来から開示されている（特許文献１を参照）。
【特許文献１】特開平８−２２３６０９号公報
【発明の開示】
【発明が解決しようとする課題】
【００２１】
ところが、このＨＭＤは仮想現実感提示装置などの現実世界像を撮像しない用途を対象としたものである。このＨＭＤを複合現実感提示装置に適用するためには、現実世界を撮像する２つの撮像装置をＨＭＤに設置する必要がある。しかも、使用者に適切な立体感を与えるためには、撮像装置の位置についても使用者の目の位置と整合させる必要があるが、その方法についてはこの文献では示されていない。
【００２２】
本発明は、上記の課題に鑑みてなされたものであり、眼間距離の異なる各々の使用者に対して、各使用者に適切な立体感を知覚させる為の技術を提供することを目的とする。
【課題を解決するための手段】
【００２３】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００２４】
即ち、頭部装着型表示装置に備わっている右目用撮像装置、左目用撮像装置からそれぞれ、右目用現実空間画像、左目用現実空間画像を取得する画像取得工程と、
前記右目用現実空間画像、及び／又は前記左目用現実空間画像を調整する画像調整工程と、
前記右目用撮像装置の略光学中心の位置姿勢を示す第１の位置姿勢情報、前記左目用撮像装置の略光学中心の位置姿勢を示す第２の位置姿勢情報を取得する位置姿勢取得工程と、
前記第１の位置姿勢情報、及び／又は前記第２の位置姿勢情報を調整する位置姿勢調整工程と、
前記第１の位置姿勢情報が示す位置姿勢を有する視点から見える右目用仮想空間画像を生成すると共に、前記第２の位置姿勢情報が示す位置姿勢を有する視点から見える左目用仮想空間画像を生成する生成工程と、
前記右目用現実空間画像と前記右目用仮想空間画像とを合成した右目用合成画像を生成すると共に、前記左目用現実空間画像と前記左目用仮想空間画像とを合成した左目用合成画像を生成する合成工程と、
前記右目用合成画像、及び／又は前記左目用合成画像を調整する合成画像調整工程と、
前記右目用合成画像、前記左目用合成画像をそれぞれ、前記頭部装着型表示装置に備わっている右目用表示装置、左目用表示装置に対して出力する出力工程と
を備えることを特徴とする。
【００２５】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００２６】
即ち、頭部装着型表示装置に備わっている右目用撮像装置、左目用撮像装置からそれぞれ、右目用現実空間画像、左目用現実空間画像を取得する画像取得手段と、
前記右目用現実空間画像、及び／又は前記左目用現実空間画像を調整する画像調整手段と、
前記右目用撮像装置の略光学中心の位置姿勢を示す第１の位置姿勢情報、前記左目用撮像装置の略光学中心の位置姿勢を示す第２の位置姿勢情報を取得する位置姿勢取得手段と、
前記第１の位置姿勢情報、及び／又は前記第２の位置姿勢情報を調整する位置姿勢調整手段と、
前記第１の位置姿勢情報が示す位置姿勢を有する視点から見える右目用仮想空間画像を生成すると共に、前記第２の位置姿勢情報が示す位置姿勢を有する視点から見える左目用仮想空間画像を生成する生成手段と、
前記右目用現実空間画像と前記右目用仮想空間画像とを合成した右目用合成画像を生成すると共に、前記左目用現実空間画像と前記左目用仮想空間画像とを合成した左目用合成画像を生成する合成手段と、
前記右目用合成画像、及び／又は前記左目用合成画像を調整する合成画像調整手段と、
前記右目用合成画像、前記左目用合成画像をそれぞれ、前記頭部装着型表示装置に備わっている右目用表示装置、左目用表示装置に対して出力する出力手段と
を備えることを特徴とする。
【発明の効果】
【００２７】
本発明の構成により、複合現実空間の観察者自らが、提示される複合現実感の立体感を確認しながら、その立体感の調整を行うことができ、その結果、観察者に適切な立体感を知覚させることができる。
【発明を実施するための最良の形態】
【００２８】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００２９】
［第１の実施形態］
図３は、観察者に現実空間と仮想空間とが融合した複合現実空間の画像を提供すると共に、観察者に好適な複合現実空間画像を提供できるように、各種の調整を可能とするシステムの機能構成を示すブロック図である。
【００３０】
同図に示す如く、本実施形態に係るシステムは、ＨＭＤ部１００、複合現実感提示部３５０、位置姿勢計測部３００により構成されている。
【００３１】
先ず、ＨＭＤ部１００について説明する。ＨＭＤ部１００は同図に示す如く、撮像部１１０ａ、１１０ｂと表示部１２０ａ、１２０ｂにより構成されている。撮像部１１０ａはＨＭＤ部１００を頭部に装着する観察者の右目に対応する現実空間の画像（右目用現実空間画像）を撮像するものであり、撮像部１１０ｂは、この観察者の左目に対応する現実空間の画像（左目用現実空間画像）を撮像するものである。
【００３２】
また、表示部１２０ａは、この観察者の右目に対して提示する画像を表示するものであり、表示部１２０ｂは、この観察者の左目に対して提示する画像を表示するものである。本実施形態では、ＨＭＤ部１００はこのような構成により、両眼立体視可能なビデオシースルー型のＨＭＤを構成する。
【００３３】
以下では撮像部１１０ａと撮像部１１０ｂとで共通の説明を行う場合にはこれらをまとめて単に「撮像部１１０」と呼称するし、表示部１２０ａと表示部１２０ｂとで共通の説明を行う場合にはこれらをまとめて単に「表示部１２０」と呼称する。
【００３４】
撮像部１１０と表示部１２０とは、撮像部１１０の光軸と表示部１２０の眼球光軸とが一致するようにＨＭＤ部１００に備わっており、撮像部１１０と表示部１２０との間に視差が生じないようになっている。このようなＨＭＤは、特開平５−３０３０５３号公報、特開平１０−２３９６２８号公報、特開平１１−１７４３６７号公報、特開２０００−７５２４０号公報などに開示されている。
【００３５】
よって、同図に示す如く、撮像部１１０ａ、１１０ｂはそれぞれ、右目用現実空間画像、左目用現実空間画像を撮像し、それぞれ実写画像ａ、ｂとして後段の複合現実感提示部３５０が有する実写画像調整部２３０に順次送出する。
【００３６】
一方、表示部１２０ａ、１２０ｂはそれぞれ、合成画像調整部２６０から送出される右目用合成画像（右目用複合現実空間画像）ａ’、左目用合成画像（左目用複合現実空間画像）ｂ’を受け、表示する。従ってＨＭＤ部１００を頭部に装着した観察者の右目、左目の眼前にはそれぞれ右目用合成画像、左目用合成画像が提示されることになるので、観察者は、合成画像が平面ではなく、あたかも立体的であるかのように知覚することが可能となる。即ち、観察者は、現実空間と仮想空間とが融合された複合現実空間を立体的に観測することが可能となる。
【００３７】
次に、複合現実感提示部３５０について説明する。同図に示す如く、複合現実感提示部３５０は、仮想画像生成部２１０、仮想空間情報記憶部２１５、操作入力部２２０、実写画像調整部２３０、位置姿勢調整部２４０、画像合成部２５０、合成画像調整部２６０、位置姿勢変換部２７０、位置姿勢変換値記憶部２７５、調整値記憶部２８０から構成される。
【００３８】
複合現実感提示部３５０は、例えば一般のＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）等のコンピュータでもって構成されている。
【００３９】
図４は、複合現実感提示部３５０に適用可能なコンピュータのハードウェア構成を示すブロック図である。
【００４０】
１０はＣＰＵで、ＲＡＭ２０に格納されているプログラムやデータを用いてコンピュータ全体の制御を行うと共に、コンピュータを適用した複合現実感提示部３５０が行う後述の各処理を実行する。
【００４１】
２０はＲＡＭで、ディスク装置３０からロードされたプログラムやデータを一時的に記憶するためのエリア、画像入力装置４０を介して入力された画像データを一時的に記憶するためのエリア、位置姿勢入力装置５０を介して入力された位置姿勢データを一時的に記憶するためのエリア、ＣＰＵ１０が各処理を実行する際に用いるワークエリアなど、各種のエリアを適宜提供することができる。
【００４２】
３０はディスク装置であって、ハードディスクドライブ装置として機能するものであり、ここＯＳ（オペレーティングシステム）や、コンピュータを適用した複合現実感提示部３５０が行う後述の各処理をＣＰＵ１０に実行させるためのプログラムやデータが保存されており、これらの一部若しくは全部はＣＰＵ１０による制御に従って適宜ＲＡＭ２０にロードされ、ＣＰＵ１０による処理対象となる。
【００４３】
なお、ディスク装置３０は、このほかにも、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどの記憶媒体に記録されているプログラムやデータを読み出す装置としても良い。その場合、この記憶媒体には、ＣＰＵ１０に後述する各処理を実行させるためのプログラムやデータが格納されており、ディスク装置３０はこの記憶媒体から記録されたプログラムやデータを読み出す。
【００４４】
４０が画像入力装置で、上記ＨＭＤ部１００に備わっている撮像部１１０ａ、１１０ｂから送出される右目用現実空間画像ａ、左目用現実空間画像ｂを本コンピュータに入力するためのＩ／Ｆとして機能するものであり、入力された画像のデータはＲＡＭ２０若しくはディスク装置３０に格納する。
【００４５】
５０は位置姿勢入力装置で、上記位置姿勢計測部３００によって計測された位置姿勢データを本コンピュータに入力するためのＩ／Ｆとして機能するものであり、入力されたデータはＲＡＭ２０若しくはディスク装置３０に格納する。
【００４６】
６０は操作入力装置で、キーボードやマウスなどにより構成されており、本コンピュータの操作者（本実施形態ではＨＭＤ部１００を頭部に装着した観察者）が操作することで、各種の指示をＣＰＵ１０に対して入力することができる。
【００４７】
７０は画像描画装置で、仮想空間の画像を生成するなど、画像の生成、描画に係る処理を行うためのものであり、ＲＡＭ７２とＧＰＵ７４とで構成されている。即ち、画像生成や描画などを行う場合には、ＣＰＵ１０はＧＰＵ７４に対してその旨を指示するので、ＧＰＵ７４は、ＲＡＭ７２に転送される画像データに基づいて、画像生成や描画等の処理を実行する。
【００４８】
８０は画像出力装置で、本コンピュータが生成した右目用合成画像ａ’、左目用合成画像ｂ’をそれぞれ、ＨＭＤ部１００に備わっている表示部１２０ａ、１２０ｂに対して送出する為のＩ／Ｆとして機能するものである。
【００４９】
９０は上述の各部を繋ぐバスである。
【００５０】
本実施形態では、複合現実感提示部３５０として以上の構成を有するコンピュータを適用した場合について説明するが、複合現実感提示部３５０として適用可能なコンピュータの構成はこれに限定するものではない。
【００５１】
次に、複合現実感提示部３５０の機能構成について図３を用いて説明する。
【００５２】
仮想画像生成部２１０は、仮想空間画像を生成するために用いる射影変換行列ａ、ｂとモデルビュー行列ａ、ｂとを位置姿勢調整部２４０から取得すると共に、仮想空間画像を生成するために必要なデータ（仮想空間情報）を仮想空間情報記憶部２１５から取得し、取得したそれぞれのデータを用いて、仮想空間の画像を生成する。
【００５３】
より詳しくは、先ず、仮想空間情報を用いて、１以上の仮想物体を仮想空間中に配置する。そして、射影変換行列ａ、モデルビュー行列ａを用いて、これらの行列で定義される視点から見える仮想空間画像ａを生成すると共に、射影変換行列ｂ、モデルビュー行列ｂを用いて、これらの行列で定義される視点から見える仮想空間画像ｂを生成する。なお、上述のとおり、このような画像生成処理は、ＣＰＵ１０の制御に基づいて、画像描画装置７０が行う。
【００５４】
本実施形態では、仮想空間画像ａ、ｂを構成する各画素には、輝度情報と奥行き情報とがセットで関連付けられているものとする。奥行き情報は、画像内で仮想物体が描画されている領域内の画素には、その画素が示す仮想物体部分から視点までの距離を表す値が格納され、画像内で仮想物体が存在しない領域を構成している画素に対しては、視点から最も遠い距離を表す値が関連付けられる。
【００５５】
このように、本実施形態では、仮想空間画像を構成する各画素について、輝度情報と、奥行き情報とを管理している。
【００５６】
なお、仮想空間画像ａ、ｂの生成順に関しては特に限定するものではなく、何れかを先に生成しても良いし、並列して生成するようにしても良い。いずれにせよ、仮想画像生成部２１０は、仮想空間画像ａ、ｂを生成すると、これらを画像合成部２５０に送出する。
【００５７】
仮想空間情報記憶部２１５は、仮想画像生成部２１０が仮想空間画像を生成する際に用いる仮想空間情報を保持している。この仮想空間情報には、例えば仮想物体がポリゴンでもって構成されている場合には、各ポリゴンの法線ベクトルデータ、ポリゴンを構成する各頂点の座標データ、頂点同士のリンクデータ、ポリゴンの材質を示すデータ、仮想物体の配置位置姿勢を示すデータ、仮想空間中に設定される光源データ、そして仮想物体に対してテクスチャマッピングを施す場合には、テクスチャ画像データなどが含まれることになる。
【００５８】
このような仮想空間情報は実際には、ディスク装置３０に予め格納されており、コンピュータが起動すると、ＣＰＵ１０がこれを読み出してＲＡＭ２０にロードする。
【００５９】
位置姿勢変換部２７０は、位置姿勢計測部３００から位置姿勢入力装置５０を介して入力される位置姿勢計測値を受け、これを変換値記憶部２７５が保持する位置姿勢変換値ａ、ｂに基づいて変換し、位置姿勢計測値ａ’、ｂ’を得る。位置姿勢計測値ａ’、ｂ’はそれぞれ位置姿勢調整部２４０に送出する。
【００６０】
ここで、位置姿勢変換部２７０についてより詳細に説明する。
【００６１】
現実空間画像とは、周知の通り、撮像部の略光学中心から見える現実空間の画像である。従って複合現実空間画像を生成するためには、基本的には、この略光学中心の位置姿勢を仮想空間における視点の位置姿勢として設定し、この視点から見える仮想空間の画像を生成し、生成した仮想空間画像を先の現実空間画像上に合成する。
【００６２】
本実施形態においても複合現実空間の画像を生成するのであるから、撮像部１１０ａの略光学中心の位置姿勢、撮像部１１０ｂの略光学中心の位置姿勢は取得する必要がある。しかし、位置姿勢計測部３００において、撮像部１１０の略光学中心の位置姿勢を直接的に計測することは、計測装置を物理的に設置できないなどの要因により困難である。そのため、本実施形態では、ＨＭＤ部１００に、位置姿勢計測部３００によって計測される対象となる計測対象物を設け、位置姿勢計測部３００はこの計測対象物の位置姿勢を計測する。
【００６３】
位置姿勢計測部３００による位置姿勢の計測方法については特に限定するものではないが、例えば、磁気式センサや光学式センサ、超音波センサなどのセンサを用いた計測方法や、現実空間における配置位置が既知のマーカを配し、このマーカを撮像した画像上におけるマーカの表示位置と、実際の配置位置とを用いた計測方法等を用いることができる。なお、これらの計測方法については周知の技術であるので、これに関する説明は省略する。
【００６４】
また、上記計測対象物と撮像部１１０ａの略光学中心との位置姿勢関係（相対位置姿勢）、計測対象物と撮像部１１０ｂの略光学中心との位置姿勢関係は予め計測されているものとする。上記位置姿勢関係は、３次元空間中での平行移動および回転を表す３次元座標変換行列によって表現することができ、この３次元座標変換行列のデータが位置姿勢変換値として位置姿勢変換値記憶部２７５に格納される。
【００６５】
よって、位置姿勢変換部２７０は、位置姿勢変換値記憶部２７５が保持する位置姿勢変換値ａから３次元座標変換行列ａを生成し、位置姿勢計測部３００によって計測される計測対象物の位置姿勢計測値を３次元座標変換行列ａによって撮像部１１０ａの略光学中心の位置姿勢ａ’に変換する。そして変換後の位置姿勢、即ち撮像部１１０ａの略光学中心の位置姿勢ａ’を位置姿勢調整部２４０に送出する。
【００６６】
また、位置姿勢変換部２７０は、位置姿勢変換値記憶部２７５が保持する位置姿勢変換値ｂから３次元座標変換行列ｂを生成し、位置姿勢計測部３００によって計測される計測対象物の位置姿勢計測値を３次元座標変換行列ｂによって撮像部１１０ｂの略光学中心の位置姿勢ｂ’に変換する。そして変換後の位置姿勢、即ち撮像部１１０ｂの略光学中心の位置姿勢ｂ’を位置姿勢調整部２４０に送出する。
【００６７】
なお、このような３次元座標変換を行うための方法については、特開２００３−２０３２５２号公報、特開２００３−２６９９１３号公報などに開示されており、周知の技術であるため、ここでの説明は省略する。
【００６８】
位置姿勢変換値記憶部２７５は、位置姿勢変換部２７０が３次元座標変換行列を生成するために用いる位置姿勢変換値ａ、ｂを保持しており、位置姿勢変換部２７０が３次元座標変換行列を生成する際に位置姿勢変換部２７０に供給する。位置姿勢変換値ａ、ｂは、３次元空間中での平行移動および回転を表す変換値群である。本実施形態では、平行移動変換値は、Ｘ軸方向平行移動量、Ｙ軸方向平行移動量、Ｚ軸方向平行移動量から構成される。また、回転変換値はロール角、ピッチ角、ヨー角から構成される。
【００６９】
しかし、３次元空間中での平行移動および回転を表現することができれば、いかなる種類の変換値を用いてもよく、例えば、回転変換値としてロール角、ピッチ角、ヨー角を保持する変わりに、１つの３次元ベクトルと、そのベクトル周りの回転角を保持するようにしてもよいし、回転変換値として四元数を保持してもよい。
【００７０】
上述の通り、計測対象物と撮像部１１０ａの略光学中心との位置姿勢関係、計測対象物と撮像部１１０ｂの略光学中心との位置姿勢関係は予め計測されているので、位置姿勢変換値ａ、ｂは、予め作成し、位置姿勢変換値記憶部２７５に格納しておく。位置姿勢変換値記憶部２７５が保持する情報は、ディスク装置３０にあらかじめ格納されており、本コンピュータの起動時に、ＣＰＵ１０によって、ディスク装置３０から読み出され、ＲＡＭ２０に書き込まれる。
【００７１】
操作入力部２２０は、コンピュータの操作者が操作入力装置６０を操作した場合に、その操作に応じた結果を調整値記憶部２８０に送出する。本実施形態では、操作者が操作入力装置６０を用いて所定の操作を行うと、操作入力部２２０はその操作内容に応じて、実写画像調整値、位置姿勢調整値、合成画像調整値を生成し、調整値記憶部２８０に送出する。あるいは、その操作内容に応じて、指定された調整値を調整値記憶部２８０から読み出す。あるいは、その操作内容に応じて、指定された調整値を調整値記憶部２８０へ書き込む。それぞれの調整値については後述する。また、調整値記憶部２８０が記憶している各種の情報は上記ディスク装置３０に保存されている。
【００７２】
調整値記憶部２８０は、実写画像ａを調整するための実写画像調整値ａ、実写画像ｂを調整するための実写画像調整値ｂ、位置姿勢計測値ａを調整するための位置姿勢調整値ａ、位置姿勢計測値ｂを調整するための位置姿勢調整値ｂ、合成画像ａ’を調整するための合成画像調整値ａ、合成画像ｂ’を調整するための合成画像調整値ｂを保持する。
【００７３】
本実施形態では、調整値記憶部２８０が保持する実写画像調整値（ａ、ｂ）として、水平方向シフト量、垂直方向シフト量、水平方向スケーリング係数、垂直方向スケーリング係数、回転角度がある。
【００７４】
また、本実施形態では、調整値記憶部２８０が保持する位置姿勢調整値（ａ、ｂ）として、Ｘ軸方向シフト量、Ｙ軸方向シフト量、Ｚ軸方向シフト量、ロール角、ピッチ角、ヨー角、水平画角、垂直画角、ニアクリップ面、ファークリップ面がある。
【００７５】
また、本実施形態では、調整値記憶部２８０が保持する合成画像調整値（ａ、ｂ）として、水平方向シフト量、垂直方向シフト量、水平方向スケーリング係数、垂直方向スケーリング係数がある。
【００７６】
そして、調整値記憶部２８０で保持する調整値のうち、実写画像調整値は実写画像調整部２３０、位置姿勢調整値は位置姿勢調整部２４０、合成画像調整値は合成画像調整部２６０にそれぞれ送出される。
【００７７】
なお、調整値記憶部２８０が保持する情報は、ディスク装置３０に格納されており、コンピュータの起動時に、ＣＰＵ１０によって、または操作入力部２２０からの指令に基づいて、ディスク装置３０から読み出され、ＲＡＭ２０に書き込まれる。また、操作入力部２２０からの指令に基づいて、ＲＡＭ２０に保持している調整値がディスク装置３０に書き込まれる。
【００７８】
実写画像調整部２３０は、撮像部１１０ａ、ｂから取得した実写画像ａ、ｂのそれぞれを、調整値記憶部２８０から取得した実写画像調整値ａ、ｂを用いて調整する処理を行う。そして実写画像ａを調整することで得られる実写画像ａ’、実写画像ｂを調整することで得られる実写画像ｂ’をそれぞれ画像合成部２５０に送出する。
【００７９】
ここで実写画像調整部２３０が行う実写画像の調整処理について説明する。なお、以下の処理は、実写画像ａ、ｂの何れについても同じであるので、一方の実写画像について説明する。
【００８０】
実写画像調整部２３０は、撮像部１１０ａから実写画像ａを取得すると、先ず、調整値記憶部２８０から取得した実写画像調整値ａに含まれている水平方向スケーリング係数、垂直方向スケーリング係数に基づき、この実写画像ａを水平方向、垂直方向に、それぞれスケーリング係数に応じた倍率で拡大・縮小する。例えば、水平方向スケーリング係数に１．５が、垂直方向スケーリング係数に０．５が指定されていた場合には、実写画像の水平方向の画素数を１．５倍、垂直方向の画素数を０．５倍にするように拡大・縮小を行う。この実写画像の拡大・縮小の処理については、既に公知となっている画像処理によって実現が可能である。
【００８１】
次に、拡大・縮小処理を施された実写画像ａの中心位置を中心として、調整値記憶部２８０から取得した実写画像調整値ａに含まれている回転角度分だけ回転させる。この実写画像の回転処理については、既に公知となっている画像処理によって実現が可能である。
【００８２】
次に、拡大・縮小および回転後の実写画像ａのクリッピングを行う。図５は、クリッピング処理を説明する図である。図５（ａ）は、撮像部１１０ａから取得した時点での実写画像ａを示す図で、同図ではこの実写画像ａの水平方向のピクセル数はｗ、垂直方向のピクセル数はｈである。図５（ｂ）は、拡大・縮小および回転処理後の実写画像ａを示す図で、同図では、水平方向のピクセル数がａｗ、垂直方向のピクセル数がｂｈであり、角度ｃだけ回転させている。
【００８３】
ここで、水平方向のピクセル数がｗ、垂直方向のピクセル数がｈであるような矩形領域によって、図５（ｂ）の画像から領域を切り出す。実写画像調整値ａの水平方向シフト量がｓｗ、垂直方向シフト量がｓｈである場合には、矩形領域の画像中心が図５（ｂ）に示した画像中心に対して水平方向にｓｗ、垂直方向にｓｈだけ平行移動させた場所となるように、矩形領域を平行移動させる。図５（ｃ）は、図５（ｂ）の画像における矩形領域を示す図である。そして平行移動後の矩形領域内の画像を抽出することで、一連のクリッピング処理を完了する。この抽出した画像が、実写画像ａ’であり、これを画像合成部２５０に出力する。
【００８４】
以上の実写画像の拡大・縮小処理、回転処理、クリッピング処理は、それぞれ独立した３つの処理として説明したが、これらの処理は、合成変換によって１回の処理で実現することが可能である。
【００８５】
以上の実写画像調整処理を、実写画像ａ、実写画像ｂのそれぞれについて実施する。このとき、実写画像ａおよび実写画像ｂのどちらを先に処理するかについては、特に限定するものではない。
【００８６】
以上説明した実写画像調整部２３０による処理は、ＣＰＵ１０が行うようにしても良いが、画像描画装置７０に備わっているＧＰＵ７４が行うようにしても良い。
【００８７】
図３に戻って、位置姿勢調整部２４０は、位置姿勢変換部２７０から取得した位置姿勢計測値ａ’、ｂ’をそれぞれ、調整値記憶部２８０から取得した位置姿勢調整値ａ、ｂでもって調整し、射影変換行列ａ、ｂとモデルビュー行列ａ、ｂとを生成する。生成された射影変換行列ａ、ｂおよびモデルビュー行列ａ、ｂは、それぞれ仮想画像生成部２１０に送出される。
【００８８】
位置姿勢調整値のうち、Ｘ軸方向シフト量、Ｙ軸方向シフト量、Ｚ軸方向シフト量、ロール角、ピッチ角、ヨー角については、３次元座標変換行列を生成するための調整値となる。水平画角、垂直画角、ニアクリップ面、ファークリップ面については、仮想空間画像を生成する為に仮想空間中に設定する視点の射影行列を生成するための調整値となる。
【００８９】
ここで位置姿勢調整部２４０が行う射影変換行列、モデルビュー行列の生成処理について説明する。なお、以下の処理は、射影変換行列ａ、モデルビュー行列ａを生成する処理、射影変換行列ｂ、モデルビュー行列ｂを生成する処理の何れについても同じであるので、一方の射影変換行列、モデルビュー行列の生成処理について説明する。
【００９０】
位置姿勢調整部２４０は、調整値記憶部２８０から位置姿勢調整値ａを入力すると、位置姿勢調整値ａのうち、Ｘ軸方向シフト量、Ｙ軸方向シフト量、Ｚ軸方向シフト量、ロール角、ピッチ角、ヨー角から３次元座標変換行列を生成する。そして、位置姿勢変換部２７０から入力される位置姿勢計測値ａ’を、この３次元座標変換行列でもって変換し、変換後の位置姿勢計測値からモデルビュー行列ａを生成する。
【００９１】
また位置姿勢調整値ａのうち水平画角、垂直画角、ニアクリップ面、ファークリップ面から、射影変換行列ａを生成する。
【００９２】
このようにして、位置姿勢計測値ａ’、即ち、撮像部１１０ａの光学中心の位置姿勢を調整することにより、調整した位置姿勢を有する視点から見える仮想空間の画像を生成する際に用いる射影変換行列ａとモデルビュー行列ａとを求めることができる。なお、モデルビュー行列および射影変換行列を生成する方法については、ＣＧにおいて既に公知の技術であるため、説明を省略する。
【００９３】
よって、位置姿勢計測値ａ’に対する位置姿勢調整処理には位置姿勢調整値ａが用いられ、射影変換行列ａとモデルビュー行列ａとが生成される。位置姿勢計測値ｂ’に対する位置姿勢調整処理には位置姿勢調整値ｂが用いられ、射影変換行列ｂとモデルビュー行列ｂとが生成される。
【００９４】
画像合成部２５０は、実写画像調整部２３０から取得した実写画像ａ’、ｂ’のそれぞれと、仮想画像生成部２１０から取得した仮想空間画像ａ、ｂとを合成する処理を行い、合成画像ａ、ｂを生成する。生成された合成画像ａ、ｂは合成画像調整部２６０に送出される。合成画像ａは実写画像ａ’と仮想空間画像ａとの合成処理によって、合成画像ｂは実写画像ｂ’と仮想空間画像ｂとの合成処理によって生成される。
【００９５】
ここで、画像合成部２５０によって行われる合成処理について説明する。なお、以下の処理は、合成画像ａを生成する処理、合成画像ｂを生成する処理の何れについても同じであるので、一方の合成画像の生成処理について説明する。
【００９６】
仮想画像生成部２１０によって生成された仮想空間画像ａは、上述の通り、各画素について輝度情報と奥行き情報とのセットが関連付けられている。従って実写画像ａ’と仮想空間画像ａとで対応する位置の画素の輝度値を用いて、合成画像ａの対応する位置の画素の輝度値を求めるためには、この位置における画素に関連付けられたセットを用いて以下のようにして行う。
【００９７】
先ず、仮想空間画像ａにおいて注目画素に関連付けられた奥行き情報を参照し、視点から最も遠い距離を表す値であった場合は、実写画像ａの輝度値を合成画像の輝度値とする。一方、注目画素に関連付けられた奥行き値がそれ以外の値であった場合には、注目画素の輝度値を合成画像の輝度値とする。すなわち、仮想物体が描画されている領域に関しては仮想空間画像ａを、そうでない領域に関しては、実写画像を合成画像とすることによって、実写画像を背景として、その手前に仮想物体が表示されることになる。
【００９８】
なお、同様の合成画像ａを生成するための処理についてはこれ以外にも考えられ、例えば、仮想画像生成部２１０が仮想空間画像ａを生成する前に、予め実写画像ａ’を入力しておき、実写画像ａ’を背景として描画した後に、この実写画像ａ’上に仮想空間画像ａをレンダリングして合成画像ａを得るようにしてもよい。
【００９９】
すなわち、画像合成部２５０の機能を仮想画像生成部２１０が担うこととし、実写画像ａ’の上に仮想物体を直接描画することによって、明示的に仮想空間画像ａを生成することなく、合成画像ａを直接生成する。
【０１００】
合成画像調整部２６０は、画像合成部２５０で生成された合成画像ａ、ｂを、調整値記憶部２８０から取得した合成画像調整値ａ、ｂでもって調整する処理を行う。調整処理後の合成画像ａ’、ｂ’は、表示部１２０ａ、ｂに送出される。
【０１０１】
ここで、合成画像調整部２６０が行う、合成画像の調整処理について説明する。なお、以下の処理は、合成画像ａを調整する処理、合成画像ｂを調整する処理の何れについても同じであるので、一方の合成画像の生成処理について説明する。
【０１０２】
合成画像調整部２６０によって行われる合成画像調整処理は、合成画像ａに対する拡大・縮小およびクリッピング処理である。合成画像ａに対する拡大・縮小およびクリッピング処理の詳細については、実写画像調整部２３０で行われる実写画像調整処理と同様の画像処理が行われる。本実施形態では、合成画像ａの回転は行わないが、実写画像調整処理における回転処理と同様の回転をこの合成画像ａについて行うようにしても良い。
【０１０３】
次に、以上説明した機能構成を有するコンピュータが行う、観察者に好適な複合現実空間の画像を生成してＨＭＤ部１００に提供するための処理について、同処理のフローチャートを示す図６を用いて以下説明する。なお、同図のフローチャートに従った処理をＣＰＵ１０に実行させるためのプログラムやデータはディスク装置３０に保存されており、これをＣＰＵ１０による制御に従って適宜ＲＡＭ２０にロードし、ＣＰＵ１０がこれを用いて処理を実行する（若しくはその一部をＧＰＵ７４が実行する）ことで、ＣＰＵ１０は以下説明する各処理を実行することになり、その結果、図３に示した各部（記憶部を除く）の機能を実現することになる。
【０１０４】
先ず、本コンピュータを起動すると、先ずステップＳ２０１０において、本コンピュータの初期化処理を行う。この初期化処理には、ＣＰＵ１０がディスク装置３０に格納されている仮想空間情報、位置姿勢変換値、実写画像調整値、位置姿勢調整値、合成画像調整値（即ち、仮想空間情報記憶部２１５、調整値記憶部２８０、位置姿勢変換値記憶部２７５のそれぞれが保持している情報）をＲＡＭ２０にロードする処理を含む。
【０１０５】
次に、ステップＳ２０２０では、本コンピュータの操作者が操作入力装置６０を操作して、上記各調整値のうち１以上について更新する旨の指示を入力した場合には、ＣＰＵ１０はこれを検知し、指示された調整値を指示された値に更新する。例えば、実写画像ａの水平方向シフト量を「１．０」に設定する旨の指示を検知すると、ＣＰＵ１０は、ＲＡＭ２０に保持されている実写画像ａの水平シフト量の調整値を１．０に更新する。調整値の更新処理の詳細については後述する。
【０１０６】
次に、ステップＳ２０３０では、位置姿勢計測部３００は、ＨＭＤ部１００に設置された計測対象物の位置姿勢を計測し、計測した位置姿勢のデータを位置姿勢入力装置５０を介して本コンピュータに入力するので、ＣＰＵ１０はこれをＲＡＭ２０に格納する。
【０１０７】
次に、ステップＳ２０４０では、ＣＰＵ１０は位置姿勢変換部２７０として機能し、ステップＳ２０１０でＲＡＭ２０にロードした位置姿勢変換値ａ、ｂを用いて３次元変換行列ａ、ｂを生成し、ステップＳ２０３０で入力した位置姿勢計測値を３次元変換行列ａで変換することによって撮像部１１０ａの略光学中心の位置姿勢計測値ａ’を求めると共に、ステップＳ２０３０で入力した位置姿勢計測値を３次元変換行列ｂで変換することによって撮像部１１０ｂの略光学中心の位置姿勢計測値ｂ’を求める。
【０１０８】
次に、ステップＳ２０５０では、ＣＰＵ１０は位置姿勢調整部２４０として機能し、ステップＳ２０４０で求めた位置姿勢計測値ａ’、ｂ’のそれぞれについて、ステップＳ２０１０でＲＡＭ２０にロードした位置姿勢調整値ａ、ｂを用いて調整する処理を行う。なお、この位置姿勢調整処理によって射影変換行列ａ、ｂおよびモデルビュー行列ａ、ｂを生成するので、生成したこれらの行列のデータをＲＡＭ２０に格納する。
【０１０９】
次に、ステップＳ２０６０では、撮像部１１０ａ、ｂからそれぞれ実写画像ａ、ｂが順次画像入力装置４０を介して本コンピュータに入力されるので、ＣＰＵ１０はこれをＲＡＭ２０、若しくはディスク装置３０に格納する。
【０１１０】
次に、ステップＳ２０７０では、ＣＰＵ１０またはＧＰＵ７４は実写画像調整部２３０として機能し、ステップＳ２０６０でＲＡＭ２０に格納した実写画像ａ、ｂのそれぞれを、ステップＳ２０１０でＲＡＭ２０にロードした合成画像調整値ａ、ｂを用いて、調整する処理を行う。
【０１１１】
次に、ステップＳ２０８０では、ＧＰＵ７４は仮想画像生成部２１０として機能し、ステップＳ２０５０で生成した射影変換行列ａ、モデルビュー行列ａを用いて右目用仮想空間画像ａを生成すると共に、ステップＳ２０５０で生成した射影変換行列ｂ、モデルビュー行列ｂを用いて左目用仮想空間画像ｂを生成する。生成したそれぞれの仮想空間画像ａ、ｂはＲＡＭ７２に格納する。なお、このような処理は、ＣＰＵ１０が行うようにしても良く、その場合には、生成した画像はＲＡＭ２０に格納することになる。
【０１１２】
次に、ステップＳ２０９０では、ＧＰＵ７４は画像合成部２５０として機能し、ステップＳ２０７０で調整された実写画像ａ’、ｂ’それぞれと、ステップＳ２０８０で生成された仮想空間画像ａ、ｂとを合成し、合成画像ａ、ｂを生成する。生成した合成画像ａ、ｂはＲＡＭ７２に格納する。なお、このような処理は、ＣＰＵ１０が行うようにしても良く、その場合には、生成した画像はＲＡＭ２０に格納することになる。
【０１１３】
次に、ステップＳ２１００では、ＧＰＵ７４は合成画像調整部２６０として機能し、ステップＳ２０９０で生成された合成画像ａ、ｂそれぞれに対して、ステップＳ２０１０でＲＡＭ２０にロードした合成画像調整値ａ、ｂを用いて調整する処理を行う。調整後の合成画像ａ’、ｂ’はそれぞれＲＡＭ７２に格納される。なお、このような処理は、ＣＰＵ１０が行うようにしても良く、その場合には、生成した画像はＲＡＭ２０に格納することになる。
【０１１４】
次に、ステップＳ２１０５では、ＣＰＵ１０は画像出力装置８０を制御することにより、画像出力装置８０は、ＲＡＭ７２に格納されているそれぞれの合成画像ａ’、ｂ’を読み出して、ＨＭＤ部１００に備わっている表示部１２０ａ、１２０ｂに送出する。
【０１１５】
そして、本コンピュータの操作者が操作入力装置６０を操作して本処理を終了する旨の指示を入力しない限りは処理をステップＳ２１１０を介してステップＳ２０２０に戻し、以降の処理を繰り返す。
【０１１６】
以上の処理により、例えば、ＨＭＤ部１００を頭部に装着した観察者のそれぞれの目の位置姿勢関係に応じて調整値を入力すれば、入力した調整値に応じて現実空間画像を調整することができると共に、仮想空間画像を生成するための射影変換行列、モデルビュー行列を調整することができ、さらには、合成画像の調整を行うことができる。そしてその結果、この観察者のそれぞれの目の位置姿勢関係に応じて調整された右目用の複合現実空間画像、左目用の複合現実空間画像を得ることができるため、それぞれの画像を表示部１２０ａ、１２０ｂに表示して、この観察者の右目、左目に対して提供することで、この観察者は両眼立体視が可能となる。
【０１１７】
ここで、ステップＳ２０２０からステップＳ２１１０までの一連の処理をフレームと呼び、１フレームあたりの処理はおよそ数百ミリ秒以内に完了する。そのため、本コンピュータの操作者が視点の位置姿勢を変更したり、操作入力装置６０に対して操作を行った結果については、即座に反映されることとなる。
【０１１８】
なお、以上の処理手順において、一部のステップについては、処理の順序を変更してもよい。例えば、ステップＳ２０２０の処理と、ステップＳ２０３０の処理については、この順序を入れ替えることができる。これらの処理はステップＳ２０４０の処理を実施する前に完了していればよく、ステップＳ２０２０の処理とステップＳ２０３０の処理は相互に依存しないため、順序を入れ替えても何ら影響を与えることはない。この例の他にも処理順序を入れ替えることのできるステップが複数存在するが、これまでの説明から自明であり、言うまでもないことである。
【０１１９】
次に、実写画像調整値、位置姿勢調整値、合成画像調整値の入力処理について、同処理のフローチャートを示す図７を用いて説明する。なお、同図のフローチャートに従った処理は、図６のフローチャートに従った上記処理と並列して行われるものであって、図７のフローチャートに従った処理を行ったことによる結果は即座に図６のフローチャートに従った処理に反映される。
【０１２０】
また、図７のフローチャートに従った処理をＣＰＵ１０に実行させるためのプログラムやデータはディスク装置３０に保存されており、これをＣＰＵ１０による制御に従って適宜ＲＡＭ２０にロードし、ＣＰＵ１０がこれを用いて処理を実行することで、ＣＰＵ１０は以下説明する各処理を実行することになる。
【０１２１】
なお、以下説明する各ステップ（ステップＳ２５２０〜ステップＳ２５４０）はこの順に行われることに限定するものではなく、任意の順番で行って良い。
【０１２２】
先ず、本コンピュータの操作者は、操作入力装置６０を操作して、実写画像調整値を入力するので、ステップＳ２５２０では、ＣＰＵ１０はこれを受け、ＲＡＭ２０に格納する。
【０１２３】
入力形態としては、例えば、本コンピュータにＣＲＴや液晶画面などの表示装置を接続し、この表示装置の表示画面上に、実写画像調整値、位置姿勢調整値、合成画像調整値のそれぞれを入力するためのＧＵＩを表示し、このＧＵＩを操作入力装置６０でもって操作することで、それぞれの調整値を入力、設定する。
【０１２４】
ここで、上述の通り、実写画像調整値には右目用と左目用とがあり、更に実写画像調整値には、水平方向シフト量、垂直方向シフト量、水平方向スケーリング係数、垂直方向スケーリング係数、回転角度がある。よって、ステップＳ２５２０では、これら全てを入力し、設定するようにしても良いが、そのうちの一部を変更すべく、一部の調整値を入力するようにしても良い。また、入力する調整値は、直接用いるものを入力するようにしても良いし、現在の調整値に加算若しくは減算する差分値を入力するようにしても良い。
【０１２５】
ここで、上述の通り、図６のフローチャートに従った処理は繰り返し行われるものであり、ステップＳ２５２０で入力された実写画像調整値は図６のステップＳ２０２０で反映される。即ち、ステップＳ２０２０では、従前に設定されていた実写画像調整値を、今回ステップＳ２５２０で入力した実写画像調整値に更新する。これにより、ステップＳ２０３０以降では、ステップＳ２５２０で入力された実写画像調整値を用いた実写画像の調整処理が行われることになり、本コンピュータの操作者は、実写画像を望ましい実写画像に変換（調整）すべく、調整値を入力し、調整することができる。
【０１２６】
より具体的には、操作者は、合成画像ａ’、ｂ’のうち、実写画像ａ’、ｂ’の部分（すなわち、合成画像ａ’、ｂ’のうち、仮想空間画像ａ、ｂに遮蔽されない部分）を見ながら、操作入力装置６０を操作し、実写画像調整値ａ、ｂを決定する。先述したように、ステップＳ２０２０〜ステップＳ２１１０までの処理はごく短時間で行われるため、実写画像の調整操作を行うと、変更後の実写画像調整値ａ、ｂによって実写画像ａ’、ｂ’が直ちに生成され、ＨＭＤ部１００の表示部１２０ａ、１２０ｂに表示されることとなる。
【０１２７】
そのため、操作者は、調整した実写画像調整値ａ、ｂに対して、実際に反映された実写画像ａ’、ｂ’を見ながら、容易に実写画像調整値ａ、ｂを望ましい値へと調整することができる。本実施形態では、操作者は、実写画像調整値ａ、ｂの水平方向シフト量、垂直方向シフト量、水平方向スケーリング係数、垂直方向スケーリング係数、回転角度を変更し、実写画像ａ’、ｂ’を立体視したときに最も自然な立体感を感じられるような実写画像調整値ａ、ｂを決定する。ただし、この後に位置姿勢の調整操作および合成画像の調整操作を行うため、この段階では、実写画像調整値ａ、ｂは厳密でなくてもよい。
【０１２８】
操作者は、合成画像ａ’、ｂ’中に表示される実写画像ａ’、ｂ’を左右の目で比較しながら、実写画像調整値ａ、ｂを決定する必要があるため、仮想空間画像ａ、ｂによって、実写画像ａ’、ｂ’の像が可能な限り隠蔽されないような状態にすることが望ましい。実写画像の調整操作時には、自動または手動によって、仮想空間画像ａ、ｂを表示しない、または、仮想空間画像ａ、ｂを目立たなくするようにしてもよい。例えば、仮想空間画像ａ、ｂを半透明（仮想空間を構成する各ポリゴンのα値を制御すればよい）で表示する。
【０１２９】
次に、本コンピュータの操作者は、操作入力装置６０を操作して、位置姿勢調整値を入力するので、ステップＳ２５３０では、ＣＰＵ１０はこれを受け、ＲＡＭ２０に格納する。
【０１３０】
ここで、上述の通り、位置姿勢調整値には右目用と左目用とがあり、更に位置姿勢調整値には、Ｘ軸方向シフト量、Ｙ軸方向シフト量、Ｚ軸方向シフト量、ロール角、ピッチ角、ヨー角、水平画角、垂直画角、ニアクリップ面、ファークリップ面がある。よって、ステップＳ２５３０では、これら全てを入力し、設定するようにしても良いが、そのうちの一部を変更すべく、一部の調整値を入力するようにしても良い。また、入力する調整値は、直接用いるものを入力するようにしても良いし、現在の調整値に加算若しくは減算する差分値を入力するようにしても良い。
【０１３１】
また、ステップＳ２５３０で入力された位置姿勢調整値も図６のステップＳ２０２０で反映される。即ち、ステップＳ２０２０では、従前に設定されていた位置姿勢調整値を、今回ステップＳ２５３０で入力した位置姿勢調整値に更新する。これにより、ステップＳ２０３０以降では、ステップＳ２５３０で入力された位置姿勢調整値を用いた位置姿勢計測値の調整処理が行われることになり、本コンピュータの操作者は、位置姿勢計測値を望ましい位置姿勢計測値に変換（調整）すべく、調整値を入力し、調整することができる。
【０１３２】
より具体的には、位置姿勢調整値ａ、ｂのうち、まず、いずれか一方を決定し、次に残りの一方を決定する。本実施形態では、位置姿勢調整値ａを先に決定し、次に位置姿勢調整値ｂを決定するが、位置姿勢調整値ａ、ｂの決定はこの順序に限られない。即ち、順序を調整時に任意に定めることができる。
【０１３３】
まず最初に、操作者は、合成画像ａ’を見ながら、操作入力装置６０を操作し、位置姿勢調整値ａを決定する。このとき、位置姿勢調整値ａのＸ軸方向シフト量、Ｙ軸方向シフト量、Ｚ軸方向シフト量、ロール角、ピッチ角、ヨー角、水平画角、垂直画角、ニアクリップ面、ファークリップ面を調整し、実写画像ａ’と仮想空間画像ａとが、最も自然に合成されるような位置姿勢調整値ａを決定する。すなわち、観測対象とする仮想物体が、実写画像ａ’中で位置ずれなく適切に配置されるように、位置姿勢調整値ａを決定する。
【０１３４】
次に、合成画像ｂ’を見ながら、操作入力装置６０を操作し、位置姿勢調整値ａと同様にＸ軸方向シフト量、Ｙ軸方向シフト量、Ｚ軸方向シフト量、ロール角、ピッチ角、ヨー角、水平画角、垂直画角、ニアクリップ面、ファークリップ面を調整して位置姿勢調整値ｂを決定する。実写画像ｂ’と仮想空間画像ｂとが最も自然に合成されるような位置姿勢調整値ｂを決定する。
【０１３５】
位置姿勢の調整操作では、各々の合成画像において、実写画像と仮想空間画像との間に位置ずれが生じないように位置姿勢調整値を決定することが重要である。仮想空間画像ａ、ｂ間の立体感の調整については、合成画像の調整操作で行うため、この段階では特に考慮しなくてもよい。
【０１３６】
先述したように、ステップＳ２０２０〜ステップＳ２１１０までの処理はごく短時間で行われるため、位置姿勢計測値の調整操作を行うと、変更後の位置姿勢調整値ａ、ｂに基づいた仮想空間画像ａ、ｂが直ちに生成され、ＨＭＤ部１００の表示部１２０ａ、１２０ｂに表示されることとなる。そのため、操作者は、調整した位置姿勢調整値ａ、ｂに対して、実際に反映された仮想空間画像ａ、ｂを見ながら、位置姿勢調整値ａ、ｂを望ましい値へと容易に調整することができる。
【０１３７】
次に、本コンピュータの操作者は、操作入力装置６０を操作して、合成画像調整値を入力するので、ステップＳ２５４０では、ＣＰＵ１０はこれを受け、ＲＡＭ２０に格納する。
【０１３８】
ここで、上述の通り、合成画像調整値には右目用と左目用とがあり、更に合成画像調整値には、水平方向シフト量、垂直方向シフト量、水平方向スケーリング係数、垂直方向スケーリング係数がある。よって、ステップＳ２５４０では、これら全てを入力し、設定するようにしても良いが、そのうちの一部を変更すべく、一部の調整値を入力するようにしても良い。また、入力する調整値は、直接用いるものを入力するようにしても良いし、現在の調整値に加算若しくは減算する差分値を入力するようにしても良い。
【０１３９】
また、ステップＳ２５４０で入力された合成画像調整値も図６のステップＳ２０２０で反映される。即ち、ステップＳ２０２０では、従前に設定されていた合成画像調整値を、今回ステップＳ２５４０で入力した合成画像調整値に更新する。これにより、ステップＳ２０３０以降では、ステップＳ２５４０で入力された合成画像調整値を用いた合成画像の調整処理が行われることになり、本コンピュータの操作者は、合成画像を望ましい合成画像に変換（調整）すべく、調整値を入力し、調整することができる。
【０１４０】
より具体的には、操作者は、合成画像ａ’、ｂ’を見ながら、操作入力装置６０を操作し、合成画像調整値ａ、ｂを決定する。合成画像調整値ａ、ｂの水平方向シフト量、垂直方向シフト量、水平方向スケーリング係数、垂直方向スケーリング係数を調整し、最終的な合成画像ａ’、ｂ’を立体視したときに立体感が最も自然に感じられるような合成画像調整値ａ、ｂを決定する。
【０１４１】
先述したように、ステップＳ２０２０〜ステップＳ２１１０までの処理はごく短時間で行われるため、合成画像の調整操作を行うと、変更後の合成画像調整値ａ、ｂに基づいた合成画像ａ’、ｂ’が直ちに生成され、ＨＭＤ部１００の表示部１２０ａ、１２０ｂに表示されることとなる。そのため、操作者は、調整した合成画像調整値ａ、ｂに対して、実際に反映された合成画像ａ’、ｂ’を見ながら、合成画像調整値ａ、ｂを望ましい値へと容易に調整することができる。
【０１４２】
そして、操作者が操作入力装置６０を用いて、調整値入力を終了する旨の操作指示を入力しない限りは、処理をステップＳ２５５０を介してステップＳ２５２０に戻し、以降の処理を繰り返す。
【０１４３】
なお、ステップＳ２５２０からステップＳ２５４０までの操作によって、操作者が合成画像ａ’、ｂ’から得られる立体感が適切であると感じられない場合には、ステップＳ２５２０、ステップＳ２５３０、ステップＳ２５４０のいずれかの操作に戻ることができる。また、２回目以降の反復時に、その後の操作によって、実写画像調整値、位置姿勢調整値、合成画像調整値が適切に決定された場合には、図７のフローチャートによらず、任意の時点で操作を終了することができる。
【０１４４】
［第２の実施形態］
本実施形態では、実写画像調整値ａ、実写画像調整値ｂ、位置姿勢調整値ａ、位置姿勢調整値ｂ、合成画像調整値ａ、合成画像調整値ｂについて、各調整値ごとに、正と副に区分する。例えば、実写画像調整値ａ、位置姿勢調整値ａ、合成画像調整値ａを正、実写画像調整値ｂ、位置姿勢調整値ｂ、合成画像調整値を副というように区分する。この区分については、実写画像調整値、位置姿勢調整値、合成画像調整値の間で異なっていてもよい。また、任意の時点で正副を変更してもよい。
【０１４５】
ここで、正となる実写画像調整値（以下、正実写画像調整値と略す）に対して、調整値が設定された場合には、現在の正実写画像調整値と新たに設定する正実写画像調整値との差分値を計算する。そして、正実写画像調整値と同時に、副となる実写画像調整値（以下、副実写画像調整値と略す）についても、現在の副実写画像調整値に対して差分値を加算して、新たな副実写画像調整値を生成する。即ち、正実写画像調整値が変更されると、その変更量分だけ副実写画像調整値についても同時に変更されることになる。これにより、正実写画像調整値を調整することによって、正実写画像調整値と副実写画像調整値の２つの実写画像調整値を一体の実写画像調整値とみなして調整することができる。
【０１４６】
一方、副実写画像調整値を調整することによって、正と副の差分のみを調整することができる。位置姿勢調整値、合成画像調整値についても、同様に正と副の調整を行うことができる。
【０１４７】
以上述べたように、本実施形態によれば、２種類ずつある実写画像調整値、位置姿勢調整値、合成画像調整値について、２つの値の差を維持したまま調整を行ったり、それぞれ独立に調整を行うなど、柔軟な調整を行うことが可能となる。
【０１４８】
［第３の実施形態］
図８は、本実施形態に係るシステムの機能構成を示すブロック図である。同図において、図３と同じ部分については同じ番号を付けている。図８に示した構成は、図３に示した構成から、実写画像調整部２３０、画像合成部２５０を省いたものとなっている。
【０１４９】
撮像部１１０ａ、ｂから出力された実写画像ａ、ｂは、仮想画像生成部２１０に送出される。本実施形態での仮想画像生成部２１０は、第１実施形態の実写画像調整部２３０の機能と画像合成部２５０の機能とを含んでいる。
【０１５０】
本実施形態での仮想画像生成部２１０は、まず最初に、撮像部１１０ａ、ｂにおいて撮像された実写画像ａ、ｂを、調整値記憶部２８０から実写画像調整値ａ、ｂをそれぞれ入力する。この入力処理については、第１実施形態の実写画像調整部２３０と同じである。
【０１５１】
次に、仮想画像生成部２１０は、視点に対して垂直な平面を設定し、入力された実写画像ａをテクスチャとしてこの平面にマッピングする。そして、実写画像調整値ａの水平方向シフト量、垂直方向シフト量、水平方向スケーリング係数、垂直方向スケーリング係数、回転角度から３次元座標変換行列を生成し、平面を３次元座標変換行列で変換し、描画する。このとき、実写画像調整値ａによって、テクスチャをマッピングする平面を変換しているが、テクスチャマッピングの参照座標を変換するようにしてもよい。
【０１５２】
実写画像ａをテクスチャマッピングによって描画した後、位置姿勢調整部２４０から仮想画像を生成するための射影変換行列ａとモデルビュー行列ａを、仮想空間情報記憶部２１５から仮想空間情報をそれぞれ入力し、仮想空間画像を、この平面上に描画する。この処理によって、この平面上に合成画像ａが生成され、合成画像ａは合成画像生成部２６０に送られる。
【０１５３】
なお、このような一連の処理は、３次元座標変換のみで行うことができるので、３次元画像処理専用のハードウェアを搭載したコンピュータにとっては第１の実施形態で説明したような方法に比べてより高速に処理を行うことができる。
【０１５４】
以上のような処理を実写画像ｂについても同様に行う。即ち、実写画像ｂをテクスチャとして平面上にマッピングし、その上から射影変換行列ｂとモデルビュー行列ｂを用いて、仮想空間画像を描画する。
【０１５５】
本実施形態では、仮想画像生成部２１０では、合成画像ａを先に生成しているが、この順序を逆にして、合成画像ｂを先に生成するようにしてもよい。
【０１５６】
以上述べたように、本実施形態によれば、実写画像の変換と描画とをテクスチャマッピングによって行うため、実写画像の変換と描画に伴う処理時間が削減され、より高速に合成画像を生成することが可能となる。
【０１５７】
［第４の実施形態］
本実施形態では、実写画像調整値ａ、実写画像調整値ｂ、位置姿勢調整値ａ、位置姿勢調整値ｂ、合成画像調整値ａ、合成画像調整値ｂをセットにして観察者毎に調整値記憶部２８０に登録しておく。即ち、それぞれのセットにユーザＩＤを付加して登録する。
【０１５８】
その場合、ステップＳ２０１０では更に、コンピュータを起動した観察者が自身のユーザＩＤを操作入力装置６０を用いて入力するので、ＣＰＵ１０はこれをＲＡＭ２０に格納する。
【０１５９】
そして、ステップＳ２０７０における実写画像調整処理、ステップＳ２０５０における位置姿勢調整処理、ステップＳ２１００における合成画像調整処理を行う際に用いる調整値は、ステップＳ２０１０でＲＡＭ２０に格納したユーザＩＤに対応するものを用いる。これにより、それぞれの観察者に応じた調整値でもって調整処理を行うことができ、この観察者に好適な合成画像をこの観察者に対して提供することができる。
【０１６０】
また、図７のフローチャートにおいて、ステップＳ２５２０〜ステップＳ２５５０の任意の時点で、操作入力装置０６０を用いて指示を入力することで、調整後の実写画像調整値ａ、実写画像調整値ｂ、位置姿勢調整値ａ、位置姿勢調整値ｂ、合成画像調整値ａ、合成画像調整値ｂをユーザＩＤと共にディスク装置３０に保存する。
【０１６１】
以上述べたように、本実施形態によれば、異なる使用者が本コンピュータを使用する場合に、その個人に適した調整値を適用することが可能となる。
【０１６２】
［第５の実施形態］
本実施形態では、調整後の実写画像調整値ａ、実写画像調整値ｂ、位置姿勢調整値ａ、位置姿勢調整値ｂ、合成画像調整値ａ、合成画像調整値ｂは可搬型記憶装置に格納されている。可搬型記憶装置は、コンピュータの起動前および終了後に、コンピュータに対して任意に脱着を行うことが可能であるという点を除き、その機能はディスク装置３０と同じである。
【０１６３】
本コンピュータの操作者は、本コンピュータを起動する前に、その操作者に対応する調整値が格納された可搬型ディスク装置を、予めコンピュータに装着しておく。
【０１６４】
以上述べたように、本実施形態によれば、異なる使用者が本装置を使用する場合に、その個人に適した調整値を適用することが可能となる。
【０１６５】
［第６の実施形態］
本実施形態では、実写画像調整値ａ、実写画像調整値ｂ、位置姿勢調整値ａ、位置姿勢調整値ｂ、合成画像調整値ａ、合成画像調整値ｂをセットにして仮想物体毎に調整値記憶部２８０に登録しておく。即ち、それぞれのセットに仮想物体ＩＤを付加して登録する。
【０１６６】
その場合、ステップＳ２０２０では更に、操作者は、所望の仮想物体ＩＤを操作入力装置６０を用いて入力するので、ＣＰＵ１０はこれをＲＡＭ２０に格納する。なお、仮想物体ＩＤの入力が成されなかった場合には、予め決まっている仮想物体ＩＤをＲＡＭ２０に格納する。
【０１６７】
そして、ステップＳ２０７０における実写画像調整処理、ステップＳ２０５０における位置姿勢調整処理、ステップＳ２１００における合成画像調整処理を行う際に用いる調整値は、ステップＳ２０１０でＲＡＭ２０に格納した仮想物体ＩＤに対応するものを用いる。これにより、それぞれの仮想物体に応じた調整値でもって調整処理を行うことができ、仮想物体に好適な合成画像をこの観察者に対して提供することができる。
【０１６８】
また、図７のフローチャートにおいて、ステップＳ２５２０〜ステップＳ２５５０の任意の時点で、操作入力装置０６０を用いて指示を入力することで、調整後の実写画像調整値ａ、実写画像調整値ｂ、位置姿勢調整値ａ、位置姿勢調整値ｂ、合成画像調整値ａ、合成画像調整値ｂを、現在選択している仮想物体ＩＤと共にディスク装置３０に保存する。
【０１６９】
以上述べたように、本実施形態によれば、各仮想物体毎に異なる調整値を設定し、適用することが可能となる。
【０１７０】
［第７の実施形態］
図９は、本実施形態に係るシステムの機能構成を示すブロック図である。同図において図３と同じ部分については同じ番号を付けている。図９に示す構成は図３に示す構成と同じであるが、位置姿勢変換部２７０から送出される位置姿勢計測値ａ’、ｂ’が調整値記憶部２８０にも入力されている点が、図３に示す構成のシステムとは異なる。
【０１７１】
このような構成を有するシステムの動作は基本的には第６の実施形態と同じであるが、以下説明する点が異なる。
【０１７２】
本実施形態では、調整値記憶部２８０は、仮想物体ＩＤ距離リストを保持する。仮想物体ＩＤ距離リストは、仮想物体ＩＤと、この仮想物体ＩＤで特定される仮想物体の配置位置とのセットを、それぞれの仮想物体について管理するものである。
【０１７３】
よって本実施形態では、ステップＳ２０４０において、変換された位置姿勢計測値ａ’、ｂ’は、位置姿勢計測部２４０に入力されると共に、調整値記憶部２８０に対しても入力される。調整値記憶部２８０は、位置姿勢計測値ａ’、ｂ’を入力すると、視線ベクトル（撮像部１１０ａ、１１０ｂの光学中心の姿勢ベクトル）ａ、ｂを生成する。また、仮想物体ＩＤ距離リストを探索し、撮像部１１０ａと仮想物体配置位置とを結ぶ対象オブジェクトベクトルａ、撮像部１１０ｂと仮想物体配置位置とを結ぶ対象オブジェクトベクトルｂを生成する。
【０１７４】
調整値記憶部２８０は、視線ベクトルａと対象オブジェクトベクトルとの内積、視線ベクトルｂと対象オブジェクトベクトルとの内積を算出し、算出した内積値のセットが最も大きいくなる仮想物体のＩＤを選び出す。即ち、観察者が注視している仮想物体のＩＤを特定する。
【０１７５】
そして、ステップＳ２０７０における実写画像調整処理、ステップＳ２０５０における位置姿勢調整処理、ステップＳ２１００における合成画像調整処理を行う際に用いる調整値は、ステップＳ２０４０で特定した仮想物体ＩＤに対応するものを用いる。これにより、それぞれの仮想物体に応じた調整値でもって調整処理を行うことができ、仮想物体に好適な合成画像をこの観察者に対して提供することができる。
【０１７６】
また、図７のフローチャートにおいて、ステップＳ２５２０〜ステップＳ２５５０の任意の時点で、操作入力装置０６０を用いて指示を入力することで、調整後の実写画像調整値ａ、実写画像調整値ｂ、位置姿勢調整値ａ、位置姿勢調整値ｂ、合成画像調整値ａ、合成画像調整値ｂを、現在選択している仮想物体ＩＤと共にディスク装置３０に保存する。
【０１７７】
以上述べたように、本実施形態によれば、各仮想物体毎に異なる調整値を設定し、さらに、観察者が注目している仮想物体に対する調整値を、自動的に適用することが可能となる。
【０１７８】
なお、以上説明した各実施形態は適宜組み合わせて用いるようにしても良い。また、第４の実施形態から第７の実施形態では、識別情報の一例としてＩＤを用いたが、このＩＤの代わりに様々な情報を用いることも考えられる。
【０１７９】
［その他の実施形態］
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１８０】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１８１】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１８２】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１８３】
【図１】従来の複合現実感提示装置の概略構成を示すブロック図である。
【図２】従来の複合現実感提示装置の処理の流れを示すフローチャートである。
【図３】観察者に現実空間と仮想空間とが融合した複合現実空間の画像を提供すると共に、観察者に好適な複合現実空間画像を提供できるように、各種の調整を可能とするシステムの機能構成を示すブロック図である。
【図４】複合現実感提示部３５０に適用可能なコンピュータのハードウェア構成を示すブロック図である。
【図５】クリッピング処理を説明する図である。
【図６】観察者に好適な複合現実空間の画像を生成してＨＭＤ部１００に提供するための処理のフローチャートである。
【図７】実写画像調整値、位置姿勢調整値、合成画像調整値の入力処理のフローチャートである。
【図８】本発明の第３の実施形態に係るシステムの機能構成を示すブロック図である。
【図９】本発明の第７の実施形態に係るシステムの機能構成を示すブロック図である。
【図１】
2006285609.tif 000003
【図２】
2006285609.tif 000004
【図３】
2006285609.tif 000005
【図４】
2006285609.tif 000006
【図５】
2006285609.tif 000007
【図６】
2006285609.tif 000008
【図７】
2006285609.tif 000009
【図８】
2006285609.tif 000010
【図９】
2006285609.tif 000011