(57)【特許請求の範囲】
【請求項１】
表示された画像が装着者の眼で認識可能な表示部と、
前記装着者の周囲の仮想空間に配置された複数の表示オブジェクトを描画し、前記表示部に表示させる画像描画部と、
前記装着者の動きを検出するモーションセンサと、
前記モーションセンサの出力に基づいて、前記装着者が歩行中であることを検出したとき、前記表示部に表示される表示オブジェクトを、前記仮想空間の特定の範囲に配置された表示オブジェクトに固定し、前記装着者が歩行中でないことを検出したとき、前記仮想空間における前記複数の表示オブジェクトの配置座標が固定されるように、前記モーションセンサが検出した前記装着者の頭部の動きに連動して前記表示部に表示される表示オブジェクトを変更するコントローラと、
を備えるヘッドマウントディスプレイ。
【請求項２】
前記表示部は、外界光が透過した状態で画像を表示する
請求項１に記載のヘッドマウントディスプレイ。
【請求項３】
さらに、前記装着者の周囲を撮影するカメラと、
前記カメラが撮影した画像から、前記装着者の手又は指の動きによるジェスチャーを検出する画像解析部と、を備え、
前記コントローラは、前記画像解析部が検出したジェスチャーに応じて、そのジェスチャーに割り当てられた機能を実行することで、記表示部に表示される表示オブジェクトの選択又は変更を指示すると共に、前記モーションセンサの出力に基づいて、前記装着者が歩行中であることを検出したとき、前記ジェスチャーによる表示オブジェクトの選択又は変更を制限する
請求項１又は２に記載のヘッドマウントディスプレイ。
【請求項４】
前記コントローラは、前記画像の選択又は変更を制限する処理として、前記画像解析部が検出したジェスチャーの内で、特定のジェスチャーに割り当てられた機能だけを実行し、特定のジェスチャー以外のジェスチャーに割り当てられた機能を実行しないようにした
請求項３に記載のヘッドマウントディスプレイ。
【請求項５】
前記コントローラは、前記装着者が歩行中であることを検出したとき、前記表示部に表示される表示オブジェクトは、歩行中の前記装着者を支援する案内画像の表示オブジェクトとした
請求項１〜４のいずれか１項に記載のヘッドマウントディスプレイ。
【請求項６】
装着者の眼で認識可能な画像を表示するヘッドマウントディスプレイを使用して画像表示を行う画像表示方法において、
前記装着者の周囲の仮想空間に配置された複数の表示オブジェクトを描画し、描画した画像を前記ヘッドマウントディスプレイで表示させる描画処理ステップと、
前記装着者の動きを検出する動き検出処理ステップと、
前記動き検出処理で前記装着者が歩行中であることを検出したとき、表示部に表示される表示オブジェクトを、前記仮想空間の特定の範囲に配置された表示オブジェクトに固定し、前記装着者が歩行中でないことを検出したとき、前記仮想空間における前記複数の表示オブジェクトの配置座標が固定されるように、前記動き検出処理ステップで検出した前記装着者の頭部の動きに連動して前記表示部に表示される表示オブジェクトを変更する制御処理ステップと、
を含む画像表示方法。
【請求項７】
装着者の眼で認識可能な画像を表示するヘッドマウントディスプレイに、画像を表示させる処理を情報処理装置に実行させるプログラムであって、
前記装着者の周囲の仮想空間に配置された複数の表示オブジェクトを描画し、描画した画像を前記ヘッドマウントディスプレイで表示させる手順と、
前記装着者の動きを検出する手順と、
前記動きを検出する手順で前記装着者が歩行中であることを検出したとき、表示部に表示される表示オブジェクトを、前記仮想空間の特定の範囲に配置された表示オブジェクトに固定し、前記装着者が歩行中でないことを検出したとき、前記仮想空間における前記複数の表示オブジェクトの配置座標が固定されるように、前記動きを検出する手順で検出した前記装着者の頭部の動きに連動して前記表示部に表示される表示オブジェクトを変更する手順と、
を情報処理装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を表示するヘッドマウントディスプレイ、及びそのヘッドマウントディスプレイを使用して画像を表示する画像表示方法、並びにその画像表示方法を実行させるプログラムに関する。
【背景技術】
【０００２】
画像表示装置として、ユーザの頭部に装着するヘッドマウントディスプレイが各種実用化されており、普及しつつある。ヘッドマウントディスプレイには、シースルー型と称される、外界光が透過した状態で、画像を表示するものがある。このシースルー型のヘッドマウントディスプレイの場合には、ユーザ（装着者）が周囲を見通せる状況とした上で画像を表示することができ、ヘッドマウントディスプレイの適用範囲を広げることができる。例えば、屋外を歩行中のユーザに対して、その歩行中の箇所の周囲の地図などの案内を、ユーザの視野の一部に表示するようなことができる。
【０００３】
特許文献１には、ヘッドマウントディスプレイに歩数計を備え、歩数計から取得した歩数情報に基づいてユーザの歩行の有無を検出し、歩行中には、ユーザの視界の邪魔にならないようなヘッドマウントディスプレイの位置に画像を表示する技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−９１７８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ヘッドマウントディスプレイを使用した画像の表示形態として、ユーザの周囲を囲むように多数の画像を仮想的に配置し、その中からユーザが選択した画像を表示する形態が知られている。本明細書では、ユーザの周囲を囲むように多数の画像を仮想的に配置した状態を、インフォメーションベルトと述べる。このインフォメーションベルトを設定して表示したときには、例えばユーザが正面を向いたとき、ヘッドマウントディスプレイは、インフォメーションベルト内の正面に配置された画像を表示する。そして、ユーザが左側を向いたときには、ヘッドマウントディスプレイは、インフォメーションベルト内の左横に配置された画像を表示するように変化する。つまり、ユーザの頭部の動きに連動して、インフォメーションベルト上に表示される画像が変化する。
このように、ヘッドマウントディスプレイの画像表示としてインフォメーションベルトを配置することで、様々な情報を効率よく表示可能とし、ユーザは簡単な操作で必要な情報を選択して表示することができる。
【０００６】
ところで、インフォメーションベルトを適用した表示を行っている際に、ユーザが歩行中か否かの検出を行うことによって表示形態を制限してしまうと、表示形態が不適切な状態になってしまう場合がある。すなわち、特許文献１に記載に記載されるように、歩行中にユーザの視界を邪魔しない位置だけで限られた情報の表示を行うようにすると、その表示形態はインフォメーションベルトを使った表示形態とは異なることになる。このため、特許文献１に記載されるような従来技術をヘッドマウントディスプレイに適用した場合、ユーザが歩行中でない場合は、インフォメーションベルトを使った表示が行われるが、ユーザが歩行中である場合は、インフォメーションベルトの表示とは異なる表示形態になってしまう。つまり、視野の一部だけを使った表示形態となり、歩行中にはインフォメーションベルトの良さが生かされないという問題が発生する。
【０００７】
本発明は、歩行中でない場合は勿論、歩行中であっても、装着者の周囲にインフォメーションベルトのような多数の画像を仮想的に配置した情報の表示を、適切に行うことのできるヘッドマウントディスプレイ、画像表示方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のヘッドマウントディスプレイは、
表示された画像が装着者の眼で認識可能な表示部と、
装着者の周囲の仮想空間に配置された複数の表示オブジェクトを描画し、表示部に表示させる画像描画部と、
装着者の動きを検出するモーションセンサと、
モーションセンサの出力に基づいて、装着者が歩行中であることを検出したとき、表示部に表示される表示オブジェクトを、仮想空間の特定の範囲に配置された表示オブジェクトに固定し、装着者が歩行中でないことを検出したとき、仮想空間における複数の表示オブジェクトの配置座標が固定されるように、モーションセンサが検出した装着者の頭部の動きに連動して表示部に表示される表示オブジェクトを変更するコントローラとを備える。
【０００９】
また本発明の画像表示方法は、
装着者の眼で認識可能な画像を表示するヘッドマウントディスプレイを使用して画像表示を行う画像表示方法において、
装着者の周囲の仮想空間に配置された複数の表示オブジェクトを描画し、描画した画像をヘッドマウントディスプレイで表示させる描画処理ステップと、
装着者の動きを検出する動き検出処理ステップと、
動き検出処理で装着者が歩行中であることを検出したとき、表示部に表示される表示オブジェクトを、仮想空間の特定の範囲に配置された表示オブジェクトに固定し、装着者が歩行中でないことを検出したとき、仮想空間における複数の表示オブジェクトの配置座標が固定されるように、動き検出処理ステップで検出した装着者の頭部の動きに連動して表示部に表示される表示オブジェクトを変更する制御処理ステップと、を含む。
【００１０】
また本発明のプログラムは、上述した画像表示方法の各処理ステップを実行する手順を含むプログラムである。
【発明の効果】
【００１１】
本発明によると、装着者が歩行中でない場合には、装着者の周囲の空間に仮想的に配置された複数の表示オブジェクトの内から選択された特定の表示オブジェクトの画像を表示できるようになる。また、装着者が歩行中の場合には、装着者の周囲の空間に仮想的に複数の表示オブジェクトが配置された状態を維持しながら、表示する表示オブジェクトが、特定位置に配置された表示オブジェクトに固定されるようになる。したがって、装着者が歩行中であっても、常に装着者にとって適切な表示ができるようになる。
例えば、装着者が歩行中に頭部を左又は右に振ったとしても、表示画像が変化せず、歩行による装着者の頭部の動きが、表示範囲の選択状況に影響を与えないようにすることができる。このため、歩行による装着者の頭部の動きに連動して、表示画像の表示位置が変化することがなく、歩行中であっても装着者にとって常に適切な表示形態になる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施の形態例によるヘッドマウントディスプレイを示す概略図である。
【図２】本発明の一実施の形態例によるヘッドマウントディスプレイの内部構成を示すブロック図である。
【図３】本発明の一実施の形態例によるヘッドマウントディスプレイのデータ処理機能から見た機能ブロック図である。
【図４】本発明の一実施の形態例による相対移動量計算処理例を示すフローチャートである。
【図５】本発明の一実施の形態例による歩行検知処理例を示すフローチャートである。
【図６】本発明の一実施の形態例によるインフォメーションベルトの例を示す図である。
【図７】本発明の一実施の形態例による表示オブジェクトの座標設定処理例を示すフローチャートである。
【図８】本発明の一実施の形態例によるインフォメーションベルトの表示処理例を示すフローチャートである。
【図９】本発明の一実施の形態例による歩行時のインフォメーションベルトの表示変化の例を示す図である。
【図１０】本発明の一実施の形態例のジェスチャーによる操作例を示すフローチャートである。
【図１１】本発明の一実施の形態例による表示オブジェクトの操作例（例１）を示す図である。
【図１２】本発明の一実施の形態例による表示オブジェクトの操作例（例２）を示す図である。
【図１３】本発明の一実施の形態例による表示オブジェクトの操作例（例３）を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の一実施の形態例を、添付図面を参照して説明する。
［１．ヘッドマウントディスプレイの全体構成例］
図１は、ヘッドマウントディスプレイの例を示す。
ヘッドマウントディスプレイ１０は、例えば眼鏡型に構成され、フレーム１１によりユーザ（装着者）の頭部に装着される。以下の説明では、ユーザを表す言葉として「装着者」という用語を使うこととする。フレーム１１の正面には、左ハーフミラー１２と右ハーフミラー１３とが取り付けられている。左ハーフミラー１２の中央には、画像を表示する左表示部１４が配置され、右ハーフミラー１３の中央には、画像を表示する右表示部１５が配置されている。
【００１４】
表示部１４，１５に画像が表示されることで、表示された画像が装着者の左眼及び右眼で認識され、装着者の前面に画像が表示された状態となる。また、左右のハーフミラー１２，１３に配置された表示部１４，１５に画像が表示されない状態では、外界光がそのままハーフミラー１２，１３を透過するので、装着者はその左眼及び右眼で周囲の状況を確認することができる。したがって、ヘッドマウントディスプレイ１０は、外界光を透過しながら画像を表示できる、いわゆるシースルー型ヘッドマウントディスプレイとして機能する。
【００１５】
ヘッドマウントディスプレイ１０のフレーム１１には、モーションセンサ１６が内蔵されている。このモーションセンサ１６は、装着者の頭部の動き検出の処理を行うセンサである。また、フレーム１１には、カメラ１７が取り付けられており、このカメラ１７によって装着者の前面の様子が撮影される。
また、ヘッドマウントディスプレイ１０には、ケーブル２７を介してアダプタ２０が取り付けられる。アダプタ２０は、表示部１４，１５が表示する画像の処理を行う。
【００１６】
［２．ヘッドマウントディスプレイの内部構成例］
図２は、ヘッドマウントディスプレイ１０とアダプタ２０の内部構成例を示す。アダプタ２０は、コントローラ２１と画像描画部２２と画像メモリ２３と操作部２４と画像解析部２５と動き解析部２６とを備える。コントローラ２１は、画像描画部２２における画像の描画を制御する。画像描画部２２は、画像メモリ２３に記憶されている表示オブジェクトの画像データから、必要な画像データを取り出す。そして、画像描画部２２は、取り出した画像データから、表示用の画像を描画する処理を行う。そして、画像描画部２２での描画処理で得られた画像データが、左表示部１４及び右表示部１５に供給される。
【００１７】
左表示部１４に表示される画像と、右表示部１５に表示される画像は、基本的に同一の画像である。但し、装着者が画像を立体視できるようにするために、左表示部１４に表示される画像および右表示部１５に表示される画像のそれぞれを、互いに視差のある立体視用左画像および立体視用右画像としてもよい。
また、コントローラ２１には、操作部２４が接続される。そして、この操作部２４が受け付けた操作に基づいて、コントローラ２１は、画像描画部２２に対して対応する種類の画像の描画を指示する。
【００１８】
また、ヘッドマウントディスプレイ１０に取り付けられたモーションセンサ１６の検出データは、動き解析部２６に供給される。モーションセンサ１６としては、加速度センサやジャイロスコープなどが使用される。動き解析部２６は、モーションセンサ１６の検出データに基づいて、ヘッドマウントディスプレイ１０の装着者の動きを検出する。ここで検出する装着者の動きとしては、例えば頭部の水平又は垂直の動きの他に、装着者自身が歩行などで移動する動きがあり、動き解析部２６は、これらの動きを検出する。
動き解析部２６が検出した動きの解析データは、コントローラ２１に供給される。コントローラ２１は、これらの動き解析データに基づいて、表示画像の表示範囲の切り替えや変更などの指示を、画像描画部２２に対して行う。
【００１９】
さらに、ヘッドマウントディスプレイ１０に取り付けられたカメラ１７が撮影した画像データは、画像解析部２５に供給される。カメラ１７は、一定のフレーム周期で画像の撮影を行い、画像解析部２５は、カメラ１７が撮影した画像の内容の解析を行う。具体的には、画像解析部２５は、装着者の手指の動きを検出して、装着者が手又は指で行ったジェスチャーを判別する処理を行う。ジェスチャーの具体的な例については後述する。
そして、画像解析部２５は、判別したジェスチャーに基づいて、表示画像の座標を変更するコマンドを作成し、その作成したコマンドをコントローラ２１に供給する。コントローラ２１では、供給されるコマンドに基づいて、表示画像の座標変更の処理を行う。
【００２０】
［３．ジェスチャーにより指示を行う構成例］
図３は、ヘッドマウントディスプレイ１０に取り付けられたカメラ１７が撮影した画像から、ジェスチャー解析を行い、そのジェスチャー解析結果に基づいて表示画像の座標を制御する処理の流れを示す機能ブロックである。図３に示す画像解析部２５内の各処理部２５１〜２５７は、ハードウェアで構成されるようにしてもよいが、ソフトウェアの演算処理によって同様の処理を行うようにしてもよい。
【００２１】
カメラ１７が撮影した画像データは、フレーム取得部２５１に供給され、このフレーム取得部２５１で１フレームごとの画像データが取得される。
フレーム取得部２５１が新しいフレームの画像データを取得すると、取得した画像データが指先座標検出部２５２に供給される。指先座標検出部２５２は、画像に含まれる指先の座標位置を検出する。画像に含まれる指先は、例えば画像中の手指の色（肌色）の領域を抽出すると共に、その抽出した手指の色の領域の形状が、手指の形状であるとき、指先などを検出する。検出した座標位置のデータは、座標履歴記憶部２５３に供給され、記憶される。そして、ジェスチャー解析部２５４は、座標履歴記憶部２５３に記憶された過去の一定期間（例えば１秒から数秒程度の期間）の座標履歴を読み出し、一定期間内の座標変化から、ジェスチャーを判別する。
【００２２】
さらに、ジェスチャー解析部２５４で判別したジェスチャーと、基準座標設定部２５５で設定されている座標データとが座標変換部２５６に供給される。座標変換部２５６では、ジェスチャーの指示が座標のデータに変換処理される。
座標変換部２５６で変換された座標データは表示座標設定部２５７に供給され、この表示座標設定部２５７で表示座標の変更を指示設定するコマンドが作成される。この表示座標設定部２５７で作成されたコマンドはコントローラ２１に供給される。コントローラ２１は、座標の変更を指示するコマンドに基づいて、画像描画部２２で描画させる表示オブジェクトの座標の変更などを指示する。
以上説明したように、画像解析部２５では、フレーム取得部２５１での１フレームごとの画像の取得から表示座標設定部２５７でのコマンドの出力処理が繰り返し実行される。
【００２３】
［４．動き解析部での移動量の計算例］
図４は、動き解析部２６が行う、装着者の頭部の動きによる移動量の計算方法を示すフローチャートである。
まず、動き解析部２６は、モーションセンサ１６内のジャイロスコープが出力する角加速度のデータを取得する（ステップＳ１１）。ここで取得される角加速度は、ジャイロスコープが検出する３軸（ｘ軸、ｙ軸、ｚ軸）の内のｘ軸とｙ軸の２軸の角加速度である。なお、ここでジャイロスコープが検出する３軸とは、例えば図１に示すように、表示部１４，１５に表示される画像の水平方向ｘ軸、垂直方向ｙ軸、及び表示部１４，１５に表示される画像と直交する方向であるｚ軸をいう。
【００２４】
そして、動き解析部２６は、ｘ軸とｙ軸の２軸の角加速度の値から、頭部の移動角度を計算する（ステップＳ１２）。さらに、動き解析部２６は、検出した２軸の移動角度から、頭部の相対移動量を計算する（ステップＳ１３）。ここでは、ｘ軸方向の相対移動量とｙ軸方向の相対移動量を、例えば次式による算出する。
ｘ軸方向相対移動量＝ｘ軸移動角度＊３０
ｙ軸方向相対移動量＝ｙ軸移動角度＊３０
なお、これらの式の各軸移動角度に乗算される値３０は、ジャイロスコープの特性と想定している画面サイズ（装着者から画面までの距離）で決まるパラメータであり、１つの例である。
【００２５】
そして、ステップＳ１３での相対移動量の計算を行った後、動き解析部２６は一定時間待機し（ステップＳ１４）、ステップＳ１１の角加速度のデータの取得処理に戻る。このようにして、動き解析部２６は、一定時間ごとに繰り返しステップＳ１１からステップＳ１３の処理を行って、一定時間ごとにｘ軸方向の相対移動量とｙ軸方向の相対移動量を取得する。
このようにして得られた相対移動量のデータは、動き解析部２６からコントローラ２１に伝送される。コントローラ２１は、表示画像の表示範囲の移動が必要であると判断すると、この相対移動量のデータを、画像描画部２２に送る。そして、画像描画部２２が描画する範囲、つまり表示部１４，１５に表示される範囲を変更する。
【００２６】
［５．動き解析部での歩行検知処理例］
図５は、動き解析部２６が行う、装着者の歩行検知処理の例を示すフローチャートである。
まず、動き解析部２６は、モーションセンサ１６内の加速度センサが出力する加速度のデータを取得する（ステップＳ２１）。ここでは、加速度センサが検出する３軸（ｘ軸、ｙ軸、ｚ軸）の内で、地面と垂直なｙ軸の加速度データを取得する。そして、動き解析部２６は、加速度値から装着者の移動平均値を算出する（ステップＳ２２）。
【００２７】
次に、動き解析部２６は、ステップＳ２２で算出した移動平均値が、予め決められた閾値を越えるか否かを判断する（ステップＳ２３）。ここで、移動平均値が閾値を越える場合、動き解析部２６は、歩行検知フラグを「true」の値とし、歩行中とする（ステップＳ２４）。また、ステップＳ２３の判断で、移動平均値が閾値を越えない場合、動き解析部２６は、歩行検知フラグを「false」の値とし、歩行中でないとする（ステップＳ２５）。
【００２８】
そして、ステップＳ２４，Ｓ２５で歩行検知フラグを設定した後、動き解析部２６は一定時間待機し（ステップＳ２６）、ステップＳ２１の処理に戻る。
このようにして、動き解析部２６では、モーションセンサ１６の出力から装着者が歩行中か否かを判別し、その判別結果に基づいて歩行検知フラグを「true」又は「false」の値とする処理が行われる。この歩行検知フラグは、ヘッドマウントディスプレイ１０がインフォメーションベルトを表示する際に使用される。
【００２９】
［６．インフォメーションベルトの表示例］
図６は、ヘッドマウントディスプレイ１０が、装着者の周囲に仮想的に配置した表示オブジェクトを表示する例を示す。
ここでは、ヘッドマウントディスプレイ１０の表示部１４，１５が表示する表示オブジェクトで、装着者の水平方向の周囲を３６０°囲むように、仮想的なベルト１００を設定する。この円形のベルト１００がインフォメーションベルトである。
【００３０】
このインフォメーションベルト１００のそれぞれの位置には、コントローラ２１の制御で、複数の表示オブジェクトが配置される。例えば、インフォメーションベルト１００の正面には、メインとなる表示オブジェクト１０１が配置され、インフォメーションベルト１００の左脇には、それとは別の表示オブジェクト１０２〜１０７などが配置される。さらに、インフォメーションベルト１００の右脇には、各種操作を指示するアイコンなどの表示オブジェクト１１１〜１１４などが配置される。これらの配置例は一例であり、インフォメーションベルト１００には、その他の各種表示オブジェクトが、様々な形態で配置されるようにしてもよい。
【００３１】
これらの表示オブジェクト１０１〜１０７，１１１〜１１４は、コントローラ２１が表示オブジェクトとして管理する。すなわち、コントローラ２１は、インフォメーションベルト１００内の仮想オブジェクトリスト２００を持つ。仮想オブジェクトリスト２００は、オブジェクト番号毎に、ｘ座標の値とｙ座標の値を持つ。ｘ座標は、表示オブジェクトのインフォメーションベルト１００内の水平方向（円周方向）の位置を示し、ｙ座標は、インフォメーションベルト１００内の垂直方向の位置を示す。
【００３２】
このようなインフォメーションベルト１００を設定した状態では、装着者が頭部を水平方向に動かすことで、ヘッドマウントディスプレイ１０に表示される範囲が、その動かした方向の範囲になり、表示部１４，１５に表示される表示オブジェクトが変化する。
例えば、装着者が正面を向いたときには、インフォメーションベルト１００上の正面の表示オブジェクト１０１が表示され、装着者が左方向を向いたときには、インフォメーションベルト１００上の左脇の表示オブジェクト１０２〜１０７などが表示されるようになる。これらの表示を行うために、動き解析部２６では、図４のフローチャートで説明した移動量の計算処理が行われる。但し、装着者が歩行中である場合には、コントローラ２１は、この頭部の動きによる表示範囲の変更を行わないように制御する。この歩行中の処理の詳細は後述する。
【００３３】
また、ヘッドマウントディスプレイ１０がインフォメーションベルト１００を表示した状態では、図６に示すように、装着者の手指ｆの動きによるジェスチャーで、表示内容や位置を変更する操作が行われる。この操作を行うためのジェスチャーの判別処理が、図３に示した画像解析部２５での解析で行われる。ジェスチャーの具体的な例については後述する。
【００３４】
［７．インフォメーションベルトの座標設定例］
図７は、装着者の頭部の動きに連動して、インフォメーションベルト１００の表示座標が変化する処理の例を示すフローチャートである。
コントローラ２１は、図４のフローチャートで説明した相対移動量のデータを取得する（ステップＳ４１）。このとき、コントローラ２１は、仮想オブジェクトリスト２００内のそれぞれの表示オブジェクトの座標データに、ステップＳ４１で取得した相対移動量を加算する（ステップＳ４２）。
この仮想オブジェクトリスト２００内のそれぞれの表示オブジェクトの座標データが変更されることで、コントローラ２１の指示で画像描画部２２が描画する画像についても、対応した座標位置に配置された表示オブジェクトを描画した画像になる。
なお、このインフォメーションベルト内の表示範囲を移動させる処理は、図５のフローチャートで説明した歩行検知フラグが「false」の値のときだけ行われ、歩行検知フラグが「true」の場合には行われない。この歩行検知フラグによる制御例は、次の図８のフローチャートで説明する。
【００３５】
［８．インフォメーションベルトを表示した際の制御例］
図８は、ヘッドマウントディスプレイ１０がインフォメーションベルト１００を表示した状態でのコントローラ２１による制御例を示すフローチャートである。
まず、コントローラ２１は、モーションセンサ１６の出力による動きの解析を動き解析部２６で実行させ、その解析結果を取得する（ステップＳ３１）。そして、コントローラ２１は、歩行検知フラグが「true」の値か、あるいは「false」の値であるかを判断する（ステップＳ３２）。
【００３６】
この判断で装着者が歩行中であり、歩行検知フラグが「true」の値である場合には、コントローラ２１は、インフォメーションベルト１００を、正面の表示オブジェクト１０１を表示した状態に固定する（ステップＳ３３）。このインフォメーションベルト１００を固定した状態では、装着者の頭部の水平方向の動きがあっても、コントローラ２１は、その動きに連動した表示範囲の変更処理は行わない。
【００３７】
また、ステップＳ３２の判断で、装着者が歩行中でなく、歩行検知フラグが「false」の値である場合には、コントローラ２１は、動き解析部２６で頭部の水平方向と垂直方向の向きの変化を検出したか否かを判断する（ステップＳ３４）。この判断で頭部の水平方向と垂直方向の少なくともいずれかの方向の変化を検出した場合には、コントローラ２１は、仮想空間上の表示オブジェクトの配置座標を固定した上で、検出した動きの角度に対応した座標の変更処理を行う。水平方向の動きと垂直方向の動きを同時に検出した場合には、水平方向と垂直方向の２つの動きに対応した座標の変更処理を行う。この座標の変更処理が行われることで、コントローラ２１が画像描画部２２に対して指示する描画範囲が対応して変更され、インフォメーションベルト１００が移動する（ステップＳ３５）。
【００３８】
そして、ステップＳ３３でインフォメーションベルト１００を固定した処理を行った後と、ステップＳ３５でインフォメーションベルト１００を移動させた処理を行った後と、ステップＳ３４で頭部の水平方向と垂直方向の向きの変化がない場合には、コントローラ２１は、ステップＳ３１の解析結果の取得処理に戻る。
【００３９】
［９．歩行時のインフォメーションベルトの表示イメージ例］
図９は、歩行時のインフォメーションベルト１００の表示イメージを示す。
図９の左側に示すように、装着者が立ち止まっている場合には、インフォメーションベルト１００が周囲の空間に対して固定された状態になる。つまり、仮想空間の表示オブジェクトの配置座標が固定された状態である。このときには、装着者の頭部の回転やジェスチャーでの指示に基づいて、インフォメーションベルト１００の表示を行う座標位置が変化して、ヘッドマウントディスプレイ１０は、任意の位置に配置された表示オブジェクトを表示することができる。なお、装着者が立ち止まっている状態での頭部の回転には、体の向きを固定した状態で頭部だけを回転させる場合と、体と頭部が一体となって向きを変えて回転させる場合とがあるが、いずれの状態での頭部の回転があった場合でも、その回転に応じてインフォメーションベルト１００の表示を行う座標位置が変化して、表示範囲が変化する。
【００４０】
これに対して、装着者が歩行している間には、装着者の頭部に対するインフォメーションベルト１００の座標位置が固定される。したがって、歩行中には、装着者の頭部が左右に動いたとしても、ヘッドマウントディスプレイ１０が表示する表示オブジェクトが変化しない。
なお、装着者が歩行している間には、インフォメーションベルト１００の座標位置を固定して、ヘッドマウントディスプレイ１０が表示する表示オブジェクトとして、例えば歩行中の装着者を支援する案内画像を表示するようにしてもよい。この歩行中の装着者を支援する案内画像としては、歩行中の箇所の周囲の地図や、周囲の状況などを説明する画像などが考えられる。
【００４１】
［１０．ジェスチャー判定例］
図１０は、ジェスチャー判定を行う場合の例を示すフローチャートである。
コントローラ２１は、画像解析部２５内のジェスチャー解析部２５４（図３）でジェスチャーを判別したか否かを判断する（ステップＳ５１）。ここで、ジェスチャーを判別しない場合には、コントローラ２１は、ジェスチャーを判定するまで待機する。そして、コントローラ２１は、判別したジェスチャーが予め決められた特定種類のジェスチャーか否かを判断する（ステップＳ５２）。ここで、予め決められた特定種類のジェスチャーである場合には、コントローラ２１は、そのジェスチャーの指示の実行を許可する（ステップＳ５３）。また、ステップＳ５２の判断で、予め決められた特定種類のジェスチャーでない場合には、コントローラ２１は、ステップＳ５１の判断に戻る。
【００４２】
ステップＳ５３で実行を許可する特定種類のジェスチャーとしては、例えば、インフォメーションベルト１００全体を回転させるジェスチャーや、表示中の表示オブジェクトの配置位置を移動させるジェスチャーなど、様々なジェスチャーが想定される。
【００４３】
［１１．ジェスチャーによる操作例］
図１１〜図１３は、装着者の手指の動きによるジェスチャーで、インフォメーションベルト１００内の表示オブジェクトの操作を行う例を示す。図１１〜図１３は、いずれも装着者の眼から見た状態を示す。なお、図１１〜図１３の例では、説明のために手指を手前の位置に示すが、画像の表示状態によっては、装着者から見て、表示画像が手指よりも手前に見える場合がある。
【００４４】
図１１の例は、インフォメーションベルト１００内の表示オブジェクト１２１が正面に表示された状態を示す。図１１に示す表示オブジェクト１２１は、歩行中の装着者の目的地へのルートを説明する案内画像の例である。また、表示オブジェクト１２１には、ＳＮＳやメールの着信などの装着者への告知を示す文字が含まれる。
この例では、装着者の視野範囲には、表示オブジェクト１２１以外のその他の表示オブジェクトも配置されているが、表示オブジェクト１２１を除く表示オブジェクトは、例えば輝度を落とした半透明状態で表示される。
この状態で、例えば装着者は、５本の指を伸ばした状態の手指ｆ１を水平方向又は垂直方向に動かすジェスチャーを行ったとする。
このとき、その手指ｆ１の動きＭ１に連動して、インフォメーションベルト１００全体の表示座標が変化する。例えば、手指ｆ１を水平に動かしたとき、その水平の手指ｆ１の動きに連動して、水平方向にインフォメーションベルト１００全体の表示座標が変化する。
【００４５】
図１２の例は、インフォメーションベルト１００内の表示オブジェクト１２１が正面に表示された状態で、装着者が２本の指を伸ばした手指ｆ２の形状と動きＭ２で、その手指ｆ２の位置と重なった位置の表示オブジェクト１２１の移動拡大又は縮小を指示するジェスチャーを行ったとする。このとき、表示オブジェクト１２１は、拡大された表示状態又は縮小された表示状態となる。
【００４６】
図１３の例は、インフォメーションベルト１００内のそれぞれの表示オブジェクトが、左上にボタンを表示する。例えば、表示オブジェクト１２１は、ボタン１２１ａを表示する。この状態で、装着者は、手指ｆ３で、その表示オブジェクト１２１のボタン１２１ａを押すジェスチャーを行う。このとき、その押されたボタン１２１ａの表示オブジェクト１２１が選ばれ、その表示オブジェクト１２１が手指ｆ３の動きでインフォメーションベルト１００内の任意の位置に移動させることができる。
ここでは、表示オブジェクトを移動させる例としたが、例えばボタン１２１ａが押されるジェスチャーにより、その表示オブジェクトが手前に表示されたり、あるいは、ボタンが押された際に、該当する表示オブジェクトがインフォメーションベルト１００から消去される等のその他の処理が行われるようにしてもよい。
【００４７】
この図１１〜図１３に示すジェスチャーは、多数用意されたジェスチャーの内の３つの例を示すものである。この３つの例以外のジェスチャーにより、表示オブジェクトの移動、選択、変形などの様々な指示を行うようにしてもよい。
【００４８】
［１２．変形例］
なお、各図に示すヘッドマウントディスプレイの形状や構成は、一例を示すものであり、本発明は、各図に示すヘッドマウントディスプレイとは異なる形状や構成のものに適用してもよい。例えば、図１に示すヘッドマウントディスプレイ１０では、左右の眼に対応した２つの表示部１４，１５を備える構成としたが、１つの表示部だけを備えたヘッドマウントディスプレイに本発明を適用してもよい。
【００４９】
また、上述した実施の形態では、ユーザの周囲に複数の画像を配置する例として、図６のインフォメーションベルト１００の例を示した。このインフォメーションベルト１００のような仮想的な表示オブジェクトの配置状態は一例を示すものであり、その他の配置状態を適用してもよい。例えば、ユーザの周囲に半球状に表示オブジェクトを配置するようにしてもよい。
【００５０】
また、上述した実施の形態では、表示部１４，１５が表示する画像は、画像メモリ２３が記憶したデータから作成した画像としたが、例えばヘッドマウントディスプレイ１０が受信部を備えて、外部から伝送された画像をヘッドマウントディスプレイ１０が表示してもよい。
【００５１】
また、上述した実施の形態では、表示部はハーフミラー上に画像を表示する構成とし、外界光が透過した状態で画像を表示するヘッドマウントディスプレイとした例を示した。これに対して、例えば表示部は、外界光が透過しない状態で、表示を行うようにしてもよい。この場合には、例えばカメラが撮影した周囲の状況の画像を、表示画像に重畳することで、外界光が透過した状態で画像を表示する表示部とほぼ同様の表示が可能になる。
また、表示部として、画像を表示する表示パネルを備えた表示部とは異なるものを適用してもよい。例えば、装着者の眼の網膜上に、画像を投射する投射型の表示部を備えたヘッドマウントディスプレイに適用してもよい。
【符号の説明】
【００５２】
１０…ヘッドマウントディスプレイ、１１…フレーム、１２…左ハーフミラー、１３…右ハーフミラー、１４…左表示部、１５…右表示部、１６…モーションセンサ、１７…カメラ、２０…アダプタ、２１…コントローラ、２２…画像描画部、２３…画像メモリ、２４…操作部、２５…画像解析部、２６…動き解析部、２７…ケーブル、１００…インフォメーションベルト、１０１〜１０７，１１１〜１１４，１２１…表示オブジェクト、２５１…フレーム取得部、２５２…指先座標検出部、２５３…座標履歴記憶部、２５４…ジェスチャー解析部、２５５…基準座標設定部、２５６…座標変換部、２５７…表示座標設定部
【図１】
0006399692.tif 000002
【図２】
0006399692.tif 000003
【図３】
0006399692.tif 000004
【図４】
0006399692.tif 000005
【図５】
0006399692.tif 000006
【図６】
0006399692.tif 000007
【図７】
0006399692.tif 000008
【図８】
0006399692.tif 000009
【図９】
0006399692.tif 000010
【図１０】
0006399692.tif 000011
【図１１】
0006399692.tif 000012
【図１２】
0006399692.tif 000013
【図１３】
0006399692.tif 000014