(57)【要約】表示部に表示されたカメラ撮影画像に、カメラ撮影方向に応じた自然な仮想画像を重畳表示する構成を実現する。仮想画像をクライアントに送信するサーバと、カメラ撮影画像とサーバから送信される仮想画像を重畳表示するクライアントを有する。サーバはクライアント（カメラ）の動きに応じて推定した所定時間後のクライアント位置から撮影した仮想画像をクライアントに送信する。サーバ、またはクライアントのいずれかにおいて、現在時刻Ｔにおけるクライアントの位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後のクライアントの撮影方向を推定し、推定方向から撮影した仮想画像をクライアントに送信する。
2013187129.tif 000002
【特許請求の範囲】
【請求項１】
撮像部で撮像される撮像画像に仮想画像が重畳される映像を表示する表示部を備える端末の空間位置情報を取得する取得部と、
前記端末の空間位置情報に応じて、前記表示部に前記仮想画像を表示させるための表示情報を特定する特定部と、
を備える情報処理装置。
【請求項２】
前記情報処理装置は、
画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
サーバから前記仮想画像を受信し、受信した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記データ処理部は、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、推定位置情報を前記サーバに送信し、
前記サーバから、前記推定位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップを受信して、受信画像、または受信画像に基づく生成画像を前記表示部に表示する処理を実行する請求項１に記載の情報処理装置。
【請求項３】
前記データ処理部は、
現在時刻Ｔにおける前記撮像部の位置・姿勢情報と移動情報を適用して、サーバとの通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記撮像部の撮影方向を推定し、前記推定方向を前記推定位置情報として前記サーバに送信する請求項２に記載の情報処理装置。
【請求項４】
前記データ処理部は、
現在時刻Ｔにおける前記撮像部の位置・姿勢情報と移動情報を適用して、サーバとの通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記撮像部の撮影方向の確率を算出し、確率の高い範囲の角度範囲を選択し、選択角度範囲に含まれる複数の視点からの仮想画像、または該仮想画像生成用画像とデプスマップを前記サーバから受信する請求項２に記載の情報処理装置。
【請求項５】
前記データ処理部は、
前記選択角度範囲において、相対的に前記確率の高い画像を高解像度画像とし、相対的に前記確率の低い画像を低解像度画像として設定した画像データを前記サーバから受信する請求項４に記載の情報処理装置。
【請求項６】
前記データ処理部は、
前記選択角度範囲において、前記確率に大きな差異がない場合、前記選択角度範囲に含まれる複数の視点からの仮想画像を同じ解像度を持つ画像として前記サーバから受信する請求項４に記載の情報処理装置。
【請求項７】
前記データ処理部は、
前記サーバから受信した複数の視点からの仮想画像から、前記仮想画像の表示タイミングにおける前記撮像部の撮影方向に近い視点の仮想画像を選択、
または前記仮想画像生成用画像とデプスマップを適用して、前記仮想画像の表示タイミングにおける前記撮像部の撮影方向に近い視点から撮影した仮想画像を生成して前記表示部に表示する請求項４に記載の情報処理装置。
【請求項８】
クライアントとの通信を実行する通信部と、
前記クライアントの表示部に表示されたクライアント撮像部の撮影画像に重畳表示する仮想画像を選択して送信するデータ処理部を有し、
前記データ処理部は、
前記クライアントの動き情報に応じて推定した所定時間後の前記クライアント撮像部位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択し、クライアントに送信する処理を実行するサーバとしての情報処理装置。
【請求項９】
前記データ処理部は、
現在時刻Ｔにおける前記クライアント撮像部の位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記クライアント撮像部の撮影方向を推定し、推定方向から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択する請求項８に記載の情報処理装置。
【請求項１０】
前記データ処理部は、
現在時刻Ｔにおける前記クライアント撮像部の位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記クライアント撮像部の撮影方向の確率を算出し、確率の高い範囲の角度範囲を選択し、選択角度範囲に含まれる複数の視点からの仮想画像をクライアントに対する送信データとして選択する請求項８に記載の情報処理装置。
【請求項１１】
前記データ処理部は、
前記選択角度範囲において、相対的に前記確率の高い画像を高解像度画像とし、相対的に前記確率の低い画像を低解像度画像として設定した送信画像データを生成してクライアントに送信する請求項１０に記載の情報処理装置。
【請求項１２】
画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
前記表示部に表示された撮影画像に重畳表示する仮想画像であり、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像を格納した記憶部と、
前記記憶部から前記仮想画像を取得し、取得した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記データ処理部は、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、
推定位置から撮影した仮想画像を前記記憶部から選択して表示、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する情報処理装置。
【請求項１３】
前記記憶部は、
異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像とデプスマップを格納し、
前記データ処理部は、
前記推定位置から撮影した仮想画像を、前記記憶部から取得した仮想画像とデプスマップを適用して生成して前記表示部に表示する請求項１２に記載の情報処理装置。
【請求項１４】
前記データ処理部は、
情報処理装置の動き情報に応じて所定時間後の前記撮像部の撮影方向の確率を算出し、高確率の仮想画像を前記記憶部から選択、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する請求項１２に記載の情報処理装置。
【請求項１５】
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、
クライアントとの通信を実行する通信部と、
前記クライアントの表示部に表示されたクライアント撮像部の撮影画像に重畳表示する仮想画像を選択して送信するデータ処理部を有し、
前記データ処理部は、
前記クライアントの動き情報に応じて推定した所定時間後の前記クライアント撮像部位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択し、クライアントに送信する処理を実行する情報処理方法。
【請求項１６】
情報処理装置において実行する情報処理方法であり、
データ処理部が、撮像部で撮像される撮像画像に仮想画像が重畳される映像を表示する表示部を備える端末の空間位置情報を取得する取得処理と、
データ処理部が、前記端末の空間位置情報に応じて、前記表示部に前記仮想画像を表示させるための表示情報を特定する特定処理を実行する情報処理方法。
【請求項１７】
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、
画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
前記表示部に表示された撮影画像に重畳表示する仮想画像であり、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像を格納した記憶部と、
前記記憶部から前記仮想画像を取得し、取得した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記データ処理部は、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、
推定位置から撮影した仮想画像を前記記憶部から選択して表示、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する情報処理方法。
【請求項１８】
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、
クライアントとの通信を実行する通信部と、
前記クライアントの表示部に表示されたクライアント撮像部の撮影画像に重畳表示する仮想画像を選択して送信するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記クライアントの動き情報に応じて推定した所定時間後の前記クライアント撮像部位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択させ、クライアントに送信する処理を実行させるプログラム。
【請求項１９】
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、撮像部で撮像される撮像画像に仮想画像が重畳される映像を表示する表示部を備える端末の空間位置情報を取得する取得処理と、
データ処理部が、前記端末の空間位置情報に応じて、前記表示部に前記仮想画像を表示させるための表示情報を特定する特定処理を実行させる.プログラム。
【請求項２０】
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、
画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
前記表示部に表示された撮影画像に重畳表示する仮想画像であり、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像を格納した記憶部と、
前記記憶部から前記仮想画像を取得し、取得した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、推定位置から撮影した仮想画像を前記記憶部から選択して表示、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、および情報処理方法、並びにプログラムに関する。特に、拡張現実（ＡＲ：Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ）表示を実行する情報処理装置、および情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
例えばカメラの撮影画像に、撮影画像以外の仮想画像を重畳した画像は、拡張現実（ＡＲ：Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ）画像と呼ばれ、昨今、様々な分野で利用されている。
特に、近年、通信機能に加えカメラ機能とディスプレイを備えたスマートフォンなどの携帯端末が普及し、これらのスマートフォンにおいて拡張現実（ＡＲ）画像を適用したアプリケーションが多く利用されている。【０００３】
ＡＲ画像の１つの利用例として、以下のような例がある。
例えばスマートフォン等の携帯端末のカメラ機能を用いて、あるオブジェクト（被写体）を撮影すると、オブジェクト情報がサーバに送信され、オブジェクトに関連付けられた情報をサーバから受信して、スマートフォンの表示部に撮影オブジェクトとともに表示する処理である。
サーバからスマートフォンに対して送信される画像情報は、例えば撮影オブジェクトに関連する仮想的なキャラクタの画像や、予め撮影済みの人物や景色など、様々である。
なお、ＡＲ画像の生成、表示処理について開示した従来技術として、例えば特許文献１（特開２０１２−５８８３８号公報）がある。【０００４】
しかし、サーバからの送信する仮想画像が、例えば実際の人物等を撮影した動画であるような場合、この動画をユーザの携帯端末のカメラ撮影画像に重畳表示すると、撮影画像と仮想画像が異なる動きを示し、仮想画像としての人物が撮影画像中に張り付いているだけで、人物が撮影画像中に存在するようには見えないという問題がある。
これは、ユーザが携帯端末で撮影している実写画像は、携帯端末の角度変化等に応じて変化するのに対して、サーバの提供する仮想画像は携帯端末の角度変化等と相関のない動きをしてしまうことが主な原因である。【０００５】
このような問題を解決するためには、あらゆる角度から撮影した多数の動画像をサーバからユーザ端末に送信し、ユーザ端末側で端末の角度に応じて画像を選択して表示するといった処理が有効と考えられる。しかし、このような処理を行なうと、通信負荷やユーザ端末の負荷が膨大となり、通信遅延や処理遅延を引き起こすことになる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−５８８３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本開示は、例えば上記問題点に鑑みてなされたものであり、例えばユーザの持つ携帯端末のカメラで撮影され表示部に表示された撮影画像に重畳して仮想画像を表示する構成において、カメラの動きに応じて仮想画像を変化させ、あたかも撮影画像内に仮想画像が存在するようなＡＲ画像の表示を実現する情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本開示の第１の側面は、
撮像部で撮像される撮像画像に仮想画像が重畳される映像を表示する表示部を備える端末の空間位置情報を取得する取得部と、
前記端末の空間位置情報に応じて、前記表示部に前記仮想画像を表示させるための表示情報を特定する特定部と、
を備える情報処理装置にある。【０００９】
さらに、本開示の情報処理装置の一実施態様において、前記情報処理装置は、画像を撮影する撮像部と、前記撮像部の撮影画像を表示する表示部と、サーバから前記仮想画像を受信し、受信した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、前記データ処理部は、情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、推定位置情報を前記サーバに送信し、前記サーバから、前記推定位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップを受信して、受信画像、または受信画像に基づく生成画像を前記表示部に表示する処理を実行する。【００１０】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、現在時刻Ｔにおける前記撮像部の位置・姿勢情報と移動情報を適用して、サーバとの通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記撮像部の撮影方向を推定し、前記推定方向を前記推定位置情報として前記サーバに送信する。【００１１】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、現在時刻Ｔにおける前記撮像部の位置・姿勢情報と移動情報を適用して、サーバとの通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記撮像部の撮影方向の確率を算出し、確率の高い範囲の角度範囲を選択し、選択角度範囲に含まれる複数の視点からの仮想画像、または該仮想画像生成用画像とデプスマップを前記サーバから受信する。【００１２】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記選択角度範囲において、相対的に前記確率の高い画像を高解像度画像とし、相対的に前記確率の低い画像を低解像度画像として設定した画像データを前記サーバから受信する。【００１３】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記選択角度範囲において、前記確率に大きな差異がない場合、前記選択角度範囲に含まれる複数の視点からの仮想画像を同じ解像度を持つ画像として前記サーバから受信する。【００１４】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記サーバから受信した複数の視点からの仮想画像から、前記仮想画像の表示タイミングにおける前記撮像部の撮影方向に近い視点の仮想画像を選択、または前記仮想画像生成用画像とデプスマップを適用して、前記仮想画像の表示タイミングにおける前記撮像部の撮影方向に近い視点から撮影した仮想画像を生成して前記表示部に表示する。【００１５】
さらに、本開示の第２の側面は、
クライアントとの通信を実行する通信部と、
前記クライアントの表示部に表示されたクライアント撮像部の撮影画像に重畳表示する仮想画像を選択して送信するデータ処理部を有し、
前記データ処理部は、
前記クライアントの動き情報に応じて推定した所定時間後の前記クライアント撮像部位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択し、クライアントに送信する処理を実行するサーバとしての情報処理装置にある。【００１６】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、現在時刻Ｔにおける前記クライアント撮像部の位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記クライアント撮像部の撮影方向を推定し、推定方向から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択する。【００１７】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、現在時刻Ｔにおける前記クライアント撮像部の位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記クライアント撮像部の撮影方向の確率を算出し、確率の高い範囲の角度範囲を選択し、選択角度範囲に含まれる複数の視点からの仮想画像をクライアントに対する送信データとして選択する。【００１８】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記選択角度範囲において、相対的に前記確率の高い画像を高解像度画像とし、相対的に前記確率の低い画像を低解像度画像として設定した送信画像データを生成してクライアントに送信する。【００１９】
さらに、本開示の第３の側面は、
画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
前記表示部に表示された撮影画像に重畳表示する仮想画像であり、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像を格納した記憶部と、
前記記憶部から前記仮想画像を取得し、取得した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記データ処理部は、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、
推定位置から撮影した仮想画像を前記記憶部から選択して表示、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する情報処理装置にある。【００２０】
さらに、本開示の情報処理装置の一実施態様において、前記記憶部は、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像とデプスマップを格納し、前記データ処理部は、前記推定位置から撮影した仮想画像を、前記記憶部から取得した仮想画像とデプスマップを適用して生成して前記表示部に表示する。【００２１】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、情報処理装置の動き情報に応じて所定時間後の前記撮像部の撮影方向の確率を算出し、高確率の仮想画像を前記記憶部から選択、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する。【００２２】
さらに、本開示の第４の側面は、
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、
クライアントとの通信を実行する通信部と、
前記クライアントの表示部に表示されたクライアント撮像部の撮影画像に重畳表示する仮想画像を選択して送信するデータ処理部を有し、
前記データ処理部は、
前記クライアントの動き情報に応じて推定した所定時間後の前記クライアント撮像部位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択し、クライアントに送信する処理を実行する情報処理方法にある。【００２３】
さらに、本開示の第５の側面は、
情報処理装置において実行する情報処理方法であり、
データ処理部が、撮像部で撮像される撮像画像に仮想画像が重畳される映像を表示する表示部を備える端末の空間位置情報を取得する取得処理と、
データ処理部が、前記端末の空間位置情報に応じて、前記表示部に前記仮想画像を表示させるための表示情報を特定する特定処理を実行する情報処理方法にある。【００２４】
さらに、本開示の第６の側面は、
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、
画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
前記表示部に表示された撮影画像に重畳表示する仮想画像であり、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像を格納した記憶部と、
前記記憶部から前記仮想画像を取得し、取得した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記データ処理部は、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、
推定位置から撮影した仮想画像を前記記憶部から選択して表示、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する情報処理方法にある。【００２５】
さらに、本開示の第７の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、
クライアントとの通信を実行する通信部と、
前記クライアントの表示部に表示されたクライアント撮像部の撮影画像に重畳表示する仮想画像を選択して送信するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記クライアントの動き情報に応じて推定した所定時間後の前記クライアント撮像部位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択させ、クライアントに送信する処理を実行させるプログラムにある。【００２６】
さらに、本開示の第８の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、撮像部で撮像される撮像画像に仮想画像が重畳される映像を表示する表示部を備える端末の空間位置情報を取得する取得処理と、
データ処理部が、前記端末の空間位置情報に応じて、前記表示部に前記仮想画像を表示させるための表示情報を特定する特定処理を実行させる.プログラムにある。【００２７】
さらに、本開示の第９の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、
画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
前記表示部に表示された撮影画像に重畳表示する仮想画像であり、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像を格納した記憶部と、
前記記憶部から前記仮想画像を取得し、取得した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、推定位置から撮影した仮想画像を前記記憶部から選択して表示、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行させるプログラムにある。【００２８】
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。【００２９】
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００３０】
本開示の一実施例の構成によれば、表示部に表示されたカメラ撮影画像に、カメラ撮影方向に応じた自然な仮想画像を重畳表示する構成が実現される。
具体的には、仮想画像をクライアントに送信するサーバと、カメラ撮影画像とサーバから送信される仮想画像を重畳表示するクライアントを有する。サーバはクライアント（カメラ）の動きに応じて推定した所定時間後のクライアント位置から撮影した仮想画像をクライアントに送信する。サーバ、またはクライアントのいずれかにおいて、現在時刻Ｔにおけるクライアントの位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後のクライアントの撮影方向を推定し、推定方向から撮影した仮想画像をクライアントに送信する。
これらの構成により、クライアントの表示部に表示されたカメラ撮影画像に、カメラ撮影方向に応じた自然な仮想画像を重畳表示する構成が実現される。
【図面の簡単な説明】
【００３１】
【図１】本開示の処理の利用例について説明する図である。
【図２】本開示の処理の概要について説明する図である。
【図３】本開示の処理の概要について説明する図である。
【図４】サーバクライアント間の処理シーケンスの概要について説明する図である。
【図５】本開示の第１実施例の処理シーケンスについて説明するフローチャートを示す図である。
【図６】クライアント（カメラ）の移動態様の推定処理について説明する図である。
【図７】クライアント（カメラ）の角度推定と送信画像の決定処理の詳細について説明するフローチャートを示す図である。
【図８】クライアント（カメラ）の角度推定と送信画像の決定処理に適用する情報の例について説明する図である。
【図９】クライアント（カメラ）の角度推定と送信画像の決定処理に適用する情報の例について説明する図である。
【図１０】クライアント（カメラ）の角度推定と送信画像の決定処理に適用する情報の例について説明する図である。
【図１１】クライアント（カメラ）の角度推定と送信画像の決定処理に適用する情報の例について説明する図である。
【図１２】クライアント（カメラ）の角度推定と送信画像の決定処理に適用する情報の例について説明する図である。
【図１３】クライアントに対する送信データの例について説明する図である。
【図１４】クライアントに対する送信データの例について説明する図である。
【図１５】本開示の第１実施例のサーバとクライアントの構成例について説明する図である。
【図１６】本開示の第１実施例において、サーバからクライアントに提供する画像の例について説明する図である。
【図１７】本開示の第２実施例において、サーバからクライアントに提供する画像の例について説明する図である。
【図１８】本開示の第２実施例の処理シーケンスについて説明するフローチャートを示す図である。
【図１９】クライアントに対する送信データの例について説明する図である。
【図２０】クライアントに対する送信データの例について説明する図である。
【図２１】クライアントに対する送信データの例について説明する図である。
【図２２】本開示の第２実施例のサーバとクライアントの構成例について説明する図である。
【図２３】本開示の第３実施例のサーバとクライアントの構成例について説明する図である。
【発明を実施するための形態】
【００３２】
以下、図面を参照しながら本開示の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行う。
１．本開示の処理の概要について
２．本開示の第１実施例について
３．本開示の第２実施例について
４．本開示の第３実施例について
５．その他の実施例について
６．本開示の構成のまとめ
【００３３】
［１．本開示の処理の概要について］
まず、図１以下を参照して、本開示の処理の概要について説明する。
図１は、本開示の処理の一利用例を示す図である。ポスター１０の前にユーザＡ２１が立ち、ユーザＢ２２がカメラ機能を持つスマートフォン等の携帯端末（クライアント）３０を用いて、ポスター１０とユーザＡ２１を含む画像を撮影する。なお、撮影画像は例えば動画像である。
【００３４】
携帯端末（クライアント）３０は、クライアント（携帯端末）３０の通信部を介して撮影情報をサーバに送信する。サーバは、クライアント（携帯端末）３０から受信した撮影情報に基づいて、クライアント（携帯端末）３０がポスター１０を含む画像を撮影していると認識し、サーバ内のコンテンツデータベースに格納済みのコンテンツ、例えば、ポスター１０に印刷されている人物を撮影した動画像コンテンツを取得して、携帯端末（クライアント）３０に送信する。
【００３５】
携帯端末（クライアント）３０は、サーバから受信したコンテンツ（動画像）を、撮影中の画像に重ねて表示する。図のクライアント（携帯端末）３０の表示画像中の仮想画像（実写画像）３１である。
図１に示すように、携帯端末（クライアント）３０は、携帯端末（クライアント）３０が実際に撮影している撮影画像と、サーバから受信した仮想画像を併せて表示した拡張現実（ＡＲ：Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ）画像を表示する。
【００３６】
携帯端末（クライアント）３０に表示する仮想画像３１は、ユーザＡ，ユーザＢが居る場所には実際には存在しない人物の画像である。
しかし、クライアント（携帯端末）３０の画面中には、あたかもユーザＡ２１の隣に立っているように表示される。
クライアント（携帯端末）３０は、この仮想画像３１を含む撮影画像を動画あるいは静止画として撮影、記録することが可能となる。
【００３７】
しかし、携帯端末（クライアント）３０を用いて撮影処理を行っているユーザＢ２２は、携帯端末（クライアント）３０を動かしながら画像撮影を行う。このとき撮影方向が変化し、撮影画像は撮影方向の変化に応じて変化する。
【００３８】
例えば、図２に示すように、携帯端末（クライアント）３０に備えられたカメラ３１の位置は、ユーザによって、（ａ），（ｂ），（ｃ）のような様々な位置に変化する。
このとき、カメラ３１の撮影方向は（方向ａ）、（方向ｂ）、（方向ｃ）のような様々な設定となる。
【００３９】
携帯端末（クライアント）３０に表示される仮想画像３１の被写体人物があたかもその撮影現場にいるように表示するためには、仮想画像３１は、各撮影方向（方向ａ）、（方向ｂ）、（方向ｃ）に応じた画像に変更することが必要となる。
【００４０】
例えば図２に示すようにポスター１０の前に仮想画像被写体想定位置３２を設定したとする。この時、携帯端末（クライアント）３０に表示する仮想画像３１は、図３に示すように、携帯端末（クライアント）３０の動きに応じて変更することで、携帯端末（クライアント）３０に表示される仮想画像としての人物が、あたかもその場にいるような設定となる。
【００４１】
図３には以下の５つの撮影方向に応じた仮想画像の理想的な表示画像例を示している。
図３（ａ）は、仮想画像被写体想定位置３２の正面からの撮影状態。
図３（Ｒ１）は、仮想画像被写体想定位置３２の右斜め方向からの撮影状態。、
図３（Ｒ２）は、仮想画像被写体想定位置３２の右方向からの撮影状態。
図３（Ｌ１）は、仮想画像被写体想定位置３２の左斜め方向からの撮影状態。
図３（Ｌ２）は、仮想画像被写体想定位置３２の左方向からの撮影状態。
【００４２】
図３に示すように、クライアント（携帯端末）３０の表示部に、携帯端末の動きに応じた仮想画像を表示することで、あたかも、仮想画像に相当する人物がその場にいるような動画像を表示し、また撮影して記録することが可能となる。
【００４３】
なお、画像撮影および表示を実行するクライアントは、図１に示すようなスマートフォンに限らず、例えばＰＣや、メガネ型のＡＲグラスなど、様々な情報処理装置によって実現可能である。
【００４４】
本開示の処理を適用することで、スマートフォンやＡＲグラスなどのクライアントに表示中の画像に、人物などの仮想画像を重畳表示する際、重畳対象となる画像の変化に応じて仮想画像を変化させることが可能となり、仮想画像が、重畳対象となるベース画像中に存在するように表示することができる。
具体的には、例えば、様々な視点から観察した自由視点実写動画コンテンツをサーバからクライアントに送信し、クライアントの表示部に表示された例えばカメラ撮影画像に重畳表示する。この処理において、クライアント（カメラ）の動きに応じた自然な動きを持つ仮想画像の表示を実現する。
【００４５】
本開示の処理を行なう実施例について、以下の２つの実施例を順次説明する。
（１）実施例１：クライアントにおいて表示可能な異なる視点のコンテンツをサーバから送信する実施例。
（２）実施例２：サーバから離散的な複数視点のコンテンツと、コンテンツ対応の奥行き情報（デプスマップ）をクライアントに送信し、クライアント側でクライアントに表示する任意視点の画像を生成する実施例、
【００４６】
上記実施例１は、サーバが、クライアントに対して、複数の異なる視点から撮影した動画コンテンツを配信する。クライアントは、クライアントの撮像部（カメラ）の撮影角度情報等に応じて、受信した各視点の動画コンテンツから表示コンテンツを選択し、選択した動画コンテンツのデコード、表示処理を行なう。
クライアントでは動画のデコードのみをすれば良いので負荷が低い。
ただし、より多くの視点の動画像を１度に送る必要があり、通信負荷は大きくなる。
【００４７】
上記実施例２は、サーバが、不連続、すなわち離散的な異なる視点からの動画コンテンツを配信する。さらに、提供する動画コンテンツに対応する奥行き情報（デプスマップ）を併せてクライアントに提供する実施例である。なお、デプスマップは、カメラから被写体までの距離情報を画素単位で設定したデータによって構成される。
クライアント側では、不連続な異なる視点からの動画コンテンツを用いて、必要な表示コンテンツ、すなわち、所望の方向から観察した仮想画像を生成する。例えば、方向Ａと方向Ｂの実写画像と各画像に対応付けられたデプスマップを用いて方向Ａ〜Ｂの中間視点画像を生成して表示する。
【００４８】
この処理例では、サーバからクライアントに対する送信データを少なくすることができる。最低２視点分（角度や位置によっては３視点以上分）の画像を送信すればよい。
ただし、クライアント側で中間視点画像を生成する必要が発生し、クライアント側の負荷が大きくなる。
【００４９】
なお、実施例１，２のいずれの実施例においても、クライアントは、クライアントに備えられたカメラの位置・角度に応じて生成または選択した仮想画像をクライアントにおいて表示中のベース画像であるカメラ撮影画像に重畳する。なお、サーバが提供しクライアントに重畳する仮想画像は、例えば仮想画像が実写の人物画像である場合、人物以外の画素部分の透過度を最大にし、人物領域の透過度を０に設定するなどの透過度情報あるいはマスク情報と呼ばれる画素単位のαチャンネル情報を持つ動画コンテンツとする。
このようなαチャンネルを持つコンテンツを撮影画像に重畳することで、仮想画像に含まれる人物領域のみがクライアントの撮影画像に重畳され、人物以外の画像領域では撮影画像がそのまま表示される。
【００５０】
また、以下の実施例において詳細に説明するが、サーバとクライアント間の通信においては、ネットワーク遅延が発生する。従って、サーバからクライアントに提供するコンテンツは、ネットワークの遅延を考慮したコンテンツとすることが必要である。すなわち、例えば、クライアントの動きに基づく、一定時間後のクライアントの撮影角度を予測し、その予測角度を中心とした所定範囲内の視点からの動画像コンテンツを適応的に配信する。
この処理により、全視点の動画を配信するのに比べ必要な帯域幅を大幅に削減可能となる。本開示の処理により、例えば、図３を参照して説明したクライアントの動きに応じた仮想画像のリアルタイム描画が実現される。
【００５１】
なお、クライアントの動き予測は、例えばクライアントの撮影画像に含まれるマーカを利用した処理として実行することができる。すなわち、マーカの撮影位置からカメラの位置情報やカメラの移動方向、移動速度等を取得し、これらの情報からクライアントの動きを予測し、所定時間後のカメラの位置、姿勢を推定する。また、クライアントに備えられた加速度・ジャイロセンサなどのセンサ情報を利用した構成としてもよい。
以下、本開示に従った処理の具体的な実施例について説明する。
【００５２】
［２．本開示の第１実施例について］
本開示の第１実施例について説明する。
図１〜図３を参照して説明したように、本開示の処理では、クライアントの表示部に撮影画像に併せて仮想画像を重畳したＡＲ画像を生成して表示する。
仮想画像は、サーバからクライアントに提供する例を説明する。なお、後段で説明するが、サーバからの画像提供を受けずにクライアント内の記憶部から仮想画像を取得する構成も可能である。
【００５３】
図４を参照してサーバとクライアント間の基本的な通信シーケンスについて説明する。
まず、ステップＳ１１において、画像撮影を実行しているクライアント１００が、サーバに対して撮影情報を送信する。
撮影情報とは、例えば図１に示すポスター１０を撮影していることが確認可能な情報であればよく、ポスターの画像、あるいはポスター１０に設定されたサイバーコード（Ｃｙｂｅｒ−Ｃｏｄｅ）などの二次元バーコード等の識別情報でもよい。
【００５４】
サーバ２００は、クライアントからの撮影情報を受信すると、撮影情報に基づいてクライアントに提供する動画像コンテンツをデータベースから取得し、取得した動画像コンテンツを送信する。
ただし、この動画像送信において、サーバは、クライアント１００の動きに応じて決定する視点画像、すなわち、所定時間後にクライアントが撮影していると推定される方向から観察した仮想画像を選択して送信する。この動画像コンテンツ送信の詳細については後述する。
【００５５】
次に、ステップＳ１３において、クライアント１００は、サーバ２００から受信した動画像コンテンツを撮影画像に重畳して表示する。
サーバクライアントの基本的な処理の流れは以上の通りである。
【００５６】
さらに、詳細な処理シーケンスについて、図５に示すフローチャートを参照して説明する。
図５に示すフローは、撮影画像に仮想画像を重ねたＡＲ画像の表示処理を実行するクライアントの処理と、仮想画像を提供するサーバの処理を含むフローである。
ステップＳ１０１〜Ｓ１０５の処理はクライアントの実行する処理、
ステップＳ１０６〜Ｓ１０７の処理は、サーバまたはクライアントのいずれかで実行する処理、
ステップＳ１０８の処理はサーバの実行する処理、
ステップＳ１０９〜Ｓ１１４の処理は、クライアントの実行する処理、
である。
【００５７】
なお、フローに示す処理は、例えばサーバまたはクライアントの記憶部に格納されたプログラムに従って、サーバまたはクライアントのデータ処理部、すなわちプログラム実行機能を有するＣＰＵ等を有するデータ処理部の制御の下に実行される。
以下、各ステップの処理の詳細について、順次、説明する。
【００５８】
（ステップＳ１０１）
まず、クライアントは、ステップＳ１０１において画像を撮影する。例えば図１に示すようなポスターを撮影する。
【００５９】
（ステップＳ１０２）
次に、クライアントはステップＳ１０２において、後段で必要となるカメラの位置・角度情報を算出するための情報取得に成功したか否かを判定する。
カメラの位置・角度情報を算出するための情報とは、例えば、撮影画像に含まれるマーカである。マーカとは、例えば図１に示すポスター１０に予め印刷されたサイバーコード（Ｃｙｂｅｒ−Ｃｏｄｅ）などの二次元バーコード等である。このようなマーカを認識すれば、カメラ画像に映るマーカの角度から、カメラの位置や角度を算出することができる。
【００６０】
なお、カメラの位置・角度情報を算出するための情報としては、サイパーコード等のマーカに限らず、ポスターやＣＤのジャケットなどの物体自身であってもよい。
クライアントの実行するカメラの位置・角度算出処理アルゴリズムに応じて、何をカメラの位置・角度情報を算出するための情報として利用するかは異なり、適用情報は様々な設定が可能である。
【００６１】
例えば、クライアントのカメラによって撮影された画像から特徴点を抽出しトラッキングすることでカメラの三次元的位置を認識するようなＳＬＡＭ（Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  Ａｎｄ  Ｍａｐｐｉｎｇ）の技術を適用した位置同定処理を行なう構成としてもよい。なお、ＳＬＡＭを適用した処理については、例えば本出願人と同一出願人の特開２０１１−４３４１９号公報等に記載されている。
【００６２】
また、その他、カメラの位置・角度情報を算出するための情報として、クライアント装置に付属するセンサの情報を適用してもよい。
このように、ステップＳ１０２では、クライアントの実行するカメラの位置・角度情報の取得に成功したか否かを判定する。
情報が得られない場合は、その後のＡＲ画像生成処理は不可能と判断し、処理を終了する。
情報が得られた場合は、ステップＳ１０３に進む。
【００６３】
（ステップＳ１０３）
次に、クライアントはステップＳ１０３において、ステップＳ１０２で得られた情報を適用してクライアント（カメラ）の現在の位置および姿勢を算出する。
【００６４】
（ステップＳ１０４）
次に、クライアントはステップＳ１０４において、クライアントに備えられた加速度センサ、ジャイロセンサの出力値を取得する。
【００６５】
（ステップＳ１０５）
次に、クライアントはステップＳ１０５において、クライアント（カメラ）の移動速度と移動方向を算出する。
この処理は、例えばステップＳ１０３で算出したクライアント（カメラ）の現在の位置および姿勢と、ステップＳ１０４で取得したセンサ情報を適用して実行する。
【００６６】
このステップＳ１０５の具体的処理例について、図６を参照して説明する。
図６には、画像撮影とＡＲ画像表示を実行するクライアント１００と、仮想画像被写体想定位置３２を示している。クライアント１００は、ユーザが自由に移動可能である。
ステップＳ１０３において、クライアントの現在位置：Ｃ＝（Ｃｘ，Ｃｙ，Ｃｚ）が算出されている。
ステップＳ１０４において、クライアントの速度ベクトルＶ１が算出されている。
また、仮想画像被写体想定位置：Ｔ＝（ｔｘ，ｔｙ，ｔｚ）とする。
【００６７】
仮想画像被写体想定位置：Ｔ＝（ｔｘ，ｔｙ，ｔｚ）を始点とし、クライアントの現在位置：Ｃ＝（Ｃｘ，Ｃｙ，Ｃｚ）を終点とするベクトル（Ｃ−Ｔ）を半径ベクトルｒとする。
ステップＳ１０５での処理の目的は、図６に示す角速度ω、すなわち、仮想画像被写体に対する視点切り替え方向の角速度ωを算出することである。
図６に示す角速度ωは、クライアント１００の現在時刻の動きに応じた角速度である。
【００６８】
まず、クライアント１００の速度ベクトルｖ１に基づいて、半径ベクトルｒに垂直な方向のクライアントの速度ベクトルｖ２を算出する。
速度ベクトルｖ２は、仮想画像被写体に対応する視点切り替え方向の速度ベクトルである。
仮想画像被写体に対する視点切り替え方向の角速度ωは、
半径ベクトルｒと、
半径ベクトルｒに垂直な方向のクライアントの速度ベクトルｖ２、
これらに基づいて、以下の式で算出できる。
ω＝｜ｒ×ｖ２｜／ｒ２
上記式に従って、仮想画像被写体に対する視点切り替え方向の角速度ωを算出する。
【００６９】
（ステップＳ１０６）
ステップＳ１０６〜Ｓ１０７の処理は、クライアントまたはサーバのいずれかにおいて実行する処理である。
ステップＳ１０６では、例えば、クライアントとサーバ間において、ｐｉｎｇコマンドを送受信し、往復遅延時間（ＲＴＴ：ｒｏｕｎｄ  ｔｒｉｐ  ｔｉｍｅ）を計測する。
【００７０】
（ステップＳ１０７）
次に、ステップＳ１０５で求めたクライアント（カメラ）の移動方向・速度と、ステップＳ１０６で求めたネットワーク遅延時間に基づいて、所定時間後のクライアント（カメラ）の撮影角度を推定し、クライアントに送信すべき仮想画像コンテンツの角度範囲を設定して、送信画像を決定する。
【００７１】
このステップＳ１０７の処理の詳細について、図７以下を参照して説明する。
ステップＳ１０７の処理は、図７に示すフローのステップＳ２０１〜Ｓ２０３の処理によって実行される。
【００７２】
（ステップＳ２０１）
まず、ネットワーク遅延時間Δｔ後のクライアント（カメラ）の中心視点を算出する。
現在時刻をＴ、
ネットワーク遅延時間をΔｔ、
現在時刻Ｔのクライアントのカメラ視点をθＴ、
現在時刻Ｔのクライアントの視点切り替え方向の角速度をωＴ、
とする。
なお、ネットワーク遅延時間Δｔは、クライアントからサーバまでの往復の遅延時間（レイテンシ）である。
【００７３】
なお、ユーザによるクライアントの操作としては、カメラの移動の他、ズームイン／ズームアウトなどの操作もあるが、これらは、被写体のサイズを変更する処理によって対応可能である。ここでは、仮想画像対応の各視点からの動画像コンテンツからクライアント視点に対応する動画像を選択するための情報を得るため、視点切り替え方向の角速度ωＴを用いた処理を行なう。
【００７４】
現在時刻Ｔにおいて、サーバがクライアントに送信すべきデータは、現在時刻Ｔから、ネットワーク遅延時間Δｔ後、すなわち時刻Ｔ＋Δｔのクライアントの推定位置から観察した仮想画像である。
すなわち、サーバは、時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔを中心とした所定範囲の角度ないにある視点から撮影された複数の仮想画像コンテンツを送信する。クライアントは、これらの複数画像から実際のクライアントの位置に応じた画像を選択して表示する。
【００７５】
このように、本開示の処理では、クライアントの動きを予測し、予測したクライアントの位置に対応する視点画像を選択してサーバからクライアントに提供する。
この処理により、通信データ量が削減され、また、クライアント側での処理負荷も軽減され、効率的で精度の高いＡＲ画像表示が実現される。
【００７６】
時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔは、単純に計算すれば、以下の式に従って算出可能である。
θＴ＋Δｔ＝θＴ＋ωＴΔｔ
ステップＳ２０１では、上記式に従って、時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔを算出する。すなわち、ネットワーク遅延時間Δｔ後のクライアント（カメラ）の中心視点を算出する。
【００７７】
なお、さらにクライアントの角加速度等も考慮し、時刻Ｔ＋Δｔにおける角速度を推考慮して時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔを算出する構成としてもよい。
【００７８】
（ステップＳ２０２）
次に、サーバからクライアントに対して送信する画像の視点範囲を決定する。
上記のステップＳ２０１において求めたクライアント視点θＴ＋Δｔは、時刻Ｔにおいて得られたデータに従った仮定の下に推定された現在時刻ＴからΔｔ後のクライアントの位置に対応する１つの視点である。
【００７９】
しかし、実際は、ユーザは時刻Ｔにおいて得られたデータに従った仮定に従ってクライアントを移動させるとは限らない、クライアント（カメラ）の移動速度や方向は、逐次、変化する可能性がある。また、ネットワーク遅延時間も一定ではなく、ネットワークの通信状態によって変化する。
従って、ステップＳ２０１において求めたクライアント視点θＴ＋Δｔは、時刻Ｔ＋Δｔにおける実際のクライアント視点に一致するとは限らず、高確率で発生すると予測される１つの視点位置に過ぎない。
【００８０】
サーバが、クライアント視点θＴ＋Δｔに対応する１つの仮想画像コンテンツのみをクライアントに送信した場合、実際のクライアント視点が、視点θＴ＋Δｔと一致していれば、その送信画像を表示すればよいが、実際のクライアント視点がずれていると、誤った画像が表示されてしまう。
【００８１】
このような誤った画像の表示を防止するため、サーバは、ステップＳ２０１で推定したクライアント視点θＴ＋Δｔに対応する仮想画像に加え、その視点の周囲の視点画像も併せてクライアントに送信する。
ステップＳ２０２では、クライアントに送信する複数の異なる視点画像コンテンツに対応する視点範囲を決定する。
【００８２】
この視点範囲の決定態様としては様々な態様が可能である。
例えば、現在時刻Ｔの時点で、時刻Ｔ＋Δｔのクライアントの角速度ωＴ＋Δｔを予測し、この予測各速度と、実際のクライアントの時刻Ｔ＋Δｔの角速度ωＴ＋Δｔの差分割合のログを収集し、この誤差割合の標準偏差の±２σを送信する角度範囲に設定するといった処理が可能である。
【００８３】
また、このようなログを用いず、予め角度範囲±ｎ度を設定し、ステップＳ２０１で推定したクライアント視点θＴ＋Δｔ±ｎ度の範囲の画像を送信画像として設定する処理を行なってもよい。
さらに、クライアント視点θＴ＋Δｔ±ｎ度の範囲の画像を送信画像として設定するとともに、
時刻Ｔのクライアント角速度ωＴと、
ネットワーク遅延時間Δｔ、
これらの各値をパラメータにした関数ｆ（ωＴ，Δｔ）を設定し、関数数ｆ（ωＴ，Δｔ）が、予め設定した閾値を超えると段階的に角度範囲を増やすといった設定で、送信画像の角度範囲を決定するといった構成としてもよい。
【００８４】
このように、ステップＳ２０２では、たとえば、以下のような複数視点の動画像コンテンツをクライアントに送信するコンテンツとして決定する。
（１）ステップＳ２０１で算出したクライアント視点θＴ＋Δｔから仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ１、
（２）上記クライアント視点θＴ＋Δｔから＋ｋ度の視点から仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ２、
（３）上記クライアント視点θＴ＋Δｔから−ｋ度の視点から仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ３、
（４）上記クライアント視点θＴ＋Δｔから＋２ｋ度の視点から仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ４、
（５）上記クライアント視点θＴ＋Δｔから−２ｋ度の視点から仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ５、
例えば、これらの５つの動画像コンテンツをクライアントに送信するコンテンツとして決定する。
【００８５】
（ステップＳ２０３）
ステップＳ２０２では、ステップＳ２０１で推定したクライアント視点θＴ＋Δｔを含む所定範囲の角度内の複数視点からの動画像をクライアントに送信する画像として決定した。
例えば上記の（１）〜（５）の動画コンテンツである。
【００８６】
しかし、これらの複数の動画コンテンツの視点位置は、クライアント（カメラ）の動き予測に基づいて決定した視点位置であり、クライアント（カメラ）が、上記の（１）〜（５）の画像に対応する視点位置に設定される確率は異なると推定される。
すなわち、ステップＳ２０１で推定したクライアント視点θＴ＋Δｔは、時刻Ｔ＋Δｔにおけるクライアントの視点として最も高確率で発生すると推定される視点であり、その視点から離れるに従って発生確率は低減すると推定される。
【００８７】
ステップＳ２０２において設定した視点範囲に含まれる複数の視点画像コンテンツのすべてを高解像度画像として送信するとデータ量が大きくなり、通信時間の遅延や処理効率が低下する可能性が高くなる。
このような問題の発生を防止するため、ステップＳ２０２において設定した視点範囲に含まれる複数の視点画像コンテンツについて、以下のような設定として送信する。
すなわち、時刻Ｔ＋Δｔにおけるクライアントの視点として高確率であると推定される視点の画像は、高解像度画像として送信し、低確率であると推定される範囲の画像は低解像度の画像として送信する。
このような設定での画像送信を実行することで、送信データ量が削減される。
【００８８】
ステップＳ２０３では、このような設定の画像送信を可能とするため、ステップＳ２０２において設定した視点範囲に含まれる各視点位置にクライアント（カメラ）が設定される確率を推定する。
【００８９】
具体的には、例えば、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔを最大確率とした正規分布を設定し、正規分布に従った確率密度関数を適用して、各視点位置にクライアント（カメラ）が設定される確率を推定する。
【００９０】
具体的な、各視点角度対応の確率演算アルゴリズムについて、図８以下を参照して説明する。
図８は、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔを最大確率とした正規分布を示している。
横軸が視点、縦軸が発生確率を示す。
視点軸の中心（０）は、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔに相当する。
【００９１】
図８に示す正規分布データは、以下のパラメータに基づいて、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔにを基準として平均＝０、標準偏差σとした正規分布データからなる視点確率密度関数である。
時刻Ｔのクライアント角速度をωＴ、
ネットワーク遅延時間をΔｔ、
標準偏差をσ＝α｜ωＴ｜＋Δｔ
ただし、α予め設定した係数、βは予め設定した正の定数である。
【００９２】
図８には、例として、
ネットワーク遅延時間：Δｔ＝１００ｍｓ、
クライアント（カメラ）の角速度ωが、以下の３つの場合の例を示している。
ω＝０ｄｅｇ／ｓ、
ω＝２ｄｅｇ／ｓ、
ω＝１０ｄｅｇ／ｓ、
【００９３】
クライアント（カメラ）の角速度ωが低速であるほど、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔの発生確率が周囲の視点の発生確率に比較して、より高くなる。
一方、クライアント（カメラ）の角速度ωが高速であるほど、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔの発生確率と周囲の視点の発生確率との差が小さくなる。
【００９４】
この図８に示す正規分布データ、すなわち、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔを最大確率とした正規分布データを用いて、ステップＳ２０２において設定した視点範囲に含まれる各視点位置にクライアント（カメラ）が設定される確率を推定する。
【００９５】
なお、図８に示す正規分布データは、視点軸の中心（０）を、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔに設定している。
この視点軸の中心（０）を、時刻Ｔにおける実際のクライアント視点θＴに設定した場合の各角度対応の発生確率を示す確率密度関数は、図９に示す設定となる。
【００９６】
図９には、例として、
ネットワーク遅延時間：Δｔ＝１００ｍｓ、
クライアント（カメラ）の角速度ωが、以下の５つの場合の例を示している。
ω＝０ｄｅｇ／ｓ、
ω＝−２ｄｅｇ／ｓ、
ω＝＋２ｄｅｇ／ｓ、
ω＝−１０ｄｅｇ／ｓ、
ω＝＋１０ｄｅｇ／ｓ、
【００９７】
この図９に示す確率密度関数は、視点軸の中心（０）を、時刻Ｔにおける実際のクライアント視点θＴに設定し、クライアント（カメラ）の角速度ωに応じて、時間Δｔ後に位置すると推定されるクライアントの位置の確率を示している。
角速度ωが（−）の場合は、左方向（−方向）、角速度ωが（＋）の場合は、右方向（＋方向）に偏って確率が高くなる設定となる。
【００９８】
また、図８に示す確率密度関数は、
ネットワーク遅延時間：Δｔ＝１００ｍｓ、
とした例であるが、ネットワーク遅延時間Δｔの値に応じて、確率密度関数は変化する。
図１０は、
クライアント（カメラ）の角速度ω−３ｄｅｇ／ｓ、
ネットワーク遅延時間：Δｔを以下の３つの場合の確率密度関数を示している。
Δｔ＝１０ｍｓ、
Δｔ＝１００ｍｓ、
Δｔ＝１０００ｍｓ、
【００９９】
ネットワーク遅延時間Δｔが小さいほど、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔの発生確率が周囲の視点の発生確率に比較して、より高くなる。
一方、ネットワーク遅延時間Δｔが大きいほど、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔの発生確率と周囲の視点の発生確率との差が小さくなる。
【０１００】
なお、ネットワーク遅延時間Δｔは、時刻Ｔにおいて得られた値を適用して、図８に示す正規分布データを生成すればよい。
なお、ネットワーク遅延時間Δｔは、１回のｐｉｎｇデータの送受信によって計測しているため、必ずしも正確な遅延時間が計測されるとは限らない。これを考慮し、遅延時間の揺らぎ補償を実行する構成としてもよい。
【０１０１】
図１１に、遅延時間の揺らぎ補償グラフを示す。
横軸は、ステップＳ２０１で算出した時刻Ｔ＋Δｔにおけるクライアント視点θＴ＋Δｔを中心（０）とした視点軸、
縦軸が、発生確率を示している。
なお、前提として、時刻Ｔにおけるクライアント（カメラ）の角速度ωが変化なく継続すると仮定している。
遅延時間標準偏差をσｔ、
として、揺らぎ補償角度範囲をαωσｔとする。
ただし、αは、予め設定した係数である。
【０１０２】
この前提で、
角度範囲０〜αωσｔ（またはαωσｔｎ〜０）の区間で一定値最大をとる変則的正規分布関数を確率密度関数と定義する。
【０１０３】
すなわち、
αωσｔ＞０のとき、
θ＞αωσｔ
−ｐ＝ＮＯＲＭＤＩＳＴ（θ，αωσｔ，σ）
０＝＜θ＝＜αωσｔ
−ｐ＝ＮＯＲＭＤＩＳＴ（０，０，σ）
θ＜０
−ｐ＝ＮＯＲＭＤＩＳＴ（θ，０，σ）
なお、ＮＯＲＭＤＩＳＴ（ｘ，ｕ，σ）は、平均ｕ、標準偏差σにおける世紀分布でのｘの確率密度関数後である。
【０１０４】
この確率密度関数を示したのが、図１１に示すグラフである。
図１１には、
遅延時間標準偏差σ＝１ｍｓ，１０ｍｓ，１００ｍｓの３つの場合の例を示している。
例えば、時間Ｔにおいてｐｉｎｇコマンドの送受信に基づいて得られたネットワーク遅延時間Δｔに対して、この図１１に示す遅延時間の揺らぎ補償グラフを適用して、揺らぎ補償を行い、その結果を反映して、図８に示す正規分布データを生成する構成としてもよい。
【０１０５】
図７に示すフローのステップＳ２０３では、上記の処理により、時間Ｔにおいて計測した各データ、あるいはその補正データを適用して例えば図８に示す正規分布データからなる確率密度関数を設定し、この確率密度関数に従って、ステップＳ２０２において設定した視点範囲に含まれる各視点位置にクライアント（カメラ）が設定される確率を推定する。
【０１０６】
このように、図５に示すフローのステップＳ１０７では、図７に示すフローに従って、カメラ角度の推定に基づく送信画像の選択処理を実行し、さらに各選択画像の各視点にクライアントが設定される確率を算出する。
【０１０７】
具体的には、例えば、図１２に示すように送信画像データを決定し、決定した各送信画像の確率、すなわち、クライアントがその視点画像の位置に設定されると推定される確率を算出する。
図１２に示すデータは、ステップＳ１０７において設定されるデータの一例である。
【０１０８】
ステップＳ１０７では、例えば図１２に示すように、以下のデータ（１）〜（５）を送信画像として決定し、各画像の確率を算出する。
（１）動画コンテンツ１（Ｖｉｅｗ１）
ステップＳ２０１で算出したクライアント視点θＴ＋Δｔから仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ１、
クライアントがこの動画コンテンツ１の画像視点に対応する位置に設定される確率＝０．４０。
（２）動画コンテンツ２（Ｖｉｅｗ２）
クライアント視点θＴ＋Δｔ＋ｋから仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ２、
クライアントがこの動画コンテンツ２の画像視点に対応する位置に設定される確率＝０．２０。
【０１０９】
（３）動画コンテンツ３（Ｖｉｅｗ３）
クライアント視点θＴ＋Δｔ−ｋから仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ３、
クライアントがこの動画コンテンツ３の画像視点に対応する位置に設定される確率＝０．２０。
（４）動画コンテンツ４（Ｖｉｅｗ４）
クライアント視点θＴ＋Δｔ＋２ｋから仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ４、
クライアントがこの動画コンテンツ４の画像視点に対応する位置に設定される確率＝０．０５。
（５）動画コンテンツ５（Ｖｉｅｗ５）
クライアント視点θＴ＋Δｔ−２ｋから仮想画像対応の被写体（例えば人物）を撮影した動画像コンテンツ５、
クライアントがこの動画コンテンツ５の画像視点に対応する位置に設定される確率＝０．０５。
ステップＳ１０７では、例えば、このような送信画像の決定と発生確率を決定する。
【０１１０】
（ステップＳ１０８）
次に、図５に示すフローチャートのステップＳ１０８の処理について説明する。
ステップＳ１０８の処理は、サーバにおいて実行する。
サーバは、ステップＳ１０７の処理において決定したデータ、すなわち、例えば、図１２に示すクライアントに送信すべき信画像と確率データを用いてクライアントに送信するストリームを生成する。
【０１１１】
ストリーム生成例を図１３に示す。
サーバは、例えば、図１３（Ａ）に示す複数の動画像コンテンツを含むストリームを生成してクライアントに送信する。
図１３（Ｂ）は、先に図８を参照して説明した確率密度関数のグラフであり、クライアント（カメラ）の時刻Ｔ＋Δｔにおける推定角度を横軸の中心（０）として、各角度に設定されるクライアント（カメラ）の確率を示している。
この確率は、図１２に示すデータにおける確率に対応する。
【０１１２】
サーバは、確率の高い順から、画像１（Ｖｉｅｗ１）、画像２（Ｖｉｅｗ２）、画像３（Ｖｉｅｗ３）、・・・画像７（Ｖｉｅｗ７）として、図１３（Ａ）に示すように、高確率の視点画像を高解像度画像（高ビットレート画像）とし、低確率の視点画像を低解像度画像（低ビットレート画像）として構成した複数画像のストリームデータを生成してクライアントに送信する。
【０１１３】
図１３（Ａ）に示す例は、図１３（Ｂ）に示す確率分布が得られた場合の送信画像ストリームの設定例である。
これに対して、例えば図１４（Ｂ）に示すように、確率分布がなだらかな場合には、異なる視点画像を全て同様の解像度のデータとした図１４（Ａ）に示すような画像ストリームデータを生成して送信してもよい。
【０１１４】
なお、各視点画像は、各々個別のストリームとして送信してもよいが、１つのストリームに複数視点の複数画像をパックして送信する設定としてもよい。
また、サーバの負荷を抑えるために、各視点の画像ストリームはリアルタイムエンコードをするのではなく、解像度・ビットレートごとに事前に生成しておきデータベースに格納しておく構成とするのが好ましい。
【０１１５】
なお、サーバからクライアントに送信する画像データは、例えばＭＰＥＧなどの所定の符号化アルゴリズムによって符号化されたデータであり、クライアント側でデコード処理を実行する必要がある。クライアントでは、異なる視点画像ストリームに表示を切り替える際に、異なる動画像ストリームを選択して新たにデコードを開始しなければならず、このストリーム切り替え時の遅延によりスムーズな画像切り替えができなくなる恐れがある。
【０１１６】
このデコード処理の遅延を最小化するために、クライアントに提供する画像ストリームを、
（ａ）全フレームがキーフレームである動画シーケンスと、
（ｂ）通常の動画シーケンス、
これらの２種類の画像ストリームとして設定してもよい。
【０１１７】
全フレームがキーフレームである動画シーケンスとは、例えば、各画像フレームを単独でデコードできる画像フレームによって構成される符号化データである。通常の動画シーケンスとは、例えば前後の画像フレームを参照したデコードが必要となる符号化データである。
クライアントは、、ストリーム切り替え時にまず「全フレームがキーフレームである動画シーケンス」から１フレーム目を読み込み、高速でデコード処理を行ない表示部に表示し、２フレーム目以降を「通常の動画シーケンス」から読み込みデコードして表示を継続するといった処理が可能となり、表示切り替え時の遅延を低減することが可能となる。
【０１１８】
また、クライアント側でのコンテンツデコードの負荷を削減するために、最大の確率の画像を配信するストリームを固定ストリームとして設定し、
固定した同一ストリームを用いて、クライアントの動きに応じて変更した異なる視点のコンテンツを配信する部分的リアルタイムエンコードを実行する構成としてもよい。
【０１１９】
このように、確率の高い視点画像を、より高いビットレート、解像度データとして送信することで、クライアントでは、高確率に高画質な画像を表示することができる。また、確率の低い視点の画像も送信しているので、クライアントの急峻な動きがあったとしても、対応視点画像が表示できないといった事態が発生する可能性も低減することが可能となる。
【０１２０】
（ステップＳ１０９）
図５のフローに戻り、実施例１の処理シーケンスの説明を続ける。
ステップＳ１０８においてサーバにおいて画像送信が実行されると、次に、クライアントは、ステップＳ１０９において、仮想画像の画像ストリームを受信する。
例えば図１３（Ａ）や図１４（Ａ）を参照して説明した複数視点画像の動画像データからなるストリームである。
【０１２１】
（ステップＳ１１０）
次に、クライアントは、ストリームを受信した時点の、カメラの位置・角度を算出し、クライアントの表示部に表示する仮想画像を選択し、さらに選択した仮想画像の重畳位置を決定する。このカメラの位置・角度を算出処理は、先に説明したステップＳ１０２〜Ｓ１０３の処理と同様の処理であり、この算出結果を適用して仮想画像の選択処理と重畳位置を決定する。
【０１２２】
（ステップＳ１１１）
次に、クライアントは、ステップＳ１１１において、表示する画像として選択した仮想画像ストリームのデコード処理を実行する。
【０１２３】
（ステップＳ１１２）
次に、クライアントは、ステップＳ１１２において、デコードしたコンテンツを、クライアントの表示部に表示中のカメラ撮影画像に重畳する。
【０１２４】
（ステップＳ１１３）
次に、クライアントはステップＳ１１３において、クライアントの表示部（ディスプレイ）に最終結果としての撮影画像に仮想画像を重畳したＡＲ画像を出力する。
（ステップＳ１１４）
ステップＳ１１４において、予め設定した終了条件、例えば画像撮影処理の終了、あるいはアプリケーションの終了などの終了条件が発生したか否かを判定し、終了条件が発生した場合は無処理を終了する。終了条件が発生しない場合は、ステップＳ１０１に戻り、同様の処理を繰り返す。
【０１２５】
このようにして、サーバから送信された仮想画像がクライアントの表示部に表示中の撮影画像に重畳され表示されることになる。
なお、図５に示すフローチャートにおいて、ステップＳ１０５〜Ｓ１０７の処理のを省略し、ステップＳ１０３のカメラ位置、姿勢情報の取得、ステップＳ１０４のカメラの移動方向、速度の算出後、これらの取得情報、すなわちカメラの位置、姿勢、または動き等の空間位置情報に基づいて、表示部に表示するための仮想画像を生成または選択して表示部に出力する構成としてもよい。
【０１２６】
図１５に、本実施例１を実行するサーバ２００とクライアント１００の構成例を示す。
クライアント１００の通信部１０８と、サーバ２００の通信部２０７間でデータ送受信を行う。
なお、図１５において、クライアント１００の構成中に示すネットワーク遅延推定部１０６と、角度範囲推定部１０７は、クライアント１００ではなくサーバ２００の構成要素として設定してもよい。
【０１２７】
図１５に示すクライアント１００、およびサーバ２００は、先に説明した図５に示すフローに従った処理を実行する。
図１５に示す各構成の実行する処理について、図５のフローの各ステップの処理と対応付けて説明する。
【０１２８】
クライアント１００の撮像部（カメラ）１０１は、図５に示すフローのステップＳ１０１のカメラ画像取得処理を実行する。
画像認識部１０２が、図５のフローのステップＳ１０２のカメラ位置・姿勢算出情報の取得処理を実行する。具体的には、例えば図１に示すポスターなどの被写体に設定されたマーカの認識処理を実行する。
【０１２９】
クライアント（カメラ）位置・姿勢算出部１０３は、図５のフローのステップＳ１０３のカメラ位置・姿勢算出処理を実行する。
センサ（加速度メジャイメセンサ等）１０４は、図５のフローのステップＳ１０４のセンサ情報取得処理を実行する。
クライアント移動速度方向算出部１０５は、図５のフローのステップＳ１０５のクライアント（カメラ）移動速度方向算出処理を実行する。
【０１３０】
ネットワーク遅延推定部１０６は、図５のフローのステップＳ１０６のネットワーク遅延推定処理を実行する。
角度範囲推定部１０７は、図５のフローのステップＳ１０７の処理、すなわち、クライアント（カメラ）の位置推定に基づく送信画像の決定処理と確率推定等の処理を実行する。
なお、これらのネットワーク遅延推定部１０６、角度範囲推定部１０７は、サーバ２００側に設定してサーバ２００の処理として実行してもよい。
【０１３１】
角度範囲推定部１０７は、クライアント（カメラ）の位置推定に基づく送信画像を決定し、各送信画像に対応する確率、すなわち各画像に対応する視点位置にクライアントが設定される確率を算出する。具体的には、例えば先に図１２を参照して説明したデータを生成する。
このデータは、通信部を介してサーバ２００の送信画像データ生成部２０６に入力される。
【０１３２】
サーバ２００は、予めクライアントに提供する複数視点の画像コンテンツ（動画ストリーム）を生成し、各視点対応コンテンツ２０５として保持している。
サーバは、事前処理として以下の処理を実行して、各視点対応コンテンツ２０５を生成する。
【０１３３】
すなわち、奥行き情報（デプスマップ）生成部２０２において、コンテンツデータベース２０１に格納されたコンテンツ、すなわち離散的な複数視点からの画像コンテンツを取得し、この画像に対応する奥行き情報（デプスマップ）２０３を生成する。
さらに、中間視点画像生成部２０４において、コンテンツデータベース２０１に格納されたコンテンツと、奥行き情報（デプスマップ）２０３を適用して、コンテンツデータベース２０１に格納されたコンテンツに含まれない中間視点からの画像コンテンツを生成する。
【０１３４】
サーバ２００は、コンテンツデータベース２０１に格納されたコンテンツと、コンテンツデータベース２０１に格納されたコンテンツに含まれない中間視点からの画像コンテンツを含む、例えば、ある被写体に対する３６０度の各視点画像を各視点対応コンテンツ２０５として予め生成する。
【０１３５】
サーバ２００の送信画像データ生成部２０６は、各視点対応コンテンツ２０５からクライアントに送信する画像コンテンツに基づく送信ストリームを生成する処理を行なう。すなわち、図５に示すフローのステップＳ１０８の処理を実行する。
サーバは、例えば、図１２に示すクライアントに送信すべき信画像と確率データを用いてクライアントに送信するストリームを生成する。
具体的には、例えば、図１３（Ａ）、図１４（Ａ）に示すような複数視点の画像コンテンツの組み合わせデータである。
【０１３６】
送信画像データ生成部２０６の生成した送信データは通信部２０７を介してクライアント１００の通信部１０８に送信される。
クライアント１００の通信部１０８は、図５のフローのステップＳ１０９の仮想画像ストリームの受信処理を実行する。
【０１３７】
クライアント１００のコンテンツ選択＆重畳位置算出部１０９は、図５のフローのステップＳ１１０の処理、すなわち、仮想画像の選択と、重畳位置の決定処理を実行する。すなわち、ストリームを受信した時点の、カメラの位置・角度を算出し、クライアントの表示部に表示する仮想画像を選択し、さらに選択した仮想画像の重畳位置を決定する。
【０１３８】
デコード部１１０は、図５のフローのステップＳ１１１の処理、すなわち、選択した仮想画像ストリームのデコード処理を実行する。
表示制御部１１１は、図５のフローのステップＳ１１２、Ｓ１１３の処理、すなわち、デコードしたコンテンツを、クライアント１００の表示部１１２に表示中のカメラ撮影画像に重畳したＡＲ画像を出力する。
【０１３９】
このようにして、サーバから送信された仮想画像がクライアントの表示部に表示中の撮影画像に重畳され表示されることになる。
なお、図１５に示す構成は、サーバ、クライアントの主要構成を示す図であり、サーバ、およびクライアントは、図に示す構成の他、例えば、図６を参照して説明した処理を制御するＣＰＵ等を有する制御部や、制御部において実行するプログラムを格納した記憶部などを有する。
【０１４０】
［３．本開示の第２実施例について］
次に、本開示の第２実施例について説明する。
第２実施例は、サーバから離散的な複数視点のコンテンツと、コンテンツ対応の奥行き情報（デプスマップ）をクライアントに送信し、クライアント側でクライアントに表示する任意視点の画像を生成する実施例である。
すなわち、サーバは、クライアントに表示予定の仮想画像を生成するための仮想画像生成用画像とデプスマップをクライアントに送信する。
【０１４１】
上述した第１実施例の処理と、第２実施例の際について、図１６、図１７を参照して説明する。
第１実施例においては、ある角度範囲の視点からの動画像コンテンツ、例えば図１６に示す動画１〜動画ｎまでのｎ個の動画コンテンツをクライアントに送信し、クライアント側では、これらのｎ個のコンテンツから、クライアントの角度等に適合したコンテンツを選択して表示する処理を行なっていた。
【０１４２】
以下に説明する第２実施例では、図１７に示すように、ある角度範囲の視点からの動画像コンテンツのうち、離散的な数視点の画像、例えば図１７に示すように３視点のみの動画像をクライアントに送信する。さらに、これらの３つの送信動画像に対応する奥行き情報（デプスマップ）を併せてクライアントに送信する。
【０１４３】
クライアントは、これら離散的な視点からの画像とデプスマップを適用して、例えば動画１と動画２の間の視点からの中間視点画像を生成してクライアントに表示する画像を生成して表示する。
この第２実施例の構成では、サーバからクライアントに送信する画像データのデータ量を削減することが可能となるという利点がある。
【０１４４】
この第２実施例の処理シーケンスについて、図１８に示すフローチャートを参照して説明する。
図１８に示すフローは先に第１実施例の処理シーケンスとして説明した図５のフローと共通の処理が含まれる。
実施例１と同様の処理は、ステップＳ１０１〜Ｓ１０６の処理、ステップＳ１０９の処理、ステップＳ１１２〜Ｓ１１４の処理である。
図１８のフローに示す、
ステップＳ１０７ｂ
ステップＳ１０８ｂ、
ステップＳ１１０ｂ、
ステップＳ１１１ｂ、
これらの処理が実施例１とは異なる処理となる。
【０１４５】
以下、実施例１と共通の処理については簡略化して説明し、異なる部分について重点的に説明する。
なお、実施例１と同様、図１８に示すフローは、撮影画像に仮想画像を重ねたＡＲ画像の表示処理を実行するクライアントの処理と、仮想画像を提供するサーバの処理を含むフローである。
ステップＳ１０１〜Ｓ１０５の処理はクライアントの実行する処理、
ステップＳ１０６〜Ｓ１０７の処理は、サーバまたはクライアントのいずれかで実行する処理、
ステップＳ１０８の処理はサーバの実行する処理、
ステップＳ１０９〜Ｓ１１４の処理は、クライアントの実行する処理、
である。
【０１４６】
なお、フローに示す処理は、例えばサーバまたはクライアントの記憶部に格納されたプログラムに従って、サーバまたはクライアントのデータ処理部、すなわちプログラム実行機能を有するＣＰＵ等を有するデータ処理部の制御の下に実行される。
以下、各ステップの処理の詳細について、順次、説明する。
【０１４７】
（ステップＳ１０１）
まず、クライアントは、ステップＳ１０１において画像を撮影する。例えば図１に示すようなポスターを撮影する。
（ステップＳ１０２）
次に、クライアントはステップＳ１０２において、後段で必要となるカメラの位置・角度情報を算出するための情報取得に成功したか否かを判定する。
カメラの位置・角度情報を算出するための情報とは、例えば、撮影画像に含まれるマーカである。マーカとは、例えば図１に示すポスター１０に予め印刷されたサイバーコード（Ｃｙｂｅｒ−Ｃｏｄｅ）などの二次元バーコード等である。
【０１４８】
（ステップＳ１０３）
次に、クライアントはステップＳ１０３において、ステップＳ１０２で得られた情報を適用してクライアント（カメラ）の現在の位置および姿勢を算出する。
（ステップＳ１０４）
次に、クライアントはステップＳ１０４において、クライアントに備えられた加速度センサ、ジャイロセンサの出力値を取得する。
【０１４９】
（ステップＳ１０５）
次に、クライアントはステップＳ１０５において、クライアント（カメラ）の移動速度と移動方向を算出する。
この処理は、例えばステップＳ１０３で算出したクライアント（カメラ）の現在の位置および姿勢と、ステップＳ１０４で取得したセンサ情報を適用して実行する。
このステップＳ１０５の具体的処理例については、先に図６を参照して説明した通りである
【０１５０】
（ステップＳ１０６）
ステップＳ１０６〜Ｓ１０７ｂの処理は、クライアントまたはサーバのいずれかにおいて実行する処理である。
ステップＳ１０６では、例えば、クライアントとサーバ間において、ｐｉｎｇコマンドを送受信し、往復遅延時間（ＲＴＴ：ｒｏｕｎｄ  ｔｒｉｐ  ｔｉｍｅ）を計測する。
【０１５１】
（ステップＳ１０７ｂ）
次に、ステップＳ１０５で求めたクライアント（カメラ）の移動方向・速度と、ステップＳ１０６で求めたネットワーク遅延時間に基づいて、所定時間後のクライアント（カメラ）の撮影角度を推定し、クライアントに送信すべき仮想画像コンテンツの角度範囲を設定して、送信画像を決定する。
【０１５２】
このステップＳ１０７ｂの処理は、まず、先に説明した実施例１と同様、図７に示すフローのステップＳ２０１〜Ｓ２０３の処理を実行する。
この結果として、例えば、図１２に示す送信すべき角度範囲の視点画像とその確率、すなわち、クライアントがその視点画像の位置に設定されると推定される確率を算出する。
【０１５３】
本実施例では、さらに、これらの画像のすべてではなく、離散的な視点の画像のみをクライアントに送信する画像として設定する。
具体的には、例えば、図１７を参照して説明したような算出した視点角度範囲の両端の画像と、図７のステップＳ２０１で推定したクライアント位置、すなわち時刻Ｔ＋Δｔにおけるクライアント（カメラ）の視点に最も近い視点画像の組み合わせを送信画像として選択する。
【０１５４】
（ステップＳ１０８ｂ）
サーバは、ステップＳ１０７ｂの処理において決定した送信画像データとデプスマップを併せた画像データストリームを生成する。
図１９以下を参照してストリーム生成例について説明する。
【０１５５】
図１９（Ａ）は、図７に示すフローに従って算出された視点対応の確率分布データである。
このデータを利用してクライアントに送信する離散的な視点画像を選択してクライアントに送信する。
図１９（Ｂ）が送信画像データの例である。
時刻Ｔ＋Δｔにおける視点画像である（Ｖｉｅｗ１）と、所定角度離れた位置の視点画像（Ｖｉｅｗ２）、（Ｖｉｅｗ３）については高解像度画像として送信する。
さらに、時刻Ｔ＋Δｔにおける視点画像である（Ｖｉｅｗ１）から離れた視点の角度対応の画像（Ｖｉｅｗ４）〜（Ｖｉｅｗ７）については低解像度画像として送信する。
【０１５６】
なお、各画像には各画像対応の奥行き情報（デプスマップ）を併せてクライアントに送信する。
クライアントが、（Ｖｉｅｗ１）と（Ｖｉｅｗ２）の間の中間視点画像を表示画像として選択した場合は、クライアント側で（Ｖｉｅｗ１）と（Ｖｉｅｗ２）の画像と、各画像のデプスマップを利用して中間視点画像を生成して表示する。
その他の各画像の中間視点画像が必要な場合も同様の処理を行なう。
【０１５７】
図２０に示す例は、さらに、送信画像を削減した処理例である。
図２０（Ａ）は、図１９（Ａ）と同様、図７に示すフローに従って算出された視点対応の確率分布データである。
このデータを利用してクライアントに送信する離散的な視点画像を選択してクライアントに送信する。
図２０（Ｂ）が送信画像データの例である。
【０１５８】
図２０に示す例では、時刻Ｔ＋Δｔにおける視点画像である（Ｖｉｅｗ１）と、所定角度離れた位置の視点画像（Ｖｉｅｗ２）、（Ｖｉｅｗ３）については高解像度画像として送信する。
さらに、時刻Ｔ＋Δｔにおける視点画像である（Ｖｉｅｗ１）から離れた視点の角度対応の画像（Ｖｉｅｗ４）〜（Ｖｉｅｗ７）中、両端の（Ｖｉｅｗ６）と（Ｖｉｅｗ７）のみを低解像度画像として送信し、（Ｖｉｅｗ４），（Ｖｉｅｗ５）については送信しない。
【０１５９】
クライアントが、（Ｖｉｅｗ２）と（Ｖｉｅｗ６）の間の中間視点画像を表示画像として選択した場合は、クライアント側で（Ｖｉｅｗ２）と（Ｖｉｅｗ６）の画像と、各画像のデプスマップを利用して中間視点画像を生成して表示する。
その他の各画像の中間視点画像が必要な場合も同様の処理を行なう。
【０１６０】
さらに、確率分布が、例えば図２１（Ａ）に示すように、時刻Ｔ＋Δｔにおける視点画像である（Ｖｉｅｗ１）の位置の確率が極めて高く、周囲の離れた角度における確率が低い場合は、離れた角度の画像の送信を行わない設定としてもよい。
すなわち、図２１（Ｂ）に示すように、時刻Ｔ＋Δｔにおける視点画像である（Ｖｉｅｗ１）と、所定角度離れた位置の視点画像（Ｖｉｅｗ２）、（Ｖｉｅｗ３）についてのみ高解像度画像として送信する。
【０１６１】
図１８のフローのステップＳ１０８ｂでは、このように様々な設定で、送信画像ストリームを生成してクライアントに送信する。
本実施例では、離散的な視点の画像を選択し、デプスマップとともにクライアントに送信し、クライアント側で必要に応じてチュウカンシテンガゾウヲ生成して表示する処理を行なうことになる。
【０１６２】
（ステップＳ１０９）
図１８のフローに戻り、実施例２の処理シーケンスの説明を続ける。
ステップＳ１０８ｂにおいてサーバにおいて画像送信が実行されると、次に、クライアントは、ステップＳ１０９において、仮想画像の画像ストリームを受信する。
例えば図１９〜図２１を参照して説明した複数視点画像の動画像データとデプスマップからなるストリームである。
【０１６３】
（ステップＳ１１０ｂ）
次に、クライアントは、ストリームを受信した時点の、カメラの位置・角度を算出し、クライアントの表示部に表示する仮想画像の視点位置を決定し、さらに決定した視点対応の仮想画像の重畳位置を決定する。このカメラの位置・角度を算出処理は、先に説明したステップＳ１０２〜Ｓ１０３の処理と同様の処理であり、この算出結果を適用して仮想画像の視点位置と重畳位置を決定する。
【０１６４】
（ステップＳ１１１ｂ）
次に、クライアントは、ステップＳ１１１ｂにおいて、決定した視点位置対応の画像生成に必要な画像ストリームのデコード処理を実行する。
例えば、図２０（Ｂ）に示す画像を受信し、（Ｖｉｅｗ３）と（Ｖｉｅｗ７）の中間視点画像を表示画像として決定している場合は、（Ｖｉｅｗ３）と（Ｖｉｅｗ７）の画像をデコードし、これらの画像のデプスマップを適用して中間視点画像を生成する。
【０１６５】
（ステップＳ１１２）
次に、クライアントは、ステップＳ１１２において、生成した画像コンテンツを、クライアントの表示部に表示中のカメラ撮影画像に重畳する。
【０１６６】
（ステップＳ１１３）
次に、クライアントはステップＳ１１３において、クライアントの表示部（ディスプレイ）に最終結果としての撮影画像に仮想画像を重畳したＡＲ画像を出力する。
【０１６７】
（ステップＳ１１４）
ステップＳ１１４において、予め設定した終了条件、例えば画像撮影処理の終了、あるいはアプリケーションの終了などの終了条件が発生したか否かを判定し、終了条件が発生した場合は無処理を終了する。終了条件が発生しない場合は、ステップＳ１０１に戻り、同様の処理を繰り返す。
【０１６８】
このようにして、サーバから送信された仮想画像がクライアントの表示部に表示中の撮影画像に重畳され表示されることになる。
【０１６９】
図２２に、本実施例２を実行するサーバ２００とクライアント１００の構成例を示す。
クライアント１００の通信部１０８と、サーバ２００の通信部２０７間でデータ送受信を行う。
なお、図２２において、クライアント１００の構成中に示すネットワーク遅延推定部１０６と、角度範囲推定部１０７は、クライアント１００ではなくサーバ２００の構成要素として設定してもよい。
【０１７０】
図２２に示すクライアント１００、およびサーバ２００は、先に説明した図１９に示すフローに従った処理を実行する。
図２２に示す各構成の実行する処理について、図１９のフローの各ステップの処理と対応付けて説明する。
【０１７１】
クライアント１００の撮像部（カメラ）１０１は、図１９に示すフローのステップＳ１０１のカメラ画像取得処理を実行する。
画像認識部１０２が、図１９のフローのステップＳ１０２のカメラ位置・姿勢算出情報の取得処理を実行する。具体的には、例えば図１に示すポスターなどの被写体に設定されたマーカの認識処理を実行する。
【０１７２】
クライアント（カメラ）位置・姿勢算出部１０３は、図１９のフローのステップＳ１０３のカメラ位置・姿勢算出処理を実行する。
センサ（加速度メジャイメセンサ等）１０４は、図１９のフローのステップＳ１０４のセンサ情報取得処理を実行する。
クライアント移動速度方向算出部１０５は、図１９のフローのステップＳ１０５のクライアント（カメラ）移動速度方向算出処理を実行する。
【０１７３】
ネットワーク遅延推定部１０６は、図１９のフローのステップＳ１０６のネットワーク遅延推定処理を実行する。
角度範囲推定部１０７は、図１９のフローのステップＳ１０７ｂの処理、すなわち、クライアント（カメラ）の位置推定に基づく送信画像の決定処理と確率推定等の処理を実行する。
なお、これらのネットワーク遅延推定部１０６、角度範囲推定部１０７は、サーバ２００側に設定してサーバ２００の処理として実行してもよい。
【０１７４】
角度範囲推定部１０７は、クライアント（カメラ）の位置推定に基づく送信画像を決定し、各送信画像に対応する確率、すなわち各画像に対応する視点位置にクライアントが設定される確率を算出する。具体的には、例えば先に図１２を参照して説明したデータを生成する。
このデータは、通信部を介してサーバ２００の送信画像データ生成部２０６に入力される。
【０１７５】
サーバ２００は、予めクライアントに提供する離散的な複数の視点の画像コンテンツ（動画ストリーム）をコンテンツデータベース２０１に保持している。
サーバは、事前処理として奥行き情報（デプスマップ）生成部２０２において、コンテンツデータベース２０１に格納されたコンテンツ、すなわち離散的な複数視点からの画像コンテンツを取得し、この画像に対応する奥行き情報（デプスマップ）２０３を生成する。
【０１７６】
サーバ２００の送信画像データ生成部２０６は、各視点対応コンテンツ２０５からクライアントに送信する画像コンテンツに基づく送信ストリームを生成する処理を行なう。すなわち、図１９に示すフローのステップＳ１０８ｂの処理を実行する。
サーバは、例えば、先に図１９〜図２１を参照して説明したように、離散的な複数視点の画像とデプスマップを併せたデータをクライアントに多提供するデータとして設定する。
【０１７７】
送信画像データ生成部２０６の生成した送信データは通信部２０７を介してクライアント１００の通信部１０８に送信される。
クライアント１００の通信部１０８は、図１９のフローのステップＳ１０９の仮想画像ストリームの受信処理を実行する。
【０１７８】
クライアント１００のコンテンツ選択＆重畳位置算出部１０９は、図１９のフローのステップＳ１１０ｂの処理、すなわち、表示すべき仮想画像の視点位置と、重畳位置の決定処理を実行する。すなわち、ストリームを受信した時点の、カメラの位置・角度を算出し、クライアントの表示部に表示する仮想画像の視点位置を決定し、さらに決定した仮想画像の重畳位置を決定する。
【０１７９】
デコード部１１０は、図１９のフローのステップＳ１１１の処理、すなわち、決定した視点位置対応の画像生成に必要な画像ストリームのデコード処理を実行する。
例えば、図２０（Ｂ）に示す画像を受信し、（Ｖｉｅｗ３）と（Ｖｉｅｗ７）の中間視点画像を表示画像として決定している場合は、（Ｖｉｅｗ３）と（Ｖｉｅｗ７）の画像をデコードし、これらの画像のデプスマップを適用して中間視点画像を生成する。
【０１８０】
表示制御部１１１は、図１９のフローのステップＳ１１２、Ｓ１１３の処理、すなわち、デコードしたコンテンツを、クライアント１００の表示部１１２に表示中のカメラ撮影画像に重畳したＡＲ画像を出力する。
【０１８１】
このようにして、サーバから送信された仮想画像がクライアントの表示部に表示中の撮影画像に重畳され表示されることになる。
【０１８２】
この第２実施例の処理は、以下の利点を持つ。
（利点１）ネットワークの帯域幅が削減できる。もしくは、帯域を保ちながら画質を向上させられる。
これは送信すべき視点数が最小、２視点の画像でよくなるためである。
（利点２）クライアント端末の急峻な動きに更にロバストになる。
送信するストリームにおいて、確率の低い視点の中間の元映像はスキップして両端の映像だけを送ることが可能となり、確率の低い視点区間については補間すべき視点間の視差を増加させることで送信するストリームの数を減らすことが可能となる。これによって、実施例１に比べて送信できる角度範囲を広げられやすい。
【０１８３】
［４．本開示の第３実施例について］
次に、本開示の第３実施例について説明する。
第３実施例は、上述した第１実施例と第２実施例を組み合わせた実施例である。
第実施例１は、ある角度範囲の視点からの動画像コンテンツ、例えば図１６に示す動画１〜動画ｎまでのｎ個の動画コンテンツをクライアントに送信し、クライアント側では、これらのｎ個のコンテンツから、クライアントの角度等に適合したコンテンツを選択して表示する処理を行なっていた。
第２実施例では、図１７に示すように、ある角度範囲の視点からの動画像コンテンツのうち、離散的な数視点の画像、例えば図１７に示すように３視点のみの動画像をクライアントに送信する。さらに、これらの３つの送信動画像に対応する奥行き情報（デプスマップ）を併せてクライアントに送信する。
【０１８４】
第１実施例の処理は、ネットワーク帯域が多く必要だったり、画質が相対的に低かったりするが、クライアントでの処理は低負荷であり、容易に実時間での描画が可能である。
一方、第２実施例の処理は、クライアントでの処理が高負荷で、実時間描画が難しく、バッテリーをより多く消費してしまうが、高画質で必要なネットワーク帯域も少ない。
【０１８５】
この２方式を適応的に切り替えることで、さらに状況に応じた最適な動画配信を可能にする構成が実現される。この組み合わせ方式を第３実施例として説明する。
【０１８６】
第３実施例は、具体的には、
（ａ）クライアントの描画速度、演算性能、
（ｂ）ネットワーク帯域幅、
これらをパラメータとして最適な方式、すなわち第１実施例の処理、または第２実施例の処理、いずれかの処理を実行するかを切り替えて処理を行う。
【０１８７】
さらに、重畳するコンテンツごとに処理を切り換える設定としてもよい。
例えば、
（ａ）より高画質が要求されるが、フレームレートは落ちてしまっても良いコンテンツ
（ｂ）３０ｆｐｓでの描画が要求されるが、低画質でも良いコンテンツ
これらのコンテンツ情報をコンテンツ対応のメタデータとして保持し、このメタデータに応じて、最適な方式、すなわち第１実施例の処理、または第２実施例の処理、いずれかの処理を実行するかを切り替えて処理を行う。
【０１８８】
第３実施例の処理を実行するサーバ２００とクライアント１００の構成例を図２３に示す。
図２３に示す構成は、先に実施例１のサーバクライアント構成として説明した図１５に示す構成に以下の構成を追加した構成である。
【０１８９】
クライアント１００の、
ネットワーク遅延帯域幅取得部１１５、
クライアント性能取得部１１６、
サーバ２００の、
コンテンツメタデータベース２０８、
ストリーム切り替え部２０９、
これらの構成が追加された構成である。
【０１９０】
なお、クライアント１００のネットワーク遅延帯域幅取得部１１５はサーバ２００側の設定としてもよい。
【０１９１】
クライアント１００のネットワーク遅延帯域幅取得部１１５は、サーバクライアント間の通信ネットワークの帯域幅を計測する。
クライアント１００のクライアント性能取得部１１６は、クライアントの描画速度性能や演算性能を識別する。
これらの計測データや識別データが、サーバ２００のストリーム切り替え部２０９に通知される。
【０１９２】
サーバ２００のストリーム切り替え部２０９は、入力情報に応じて最適な方式、すなわち第１実施例の処理、または第２実施例の処理、いずれかの処理を実行するかを切り替えて処理を行う。
【０１９３】
また、コンテンツメタデータベース２０８には、コンテンツ対応のメタデータ、例えば、
（ａ）より高画質が要求されるが、フレームレートは落ちてしまっても良いコンテンツ
（ｂ）３０ｆｐｓでの描画が要求されるが、低画質でも良いコンテンツ
これらのコンテンツ対応のメタデータが格納されている。
【０１９４】
サーバ２００のストリーム切り替え部２０９は、ソウシンコンテンツに対応するメタデータをコンテンツメタデータベース２０８から取得し、メタデータに応じて、最適な方式、すなわち第１実施例の処理、または第２実施例の処理、いずれかの処理を実行するかを切り替えて処理を行う。
その他の構成の処理は、実施例１および実施例２において説明した処理と同様の処理となる。
【０１９５】
本実施例においては、第１実施例として説明した処理と、第２実施例として説明した処理を、クライアントの性能や、ネットワークにおいて利用可能な帯域幅、あるいはコンテンツ情報としてのメタデータ等に応じて適応的に切り替えることで、状況に応じた最適な動画配信を可能にする構成が実現される。
【０１９６】
［５．その他の実施例について］
（ａ）サーバを利用しない構成について
上述した各実施例では、仮想画像は、サーバが保持し、サーバからクライアントに対して提供する構成とした実施例を説明した。
しかし、仮想画像や仮想画像デプスマップからなるコンテンツをクライアント内のメディア、例えばハードディスクやＤＶＤ，ＢＤ等のディスク型メディア、あるいはフラッシュメモリ等の記憶部に格納し、クライアントのデータ処理部が、記憶部からコンテンツを読み出して、視点対応の仮想画像を選択またはデプスマップを適用して生成してクライアントの表示部に表示する構成としてもよい。
【０１９７】
この場合、上述した実施例におけるサーバ側の処理は、すべてクライアントにおいて実行することになる。
また、上述した実施例において説明したネットワーク遅延については、考慮する必要がなく、ネットワーク遅延の計測処理や、ネットワーク遅延を考慮した角度範囲の設定は不要となる。
【０１９８】
（ｂ）クライアント処理を軽減した構成について
さらに、クライアントの処理を軽減した構成として、例えば、第１実施例の処理シーケンスとして説明した図５に示すフローチャート中、クライアントは、ステップＳ１０１の画像取得処理と、ステップＳ１１３〜Ｓ１１４の処理のみを実行し、その他の処理はサーバにおいて実行する構成としてもよい。
同様に、第２実施例の処理シーケンスとして説明した図１８に示すフローチャート中、クライアントは、ステップＳ１０１の画像取得処理と、ステップＳ１１３〜Ｓ１１４の処理のみを実行し、その他の処理はサーバにおいて実行する構成としてもよい。
【０１９９】
すなわち、クライアントは、クライアントで撮影した画像をサーバに送信し、サーバ側において送信画像に基づいてステップＳ１０２〜Ｓ１１２の全ての処理を実行する。サーバは、クライアントに表示する１つの視点からの画像のみをクライアントに送信し、クライアントは受信画像を撮影画像上に重畳表示する。
この処理構成とすることで、クライアントの処理負荷が大きく軽減されることになる。
【０２００】
［６．本開示の構成のまとめ］
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０２０１】
なお、本明細書において開示した技術は、以下のような構成をとることができる。
（１）  撮像部で撮像される撮像画像に仮想画像が重畳される映像を表示する表示部を備える端末の空間位置情報を取得する取得部と、
前記端末の空間位置情報に応じて、前記表示部に前記仮想画像を表示させるための表示情報を特定する特定部と、
を備える情報処理装置。
【０２０２】
（２）前記情報処理装置は、画像を撮影する撮像部と、前記撮像部の撮影画像を表示する表示部と、サーバから前記仮想画像を受信し、受信した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、前記データ処理部は、情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、推定位置情報を前記サーバに送信し、前記サーバから、前記推定位置から撮影した仮想画像を受信して、受信画像、または受信画像に基づく生成画像を前記表示部に表示する処理を実行する前記（１）に記載の情報処理装置。
【０２０３】
（３）前記データ処理部は、現在時刻Ｔにおける前記撮像部の位置・姿勢情報と移動情報を適用して、サーバとの通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記撮像部の撮影方向を推定し、前記推定方向を前記推定位置情報として前記サーバに送信する前記（１）または（２）に記載の情報処理装置。
（４）前記データ処理部は、現在時刻Ｔにおける前記撮像部の位置・姿勢情報と移動情報を適用して、サーバとの通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記撮像部の撮影方向の確率を算出し、確率の高い範囲の角度範囲を選択し、選択角度範囲に含まれる複数の視点からの仮想画像、または該仮想画像生成用画像とデプスマップを前記サーバから受信する前記（１）〜（３）いずれかに記載の情報処理装置。
【０２０４】
（５）前記データ処理部は、前記選択角度範囲において、相対的に前記確率の高い画像を高解像度画像とし、相対的に前記確率の低い画像を低解像度画像として設定した画像データを前記サーバから受信する前記（４）に記載の情報処理装置。
（６）前記データ処理部は、前記選択角度範囲において、前記確率に大きな差異がない場合、前記選択角度範囲に含まれる複数の視点からの仮想画像を同じ解像度を持つ画像として前記サーバから受信する前記（４）に記載の情報処理装置。
（７）前記データ処理部は、前記サーバから受信した複数の視点からの仮想画像から、前記仮想画像の表示タイミングにおける前記撮像部の撮影方向に近い視点の仮想画像を選択、または前記仮想画像生成用画像とデプスマップを適用して、前記仮想画像の表示タイミングにおける前記撮像部の撮影方向に近い視点から撮影した仮想画像を生成して前記表示部に表示する前記（４）〜（７）いずれかに記載の情報処理装置。
【０２０５】
（８）  クライアントとの通信を実行する通信部と、
前記クライアントの表示部に表示されたクライアント撮像部の撮影画像に重畳表示する仮想画像を選択して送信するデータ処理部を有し、
前記データ処理部は、
前記クライアントの動き情報に応じて推定した所定時間後の前記クライアント撮像部位置から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択し、クライアントに送信する処理を実行するサーバとしての情報処理装置。
【０２０６】
（９）前記データ処理部は、現在時刻Ｔにおける前記クライアント撮像部の位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記クライアント撮像部の撮影方向を推定し、推定方向から撮影した仮想画像、または該仮想画像生成用画像とデプスマップをクライアントに対する送信データとして選択する前記（８）に記載の情報処理装置。
（１０）前記データ処理部は、現在時刻Ｔにおける前記クライアント撮像部の位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後の前記クライアント撮像部の撮影方向の確率を算出し、確率の高い範囲の角度範囲を選択し、選択角度範囲に含まれる複数の視点からの仮想画像をクライアントに対する送信データとして選択する前記（８）または（９）に記載の情報処理装置。
（１１）前記データ処理部は、前記選択角度範囲において、相対的に前記確率の高い画像を高解像度画像とし、相対的に前記確率の低い画像を低解像度画像として設定した送信画像データを生成してクライアントに送信する前記（１０）に記載の情報処理装置。
【０２０７】
（１２）  画像を撮影する撮像部と、
前記撮像部の撮影画像を表示する表示部と、
前記表示部に表示された撮影画像に重畳表示する仮想画像であり、異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像を格納した記憶部と、
前記記憶部から前記仮想画像を取得し、取得した仮想画像を前記表示部に表示された撮影画像に重畳表示する処理を実行するデータ処理部を有し、
前記データ処理部は、
情報処理装置の動き情報に応じて所定時間後の前記撮像部位置を推定し、
推定位置から撮影した仮想画像を前記記憶部から選択して表示、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する情報処理装置。
【０２０８】
（１３）前記記憶部は、
異なる複数の視点からオブジェクトを撮影した複数視点対応の仮想画像とデプスマップを格納し、前記データ処理部は、前記推定位置から撮影した仮想画像を、前記記憶部から取得した仮想画像とデプスマップを適用して生成して前記表示部に表示する前記（１２）に記載の情報処理装置。
（１４）前記データ処理部は、情報処理装置の動き情報に応じて所定時間後の前記撮像部の撮影方向の確率を算出し、高確率の仮想画像を前記記憶部から選択、または、前記記憶部から取得した仮想画像に基づいて生成して前記表示部に表示する処理を実行する前記（１２）または（１３）に記載の情報処理装置。
【０２０９】
さらに、上記した装置およびシステムにおいて実行する処理の方法や、処理を実行させるプログラムも本開示の構成に含まれる。
【０２１０】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０２１１】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０２１２】
以上、説明したように、本開示の一実施例の構成によれば、表示部に表示されたカメラ撮影画像に、カメラ撮影方向に応じた自然な仮想画像を重畳表示する構成が実現される。
具体的には、仮想画像をクライアントに送信するサーバと、カメラ撮影画像とサーバから送信される仮想画像を重畳表示するクライアントを有する。サーバはクライアント（カメラ）の動きに応じて推定した所定時間後のクライアント位置から撮影した仮想画像をクライアントに送信する。サーバ、またはクライアントのいずれかにおいて、現在時刻Ｔにおけるクライアントの位置・姿勢情報と移動情報を適用して、サーバクライアント間における通信の往復遅延時間であるネットワーク遅延時間Δｔを考慮した時間Ｔ＋Δｔ後のクライアントの撮影方向を推定し、推定方向から撮影した仮想画像をクライアントに送信する。
これらの構成により、クライアントの表示部に表示されたカメラ撮影画像に、カメラ撮影方向に応じた自然な仮想画像を重畳表示する構成が実現される。
【符号の説明】
【０２１３】
１０  ポスター
１１  マーカ
２１，２２  ユーザ
３０  クライアント（携帯端末）
３１  仮想画像
１００  クライアント
１０１  撮像部（カメラ）
１０２  画像認識部
１０３  クライアント（カメラ）位置・姿勢算出部
１０４  センサ（加速度・ジャイロセンサ）
１０５  クライアント移動祖輝度方向算出部
１０６  ネットワーク遅延推定部
１０７  角度範囲推定部
１０８  通信部
１０９  コンテンツ選択＆重畳位置算出部
１１０  デコード部
１１１  表示制御部
１１２  表示部
１１５  ネットワーク遅延帯域幅取得部
１１６  クライアント性能取得部
２００  サーバ
２０１  コンテンツデータベース
２０２  奥行き情報（デプスマップ）生成部
２０３  コンテンツ対応奥行き情報（デプスマップ）
２０４  中間視点画像生成部
２０５  各視点対応コンテンツ
２０６  送信画像データ生成部
２０７  通信部
２０８  コンテンツメタデータベース
２０９  ストリーム切り替え部
【図１】
2013187129.tif 000003
【図２】
2013187129.tif 000004
【図３】
2013187129.tif 000005
【図４】
2013187129.tif 000006
【図５】
2013187129.tif 000007
【図６】
2013187129.tif 000008
【図７】
2013187129.tif 000009
【図８】
2013187129.tif 000010
【図９】
2013187129.tif 000011
【図１０】
2013187129.tif 000012
【図１１】
2013187129.tif 000013
【図１２】
2013187129.tif 000014
【図１３】
2013187129.tif 000015
【図１４】
2013187129.tif 000016
【図１５】
2013187129.tif 000017
【図１６】
2013187129.tif 000018
【図１８】
2013187129.tif 000019
【図１９】
2013187129.tif 000020
【図２０】
2013187129.tif 000021
【図２１】
2013187129.tif 000022
【図２２】
2013187129.tif 000023
【図２３】
2013187129.tif 000024
【図１７】
2013187129.tif 000025
【国際調査報告】
2013187129.tif 000026
2013187129.tif 000027
2013187129.tif 000028
2013187129.tif 000029