(57)【要約】【課題】ヘッドマウントディスプレイを装着した状態ではユーザは手元が見えず、コントローラの操作などには困難が伴う。【解決手段】角度情報取得部７３０は、ヘッドマウントディスプレイを装着したユーザの頭部の回転角に関する情報を取得する。視線方向変更部７４０は、頭部の回転角に関する情報にもとづいて、パノラマ画像を見る視線方向を変更する。パノラマ画像処理部７５０は、変更された視線方向から見たパノラマ画像を生成する。画像提供部７７０は、生成されたパノラマ画像データをヘッドマウントディスプレイ１００に供給する。【選択図】図４
2013258614.tif 000002
【特許請求の範囲】
【請求項１】
ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得部と、
前記動き取得部により取得されたユーザの動きに応じた画像を生成する画像生成部と、
生成された画像を前記ヘッドマウントディスプレイに提供する画像提供部とを含むことを特徴とする画像生成装置。
【請求項２】
前記動き取得部は、ヘッドマウントディスプレイを装着したユーザの頭部の回転角に関する情報を取得する角度情報取得部を含み、
前記画像生成部は、
前記頭部の回転角に関する情報にもとづいて、パノラマ画像を見る視線方向を変更する視線方向変更部と、
変更された視線方向から見たパノラマ画像を生成するパノラマ画像処理部とを含むことを特徴とする請求項１に記載の画像生成装置。
【請求項３】
前記角度情報取得部は、前記ヘッドマウントディスプレイに搭載された姿勢センサにより検知された姿勢情報から前記頭部の回転角に関する情報を取得することを特徴とする請求項２に記載の画像生成装置。
【請求項４】
前記角度情報取得部は、前記ヘッドマウントディスプレイに搭載されたマーカの位置情報から前記頭部の回転角に関する情報を取得することを特徴とする請求項２に記載の画像生成装置。
【請求項５】
カメラにより撮影された前記ヘッドマウントディスプレイの画像を用いて前記ヘッドマウントディスプレイに搭載されたマーカの位置情報を検出するマーカ検出部と、
検出されたマーカの位置情報にもとづいて、前記姿勢センサのドリフトを補正するか否かを判定するドリフト補正部とをさらに含むことを特徴とする請求項３に記載の画像生成装置。
【請求項６】
前記動き取得部は、ヘッドマウントディスプレイを装着したユーザの位置および姿勢に関する情報を取得する位置・姿勢情報取得部を含み、
前記画像生成部は、
カメラにより追跡されたマーカの描く軌跡に応じたオブジェクトを仮想空間内に生成するオブジェクト生成部と、
前記位置および姿勢に関する情報にもとづいて、仮想空間を見る視点位置および視線方向を設定する視点位置・視線方向設定部と、
設定された視点位置および視線方向にもとづいて、前記オブジェクトを含む仮想空間をレンダリングする３次元レンダリング部とを含むことを特徴とする請求項１に記載の画像生成装置。
【請求項７】
前記動き取得部は、ヘッドマウントディスプレイを装着したユーザの頭部の傾きに関する情報を取得する傾き情報取得部を含み、
前記画像生成部は、
前記頭部の傾きにもとづいてユーザのジェスチャを判定するジェスチャ判定部と、
ジェスチャとイベントを対応づけたテーブルを参照し、前記ジェスチャ判定部により判定されたジェスチャから、発生させるべきイベントを特定するイベント特定部と、
前記イベント特定部により特定されたイベントにもとづいた操作画面を前記ヘッドマウントディスプレイに提供するユーザインタフェース部とを含むことを特徴とする請求項１に記載の画像生成装置。
【請求項８】
ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得ステップと、
ユーザの動きに応じた画像を生成する画像生成ステップと、
生成された画像を前記ヘッドマウントディスプレイに提供する画像提供ステップとを含むことを特徴とする画像生成方法。
【請求項９】
ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得ステップと、
ユーザの動きに応じた画像を生成する画像生成ステップと、
生成された画像を前記ヘッドマウントディスプレイに提供する画像提供ステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ヘッドマウントディスプレイに表示される画像を生成する装置および方法に関する。
【背景技術】
【０００２】
ゲーム機に接続されたヘッドマウントディスプレイを頭部に装着して、ヘッドマウントディスプレイに表示された画面を見ながら、コントローラなどを操作してゲームプレイすることが行われている。ゲーム機に接続された通常の据え置き型のディスプレイでは、ディスプレイの画面の外側にもユーザの視野範囲が広がっているため、ディスプレイの画面に集中できなかったり、ゲームへの没入感に欠けることがある。その点、ヘッドマウントディスプレイを装着すると、ヘッドマウントディスプレイに表示される映像以外はユーザは見ないため、映像世界への没入感が高まり、ゲームのエンタテインメント性を一層高める効果がある。
【０００３】
また、ヘッドマウントディスプレイにパノラマ画像を表示させ、ヘッドマウントディスプレイを装着したユーザが頭部を回転させると、３６０度のパノラマ画像や仮想空間が表示されるようにすると、さらに映像への没入感が高まり、ゲームなどのアプリケーションの操作性も向上する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ユーザはヘッドマウントディスプレイを装着した状態でヘッドマウントディスプレイに表示された画像を見ながら、各種の操作をしなければならないため、手元が見えず、コントローラの操作などには困難が伴う。
【０００５】
本発明はこうした課題に鑑みてなされたものであり、その目的は、ユーザの動きを検出し、ユーザの動きに応じた画像をヘッドマウントディスプレイに表示することのできる画像生成装置および画像生成方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様の画像生成装置は、ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得部と、ユーザの動きに応じた画像を生成する画像生成部と、生成された画像を前記ヘッドマウントディスプレイに提供する画像提供部とを含む。
【０００７】
本発明の別の態様は、画像生成方法である。この方法は、ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得ステップと、ユーザの動きに応じた画像を生成する画像生成ステップと、生成された画像を前記ヘッドマウントディスプレイに提供する画像提供ステップとを含む。
【０００８】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によれば、ヘッドマウントディスプレイを装着したユーザの動きに応じた画像をヘッドマウントディスプレイに表示することができる。
【図面の簡単な説明】
【００１０】
【図１】ヘッドマウントディスプレイの外観図である。
【図２】ヘッドマウントディスプレイの機能構成図である。
【図３】本実施の形態に係るパノラマ画像生成システムの構成図である。
【図４】本実施の形態に係るパノラマ画像生成装置の機能構成図である。
【図５】図５（ａ）および図５（ｂ）は、ユーザの頭部の絶対角度とパノラマ画像のカメラ角度の関係を説明する図である。
【図６】図６（ａ）〜図６（ｄ）は、ヘッドマウントディスプレイに設けられたマーカを検出して姿勢センサのドリフトを補正する方法を説明する図である。
【図７】図４のパノラマ画像生成装置によるパノラマ画像生成手順を説明するフローチャートである。
【図８】ヘッドマウントディスプレイに表示されるパノラマ画像を説明する図である。
【図９】ヘッドマウントディスプレイを装着するユーザがもつコントローラに付けられたマーカを説明する図である。
【図１０】本実施の形態に係る仮想空間描画処理システムの構成図である。
【図１１】本実施の形態に係る仮想空間描画処理装置の機能構成図である。
【図１２】ヘッドマウントディスプレイを装着したユーザがマーカを動かすことで仮想空間内にオブジェクトを描画している様子を説明する図である。
【図１３】図１３（ａ）は、３次元仮想空間内のオブジェクトとビューアカメラの関係を説明する図であり、図１３（ｂ）は、ビューアカメラから見た３次元空間の画像を説明する図である。
【図１４】本実施の形態に係るユーザインタフェース処理装置の機能構成図である。
【図１５】図１５（ａ）〜図１５（ｄ）は、ヘッドマウントディスプレイに表示されるメニュー画面の例を説明する図である。
【発明を実施するための形態】
【００１１】
図１は、ヘッドマウントディスプレイ１００の外観図である。ヘッドマウントディスプレイ１００は、本体部１１０、前頭部接触部１２０、側頭部接触部１３０、およびカメラ１４０を含む。
【００１２】
ヘッドマウントディスプレイ１００は、ユーザの頭部に装着してディスプレイに表示される静止画や動画などを鑑賞し、ヘッドホンから出力される音声や音楽などを聴くための表示装置である。
【００１３】
ヘッドマウントディスプレイ１００に内蔵または外付けされたＧＰＳ（Global Positioning System）などの位置センサによりユーザの位置情報を計測することができる。また、ヘッドマウントディスプレイ１００に内蔵または外付けされた姿勢センサによりヘッドマウントディスプレイ１００を装着したユーザの頭部の向きや傾きといった姿勢情報を計測することができる。
【００１４】
本体部１１０には、ディスプレイ、位置情報取得センサ、姿勢センサ、通信装置などが含まれる。前頭部接触部１２０および側頭部接触部１３０には、ユーザの体温、脈拍、血液成分、発汗、脳波、脳血流などの生体情報を計測することのできる生体情報取得センサが含まれる。
【００１５】
ヘッドマウントディスプレイ１００には、さらに、ユーザの目を撮影するカメラが設けられてもよい。ヘッドマウントディスプレイ１００に搭載されたカメラにより、ユーザの視線、瞳孔の動き、瞬きなどを検出することができる。
【００１６】
カメラ１４０は、ヘッドマウントディスプレイ１００の前部に搭載されており、ユーザがヘッドマウントディスプレイ１００を装着している間、外界を撮影することができる。
【００１７】
ここでは、ヘッドマウントディスプレイ１００に表示される画像の生成方法を説明するが、本実施の形態の画像生成方法は、狭義のヘッドマウントディスプレイ１００に限らず、めがね、めがね型ディスプレイ、めがね型カメラ、ヘッドフォン、ヘッドセット（マイクつきヘッドフォン）、イヤホン、イヤリング、耳かけカメラ、帽子、カメラつき帽子、ヘアバンドなどを装着した場合にも適用することができる。
【００１８】
図２は、ヘッドマウントディスプレイ１００の機能構成図である。
【００１９】
制御部１０は、画像信号、センサ信号などの信号や、命令やデータを処理して出力するメインプロセッサである。入力インタフェース２０は、タッチパネルおよびタッチパネルコントローラから操作信号や設定信号を受け付け、制御部１０に供給する。出力インタフェース３０は、制御部１０から画像信号を受け取り、ディスプレイに表示させる。バックライト３２は、液晶ディスプレイにバックライトを供給する。
【００２０】
通信制御部４０は、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、制御部１０から入力されるデータを外部に送信する。通信制御部４０は、また、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、外部からデータを受信し、制御部１０に出力する。
【００２１】
記憶部５０は、制御部１０が処理するデータやパラメータ、操作信号などを一時的に記憶する。
【００２２】
ＧＰＳユニット６０は、制御部１０からの操作信号にしたがって、ＧＰＳ衛星から位置情報を受信して制御部１０に供給する。無線ユニット６２は、制御部１０からの操作信号にしたがって、無線基地局から位置情報を受信して制御部１０に供給する。
【００２３】
姿勢センサ６４は、ヘッドマウントディスプレイ１００の本体部１１０の向きや傾きなどの姿勢情報を検出する。姿勢センサ６４は、ジャイロセンサ、加速度センサ、角加速度センサなどを適宜組み合わせて実現される。
【００２４】
外部入出力端子インタフェース７０は、ＵＳＢ（Universal Serial Bus）コントローラなどの周辺機器を接続するためのインタフェースである。外部メモリ７２は、フラッシュメモリなどの外部メモリである。
【００２５】
時計部８０は、制御部１０からの設定信号によって時間情報を設定し、時間データを制御部１０に供給する。
【００２６】
カメラユニット９０は、レンズ、イメージセンサ、測距センサなど撮影に必要な構成を含む。測距センサは、赤外光などを照射して反射光を撮影し、三角測量の原理で被写体までの距離を測定するセンサである。
【００２７】
制御部１０は、画像やテキストデータを出力インタフェース３０に供給してディスプレイに表示させたり、通信制御部４０に供給して外部に送信させることができる。
【００２８】
（第１の実施例）
図３は、本実施の形態に係るパノラマ画像生成システムの構成図である。ヘッドマウントディスプレイ１００は、無線通信またはＵＳＢなどの周辺機器を接続するインタフェースでゲーム機２００に接続される。ゲーム機２００は、さらにネットワークを介してサーバに接続されてもよい。その場合、サーバは、複数のユーザがネットワークを介して参加できるゲームなどのオンラインアプリケーションをゲーム機２００に提供してもよい。ヘッドマウントディスプレイ１００は、ゲーム機２００の代わりに、コンピュータや携帯端末に接続されてもよい。
【００２９】
図４は、本実施の形態に係るパノラマ画像生成装置７００の機能構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。
【００３０】
パノラマ画像生成装置７００は、ヘッドマウントディスプレイ１００が接続されたゲーム機２００に実装されるが、パノラマ画像生成装置７００の少なくとも一部の機能をヘッドマウントディスプレイ１００側の制御部１０に実装してもよい。あるいは、パノラマ画像生成装置７００の少なくとも一部の機能を、ネットワークを介してゲーム機２００に接続されたサーバに実装してもよい。
【００３１】
角度情報取得部７３０と感度調整部７２０は、ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得部の一例である。視線方向変更部７４０とパノラマ画像処理部７５０は、ユーザの動きに応じた画像を生成する画像生成部の一例である。
【００３２】
ズーム指示取得部７１０は、ヘッドマウントディスプレイ１００の入力インタフェース２０を介してユーザが指示するズームの倍率を取得する。ズーム指示取得部７１０が取得したズーム倍率は感度調整部７２０とパノラマ画像処理部７５０に供給される。
【００３３】
角度情報取得部７３０は、ヘッドマウントディスプレイ１００の姿勢センサ６４により検知される姿勢情報にもとづいてヘッドマウントディスプレイ１００を装着したユーザの頭部の回転角を取得する。
【００３４】
角度情報取得部７３０は、感度調整部７２０から指示された感度にもとづいて、ユーザの頭部の回転角を絶対角度で取得する。たとえば、ユーザが首を回すと、姿勢センサ６４によりユーザの頭部の角度の変化が検出されるが、感度調整部７２０は、角度の変化が所定の値を超えるまでは検出された角度の変化を無視するように角度情報取得部７３０に指示する。
【００３５】
また、感度調整部７２０は、ズーム指示取得部７１０から取得されたズーム倍率にもとづいて頭部の角度検出の感度を調整する。ズーム倍率が大きくなるほど、頭部の角度検出の感度を下げる。ズームすると、画角が小さくなるため、頭部の角度検出感度を下げることで頭部の揺れによる表示画像の振動を抑えることができる。
【００３６】
また、角度情報取得部７３０は、ヘッドマウントディスプレイ１００に搭載されたカメラ１４０により撮像された視点位置の異なる複数の画像から自己位置推定を行うことにより、ユーザの頭部の絶対角度を取得してもよい。
【００３７】
視点位置の異なる複数の視差画像をもとに被写体の３次元位置情報と視点位置とを同時に求める自己位置推定の方法の一つに、ＳＬＡＭ（Simultaneous Localization and Mapping）と呼ばれる技術がある。ＳＬＡＭは、センサから取得した情報をもとに、自己位置推定と環境地図作成を同時に行う技術であり、自律移動ロボットなどに応用されている。ここでは、一例として、公知のＳＬＡＭ技術を用いて被写体の特徴点の３次元位置とカメラの３次元位置とを推定するが、他の自己位置推定の技術を用いてもかまわない。ＳＬＡＭは、たとえば次の論文に紹介されている。Andrew J. Davison, "Real-Time Simultaneous Localisation and Mapping with a Single Camera", ICCV 2003.
【００３８】
ＳＬＡＭなどの自己位置推定技術では十分な検出精度が出ないが、モーションセンサによる姿勢検出を組み合わせることで、頭部の動き検出のロバスト性を向上させることができる。また、自己位置推定技術を組み合わせることで、モーションセンサのドリフトを補正する作用もある。
【００３９】
また、マーカ検出部７８０がヘッドマウントディスプレイ１００に付けられたマーカの位置を検出し、角度情報取得部７３０は、マーカ検出部７８０により検出されたマーカの位置にもとづいて、ユーザの頭部の絶対角度を取得してもよい。マーカがカメラの死角に入ったときはマーカの位置検出ができなくなるが、その場合は、モーションセンサによる姿勢検出を組み合わせることで対処することができる。
【００４０】
モーションセンサとして、３軸地磁気センサ、３軸加速度センサおよび３軸ジャイロ（角速度）センサの少なくとも１つ以上の組み合わせを用いて、ユーザの頭部の前後、左右、上下の動きを検出してもよい。また、マーカによる位置取得を組み合わせて頭部の動き検出の精度を向上させてもよい。
【００４１】
視線方向変更部７４０は、角度情報取得部７３０により検出されたユーザの頭部の絶対角度にしたがって、ヘッドマウントディスプレイ１００に表示されるパノラマ画像のカメラ角度、すなわち視線方向を変更し、変更された視線方向をパノラマ画像処理部７５０に与える。
【００４２】
図５（ａ）および図５（ｂ）は、ユーザの頭部の絶対角度とパノラマ画像のカメラ角度の関係を説明する図である。図５（ａ）のように、ヘッドマウントディスプレイ１００を装着したユーザが首を回して、角度情報取得部７３０により取得される頭部の絶対角度が３０度から７５度に変化したとき、視線方向変更部７４０は、パノラマ画像のビューアカメラ４００の角度を３０度から７５度に変化させる。
【００４３】
角度情報取得部７３０により検出されたユーザの頭部の絶対角度の変化をローパスフィルタによってフィルタリングすることで、首の振動などによるノイズを除去するようにしてもよい。
【００４４】
図４に戻り、パノラマ画像処理部７５０は、パノラマ画像記憶部７６０からパノラマ画像データを読み出し、視線方向変更部７４０から指定された視線方向から見たパノラマ画像を、ズーム指示取得部７１０から指定されたズーム倍率で生成し、画像提供部７７０に与える。
【００４５】
画像提供部７７０は、パノラマ画像処理部７５０により生成されたパノラマ画像データをヘッドマウントディスプレイ１００に供給する。
【００４６】
マーカ検出部７８０は、ゲーム機２００に接続されたカメラにより、ヘッドマウントディスプレイ１００に付けられたマーカを検出し、検出されたマーカの位置情報を角度情報取得部７３０とドリフト補正部７９０に与える。
【００４７】
ドリフト補正部７９０は、マーカ検出部７８０から与えられたマーカの位置の変化にもとづいて、ヘッドマウントディスプレイ１００の姿勢センサ６４のドリフトを補正するか否かを判定し、ドリフトを補正した場合、補正結果をヘッドマウントディスプレイ１００に与える。ヘッドマウントディスプレイ１００側ではドリフト補正の結果にもとづいて姿勢センサ６４の検出値を補正する。
【００４８】
ドリフト補正部７９０は、マーカの位置が変化していないにもかかわらず、姿勢センサ６４により頭部の回転角の変化が検出された場合は、姿勢センサ６４の原点がドリフトしていると判定し、ドリフト補正を実行する。
【００４９】
図６（ａ）〜図６（ｄ）は、ヘッドマウントディスプレイ１００に設けられたマーカを検出して姿勢センサ６４のドリフトを補正する方法を説明する図である。
【００５０】
姿勢センサ６４、特にジャイロセンサでは、検出されるヨー角の原点がドリフトする「ヨー・ドリフト」と呼ばれる問題がある。図６（ａ）のように、点線の矢印で示すように検出されるヨー角にドリフトの影響が生じると、実線の矢印で示すようにドリフトを自動的に補正する機能が提供されている。しかし、図６（ａ）に示すようにヘッドマウントディスプレイ１００の前部に球形のマーカ３１０が一つだけ設けられている場合、ヘッドマウントディスプレイ１００を装着したユーザの頭部が図６（ｂ）のように回転した場合でも、ヨー角のドリフトと誤判定してしまい、実線の矢印で示すようにドリフト補正がなされて、頭部の絶対角度の変化が検出されなくなることがある。
【００５１】
そこで、図６（ｃ）のように、ヘッドマウントディスプレイ１００の前部に四角形など球形以外のマーカ３３０ａを設けるようにする。この場合、ヘッドマウントディスプレイ１００を装着したユーザの頭部の絶対角度が変化すると、カメラにより検出されるマーカ３３０ｂは、変化前のマーカ３３０ａとは向きが異なるものになる。そのため、球形のマーカの場合とは違って、頭部の絶対角度の変化をマーカ３３０ａ、３３０ｂの向きの変化として捉えることができ、頭部の絶対角度の変化がヨー・ドリフトと誤判定されることを防ぐことができる。
【００５２】
また、図６（ｄ）のように、ヘッドマウントディスプレイ１００の前方に球形のマーカ３３０を、後方に別の球形のマーカ３４０ａを設けるようにすると、ヘッドマウントディスプレイ１００を装着したユーザの頭部の絶対角度が変化すると、ヘッドマウントディスプレイ１００の前方のマーカ３３０と後方の球形のマーカ３４０ａ、３４０ｂを結ぶ直線の方向が変化するため、頭部の絶対角度の変化がヨー・ドリフトと誤判定されることを防ぐことができる。
【００５３】
図７は、パノラマ画像生成装置７００によるパノラマ画像生成手順を説明するフローチャートである。
【００５４】
ヘッドマウントディスプレイ１００の姿勢センサ６４によりユーザの頭部の方向が取得される（Ｓ１０）。ヘッドマウントディスプレイ１００は、頭部の絶対角度の情報をゲーム機２００に与える（Ｓ１２）。
【００５５】
ゲーム機２００の視線方向変更部７４０は、頭部の絶対角度の情報にもとづいてビューアカメラ４００を回転させる（Ｓ１４）。パノラマ画像処理部７５０は、ビューアカメラ４００の方向すなわち視線方向から見たパノラマ画像を画角の範囲で生成して出力する（Ｓ１６）。画像提供部７７０は、パノラマ画像処理部７５０により生成された映像データを制御部１０に与える（Ｓ１８）。
【００５６】
ヘッドマウントディスプレイ１００にパノラマ画像が表示される（Ｓ２０）。終了条件を満たせば（Ｓ２２のＹ）、終了し、終了条件を満たさない場合（Ｓ２２のＮ）、ステップＳ１０に戻って、それ以降の処理が繰り返される。
【００５７】
図８は、ヘッドマウントディスプレイ１００に表示されるパノラマ画像を説明する図である。パノラマ画像に対して、ユーザが左前方を向いている場合、ヘッドマウントディスプレイ１００ａの方向で画角１５０ａの範囲にある画像５１０ａが表示され、ユーザが首を回して右前方を向いている場合、ヘッドマウントディスプレイ１００ｂの方向で画角１５０ｂの範囲にある画像５１０ｂが表示される。
【００５８】
このように頭部の動きに応じてヘッドマウントディスプレイ１００に表示されるパノラマ画像を見る視線方向も変わるため、パノラマ画像に対する没入感を高めることができる。
【００５９】
（第２の実施例）
図９は、ヘッドマウントディスプレイ１００を装着するユーザがもつコントローラ３５０に付けられたマーカ３００を説明する図である。ユーザはヘッドマウントディスプレイ１００を装着した状態でゲーム機２００のコントローラ３５０を操作する。ゲームアプリケーションによってはコントローラ３５０をもちながら手を動かしたり、体を移動させたりすることがある。コントローラ３５０にはマーカ３００が付けられており、ゲーム機２００に接続されたカメラによりマーカ３００の位置を検出することができる。ゲーム機２００に接続されたカメラに距離センサが備わっている場合、マーカ３００の３次元座標を特定することができる。
【００６０】
図１０は、本実施の形態に係る仮想空間描画処理システムの構成図である。ヘッドマウントディスプレイ１００およびマーカ３００が付けられたコントローラ３５０は、無線通信またはＵＳＢなどの周辺機器を接続するインタフェースでゲーム機２００に接続される。ゲーム機２００は、さらにネットワークを介してサーバに接続されてもよい。その場合、サーバは、複数のユーザがネットワークを介して参加できる仮想空間のアプリケーションをゲーム機２００に提供してもよい。ヘッドマウントディスプレイ１００は、ゲーム機２００の代わりに、コンピュータや携帯端末に接続されてもよい。
【００６１】
図１１は、本実施の形態に係る仮想空間描画処理装置８００の機能構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。
【００６２】
仮想空間描画処理装置８００は、ヘッドマウントディスプレイ１００が接続されたゲーム機２００に実装されるが、仮想空間描画処理装置８００の少なくとも一部の機能をヘッドマウントディスプレイ１００側の制御部１０に実装してもよい。あるいは、仮想空間描画処理装置８００の少なくとも一部の機能を、ネットワークを介してゲーム機２００に接続されたサーバに実装してもよい。
【００６３】
位置・姿勢情報取得部８１０は、ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得部の一例である。描画指示取得部８２０、オブジェクト生成部８３０、視点位置・視線方向設定部８５０、および３次元レンダリング部８６０は、ユーザの動きに応じた画像を生成する画像生成部の一例である。
【００６４】
位置・姿勢情報取得部８１０は、ヘッドマウントディスプレイ１００のＧＰＳユニット６０または無線ユニット６２からユーザの位置を取得し、ヘッドマウントディスプレイ１００の姿勢センサ６４からユーザの姿勢の情報を取得する。取得されたユーザの位置と姿勢の情報は、オブジェクト生成部８３０と視点位置・視線方向設定部８５０に与えられる。
【００６５】
描画指示取得部８２０は、コントローラ３５０からユーザの描画指示を取得し、オブジェクト生成部８３０に描画命令を与える。
【００６６】
オブジェクト生成部８３０は、位置・姿勢情報取得部８１０により取得されたユーザの位置と姿勢の情報を参照し、ユーザが当該位置で当該姿勢を取ってマーカ３００を動かしたときのマーカ３００の軌跡に応じたオブジェクトを仮想空間内に生成し、オブジェクト情報記憶部８４０に保存する。マーカ３００が描く軌跡は、ゲーム機２００のカメラによりマーカ３００の位置を追跡することにより取得される。
【００６７】
視点位置・視線方向設定部８５０は、位置・姿勢情報取得部８１０により取得されたユーザの位置と姿勢の情報にもとづいて、仮想空間におけるユーザの視点位置と視線方向を設定する。３次元レンダリング部８６０は、設定された視点位置および視線方向にもとづいて、オブジェクト情報記憶部８４０から仮想空間の情報とユーザが空間内に描画したオブジェクトの情報を読み出して、３次元仮想空間内にオブジェクトをレンダリングする。
【００６８】
ヘッドマウントディスプレイ１００を装着したユーザが位置や姿勢を変更すると、ヘッドマウントディスプレイ１００に表示される３次元仮想空間を見る方向が変わり、ユーザが空間内に描画したオブジェクトに対する相対的な位置関係や向きも変化する。これにより、ヘッドマウントディスプレイ１００を装着したユーザが空間内を移動しながら、自分が描いたオブジェクトを立体的に観察することができる。
【００６９】
画像提供部８７０は、３次元レンダリング部８６０により生成された仮想空間の映像データをヘッドマウントディスプレイ１００に与える。
【００７０】
図１２は、ヘッドマウントディスプレイ１００を装着したユーザがマーカ３００を動かすことで仮想空間内にオブジェクト６００ａ、６００ｂ、６００ｃ、６００ｄを描画している様子を説明する図である。ユーザがコントローラ３５０のボタンを押している間は、マーカ３００を用いてオブジェクトを空間内に描画することができ、ユーザは自分の描いたオブジェクトをヘッドマウントディスプレイ１００に表示される仮想空間内で観察することができる。ユーザが位置を変えたり、頭部の向きを変えると、仮想空間内のユーザの視点位置や視点方向が変わり、新しい視点位置において新しい視線方向から見た３次元仮想空間内で自分の描いたオブジェクトを見ることができる。このとき、ユーザの描いたオブジェクトも３次元情報をもつため、オブジェクトの位置と向きは、ユーザの視点位置と視線方向を反映したものに変わる。
【００７１】
図１３（ａ）は、３次元仮想空間内のオブジェクト６１０ａ、６１０ｂ、６１０ｃとビューアカメラ４００の関係を説明する図であり、図１３（ｂ）は、ビューアカメラ４００から見た３次元空間の画像を説明する図である。
【００７２】
図１３（ａ）に示すオブジェクト６１０ａ、６１０ｂ、６１０ｃはユーザがマーカ３００を動かして空間内に描いたオブジェクトである。視点位置・視線方向設定部８５０が、仮想空間を見るビューアカメラ４００の位置および方向を変える、すなわちユーザの視点位置と視線方向を変えることにより、３次元レンダリング部８６０により生成される仮想空間の画像が変わる。図１３（ｂ）は、図１３（ａ）に示すビューアカメラ４００の位置および方向で見たときの仮想空間の画像であり、オブジェクト６１０ａと６１０ｃの一部がユーザに見える。
【００７３】
（第３の実施例）
図１４は、本実施の形態に係るユーザインタフェース処理装置９００の機能構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。
【００７４】
ユーザインタフェース処理装置９００は、ヘッドマウントディスプレイ１００が接続されたゲーム機２００に実装されるが、ユーザインタフェース処理装置９００の少なくとも一部の機能をヘッドマウントディスプレイ１００側の制御部１０に実装してもよい。あるいは、ユーザインタフェース処理装置９００の少なくとも一部の機能を、ネットワークを介してゲーム機２００に接続されたサーバに実装してもよい。
【００７５】
傾き・加速度情報取得部９１０は、ヘッドマウントディスプレイを装着したユーザの動きに関する情報を取得する動き取得部の一例である。ジェスチャ判定部９２０、イベント特定部９３０、およびユーザインタフェース部９６０は、ユーザの動きに応じた画像を生成する画像生成部の一例である。
【００７６】
傾き・加速度情報取得部９１０は、ヘッドマウントディスプレイ１００の姿勢センサ６４からヘッドマウントディスプレイ１００を装着したユーザの頭部の傾きと加速度の情報を取得する。ジェスチャ判定部９２０は、ユーザの頭部の傾きと加速度にもとづいてユーザのジェスチャを判定する。たとえば、頭部を動かしたときの傾きと動きの加速度にもとづいて、うなずく、首を傾げる、首を振るなどのジェスチャを判定する。
【００７７】
イベント特定部９３０は、対応テーブル記憶部９４０に保持されたジェスチャとイベントを対応づけたテーブルを参照し、ジェスチャ判定部９２０により判定されたジェスチャから、発生させるべきイベントを特定する。たとえば、ユーザがうなずいたときは「決定」、首を横に振ったときは「キャンセル」、上下左右のいずれかを向いたときはその方向への「カーソル移動」、首をかしげたときは「メニュー表示」などに対応づけられる。
【００７８】
ユーザインタフェース部９６０は、メニュー情報記憶部９７０からメニュー画面の情報を読み出し、イベント特定部９３０により特定されたイベントにもとづいてメニュー画面を表示させたり、メニュー画面から項目を選択させるイベントを発生させるなど、イベントにもとづいた操作画面をヘッドマウントディスプレイ１００に提供する。
【００７９】
図１５（ａ）〜図１５（ｄ）は、ヘッドマウントディスプレイ１００に表示されるメニュー画面の例を説明する図である。
【００８０】
図１５（ａ）は、ヘッドマウントディスプレイ１００に表示される画面である。図１５（ｂ）は、ユーザが頭を左に傾げたとき表示されるメニュー６３０を示す。傾き・加速度情報取得部９１０がユーザの頭部が左に傾いたことを検出すると、ジェスチャ判定部９２０は、その動作をメニュー６３０を画面に登場させるイベントに対応づけ、ユーザインタフェース部９６０は、メニュー６３０を画面の右端からスライドさせて登場させる（「スライド・イン」動作と呼ぶ）。
【００８１】
ユーザが頭を元の位置に戻すと、図１５（ｃ）に示すように、画面にメニュー６３０が表示された状態でメニュー６３０から項目を選択することができるようになる。たとえば、ユーザが上または下を向くと、メニュー６３０のいずれかの項目を順に選択することができ、ユーザが右を向くと、選択された項目を実行することができる。ユーザが左を向くと、選択した項目をキャンセルすることができる。
【００８２】
図１５（ｄ）は、ユーザが頭を右に傾げたときに表示されるメニュー６３０を示す。傾き・加速度情報取得部９１０がユーザの頭部が右に傾いたことを検出すると、ジェスチャ判定部９２０は、その動作をメニュー６３０を画面から消すイベントに対応づけ、ユーザインタフェース部９６０は、メニュー６３０を画面の右端にスライドさせて消去する（「スライド・アウト」動作と呼ぶ）。
【００８３】
メニュー６３０をスライド・イン、スライド・アウトさせたり、メニュー６３０から項目を選択する際、ユーザは頭を傾げたり、振ったりするが、このとき、ヘッドマウントディスプレイ１００に表示されたパノラマ画像の視線方向が頭部の動きと連動して変化しないようにロックをかけるようにしてもよい。メニュー６３０の操作中はヘッドマウントディスプレイ１００に表示されたパノラマ画像の視線方向を固定することで、メニュー６３０の操作指示との混同を回避することができる。また、コントローラのボタンを押している間だけ、メニュー６３０の操作ができるようにしてもよい。
【００８４】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。そのような変形例を説明する。
【符号の説明】
【００８５】
１０  制御部、  ２０  入力インタフェース、  ３０  出力インタフェース、  ３２  バックライト、  ４０  通信制御部、  ４２  ネットワークアダプタ、  ４４  アンテナ、  ５０  記憶部、  ６０  ＧＰＳユニット、  ６２  無線ユニット、  ６４  姿勢センサ、  ７０  外部入出力端子インタフェース、  ７２  外部メモリ、  ８０  時計部、  １００  ヘッドマウントディスプレイ、  １１０  本体部、  １２０  前頭部接触部、  １３０  側頭部接触部、  ２００  ゲーム機、  ７００  パノラマ画像生成装置、  ７１０  ズーム指示取得部、  ７２０  感度調整部、  ７３０  角度情報取得部、  ７４０  視線方向変更部、  ７５０  パノラマ画像処理部、  ７６０  パノラマ画像記憶部、  ７７０  画像提供部、  ７８０  マーカ検出部、  ７９０  ドリフト補正部、  ８００  仮想空間描画処理装置、  ８１０  位置・姿勢情報取得部、  ８２０  描画指示取得部、  ８３０  オブジェクト生成部、  ８４０  オブジェクト情報記憶部、  ８５０  視点位置・視線方向設定部、  ８６０  ３次元レンダリング部、  ８７０  画像提供部、  ９００  ユーザインタフェース処理装置、  ９１０  傾き・加速度情報取得部、  ９２０  ジェスチャ判定部、  ９３０  イベント特定部、  ９４０  対応テーブル記憶部、  ９６０  ユーザインタフェース部、  ９７０  メニュー情報記憶部。
【図１】
2013258614.tif 000003
【図２】
2013258614.tif 000004
【図３】
2013258614.tif 000005
【図４】
2013258614.tif 000006
【図５】
2013258614.tif 000007
【図６】
2013258614.tif 000008
【図７】
2013258614.tif 000009
【図８】
2013258614.tif 000010
【図９】
2013258614.tif 000011
【図１０】
2013258614.tif 000012
【図１１】
2013258614.tif 000013
【図１２】
2013258614.tif 000014
【図１３】
2013258614.tif 000015
【図１４】
2013258614.tif 000016
【図１５】
2013258614.tif 000017