(57)【要約】  通信帯域を逼迫させることなくユーザが所望の視野範囲に応じた高品質な画像を得ることができる画像送信装置、情報処理端末、画像送信方法、情報処理方法、プログラム及び情報記憶媒体を提供する。パノラマ画像取得部（３４）は、画像を取得する。視野範囲データ受付部（３６）は、視野範囲に対応付けられる視野範囲データをクライアント（１４）から受け付ける。クリップ画像送信部（４０）は、取得する画像の一部に基づいて生成される画像である、受け付ける視野範囲データに対応付けられる視野範囲に応じた画像を、クライアント（１４）に送信する。
2015122052.tif 000002
【特許請求の範囲】
【請求項１】
画像を取得する画像取得部と、
視野範囲に対応付けられる視野範囲データを情報処理端末から受け付ける視野範囲データ受付部と、
取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信する送信部と、
を含むことを特徴とする画像送信装置。
【請求項２】
前記画像取得部は、前記送信部が送信する画像にそれぞれが対応付けられる複数の画像を取得し、
前記視野範囲データ受付部は、複数のタイミングについての視野範囲に対応付けられる前記視野範囲データを受け付け、
前記送信部は、それぞれが対応付けられる取得する前記画像の一部に基づいて生成される画像であり、対応付けられるタイミングについての前記視野範囲データに対応付けられる視野範囲に応じた画像である複数の画像を、フレーム画像として含む動画像を前記情報処理端末に送信する、
ことを特徴とする請求項１に記載の画像送信装置。
【請求項３】
前記画像取得部は、動画像を取得し、
前記送信部は、それぞれ取得する前記動画像に含まれるフレーム画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像をフレーム画像として含む動画像を、前記情報処理端末に送信する、
ことを特徴とする請求項１に記載の画像送信装置。
【請求項４】
前記視野範囲データ受付部は、複数の情報処理端末のそれぞれから前記視野範囲データを受け付け、
取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を生成するクリップ画像生成部、をさらに含み、
前記送信部は、生成される前記画像を当該画像に対応付けられる前記視野範囲データの送信元の前記情報処理端末に送信し、
前記視野範囲データの受付及び前記画像の送信は、前記視野範囲データの送信元である前記情報処理端末毎に並列的に実行される、
ことを特徴とする請求項１から３のいずれか一項に記載の画像送信装置。
【請求項５】
取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信する視野範囲データ送信部と、
取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付ける受付部と、
を含むことを特徴とする情報処理端末。
【請求項６】
画像を取得するステップと、
視野範囲に対応付けられる視野範囲データを情報処理端末から受け付けるステップと、
取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信するステップと、
を含むことを特徴とする画像送信方法。
【請求項７】
取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信するステップと、
取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付けるステップと、
を含むことを特徴とする情報処理方法。
【請求項８】
画像を取得する手順、
視野範囲に対応付けられる視野範囲データを情報処理端末から受け付ける手順、
取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信する手順、
をコンピュータに実行させることを特徴とするプログラム。
【請求項９】
取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信する手順、
取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付ける手順、
をコンピュータに実行させることを特徴とするプログラム。
【請求項１０】
画像を取得する手順、
視野範囲に対応付けられる視野範囲データを情報処理端末から受け付ける手順、
取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信する手順、
をコンピュータに実行させることを特徴とするプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項１１】
取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信する手順、
取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付ける手順、
をコンピュータに実行させることを特徴とするプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像送信装置、情報処理端末、画像送信方法、情報処理方法、プログラム及び情報記憶媒体に関する。
【背景技術】
【０００２】
サーバ等の画像送信装置から全方位画像等の画像を受信して、受信した画像の一部に基づいてユーザによって指定された視野範囲に応じた画像を生成する情報処理端末が存在する。このような情報処理端末では、ユーザは所望の視野範囲に応じた画像を得ることができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
全方位画像等の画像は、例えば同じ品質の横１２８０画素×縦７２０画素などの通常の画像と比較すると一般的にサイズが大きい。そのため従来の画像送信装置では、サイズが小さいあるいはエンコード品質が低いなどといった低品質な画像を送信しないと通信帯域が逼迫するおそれがあった。このことは画像の送信先の数が多い場合や画像をフレーム画像として含む動画像が送信される場合などに顕著となる。【０００４】
本発明は上記課題に鑑みてなされたものであって、その目的の１つは、通信帯域を逼迫させることなくユーザが所望の視野範囲に応じた高品質な画像を得ることができる画像送信装置、情報処理端末、画像送信方法、情報処理方法、プログラム及び情報記憶媒体を提供することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係る画像送信装置は、画像を取得する画像取得部と、視野範囲に対応付けられる視野範囲データを情報処理端末から受け付ける視野範囲データ受付部と、取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信する送信部と、を含むことを特徴とする。【０００６】
また、本発明に係る情報処理端末は、取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信する視野範囲データ送信部と、取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付ける受付部と、を含むことを特徴とする。【０００７】
また、本発明に係る画像送信方法は、画像を取得するステップと、視野範囲に対応付けられる視野範囲データを情報処理端末から受け付けるステップと、取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信するステップと、を含むことを特徴とする。【０００８】
また、本発明に係る情報処理方法は、取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信するステップと、取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付けるステップと、を含むことを特徴とする。【０００９】
また、本発明に係るプログラムは、画像を取得する手順、視野範囲に対応付けられる視野範囲データを情報処理端末から受け付ける手順、取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信する手順、をコンピュータに実行させることを特徴とする。【００１０】
また、本発明に係る別のプログラムは、取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信する手順、取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付ける手順、をコンピュータに実行させることを特徴とする。【００１１】
また、本発明に係る情報記憶媒体は、画像を取得する手順、視野範囲に対応付けられる視野範囲データを情報処理端末から受け付ける手順、取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記情報処理端末に送信する手順、をコンピュータに実行させることを特徴とするプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体である。【００１２】
また、本発明に係る別の情報記憶媒体は、取得する画像の一部に基づいて生成される画像を送信する画像送信装置に、視野範囲に対応付けられる視野範囲データを送信する手順、取得する前記画像の一部に基づいて前記画像送信装置が生成する、前記視野範囲データに対応付けられる視野範囲に応じた画像を、前記画像送信装置から受け付ける手順、をコンピュータに実行させることを特徴とするプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体である。【００１３】
本発明の一態様では、前記画像取得部は、前記送信部が送信する画像にそれぞれが対応付けられる複数の画像を取得し、前記視野範囲データ受付部は、複数のタイミングについての視野範囲に対応付けられる前記視野範囲データを受け付け、前記送信部は、それぞれが対応付けられる取得する前記画像の一部に基づいて生成される画像であり、対応付けられるタイミングについての前記視野範囲データに対応付けられる視野範囲に応じた画像である複数の画像を、フレーム画像として含む動画像を前記情報処理端末に送信する。【００１４】
あるいは、前記画像取得部は、動画像を取得し、前記送信部は、それぞれ取得する前記動画像に含まれるフレーム画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像をフレーム画像として含む動画像を、前記情報処理端末に送信する。【００１５】
また、本発明の一態様では、前記視野範囲データ受付部は、複数の情報処理端末のそれぞれから前記視野範囲データを受け付け、取得する前記画像の一部に基づいて生成される画像である、受け付ける前記視野範囲データに対応付けられる視野範囲に応じた画像を生成するクリップ画像生成部、をさらに含み、前記送信部は、生成される前記画像を当該画像に対応付けられる前記視野範囲データの送信元の前記情報処理端末に送信し、前記視野範囲データの受付及び前記画像の送信は、前記視野範囲データの送信元である前記情報処理端末毎に並列的に実行される。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態に係る画像配信システムの全体構成の一例を示す図である。
【図２】本実施形態に係る画像配信システムで行われる画像配信の一例を説明する説明図である。
【図３】パノラマフレーム画像の一例を示す図である。
【図４】クライアントの姿勢及び位置とパラメータの値との関係の一例を模式的に示す図である。
【図５】クリップフレーム画像の生成処理に用いられる仮想空間の一例を示す図である。
【図６】本発明の一実施形態に係る画像配信システムで実現される機能の一例を示す機能ブロック図である。
【図７】本発明の一実施形態に係るステッチサーバで行われる処理の流れの一例を示すフロー図である。
【発明を実施するための形態】
【００１７】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【００１８】
図１は、本発明の一実施形態に係る画像送信システム１の全体構成の一例を示す図である。図１に示すように、本実施形態に係る画像送信システム１は、いずれもコンピュータを中心に構成された、カメラサーバ１０、ステッチサーバ１２、クライアント１４（１４−１、１４−２、・・・、１４−ｎ）を含んでいる。カメラサーバ１０、ステッチサーバ１２、クライアント１４は、インターネットなどのコンピュータネットワーク１６に接続されている。そして、カメラサーバ１０、ステッチサーバ１２、クライアント１４は、互いに通信可能になっている。
【００１９】
カメラサーバ１０は、図１に示すように、例えば、制御部１０ａと、記憶部１０ｂと、通信部１０ｃと、マルチカメラモジュール１０ｄと、を含む。制御部１０ａは、例えばＣＰＵ等のプログラム制御デバイスであって、記憶部１０ｂに記憶されたプログラムに従って各種の情報処理を実行する。記憶部１０ｂは、例えばＲＯＭやＲＡＭ等の記憶素子やハードディスクドライブなどである。通信部１０ｃは、例えばコンピュータネットワーク１６を介してステッチサーバ１２との間でデータを授受するための通信インタフェースである。カメラサーバ１０は、通信部１０ｃを経由してステッチサーバ１２との間で情報の送受信を行う。マルチカメラモジュール１０ｄは、互いに異なる方向を撮像可能な複数のカメラを備えている。本実施形態に係るマルチカメラモジュール１０ｄは、互いに異なる５つの水平方向を撮像するカメラと、鉛直上向き方向を撮像するカメラと、を備える。なお、マルチカメラモジュール１０ｄが備える複数のカメラの配置は特に問わない。例えば、マルチカメラモジュール１０ｄが、互いに異なる４つの水平方向を撮像するカメラと、鉛直上向き方向を撮像するカメラと、鉛直下向き方向を撮像するカメラと、を備えていてもよい。
【００２０】
ステッチサーバ１２は、図１に示すように、例えば、制御部１２ａと、記憶部１２ｂと、通信部１２ｃと、を含む。制御部１２ａは、例えばＣＰＵ等のプログラム制御デバイスであって、記憶部１２ｂに記憶されたプログラムに従って各種の情報処理を実行する。本実施形態に係る制御部１２ａには、ＣＰＵから供給されるグラフィックスコマンドやデータに基づいてフレームバッファに画像を描画するＧＰＵ（Graphics Processing Unit）も含まれている。記憶部１２ｂは、例えばＲＯＭやＲＡＭ等の記憶素子やハードディスクドライブなどである。また、本実施形態に係る記憶部１２ｂには、ＧＰＵにより画像が描画されるフレームバッファの領域が確保されている。通信部１２ｃは、例えばコンピュータネットワーク１６を介してカメラサーバ１０やクライアント１４との間でデータを授受するための通信インタフェースである。
【００２１】
クライアント１４は、ユーザが利用する情報処理端末である携帯型のコンピュータであり、例えば、携帯型パーソナルコンピュータ、携帯型ゲーム装置、スマートフォン、などである。クライアント１４は、例えば、制御部１４ａと、記憶部１４ｂと、通信部１４ｃと、出力部１４ｄと、入力部１４ｅと、検出部１４ｆと、を含む。制御部１４ａは、例えばＣＰＵ等のプログラム制御デバイスであって、記憶部１４ｂに記憶されたプログラムに従って各種の情報処理を実行する。本実施形態に係る制御部１４ａには、ＣＰＵから供給されるグラフィックスコマンドやデータに基づいてフレームバッファに画像を描画するＧＰＵ（Graphics Processing Unit）も含まれている。記憶部１４ｂは、例えばＲＯＭやＲＡＭ等の記憶素子やハードディスクドライブなどである。記憶部１４ｂには、制御部１４ａによって実行されるプログラムなどが記憶される。また、本実施形態に係る記憶部１４ｂには、ＧＰＵにより画像が描画されるフレームバッファの領域が確保されている。通信部１４ｃは、例えばコンピュータネットワーク１６を介してステッチサーバ１２との間でデータを授受するための通信インタフェースである。クライアント１４は、通信部１４ｃを経由してステッチサーバ１２との間で情報の送受信を行う。出力部１４ｄは、例えば制御部１４ａから入力される指示に従って情報を表示出力するディスプレイ等の表示部や音声出力するスピーカ等の音声出力部である。入力部１４ｅは、例えばユーザが行った操作の内容を制御部１４ａに出力するゲームコントローラ、タッチパッド、キーボード、マイク等である。検出部１４ｆは、加速度センサやジャイロセンサ等といった、クライアント１４の姿勢や位置を検出するデバイスである。なお検出部１４ｆが、クライアント１４の移動量や速度を検出可能であってもよい。
【００２２】
以下、図２を参照しながら、本実施形態に係る画像送信システム１で行われる画像送信の一例を説明する。
【００２３】
本実施形態では、カメラサーバ１０のマルチカメラモジュール１０ｄが備える各カメラは、例えば所定のフレームレート、例えば３０ｆｐｓでそれぞれ独立した動画像を生成する。以下、当該動画像を撮像動画像と呼ぶこととする。また、撮像動画像に含まれるフレーム画像を撮像フレーム画像と呼ぶこととする。本実施形態では、互いに異なる５つの水平方向を撮像するカメラによって横７２０画素×縦１２８０画素のフレーム画像が含まれる動画像が生成される。そして、鉛直上向き方向を撮像するカメラによって、横４８０画素×縦６４０画素のフレーム画像が含まれる動画像が生成される。このようにして本実施形態では、６個の独立した撮像動画像が生成されることとなる。本実施形態では、各カメラにおける撮像タイミングは同期がとられており、撮像フレーム画像は、当該撮像フレーム画像の撮像日時に関連付けられていることとする。
【００２４】
そして本実施形態では、カメラサーバ１０は、複数の撮像動画像、ここでは６個の撮像動画像を、所定のフォーマット、例えばＭｏｔｉｏｎＪＰＥＧ等でエンコードした上で、撮像動画像ストリームとしてステッチサーバ１２に送信する。
【００２５】
そして本実施形態では、ステッチサーバ１２で生成されるパノラマ画像生成プロセス２０が、カメラサーバ１０から当該複数の撮像動画像を受信してデコードする。このようにして、複数の撮像動画像のそれぞれについて一連の撮像フレーム画像が取得されることとなる。そしてステッチサーバ１２のパノラマ画像生成プロセス２０は、同じ撮像日時に関連付けられている、デコードされたフレーム画像群に基づいて、公知の手法により、当該撮像日時に関連付けられたパノラマ画像を生成する。本実施形態では、当該パノラマ画像は全方位画像であることとする。当該パノラマ画像をパノラマフレーム画像と呼ぶこととする。本実施形態では、パノラマフレーム画像の生成も所定のフレームレート、ここでは３０ｆｐｓで行われることとする。
【００２６】
図３に本実施形態に係るパノラマフレーム画像の一例を模式的に示す。本実施形態ではパノラマフレーム画像の横方向の画素数はＷ、縦方向の画素数はＨであることとする。例えば、当該パノラマフレーム画像が横３８４０画素×縦１９２０画素である場合は、Ｗ＝３８３９、Ｈ＝１９１９となる。そして、当該パノラマフレーム画像の左下端、右下端、左上端、右上端、の座標値はそれぞれ（０，０）、（Ｗ，０）、（０，Ｈ）、（Ｗ，Ｈ）であることとする。
【００２７】
そして本実施形態では、ステッチサーバ１２は、クライアント１４から画像の送信要求を受け付けると、当該クライアント１４に対応付けられるクリッププロセス２２を生成する。そして、画像の送信要求を行ったクライアント１４とクリッププロセス２２とが接続されて、当該クライアント１４と当該クリッププロセス２２との間でセッションが張られる。このようにして本実施形態では、ステッチサーバ１２に接続しているクライアント１４の数だけクリッププロセス２２が生成され、実行されることとなる。
【００２８】
そしてクリッププロセス２２は、接続相手のクライアント１４から当該クライアント１４において決定される視野範囲に対応付けられる視野範囲データを受け付ける。当該視野範囲は、例えば当該クライアント１４が備える検出部１４ｆにより検出される当該クライアント１４の姿勢及び位置に基づいて決定される。また本実施形態では、クライアント１４は、所定のフレームレート、ここでは例えば３０ｆｐｓで、検出日時に関連付けられた視野範囲データをステッチサーバ１２に送信することとする。
【００２９】
本実施形態では例えば、視野範囲データには、ｐａｎ、ｔｉｌｔ、ｒｏｌｌ、ｚｏｏｍの４つのパラメータの値が含まれる。本実施形態では、ユーザがクライアント１４を傾けたり動かしたりすることで、当該パラメータの値を入力することができるようになっている。図４に、クライアント１４の姿勢及び位置と当該４つのパラメータの値との関係の一例を模式的に示す。
【００３０】
図４に示すように、本実施形態では、クライアント１４の出力部１４ｄの一種であるディスプレイが配置されている面からその裏面に向かう方向をＸ１軸正方向とする。そして、ディスプレイが配置されている面から見て下から上に向かう方向をＹ１軸正方向とする。そして、ディスプレイが配置されている面から見て左から右に向かう方向をＺ１軸正方向とする。
【００３１】
そして本実施形態では例えば、図４に示す基準となる姿勢のクライアント１４を、角度ｐａｎ１だけＹ１軸周りに、さらに角度ｔｉｌｔ１だけＺ１軸周りに、さらに角度ｒｏｌｌ１だけＸ１軸周りに回転させた際の姿勢が、検出部１４ｆによって検出されたとする。ここで角度ｐａｎ１は、Ｙ１軸正方向に沿って見た場合の時計回りを正とした際の角度を表す。また角度ｔｉｌｔ１は、Ｚ１軸正方向に沿って見た場合の時計回りを正とした際の角度を表す。また角度ｒｏｌｌ１は、Ｘ１軸正方向に沿って見た場合の時計回りを正とした際の角度を表す。また図４に示す基準となる位置のクライアント１４をＸ１軸正方向に沿ってｚｏｏｍ１だけ移動させた位置が、検出部１４ｆによって検出されたとする。以上の場合は、パラメータｐａｎ、ｔｉｌｔ、ｒｏｌｌ、ｚｏｏｍの値としてそれぞれｐａｎ１、ｔｉｌｔ１、ｒｏｌｌ１、ｚｏｏｍ１が設定された視野範囲データが送信される。また本実施形態では、視野範囲データには、当該視野範囲データに対応付けられるクライアント１４の姿勢や位置の検出日時が関連付けられていることとする。
【００３２】
そして当該視野範囲データを受信したクリッププロセス２２は、パノラマ画像生成プロセス２０が生成したパノラマフレーム画像を取得する。そして、当該クリッププロセス２２は、当該パノラマフレーム画像の一部に基づいて生成される画像であり、クライアント１４から受け付けた視野範囲データが示す視野範囲に応じた画像であるクリップフレーム画像を生成する。本実施形態に係るクリップフレーム画像は、例えば、横１２８０画素×縦７２０画素の画像である。
【００３３】
本実施形態ではクリップフレーム画像は、クリッププロセス２２が取得するパノラマフレーム画像と、クリッププロセス２２が受け付ける視野範囲データが示す上述の４つのパラメータの値に基づいて生成される。ここで、クリップフレーム画像の生成処理の一例を説明する。
【００３４】
図５はクリップフレーム画像の生成処理に用いられる仮想空間の一例を示す図である。図５に示す仮想空間には、平面である仮想スクリーンＶｓがＹ２−Ｚ２平面に平行に配置されている。また仮想スクリーンＶｓが配置されている位置のＸ２座標値は任意である。また、仮想スクリーンＶｓの大きさは任意であるが、仮想スクリーンＶｓの表面には、画像が配置されている。当該画像には、等間隔に縦横に並んだ複数の画素、ここでは例えば横１２８０画素×縦７２０画素が含まれている。
【００３５】
また、図５に示す仮想空間の原点には視点Ｖｐが配置されている。また、図５に示す仮想空間には視線方向Ｖｄが設定されている。また、基準となる配置では視線方向Ｖｄを表す単位ベクトルのＸ２座標値は１であり、Ｙ２座標値、Ｚ２座標値はいずれも０である。また、Ｙ２軸正方向が仮想スクリーンＶｓの上向きであることとする。また本実施形態では、視点Ｖｐを通る、視線方向Ｖｄに沿って延伸する直線は、仮想スクリーンＶｓの重心を通るようになっている。そして、基準となる配置における仮想スクリーンＶｓの重心は、図３に示すようにパノラマフレーム画像における点Ｐ（０，Ｈ／２）に対応付けられる。
【００３６】
ここで例えばクリッププロセス２２が、パラメータｐａｎ、ｔｉｌｔ、ｒｏｌｌ、ｚｏｏｍの値としてそれぞれｐａｎ１、ｔｉｌｔ１、ｒｏｌｌ１、ｚｏｏｍ１が設定された視野範囲データを受け付けたこととする。この場合、以下のようにして、当該視野範囲データの値に基づいて視線方向Ｖｄの向き、仮想スクリーンＶｓの姿勢及び位置が決定される。具体的には例えば、クリッププロセス２２は、視線方向Ｖｄを、基準方向（１，０，０）に対して、Ｙ１軸周りに角度ｐａｎ１だけ、さらにＺ１軸周りに角度ｔｉｌｔ１だけ回転させる。このとき、視線方向Ｖｄの回転に応じて、仮想スクリーンＶｓの配置が変化する。ここで仮想スクリーンＶｓは、仮想スクリーンＶｓと視線方向Ｖｄとの位置関係は維持されたまま、原点を中心に回転移動することとなる。すなわち、視点Ｖｐを通る、回転後の視線方向Ｖｄに沿って延伸する直線は、変化後の仮想スクリーンＶｓの重心を通ることとなる。そして、クリッププロセス２２は、ｚｏｏｍ１だけ視線方向Ｖｄの逆方向に沿って移動させた位置に、仮想スクリーンＶｓの位置を変更させる。そして、クリッププロセス２２は、仮想スクリーンＶｓを、視線方向Ｖｄを軸に反時計回りに角度ｒｏｌｌ１だけ回転させる。
【００３７】
そして、仮想スクリーンＶｓに含まれる各画素について、当該画素と視点Ｖｐとを結ぶ直線と視点Ｖｐを中心とした半径の長さが１である球面との交点のＸ２座標値ｘｓ、Ｙ２座標値ｙｓ、Ｚ２座標値ｚｓが算出される。そして、各画素について算出された座標値（ｘｓ，ｙｓ，ｚｓ）に基づいて、当該画素に対応付けられるパラメータｐａｎ０及びｔｉｌｔ０の値が特定される。ここでは例えばｐａｎ０＝ａｒｃｃｏｓ（ｓｑｒｔ（（ｘｓ×ｘｓ）／（１−ｙｓ×ｙｓ）））、ｔｉｌｔ０＝ａｒｃｓｉｎ（ｙｓ）との数式に従って、パラメータｐａｎ０及びｔｉｌｔ０の値が算出される。
【００３８】
そして、各画素について算出されたパラメータｐａｎ０及びパラメータｔｉｌｔ０の値に基づいて、当該画素に対応付けられる、パノラマフレーム画像内の位置の座標値（ｘｉ，ｙｉ）が特定される。ここではｘｉ＝−Ｗ×ｐａｎ０／（２×ｐｉ）、ｙｉ＝（Ｈ／２）×（１−ｔｉｌｔ０／ｐｉ）との数式に従って、座標値（ｘｉ，ｙｉ）が算出される。
【００３９】
そして、仮想スクリーンＶｓ上に配置されている各画素の位置に、当該画素に対応付けられるパノラマフレーム画像内の位置（ｘｉ，ｙｉ）の画素が配置される。すなわち、仮想スクリーンＶｓに含まれる各画素は、当該画素に対応付けられるパノラマフレーム画像内の位置（ｘｉ，ｙｉ）の画素に置換される。このような画素の置換後における、仮想スクリーンＶｓの表面に配置されている画像が、本実施形態に係るクリップフレーム画像となる。このように本実施形態では、パノラマフレーム画像に含まれる複数の画素に基づいてクリップフレーム画像が生成されることとなる。
【００４０】
そしてクリッププロセス２２は、当該クリップフレーム画像を所定のフレームレート、ここでは例えば３０ｆｐｓで生成して、エンコードすることでＨ．２６４形式の動画像を生成する。以下、当該動画像をクリップ動画像と呼ぶこととする。そしてクリッププロセス２２は、当該クリップ動画像を、当該クリッププロセス２２と接続されているクライアント１４にクリップ動画像ストリームとして送信する。
【００４１】
そして、クライアント１４は、クリップ動画像ストリームとしてクリップ動画像を受信する。そしてクライアント１４は、受信したクリップ動画像をディスプレイ等の出力部１４ｄに表示させる。なお、クライアント１４は、受信したクリップ動画像を保存して、ユーザが自由に活用することができるようにしてもよい。以上のようにして本実施形態では、ユーザは、例えばクライアント１４の姿勢を設定することによって指定された視野範囲に応じてパノラマフレーム画像が切り出されたクリップフレーム画像から構成される動画像を得ることができることとなる。
【００４２】
本実施形態では、視野範囲に対応付けられるクライアント１４の方向とマルチカメラモジュール１０ｄの撮像方向とは対応付けられている。そのため本実施形態では、ある時点に撮像された撮像フレーム画像に基づくパノラマフレーム画像において、当該時点においてクライアント１４が向いている方向を撮像した部分が切り出されたクリップフレーム画像が表示されることとなる。具体的には例えば、ある時点ｔ１においてクライアント１４が東を向いており、その後別の時点ｔ２においてクライアント１４が西を向いていたとする。ここでクライアント１４の向きとは、例えば、クライアント１４のディスプレイが配置されている面からその裏面に向かう向き、ここでは方角を指すこととする。この場合には、時点ｔ１に撮像された撮像フレーム画像に基づくパノラマフレーム画像において東を撮像した部分が切り出されたクリップフレーム画像が表示される。そしてその後時点ｔ２に撮像された撮像フレーム画像に基づくパノラマフレーム画像において西を撮像した部分が切り出されたクリップフレーム画像が表示されることとなる。
【００４３】
また本実施形態では、クライアント１４の姿勢の検出日時と同じタイミングに撮像された撮像画像に基づくパノラマフレーム画像から、当該姿勢に対応付けられる視野範囲の部分が切り出されたクリップフレーム画像が生成されるようになっている。具体的には例えば、クリッププロセス２２は、受け付けた視野範囲データに関連付けられている検出日時と同じタイミングである撮像日時が関連付けられているパノラマフレーム画像を特定する。そして、クリッププロセス２２は、当該視野範囲データが示す視野範囲に基づいて特定される当該パノラマフレーム画像に含まれる複数の画素から構成されるクリップフレーム画像を生成する。
【００４４】
本実施形態では、クライアント１４で指定される視野範囲に応じたクリップフレーム画像の生成は、クライアント１４ではなくステッチサーバ１２で行われる。そして、生成されたクリップフレーム画像がステッチサーバ１２からクライアント１４に送信される。そのため本実施形態では、クリップフレーム画像よりもサイズが大きいパノラマフレーム画像がステッチサーバ１２からクライアント１４に送信される場合よりも、通信帯域が逼迫するおそれが低減される。よって本実施形態では、通信帯域を逼迫させることなくユーザが所望の視野範囲に応じた高品質な画像を得ることができることとなる。
【００４５】
また本実施形態では、パノラマ画像生成プロセス２０による処理と複数のクライアント１４のそれぞれに対応付けられるクリッププロセス２２による処理とは非同期に実行される。またクリッププロセス２２による処理は、クライアント１４毎、すなわち受け付ける視野範囲データ毎に並列的に実行される。そのため本実施形態では、１のパノラマフレーム画像に基づく、互いに異なる視野範囲に応じたクリップフレーム画像を、各クライアント１４でユーザは見ることができることとなる。
【００４６】
また本実施形態では、パノラマ画像生成プロセス２０による処理とクリッププロセス２２による処理とはいずれもステッチサーバ１２が備えるＧＰＵによってリアルタイムに実行されるようになっている。そのため撮像動画像の撮像タイミングからそれほど遅れることなく当該撮像動画像に基づいて生成されるクリップ動画像がクライアント１４のディスプレイに表示されることとなる。
【００４７】
以下、本実施形態に係る画像送信システム１の機能についてさらに説明する。
【００４８】
図６は、本実施形態に係る、画像送信システム１で実現される機能の一例を示す機能ブロック図である。なお、本実施形態に係る画像送信システム１で、図６に示す機能のすべてが実現される必要はなく、また、図６に示す機能以外の機能が実現されていても構わない。
【００４９】
図６に示すように、本実施形態に係るステッチサーバ１２は、機能的には例えば、撮像動画像受信部３０、パノラマ画像生成部３２、パノラマ画像取得部３４、視野範囲データ受付部３６、クリップ画像生成部３８、クリップ画像送信部４０、を含んでいる。撮像動画像受信部３０、視野範囲データ受付部３６、クリップ画像送信部４０は、通信部１２ｃを主として実装される。パノラマ画像生成部３２、パノラマ画像取得部３４、クリップ画像生成部３８は、制御部１２ａ、特にＧＰＵを主として実装される。また、撮像動画像受信部３０、パノラマ画像生成部３２は、パノラマ画像生成プロセス２０によって実行される機能に相当する。そして、パノラマ画像取得部３４、視野範囲データ受付部３６、クリップ画像生成部３８、クリップ画像送信部４０は、クリッププロセス２２によって実行される機能に相当する。以上のようにして本実施形態に係るステッチサーバ１２は、画像を送信する画像送信装置としての役割を担うこととなる。
【００５０】
そして、以上の機能は、コンピュータであるステッチサーバ１２にインストールされた、以上の機能に対応する指令を含むプログラムを、ステッチサーバ１２の制御部１２ａで実行することにより実装されている。このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク、フラッシュメモリ等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどのコンピュータネットワークを介してステッチサーバ１２に供給される。本実施形態では、上述のプログラムの一種であるパノラマ画像生成プログラムを実行することにより、パノラマ画像生成プロセス２０が生成され、上述のプログラムである別のクリッププログラムを実行することにより、クリッププロセス２２が生成されることとする。なお、１のプログラムを実行することにより、パノラマ画像生成プロセス２０及びクリッププロセス２２が生成されても構わない。
【００５１】
また、図６に示すように、本実施形態に係るクライアント１４は、機能的には例えば、姿勢検出部５０、視野範囲データ生成部５２、視野範囲データ送信部５４、クリップ画像受付部５６、表示制御部５８、を含んでいる。姿勢検出部５０は、検出部１４ｆを主として実装される。視野範囲データ生成部５２は、制御部１４ａを主として実装される。視野範囲データ送信部５４、クリップ画像受付部５６は、通信部１４ｃを主として実装される。表示制御部５８は、制御部１４ａ及び出力部１４ｄを主として実装される。
【００５２】
そして、以上の機能は、コンピュータであるクライアント１４にインストールされた、以上の機能に対応する指令を含むプログラムを、クライアント１４の制御部１４ａで実行することにより実装されている。このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク、フラッシュメモリ等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどのコンピュータネットワークを介してクライアント１４に供給される。
【００５３】
姿勢検出部５０は、クライアント１４の姿勢を検出する。また本実施形態に係る姿勢検出部５０は、上述のようにクライアント１４の姿勢だけでなくその位置、速度、移動量なども検出する。
【００５４】
視野範囲データ生成部５２は、視野範囲データを生成する。本実施形態では、姿勢検出部５０が検出したクライアント１４の姿勢及び位置に基づいて、視野範囲データを生成する。本実施形態では上述のように、視野範囲データには、パラメータｐａｎ、ｔｉｌｔ、ｒｏｌｌ、ｚｏｏｍそれぞれの値が含まれる。本実施形態では、視野範囲データには、当該視野範囲データに対応するクライアント１４の姿勢及び位置の検出日時が関連付けられている。そして本実施形態では、複数の検出タイミングについての視野範囲に対応付けられる視野範囲データが生成される。
【００５５】
視野範囲データ送信部５４は、ステッチサーバ１２に視野範囲データを送信する。視野範囲データ送信部５４は、本実施形態では、視野範囲データ生成部５２が生成する視野範囲データをステッチサーバ１２に送信する。
【００５６】
なお上述のように、視野範囲データ生成部５２が、所定のフレームレート、例えば３０ｆｐｓで視野範囲データを生成して、視野範囲データ送信部５４が、当該フレームレートで生成された視野範囲データを送信してもよい。
【００５７】
あるいは、ユーザによる所定の明示の送信操作の受付に応じて、視野範囲データ生成部５２が姿勢検出部５０によるクライアント１４の姿勢の検出結果に基づいて視野範囲データを生成し、視野範囲データ送信部５４が当該視野範囲データを送信してもよい。
【００５８】
クリップ画像受付部５６は、パノラマ画像の一部に基づいてステッチサーバ１２が生成する、視野範囲データ送信部５４が送信した視野範囲データに対応付けられる視野範囲に応じた画像を、ステッチサーバ１２から受け付ける。クリップ画像受付部５６は、本実施形態では上述のクリップ動画像をクリップ動画像ストリームとして受け付ける。
【００５９】
表示制御部５８は、クリップ画像受付部５６が受け付ける画像を出力部１４ｄに表示させる。表示制御部５８は、クリップ動画像を出力部１４ｄに表示させる。また表示制御部５８は、クリップ動画像全体のうちの一部を占める領域を表示させてもよい。そして、ユーザから受け付ける変更操作に応じて、表示される領域を例えば上下左右に移動させるようにしてもよい。こうすればクライアント１４において、受け付けたクリップ動画像内における視野範囲の変更を行うことができる。
【００６０】
撮像動画像受信部３０は、撮像動画像を受信する。本実施形態では、撮像動画像受信部３０は、カメラサーバ１０から６個の独立した撮像動画像を受信する。
【００６１】
パノラマ画像生成部３２は、それぞれ互いに異なる方向を撮像した画像である、複数の撮像画像に基づいてパノラマ画像を生成する。本実施形態では、パノラマ画像生成部３２は、上述のように、６個の独立した撮像動画像をデコードして、撮像フレーム画像を取得する。そして、パノラマ画像生成部３２は、同じ撮像日時に関連付けられている、デコードされたフレーム画像群に基づいて、公知の手法により、当該撮像日時に関連付けられたパノラマフレーム画像を生成する。
【００６２】
パノラマ画像取得部３４は、画像を取得する。パノラマ画像取得部３４は、本実施形態では、パノラマ画像生成部３２が生成したパノラマ画像を取得する。なお、パノラマ画像取得部３４は、例えば、ステッチサーバ１２の記憶部１２ｂに予め記憶されている動画像にフレーム画像として含まれているパノラマ画像を取得するようにしてもよい。また本実施形態では、パノラマ画像取得部３４は、クリップ画像送信部４０が送信するクリップ動画像に含まれるフレーム画像にそれぞれが対応付けられるパノラマフレーム画像を取得する。このように本実施形態では、パノラマ画像取得部３４は動画像を取得する。
【００６３】
視野範囲データ受付部３６は、視野範囲に対応付けられる視野範囲データをクライアント１４から受け付ける。本実施形態では、視野範囲データ受付部３６は、複数のタイミングについての視野範囲に対応付けられる視野範囲データを受け付ける。なお、視野範囲データ送信部５４が、所定のフレームレートで視野範囲データを送信する場合は、視野範囲データ受付部３６は、当該フレームレートで視野範囲データを受け付けることとなる。また、視野範囲データ送信部５４が、所定の明示の送信操作に応じて視野範囲データを送信する場合は、視野範囲データ受付部３６は、視野範囲データが送信される度に受け付けることとなる。また本実施形態では、視野範囲データ受付部３６は、複数のクライアント１４のそれぞれから視野範囲データを受け付けることとなる。
【００６４】
クリップ画像生成部３８は、パノラマ画像取得部３４が取得する画像の一部に基づいて生成される画像である、受け付ける視野範囲データに対応付けられる視野範囲に応じた画像を生成する。上述のように本実施形態では、所定のフレームレート、例えば３０ｆｐｓでクリップフレーム画像が生成される。そして、クリップ画像生成部３８は、生成されるクリップフレーム画像をエンコードすることで例えばＨ．２６４形式のクリップ動画像を生成する。当該クリップフレーム画像は、上述のように、当該クリップフレーム画像に対応付けられるパノラマフレーム画像の一部に基づいて生成される画像である。また当該クリップフレーム画像は、当該クリップフレーム画像に対応付けられるタイミングについての視野範囲データに対応付けられる視野範囲に応じた画像である。また本実施形態では、クリップ画像生成部３８によるクリップ動画像の生成は、対応付けられるクライアント１４毎に並列的に実行される。
【００６５】
また本実施形態では、視野範囲データ受付部３６は、最後に受け付けた視野範囲データの値、すなわち最新の視野範囲データの値を保持する。そして視野範囲データ受付部３６が視野範囲データを受け付けた際には、クリップ画像生成部３８は、保持されている視野範囲データの値を受け付けた視野範囲データの値に変更する。そして、クリップ画像生成部３８は、保持されている視野範囲データの値と、パノラマフレーム画像の一部に基づいて、クリップフレーム画像を生成する。
【００６６】
なお、視野範囲データ送信部５４が、前回送信した視野範囲データが表す姿勢と現在のクライアント１４の姿勢との差分や、前回送信した視野範囲データが表す位置と現在のクライアント１４の位置との差分を示す視野範囲データを送信してもよい。この場合は、クリップ画像生成部３８は、保持されている視野範囲データの値に、受け付けた視野範囲データの値を加算することとなる。
【００６７】
クリップ画像送信部４０は、パノラマ画像取得部３４が取得する画像の一部に基づいて生成される画像である、受け付ける視野範囲データに対応付けられる視野範囲に応じた画像をクライアント１４に送信する。本実施形態では、クリップ画像送信部４０は、クリップ画像生成部３８が生成するクリップ動画像をクリップ動画像ストリームとしてクライアント１４に送信する。このように本実施形態では、クリップ画像送信部４０は動画像をクライアント１４に送信する。ここで当該動画像に含まれるフレーム画像のそれぞれは、パノラマ画像取得部３４が取得する動画像に含まれるフレーム画像の一部に基づいて生成される画像である。また、当該動画像に含まれるフレーム画像のそれぞれは、受け付ける視野範囲データに対応付けられる視野範囲に応じた画像である。また本実施形態では、クリップ画像送信部４０によるクリップ動画像の送信は、視野範囲データの送信元であるクライアント１４毎に並列的に実行される。
【００６８】
以下、本実施形態に係るステッチサーバ１２で行われる、取得したパノラマフレーム画像に基づくクリップフレーム画像の生成処理の一例を図７に示すフロー図を参照しながら説明する。
【００６９】
まずクリップ画像生成部３８は、保持している視野範囲データの値に基づいて上述のようにして視線方向Ｖｄの向き、仮想スクリーンＶｓの姿勢及び位置を決定する（Ｓ１０１）。そしてクリップ画像生成部３８は、仮想スクリーンＶｓに含まれる各画素について当該画素と視点Ｖｐとを結ぶ直線と視点Ｖｐを中心とした半径の長さが１である球面との交点の座標値（ｘｓ，ｙｓ，ｚｓ）を算出する（Ｓ１０２）。そしてクリップ画像生成部３８は、仮想スクリーンＶｓに含まれる各画素について当該画素に対応付けられる算出された座標値（ｘｓ，ｙｓ，ｚｓ）に基づいて、上述のようにしてパラメータｐａｎ０及びｔｉｌｔ０の値を算出する（Ｓ１０３）。そしてクリップ画像生成部３８は、仮想スクリーンＶｓに含まれる各画素について、当該画素に対応付けられるパラメータｐａｎ０及びｔｉｌｔ０の値に基づいてパノラマフレーム画像内の位置の座標値（ｘｉ，ｙｉ）を特定する（Ｓ１０４）。このようにして特定される座標値（ｘｉ，ｙｉ）は仮想スクリーンＶｓに含まれる当該画素に対応付けられるものである。そしてクリップ画像生成部３８は、仮想スクリーンＶｓに含まれる各画素について、当該画素の位置に、当該画素に対応付けられる、Ｓ１０４に示す処理で特定されたパノラマフレーム画像内の座標値（ｘｉ，ｙｉ）で表される位置の画素を配置する（Ｓ１０５）。Ｓ１０５に示す処理の終了後に仮想スクリーンＶｓの表面上に配置されている画像が、本実施形態に係るクリップフレーム画像である。このようにして、本実施形態では、上述のＳ１０１〜Ｓ１０５に示す処理をクリップ画像生成部３８が実行することによって、クリップフレーム画像が生成される。
【００７０】
なお上述の処理の実行順序は特に問わない。例えば、仮想スクリーンＶｓに含まれるいずれかの画素について上述のＳ１０３〜Ｓ１０５に示す処理を実行することが、仮想スクリーンＶｓに含まれるすべての画素について繰り返し実行されるようにしてもよい。またクリップフレーム画像の生成方法は上述のものには限定されない。例えば、仮想空間内に配置されている所定の長さの半径である球面の３Ｄオブジェクトの内側にパノラマフレーム画像がテクスチャとして貼り付けられていてもよい。そして、視点Ｖｐから視線方向Ｖｄを見た様子を表す画像がクリップフレーム画像として生成されてもよい。
【００７１】
なお、本発明は上述の実施形態に限定されるものではない。
【００７２】
例えば、クライアント１４と１対１で対応付けられるクリッププロセス２２でクリップ動画像が生成されなくてもよい。そして複数のクライアント１４と接続可能なクリッププロセス２２でクリップ動画像が生成されてもよい。そして例えば、視野範囲データ受付部３６が互いに異なる複数のクライアント１４から視野範囲の差が所定の差よりも小さい視野範囲データを受け付ける場合に、クリップ画像生成部３８が、共通の画像、ここでは共通のクリップフレーム画像を生成してもよい。そしてクリップ画像送信部４０が当該複数のクライアント１４に生成された共通のクリップフレーム画像を送信してもよい。こうすれば、ステッチサーバ１２におけるクリップ動画像をエンコードする負荷などといった、クリップ動画像の生成負荷を下げることができることとなる。
【００７３】
なおこの場合にクリップ画像生成部３８が、当該複数の情報処理端末から受け付ける視野範囲データが示す視野範囲を包含する視野範囲の共通の画像を生成してもよい。そしてクリップ画像送信部４０が、生成される共通の画像を複数のクライアント１４に送信してもよい。
【００７４】
またこの場合に、クリップ画像送信部４０が、共通の画像が送信される複数のクライアント１４のそれぞれに、当該共通の画像に関連付けて領域データを送信してもよい。ここで領域データとは、例えば、共通の画像の一部を占める、当該領域データの送信元のクライアント１４から受け付けた視野範囲データに対応付けられる領域を示すデータである。そしてクライアント１４の表示制御部５８が、クリップ動画像全体のうちの一部を占める、当該クライアント１４が受け付けた領域データが示す領域を表示させてもよい。こうすれば、共通のクリップ動画像が送信される複数のクライアント１４のそれぞれの出力部１４ｄに、当該クライアント１４の姿勢に応じた互いに異なる当該クリップ動画像の一部が表示されることとなる。
【００７５】
また例えば、クリップフレーム画像の生成は、視野範囲データの受付に応じてその後に行われる必要はなく、視野範囲データの受付よりも前に行われてもよい。具体的には例えばパノラマ画像生成プロセス２０が、パノラマフレーム画像の互いに異なる複数の一部のそれぞれに対応付けられる複数のクリップフレーム画像を生成してもよい。ここでは、当該複数のクリップフレーム画像のそれぞれは視野範囲に対応付けられていてもよい。そして、クリッププロセス２２が、当該複数のクリップフレーム画像のうちから受け付ける視野範囲データに対応付けられる視野範囲に応じた一部に対応付けられるクリップフレーム画像を選択してクライアント１４に送信してもよい。ここで例えば、視野範囲データに対応付けられる視野範囲に最も近い視野範囲に対応付けられるクリップフレーム画像が選択されて、当該クリップフレーム画像がクライアント１４に送信されてもよい。
【００７６】
また撮像動画像のフレームレートとクリップ動画像のフレームレートとは異なってもよい。また撮像動画像のフレームレートとパノラマ動画像のフレームレートも異なっていてもよい。また送信動画像のフレームレートが通信帯域の逼迫の程度や接続クライアント数に応じて可変であっても構わない。
【００７７】
また例えば、クライアント１４の姿勢の検出日時と同じタイミングに撮像された撮像画像に基づくパノラマフレーム画像から、当該姿勢に対応付けられる視野範囲の部分が切り出されたクリップフレーム画像が生成される必要はない。例えば、姿勢の検出日時の所定時間前に撮像された撮像画像に基づくパノラマフレーム画像に基づいてクリップフレーム画像が生成されてもよい。また、姿勢の検出日時に最も近い撮像日時に撮像された撮像画像に基づくパノラマフレーム画像に基づいてクリップフレーム画像が生成されてもよい。
【００７８】
またクライアント１４は、携帯型のコンピュータである必要はない。例えばクライアント１４が、据置型の情報処理装置や、ヘッドマウントディスプレイなどであっても構わない。そしてクライアント１４がユーザの視線や注視点を検出可能な検出装置を備えていてもよい。なお当該検出装置では、例えばカメラにより撮影されたユーザの目の画像内の、ユーザの目頭の位置を基準とした虹彩の位置に基づいてユーザの視線や注視点が検出される。また例えば、カメラにより撮影されたユーザの目の画像内の、赤外線を照らしてできた反射光の角膜上の位置に対する瞳孔の位置に基づいてユーザの視線や注視点を検出する検出装置も存在する。
【００７９】
そして例えば、上述の検出装置により検出される位置に対応付けられる領域については他の領域よりも解像度が高いクリップフレーム画像が生成されるようにしてもよい。例えば、検出装置により検出される視線の方向や注視点の位置に基づいて、図５に例示する仮想スクリーンＶｓ内の領域が決定されるようにしてもよい。ここでは例えば、視線の方向や注視点の位置に対応付けられる仮想スクリーンＶｓ内の位置が特定される。そして当該位置を重心とする所定の大きさの領域については、表示される画像の解像度が他の領域よりも高くなるようにしてもしてもよい。例えば、ユーザの視線の方向が左上方向である場合に、仮想スクリーンＶｓ内において左上に位置する所定の大きさの領域が他の領域よりも高解像度であるクリップフレーム画像が生成されるようにしてもよい。こうすれば均一な解像度のクリップフレーム画像を表示させる場合よりも低い通信量で、クリップフレーム画像の全体が表示されるようにしつつ、ユーザが注視している位置付近については当該解像度の画像が表示されるようにすることができる。
【００８０】
また例えば、ユーザの視線の方向や注視点の位置に基づいて、表示されている画像がスクロールするようにしてもよい。例えばユーザの視線がまっすぐである場合に対するユーザの現在の視線方向の向きに応じた速度及び向きで、図５に例示する仮想スクリーンＶｓがスクロールするようにしてもよい。ここでは例えばユーザの視線が左方向である場合は、視野範囲データのパラメータｐａｎの値を増加させることで仮想スクリーンＶｓが左方向にスクロールするようにしてもよい。そして変化後の視野範囲データの値に基づいてクリップフレーム画像が生成されるようにしてもよい。こうすればユーザは視線によって、パノラマフレーム画像からクリップフレーム画像として切り出される部分を変化させることができることとなる。
【００８１】
また例えば、ユーザの視線の方向又は注視点の位置が、所定時間変化しない場合や、所定時間における変化が所定の閾値以下である場合などに、当該視線の方向又は注視点の位置に対応付けられる向きにズームインする処理が実行されるようにしてもよい。ここでは例えば、視線の方向や注視点の位置に対応付けられる仮想スクリーンＶｓ内の位置が特定されるようにしてもよい。そして当該位置を中心とする領域がズームインされるよう仮想スクリーンＶｓの位置が変化するようにしてもよい。あるいは例えば、視線の方向や注視点の位置に対応付けられるクリップフレーム画像内の位置を中心とする所定の領域が特定されるようにしてもよい。そしてクリップフレーム画像から当該領域を占める画像を切り出して、当該切り出された画像が拡大表示されるようにすることで、ズームインする処理が実行されるようにしてもよい。また同様にして、ユーザの視線の方向又は注視点の位置が、所定時間変化しない場合や、所定時間における変化が所定の閾値以下である場合などに、当該視線の方向又は注視点の位置に対応付けられる向きにズームアウトする処理が実行されるようにしてもよい。こうすればユーザは視線によってステッチサーバ１２やクライアント１４にズームインする処理やズームアウトする処理を行わせることができることとなる。
【００８２】
また例えばユーザから受け付ける視線設定操作に基づいて生成される視野範囲データがステッチサーバ１２に送信されるようにしてもよい。
【００８３】
また、カメラサーバ１０やステッチサーバ１２がそれぞれ複数の筐体から構成されていてもよい。また、カメラサーバ１０、ステッチサーバ１２、クライアント１４の役割分担は上述のものに限定されない。例えば、カメラサーバ１０とステッチサーバ１２とが一体であってもよい。
【００８４】
また、上記の具体的な文字列や図面中の具体的な文字列は例示であり、これらの文字列には限定されない。
【図１】
2015122052.tif 000003
【図２】
2015122052.tif 000004
【図３】
2015122052.tif 000005
【図４】
2015122052.tif 000006
【図５】
2015122052.tif 000007
【図６】
2015122052.tif 000008
【図７】
2015122052.tif 000009
【国際調査報告】
2015122052.tif 000010
2015122052.tif 000011
2015122052.tif 000012
2015122052.tif 000013