(57)【要約】  仮想オブジェクト表示装置は、ディスプレイ、及び当該ディスプレイの表示制御を行う表示制御装置を備え、表示制御装置は、仮想オブジェクト表示装置の現実世界内での移動と回転を検出し、仮想オブジェクト装置の移動に対して座標原点が追従し、仮想オブジェクト表示装置の回転によってディスプレイの有効視野範囲が座標系内で回転する慣性座標系を用いて、慣性座標系仮想オブジェクトの配置位置を定義する座標系計算部と、ディスプレイの有効視野範囲に慣性座標系仮想オブジェクトが含まれると、当該有効視野範囲に慣性座標系仮想オブジェクトを表示する表示制御部と、を含む。
2020157955.tif 000002
【特許請求の範囲】
【請求項１】
仮想オブジェクト表示装置であって、
ディスプレイ、及び当該ディスプレイの表示制御を行う表示制御装置を備え、
前記表示制御装置は、
前記仮想オブジェクト表示装置の現実世界内での移動量と回転量を検出し、前記仮想オブジェクト表示装置の移動に対して座標原点が追従し、前記仮想オブジェクト表示装置の回転によって前記ディスプレイの有効視野範囲が座標系内で回転する慣性座標系を用いて、慣性座標系仮想オブジェクトの配置位置を定義する座標系計算部と、
前記ディスプレイの有効視野範囲に前記慣性座標系仮想オブジェクトが含まれると、当該有効視野範囲に前記慣性座標系仮想オブジェクトを表示する表示制御部と、を含む、
ことを特徴とする仮想オブジェクト表示装置。
【請求項２】
請求項１に記載の仮想オブジェクト表示装置であって、
ユーザから前記表示制御装置に対する入力操作を受け付ける入力コントローラを更に備え、
前記入力コントローラが、前記慣性座標系の正面方向の入力操作を受け付けると、前記座標系計算部は、前記慣性座標系の正面方向を前記入力操作に応じて再設定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項３】
請求項１に記載の仮想オブジェクト表示装置であって、
前記表示制御装置に接続され、前記仮想オブジェクト表示装置の移動量と回転量を計測する運動計測センサを備え、
前記座標系計算部は、前記運動計測センサの信号に基づいて計算された前記仮想オブジェクト表示装置の方向に対して平滑化処理を行い前記慣性座標系の正面方向を再設定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項４】
請求項３に記載の仮想オブジェクト表示装置であって、
前記運動計測センサは、ジャイロセンサであり、
前記座標系計算部は、設定された正面方向を前記ジャイロセンサが出力した信号から計算された前記仮想オブジェクト表示装置の回転方向を平滑化して得られた平滑化回転方向に追従して再設定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項５】
請求項３に記載の仮想オブジェクト表示装置であって、
前記運動計測センサは、加速度センサであり、
前記座標系計算部は、前記加速度センサの信号に基づいて計算された前記仮想オブジェクト表示装置の進行方向を平滑化して得られた平滑化進行方向を算出し、前記慣性座標系の正面方向を前記平滑化進行方向に追従させて再設定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項６】
請求項１に記載の仮想オブジェクト表示装置であって、
前記表示制御装置に接続され、前記仮想オブジェクト表示装置を装着したユーザを撮像するインカメラを更に備え、
前記座標系計算部は、前記インカメラの撮像画像から前記ユーザの体幹領域を認識し、当該体幹領域の正面方向に前記慣性座標系の正面方向を一致させて再設定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項７】
請求項１に記載の仮想オブジェクト表示装置であって、
前記座標系計算部は、前記慣性座標系を構成する一つの軸を、現実世界における鉛直方向に一致させて固定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項８】
請求項１に記載の仮想オブジェクト表示装置であって、
前記表示制御装置は、前記慣性座標系の正面方向を記憶する座標系情報記憶部を更に含み、
前記座標系情報記憶部は、前記仮想オブジェクト表示装置において最後に正面方向として設定された方向を記憶し、
前記座標系計算部は、前記仮想オブジェクト表示装置の主電源が投入されると、前記座標系情報記憶部に記憶された正面方向を、前記慣性座標系の正面方向として再設定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項９】
請求項１に記載の仮想オブジェクト表示装置であって、
前記表示制御装置に接続され、前記仮想オブジェクト表示装置の加速度を計測する加速度センサを備え、
前記座標系計算部は、前記加速度センサの信号に基づいて計算された前記仮想オブジェクト表示装置の位置を平滑化して得られた平滑化位置を算出し、前記平滑化位置に前記慣性座標系の原点を再設定する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項１０】
請求項１に記載の仮想オブジェクト表示装置であって、
前記座標系計算部は、現実世界に固定された世界座標系を用いて世界座標系仮想オブジェクトの配置位置を定義することも更に行い、
前記表示制御部は、前記ディスプレイの有効視野範囲に前記世界座標系仮想オブジェクトが含まれると、当該有効視野範囲に前記世界座標系仮想オブジェクトを表示する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項１１】
請求項１に記載の仮想オブジェクト表示装置であって、
前記座標系計算部は、前記仮想オブジェクト表示装置に固定された座標原点を基準とし、前記仮想オブジェクト表示装置に固定された局所座標系を用いて局所座標系仮想オブジェクトの配置位置を定義することも更に行い、
前記表示制御部は、前記ディスプレイの有効視野範囲に前記局所座標系仮想オブジェクトが含まれると、当該有効視野範囲に前記局所座標系仮想オブジェクトを表示する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項１２】
請求項１に記載の仮想オブジェクト表示装置であって、
複数の慣性座標系仮想オブジェクトを含むグループを少なくとも１つ以上記憶する仮想オブジェクト記憶部を更に備え、
前記仮想オブジェクト記憶部は、各グループに含まれる複数の慣性座標系仮想オブジェクトの配置位置を定義するために用いる慣性座標系の配置中心方向情報を更に記憶する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項１３】
請求項１２に記載の仮想オブジェクト表示装置であって、
前記仮想オブジェクト記憶部は、右利き操作グループ情報及び左利き操作グループ情報を記憶する、
ことを特徴とする仮想オブジェクト表示装置。
【請求項１４】
仮想オブジェクト表示装置に仮想オブジェクトを表示する仮想オブジェクト表示方法であって、
前記仮想オブジェクト表示装置は、ディスプレイ、及び当該ディスプレイの表示制御を行う表示制御装置を備え、
前記表示制御装置が、
前記仮想オブジェクト表示装置の現実世界内での移動と回転を検出するステップと、
前記仮想オブジェクト表示装置の移動に対して座標原点が追従し、前記ディスプレイの有効視野範囲が座標系内で回転する慣性座標系を用いて、慣性座標系仮想オブジェクトの配置位置を定義するステップと、
前記ディスプレイの有効視野範囲に前記慣性座標系仮想オブジェクトが含まれると、当該有効視野範囲に前記慣性座標系仮想オブジェクトを表示するステップと、を実行する、
ことを特徴とする仮想オブジェクト表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想オブジェクト表示装置及び仮想オブジェクト表示方法に関する。
【背景技術】
【０００２】
従来、ヘッドマウントディスプレイ（ＨＭＤ）に仮想オブジェクトを表示する技術がある。このような仮想オブジェクトの表示技術において用いられる座標系として、世界座標系と局所座標系とが知られている。【０００３】
世界座標系とは現実世界の座標系であり、世界座標系に配置した仮想オブジェクトは、ユーザがその場所から離れると、見えなくなる。反面、現実世界と同じ広さがあるので、大量の仮想オブジェクトを配置することができる。【０００４】
一方、局所座標系は、ＨＭＤに固定された座標系であり、ＨＭＤに搭載されたディスプレイとも位置関係が固定される。そしてユーザの視点から見て、ディスプレイの表示面が存在する方向に配置された仮想オブジェクトが、ディスプレイに表示される。ディスプレイの表示面が存在する方向範囲内の局所座標系に仮想オブジェクトを配置すれば、ＨＭＤを装着したままユーザが移動してもディスプレイも局所座標系に固定されているので常に仮想オブジェクトを表示させ、操作することができる。反面、上記方向範囲に配置した仮想オブジェクトしか表示できないので仮想オブジェクトの配置数に制限がある。【０００５】
このように、世界座標系及び局所座標系の２つしか仮想オブジェクト配置用の座標系を持たない従来技術では、頻繁に参照したい仮想オブジェクトを大量に配置できない、という課題があった。また、無理にディスプレイの表示面が存在する方向内に仮想オブジェクトを配置すると外界の視認性が低下する、という課題も生じていた。【０００６】
この課題を解決するための技術として、特許文献１では「ウェアラブルな頭部装着表示システムは、見掛けの実世界深度および見掛けの実世界位置で、頭部装着表示システムの装着者によって知覚可能な拡張現実オブジェクトを表示するためのニアアイディスプレイと、装着者の視野（ＦＯＶ）の関数として拡張現実オブジェクトの見掛けの実世界位置を調整するためのコントローラとを含む。関数は、拡張現実オブジェクトの境界領域、および、拡張現実オブジェクトの境界領域と装着者のＦＯＶとの間の１つまたは複数の重複パラメータに基づく（要約抜粋）」ことが提案されている。【０００７】
特許文献１によれば、世界座標系に配置した仮想オブジェクトの一部分を装着者の視野に残しておくことで、世界座標系に配置した仮想オブジェクトへ容易にアクセスできるようになり、常に参照できる仮想オブジェクトの数を増やすことができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特表２０１８−５０５４７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら特許文献１に開示された技術では、世界座標系に配置した仮想オブジェクトは、ユーザが世界座標系内で移動すると仮想オブジェクトとユーザとが離れてしまい、装着者の視野内に表示させづらくなる。それを解消するために装着者の視野内に仮想オブジェクトを配置すると、結局装着者の視野内へ仮想オブジェクトを多数配置することになり、外界への視認性の低下という課題は解決できず、本質的な課題解決には至っていないという実情がある。【００１０】
本発明は、上記実情に鑑みてなされたものであり、世界座標系及び局所座標系の其々の欠陥を補間し、ユーザ利便性を向上させた新たな仮想オブジェクトの表示技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明は、請求の範囲に記載の構成を備える。その一例を挙げるならば、仮想オブジェクト表示装置であって、ディスプレイ、及び当該ディスプレイの表示制御を行う表示制御装置を備え、前記表示制御装置は、前記仮想オブジェクト表示装置の現実世界内での移動量及び回転量を検出し、前記仮想オブジェクト表示装置の移動に対して座標原点が追従し、前記仮想オブジェクト表示装置の回転によって前記ディスプレイの有効視野範囲が座標系内で回転する慣性座標系を用いて、慣性座標系仮想オブジェクトの配置位置を定義する座標系計算部と、前記ディスプレイの有効視野範囲に前記慣性座標系仮想オブジェクトが含まれると、当該有効視野範囲に前記慣性座標系仮想オブジェクトを表示する表示制御部と、を含む、ことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、世界座標系及び局所座標系の其々の欠陥を補間し、ユーザ利便性を向上させた新たな仮想オブジェクトの表示技術を提供することができる。上述した以外の目的、構成、効果については以下の実施形態において明らかにされる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係るＨＭＤシステムの外観模式図
【図２】ＨＭＤのハードウェア構成図
【図３】ＣＰＵの機能を示す機能ブロック図
【図４Ａ】局所座標系についての説明図
【図４Ｂ】局所座標系についての説明図
【図５Ａ】慣性座標系の説明図
【図５Ｂ】慣性座標系の説明図
【図６】慣性座標系が世界座標系内で移動した場合の説明図
【図７】現実オブジェクト及び仮想オブジェクトの見え方について説明する図
【図８】現実オブジェクト及び仮想オブジェクトの見え方について説明する図
【図９】現実オブジェクト及び仮想オブジェクトの見え方について説明する図
【図１０】ＨＭＤシステムの処理の流れを示すフローチャート
【図１１】仮想オブジェクトを記憶したデータ構造の一例を示す図
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について図面を用いて説明する。全図を通じて同一の構成、処理には同一の符号を付し、重複説明を省略する。図１は、本実施形態に係るＨＭＤシステム１（ＨＭＤ：ヘッドマウントディスプレイ）の外観模式図である。図２は、ＨＭＤ１００のハードウェア構成図である。
【００１５】
図１に示すように、ＨＭＤシステム１は、ユーザの頭部に装着されたＨＭＤ１００及び入力コントローラ４００を含む。入力コントローラ４００は、近距離無線通信回線を介してＨＭＤ１００に通信接続され、情報の送受信を行う。なお、有線で情報の送受信を行ってもよい。
【００１６】
入力コントローラ４００は、キーボードやキーボタンからなる操作部材と、近距離無線通信器とを含んで構成される。
【００１７】
サーバ２００は仮想オブジェクトを生成し、ＨＭＤ１００に対して外部ネットワーク３００を介して送信する。ＨＭＤ１００が自ら仮想オブジェクトを生成し、表示するように構成してもよい。
【００１８】
図２に示すように、ＨＭＤ１００は、カメラ１１１、インカメラ１１２、測距センサ１１３、の他、運動を計測する慣性センサとしての加速度センサ１１５、ジャイロセンサ１１６（加速度センサ１１５、ジャイロセンサ１１６は運動計測センサに相当する。）を備える。更に、ＨＭＤ１００は、地磁気センサ１１７、ＧＰＳ受信器１１８、ディスプレイ１１９、ネットワーク通信器１２０、ＣＰＵ１２５、メモリ１２８、近距離無線通信器１２９と、各構成要素を接続するバス１４０を介して互いに接続される。ネットワーク通信器１２０は、無線通信電波を受信するアンテナ１２３に接続される。
【００１９】
ネットワーク通信器１２０は、無線ＬＡＮ、有線ＬＡＮ或いは基地局通信により外部のサーバ２００と通信を行う通信インターフェースであり、無線通信に際してはアンテナ１２３を介して外部ネットワーク３００に接続し情報の送受信を行う。ネットワーク通信器１２０は、外部ネットワーク３００を経由してサーバ２００で生成された仮想オブジェクトを受信し、サーバ２００と動作制御信号の送受信を行うことができる。ネットワーク通信器１２０は、Ｗ−ＣＤＭＡ（Ｗｉｄｅｂａｎｄ  Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ）やＧＳＭ（登録商標）（Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ）などの遠距離の無線通信規格に対応した通信器により構成される。
【００２０】
近距離無線通信器１２９は、入力コントローラ４００とＨＭＤ１００との間で近距離無線通信を行う通信インターフェースである。近距離無線通信器１２９は、例えば電子タグを用いて行われるが、これに限定されず、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）、Ｚｉｇｂｅｅ（登録商標）、ＨｏｍｅＲＦ（Ｈｏｍｅ  Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ、登録商標）、又は、無線ＬＡＮ（ＩＥＥＥ８０２．１１ａ、ＩＥＥＥ８０２．１１ｂ、ＩＥＥＥ８０２．１１ｇ）に対応した通信器により構成される。
【００２１】
ＨＭＤ１００は、近距離無線通信器１２９を介して入力コントローラ４００に接続される。ＨＭＤ１００は、近距離無線通信回線を介して入力コントローラ４００が受け付けた操作情報を受信する。ＣＰＵ１２５は、メモリ１２８に格納されたプログラム１２６をロードして実行し、必要に応じて情報データ１２７を読み出してプログラム１２６の実行処理に用いる。ＣＰＵ１２５は、映像１３０や仮想オブジェクト１３１をディスプレイ１１９に表示する。よって、ＣＰＵ１２５、メモリ１２８、プログラム１２６、および情報データ１２７を総称して表示制御装置１２００という。
【００２２】
ディスプレイ１１９は、ＨＭＤ１００を装着したユーザの両眼の前方に設置される。ＣＰＵ１２５は、カメラ１１１で撮影された現実空間情報の映像１３０やサーバ２００から受信した仮想オブジェクト１３１をディスプレイ１１９に表示する。
【００２３】
加速度センサ１１５は、ＨＭＤ１００の加速度を検出するセンサであり、ＨＭＤ１００の位置変化と重力加速度の向きから垂直方向を捉えることができる。
【００２４】
ジャイロセンサ１１６は、ＨＭＤ１００の３軸回転方向の角速度を検出するセンサであり、この角速度から、ＨＭＤ１００の姿勢、すなわち局所座標系の世界座標系に対する向きを表すオイラー角（ピッチ角、ヨー角、ロー角）、あるいは正規化四元数を検出する。ＨＭＤ１００に搭載されている加速度センサ１１５及びジャイロセンサ１１６を用いて、ＨＭＤ１００を装着しているユーザの頭部の動きを検出することができる。
【００２５】
地磁気センサ１１７は、地球の磁力を検出するセンサであり、ＨＭＤ１００が向いている方向を検出するものである。前後方向と左右方向に加え上下方向の地磁気も検出する３軸タイプを用い、頭部の動きに対する地磁気変化を捉まえることにより、頭部の動きを検出することも可能である。これらにより、ＨＭＤ１００を装着中のユーザ頭部の動き変動を詳しく検出することができる。
【００２６】
ＣＰＵ１２５は、ＨＭＤ１００の制御コントローラを構成し、メモリ１２８に格納されているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や動作制御用アプリケーションなどのプログラム１２６を実行する。
【００２７】
メモリ１２８は、フラッシュメモリなどであり、ＣＰＵ１２５が使用する各種のプログラム１２６を記憶する。さらにメモリ１２８は、サーバ２００から受信した仮想オブジェクトを情報データ１２７として記憶している。
【００２８】
図３は、ＣＰＵ１２５の機能を示す機能ブロック図である。ＣＰＵ１２５は、座標系計算部１２５１、外界認識部１２５４、及び表示制御部１２５５を含む。メモリ１２８の一部領域は、仮想オブジェクトを記憶する仮想オブジェクト記憶部１２８１、及び座標系の位置や向きの情報及び慣性座標系の正面方向を記憶する座標系情報記憶部１２８２を形成する。各構成要素の処理の詳細は後述する。
【００２９】
ここで慣性座標系の正面方向とは、ユーザが一時的に頭部の向きを変えた場合にも、平均的なユーザの正面方向に留まっている慣性座標系の基準方向を意味する。頻繁に確認あるいは操作を行いたい仮想オブジェクトを慣性座標系に設定した配置中心方向を中心に配置し、その配置中心方向を慣性座標系の正面方向に設定すれば、ユーザがあまり頭を回転させなくても頻繁に使用する仮想オブジェクトを確認あるいは操作できる。
【００３０】
さらに、使用目的により、頻繁に確認あるいは操作を行いたい仮想オブジェクトのグループが分かれる場合は、そのグループに対応した配置中心方向を設定してもよい。例えば慣性座標系のＸ軸正方向近傍に作業Ａに関連したアプリのアイコン群を配置し、Ｙ軸正方向近傍に作業Ｂに関連したアプリのアイコン群を配置する、という使用方法でもよい。また配置中心方向の直近近傍は、作業対象となるオブジェクトが位置する場合が多いので、上記の仮想オブジェクトは配置中心方向の直近近傍は避けて配置してもよい。
【００３１】
本発明では、各座標系の向きの検出と制御が重要となる。各座標系の向きは世界座標系を基準として、各座標系の世界座標系に対する向きを、その座標系の向きに合わせるように世界座標系を回転させた場合の回転操作で表す。回転操作は、具体的には、オイラー角（ロール角、ピッチ角、ヨー角）あるいは、正規化四元数で表現する。
【００３２】
ＨＭＤ１００に仮想オブジェクトを配置するために用いる座標系は、従来からある世界座標系及び局所座標系と、世界座標系及び局所座標系の其々の欠点を補間するための新たな座標系としての慣性座標系とがある。以下、各座標系の特徴点については図４〜図８を参照して説明する。図４は、局所座標系についての説明図である。図５は、慣性座標系の説明図である。図６は、慣性座標系が世界座標系内で移動した場合の説明図である。
【００３３】
世界座標系は、現実世界に固定された１点を座標原点とし、現実世界に固定された３軸直交座標系を構成する３つの座標軸方向を有する座標系である。従って、ＨＭＤ１００が現実世界の空間位置を変化させたとしても、世界座標系で定義された仮想オブジェクトの配置位置は変化しない。本実施形態では、ＨＭＤ１００の初期化時にＨＭＤ１００の姿勢と位置を基準として世界座標系を設定し、初期化後、ＨＭＤ１００の現実世界に対する位置移動と姿勢変更を、主として加速度センサ１１５およびジャイロセンサ１１６の測定値から検出して、設定した世界座標系に対する局所座標系の位置と向きを計算する。ＧＰＳ電波が受信できる場合は、ＧＰＳ受信器１１８が受信したＧＰＳ測位電波から演算した緯度、経度、高度情報を世界座標系や局所座標系の位置計算の補助として用いてもよい。さらに、地磁気センサ１１７が測定する地磁気の方向を、座標系の向きの計算の補助として用いてもよい。
【００３４】
以下に、世界座標系の設定方法の一例を示す。世界座標系の設定に同じく３軸直交座標系である局所座標系を使用するので、まず局所座標系を詳細に定義する。局所座標系の原点は、ＨＭＤ１００装着時にユーザの眼球奥の頭部中心近傍に位置するように設定する。ユーザが感じる自分の視点位置近傍に局所座標系原点を設定することにより、頭部回転時に局所座標系を回転させるだけでよく、表示の違和感をなくすための特別な処理をしなくてもよくなる。そして、局所座標系の座標軸は、ＨＭＤ１００装着時に、ユーザの正面方向がＸ軸の正方向、左手方向がＹ軸の正方向、上方がＺ軸の正方向、と定める。なお、局所座標系の定義は上記の定義に限定されず、原点がＨＭＤ１００の中心近傍に位置するようにすればよい。
【００３５】
世界座標系は、ＨＭＤ１００の初期化時に設定する。まず、ＨＭＤ１００を静止状態にして初期化を行う。初期化時には、世界座標系の原点を局所座標系の原点に合わせる。ＨＭＤ１００が静止状態であれば、３軸加速度センサが検出する加速度は重力加速度のみとなり、局所座標系での垂直方向が分かる。そして垂直上向きを世界座標系のＺ軸の正方向とする。そして、局所座標系のＸ軸の正方向を水平面に射影した方向を世界座標系のＸ軸の正方向とする。世界座標系のＹ軸の正方向は、Ｘ軸の正方向を正面としたときに左手になる方向である。
【００３６】
これで、世界座標系が設定されたが、この初期化時にＨＭＤ１００が水平に保持されている保証はないので、局所座標系の向きは必ずしも世界座標系には一致しない。但し、局所座標系を元に世界座標系を設定したので、逆に世界座標系を基準とした場合の、局所座標系の向きは分かっている。この局所座標系の初期状態での向きを世界座標系における世界座標系からの回転操作の結果として表現する。回転操作はオイラー角でも表現できるが、ここでは正規化四元数で表してｑＬＷ０とする。ｑＬＷ０は世界座標系における表現である。
【００３７】
正規化四元数とはノルムが１の四元数で、ある軸の回りの回転を表すことができる。単位ベクトル（ｎＸ、ｎＹ、ｎＺ）を回転軸とした角度ηの回転を表す正規化四元数ｑは下記となる。
ｑ＝ｃｏｓ（η／２）＋ｎＸｓｉｎ（η／２）ｉ＋ｎＹｓｉｎ（η／２）ｊ＋ｎＺｓｉｎ（η／２）ｋ  ・・・（１）
【００３８】
ここで、ｉ，ｊ，ｋは四元数の単位である。ベクトル（ｎＸ、ｎＹ、ｎＺ）の向きに向いたときの右回りの回転が、ηが正の回転方向である。任意の座標系の回転はこの正規化四元数で表されるので、世界座標系からの回転を表す正規化四元数で、局所座標系と慣性座標系の向きを表現する。世界座標系の向きを表す正規化四元数は１である。
【００３９】
ここで記号の用法をまとめる。正規化四元数ｑの実数部分をＳｃ（ｑ）で表し、ｑ＊を正規化四元数ｑの共役四元数する。四元数のノルムを１に正規化する演算子を［・］で定義する。ｑを任意の四元数すると次式が［・］の定義である。
［ｑ］＝ｑ／（ｑｑ＊）１／２  ・・・（２）
【００４０】
ここで（２）式右辺の分母が正規化四元数ｑのノルムである。次に、座標点あるいはベクトルｐ（ｐＸ、ｐＹ、ｐＺ）を表現する四元数を次式で定義する。
ｐ＝ｐＸｉ＋ｐＹｊ＋ｐＺｋ  ・・・（３）
【００４１】
また、単位ベクトルｎに直交する平面へのベクトルの射影演算子をＰ（ｎ）とする。ベクトルｐの射影は次式で表される。
Ｐ（ｎ）ｐ＝ｐ＋ｎＳｃ（ｎｐ）  ・・・（４）
【００４２】
本明細書においては、特に断りがない限り、成分表示でない座標点やベクトルを表す記号は四元数表示であるとする。
【００４３】
座標点あるいは方向ベクトルｐ１がｑで表される原点中心の回転操作により座標点あるいは方向ベクトルｐ２に変換されたとすると、ｐ２は次式で計算できる。
ｐ２＝ｑｐ１ｑ＊  ・・・（５）
【００４４】
これにより、座標系の向きを表す正規化四元数が分かれば、仮想オブジェクトの位置座標の座標系間での変換が可能である。座標原点が異なる場合の座標点の変換式は後述する。ここで、後述の説明で使用するので、単位ベクトルｎ１を単位ベクトルｎ２に重ねるように、ｎ１とｎ２を含む平面に垂直な軸回りで回転させる正規化四元数Ｒ（ｎ１、ｎ２）の表式を記しておく。
Ｒ（ｎ１、ｎ２）＝［１−ｎ２ｎ１］  ・・・（６）
【００４５】
さて、上記の正規化四元数で初期化時の局所座標系の向きｑＬＷ０を表す。まず、初期化時に局所座標系において重力加速度ベクトル（ｇＸ、ｇＹ、ｇＺ）を求め、四元数表現をｇＬとする。そして、重力加速度ベクトルの局所座標系のＹＺ平面への射影ベクトル（０、ｇＹ、ｇＺ）の四元数表現をｈＬとする。射影演算子を用いれば次式で表される。
ｈＬ＝Ｐ（ｉ）ｇＬ  ・・・（７）
【００４６】
初期状態において局所座標系のＸ軸を世界座標系の水平面への射影方向に回転させて水平面上に重ね、その後、局所座標系のＸ軸回りの回転をさせて局所座標系のＺ軸を世界座標系のＺ軸に重ねる、という手順で、局所座標系から世界座標系への回転を考える。局所座標系のＸ軸を世界座標系の水平面に重ねる回転は、ｈＬをｇＬに重ねる回転と等しいことに注意し、ｑＬＷ０は世界座標系から局所座標系への回転として定義したことに注意すると、ｑＬＷ０は次式のように求まる。
ｑＬＷ０＝ｑ１＊ｑ２＊  ・・・（８）
【００４７】
ここでのｑ１、ｑ２は次式で定義される。
ｑ１＝Ｒ（［ｈＬ］、［ｇＬ］）  ・・・（９）
ｑ２＝Ｒ（ｑ１ｋｑ１＊、−ｑ１［ｈＬ］ｑ１＊）  ・・・（１０）
【００４８】
なお、ここでは上記のように世界座標系を定義したが、外界の位置を記述できる座標系であればよく、この例に限定されない。
【００４９】
上記のように、初期化時に世界座標系を設定するが、以前に設定した世界座標系を使用したい場合もある。この場合は、外界の特徴点の座標値や、ＧＰＳ受信器１１８が受信したＧＰＳ測位電波から演算した緯度、経度、高度情報を基に、初期化時に設定した世界座標系と以前に設定した世界座標系との位置関係を求め、以前に設定した世界座標系基準で局所座標系、慣性座標系の原点座標と向きを変更する。
【００５０】
慣性座標系は、初期化時点では、局所座標系と原点を同一にして、向きは世界座標系と同一とする。慣性座標系の原点と向きは後述する方法により制御する。
【００５１】
次に、ＨＭＤ１００の運動により、局所座標系の向きを表す正規化四元数ｑＬＷの変化を計算する方法について示す。ジャイロセンサ１１６が検出する角速度ベクトルを（ωＸ、ωＹ、ωＺ）とすると、この角速度ベクトルωＬの四元数表現は次式で与えられる。
ωＬ＝ωＸｉ＋ωＹｊ＋ωＺｋ  ・・・（１１）
【００５２】
ここで、この角速度ベクトルωＬは局所座標系での表現であることに注意する。世界座標系での角速度ベクトルωＷは次式で与えられる。
ωＷ＝ｑＬＷωＬｑＬＷ＊  ・・・（１２）
【００５３】
さらに、ｑＬＷが世界座標系における表現であることに注意すると、ｑＬＷの時間発展を決定する差分方程式は次式となる。
ΔｑＬＷ／Δｔ＝（１／２）ωＷｑＬＷ＝（１／２）ｑＬＷωＬ  ・・・（１３）
【００５４】
Δｔをジャイロセンサ１１６の測定間隔にとり、（１３）式により、逐次ｑＬＷを更新してゆく。（１３）式で計算する際、近似精度を上げる手法を併用してもよいし、ｑＬＷのノルムを１に保つ補正を加えてもよい。さらに、誤差の蓄積を補正するために、地磁気センサ１１７による地磁気方向の測定結果を利用してもよいし、カメラ１１１や測距センサ１１３によって検出した外界の特徴点の位置情報を利用してもよい。
【００５５】
局所座標系の世界座標系における原点位置の更新は、加速度センサ１１５による加速度の測定値を用いる。加速度センサ１１５が検出する加速度ベクトルを（ａＸ、ａＹ、ａＺ）とすると、この加速度ベクトルａＬの四元数表現は次式で与えられる。
ａＬ＝ａＸｉ＋ａＹｊ＋ａＺｋ  ・・・（１４）
【００５６】
ここで、この加速度ベクトルａＬは局所座標系での表現であることに注意する。世界座標系での加速度ベクトルａＷは次式で与えられる。
ａＷ＝ｑＬＷａＬｑＬＷ＊  ・・・（１５）
【００５７】
世界座標系における局所座標系原点の位置座標をＯＬＷ、局所座標系原点の速度ベクトルをｖＷ、重力加速度ベクトルをｇＷとする。ここで、重力座速度ベクトルｇＷはＨＭＤ１００の初期化時に測定できている。速度ベクトルｖＷの時間発展を決定する差分方程式は次式となる。
ΔｖＷ／Δｔ＝ａＷ−ｇＷ  ・・・（１６）
【００５８】
位置座標ＯＬＷの時間発展を決定する差分方程式は次式となる。
ΔＯＬＷ／Δｔ＝ｖＷ  ・・・（１７）
【００５９】
Δｔを加速度センサ１１５の測定間隔にとり、（１６）式（１７）式により、逐次ｖＷおよびＯＬＷを更新してゆく。（１６）式（１７）式で計算する際、近似精度を上げる手法を併用してもよい。また、局所座標系の世界座標系における原点位置の更新には、ＧＰＳ受信器１１８が受信したＧＰＳ測位電波から演算した緯度、経度、高度情報を利用してもよいし、カメラ１１１や測距センサ１１３によって検出した外界の特徴点の位置情報を利用してもよい。ここで、処理を簡単にするために、加速度センサ１１５の測定間隔はジャイロセンサ１１６の測定間隔と等しくしてもよい。
【００６０】
以上の局所座標系の更新手順は、世界座標系が外界に対して固定されていればよく、世界座標系の初期状態の定義が変更されても適用可能である。
【００６１】
仮想オブジェクトを表示するディスプレイ１１９は局所座標系に固定されているので、表示制御のために世界座標系や慣性座標系に配置された仮想オブジェクトに関した位置情報を局所座標系の表現に変換する。世界座標系での座標値やベクトルをｐＷとすると、ｐＷの局所座標系での表現ｐＷＬは次式で計算できる。
ｐＷＬ＝ｑＬＷ＊（ｐＷ−ＯＬＷ）ｑＬＷ  ・・・（１８）
【００６２】
次に、慣性座標系原点の世界座標系における位置座標をＯＩＷとする。慣性座標系原点は通常は局所座標系原点と一致させるが、異なっていても構わない。慣性座標系の向きをｑＩＷとし、慣性座標系での座標値やベクトルをｐＩとすると、ｐＩの局所座標系での表現ｐＩＬは次式で計算できる。
ｐＩＬ＝ｑＬＷ＊（ｑＩＷｐＩｑＩＷ＊＋ＯＩＷ−ＯＬＷ）ｑＬＷ  ・・・（１９）
【００６３】
上記の変換式を基にして、仮想オブジェクトの表示位置と向きの座標系間での変換を計算することができる。
【００６４】
以下、ＨＭＤ１００の動きや座標系の操作等により、仮想オブジェクトの見え方がどう変化するかを説明する。まず、ＨＭＤ１００から見ると、局所座標系は、ＨＭＤ１００に固定された１点を座標原点とし、ＨＭＤ１００に固定された３軸直交座標系を構成する３つの座標軸方向を有する座標系である。従って、ＨＭＤ１００を装着したユーザが頭の向きを変えると、局所座標系も同じ角度で回転する。
【００６５】
一方、ディスプレイ１１９もＨＭＤ１００に固定されており、仮想オブジェクトへのユーザの視線がディスプレイ１１９の表示範囲（表示面１１９ｂに）入る場合に仮想オブジェクトが表示される。座標系内において、仮想オブジェクトが表示可能になる範囲を有効視野範囲（ＦＯＶ）１１９ａと定義する。局所座標系においては、ＦＯＶ１１９ａは、ユーザ視点から見たディスプレイの表示面１１９ｂを見込む方向範囲の領域である。図４Ａで説明すると、局所座標系仮想オブジェクト４２０は、ＦＯＶ１１９ａ内に入るのでディスプレイ１１９に表示されるが、局所座標系仮想オブジェクト４１０は、ＦＯＶ１１９ａ内に入らないのでディスプレイ１１９に表示されない。
【００６６】
以下は、ユーザが頭部を回転させ、局所座標系が回転した場合の仮想オブジェクトの見え方の例である。
【００６７】
図４Ａ、図４Ｂにて局所座標系に配置された仮想オブジェクトの見え方の例を説明する。図４Ａの状態からユーザの頭の角度をヨー角ψ１回転させると、図４Ｂ図のように局所座標系の２軸（ＸＬ軸、ＹＬ軸）もＺＬ軸を中心にヨー角ψ１と同じ角度で回転する。局所座標系の回転に伴って、局所座標系に固定されたＦＯＶ１１９ａ及び局所座標系仮想オブジェクト４１０、４２０も回転するので、局所座標系仮想オブジェクト４２０は同じ表示位置に視認し続けられるが、局所座標系仮想オブジェクト４１０をユーザはどれだけ頭を動かしても視認することはできない。上記では説明の便宜のため、ヨー角についてのみ説明したが、ＨＭＤ１００がロール角φ・ピッチ角θ分回転した場合も同様にＸＬ軸、ＹＬ軸、ＺＬ軸もロール角φ・ピッチ角θと同じ角度で回転する。
【００６８】
慣性座標系は、座標原点はＨＭＤ１００（又はユーザ）の現実空間内の移動に対して追従し、座標の向きはＨＭＤ１００の現実空間内での回転に追従しない座標系である。このため、慣性座標系を基準としてみると、ＨＭＤ１００の回転によりＦＯＶ１１９ａが回転する。このような座標系に仮想オブジェクトを配置することにより、ユーザの移動に対して仮想オブジェクトが追従し、かつユーザが頭を回転すれば、慣性座標系の全ての方向を視認することができるので、移動をしてもユーザ近傍に大量の仮想オブジェクトを視認可能な状態で保持できる、という効果が得られる。なお、座標原点がＨＭＤ１００に追従する、とは座標原点が常にＨＭＤ１００から一定の距離以内に留まることを意味する。制御を簡略にするために、座標原点を局所座標系と同一にしてＨＭＤ１００の中心に設定してもよい。また、ユーザが慣性座標系の色々な方向を視認するために頭を回転させる場合は、頭を回転させている間、仮想オブジェクトの見え方を自然にするため、慣性座標系の方向は現実世界すなわち世界座標系に対して固定させておいてもよい。
【００６９】
図５Ａ、図５Ｂにて、座標原点を局所座標系と同じＨＭＤ１００の中心に固定し、座標の向きを世界座標系に対して固定した慣性座標系を用いた例を説明する。図５Ａの慣性座標系仮想オブジェクト５１０は、初期状態においてＦＯＶ１１９ａの外側に配置され、慣性座標系仮想オブジェクト５２０はＦＯＶ１１９ａの内側に配置されているものとする。初期状態から、ユーザの頭の角度をヨー角ψ１回転させると、図５Ｂで示すように局所座標系の２軸（ＸＬ軸、ＹＬ軸）もＺＬ軸を中心にヨー角ψ１と同じ角度で回転する。この局所座標系の回転に伴って、局所座標系に固定されたＦＯＶ１１９ａは、図５ＢのようにＦＯＶ１１９ａへと回転する。
【００７０】
一方、慣性座標系の向きを世界座標系に対して相対的に固定されるように選んだので、初期状態から、ユーザの頭の角度をヨー角ψ１回転させても、慣性座標系仮想オブジェクト５１０、５２０は、世界座標系基準では位置を変えない。その結果、この場合、回転後のＦＯＶ１１９ａ内に慣性座標系仮想オブジェクト５１０も含まれるようになる。即ち、ユーザが慣性座標系仮想オブジェクト５１０を視認することができるようになる。説明の便宜のため、ヨー角についてのみ説明したが、ＨＭＤ１００がロール角φ・ピッチ角θ分回転した場合も同様にＸＬ軸、ＹＬ軸、ＺＬ軸もロール角φ・ピッチ角θと同じ角度で回転する。
【００７１】
上記では、慣性座標系の向きを世界座標系に対して固定したが、変更操作により慣性座標系の向きを変更してもよい。また、ユーザの移動により、慣性座標系の原点も世界座標系内で動く。図６に示すように、ＨＭＤ１００を装着したユーザが世界座標系における（ｘ１，ｙ１）にいるものとし、そのときの慣性座標系の座標原点が（ｘ１，ｙ１）であるとする。ユーザが（ｘ１，ｙ１）から（ｘ２，ｙ２）へ移動すると、その移動量と同じ移動量で慣性座標系の座標原点が平行移動し、（ｘ１，ｙ１）から（ｘ２，ｙ２）へと変化する。しかし、座標軸方向は、世界座標系に対して相対的に固定されているので、（ｘ１，ｙ１）を座標原点とする慣性座標系のＸＩ軸―ＹＩ軸の向きと、（ｘ２，ｙ２）を座標原点とする慣性座標系のＸＩ軸―ＹＩ軸の向きとは同一である。
【００７２】
図７〜図９を参照して、世界座標系、局所座標系、慣性座標系に配置された実物オブジェクト、及び仮想オブジェクトの見え方について説明する。図７〜図９において、矩形状マークは現実オブジェクトであり、世界座標系で配置位置が定義される。ひし形オブジェクトは、世界座標系で配置位置が定義された世界座標系仮想オブジェクトである。三角形マークは、局所座標系で配置位置が定義された局所座標系仮想オブジェクトを示す。円形マークは、慣性座標系で配置位置が定義された慣性座標系仮想オブジェクトを示す。実線は視認可能であることを示し、点線は視認できないことを示す。
【００７３】
図７は、ユーザが世界座標系における位置を変化させることなく、頭部のみを回転させた場合の見え方の変化を示す図である。図７の初期状態（上段）において、ＦＯＶ１１９ａには、局所座標系仮想オブジェクト７１１、慣性座標系仮想オブジェクト７３１、世界座標系仮想オブジェクト７４１と、現実オブジェクト７２１の一部が入っている。この状態でＨＭＤ１００を装着したユーザが頭部を回転させると、ＦＯＶ１１９ａが回転する。局所座標系仮想オブジェクト７１１は、ＦＯＶ１１９ａと同じ回転量で回転移動するので回転移動後のＦＯＶ１１９ａにも含まれ、視認できる。一方、ＦＯＶ１１９ａの外側に配置されていた慣性座標系仮想オブジェクト７３２、及び世界座標系仮想オブジェクト７４２は、回転後のＦＯＶ１１９ａに含まれるので視認できるようになるが、ＦＯＶ１１９ａの内側にあった慣性座標系仮想オブジェクト７３１、世界座標系仮想オブジェクト７４１は視認できなくなる。
【００７４】
図８は、ユーザが世界座標系における位置及び頭部の向きを変化させることなく、慣性座標系の座標軸方向の変更操作をした場合の見え方の変化を示す図である。慣性座標系の座標軸方向の変更操作が必要になる場合として、正面作業台とその側面に併設された側面作業台とからなるＬ字型作業台に向かって、椅子に座って作業をしている場合を想定する。正面作業台で作業をしているときのＦＯＶ１１９ａには、図８の初期状態（上図）が視認できているとする。ここで、慣性座標系の座標軸方向を回転させると、図８の下図に示すように、局所座標系仮想オブジェクト７１１、現実オブジェクト７２１、世界座標系仮想オブジェクト７４１、７４３の現実世界における位置は不変であり、慣性座標系仮想オブジェクト７３１、７３２、７３３だけが図中左から右へと移動する。
【００７５】
図９は、慣性座標系の座標軸方向、及び局所座標系は変化させることなく、ユーザが移動した場合の見え方の変化を表す図である。図９の初期状態（上図）が視認できているとする。ユーザが世界座標系において移動（例えば歩行）して、現実オブジェクト７２１、７２２、７２３、７２４に近づくと、現実オブジェクト７２１、７２２、７２３、７２４及び世界座標系仮想オブジェクト７４１、７４２、７４３が近づくにつれて大きく見える。一方、局所座標系仮想オブジェクト及び慣性座標系仮想オブジェクトの其々は、見え方に変化がない。
【００７６】
図１０及び図１１を参照してＨＭＤシステム１の処理内容について説明する。図１０は、ＨＭＤシステム１の処理の流れを示すフローチャートである。図１１は、仮想オブジェクトを記憶したデータ構造の一例を示す図である。
【００７７】
ＨＭＤ１００の主電源が投入されると、加速度センサ１１５、ジャイロセンサ１１６、地磁気センサ１１７、ＧＰＳ受信器１１８の其々が計測を開始する（Ｓ０１）。カメラ１１１、インカメラ１１２、測距センサ１１３も起動し、以後の処理に必要があれば撮像する。
【００７８】
次に、上述のように、ＨＭＤ１００の初期化時に、座標系計算部１２５１は、加速度センサ１１５からの信号により重力方向を検出し、これと、局所座標系のＸ軸方向から世界座標系を設定する（Ｓ０２）。初期化時において慣性座標系原点は局所座標系原点に一致させ、慣性座標系の向きは世界座標系に一致させる。座標系計算部１２５１は、座標系情報記憶部１２８２に世界座標系を基準とした局所座標系および慣性座標系の初期化時の位置と向き、及び初期化時の重力加速度ベクトルを記録する。
【００７９】
初期化後、加速度センサ１１５が検出する加速度ベクトルと、ジャイロセンサ１１６が検出する角速度ベクトルの値および各種センサの測定値を更新する（Ｓ０３）。
【００８０】
更新された加速度ベクトルと角速度ベクトルを基に、座標系計算部１２５１は、世界座標系を基準とした局所座標系の位置と向きを更新する。更新の際、他のセンサからの情報を援用してもよい。更新された位置と向きの情報は、座標系情報記憶部１２８２に記録される（Ｓ０４）。
【００８１】
更新された局所座標系の位置と向き、および慣性座標系の変更制御方法（後述）に基づき、座標系計算部１２５１は、世界座標系を基準とした慣性座標系の位置と向きを更新する。更新の際、他のセンサからの情報を援用してもよい。更新された位置と向きの情報は、座標系情報記憶部１２８２に記録される（Ｓ０５）。
【００８２】
表示制御部１２５５は、仮想オブジェクト記憶部１２８１を参照し、仮想オブジェクトの種類と各仮想オブジェクトの配置位置をどの座標系を用いて定義するかを読みとる。そして各仮想オブジェクトの各座標系における配置位置と向きを計算する。更に、表示制御部１２５５は、各座標系における配置位置と向きとを、ＨＭＤ１００の局所座標系に変換する（Ｓ０６）。
【００８３】
表示制御部１２５５は、仮想オブジェクトを配置する。ディスプレイ１１９のＦＯＶ１１９ａ内に仮想オブジェクトを配置することは、表示することと同義である（Ｓ０７）。
【００８４】
ユーザにより主電源がＯＦＦにされなければ（Ｓ０８／Ｎｏ）、ステップＳ０３に戻り、新たにセンサから出力された信号を取得して以後の計算を実行する。
【００８５】
以下、ステップＳ０５の慣性座標系の変更操作例について説明する。
【００８６】
（１）慣性座標系の変更方法（ユーザ指示）
慣性座標系の方向ｑＩＷの変更方法の基本は、ユーザ指示による。一例としては、カメラ１１１によりユーザの手を認識し、空間をスワイプする動作で、スワイプ方向に慣性座標系を回転させる。その際、視線方向と直交する面内におけるスワイプ方向と直交し、慣性座標系原点を通る方向軸の回りで慣性座標系を回転させてもよい。スワイプ動作を回転角速度ベクトルωＳＷに変換し、次式で方向を更新する。
ΔｑＩＷ／Δｔ＝（１／２）ωＳＷｑＩＷ  ・・・（２０）
【００８７】
ここで、Δtは局所座標系の更新間隔であり、スワイプ動作が継続されている間、回転角速度ベクトルωＳＷが有限の値を持つ。スワイプ動作が行われなければ回転角速度ベクトルωＳＷは０であり、慣性座標系の向きは世界座標系に対して固定されている状態になる。なお、慣性座標系の原点は、局所座標系原点に一致させる。この方法であると慣性座標系の向きを直接的に制御できる。
【００８８】
また、入力コントローラ４００にタッチパネル面を備えておき、そのタッチパネル面上におけるスワイプ動作によって制御をしてもよい。その場合、例えば、タッチパネル面内でスワイプ方向と直交し、慣性座標系原点を通る方向軸の回りで慣性座標系を回転させてもよい。
【００８９】
また、慣性座標系の正面方向（例えばＸ軸方向）を定め、ユーザ側の基準方向（例えばＨＭＤ１００の正面方向が平均的に向いている方向や体幹の正面方向）にその正面方向を合わせ、ユーザの頭の回転に対して、ユーザの基準方向が少なくとも完全には追従しない、という制御を組み合わせてもよい。
【００９０】
（２）慣性座標系の変更方法（ユーザ基準方向をベースに制御）
まずユーザ側の基準方向を定める（ユーザ基準方向）。ユーザ基準方向は例えば、ＨＭＤ１００の正面方向が平均的に向いている方向とすることができる。そしてＨＭＤ１００の正面方向とは、例えば局所座標原点からディスプレイの表示面１１９ｂの中心に向かう方向である。ユーザの正面方向を示す単位方向ベクトルを局所座標系における表現としてｕＬとする。そして、慣性座標系の正面方向の単位方向ベクトルを慣性座標系の表現としてｆＩとする。ｆＩは、例えば仮想オブジェクトの配置中心方向の一つである。慣性座標系の原点は、局所座標系原点に一致させる。まずｕＬの世界座標系における方向を平滑化して平均方向＜ｕＬＷ＞を定める。ここで、ｕＬＷは次式で与えられる。
ｕＬＷ＝ｑＬＷｕＬｑＬＷ＊  ・・・（２１）
【００９１】
平均化の方法としては例えば指数移動平均を用いるがこれに限定されない。
＜ｕＬＷ（ｔ＋Δｔ）＞＝［ξｕＬＷ（ｔ）＋（１−ξ）＜ｕＬＷ（ｔ）＞］  ・・・（２２）
【００９２】
ここでξは平均化係数で０から１の間の値をとる。ｆＩを＜ｕＬＷ＞に一致させるが、視認時に慣性座標系に配置された仮想オブジェクトの水平方向は保たれていた方が視認性がよいので、ｆＩと直交する方向は水平方向に維持する。この場合、慣性座標系の世界座標系を基準とした方向ｑＩＷは次式で表される。
ｑＩＷ＝ｑ２ｑ１  ・・・（２３）
【００９３】
ここでのｑ１、ｑ２は次式で定義される。
ｑ１＝Ｒ（［Ｐ（ｋ）ｆＩ］、［Ｐ（ｋ）＜ｕＬＷ＞］）  ・・・（２４）
ｑ２＝Ｒ（ｑ１ｆＩｑ１＊、＜ｕＬＷ＞）  ・・・（２５）
【００９４】
慣性座標系の正面方向を、ＨＭＤ１００の平均的な正面方向に合わせているので、ユーザが頭の向きを変えても、すぐには慣性座標系の向きは変わらない。これにより、ＦＯＶ１１９ａが慣性座標系内で回転するので、ユーザは局所座標系での視認範囲よりも広い方向範囲の慣性座標系内の仮想オブジェクトを視認し、操作することができる。つまり、この方法によりユーザは局所座標系内の表示可能領域の拡張領域として慣性座標系の空間を使用することができる。
【００９５】
ＨＭＤ１００の正面方向に慣性座標系の正面方向が追従してくる追従速度は、使用態様により望ましい速度が異なる。例えば、ＨＭＤ１００の平均的な正面方向から頭の向きを変えている時間が長い場合は、上記の追従速度は遅いほどよい。一方、例えば、ユーザが主として頭を向けておきたい方向が頻繁に変わる場合には、上記の追従速度は速い方がよい。したがって、上記の追従速度はユーザの設定により、任意に変更できるようにしてもよい。上記の平均化の方法においては、（２２）式の平均化係数ξの値を大きくするほど追従速度を大きくすることができる。
【００９６】
また、ジャイロセンサ１１６が出力した信号から計算されたＨＭＤ１００の回転方向を平滑化処理して得られた平滑化回転方向に慣性座標系の方向を追従させるので、慣性座標系の方向を平滑化処理したことと等価であり、ユーザの細かな動きがあっても慣性座標系仮想オブジェクトの表示が安定する、という効果もある。
【００９７】
慣性座標系の正面方向は、仮想オブジェクトの配置中心方向が複数ある場合は、ユーザ指示によりその中から選択、あるいは切替を行えるようにしてもよい。また、スワイプ動作により慣性座標系の任意の方向を正面方向と定めてもよい。
【００９８】
ユーザの基準方向をユーザの体幹の正面方向にしてもよい。ユーザの体幹の正面方向は、インカメラ１１２でユーザを撮像し、外界認識部１２５４が撮像画像からユーザの体幹領域を検出し、その認識結果を基に正面方向を決めてもよい。ここでは、仮想オブジェクトの視認性を保つために、ユーザの基準方向は外界の水平面内に取る。まず、インカメラ１１２により、局所座標系におけるユーザ胸部の表面に平行な方向を検出し、その法線方向でユーザの正面方向に向かう単位ベクトルの局所座標系での表現をｓＬとする。ｓＬの水平面への射影方向をユーザの基準方向とする。この基準方向の世界座標系での表現ｕＬＷは次式で与えられる。
ｕＬＷ＝［Ｐ（ｋ）ｑＬＷｓＬｑＬＷ＊］  ・・・（２６）
【００９９】
ユーザの基準方向を安定化するためにはｕＬＷの平滑化処理を行うが、平滑化処理以降の計算手順は（２３）式から（２５）式までと同一である。この方法では体幹の正面方向が基準方向となるため、主として作業を行う方向に体幹を向けることにより、慣性座標系の正面方向を合わせるという使い方ができ、慣性座標系の正面方向の制御が自然にできる。
【０１００】
移動中はユーザの進行方向をユーザ基準方向としてもよい（この場合もローパスフィルタ等で平滑化処理を組み合わせてもよい）。この場合のユーザ基準方向の世界座標系での表現ｕＬＷは次式で与えられる。
ｕＬＷ＝［Ｐ（ｋ）ｖＷ］  ・・・（２７）
【０１０１】
ここで、ｖＷは世界座標系におけるユーザの移動速度ベクトルである。ユーザの基準方向を安定化するためにはｕＬＷの平滑化処理を行うが、この場合も平滑化処理以降の計算手順は（２３）式から（２５）式までと同一である。加速度センサ１１５の出力に基づいて計算されたＨＭＤ１００の進行方向（移動方向）を平滑化して得られた平滑化進行方向を算出し、慣性座標系の正面方向を平滑化進行方向に追従させて再設定する。
【０１０２】
以上のように、ユーザ基準方向ベースの制御方法によれば、ユーザが一時的に頭の方向を変えても、ユーザが平均的に頭を向けている方向に近い方向に慣性座標系の正面方向が維持される。局所座標系内の表示可能領域の拡張領域として慣性座標系を使用する場合は、この制御方法が便利である。
【０１０３】
ユーザ指示による（１）の変更制御と組み合わせてもよい。ユーザ指示により慣性座標系を回転させる場合は、回転後にユーザ基準方向に重なった方向を新たな慣性座標系の正面方向とする。また、急に体の向きを変えるなどした場合に、すぐに慣性座標系の正面方向をユーザ基準方向に合わせるためのユーザ指示による制御を行ってもよい。
【０１０４】
また、操作中に慣性座標系が動くと操作がやりにくい場合もあるので、この制御モードのｏｎ／ｏｆｆを、例えば入力コントローラ４００を用いてユーザが入力操作を行うように制御できるようにしてもよいし、何か仮想オブジェクトに対する操作を行っているときは、ｏｆｆにしておく制御でもよい。
【０１０５】
（３）慣性座標系の制限
慣性座標系のＺＩ軸は、世界座標系のＺｗ軸、すなわち鉛直方向に合わせる、という制限を設けてもよい。この場合（１）のユーザによるスワイプ制御は、スワイプの水平方向の成分に対してのみ有効となる。
【０１０６】
（４）電源切断時および投入時の処理
電源切断時には、慣性座標系の正面方向を座標系情報記憶部１２８２に記憶しておいてもよい。慣性座標系の方向をユーザの変更操作がないかぎり世界座標系に固定しているモードの場合は、電源切断時にＨＭＤ１００の正面方向が向いている方向を慣性座標系の正面方向とする。
【０１０７】
電源投入時の慣性座標系の設定としては、上述の初期化手順の設定方法の他、座標系計算部１２５１が電源投入時に前回の正面方向情報を読み出して、ステップＳ０２で慣性座標系の向きをそれに合わせてもよい。
【０１０８】
（５）慣性座標系の座標原点の設定方法
上記の制御方法では、慣性座標系原点は局所座標系原点に一致させていたが、頭の細かな動きには追従させず、局所座標系原点位置を平滑化処理して得られた平滑化位置に設定し、ある程度大きな動きのみに対して、随時追従して更新するようにしてもよい。平滑化処理としては例えば次式の指数移動平均を用いる。
＜ＯＩＷ（ｔ＋Δｔ）＞＝ξＯＬＷ（ｔ）＋（１−ξ）＜ＯＩＷ（ｔ）＞  ・・・（２８）
【０１０９】
ここで、ξは平均化係数で０から１の間の値をとる。但し、慣性座標系に配置した仮想オブジェクトの視認性を確保するため、慣性座標系原点は、局所座標系原点すなわちＨＭＤ１００の中心から一定の範囲内に留めるように制御する。
【０１１０】
（６）ページ制御
複数の慣性座標系を持ち、それぞれをページとして管理し、それぞれに仮想オブジェクトを配置してもよい。図１１に、仮想オブジェクの種類を記憶した仮想オブジェクト情報例を示す。図１１では、世界座標系現実オブジェクト、世界座標系仮想オブジェクト、局所座標系仮想オブジェクト、の他、複数の慣性座標系として、慣性座標系１、慣性座標系２、慣性座標系３の各慣性座標系で表示される慣性座標系仮想オブジェクトを規定している。図１１の「右利き用アイコングループ」、及び「左利き用アイコングループ」は、複数のアイコンを一つのグループにまとめたものである。また「右利き用アイコングループ」はユーザが右利きの場合にのみ表示し、「左利き用アイコングループ」はユーザが左利きの場合にのみ表示するので排他的表示制御を行う。このように、慣性座標系仮想オブジェクトの表示のｏｎ／ｏｆｆや、方向の制御を行ってもよい。操作対象（アクティブ）となる慣性座標系に配置した仮想オブジェクトを、非操作対象（非アクティブ）な慣性座標系に配置された仮想オブジェクトよりも濃くする等、どの仮想オブジェクトが操作対象となっていることが分かる表示をしてもよい。さらに、慣性座標系毎にスワイプで方向を変更できるようにしてもよいし、方向制御方法のモードを変えてもよい。
【０１１１】
また、仮想オブジェクトのそばに配置された慣性座標系１、慣性座標系２、慣性座標系３の其々で定義された複数のページを識別する番号等（色分け等）のマークを表示してもよい。ページ毎、換言すると、慣性座標系１、慣性座標系２、慣性座標系３の各慣性座標系とユーザとの距離を変えてもよい。操作対象となるページを手前側に表示する。その際、オブジェクトのユーザからの見込み角が一定になるように、距離により、大きさを制御してもよい。
【０１１２】
（７）全方位画像の表示
過去に撮像した、全方位画像（実オブジェクト、仮想オブジェクト）を表示するために慣性座標系の表示空間を用いてもよい。慣性座標系を回転させれば全方位の映像を見ることができる。
【０１１３】
また、過去の画像だけでなく、現時点での全方位の画像を慣性座標系の表示空間に表示して、色々な方向の画像を見られるようにしてもよい。
【０１１４】
（８）局所座標系の省略
慣性座標系の特定方向近傍に局所座標系に表示していた重要な仮想オブジェクトを表示することにして、局所座標系を設けなくてもよい。この場合、当該の重要な仮想オブジェクトにアクセスするためには、ユーザ基準方向に慣性座標系の前記特定方向を合わせる制御を行えば、すぐに重要な仮想オブジェクトにアクセスすることができる。
【０１１５】
（９）関連オブジェクトの自動配列
世界座標系仮想オブジェクトに対して加工等をする場合に、関連操作メニュー等をその時点での慣性座標系内であって、加工対象となる世界座標系仮想オブジェクトの近傍に表示するようにしてもよい。ユーザは、頭を回すか、慣性座標系を回すかして、その操作メニュー等にアクセスすることができる。
【０１１６】
（１０）ＶＲゴーグルやスマートフォンへの適用
ＶＲゴーグルやスマートフォンへ適用してもよい。ＶＲゴーグルの場合、外界の映像は、ビデオシースルーとして、世界座標系に配置される。スマートフォンの場合は、ユーザの位置を計測して慣性座標系の原点とする。また、スマートフォンと慣性座標系に固定した仮想オブジェクトとの距離が変化するので、その距離の変化に対応させて、当該仮想オブジェクトの表示上の大きさを変化させてもよい（スマートフォンを仮想オブジェクトの配置位置に近づけるとズームアップ）。
【０１１７】
上記実施形態によれば、世界座標系及び局所座標系の其々の欠陥を補間する新たな座標系としての慣性座標系を用いて仮想オブジェクトを配置することができる。これにより、局所座標系では座標系に固定されたＦＯＶ内にしか仮想オブジェクトを視認できる状態で配置することができず、配置数に制約があったり視認性が低下するという問題があった。これに対して、慣性座標系を用いて仮想オブジェクトの配置位置を定義することで、局所座標系でのＦＯＶの外側に仮想オブジェクトを配置しておき、必要なときにユーザが頭を動かすことで仮想オブジェクトを視認できるので、視認性を低下させることなく配置数の制約を解消できる。
【０１１８】
更に、世界座標系に仮想オブジェクトを配置すると、ユーザが移動するにつれて仮想オブジェクトが見えにくくなるという欠点があるが、慣性座標系を用いて仮想オブジェクトの配置位置を定義すると、ユーザの移動に追従して仮想オブジェクトを移動させることができ、世界座標系がかかえる欠点を補間することができる。
【０１１９】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１２０】
また、上記の各構成は、それらの一部又は全部が、ハードウェアで構成されても、プロセッサでプログラムが実行されることにより実現されるように構成されてもよい。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【０１２１】
例えば上記実施形態では、世界座標系、局所座標系、慣性座標系の３つの座標系を用いて仮想オブジェクトをＨＭＤ１００に表示したが、慣性座標系のみを用いて仮想オブジェクトを表示してもよい。また慣性座標系と、世界座標系及び局所座標系の少なくとも一つとを組み合わせて仮想オブジェクトを表示してもよい。
【符号の説明】
【０１２２】
１            ：ＨＭＤシステム
１００        ：ＨＭＤ
１１１        ：カメラ
１１２        ：インカメラ
１１３        ：測距センサ
１１５        ：加速度センサ
１１６        ：ジャイロセンサ
１１７        ：地磁気センサ
１１８        ：ＧＰＳ受信器
１１９        ：ディスプレイ
１１９ａ      ：有効視野範囲
１２０        ：ネットワーク通信器
１２３        ：アンテナ
１２５        ：ＣＰＵ
１２６        ：プログラム
１２７        ：情報データ
１２８        ：メモリ
１２９        ：近距離無線通信器
１３０        ：映像
１３１        ：仮想オブジェクト
１４０        ：バス
２００        ：サーバ
３００        ：外部ネットワーク
４００        ：入力コントローラ
４１０        ：仮想オブジェクト
４２０        ：仮想オブジェクト
５１０        ：仮想オブジェクト
５２０        ：仮想オブジェクト
１２００      ：表示制御装置
【図１】
2020157955.tif 000003
【図２】
2020157955.tif 000004
【図３】
2020157955.tif 000005
【図４Ａ】
2020157955.tif 000006
【図４Ｂ】
2020157955.tif 000007
【図５Ａ】
2020157955.tif 000008
【図５Ｂ】
2020157955.tif 000009
【図６】
2020157955.tif 000010
【図７】
2020157955.tif 000011
【図８】
2020157955.tif 000012
【図９】
2020157955.tif 000013
【図１０】
2020157955.tif 000014
【図１１】
2020157955.tif 000015
【国際調査報告】
2020157955.tif 000016
2020157955.tif 000017
2020157955.tif 000018