(57)【要約】ゲーム環境を構築する方法である。この方法では、サードパーティマッピングデータストアから現実世界環境のベースＶＲモデルにアクセスし、現実世界環境は複数の現実世界オブジェクトを含むものである。この方法では、現実世界環境内の第１の現実世界オブジェクトに対応する前記ベースＶＲモデル内の第１のオブジェクトの拡張を行う。この方法では、拡張される前記第１のオブジェクトを前記ベースＶＲモデル内にスティッチして拡張ベースＶＲモデルを生成し、拡張ベースＶＲモデルを、複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶し、前記複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義する。【選択図】図６Ａ
2021514775.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム環境を構築する方法であって、
サードパーティマッピングデータストレージから現実世界環境のベースＶＲモデルにアクセスし、前記現実世界環境は複数の現実世界オブジェクトを含むものであり、
前記現実世界環境内の第１の現実世界オブジェクトに対応する前記ベースＶＲモデル内の第１のオブジェクトの拡張を行い、
拡張される前記第１のオブジェクトを前記ベースＶＲモデル内にスティッチして拡張ベースＶＲモデルを生成し、
前記拡張ベースＶＲモデルを、複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶し、
前記複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義する、方法。
【請求項２】
更に、前記複数の拡張ベースＶＲモデルのうちの前記１つまたは複数についてのリクエストをリモートデバイスから受信し、
前記ゲームアプリケーションのゲームロジックとインタフェースのために、前記複数の拡張ベースＶＲモデルのうちの前記１つまたは複数を前記リモートデバイスに送信し、前記ゲームロジックが、第１のユーザのゲームプレイと連携して前記リモートデバイス上で実行する、請求項１に記載の方法。
【請求項３】
前記リモートデバイスが、複数のユーザのために複数のゲームロジックを実行するように構成されるサーバである、請求項２に記載の方法。
【請求項４】
前記リモートデバイスが、前記第１のユーザのコンソールである、請求項２に記載の方法。
【請求項５】
前記拡張ベースＶＲモデルとインタフェース接続されるように構成されるゲームアプリケーションのゲームロジックの開発に使用するために、前記ライブラリデータストアからソフトウェア開発キット（ＳＤＫ）を通してリモートデバイスに前記拡張ベースＶＲモデルを利用可能にし、前記ゲームアプリケーションが、前記現実世界環境に基づくゲーム環境を更に有する、請求項１に記載の方法。
【請求項６】
前記第１のオブジェクトの拡張では、
前記現実世界環境内の前記第１の現実世界オブジェクトの第１のサーフェスモデルが前記ベースＶＲモデル内で不完全であると判断し、前記ベースＶＲモデルが、複数のサーフェスモデルを含み、各サーフェスモデルは、対応する現実世界オブジェクトに関連付けられるものであり、
オブジェクトデータストアから前記第１の現実世界オブジェクトの複数の画像にアクセスし、
前記第１のオブジェクトの前記複数の画像から構築されるサーフェスセグメントで不完全な前記第１のサーフェスモデルを拡張して、拡張された第１のサーフェスモデルを生成し、
前記スティッチを実行するときに、前記不完全な第１のサーフェスモデルのために前記拡張された第１のサーフェスモデルを使用する、請求項１に記載の方法。
【請求項７】
前記第１のオブジェクトの拡張では、
前記現実世界環境内の前記第１の現実世界オブジェクトの第１のサーフェスモデルが前記ベースＶＲモデル内で不完全であると判断し、前記ベースＶＲモデルが、複数のサーフェスモデルを含み、各サーフェスモデルは、対応する現実世界オブジェクトに関連付けられるものであり、
オブジェクトデータストアから以前生成された完全な第１のサーフェスモデルにアクセスし、
前記以前生成された完全な第１のサーフェスモデルを使用して、前記スティッチを実行するときに前記第１の現実世界オブジェクトを表す、請求項１に記載の方法。
【請求項８】
前記第１のオブジェクトの拡張では、
前記現実世界環境内の前記第１の現実世界オブジェクトの第１のサーフェスモデルが前記ベースＶＲモデル内で不完全であると判断し、前記ベースＶＲモデルが、複数のサーフェスモデルを含み、各サーフェスモデルは、対応する現実世界オブジェクトに関連付けられるものであり、
オブジェクトデータストアから前記第１の現実世界オブジェクトの複数の画像にアクセスし、
前記複数の画像を用いて前記第１の現実世界オブジェクトの完全な第１のサーフェスモデルを生成し、
前記完全な第１のサーフェスモデルを使用して、前記スティッチを実行するときに前記第１の現実世界オブジェクトを表す、請求項１に記載の方法。
【請求項９】
前記ベースＶＲモデル内のギャップ領域を判断し、前記ギャップ領域には、少なくとも１つのオブジェクトが欠けており、
前記ギャップ領域を充填するためにフィラーオブジェクトにアクセスし、
前記拡張ベースＶＲモデルを生成するために、前記フィラーオブジェクトを前記ベースＶＲモデル内にスティッチする、請求項１に記載の方法。
【請求項１０】
前記現実世界環境が、ライブイベント、博物館、及び都市のうちの１つを含む、請求項１に記載の方法。
【請求項１１】
ゲーム環境を構築するためのコンピュータプログラムを記憶する非一時的コンピュータ可読媒体であって、
サードパーティマッピングデータストアから現実世界環境のベースＶＲモデルにアクセスするためのプログラム命令を有し、前記現実世界環境は、複数の現実世界オブジェクトを含むものであり、
前記現実世界環境内の第１の現実世界オブジェクトに対応する前記ベースＶＲモデル内の第１のオブジェクトを拡張するためのプログラム命令を有し、
拡張ベースＶＲモデルを生成するために、拡張される前記第１のオブジェクトを前記ベースＶＲモデル内にスティッチするためのプログラム命令を有し、
前記拡張ベースＶＲモデルを、複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶するためのプログラム命令を有し、
前記複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義するためのプログラム命令を有する、コンピュータ可読媒体。
【請求項１２】
前記複数の拡張ベースＶＲモデルのうちの前記１つまたは複数についてのリクエストをリモートデバイスから受信するためのプログラム命令を有し、
第１のゲームアプリケーションのゲームロジックとインタフェース接続するために、前記複数の拡張ベースＶＲモデルのうちの前記１つまたは複数を前記リモートデバイスに送信するためのプログラム命令を有し、前記ゲームロジックは、第１のユーザのゲームプレイと連携して前記リモートデバイス上で実行されている、請求項１１に記載のコンピュータ可読媒体。
【請求項１３】
前記拡張ベースＶＲモデルとインタフェース接続されるように構成されるゲームアプリケーションのゲームロジックの開発に使用するために、前記ライブラリデータストアからソフトウェア開発キット（ＳＤＫ）を通してリモートデバイスに前記拡張ベースＶＲモデルを利用可能にするためのプログラム命令を有し、前記ゲームアプリケーションは、前記現実世界環境に基づくゲーム環境を有するものである、請求項１１に記載のコンピュータ可読媒体。
【請求項１４】
前記第１のオブジェクトを拡張するための前記プログラム命令が、
前記現実世界環境内の前記第１の現実世界オブジェクトの第１のサーフェスモデルが前記ベースＶＲモデル内で不完全であると判断するためのプログラム命令を有し、前記ベースＶＲモデルは、複数のサーフェスモデルを含み、各サーフェスモデルは、対応する現実世界オブジェクトに関連付けられるものであり、
オブジェクトデータストアから前記第１の現実世界オブジェクトの複数の画像にアクセスし、
前記第１のオブジェクトの前記複数の画像から構築されるサーフェスセグメントで不完全な前記第１のサーフェスモデルを拡張して、拡張された第１のサーフェスモデルを生成し、
前記スティッチを実行するときに、前記不完全な第１のサーフェスモデルのために前記拡張された第１のサーフェスモデルを使用する、請求項１１に記載のコンピュータ可読媒体。
【請求項１５】
前記ベースＶＲモデル内のギャップ領域を判断するためのプログラム命令を有し、前記ギャップ領域には、少なくとも１つのオブジェクトが欠けているものであり、
前記ギャップ領域を充填するためにフィラーオブジェクトにアクセスするためのプログラム命令を有し、
前記拡張ベースＶＲモデルを生成するために、前記フィラーオブジェクトを前記ベースＶＲモデル内にスティッチするためのプログラム命令を有する、請求項１１に記載のコンピュータ可読媒体。
【請求項１６】
プロセッサと、
前記プロセッサに連結され、コンピュータシステムによって実行されると、ゲーム環境を構築する方法を前記コンピュータシステムに実行させる命令を記憶しているメモリと、を有し、前記方法は、
サードパーティマッピングデータストアから現実世界環境のベースＶＲモデルにアクセスし、前記現実世界環境は、複数の現実世界オブジェクトを含むものであり、
前記現実世界環境内の第１の現実世界オブジェクトに対応する前記ベースＶＲモデル内の第１のオブジェクトの拡張を行い、
拡張ベースＶＲモデルを生成するために、拡張される前記第１のオブジェクトを前記ベースＶＲモデル内にスティッチし、
前記拡張ベースＶＲモデルを、複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶し、
前記複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義するものである、コンピュータシステム。
【請求項１７】
前記方法では、
前記複数の拡張ベースＶＲモデルのうちの前記１つまたは複数についてのリクエストをリモートデバイスから受信し、
第１のゲームアプリケーションのゲームロジックとインタフェース接続するために、前記複数の拡張ベースＶＲモデルのうちの前記１つまたは複数を前記リモートデバイスに送信し、前記ゲームロジックは、第１のユーザのゲームプレイと連携して前記リモートデバイス上で実行しているものである、請求項１６に記載のコンピュータシステム。
【請求項１８】
前記方法では、
前記拡張ベースＶＲモデルとインタフェース接続されるように構成されるゲームアプリケーションのゲームロジックの開発に使用するために、前記ライブラリデータストアからソフトウェア開発キット（ＳＤＫ）を通してリモートデバイスに前記拡張ベースＶＲモデルを利用可能にし、前記ゲームアプリケーションは、前記現実世界環境に基づくゲーム環境を有するものである、請求項１６に記載のコンピュータシステム。
【請求項１９】
前記方法において前記第１のオブジェクトの拡張では、
前記現実世界環境内の前記第１の現実世界オブジェクトの第１のサーフェスモデルが前記ベースＶＲモデル内で不完全であると判断し、前記ベースＶＲモデルが、複数のサーフェスモデルを含み、各サーフェスモデルが、対応する現実世界オブジェクトに関連付けられる、前記判断し、
オブジェクトデータストアから前記第１の現実世界オブジェクトの複数の画像にアクセスし、
前記第１のオブジェクトの前記複数の画像から構築されるサーフェスセグメントで不完全な前記第１のサーフェスモデルを拡張して、拡張された第１のサーフェスモデルを生成し、
前記スティッチを実行するときに、前記不完全な第１のサーフェスモデルのために前記拡張された第１のサーフェスモデルを使用する、請求項１６に記載のコンピュータシステム。
【請求項２０】
前記方法では、
前記ベースＶＲモデル内のギャップ領域を判断し、前記ギャップ領域には、少なくとも１つのオブジェクトが欠けており、
前記ギャップ領域を充填するためにフィラーオブジェクトにアクセスし、
前記拡張ベースＶＲモデルを生成するために、前記フィラーオブジェクトを前記ベースＶＲモデル内にスティッチする、請求項１６に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ゲームアプリケーションの３Ｄ仮想現実（ＶＲ）ゲーム世界の開発などの、ソフトウェア開発を開示する。特に、本開示は、オブジェクトの欠落サーフェスを拡張するように、及びギャップを充填するように強化される現実世界環境の利用可能なベースＶＲモデルからＶＲゲーム環境を構築する方法及びシステムを説明する。
【背景技術】
【０００２】
ビデオゲーム技術の進歩により、ビデオゲームはますます人気となってきている。例えば、高性能グラフィックプロセッサは、ビデオゲームをプレイするときに信じられないほどの視聴体験及び双方向体験をもたらす。さらに、ディスプレイは、ますます高解像度で設計されている。例えば、本技術は、ほぼ１９：１０のアスペクト比で２Ｋ解像度（例えば、２０４８×１０８０ピクセル上で２．２メガピクセル）を有するディスプレイを含む。１６：９のアスペクト比で４Ｋ  ＵＨＤ（超高精細）解像度（例えば、３８４０×２１６０ピクセル上で８．２メガピクセル）を有する他のディスプレイが現在市場で推進されており、その勢いを増すことが期待されている。特に、高解像度ディスプレイを利用するように設計されたゲームエンジン上で実行されるビデオゲームをプレイするとき、高解像度ディスプレイと共にグラフィック処理キャパビリティの向上が、ユーザにとってこれまで驚くべき視聴体験を提供している。
【０００３】
高性能グラフィックを使用するため、ゲーム開発者は、３Ｄ没入型及び対話型ゲームアプリケーション（あるいはインタラクティブゲームアプリケーション）を作成している。これらのゲームアプリケーションに見られる３Ｄコンテンツは、３Ｄ空間内に増加した数のオブジェクトを追加することによって構築される、３Ｄゲーム環境を含む。現実的には、これらのオブジェクトは、オブジェクトの相互作用を定義する物理学の標準法則に従い得る。３Ｄゲーム環境の作成は、複数のステップを伴う。例えば、３Ｄゲーム環境は、１つまたは複数のシーンで構成されてもよく、各シーンは、１つまたは複数のオブジェクトを含む。特定シーン内のオブジェクトのそれぞれが、開発者により苦心して構築されており、他のオブジェクトと相互作用するように３Ｄゲーム環境内に置かれている。３Ｄゲーム環境構築のこのプロセスは、時間がかかるが、エンドユーザにより楽しめる没入型環境を生成するために必要である。
【０００４】
しかしながら、３Ｄゲーム環境の構築には非常に時間がかかり、かつ開発者には時間的制約がある場合もあるので、３Ｄゲーム環境が意図されるよりも小さくなり得るように、３Ｄゲーム環境の十分な開発が犠牲にされることがある。さらに、３Ｄゲーム環境は、ゲーム環境を開発するためのコストを考慮すると、その使用を最大化させる取り組みにおいて同じ開発者によって継続的に再使用され得る。しかしながら、これは、３Ｄゲーム環境における新鮮味のなさに繋がり、最終的には新たなゲームアプリケーションが同じ３Ｄゲーム環境に基づくものとなってしまう。
【０００５】
ゲームロジックを構築する時間を、ゲームロジックが動作するバックグラウンドよりも多く開発者に与えるために、３Ｄゲーム環境の生成を能率化することが有益である。
【０００６】
本開示の実施形態は、このような背景の下になされたものである。
【発明の概要】
【０００７】
本開示の実施形態は、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いたＶＲゲーム環境の構築に関し、さらにＶＲゲーム環境を作成するためにオブジェクトのサーフェスを拡張すること及びベースＶＲモデル内のオブジェクトを充填することに関する。ゲーム開発者は、ゲームアプリケーション内の新たに拡張され充填されたＶＲ環境を使用することができる。
【０００８】
一実施形態では、ゲーム環境を構築する方法が開示される。この方法は、サードパーティマッピングデータストアから現実世界環境のベースＶＲモデルにアクセスし、現実世界環境は複数の現実世界オブジェクトを含むものである。この方法は、現実世界環境内の第１の現実世界オブジェクトに対応するベースＶＲモデル内の第１のオブジェクトの拡張を行うことを含む。この方法は、拡張ベースＶＲモデルを生成するために、拡張される第１のオブジェクトをベースＶＲモデル内にスティッチすることを含む。この方法は、対応するゲームアプリケーションの仮想環境として使用するための複数の拡張ベースＶＲモデルを含むライブラリデータストアに拡張ベースＶＲモデルを記憶することを含む。特に、この方法は、拡張ベースＶＲモデルを複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶する、対応するゲームアプリケーションの仮想環境として使用するための複数の拡張ベースＶＲモデルを含むライブラリデータストアに、拡張ベースＶＲモデルを記憶することを含む。この方法は、複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義することを含む。
【０００９】
さらなる別の実施形態では、コンピュータシステムが開示される。コンピュータシステムは、プロセッサ及びメモリを含み、メモリは、プロセッサに連結され、コンピュータシステムによって実行される場合に、ゲーム環境を構築する方法をコンピュータシステムに実行させる命令を記憶している。この方法は、サードパーティマッピングデータストアから現実世界環境のベースＶＲモデルにアクセスし、現実世界環境が複数の現実世界オブジェクトを含む、アクセスすることを含む。この方法は、現実世界環境内の第１の現実世界オブジェクトに対応するベースＶＲモデル内の第１のオブジェクトを拡張することを含む。この方法は、拡張ベースＶＲモデルを生成するために、拡張される第１のオブジェクトをベースＶＲモデル内にスティッチすることを含む。この方法は、対応するゲームアプリケーションの仮想環境として使用するための複数の拡張ベースＶＲモデルを含むライブラリデータストアに拡張ベースＶＲモデルを記憶することを含む。特に、この方法は、拡張ベースＶＲモデルを複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶する、対応するゲームアプリケーションの仮想環境として使用するための複数の拡張ベースＶＲモデルを含むライブラリデータストアに、拡張ベースＶＲモデルを記憶することを含む。この方法は、複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義することを含む。
【００１０】
別の実施形態では、ゲーム環境を構築するためのコンピュータプログラムを記憶する非一時的コンピュータ可読媒体が、開示される。コンピュータ可読媒体は、サードパーティマッピングデータストアから現実世界環境のベースＶＲモデルにアクセスするためのプログラム命令であって、現実世界環境が複数の現実世界オブジェクトを含む、アクセスするためのプログラム命令を含む。コンピュータ可読媒体は、現実世界環境内の第１の現実世界オブジェクトに対応するベースＶＲモデル内の第１のオブジェクトを拡張するためのプログラム命令を含む。コンピュータ可読媒体は、拡張ベースＶＲモデルを生成するために、拡張される第１のオブジェクトをベースＶＲモデル内にスティッチするためのプログラム命令を含む。コンピュータ可読媒体は、対応するゲームアプリケーションの仮想環境として使用するための複数の拡張ベースＶＲモデルを含むライブラリデータストアに拡張ベースＶＲモデルを記憶するためのプログラム命令を含む。特に、コンピュータ可読媒体は、拡張ベースＶＲモデルを複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶する対応するゲームアプリケーションの仮想環境として使用するための複数の拡張ベースＶＲモデルを含むライブラリデータストアに拡張ベースＶＲモデルを記憶するためのプログラム命令を含む。コンピュータ可読媒体は、複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義するためのプログラム命令を含む。
【００１１】
本開示の他の態様は、例として本開示の原理を示し、添付図面と併せて掲げる以下の詳細な説明から明らかとなるであろう。
【００１２】
本開示は、添付図面と併せて掲げる以下の説明を参照することによって、最もよく理解され得る。
【図面の簡単な説明】
【００１３】
【図１】本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築するように構成されるシステムを示す。
【図２】本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築するように構成されるＶＲモデルビルダの機能コンポーネントを示す。
【図３】本開示の一実施形態による、オブジェクトのモデル構築のため、画像及び／またはビデオ内のオブジェクトの認識のため、ならびに現実世界環境の認識のために使用される、例としてのニューラルネットワークを示す。
【図４Ａ】本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築する方法におけるステップを示すフロー図である。
【図４Ｂ】本開示の一実施形態による、ベースＶＲモデル内の不完全なオブジェクトをサーフェスセグメントで拡張するため、及びベースＶＲモデル内の欠落オブジェクトをフィラーオブジェクトで充填するための方法におけるステップを示すフロー図である。
【図５Ａ】本開示の一実施形態による、現実世界環境のベースＶＲモデルを構築するための画像キャプチャデバイスの使用を示す。
【図５Ｂ】本開示の一実施形態による、不十分な数の画像キャプチャデバイスがＶＲモデルを構築するために使用されるときの、現実世界環境のＶＲモデル内の不完全なオブジェクト及びギャップの識別を示す。
【図６Ａ】本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築するために使用される情報のフローを示すデータフロー図である。
【図６Ｂ】本開示の一実施形態による、現実世界環境の拡張ＶＲモデルの選択、及びゲームアプリケーションのゲームロジックへの拡張ＶＲモデルの統合を示す。
【図７】本開示の様々な実施形態の態様を実行するために使用され得る例としてのデバイスのコンポーネントを示す。
【発明を実施するための形態】
【００１４】
以下の詳細な説明は、例示のために多くの具体的詳細を含むが、当業者であれば、以下の詳細に対する多数の変形及び変更が本開示の範囲内にあると理解するであろう。したがって、以下に記載される本開示の態様は、この説明に続く特許請求の範囲に対して一般性を失うことなく、かつ特許請求の範囲に対して制限を課すことなく、明記される。
【００１５】
概して、本開示の様々な実施形態は、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いたＶＲゲーム環境の構築に関する。ベースＶＲモデル内の不完全なオブジェクトは、完全なモデル化されたオブジェクトを作成するためにサーフェスで拡張され、１つまたは複数の拡張ベースＶＲモデルを作成するために,ベースＶＲモデル内のギャップがフィラーオブジェクトで充填される。マッピングライブラリは拡張ベースＶＲモデルを含み、そのゲーム環境のそれぞれは現実世界環境に基づく。このようにして、ゲーム環境を構築するために用いられる取り組みは、サードパーティの現実世界ベースＶＲモデルに依拠し、かつ、ゲームアプリケーション内の使用に適した拡張ベースＶＲモデル（例えば、ゲーム環境を実施するためのゲームアプリケーションのゲームロジックとインタフェース接続する拡張ベースＶＲモデル）を生成するためにそれらのベースＶＲモデルを修正することによって、はるかに減少される。
一実施態様では、これらのゲーム環境は、ゲームアプリケーションを作り出す開発段階の間、ゲーム開発者に利用可能にされる。このように、それぞれの新たなゲームアプリケーションのために対応するＶＲ世界またはゲーム環境をゼロから生成するには著しい時間と取り組みを要するが、それに代えて、ゲーム開発者は、対応するゲームアプリケーションのために拡張ベースＶＲモデルをＶＲゲーム環境として直ちに使用できる。さらに、対応する現実世界環境を表すそれぞれの拡張ベースＶＲモデルは、複数のゲームアプリケーションのためのゲーム環境として使用され得る。即ち、一旦拡張ベースＶＲモデルが作成されると、そのモデルは、現実世界環境内に設定される新たなゲームを作成するときに、多くのゲーム開発者によって使用され得る。したがって、ゲームアプリケーション毎に１つまたは複数の固有のゲーム環境を生成する代わりに、ゲーム環境は、複数のゲームアプリケーションにわたって使用され得る。
このように、ＶＲゲーム環境を生成することに時間をかける代わりに、ゲーム開発者は、ＶＲゲーム環境とインタフェース接続するゲームロジックにより集中することができ、それによって、より高品質のゲームアプリケーションを作成することができる。さらに、事前生成されたゲーム環境を使用すること及び再使用することによって、各ゲームアプリケーションを開発するために必要な時間がより少なくなる。さらに、１つの拡張ベースＶＲモデルが複数のゲームアプリケーションにわたって使用され得るため、拡張ベースＶＲモデルを記憶するように構成されるデータストアは、それが減少した数の拡張ベースＶＲモデルを記憶することができ、複数のゲームアプリケーションのそれぞれについての異なる拡張ベースＶＲモデルを記憶する必要がないときに、より効率的に動作する。即ち、拡張ベースＶＲモデルに基づくゲーム環境を有する、複数のゲームアプリケーションを実行するように構成されるサーバシステムは、記憶される拡張ベースＶＲモデルの数が少なくなるにつれて、ゲーム環境を効率的に記憶し、ゲーム環境に迅速にアクセスすることが可能である。
【００１６】
様々な実施形態の上記概略的理解とともに、実施形態の例としての詳細について、ここで様々な図面を参照して説明する。
【００１７】
明細書全体を通して、「ビデオゲーム」または「ゲームアプリケーション」とは、入力コマンドの実行を通して指示される、任意の種類の対話型アプリケーション、あるいはインタラクティブアプリケーションを表すことを意味する。単なる例示であるが、対話型アプリケーションには、ゲーム、文書処理、ビデオ処理、ビデオゲーム処理などのためのアプリケーションが含まれる。さらに、ビデオゲーム及びゲームアプリケーションという用語は、交換可能である。さらに、「デジタルコンテンツ」とは、２Ｄまたは３Ｄデジタルコンテンツを表し、少なくともその一部にビデオゲーム、ゲームアプリケーション、及びビデオを含むものである。
【００１８】
図１は、本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築するように構成されるシステム１００を示す。サーバ１６０は、拡張ベースＶＲモデルビルダ２００及び深層学習エンジン１９０を含む。サーバ１６０は、サードパーティマッピングシステムから現実世界マッピングまたはＶＲモデルを用いて１つまたは複数のＶＲゲーム環境を構築するように構成される。特に、拡張ベースＶＲモデルビルダ２００は、サードパーティマッピングシステムから３Ｄ現実世界データにアクセスし、及び／または受信することが可能である。各サードパーティマッピングシステムは、ベースＶＲモデルによって表されるような現実世界環境（例えば、屋内及び屋外環境）の構築またはマッピングの、それらの独自のやり方を有する。
このデータ（ＲＡＷ及び／またはベースＶＲモデル）は、現実世界環境の拡張ベースＶＲモデルを構築するために使用され、ベースＶＲモデルは、オブジェクトの不完全なサーフェスを拡張すること、及び欠落オブジェクトを充填することによって再構築される。拡張ベースＶＲモデルは、（例えば、画像キャプチャ点に関連する位置だけではなく）任意の位置からの現実世界環境の３Ｄ仮想ビューを提供する。一実施形態では、現実世界環境は、ライブイベントを含み、ライブイベントは、対応する拡張ベースＶＲモデルによって表される。１つまたは複数の現実世界環境の拡張ベースＶＲモデルは、ライブラリに記憶されてもよく、ゲーム開発者によって後でアクセスされてもよい。このようにして、開発者は、事前生成された拡張ベースＶＲモデルを用いることによって、それらのベースＶＲモデルを再構築すること、またはＶＲモデルをゼロから生成することから時間を節約し得る。したがって、開発者は、エンドユーザのゲーム体験を最大化するゲームロジックを開発することにより多くの時間及びエネルギーを集中させ得る。即ち、開発者は、ＶＲゲーム環境を構築する際に実行される現実世界環境において繰り返し見出される共通の日常的なオブジェクト（例えば、建物、木、街路、公園など）を構築しなくてもよい。
【００１９】
特に、深層学習エンジン１９０は、拡張ベースＶＲモデルビルダ２００の能力を補助するように構成される。例えば、深層学習エンジン１９０は、１つまたは複数の現実世界環境において見出される共通オブジェクトの、３Ｄサーフェスモデルを含むように３Ｄモデルを構築するように構成され得る。例示的な例として、オブジェクトは、建物、家具、一般的な人、動物、木、茂み、木の葉、自動車、バスなどを含み得る。深層学習エンジン１９０は、現実世界環境の画像、ビデオ、及び／またはＶＲモデルに基づくオブジェクトの認識のために使用され得る。オブジェクトの３Ｄモデル１８２は、データストレージ１８０に記憶され得る。
深層学習エンジン１９０は、現実世界環境の画像、ビデオ、及び／またはＶＲモデルに基づく現実世界環境の認識のためにも使用され得る。さらに、深層学習エンジン１９０は、ベースＶＲモデルから不完全なオブジェクト（例えば、不完全なサーフェスモデル）を認識するように構成され、対応する現実世界環境を表すベースＶＲモデル内のギャップ（例えば、欠落オブジェクト）を認識するように構成される。ギャップは、深層学習エンジン１９０によって識別される。このようにして、拡張ベースＶＲモデルビルダ２００は、以前定義されたオブジェクトモデルに基づく追加サーフェスで不完全なサーフェスモデルを拡張することが可能であり、拡張ＶＲモデルを作成するためにフィラーオブジェクトでベースＶＲモデル内のギャップを充填することも可能である。拡張ＶＲモデル構築プロセスの管理は、構築プロセスへのインタフェースを提供するクライアントデバイス１００を介して実行され得る。
【００２０】
拡張ベースＶＲモデルは、データストレージ１８０のライブラリ１８１に記憶される。さらに、オブジェクトモデル（例えば、サーフェスモデル）１８２も、データストレージ１８０に記憶される。拡張ベースＶＲモデルは、対応するゲームアプリケーションの開発中、ゲームロジックと統合されるゲーム環境として後にアクセスされ使用され得る。このようにして、ゲーム開発者は、それらのゲーム環境を生成する代わりに、ゲームアプリケーションにおける使用のために現実世界環境を表す事前生成されたゲーム環境（例えば、３Ｄ  ＶＲモデル）にアクセスすることだけを必要とする。ゲーム開発者は、インターネット１５０を通し、クライアントデバイス１７０を介して拡張ＶＲモデルライブラリ１８１にアクセスし得る。さらに、拡張ベースＶＲモデルは、複数のユーザのゲームプレイと連携して１つまたは複数のゲームアプリケーションを実行するように構成されるサーバまたはコンピューティングリソースによって後にアクセスされ得る。ユーザのゲームプレイ中、ゲームアプリケーションのゲームロジックは、対応する拡張ベースＶＲモデルを通して実施されるように、対応するゲーム環境を作成する。
【００２１】
（ＶＲモデラの）クライアントデバイス１００、（例えば、ゲームアプリケーションをプレイしているユーザの）１７０Ａ、及び（例えば、ゲーム開発者の）１７０Ｂは、当技術分野において既知の汎用または専用コンピュータであってもよく、ゲームコンソール、パーソナルコンピュータ、ラップトップ、タブレットコンピュータ、モバイルデバイス、携帯電話、タブレット、シンクライアント、セットトップボックス、メディアストリーミングデバイスなどを含むがこれらに限定されない。一実施形態では、クライアントデバイス１００及び１７０Ａ〜１７０Ｂは、ビデオゲームを実行し、ＨＭＤ（図示せず）によるレンダリングのためにビデオゲームからビデオ及び音声を出力するように構成され得る。クライアントデバイス１００及び１７０Ａ〜１７０Ｂは、ネットワークを経てサーバ１６０と通信するシンクライアントとしても構成され得る。例えば、ＨＭＤは、一実施態様において、拡張ＶＲモデルを編集及び／または生成する際に装着されてもよい。別の実施態様において、ＨＭＤは、ゲーム開発中にＶＲゲーム環境をレビューする際にゲーム開発者によって装着されてもよい。クライアントデバイス１００及び１７０Ａ〜１７０Ｂは、ビデオゲームを実行することに制限されず、ＨＭＤによってレンダリングするためのＶＲコンテンツを出力する対話型アプリケーションを実行するようにも構成され得る。概して、ＨＭＤは、眼鏡、ゴーグル、またはヘルメットと同様の様式で装着され、対話型ビデオゲームからビデオゲームを、または対話型アプリケーションから他のコンテンツを、対応するユーザに対して表示するように構成される。ＨＭＤは、ユーザの目に近接するそのディスプレイ構造の提供のおかげで、極めて没入型の体験をユーザにもたらす。したがって、ＨＭＤは、ユーザの視野の大部分または全体でさえも占める、ユーザの目のそれぞれに対する表示領域を提供し得る。
【００２２】
システム１００は、ベースＶＲモデルを提供するために構成されるサードパーティマッピングシステム１２０を含む。ベースＶＲモデル１２８は、画像データ１２６及び／またはビデオデータ１２７を用いて構築され、その両方がデータストレージ１２５に記憶される。例えば、フランス、パリのエッフェル塔周辺あたりのベースＶＲモデルが、（例えば、専門家及び／または旅行者などの画像キャプチャデバイスから）キャプチャされた画像データ１２６及び／またはキャプチャされたビデオデータ１２７を用いて構築され得る。ベースＶＲモデル１２８の生成についての概略的説明は、図５Ａに関連して以下に提供される。
【００２３】
例えば、サードパーティマッピングシステムは、ベースＶＲモデルとして動作する街路の３Ｄビューを含むようにサービスをユーザに提供し得る。様々な検索会社が、世界中の街路のこれらのビューを一般大衆に提供している。基本的に、ユーザは、街路に沿ったキャプチャ点の間を飛び越すことが可能であり、各キャプチャ点において、その特定のキャプチャ点におけるビューを（例えば、３６０度）回転することが可能である。キャプチャ点は、典型的には街路の中心または中心付近に位置する。キャプチャ点以外の点からのビューは、サードパーティマッピングシステム１２０によって提供されない。一方、本開示の実施形態は、以下でさらに説明するように、ライブラリ１８１に記憶される拡張ベースＶＲモデルを、サーバ１６０を用いて生成するためにベースＶＲモデル１２８に基づいて構築されることが可能である。いくつかの実施形態では、サーバ１６０は、ベースＶＲモデル１２８上に構築するように構成され、他の実施形態では、サーバ１６０は、ベースＶＲモデル１２８を構築するためにＲＡＷ画像データ１２６及び／またはビデオデータ１２７にアクセスするように構成される。ベースＶＲモデル１２８は、以下でさらに所望されるように、現実世界環境の完全なＶＲモデルを作成するために後でさらに拡張及び充填され得る。
【００２４】
さらに、システム１００は、追加の画像データ１３６及び／またはビデオデータ１３７を提供するように構成されるサードパーティ画像コレクタ１３０を含み、その両方がデータストレージ１３５に記憶される。この追加の画像及びビデオデータは、不完全であるかまたは欠落しているかのいずれかであるベースＶＲモデル内のオブジェクトを拡張するために使用され得る。例えば、フランス、パリのベースＶＲモデルは、画像データ１２６として不完全である場合があり、そのベースＶＲモデルを作成するために使用されるビデオデータ１２７は、キャプチャにおけるキャプチャ点の数が不十分な場合がある。
即ち、画像データ１２６及びビデオデータ１２７は、フランス、パリの完全なＶＲモデルを構築するには不十分でもある。このようにして、追加及び補足の画像データ１３６及び／またはビデオデータ１３７が、ベースＶＲモデル内のオブジェクトの不完全なサーフェスモデルを拡張するために、サーバ１６０によってアクセスされ得る。例えば、不完全なサーフェスモデルが、対応する、かつ汎用の完全なサーフェスモデルで完全に置換されてもよく、または欠落サーフェスが、（例えば、深層学習エンジン１９０によって構築される）完全なサーフェスモデルからのサーフェス部分で置換されてもよい。
【００２５】
図２は、本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築するように構成されるサーバ１６０の機能コンポーネントを示す。特に、システム１６０は、拡張ベースＶＲモデルを構築するように構成される拡張ベースＶＲモデルビルダ２００と、ビルダ２００をサポートする深層学習エンジン１９０とを含み、システム２００への制御及びアクセスは、サーバ１６０と直接、またはインターネット１５０などのネットワークを通してのいずれかで、クライアントデバイス１００を通過し得る。システム１６０のコンポーネントは、ソフトウェア、ハードウェア、またはソフトウェア及びハードウェアの組み合わせにおいて実施され得る。
【００２６】
特に、拡張ベースＶＲモデルビルダ２００は、ローカル環境内で撮られた画像及び／またはビデオに基づくオブジェクト及び／またはローカル環境を認識するように構成される、オブジェクト／環境認識検出モジュール２１０を含む。検出モジュール２１０は、一実施形態において、深層学習エンジン１９０内に構成される。一実施態様では、検出モジュール２１０は、１つまたは複数のオブジェクトを検出するように構成される。例えば、１つまたは複数の画像及び／またはビデオは、オブジェクト認識のために深層学習エンジン１９０に入力され得る。特に、深層学習エンジン１９０は、画像内のオブジェクトのパターンが深層学習エンジン１９０によって以前に学習またはモデル化されたオブジェクトのパターンに類似していると認識することによって、（ビデオの画像を含む）画像内のオブジェクトを識別することが可能である。
例えば、深層学習エンジン１９０は、入力として複数の猫の画像を提供すること、及び飼い猫に一意のパターンを深層学習エンジン１９０に認識させることによって、飼い猫をモデル化すること、及びより詳細には飼い猫の品種または種類（例えば、斑）をモデル化することが可能である。深層学習エンジンによって実行される際に、猫についての同一パターンを有する画像内のオブジェクトを認識し得る、猫認識（例えば、猫についてのオブジェクト認識）アルゴリズムが、作成され得る。即ち、深層学習エンジン１９０は、画像が猫のオブジェクトを含むときに認識し得る。さらに、画像内の他のオブジェクトもまた、他の対応するオブジェクト識別子アルゴリズムを用いて深層学習エンジン１９０によって認識される。
【００２７】
別の実施態様では、検出モジュール２１０は、ローカル環境を検出するように構成される。例えば、１つまたは複数の画像及び／またはビデオは、環境認識のために深層学習エンジン１９０に入力され得る。即ち、深層学習エンジン１９０は、画像またはビデオがキャプチャされているローカル環境を識別することが可能である。深層学習エンジン１９０によって実行される際に、キャプチャされた画像及び／またはビデオに基づくローカル環境を認識し得る、環境認識アルゴリズム（ローカル環境に固有の各アルゴリズム）が作成され得る。したがって、画像及び／またはビデオが、入力として深層学習エンジンに提供されるときに、対応する環境認識アルゴリズムは、入力がそのローカル環境に関連付けられていると判断する。
【００２８】
さらに、拡張ベースＶＲモデルビルダ２００は、（例えば、サードパーティマッピングシステムを通して提供されるような）現実世界環境のベースＶＲモデル内のオブジェクトが不完全であるときに判断するように構成される、サーフェスモデル完全性評価器２１５を含む。オブジェクトモデル（例えば、サーフェスモデル）は、モデルを作成するために使用される画像が十分でないときに、不完全であり得る。例えば、オブジェクトをモデル化するために画像が１つだけ使用されるとき、反対側は、見ることができない場合があり、オブジェクトモデル内に含まれないこととなり、したがって不完全である。オブジェクト及び／またはオブジェクトのモデルが不完全であると識別されるとき、以下で説明するように、それらのモデルを完全にするために追加のアクションが実行され得る。
【００２９】
拡張ベースＶＲモデルビルダ２００は、それらのサーフェスモデルを完全にするために不完全なサーフェスモデルを情報で拡張するように構成されるオブジェクトサーフェス拡張モジュール２２０を含む。例えば、対応するオブジェクトのサーフェスモデルが不完全であると識別されるとき、モデル内で欠落しているサーフェスの部分が、サーフェスモデル内に含まれるようにアクセスされ及び／または生成されてもよく、それによって、モデルを完全にする。例えば、そのオブジェクトのための汎用サーフェスモデルが、以前に生成されていてもよく、ベースＶＲモデルから欠落しているサーフェスの部分が、不完全なサーフェスモデルを拡張するために使用され得る。また、完全な汎用サーフェスモデルが、不完全なサーフェスモデルの代用として使用されてもよい。
さらに、汎用モデルが存在しない場合、そのときオブジェクトサーフェス拡張モジュール２２０は、（例えば、対応するローカル環境内のオブジェクトから撮られる、または対応する汎用オブジェクトから撮られる）オブジェクトの追加画像またはビデオをアクセス及び／またはグラブするように構成され、追加情報に基づいて、不完全なサーフェスモデルを拡張するため、または代用で使用され得る完全なサーフェスモデルを構築するためにそのとき使用される、欠落しているサーフェスの部分（または完全なモデル）を生成するように構成される。
【００３０】
さらに、拡張ベースＶＲモデルビルダ２００は、サードパーティソースによって提供される、対応する現実世界環境のベースＶＲモデルを分析し、モデル内のギャップを検出するように構成される、ベースＶＲモデルギャップ検出器２２５を含む。ベースＶＲモデル内のギャップが、ギャップ領域内の１つのまたは欠落したオブジェクトによって例示される。例えば、ローカル環境が、画像及び／または他の情報源に基づいて、深層学習エンジン１９０によってフランス、パリのエッフェル塔であると認識されるとき、特定のレストランがごく周辺範囲内であることが分かる。ギャップは、ベースＶＲモデル内にその特定のレストランを有しないと識別され得る。他の欠落オブジェクトは、対応するベースＶＲモデルの同一のギャップ及び／または他のギャップから欠落していると識別され得る。
【００３１】
拡張ベースＶＲモデルビルダ２００は、対応するベースＶＲモデル内で識別されるギャップ内に置かれるべきフィラーオブジェクトを構築するように構成される、フィラーオブジェクト用サーフェスモデラ２３０を含む。例えば、フィラーオブジェクトは、対応する現実世界の同一空間内で見出される実際のオブジェクトとの関連付けを有しなくてもよい。即ち、フィラーオブジェクトは、ベースＶＲモデルのギャップまたはギャップ領域内に置かれ得る任意のオブジェクトであってもよい。例えば、オフィスのベースＶＲモデルにおいて、フィラーオブジェクトは、サイドボード、壁の絵、植物、またはテーブルの上の植物などを含み得る。これらのフィラーオブジェクトは、事前に生成されていてもよく、またはベースＶＲモデルを拡張するときに生成されてもよい。一実施態様では、対応するフィラーオブジェクトの追加の画像及び／またはビデオは、（例えば、図１のサードパーティ画像コレクタ１３０から）アクセスされ、フィラーオブジェクト用サーフェスモデルを生成するために使用される。別の実施態様では、フィラーオブジェクトは、対応する現実世界の同一空間内で見出される実際のオブジェクトと関連付けられてもよい。したがって、フィラーオブジェクトは、対応する現実世界オブジェクトを表してもよく、フィラーオブジェクトは、対応するギャップ領域内のベースＶＲモデル内で使用され得る。
【００３２】
さらに、拡張ベースＶＲモデルビルダ２００は、対応する現実世界環境の拡張ＶＲモデルを作成するように構成される、スティッチ／ブレンドモジュール２３５を含む。特に、追加画像及び／またはビデオ、ならびに不完全なオブジェクトの拡張サーフェスモデル、不完全なオブジェクトの代替サーフェスモデル、及びフィラーオブジェクトが、サードパーティマッピングシステムによって提供されるベースＶＲモデルから形成される拡張ＶＲモデルを作成するために合わせてスティッチされ得る。
【００３３】
拡張ベースＶＲモデルビルダ２００は、対応する現実世界環境の生成された拡張ＶＲモデルへのアクセスを提供するように構成される、ソフトウェア開発キット（ＳＤＫ）ビルダ２４０を含む。例えば、ＳＤＫは、拡張ＶＲモデルのライブラリを管理するサーバ２００へのアクセスを与えるツールを含み得る。特に、ＳＤＫは、ゲーム開発者による拡張ＶＲモデルのライブラリ１８１へのアクセスを与えてもよく、選択された拡張ＶＲモデルは、ゲームアプリケーションを開発するためにゲームロジックでレイヤ化され得る。ＳＤＫは、一実施態様において、特定のゲームプラットフォーム（例えば、Ｓｏｎｙ  ＰｌａｙＳｔａｔｉｏｎ（登録商標））に固有であってもよい。別の場合において、ＳＤＫは、拡張ＶＲモデルのライブラリ１８１にアクセスを提供するだけであってもよく、拡張ＶＲモデルのライブラリ１８１から選択されるＶＲモデルは、１つまたは複数のゲームプラットフォーム上でプレイ可能なゲームロジックと統合され得る。
【００３４】
拡張ベースＶＲモデルビルダ２００は、１つまたは複数の汎用オブジェクトについてのサーフェスモデルを構築するように構成されるオブジェクトモデラ２４５を含む。即ち、平屋の建物、住居、二階建ての建物、給油所、特定の動物、立っている一般的な人、歩いている一般的な人、自動車、オートバイ、机、木、セミトレーラなどのいくつかのオブジェクトが、１つまたは複数の現実世界環境において見出される。汎用サーフェスモデルは、それらのオブジェクトについて生成され得る。例えば、対応するオブジェクトについての画像及び／またはビデオが、そのオブジェクトについての汎用モデルを作成するために、深層学習エンジン１９０内で実施されるように、オブジェクトモデラ２４５に入力され得る。
【００３５】
拡張ベースＶＲモデルビルダ２００は、また、反復的かつ計算集中型動作を実行するように構成される深層学習エンジン１９０と併せて作動し得る。具体的には、深層学習エンジン１９０は、前に紹介したオブジェクトモデラ２４５及びオブジェクト／環境認識／検出モジュール２１０の機能を含み、かつ実行し得る。深層学習エンジンは、図３に関連してより完全に説明される。
【００３６】
図３は、本開示の一実施形態による、オブジェクトについてのサーフェスモデルを構築するため、画像及び／またはビデオ内のオブジェクトの認識を実行するため、ならびに画像及び／またはビデオ内にキャプチャされたローカル環境の認識を実行するために使用される、例としてのニューラルネットワークを示す。具体的には、サーバ１６０内の深層学習または機械学習エンジン１９０は、オブジェクト及び／またはローカル環境に関する入力情報（例えば、画像、ビデオ、ベースＶＲモデルなど）として受信するように構成される。深層学習エンジン１９０は、深層学習アルゴリズム、強化学習、または他の人工知能ベースのアルゴリズムを含む人工知能を利用して、前述のようにオブジェクトについてのサーフェスモデルを構築し、画像及び／またはビデオ内のオブジェクトを認識し、画像及び／またはビデオ内のローカル環境を認識する。即ち、学習及び／またはモデル化段階の間、入力データは、オブジェクトについてのサーフェスモデルを作成するため、及び特定の事前定義されたオブジェクトを識別／認識するために使用され得る並列モデル（例えば、学習済みアルゴリズム）を作成するために、深層学習エンジン１９０によって使用される。例えば、入力データは、猫の複数の画像を含んでもよく、それは、深層学習エンジン１９０に供給されるときに一般的な猫についてのサーフェスモデルを作成するように構成され、画像及び／またはビデオ内及び現実世界環境のＶＲモデル内の猫を識別するために使用されるオブジェクト認識アルゴリズム（モデル）を作成するようにも構成される。
【００３７】
ニューラルネットワーク１９０は、対応するユーザの応答、アクション、挙動、欲しいもの及び／または必要なものを判断するためにデータセットを分析する自動化分析ツールの例を表す。異なる種類のニューラルネットワーク１９０が可能である。例では、ニューラルネットワーク１９０が、深層学習をサポートする。それに応じて、教師ありまたは教師なし訓練を用いた深層ニューラルネットワーク、畳み込み深層ニューラルネットワーク、及び／または回帰型ニューラルネットワークが、実施され得る。別の例では、ニューラルネットワーク１９０は、強化学習をサポートする深層学習ネットワークを含む。例えば、ニューラルネットワーク１９０は、強化学習アルゴリズムをサポートするマルコフ決定プロセス（ＭＤＰ）としてセットアップされている。
【００３８】
概して、ニューラルネットワーク１９０は、人工ニューラルネットワークなどの相互接続されたノードのネットワークを表す。各ノードは、データから何らかの情報を学習する。知識は、相互接続を通してノード間で交換され得る。ニューラルネットワーク１９０への入力は、ノードのセットをアクティブ化する。同様に、ノードのこのセットは、他のノードをアクティブ化し、それによって入力についての知識を伝播する。このアクティブ化プロセスは、出力が提供されるまで他のノードにわたって繰り返される。
【００３９】
例示されるように、ニューラルネットワーク１９０は、ノードの階層を含む。最下位階層レベルに、入力層１９１が存在する。入力層１９１は、入力ノードのセットを含む。例えば、これらの入力ノードのそれぞれは、自律パーソナルコンパニオン１００によるユーザ及びユーザに関連付けられた環境のモニタリング及び／または照会中に、アクチュエータを通して能動的に、またはセンサによって受動的に収集されるローカルデータ１１５にマッピングされる。
【００４０】
最上位階層レベルに、出力層１９３が存在する。出力層１９３は、出力ノードのセットを含む。出力ノードは、例えば、ローカルＡＩモデル１２０の１つまたは複数のコンポーネントに関する決定（例えば、予測）を表す。前述の通り、出力ノードは、入力の所与のセットについてユーザの予測または予期される応答、アクション、挙動、欲しいもの及び／または必要なものを識別し得る。入力は、様々なシナリオ（例えば、直接リクエスト、時刻、挙動の様々なパターンなど）を定義し得る。これらの結果は、入力の所与のセットについてのユーザの適当な予測または予期される応答、アクション、挙動、欲しいもの及び／または必要なものを繰り返し判断するために深層学習エンジン１９０によって使用されるパラメータを改良及び／または修正するために、ユーザ及び／または環境の以前の対話及びモニタリングから取得される所定の及び真の結果と比較され得る。即ち、ニューラルネットワーク１９０内のノードは、パラメータを改良するときにそのような決定を行うために使用され得るＡＩモデル１２０のパラメータを学習する。
【００４１】
特に、隠れ層１９２は、入力層１９１と出力層１９３との間に存在する。隠れ層１９２は、「Ｎ」個の隠れ層を含み、「Ｎ」は、１以上の整数である。同様に、隠れ層のそれぞれもまた、隠れノードのセットを含む。入力ノードは、隠れノードに相互接続される。同様に、入力ノードが出力ノードに直接相互接続されないように、隠れノードは、出力ノードに相互接続される。複数の隠れ層が存在する場合、入力ノードは、最下位隠れ層の隠れノードに相互接続される。同様に、これらの隠れノードは、次の隠れ層の隠れノードに相互接続される、などである。２番目に上位の隠れ層の隠れノードは、出力ノードに相互接続される。相互接続は、２つのノードを接続する。相互接続は、学習され得る数値加重を有し、ニューラルネットワーク１９０を入力に適合的で学習可能にする。
【００４２】
概して、隠れ層１９２は、入力ノードについての知識が出力ノードに対応する全てのタスク間で共有されることを可能にする。そうすることで、一実施態様において、変換ｆが、隠れ層１９２を通して入力ノードに適用される。例では、変換ｆは非線形である。例えば、線形正規化関数ｆ（ｘ）＝ｍａｘ（０，ｘ）を含む異なる非線形変換ｆが利用可能である。
【００４３】
ニューラルネットワーク１９０は、最適解を見つけるためにコスト関数ｃも使用する。コスト関数は、所与の入力ｘについてｆ（ｘ）として定義されるニューラルネットワーク１９０によって出力される予測と、グランドトゥルースまたは目標値ｙ（例えば、予測結果）との間の偏差を測定する。最適解は、最適解のコストよりも低いコストを有する解がない状況を表す。コスト関数の例は、そのようなグランドトゥルースラベルが利用可能であるデータについての予測とグランドトゥルースとの間の平均二乗誤差である。学習プロセスの間、ニューラルネットワーク１９０は、逆伝播アルゴリズムを用いて、コスト関数を最小化するモデルパラメータ（例えば、隠れ層１９２内のノード間の相互接続についての加重）を学習する異なる最適化方法を採用し得る。そのような最適化方法の例が、確率的勾配降下である。
【００４４】
例では、ニューラルネットワーク１９０のための訓練データセットは、同じデータ領域からのものであり得る。例えば、ニューラルネットワーク１９０は、入力の所与のセットまたは入力データに基づいて、類似オブジェクトのパターン及び／または特性を学習するため、ローカル環境を認識するため、汎用オブジェクトについてのサーフェスモデルを構築するため、などに訓練される。この例示においては、データ領域は、オブジェクトまたはローカル環境の画像及びビデオデータを含む。別の例では、訓練データセットは、基準値以外の入力データを含むように、異なるデータ領域からのものである。したがって、ニューラルネットワーク１９０は、画像及び／またはビデオデータ内のオブジェクトを認識してもよく、または画像及び／またはビデオデータによってキャプチャされるようにローカル環境を認識してもよく、または入力画像及びビデオデータに基づく対応オブジェクトについてのサーフェスモデルを生成するように構成されてもよい。
【００４５】
拡張ベースＶＲモデルビルダ２００及び深層学習エンジン１９０を含むシステム２００の様々なモジュールの詳細な説明を用いて、図４Ａのフロー図４００Ａは、本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築する方法を開示する。フロー図４００Ａは、前述のように、対応する現実世界環境の拡張ＶＲモデルを構築するときに、システム２００内、より詳細には、拡張ベースＶＲモデルビルダ２００及び／または深層学習エンジン１９０内で実施される。
【００４６】
フロー図４００Ａの方法は、ゲームアプリケーションを開発するときにゲーム環境を提供するために、現実世界環境の拡張ＶＲモデルを構築する状況内で説明するが、他の実施形態は、任意の種類の環境の拡張ベースＶＲモデルを仮想環境として構築するのに十分適している。即ち、任意の種類のベースＶＲモデルの拡張は、１つまたは複数の拡張ＶＲモデルを生成するために実行されてもよく、ベースＶＲモデルは、現実世界、空想世界、仮想世界、及び／または他のデジタル作成された世界に対応し得る。
【００４７】
４１０において、この方法は、サードパーティマッピングデータストレージから現実世界環境のベースＶＲモデルにアクセスすることを含む。現実世界オブジェクトが環境内で見出され得るように、現実世界環境は、複数の現実世界オブジェクトを含む。本発明の実施形態は、現実世界環境に対応するＶＲ世界を生成し、ＶＲ世界は、ゲームアプリケーションについてのゲーム環境として使用され得る。ゼロから、またはボトムアップから始めるのではなく、サードパーティマッピングエンティティからのＶＲ世界は、ベースＶＲモデルとして使用される。ベースＶＲモデルは、典型的には範囲が非常に制限され、概して不完全である。即ち、現実世界環境へのビューは、環境内の点または位置の事前定義されたセットから提供されるだけであるように、ベースＶＲモデルは、現実世界環境の十分なカバレッジを提供しない。一方、本開示の実施形態は、十分なカバレッジを提供する現実世界環境の完全なモデルを作成するためにベースＶＲモデルを修正するように構成される（例えば、対応する拡張ベースＶＲモデルによって定義される空間は、空間内のどの位置からも見ることができる）。当然ながら、本発明の他の実施形態は、（例えば、ボトムアップから構築する）全体で、ゲーム環境として使用されるものなどのＶＲ世界を生成することも可能である。
【００４８】
前述のように、現実世界環境内の複数の現実世界オブジェクトは、深層学習プロセスを通して判断され得る。即ち、現実世界環境の画像及び／またはビデオは、サーバ１６０内の深層学習または機械学習エンジン１９０への入力として提供される。深層学習エンジン１９０は、深層学習アルゴリズム、強化学習、または他の人工知能ベースのアルゴリズムを含む人工知能を利用して、画像及び／またはビデオ内のオブジェクトを認識し、画像及び／またはビデオ内のローカル環境を認識する。
【００４９】
４１５において、この方法は、ベースＶＲモデル内の第１のオブジェクトを拡張することを含む。第１のオブジェクトは、現実世界環境内の第１の現実世界オブジェクトに対応する。第１のオブジェクトは、ベースＶＲモデル内の第１の現実世界オブジェクトの表現（例えば、サーフェスモデル）であってもよい。
【００５０】
一実施形態では、表現が不完全である（例えば、１つまたは複数のサーフェスセグメントがサーフェスモデルにおいて欠落している）ように、第１のオブジェクトは、ベースＶＲモデルにおいて不完全であってもよい。第１のオブジェクトは、ベースＶＲモデル内の第１の現実世界オブジェクトの、より完全な表現を生成するために拡張される。一実施形態では、サーフェスセグメントが、第１の現実世界オブジェクトに対応する不完全なサーフェスモデルを拡張するために使用され得る。サーフェスモデルでは、１つまたは複数のサーフェスセグメントが欠落している。別の実施形態では、第１の現実世界オブジェクトの完全なサーフェスモデル（例えば、汎用またはカスタムサーフェスモデル）が、不完全なサーフェスモデルに対して代用されてもよく、ベースＶＲモデルを拡張するときに第１の現実世界オブジェクトを表すために使用されてもよい。完全なサーフェスモデルは、一実施形態では事前生成されてもよく、別の実施形態では、第１の現実世界オブジェクトの複数の画像及び／またはビデオから生成される。
【００５１】
他の実施形態では、第１のオブジェクトは、ベースＶＲモデルから欠落していてもよい。即ち、拡張プロセスは、ベースＶＲモデル内の第１の現実世界オブジェクトの表現を生成するように修正され得る。一実施形態では、事前生成された完全なサーフェスモデルが、ベースＶＲモデルを拡張するときに第１の現実世界オブジェクトを表すために使用され得る。別の実施形態では、完全なサーフェスモデルは、第１の現実世界オブジェクトの複数の画像及び／またはビデオから生成され、ベースＶＲモデルを拡張するときに第１の現実世界オブジェクトを表すために使用される。
【００５２】
この方法では、任意で、ベースＶＲモデル内のギャップ領域を判断する。ギャップ領域には、少なくとも１つのオブジェクトが欠けている。一例では、ベースＶＲモデルは、現実世界環境において表された領域についての欠落データである。別の例では、現実世界環境において識別された第２の現実世界オブジェクトの表現は、ベースＶＲモデルから欠落していてもよい。
【００５３】
この方法では、ギャップ領域を充填するためにフィラーオブジェクトにアクセスすることを含む。一実施態様において、フィラーオブジェクトは、ギャップ領域を充填するために使用される任意の汎用オブジェクトであってもよく、現実世界環境内に存在してもしなくてもよい。例えば、フィラーオブジェクトは、アクセスのために事前生成され記憶されてもよく、またはフィラーオブジェクトは、対応するオブジェクトの画像及び／またはビデオに基づいて生成され、生成された後でアクセスされてもよい。例えば、４２０において、この方法は、ギャップ領域を充填するために、フィラーオブジェクトを生成すること、及び／または事前生成されたフィラーオブジェクトにアクセスすることを含む。別の実施態様では、フィラーオブジェクトは、ベースＶＲモデルから欠落している、前に紹介した第２の現実世界オブジェクトに対応し得る。例えば、４２３において、この方法は、現実世界環境内の第２の現実世界オブジェクトに対応する、フィラーオブジェクトを生成すること、及び／または事前生成されたフィラーオブジェクトにアクセスすることを含む。
【００５４】
４２５において、この方法は、現実世界環境に対応する拡張ベースＶＲモデルを生成するために、拡張される第１のオブジェクトをベースＶＲモデル内にスティッチすることを含む。さらに、この方法は、任意で、拡張ベースＶＲモデルを生成するために１つまたは複数のフィラーオブジェクトをベースＶＲモデル内にスティッチすることを含む。スティッチアルゴリズム及び方法は、当技術分野において周知であり、環境のシームレスな３Ｄモデルを作成するためにオブジェクト、画像、ビデオを合わせて統合するために使用される。例えば、スティッチすることは、拡張ＶＲモデルを生成するときに不完全なサーフェスモデルに対して拡張サーフェスモデルを代用することを含む。さらに、１つまたは複数のフィラーサーフェスモデルは、拡張ＶＲモデルを生成するときに現実世界環境のベースＶＲモデル内に置かれる。したがって、拡張ベースＶＲモデル内で、オブジェクトはどの位置からも見ることができる。即ち、ビューが現実世界環境内の任意の位置から生成され得るように、現実世界環境の拡張ＶＲモデルは、完全である。このようにして、オブジェクトは、拡張ＶＲモデルの環境内の任意の位置から撮られるように任意の視点から見ることが可能であり得る。
【００５５】
４３０において、この方法は、拡張ベースＶＲモデルを、複数の拡張ベースＶＲモデルを含むライブラリデータストアに記憶することを含む。拡張ベースＶＲモデルのそれぞれが、対応するゲームアプリケーションの対応する仮想環境として使用するために構成される。一実施形態では、拡張ベースＶＲモデルは、ゲームアプリケーションのゲーム環境として使用され得る。４３１において、この方法は、複数の拡張ベースＶＲモデルのうちの１つまたは複数を用いて、ゲームアプリケーションの仮想環境を定義することを含む。
【００５６】
例えば、ゲーム開発者のクライアントデバイスは、拡張ベースＶＲモデルとゲームアプリケーションのゲームロジックをインタフェース接続することを容易にするために、ゲーム開発中に１つまたは複数の拡張ベースＶＲモデルにアクセスし得る。特に、この方法は、拡張ベースＶＲモデルとインタフェース接続されるように構成されるゲームアプリケーションのゲームロジックの開発に使用するために、ライブラリデータストレージからソフトウェア開発キット（ＳＤＫ）を通してリモートデバイスに、対応する拡張ベースＶＲモデルを利用可能にすることを含み、ゲームアプリケーションが、現実世界環境に基づくゲーム環境を有する。このようにして、ゲームロジックは、ゲームアプリケーションにゲーム環境を提供するために、拡張ベースＶＲモデルとインタフェース接続される。
【００５７】
別の例では、ゲームアプリケーションをプレイしている第１のユーザのゲームプレイと連携するクライアントデバイスが、ゲームロジックの実行中に、１つまたは複数の拡張ベースＶＲモデルにアクセスし得る。このようにして、ユーザのゲームプレイのゲーム環境は、対応する現実世界環境の１つまたは複数の拡張ベースＶＲモデルを通して実施される。特に、この方法は、リモートデバイスから拡張ベースＶＲモデルについてのリクエストを受信することを含む。拡張ベースＶＲモデルは、ゲームアプリケーションのゲームロジックとインタフェース接続するためにリモートデバイスに配信され、ゲームロジックは、第１のユーザのゲームプレイと連携してモートデバイス上で実行している。リモートデバイスは、一実施形態では、複数のユーザについての複数のゲームロジックを実行するように構成されるサーバであってもよい。別の実施形態では、リモートデバイスは、第１のユーザのコンソールであってもよい。
【００５８】
この方法では、実施形態では、グラフィックのすべてをゼロから生成する必要はなく、対応する現実世界環境の仮想環境またはゲーム環境を生成することができる。これは、サードパーティマッピングデータを使用し、それを拡張することによって達成され、それにより、拡張仮想環境の一部は予め作成され、拡張仮想環境内で再利用可能である。拡張仮想環境は、他のグラフィックデータのほか、他のＶＲ世界の部分を追加及び／またはインポートすることによって生成される。拡張仮想環境は、ゲームアプリケーションの背景または環境として使用できる。即ち、拡張仮想環境は、関数型ゲームロジックの一部になる。
【００５９】
一実施形態では、サードパーティマッピングデータを分析し、用いて、現実世界環境で見つけられたオブジェクトのグリッドマッピングを生成する。機能層は、オブジェクトのグリッドマッピングに加えることができる。例えば、色、照明、及びテクスチャ、及び他の特徴は、グリッドマッピングの上面に層をなすことができる。さらに、グリッドマッピングによって表されるオブジェクトは、ゲームロジックにプログラムされる物理法則に影響され得る。その方法では、特に仮想環境で他のオブジェクトと対話するとき、オブジェクトは、現実的に見て応答する。別の実施形態では、オブジェクトのグリッドマッピング表現を修正して、ゲームアプリケーション内の仮想環境として使うための現実世界環境の動画版及び／またはグラフィック版を生成することができる。さらに、スキニングを実施して、所望に応じてオブジェクトの修正スキンを生成してもよい。
【００６０】
本開示の一実施形態によれば、拡張ベースＶＲモデルビルダ２００及び深層学習エンジン１９０を含むシステム２００の様々なモジュールの詳細な説明と共に、図４Ｂのフロー図４００Ｂは、サーフェスセグメントを有するベースＶＲモデル内の不完全なオブジェクトを拡張すること及びベースＶＲモデル内のギャップ領域をフィラーオブジェクトで充填することを含む、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築するための方法を開示する。フロー図４００Ｂは、上述したように、対応する現実世界環境の拡張ＶＲモデルを構築するとき、システム２００内に、より詳細には拡張ベースＶＲモデルビルダ２００及び／または深層学習エンジン１９０内に実装される。
【００６１】
４３３において、この方法は、現実世界環境内の複数の現実世界オブジェクトを決定することを含む。例えば、現実世界環境の画像及び／またはビデオは、深層学習エンジン１９０によって分析されて、局所（例えば、名前、場所など）を認識するだけでなく、局所内のオブジェクトも認識し得る。ベースＶＲモデルは、オブジェクト決定のため使用される、少なくとも画像及び／またはビデオの一部を提供してもよい。さらに、ガイドブック、局所に関連した公開情報、都市の販促材料など、オブジェクト決定のため、他のデータ源を使用してもよく、オブジェクト認識アルゴリズムは、どのオブジェクトが局所内に見つかるかを判定するため（例えば、テキストパーサを）実装されてもよい。
【００６２】
加えて、ベースＶＲモデルの分析は、複数の現実世界オブジェクトからのどの現実世界オブジェクトがベースＶＲモデルに表されているかを決定する助けになり得る。ベースＶＲモデルは、ベースＶＲモデルを構築するとき、サードパーティマッピングエンティティによって使用される画像及び／またはビデオによって決定されるように、対応する現実世界環境で見つかったオブジェクトの表示を含んでもよい。通常、ベースモデルを構築するために使用される画像及び／またはビデオの数は、完全なＶＲモデルを構築するには不十分で、それにより、現実世界環境のすべての視野が、ベースＶＲモデル内に表されるわけではない。ベースＶＲモデル内の欠落オブジェクト及びギャップ領域は、以下に記載するように、どのオブジェクトがベースＶＲモデルに表されているかの理解を通して部分的に決定され得る。
【００６３】
４３５において、この方法は、ベースＶＲモデル内の複数の現実世界オブジェクトのための複数のサーフェスモデルを検出することを含む。サーフェスモデルは、任意の角度または視点から見るのに適切な３Ｄモデルとして生成される。３Ｄモデルは、様々な幾何学的形状（例えば、三角形、線など）によって接続される空間内の点の集まり（例えば、頂点）であり得る。表面は、粗さもあってよい。サードパーティマッピングエンティティに応じて、ベースＶＲモデルは、多角形メッシュ、湾曲した表面のための湾曲モデル、点モデル、ワイヤーフレームなどとして構成することができるオブジェクトを含む。
【００６４】
４３７において、この方法は、複数のサーフェスモデル内の不完全なサーフェスモデルを検出することを含む。不完全なオブジェクト及び／またはモデルを、図５Ｂに示す。ベースＶＲモデルを構築するために使用される画像及び／またはビデオの数は、不十分なので、全てのオブジェクトのすべての視野を生成することはできない。例えば、オブジェクトの１つの画像だけがキャプチャされ、対応するオブジェクトモデルを作成、構築するために使用される場合、その１つの画像は、オブジェクトの片側だけをキャプチャできる。そのため、オブジェクトモデルは、反対側の画像が存在しないので、不完全である。即ち、オブジェクトモデルの反対側は、空白である。本開示の実施形態は、以下に記載するように、ベースＶＲモデルを修正する時に使用するためのサーフェスモデルを完成することができる。
【００６５】
４３９において、この方法は、拡張サーフェスモデルを生成するために、不完全なサーフェスモデルの表面を拡張する。この方法では、対応するオブジェクトのための完全なサーフェスモデルは、これらのオブジェクトがすべての角度から完全に見ることができるようにベースＶＲモデルに配置され得る。一実施形態では、第１のオブジェクトは、ベースＶＲモデル内の第１のサーフェスモデルと関連付けられていると認識される。第１のサーフェスモデルは、第１のオブジェクトのすべての視野がベースＶＲモデル内で入手できるわけではないなどのように、既に不完全であると識別されている。第１のオブジェクトは、特定のオブジェクトの種類に対してオブジェクト認識アルゴリズム／モデルを使用して認識されてもよい。ベースＶＲモデルは、それぞれが、現実世界オブジェクトに対応する複数のサーフェスモデルを含む。
【００６６】
一実施形態では、第１のオブジェクトが、第１の不完全なサーフェスモデルと関連付けられていると認識された後、次に第２のデータストレージから（例えば、サードパーティの画像収集エンティティから）第１のオブジェクトの複数の画像及び／またはビデオが得られる。サードパーティのマッピングエンティティが、ベースVRモデルの構築時に使用されず、かつ、オブジェクトモデルを完成させるために使用できる他の画像やビデオを持っている場合は別として、持っていない場合には、ベースVRモデルの作成に使用された画像やビデオは完全な表面モデルを構築するにはまだ不十分であると推定されるので、補足画像および/またはビデオは、必ずしも元のサードパーティのマッピングエンティティから取得されるとは限られない。したがって、補足画像及び／またはビデオは、別のサードパーティマッピングエンティティまたは画像収集エンティティ、局所的オブジェクトデータストアなどから取得される。その後、これらの補足画像及び／またはビデオは、第１の不完全なサーフェスモデルを第１のオブジェクトの複数の画像に基づいて生成されるサーフェスセグメントと共に拡張するために使用されて、第１のオブジェクトの第１の拡張サーフェスモデルを生成する。例えば、様々なスティッチ技術を使用して、第１のオブジェクトのサーフェスモデルを完成するために使用できる補足画像及び／またはビデオを合わせてスティッチし得る。その方法では、不完全な第１のサーフェスモデルは、拡張された第１のサーフェスモデルを生成するために複数の画像及び／またはビデオから構築される少なくとも１つのサーフェスセグメントで拡張される。この拡張された第１のサーフェスモデルを使用して、ベースＶＲモデルの他のオブジェクトと第１のオブジェクトをスティッチすることができる。
【００６７】
別の実施形態では、第１のオブジェクトが、第１の不完全なサーフェスモデルと関連付けられていると認識された後、次に以前生成された完全な第１のサーフェスモデルは、例えば、オブジェクトデータストアから（例えば、サードパーティの画像収集エンティティから、サードパーティマッピングエンティティから、局所的データストアから、など）４４１でアクセスすることができる。この完全な第１のサーフェスモデルは、第１のオブジェクトをベースＶＲモデル内の他のオブジェクトとスティッチするとき、対応する不完全なサーフェスモデルの代替として使用されて、第１のサーフェスモデルを表すことができる。即ち、現実世界環境の拡張ＶＲ世界を生成するとき、第１の不完全なサーフェスモデルは、以前生成された完全な第１のサーフェスモデルによって置換される。
【００６８】
さらに別の実施形態では、第１のオブジェクトが、第１の不完全なサーフェスモデルと関連付けられていると認識された後、次に完全な第１のサーフェスモデルを生成することができる。例えば、第１のオブジェクトの複数の画像及び／またはビデオは、上述したように、第２のデータストレージから（例えば、サードパーティの画像収集エンティティから）アクセスできる。第１の現実世界オブジェクトの完全な第１のサーフェスモデルは、複数の画像及び／またはビデオを用いて生成することができる。この完全な第１のサーフェスモデルは、第１のオブジェクトをベースＶＲモデル内の他のオブジェクトとスティッチするとき、対応する不完全なサーフェスモデルの代替として使用されて、第１のサーフェスモデルを表すことができる。即ち、現実世界環境の拡張ＶＲ世界を生成するとき、第１の不完全なサーフェスモデルは、新しく生成された完全な第１のサーフェスモデルによって置換される。
【００６９】
さらに、現実世界環境に存在するが、ベースＶＲモデルに表されていないことが知られているオブジェクトが識別され得る。欠落オブジェクトを図５Ｂに示す。例えば、街路のシーンでは、街路の特定の位置にある建物は、環境内にあると識別される。ベースＶＲモデルの分析は、建物の表示は、ベースＶＲモデルに表されないと判定し得る。したがって、本開示の実施形態は、ベースＶＲモデルを修正するときに使用する欠落オブジェクトのサーフェスモデルにアクセスする、かつ／またはそれを構築することができる。ベースＶＲモデルを修正するとき、欠落オブジェクトの以前生成されたサーフェスモデルまたは新しく生成されたサーフェスモデルを使用して、欠落オブジェクトを表すことができる。即ち、現実世界環境の拡張ＶＲ世界を生成する場合、欠落オブジェクトをベースＶＲモデル内の他のオブジェクトとスティッチするときに、欠落オブジェクトの以前生成されたサーフェスモデルまたは新しく生成されたサーフェスモデルが使用される。
【００７０】
４４３において、この方法は、ベースＶＲモデル内の第１の複数の現実世界オブジェクトのギャップ領域を検出することを含む。ギャップ領域を図５Ｂに記載し図示する。ベースＶＲモデルを構築するために使用される画像及び／またはビデオの数は十分ではないため、現実世界環境のすべての視野がベースＶＲモデル内でサポートできるわけではない。即ち、ギャップ領域は、ベースＶＲモデル内に存在し、ギャップ領域は、１つまたは複数の欠落オブジェクトを含んでもよい。一実施形態では、ギャップ領域は、まず、ベースＶＲモデルに対応する現実世界環境を認識することによって決定される。この認識は、上述したように深層学習エンジンを用いて実行することができる。例えば、ベースＶＲモデルを生成するために使用される生の画像及び／またはビデオ、あるいはベースＶＲモデル自体またはベースＶＲモデルからの画像は、深層学習エンジンに入力すると提供され得る。
類似のパターンまたは特徴に基づいて、深層学習エンジンは、入力データが、対応する現実世界環境に関連する以前学習したデータに類似すると認識できる。このように、現実世界環境を認識及び／または標識化できる。さらに、現実世界環境を認識すると、現実世界環境内の予想された領域及び／またはオブジェクトを決定できる。また、ベースＶＲモデル内の欠落している領域及び／またはオブジェクトは、ベースＶＲモデル内の１つまたは複数のギャップ領域を示す。例えば、ベースＶＲモデル内に表される現実世界オブジェクトは、現実世界環境に存在する既知のオブジェクトと比較することができる。
【００７１】
４４５において、この方法は、ギャップ領域に位置するフィラーオブジェクト用の１つまたは複数のフィラーサーフェスモデルにアクセスすること及び／またはそれらを生成することを含む。フィラーオブジェクトは、以下に記載するように、現実世界環境内のオブジェクトに対応してもしなくてもよい。
【００７２】
一実施形態では、フィラーオブジェクトは、現実世界環境に存在する任意のオブジェクトに関連しなくてもよい。完全な以前生成された第１のフィラーサーフェスモデルは、アクセスされる。この場合、以前生成された完全な第１のフィラーサーフェスモデルは、現実世界環境の拡張ＶＲ世界を生成するとき、ベースＶＲモデルの第１のギャップ位置に配置される。ベースＶＲモデルを修正するとき、以前生成された第１のフィラーサーフェスモデルを使用して、ギャップ領域に充填してもよい。即ち、現実世界環境の拡張ＶＲ世界を生成する場合、フィラーオブジェクトをベースＶＲモデル内の他のオブジェクトとスティッチするときに、以前生成された第１のフィラーサーフェスモデルが使用される。
【００７３】
別の実施形態では、フィラーオブジェクトは、現実世界環境内に存在するオブジェクトに関連し得るが、ベースＶＲモデルでは欠落している。例えば、現実世界環境に存在することが知られているが、ベースＶＲモデルでは欠落している、第１のギャップオブジェクトを検出することができる。第１のギャップオブジェクトは、ベースＶＲモデル内のギャップ領域（例えば、第１のギャップ位置）に関連付けられる。第１のフィラーサーフェスモデルは、上述したように、第２のデータストレージから第１のギャップオブジェクトの複数の画像にアクセスすることによって新しく生成され得る。
例えば、第２のデータストレージは、サードパーティの画像収集エンティティに関連付けられてもよく、または複数のオブジェクト用の画像を含む独自のデータストレージであってもよい。この場合、第１のギャップオブジェクト用の第１のフィラーサーフェスモデルは、複数の画像に基づいて生成される。したがって、第１のフィラーサーフェスモデルは、現実世界環境の拡張ＶＲ世界を生成するとき、ベースＶＲモデルの第１のギャップ位置に配置される。即ち、ベースＶＲモデルを修正する場合、第１のギャップオブジェクトの第１のフィラーサーフェスモデルを使用して、第１のギャップオブジェクトを表すことができる。具体的には、現実世界環境の拡張ＶＲ世界を生成する場合、第１のギャップオブジェクトをベースＶＲモデル内の他のオブジェクトとスティッチするときに、第１のフィラーサーフェスモデルを使用する。
【００７４】
４４７において、この方法は、現実世界環境に対応する拡張ＶＲモデルを生成するために、拡張サーフェスモデル及び１つまたは複数のフィラーサーフェスモデルをベースＶＲモデルにスティッチすることを含む。例えば、スティッチすることは、拡張ＶＲモデルを生成するときに、不完全なサーフェスモデルを拡張サーフェスモデルに置換することを含む。さらに、１つまたは複数のフィラーサーフェスモデルは、拡張ＶＲモデルを生成するとき、現実世界環境のベースＶＲモデル内に配置される。したがって、拡張ＶＲモデル内で、オブジェクトは任意の位置から見ることができる。即ち、現実世界環境の拡張ＶＲモデルは、完全であり、それにより、視野が現実世界環境の任意の位置から生成できる。その方法では、オブジェクトは、拡張ＶＲモデルの環境内の任意の位置から撮られる任意の視点から見ることができる。
【００７５】
一実施形態では、現実世界環境は、街、公園、内部環境、外部環境などの任意の局所的環境であってもよい。例えば、現実世界環境は、博物館、遊園地、映画館、街、部屋、家、アパートなどであってもよい。別の実施形態では、現実世界環境は、ライブイベントの記録など（例えば、コンサート、映画、講演など）の記録されたイベントである。そのため、拡張ベースＶＲ世界を組み入れるゲームアプリケーションは、上述の通り、任意の現実世界環境に設定することができる。一ユースケースは、博物館である現実世界環境のツアーであるゲームアプリケーションを含む。そうして、ユーザは、仮想環境の博物館内のディスプレイ上でオブジェクトを見るために博物館を通して巧みに操作（例えば、歩く）することができる。別のユースケースでは、ゲームアプリケーションは、ライブイベントを提供できる。そうして、ユーザは、ライブイベントの開催場所を歩き回り、前もって記録されたライブイベントに参加できる。
【００７６】
図５Ａは、現実世界環境５００のベースＶＲモデルを構築するための画像キャプチャデバイスの使用を示し、本開示の一実施形態による、ビデオ及び音声データ収集デバイスの位置を含む。例えば、複数のデータ収集デバイスは、現実世界環境５００内に配置される。例えば、データ収集デバイスは、ポイント５１０Ｂ、５１１Ｂ、５１２Ｂ、５１３Ｂ、５１５Ｂ、及び５１６Ｂに配置されてもよい。データ収集デバイスは、画像及び／またはビデオキャプチャデバイス、ならびに音声収集デバイスを含んでもよい。他の種類のデータ収集デバイス（例えば、温度、音声など）はまた、現実世界環境の完全に没入型の経験を作成するために使用され得る。データキャプチャデバイスから記録された画像及び／またはビデオを使用して、現実世界環境５００の仮想視野を生成することができる。具体的には、記録された画像及び／またはビデオは、上述したように、ベースＶＲ世界／モデルを生成するために、合わせてスティッチされ得る。これは、ライブイベントの記録を含んでもよく、ライブイベントの仮想ビューを、１つまたは複数のデータ収集デバイスから取得されたビデオ記録から合わせてスティッチし得る。
【００７７】
理想的には、十分なデータ収集デバイスが、ベースＶＲモデルで表したように、現実世界環境５００を完全に網羅するため使用され散在される。図５Ａに示すように、ポイント５１０Ｂ、５１１Ｂ、５１２Ｂ、５１３Ｂ、５１５Ｂ、および５１６Ｂでのデータ収集デバイスはそれぞれ、カバーエリアを有する。例えば、ポイント５１０Ａでデータ収集デバイスは、カバーエリア５１０Ａ全体の画像及び／またはビデオを撮影する。カバーエリア５１１Ａは、ポイント５１１Ｂでのデータ収集デバイスの網羅を示す。相応して、追加のカバーエリア５１２Ａ、５１３Ａ、５１４Ａ、５１５Ａ、および５１６Ａが示される。全体としてみると、データ収集デバイスは、現実世界環境５００の完全な網羅を提供する。
【００７８】
図５Ｂは、本開示の一実施形態にしたがって、不十分な数の画像キャプチャデバイスが、ＶＲモデルを構築するために使用される場合、現実世界環境５００のベースＶＲモデル内の不完全なオブジェクト及びギャップの識別を示す。図５Ｂに示すように、現実世界環境からデータ（例えば、画像、ビデオ、音声など）を収集するため、不十分なデータ収集デバイスが使用される。図５Ａと比較すると、ポイント５１０Ｂ、５１２Ｂ、および５１６Ｂでデータ収集デバイスは提供されない。即ち、図５Ａで示すように、対応するカバーエリア５１０Ａ、５１２ａ、および５１６Ａで収集されるデータはない。
【００７９】
ベースＶＲモデル内のギャップ領域は、ポイント５１０Ｂ、５１２Ｂ、及び５１６Ｂでデータ収集デバイスが不足していることに関連付けられ得る。例えば、ギャップ領域５３１は、ポイント５１０Ｂでデータ収集デバイスが不足していることに関連付けられ得る。ギャップ領域５３１は、オブジェクト用のデータが収集されなかった、ベースＶＲモデルから欠落しているオブジェクト５６０Ａ〜５６０Ｄを含む。また、ギャップ領域５３２は、オブジェクトがない可能性がある。さらに、ギャップ領域５３３は、それらのオブジェクト用のデータが収集されなかった、ベースＶＲモデルから欠落しているオブジェクト５６０Ｅ〜５６０Ｆを含む。
【００８０】
加えて、現実世界環境５００の他のオブジェクトは、そのオブジェクト用にキャプチャされる複数の視点が不足しているため、ベースＶＲモデル内に表されているように不完全である可能性がある。例えば、オブジェクト５５０Ａは、ポイント５１１Ｂで一データ収集デバイスからのみキャプチャされ得る。その場合、オブジェクト５５０Ａのモデルは、オブジェクトの後ろ側の表示がなくオブジェクトの前側だけを有する可能性がある。さらに、不完全なオブジェクト５５０Ｂは、５１１Ｂの一視点から１つの側を網羅され、不完全なオブジェクト５５０Ｃは、５１４Ｂの一視点から１つの側を網羅され、不完全なオブジェクト５５０Ｄは、５１４Ｂの一視点から１つの側を網羅され、不完全なオブジェクト５５０Ｅは、５１４Ｂの一視点から１つの側を網羅され、不完全なオブジェクト５５０Ｆは、５１３Ｂの一視点から１つの側を網羅され、かつ不完全なオブジェクト５５０Ｇ、５５０Ｈ、および５５０Ｊはそれぞれ、５１５Ｂの一視点から１つの側を網羅される。
【００８１】
図６Ａは、本開示の一実施形態による、サードパーティマッピングシステムから現実世界ＶＲモデルをベースとして用いてＶＲゲーム環境を構築するために使用される情報の流れを示すデータフロー６００Ａである。データフロー６００Ａは、一実施形態では、図４Ａ〜４Ｂのフロー図４００Ａ〜４００Ｂに従ってもよい。
【００８２】
図示の通り、データフロー６００Ａは、サードパーティマッピングエンティティによって実行されるサードパーティマッピング段階６９１、拡張ＶＲ世界を構築するためのＶＲ世界拡張段階６９２、および使用段階６９３を含む３つの段階の間で仕切ることができる。使用段階は、ゲーム環境として拡張ＶＲ世界を使用するためのゲーム開発及びゲームアプリケーションが拡張ＶＲ世界に基づいてゲーム環境を提供するように実行することができるゲームプレイを含んでもよい。
【００８３】
サードパーティマッピング段階６９１において、サードパーティマッピングエンティティは、対応する現実世界環境のベースＶＲモデル６５５を構築する。通常、サードパーティマッピングエンティティは、ゲームプレイ中に使用し楽しむために、ベースＶＲモデル６５５をユーザにアクセス可能にすることができる。例えば、マッピング会社は、１つまたは複数の環境の３Ｄビューを含み得るマッピングサービスをユーザに（例えば、サーチエンジンを介して）提供できる。すでに紹介したように、これらのベースＶＲモデルは、デジタル生成された３Ｄ世界の全ての位置からではなく、デジタル生成された３Ｄ世界への特定の視野だけを提供するので、網羅する範囲が限られている。
【００８４】
具体的には、ベースＶＲモデル６５５は、インドア環境及びアウトドア環境用に作成することができる。対応するベースＶＲモデルを生成するために使用される処理及び強化フェーズ６５０は、インドア環境用及びアウトドア環境用両方共に類似している。インドア環境のために、物理的、現実世界環境の１つまたは複数のキャプチャポイントが使用され、キャプチャポイントで１つまたは複数の３Ｄビデオカメラ６５１が、現実世界環境の画像及び／またはビデオ６５２をキャプチャするように構成される。音声及び他のデータも現実世界環境からキャプチャされ得る。同様に、アウトドア環境のために、物理的、現実世界環境の１つまたは複数のキャプチャポイントが使用され、キャプチャポイントで１つまたは複数の３Ｄビデオカメラ６５３が、現実世界環境の画像及び／またはビデオ６５４をキャプチャするように構成される。音声及び他のデータも現実世界環境からキャプチャされ得る。キャプチャ画像及び／またはビデオは、合わせてスティッチされて、ベースＶＲモデル／世界６５５を形成することができる。
【００８５】
ＶＲ世界拡張段階６９１において、対応する現実世界環境の拡張ベースＶＲモデル６７５は、ベースＶＲモデル６５５を用いて生成される。例えば、６６０において実施される処理は、上述のように、環境、その環境内のオブジェクト、ベースＶＲモデル内のオブジェクトの不完全なモデル、ギャップ認識、ベースＶＲモデル内のオブジェクトの拡張、およびベースＶＲモデルのギャップ充填を認識することを含む。一部では、拡張ＶＲモデル６７５は、事前定義オブジェクトモデル６６１及び／または補足画像／ビデオ６６２を用いて構築される。ライブラリ１８１は、複数の拡張ＶＲモデル（例えば、モデル６７５−１〜６７５−Ｎ）を記憶する。
【００８６】
使用段階６９３において、拡張ベースＶＲモデルは、ゲーム開発中及びゲームプレイ中に使用することができる。具体的には、使用段階は、ゲーム開発を含むことができ、ゲーム開発者による拡張ＶＲ世界６７５へのアクセスは、ゲーム開発者が拡張ＶＲ世界６７５にゲーム環境として対応するゲームアプリケーションのゲームロジックをインタフェース接続する、かつ／または組み込むことができるように提供される。例えば、拡張ベースＶＲモデルは、ゲーム開発中に、拡張ベースＶＲモデルをゲームアプリケーション６８０のゲームロジック６８５に、もしくは拡張ベースＶＲモデルにゲームアプリケーション６８０のゲームロジック６８５をインタフェース接続する、かつ／または組み込むためゲーム開発者によってアクセスされてもよい。
【００８７】
加えて、使用段階６９３は、ゲームロジック６８５が、プレイされるゲームアプリケーションのゲーム環境を実装するための対応する拡張ＶＲ世界を有するユーザインタフェースのゲームプレイをサポートして実行する（例えば、サーバ、ゲームコンソールなど）ゲームプレイを含んでもよい。例えば、図６Ｂは、本開示の一実施形態による、現実世界環境の拡張ＶＲモデル６７５〜５の選択及び拡張ＶＲモデル６７５〜５のゲームアプリケーション６８０のゲームロジック６８５への組み込みを示す。図示の通り、ゲームアプリケーション６８０のゲームロジック６８５は、ユーザのゲームプレイをサポートして実行している。
ゲームロジック６８５は、複数のノード（例えば、実行ノード、ロジックノード、データノードなど）によって表すことができ、それぞれが、１つまたは複数の他のノードに接続される。ゲームロジック６８５のノードはまた、拡張ＶＲモデル６７５−２のノード（例えば、実行ノード、ロジックノード、データノードなど）に接続できる。その方法では、ゲームロジック６８５は、選択された拡張ＶＲモデル６７５−２とインタフェース接続する。ゲームアプリケーション６８０は、複数のゲームアプリケーションの複数のゲームプレイをサポートするバックエンドサーバで、またはユーザに関連付けられたゲームコンソールで実行することができる。
【００８８】
具体的には、ゲームアプリケーション６８０は、１つまたは複数のゲーム環境をサポートできる。例えば、ゲームアプリケーション６８０は、世界中から探し出された多くのレースコース（現実のコース）に設定されたレースカーのビデオゲームであってもよい。各レースコースは、ライブラリ１８１内の複数の拡張ＶＲモデル６７５のうちの１つに対応し得る。ユーザのゲームプレイ中、ユーザは、拡張ベースＶＲモデル６７５−５に対応する特定のレースコースを選択できていてもよい。拡張ベースＶＲモデル６７５−５は、選択されたレースコースのゲーム環境がゲームロジック６８５に提供されるように、ゲームアプリケーション６８０を実行するクライアントデバイス１７０Ａにネットワーク１５０上で届けられる。その方法では、ユーザは、選択されたレースコースで車のレースをすることができる。
【００８９】
図７は、本開示の様々な実施形態の態様を実行するために使用され得る例としてのデバイス７００のコンポーネントを示す。例えば、図７は、一実施形態による、サードパーティマッピングエンティティによって提供されたＶＲ世界に基づいて拡張ベースＶＲ世界を構築するように構成され得る、ユーザをサポートするサービスを提供するデバイスを実装するのに適切な例示的なハードウェアシステムを示す。このブロック図は、パーソナルコンピュータ、ビデオゲームコンソール、パーソナルデジタルアシスタント、または本開示の実施形態を実践するのに適切な他のデジタルデバイスを組み入れる、またはそれらであってよいデバイス７００を示す。デバイス７００は、ソフトウェアアプリケーション及び任意でオペレーティングシステムを実行する中央処理装置（ＣＰＵ）７０２を含む。ＣＰＵ７０２は、１つまたは複数の均質または異質な処理コアから構成され得る。例えば、ＣＰＵ７０２は、１つまたは複数の処理コアを有する１つまたは複数の汎用マイクロプロセッサである。さらなる実施形態は、上述したように、媒体及び相互作用するエンタテイメントアプリケーション、または深層学習エンジン１９０と連携してＶＲ世界モデルビルダ２００によるなど拡張ベースＶＲモデルを構築するように構成されたアプリケーションなど、高並列かつ計算集約的アプリケーションに特に適合されたマイクロプロセッサアーキテクチャを有する１つまたは複数のＣＰＵを使用して実施され得る。
【００９０】
メモリ７０４は、ＣＰＵ７０２によって使用するアプリケーション及びデータを記憶する。ストレージ７０６は、アプリケーション及びデータ用不揮発性ストレージ及び他のコンピュータ可読媒体を提供し、固定ディスクドライブ、リムーバブルディスクドライブ、フラッシュメモリデバイス、及びＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ブルーレイ、ＨＤ−ＤＶＤ、または他の光ストレージデバイス、ならびに信号伝送およびストレージ媒体を含んでもよい。ユーザ入力デバイス７０８は、１人または複数のユーザからデバイス７００にユーザ入力を伝達し、例として、キーボード、マウス、ジョイスティック、タッチパッド、タッチスクリーン、スチルもしくはビデオレコーダー／カメラ、身振りを認識するための追跡デバイス、及び／またはマイクを挙げることができる。ネットワークインタフェース７１４は、デバイス７００が電子通信ネットワークを介して他のコンピュータシステムと通信することを可能にし、ローカルエリアネットワーク及びインターネットなどのワイドエリアネットワーク上の有線または無線通信を含み得る。オーディオプロセッサ７１２は、ＣＰＵ７０２、メモリ７０４、及び／またはストレージ７０６によって提供される命令及び／またはデータからアナログまたはデジタルオーディオ出力を生成するように適合される。ＣＰＵ７０２、メモリ７０４、データストレージ７０６、ユーザ入力デバイス７０８、ネットワークインタフェース７１０、及びオーディオプロセッサ７１２を含むデバイス７００のコンポーネントは、１つまたは複数のデータバス７２２を介して接続される。
【００９１】
グラフィックサブシステム７１４は、データバス７２２及びデバイス７００のコンポーネントとさらに接続される。グラフィックサブシステム７１４は、グラフィック処理装置（ＧＰＵ）７１６及びグラフィックメモリ７１８を含む。グラフィックメモリ７１８は、出力画像の各画素の画素データを記憶するために使用されるディスプレイメモリ（例えば、フレームバッファ）を含む。グラフィックメモリ７１８は、ＧＰＵ７１６とは別個のデバイスとして接続されて、かつ／またはメモリ７０４内に実装されてＧＰＵ７１６と同じデバイスに組み込むことができる。
画素データは、ＣＰＵ７０２から直接グラフィックメモリ７１８に与えられ得る。代替として、ＣＰＵ７０２は、ＧＰＵ７１６が、１つまたは複数の出力画像用の画素データを生成する、所望の出力画像を定義するデータ及び／または命令をＧＰＵ７１６に与える。所望の出力画像を定義するデータ及び／または命令は、メモリ７０４及び／またはグラフィックメモリ７１８に記憶できる。一実施形態では、ＧＰＵ７１６は、幾何学的形状、明暗、陰影、テクスチャ、動き、及び／またはシーン用のカメラのパラメータを定義する命令及びデータから出力画像用の画素データを生成するための３Ｄレンダリング機能を含む。ＧＰＵ７１６は、シェーダプログラムを実行できる１つまたは複数のプログラム可能実行装置をさらに含むことができる。
【００９２】
グラフィックサブシステム７１４は、表示装置７１０に表示されるか、またはプロジェクションシステム７４０によって投影されるグラフィックメモリ７１８からの画像用の画素データを定期的に出力する。表示装置７１０は、ＣＲＴ、ＬＣＤ、プラズマ、およびＯＬＥＤディスプレイを含むデバイス７００からの信号に応じて視覚情報を表示できる任意のデバイスであってよい。デバイス７００は、表示装置７１０に、例えばアナログまたはデジタル信号を与えることができる。
【００９３】
本明細書に開示された様々な特徴を用いて、本明細書で定義された様々な実施形態を、特定の実施態様に組み合わせる、または組み立てることができることを理解されたい。したがって、提供された例は、いくつかの可能な例に過ぎず、より多くの実施態様を定義するために様々な要素を組み合わせることによって可能な様々な実施態様に制限するものではない。いくつかの例では、開示された実施態様または同等の実施態様の精神から逸脱しない限り、一部の実施態様がより少ない要素を含んでもよい。
【００９４】
本開示の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラム可能家電、ミニコンピュータ、メインフレームコンピュータなどを含む、様々なコンピュータシステムの構成で実践されてもよい。本開示の実施形態はまた、有線ベースまたは無線ネットワークを介してリンクされた遠隔処理デバイスによってタスクが実施される分散コンピューティング環境で実践することができる。
【００９５】
上述の実施形態を念頭に置いて、本開示の実施形態は、コンピュータシステムにデータストレージを伴う様々なコンピュータ実施される動作を利用できることを理解されたい。これらの動作は、物理量の物理的操作を必要とするものである。本開示の実施形態の一部を形成する本明細書に記載のいずれの動作も有用な機械動作である。本発明の実施形態はまた、これらの動作を実行するデバイスまたは装置に関連する。装置は、所望の目的のために特に構築され得るか、または装置は、選択的に起動された、またはコンピュータに記憶されたコンピュータプログラムによって構成された汎用コンピュータであってよい。具体的には、様々な汎用機械が、本明細書の教授にしたがって書かれたコンピュータプログラムと共に使用できるか、または所望の動作を実行するためにより専用的な装置を構築することがより都合がよくてもよい。
【００９６】
本開示はまた、コンピュータ可読媒体上のコンピュータ可読コードとして具現化されてもよい。コンピュータ可読媒体は、データを記憶できる任意のデータストレージデバイスであり、その後コンピュータシステムによって読み出されてもよい。コンピュータ可読媒体の例として、ハードドライブ、ネットワーク接続ストレージ（ＮＡＳ）、読み出し専用メモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープならびに他の光学及び非光学データストレージデバイスが挙げられる。コンピュータ可読媒体は、コンピュータ可読コードが分散式に記憶され、実行されるように、ネットワーク結合コンピュータシステム上に分散されたコンピュータ可読有形媒体を含んでもよい。
【００９７】
方法の作業は、特定の順序で記載されているが、重なる作業の処理が所望の方法で実行される限り、他のシステム管理作業が、作業の間に実行されてもよく、または作業が、わずかに異なる時間に起きるように調整されてもよく、または、処理作業の発生が処理に関連付けられた様々な間隔で可能になるシステム内で分散されてもよいことを理解されたい。
【００９８】
上述の開示は、理解を明瞭にするためにいくつか詳細に説明されたが、いくつかの変更及び修正が、添付の特許請求の範囲内で実践されてもよいことは明らかであろう。したがって、本実施形態は、例示的なものであって制限するものではないとみなされるべきであり、本開示の実施形態は、本明細書に記載の詳細に制限されず、添付の特許請求の範囲およびその等価物内で修正されてもよい。
【図１】
2021514775.tif 000003
【図２】
2021514775.tif 000004
【図３】
2021514775.tif 000005
【図４Ａ】
2021514775.tif 000006
【図４Ｂ】
2021514775.tif 000007
【図５Ａ】
2021514775.tif 000008
【図５Ｂ】
2021514775.tif 000009
【図６Ａ】
2021514775.tif 000010
【図６Ｂ】
2021514775.tif 000011
【図７】
2021514775.tif 000012
【国際調査報告】
2021514775.tif 000013
2021514775.tif 000014
2021514775.tif 000015
2021514775.tif 000016