(57)【特許請求の範囲】
【請求項１】
観察者の頭部姿勢に関する第１の情報及び少なくとも前記観察者の胴体の姿勢を含む前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信部と、
前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成し、前記自由視点空間における前記観察者の移動を指示する制御信号が入力されたときに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて定位した身体の向きを正面方向と認識して移動後の地点（視点位置）を求める描画処理部と、
を具備する情報処理装置。
【請求項２】
観察者の頭部姿勢に関する第１の情報及び前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信部と、
キャリブレーション・パラメーターを取得するキャリブレーション処理部と、
前記キャリブレーション・パラメーターで補正した前記観察者の頭部姿勢及び前記観察者の頭部以外の身体の姿勢に基づいて、前記観察者の姿勢に対応した表示画像を生成する描画処理部と、
を具備する情報処理装置。
【請求項３】
前記キャリブレーション処理部は、前記第１の情報から得られる頭部の姿勢情報と、前記第２の情報から得られる第２の姿勢情報に基づいて、第２の姿勢情報を補正するためのキャリブレーション・パラメーターを計算し、前記キャリブレーション・パラメーターを用いて前記第２の姿勢情報を補正する、
請求項２に記載の情報処理装置。
【請求項４】
前記キャリブレーション処理部は、前記頭部の姿勢情報と前記第２の姿勢情報を用いて前記第２の姿勢情報を前記頭部の姿勢情報に一致させるための姿勢変換パラメーターを前記キャリブレーション・パラメーターとして計算する、
請求項３に記載の情報処理装置。
【請求項５】
姿勢情報はクォータニオンで表記され、
前記キャリブレーション処理部は、前記頭部の姿勢情報に前記第２の姿勢情報のクォータニオンのインバースを右から掛けて、第２の姿勢情報を補正するためのキャリブレーション・クォータニオンを計算し、
前記第２の姿勢情報のクォータニオンに前記キャリブレーション・クォータニオンを左から掛けて補正する、
請求項３に記載の情報処理装置。
【請求項６】
前記キャリブレーション処理部は、前記第１の情報から得られる頭部姿勢の座標系と前記第２の情報から得られる姿勢の座標系の一定期間の回転変位と、人体の性質に基づいて、前記第２の姿勢情報を補正するためのキャリブレーション・パラメーターを推定する、
請求項３に記載の情報処理装置。
【請求項７】
前記キャリブレーション処理部は、一定期間、前記第１の情報から得られる頭部の姿勢情報と前記第２の情報から得られる第２の姿勢情報に基づいて計算したキャリブレーション・パラメーターの時系列の平均を最終的なキャリブレーション・パラメーターとする、
請求項２に記載の情報処理装置。
【請求項８】
姿勢情報はクォータニオンで表記され、
前記キャリブレーション処理部は、新たに受信した第１の情報及び第２の情報からそれぞれ得られる姿勢情報のクォータニオンに基づいて新規に算出したキャリブレーション・クォータニオンと、時系列の平均で求めた直前のキャリブレーション・クォータニオンを球面線形補間して、キャリブレーション・クォータニオンを更新する、
請求項７に記載の情報処理装置。
【請求項９】
前記第２の情報に基づいて前記観察者の胴体の姿勢が算出され、
前記キャリブレーション処理部は、新たに受信した第１の情報及び第２の情報からそれぞれ得られる頭部及び胴体部の姿勢情報の、重力方向を回転軸としたときの回転方向の角度差分の平均値を求め、重力方向と前記平均値にキャリブレーション・パラメーターを算出する、
請求項７に記載の情報処理装置。
【請求項１０】
観察者の頭部姿勢に関する第１の情報及び前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信部と、
前記第１の情報から得られる頭部の姿勢と前記第２の情報から得られる胴体の姿勢の差分に基づいて、前記観察者の姿勢に対応した表示画像を処理する描画処理部と、
を具備する情報処理装置。
【請求項１１】
観察者の頭部姿勢に関する第１の情報及び少なくとも前記観察者の胴体の姿勢を含む前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信部と、
前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成する描画処理部と、
を具備し、
生体安全対応モード下において、前記描画処理部は、前記自由視点空間内の頭部姿勢と胴体姿勢の差分が小さくなるように世界座標系を補正して、自由視点画像を生成する、
情報処理装置。
【請求項１２】
観察者の頭部姿勢に関する第１の情報及び少なくとも前記観察者の胴体の姿勢を含む前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信部と、
前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成する描画処理部と、
を具備し、
前記描画処理部は、生体安全対応モードに入った時点で自由視点空間内の頭部姿勢を固定するとともに、前記生体安全対応モード下では前記観察者の頭部姿勢に応じて自由視点空間内の胴体の姿勢を変化させて、自由視点画像を生成する、
情報処理装置。
【請求項１３】
前記第１の情報から得られる頭部の姿勢と前記第２の情報から得られる胴体の姿勢の差分が第１の閾値を超える状態が一定時間継続したときに前記生体安全対応モードに入り、前記差分が前記第１の閾値よりも小さい第２の閾値以下となったときに前記生体安全対応モードから出る、
請求項１１又は１２のいずれかに記載の情報処理装置。
【請求項１４】
観察者の頭部姿勢に関する第１の情報及び少なくとも前記観察者の胴体の姿勢を含む前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信ステップと、
前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成し、前記自由視点空間における前記観察者の移動を指示する制御信号が入力されたときに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて定位した身体の向きを正面方向と認識して移動後の地点（視点位置）を求める描画処理ステップと、
を有する情報処理方法。
【請求項１５】
観察者の頭部の姿勢を検出する頭部姿勢検出部の検出結果に基づいて前記観察者の頭部の姿勢情報を算出する頭部姿勢演算部、
少なくとも前記観察者の胴体の姿勢を含む前記観察者の頭部以外の身体の１以上の第２の部位の姿勢を検出する第２の姿勢検出部の検出結果に基づいて前記第２の部位の姿勢情報を算出する第２の姿勢演算部、
前記観察者の頭部の姿勢に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の部位の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成し、前記自由視点空間における前記観察者の移動を指示する制御信号が入力されたときに、前記第２の部位の姿勢情報から得られる前記観察者の胴体の姿勢に基づいて定位した身体の向きを正面方向と認識して移動後の地点（視点位置）を求める描画処理部、
としてコンピューターを機能させるようにコンピューター可読形式で記述されたコンピューター・プログラム。
【請求項１６】
観察者の頭部又は顔部に固定される表示部と、
前記観察者の頭部の姿勢を検出する頭部姿勢検出部と、
少なくとも前記観察者の胴体の姿勢を含む前記観察者の頭部以外の身体の１以上の第２の部位の姿勢を検出する第２の姿勢検出部と、
前記観察者の頭部の姿勢に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の部位の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成し、前記自由視点空間における前記観察者の移動を指示する制御信号が入力されたときに、前記第２の部位の姿勢情報から得られる前記観察者の胴体の姿勢に基づいて定位した身体の向きを正面方向と認識して移動後の地点（視点位置）を求める描画処理部と、
を具備する画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で開示する技術は、観察者の動きに追従した画像を処理する情報処理装置及び情報処理方法、コンピューター・プログラム、並びに画像処理システムに関する。
【背景技術】
【０００２】
ユーザーの頭部又は顔部に着用される画像表示装置、すなわち、ヘッド・マウント・ディスプレイが知られている。ヘッド・マウント・ディスプレイは、例えば左右の眼毎の画像表示部を持つとともに、ヘッドフォンと併用し、視覚及び聴覚を制御できるように構成されている。頭部に装着した際に外界を完全に遮るように構成すれば、視聴時の仮想現実感が増す。また、ヘッド・マウント・ディスプレイは、左右の眼に違う映像を映し出すことも可能であり、左右の眼に対して視差のある画像を表示すれば３Ｄ画像を提示することができる。【０００３】
この種のヘッド・マウント・ディスプレイは、虚像を眼の網膜上に結像させて、ユーザーに観察させる。ここで、虚像は、物体が焦点距離よりレンズに近い位置にある場合に、その物体側に形成される。例えば、瞳孔の前方に２５ミリメートルだけ離間して広視野角の虚像光学系を配置し、この広視野角光学系のさらに前方に約０．７インチの有効画素範囲の大きさを持つ表示パネルを配置して、表示画像の拡大虚像をユーザーの瞳に結像するヘッド・マウント・ディスプレイについて提案がなされている（例えば、特許文献１を参照のこと）。【０００４】
また、ユーザーは、この種のヘッド・マウント・ディスプレイを用いて、広角画像の一部を切り出した画像を観察することができる。例えば、頭部にジャイロ・センサーなどからなる頭部動作追跡装置を取り付け、ユーザーの頭部の動きに追従させた全周囲３６０度の映像を実感できるようにしたヘッド・マウント・ディスプレイについて提案がなされている（例えば、特許文献２、特許文献３を参照のこと）。ジャイロ・センサーが検出した頭部の動きを打ち消すように、広角画像中で表示領域を移動させることで、自由視点視聴及び視点移動環境を実現することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本明細書で開示する技術の目的は、観察者の動きに追従した画像を好適に処理することができる、優れた情報処理装置及び情報処理方法、コンピューター・プログラム、並びに画像処理システムを提供することにある
【課題を解決するための手段】
【０００６】
本願は、上記課題を参酌してなされたものであり、請求項１に記載の技術は、
観察者の頭部姿勢に関する第１の情報及び前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信部と、
前記第１の情報及び前記第２の情報に基づいて、前記観察者の姿勢に対応した表示画像を生成する描画処理部と、
を具備する情報処理装置である。【０００７】
本願の請求項２に記載の技術によれば、請求項１に記載の情報処理装置の前記受信部は、前記第２の情報として、少なくとも前記観察者の胴体の姿勢を受信し、前記描画処理部は、前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成するように構成されている。【０００８】
本願の請求項３に記載の技術によれば、請求項２に記載の情報処理装置の前記描画処理部は、前記自由視点空間における前記観察者の移動を指示する制御信号が入力されたときに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて定位した身体の向きを正面方向と認識して移動後の地点（視点位置）を求めるように構成されている。【０００９】
本願の請求項４に記載の技術によれば、請求項１に記載の情報処理装置の前記描画処理部は、前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる姿勢に基づいて定位した固定位置に配置して、前記観察者の頭部姿勢に追従する自由視点画像を生成するように構成されている。【００１０】
本願の請求項５に記載の技術によれば、請求項１に記載の情報処理装置の前記受信部は、前記第２の情報として、少なくとも前記観察者の胴体の姿勢を受信し、前記描画処理部は、前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位し、且つ、前記観察者の胴体に姿勢に基づいて定位した固定位置に所定の画像部品を配置して、前記観察者の頭部の姿勢に追従する自由視点画像を生成するように構成されている。【００１１】
本願の請求項６に記載の技術によれば、請求項１乃至５のいずれかに記載の情報処理装置は、キャリブレーション・パラメーターを取得するキャリブレーション処理部をさらに備えている。そして、前記描画処理部は、キャリブレーション・パラメーターで補正した姿勢情報を用いて画像生成を実施するように構成されている。【００１２】
本願の請求項７に記載の技術によれば、請求項８に記載の情報処理装置の前記キャリブレーション処理部は、前記第１の情報から得られる頭部の姿勢情報と、前記第２の情報から得られる第２の姿勢情報に基づいて、第２の姿勢情報を補正するためのキャリブレーション・パラメーターを計算し、前記キャリブレーション・パラメーターを用いて前記第２の姿勢情報を補正するように構成されている。【００１３】
本願の請求項８に記載の技術によれば、請求項７に記載の情報処理装置の前記キャリブレーション処理部は、前記頭部の姿勢情報と前記第２の姿勢情報を用いて前記第２の姿勢情報を前記頭部の姿勢情報に一致させるための姿勢変換パラメーターを前記キャリブレーション・パラメーターとして計算するように構成されている。【００１４】
本願の請求項９に記載の技術によれば、姿勢情報はクォータニオンで表記される。そして、請求項７に記載の情報処理装置の前記キャリブレーション処理部は、前記頭部の姿勢情報に前記第２の姿勢情報のクォータニオンのインバースを右から掛けて、第２の姿勢情報を補正するためのキャリブレーション・クォータニオンを計算し、前記第２の姿勢情報のクォータニオンに前記キャリブレーション・クォータニオンを左から掛けて補正するように構成されている。【００１５】
本願の請求項１０に記載の技術によれば、請求項６に記載の情報処理装置の前記キャリブレーション処理部は、前記第１の情報から得られる頭部姿勢の座標系と前記第２の情報から得られる姿勢の座標系の一定期間の回転変位と、人体の性質に基づいて、前記第２の姿勢情報を補正するためのキャリブレーション・パラメーターを推定するように構成されている。【００１６】
本願の請求項１１に記載の技術によれば、請求項６に記載の情報処理装置の前記キャリブレーション処理部は、一定期間、前記第１の情報から得られる頭部の姿勢情報と前記第２の情報から得られる第２の姿勢情報に基づいて計算したキャリブレーション・パラメーターの時系列の平均を最終的なキャリブレーション・パラメーターとするように構成されている。【００１７】
本願の請求項１２に記載の技術によれば、姿勢情報はクォータニオンで表記される。そして、請求項１１に記載の情報処理装置の前記キャリブレーション処理部は、新たに受信した第１の情報及び第２の情報からそれぞれ得られる姿勢情報のクォータニオンに基づいて新規に算出したキャリブレーション・クォータニオンと、時系列の平均で求めた直前のキャリブレーション・クォータニオンを球面線形補間して、キャリブレーション・クォータニオンを更新するように構成されている。【００１８】
本願の請求項１３に記載の技術によれば、前記第２の情報に基づいて前記観察者の胴体の姿勢が算出される。そして、請求項１１に記載の情報処理装置の前記キャリブレーション処理部は、新たに受信した第１の情報及び第２の情報からそれぞれ得られる頭部及び胴体部の姿勢情報の、重力方向を回転軸としたときの回転方向の角度差分の平均値を求め、重力方向と前記平均値にキャリブレーション・パラメーターを算出するように構成されている。【００１９】
本願の請求項１４に記載の技術によれば、請求項１に記載の情報処理装置の前記描画処理部は、前記第１の情報から得られる頭部の姿勢と前記第２の情報から得られる胴体の姿勢の差分に基づいて、前記表示部の表示画像を処理するように構成されている。【００２０】
本願の請求項１５に記載の技術によれば、請求項２又は３のいずれかに記載の情報処理装置は、生体安全対応モード下において、前記描画処理部は、前記自由視点空間内の頭部姿勢と胴体姿勢の差分が小さくなるように世界座標系を補正して、自由視点画像を生成するように構成されている。【００２１】
本願の請求項１６に記載の技術によれば、請求項２又は３のいずれかに記載の情報処理装置の前記描画処理部は、生体安全対応モードに入った時点で自由視点空間内の頭部姿勢を固定するとともに、前記生体安全対応モード下では前記頭部姿勢検出部が検出する頭部姿勢に応じて自由視点空間内の胴体の姿勢を変化させて、自由視点画像を生成するように構成されている。【００２２】
本願の請求項１７に記載の技術によれば、請求項１５又は１６のいずれかに記載の情報処理装置は、前記第１の情報から得られる頭部の姿勢と前記第２の情報から得られる胴体の姿勢の差分が第１の閾値を超える状態が一定時間継続したときに前記生体安全対応モードに入り、前記差分が前記第１の閾値よりも小さい第２の閾値以下となったときに前記生体安全対応モードから出るように構成されている。【００２３】
また、本願の請求項１８に記載の技術は、
観察者の頭部姿勢に関する第１の情報及び前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信ステップと、
前記第１の情報及び前記第２の情報に基づいて、前記観察者の姿勢に対応した表示画像を生成する描画処理ステップと、
を有する情報処理方法である。【００２４】
また、本願の請求項１９に記載の技術は、
観察者の頭部の姿勢を検出する頭部姿勢検出部の検出結果に基づいて前記観察者の頭部の姿勢情報を算出する頭部姿勢演算部、
前記観察者の頭部以外の身体の１以上の第２の部位の姿勢を検出する第２の姿勢検出部の検出結果に基づいて前記第２の部位の姿勢情報を算出する第２の姿勢演算部、
前記観察者の頭部の姿勢及び前記第２の部位の姿勢に基づいて、前記観察者の頭部又は顔部に固定される表示部に表示する画像を処理する描画処理部、
としてコンピューターを機能させるようにコンピューター可読形式で記述されたコンピューター・プログラムである。【００２５】
本願の請求項１９に係るコンピューター・プログラムは、コンピューター上で所定の処理を実現するようにコンピューター可読形式で記述されたコンピューター・プログラムを定義したものである。換言すれば、本願の請求項１９に係るコンピューター・プログラムをコンピューターにインストールすることによって、コンピューター上では協働的作用が発揮され、本願の請求項１に係る情報処理装置と同様の作用効果を得ることができる。【００２６】
また、本願の請求項２０に記載の技術は、
観察者の頭部又は顔部に固定される表示部と、
前記観察者の頭部の姿勢を検出する頭部姿勢検出部と、
前記観察者の頭部以外の身体の１以上の第２の部位の姿勢を検出する第２の姿勢検出部と、
前記観察者の頭部の姿勢及び前記第２の部位の姿勢に基づいて前記表示部の表示画像を処理する描画処理部と、
を具備する画像処理システムである。
【発明の効果】
【００２７】
本明細書で開示する技術によれば、観察者の動きに追従した画像を好適に処理することができる、優れた情報処理装置及び情報処理方法、コンピューター・プログラム、並びに画像処理システムを提供することができる。【００２８】
なお、本明細書に記載された効果は、あくまでも例示であり、本発明の効果はこれに限定されるものではない。また、本発明が、上記の効果以外に、さらに付加的な効果を奏する場合もある。【００２９】
本明細書で開示する技術のさらに他の目的、特徴や利点は、後述する実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【図面の簡単な説明】
【００３０】
【図１】図１は、本明細書で開示する技術を適用した画像表示システム１００の構成例を模式的に示した図である。
【図２】図２は、画像表示システム１００の変形例を示した図である。
【図３】図３は、画像表示システム１００の変形例を示した図である。
【図４】図４は、画像表示システム１００のさらに他の変形例を示した図である。
【図５】図５は、表示装置５００を着用したユーザーの上面図である。
【図６】図６は、表示装置５００を着用したユーザーの正面図である。
【図７】図７は、ユーザーの頭部の動きのみに追従した自由視点画像を描画する処理手順を示したフローチャートである。
【図８】図８は、頭部動作追跡装置２００及び胴体動作追跡装置３００の各々から供給される姿勢情報に基づいて自由視点空間にユーザーの視線方向と体の向きを個別に定位する様子を示した図である
【図９】図９は、ユーザーの頭部の姿勢と身体の姿勢をともに考慮して自由視点画像を描画する処理手順を示したフローチャートである。
【図１０】図１０は、ユーザーの頭部の動きのみに追従した自由視点画像を説明するための図である。
【図１１】図１１は、ユーザーの頭部の姿勢と身体の姿勢を考慮して生成する自由視点画像を説明するための図である。
【図１２】図１２は、キャリブレーション・パラメーターにより補正した姿勢情報を用いて自由視点画像を描画する処理手順を示したフローチャートである。
【図１３】図１３は、キャリブレーション・パラメーターにより補正した姿勢情報を用いて自由視点画像を描画する他の処理手順を示したフローチャートである。
【図１４】図１４は、キャリブレーション・パラメーターにより補正した姿勢情報を用いて自由視点画像を描画するさらに他の処理手順を示したフローチャートである。
【図１５】図１５は、オート・キャリブレーションの処理手順を示したフローチャートである。
【図１６】図１６は、オート・キャリブレーションの他の処理手順を示したフローチャートである。
【図１７】図１７は、画像の注視点１７０１を移動して、ユーザーの視線方向１７０２が胴体の正面方向を向く元の位置に戻るように、自由視点画像を移動させている様子を示した図である。
【図１８】図１８は、第１の方法によりユーザーの不自然な視聴姿勢を軽減又は回避する処理を含んだ、自由視点画像の描画処理手順を示したフローチャートである。
【図１９】図１９は、第２の方法によりユーザーの不自然な視聴姿勢を軽減又は回避する処理を含んだ、自由視点画像の描画処理手順を示したフローチャートである。
【図２０】図２０は、第２の方法によりユーザーの不自然な視聴姿勢を軽減又は回避する処理を含んだ、自由視点画像の描画処理手順を示したフローチャートである。
【図２１】図２１は、クォータニオンｑを示した図である。
【図２２】図２２は、球面線形補間Ｓｌｅｒｐによりクォータニオンを補間する方法を示した図である。
【図２３】図２３は、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置して、自由視点画像を描画する処理手順を示したフローチャートである。
【図２４】図２４は、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置して、自由視点画像を描画する処理手順を示したフローチャートである。
【図２５】図２５は、ユーザーの頭部姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【図２６】図２６は、ユーザーの頭部姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【図２７】図２７は、ユーザーの頭部姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【図２８】図２８は、ユーザーの頭部姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【図２９】図２９は、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【図３０】図３０は、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【図３１】図３１は、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【図３２】図３２は、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示した図である。
【発明を実施するための形態】
【００３１】
以下、図面を参照しながら本明細書で開示する技術の実施形態について詳細に説明する。
【００３２】
Ａ．システム構成
図１には、本明細書で開示する技術を適用した画像表示システム１００の構成例を模式的に示している。図示の画像表示システム１００は、頭部動作追跡装置２００と、胴体動作追跡装置３００と、描画装置４００と、表示装置５００で構成される。
【００３３】
頭部動作追跡装置２００は、表示装置５００が表示する画像を観察するユーザーの頭部に装着して用いられ、所定の送信周期でユーザーの頭部の姿勢情報を描画装置４００に出力する。また、胴体動作追跡装置３００は、同ユーザーの胴体部に装着して用いられ、所定の送信周期でユーザーの胴体部の姿勢情報を描画装置４００に出力する。
【００３４】
図示の例では、頭部動作追跡装置２００は、センサー部２０１と、姿勢角演算部２０２と、得られた姿勢情報を描画装置４００に送信する送信部２０３を備えている。また、胴体動作追跡装置３００は、センサー部３０１と、姿勢角演算部３０２と、得られた姿勢情報を描画装置４００に送信する送信部３０３を備えている。頭部動作追跡装置２００と胴体動作追跡装置３００は、ユーザーの身体に取り付ける部位や取り付け方法が相違するだけで、同様の内部構成並びに動作特性でよい。以下では、頭部動作追跡装置２００の内部構成についてのみ説明するが、胴体動作追跡装置３００の内部構成も同様であると理解されたい。
【００３５】
センサー部２０１は、例えば、ジャイロ・センサーと加速度センサーと地磁気センサーなど複数のセンサー素子を組み合わせて構成されている。ここでは、３軸ジャイロ・センサー、３軸加速度センサー、３軸地磁気センサーの合計９軸を検出可能なセンサーとする。姿勢角演算部２０２は、センサー部２０１による９軸の検出結果に基づいて、ユーザーの頭部など取り付けられた部位の姿勢情報を演算する。送信部２０３は、求められた姿勢情報を描画装置４００に送信する。但し、胴体動作追跡装置３００は、ユーザーの胴体部の向きを検出するだけで十分であれば、センサー部３０１は、９軸検出センサーである必要はなく、ジャイロ・センサーだけを装備する簡易な構成でもよい。
【００３６】
本実施形態では、頭部や胴体部の姿勢情報をクォータニオンの形式で表現して扱うものとする。クォータニオンは、特異点がないことからコンピューターを用いた計算に適している。コンピューター・グラフィックスの分野では、物体の姿勢をクォータニオンで表現するのが一般的である。クォータニオンｑは、下式（１）並びに図２１に示すように、回転軸（ベクトル）と回転角（スカラー）からなる４元数である。
【００３７】
【数１】
0006572893.tif 000002
【００３８】
但し、頭部動作追跡装置２００や胴体動作追跡装置３００の内部で、センサー部２０１、３０１が検出した姿勢角の情報からクォータニオンで表現される姿勢情報を演算することは必須ではない。頭部動作追跡装置２００や胴体動作追跡装置３００は、姿勢角をクォータニオン以外の形式で表現した情報を描画装置４００に送信し、描画装置４００側でクォータニオンを計算するようにしてもよい。また、図２に示すように、頭部動作追跡装置２００や胴体動作追跡装置３００は、センサー部２０１並びにセンサー部３０１のセンサー情報をそのまま出力し、描画装置４００側に配設された姿勢角演算部２０２でセンサー情報から姿勢角をクォータニオン又はその他の形式で算出するようにしてもよい。
【００３９】
図示の画像表示システム１００では、頭部動作追跡装置２００と描画装置４００間、並びに胴体動作追跡装置３００と描画装置４００間は、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信などの無線通信により相互接続されているものとする。勿論、無線通信ではなく、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）のような高速な有線インフェース経由で頭部動作追跡装置２００と描画装置４００間、並びに胴体動作追跡装置３００と描画装置４００間を接続するようにしてもよい。
【００４０】
描画装置４００は、表示装置５００で表示する画像のレンダリング処理を行なう。描画装置４００は、例えばスマートフォンやタブレットなどのＡｎｄｒｏｉｄ（登録商標）搭載端末、あるいはパーソナル・コンピューター、ゲーム機として構成されるが、これらの装置に限定される訳ではない。
【００４１】
図示の例では、描画装置４００は、頭部動作追跡装置２００並びに胴体動作追跡装置３００から姿勢情報を受信する受信部４０１と、姿勢情報に基づいて画像のレンダリング処理を行なう描画処理部４０２と、レンダリングした画像を表示装置５００に送信する送信部４０２と、画像データの供給源となる画像ソース４０４を備えている。また、図示を省略するが、描画装置４００は、音声出力部を備えていてもよい。
【００４２】
受信部４０１は、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信などを介して、頭部動作追跡装置２００並びに胴体動作追跡装置３００から姿勢情報を受信する。上述したように、頭部動作追跡装置２００からの姿勢情報はクォータニオンの形式で表現されている。
【００４３】
画像ソース４０４は、例えば、画像コンテンツを記録するＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの記憶装置、ブルーレイ（登録商標）などの記録メディアを再生するメディア再生装置、ゲーム機で生成されるゲーム画像、ディジタル放送信号を選局受信する放送チューナー、インターネットのサーバーからストリーミングされる画像コンテンツを受信する通信インターフェース、ラジコンや自動車などの移動体装置に搭載された外部カメラによる撮影画像を無線により受信する無線インターフェースなどからなる。
【００４４】
描画処理部４０２は、画像ソース４０４の画像データから、表示装置５００側で表示する画像をレンダリングする。描画処理部４０２は、例えば画像ソース４０４から供給される全天球型の原画像や４Ｋなどの広画角の原画像から、受信部４０１で受信したユーザーの頭部並びに胴体部の姿勢情報に対応した表示画角を切り出して、自由視点画像をレンダリングする。なお、インターネット上のサーバーで自由視点画像をレンダリングするというシステム構成例も想定される。この場合、例えば頭部動作追跡装置２００並びに胴体動作追跡装置３００がそれぞれ姿勢情報を描画装置４００としての役割を果たすサーバーに送信し、サーバー側で切り出された画像を表示装置５００で受信し表示するようにすればよい。
【００４５】
描画装置４００と表示装置５００間は、例えばＨＤＭＩ（登録商標）（Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）やＭＨＬ（Ｍｏｂｉｌｅ  Ｈｉｇｈ−ｄｅｆｉｎｉｔｉｏｎ  Ｌｉｎｋ）などの有線ケーブルにより接続されている。あるいは、ｗｉｒｅｌｅｓｓＨＤやＭｉｒａｃａｓｔのような無線通信で接続してもよい。送信部４０３は、いずれかの通信路を用いて、描画処理部４０２でレンダリングされた非圧縮画像データ（又は、圧縮画像データでもよい）を表示装置５００に送信する。
【００４６】
表示装置５００は、描画装置４００から画像データを受信する受信部５０１と、受信した画像を表示する表示部５０２を備えている。表示装置５００（若しくは表示部５０２）は、例えば、画像を観察するユーザーの頭部又は顔部に固定されるヘッド・マウント・ディスプレイ（例えば、特許文献１を参照のこと）として構成される。
【００４７】
受信部５０１は、例えばＨＤＭＩ（登録商標）やＭＨＬなどの通信路を介して、描画装置４００から画像データを受信する。画像データが圧縮されている場合、受信部５０１で復号・伸長処理を行なうものとする。表示部５０２は、受信した画像データを画面に表示する。
【００４８】
表示装置５００がヘッド・マウント・ディスプレイとして構成される場合、例えば、表示部５０２は、ユーザーの左右の眼にそれぞれ固定された左右の画面を備え、左眼用画像及び右眼用画像を表示する。表示部５０２の画面は、例えば有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）素子（ＯＬＥＤ）や液晶ディスプレイ（ＬＣＤ）などのマイクロ・ディスプレイなどの表示パネル、あるいは、網膜直描ディスプレイなどのレーザー走査方式ディスプレイで構成される。また、表示部５０２は、表示画面を拡大投影して、ユーザーの瞳に所定の画角からなる拡大虚像を結像する虚像光学系を備えている。
【００４９】
描画装置４００側では、例えば全天球型の原画像や４Ｋなどの広画角の原画像から、ユーザーの頭部並びに胴体部の姿勢情報に対応した表示画角を切り出した画像をレンダリングする。表示装置５００側では、ユーザーの頭部の姿勢の変化を打ち消すように原画像中の表示領域が移動することになる。したがって、頭部の動きに追従した自由視点画像を再現することができ、ユーザーは大画面を見渡す体験をすることができる。また、表示装置５００は、画像の動きに合わせて音像を定位させるようにしてもよい。
【００５０】
図３には、画像表示システム１００の変形例を模式的に示している。図１並びに図２に示した例では、画像表示システム１００は、頭部動作追跡装置２００、胴体動作追跡装置３００、描画装置４００、表示装置５００という４台の独立した装置で構成されるが、図３に示す例では、描画装置４００の機能が表示装置５００内に搭載されている。図３中、図１と同一の構成要素については、同一の参照番号を付している。図１に示したように、頭部動作追跡装置２００又は胴体動作追跡装置３００の少なくとも一方を表示装置５００とは別売されるオプション製品（アクセサリーなどの付属品）として構成すれば、表示装置５００の小型・軽量化、低廉化になる。
【００５１】
また、図４には、画像表示システム１００のさらに他の変形例を模式的に示している。図１並びに図２に示した例では、画像表示システム１００は、頭部動作追跡装置２００、胴体動作追跡装置３００、描画装置４００、表示装置５００という４台の独立した装置で構成されるが、図４に示す例では、頭部動作追跡装置２００並びに描画装置４００の機能が表示装置５００内に搭載されている。図４中、図１と同一の構成要素については、同一の参照番号を付している。図１に示したように、胴体動作追跡装置３００のみが表示装置５００に外部接続される機器として構成されている。
【００５２】
図５並びに図６には、画像表示システム１００をユーザー１が利用する様子を示している。但し、図５は表示装置５００を着用したユーザー１を上方から眺めた図であり、図６は表示装置５００を着用したユーザー１を正面から眺めた図である。
【００５３】
表示装置５００は、ヘッド・マウント・ディスプレイであり、眼鏡型や帽子型など、人の頭部に装着し易い外観構成となっている。ユーザー１は、表示装置５００を頭部に着用している。また、頭部動作追跡装置２００は、表示装置５００のアクセサリー部品として、同様にユーザー１の頭部に取り付けられて、ユーザー１の頭部の姿勢情報を検出するようになっている。
【００５４】
また、図６に示すように、ユーザー１の胴体部には、胴体動作追跡装置３００が取り付けられて、ユーザー１の胴体部の姿勢情報を検出するようになっている。図示の例では、胴体動作追跡装置３００は、ユーザー１の腰部付近に取り付けられているが、検出する姿勢情報がユーザー１の体の向きと対応付けすることができれば、腕や肩など腰部以外の部位に取り付ける構成であってもよい。また、図示の例では、胴体動作追跡装置３００は、ユーザー１が身に付けるボックス６００に格納されている。
【００５５】
ボックス６００は、専用デバイスであっても良いし、ゲーム・コンソールのコントローラーなどのジャイロ・センサー内蔵の機器であっても良い。後者の場合、ヘッド・マウント・ディスプレイなどの表示装置５００と胴体動作追跡装置３００の間にボックス６００が位置する。胴体動作追跡装置３００を、スマートフォンやタブレット端末などからなる描画装置４００の機能が統合された機器として構成することもできる。また、ユーザー１が胴体動作追跡装置３００を胴体部に取り付ける態様は任意であり、ボックス６００が介在する必要は必ずしもない。ユーザーの使い易さを考慮すると、胴体動作追跡装置３００の取り付け位置を厳密に規定せず、ユーザーが任意に取り付け位置を選べることが好ましい。例えば、ユーザーがポケットに入れた状態や、ベルトに引っ掛けた状態などが想定される。付言すれば、ユーザー１の体に取り付ける胴体動作追跡装置３００の台数は１台に限定されず、２台以上を配設することもでき、台数に応じて体の向きを精度よく検知することができる。
【００５６】
上述したように、頭部動作追跡装置２００と描画装置４００間、並びに胴体動作追跡装置３００と描画装置４００間は、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信などの無線通信、あるいは、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）のような高速な有線インフェース経由で接続されている。
【００５７】
ユーザー１は、表示装置５００が表示する画像を視聴している間、自分の頭部や胴体部の向きを変える。描画装置４００は、頭部動作追跡装置２００及び胴体動作追跡装置３００が検出する方位に基づいて自由視点画像を生成して、表示装置５００に出力する。
【００５８】
なお、表示装置５００として適用されるヘッド・マウント・ディスプレイは、いわゆる没入型、シースルー型、ビデオ・シースルー型のうちいずれの構成であってもよい。
【００５９】
没入型ヘッド・マウント・ディスプレイは、例えばユーザーの眼を覆うようにユーザーの頭部又は顔部に装着され、ユーザーの眼に対向するようにＬＣＤやＯＬＥＤなどの表示部を配置する。このため、没入型ヘッド・マウント・ディスプレイを装着したユーザーは、外部の風景（すなわち、現実世界の風景）を直接視野に入れることが困難である。言い換えれば、表示部に表示された映像のみが視界に入るので、画像を視聴しているユーザーに対して没入感を与えることができる。
【００６０】
シースルー型ヘッド・マウント・ディスプレイは、ハーフミラーや導光板などからなる透明な虚像光学系をユーザーの眼に対向するように配置し、この虚像光学系の内側に画像を表示する。したがって、シースルー型ヘッド・マウント・ディスプレイを装着したユーザーは、虚像光学系の内側に表示された画像を視聴している間も、画像越しに外部の風景を視野に入れることが可能である。
【００６１】
ビデオ・シースルー型ヘッド・マウント・ディスプレイは、没入型と同様に、ユーザーの眼を覆うようにユーザーの頭部又は顔部に装着され、ユーザーの眼に対向するように表示部を配置する。但し、ビデオ・シースルー型ヘッド・マウント・ディスプレイは、カメラなどの周囲の風景を撮像する撮像部をさらに備え、撮像部によるユーザーの視線方向の撮像画像を表示部に表示することができる。ビデオ・シースルー型ヘッド・マウント・ディスプレイを装着したユーザーは、外部の風景を直接視野に入れることはできないが、表示部に表示された撮影画像で外部の風景を観察することができる。
【００６２】
Ｂ．自由視点画像の描画処理
次に、画像表示システム１００で表示する自由視点画像の描画処理について説明する。
【００６３】
ユーザーの頭部にのみジャイロ・センサーを装備したヘッド・マウント・ディスプレイの場合（例えば、特許文献２、特許文献３を参照のこと）、頭部の変位からユーザーの視線方向を検出することが可能であり、ユーザーの頭部の動きに追従した自由視点画像を提示することができる。
【００６４】
図７には、画像表示システム１００において、ユーザーの頭部の動きのみに追従した自由視点画像を描画する処理手順をフローチャートの形式で示している。ユーザーの頭部の動きにのみ追従するとは、すなわち、ユーザーの頭部の姿勢のみを考慮し、身体の姿勢を考慮しないことを意味し、具体的には、描画装置４００が頭部動作追跡装置２００からの姿勢情報ｑHのみを入力し、胴体動作追跡装置３００からの姿勢情報ｑBを入力しないことに相当する。
【００６５】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ７０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ７０２）、送信部２０３から描画装置４００に送信する。
【００６６】
描画装置４００は、頭部動作追跡装置２００から頭部の姿勢を表すクォータニオンｑHを受信するとともに、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ７０３）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【００６７】
描画処理部４０２では、入力された制御信号ｖに応じて、自由視点空間における移動量ΔHを計算する（ステップＳ７０４）。本処理ルーチンでは、胴体動作追跡装置３００から取得可能なユーザーの胴体の姿勢情報を利用しないので、制御信号ｖはユーザーの頭部の姿勢情報ｑHにのみ紐付け可能であり、移動量ΔHは下式（２）に示すように求められるものとする。但し、下式（２）において、ｇは、速度又は変位量などを表す制御信号ｖから姿勢情報を表すクォータニオンｑHに基づいて、自由視点空間内における移動量ΔHを算出するための関数とする。
【００６８】
【数２】
0006572893.tif 000003
【００６９】
描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの頭部の姿勢ｑHの方向（視線方向）に移動量ΔHだけ移動した後の地点ｐHを計算する（ステップＳ７０５）。そして、ユーザーの頭部の姿勢情報ｑHに紐付けされた地点ｐHを新たな視点位置とし、その視点位置ｐHからクォータニオンｑHで表される視線方向に見える画像ＩHをレンダリングして（ステップＳ７０６）、表示装置５００に表示出力する。ここで生成される自由視点画像ＩHは、下式（３）に示すように、視点位置ｐH及び視線方向ｑHから見える画像を生成する関数ｆに基づいて生成される。
【００７０】
【数３】
0006572893.tif 000004
【００７１】
なお、ユーザーの頭部の姿勢を検出してからその姿勢に追従した画像を表示するまでの間には、頭部動作追跡装置２００から描画装置４００への姿勢情報を伝送する際に生じる伝送遅延、描画装置４００で画像を描画処理する際に生じるレンダリング遅延、描画テータを表示装置５００で表示する際に生じるディスプレイ遅延など、さまざまな原因による遅延時間が生じる。そこ遅延時間が長いと、過去の頭部の姿勢に対応した画像を描画することになり、画像が頭部の動作に追従しているという体感を劣化させ、さらにはユーザーに酔いを起こさせることが懸念される。そこで、描画装置４００では、遅延時間を考慮した画像補正を行なうようにしてもよい。例えば本出願人に既に譲渡されているＰＣＴ／２０１４／０７９２０５号明細書で開示されている画像処理技術を適用してもよい（描画装置４００は、遅延時間を予測するとともに、受信した姿勢角データからその遅延時間後の姿勢角データを予測して、予測された遅延時間における画像をレンダリングする）。
【００７２】
図７に示した処理手順によれば、描画装置４００では、ユーザーの頭部の姿勢に追従した自由視点画像ＩHを生成することになる。しかしながら、ユーザーの頭部の姿勢のみを検出し、ユーザーの体の姿勢を無視すると、体の向きに関係なく視線方向に直進するというＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）や、ゲームなどのコントローラーによって自由視点空間内の移動方向を決めるという現実空間と乖離した不自然なＵＩに陥る。つまり頭部のみの姿勢変位検出では、視線を体前方（体の正面方向）と一致させない状態で体前方に空間を移動するという（例えば、頭を横に向けながら前進する）、実空間では自然な行動を映像で表現することができない。その結果、ユーザーは映像に没入しているという感覚を著しく損なう。
【００７３】
これに対し、本実施形態に係る画像表示システム１００では、頭部動作追跡装置２００で取得されるユーザーの頭部の姿勢情報ｑHとともに胴体動作追跡装置３００で取得されるユーザーの胴体の姿勢情報ｑBに基づいて、表示装置５００で表示する自由視点空間に、ユーザーの視線方向と体の向きを個別に定位することができる。
【００７４】
図８には、自由視点空間にユーザーの視線方向と体の向きを個別に定位する様子を示している。図示のように、頭部動作追跡装置２００から供給される姿勢情報ｑHに基づいて、参照番号８０１で示す視線方向を定位する。また、胴体動作追跡装置３００から供給される姿勢情報ｑBに基づいて、参照番号８０２で示す身体の向きを定位する。そして、描画装置４００が自由視点画像を描画する際には、身体の向き８０２を、自由視点空間上での身体の向きとし、ユーザーが正面と認識する方位を得ることができる。
【００７５】
したがって、本実施形態に係る画像表示システム１００によれば、視線を体前方（体の正面方向）と一致させない状態で体前方に空間を移動するという（例えば、頭を横に向けながら前進する）、実空間では自然な行動を自由視点画像で表現することが可能となる。その結果、体の向きに関係なく視線方向に移動する（例えば、頭を横に向けながら前進する）というＵＩや、ゲームなどのコントローラーによって自由視点空間内の移動方向を決めるという現実空間と乖離した不自然なＵＩに陥ることがなくなる。
【００７６】
図９には、画像表示システム１００において、ユーザーの頭部の姿勢と身体の姿勢をともに考慮して自由視点画像を描画する処理手順をフローチャートの形式で示している。
【００７７】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ９０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ９０２）、送信部２０３から描画装置４００に送信する。
【００７８】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ９１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ９１２）、送信部３０３から描画装置４００に送信する。
【００７９】
そして、描画装置４００は、頭部動作追跡装置２００から頭部の姿勢を表すクォータニオンｑHを受信し、胴体動作追跡装置３００から胴体の姿勢を表すクォータニオンｑBを受信するとともに、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ９０３）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【００８０】
描画処理部４０２では、入力された制御信号ｖに応じて、自由視点空間における移動量ΔBを計算する（ステップＳ９０４）。本処理ルーチンでは、胴体動作追跡装置３００から取得可能なユーザーの胴体の姿勢情報を利用するので、制御信号ｖはユーザーの胴体の姿勢情報ｑBに紐付けすることが可能であり、移動量ΔBは下式（４）に示すように求められる。但し、下式（４）において、ｇは、速度又は変位量などを表す制御信号ｖから姿勢情報を表すクォータニオンｑBに基づいて、自由視点空間内における移動量ΔBを算出するための関数である（同上）。
【００８１】
【数４】
0006572893.tif 000005
【００８２】
描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）に移動量ΔBだけ移動した後の地点ｐBを計算する（ステップＳ９０５）。そして、ユーザーの胴体の姿勢情報ｑBに紐付けされた地点ｐBを自由視点空間における視点位置とし、その視点位置ｐBからクォータニオンｑHで表される視線方向に見える画像ＩBをレンダリングして（ステップＳ９０６）、表示装置５００に表示出力する。ここで生成される自由視点画像ＩBは、下式（５）に示すように、視点位置ｐB及び視線方向ｑHから見える画像を生成する関数ｆに基づいて生成される（同上）。
【００８３】
【数５】
0006572893.tif 000006
【００８４】
上式（４）は、ユーザーの胴体の姿勢情報ｑBに基づいて移動量ΔBを算出する。したがって、ステップＳ９０５では、ユーザーの頭部の姿勢情報に基づいて移動量ｑHを算出する上式（２）を用いた場合よりも、より自然な移動後の地点ｐBを算出することができる。この結果、ステップＳ９０６で生成される自由視点画像ＩBは、図７に示した処理手順に従って生成される自由視点画像ＩHと比べてより自然なＵＩとなる。すなわち、視線を体前方（体の正面方向）と一致させない状態で体前方に空間を移動するという（例えば、頭を横に向けながら前進する）、実空間では自然な行動を表現することが可能である。
【００８５】
なお、図９に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【００８６】
本実施形態では、図８を参照しながら説明したように、頭部動作追跡装置２００から供給される姿勢情報ｑHに基づいて、自由視点空間におけるユーザーの視線方向８０１を定位するとともに、胴体動作追跡装置３００から供給される姿勢情報ｑBに基づいて、自由視点空間におけるユーザーの身体の向き８０２を定位する。そして、身体の向き８０２を、ユーザーが正面と認識する方位とする。
【００８７】
図７並びに上式（２）に示したように、頭部の姿勢情報のみを考慮する場合、頭部の姿勢ｑHすなわち視線の向きにのみ紐付けして自由視点空間内での移動量を計算することになる。この場合、図８上で示すと、ユーザーの正面方向８０２ではなく視線方向８０１に向かって自由視点空間を移動する画像となってしまうので、不自然な画像の動きとなる。例えば、ゲーム・コントローラーのジョイスティックなどで、正面方向への移動を指示する制御信号ｖが入力されたとする。図１０には、ユーザーの頭部の動きのみに追従した自由視点画像を示している。図示のように、ユーザーが頭部（視線方向１００１）を左に傾けた姿勢では、正面方向１００２へ進める指示がコントローラーから入力されたにも拘らず、現在の地点からユーザーの頭部の姿勢ｑHの方向（視線方向）１００１に移動量ΔHだけ進み、その地点ｐHから視線方向ｑHに見える画像ＩHが生成される。すなわち、正面方向への移動が指示されたにも拘らず、視線方向１００１へ進むという不自然な画像ＩHが生成されることになる。
【００８８】
これに対し、図９並びに上式（４）に示したように、頭部及び胴体の姿勢情報を考慮して自由視点空間内での移動量を計算する場合、図８上で示すと、頭部の姿勢情報に基づいて視線方向８０１を定位するとともに、胴体の姿勢情報に基づいて自由視点空間におけるユーザーの身体の向き８０２を定位するので、身体の向き８０２をユーザーが正面の方位と認識して自由視点空間内での移動量を計算することができる。この結果、ユーザーの頭部と身体の動きに追従した自然な自由視点画像を描画することが可能になる。例えば、ゲーム・コントローラーのジョイスティックなどで、正面方向への移動を指示する制御信号ｖが入力されたとする。
【００８９】
図１１には、ユーザーの頭部の姿勢と身体の姿勢を考慮して生成する自由視点画像を示している。図示のように、ユーザーが頭部（視線方向１１０１）を左に傾けた姿勢では、正面方向１１０２へ進める指示がコントローラーから入力されると、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）１１０２に移動量ΔBだけ進み、その地点ｐBから視線方向ｑHに見える画像ＩBが生成される。すなわち、視線方向１１０１の風景が正面方向１１０２へ進むという自然な画像ＩBが生成されることになる。
【００９０】
Ｃ．キャリブレーション
上述したように自由視点空間にユーザーの視線方向と体の向きを個別に定位する場合、頭部動作追跡装置２００がユーザーの頭部の姿勢を検出する座標系と胴体動作追跡装置３００がユーザーの胴体の姿勢を検出する座標系とを対応付けする必要がある。
【００９１】
頭部動作追跡装置２００は、例えば表示装置５００としてのヘッド・マウント・ディスプレイ内に組み込まれる場合、ユーザーの頭部への取り付け位置はメカニカルにほぼ厳密に規定することができる。何故ならば、ユーザーは左右の眼毎の画像表示部を覗き込むという観点から、着用する度にほぼ一定の位置に取り付けるからである。
【００９２】
一方、胴体動作追跡装置３００についても、ユーザーの胴体に取り付ける初期向きをメカニカルに厳密に規定する方法も考えられる。しかしながら、ユーザーが身に付けるボックス６００内に胴体動作追跡装置３００を格納するような使用態様（例えば、図６を参照のこと）では、ヘッド・マウント・ディスプレイの場合のように取り付け位置を厳密に規定することは難しい。
【００９３】
また、ユーザーの使い易さを考慮すると、胴体動作追跡装置３００の取り付け位置を厳密に規定せず、ユーザーが任意に取り付け位置を選べることが好ましい。例えば、ユーザーがポケットに入れた状態や、ベルトに引っ掛けた状態などが想定される。
【００９４】
このため、頭部動作追跡装置２００がユーザーの頭部の姿勢を検出する座標系と胴体動作追跡装置３００がユーザーの胴体の姿勢を検出する座標系とを相互変換するためのパラメーターを、キャリブレーションによって求める必要がある。頭部動作追跡装置２００の取り付け位置が厳密に規定される場合、胴体動作追跡装置３００の初期位置をキャリブレーションすればよい。言い換えれば、ユーザーが胴体動作追跡装置３００を取り付けた後に１回だけキャリブレーションを実施するようにすれば、胴体動作追跡装置３００の取り付け部位を、ユーザーが任意に決めることができる。
【００９５】
キャリブレーションは、ユーザーの頭部と身体が揃って正しく正面を向いている（すなわち、正立している）状態における、頭部動作追跡装置２００の検出座標系と胴体動作追跡装置３００の検出座標系との対応関係の判定により行なう。また、キャリブレーションを実施するトリガーとして、例えば以下の（ａ）〜（ｃ）を挙げることができる。
【００９６】
（ａ）頭部動作追跡装置２００又は胴体動作追跡装置３００に装備されたトリガー・ボタンをユーザーが操作する。
（ｂ）表示装置 ５００に表示されたＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を介して、ユーザーがキャリブレーションの実行を選択する。
（ｃ）頭部動作追跡装置２００又は胴体動作追跡装置３００に対してユーザーが特異な入力を行なう（例えば、首を縦に２回振る、頭部動作追跡装置２００と胴体動作追跡装置３００の回転角速度が同期した瞬間をトリガーとする）。
【００９７】
あるいは、上記（ａ）〜（ｃ）のようにユーザーにキャリブレーションのトリガー操作を行なわせるのではなく、画像表示システム１００において自動的にキャリブレーションを実施するようにしてもよい。
【００９８】
例えば、一定期間ユーザーが正立した姿勢をとるように誘導する画像を表示し（又は、音声で指示し）、その間にキャリブレーションを行なうようにする。
【００９９】
あるいは、ユーザーが自由視点視聴を開始した状態から一定期間の座標系の回転変位を記録し、座標系の回転変位のログ・データと人体の性質から、ユーザーが正立した状態での胴体動作追跡装置３００内のセンサー部３０１の座標系を判定するようにしてもよい。
【０１００】
図１２には、画像表示システム１００において、キャリブレーション・パラメーターにより補正した姿勢情報を用いて自由視点画像を描画する処理手順をフローチャートの形式で示している。図示の処理手順は、例えばキャリブレーションを実施した後の通常動作時において実行される。
【０１０１】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ１２０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ１２０２）、送信部２０３から描画装置４００に送信する。
【０１０２】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ１２１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ１２１２）、送信部３０３から描画装置４００に送信する。
【０１０３】
描画装置４００は、頭部動作追跡装置２００から頭部の姿勢を表すクォータニオンｑHを受信するとともに、胴体動作追跡装置３００から胴体の姿勢を表すクォータニオンｑBを受信する。そして、キャリブレーション・パラメーターとしてのキャリブレーション・クォータニオンｑを取得し（ステップＳ１２２１）、胴体の姿勢を表すクォータニオンｑBをキャリブレーション・クォータニオンｑで補正して、補正後のクォータニオンｑ´Bを得る（ステップＳ１２１３）。
【０１０４】
キャリブレーション・クォータニオンｑは、頭部動作追跡装置２００がユーザーの頭部の姿勢を検出する座標系と胴体動作追跡装置３００がユーザーの胴体の姿勢を検出する座標系とを相互変換するためのパラメーターであり、キャリブレーションによって求める。姿勢情報がクォータニオンで表記される場合、これを補正するキャリブレーション・パラメーターもクォータニオンの形式で表記されるキャリブレーション・クォータニオンである。ステップＳ１２１３では、下式（６）に従って、キャリブレーション・クォータニオンｑを左から掛けることによって、胴体の姿勢を表すクォータニオンｑBを補正する。
【０１０５】
【数６】
0006572893.tif 000007
【０１０６】
そして、描画装置４００は、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ１２０３）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【０１０７】
描画処理部４０２では、入力された制御信号ｖに応じて、自由視点空間における移動量ΔBを計算する（ステップＳ１２０４）。本処理ルーチンでは、胴体動作追跡装置３００から取得可能なユーザーの胴体の姿勢情報を利用するので、制御信号ｖはユーザーの胴体の補正後の姿勢情報ｑ´Bに紐付けすることが可能であり、移動量ΔBは下式（７）に示すように求められる。但し、下式（７）において、ｇは、速度又は変位量などを表す制御信号ｖから姿勢情報を表す補正後のクォータニオンｑ´Bに基づいて、自由視点空間内における移動量ΔBを算出するための関数である（同上）。
【０１０８】
【数７】
0006572893.tif 000008
【０１０９】
描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）に移動量ΔBだけ移動した後の地点ｐBを計算する（ステップＳ１２０５）。そして、ユーザーの胴体の姿勢情報ｑBに紐付けされた地点ｐBを自由視点空間における視点位置とし、その視点位置ｐBからクォータニオンｑHで表される視線方向に見える画像ＩBをレンダリングして（ステップＳ１２０６）、表示装置５００に表示出力する。ここで生成される自由視点画像ＩBは、上式（５）に示したように、視点位置ｐB及び視線方向ｑHから見える画像を生成する関数ｆに基づいて生成される（同上）。
【０１１０】
なお、図１２に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【０１１１】
図１３には、画像表示システム１００において、キャリブレーション・パラメーターにより補正した姿勢情報を用いて自由視点画像を描画する、他の処理手順をフローチャートの形式で示している。図示の処理手順では、キャリブレーションは、上記の（ａ）〜（ｃ）のような明示的な操作に応じて実施される。
【０１１２】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ１３０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ１３０２）、送信部２０３から描画装置４００に送信する。
【０１１３】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ１３１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ１３１２）、送信部２０３から描画装置４００に送信する。
【０１１４】
描画装置４００では、まず、頭部動作追跡装置２００から送られてきたユーザーの頭部の姿勢を表すクォータニオンｑHと、胴体動作追跡装置３００から送られてきたユーザーの胴体の姿勢を表すクォータニオンｑBから、下式（８）を用いてキャリブレーション・クォータニオンｑを計算して（ステップＳ１３２１）、一時的に格納する。但し、下式（８）において、「ｑB-1」の上付きの「−１」は、クォータニオン「ｑB」のインバースを意味するものとする（以下、同様）。
【０１１５】
【数８】
0006572893.tif 000009
【０１１６】
次いで、描画装置４００は、上式（６）に従い、キャリブレーション・クォータニオンｑを左から掛けることによって、胴体の姿勢を表すクォータニオンｑBを補正する（ステップＳ１３１３）。
【０１１７】
次いで、描画装置４００は、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ１３０３）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【０１１８】
描画処理部４０２では、制御信号ｖから自由視点空間における移動量ΔBを計算する（ステップＳ１３０４）。本処理ルーチンでは、胴体動作追跡装置３００から取得可能なユーザーの胴体の姿勢情報を利用するので、制御信号ｖはユーザーの胴体の補正後の姿勢情報ｑ´Bに紐付けすることが可能であり、移動量ΔBは上式（７）に従って求められる。
【０１１９】
描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）に移動量ΔBだけ移動した後の地点ｐBを計算する（ステップＳ１３０５）。そして、ユーザーの胴体の姿勢情報ｑBに紐付けされた地点ｐBを自由視点空間における視点位置とし、その視点位置ｐBからクォータニオンｑHで表される視線方向に見える画像ＩBをレンダリングして（ステップＳ１３０６）、表示装置５００に表示出力する。ここで生成される自由視点画像ＩBは、上式（５）に示したように、視点位置ｐB及び視線方向ｑHから見える画像を生成する関数ｆに基づいて生成される（同上）。
【０１２０】
なお、図１３に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【０１２１】
図１４には、画像表示システム１００において、キャリブレーション・パラメーターにより補正した姿勢情報を用いて自由視点画像を描画する、さらに他の処理手順をフローチャートの形式で示している。図示の処理手順では、キャリブレーションは、一定期間の座標系の回転変位と人体の性質に基づいて、自動的に実施されるものとする。
【０１２２】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ１４０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ１４０２）、送信部２０３から描画装置４００に送信する。
【０１２３】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ１４１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ１４１２）、送信部２０３から描画装置４００に送信する。
【０１２４】
描画装置４００では、一定期間の座標系の回転変位と人体の性質に基づいて、キャリブレーション・クォータニオンｑを推定する（ステップＳ１４２１）。本処理手順では、ある特定の時点でのみキャリブレーション・クォータニオンｑを推定するのではなく、常時処理を行なうものとする。ステップＳ１４２１においてキャリブレーション・クォータニオンｑを推定する方法の詳細については、後述に譲る。
【０１２５】
次いで、描画装置４００は、上式（６）に従い、キャリブレーション・クォータニオンｑを左から掛けて、胴体の姿勢を表すクォータニオンｑBを補正する（ステップＳ１４１３）。
【０１２６】
次いで、描画装置４００は、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ１４０３）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【０１２７】
描画処理部４０２では、制御信号ｖから自由視点空間における移動量ΔBを計算する（ステップＳ１４０４）。本処理ルーチンでは、胴体動作追跡装置３００から取得可能なユーザーの胴体の姿勢情報を利用するので、制御信号ｖはユーザーの胴体の補正後の姿勢情報ｑ´Bに紐付けすることが可能であり、移動量ΔBは上式（７）に示すように求められる（同上）。
【０１２８】
描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）に移動量ΔBだけ移動した後の地点ｐBを計算すると（ステップＳ１４０５）。そして、ユーザーの胴体の姿勢情報ｑBに紐付けされた地点ｐBを自由視点空間における視点位置とし、その視点位置ｐBからクォータニオンｑHで表される視線方向に見える画像ＩBをレンダリングして（ステップＳ１４０６）、表示装置５００に表示出力する。ここで生成される自由視点画像ＩBは、上式（５）に示したように、視点位置ｐB及び視線方向ｑHから見える画像を生成する関数ｆに基づいて生成される（同上）。
【０１２９】
なお、図１４に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【０１３０】
図１５には、図１４に示したフローチャート中のステップＳ１４２１で実施されるオート・キャリブレーションの処理手順をフローチャートの形式で示している。図示の処理手順では、一定期間の座標系の回転変位と人体の性質に基づいて、キャリブレーション・パラメーターｑを推定する。本処理手順は、画像表示システム１００内の任意の装置２００〜５００で実施することができるが、以下では便宜上、描画装置４００で実施するものとして説明する。
【０１３１】
描画装置４００は、頭部動作追跡装置２００から送信されるユーザーの頭部の姿勢を表すクォータニオンｑHと、胴体動作追跡装置３００から送信されるユーザーの胴体の姿勢を表すクォータニオンｑBを、時系列データとして常時入力する（ステップＳ１５０１）。
【０１３２】
そして、下式（９）に従って、頭部動作追跡装置２００及び胴体動作追跡装置３００がそれぞれ新たに検出する姿勢情報のクォータニオンに基づいて、新規のキャリブレーション・クォータニオンｑ´を計算して、遂次記録する（ステップＳ１５０２）。
【０１３３】
【数９】
0006572893.tif 000010
【０１３４】
ユーザーの頭部と胴体が揃って正しく正面を向いている瞬間に検出されたクォータニオンｑH、ｑBによって算出されたキャリブレーション・クォータニオンｑ´は、正しいキャリブレーション・クォータニオンになる。そこで、本処理手順では、ユーザーの頭部及び胴体の姿勢を長期間測定すると、平均的には頭部と身体が揃って正しく正面を向いていることが多いという仮定に基づいて、ステップＳ１５０２で記録したキャリブレーション・クォータニオンｑ´の時系列の平均をとって、最終的なキャリブレーション・クォータニオンｑを計算して（ステップＳ１５０３）、出力する（ステップＳ１５０４）。
【０１３５】
図１３に示したように明示的な操作に応じてキャリブレーションが実施される場合と相違し、図１５に示す処理手順では、キャリブレーション・クォータニオンｑは固定値ではなく時々刻々変動し、ユーザーが立ったり座ったりといったセンサー部２０１、３０１への外乱要因を排除することができる。
【０１３６】
ステップＳ１５０２において、キャリブレーション・クォータニオンｑ´の時系列の平均化により、最終的なキャリブレーション・クォータニオンを更新する際、更新前のキャリブレーション・クォータニオンｑprevと、新規に計算したキャリブレーション・クォータニオンｑ´を補間して、更新後のキャリブレーション・クォータニオンｑupdatedを求める。
【０１３７】
姿勢を表すクォータニオンは、３次元球面上の１点として記述される。そこで、下式（１０）並びに図２２に示すように、クォータニオンｑprevとｑ´の間を３次元球面上で線形補間する球面線形補間Ｓｌｅｒｐにより、更新後のキャリブレーション・パラメーターｑupdatedを計算することができる。
【０１３８】
【数１０】
0006572893.tif 000011
【０１３９】
上式（１０）では、更新前のキャリブレーション・パラメーターｑprevを重み（１−δ）で、新規の計算値ｑ´をδで、それぞれ重み付けして、重み平均して更新後のキャリブレーション・パラメーターｑupdatedを求めている（外挿ではなく内挿）。例えば、重み係数δ＝０．０１である。初回だけは重み１でｑupdatedが更新される。このため、起動時にユーザーが正しい姿勢をとっていると（頭部と身体が揃って正しく正面を向いている）、収束が早い。
【０１４０】
Ｓｌｅｒｐの演算は、上式（１０）に示したように、２項関係でのみ定義される。このため、多数のクォータニオンを同時に扱って平均を計算するのには適さない（上述したように、クォータニオンｑupdatedを順次更新することはできる）。この問題を解決する（すなわち、多数のクォータニオンを同時に扱って平均を計算する）ために、対数空間での加算平均を考える。単位ベクトルｕを用いて、ｕ回りに角度θの回転を表すクォータニオンｑは、下式（１１）のように表すことができる。その対数をとると、下式（１２）に示す通りとなる。
【０１４１】
【数１１】
0006572893.tif 000012
【０１４２】
【数１２】
0006572893.tif 000013
【０１４３】
したがって、キャリブレーション・クォータニオンの時系列｛ｑ´｝を対数変換によって３次元空間に写像し、そこで加算平均などの代表値を算出した後、下式（１３）に示すように、指数変換によってクォータニオンに戻せばよい。なお、加算平均を計算する際、外れ値の除去など必要な処理を適宜行なうものとする。
【０１４４】
【数１３】
0006572893.tif 000014
【０１４５】
図１６には、図１４に示したフローチャート中のステップＳ１４２１で実施されるオート・キャリブレーションの他の処理手順をフローチャートの形式で示している。図示の処理手順では、一定期間の座標系の回転変位と人体の性質に基づいて、キャリブレーション・パラメーターｑを推定する。但し、ユーザーの頭部姿勢と胴体の姿勢が重力方向を共通軸として持っているケースを想定し、各センサー部２０１、３０１が重力方向を検出して自動キャリブレーションを行なう機能を持つことを前提とする。本処理手順は、画像表示システム１００内の任意の装置２００〜５００で実施することができるが、以下では便宜的に描画装置４００で実施するものとして説明する。
【０１４６】
描画装置４００は、頭部動作追跡装置２００から送信されるユーザーの頭部の姿勢を表すクォータニオンｑHと、胴体動作追跡装置３００から送信されるユーザーの胴体の姿勢を表すクォータニオンｑBを、時系列データとして常時入力する（ステップＳ１６０１）。
【０１４７】
ユーザーの頭部姿勢と胴体の姿勢が重力方向を共通軸として持っており、座標系のずれはθという１つパラメーターだけに集約される。そこで、ユーザーの頭部の姿勢を表すクォータニオンｑHとユーザーの胴体の姿勢を表すクォータニオンｑBの、重力方向を回転軸としたときの回転方向の角度差分θ（ｔ）を計算して、遂次記録する（ステップＳ１６０２）。
【０１４８】
そして、角度差分θ（ｔ）の平均値を算出して、その計算結果を、頭部動作追跡装置２００のセンサー部２０１と胴体動作追跡装置３００のセンサー部３０１の取り付け位置のずれ量であると推定する（ステップＳ１６０３）。
【０１４９】
そこで、重力方向と、角度差分θ（ｔ）の平均値に基づいて、キャリブレーション・クォータニオンｑを計算して（ステップＳ１６０４）、出力する（ステップＳ１６０５）。
【０１５０】
ステップＳ１６０４では、ユーザーの胴体の姿勢のクォータニオンｑBを頭部の姿勢のクォータニオンｑHと同じ座標系での表現に変換するためのキャリブレーション・クォータニオンを計算するものとする。
【０１５１】
図１６に示す処理手順では、キャリブレーション・クォータニオンｑは固定値ではなく時々刻々変動し、ユーザーが立ったり座ったりといったセンサー部２０１、３０１への外乱要因を排除することができる（同上）。
【０１５２】
なお、ステップＳ１６０３では、角度差分θ（ｔ）の単純平均を計算する以外にも、以下の（ｄ）〜（ｇ）のいずれかの計算方法を用いるようにしてもよい。
【０１５３】
（ｄ）度数分布の中央値
（ｅ）外れ値を除去した上での平均値
（ｆ）速度、加速度データを判定材料に併用
（ｇ）頭部回転の限界値を判定材料に併用
【０１５４】
（ｆ）として挙げた「速度、加速度データを判定材料に併用」は、自由視点空間内を一定範囲の速度・加速度で運動しているときのデータのみを使用する。また、長時間静止している場合は、サンプルに含めない。
【０１５５】
また、（ｇ）として挙げた「頭部回転の限界値を判定材料に併用」は、例えば、限界値θ＿ｔｈを仮に１２０度として、測定データ中の角度差分の最大値をθ＿ｍａｘ、最小値をθ＿ｍｉｎとすると、［θ＿ｍａｘ−θ＿ｔｈ，θ＿ｍｉｎ＋θ＿ｔｈ］の範囲のデータのみを使って、角度差分θ（ｔ）の平均を計算する。
【０１５６】
Ｄ．生体安全対応
ヘッド・マウント・ディスプレイなどの表示装置５００で提示する自由視点空間内で、ユーザーが注視点を初期位置から９０度以上動かして後方を見ようとする場合、ユーザーは以下の（Ａ）、（Ｂ）の２通りの動作を取り得る。
【０１５７】
（Ａ）頭部のみを９０度回転させる。
（Ｂ）体ごと９０度回転させる。
【０１５８】
ユーザーの頭部の姿勢のみを検出して自由視点画像を描画する場合、ユーザーが上記の（Ａ）又は（Ｂ）のうちいずれの動作を行なったかを判定することができない。動作（Ａ）は、無理な姿勢であり、人体への影響が懸念され、製品安全上の問題がある。
【０１５９】
これに対し、本実施形態に係る画像表示システム１００では、上述したように、頭部動作追跡装置２００で取得されるユーザーの頭部の姿勢情報ｑHとともに胴体動作追跡装置３００で取得されるユーザーの胴体の姿勢情報ｑBを利用するので、ユーザーが上記の（Ａ）又は（Ｂ）のうちいずれの動作を行なったかを判定することができる。そこで、動作の判定結果に基づいて、自由視点視聴に起因する頭部の不自然な視聴姿勢を軽減又は回避する仕組みを導入することができる。
【０１６０】
例えば、ユーザーの不自然な視聴姿勢を軽減又は回避する第１の方法として、ユーザーの頭部が正常な位置に戻るような画像表示を行なうようにしてもよい。ユーザーの頭部及び胴体の姿勢情報ｑH、ｑBから、首や胴体を極端に捻ったような、ユーザーにとって無理な姿勢を伴う動作（Ａ）の状態が一定時間続いたと判定されると、ユーザーには分からないゆっくりした速度で、ユーザーの頭部が胴体の正面方向を向く元の位置に戻るような画像表示を行なう。図１７には、画像の注視点１７０１を移動して、ユーザーの視線方向１７０２が胴体の正面方向を向く元の位置に戻るように、自由視点画像を移動させている様子を示している。
【０１６１】
図９、図１２、図１３、図１４に示した処理手順は、頭部動作追跡装置２００並びに胴体動作追跡装置３００で実際に検出された頭部姿勢ｑH、胴体姿勢ｑBをそのまま自由視点空間の世界座標系にマッピングして自由視点画像をレンダリングするものである。これに対し、ユーザーの不自然な視聴姿勢を軽減又は回避する第１の方法では、ユーザーが自由視点画像を視聴している際に、頭部が胴体に対し大きく捻じれるという無理な姿勢になった場合に、自由視点空間内の頭部姿勢ｑH*と胴体姿勢ｑB*の差分が小さくなるように自由視点空間の世界座標系を補正していくことで、現実空間においてもユーザーの頭部姿勢ｑHと胴体姿勢ｑBの差分が小さくなるように促す。
【０１６２】
若しくは、ユーザーの不自然な視聴姿勢を軽減又は回避する第２の方法として、頭部の動きへの追従（ヘッド・トラッキング）を自動的に解除するようにしてもよい。ユーザーにとって無理な姿勢を伴う動作（Ａ）の状態が一定時間続いたと判定されると、頭部の動きへの追従（ヘッド・トラッキング）を自動的に解除して、注視点を正面に表示したままユーザーの頭部が胴体の正面方向を向く元の姿勢に戻させ、新たな座標合わせを行なうようにする。また、ヘッド・トラッキングを自動で解除するのではなく、ボタンを押すなどユーザーの能動的な操作に応じて解除するようにしてもよい。
【０１６３】
ユーザーの不自然な視聴姿勢を軽減又は回避する第２の方法では、自由視点空間内の頭部姿勢をヘッド・トラッキングの解除が指示された時点で固定することによって、注視点を正面に表示したままにする。そして、ヘッド・トラッキングが解除されている期間中、頭部動作追跡装置２００が検出した頭部姿勢ｑHに応じて（すなわち、ユーザーが首を動かしたと同じ量だけ）、自由視点空間内の胴体の姿勢を変化させる。これによって、ユーザーの頭部が胴体の正面方向を向く元の姿勢に戻るように促す。
【０１６４】
図１８には、第１の方法によりユーザーの不自然な視聴姿勢を軽減又は回避する処理を含んだ、自由視点画像の描画処理手順をフローチャートの形式で示している。この処理は、自由視点空間の世界座標系を補正することにより実現される。図１８では図示を省略するが、世界座標系に対する補正を表すクォータニオンｑWの初期値を単位クォータニオンに設定しておく。
【０１６５】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ１８０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ１８０２）、送信部２０３から描画装置４００に送信する。
【０１６６】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ１８１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ１８１２）、送信部３０３から描画装置４００に送信する。
【０１６７】
描画装置４００は、頭部動作追跡装置２００から頭部の姿勢を表すクォータニオンｑHを受信するとともに、胴体動作追跡装置３００から胴体の姿勢を表すクォータニオンｑBを受信する。そして、キャリブレーション・パラメーターとしてのキャリブレーション・クォータニオンｑを取得し（ステップＳ１８２１）、胴体の姿勢を表すクォータニオンｑBをキャリブレーション・クォータニオンｑで補正して、補正後の胴体姿勢のクォータニオンｑ´Bを得る（ステップＳ１８１３）。
【０１６８】
キャリブレーション・クォータニオンｑは、頭部動作追跡装置２００がユーザーの頭部の姿勢を検出する座標系と胴体動作追跡装置３００がユーザーの胴体の姿勢を検出する座標系とを相互変換するためのパラメーターである（前述）。キャリブレーション・クォータニオンｑの取得方法は任意である。ステップＳ１８１３では、上式（６）に従って、キャリブレーション・クォータニオンｑを左から掛けることによって、胴体の姿勢を表すクォータニオンｑBを補正する。
【０１６９】
次いで、頭部動作追跡装置２００から受信した頭部姿勢のクォータニオンｑHと補正後の胴体姿勢のクォータニオンｑ´Bに基づいて、当該画像表示システム１００が生体安全対応モードか否かをモード判定する（ステップＳ１８３１）。モード判定の方法は任意である。例えば、以下の条件（Ｃ１）〜（Ｃ３）に従って、モード判定を行なうものとする。
【０１７０】
（Ｃ１）初期状態では生体安全対応モードをオフとする。
（Ｃ２）生体安全対応モードがオフで、ユーザーの頭部と胴体の姿勢の差分ψが第１の閾値ψth1を超えた状態が一定時間継続すると、生体安全対応モードをオンにする。
（Ｃ３）生体安全対応モードがオンのときに、ユーザーの頭部と胴体の姿勢の差分ψが第２の閾値ψth2を下回ると、生体安全対応モードをオフにする。
【０１７１】
ここで、上記の（Ｃ２）において、ユーザーの頭部と胴体の姿勢の差分ψは、頭部姿勢のクォータニオンｑHと補正後の胴体姿勢のクォータニオンｑ´Bを用いて、下式（１４）により計算することができる。
【０１７２】
【数１４】
0006572893.tif 000015
【０１７３】
上式（１４）により算出した頭部と胴体の姿勢の差分ψを、各閾値ψth1、ψth2と大小比較することで、生体安全対応モードに入るべきか否かを判定することができる。但し、上記の条件（Ｃ１）〜（Ｃ３）に従って、自動的に生体安全対応モードのオン／オフを切り換えるのではなく、ユーザーが自分の姿勢が苦しくなったときに能動的に（若しくはマニュアル操作で）生体安全対応モードのオン／オフを切り換えるようにしてもよい。
【０１７４】
そして、生体安全対応モード下では（ステップＳ１８３１のＹｅｓ）、自由視点空間内の頭部姿勢と胴体姿勢の差分が小さくなるように、自由視点空間の世界座標系に対して補正を行なう（ステップＳ１８３２）。また、生体安全対応モードでなければ（ステップＳ１８３１のＮｏ）、世界座標系の補正処理をスキップする。
【０１７５】
ステップＳ１８３２で行なう世界座標系の補正とは、世界座標系を少しずつ回転させて、頭部の姿勢を胴体の姿勢に近づける操作に相当する。世界座標系に対する補正を表すクォータニオンをｑWとすると、下式（１５）に示すように、胴体の姿勢に近づけるクォータニオンδを左から掛けることにより、世界座標系に対する補正クォータニオンｑWをアップデートする。なお、世界座標系に対する補正クォータニオンｑWの初期値は単位クォータニオンとする（前述）。
【０１７６】
【数１５】
0006572893.tif 000016
【０１７７】
また、胴体の姿勢に少しずつ近づけるクォータニオンδは、例えば下式（１６）に示すように、頭部姿勢と胴体姿勢の差分を表すクォータニオンをｎ分割したクォータニオンである。ここで言うｎは、ユーザーが観察して煩わしくない（若しくは、気づかない）程度にするための分割数である。あるいは、胴体の姿勢に少しずつ近づけるクォータニオンδは、例えば下式（１７）に示すように、頭部姿勢と胴体姿勢の差分を正規化したクォータニオンに微小なスカラーεを乗算したクォータニオンでもよい。
【０１７８】
【数１６】
0006572893.tif 000017
【０１７９】
【数１７】
0006572893.tif 000018
【０１８０】
上式（１６）を用いて世界座標系を補正すると、毎回補正量が変化するため、変化が大きいと不自然な動きとして観察されるおそれがある。これに対し、上式（１７）を用いて世界座標系を補正すると、毎回の補正量を一定にすることができる。
【０１８１】
そして、ステップＳ１８０２で算出した頭部の姿勢のクォータニオンｑHと、ステップＳ１８１３で補正した後の胴体の姿勢のクォータニオンｑ´Bの各々の左側からクォータニオンｑWを掛けて、自由視点空間内での頭部姿勢ｑH*び胴体姿勢ｑ´B*をそれぞれ補正することで（ステップＳ１８３３、Ｓ１８３４）、世界座標系を少しずつ回転させて、頭部の姿勢を胴体の姿勢に近づける操作を実施する。
【０１８２】
また、描画装置４００は、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ１８０３）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【０１８３】
次いで、描画処理部４０２では、世界座標系をクォータニオンｑWで補正した自由視点空間における胴体姿勢ｑ´B*に基づいて、入力された制御信号ｖに応じた移動量ΔB*を下式（１８）により計算する（ステップＳ１８０４）。但し、下式（１８）において、ｇは、速度又は変位量などを表す制御信号ｖから姿勢情報を表す補正後のクォータニオンｑ´B*に基づいて、自由視点空間内における移動量ΔB*を算出するための関数である（同上）。
【０１８４】
【数１８】
0006572893.tif 000019
【０１８５】
次いで、描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）に移動量ΔB*だけ移動した後の地点ｐB*を計算する（ステップＳ１８０５）。そして、補正後のユーザーの胴体の姿勢情報ｑB*に紐付けされた地点ｐB*を自由視点空間における視点位置とし、その視点位置ｐB*から補正後の頭部姿勢のクォータニオンｑH*で表される視線方向に見える画像ＩB*をレンダリングして（ステップＳ１８０６）、表示装置５００に表示出力する。ここで生成される自由視点画像ＩB*は、視点位置ｐB*及び視線方向ｑH*から見える画像を生成する関数ｆに基づいて生成される（同上）。
【０１８６】
なお、図１８に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【０１８７】
図１９及び図２０には、第１の方法によりユーザーの不自然な視聴姿勢を軽減又は回避する処理を含んだ、自由視点画像の描画処理手順をフローチャートの形式で示している。この処理は、自由視点空間の世界座標系を補正することにより実現される。図１９及び図２０では図示を省略するが、世界座標系に対する補正を表すクォータニオンｑWの初期値を単位クォータニオンに設定しておく。
【０１８８】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ１９０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ１９０２）、送信部２０３から描画装置４００に送信する。
【０１８９】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ１９１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ１９１２）、送信部３０３から描画装置４００に送信する。
【０１９０】
描画装置４００は、頭部動作追跡装置２００から頭部の姿勢を表すクォータニオンｑHを受信するとともに、胴体動作追跡装置３００から胴体の姿勢を表すクォータニオンｑBを受信する。そして、キャリブレーション・パラメーターとしてのキャリブレーション・クォータニオンｑを取得し（ステップＳ１９２１）、胴体の姿勢を表すクォータニオンｑBをキャリブレーション・クォータニオンｑで補正して、補正後の胴体姿勢のクォータニオンｑ´Bを得る（ステップＳ１９１３）。
【０１９１】
キャリブレーション・クォータニオンｑは、頭部動作追跡装置２００がユーザーの頭部の姿勢を検出する座標系と胴体動作追跡装置３００がユーザーの胴体の姿勢を検出する座標系とを相互変換するためのパラメーターである（前述）。キャリブレーション・クォータニオンｑの取得方法は任意である。ステップＳ１９１３では、上式（６）に従って、キャリブレーション・クォータニオンｑを左から掛けることによって、胴体の姿勢を表すクォータニオンｑBを補正する。
【０１９２】
次いで、当該画像表示システム１００が生体安全対応モードに入ったか否かを判定する（ステップＳ１９４１）。生体安全対応モードに入ったか否かは、例えば、上式（１４）に従って算出される頭部と胴体の姿勢の差分ψが所定の閾値を超えたか否かにより自動判別するようにしてもよい。あるいは、ユーザーが能動的に（若しくはボタンを押すなどのマニュアル操作により）ヘッド・トラッキングの解除を指示したか否かにより判別するようにしてもよい。
【０１９３】
ここで、生体安全対応モードに入ったときには（ステップＳ１９４１のＹｅｓ）、現在そのモードに入った瞬間か否かをさらにチェックし（ステップＳ１９４２）、入った瞬間のユーザーの頭部の姿勢ｑHをｑH0として保存する（ステップＳ１９４３）。
【０１９４】
そして、生体安全対応モードの期間中は、新しく検出・演算された頭部姿勢のクォータニオンｑHをｑH0に置き換えることで、自由視点空間内の頭部姿勢を固定することで、レンダリング時にヘッド・トラッキングされないようにする。また、ステップＳ１９１３で補正された後の胴体姿勢のクォータニオンｑ´Bを下式（１９）に従って置き換えることで、頭部動作追跡装置２００が検出する頭部姿勢ｑHの変化量だけ自由視点空間内の胴体の姿勢ｑ´Bを変化させるようにする（ステップＳ１９４４）。具体的には、胴体の姿勢ｑ´Bの左側から現在の頭部姿勢のクォータニオンｑHのインバース、ヘッド・トラッキングを解除した瞬間の頭部姿勢のクォータニオンｑH0を順に掛けて、頭部姿勢の変化を胴体の姿勢で補償する。
【０１９５】
【数１９】
0006572893.tif 000020
【０１９６】
一方、生体安全対応モードに入っていないときには（ステップＳ１９４１のＮｏ）、生体安全対応モードから出た瞬間か否かを判別する（ステップＳ１９４５）。そして、生体安全対応モードから出た瞬間であれば（ステップＳ１９４５のＹｅｓ）、生体安全対応モードの期間中における現実の頭部姿勢の変化を補償すべく、下式（２０）を用いて、世界座標系に対して補正を行なうクォータニオンｑWを更新する（ステップＳ１９４６）。具体的には、クォータニオンｑWの左側から現在の頭部姿勢のクォータニオンｑHのインバース、ヘッド・トラッキングを解除した瞬間の頭部姿勢のクォータニオンｑH0を順に掛けて、頭部姿勢の変化を胴体の姿勢で補償する。
【０１９７】
【数２０】
0006572893.tif 000021
【０１９８】
次いで、頭部の姿勢のクォータニオンｑHと、胴体の姿勢のクォータニオンｑ´Bの各々の左側からクォータニオンｑWを掛けて、自由視点空間内での頭部姿勢ｑH*び胴体姿勢ｑ´B*をそれぞれ補正することで（ステップＳ１９４７、Ｓ１９４８）、世界座標系を少しずつ回転させて、頭部の姿勢を胴体の姿勢に近づける操作を実施する。
【０１９９】
また、描画装置４００は、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ１９０３）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【０２００】
次いで、描画処理部４０２では、世界座標系をクォータニオンｑWで補正した自由視点空間における胴体姿勢ｑ´B*に基づいて、入力された制御信号ｖに応じた移動量ΔB*を上式（１８）により計算する（ステップＳ１９０４）。
【０２０１】
次いで、描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）に移動量ΔB*だけ移動した後の地点ｐB*を計算する（ステップＳ１９０５）。そして、補正後のユーザーの胴体の姿勢情報ｑB*に紐付けされた地点ｐB*を自由視点空間における視点位置とし、その視点位置ｐB*から補正後の頭部姿勢のクォータニオンｑH*で表される視線方向に見える画像ＩB*をレンダリングして（ステップＳ１９０６）、表示装置５００に表示出力する。ここで生成される自由視点画像ＩB*は、視点位置ｐB*及び視線方向ｑH*から見える画像を生成する関数ｆに基づいて生成される（同上）。
【０２０２】
なお、図１９及び図２０に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【０２０３】
このように、本実施形態に係る画像表示システム１００では、頭部動作追跡装置２００で取得されるユーザーの頭部の姿勢情報ｑHとともに胴体動作追跡装置３００で取得されるユーザーの胴体の姿勢情報ｑBを利用することによって、自由視点視聴に起因する頭部の不自然な視聴姿勢を軽減又は回避することができる。
【０２０４】
Ｅ．自由視点画像のメタ情報の表示
自由視点画像コンテンツとして、既存のＴＶ放送の他、自動車やラジコンなどの移動体装置に搭載された広角カメラで撮影した画像、一人称視点のゲーム画像などを挙げることができる。
【０２０５】
ユーザーは、視聴中の自由視点画像コンテンツに関わるメタ情報を参照したいことがある。ここで言うメタ情報として、コンテンツの再生位置や再生残り時間の情報、仮想空間内における現在の自分の位置を示す座標や地図の情報、ゲームにおいて自分が操作しているキャラクターの状態（例えば、対戦型ゲームにおける自己の疲労度や怪我の具合、武器や弾薬の残存数、これまでに獲得した戦利品、スコアなど）を挙げることができる。
【０２０６】
また、自由視点画像を視聴中のユーザーは、視界が外界から閉ざされ、又は、仮想世界に没入していることから、上述したようなメタ情報ではなく、現実世界の情報を参照したいことがある。現実世界の情報として、現在時刻やその他の環境情報、メールや電話の着信通知などを挙げることができる。
【０２０７】
このようなコンテンツのメタ情報や現実世界の情報を記載したＵＩ（Ｕｓｅ  ｒ  Ｉｎｔｅｒｆａｃｅ）部品を自由視点画像内に表示することで、ユーザーは自由視点画像の視聴を中断することなく、所望するメタ情報や現実世界の情報を確認することができる。
【０２０８】
このようなＵＩ部品を、ユーザーの頭部の姿勢のみを考慮して配置する、すなわち、頭部姿勢に基づいて定位した固定位置にＵＩ部品を配置すると、自由視点画像がユーザーの頭部姿勢すなわち視線方向に追従するだけでなく、ＵＩ部品が同じ場所に表示され続けることになる。
【０２０９】
ＵＩ部品が常に同じ場所に表示されると、ユーザーは視聴中いつでもメタ情報や現実世界の情報を確認することができる。しかしながら、頭部姿勢の動きに伴って自由視点画像が変化していくのに対し、ＵＩ部品が常に同じ場所にあるのは不自然であり、臨場感や没入感を大きく損なうことになる。また、ＵＩ部品が配置されている場所は、本来の自由視点画像の情報が掛けてしまうので、ユーザーに見え難さや、ゲームのプレイのし難さ感じさせてしまう。また、ユーザーは、メタ情報や現実世界の情報を見たくない時間帯もあり、ＵＩ部品が表示されていることで鬱陶しさを感じさせてしまうこともある。
【０２１０】
図２５並びに図２６には、頭部動作追跡装置２００から得られるユーザーの頭部姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示している。
【０２１１】
図２５に示す例では、ユーザーの頭部は正面を向いており、参照番号２５０１で示すように、ＵＩ部品はユーザーの頭部の正面方向に配置されるとする。したがって、この場合の自由視点画像２５００内には、参照番号２５０２で示すようにＵＩ部品が映る。
【０２１２】
また、図２６に示す例では、ユーザーはお辞儀をした格好であり、頭部は下方を向いている。この場合も、参照番号２６０１で示すように、ＵＩ部品はユーザーの頭部の正面方向に配置される。したがって、この場合の自由視点画像２６００内にも参照番号２６０２で示すようにＵＩ部品が映る。すなわち、ユーザーの頭部姿勢に拘わらず、ＵＩ部品は常に自由視点画像内に存在することになる。
【０２１３】
また、図２７並びに図２８には、頭部動作追跡装置２００から得られるユーザーの頭部姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の他の表示例を示している。
【０２１４】
図２７に示す例では、ユーザーの頭部は正面を向いており、参照番号２７０１で示すように、ＵＩ部品はユーザーの頭部の正面方向に配置されるとする。したがって、この場合の自由視点画像２７００内には、参照番号２７０２で示すようにＵＩ部品が映る。
【０２１５】
また、図２８に示す例では、ユーザーは左に振り向いた格好であり、頭部は左側を向いている。この場合も、参照番号２８０１で示すように、ＵＩ部品はユーザーの頭部の正面方向に配置される。したがって、この場合の自由視点画像２８００内にも参照番号２８０２で示すようにＵＩ部品が映る。すなわち、ユーザーの頭部姿勢に拘わらず、ＵＩ部品は常に自由視点画像内に存在することになる。
【０２１６】
一方、図２９並びに図３０には、胴体動作追跡装置３００から得られるユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の表示例を示している。
【０２１７】
図２９に示す例では、ユーザーの頭部は正面を向いているが、参照番号２９０１で示すように、ＵＩ部品はユーザーの胴体の正面方向に配置されるとする。したがって、この場合の自由視点画像２６００内にはＵＩ部品が存在しない。
【０２１８】
また、図３０に示す例では、ユーザーはお辞儀をした格好であり、頭部は下方を向いている。この場合も、参照番号３００１で示すように、ＵＩ部品はユーザーの胴体の正面方向に配置される。したがって、ユーザーが頭部を下方に向けることによって、自由視点画像３０００内には、参照番号３００２で示すようにＵＩ部品が出現する。
【０２１９】
すなわち、ユーザーが頭部を正面に向けた通常の姿勢ではＵＩ部品は隠れているが、頭部を下方に傾けることによって、自由視点画像内でＵＩ部品を表示させることができる。なお、立体的なＵＩ部品の場合には、ユーザーの胴体姿勢に基づいて固定位置に定位したＵＩ部品の姿勢を、ユーザーの頭部姿勢に合わせて正面に向くように姿勢を補正して、自由視点画像内に配置するようにしてもよい。
【０２２０】
また、図３１並びに図３２には、胴体動作追跡装置３００から得られるユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置した場合の自由視点画像の他の表示例を示している。
【０２２１】
図３１に示す例では、ユーザーの頭部は正面を向いているが、参照番号３１０１で示すように、ＵＩ部品はユーザーの胴体の左方向に配置されるとする。したがって、この場合の自由視点画像３１００内にはＵＩ部品が存在しない。
【０２２２】
また、図３２に示す例では、ユーザーは左に振り向いた格好であり、頭部は左側を向いている。この場合、参照番号３２０１で示すように、ＵＩ部品はユーザーの胴体の左方向に配置される。したがって、ユーザーが頭部を左に向けることによって、自由視点画像３２００内には、参照番号３２０２で示すようにＵＩ部品が出現する。
【０２２３】
すなわち、ユーザーが頭部を正面に向けた通常の姿勢ではＵＩ部品は隠れているが、左側に振り向くことによって、自由視点画像内でＵＩ部品を表示させることができる。なお、立体的なＵＩ部品の場合には、ユーザーの胴体姿勢に基づいて固定位置に定位したＵＩ部品の姿勢を、ユーザーの頭部姿勢に合わせて正面に向くように姿勢を補正して、自由視点画像内に配置するようにしてもよい。
【０２２４】
図２３には、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置して、自由視点画像を描画する処理手順をフローチャートの形式で示している。
【０２２５】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ２３０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ２３０２）、送信部２０３から描画装置４００に送信する。
【０２２６】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ２３１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ２３１２）、送信部３０３から描画装置４００に送信する。
【０２２７】
次いで、描画装置４００は、上述したコンテンツのメタ情報や現実世界の情報を入力すると（ステップＳ２３２１）、ユーザーの胴体の姿勢を表すクォータニオンｑBに基づくユーザーの胴体座標系上で定位される固定位置に、入力した情報を表示するＵＩ部品を配置する（ステップＳ２３１３）。次いで、描画処理部４０２は、ユーザーの胴体座標系上で配置したＵＩ部品を、ユーザーの頭部の姿勢を表すクォータニオンｑHに基づく頭部座標系上の位置及び姿勢に変換する（ステップＳ２３１４）。
【０２２８】
ここで、ｉ番目のＵＩ部品のユーザーの胴体座標系における位置をｐi、姿勢をｑiとすると、それぞれ下式（２１）及び（２２）に従って、ユーザーの頭部座標系における位置ｐ´i及び姿勢ｑ´iに変換することができる。
【０２２９】
【数２１】
0006572893.tif 000022
【０２３０】
【数２２】
0006572893.tif 000023
【０２３１】
但し、上式（２１）において、ｐBHは、ユーザーの頭部座標系の原点から見たユーザーの胴体座標系の原点の位置である。頭部や胴体部の位置情報を（姿勢情報に加えて）取得できる場合は、ｐBHに実際の計測値を使用してもよい。例えば、日本人の成人男性の平均値などを利用して、ｐBH＝（０ｍ，０ｍ，−０．７５ｍ）などと固定パラメーター化してもよい。
【０２３２】
また、上式（２２）の右辺のｑBｑH-1は、ユーザーの胴体部の姿勢を表すクォータニオンｑBの右側から頭部の姿勢を表すクォータニオンｑHのインバースを掛けたもので、胴体部座標系における物体（ＵＩ部品）の姿勢を頭部座標系における姿勢に変換するクォータニオンである。
【０２３３】
そして、描画処理部４０２は、ＵＩ部品が配置された自由視点空間をクォータニオンｑHで表される視線方向に見える画像をレンダリングして（ステップＳ２３１５）、表示装置５００に表示出力する。
【０２３４】
なお、図２３に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【０２３５】
また、図２３に示したフローチャートでは省略したが、Ｃ項で説明したキャリブレーション処理を適用して、頭部動作追跡装置２００が検出するユーザーの頭部姿勢の座標系と胴体動作追跡装置３００が検出するユーザーの胴体姿勢の座標系との対応付けを行なうようにしてもよい。
【０２３６】
図２４には、ユーザーの胴体姿勢に基づいて定位した固定位置にＵＩ部品を配置して、自由視点画像を描画する処理手順の他の例をフローチャートの形式で示している。図２４に示す処理手順は、自由視点空間におけるユーザーの視点位置をユーザーの胴体姿勢に基づいて制御する点で、図２３に示した処理手順とは相違する。
【０２３７】
頭部動作追跡装置２００内では、センサー部２０１がユーザーの頭部の姿勢を検出し（ステップＳ２４０１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの頭部の姿勢を表すクォータニオンｑHを演算して（ステップＳ２４０２）、送信部２０３から描画装置４００に送信する。
【０２３８】
また、胴体動作追跡装置３００内では、センサー部３０１がユーザーの胴体の姿勢を検出し（ステップＳ２４１１）、姿勢角演算部２０２は、その検出結果に基づいて、ユーザーの胴体の姿勢を表すクォータニオンｑBを演算して（ステップＳ２４１２）、送信部３０３から描画装置４００に送信する。
【０２３９】
次いで、描画装置４００は、上述したコンテンツのメタ情報や現実世界の情報を入力すると（ステップＳ２４２１）、ユーザーの胴体の姿勢を表すクォータニオンｑBに基づくユーザーの胴体座標系上で定位される固定位置に、入力した情報を表示するＵＩ部品を配置する（ステップＳ２４１３）。次いで、描画処理部４０２は、ユーザーの胴体座標系上で配置したＵＩ部品を、上式（２１）及び（２２）に従って、ユーザーの頭部の姿勢を表すクォータニオンｑHに基づく頭部座標系上の位置及び姿勢に変換する（ステップＳ２４１４）。
【０２４０】
また、描画装置４００には、速度又は変位量など自由視点空間内で移動するための制御信号ｖが入力される（ステップＳ２４３１）。例えば、描画装置４００でゲームなどの３次元画像を生成する場合には、ゲーム・コントローラーのジョイスティックなどの操作量に応じた制御信号ｖを入力することになる。また、スマートフォンに操作画面を表示させ、その操作画面をユーザーが操作することにより、制御信号ｖを入力するようにしてもよい。あるいは、外部に設置されたカメラなどを用いてユーザーの頭部の物理的な位置の移動を検出して、制御信号ｖとして入力するようにしてもよい。
【０２４１】
描画処理部４０２では、入力された制御信号ｖに応じて、自由視点空間における移動量ΔBを計算する（ステップＳ２４３２）。本処理ルーチンでは、胴体動作追跡装置３００から取得可能なユーザーの胴体の姿勢情報を利用するので、制御信号ｖはユーザーの胴体の姿勢情報ｑBに紐付けすることが可能であり、移動量ΔBは上式（４）に示したように求められる。
【０２４２】
次いで、描画処理部４０２は、自由視点空間内で、現在の地点からユーザーの胴体の姿勢ｑBの方向（すなわち、体の正面の方向）に移動量ΔBだけ移動した後の地点ｐBを計算する（ステップＳ２４３３）。
【０２４３】
そして、ユーザーの胴体の姿勢情報ｑBに紐付けされた地点ｐBを自由視点空間における視点位置とし、その視点位置ｐBからクォータニオンｑHで表される視線方向に見える画像をレンダリングして（ステップＳ２４１５）、表示装置５００に表示出力する。
【０２４４】
図２４に示した処理手順においても、ユーザーの頭部並びに胴体の姿勢を検出してから画像を表示するまでに生じる遅延時間を考慮して、画像のレンダリングを行なうようにしてもよい（同上）。
【０２４５】
なお、図２４に示したフローチャートでは省略したが、Ｃ項で説明したキャリブレーション処理を適用して、頭部動作追跡装置２００が検出するユーザーの頭部姿勢の座標系と胴体動作追跡装置３００が検出するユーザーの胴体姿勢の座標系との対応付けを行なうようにしてもよい。
【先行技術文献】
【特許文献】
【０２４６】
【特許文献１】特開２０１２−１４１４６１号公報
【特許文献２】特開平９−１０６３２２号公報
【特許文献３】特開２０１０−２５６５３４号公報
【産業上の利用可能性】
【０２４７】
以上、特定の実施形態を参照しながら、本明細書で開示する技術について詳細に説明してきた。しかしながら、本明細書で開示する技術の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。【０２４８】
本明細書では、ヘッド・マウント・ディスプレイで自由視点視聴及び視点移動環境を実現する実施形態を中心に説明してきたが、本明細書で開示する技術はその他のユース・ケースにも応用することができる。例えば、テレビやプロジェクターなどの大画面ディスプレイの前に座ってゲームをしているユーザーが頭部動作追跡装置２００並びに胴体動作追跡装置３００を着用して、テレビ内のゲーム画面において自由視点視聴及び視点移動環境を実現することができる。【０２４９】
本明細書で開示する技術は、没入型、シースルー型、ビデオ・シースルー型のうちいずれのヘッド・マウント・ディスプレイにも適用することができる。また、本明細書で開示する技術は、両眼式並びに単眼式いずれのヘッド・マウント・ディスプレイにも適用することができる。【０２５０】
要するに、例示という形態により本明細書で開示する技術について説明してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本明細書で開示する技術の要旨を判断するためには、特許請求の範囲を参酌すべきである。【０２５１】
なお、本明細書の開示の技術は、以下のような構成をとることも可能である。
（１）観察者の頭部姿勢に関する第１の情報及び前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信部と、
前記第１の情報及び前記第２の情報に基づいて、前記観察者の姿勢に対応した表示画像を生成する描画処理部と、
を具備する情報処理装置。
（２）前記受信部は、前記第２の情報として、少なくとも前記観察者の胴体の姿勢を受信し、
前記描画処理部は、前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位して、前記観察者の頭部の姿勢に追従する自由視点画像を生成する、
上記（１）に記載の情報処理装置。
（３）前記描画処理部は、前記自由視点空間における前記観察者の移動を指示する制御信号が入力されたときに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて定位した身体の向きを正面方向と認識して移動後の地点（視点位置）を求める、
上記（２）に記載の情報処理装置。
（４）前記描画処理部は、前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる姿勢に基づいて定位した固定位置に配置して、前記観察者の頭部姿勢に追従する自由視点画像を生成する、
上記（１）に記載の情報処理装置。
（５）前記受信部は、前記第２の情報として、少なくとも前記観察者の胴体の姿勢を受信し、
前記描画処理部は、前記第１の情報に基づいて自由視点空間における前記観察者の視線方向を定位するとともに、前記第２の情報から得られる前記観察者の胴体の姿勢に基づいて前記自由視点空間における前記観察者の身体の向き（視点位置）を定位し、且つ、前記観察者の胴体に姿勢に基づいて定位した固定位置に所定の画像部品を配置して、前記観察者の頭部の姿勢に追従する自由視点画像を生成する、
上記（１）に記載の情報処理装置。
（５−１）前記描画処理部は、前記自由視点画像に関わるメタ情報を含む前記画像部品を配置する、
上記（４）又は（５）のいずれかに記載の情報処理装置。
（６）キャリブレーション・パラメーターを取得するキャリブレーション処理部をさらに備え、
前記描画処理部は、キャリブレーション・パラメーターで補正した姿勢情報を用いて画像生成を実施する、
上記（１）乃至（５）のいずれかに記載の情報処理装置。
（７）前記キャリブレーション処理部は、前記第１の情報から得られる頭部の姿勢情報と、前記第２の情報から得られる第２の姿勢情報に基づいて、第２の姿勢情報を補正するためのキャリブレーション・パラメーターを計算し、前記キャリブレーション・パラメーターを用いて前記第２の姿勢情報を補正する、
上記（６）に記載の情報処理装置。
（８）前記キャリブレーション処理部は、前記頭部の姿勢情報と前記第２の姿勢情報を用いて前記第２の姿勢情報を前記頭部の姿勢情報に一致させるための姿勢変換パラメーターを前記キャリブレーション・パラメーターとして計算する、
上記（７）に記載の情報処理装置。
（９）姿勢情報はクォータニオンで表記され、
前記キャリブレーション処理部は、前記頭部の姿勢情報に前記第２の姿勢情報のクォータニオンのインバースを右から掛けて、第２の姿勢情報を補正するためのキャリブレーション・クォータニオンを計算し、
前記第２の姿勢情報のクォータニオンに前記キャリブレーション・クォータニオンを左から掛けて補正する、
上記（７）に記載の情報処理装置。
（１０）前記キャリブレーション処理部は、前記第１の情報から得られる頭部姿勢の座標系と前記第２の情報から得られる姿勢の座標系の一定期間の回転変位と、人体の性質に基づいて、前記第２の姿勢情報を補正するためのキャリブレーション・パラメーターを推定する、
上記（６）に記載の情報処理装置。
（１１）前記キャリブレーション処理部は、一定期間、前記第１の情報から得られる頭部の姿勢情報と前記第２の情報から得られる第２の姿勢情報に基づいて計算したキャリブレーション・パラメーターの時系列の平均を最終的なキャリブレーション・パラメーターとする、
上記（６）に記載の情報処理装置。
（１２）姿勢情報はクォータニオンで表記され、
前記キャリブレーション処理部は、新たに受信した第１の情報及び第２の情報からそれぞれ得られる姿勢情報のクォータニオンに基づいて新規に算出したキャリブレーション・クォータニオンと、時系列の平均で求めた直前のキャリブレーション・クォータニオンを球面線形補間して、キャリブレーション・クォータニオンを更新する、
上記（１１）に記載の情報処理装置。
（１２−１）姿勢情報はクォータニオンで表記され、
前記キャリブレーション処理部は、キャリブレーション・クォータニオンの時系列を対数変換によって３次元空間に写像し、そこで加算平均などの代表値を算出した後、指数変換によってクォータニオンに戻す、
上記（１１）に記載の画像表示装置。
（１３）前記第２の情報に基づいて前記観察者の胴体の姿勢が算出され、
前記キャリブレーション処理部は、新たに受信した第１の情報及び第２の情報からそれぞれ得られる頭部及び胴体部の姿勢情報の、重力方向を回転軸としたときの回転方向の角度差分の平均値を求め、重力方向と前記平均値にキャリブレーション・パラメーターを算出する、
上記（１１）に記載の情報処理装置。
（１４）前記描画処理部は、前記第１の情報から得られる頭部の姿勢と前記第２の情報から得られる胴体の姿勢の差分に基づいて、前記表示部の表示画像を処理する、
上記（１）に記載の情報処理装置。
（１５）生体安全対応モード下において、前記描画処理部は、前記自由視点空間内の頭部姿勢と胴体姿勢の差分が小さくなるように世界座標系を補正して、自由視点画像を生成する、
上記（２）又は（３）のいずれかに記載の情報処理装置。
（１６）前記描画処理部は、生体安全対応モードに入った時点で自由視点空間内の頭部姿勢を固定するとともに、前記生体安全対応モード下では前記頭部姿勢検出部が検出する頭部姿勢に応じて自由視点空間内の胴体の姿勢を変化させて、自由視点画像を生成する、
上記（２）又は（３）のいずれかに記載の情報処理装置。
（１７）前記第１の情報から得られる頭部の姿勢と前記第２の情報から得られる胴体の姿勢の差分が第１の閾値を超える状態が一定時間継続したときに前記生体安全対応モードに入り、前記差分が前記第１の閾値よりも小さい第２の閾値以下となったときに前記生体安全対応モードから出る、
上記（１５）又は（１６）のいずれかに記載の情報処理装置。
（１８）観察者の頭部姿勢に関する第１の情報及び前記観察者の頭部以外の身体の姿勢に関する第２の情報を受信する受信ステップと、
前記第１の情報及び前記第２の情報に基づいて、前記観察者の姿勢に対応した表示画像を生成する描画処理ステップと、
を有する情報処理方法。
（１９）観察者の頭部の姿勢を検出する頭部姿勢検出部の検出結果に基づいて前記観察者の頭部の姿勢情報を算出する頭部姿勢演算部、
前記観察者の頭部以外の身体の１以上の第２の部位の姿勢を検出する第２の姿勢検出部の検出結果に基づいて前記第２の部位の姿勢情報を算出する第２の姿勢演算部、
前記観察者の頭部の姿勢及び前記第２の部位の姿勢に基づいて、前記観察者の頭部又は顔部に固定される表示部に表示する画像を処理する描画処理部、
としてコンピューターを機能させるようにコンピューター可読形式で記述されたコンピューター・プログラム。
（２０）観察者の頭部又は顔部に固定される表示部と、
前記観察者の頭部の姿勢を検出する頭部姿勢検出部と、
前記観察者の頭部以外の身体の１以上の第２の部位の姿勢を検出する第２の姿勢検出部と、
前記観察者の頭部の姿勢及び前記第２の部位の姿勢に基づいて前記表示部の表示画像を処理する描画処理部と、
を具備する画像処理システム。
【符号の説明】
【０２５２】
１００…画像表示システム
２００…頭部動作追跡装置、２０１…センサー部
２０２…姿勢角演算部、２０３…送信部
３００…胴体動作追跡装置、３０１…センサー部
３０２…姿勢角演算部、３０３…送信部
４００…描画装置、４０１…受信部、４０２…描画処理部
４０３…送信部、４０４…画像ソース
５００…表示装置、５０１…受信部、５０２…表示部
【図１】
0006572893.tif 000024
【図２】
0006572893.tif 000025
【図３】
0006572893.tif 000026
【図４】
0006572893.tif 000027
【図５】
0006572893.tif 000028
【図６】
0006572893.tif 000029
【図７】
0006572893.tif 000030
【図８】
0006572893.tif 000031
【図９】
0006572893.tif 000032
【図１０】
0006572893.tif 000033
【図１１】
0006572893.tif 000034
【図１２】
0006572893.tif 000035
【図１３】
0006572893.tif 000036
【図１４】
0006572893.tif 000037
【図１５】
0006572893.tif 000038
【図１６】
0006572893.tif 000039
【図１７】
0006572893.tif 000040
【図１８】
0006572893.tif 000041
【図１９】
0006572893.tif 000042
【図２０】
0006572893.tif 000043
【図２１】
0006572893.tif 000044
【図２２】
0006572893.tif 000045
【図２３】
0006572893.tif 000046
【図２４】
0006572893.tif 000047
【図２５】
0006572893.tif 000048
【図２６】
0006572893.tif 000049
【図２７】
0006572893.tif 000050
【図２８】
0006572893.tif 000051
【図２９】
0006572893.tif 000052
【図３０】
0006572893.tif 000053
【図３１】
0006572893.tif 000054
【図３２】
0006572893.tif 000055