(57)【要約】【課題】パノラマ画像の生成から表示までにレイテンシが発生し、ヘッドマウントディスプレイを装着したユーザは酔いを感じることがある。【解決手段】遅延時間取得部７８０は、ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得する。動き量予測部７９０は、遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測する。欠損領域計算部８００は、移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求める。画像処理部７５０は、欠損領域を含む拡張領域の範囲で画像を生成する。【選択図】図４
2017215875.tif 000002
【特許請求の範囲】
【請求項１】
ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得する遅延時間取得部と、
前記遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測する動き量予測部と、
移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求める欠損領域計算部と、
前記欠損領域を含む拡張領域の範囲で前記画像を生成する画像生成部とを含むことを特徴とする画像生成装置。
【請求項２】
前記画像をクライアントに送信する画像提供部をさらに含み、
前記遅延時間には前記画像をクライアントに送信するために要する通信時間が含まれることを特徴とする請求項１に記載の画像生成装置。
【請求項３】
サーバとクライアントとがネットワークで接続された画像生成システムであって、
前記サーバは、
ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得する遅延時間取得部と、
前記遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測する動き量予測部と、
移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求める欠損領域計算部と、
前記欠損領域を含む拡張領域の範囲で前記画像を生成する画像生成部と、
前記画像をクライアント装置に送信する画像提供部とを含み、
前記クライアントは、
前記サーバから受信した前記画像を前記動き量に応じてずらす処理を行うリプロジェクション部を含むを特徴とする画像生成システム。
【請求項４】
ネットワークを介してサーバに接続されたクライアントに実装される画像生成装置であって、
ウェアラブルディスプレイを装着したユーザの視点位置および視線方向に関する情報を取得して前記サーバに送信する通信部と、
前記視点位置および視線方向の少なくとも一方の動き量に応じた欠損領域を含む拡張領域の範囲で生成された画像を前記サーバから受信し、受信した前記画像を前記動き量に応じてずらす処理を行った上で前記画像をウェアラブルディスプレイに提供するリプロジェクション部とを含むことを特徴とする画像生成装置。
【請求項５】
ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得するステップと、
前記遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測するステップと、
移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求めるステップと、
前記欠損領域を含む拡張領域の範囲で前記画像を生成するステップとを含むことを含むことを特徴とする画像生成方法。
【請求項６】
ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得する機能と、
前記遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測する機能と、
移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求める機能と、
前記欠損領域を含む拡張領域の範囲で前記画像を生成する機能とをコンピュータに実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像を生成する装置、システムおよび方法に関する。
【背景技術】
【０００２】
ゲーム機に接続されたヘッドマウントディスプレイ（ＨＭＤ）を頭部に装着して、ヘッドマウントディスプレイに表示された画面を見ながら、コントローラなどを操作してゲームプレイすることが行われている。ヘッドマウントディスプレイを装着すると、ヘッドマウントディスプレイに表示される映像以外はユーザは見ないため、映像世界への没入感が高まり、ゲームのエンタテインメント性を一層高める効果がある。また、ヘッドマウントディスプレイに仮想現実（Virtual Reality）の映像を表示させ、ヘッドマウントディスプレイを装着したユーザが頭部を回転させると、３６０度見渡せる全周囲の仮想空間が表示されるようにすると、さらに映像への没入感が高まり、ゲームなどのアプリケーションの操作性も向上する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
このようにヘッドマウントディスプレイにヘッドトラッキング機能をもたせて、ユーザの頭部の動きと連動して視点や視線方向を変えて仮想現実の映像を生成した場合、仮想現実の映像の生成から表示までにレイテンシがあるため、映像生成時に前提としたユーザの頭部の向きと、映像をヘッドマウントディスプレイに表示した時点でのユーザの頭部の向きとの間でずれが発生し、ユーザは酔ったような感覚に陥ることがある。また、サーバが生成した仮想現実の映像をネットワーク経由で受信してクライアントで表示する場合は、さらにネットワークの遅延が加わるため、映像の生成時と表示時の間のずれが大きくなる。
【０００４】
本発明はこうした課題に鑑みてなされたものであり、その目的は、画像の生成から表示までのレイテンシを考慮して画像を表示することのできる画像生成装置および画像生成方法を提供することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明のある態様の画像生成装置は、ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得する遅延時間取得部と、前記遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測する動き量予測部と、移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求める欠損領域計算部と、前記欠損領域を含む拡張領域の範囲で前記画像を生成する画像生成部とを含む。
【０００６】
本発明の別の態様は、画像生成システムである。この画像生成システムは、サーバとクライアントとがネットワークで接続された画像生成システムであって、前記サーバ装置は、ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得する遅延時間取得部と、前記遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測する動き量予測部と、移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求める欠損領域計算部と、前記欠損領域を含む拡張領域の範囲で前記画像を生成する画像生成部と、前記画像をクライアント装置に送信する画像提供部とを含む。前記クライアント装置は、前記サーバ装置から受信した前記画像を前記動き量に応じてずらす処理を行うリプロジェクション部を含むを特徴とする。
【０００７】
本発明のさらに別の態様は、画像生成装置である。この装置は、ネットワークを介してサーバに接続されたクライアントに実装される画像生成装置であって、ウェアラブルディスプレイを装着したユーザの視点位置および視線方向に関する情報を取得して前記サーバに送信する通信部と、前記視点位置および視線方向の少なくとも一方の動き量に応じた欠損領域を含む拡張領域の範囲で生成された画像を前記サーバから受信し、受信した前記画像を前記動き量に応じてずらす処理を行った上で前記画像をウェアラブルディスプレイに提供するリプロジェクション部とを含む。
【０００８】
本発明のさらに別の態様は、画像生成方法である。この方法は、ある時刻における視点位置から視線方向に見える画像を描画してから表示するまでに要する遅延時間を取得するステップと、前記遅延時間の間の視点位置および視線方向の少なくとも一方の動き量を予測するステップと、移動後の視点位置および視線方向で定まる表示範囲に表示される画像に生じる欠損領域を前記動き量にもとづいて求めるステップと、前記欠損領域を含む拡張領域の範囲で前記画像を生成するステップとを含むことを含む。
【０００９】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１０】
本発明によれば、画像の生成から表示までのレイテンシを考慮して画像を表示することができる。
【図面の簡単な説明】
【００１１】
【図１】ヘッドマウントディスプレイの外観図である。
【図２】ヘッドマウントディスプレイの機能構成図である。
【図３】本実施の形態に係る画像生成システムの構成図である。
【図４】本実施の形態に係る画像生成装置の機能構成図である。
【図５】ヘッドマウントディスプレイに表示される全周囲画像を説明する図である。
【図６】ヘッドマウントディスプレイに表示される全周囲画像に遅れが生じる理由を説明する図である。
【図７】図７（ａ）および図７（ｂ）は、リプロジェクションを説明する図である。
【図８】図８（ａ）〜図８（ｃ）は、描画領域を拡張する方法を説明する図である。
【図９】図９（ａ）および図９（ｂ）は、拡張された描画領域を利用する方法を説明する図である。
【図１０】本実施の形態に係る画像生成装置による描画領域拡張処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１２】
図１は、ヘッドマウントディスプレイ１００の外観図である。ヘッドマウントディスプレイ１００は、ユーザの頭部に装着してディスプレイに表示される静止画や動画などを鑑賞し、ヘッドホンから出力される音声や音楽などを聴くための表示装置である。
【００１３】
ヘッドマウントディスプレイ１００に内蔵または外付けされたジャイロセンサや加速度センサなどによりヘッドマウントディスプレイ１００を装着したユーザの頭部の位置情報と頭部の回転角や傾きなどの姿勢情報を計測することができる。
【００１４】
ヘッドマウントディスプレイ１００には、さらに、ユーザの目を撮影するカメラが設けられてもよい。ヘッドマウントディスプレイ１００に搭載されたカメラにより、ユーザの凝視方向、瞳孔の動き、瞬きなどを検出することができる。
【００１５】
ヘッドマウントディスプレイ１００は、「ウェアラブルディスプレイ」の一例である。ここでは、ヘッドマウントディスプレイ１００に表示される画像の生成方法を説明するが、本実施の形態の画像生成方法は、狭義のヘッドマウントディスプレイ１００に限らず、めがね、めがね型ディスプレイ、めがね型カメラ、ヘッドフォン、ヘッドセット（マイクつきヘッドフォン）、イヤホン、イヤリング、耳かけカメラ、帽子、カメラつき帽子、ヘアバンドなどを装着した場合にも適用することができる。
【００１６】
図２は、ヘッドマウントディスプレイ１００の機能構成図である。
【００１７】
制御部１０は、画像信号、センサ信号などの信号や、命令やデータを処理して出力するメインプロセッサである。入力インタフェース２０は、ユーザからの操作信号や設定信号を受け付け、制御部１０に供給する。出力インタフェース３０は、制御部１０から画像信号を受け取り、ディスプレイに表示させる。バックライト３２は、液晶ディスプレイにバックライトを供給する。
【００１８】
通信制御部４０は、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、制御部１０から入力されるデータを外部に送信する。通信制御部４０は、また、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、外部からデータを受信し、制御部１０に出力する。
【００１９】
記憶部５０は、制御部１０が処理するデータやパラメータ、操作信号などを一時的に記憶する。
【００２０】
姿勢センサ６４は、ヘッドマウントディスプレイ１００の位置、回転角や傾きなどの姿勢情報を検出する。姿勢センサ６４は、ジャイロセンサ、加速度センサ、角加速度センサなどを適宜組み合わせて実現される。３軸地磁気センサ、３軸加速度センサおよび３軸ジャイロ（角速度）センサの少なくとも１つ以上を組み合わせたモーションセンサを用いて、ユーザの頭部の前後、左右、上下の動きを検出してもよい。
【００２１】
外部入出力端子インタフェース７０は、ＵＳＢ（Universal Serial Bus）コントローラなどの周辺機器を接続するためのインタフェースである。外部メモリ７２は、フラッシュメモリなどの外部メモリである。
【００２２】
時計部８０は、制御部１０からの設定信号によって時間情報を設定し、時間データを制御部１０に供給する。
【００２３】
制御部１０は、画像やテキストデータを出力インタフェース３０に供給してディスプレイに表示させたり、通信制御部４０に供給して外部に送信させることができる。
【００２４】
図３は、本実施の形態に係る画像生成システムの構成図である。ヘッドマウントディスプレイ１００は、無線通信またはＵＳＢなどの周辺機器を接続するインタフェース３００でゲーム機やパーソナルコンピュータ、携帯端末などのクライアント２００に接続される。クライアント２００は、さらにネットワーク６００を介してサーバ４００に接続される。サーバ４００はクラウドサービスを提供することができる。サーバ４００は一台に限らず、複数台あってもよく、複数台のサーバ４００が分散処理により一つのタスクを実行してもよい。
【００２５】
サーバ４００は、ネットワーク６００を介して複数のクライアント２００に仮想現実の映像を送信することができる。複数のユーザは、それぞれのクライアント２００に接続されたヘッドマウントディスプレイ１００を装着してそれぞれの視点から仮想現実の映像を閲覧する。
【００２６】
図４は、本実施の形態に係る画像生成装置７００の機能構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。
【００２７】
クライアント２００をサーバ４００に接続するサーバクライアントシステムの場合、画像生成装置７００はサーバ４００に実装される。クライアント２００をサーバ４００に接続せずに単体で利用するスタンドアロンシステムの場合は、画像生成装置７００はクライアント２００に実装される。サーバクライアントシステムの場合、画像生成装置７００の一部の機能構成をサーバ４００に実装し、残りの機能構成をクライアント２００に実装してもよい。サーバクライアントシステム、スタンドアロンシステムのいずれの場合にも、画像生成装置７００の少なくとも一部の機能をヘッドマウントディスプレイ１００の制御部１０に実装してもよい。
【００２８】
ズーム指示取得部７１０は、ヘッドマウントディスプレイ１００の入力インタフェース２０を介してユーザが指示するズームの倍率を取得する。ズーム指示取得部７１０が取得したズーム倍率は感度調整部７２０と画像処理部７５０に供給される。
【００２９】
位置・回転情報取得部７３０は、ヘッドマウントディスプレイ１００の姿勢センサ６４により検知される姿勢情報にもとづいて、ヘッドマウントディスプレイ１００を装着したユーザの頭部の位置と回転に関する情報を取得する。
【００３０】
位置・回転情報取得部７３０は、感度調整部７２０から指示された感度にもとづいて、ユーザの頭部の位置と回転を取得する。たとえば、ユーザが首を回すと、姿勢センサ６４によりユーザの頭部の角度の変化が検出されるが、感度調整部７２０は、角度の変化が所定の値を超えるまでは検出された角度の変化を無視するように位置・回転情報取得部７３０に指示する。
【００３１】
また、感度調整部７２０は、ズーム指示取得部７１０から取得されたズーム倍率にもとづいて頭部の角度検出の感度を調整する。ズーム倍率が大きくなるほど、頭部の角度検出の感度を下げる。ズームすると、画角が小さくなるため、頭部の角度検出感度を下げることで頭部の揺れによる表示画像の振動を抑えることができる。
【００３２】
座標変換部７４０は、位置・回転情報取得部７３０により取得されたヘッドマウントディスプレイ１００の位置および回転を用いて、トラッキング機能付きのヘッドマウントディスプレイ１００に表示すべき画像を生成するための座標変換を行う。
【００３３】
画像処理部７５０は、画像記憶部７６０から画像データを読み出し、座標変換部７４０による座標変換にしたがって、ヘッドマウントディスプレイ１００を装着したユーザの視点位置から視線方向に見える画像を、ズーム指示取得部７１０から指定されたズーム倍率で生成し、画像提供部７７０に与える。ここで、画像データは、事前に作成された動画または静止画コンテンツであってもよく、レンダリングされたコンピュータグラフィックスであってもよい。
【００３４】
遅延時間取得部７８０は、ある時刻での視点位置から視線方向に見える画像を描画してからヘッドマウントディスプレイ１００に表示するまでに要する遅延時間を取得する。この遅延時間には描画処理に要する時間の他、画像データをネットワークで送信するのに要する時間が含まれる。遅延時間取得部７８０は、３次元描画ハードウェア性能と、リアルタイムに測定されるネットワーク利用帯域にもとづいて遅延時間を求める。
【００３５】
動き量予測部７９０は、位置・回転情報取得部７３０から取得されるヘッドマウントディスプレイ１００の位置および回転の変化量にもとづいて、遅延時間取得部７８０により求められた遅延時間の間の視点位置と視線方向の動き量を予測する。動き量予測部７９０は、ヘッドマウントディスプレイ１００を装着したユーザの頭部の並進速度や角速度に遅延時間を乗じることで視点位置や視線方向の動き量を求めることができる。
【００３６】
欠損領域計算部８００は、視点位置および視線方向が動いた後のヘッドマウントディスプレイ１００のカメラ画角の表示範囲に表示される画像に生じる欠損領域を視点位置と視線方向の動き量にもとづいて求める。
【００３７】
画像処理部７５０は、欠損領域計算部８００から欠損領域を指定された場合は、欠損範囲を含む拡張領域の範囲でユーザの視点位置から視線方向に見える画像を生成する。ユーザの視点位置や視線方向に動きがなく、欠損領域計算部８００から欠損領域を指定されない場合は、通常の描画範囲でユーザの視点位置から視線方向に見える画像を生成する。
【００３８】
画像提供部７７０は、画像処理部７５０により生成された画像データをヘッドマウントディスプレイ１００に供給する。
【００３９】
図５は、ヘッドマウントディスプレイ１００に表示される全周囲画像５００を説明する図である。全周囲画像５００に対して、ユーザが左前方を向いている場合、ヘッドマウントディスプレイ１００ａの方向で画角１５０ａの範囲にある画像５１０ａが表示され、ユーザが首を回して右前方を向いている場合、ヘッドマウントディスプレイ１００ｂの方向で画角１５０ｂの範囲にある画像５１０ｂが表示される。
【００４０】
このように頭部の動きに応じてヘッドマウントディスプレイ１００に表示される全周囲画像を見る視点位置と視線方向も変わるため、全周囲画像に対する没入感を高めることができる。
【００４１】
図６は、ヘッドマウントディスプレイ１００に表示される全周囲画像に遅れが生じる理由を説明する図である。ユーザが首を回して右前方を向いた場合、ヘッドマウントディスプレイ１００ｂの方向で画角１５０ｂの範囲にある画像５１０ｂを生成し、ヘッドマウントディスプレイ１００に表示するが、画像５１０ｂの表示の時点では、既にヘッドマウントディスプレイ１００ｂの位置と回転が符号１５０ｃで示すように変化している。そのため、本来は画角１５０ｃの範囲で見える画像をヘッドマウントディスプレイ１００ｃに表示する必要があるが、実際に生成されて表示される画像は、少し前の時点のヘッドマウントディスプレイ１００ｂの方向で画角１５０ｂの範囲で見える画像となってしまう。この時間差によるずれのため、ユーザが見ている方向とは少しずれた画像がヘッドマウントディスプレイ１００に表示され、ユーザはある種の「酔い」を感じることがある。
【００４２】
このように、ヘッドマウントディスプレイ１００の回転を検知し、次の描画範囲を確定し、ＣＰＵが描画コマンドを発行し、ＧＰＵ（Graphics Processing Unit）がレンダリングを実行し、描画された画像がヘッドマウントディスプレイ１００に出力されるまでには時間がかかる。描画がたとえば６０ｆｐｓ（フレーム／秒）のフレームレートで行われているとすると、ＣＰＵが十分高速であったとしても、ヘッドマウントディスプレイ１００の回転を検知してから画像を出力するまでに１フレーム分の遅れが生じる。これはフレームレート６０ｆｐｓのもとでは、１６．６７ミリ秒ほどであり、人間がずれを感知するには十分な時間である。
【００４３】
そこで、従来は、「タイムワープ」または「リプロジェクション」と呼ばれる処理を行うことで人間がずれを感知しにくいようにしている。以下、「リプロジェクション」について説明した後、本実施の形態の描画領域拡張による描画遅延体感低減方法を説明する。
【００４４】
図７（ａ）および図７（ｂ）は、リプロジェクションを説明する図である。図７（ａ）は、視点９００から仮想空間を見るときの視錐台９１０を示す。図７（ａ）では視錐台９１０で規定される表示範囲に画像９２０が表示されている。しかしながらユーザが頭部を右に回転させ、視点９００が右に移動していた場合、生成された画像９２０を視錐台９１０で規定される表示範囲にそのまま描画すると、図６で説明したようにユーザはずれを感知してしまう。
【００４５】
頭部を右に移動させると、目の前の画像は右から左に、より正確に言えば左下に流れていくはずである。そこで、図７（ｂ）に示すように、生成された画像９２０を本来表示される位置よりも左下にずらした位置に表示し、その後、視錐台９１０で規定される本来の表示範囲に正しい画像を遅れて描画する。この処理をリプロジェクションと呼んでいる。リプロジェクションにより、画像が頭部の動きに瞬時に追従しないために人間が感じる違和感を抑えることができる。
【００４６】
しかし、特にサーバクライアントシステムでヘッドマウントディスプレイ１００に描画する場合、描画処理にかかる時間に通信時間がさらに加わり、遅延が大きくなるため、リプロジェクションによる遅延対策だけでは違和感を十分に低減することができなくなる。生成された画像９２０を本来表示される位置からずらした位置に表示した後、視錐台９１０で規定される本来の表示範囲に正しい画像を描画するが、この正しい画像の描画が通信トラフィックの影響でさらに遅延するからである。そこで、本実施の形態では、描画領域を拡張することによって、ユーザが体感する遅延を低減する。
【００４７】
図８（ａ）〜図８（ｃ）は、描画領域を拡張する方法を説明する図である。図８（ａ）は視点９００が停止している場合に、視錐台９１０で規定される表示範囲に画像９２０が表示されている様子を示す。図８（ｂ）に示すように、視点９００が移動している場合は、生成された画像９２０を視点移動後の視錐台９１０で規定される表示範囲からずらして表示する。この場合、符号９３０で示される領域には描画された画像データが存在せず、表示範囲に表示される画像に欠損領域が生じる。そこで、図８（ｃ）に示すように、欠損領域９３０を含む拡張領域９４０を設定し、拡張領域９４０を描画領域として画像データを生成する。
【００４８】
図９（ａ）および図９（ｂ）は、拡張された描画領域を利用する方法を説明する図である。図９（ａ）は視点９００が停止している場合に、拡張領域９４０に描画された画像の一部が視錐台９１０で規定される表示範囲に表示されている様子を示す。図９（ｂ）に示すように、視点９００が右に移動すると、視点移動後の視錐台９１０で規定される表示範囲が右上にずれる、言い換えれば、生成された画像が左下にずれる。しかし、画像が生成される拡張領域９４０は、視点移動後の視錐台９１０の表示範囲を含むように設定されているため、視点移動後の視錐台９１０の表示範囲に表示される画像には欠損領域が生じることがない。
【００４９】
このように視点９００の移動に合わせてリプロジェクションが行われても、生成される画像は拡張領域９４０の範囲に広く描画されているので、表示される画像に欠損領域が生じることがない。その後、視点移動後の視錐台９１０の表示範囲に本来表示されるべき画像を描画して遅れて表示すればよいから、ユーザが体感する遅延を隠蔽することができる。
【００５０】
図１０は、画像生成装置７００による描画領域拡張処理の手順を示すフローチャートである。
【００５１】
サーバ４００は３次元描画ハードウェア性能などの初期設定時に決まるパラメータを取得し、遅延計測用パラメータとして記憶部に保存する（Ｓ１０）。３次元描画ハードウェア性能には、ＧＰＵのプロセッサ速度、ＣＰＵのプロセッサ速度、メモリサイズ、メモリ帯域などが含まれる。
【００５２】
クライアント２００はヘッドマウントディスプレイ１００の表示解像度、カメラ画角、ヘッドマウントディスプレイ１００を装着したユーザの頭部の動きを取得する時間間隔などの初期設定時に決まるパラメータを取得し、サーバに送信する。サーバは受信した頭部の動きを取得する時間間隔を動き予測用パラメータとして記憶部に保存し、受信した表示解像度やカメラ画角を表示範囲決定用パラメータとして記憶部に保存する（Ｓ１２）。
【００５３】
クライアント２００はユーザの頭部の動きの移動量や速度などのリアルタイム測定値を取得し、サーバに送信し、サーバは受信したリアルタイム測定値を動き予測用パラメータとして記憶部に保存する（Ｓ１４）。
【００５４】
サーバ４００の通信部はネットワークの通信速度を計測して遅延計測用パラメータとして記憶部に保存する（Ｓ１６）。
【００５５】
サーバ４００の遅延時間取得部７８０は、記憶部に保存された遅延計測用パラメータから描画処理と描画結果の送信にかかる時間を遅延時間として計算する（Ｓ１８）。ここで利用される遅延計測用パラメータは、ネットワーク帯域、３次元描画ハードウェア性能などである。
【００５６】
サーバ４００の動き量予測部７９０は、記憶部に保存された動き予測用パラメータから遅延時間の間のユーザの頭部の動き量を計算する（Ｓ２０）。ここで利用される動き予測用パラメータは、ユーザの頭部の動きを取得する時間間隔、頭部の動きの角速度、並進速度などである。
【００５７】
サーバ４００の欠損領域計算部８００は、表示範囲決定用パラメータと頭部の動き量にもとづいて、頭部の移動後の表示範囲に表示される画像の欠損領域を計算する（Ｓ２２）。頭部が移動すると表示範囲も移動し、描画される画像に欠損領域が生じる。
【００５８】
サーバ４００の欠損領域計算部８００は、欠損領域を含む拡張領域の範囲で画像を描画する（Ｓ２４）。サーバ４００は、拡張領域の範囲の描画結果をクライアント２００に送信する（Ｓ２６）。
【００５９】
クライアント２００は、リプロジェクション処理を行い、受信した拡張領域の描画結果から移動後の視点位置から視線方向に見える部分を切り出してヘッドマウントディスプレイ１００に出力する（Ｓ２８）。リプロジェクションによる画像の移動で本来欠損が生じる領域があらかじめ拡張領域として描画されているため、移動後の視点位置から視線方向に見える部分を描画結果から切り出しても画像に欠損部分が生じることはない。
【００６０】
ユーザの頭部に動きがあれば（Ｓ３０のＹ）、ステップＳ１４に戻り、それ以降の処理を繰り返す。ユーザの頭部に動きがなければ（Ｓ３０のＮ）、描画領域拡張処理を終了し、通常の描画処理に戻る。
【００６１】
上記のフローチャートでは、サーバクライアントシステムの場合を説明したが、クライアント２００をサーバ４００に接続せずに単体で利用する場合は、上記の遅延時間にはクライアント２００が描画処理にかかる時間が含まれるが、通信にかかる時間が含まれない点を除き、同様の描画領域拡張処理を適用することができる。
【００６２】
以上述べたように、本実施の形態の画像生成装置７００によれば、ユーザの頭部の移動によってヘッドマウントディスプレイ１００の視野に描画される画像に欠損が生じないようにあらかじめ欠損領域を予測し、描画領域を拡張する。その結果、描画処理や通信による遅延があっても、描画される画像に欠損が生じず、ユーザは遅延を知覚しにくくなり、酔いを防止することができる。
【００６３】
以下、いくつかのユースケースを説明する。第１のユースケースは、クラウドサーバ上で描画を実行し、クライアントに描画結果を送信する形態である。クラウドサーバ上ではユーザの手元にあるデバイスよりも高性能なハードウェアを用意することが可能であるため、描画領域を拡張してもユーザの手元のデバイスと比べて負荷なく描画処理を実行することができる。
【００６４】
第２のユースケースは、ネットワーク上の複数の外部機器に処理を分散して描画を行い、クライアントに描画結果を送信する形態である。ネットワークに接続された外部機器が描画処理の一部を分担し、描画結果がユーザの手元のデバイスに集約され、合成されて出力される。拡張領域を描画する際、拡張領域を分割して複数の外部機器に処理を分担させてもよい。複数台の外部機器が描画処理を分担して実行することで、描画領域を拡張してもユーザの手元のデバイスと比べて負荷なく描画処理を実行することができる。
【００６５】
第３のユースケースは、ネットワークに接続せずにユーザの手元にあるデバイスが描画領域を拡張して描画を行う形態である。ユーザの手元のデバイスに十分な３次元描画性能があれば、描画領域拡張処理により、描画処理にかかる遅延を隠蔽した描画出力が可能である。
【００６６】
第４のユースケースは、３６０度全周囲の動画コンテンツの再生をクラウドサーバで実行し、ユーザーの視線方向に見える領域のみを切り出して、クライアントに送信する形態である。例えば、４Ｋ解像度、８Ｋ解像度などの高解像度のコンテンツの再生には高性能ハードウェアが必要となり、クラウドサービスのようなユーザの手元にある端末よりも高性能のハードウェアを提供する環境が必要になる。
【００６７】
４Ｋ解像度、８Ｋ解像度などの高解像度のコンテンツをすべてクライアントに送信するには、非常に高帯域なネットワーク通信が必要となる。そこで、ユーザの視線方向に見える領域のみを切り出してクライアントに送信することでクラウドサービスの能力を利用しつつ、必要となるネットワーク帯域を低減することができる。しかし、再生される動画の一部の領域しか、クライアントには送信されないため、視点が移動するとリプロジェクション処理が必要となり、欠損領域が生じる。そこで、３６０度動画から切り出す範囲を拡張することで、３６０度動画コンテンツの再生においても欠損を生じないようにして遅延を隠蔽することができる。
【００６８】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。そのような変形例を説明する。
【符号の説明】
【００６９】
１０  制御部、  ２０  入力インタフェース、  ３０  出力インタフェース、  ３２  バックライト、  ４０  通信制御部、  ４２  ネットワークアダプタ、  ４４  アンテナ、  ５０  記憶部、  ６４  姿勢センサ、  ７０  外部入出力端子インタフェース、  ７２  外部メモリ、  ８０  時計部、  １００  ヘッドマウントディスプレイ、  ２００  クライアント、  ３００  インタフェース、  ４００  サーバ、  ５００  全周囲画像、  ６００  ネットワーク、  ７００  画像生成装置、  ７１０  ズーム指示取得部、  ７２０  感度調整部、  ７３０  位置・回転情報取得部、  ７４０  座標変換部、  ７５０  画像処理部、  ７６０  画像記憶部、  ７７０  画像提供部、  ７８０  遅延時間取得部、  ７９０  動き量予測部、  ８００  欠損領域計算部。
【図１】
2017215875.tif 000003
【図２】
2017215875.tif 000004
【図３】
2017215875.tif 000005
【図４】
2017215875.tif 000006
【図５】
2017215875.tif 000007
【図６】
2017215875.tif 000008
【図７】
2017215875.tif 000009
【図８】
2017215875.tif 000010
【図９】
2017215875.tif 000011
【図１０】
2017215875.tif 000012