(57)【要約】  プロセッサとメモリとを有するコンピュータデバイスにより、第１のビデオ画像データ及び第２のビデオ画像データを受信する段階と、第１のビデオ画像データ及び第２のビデオ画像データのピクセル色を比較することによって２つの画像の間の現在のポーズに対する誤差値を計算する段階と、各ピクセルに対する深度仮説のマップを使用してピクセル座標を第２のビデオ画像データ内にワープさせる段階と、最小誤差値に対応するワープを見出すために第１のビデオ画像データと第２のビデオ画像データの間のポーズを変える段階と、推定されたポーズを使用して第１のビデオ画像データ及び第２のビデオ画像データの両方で可視である各ピクセルに対する新しい深度測定値を計算する段階とを含む拡張された現実シーンを作成する方法。【選択図】      図１ａ【特許請求の範囲】
【請求項１】
拡張された現実シーンを作成する方法であって、
プロセッサとメモリとを有するコンピュータデバイスにより、
第１のビデオ画像データ及び第２のビデオ画像データを受信する段階と、
前記第１のビデオ画像データ及び前記第２のビデオ画像データ内のピクセル色を比較することによって該２つの画像間の現在のポーズに対する誤差値を計算する段階と、
各ピクセルに対する深度仮説のマップの使用を通してピクセル座標を第２のビデオ画像データ内にワープさせる段階と、
前記第１のビデオ画像データと前記第２のビデオ画像データ間の前記ポーズを変えて最小誤差値に対応するワープを見出す段階と、
前記推定されたポーズを使用して、前記第１のビデオ画像データ及び前記第２のビデオ画像データの両方で可視である各ピクセルに対する新しい深度測定値を計算する段階と、
を含むことを特徴とする方法。
【請求項２】
前記第１のビデオ画像データ内のピクセルの部分集合に対する深度仮説のマップを作成する段階、
を更に含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記新しい深度測定値からの情報を用いて前記第１のビデオ画像データ内の深度仮説の前記マップを更新する段階、
を更に含むことを特徴とする請求項２に記載の方法。
【請求項４】
キーフレームとして前記ビデオ画像データを選択する段階と、
前記キーフレームを接続されたグラフ内に挿入する段階と、
を更に含むことを特徴とする請求項１から請求項３のいずれか１項に記載の方法。
【請求項５】
前記接続されたグラフを分析して前記キーフレームに対する大域的最適ポーズを見出す段階、
を更に含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記キーフレームに対する前記大域的最適ポーズを使用して前記第２のビデオ画像データ内のスケールドリフトを補正する段階、
を更に含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記大域的最適ポーズの前記計算は、
前記キーフレームと第２のキーフレーム間の類似性変換を推定する段階、
によるものである、
ことを特徴とする請求項５又は請求項６に記載の方法。
【請求項８】
位置情報に関するセンサデータを受信する段階と、
前記受信センサデータを前記接続されたグラフ内のファクタに処理する段階と、
を更に含むことを特徴とする請求項４から請求項７のいずれか１項に記載の方法。
【請求項９】
前記センサデータは、ジャイロスコープ、加速度計、コンパス、又はＧＰＳのうちの少なくとも１つによって発生されることを特徴とする請求項８に記載の方法。
【請求項１０】
前記接続されたグラフを確率分布内に周縁化する段階と、
新しいフレームに対するポーズを推定する際に前記確率分布を使用する段階と、
を更に含むことを特徴とする請求項８又は請求項９に記載の方法。
【請求項１１】
拡張された現実シーンを作成する方法であって、
プロセッサとメモリとを有するコンピュータデバイスにより、
複数のフレームを含むカメラから発生される画像データをネットワーク上で受信する段階と、
前記受信画像データの複数のフレームのキーフレームの深度マップを該キーフレーム内のピクセルの推定深度値を使用して推定する段階と、
前記キーフレームの推定深度マップを使用して点クラウドを発生させる段階と、
前記発生された点クラウドを使用して３Ｄメッシュを発生させる段階と、
を含むことを特徴とする方法。
【請求項１２】
前記キーフレームは、深度マップと位置とを有するフレームであることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記コンピュータにより、
キーフレームではないフレームに対して、キーフレームに対する相対位置を該キーフレームの前記深度マップ及び位置を使用して計算する段階と、
前記キーフレーム深度マップを精緻化する段階と、
を更に含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記３Ｄメッシュは、
近傍点に基づいて前記点クラウド内の各点に対する法線ベクトルを計算する段階と、
各点の前記計算法線ベクトルを該点が属する前記キーフレームのカメラポーズに向けて方位付けする段階と、
によって発生される、
ことを特徴とする請求項１１から請求項１３のいずれか１項に記載の方法。
【請求項１５】
前記３Ｄメッシュは、複数のキーフレーム画像を含み、
前記複数のキーフレーム画像は、単一テクスチャに融合された重複キーフレームである、
ことを特徴とする請求項１１から請求項１４のいずれか１項に記載の方法。
【請求項１６】
単一テクスチャへの複数のキーフレームの前記融合は、メッシュ面までのキーフレーム距離と該メッシュ面に対するキーフレーム角度とを重み付けすることによるものであることを特徴とする請求項１５に記載の方法。
【請求項１７】
前記コンピュータにより、
既知のデータ構造を使用して前記３Ｄメッシュを切り取る段階と、
発生された３Ｄモデルにテクスチャを付加する段階と、
を更に含むことを特徴とする請求項１１から請求項１６のいずれか１項に記載の方法。
【請求項１８】
前記コンピュータにより、
ボクセルツリーを使用して前記点クラウドを濾過してノイズ点を除去する段階、
を更に含むことを特徴とする請求項１１から請求項１７のいずれか１項に記載の方法。
【請求項１９】
前記コンピュータにより、
前記ネットワーク上で第２の画像データを受信する段階と、
前記第２の画像データに対する第２の追跡マーカを受信する段階と、
前記第２の画像データに対する第２のオブジェクトを受信する段階と、
前記第２の追跡マーカを使用して前記画像と、前記第２の画像データと、前記受信した第２のオブジェクトとの表示を引き起こす段階と、
を更に含むことを特徴とする請求項１１から請求項１８のいずれか１項に記載の方法。
【請求項２０】
仮想現実シーンを作成する方法であって、
プロセッサとメモリとを有するコンピュータデバイスにより、
第１の解像度の画像データを受信する段階と、
第２の解像度の画像データを受信する段階と、
前記第１の解像度の画像データ及び前記第２の解像度の画像データ内のピクセルから特定の形状を識別することによってオブジェクトをセグメント化する段階と、
前記第１の解像度の画像データからの前記セグメント化オブジェクトと前記第２の解像度の画像データからの該セグメント化オブジェクト以外の画像データとの両方を使用して画像の表示を引き起こす段階と、
を含むことを特徴とする方法。
【請求項２１】
仮想現実シーンを作成する方法であって、
プロセッサとメモリとを有するコンピュータデバイスにより、
画像データを受信する段階と、
パターンを使用して前記画像データを断片化する段階と、
最初にロードする前記画像データの区域を識別する段階と、
最初にロードする前記画像データの前記区域に前記断片化されたパターン部分を関連付ける段階と、
最初にロードすると識別された前記断片化されたパターン部分の表示を引き起こす段階と、
前記断片化されたパターン部分の残りの表示を引き起こす段階と、
を含むことを特徴とする方法。
【請求項２２】
拡張された現実シーンを作成する方法であって、
プロセッサとメモリとを有するコンピュータデバイスにより、
第１の画像データを受信する段階であって、該第１の画像データが３６０度画像データであり、前記コンピュータが、表示のための球面オブジェクトにテクスチャとして該第１の画像データを付加するように更に構成される前記受信する段階と、
第２の画像データを受信する段階と、
前記第１の画像データ及び前記第２の画像データを比較して両方に共通の特徴を相関付ける段階と、
前記第１及び第２の画像の前記相関付けられた特徴の深度を計算する段階と、
前記相関付けられた特徴の前記計算された深度を使用して立体画像表示をレンダリングする段階と、
を含むことを特徴とする方法。
【請求項２３】
前記コンピュータにより、
前記第１の画像データ及び前記第２の画像データに該第１及び第２の画像データ内のオブジェクトを識別してそれらの位置を比較するフィルタを適用する段階と、
表示のために前記第１及び第２の濾過画像データを融合する段階と、
を更に含むことを特徴とする請求項２２に記載の方法。
【請求項２４】
前記フィルタは、移動するオブジェクトを除去することを特徴とする請求項２３に記載の方法。
【請求項２５】
前記フィルタは、変化する光の条件を除去することを特徴とする請求項２３又は請求項２４に記載の方法。
【請求項２６】
仮想現実シーンを作成する方法であって、
プロセッサとメモリとを有するコンピュータデバイスにより、
画像データを受信する段階であって、該画像データが３６０度画像データであり、前記コンピュータが、表示のためのオブジェクトにテクスチャとして該画像データを付加するように更に構成される前記受信する段階と、
前記画像データ内の第１及び第２の位置の表示を受信する段階と、
画像内の前記受信した第１及び第２の位置を使用して前記画像データ内にキャンバスを定義する段階と、
前記画像データが取り込まれた時間でのフロアからのカメラ高度に関する情報を受信する段階と、
前記受信した第１及び第２の位置及び前記カメラの前記高度から角度を計算する段階と、
前記画像データの前記表示内の前記第１及び第２の位置間の距離を計算する段階と、
を含むことを特徴とする方法。
【請求項２７】
前記コンピュータにより、
画像データの前記表示にオブジェクトをマップする段階と、
画像データの前記表示内のオブジェクトの角度を計算する段階と、
を更に含むことを特徴とする請求項２６に記載の方法。
【請求項２８】
前記コンピュータにより、
前記画像データのための間取図を受信する段階と、
前記間取図内の位置の上への前記受信画像データの配置を受信する段階と、
前記間取図内の第１及び第２の位置間の距離を計算する段階と、
を更に含むことを特徴とする請求項２６又は請求項２７に記載の方法。
【請求項２９】
前記コンピュータにより、
前記カメラ高度、前記キャンバスと第２のキャンバス間の角度、及び前記フロアを使用して前記カメラの回転角度を計算する段階と、
前記カメラの前記計算された回転角度に対する補正を表示のために前記画像データに適用する段階と、
を更に含むことを特徴とする請求項２６から請求項２８のいずれか１項に記載の方法。
【請求項３０】
請求項１から請求項２９のいずれか１項に記載の方法を実施するように構成された装置。
【請求項３１】
プロセッサによって実行された時に該プロセッサに請求項１から請求項２９のいずれか１項に記載の方法を実施させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の分野は、画像取込、拡張、及び表示、並びに拡張された及び／又は仮想現実の表示の構築配置を含む。
【背景技術】
【０００２】
仮想現実及び拡張された現実表示は、商業用途のために巨大企業によって作成及び発展される場合がある。しかし、日常ユーザは、そのような表示にアクセスする又はそれを発展することができない。ユーザ独自の写真、ビデオ、及びオブジェクト選択などを含む可能性がある拡張された仮想現実プラットフォームを日常ユーザが作成するのにプログラミング、カメラ統合、及びアーキテクチャの障害が存在する。
【発明の概要】
【課題を解決するための手段】
【０００３】
本明細書のシステム及び方法は、日常ユーザに彼らが彼ら独自の画像及び／又は提供された画像を用いて仮想及び／又は拡張された現実シーンを作成することを可能にする作成及び発展ツールをもたらすことができる。一部の実施形態では、拡張現実発展システムは、データストレージとネットワークとに通信するコンピュータプロセッサを使用することを含み、コンピュータプロセッサは、ネットワーク上で画像データを受信し、受信した画像データをシーン内にマップし、マップした画像データシーン内に追跡マーカを挿入し、マップ画像データシーン内にオブジェクトを挿入命令をネットワーク上で受信し、追跡マーカとオブジェクトとを有する画像データシーンを画像データシーンの表示のためのクライアントデバイスにネットワーク上で送信する命令を含む。一部の実施形態では、コンピュータプロセッサは、ネットワーク上で第２の画像データを受信し、第２の画像データを第２のシーン内にマップし、追跡マーカを第２のマップ画像データシーン内に挿入し、第２のマップ画像データシーン内にブジェクトを挿入する命令をネットワーク上で受信し、マップ画像データシーン及び第２のマップ画像データシーンをリンクされたシーンとしてそれらの関係を示してデータストレージに格納し、追跡マーカとオブジェクトとを有する画像データシーンと第２の画像データシーンとを画像データシーンと第２の画像データシーンとの表示のためのクライアントデバイスにネットワーク上で送信する更に別の命令を含み、画像データシーンと第２の画像データシーンとの表示は、リンクさせることができる。これに加えて又はこれに代えて、オブジェクトは、動画オブジェクトである。これに加えて又はこれに代えて、オブジェクトは、ネットワーク上で受信される。これに加えて又はこれに代えて、オブジェクトは、オブジェクトの事前に定義されたセットから選択される。これに加えて又はこれに代えて、画像データは、３６０度画像である。これに加えて又はこれに代えて、オブジェクトは、事象を引き起こす機能を含む。これに加えて又はこれに代えて、画像データのマップは、画像データシーンのキーフレームの推定深度マップをキーフレーム内のピクセルの推定深度値を使用して発生させ、かつキーフレームの推定深度マップを使用して点クラウドを発生させるコンピュータ命令を含む。
【０００４】
一部の例示的実施形態では、データストレージと、カメラと、ネットワークと、ディスプレイとに通信するコンピュータプロセッサを使用することを含む拡張現実システムを開示し、コンピュータプロセッサは、ネットワーク上で画像データシーンを受信し、画像データシーンに対する追跡マーカを受信し、画像データシーンに対するオブジェクトを受信し、追跡マーカを使用してカメラからの画像と、画像データシーンと、受信したオブジェクトとの表示を引き起こす命令を含む。これに加えて又はこれに代えて、コンピュータプロセッサは、ネットワーク上で第２の画像データシーンを受信し、第２の画像データシーンに対する第２の追跡マーカを受信し、第２の画像データシーンに対する第２のオブジェクトを受信し、第２の追跡マーカを使用してカメラからの画像と、第２の画像データシーンと、受信した第２のオブジェクトとの表示を引き起こす命令を更に含む。
【０００５】
一部の例示的実施形態では、データストレージとネットワークとに通信するコンピュータプロセッサを使用することを含む仮想現実発展システムを開示し、コンピュータプロセッサは、ネットワーク上で画像データを受信し、画像データをマップし、マーカをマップ画像データ内に挿入する命令をネットワーク上で受信し、画像データの表示内にマーカの表示をネットワーク上で引き起こし、マップ画像データ内にオブジェクトを挿入する命令をネットワーク上で受信し、画像データの表示内にオブジェクトの表示をネットワーク上で引き起こす命令を含む。
【０００６】
これに加えて又はこれに代えて、受信した画像データは、２次元画像データである。これに加えて又はこれに代えて、受信画像データは、３次元画像データである。これに加えて又はこれに代えて、他の特徴は、オブジェクト閉塞、間取図、時系列、テキストのような追加の注釈、図面、３Ｄ画像、投影、画面、スプリット画面、ネットワーク視聴者、ライブストリーミングのような表示特徴、マルチユーザ表示、音声ステレオ、安定性、顔検出、ズーミング、及び歪みなどを含むことができる。
【０００７】
これに代えて又はこれに加えて、拡張された現実シーンを作成する方法及びシステムを開示し、システムは、プロセッサとメモリとを有するコンピュータデバイスにより、第１のビデオ画像データ及び第２のビデオ画像データを受信する段階と、第１のビデオ画像データ及び第２のビデオ画像データ内のピクセル色を比較することによって２つの画像間の現在のポーズに対する誤差値を計算する段階と、各ピクセルに対する深度仮説のマップの使用を通してピクセル座標を第２のビデオ画像データ内にワープさせる段階と、第１のビデオ画像データと第２のビデオ画像データ間のポーズを変えて最小誤差値に対応するワープを見出す段階と、推定ポーズを使用して第１のビデオ画像データ及び第２のビデオ画像データの両方内で可視である各ピクセルに対する新しい深度測定値を計算する段階とを含む。一部の実施形態は、第１のビデオ画像データ内のピクセルの部分集合に対する深度仮説のマップを作成する段階を更に含む。一部の実施形態は、新しい深度測定値からの情報を用いて第１のビデオ画像データ内の深度仮説のマップを更新する段階を更に含む。一部の実施形態は、キーフレームとしてビデオ画像データを選択する段階と、接続されたグラフ内にキーフレームを挿入する段階とを更に含む。一部の実施形態は、接続されたグラフを分析してキーフレームに対する大域的最適ポーズを見出す段階を更に含む。一部の実施形態は、キーフレームに対する大域的最適ポーズを使用して第２のビデオ画像データ内のスケールドリフトを補正する段階を更に含む。一部の実施形態では、大域的最適ポーズの計算は、キーフレームと第２のキーフレーム間の類似性変換を推定することによるものである。一部の実施形態は、位置情報に関するセンサデータを受信する段階と、受信したセンサデータを接続されたグラフのファクタに処理する段階とを更に含む。一部の実施形態では、センサデータは、ジャイロスコープ、加速度計、コンパス、又はＧＰＳのうちの少なくとも１つによって発生される。一部の実施形態は、接続されたグラフを確率分布内に周縁化する段階と、新しいフレームに対するポーズを推定するのに確率分布を使用する段階とを更に含む。
【０００８】
これに代えて又はこれに加えて、プロセッサとメモリとを有するコンピュータデバイスにより、複数のフレームを含むカメラから発生されている画像データをネットワーク上で受信する段階と、キーフレーム内のピクセルの推定深度値を使用して受信画像データの複数のフレームのキーフレームの深度マップを推定する段階と、キーフレームの推定深度マップを使用して点クラウドを発生させる段階と、発生された点クラウドを使用して３Ｄメッシュを発生させる段階とを含む本明細書の方法及びシステムは、拡張された現実シーンを作成するためのものである。一部の実施形態では、キーフレームは、深度マップと位置とを有するフレームである。一部の実施形態は、コンピュータにより、キーフレーム以外のフレームに対して、キーフレームの深度マップ及び位置を使用してキーフレームに対する相対場所を計算する段階と、キーフレーム深度マップを精緻化する段階とを更に含む。一部の実施形態では、３Ｄメッシュは、近傍点に基づいて点クラウド内の各点に対する法線ベクトルを計算し、かつ各点の計算された法線ベクトルをその点が属するキーフレームのカメラポーズに向けて方位付けすることによって発生される。一部の実施形態では、３Ｄメッシュは、単一テクスチャに融合された重複キーフレームである複数のキーフレーム画像を含む。一部の実施形態では、単一テクスチャへの複数のキーフレームの融合は、メッシュ面までのキーフレーム距離及びメッシュ面に対するキーフレーム角度に重み付けすることによるものである。一部の実施形態は、コンピュータにより、既知のデータ構造を使用して３Ｄメッシュを切り取る段階と、発生された３Ｄモデルにテクスチャを付加する段階とを更に含む。一部の実施形態は、コンピュータにより、ボクセルツリーを使用して点クラウドを濾過してノイズ点を除去する段階を更に含む。一部の実施形態は、コンピュータにより、ネットワーク上で第２の画像データを受信する段階と、第２の画像データに対する第２の追跡マーカを受信する段階と、第２の画像データに対する第２のオブジェクトを受信する段階と、第２の追跡マーカを使用して画像、第２の画像データ、及び受信した第２のオブジェクトの表示を引き起こす段階とを更に含む。
【０００９】
これに代えて又はこれに加えて、本明細書の方法及びシステムは、仮想現実シーンを作成するためのものであり、システムは、プロセッサとメモリとを有するコンピュータデバイスにより、第１の解像度の画像データを受信する段階と、第２の解像度の画像データを受信する段階と、第１の解像度の画像データ及び第２の解像度の画像データ内のピクセルから特定の形状を識別することによってオブジェクトをセグメント化する段階と、第１の解像度の画像データからのセグメント化オブジェクトと第２の解像度の画像データからのセグメント化オブジェクト以外の画像データとの両方を使用して画像の表示を引き起こす段階とを含む。
【００１０】
これに代えて又はこれに加えて、本明細書の方法及びシステムは、仮想現実シーンを作成するためのものであり、システムは、プロセッサとメモリとを有するコンピュータデバイスにより、画像データを受信する段階と、パターンを使用して画像データを断片化する段階と、最初にロードする画像データの区域を識別する段階と、最初にロードする画像データの区域に断片化パターン部分を関連付ける段階と、最初にロードすると識別された断片化パターン部分の表示を引き起こす段階と、断片化パターン部分の残りの表示を引き起こす段階とを含む。
【００１１】
これに代えて又はこれに加えて、本明細書の方法及びシステムは、拡張された現実シーンを作成するためのものであり、システムは、プロセッサとメモリとを有するコンピュータデバイスにより、第１の画像データを受信する段階であって、第１の画像データが、３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして第１の画像データを付加するように更に構成された上記受信する段階と、第２の画像データを受信する段階と、第１の画像データ及び第２の画像データを比較して両方に共通の特徴を相関付ける段階と、第１及び第２の画像の相関付けられた特徴の深度を計算する段階と、相関付けられた特徴の計算された深度を使用して立体画像表示をレンダリングする段階とを含む。一部の実施形態は、コンピュータにより、第１及び第２の画像データ内のオブジェクトを識別してそれらの位置を比較するフィルタを第１の画像データ及び第２の画像データに適用する段階と、表示のために第１及び第２の濾過画像データを融合する段階とを更に含む。一部の実施形態では、フィルタは、移動するオブジェクトを除去する。一部の実施形態では、フィルタは、変化する光条件を除去する。
【００１２】
これに代えて又はこれに加えて、本明細書の方法及びシステムは、仮想現実シーンを作成するためのものであり、システムは、プロセッサとメモリとを有するコンピュータデバイスにより、画像データを受信する段階であって、画像データが、３６０度画像データであり、コンピュータが、表示のためのオブジェクトにテクスチャとして画像データを付加するように更に構成された上記受信する段階と、画像データ内の第１及び第２の位置の指示を受信する段階と、画像内の受信した第１及び第２の位置を使用して画像データ内にキャンバスを定める段階と、画像データが取り込まれた時の床からのカメラ高度に関する情報を受信する段階と、受信した第１及び第２の位置及びカメラの高度から角度を計算する段階と、画像データの表示内の第１及び第２の位置間の距離を計算する段階とを含む。一部の実施形態は、コンピュータにより、画像データの表示内にオブジェクトをマップする段階と、画像データの表示内のオブジェクトの角度を計算する段階とを更に含む。一部の実施形態は、コンピュータにより、画像データのための間取図を受信する段階と、間取図内の場所の上への受信した画像データの配置を受信する段階と、間取図の第１及び第２の位置間の距離を計算する段階とを更に含む。一部の実施形態は、コンピュータにより、カメラ高度、キャンバスと第２のキャンバス間の角度、及びフロアを使用してカメラの回転角度を計算する段階と、表示のために画像データにカメラの計算された回転角度に対する補正を適用する段階とを更に含む。
【００１３】
この出願に説明する実施形態のより良い理解のために、同じ参照番号が図を通じて対応する部分を示す以下の図面に関連して下記の「発明を実施するための形態」を参照すべきである。
【図面の簡単な説明】
【００１４】
【図１ａ】本明細書に説明するある一定の態様による全体システムアーキテクチャを示す図である。
【図１ｂ】本明細書に説明するある一定の態様によるシステムに含有された構成要素及び機能を示す図である。
【図１ｃ】本明細書に説明するある一定の態様による１又は２以上のＡＲ及び／又はＶＲシーンを含有するＨｏｌｏの構造を示すＵＭＬクラス図である。
【図１ｄ】本明細書に説明するある一定の態様によるシステムにアクセスするためのワークフローを示す流れ図である。
【図１ｅ】本明細書に説明するある一定の態様による１又は２以上のＡＲ及び／又はＶＲシーンを含有するＨｏｌｏを作成する方法を示す流れ図である。
【図１ｆ】本明細書に説明するある一定の態様によるＨｏｌｏ内のＡＲ又はＶＲシーンを作成又は選択する方法を示す流れ図である。
【図１ｇ】本明細書に説明するある一定の態様による２Ｄ又は３ＤオブジェクトをＡＲ又はＶＲシーンに追加するか又はＡＲ又はＶＲシーン内の既存の２Ｄ又は３Ｄオブジェクトを選択かつ編集する方法を示す流れ図である。
【図１ｈ】本明細書に説明するある一定の態様による２Ｄ又は３Ｄオブジェクトに動画を追加するか又は２Ｄ又は３Ｄオブジェクトに関連付けられた既存の動画を編集する方法を示す流れ図である。
【図１ｉ】本明細書に説明するある一定の態様による２Ｄ又は３Ｄオブジェクトにトリガ可能アクションを追加するか又は２Ｄ又は３Ｄオブジェクトに関連付けられた既存のトリガ可能アクションを編集する方法を示す流れ図である。
【図１ｊ】本明細書に説明するある一定の態様による１又は２以上のＡＲ及び／又はＶＲシーンを含有するＨｏｌｏを保存する方法を示す流れ図である。
【図１ｋ】本明細書に説明するある一定の態様による１又は２以上のＡＲ及び／又はＶＲシーンを含有する新しいＨｏｌｏを作成するためのユーザインタフェースを示す図である。
【図１ｌ】本明細書に説明するある一定の態様によるＡＲ及びＶＲコンテンツを作成かつ編集するためのユーザインタフェースを示す図である。
【図１ｍ】本明細書に説明するある一定の態様によるＨｏｌｏ内に新しいＡＲ又はＶＲシーンを作成するためのユーザインタフェースを示す図である。
【図１ｎ】本明細書に説明するある一定の態様による２Ｄ及び３ＤオブジェクトをＨｏｌｏ内のＡＲ又はＶＲシーンに追加するためのユーザインタフェースを示す図である。
【図１ｏ】本明細書に説明するある一定の態様による動画を２Ｄ又は３Ｄオブジェクトに追加するか又は２Ｄ又は３Ｄオブジェクトに関連付けられた既存の動画を編集するためのユーザインタフェースを示す図である。
【図１ｐ】本明細書に説明するある一定の態様によるトリガ可能アクションを２Ｄ又は３Ｄオブジェクトに追加するか又は２Ｄ又は３Ｄオブジェクトに関連付けられた既存のトリガ可能アクションを編集するためのユーザインタフェースを示す図である。
【図１ｑ】本明細書に説明するある一定の態様によるＨｏｌｏ内のＶＲシーンに追加される前に３６０°画像を前処理するためのユーザインタフェースを示す図である。
【図１ｒ】本明細書に説明するある一定の態様によるＨｏｌｏ内のＡＲ又はＶＲシーン内に追加される前に３Ｄオブジェクトを前処理するためのユーザインタフェースを示す図である。
【図１ｓ】本明細書に説明するある一定の態様によるＨｏｌｏ内のＡＲ又はＶＲシーンに含有された２Ｄ又は３Ｄオブジェクトに関連付けられたカスタム動画を作成又は編集するためのユーザインタフェースを示す図である。
【図１ｔ】本明細書に説明するある一定の態様による以前に作成されたＡＲ及び／又はＶＲコンテンツをウェブブラウザ内で直接に消費するためのユーザインタフェースを示す図である。
【図２ａ】本明細書に説明するある一定の態様による埋め込み式システム並びに異なるタイプのユーザとのある一定の方法の間の対話を表す抽象システム図である。
【図２ｂ】本明細書に説明するある一定の態様による一般ワークフローを示すある一定の方法のための例示的埋め込み式システムの流れ図である。
【図２ｃ】本明細書に説明するある一定の態様による構成ベースの使用事例のためのある一定の方法の例示的使用を表すシステム図である。
【図２ｄ】本明細書に説明するある一定の態様による３６０°画像及びビデオを時系列ベースのシーンにインポートするためのシステム処理の流れ図である。
【図２ｅ】本明細書に説明するある一定の態様による３６０°画像及びビデオの時系列を作成かつ編集するためのシステム処理の流れ図である。
【図２ｆ】本明細書に説明するある一定の態様による３６０°画像及びビデオの既存の時系列に新しい時系列要素を追加するシステム処理の流れ図である。
【図２ｇ】本明細書に説明するある一定の態様による３６０°画像又は映像の時系列の既存の位置又は時系列ベースのシーンに２Ｄ及び３Ｄコンテンツを追加するシステム処理の流れ図である。
【図２ｈ】本明細書に説明するある一定の態様による３６０°画像及びビデオの処理のための既存の埋め込み式システム及び時系列システムの対話処理を示すシステム図である。
【図２ｉ】本明細書に説明するある一定の態様による選択された場所に対する時系列パネルを拡大するための１つの可能な実施を示す図である。
【図２ｊ】本明細書に説明するある一定の態様による時間０での場所の拡大時系列の１つの可能な実施を示す図である。
【図２ｋ】本明細書に説明するある一定の態様による既存の時系列の新しい時間ベースのシーンを作成するために時系列パネルを拡大するユーザ対話の１つの可能な実施を示す図である。
【図２ｌ】本明細書に説明するある一定の態様による図２ｋに表された拡大時系列における新しい時間ベースのシーンを作成するための様式を示す部分図である。
【図２ｍ】本明細書に説明するある一定の態様による図２ｋに表された拡大時系列における新しい時間ベースのシーンを作成するための様式を示す部分図である。
【図２ｎ】本明細書に説明するある一定の態様による図２ｋに表された拡大時系列における新しい時間ベースのシーンを作成するための様式を示す部分図である。
【図２ｏ】本明細書に説明するある一定の態様による図２ｋに表された拡大時系列における新しい時間ベースのシーンを作成するための様式を示す部分図である。
【図２ｐ】本明細書に説明するある一定の態様による図２ｋに表された拡大時系列における新しい時間ベースのシーンを作成するための様式を示す部分図である。
【図２ｑ】本明細書に説明するある一定の態様による図２ｋに表された拡大時系列における新しい時間ベースのシーンを作成するための様式を示す部分図である。
【図２ｒ】本明細書に説明するある一定の態様による図２ｋから図２ｑの新しく作成された時間ベースのシーン及び次の時間での例示的場所の一致する時系列を示す１つの可能な実施の図である。
【図２ｓ】本明細書に説明するある一定の態様による図２ｓに表される拡大時系列の時間ベースのシーンのシーン設定を変更するためのユーザ対話の様式を示す部分図である。
【図２ｔ】本明細書に説明するある一定の態様による時系列ベースのＶＲツアーのための視聴者の１つの可能な実施形態を示す図である。
【図２ｕ】本明細書に説明するある一定の態様による図２ｔに表された視聴者の拡大時系列ナビゲーションパネルを示す図である。
【図２ｖ】本明細書に説明するある一定の態様による時系列の次の時間での図２ｔに表された視聴者の拡大時系列ナビゲーションパネルを示す図である。
【図２ｗ】本明細書に説明するある一定の態様による時間０での選択された場所のドロップダウンとして開かれた時系列の１つの可能な実施を示す空間節約の代替の図である。
【図２ｘ】本明細書に説明するある一定の態様による時系列ベースのＶＲツアーのための視聴者の代替の実施形態を示す図である。
【図２ｙ】本明細書に説明するある一定の態様による図２ｘに表された視聴者の拡大ドロップダウンナビゲーションパネルを示す図である。
【図３ａ】本明細書に説明するある一定の態様による既存の又は新しく作成されたＨｏｌｏに間取図を追加する全体の処理を示す図である。
【図３ｂ】本明細書に説明するある一定の態様による様々なソース及びフォーマットから間取図をインポートする処理を示す図である。
【図３ｃ】本明細書に説明する一定に態様によるインポートされた間取図上の場所と選択されたシーンを相互接続する処理を示す図である。
【図３ｄ】本明細書に説明するある一定の態様によるクロッピング又は回転のような変換を加えた後に文書から間取図の高精細バージョンを抽出する処理を示す図である。
【図３ｅ】本明細書に説明するある一定の態様による間取図を含むＨｏｌｏを編集するＥｄｉｔｏｒのユーザインタフェースを示す図である。
【図３ｆ】本明細書に説明するある一定の態様による間取図のインポートのためのＥｄｉｔｏｒの例示的ユーザインタフェースを示す図である。
【図３ｇ】本明細書に説明するある一定の態様による拡大間取図上のホットスポットナビゲーション及び作成のための例示的ユーザインタフェースを示す図である。
【図３ｈ】本明細書に説明するある一定の態様による間取図上のホットスポットへの方位の表現及び追加のための例示的ユーザインタフェースを示す図である。
【図４ａ】本明細書に説明するある一定の態様による仮想カメラが複数のパノラマ画像で調節される方法を示す図である。
【図５ａ】本明細書に説明するある一定の態様による場所を写真に付加する例示的方法を示す図である。
【図５ｂ】本明細書に説明するある一定の態様による追加された場所が視覚化される方法を示す図である。
【図５ｃ】本明細書に説明するある一定の態様による本方法を使用することができる例示的使用事例を示す図である。
【図５ｄ】本明細書に説明するある一定の態様による写真に注釈を付ける可能性を示す図である。
【図６ａ】本明細書に説明するある一定の態様による面を抽出する及び投影することに加えて距離及び角度を測定することを限定されないが含むキャンバス−作成−モード及びもたらされる特徴の可能な視覚化を示す図である。
【図７ａ】本明細書に説明するある一定の態様によるＨｏｌｏの作成者がプレーヤモードのためのいずれかのＨＵＤを作成することを可能にする３Ｄシーンの上のＨＴＭＬ２Ｄオーバーレイを示す図である。
【図８ａ】本明細書に説明するある一定の態様による３６０°画像に位置付けられた注釈及びタスクシステムの元の概念を示す図である。
【図８ｂ】本明細書に説明するある一定の態様による新しい注釈を作成するワークフローの流れ図である。
【図８ｃ】本明細書に説明するある一定の態様によるＨｏｌｏのオブジェクトの事前選択から新しい注釈を作成するワークフローの流れ図である。
【図８ｄ】本明細書に説明するある一定の態様による注釈を処理及び解消する通知されるワークフローの流れ図である。
【図８ｅ】本明細書に説明するある一定の態様によるＨｏｌｏ内に埋め込まれた同期化注釈リストを示す例示的な図である。
【図８ｆ】本明細書に説明するある一定の態様による解消されたタスクの同期を示す例示的な図である。
【図８ｇ】本明細書に説明するある一定の態様による大域的と局所的注釈リスト間の差を示す図である。
【図９ａ】本明細書に説明するある一定の態様による塗装ツールによって作成された例示的自由形状ストロークを示す図である。
【図９ｂ】本明細書に説明するある一定の態様による塗装ツールによって作成された例示的事前定義幾何学図形を示す図である。
【図１０ａ】本明細書に説明するある一定の態様によるマルチユーザ体験の一部としてシーンに追加された他のユーザによるＨｏｌｏのためのプレーヤモードのユーザのためのビューを示す図である。
【図１０ｂ】本明細書に説明するある一定の態様による３６０°シーンの特定の場所を見てマルチユーザ体験の一部として特定のユーザ上にフォーカスする３６０°シーンのユーザの視覚化を示す図である。
【図１１ａ】本明細書に説明するある一定の態様によるシーン内の音声ソースの視覚化を示す図である。
【図１１ｂ】本明細書に説明するある一定の態様による音声ソースのための例示的インポート処理を視覚化する流れ図である。
【図１２ａ】本明細書に説明するある一定の態様による同時に１又は２以上のユーザによって閲覧及び注釈を取り付けられる３６０°ライブストリームを示す図である。
【図１３ａ】本明細書に説明するある一定の態様によるＨｏｌｏ内の視覚コンテンツの歪みのないビューの例を示す図である。
【図１３ｂ】本明細書に説明するある一定の態様によるＨｏｌｏ内の視覚コンテンツの円形の魚眼ビューの例を示す図である。
【図１３ｃ】本明細書に説明するある一定の態様によるＨｏｌｏ内の視覚コンテンツの直交魚眼ビューの例を示す図である。
【図１３ｄ】本明細書に説明するある一定の態様によるＨｏｌｏ内の視覚コンテンツの歪みのないオーバビューと視覚コンテンツの魚眼ビューの間をユーザが行ったり来たりすることを許可するシステム及び／又は方法の段階及び特徴の流れ図様式の図である。
【図１４ａ】本明細書に説明するある一定の態様によるＡＲ／ＶＲエディタ及びプレーヤのプレーヤモードでのローディング画面のための可能なＵＩの例を示す図である。
【図１５ａ】本明細書に説明するある一定の態様によるＶＲシーン内の自動顔検出を示す図である。
【図１６ａ】本明細書に説明するある一定の態様による安定フレームレートを維持するための自動動的レンダリング解像度調節を示す図である。
【図１７ａ】本明細書に説明するある一定の態様によるＨｏｌｏに使用するタイル化３６０°画像を示す例示的な図である。
【図１７ｂ】本明細書に説明するある一定の態様による使用する同じ３６０°画像の例示的タイル化高解像度バージョンを重ねた低解像度単一タイル３６０°画像を示す図である。
【図１７ｃ】本明細書に説明するある一定の態様によるタイル化３６０°画像をアップロード、前処理、格納、及び配信するためのコンピュータアーキテクチャを示すアーキテクチャ図である。
【図１７ｄ】本明細書に説明するある一定の態様による３６０°画像を受信し、３６０°画像の低解像度及び高解像度タイルバージョンを作成し、それらを格納する処理の流れ図である。
【図１７ｅ】本明細書に説明するある一定の態様によるＨｏｌｏに表示するタイル化３６０°画像を配信する段階の流れ図である。
【図１８ａ】本明細書に説明するある一定の態様によるＨｏｌｏに使用されるオブジェクトをアップロードして既存のハッシュ値を検査するためのコンピュータアーキテクチャを示す図である。
【図１８ｂ】本明細書に説明するある一定の態様によるＨｏｌｏに使用されるオブジェクトをアップロードして既存のハッシュ値を検査する処理を示す図である。
【図１９ａ】本明細書に説明するある一定の態様によるアクティブインターネット接続をローカルにアップロードする必要なく又はアクティブインターネット接続の必要なく異なるフォーマットの３Ｄモデルをインポート及び処理するためにクライアントのブラウザでローカルに実行される非同期ウェブ構成要素を示す図である。
【図２０ａ】本明細書に説明するある一定の態様による３Ｄモデルが移動デバイスにロード及びレンダリングされた時の自動メッシュ単純化及びテクスチャ縮小、残ったメモリの再スケーリング及び調節を示す図である。
【図２１ａ】本明細書に説明するある一定の態様による連続画像にユーザの回転を適用することができる方法を示す図である。
【図２１ｂ】本明細書に説明するある一定の態様によるユーザのいずれの回転もないユーザの視野を示す図である。
【図２１ｃ】本明細書に説明するある一定の態様によるユーザが回転した場合にユーザの視野に何が発生すべきであるかを示す図である。
【図２１ｄ】本明細書に説明するある一定の態様による視野の安定化がどのように有益になるかを示す図である。
【図２２ａ】本明細書に説明するある一定の態様による立体デバイスにパノラマ画像を正確に表示するための深度推定を使用する方法を示す図である。
【図２３ａ】本明細書に説明するある一定の態様による追加の要素毎にどのようにビデオを拡張することができるかの視覚化を示す図である。
【図２４ａ】本明細書に説明するある一定の態様による全体追跡システムを示す図である。
【図２４ｂ】本明細書に説明するある一定の態様による長距離追跡を可能にすることによる本方法の利益を示す図である。
【図２４ｃ】本明細書に説明するある一定の態様による検出されたオブジェクトのポーズがどのように決定されるかを示す図である。
【図２５ａ】本明細書に説明するある一定の態様による全体システムのワークフローの流れ図である。
【図２５ｂ】本明細書に説明するある一定の態様による実施形態の第１の使用事例を示す図である。
【図２５ｃ】本明細書に説明するある一定の態様による実施形態の第２の使用事例を示す図である。
【図２６ａ】本明細書に説明するある一定の態様による幾何学メッシュを使用した３Ｄマーカ発生の流れ図である。
【図２７ａ】本明細書に説明するある一定の態様によるリアルタイムでのメッシュ発生のパイプライン及びその使用の流れ図である。
【図２８ａ】本明細書に説明するある一定の態様による３６０°画像融合の一般的な処理を示す図である。
【図２８ｂ】本明細書に説明するある一定の態様による人及びノイズを含有する一連の３６０°画像を示す図である。
【図２８ｃ】本明細書に説明するある一定の態様による異なる照明露出を有する一連の３６０°画像を示す図である。
【図２９ａ】本明細書に説明するある一定の態様による少なくとも２つのレンズを有する球面又はパノラマカメラを示す例示的な図である。
【図２９ｂ】本明細書に説明するある一定の態様による球面又はパノラマ画像を撮影するための少なくとも４つのカメラのリグ構成を示す例示的な図である。
【図２９ｃ】本明細書に説明するある一定の態様による３Ｄ走査のためのデバイスを示す図である。
【図２９ｄ】本明細書に説明するある一定の態様によるデジタル描画のためのグラフィックタブレットを示す図である。
【図３０ａ】本明細書に説明するある一定の態様によるコンピュータデバイスを示す図である。
【図３０ｂ】本明細書に説明するある一定の態様によるレンダリングのためのスマートデバイスを使用したヘッド装着式デバイスを示す例示的な図である。
【図３０ｃ】本明細書に説明するある一定の態様による内蔵表示システムを有するヘッド装着式デバイスを示す例示的な図である。
【図３０ｄ】本明細書に説明するある一定の態様によるスマートデバイス及び反射面を有するヘッド装着式デバイスを示す例示的な図である。
【図３０ｅ】本明細書に説明するある一定の態様による投影器及び反射面を有するヘッド装着式デバイスを示す例示的な図である。
【図３０ｆ】本明細書に説明するある一定の態様による投影器を有するヘッド装着式デバイスを示す例示的な図である。
【図３１ａ】投影器ユニット、センサ、及びスマートデバイスを含む拡張システムを示す例示的な図である。
【図３１ｂ】内蔵投影器ユニット、センサ、及びコンピュータユニットを有するヘッド装着式デバイスを示す例示的な図である。
【図３１ｃ】仮想投影コンテンツを物理的空間に位置合わせするシステムを示す例示的な図である。
【発明を実施するための形態】
【００１５】
添付の図面に例が示されている実施形態をここで以下に詳細に参照する。以下の詳細説明では、多数の特定の詳細が本明細書に示す主題の十分な理解を提供するために示されている。しかし、本発明の主題はそれらの特定の詳細なしに実施することができることは当業者に明らかであろう。同じく、本明細書に説明する特定の実施形態は、例示によって提供され、特定の実施形態の範囲を制限するのに使用すべきではない。他の事例では、既知のデータ構造、タイミングプロトコル、ソフトウエア作動、手順、及び構成要素は、本明細書の実施形態の態様を不要に曖昧にしないために詳しく説明していない。
【００１６】
概要
【００１７】
３次元仮想現実及び拡張現実を最新のコンピュータ技術を使用して作成することができる。ユーザは、各々がそれぞれの眼に向けられた２つの画像を受け入れるためにヘッドセットデバイスを装着することができ、３次元空間及び深度の錯覚を作り出すことができる。これに加えて又はこれに代えて、ある一定の実施形態は、ユーザからの対話に応答して表示を移動することができ、例えば、ユーザがユーザの頭を移動しているとヘッドセットのセンサが決定した場合に、ディスプレイが動きに協働するように変えられる。従って、ユーザは、ユーザが仮想コンピュータ発生又は拡張された空間に実際にいるように感じることができる。
【００１８】
仮想現実とは、全てコンピュータで発生されたユーザに提示されている画像を指すことができる。一部の例では、ユーザがユーザの頭を移動した時に、仮想現実ディスプレイは、ユーザが別の場所、すなわち、様々なセンサを使用して対話することができる仮想現実の場所にいるという印象を与えるために連動して動く。一部の実施形態では、記録することができる又はライブ又はライブ条件に近い別の場所の画像をカメラでユーザに提示することができる。ユーザは、ディスプレイに置かれた拡張現実特徴によって表されるのと同じ方式で対話することができる。例えば、ユタのユーザは、ユーザがフロリダの野球の試合にいるように感じるために仮想現実ヘッドセットを装着することができる。ユーザは、ユーザの頭を移動して様々な角度を向くことができ、ユーザが現実にフロリダにいるようにフィールドの様々な部分を見ることができる。ゲームの統計データ、早期のアクションのリプレイ、又はゲーム中にコメントするアナウンサー及び評論家を見るためにユーザが見ている画像にコンピュータ発生項目又は表示を重ねることができる。
【００１９】
拡張現実は、追加のコンピュータ発生グラフィックを有するカメラ画像に基づくユーザに提示されている画像を指すことができる。このカメラ画像は、ユーザが位置付けられた場所から、例えば、見るための画像を発生させるのに使用されるスマートフォンによって撮影することができる。それらのカメラ画像は、この技術なしでユーザが見るものに項目又は態様を追加するためにコンピュータ発生画像によって拡張することができる。例えば、拡張現実ヘッドセットを装着したユーザは、オフィスのカメラ画像を見ることができるが、窓の代わりに、コンピュータは外側空間の画像を発生させる。これに代えてデスクにあるコーヒーマグを見る代わりに、ユーザは、代替のユーザのデスクの漫画のキャラクターを見る。それらの画像は操作及び対話することができるが、コンピュータ発生されている。拡張現実コンテンツを消費することができる別の方法は、ヘッド装着式デバイスを使用することによって物理的シーンに透視的に正しく重ねられた追加の仮想コンテンツによってユーザの視野を拡張することによるものである。この事例では、記録されたカメラ画像は必ずしもユーザに提示されない。当業技術に使用される別の語は混合現実である。混合現実は、拡張現実を指すが物理的オブジェクトを有する場所にインポーズされる。例えば、ユーザは、周りの実際の物理的世界を見るためのカメラを有するデバイスを使用するが、コンピュータはデスクの色を青に変える。ユーザはデスクのある部屋にいるので手を延ばして物理的なデスクに触れることができるが、コンピュータ発生画像を通じてデスク色が変わっている。この開示では、仮想現実、拡張現実、及び混合現実のような語は、同義に用いることができ、制限を意図していない。
【００２０】
ＶＲ及びＡＲに関わる１つの問題は、視聴のためのシーンの構築又は修正が常時ユーザにはアクセス不能である場合があることである。それらの常時ユーザは、ソフトウエアエンジニアリング空間での重要なノウハウなしに独自のＶＲ又はＡＲアプリケーションを発生させることはできない。本明細書に開示するのは、平均的ユーザがプログラミング及び／又は設計における特定の知識なしにＡＲ及び／又はＶＲコンテンツを発生させることを可能にするための対応するウェブベースのプラットフォームを含む方法及びシステムである。このプラットフォームは、Ｈｏｌｏ又は１又は２以上のＡＲ及び／又はＶＲシーンをユーザに作成させる。それらのシーンはユーザによって作成することができ、ユーザに全体的な体験を提供するために本明細書のシステム及び方法によって互いに縫合することができる。
【００２１】
本明細書に説明するシステムを通じて、ＡＲシーンは、追跡のための２Ｄ又は３Ｄマーカ、並びに１又は２以上の２Ｄ又は３Ｄオブジェクトのいずれかをウェブブラウザで実行するプラットフォームにドラッグ及びドロップすることによって発生させることができる。ＶＲシーンは、３６０°球面画像又は映像及び／又は１又は２以上の２Ｄ又は３Ｄオブジェクトをウェブブラウザで実行するプラットフォームにドラッグ及びドロップすることによって発生させることができる。任意の２Ｄ又は３Ｄオブジェクトをインポートする機能以外に、プラットフォームは、更に別のリソースの要件なくＡＲ又はＶＲシーンに追加することができる事前に定義された２Ｄ及び３Ｄオブジェクトの選択を提供することができる。一部の実施形態では、シーンに存在する全てのオブジェクトは、追加の情報、並びに異なるシーンに移るか又はウェブサイトを開くことのようなアクションによって操作、動画化、及びこれに関連付けることができ、全ての作成されたＨｏｌｏは永続的に保存してブラウザで直接にプラットフォームの専用プレーヤモードで消費することができ、ＵＲＬを通じて到達可能にすることができる。
【００２２】
シーンが互いに縫合された状態で、ユーザは、一度に１つのシーンを見て、シーンの矢印をクリックするなどの対話によって次にシーンにナビゲートしてシーンを次のシーンに移動することができる。これに加えて又はこれに代えて、一部の実施形態では、ユーザ機器のセンサを使用して位置、動き、及び／又は方位を識別することができる。そのような情報を使用して、本発明のシステムによって作成されたシーンをナビゲートすることができる。従って、ユーザは、ユーザが通りを歩いてカメラをパンするか又はヘッドセットを移動し、限定されないが以下に詳しく説明するようにユーザに対して３６０°一周及び上下を含む様々な角度を見ているように感じることができる。本発明の開示では、「Ｈｏｌｏ」という語は、縫合することができる１又は２以上のＡＲ／ＶＲシーンを指すのに使用することができることに注意しなければならない。この語は、制限を意図しないが、必ずしもＡＲ又はＶＲシーンのいずれか１つではないがいずれでもよいホログラフィック又はＨｏｌｏシナリオを単に示している。
【００２３】
従って、本明細書のシステム及び方法は、これに代えて又はいずれかの組合せで、ａ）同じウェブプラットフォームを使用してＡＲ及びＶＲコンテンツの両方の作成を可能にする機能を与える、ｂ）設計及び／又はプログラミング（エンドユーザ設計）における特定のスキル、特にドラッグ及びドロップを通じたＡＲ及びＶＲコンテンツを発生させる可能性に関する特定のスキルのない平均ユーザに与える、ｃ）それらを達成するための完全にウェブベースのシステムを提供する、ｄ）任意の２Ｄ及び３Ｄオブジェクトをインポート及び使用する及び事前に定義されたオブジェクトのセットから選択する、及び／又はｅ）３６０°球面画像又は映像から直接ＶＲシーンを作成することができる。
【００２４】
本明細書に説明することを実行するのに使用することができるコンピュータリソースは、限定されないがデスクトップ、ラップトップ、タブレット、ファブレット、スマートフォン、眼鏡、ヘルメット、又は他のスマートコンピュータデバイスのようなウェアラブルを含むあらゆる数のデバイスとすることができることに注意しなければならない。無線通信接続は、セルラー、ＷｉＦｉ、近距離通信、Ｂｌｕｅｔｏｏｔｈ、ピコセル、ナノセル、又はあらゆる他の種類の通信プロトコル、規格、又は方法、本発明の開示が書かれた後に発明されるものを含むあらゆる数の無線通信接続とすることができる。
【００２５】
アーキテクチャ例
【００２６】
図１ａは、例示的全体システムアーキテクチャの図である。本明細書の例示的方法及びシステムは、通信ネットワーク１１０１１２によって接続されるクライアント側のあらゆる数のオペレーティングシステム４００１２２及びサーバ側のサーバ１１０１１４及びデータストア１１０１１６を使用するあらゆる数のデバイスを含むスマートフォンのようなパーソナルコンピュータ又は移動コンピュータのようなコンピュータ１１０１０４を含むコンピュータアーキテクチャに基づいている。サーバ、データストア、クライアントパーソナルコンピュータを含むコンピュータシステムの各々は、プロセッサ、メモリ、ランダムアクセスメモリ（ＲＡＭ）、データストレージ、分散データストレージ、ネットワーク接続、及びスチールカメラ、ビデオカメラ、マイクロフォン、スピーカ、赤外線カメラ、深度マッピングカメラ、光検出及び測距（ＬＩＤＡＲ）システム、レーダーシステム、地理的位置決めシステム（ＧＰＳ）、音響センサ、及びマッピングデバイスのような構成要素を含むことができ、メモリ及びプロセッサは、オペレーティングシステム上で本明細書に開示するあらゆる数のソフトウエアプログラムを実行することができる。
【００２７】
本明細書の方法を実施するシステムは、埋め込み式３Ｄエンジン１１０１１０を有するウェブブラウザ１１０１０８を使用してアクセス可能なサービスとしてユーザ１１０１０２にサーバ１１０１１４によって配信することができる。提供されるサービスは、静的ウェブページ１１０１２４、クライアント側スクリプト１１０１２２、及び／又はサーバ側プログラム１１０１１８によって作成される動的ウェブページ、及びサーバ側のデータストア１１０１１６に存在するスクリプト１１０１２０に関して配信することができる。一部の実施形態では、サービスを効率的に使用するために、ユーザ１１０１０２はユーザプロファイル１１０１２６を有することができる。１又は２以上のＡＲ及び／又はＶＲシーンを含有する作成されたＨｏｌｏ１１０１２８は、あらゆるインポートされた２Ｄ及び／又は３Ｄモデル１１０１１７と共にデータストア１１０１１６に永続的に格納することができる。サービス１１０１１７によって提供される事前に定義された２Ｄ及び３Ｄモデルは、同様にデータストア１１０１１６に存在することができる。
【００２８】
図１ｂは、本発明のシステムにこれに加えて又はこれに代えて関わっている例示的構成要素及び機能を示している。本発明の方法及びシステムは、サーバとクライアント側の間に分配することができるいくつかの構成要素及び機能を含む。サーバ１１０２０４とクライアント１１０２０２の両方は技術デバイス４００１０６を含む。サーバ側１１０２０４は、データストア１１０１１６、すなわち、ユーザ管理１１０２２６、例えば、アカウントの登録、ログインなど、及び関わっているＨｏｌｏ及びＡＲ／ＶＲシーン及び２Ｄ／３Ｄオブジェクトの保存／ロード１１０２２８との直接通信を伴うアクションを指示することができる。クライアント側１１０２０２では、ユーザ１１０２０２は、ユーザがＡＲ／ＶＲコンテンツを発生させることを可能にするエディタ１１０２３２とユーザが以前に作成されたＡＲ／ＶＲコンテンツを消費することを可能にするプレーヤ１１０２３０と対話することができる。特に、エディタ１１０２３２は、ユーザ１１０１０２がＨｏｌｏを作成１１０２１６及び編集１１０２１４し、Ｈｏｌｏに含有されたＡＲ及びＶＲシーンを作成１１０２１２及び編集１１０２１０し、２Ｄ／３ＤオブジェクトをＡＲ／ＶＲシーンに追加１１０２０８して既存の２Ｄ／３Ｄオブジェクトを編集１１０２０６し、動画を２Ｄ／３Ｄオブジェクトに追加１１０２２４して既存の動画を編集１１０２２２し、かつトリガ可能アクションを２Ｄ／３Ｄオブジェクトに追加１１０２２０して既存のアクションを編集１１０２１８する。コンピュータシステムは、以下に詳しく説明するように一度構築されたＡＲ／ＶＲシーンを見るのに使用することができる。
【００２９】
Ｈｏｌｏ概要
【００３０】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、ある一定のＨｏｌｏ構築及び表示体験をサポートすることができる。図１ｃは、コンピュータデバイス４００１０６を使用して作成されたＨｏｌｏ１１０３０２の例示的構造を示している。これは、ＡＲ１１０３０６又はＶＲ１１０３０８シーンのいずれかであるいくつかのシーン１１０３０４を含むが、１つのＨｏｌｏは、両方のタイプのシーンを含有することができ、あらゆるタイプのうちの少なくとも１つのシーンを含有することができる。この例では、１つのＡＲシーン１１０３０６は、２Ｄ又は３Ｄオブジェクトのいずれかとすることができるある一定の数の専用追跡マーカ１１０３１０を含有する。追跡マーカ１１０３１０は、ＡＲ関連で現実世界との仮想接続として作用することができ、すなわち、作成されたＡＲコンテンツは、シースルーシナリオでこのマーカに対して表示され、ここでユーザは、カメラを通じてユーザ自身の周囲を見るかデバイスを通じて見て、本発明のシステムは、本明細書に説明するように検出及び追跡される物理的オブジェクト上にマーカを組み込んでいる。例えば、ユーザがＡＲシナリオでの仮想オブジェクトによってユーザの現実世界のラップトップを拡張したい場合に、ラップトップのキーボードの２Ｄ画像又はラップトップの３Ｄ走査のいずれかがマーカとして作用することができる。エディタ１１０２３２では、仮想２Ｄ１１０３１６及び／又は３Ｄオブジェクト１１０３１８は、カメラの位置とは関係なくＡＲシナリオで現実のラップトップに対して表示すべきであるので、インポートされたマーカ（ドラッグ及びドロップを通じて又は例えば他の対話を通じて達成することができる）に対して配置されることになる。３Ｄ走査は、３Ｄ走査デバイス３９０３０２で行うことができ、画像をカメラ４００１０８で発生させることができる。マーカのないＡＲシーン１１０３０６は、空白シーンであり、これを使用してあらゆる数の２Ｄ１１０３１６及び／又は３Ｄオブジェクト１１０３１８をインポートすることによって完全に仮想世界を発生させることができる。１つのＶＲシーン１１０３０８は、ベースとして１つの３６０°球面画像又は１つの３６０°球面ビデオ１１０３１４を含有する。球面及びパノラマ画像又は映像は、球面又はパノラマカメラ３９０１０２を使用して又は複数のカメラのリグ３９０２００を使用して発生させることができる。すなわち、シーンは、３６０°画像／映像がテクスチャとして中に配置される球面を含有するように自動的に初期化される。ユーザ１１０１０２がＶＲシーンを消費する仮想カメラは、球面の中心に配置され、それによって画像又は映像が撮影された場所に立つ錯覚をユーザが有する。あらゆる数のオブジェクト１１０３１２を２Ｄ１１０３１６又は３Ｄ１１０３１８オブジェクトのいずれかに対してシーンにインポートすることができる。例えば、このようにして３Ｄオブジェクトとして与えられた仮想の椅子及びテーブルをリビングルームの３６０°画像内に配置することができ、これはインテリアデザイナーの潜在的な使用事例である。あらゆる数のオブジェクト１１０３１２を動画化１１０３２２することができ、オブジェクトがクリックされた時���トリガされる異なるシーンに移るか又はウェブサイトを開くことのようなアクション１１０３２０に関連付けることができる。
【００３１】
ウェブベースのシステムのアクセス例
【００３２】
これに加えて又はこれに代えて、図１ｄは、システムにアクセスするための例示的ワークフローを示している。この例では、ユーザは、コンピュータ機械４００１０６でウェブブラウザ１１０４０２を開くことができる。追加のソフトウエアをインストールする必要なく、本発明のシステムは、プラットフォーム１１０４０４を識別するＵＲＬにナビゲートすることによってアクセス可能である。本発明のシステムはウェブブラウザ１１０４０２のサポートによってアクセス可能であるが、本発明のシステムはユーザによって使用するものとは異なるコンピュータ機械４００１０６で実行することができる。従って、図１ａに示すように、サーバ１１０１１４及びシステムのデータデータストレージ１１０１１６はネットワーク１１０１１２を通じてアクセス可能である。
【００３３】
Ｈｏｌｏ作成及びロードの概要の例
図１ｅの１１０５００は、コンピュータデバイス４００１０６を使用してＨｏｌｏを作成又はロードする例示的ワークフローを示している。ユーザ１１０１０２がコンピュータ機械４００１０６でＨｏｌｏを作成１１０５０４しようとする場合に、ユーザは、Ｈｏｌｏが少なくとも１つのＡＲ又はＶＲシーンを含有することができる場合に新しいＨｏｌｏに含有された第１のシーンのタイプを決定１１０５０６すべきである。初期シーンは、ＡＲ１１０５１０又はＶＲ１１０５０８シーンテンプレートのいずれかに対してエディタ１１０２３２によって作成される。ユーザ１１０１０２が代わりに既存のＨｏｌｏをロードしようとする場合に、ユーザは、データストアのユーザのプロファイル１１０１２６に関連付けられたＨｏｌｏ１１０１２８に基づいてサーバ１１０１１４によって配信されるＨｏｌｏのリストから選択１１０５１２することができる。選択されたＨｏｌｏはロード１１０５１４することができ、エディタ１１０２３２によって表示することができる。
【００３４】
図１ｆは、コンピュータデバイス４００１０６を使用してＨｏｌｏ内のＡＲ又はＶＲシーンを作成又は選択するための例示的方法を示している。ユーザ１１０１０２がＨｏｌｏ内の新しいシーンを作成１１０６０２しようとする場合に、ユーザは、ＡＲ又はＶＲシーンの作成１１０６０４又はシーンのリストからのシーンの選択１１０６１２の間で選択することができる。ＡＲシーンが作成される場合に、ユーザは、マーカを使用すべきか否かを決定することができる１１０６０６。マーカを使用しなければならない場合に、２Ｄ又は３Ｄオブジェクトに関してインポートすることができる１１０６０８。ＶＲシーンを作成しなければならない場合に、３６０°球面画像又は３６０°球面ビデオをインポートすることができる１１０６１０。ＡＲシーンに反して、空白ＶＲシーンは、ＡＲシーンのように表示するカメラ入力を持たないので、空白ＶＲシーンを作成することができない。ユーザが新しいシーンを作成する代わりに既存のシーンの選択を決定した場合に、ユーザは、現在編集中のＨｏｌｏに含有されたシーンのリストから選択１１０６１２しなければならない。
【００３５】
図１ｇの１１０７００は、コンピュータデバイス４００１０６を使用してＨｏｌｏに含有されたＡＲ又はＶＲシーンに２Ｄ又は３Ｄオブジェクトを追加又は編集する例示的ワークフローを示している。この例では、まずユーザ１１０１０２が現在編集しているＨｏｌｏの既存のシーンのリストからシーンを選択１１０７０２することができる。ユーザが新しいオブジェクトを追加１１０７０４したい場合に、ユーザは、ウェブプラットフォームによって提供される事前に定義された２Ｄ及び３Ｄオブジェクトのセットからの選択１１０７０８又はカスタムオブジェクトのインポート１１０７１０を決定することができる１１０７０６。後者は、例えば、ウェブプラットフォームへの１又は２以上の２Ｄ及び／又は３Ｄオブジェクトファイルのドラッグ及びドロップのような対話によって行われる。ユーザ１１０１０２が新しいオブジェクトを発生させるのではなく既存のオブジェクトを編集したい場合に、ユーザは、最初にエディタ１１０２３２によって現在表示されているシーン内で直接オブジェクトを選択１１０７１２するか又はこのシーンに対するオブジェクトのリストから選択するかによって行うことができる。オブジェクトは、限定されないが、位置、サイズ、回転色、及び／又はテクスチャを含むあらゆる数の方法で編集することができる１１０７１４。
【００３６】
図１ｈの１１０８００は、コンピュータデバイス４００１０６を使用して動画を２Ｄ又は３Ｄオブジェクトに追加するか又は２Ｄ又は３Ｄオジェクトに関連付けられた既存の動画を編集する例示的方法を示している。動画を２Ｄ又は３Ｄオブジェクトに追加又は編集する処理は、エディタ１１０２３２で現在表示されているシーンからのターゲットオブジェクトの選択１１０８０２から開始することができる。続いて、ユーザ１１０１０２は、ユーザが新しい動画を追加又は既存の動画を編集したいか否かを決定１１０８０４することができる。ユーザが動画をオブジェクトに追加１１０８０６したい例では、ユーザは、所与の動画のリストから選択するか又はオブジェクトの回転及び／又はスケーリング及び／又は再位置決めのシーケンスからカスタム動画を合成することができる。一部の例示的実施形態では、既存の動画の編集は、ターゲットオブジェクトに関連付けられた動画が既にある場合１１０８０８のみ可能にすることができる。動画が存在する場合に、動画を操作又は置換する１１０８１０ことができる。ユーザ１１０１０２が既存の動画の置換を決定した場合に、既存の動画を削除１１０８１２することができ、ユーザは新しい動画を選択又は合成１１０８０６することができる。そうでなければ、既存の動画を維持することができるが、ユーザによって変更１１０８１４することもできる。
【００３７】
図１ｉの１１０９００は、コンピュータデバイス４００１０６を使用してＡＲ又はＶＲシーンに含有された２Ｄ又は３Ｄオブジェクトに関連付けられたトリガ可能アクションを追加又は編集する例示的ワークフローを示している。トリガ可能アクションはプログラムされた動画とすることができ、又は一部のプログラムされたトリガ事象でのみ与えられる変更とすることができる。例えば、動画化オブジェクトは、ユーザがオブジェクトに対する所定の距離内に来た場合に色を変更することができる。最初に、例では、エディタ１１０２３２に現在表示されているシーンのターゲットオブジェクトを選択１１０９０２しなければならない。続いて、ユーザ１１０１０２は、新しいアクションをターゲットオブジェクトに関連付けるべきか否かを又は既存のアクションを編集すべきか否かを決定する１１０９０４ことができる。ユーザが新しいトリガ可能アクションをオブジェクトに追加したい場合に、ユーザは、所与のアクションのリストから選択１１０９０６することができ、アクションのパラメータ（例えば、「ウェブサイトを開く」アクションのＵＲＬ）を設定１１０９０８することができ、最後にアクションをターゲットオブジェクトに追加１１０９１０することができる。既存のアクションの編集は、ターゲットオブジェクトに関連付けられたアクションが既にある場合だけ可能である１１０９１２。アクションが存在する場合に、アクションを操作又は置換する１１０９１４ことができる。ユーザ１１０１０２が既存のアクションの置換を決定した場合に、既存のアクションを削除する１１０９１６ことができ、ユーザは新しいアクションを選択１１０９０６、定義１１０９０８、及び追加１１０９１０する。そうでなければ、既存のアクションを維持することができるが、このパラメータはユーザによって変更する１１０９１８こともできる。
【００３８】
図１ｊの１１１０００は、コンピュータデバイス４００１０６を使用してＨｏｌｏを保存する例示的処理を示している。Ｈｏｌｏが最初に保存された場合１１１００２、ユーザ１１０１０２は、Ｈｏｌｏに名前及び任意的な説明を提供１１１００４することができる。続いて、全てのシーン、オブジェクト、及びメタデータを含むＨｏｌｏは、エディタ１１０２３２によってサーバ１１０２０４に転送することができ、ここでＵＲＬが割り当てられ（初めて保存された場合）１１１００６、かつ最後にデータストア１１０２２８に保存１１１００８される。
【００３９】
シーン構築器ユーザインタフェースの例
【００４０】
ある一定の例示的実施形態では、ユーザインタフェースを使用して本明細書に説明するようにＨｏｌｏの構築及び編集を開始することができる。例示的ユーザインタフェース１１１１００は本明細書に説明するシステムによって作成してネットワーク上でアクセス可能である。従って、ユーザは、ネットワークアクセスが提供される場合は必ずシーンにアクセス、構築、及び編集することができる。これに加えて又はこれに代えて、図１ｋは、コンピュータデバイス４００１０６で見ることができるＨｏｌｏを作成１１１１０２及びロード１１１１０４するためのオプションを含む例示的ユーザインタフェース１１１１００を示している。新しいＨｏｌｏは、第１のシーンのタイプ、すなわち、ＶＲ１１１１０６又はＡＲ１１１１１０のいずれかを選択することによって発生させることができる。ラベル付けされたタイル１１１１０８は、本明細書の方法及びシステムによって望ましいドラッグ及びドロップ対話の機能を実施する。ラベル付けされたタブのクリック１１１１０４は、ログインされたユーザのための既存のＨｏｌｏのリストを示している。このリストから、Ｈｏｌｏを選択及びロードすることができる。既存のＨｏｌｏ１１０１２８は、データストア１１０１１６からロードされサーバ１１０１１４によって配信される。
【００４１】
図１ｌは、本明細書に説明する方法及びシステムを使用してＡＲ及びＶＲコンテンツを発生させるのに使用することができるエディタ１１０２３２のユーザインタフェース１１１２００を示している。ユーザインタフェース１１１２００は、本明細書に説明するようにネットワーク上でコンピュータデバイス４００１０６によって見て使用することができる。この主エディタインタフェース１１０２３２を通じて、ユーザは、新しいか又はインポートされたシーン及び／又はオブジェクトを使用してシーンを作り出すことができる。
【００４２】
図示のユーザインタフェース１１１２００の例では、現在のＨｏｌｏのシーンのリスト（この事例では「スライド」と呼ぶ）１１１２０２、並びにプラス記号で示されている新しいシーンを作成するためのオプション１１１２１０を含有する左手サイドバーが含まれており、現在選択されているシーンを編集するための大きい範囲１１１２０６、オブジェクトを選択、追加、及び拡張するための様々なオプションを含有する右手サイドバー１１１２１６、及びＨｏｌｏを保存する及びＨｏｌｏのメタデータを編集する１１２０４、並びにシーンプレーヤモードのユーザ管理及び切り換え１１１２０２ためのオプションを含有するトップメニューバーも示されている。Ｈｏｌｏ内のシーンは、ラベル付けされたリスト１１１２０２から選択することができる。限定されないが中央エディタ区域にドラッグ及びドロップする１１２０６のような対話によって又は右手サイドバーの対応するタブを起動して事前に定義されたオブジェクトを選択すること１１１４００によってオブジェクト１１１２０８をシーンに追加することができる。対応する材料及びテクスチャファイルを要求する追加のダイアログを起動する単一オブジェクトファイル（例えば、フォーマットＤＡＥ又はＯＢＪで）に対して又は一度に全ての必要なファイルを含有するＺＩＰファイルに対して３Ｄオブジェクトをインポートすることができる。インポート又は作成された状態で、ラベル付けされたボタン１１１２１２を使用して全てのオブジェクトを操作することができる（再位置決め、回転、スケーリング）。選択されたオブジェクトの現在の位置、回転、及びサイズは、各次元に対して別々にエディタ区域の底部１１１２２０に与えられる。ラベル付けされたボタン１１１２２２は、現在選択されているオブジェクトのズーム、複製、及び現在選択されているオブジェクトの削除のためのものである。あらゆる組合せのオブジェクト操作ボタンのいずれの種類もエディタ１１１２００に使用するために提示することができる。図１１で起動された右手サイドバー１１１２１６のタブ（一番左のタブ）は、現在のシーン１１１２１８の全オブジェクトのリストを示している。主エディタ区域１１１２０６で現在のシーン１１１２０８を直接クリックすることによって又はこのリスト１１１２１８から選択することによってオブジェクトを選択することができる。この例では、図１１の右手サイドバー１１１２１６の非アクティブタブは、オブジェクトを追加１１１４００、動画を追加／編集１１１５００及びアクションの追加／編集１１１６００するためのものであり（左から右）以下に説明する。いずれのレイアウトも、これに加えて又はこれに代えて本明細書に列挙した例に使用することができることに注意しなければならない。画面、メニュー、オプション、レイアウトは全て、配列、時間シーケンス又はウィンドウ構成のいずれの種類でもいずれの種類のユーザインタフェースにも配置することができる。
【００４３】
図１ｍは、Ｈｏｌｏ内に新しいＡＲ又はＶＲシーンを作成するためのユーザインタフェース１１１３００の１つの可能な実施（この事例では、「新しいスライド」と呼ぶ）をこれに加えて又はこれに代えて示している。これはコンピュータデバイス４００１０６で見て使用することができる。この例では、ユーザ１１０１０２は、ＶＲ１１１３０２とＡＲ１１１３０４のシーンを選択することができる。ラベル付けされた区域１１１３０６は、マーカなし、新しいＡＲシーン（図１ｆを参照）の２Ｄマーカ、又は３Ｄマーカを選択するための３つのオプションを含有する。従って、右の２つのタイルは、本明細書の方法及びシステムによって使用されるドラッグ及びドロップ対話を実施する。ＶＲシーン１１１３０２のためのタブを選択した時に、ユーザ１１０１０２は、図１ｋ１１１１０８に示すのと同じインタフェースが提示されている。しかし、同じくＡＲ及びＶＲのコンテキストでは２次的であるテキスト又は検査リストだけを含有する２Ｄシーン１１１３０８を追加するオプションが存在する。
【００４４】
図１ｎの例は、アクティブである第２のタブ（２Ｄ及び３Ｄオブジェクトを追加）を有する右手サイドバー１１１４００（図１ｌを参照）を示している。これはコンピュータデバイス４００１０６で見て使用することができる。この例でこれに加えて又はこれに代えて、ラベル付けされたボタン１１１４０２は、外部検索アプリケーションプログラムインタフェース（ＡＰＩ）に基づいて２Ｄアイコン及び３Ｄオブジェクトのための検索機能を提供する。一部の例では、追加カスタムコンテンツ１１１４０４は、例えば、限定されないが、２Ｄテキスト、３Ｄテキスト、あらゆる組合せでの２Ｄオブジェクト及び／又は３Ｄオブジェクトを追加するための（左から右）機能を含むことができる。２Ｄ又は３Ｄオブジェクトのあらゆる選択は、本明細書の方法及びシステムによって要求することができるドラッグ及びドロップ機能を実施する様式ダイアログをトリガすることができる。カスタム２Ｄ及び３Ｄオブジェクトは、限定されないが主エディタ区域１１１２０６にドラッグ及びドロップすることのようなユーザインタフェース対話によって同様にインポートすることができる。ラベル付けされた区域１１１４０６、１１１４０８、１１１４１０、及び１１１４１２は、クリック、タップ、又は他の対話によって現在アクティブなシーンに直接追加することができる２Ｄ及び／又は３Ｄオブジェクトの事前に定義された選択を提供することができる。１１１４０６は、３Ｄ矢印のセット、すなわち、３Ｄ形状のセット（限定されないが、情報ボックス、疑問符を有するボックス、コイン、様々な十字、立方体、円筒、様々なダイヤモンド、三日月、六角形、プリズム、ピラミッド、部分ピラミッド、リフレッシュ記号、様々なルーフ、部分ルーフ、シャムロック、球面、様々な星、ストップ記号、台形、又は他の形状）、カスタムテクスチャを付加することができる１１１４１０の２Ｄのセット（四角、矩形、円、又は他の２Ｄ形状）、及び３Ｄ形状（球体、球面、円錐、立体、又は他の３Ｄ形状）を提供する。カスタムテクスチャは、オブジェクト２Ｄ又は３Ｄ形状の仮想面に加えられる２Ｄ画像のあらゆる種類とすることができ、１１４１２の３Ｄツールのセット（限定されないが、ネジ回し、レンチ、ハンマー、ドリル、箱スパナ又は他のあらゆる組合せのような様々な品目）、及び１１１４１４の２Ｄアイコンのセット（限定されないが、バス、キャッシュレジスタ、衣服、フォーク及びナイフ、出口、雑誌、マップ、駐車場、トイレ、ストア、劇場、ハイキングコース、ビュー点、危険信号、スピーカ、耳、ヘッドフォン、グラモフォン、音楽記号、警報、音波、又は他のあらゆる組合せなど）とすることができる。本明細書の形状、ツール、及びアイコンの例は、限定されないものとして、様々な使用事例に対してツールのユーザをサポートするためにカスタマイズすることができる。構成ツールの例は、制限ではなく同様にカスタマイズすることができる。
【００４５】
図１ｏは、アクティブである第３のタブ（動画の追加／編集）を有する例示的右手サイドバー（図１ｌを参照）１１１５００を示している。これに加えて又はこれに代えて、例は、コンピュータデバイス４００１０６で見て使用することができる。対応するタイルをクリックすることによって現在選択された２Ｄ又は３Ｄオブジェクトに直接適用することができる事前に定義された動画のセットを提示することができる１１１５０４。個々に示す例示的動画は、制限ではないが、オブジェクトの回転、オブジェクトの円の動き、前方／横向きのオブジェクトの動き、爪先回転、オブジェクトの前方／横向きのスピン、オブジェクトを振動させる及びオブジェクトを上下に跳ねさせることを含む。オブジェクト動画のいずれの種類もこの例で提供することができ、選択されたオブジェクトを動画化するのに使用することができる。更に、一部の例では、回転のシーケンス、転換、及びスケーリング動画から作ることができるカスタム動画１１１５０２を発生させることができる。
【００４６】
図１ｐは、アクティブである第４のタブ（アクションの追加／編集）を有する例示的右手サイドバー（図１１を参照）１１１６００を示している。これは、コンピュータデバイス４００１０６で見て使用することができる。サイドバーは、番号を呼び出す、ウェブページを開く、異なるシーンに移る（図で「オープンサイド」とラベル付けされる）、テキストを含有する情報ボックスを示す、テキストを含有する警告ボックスを示す、電子メールを送信し、オブジェクト動画を開始又は終了し、オブジェクトを表示又は除去する、及び音を再生することのあらゆる組合せを含む例示的利用可能トリガ可能指令１１１６０４を示している。トリガ可能指令のいずれの種類を使用することもでき、それらの例は制限ではない。現在のシーンで２Ｄ又は３Ｄオブジェクトを選択した後で、ユーザ１１０１０２は、それらのアクションの１つを選択して、一致したパラメータを設定し、例えば、開かれるＵＲＬを指定するか又は再生されるサウンドファイルを選択することの１つを選択することができ、アクションは、ターゲットオブジェクトに関連付けられる。一部の実施形態では、各オブジェクトは、オブジェクトがシステムプレーヤモード１１０２３０でクリックされるか、又はそうでなければユーザによって対話された時にトリガすることができる１つのアクションに一度関連付けることができる。現在選択されているオブジェクトがトリガ可能アクションに既に関連付けられている場合に、これは、新しいアクションによって上書きすることができるか、新しいアクションが既存のアクションと同じである場合（既存のアクションの編集を効率的に意味する）場合に新しいパラメータで上書きすることができる。これに加えて又はこれに代えて、既存のアクションは一致するオプション１１１６０２を選択することによって削除することができる。更に、本明細書のシステム及び方法に機械によって伝達される情報の表示を可能にすることができるＯＰＣ  ＵＡ指令のセット１１１６０６が利用可能である。これに対して、ＯＰＣ  ＵＡサーバは、Ｈｏｌｏ設定で指定することができる。このサーバを通じて機械から利用可能な情報をＡＲ及びＶＲシーンで使用することができる。これはいくつかの使用事例を可能にすることができる。１つの非制限的な例を挙げるために、機械の温度をＡＲシナリオの機械の特定の部分に対して表示することができる。
【００４７】
図１ｑは、対応するＶＲシーンが初期化される前にインポートされた３６０°球面画像を前処理するためのユーザインタフェース１１１７００の１つの可能な実施を示している。インポートされた３６０°球面画像は、コンピュータデバイス４００１０６で見て使用することができる。本明細書のシステム及び方法は、特にユーザ１１０１０２が自動的に画像を拡張することを可能にするために事前に定義されたフィルタ１１１７０４を提供することができる。一部のフィルタは、特定のデバイスに対してカスタマイズすることができ、例えば、ＲＩＣＯＨ  ＴＨＥＴＡ球面カメラは、特に低照度設定である一定の品質を有する傾向がある。すなわち、本明細書でのシステムにおける「シータフィルタ」を起動する時に、対応するカメラによって撮影された３６０°球面画像の品質を事前に定義されたヒューリスティックに基づいて自動的に改善することができる。３６０°球面画像は、球面又はパノラマカメラ３９０１０２を使用して又は複数のカメラのリグ３９０２００を使用して発生させることができる。事前に定義されたフィルタに加えて、同様にユーザ１１０１０２は、画像のコントラスト、輝度、及び色の輝きをマニュアルで精緻化するオプション１１１７０６を有する。ライブプレビューは、ある一定の例示的ユーザインタフェースで全ての時間に表示１１１７０２することができる。
【００４８】
３６０°画像を形成するために画像を縫合するソフトウエアを使用する３６０°球面カメラ又は複数のカメラの配列が、あらゆる方向、左、右、上、下、又はそれらのあらゆる組合せでユーザがパンすることを可能にする画像を発生させるシステムを論ずる本発明の開示に使用されることに注意しなければならない。そのような３６０°画像の一般的な目的は、３６０°画像が撮影された場所の景色にユーザをはめることである。例えば、３６０°画像はビーチで撮影されたとする。ユーザは後で、３６０°画像が２次元画面を見ることによって又は３Ｄゴーグルシステムのような視聴装置によって撮影された同じシーンを体験することができる。そのような配列は、マウス、キーボード、又はユーザが画像を見るためにいずれの方向にも方位付けすることを可能にする他の配列により、モーション検出を有することができ、又は３６０°画像のナビゲーションを可能にすることができる。ゴーグル配列では、ユーザの動きが検出されるようにヘッドセットを画像と同期させることができ、相応に画像が変わる。３６０°画像のそれらの配列及び使用は、仮想現実として既知とすることができる。同様に、カメラがユーザの実際の環境を撮影するのに使用され本明細書のシステムがコンピュータオブジェクト又はオーバーレイ又は他の構造によってカメラ画像を拡張するのに使用される場合に、ユーザはその実際の環境を体験することができるが、コンピュータ像が追加される。そのような配列は、拡張現実として既知とすることができる。仮想現実及び拡張現実という語は、制限を意図しておらず、本明細書に説明するシステム及び方法をいずれか又は両方を発生させるのに使用することができる。それらの語は、所々で同義に使用することができ、従って、制限を意図していない。
【００４９】
図１ｒは、ＡＲ又はＶＲシーンに追加される前に、インポート３Ｄモデルを前処理するためのユーザインタフェース１１１８００の１つの制限ではない可能な実施を示している。この例は、コンピュータデバイス４００１０６によって見る及び使用することができる。この例では、本発明のシステムは、まず照明の強度の変更を可能にするツール１１１８０８を提供する。次に、図示のツールを通じて、ユーザ１１０１０２は、いずれ側を３Ｄモデルの上面にすべきか１１１８１０、例えば、いずれがインポートの前にモデルを逆さまにひっくり返せるかを再定義することができる。第３に、影オプション１１８１２が起動された場合に、より進歩した照明及び影を可能にする異なる材料を３Ｄモデルに適用することができる。一部の例示的実施形態では、標準的な材料をつや消しとすることができる。最後に、ユーザ１１０１０２は、同様に３Ｄモデルのウェブベースの処理に具体的に調節されたＳｔａｎ  Ｍｅｌａｘ  Ｐｒｏｇｒｅｓｓｉｖｅ  ＭｅｓｈタイプのＰｏｌｙｇｏｎ  Ｒｅｄｕｃｔｉｏｎ  Ａｌｇｏｒｉｔｈｍのバージョンに基づいて頂点及び三角形に対する３Ｄモデルの複雑さを低減するためのツール１１１８１４を提供する。現在選択されたオプション１１１８０２、並びにモデルの頂点の現在の数１１１８０４を考えるモデルのライブプレビューをプレビューシーンにいずれの時間にも表示することができる。この例では、プレビューシーンが自動的に回転するか否かは、ラベル付けされたボタン１１１８０６を使用して変更することができる。
【００５０】
図１ｓは、カスタム動画を発生させるためのユーザインタフェース１１１９００の１つの制限ではない可能な実施を示している。これは、コンピュータデバイス４００１０６で見る及び使用することができる。ユーザインタフェースの底側部分に、個々の回転のシーケンス、スケーリング、及び位置決め動画に関してカスタム動画を定義するのに使用することができるツールが示される１１１９０２。ユーザ１１０１０２は、時系列１１１９０２に個々の動画のいずれかに対するフレーム点を設定して、主エディタ区域１１１９０４内の直接操作によってこの時点での選択されたオブジェクトの回転、サイズ、又は場所を指定することができる。
【００５１】
図１ｔは、コンピュータデバイス４００１０６を使用して以前に作成されたＡＲ及び／又はＶＲコンテンツの消費を可能にする本明細書のシステム及び方法のプレーヤモードのためのインタフェース１１２０００の１つの制限ではない可能な実施をこれに加えて又はこれに代えて示している。この例では、左に向けて、ユーザ１１０１０２は、利用されるＨｏｌｏに含有されたＡＲ及び／又はＶＲシーン（この事例での「スライド」と呼ぶ）の折り畳めるリスト１１２００２が示されている。現在見られているシーンのＡＲ又はＶＲコンテンツは、プレーヤの主区域１１２００４に示されている。この例の底部では、左／右及び上／下への視野のパン、ズームイン及びズームアウト、全画面モードへの切り換え及び他のユーザとの現在見られているＨｏｌｏの共有に対して３次元シーンとの対話を可能にすることができる制御のセット１１２００６が示されている。この例では、「ＥＤＩＴ」のラベル付きのボタン１１２００８が、ユーザ１１０１０２が本発明のシステムのＥｄｉｔｏｒモード１１０２３２に戻ることを可能にするが、ＨｏｌｏがＨｏｌｏ１１０１２８及びサーバ側１１０１１６に格納されたユーザ管理１１０１２６データに従って実際にユーザによって所有される場合にのみ表示することができる。
【００５２】
図１ｋ−１ｔに示すユーザインタフェースは、本明細書の方法及びシステムの例示的実施だけを表し、制限を意図していない。１ｋ−１ｔに示すユーザインタフェースのいずれの組合せも、互換可能にかついずれの組合せ又は順序でも使用することができる。これに加えて又はこれに代えて、上述の要素のいずれの組合せを使用することもできる。特に、異なる要素、例えば、事前に定義された２Ｄ及び３Ｄオブジェクトの異なるセットである特徴を含む実施を提供することができる。それらの事前定義されたオブジェクトは、建設業又は他の業界のような特定の使用事例とすることができる。同じく、上述のインタフェースはデスクトップコンピュータ４００１２２のように設計されたものであるが、本明細書の方法及びシステムは、異なる入力方法によってデバイスの関連に移すことができる。それらは、ハンズフリー対話（例えば、頭を移動することによる十字形の指示）又はスマートフォン及びタブレットコンピュータ４００１０２のようなタッチデバイスを必要とするヘッド装着式ディスプレイ４００２００  ４００３００を含むことができる。それらのデバイスクラスの全ての最新の作成は、激しい振動のない３Ｄコンテンツを表示するのに十分強力である。更に、大部分は、Ｃｈｒｏｍｅ又はＳａｆａｒｉのモバイル版のようなウェブブラウザが利用可能であり、ＡＲ及びＶＲコンテンツのウェブベースの作成及び消費を可能にすることを意味するオペレーティングシステムとしてＡｎｄｒｏｉｄ又はｉＯＳに基づいている。将来の作動システム及びブラウザ又はインターネットアクセス構成のいずれの種類もサポートすることができる。
【００５３】
他の特徴の例
【００５４】
ある一定の例示的実施形態では、上述の例にこれに加えて又はこれに代えて、トリガ可能のアクションに関して２Ｄ／３Ｄオブジェクトに音声を追加することができると同時に（すなわち、オブジェクトがクリックされた時に音声が再生される）、本発明のシステムは、周囲の音、すなわち、特定のオブジェクトに結び付かない音声によって拡張することができるが、ユーザは、ＡＲ／ＶＲシーンに入った時に自動的に再生を開始する。別の例では、これに加えて又はこれに代えて、不可視の形状を導入することができ、例えば、３６０°球面画像に組み込まれたある一定の特徴の前に置くことができる。例えば、ドアが図２９ａに詳しく示す球面カメラデバイス２７０１０１によって撮影された３６０球面画像に見られる場合に、これは、クリック対話を達成するために眼に見える２Ｄ／３Ｄオブジェクト（写真撮影されたものの前の仮想ドアのような）を挿入する必要なく、ドアを効率的にクリック可能にすることができる。この１つの制限ではない使用事例は、ＶＲ点及びクリックアドベンチャーゲームとすることができる。これに加えて又はこれに代えて、塗装機能を提供することができ、これは、ブラシ又はペンシル描画ツールを使用してユーザがＶＲシーンの３６０°球面テクスチャに直接特徴を記述することができることを意味する。これに加えて又はこれに代えて、ライブストリームを使用することができ、ＶＲシーンで３６０°球面カメラ２７０１０１で撮影することができ、２Ｄ及び３Ｄオブジェクトで注釈を付けることができ、リアルタイムで複数のユーザによって消費することができる。それらの非制限的な例は、本発明の開示を通じて列挙されたいずれの例とも組み合わせることができ、他の特徴によって拡張又は共に使用することができる。
【００５５】
シーン作成及び時系列の例
【００５６】
図２ａから図２ｙは、これに加えて又はこれに代えて時系列ベースの機能の方法を提供するシステムの例示的概要を与え、３６０°画像及びビデオのタイムスタンプ及び年代順の構造化の自動作成の機能、並びにユーザによる時系列要素の再配置、追加、及び削除を含む。従って、この例では、本発明のシステムは、年代的に構造化された画像又は意味のある方式で視覚化されたビデオデータを有する必要性を満足させる。ある期間にわたるユーザ選択の地理的場所の変化の描写の基礎は、限定されないが建築現場、自然環境、店、レストラン、オフィス、美術館、公園、並びに関連のない人の写真のような様々な市販のかつ非市販の使用シナリオを含む最大３６０°までの視野を覆う画像及び／又はビデオである。本方法のコンテキストでの３６０°画像は、限定されないが最大３６０°の視野を有する全球面画像及びビデオを含む。３６０°画像及びビデオは、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって供給することができる。本発明のシステムに追加された時に、３６０°画像又は映像は、２Ｄ及び／又は３Ｄ要素によって更に高めることができるＨｏｌｏとして提示することができる。結果のＨｏｌｏは、限定されないが、図３０ａ、図３０ｂ、図３０ｃ、図３０ｄ、図３０ｅ、図３０ｆに示すハードウエアによって見ることができる。
【００５７】
図２ａは、異なるユーザ１２０１１０、１２０１１８が、２つの個別の使用事例であって非制限的な例を示す場合に提案されるシステム及び／又は方法をどのように使用することができるかを示している。ユーザ１２０１１０は、コンテンツを作成及び出力するためにシステム１２０１０４及びそのインタフェースを使用する既存のシステム１２０１２０と共に作業することができ、及び／又はユーザ１２０１１０は、提案されたシステム１２０１０４と直接対話することができる。いずれの方法でも、ユーザ１２０１１０は、ユーザが共に作業したいデータ１２０１０６を既存のシステム１２０１２０又は提案されるシステム１２０１０４に提供することができる。ユーザ１２０１１０、並びに提供されたデータ１２０１０６は、いずれのシステムとも十分に指定されたインタフェース１２０１０８を通じて対話する。データ１２０１０６は、限定されないが、図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって収集することができる。両方のインタフェース１２０１０８は、ユーザ１２０１１０に対する必要性及びシステムが、例えば、ウェブブラウザ又はスマートフォンに課す要件を満足させることができるものである。ユーザ１２０１１０、１２０１１８が既存のシステム１２０１２０と対話する場合に、本発明のシステムは、システムのインタフェース１２０１２２を使用して提供される機能を使用することができる。システム１２０１０４が編集、並びにある一定の例示的実施形態のコンテンツ１２０１１６を見ることができるので、既存のシステム１２０１２０は、その一部として競技者／視聴者１２０１１４モジュール又はエディタ１２０１１２、又は他のモジュール１２０１０２のいずれかを提供することができる。いずれのシステム１２０１２０、１２０１０４も、別のユーザ１２０１１０が作り出したコンテンツ１２０１１６をユーザ１２０１１８に出力することができる。閲覧側ユーザ１２０１１８は、編集側ユーザ１２０１１０がコンテンツ１２０１１６を共有した任意のユーザ又はユーザ１２０１１０自身とすることができる。いずれにせよ、インタフェース１２０１２４は、閲覧側ユーザ１２０１１８が、限定されないが、図３０ａ、図３０ｂ、図３０ｃ、図３０ｄ、図３０ｅ、図３０ｆに示すデバイスを含むハードウエアシステムでコンテンツ１２０１１６を消費することができる方法を提供することができる。
【００５８】
図２ｂは、これに加えて又はこれに代えて、ユーザ１２０１１０が、独立型アプリケーションとして提案されるシステム１２０１０４と共に又は既存のシステム１２０１２０への拡張として作用するシステム１２０１０４と対話することができる高レベル対話図の例を示している。ユーザ１２０１１０は、コンピュータインタフェース１２０１０８の１つを使用して、元のシステムと対話してユーザのコンテンツ（Ｈｏｌｏと呼ぶプロジェクトエンティティとして管理１２０２１２）へのアクセスを取得することができる。この例では、Ｈｏｌｏ１２０２１２は、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって作成された視覚データ１２０１０６を含む。この元のシステムは、提案されるシステム１２０１０４又は別の既存のシステム１２０１２０のいずれかとすることができる。後者の場合に、既存のシステム１２０１２０は、システム１２０１０４へのインタフェース１２０１２２を使用して、外部データストア１２０２１０からの格納されたＨｏｌｏをＡＰＩを通じてシステム１２０１０４に渡す。そうでなければ、システム１２０１０４は、インタフェース１２０１２２を内部に使用する。従って、例では、ユーザ１２０１１０は、最初から新しいＨｏｌｏ１２０２１２を開始するか、又は外部データストア１２０２１０から既存のＨｏｌｏをロードすることができる。ユーザからの名前及び説明のようなデータを要求するか、又は外部データストア１２０２１０又は内部データストア１２０２０８から既存のＨｏｌｏをロードすることにより、ユーザ１２０１１０のための新しいＨｏｌｏ１２０２１２をシステムが作成した後に、ユーザ１２０１１０は、新しい３６０°時系列１２０２０２を発生させるか、又は既存の３６０°時系列１２０２０２を編集することができる。ユーザは、様々な２Ｄ／３Ｄコンテンツ１２０２０４を一体型ライブラリ、又は図２９ｄに示すようなハードウエアに関するシステムを限定されないが含む方法を通じて新しい／既存の３６０°時系列１２０２０２に追加することができる。それらの段階１２０２０２、１２０２０４間のいずれの時間にも、ユーザ１２０１１０は、プレーヤ１２０２０６を使用してユーザの作成をプレビューして、ユーザのＨｏｌｏを内部１２０２０８又は外部データストア１２０２１０のいずれかに保存するか又は３６０°時系列１２０２０２の追加／編集及びコンテンツ１２０２０４の追加を自由に継続することができる。
【００５９】
図２ｃは、例示的システムのデータ構造、本発明のシステムがどのようにＨｏｌｏ１２０２１２を表すかを表現し、ユーザが場所を様々な時点にマップすることを可能にする方法に関して例を与えている。本明細書に説明するシステムは、限定されないが、オープンＧＬ／ウェブＧＬレンダリングシーン、シーン１２０３０４として表される３６０°画像及びビデオ１２０３０８のような資産を管理することができる。この例でのシーンは、名前、説明のような多数の属性を有することができるが、他も同様に又は組合せで有することができる。一部の態様は、ユーザ１２０１１０のデータ１２０１０６のデータストレージ、並びに画像又は映像データが撮影されたタイムスタンプ１２０３１０を含む。シーン１２０３０４がサブシーン１２０３０４を有することを可能にする特徴は、本発明のシステムが、場所を表す共通の親シーン１２０３０４に様々な時点を与えることを可能にし、その子供は、様々な時点を示すことができる。シーンは、Ｈｏｌｏ１２０２１２データ構造と呼ぶＨｏｌｏ１２０３０２に保存することができる１２０３０４。例を挙げると、Ｈｏｌｏ１２０３０２は、構築サイトを表せることが好ましい場合がある１２０３１２。様々な場所（ここでは、例えば、部屋１２０３１４）がトップレベルのシーン１２０３０４に対応し、経時的な場所の変化１２０３１６がトップレベルのシーン１２０３０４の子１２０３０６に対応する。
【００６０】
図２ｄは、３６０°画像及びビデオがどのように処理されてユーザに提示されるかを詳細に示す例示的な図である。３６０°画像及び映像ファイル１２０４０２は、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって処理することができる。ユーザ１２０１１０又は埋め込み式システム１２０１２０が画像又は映像データ１２０４０２をシステム１２０１０４に渡した後に、システム１２０１０４は、望ましい（ウェブ）ページに容易に組み込むことができるように画像及びビデオデータ１２０４０２の両方のデータ−ｕｒｌ１２０４０４を発生させることができる。データが画像でも映像ファイルでもない場合に、システム１２０１０４は、インポートを取り消して適切な応答をユーザ１２０１１０に送信することができる。ある一定の例では、データ−ｕｒｌ１２０４０４が作成されると直ちに、システム１２０１０４は撮影時間及び他の関連の情報のようなメタデータ１２０４０６を提供されたデータ１２０４０２から抽出することができる。この情報を使用して、時間ベースのシーンのための正しい順序を発生させることができる。次の段階１２０４０８で、ダイアログ１２１２０２は様々な画像及びビデオ前処理オプション１２１２０６  １２１２０８をユーザ１２０１１０に提示する。ある一定の例では、ユーザは望ましいオプション１２１２１０を選択して、限定されないが「追加」ボタン１２１２１２をクリックするという対話によって適用することができる。これは、処理１２０４１０を開始して設定を生画像又は映像データに適用することができる。ユーザに最良の可能な体験を提供して処理オーバヘッドを低減するために、インポートするファイルが３６０°画像ファイルである１２０４１２場合に追加の修正のアプリケーションを作ることができる。データが３６０°映像である場合に、処理を開始１２０４２６して、これをデータＵＲＬからロードして、ユーザが見る標準的高解像度３６０°球面オブジェクト１２０４３２にテクスチャとして適用することができる。データが３６０°画像である場合１２０４１２、３６０°画像方位１２０４１４に調節を実行するためにサイズ及び比率、並びにカスタムアルゴリズムを使用することができる。画像の方位を調節することにより、更に現実的かつ生き生きとした画像を発生させることができる。次に、一部の実施形態では、これに代えて又はこれに加えて、画像スライスと呼ぶ処理を適用することができる１２０４１６。
【００６１】
ロード時間を改善して画像表示の性能を改善するために、可能な限り早く３６０°画像をユーザ１２０１１０に表示することが有益であるので、体験を改善して画像がロードしていることを示す進行バーを見る間の待ち時間を低減するために、全３６０°画像を複数の小さい部分に分割することができる。それらの小さい部分は、本発明のシステムが決定するどのような順序でも独立してロードすることができ、従って、残りがまだロードしている間に特定の部分を直ちに表示することができる１２０４２８。画像品質を高レベルに維持するために、各スライスは、例えば、２０４８×２０４８ピクセルの寸法を有することができる。画像をスライスする処理では、低解像度サムネイル１２０４２０をユーザへの即時の表示１２０４２８のために発生させることができる。そのような例では、本発明のシステムは最終球面の僅かにぼやけた画像を表示することができる。処理１２０４２４は、全スライスを最終球面にアセンブリしてユーザのデバイスのメモリを保存するための低解像度サムネイルを並べることを開始することができる。処理１２０４２６は、どれがロードして全高解像度スライスを加えて球面をレンダリング器に渡すかを開始することができる。この例の全体のインポートは、限定されないが図３０ａ、図３０ｂ、図３０ｃ、図３０ｄ、図３０ｅ、図３０ｆに示すデバイスを含むハードウエアシステムでユーザに高解像度３６０°球面１２０４３０を表示することによって終了する。一部の実施形態では、ユーザによって見られる球面スライスだけが完全にダウンロード及び表示され、見られない球面スライスはロードされない。
【００６２】
図２ｅは、３６０°時系列を作成かつ編集するための例示的処理を示している。３６０°画像及び映像ファイル１２０４０２は、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって処理することができる。データ１２０１０６  １２０４０２が、例えば、図２ｄの１２０５０２に示す処理を使用してインポートされた状態で、システム１２０１０４は、データのメタデータからのデータが抽出されたか否かを検査する。日付メタデータが抽出された場合に、システム１２０１０４は、データを現在処理済みのデータ１２０４０２に関連付けられたシーンに保存することができる。一部の例示的実施形態では、ユーザ１２０１１０が２Ｄ／３Ｄオブジェクトのような追加のコンテンツを時間ベースのシーンに追加した場合に、ユーザは、このデータを続く時間ベースのシーンに移すことを要求する。従って、システム１２０１０４は、前のシーンに利用可能なコンテンツがあるか否かを検査して、ある場合に、コンテンツのクローンを作る及び／又はコンテンツをコピーし、これを現在のデータを表す新しい時間ベースのシーンに追加する。いずれの方法でも、新しいシーンのコンテンツを使用して、ユーザインタフェースにビュー１２０５０８を発生させることができる。ユーザインタフェースでのこの表示は、時系列で表される項目（シーン）を作ることができる。時系列１２１００２は、既に示されているデータに関して時系列で正しい場所１２０５１０に置くためにこの表示を正しく順序付けることができる。一連の画像又は映像データが追加された場合に、ユーザ１２０１１０  １２０１１８への第１の画像をユーザ体験を高めるために表示することができる。システム１２０１０４は、レンダリング器１２０４２８を使用して第１の低解像度の場所ベースのシーンを更新し、図３０ａ、図３０ｂ、図３０ｃ、図３０ｄ、図３０ｅ、図３０ｆに示すデバイスを含むハードウエアシステムでユーザに表示することができる。データの全てが処理されている場合に、画像及びビデオの全日付及び順序１２０５１２を検証することができる。それらが有効である場合に、３６０°時系列作成処理が完了し１２０５１６、そうでなければユーザは、全体時系列を手動で調節する、並べ替える、及び編集するという選択１２０５１４を取得することができる。
【００６３】
図２ｆは、ユーザ１２０１１０、並びにシステム１２０１０４のための例示的段階を詳述し、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すようなデバイスを含むハードウエアシステムによって作成された新しいデータ１２０４０２を既存の時系列１２１００１に追加し、これは、場所ベースのシーンの時間拡張を表す例では、新しい時間ベースのシーンを時系列１２１００２に追加するために、ユーザは、いくつかの異なる方法１２０６０２を使用することができる。いずれの事例でも、例示的システム１２０１０４はダイアログ１２１２０２を提示することができる。データが追加されている場合に、例えば、ＵＩ内の時系列１２１００２に直接ドラッグされている場合に、プレビューパネル１２１２０４にデータのサムネイルを読み取ることができる１２０６０６。そうでなければ、ユーザは、例えば、例示的ＵＩに予めパネル１２１２０４にデータをドラッグ１２０６０５して対話することができる。パネル１２１２０４はまた、データの外観（取りわけカスタムフィルタ）を変更するために１２０４０８を適用することができる一部のオプション１２１２１０をユーザに提供する。ある一定の実施形態では、システム１２０１０４は、それらのオプションを設定１２０６０８し、それらをシーンのデータストレージに保存し、必要に応じて既存のコンテンツ１２０５０６を新しいシーンにコピーすることになる。日付／時間１２０６を自動設定するためのオプションが検査されている場合に、本発明のシステム１２０１０４は、ある一定の例のメタデータに従ってこの日付／時間を設定する処理１２０５０４を開始することになる。システムがこの例で日付／時間を設定した後に、ユーザ１２０１１０は新しいダイアログ１２１５０２を見ることができる。ユーザは、本発明のシステムが「Ａｐｐｌｙ」１２１５１８をクリックすることによって決定した順序を受け入れる及び適用することができ、又はユーザは、新しい時間ベースのシーンを新しい日付／時間、及び従って時系列１２１００２の位置に異なる処理１２０５１４を使用して設定することができる。ユーザが前者を実行する場合に、本発明のシステム１２０１０４は、設定された日付及び時間１２０５１０に従って指定された位置に新しい要素を追加する。
【００６４】
図２ｇは、３６０°画像又は映像を含むシーンに外部コンテンツを追加する例示的処理を示している。画像及びビデオデータは、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって行うことができる。この例では、ユーザ１２０１１０がシーンを選択した時に、ユーザは、ＵＩの新しいパネル１２０９１４を見ることになる。埋め込み式システム１２０１２０は、インタフェース１２０１２２を使用して、様々なデータフォーマットの２Ｄ／３Ｄモデルをこのパネル１２０９１４での表示を発生させるシステム１２０１０４に渡すことができる。データが存在しない場合に、ユーザ１２０１１０は、ユーザ独自のデータストアから処理１２０７０６を通じてデータを選択して、システム１２０１０４にユーザのためにこのデータをインポートさせることができる。データが既に利用可能であるか又はインポートされている場合に、ユーザは、パネル１２０９１４からこのデータを選択１２０７０２して、例では選択されたオブジェクトを現在のシーンに追加する処理１２０７０６に渡すことができる。更に、ユーザは、別の処理１２０７０４に示す別のワークフローを通じてオブジェクトを編集することができる。
【００６５】
図２ｈは、システム及び／又は方法１２０１０４の内側のデータフロー、並びに埋め込み式システム１２０１２０間のデータフローを透過的にする例示的詳細を与えている。使用されるデータは、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって行うことができる。データ１２０１０６は、既存のシステム１２０１２０及び次に提案されるシステム１２０１０４のいずれかにインタフェース１２０１２２を通じて、又はデータを受け入れてこれをロード及びインポートを扱う様々なローダー１２０８０４に渡すシステム１２０１０４のＵＩ１２０８０５に直接１２０８０３に送られる。この後に、ある一定の例ではこれに代えて又はこれに加えて、画像又は映像前処理ユニット１２０８０６は、ユーザ１２０１１０が設定しているフィルタ及びカスタムオプションの適用を処理する。処理されたデータ１２０１０６は、シーン１２０８０８又はＨｏｌｏ１２０８１２のような内部に使用されるデータ構造を発生させるために送られる。ある一定の例では、それらの２つ以外のシステムに多くの１２０８１０が存在することができるが、それらが情報及びデータを表す時に殆どのユーザ１２０１１０  １２０１１８が共に作業するとして説明する。データがシステム１２０１０４の内側のユーザに自らを提示する準備ができており、ウェブＧＬ／オープンＧＬ１２０８１４へのインタフェースを使用してシステムのキャンバス１２０８１８又は外部キャンバス１２０８２０のいずれかにレンダリングする１２０８１６ことができ、これは図２ａに提供されたインタフェース１２０１２２を使用することによって達成することができる。
【００６６】
図２ｉは、閉じられた時系列パネルを有する３６０°画像及びビデオ１２０９０２によってＶＲツアーを作成かつ編集するためのＶＲエディタとして時系列システム１２０１０４及び既存のシステム１２０１２０の例示的組合せユーザインタフェース（ＵＩ）を示している。この特定のＵＩがウェブベースのアプリケーションに対してカスタマイズされていると同時に、本発明のシステムは、限定されないが、コンピュータデバイス、タブレット、スマートフォン、及びスマートグラスのような様々なデバイスに使用することができる。デバイス及び使用に応答してＵＩは変わることになる。従って、このかつ以下のＵＩ図は、多数の設計可能性の１つとしてかつ制限ではないものとして理解しなければならない。以下の例示的ＵＩの図示のために例示的データとして使用される画像及び映像ファイルは、限定されないが図２９ａ、図２９ｂ、図２９ｃ、図３０ａに示すデバイスを含むハードウエアシステムによって行うことができる。出力ハードウエアシステムは、限定されないが図３０ａ、図３０ｂ、図３０ｃ、図３０ｄ、図３０ｅ、図３０ｆに示すデバイスとすることができる。この例では、ユーザ１２０１１０は、ＵＩを通じてアップロードされた３６０°画像又は映像に２Ｄ、並びに３Ｄコンテンツ１２０９１４を追加及び編集することができる。新しく追加された時間ベースのシーン１２１００４  １２１００６  １２１００８は、その先行する場所ベースのシーン１２０９０６  １２０９０８又は時間ベースのシーン１２１００４  １２１００６  １２１００８の２Ｄ及び３Ｄコンテンツ１２０９１４を引き継ぐことができる。ユーザ１２０１１０は、少なくとも１つの場所ベースのシーン１２０９０６  １２０９０８を追加して指定された場所の新しい時系列を開始することができる。各場所ベースのシーンをシーンプレビューとしてシーン概要１２０９１６に列挙することができる。指定された区域に対する仮想現実ツアーを発生させるために、ユーザ１２０１１０は、場所ベースのシーン１２０９０６  １２０９０８として複数の場所１２０９１２を追加することができる。場所ベースのシーン１２０９０６  １２０９０８として表された各場所は、その独自の時系列を保持することができる。一部の例では、ユーザ１２０１１０は、ＵＩ内の「シーン追加」ボタン１２０９１０に従っていずれの既存の時間ベースのシーンなしにあらゆる場所ベースのシーン１２０９０８に時系列要素を追加することができる。現在の日付及び時間１２０９０４、並びにいずれの場所ベース、並びに時間ベースのシーンのための指定された名前１２０９０４をエディタＵＩの作業区域１２０９００に何時でも表示することができる（拡大、並びに閉じられた時系列パネルに）。時系列を有する場所ベースのシーンの時系列パネルを拡大するために、ユーザ１２０１１０は、場所ベースのシーン（プレビュー）１２０９０６をクリックすることができる。
【００６７】
図２ｊは、図２ｉで紹介した例示的埋め込み式システム１２０１２０の時系列システム１２０１０４の拡大時系列パネル１２１００２の可能な視覚化を示している。特定の場所ベースのシーンの時系列１２０９０６は、場所ベースのシーン１２１００４マーキング時間ｔ０であるシーンの１つを有する時系列要素１２１００４、１２１００６、１２１００８として少なくとも２つの時間ベースのシーンを保持することができる。各時系列要素１２１００４、１２１００６、１２１００８は、日付及び時間を有することができ、昇順の順序によって年代順に格納される。ユーザ１２０１１０は、一致した時系列要素１２１００４、１２１００６、１２１００８をクリックすることによって作成済み時間ベースのシーン１２１００４、１２１００６、１２１００８の間を変更することができる。３６０°画像又は映像の上部のキャプション１２０９０４は、現在選択された場所ベース１２０９０６又は時間ベースのシーン１２１００４、１２１００６、１２１００８の日付及び名前を表示する。作業空間を獲得又は３６０°画像又は映像１２０９０２の優良なビューを有するために、ユーザ１２０１１０は、時系列パネル１２１００２を隠すことができる１２１０１０。
【００６８】
図２ｋは、新しい時間ベースのシーン１２１００４、１２１００６、１２１００８を場所ベースのシーン１２０９０６の既存の時系列１２１００２に追加するユーザインタフェースの１つの可能な例を示している。新しい時間ベースのシーン１２１００４、１２１００６、１２１００８は、２つの既存の時系列要素１２１１０２の間の事前選択された区域又は時系列１２１１０４の最後のいずれかにユーザ１２０１１０によって追加することができる。３６０°画像又は映像は、指定された区域１２１１０２、１２１１０４でドラッグ又はドロップすることができ、又は共通の走査検索機能を通じて選択することができる。
【００６９】
図２ｌから図２ｎは、更に別の時系列要素を追加する１２１１０２、１２１１０４時に開く既存の時系列１２１００２の新しい時間ベースのシーンの事前定義される設定を構成するための例示的様式１２１２０２を表している。ユーザ１２０１１０は、図２ｌに示すように走査検索により、又は図２ｍに示すようにドラッグ及びドロップによって３６０°画像及びビデオのいずれかをアップロード１２１２０４することができる。ユーザが３６０°画像又は映像を予め撰ぶ場合に、選択された画像又は映像のプレビューを図２ｎに示すように表示することができる１２１４０２。アップロードされた３６０°画像１２１３０２又はビデオを時系列システム１２０１０４によって又はユーザ１２０１１０自身によって手動で時系列１２１００２に自動位置合わせすることができる１２１２０６。新しい時系列要素を発生させる時に、それに先行する場所ベースのシーン１２０９０６又は時間ベースのシーン１２１００４、１２１００６、１２１００８の２Ｄ及び３ＧＤコンテンツ１２０９１４はクローンを作ることができ１２１２０８、新しく追加された時間ベースのシーン内に挿入することができる。このレベルは、ある期間に取り込まれた３６０°画像及びビデオ材料の品質を変化させ、ユーザは、事前に定義された画像及びビデオ設定１２１２１０によって照明及びコントラスを調節することができる。
【００７０】
図２ｏから図２ｑは、場所ベースのシーン１２０９０６、１２１５０６の時系列１２１００２、１２１５０４において新しく追加されたもの１２１５０８を（年代順に）挿入し既存の時間ベースのシーン１２１５１０、１２１５１２を再順序付け１２１７０２するための例示的様式１２１５０２を示している。時系列１２１５０４の各シーン１２１５０６、１２１５０８、１２１５１０、１２１５１２は、図２ｓに説明するように、ユーザ１２０１１０が編集１２１５２０することができるシーン設定で定義されたシーンプレビュー、名前、及び日付及び時間を有する。時間ベースのシーン１２１５０８、１２１５１０、１２１５１２に自動設定日付及び時間を追加するか又はユーザ１２０１１０がある一定の時間１２１１０２に新しい時系列要素を追加した時に、時系列システム１２０１０４は、時系列概要１２１５０４の時系列１２１００２の既存のシーン１２１５０６、１２１５１０、１２１５１２の間に自動的にシーンを挿入することになる。これに代えて、ユーザ１２０１１０は、月、日、及び年のようなあらゆるカレンダー又は時間によって日付１２１５１４、かつ、時間、分、及び秒によって時間１２１５１６を自律的に又は自動的に設定することができる。新しい時間ベースのシーン１２１６０２は、シーンが時系列１２１００２のある一定の時間に追加１２１１０４されなかった場合に、時系列１２１５０４の最後に挿入することができる。これに代えて又はこれに加えて、ユーザ１２０１１０は、新しく追加された並びにドラッグ及びドロップ１２１７０２によるいずれの時間にも場所ベースのシーン１２１５０６の次の時系列１２１０５４の既存の時間ベースのシーン１２１５１０、１２１５１２、１２１５０８、１２１６０２を再順序付けすることができる。時系列１２１５０４の順序及び新しく追加されたシーンの日付／時間１２１５１４、１２１５１６、並びに既存の時間ベースのシーン１２１５０８、１２１６０２の順序のいずれの変更も、時系列パネル１２１００２に適用するためにユーザ１２０１１０によって確認することができる。
【００７１】
図２ｒは、次の時間に例示的場所ベースのシーン１２０９０６の時系列１２１００２に年代順に挿入された図２ｋから図２ｑの新しく作成された時系列要素１２１８０２に示されているＨｏｌｏを表示する例を示している。新しい時間ベースンシーンは、後の時点での場所ベースのシーン１２０９０６に表された場所の３６０°画像又は映像を表示することができる。一部の例では、本発明のシステムは、新しい時間ベースのシーン１２１８０２に先行するシーンの２Ｄ及び３Ｄコンテンツのクローンを作り、これを新しい３６０°画像又は映像１２１８０４における同じ位置又は実質的に同じ位置に配置することができる。これに加えて又はこれに代えて、シーンの３６０°画像又は映像の上部のキャプション１２０９０４は、対応する日付及び時間、並びに選択されたシーンの名前を表示することができる。時系列パネル１２１００２における選択された時系列要素をクリックすることにより、ユーザ１２０１１０は、時系列の時間ベースのシーン１２１８０２、１２１００６、１２１００８を順序付けるための様式１２１５０２、並びに既存の時間ベースのシーン１２１８０２、１２１００６、１２１００８を順序付けるための様式１２１５０２、並びに既存の時間ベースのシーン１２１８０２、１２１００６、１２１００８、並びに場所ベースのシーン１２１００４の設定を編集するための様式１２１９０２を開くことができる。
【００７２】
図２ｓは、既存の時系列１２１００２の時間ベースのシーン１２１８０２、１２１００６、１２１００８のシーン設定１２１９０４、１２１９０６、１２１９０８、１２１９１０を場所ベースのシーン１２１００４に編集するための例示的様式１２１９０２を示している。そのような例では、ユーザ１２０１１０は、現在の時間ベースのシーンに命名１２１９０４して、日付及び時間を変更１２１９０６して、シーンの説明１２１９０８を与えて、限定されないが、例えば、個人的メモ、及び／又はシーンプレビューとしてのサムネイル１２１９１０を含む様々な事柄のいずれも追加することができる。時間ベースのシーン１２１８０２、１２１００６、１２１００８の日付及び時間１２１９０６を変更した時に、時系列１２１００２のシーンは、上昇日付及び時間によって年代順に自動的に再順序付けすることができる。一部の例では、ユーザは、図２ｏから図２ｑに示すようにシーン順序様式１２１９１２を変更することによってシーンを再構成することができる。ユーザ１２０１１０は、「保存」ボタン１２１９１４のクリックなどによって示すことにより、ユーザが変更した後に設定を保存することができる。
【００７３】
図２ｔは、閉じられた時系列パネル１２２１０４を有する３６０°画像及びビデオ１２２００２を有するＶＲツアーを見るためのＶＲプレーヤとして時系列システム１２０１０４及び既存のシステム１２０１２０の組み合わされたＵＩ１２２０００の１つの可能な実施を示している。視聴者１２２０００の時系列１２２００４は、時間ベースのシーンをナビゲートするためのユーザ対話によって拡大可能である。この例では、視聴者１２０１１８は、ドロップダウンメニュー１２２００６又は他の選択設定値を有する個別のナビゲーションパネル１２２００６、１２２００８によって場所の間をナビゲートすることができ、従って、前の又は次の場所ベースのシーンに変更するための全ての既存の場所及びオプション１２２００８を得る。この例では、ドロップダウンメニュー１２２００６は、ユーザ１２０１１８が既存の場所ベースのシーンの特定の場所を直接選択することを可能にする。ユーザ１２０１１８は、所与の制御１２２０１０、１２２０１２、１２２０１４を通じてシーン１２２００２と対話することができる。
【００７４】
図２ｕ及び図２ｖは、視聴者１２０１１８がある期間にわたってある一定の場所の３６０°画像又は映像１２２００２、１２２２０２の変化にこれを通じて従うことができる時系列システム１２０１０４の視覚化としての拡大時系列１２２１０２の例示的実施形態を示している。時系列の例１２２１０２は、１つの場所ベースのシーン１２２１０４及び少なくとも１つの時間ベースのシーン１２２１０６、１２２１０８、１２２１１０、１２２１１２を有する。視聴者１２０１１８は、図２ｖに示すようにオリジナルシーン１２２００２とは対照的に次の時間での場所の変化したシーン１２２２０２を表示する適切な時系列要素１２２１０４、１２２１０６、１２２１０８、１２２１１０、１２２１１２を選択することによって別の時間ベースのシーン１２２１０６、１２２１０８、１２２１１０、１２２１１２を開くことができる。場所ベースのシーン１２２１０４の間を切り換える１２２００６、１２２００８時に、時系列１２２１０２は相応に変化する。視聴者１２０１１８は、時系列１２２１０２を隠して１２２１１４、シーン１２２００２、１２２２０２の優良なビューを取得することができる。
【００７５】
図２ｗは、３６０°画像及びビデオを有するＶＲツアーを作成かつ編集するためのエディタとして時系列システム１２０１０４の視覚化のための図２ｉから図２ｓに示すユーザインタフェースに対する例示的な追加又は代替実施設計を示している。時間ベースのシーン１２２３０４、１２２３０６、１２２３０８は、仮想に構造化されたシーン概要１２２３１８の対応する場所ベースのシーン１２２３０２に付加されたドロップダウンメニューとして表されるが、ユーザ選択設定のいずれの種類にもすることができる。この例では、ユーザ１２０１１０は、適切な場所ベースのシーン１２２３０２、１２２３１２、１２２３１４に時間ベースのシーンを追加１２２３１０することができる。更に別の場所ベースのシーンを概要に追加１２２３１６してドラッグ及びドロップ又は例えば他の対話によって再順序付けすることができる。図２ｉから図２ｓに提示した全ての様式１２１２０２、１２１５０２、１２１９０２は、このユーザインタフェースに適用することができる。
【００７６】
図２ｘ及び図２ｙは、図２ｔに提示した実施のための３６０°画像及びビデオを見るためのＶＲプレーヤの時系列システム１２０１０４のための追加の又は代替のＵＩを示している。時系列システム１２０１０４は、シーンの日付及び時間、並びに名前を有する全ての既存の時間ベースのシーンを得るがユーザ対話選択設定のいずれの種類にもすることができるドロップダウンメニュー１２２４０４によってこの例では視覚化される。視聴者１２０１１８は、先行するか又は後に続くシーンにナビゲート１２２４０４するか又は例でのドロップダウンリスト１２２４０４から選択されたシーンに直接ジャンプすることができる。第２のドロップダウンリスト１２２４０２により、図２ｔ、図２ｙが含有されたシーンを表示する拡大ドロップダウンメニュー１２２４０２、１２２４０４を示すように、視聴者１２０１１８は場所ベースのシーンをナビゲートすることができる。リスト又は他の表示のいずれの組合せを使用することもでき、２つのドロップダウンメニューの包含は単に例示的ものである。
【００７７】
図２ｉから図２ｙは、本明細書に説明する方法及びシステムの例示的ユーザインタフェース実施形態を示している。特に、使用例、例えば、構成のためのシンプルで実際的なＵＩ、インテリア設計のために芸術的に及び／又はユーザデバイスに合わせて作り変えられる様々な実施を提供することができる。上述のインタフェースはデスクトップコンピュータ及びブラウザのように設計されるが、本明細書の方法及びシステムは、ハンズフリー対話（例えば、ユーザの頭を移動することによって照準を指す）又はタッチ画面インタフェースを有するスマートフォン、ラップトップ、及びタブレットのような移動タッチデバイスを使用するヘッド装着式ディスプレイのような異なる入力方法を有するデバイスの関連に移すことができる。
【００７８】
Ｈｏｌｏ構造例
【００７９】
開示する主題は、本明細書の説明又は図に示す構成要素の構造及び配置の詳細に関してこの出願で制限されないことは理解されるものとする。開示する主題は、他の実施形態であることが可能であり、様々な方法で単独に又は他の実施形態のいずれかと組み合わせて実施及び実行することができる。本明細書に用いる専門語及び用語は解説の目的のためにあり、制限として見なすべきではないことも理解されるものとする。
【００８０】
図３ａは、見られた時にＨｏｌｏの概念を提供するための既存の又は新しく作成されたＨｏｌｏと一緒に機能する地上ベースのマップを追加する例示的な追加の又は代替の全体的処理を示している。例えば、地上ベースのマップは、物理的空間のマップを提供するアミューズメントパークからインポートすることができ、ユーザは、エンドユーザ視聴者が体験するための公園内の様々な点に対するＨｏｌｏをインポートする。他の例示的使用事例は、視聴のためのインポートされたＨｏｌｏを有する物理的博物館レイアウトのマップを使用した博物館のためのものとすることができる。別の非制限的な例は、建設中とすることができる家又は他の建物の間取図である。建物のシステムにフロア毎にマップをインポートするか又はマップを作ることにより、Ｈｏｌｏを作成又はインポートして様々な部屋を表示することができる。以下に説明する実施形態は、制限を意図しない間取図という語を使用する。
【００８１】
既存の又は新しく作成されるＨｏｌｏの間取図は、既存又は技術デバイス４００１０６を使用する。説明する処理は、既存のＨｏｌｏに対する追加の間取図として表現されるがこの使用シナリオに制限されない。この例は、１３０１０２の新しく作成されたか又は既存のＨｏｌｏで始まる。１３０１０４で、本発明のシステムは、図３ｂに詳しく説明するように文書、画像、又は第三者コンテンツなどに制限されない様々なファイルフィーマットから１又は２以上の間取図をインポートするためのインタフェースを提供する。インポートされた間取図は、図３ｃに詳しく説明するように１３０１０６のＨｏｌｏの１又は２以上のシーンに相互接続することができる。最後に１３０１０８で、作成された間取図及びホットスポットがＨｏｌｏのデータ構造に追加されＨｏｌｏがサーバに保存される。
【００８２】
図３ｂは、技術デバイス４００１０６を使用して様々なソース及びフォーマットから間取図をインポートする例示的な追加又は代替処理を示している。この処理は、複数の間取図をインポートするために多数回実行することができる。外部に作成された間取図のファイルフォーマットに応答して、特定のインポート処理が１３０２０２で選択される。
【００８３】
ＪＰＥＧ、ＰＮＧ、又はＧＩＦのような画像ファイルフォーマット１３０２２６に対して、本発明のシステムは、１３０２０４のユーザによって制御される様々な画像フィルタを使用して調節及びカスタマイズを自動的に適用することができる。カスタマイズされた画像は、１３０２０８で本発明のシステムにアップロードされる作り変えられた間取図画像１３０２０６を抽出するのに使用される。
【００８４】
ＰＤＦ、ＤＯＣのような文書ファイルフォーマット１３０２２４を１３０２１８の特定の文書レンダリング器を使用してユーザの制御の下でプレビュー、調節、及びカスタマイズすることができる。１３０２２０の文書からの作り変えられた間取図画像抽出が図３ｄに詳しく説明されている。抽出された間取図画像は、１３０２０８で本発明のシステムにアップロードされる。
【００８５】
例えば、オンラインマップ、コンピュータ支援設計システム、文書及び／又は地図製造サービス又は他のソース、ＰＤＦ、又は他のファイルタイプからの第三者コンテンツ１３０２２２は、コンテンツを抽出するか又は深いリンク１３０２１６を通じてこれにリンクすることによって間取図として使用することができる。１３０２１４での抽出又はリンケージの前の調節は、第三者コンテンツのプラットフォームで又は第三者コンテンツのためのプラグインを使用したシステムへの案内サポートによって実行することができる。最終的に、１３０２１２で、アップロードされた間取図画像又は第三者コンテンツの情報をＨｏｌｏのデータ構造に追加することができる。
【００８６】
図３ｃは、技術デバイス４００１０６を使用してインポート間取図上の場所と選択されたシーンとを相互接続する例示的な追加又は代替処理を示している。まずこの例では、望ましいシーンへのナビゲートを通じてシーンを選択することができる１３０３０２。同様に、望ましい間取図は、システムのユーザインタフェースで拡大された表示で選択することができる１３０３０４。拡大間取図を使用して、選択されたシーンを相互接続しなければならない場所を間取図で指摘１３０３０６することができる。選択された間取図上のシーンと場所の間の相互接続は、間取図上のホットスポットを形成することができる。それらのホットスポットは、図３ｅ、図３ｆ及び図３ｇに示す間取図にアイコンを重ねることによってユーザインタフェースに表示することができる。１３０３０８で、ユーザは、図３ｈに示すように作成されたホットスポットにこれに加えて方位を追加することができる。
【００８７】
図３ｄは、技術デバイス４００１０６を使用してクロッピング又は回転のような変換を加えた後に文書から間取図の高精細版を抽出する例示的処理を示している。１又は２以上の間取図グラフィックを含む文書の表示をサポートして、１３０４０２で本発明のシステムは適切な文書レンダリング器を使用して選択された文書の各ページのプレビュー画像をレンダリングすることができる。この例でユーザは、選択された文書ページから間取図又は間取図のある一定の部分を抽出するために、図３ｆに示すようなインタフェースを使用して、プレビュー画像を選択して１３０４０４でクロッピング又は回転のような変換を適用することができる。ユーザによって加えられた変換は、本発明のシステムによって記録することができ、本発明のシステムは、継続して及び／又はスケジュールで更新して、加えられた変換に従ってプレビューすることができる。最終的に例では、ユーザが間取図の望ましい抽出に達した時に、本発明のシステムは記録された変換を使用して、適切な文書レンダリング器を使用して１３０４０６で間取図の高精細版をレンダリングすることができる。この時間は、詳細な高精細間取図画像を発生させるための高精細モードである。
【００８８】
図３ｅは、技術デバイス４００１０６を使用して間取図を含むＨｏｌｏを編集するＥｄｉｔｏｒの例示的な追加又は代替ユーザインタフェースを示している。この例では、ＵＩのシーンリスト１３０５０８が、現在アクティブなシーン１３０５０２及び現在のＨｏｌｏの更に別のシーン１３０５０４を列挙する。多くのシーンを「追加」ボタン１３０５０６又は他の対話によって開かれたインタフェースを使用して追加することができる。中央セクション１３０５１０は、現在アクティブであるシーン１３０５０２のコンテンツを表示することができる。そのような例では、上部左又は他の場所に間取図インタフェース１３０５２６を重ねることができる。このインタフェース１３０５２６は、下のＨｏｌｏの上部及び更に別の間取図１３０５１４上のアクティブ間取図１３０５１２を有する間取図の「スタック」１３０５１２  １３０５１４を含むことができる。アクティブ間取図１３０５１２上に複数のホットスポット１３０５２２及び１３０５２４を重ねることができる。この例では、ホットスポット１３０５２２をアクティブシーン１３０５０２に相互接続することができ、アクティブ間取図１３０５１２上のアクティブホットスポット１３０５２２として重ねることができる。アクティブ間取図１３０５１２上の更に別のホットスポット１３０５２４を異なるアイコン又は色を使用してアクティブ間取図１３０１２に重ねることができる。アクティブ間取図１３０５１２の他に、別の間取図１３０５１６をＨｏｌｏに追加して、アクティブ間取図１３０５１８を入れ替えるかつアクティブ間取図１３０５２０を除去するためのツールのセットが示されている。
【００８９】
図３ｆは、技術デバイス４００１０６を使用して間取図のインポートのためのＥｄｉｔｏｒの例示的ユーザインタフェースを示している。上記及び図３ｂに示すように、ユーザがファイルフォーマットに基づいて間取図をインポートする場合に、対応するインタフェースが提示されている。図３ｆでは、画像ファイル又は文書のための例示的ユーザインタフェースが提示されている。この例のダイアログ１３０６０２は、添付ツールバー１３０６１０を有するプレビュー区域１３０６０８、ページ選択制御１３０６１２、及び処理を取り消す１３０６０４又は変換された間取図を追加する１３０６０４ボタンから作られる。図３ｂ及び図３ｄに示すように、ツールバー１３０６１０と共にプレビュー区域１３０６０８をプレビューされた画像へのクロッピング又は回転のような変換を適用するためにユーザによって使用することができる。ツールバー１３０６１０のボタン及びアイコンは、可能な変換に応答して変えることができる。間取図ソースのファイルフォーマットを考えると、変換された画像を図３ｂ及び図３ｄに示すように得られる変換段階を使用して高精細版で直接使用するか又は再生することができる。文書ソースの場合に、ページ選択制御１３０６１２がプレビュー区域の下に表示されている。
【００９０】
図３ｇは、技術デバイス４００１０６を使用した拡大間取図１３０７０２でのホットスポット１３０７０４  １３０７０６ナビゲーション及び作成のための例示的ユーザインタフェースを示している。図３ｅに示すようなアクティブ間取図１３０５１２は、ユーザによって拡大することができる。拡大間取図１３０７０２は、異なる色及び／又はアイコンを有する相互接続ホットスポット１３０７０４  １３０７０６によって重ねることができる（図３ｅの小さい間取図表現１３０５１２と同様に）。アクティブシーン１３０５０２がホットスポット１３０７０４に相互接続された場合に、このホットスポット１３０７０４は、非アクティブシーン１３０５０４に相互接続されたホットスポット１３０７０６に比べて強調させることができる。ユーザは、拡大間取図１３０７０２で望ましい場所を選択することによってアクティブシーン１３０５０２のホットスポット１３０７０４を作成又は再配置することができる。既存のホットスポットの再配置は、ドラッグ及びドロップ又はＵＩとの他の対話を有するユーザによって実行することができる。既存のホットスポットの選択は、相互接続されたシーンにユーザをナビゲートすることができる。重ねられたホットスポットの色、アイコン、及び場所を相応に更新することができる。
【００９１】
図３ｈは、技術デバイス４００１０６を使用した間取図１３０７０２上のホットスポット１３０７０４、１３０７０６に対する方位１３０８０２の表示及び追加のための例示的ユーザインタフェースを示している。図３ｇに示すホットスポット１３０７０４、１３０７０６に加えて、ホットスポット１３０７０４、１３０７０６を相互接続シーンの方位を表す方位１３０８０２によって延ばすことができる。単純なホットスポットと同様に、アクティブシーンに相互接続された方位１３０７０４を有するホットスポットは、非アクティブシーンに相互接続されたシーン１３０７０６とは異なる。方位付けられたホットスポット１３０７０４、１３０７０６のアイコンは、例えば、矢印１３０８０２又は間取図１３０７０２内の相互接続シーンの方位１３０８０２を示す他のグラフィックによって拡張することができる。ホットスポット１３０７０４、１３０７０６の方位は、異なる方法又はユーザサポートフローを使用して追加又は編集することができる。更に、シーンのＶＲインタフェース１３０５１０で実行される順番は、ホットスポット１３０７０４、１３０７０６のアイコンの方位１３０８０２と同期することができる。
【００９２】
方位の例
【００９３】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、様々な方位特徴をサポートすることができる。図４ａは、例示的システム方位の例のシナリオ１４０１００の図である。この例では、球面又はパノラマカメラ図２９ａによって作成される第１のパノラマ画像１４０１０２の北方向１４０１０４が、ユーザにより手動で又は自動処理のいずれかで定義され、例えば、図２９ａのカメラデバイスによって配信される。更に、各パノラマ画像は、パノラマ画像に対面するユーザの方向を表す独自の仮想カメラ１４０１０６を有すると考えることができる。複数のパノラマ画像が互いに接続されて各パノラマ画像上の仮想カメラ１４０１０６の回転が同期されない時に、シーンの類似の小さい部分を共有するとしても、この表示に問題が発生する場合がある。それらの問題を克服するために、第２の接続パノラマ画像１４０１０８の仮想カメラ１４０１１２は、前の北方向１４０１０４とそれに対応する仮想カメラ１４０１０６の間の角度１４０１１３を計算することによって自動的に決定することができる。この角度１４０１１３は、次の画像の北方向１４０１１０とその仮想カメラ１４０１１２の間の同じ角度１４０１１３である。２つの画像内のそれらの２つの基準方向を使用することにより、いずれのユーザ入力もなしに、パノラマ画像の方位を同期させることができる。
【００９４】
図５ａは、インポートされた間取図に対して、本発明のシステムのシーンの写真に場所を適用するための例示的方法１５０１００を示している。この例におけるシステムは、限定されないが完全に３６０°球面カメラを含むカメラ１５０１０２、３９０１０２、限定されないがスマートフォン、タブレット、及びスマートウォッチを含むユーザ入力をサポートしてソフトウエアを実行することができるディスプレイ４００１１０を有するコンピュータデバイス１５０１０８、４００１０６を含む。限定されないがマップ及び／又は間取図を含み、ユーザに方位の形式を提供するデジタル文書１５０１１０を使用することができる。この文書は、デバイス１５０１０８、４００１０６を通じてディスプレイによってユーザに提示することができる。デバイス１５０１０８、４００１０６で実行されるソフトウエアを通じて、ユーザは、この文書と対話することができる。この例におけるデバイス１５０１０８、４００１０６は、カメラ１５０１０２、４００１０８に接続する必要なく、ケーブル又は無線を通じることもない。ユーザがカメラ１５０１０２、４００１０８で写真１５０１０６を撮影する時に、ユーザは、例えば、画面を押圧することにより、デバイス１５０１０８、４００１０６で文書１５０１１０と対話する１５０１１２ことができる。この対話１５０１１２により、ユーザは、画像がカメラ１５０１０２、４００１０８で撮影された例示的文書１５０１１０上の適切な場所を選択することができる。
【００９５】
図５ｂは、追加された場所１５２０２がデバイス１５０１０８、４００１０６上でどのように視覚化することができるかを示している１５０２００。例示的方法は、複数の画像及び複数の場所１５０２０２をサポートすることができる。１又は複数の写真が撮影されて１又は複数の場所１５０２０２が選択された後に、１又は複数の場所１５０２０２は、ユーザが場所１５０２０２を選択した場所でデバイス１５０１０８、４００１０６上、マップ１５０２０４又は間取図のような他のディスプレイ上に視覚化することができる。
【００９６】
図５ｃは、ユーザ１５０３０２が間取図で示された現実世界内の場所を定期的に再訪問し、それらの場所の様々な時点で、例えば、ウォーキングツアーが毎週同じとすることができる建物内の全ての部屋の毎週の写真を撮影する使用事例を示す例示的流れ図である。ユーザ１５０３０２がこの例におけるカメラ４００１０８で写真１５０３０４を撮影した時に、写真をタイムスタンプと共に格納する１５０３０６ことができる。ユーザ１５０３０２は、別のデバイス４００１０６にこれに加えて又はこれに代えて対応する場所を格納することができる。ユーザ１５０３０２は、新しい場所を選択する１５０３０８か、又は前に作成された中間地点を受け入れる１５０３１２ことができる。ユーザが新しい場所を選択した１５０３０８場合に、この場所の次の訪問に使用することができる新しい中間地点を発生させる１５０３１０ことができる。ユーザ１５０３０２が場所を選択した後に、新しい場所１５０３０８又は中間地点を受け入れる１５０３１２ことにより、場所及びタイムスタンプの両方をシステムによって格納することができる１５０３１４。この処理は、本発明のシステムが異なる時点で１つの場所を異なる写真に自動的に割り当てることを可能にする。ユーザ１５０３０２が前よりも類似の順序で類似の場所を訪問したい時に、本発明のシステムは、初めて場所が追加された１５０３０８場合を除いて自動的に中間地点を受け入れる１５０３１２ことによってユーザが写真を撮影した場所を予想することができる。ユーザ１５０３０２は、例えば、場所が所与の時間に到達可能でない場合に、ある一定の場所を省略することができる。ユーザ１５０３０２が物理的場所のユーザのツアーを終了した後に、写真及び位置情報をコンピュータデバイス４００１０６で処理１５０３１６することができ、例えば、注釈を追加する、並べ替える、又はサーバにアップロードする。任意的に、これは、ツアー中に実行することができるが、これを後で実行することは、写真撮影デバイスとユーザ１５０３０２が場所を選択した場所との間の接続を要求しない。
【００９７】
図５ｄは、写真の注釈を可能にする本発明のシステムの例を示している。限定されないが、全３６０°球面写真を含む写真１５０４０２が撮影された後に、ユーザは、限定されないが画像１５０４０６、テクスチャ注釈１５０４０８、３Ｄ要素１５０４１２及び描画１５０４１０を含む注釈及び他の任意の要素をコンピュータデバイス４００１０６を使用して追加することができる。既存の音声ファイルを使用するか又はマイクロフォンで音声を録音することにより、音声注釈１５０４１４を追加することができる。得られるシーン１５０４０４をこれに加えてオリジナル写真１５０４０２に格納することができる。
【００９８】
レイアウトの例
【００９９】
これに加えて又はこれに代えて、本明細書のシステム及び方法を使用して異なるレイアウトを構成することができる。図６ａは、限定されないが距離及び角度を測定するのに使用される測定ツールを含むキャンバス及び例示的特徴と呼ぶことができるシステムの作成モードの例示的視覚化を示している。測定ツールを使用して、限定されないが指定されたキャンバス内の距離及び角度を含むキャンバスの幾何学寸法を測定することができる。これは、タッチ画面を有するデバイス、図３０ｃ−ｆのようなヘッド装着式デバイス、キーボード及びマウス、又はあらゆる他のポインティング又は適切な入力デバイスを有する図３０ａのようなデスクトップコンピュータデバイスから実行することができる。
【０１００】
測定は、限定されないが図２９ａのような球面カメラを含むデバイスによって撮影された３６０°画像に実行することができる。図６ａに示すように、基準キャンバス作成モード１６０１３４で、基準キャンバスを作成１６０１２８することができ、この上に形状を発生させるための基準として後に使用してキャンバス１６０１２８上の距離を測定し、球面テクスチャ１６０１５０をキャンバス１６０１２８に投影１６０１４２し、限定されないが３６０°画像及びビデオフレームを含む背景映像に表示される物理的構造（例えば、壁）に適合するまでキャンバス１６０１２８形状を修正することができる。この例では、キャンバスを発生させるために、ユーザは、ＵＩのシーンのフロア１６０１３０で始めて、完全なフロア区域１６０１３２にマーキングすることができ、本方法は、壁１６０１２８が始まる場所を示す。個別の基準キャンバス１６０１２８は、キャンバス１６０１２８の異なる境界１６０１１２、１６０１０４、１６０１０６、１６０１０８上に複数の場所をマーキングすることによって発生させることができる。１つの可能なユーザフローの例は、キャンバス１６０１２８の下部境界１６０１１２上の場所１６０１０２を最初に選択し、次に、キャンバス１６０１２８の上部境界１６０１１６上の第２の場所１６０１０６をクリックすることによって又はキャンバス１６０１２８の下部境界１６０１１２上の第２の場所１６０１０４をクリックすることによってキャンバスの高度１６０１１４を定義することである。第１の事例では、第３の場所１６０１０８は、キャンバス１６０１２８の上部境界１６０１１６上にマーキングしなければならない。それらの段階によることにより、平面基準キャンバス１６０１２８の上部１６０１１６及び下部１６０１１２境界を定義することができる。任意的に、多くの境界、例えば、矩形基準キャンバス１６０１２６を発生させるために左境界１６０１２４及び右境界１６０１２６にマーキングして定義することができる。
【０１０１】
基準キャンバス１６０１２８の正確な３Ｄ位置及び回転は、限定されないが、コンテンツが間取図１６０１３０に対して撮影されたカメラ高度、間取図１６０１３０とカメラの間の角度、及び間取図１６０１３０と物理的な壁１６０１３２の間の角度を含む情報を使用して計算することができる。この情報を使用して、間取図１６０１３０と面１６０１２８の交差点１６０１０２  １６０１０４の３Ｄ位置を計算することができる。同じ情報を使用して、点の３Ｄ位置１６０１０６  １６０１０８及び面１６０１２８の上部境界１６０１１６を計算することができる。限定されないが三角形及び矩形基準キャンバス１６０１２８を含むこの方法を使用することができる。基準キャンバス１６０１２８が間取図１６０１３０に垂直である場合に、間取図１６０１３０と物理的壁１６０１３２の間の角度を自動的に受信することができる。同じ方式で、互いに垂直である物理的面間の全ての他の関係を使用して、ユーザのために作成処理１６０１３４を単純化することができる。作成された基準キャンバス１６０１２８は、同じ仮想空間に全て配置され、正しい絶対サイズ、３Ｄ位置及び回転を有する。１又は複数の基準キャンバス１６０１２８を使用して、限定されないが、距離、角度、及び体積を含む絶対値を測定することができる。それらの測定は、同じ絶対特性を有する同じ物理的空間を表す同じ仮想空間における全キャンバス１６０１２８の絶対位置、回転、及びスケーリングのためにキャンバス間で実行することができる。これは、本発明のシステムが、物理的空間で各面１６０１３０、１６０１３２、１６０１５０、１６０１１８、１６０１１４に対して仮想基準キャンバス１６０１２８を発生させることによって物理的空間の任意の仮想表現を発生させることを可能にする。仮想空間における距離及び面積を物理空間にマップする倍率は、画像の内側の距離又は面積に物理的世界の正確な値及び単位を提供することによって決定することができる。これは、限定されないがカメラ高度を含む。
【０１０２】
これに加えて又はこれに代えて、この基準キャンバス１６０１２８を他のモードで使用することもできる。一部の例では、複数の基準キャンバス１６０１３２を作成してシーンの完全な物理的構造を反映するように接続することができる。基準キャンバスの１つ１６０１２８を使用して、キャンバスによって表される両方の物理的構造が互いに直交する場合にキャンバス２の１６０１３２の作成処理を単純化することができる。この場合に、２つの点、例えば、キャンバス２の１６０１３２の高度及び右開始点１６０１２４を予めキャンバス１の１６０１２８によって定義することができ、例えば、キャンバス２の１６０１３２の長さを第２のキャンバスを発生させるために定義しなければならない。
【０１０３】
フロアキャンバス１６０１３０は、フロア１６０１３０の正しい形状を最初にマーキングすることによって同時に全ての壁を定義する前にこれに加えて又はこれに代えてユーザによって定義することができ、同じ方法で全ての壁の高度を定義する第２の段階として、各基準キャンバス１６０１２８が個々に作成される場合に高度１６０１１４が定義される。
【０１０４】
一部の例では、少なくとも１つのキャンバス１６０１２８が定義された後で、測定モード１６０１３６を使用して、キャンバス１６０１２８での距離１６０１１０を測定することができる。開始点１６０１１０及び終了点１６０１１０は、１次元距離１６０１２２の測定を開始するためにユーザによってマーキングすることができる。同様に測定の開始及び終了点をマーキングすることにより、２次元区域１６０１１８及び３次元体積１６０１４４を同様に基準キャンバス１６０１２８で測定することができる。
【０１０５】
これに加えて又はこれに代えて、あらゆるカスタムテキスト１６０１２２及び他の注釈、描画、色、又は他のコンテンツは、３Ｄ空間又は球面上の基準点なしに正常に配置されるようにキャンバス１６０１２８上に配置することができる。キャンバス１６０１２８の方位及び他の特性を使用して、追加のコンテンツ１６０１２２をこのキャンバス１６０１２８にそれぞれ位置合わせすることができる。
【０１０６】
これに加えて又はこれに代えて、測定モード１６０１３６と類似の方法で、ユーザは、角度モード１６０１３８に切り換えて作成されたキャンバス１６０１３２上の角度１６０１４６を測定することができる。角度を測定するために、ユーザは、角度にマーキングするキャンバス１６０１３２上の点１６０１４８を定義しなければならない。次に、３ＤのＵＩ１６０１４６を作成して、キャンバスの上部の仮想オーバーレイの一部として３Ｄ空間に定義された値をレンダリングすることができる。
【０１０７】
投影モード１６０１４２は、限定されないが作成されたキャンバス１６０１２８上へのシーンの３６０°画像１６０１５０を含む仮想シーンの投影を可能にすることができる。この投影は、キャンバスの縁部を３６０°画像上の対応する縁部に位置合わせしてそれらの縁部が位置合わせされるように３６０°画像の残りを引き延ばす又は圧縮することによって実行することができる。これは、元のオリジナルコンテキスト画像１６０１５０が作成されたキャンバス１６０１２８によって完全に重ねられるシーンの３Ｄ再構成をもたらすシーンの全物理的構成によって実行することができる。この例では、本発明のシステムは、立体モードでの正しい深度によってレンダリングすることができる３Ｄモデルへの単一３６０°画像１６０１５０の変換を可能にする。
【０１０８】
これに代えて又はこれに加えて、形状作成モード１６０１４０で、例えば、物理的オブジェクト（この例ではドア）１６０１１８に対応する形状１６０１２０を使用することができ、限定されないがヒットボックス区域又は３Ｄオブジェクトを含み、キャンバス１６０１３２上に定義することができ、この作成された形状１６０１２０とのユーザ対話を可能にする。従って、ユーザは、作成された形状１６０１２０が選択、例えば、クリック又は軽く叩かれた時に発生することを定義することができる。複数の可能な例の１つは、形状１６０１２０がクリックされると直ちに、シーンが指令システムを使用して新しいシーンに切り換わることである。別の例は、投影モード１６０１４２を使用することにより、シーンにおける平坦３Ｄモデルとして使用する形状をキャンバスから抽出する。ユーザは、例えば、キャンバス１６０１２８上にウィンドウ１６０１４４を選択して、これを複製してオリジナルウィンドウの隣に配置してシーンを修正することができる。
【０１０９】
ウェブページの例
【０１１０】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、ウェブページ特徴をサポートすることができる。図７ａは、Ｈｏｌｏの作成者がどのようにして、いずれのシーン１２２００２に対してもオーバーレイの特別なタイプとして仮想シーンの上に重ねられるＨＴＭＬページを発生させることができるかの例を示している。このオーバーレイ１７０１０１は、プレーヤモードでユーザが後でシーンを開く時に仮想シーンの上部に見えるようにすることができる。従って、限定されないが、ＷｅｂＧＬを使用したテキスト、画像ビデオ、及び／又は他の３Ｄレンダリングを含むＨＴＭＬ及びリッチコンテンツ１７０１０２の全てのタイプによってサポートされる全ての特徴を有するいずれのＨＴＭＬページ１７０１０１も仮想シーン１２２００２の上部に配置することができる。
【０１１１】
そのような例では、オーバーレイＨＴＭＬページ１７０１０１は、情報を制御及び受信して、限定されないがオーバーレイＨＴＭＬページ１７０１０１の特定の方法が呼び出された時に現在のシーン１２２００２を切り換えるか又は仮想カメラを回転する段階を含むタスクを実行するために元のＨｏｌｏとＪａｖａＳｃｒｉｐｔＡＰＩを通じて通信することができる。
【０１１２】
この技術はカスタマイズを可能にする。いくつかの非制限的な例は、ＨＴＭＬページ１７０１０１の内側のビデオ１７０１０２が終了した後に表示される仮想シーン１２２００２の上のオーバーレイとしてカスタム２Ｄ地理マップ、又はカードボード４００２０２のようなヘッド装着式ディスプレイを有するユーザがある一定の方向を向いた後に変化するＨＴＭＬページ１７０１０１のコンテンツを発生させることになる。
【０１１３】
注釈の例
【０１１４】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、注釈特徴をサポートすることができる。図８ａは、代替的に又はこれに加えて本明細書に説明するシステム及び方法と共に使用することができる注釈を表示する例示的ＵＩ表現を示している。注釈は、大域的又は局所的注釈リスト１８０１１２のあらゆるエントリとすることができる。注釈は、限定されないが、３Ｄオブジェクト１８０１０６及びテキスト１８０１０８を含むＨｏｌｏ１８０１０２の１又は２以上のオブジェクト１８０１０４に関連付けることができる。更に、注釈は、任意的に１又は２以上のユーザ１８０１１０に関連付けることができる。注釈は、関連付けられたユーザによって行われるタスク又はテキスト又は視覚形態のあらゆるノートの任意のタイプを表すことができる。
【０１１５】
これに加えて又はこれに代えて、図８ｂは、限定されないが図２９ｄ、図３０ａに示すデバイスを含むあらゆるデバイスのＨｏｌｏエディタで対応するオプションを選択する１８０２０２ことによって新しい注釈を作成したいＨｏｌｏの作成者、又は十分なアクセス権を有する別のユーザのための処理フローの例示的な図を示している。続いて、特定の順序なしに、作成者又はユーザは、Ｈｏｌｏ内の関連付けられたオブジェクトを指定１８０２０８する、関連付けられたユーザを指定１８０２０６する、及び注釈リストに現れるべきである場合にテキストで又は視覚的に注釈を説明１８０２０４することができる。この例では、関連付けられたオブジェクトの明細及び注釈の説明を要求することができると同時に関連付けられたユーザの明細は任意とすることができる。関連付けられたユーザは、本発明のシステムの既存のユーザ又は電子メールアドレスのような大域的デジタル識別子を使用して識別することができる外部の人間のいずれかとすることができる。必要なパラメータが存在する状態で、作成側ユーザの選択に従って大域的又は局所的注釈リストに注釈を追加する１８０２１０ことができる。１又は２以上の関連付けられたユーザが指定されている場合に、このユーザに、新しい注釈が、例えば、電子メール及び対応する注釈リストへの許可されたアクセス権を通じて通知される１８０２１２。
【０１１６】
これに加えて又はこれに代えて、図８ｃは、新しい注釈を発生させる処理流れ図を示している。注釈は、Ｈｏｌｏの作成者、又は十分なアクセス権を有する別のユーザにより、限定されないが、図２９ｄ、図３０ａに示すデバイスを含むあらゆるシステムを使用してＨｏｌｏ内の１又は２以上のオブジェクトを選択した後で発生させることができる。オブジェクトが選択された状態で、作成者又はユーザは、新しい注釈を発生させるためのオプションを選択する１８０３０２ことができる。続いて、作成者又はユーザは、注釈リストに現れる注釈を文字又は視覚的形態で説明１８０３０６して、任意的に１又は２以上の関連付けられたユーザを指定する１８０３０８ことができる。必要なパラメータが存在する状態で、作成側ユーザの選択に従って注釈を大域的又は局所的注釈リストに追加する１８０３１０ことができる。１又は２以上の関連付けられたユーザが指定されている例では、関連付けられたユーザに、例えば、電子メール及び対応する注釈リストへの許可されたアクセス権を通じて新しい注釈が通知１８０３１２される。
【０１１７】
図８ｄは、新しい注釈が作成された後の例示的処理流れ図を示している。注釈処理は、限定されないが図２９ｄ、図３０ａに示すデバイスを含むデバイスでこれに加えて又はこれに代えて実行することができ、大域的又は局所的注釈リストのいずれかに追加することができる。注釈に関連付けられた全ユーザに通知する１８０４０２ことができる。続いて、全ユーザは、対応する注釈リストにアクセスする１８０４０４ことができる。個々の注釈にアクセスする時に、個々の注釈は、図８ｅに示すようにそれらのオブジェクトへのフォーカスと共に関連付けられたオブジェクトを含有するＨｏｌｏに自動的に転送することができる。所与の情報と共にそれらは必然的に進行１８０４０６し、後で解消された時に注釈にマーキングする１８０４０８ことができる。
【０１１８】
図８ｅは、対応する注釈リスト１８０５０８から又は通知から直接個々の注釈にアクセスした時に、又は注釈１８０５１２に関連付けられたＨｏｌｏ１８０５０４  １８０５０６の１又は２以上のオブジェクトを選択１８０５１０した時に、限定されないが図２９ｄ、図３０ａに示すデバイスを含むあらゆるデバイスを使用して見ることができる例示的ビューを示している。注釈は、関連付けられたオブジェクトと同じか又は同様に見える３Ｄ位置に空間的に配置されたあらゆる文字又は視覚形態でＨｏｌｏ内に直接表示することができる。関連付けられたユーザが注釈リスト又は通知からＨｏｌｏに送られた場合に、関連付けられたオブジェクトが自動的にフォーカスされる。
【０１１９】
図８ｆは、議論するように、限定されないが図２９ｄ、図３０ａに示すデバイスを含むデバイスを使用して注釈にマーキングする時の例示的ビューを示している。この例では、Ｈｏｌｏ内に直接、関連付けられたユーザが、例えば、チェックボックス１８０６１４又は類似のものをクリックすることにより、解消されたとして注釈にマーキングすることができる。注釈の新しい状態が、一部の例ではリアルタイムで対応する注釈リスト１８０６０８に自動的に伝播される。この同期は２方向性質のものとすることができる。すなわち、注釈が対応する注釈リスト内で解消されたことを示すと、同様にリアルタイムでＨｏｌｏ内の注釈の表示状態に影響を与える。注釈がタスクを表す場合に、１人の関連付けられたユーザが解消されたものとしてマーキングすると直ちに解消されたものとして大域的にマーキングされる。注釈がタスクを表さない場合に、全ての関連付けられたユーザはこれを解消されたものとしてマーキングすると直ちに解消されたものとして大域的にマーキングすることができる。後者の事例の例は、指定された人のリストによって読み取らなければならない重要な通知である。
【０１２０】
図８ｇは、いくつかのＨｏｌｏ１８０７０２を含む大域的注釈リストの例の範囲を示している。すなわち、これに加えて又はこれに代えて、このリストは、この範囲内にあるＨｏｌｏ内の全てのオブジェクトに対する注釈を含有することができる。対照的に、局所的注釈リストの範囲は、単一Ｈｏｌｏ１８０７０４に制限することができる。注釈リストのタイプ及び範囲は、リストの作成者によって定義することができる。注釈リストは、新しい注釈１８０２１０  １８０３１０を作成した後に、又は専用個別のインタフェースを使用した後に無線で発生させることができる。
【０１２１】
塗装の例
【０１２２】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、塗装体験をサポートすることができる。図９ａは、限定されないが図２９ａ及び図２９ｂに示すデバイスを含む球面又はパノラマ画像によって発生させることができるＨｏｌｏ及び３６０°画像のための塗装ツールのような使用することができる例示的特徴のセットを示している。この塗装ツールは、限定されないが図２９ｄに示すデバイスを含み実行することができる３６０°画像１９０１０２を含むＨｏｌｏ内に直接任意の自由形状ストローク１９０１０４  １９０１０６を発生させる方法をユーザに提供することができる。複数の色、影、パターン、及びテクスチャ、並びに様々な仮想ペイントブラシサイズ、形状、並びに仮想ペン、ペンシル、消しゴムのような別の塗装プログラムに見出されるような塗装ツールのいずれのアレイも提供することができる。ストロークは、３次元シーン内の球面の内側、すなわち、Ｈｏｌｏにレンダリングされた時に、対応するインタフェースから自由形状塗装ツールを選択した後にユーザにより、３６０°画像の面に直接ペイントすることができる。この塗装処理は、限定されないが、コンピュータマウス及び画面４００１１０、手持ち式ポインタ、ジョイスティック、又は他のコントローラ、又はタッチ画面、図２９ｄのような人間−コンピュータインタフェースを使用して実行することができる。自由形状ストロークは、対応するインタフェースを使用して決定することができる任意の厚み及び色、それらの両方を有することができる。特に一部の例では、自由形状ストロークは、図８ａ、８ｂ、８ｃ、８ｄ、８ｅ、８ｆ及び８ｇのシーン内の注釈、及び／又は図１０ａのシーン内の注釈とすることができる。
【０１２３】
図９ｂは、３６０°画像１９０２０２を含むＨｏｌｏに事前に定義された幾何学的図形１９０２０４  １９０２０６を統合する方法をユーザに提供するＨｏｌｏ及び３６０°画像のための例示的塗装ツールを示している。事前に定義された幾何学的図形は、限定されないが、矩形１９０２０４、正方形、ひし形１９０２０６、長円、及び円１９０２０８を含む。幾何学的図形は、３次元シーン内の球面の内側、すなわち、Ｈｏｌｏにレンダリングされた３６０°画像の面に直接ペイントすることができる。それらは、対応するインタフェースからそれぞれの塗装ツール（例えば、矩形、ひし形、円）を選択した後にユーザによって配置することができる。幾何学的図形を配置してそのサイズを指定する処理は、限定されないが、コンピュータマウス及び画面４００１１０又はタッチ画面、図２９のような人間−コンピュータインタフェースを使用して実行することができる。幾何学的図形は、任意の境界の厚み及び色を有することができ、この両方は対応するインタフェースを使用して決定することができる。特に、幾何学的図形は、図８ａ、８ｂ、８ｃ、８ｄ、８ｅ、８ｆ及び８ｇにおける注釈、及び／又は図１０ａのシーンにおける注釈とすることができる。
【０１２４】
マルチユーザの例
【０１２５】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、１又は２以上のユーザのアバター特徴を有するＨｏｌｏのオブジェクトによってマルチユーザ体験をサポートすることができる。図１０ａは、限定されないが、図３０ａに示すデバイスを含むデバイスでのマルチユーザ体験の部分のプレーヤモードにおけるユーザの例示的ビューを示している。この例では、ユーザは、他のユーザ２００１０１をあらゆる作成されたＨｏｌｏのマルチユーザ体験に招待することができる。従って、この体験に加わるユーザ２００１０１は、限定されないが図３０ａに示すデバイスを含むデバイスで、シーンにおける同じ拡張された仮想コンテンツ１２２００２及び加えて他のユーザ２００１０１を見ることができる。ウェブキャムフィード２００１０２をある一定の実施形態に使用して、ユーザの仮想表現、又はユーザによって選択することができる仮想アバターのような別の仮想表現、又はその顔又は身体の表現又はライブフィードのいずれかを見ることができる。これに加えて又はこれに代えて、音声を全ユーザ２００１０１間の自然な通信のために一部の例に使用することができ、音声の空間位置は、ユーザの独自の位置及び方位に基づいて正しい方向及び距離からこれ以外のユーザ２００１０１の声を他のユーザ２００１０１が聞くのと同じ仮想表現の位置にある。カメラ４００１０２が自由に動くことができ３６０°シーンとしてシーンの中心にロックされない標準的な３Ｄシーンでは、他のユーザ２００１０１のウェブキャムフィード２００１０２は、このユーザの仮想カメラが所与の時間に位置付けられた場所で表示することができる。他のユーザ２００１０１の方位は、そのアバターに投影することができ、他のユーザ２００１０１が見ている場所の理解を与えることができる。マルチユーザ体験に加わるユーザ２００１０１は、ある一定の権利を取得することができ、例えば、全ての接続されたクライアント間で同期することができ、限定されないが図２９ａに示すデバイスを含む球面又はパノラマカメラによって発生させることができる３６０°画像／映像における注釈２００１０３を追加及び描画することができる。そのような注釈は、特に図８ａ、８ｂ、８ｃ、８ｄ、８ｅ、８ｆ及び８ｇの感覚における注釈とすることができる。これに加えて又はこれに代えて、ユーザは、シーンにテキスト及び他のリッチコンテンツ２００１０４をペースト及び配置することができる。拡張又は仮想シーン１２２００２はコンテキストを提供することができ、コラボレーションセッションの結果は、セッションが始まったオリジナルＨｏｌｏの新しいブランチとして保存することができる注釈、テキスト、画像、リンク、及び他の作成可能なコンテンツを有するＨｏｌｏである。
【０１２６】
図１０ｂは、マルチユーザ体験が、仮想カメラの固定空間位置２００２０４及びユーザ２００１０１によって設定されたその方位のみを有する３６０°シーン２００２０２を含有する例を示している。そのような例では、ユーザ２００１０１の仮想表現は、他のユーザ２００１０１が現在見ている３６０°シーンの位置２００２０５に配置することができる。他のユーザ２００１０１のアバターの方位は、球面の中心２００２０４に向くことができる。ユーザ２００２０４は、３６０°シーン内のあらゆる他の仮想コンテンツのようなユーザの現在の視野２００２０３内のユーザだけを見ることができる。多くのユーザ２００１０１が同じ場所を見ている場合に、ユーザのアバターは全て、同じ場所２００２０５にすることができる。特定のアバターのみを表示してシーンに他のアバターを存在させないために、ユーザは、関連のアバター２００２０８、例えば、選択ＵＩを通じて多くの聴衆に提示する単一提示器２００２０６を選択することができる。この選択ＵＩは、例えば、個別のリスト２００２０７とすることができ、又は別の例としてユーザは、望ましくない周囲のアバターから分離するために拡大効果を使用してターゲットキャラクターを取り上げる。一部の例では、デフォルトにより、多くの聴衆であるがこの聴衆のごく小さい部分集合２００２０８だけがＨｏｌｏへの編集権を有する場合に、部分集合に発生する体験は、反転表示されたユーザのデフォルト選択として選択することができる２００２０８。一部の例では、Ｈｏｌｏへの編集権を有するユーザ００２０８は、シーンを永続的に変更することができ、全ての他のユーザ２００１０１は、それらの変更を自動的に見ることができる。一部の例は、ユーザがリンク及び他の文字コンテンツのような文字情報を任意のチャットボックス２００２０９で交換することを可能にする。そのような例では、情報を掲示する権限を有するユーザは、本発明のシステムで又は第三者システムを使用することによってこの情報を交換することができる。
【０１２７】
マルチユーザの例では、ユーザは、限定されないがセッションの作成者によって送信されたリンクを受信及び開くことを含むあらゆる数の方法でマルチユーザ体験に加わることができる。ログイン、リンク、又は他の方法も同様に使用することができる。そのような例では、セッションは、パスコードを知っているユーザに対して制限されたアクセスだけを有するプライベートセッションを可能にするためのパスコードによって保護することができ、又は情報交換のためのデジタルオープン空間を発生させるためにあらゆるユーザによってアクセス可能である場合にパブリックとすることができる。従って、互いに干渉することなく同じ仮想空間に複数のセッションが存在することができる。
【０１２８】
単一ユーザは、作成されたマルチユーザ体験セッションを書く管理権を有することができ、例えば、セッションから他のユーザをミュート、隠す又は禁止するパワーを有することができる。
【０１２９】
オーディオの例
これに加えて又はこれに代えて、本明細書のシステム及び方法は、ユーザディスプレイ、ヘッドセット、及びコンピュータデバイスにおける様々なオーディオチャネルの使用を含むオーディオ特徴及び／又は体験をサポートすることができる。図１１ａは、仮想シーン２１０１０２における３Ｄ位置を有する例示的オーディオソース２１０１０４を視覚化する図である。仮想シーン２１０１０２は、技術デバイス４００１０６によって見る及び発生させることができる。本方法は、音声ソース２１０１０４を仮想シーン２１０１０２に組み込むことができる。例示的音声ソース２１０１０４は、シーン２１０１０２における３Ｄ位置を有することができる。音がシーンにおけるあらゆる位置及び方位から同じに知覚されるようにする例では、このシーンにおける３Ｄ位置を有する必要はない。３次元空間に音声を追加することで、ユーザはある一定の場所からの音を聞くことができる。そのような音は、音声ソースに対する位置及び方位の両方に依存することができる。音声ソースに対する相対位置は、聞くことができる合計体積レベルを決定することができ、方位は、合計体積レベルよりも小さいか又は等しい２つの音声チャネルで別々に再生される体積の量を決定することができる。本方法は、例えば、全ての音声ソースに対して同じ距離を使用することにより、音声ソースまでの距離を考えることなく音声シースをサポートする。複数の音声ソース２１０１０４を同時にサポートすることができ、異なる体積レベルを有する異なる方向からの異なる音をユーザが聞けるようにする。音声ソースは、時間中遙かに再生することができ、又はある一定の事象によってトリガすることができる。そのような方法は、音声注釈を取り付けられる仮想要素を閲覧側ユーザが後でクリックした場合にトリガすることができる音声注釈をシーン内の異なる要素に取り付けるのに使用することができる。
【０１３０】
図１１ｂは、音声ソースのための例示的インポート処理を視覚化する流れ図である。ユーザ２１０２０２はコンピュータデバイス４００１０６を使用して、シーンを選択することによって又は音声ソースを最初に選択することによって開始する。
【０１３１】
例示的選択１：ユーザ２１０２０２は、音声ソースが後で組み込まれるシーン２１０２０４を選択することによって開始することができる。１又は２以上のシーン２１０２０４を選択した後に、ユーザ２１０２０２は、前の段階で選択された各シーンに対する位置２１０２０６を選択することができる。単純さの理由で、同じ場所を複数のシーンに使用することができる。そのような例では、場所があらゆるシーンに対して選択された後に、実際の音声ソースを選択することができる。音声ソースは、ユーザ２１０２０２のデバイス４００１０６上の既存のファイルとすることができ、又はマイクロフォンを使用して録音２１０２０８することができる。この段階の後で、音声ソースはシーンに上手く組み込まれる２１０２１２。
【０１３２】
例示的選択２：ユーザ２１０２０２は、最初に音声ソースを選択することによって開始することができる。音声ソースは、ユーザ２１０２０２のデバイス４００１０６上の既存のファイルとすることができ、又はマイクロフォンを使用して録音２１０２０８することができる。音声ソースを選択した後で、次の段階は、音声ソースが後で組み込まれるシーン２１０２０４を選択することである。１又は２以上のシーン２１０１０４を選択した後に、ユーザ２１０２０２は、前の段階で選択された各シーンに対する位置２１０２０６を選ばなくてはならない。単純さの理由で、同じ場所を複数のシーンに対して使用することができる。この段階の後で、音声ソースはシーンに上手く組み込まれる２１０２１２。
【０１３３】
実施形態は、ユーザが本明細書に説明するようにＨｏｌｏ又はシーンの選択１及び選択２の両方を使用することを可能にすることができる。２つの方法の説明は、いずれの方法への制限も意図していない。
【０１３４】
３６０°ライブストリーミングの例
【０１３５】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、３６０°ライブストリーミングをサポートすることができる。図１２ａは、Ｈｏｌｏの作成者が仮想シーンのためのコンテキストとして単一３６０°写真又はビデオの代わりに３６０°ライブストリーム２２０１０１を使用することができる方法の例を示している。限定されないがＲｉｃｏｈ  Ｔｈｅｔａを含む図２９の３６０°ウェブキャムを使用すると、いずれの標準的なウェブキャム４００１０８によっても可能であるように３６０°ライブフィード２２０１０１をストリーミングすることができる。これは、ユーザが仮想シーンのためのコンテキストとしてこの３６０°ライブストリーム２２０１０１を適用することを可能にする。更に、３６０°ライブストリーム２２０１０１は、あらゆる他の単一３６０°写真又は３６０°映像Ｈｏｌｏシーンとして他の３Ｄコンテンツの全てを含有することができる。
【０１３６】
１つの可能な例は、１人のユーザが遠隔場所からライブストリーミングして他のユーザ２００１０１がライブコラボレーション特徴を使用してこのユーザに語りかけ、あらゆる他のＨｏｌｏシーンにあるようにライブストリーム２２０１０１のコンテンツに注釈を付ける２００１０３。注釈を取り付けられたコンテンツは、テキスト、一時的描画２００１０３、又は他のリッチコンテンツ２００１０４のようにあらゆる他のマルチユーザ体験と同じコンテンツとすることができる。従って、それらはシーンで一時的に見えるコンテンツに注釈を付けることができ、フィードをストリーミングするユーザ２２０１０１は、あらゆる他のユーザ２００１０１ができるようにユーザの仮想シーンでそれらの注釈を見ることができる。
【０１３７】
そのような例では、ユーザ２００１０１がライブストリーム２２０１０１が利用できないシーンに入った場合に、Ｈｏｌｏの作成者は、利用できないライブストリーム２２０１０１の代わりにプレースホルダ３６０°画像又は３６０°映像を表示するようなフォールバックアクションを指定することができる。この機能は、ストリーミングが終了した後に記録されたライブストリームを再生するための有限ビデオストリーム２２０１０１に使用することができる。そのような事例では、ストリーミングされたビデオをストリーミングが生じている間に自動的に記録することができ、有限ストリーム２２０１０１が終了すると直ちにこの記録されたファイルがフォールバック３６０°映像コンテンツとして自動的に指定される。
【０１３８】
ズームの例
【０１３９】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、ズーム表示をサポートすることができる。図１３ａは、視覚表示システム２３０１０２上に視覚２Ｄ／３Ｄコンテンツ２３０１０６のいくつかの小片のゆがめられていない表示を有するパノラマ又は球面画像２３０１０４の完全にズーム可能なＶＲ／ＡＲ環境の例を示している。球面又はパノラマカメラ図２９ａ／図２９ｂによって発生させることができるパノラマ画像２３０１０４は、ユーザによって手動で又は、例えば、カメラデバイス図２９ａ−ｃによって配信される自動処理で定義される。そのような例では、２Ｄ／３Ｄコンテンツ２３０１０６の個々の小片は互いに重複したユーザのためのビューから閉塞することができる。視覚表示システム２３０１０２は、限定されないが例えば図３０ａ−ｆのような複数の表示デバイスのいずれかを通じて見ることができる。
【０１４０】
歪みの例
【０１４１】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、表示の歪みをサポートすることができる。図１３ｂ及び図１３ｃは、歪んでいないＶＲ／ＡＲ環境２３０１０４の２つの例示的魚眼歪曲ビュー２３０２０８、すなわち、円形魚眼ビュー２３０２０２及び直交魚眼ビュー２３０３０２を示している。２Ｄ／３Ｄコンテンツ２３０１０６の定義されていない数を保持するＶＲ及びＡＲ環境２３０１０２を表示するシステムの完全にズーム可能なＶＲ／ＡＲ環境２３０１０４では、挿入された２Ｄ／３Ｄコンテンツ２３０１０６の１又は２以上のオブジェクト２３０２０４は、図１３ａに示すように互いに重複／閉塞することができる。挿入された２Ｄ／３Ｄコンテンツ２３０１０６は、例えば、ＶＲ／ＡＲ環境２３０１０４で同時に作業するユーザのライブウェブキャムストリームとすることができる。魚眼歪曲２３０２０２  ２３０３０２の示されている例示的方法により、ユーザは、当該のある一定のオブジェクト２３０２０６にユーザのためのビューをフォーカスさせることができる。当該の名前付きオブジェクト２３０２０６が幾何学に関連した２Ｄ／３Ｄコンテンツ２３０１０６の個々のオブジェクト２３０２０４によって塞がれる場合に、ユーザは、魚眼選択処理、例えば、２３０２０２  ２３０３０２を使用して、近いオブジェクトを分離してユーザが興味のあるオブジェクト２３０２０６を選択することができる。得られる魚眼ビュー２３０２０２  ２３０３０２では、関連の２Ｄ／３Ｄコンテンツ２３０２０８の視覚化は、ユーザのカーソルの動きによって動的にアップ又はダウンスケーリングされる。それらの視覚化をクリックすることは、このオブジェクト２３０２０６に関連付けられたアクションを呼び出すことができる。
【０１４２】
図１３ｄは、ＶＲ／ＡＲ環境２３０１０４、２３０２０８内の視覚２Ｄ／３Ｄコンテンツのビュー間で移行する方法の例示的選択処理２３０４００の例示的個々の段階の流れ図を示している。図１３ｄの例は、処理２３０４００の例示的流れを表示するいくつかの処理ブロック２３０４０２−２３０４１４を含む。図１３ｄの例に順番に並べられているが、他の例もブロックを再順序付けする、１又は２以上のブロックを変更する、及び／又は複数のプロセッサ又は２又は３以上の仮想機械又はサブプロセッサとして編成された単一プロセッサを並行して使用して２又は３以上のブロックを実行することができる。
【０１４３】
２３０４０２で、視覚コンテンツは、２Ｄ／３Ｄコンテンツの歪められていない視覚化として既存のＨｏｌｏに表示されている。視覚コンテンツの小片は当該の小片に重なりかつ閉塞する。２３０４０４で、ユーザは、歪められていないコンテンツの視覚化の個々の少なくとも一部は塞がれた小片にフォーカスする要求をトリガする。２３０４０６で、歪められていないコンテンツの視覚化は、当該のユーザの小片にフォーカスしている歪められた投影に変換される。２３０４０８で、歪められている投影の小片は、当該の小片との幾何学近似に従ってサイズを縮小される。ダウンサイズ小片は、当該の小片を反転表示し、上述のように魚眼ビューを呼び出す２３０４１０。コンテンツのある一定の小片を反転表示すると同時に、ユーザは、その個々の対話可能性に従ってコンテンツと対話することができる。２３０４１２で、ユーザは、歪められたコンテンツ投影から歪められていないコンテンツ視覚化への変更を要求する。２３０４１４で、歪められていない視覚化に変更した後に、歪められたコンテンツ投影におけるダウンサイジング効果を低減することができる。この例のコンテンツ視覚化は歪曲効果なしに現れる。
【０１４４】
ローディング例
これに加えて又はこれに代えて、本明細書のシステム及び方法は、様々なローディング例をサポートすることができる。図１４ａは、ＡＲ／ＶＲエディタのプレーヤモード１２２０００におけるＡＲ／ＶＲ環境のローディング処理中のＶＲ／ＡＲ環境１２２００２を示している。図２９ａ／図２９ｂの球面又はパノラマカメラによって作成されたパノラマ画像１２２００２は、ユーザによる手動で、又は例えばカメラデバイス図２９ａ−ｃによって配信される自動処理で定義される。視覚表示システム２３０１０２は、複数の表示デバイス図３０ａ−ｆを通じて見ることができる。
【０１４５】
ＶＲ／ＡＲ環境１２２００２のコンテンツがプレーヤモード１２２０００でロードされる場合に、ローディング画面２４０１０１は、ＶＲ／ＡＲ環境１２２００２のローディング処理の持続時間中にユーザに表示することができる。この例では、ローディング画面２４０１０１は、ＶＲ／ＡＲ環境１２２００２と対話する方法に関してユーザのためのクイック指示２４０１０２、２４０１０３を表示することができる。ローディング画面２４０１０１のコンテンツ２４０１０２、２４０１０３は、使用シナリオに従って異なる場合があり、例示的実施を示す図１４ａに制限されない。
【０１４６】
シーンが、ユーザの周りの３６０°球面としてローディング画面のレンダリングをサポートするヘッド装着式ディスプレイ又は仮想現実ヘッドセットのようなデバイスにロードされる場合に、全球面を使用して、命令例２４０１０２及びロードされたシーン又はプレースホルダグラフィックに関する他の情報のような中間コンテンツ、全画面１２２００２がロードされて表示される準備が整うまで示すビデオ又は他のリッチコンテンツを表示することができる。
【０１４７】
これに加えて又はこれに代えて、半透明又は半透明設計を例えば動画式命令として、又は動画化ローディング画面を表示するローディング進行バーとして構成することができる。ローディング処理の持続時間が所定のローディング時間を実際に超えた場合に、ＶＲ／ＡＲ環境１２２００２をローディングしながらローディング画面２４０１０１だけを表示するプログラム論理を提供することができる。例えば、このプログラムは、ローディング処理が例えば２５０ミリ秒よりも長く持続した時だけローディングシーン２４０１０１が表示されるように設計することができる。
【０１４８】
顔検出の例
【０１４９】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、顔検出特徴をサポートすることができる。図１５ａは、ＶＲシーンにおける自動顔検出によって構成される例示的システムを示している。自動顔検出特徴セットは、限定されないが図２９ａ、図３０ａに示すデバイスを含むデバイスによって送られる多くのタイプの入力２５０１１０と一緒に機能することができる。そのような例は、パノラマ画像２５０１１２、パノラマビデオ２５０１１１、又は限定されないがテクスチャ投影を有する３Ｄメッシュを含む他の仮想現実シーン２５０１１４とすることができる。入力２５０１１０は、本発明のシステムによって自動的に分析することができる２５０１１６。顔が入力２５０１１０で検出された場合に、それらはプログラムされている場合は自動的にぼかすことができる２５０１２０。更に、顔の表情を分析する２５０１１８ことができ、それによってシーン２５０１２２に存在する感情を分析することができる。オリジナル入力２５０１１０はデータベースに格納しなくてもよい。そのような例では、オリジナル入力２５０１１０に後でアクセスすることはできない。
【０１５０】
安定性の例
【０１５１】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、安定化特徴をサポートすることができる。図１６ａは、技術デバイス４００１０６を使用して安定フレームレートを維持するための例示的自動動的レンダリング解像度調節の流れ図である。この例のシステムは、レンダリングシステム２６０１０３の現在のフレームレート２６０１０２に従ってレンダリング解像度２６０１０１を自動的に調節する。
【０１５２】
一部の例では、制限された処理機能を有するシステムは、可能なフレームレートで高解像度の画像を表示することはできない。本明細書のシステムは、フレームレート２６０１０２が許容可能なフレームレートの定義された範囲２６０１０５に達するまで定義された最小解像度２６０１０４にドロップすることによってレンダリング解像度２６０１０１を修正することができる。この処理を繰返して測定し、あらゆる所与の時間に発生する場合がある可能なローディング手順によるフレームレート２６０１０２の時間短縮に対処することができる。追加のコンテンツのそのようなローディング処理又はあらゆる他のコンピュータ的に高価な計算は、処理が終了して解像度２６０１０２が再度上がるまで一時的にレンダリング解像度２６０１０１を低減することができる。
【０１５３】
本発明のシステムは、デスクトップコンピュータ４００１２２がそうであるような複雑な３Ｄシーンをレンダリングすることができないハードウエアを有するデバイスのためにこれらの方法を自動的に使用することができる。限定されないが移動デバイス４００１０２又はヘッド装着式ディスプレイ４００３００を含む低速デバイスは、一定した許容可能なフレームレートに達するまで自動的に解像度を低減することができるシステムから利益を得ることができる。
【０１５４】
断片化及び球面の例
【０１５５】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、球面画像の表示断片化及び／又はセグメント化をサポートすることができる。セグメント化は、画像の分析及び様々なアルゴリズムのいずれかを使用して示すことができる論理的形状へのそれらの分割又はセグメント化を指すことができる。このアルゴリズムを使用して順番に分析、発見、カウント、ロードすることができるある一定のセグメント化形状を識別することができる。例えば、アルゴリズムは、部屋内の全ての窓を識別及びセグメント化することができる。それらの窓は、一定した形状又は色を有することができ、画像解析を通じて本発明のシステムによって識別することができる。次に、多くの複数のＨｏｌｏにわたって、本発明のシステムは窓の数を数えて、それらが間取図に位置付けられた場所を識別することができる。
【０１５６】
画像の解像度が高い程、セグメント化も正確になる。これは、指定される多くの関心部分、形状における圧縮を可能にし、画像の他の態様の前に迅速に又は最初にロードすることができる。処理をこの方式で高速化することができる。他の例は、画像にアルゴリズムを使用して形状を見出す段階を含む。解像度が高い程、セグメント化は正確になり、後で見出される形状がより正確になる。
【０１５７】
断片化は、画像を高速ローディングのために分けられるグリッドのような個別のパターンへの分解又は断片化を指すことができる。画像に特定の形状を識別する代わりに、断片化は単に反復パターンを画像に加え、これをロードすることができる全画像よりも小さいチャンクに分解することができる。これは、最初にロードしたいブロック又は断片化部分が、関心ではない断片の前に表示される場合に、コンピュータリソースを節約することができる。
【０１５８】
断片化の例が図１７ａに示されており、図２９ａに詳しく説明する球面カメラデバイス２７０１０１で撮影されたオリジナル３６０°画像２７０１０２のセグメント化によって作成されたオリジナル解像度のいくつかの個別の部分２７０１０４を含む例示的タイル化３６０°画像を示している。タイルの数は、本明細書のシステム及び方法のコンテキストで変更することができる。ある一定の例では、選択されたタイルの数は、オリジナル画像の次元及び解像度を考慮に入れるアルゴリズムに基づく場合がある。
【０１５９】
一部の実施形態では、サポートされるデバイスの数は、以下の２つの要件がアルゴリズムによって満足される時に、すなわち、タイルの数が２の累乗でありタイルが高々２０４８ｘ２０４８の解像度を有する時に増すことができる。
【０１６０】
図１７ｂは、例示的球面の例示的構造を示している。３６０°画像を含むＨｏｌｏの表示に応答して、本明細書のシステム及び方法は、図２９ａに詳しく説明する球面カメラデバイス２７０１０１によって撮影された３６０°画像２７０２０２の低解像度バージョンを重ねることができる。同じ画像２７０２０４又は同じ画像の一部の様々な高解像度タイル化バージョンのいずれも備えたこの画像２７０２０２を最初にロードすることができる。個々のタイル２７０２０６は、サーバに繰り返して及び非同期にロードすることができる。タイルが存在する限り、３６０°画像の低解像度バージョンは、完全に覆われ、従って、除去することができる。
【０１６１】
図１７ｃは、コンピュータデバイス４００１０６を使用するクライアント側２７０３０２で、ユーザが３６０°画像２７０３０４のオリジナルバージョンをアップロードすることができる方法の例を示している。前処理構成要素では、低解像度の単一タイルバージョン２７０３０６、並びに高解像度多タイルバージョン２７０３０８をオリジナル画像から計算することができる。通信ネットワーク、例えば、インターネットを通じた送信により、低解像度バージョン、並びに個々のタイルをサーバ２７０３１０に送信することができる。サーバは、全ての送信されたデータを永続データストア２７０３１２に格納することができる。特に、オリジナル３６０°画像の低解像度シングルタイルバージョン及び高解像度マルチタイルバージョンの計算を含む全ての前処理段階はクライアント２７０３０２に発生することができ、サーバ２７０３１０は単独で永続データストアと通信し、同時に３６０°画像の様々なバージョンを受信及び配信することができることに注意しなければならない。
【０１６２】
図１７ｃに部分的に対応する図１７ｄは、本明細書のシステム及び方法が、図２９ａに詳しく説明する球面カメラデバイス２７０１０１によって撮影されたユーザ２７０４０２からの３６０°画像のオリジナルバージョンを最初に受信することができる方法を示している。続いて、並行処理で、３６０°画像２７０４０６の低解像度シングルタイルバージョン２７０４０４、並びに高解像度マルチタイルバージョンを計算することができる。続いて、コンピュータ化タイルの低解像度バージョン、並びに全てをサーバ２７０４０８に送信して永続データスタ２７０４１０に保存することができる。
【０１６３】
図１７ｅは、球面ローディング処理の例を示している。ユーザが、サーバ２７０５０２からの３６０°画像を含むＨｏｌｏを要求した時に、まず以前に計算された低解像度バージョンをクライアントのコンピュータデバイス４００１０６に送信してユーザ２７０５０４に表示することができる。低解像度バージョンが表示された後で、ユーザは本発明のシステムの使用を開始することができる。一部の実施形態では、低解像度バージョンが完全にロードされた後だけに、高解像度バージョン２７０５０６の個別のタイルを非同期方式２７０５０８でクライアントのコンピュータデバイス４００１０６に送信することができる。高解像度バージョンの全ての個々のタイルがサーバ２７０５１０による送信に成功すると間もなく、３６０°画像の低解像度バージョンは完全に覆われて除去することができる。
【０１６４】
オブジェクトの例
【０１６５】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、ディスプレイオブジェクトをサポートすることができる。図１８ａは、限定されないが、クライアント側２８０１０２に位置付けられたテキスト、２Ｄグラフィック、３Ｄオブジェクト、及び注釈を含む任意のオブジェクト２８０１０４を追加するための例示的機能を示している。そのような例ではクライアント側に、限定されないがＨｏｌｏ２８０１０６に追加されるオブジェクトのためのＭＤ５を含むアルゴリズムを使用してハッシュ値を計算するための機能を配置することができる。サーバ側２８０１０８との通信は、通信ネットワーク、本明細書に説明するように例えば、インターネットを通じて発生させることができる。そのような例では、サーバが、様々なデータストア２８０１１２、４００１０６のいずれかにオブジェクト及びハッシュ値２８０１１０を格納して様々なデータストア２８０１１２、４００１０６のいずれかからそれらを取り出すことができる。オブジェクトは、そのハッシュ値２８０１１０と共にデータストア２８０１１２に存続することができるが、ハッシュ値２８０１１０及び関連付けられたオブジェクトの各対を一度及び一度だけデータストア２８０１１２に存在させることができる。
【０１６６】
図１８ｂは、任意のデバイス図３０ａからユーザ２８０２０２からのオブジェクトの受信で開始するＨｏｌｏに使用されるオブジェクトのアップロード及び既存のハッシュ値の試験の例示的処理を示している。続いて、この特定のオブジェクトに対するハッシュ値をコンピュータデバイス４００１０６を使用してクライアント側で計算２８０２０４することができる。サーバと通信し計算された値を送信することにより、特定のハッシュ値が対応する検索２８０２０６を実行することによって図１８ａからデータストア２８０１１２に既存の２８０２０８であるか否かが検査される。ハッシュ値がデータストア２８０１１２に既存である例示的事例では、サーバと更に通信することなくユーザのオブジェクトをＨｏｌｏ２８０２１２に直接追加することができる。ハッシュ値がデータストア２８０１１２に予め存在しない例示的事例では、ユーザのオブジェクトをサーバに送信して、ユーザのＨｏｌｏ２８０２１２にオブジェクトを追加する前に関連付けられたハッシュ値２８０２１０と共にデータストア２８０１１２に存続させることができる。
【０１６７】
処理の例
【０１６８】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、異なる処理技術を使用することができる。図１９ａは、ユーザが、限定されないが既存の仮想シーンＵＩにドラッグする段階を含むあらゆる方法によっていずれかの３Ｄモデルファイル１１１８００をインポートした時にユーザによってトリガされる例示的処理を示している。そのような対話は、モデルインポート処理２９０１０１に作成者２９０１１２のデバイス２９０１０７、４００１０２、４００１２２のメモリ２９０１０８、４００１１４内のモデルファイル２９０１０２の読取をローカルに開始させることができる。これは、異なるターゲット監視器２９０１１０に後で表示されるようにモデルをカスタマイズするためのモデルの更に別の構文解析２９０１０３、変換２９０１０４、及び処理２９０１０９を可能にすることができる。この処理は、サーバ２９０１０５又はあらゆる他のソースへの接続を必要としない計算の完全にローカルのシリーズとすることができる。これは、センシティブな情報がバックエンドに渡されることがないので、本発明のシステムをオフラインシナリオに使用でき、ユーザのＩＰを保護することができる。これは、３Ｄモデルデータ２９０１０２をこれから抽出するためのセンシティブ製品情報を含む複雑なＣＡＤ文書を使用する時に有用とすることができる。インターネット接続が利用可能である時に、インポート２９０１０３、変換２９０１０４、及びカスタマイズ処理２９０１０９の最終結果をサーバ２９０１０５にアップロードすることができる。得られるモデル２９０１１１をインポートされた３Ｄモデル２９０１０６の作成者２９０１１２リストに含むことができる。
【０１６９】
本明細書に説明する方法により、処理の性能は、図３０ａの作成者のフロントエンドデバイス２９０１０７、例えば、ユーザが仮想シーンを作成するのに使用するコンピュータ４００１２２に頼ることができる。従って、本方法は利用可能なネットワーキング速度の処理を切り離すことができ、ハードウエア２９０１０７、作成者の４００１０６、例えば、ＣＰＵ２９０１１３、４００１１２及び利用可能なＲＡＭ２９０１０８、４００１１４にしか障害を作らない。更に、クライアントデバイスでの非集中化処理のために、バックエンド２９０１０５は、多すぎる同時要求の結果として障害になることはない。あらゆる数の監視器２９０１１０も、待機待ち行列なしに同時にコンバータ２９０１０４を使用することができる。
【０１７０】
例示的インポート処理２９０１０１、すなわち、構文解析２９０１０３、変換２９０１０４、及び単純化２９０１０９は、背景で実行され、実行中のシステムとのいずれのユーザ対話も遮ることはない。この非同期パイプライン２９０１０１は、複数のモデル２９０１０２の同時インポートを可能にする。各インポート処理の進行２９０１０１は、作成者が仮想プロジェクトで作業を続けられる間は視覚化して作成者２９０１１２にフィードバックとして戻すことができる。
【０１７１】
例示的インポート処理２９０１０１中に、モデル２９０１０２は、図２０ａに示す様々なターゲットデバイスに対してカスタマイズ２９０１０９することができる。カスタマイズ２９０１０９中に、移動デバイス４００１０２に使用することができるようにテクスチャを図２０ａに示すようにサイズ変更することができる３００１０７。同じく、仮想シーンをレンダリングするクライアントでのリアルタイムメッシュ単純化のための事前準備として、仮想シーンがプレーヤにロードされる場合にリアルタイムでメッシュ単純化アルゴリズム２９０１０９を実行することができる正しい順序にモデルメッシュをすることができる。処理２９０１０９は、作成処理中に実行することができ、図３０ａの監視器のデバイス２９０１１０の性能へのレンダリング品質の調節を可能にする。
【０１７２】
一部の例では、スマートフォン４００１０２のような図３０ａの移動デバイス３００１０２で３Ｄコンテンツ３００１０１をレンダリングする時に、ハードウエアを限定することができ、例えば、ハードウエアは、制限されたグラフィック処理（ＧＰＵ）３００１０３、４００１１８機能を有することができる。デスクトップＧＰＵ４００１１８を標的にした大きいテクスチャマップ３００１０４を有する多くの高詳細３Ｄモデル３００１０１を同時にロードすることは、移動ＧＰＵ３００１０３、４００１１８では実施可能ではない場合がある。更に別の発展は、それらの状況をサポートすることができ、処理が移動デバイスを含む様々なデバイスのいずれにも行われることを可能にする。
【０１７３】
図２０ａは、詳細３Ｄモデル３００１０１を本質的には数百又は数千の頂点及びメッシュを含むことができる単純なモデルに縮小するための自動処理を使用する例を示している。この例示的方法は、モデル３００１０１が、移動ＧＰＵ３００１０３、４００１１８、例えば、スマートフォン４００１０２によってデバイス３００１０２、４００１０２、４００１２２にロードされた時に自動的にこの数を低減することができる。複数のメッシュを含むオブジェクトをこのカスタマイズ処理中に単一メッシュに統合して、ＧＰＵ３００１０３、４００１１８のワークロードを更に低減することができる。
【０１７４】
これに加えて、オリジナル高解像度テクスチャマップ３００１０４は、低減されたサイズの第２のテクスチャ３００１０５に自動的に縮めることができ、オリジナルテクスチャ構成３００１０４よりもメモリの消費が少なくて済み移動ＧＰＵ３００１０３、４００１１８メモリにも速くロードすることができる。
【０１７５】
メッシュ低減３００１０８及びテクスチャ低減３００１０７のそのような組合せを初めてモデル３００１０１がロードされ他時に移動デバイス３００１０２、４００１０２に適用することができ、次に、モデル３００１０１が２度目に要求された時に単純化バージョン３００１０６が、再使用ためにデバイス３００１０２、４００１１４の内部にキャッシュに入れられる。これは、オリジナルモデル３００１０１のロードと比較して２度目にカスタマイズ化モデル３００１０６がロードされた時のローディング時間を大幅に増すことができる。
【０１７６】
回転の例
【０１７７】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、様々なディスプレイ回転技術をサポートすることができる。図２１ａは、カメラが画像３１０１０３を撮影した時にカメラ３１０１０２  ４００１０８が行ったオリジナル回転の代わりに、限定されないが完全に球面のビデオを含むビデオにユーザの回転を適用するための例示的方法を示す図である。一部の実施形態では、複数の画像が連続した順序で格納される限り複数の画像を使用することができる。それらの複数の連続画像は、１又は複数のソースから発生することができる。各画像３１０１０３をカメラポーズ３１０１０８をもたらす視覚的走行距離計測システム３１０１０６  ３４０１０２によって処理することができる。走行距離計測は、画像、モーションセンサ、既知の位置アンカー、更新位置情報などを含むあらゆる数のデータソースにも基づく経時的な場所変化の推定を指すことができる。走行距離計測サブシステムを使用して、本明細書のシステム及び方法に通知してカメラ及びオブジェクト位置、並びに互いの及びカメラシステムに対する場所を更新及び推定することができる。走行距離計測はまた、一般的に、あらゆるオブジェクト又はカメラによって時間と共に移動された距離の測定を指すことができる。
【０１７８】
カメラ画像を使用した拡張現実
【０１７９】
解説するように、拡張現実ＡＲは、カメラによって撮影された画像を利用して、コンピュータ発生グラフィックをカメラ画像にインポートすることができる（例えば、カメラ自体によって技術的にコンピュータ発生されたカメラ画像以外のコンピュータ発生デジタルグラフィック）。
【０１８０】
カメラポーズ３１０１０８は、カメラ３１０１０２  ４００１０８が画像３１０１３を撮影した時にカメラが行った移行及び回転３１０１１０を含むことができる。カメラの回転３１０１１０を知って、回転３１０１１０が画像３１０１０３から取り除かれるように画像３１０１０３を処理することができる。得られる画像３１０１１２に対して、カメラがどのような方向に向けられたとしても、後で全ての画像が同じ方向に向けられる。ユーザ３１０１０４は、限定されないが仮想現実ヘッドセット４００３００を含む技術デバイスによってこのビデオを見ることができる。ユーザ３１０１０４は、カメラ回転３１０１１０から無関係に表示されるビデオの部分を回転及び決定することができる。ユーザの回転３１０１１４は、回転が取り除かれた画像３１０１１２に適用することができる。これは、ユーザ３１０１０４が向けられる同じか又は類似の方向に向けられる画像３１０１１６をもたらすことができる。ユーザの回転３１０１１４及び視野は、一般的に全画像の一部分だけである画面上の画像３１０１１８を決定する。
【０１８１】
図２１ｂは、カメラ３１０２０６及びユーザ３１０２０８が同じ方向に回転される例示的状況を示している。仮想現実の外側で、これは、ビデオ及び画像に対して共通の状況である。この状況では、ユーザ３１０２０８は回転することができない。代わりに、ユーザは、ユーザ３１０２０８が現在見ているフレーム３１０２１２を撮影した時にカメラと同じ方向をユーザ３１０２０８が常に見ていることを意味するカメラの回転を採用する。パノラマ又は球面ビデオでは、ユーザは、通常は人間が３６０°の視野を持たないので各時点でビデオの部分集合３１０２１２だけしか見ない。カメラ３１０２０６とユーザ３１０２０８の両方の視野３１０２１８の内側のオブジェクトだけを表示された画像３１０２１２で見ることができる。提供される例では、立方体３１０２１２が視野３１０２１８の外側にあり、写真３１０２１４が視野３１０２１８の内側にある。従って、ユーザは、ユーザのディスプレイ３１０２１２で写真３１０２１０を見て立方体３１０２１６は見ない。
【０１８２】
図２１ｃは、カメラ３１０３０６がユーザ３１０３０８とは個別に回転される例示的状況を示している。特に仮想現実のシナリオの場合に、ユーザ３１０３０８がカメラ３１０３０６に関係なく回転することができることが望ましい。この例では、カメラ３１０３０６がある環境は、２つのオブジェクト、立方体３１０３０２及び写真３１０３４を含む。この例ではユーザ３１０３０８がユーザのディスプレイ３１０３１２上の投影された立方体３１０３１０を見るが写真３１０３４の投影は見ず、カメラ３１０３０６は写真３１０３０４の方向に向けられる。
【０１８３】
図２１ｄは、安定化がいかに有用であるかを明確にするための例示的状況を示している。カメラマン３１０４０４は、通常は限定されないが歩きながら手持ち式カメラ４００１０８の上下の動きを含む望ましくない動きによって影響を受ける。カメラマン３１０４０４が、何か、例えば、人を撮影する時に、そのような望ましくない動きは、カメラマンが撮影する画像に影響を与える場合がある。これは、取り込まれた画像３１０４０８  ３１０４１０での動きをもたらす場合がある。提示する方法は、取り込まれた画像３１０４０２における潜在的な望ましくない動きを低減又は排除することになる。仮想カメラはユーザのためのビューに対応し、仮想カメラがユーザの動きに従うことを意味する。仮想カメラを物理的カメラから切り離すことができ、これは、仮想カメラが物理的カメラの動きに従わないことを意味する。仮想カメラを物理カメラから切り離すことは、走行距離計測システムによって提供された場所及び回転を仮想カメラに適用することによって達成することができる。仮想カメラは、画像のどの部分がディスプレイ３１０３１２に投影されるかを決定する。
【０１８４】
深度の例
【０１８５】
カメラが初期画像を取り込むのに使用されるＡＲ状況では、各ピクセルの深度が、ＡＲシーンを構築する場合に有用になる。これに加えて又はこれに代えて、本明細書のシステム及び方法は、様々な方法で様々な深度を計算及び使用することができる。図２２ａは、立体パノラマ画像３２０１１４における各ピクセルの例示的深度推定３２０１１２を示し、立体パノラマ画像３２０１１４は、限定されないが図２９ａの図示を含む球面又はパノラマカメラによって発生させることができ、図３０ａに示すカメラ３２０１０６、４００１０８に対して、シーンの同じ特徴を共有する少なくとも２つのパノラマ画像３２０１０２、３２０１０４を使用することによって計算することができ、従って、限定されないが、光学フロー及びカメラ３２０１０６、図３０ａ、各パノラマ画像３２０１１０、３２０１０８に相対する４００１０８を含む深度推定に使用することができる。１つの非制限的な例では、深度推定を２つのパノラマ画像内の同じ特徴のピクセル三角測量及びカメラ場所及び／又は高度のような第３の点に基づいて決定することができる。
【０１８６】
光学フローは、ピクセルの三角測量を超えた複雑なアルゴリズムを指すことができ、他のセンサデータを使用して更に改良することができる。例えば、カメラが移動した又は２つのフレームが移動した場合に、動き及び距離推定を使用して深度を推定することができる。
【０１８７】
センサデータをそれらの計算に使用して、ピクセル三角測量を拡張することができる。
【０１８８】
抽出された深度情報３２０１０２を使用して、限定されないが、ユーザの両眼に横に並んだパノラマ画像３２０１０２、３２０１０４をレンダリングする代わりに抽出された深度情報３２０１０２を使用して深度の正確な感覚を有する図３０ｄ、図３０ｅに示すデバイスを含む立体デバイス３２０１２２にパノラマシーン３２０１１４をレンダリングすることができる。そのような例示的実施形態は、ユーザがシーン３２０１１４の３Ｄ深度の没頭を破壊することなく任意にユーザの頭を回転することを可能にすることができる。更にこれはユーザが、視点、すなわち、ユーザの頭３３２０１２２を低範囲で移動することを可能にし、従って、再構成されたシーン３２０１１４での場所の動きのある一定の程度を可能にする。
【０１８９】
拡張の例
【０１９０】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、Ｈｏｌｏの表示拡大をサポートすることができる。図２３ａは、追加の例示的要素によってビデオを拡大する方法を示している。カメラ３３０１０８  ４００１０８は、その周囲の環境を取り込み周囲を示すビデオを発生させる。一例として、周囲は、立方体３３０１０６を含有することができる。ビデオの１つの例示的フレーム３３０１０２は、この立方体３３０１０４を表示することができる。カメラ３３０１０８  ４００１０８が立方体３３０１０６に対して動いた場合に、フレーム３３０１１０の立方体３３０１１２は、フレーム３３０１０２の立方体３３０１０４に比べて異なる位置にあるはずである。フレーム３３０１１０は技術デバイス４００１０６  ４００３００で見ることができる。本明細書のシステム及び方法は、ビデオの一部であるように後で表示される３次元空間に追加の要素を位置決めすることができる。一例として、スピーチバブル３３０１２０を立方体３３０１０４の上に位置決めすることができる。オリジナルカメラが移動した時に、フレーム３３０１１４内の立方体３３０１０４は、ビデオのフレーム３３０１２２内の立方体３３０１１２になることができる。そのような例では、立方体は、カメラの動き及びカメラに対するその位置に従って移動したものである。本方法を使用して、カメラがどのように動くかを計算することができ、従って、追加の要素も相応に移動することができる。この例では、スピーチバブル３３０１２４が、第１のフレーム３３０１１４に使用されるスピーチバブル３３０１１６とは対照的に第２のフレーム３３０１２２のユーザ３３０１１８に対して異なる場所を有する。そのような例では、スピーチバブル３３０１２８が、立方体又はあらゆる他の指定されたオブジェクトの上部に留まるだけでなく、カメラがの近くに又は遠くに動いた時に表示されたサイズを透視的に正しく変更することができる。
【０１９１】
オブジェクト及びカメラ追跡の例
【０１９２】
一部のＡＲ例では、カメラは、３Ｄ空間でパン、ズーム、又は他に移動によって視野を変更することができる。一部の例では、カメラの視野内のオブジェクトは、カメラに関係なく移動することができ、カメラの視野に入る及び視野から出ることができる。例えば、鳥は、視野に飛び込み、再度木の後ろから現れる場合がある。一部の例示的実施形態では、シーン画像を取り込むのに使用されるカメラに対して固定又は移動するオブジェクトの追跡を要求することができる。以下のシステム及び方法を使用することにより、オブジェクトを追跡することができカメラ場所を追跡することができる。一部の例では、オブジェクト及びカメラが互いに関係なく移動した時にそれらの場所追跡の両方を組み合わせることができる。
【０１９３】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、シーン内の画像及びオブジェクトの追跡をサポートすることができる。図２４ａは、例示的全体追跡システムを示している。カメラ４００１０８によって撮影された画像３４０１２０を本方法に使用することができる。それらは、カメラ４００１０８からのライブ画像ストリームにより、又は事前録画ビデオを通じて提供することができる。例示的走行距離計測追跡器特徴３２０１０２は、コンピュータデバイス４００１０６で実行して、画像を取り込んだ時のカメラのポーズをあらゆる画像に対して計算することができる。最新の画像のポーズを使用して、シーン３４０１１０の動きが現実世界のカメラ３４０１０４の動きに対応するようにシーン３４０１１０に仮想カメラ３４０１０４を配置することができる。シーンは、技術デバイス４００１０６によって表示することができる。そのような例では、オブジェクト追跡器３４０１０６が、カメラ画像３４０１２０の任意のオブジェクトを検出及び追跡し、相応にシーン３４０１１０にそれらのオブジェクトを配置することができる。オブジェクト追跡器３４０１０６のいくつかの事例３４０１２２を並行して実行することができ、各事例は少なくとも１つのオブジェクトを検索する。追跡することができるオブジェクトの一部の例は、限定されないが、点クラウド３４０１１２、３Ｄオブジェクト３４０１１４、２Ｄ画像３４０１１６、及び人工マーカ３４０１１８を含む。
【０１９４】
走行距離計測追跡器３４０１０２は、前の画像内のピクセルの部分集合に対する深度仮説のマップを内部で作成し、このマップを使用してピクセル座標を新しい画像にワープさせることができる。これは、両方の画像のピクセル色を比較することによって２つの画像間の現在のポーズに対する誤差値を計算することができる。これは、最小誤差値に対応するワープを見出すために反復処理で画像間のポーズを最適化することができる。本発明のシステムは、推定されたポーズの情報を使用して、両方の画像で見ることができる各ピクセルに対する新しい深度測定値を計算することができる。これは、フィルタ方法の使用を通じて新しい測定からの情報によって前の画像内の深度仮説を更新することができる。一部の例では、これに加えて又はこれに代えて、走行距離計測追跡器３４０１０２は、キーフレームとして追跡されたフレームを選択してこれを接続されたグラフに挿入することができる。
【０１９５】
キーフレームは、走行距離計測追跡器３４０１０２によって推定されるポーズ及び深度測定値に基づいて選択することができる。画像のシーケンスの第１のフレームは常に第１のキーフレームである。新しいフレームは、前のキーフレームに対して追跡される。現在のキーフレームまでのそのポーズの距離がある一定の閾値よりも上である時に新しいフレームをキーフレームであると宣言することができる。新しいフレームは、その深度測定値が現在のキーフレームの深度仮説から大幅に逸れる時にキーフレームであると宣言することができる。キーフレームの選択は、本発明のシステムが全てのフレームにおける計算を阻止することを可能にし、それによってコンピュータ効率を改善し、処理リソースにおけるドレインを低減し、高速、並びに正確かつ鮮明な画像の表示を提供する。
【０１９６】
走行距離計測追跡器は、このグラフでのポーズグラフ最適化法を実行し、各キーフレームに対する大域的最適ポーズを見出すことができる。走行距離計測追跡器３４０１０２は、この最適化で既存の深度マップを利用して、キーフレームの以前に推定されたポーズ内のスケールドリフトを補正することができる。これは、キーフレーム間の類似性変換を推定することによって実行することができる。視覚入力に加えて、走行距離計測追跡器３４０１０２は、限定されないが、ジャイロスコープ、加速度計、コンパス、又はＧＰＳのような追加のセンサからの読取を処理することができる。走行距離計測追跡器３４０１０２は、異なるセンサの読取値を追跡された画像の誤差関数と共にファクタグラフに統合することができるファクタに結合することができる。それらのファクタグラフは、新しいフレームに対するポーズの推定で先行として使用することができる確率分布内に周縁化することができる。更に、走行距離計測追跡器３４０１０２は、周縁化されていなかったポーズに対するファクタグラフ上のローカル最適化を実行することができる。
【０１９７】
図２４ｂは、本方法がユーザ３４０２０８にどのように利益を与えることができるかという例を示している。この例における異なるシーン３４０２０２、３４０２０４、３４０２０６は、年代順に順序付けられる。ユーザ３４０２０８はカメラ３４０２１０  ４００１０２を有するデバイスを保持する。ユーザ３４０２０８は、オブジェクト３４０２１４を追跡したいと思う。オブジェクトを検出することができる区域３４０２１２が存在する。一部の例では、眼に見えない、ぼんやりしたオブジェクトが存在する場合があるか、又は他にあまりにも遠くていずれの所与の時間にも検出できない場合がある。第１のシーン３４０２０２では、オブジェクト３２０２１４が検出区域３４０２１２の外側にある。本発明のシステムは、カメラ画像に表示されていないのでこのシーンにオブジェクトを検出しない。第２のシーン３４０２０４では、ユーザ３４０２０８は、オブジェクト３４０２１４が検出することができるように更に移動する。第３のシーン３４０２０６では、ユーザ３４０２０８は、更に遠くに移動する。オブジェクト３４０２１４は、コンピュータデバイス４００１０６で実行されるオブジェクト追跡器３４０１０６によってそれ以上は検出できないほど遠くに離れている。
【０１９８】
一例では、ユーザのホログラムが椅子に置かれ、カメラがユーザのホログラムから離れてパンした場合でも、本発明のシステムは、人のホログラムが留まる場所を追跡し続ける。従って、カメラの視野が再度椅子を表示した時に、ホログラムはまだ同じ場所に表示されている。
【０１９９】
この例におけるオブジェクトがカメラによってこれ以上検出できない又は他にカメラの視野の外側にある場合でも、走行距離計測追跡器３４０１０２は、機能し続け、カメラ位置、並びにオブジェクトを追跡することができる。走行距離計測追跡器は、カメラ３４０２１０の場所を更新することができるので、本発明のシステムは、カメラとオブジェクトの間の相対的位置及び方向インジケータを維持することによって移動しない場合もカメラ３４０２１０、４００１０２に対してオブジェクト３４０２１４がある場所を推定することができ、一部の実施形態では、最後の既知の場所及び動きを時間と共に使用することによって移動の場所を推定することができる。これは、一度検出された後に、全時間にカメラ画像に見えないとしても、任意の距離にわたってオブジェクトの追跡を可能にすることができる。オブジェクトが別の特徴によって隠されたか又はカメラの視野が特徴から逸れた場合でも本発明のシステムはオブジェクトを追跡することができる。本発明のシステムは、カメラの視野がターゲットオブジェクトから逸れて後で戻り、ターゲットオブジェクトの場所を追跡することを可能にする。
【０２００】
図２４ｃは、検出されたオブジェクトのポーズを計算してオブジェクト空間から仮想空間に変換することができる例示的方法を示している。オブジェクトを見出す処理は、カメラポーズを推定する処理から切り離すことができる。カメラポーズ３４０３１０をカメラ４００１０８によって撮影されたあらゆるフレーム３４０３０２から計算することができる一方、カメラポーズ３４０３１０を決定するための計算は計算が完了するまでいくつかのフレームを取ることができる。この場合に、一部のフレームはオブジェクト追跡器３４０３１２によって無視される。走行距離計測追跡器３４０３０８、３４０１０２は、主スレッド３４０３０４で実行することができ、新しいフレーム３４０３０２が提供される度に仮想空間３４０３１０のカメラポーズを推定することができる。これを直接使用して、シーン３４０３１８の例でカメラポーズ３４０３２０を更新することができる。いくつかの背景スレッド３４０３０６は並行して実行することができ、各スレッドはオブジェクト追跡器３４０３１２の独自のインスタンスを有する。オブジェクト追跡器３４０３１２のインスタンスがオブジェクトを検出した状態で、オブジェクト空間３４０３１４でのポーズを計算することができる。変換及び回転は、オブジェクト空間３４０３１４から仮想世界空間３４０３１６に変換すべきである。変換及び回転に加えて、仮想世界空間３４０３１６でのオブジェクトの正しいスケーリングを計算すべきである。それらの値により、仮想要素はシーン３４０３１８に追加又は更新３４０３２２することができる。全ての計算はコンピュータデバイス４００１０６で実行することができる。
【０２０１】
図２５ａは、限定されないが図３０ａに表示される構成要素４００１０６を含むコンピュータデバイスで実行される例示的走行距離計測システム３５０１１２を示し、限定されないが図２９ａ、図３０ａ、４００１０８に示すデバイスを含むデバイスによって配信される新しい画像３５０１０２が利用可能になると直ちに追跡３５０１０４を開始する。仮想走行距離計測が着信画像の追跡を成功した３５０１０６場合に、限定されないが位置及び方位を含む画像の仮想ポーズを提供することができる。視覚走行距離計測は、背景で非同期に実行することができる視覚検索スレッド３５０１１１６をトリガし、画像３５０１０２を３５０１１６に渡すことができる。同時に又は密接に、走行距離計測システム３５０１１２は追跡３５０１０４を継続することができる。追跡を失った場合に、走行距離計測システム３５０１１２は新しい画像３５０１０２が到着することを待ち、再度追跡を開始することができる。
【０２０２】
一部の例では、オブジェクトの形状、色、又は他の視覚属性に基づいてオブジェクトを識別し、この識別を使用してオブジェクトを追跡することを有用とすることができる。視覚検索エンジン３５０１１６を使用したオブジェクト検出は、複数の方法で、例えば、限定されないが図２９ａ、図３０ａ、４００１０８に示すデバイスを含むデバイスでローカルに直接処理することができ、この場合に、インターネット接続は必要ないか、又は多くのリソースを提供することができるネットワーキング構成であり、それによってより良い性能を提供する。視覚検索スレッド３５０１１６は、画像処理を終了した後で主スレッド３５０１１２に通知することができる。オブジェクトが見出されなかった３５０１１４場合に、走行距離計測追跡器３５０１１２  ３４０１０２は追跡３５０１０４を継続することができる。そうでなければ、走行距離計測追跡器３５０１１２  ３４０１０２が最後の視覚検索がトリガされてから追跡を失っていないか否かを検査することができる。追跡３５０１０８を失った場合に、視覚検索３５０１１６の結果を無視することができる。そうでなければ、現在の画像で検出されたオブジェクトの場所を更新する３５０１１０ことができる。いずれにせよ、主スレッド３５０１１２は追跡３５０１０１４を継続することができる。
【０２０３】
様々な例では、検出されたオブジェクトの数が変わる場合がある。数百のオブジェクトを画像上の同じレベルで検出することができる。それらのオブジェクトが固定されていると仮定すると、それらは、視覚走行距離計測及び視覚検索の組合せを使用して正しく位置決めすることができる。
【０２０４】
図２５ｂは、本明細書のシステム及び方法の１つの可能な使用事例の例示を示している。この例では、限定されないが図２９ａ、図３０ａ、４００１０８を含むカメラ３５０２０が経路３５０２０２に沿って移動し、限定されないが図２９ａ、図３０ａ、４００１０８に示すデバイスを含むカメラによって送られる着信画像３５０２０４を追跡する。一部の例では、同時に又は実質的に同時に画像３５０２０４が背景スレッド上の視覚検索エンジン３５０１１６によって処理されてオブジェクトを検出する。視覚検索エンジン３５０１１６がオブジェクトを検出した状態で、視覚検索エンジン３５０１１６は主スレッド３５０１１２に通知することができる。主スレッド３５０１１２は、背景スレッドによって与えられた結果を使用して見出されたオブジェクトの絶対ポーズを更新することができる。
【０２０５】
図２５ｃは、例示的システム及び方法の第２の可能な使用事例の例示を示している。この例では、限定されないが図２９ａ、図３０ａ、４００１０８に示すデバイスを含むカメラ３５０３０６が経路３５０３０２に沿って移動し、限定されないが図２９ａ、図３０ａ、４００１０８に示すデバイスを含むカメラによって送られる着信画像３５０３０４を追跡する。視覚走行距離計測３５０１１２は、着信画像３５０３０４がキーフレーム３５０３０８であるか否かを決定する。視覚走行距離計測システム３５０１１２のキーフレーム３５０３０８は、キーフレーム３５０３０８に対する相対位置を計算するためのキーフレーム以外のフレームに使用される深度マップと位置とを有するフレームであり、キーフレームの深度マップを調節する。キーフレームは、新しいキーフレームが作成されるまで全ての続くフレームに対する基準として使用される。２つのキーフレーム間のフレームは、時間と共にキーフレームの各個々のフレームで収集された情報を組み合わせることによって最後のキーフレームの精度を改善する。
【０２０６】
視覚検索エンジン３５０１１６は着信画像を処理し、前に定義されたキーフレーム３５０３０８を見出すことができる。視覚検索エンジン３５０１１６は、絶対場所が視覚検索エンジン３５０１１６によって見出されるキーフレーム３５０３０８に対して既知であることを意味する既知の位置を有する画像のセットを有する。視覚検索エンジンスレッド３５０１１６は、キーフレームを見出すと直ちに主スレッドに通知することができる。この結果を使用して、仮想走行距離計測だけしか各キーフレームの仮想ポーズを提供できず、時間を通じて十分安定してないことが多いので、主スレッドがカメラ絶対ポーズを計算することができる。
【０２０７】
図２６ａは、限定されないが４００１０６、図２９ｃを含むコンピュータデバイスで実行される幾何学メッシュを使用することによる３Ｄマーカ発生の例示的ワークフローの例示３６０１００を示している。３Ｄスキャナアプリケーション３６０１１０は、一部の実施形態では継続して、キーフレームに対するポーズと組み合わせてキーフレーム３６０１１２の推定された深度マップ３６０１１４を使用して背景スレッド３６０１２０で点クラウド３６０１２４を発生させる３６０１２２ことができる。キーフレーム内のピクセルの深度値は、例えば、光学フローを使用して推定３６０１１３され、従って、深度マップ３６０１１４をこの深度推定に基づいて構築することができる。深度値の推定及び深度マップの作成は走行距離計測追跡器３４０１０２によって実行することができる。
【０２０８】
一部の例示的実施形態では、これに代えて又はこれに加えて、シーンの３Ｄメッシュ３６０１３３を作成３６０１３２するのに使用される点クラウド３６０１２４をボクセルツリーに格納し、個別のスレッドに行われる性能を改善することができる。深度マップ３６０１１３を使用して発生された点クラウド３６０１２４は、濾過点クラウド３６０１２５がメッシュ３６０１３３を発生させるのに使用することができる前に濾過することができるノイズを含有する場合がある。ボクセルは、３次元空間での体積ピクセルである。ある一定の実施形態ではボクセルツリーを使用することでこのフィルタリング処理３６０１２６を高速化することができる。ボクセルツリーは、空間データと一緒に機能するように設計されたデータ構造（オクトツリー）であり、従って、点クラウド３６０１２４から３Ｄ点を処理するための優良な性能を提供することができる。ノイズ点を平滑化して除去することによって点クラウド３６０１２４  ３６０１２６を濾過することができる。点クラウド３６０１２４  ３６０１２６を濾過するためにボクセルツリーを使用することで、ノイズ点の数を低減することができ、従って、点クラウドを最適化し、更に別の演算に対して性能を改善することができる。同じく、得られる３Ｄメッシュ３６０１３３の誤差を低減することができる。
【０２０９】
３Ｄメッシュ３６０１３３作成処理は、入力ソースとして濾過３６０１２５又は濾過されていない点クラウド３６０１２４及びキーフレームポーズを使用する。処理の第１の反復として、本発明のシステムは入力点クラウドにおける各点の法線ベクトルを計算することができる。各点の法線ベクトルは、その近くの点に基づいて計算される。次の反復として、３Ｄメッシュ３６０１３３作成システムは、点が属するキーフレームのカメラポーズに向けた各点の法線ベクトルを検査及び方位付けすることができる。
【０２１０】
入力として法線ベクトルを有する点クラウドを取ることにより、本発明のシステムは３Ｄメッシュ再構成を実行することができる。本発明のシステムは、本発明のシステムの性能、得られる３Ｄメッシュ３６０１３３の詳細の精度、品質を制御するために深度、及びいくつかのサンプルパラメータを使用することができる。本発明のシステムは、得られる３Ｄメッシュ３６０１３３のデータ構造特性を利用して得られる３Ｄメッシュ３６０１３３を切り取ってより良い品質の３Ｄモデルを達成することができる。更に、本発明のシステムは、テクスチャ３６０１３４を作成された３Ｄメッシュ３６０１３３に適用することができる。
【０２１１】
一部の実施形態では、本発明のシステムは、オブジェクトから構築された３Ｄメッシュが関連付けられた間違った点を有することを認識することができる。この例では、オブジェクトはボックスであるが、ボックスから離れた１つのピクセルがあり、考えられる場合に、オブジェクトの一部はこれをボックスにしない。本発明のシステムは、既知の特徴のアルゴリズムを使用することができ、この例ではボックスが等しい寸法の６つの辺を有することを知り、間違った点を識別してこの点を３Ｄメッシュから切り取る。このアルゴリズムは、点と既知の相対的距離を比較するか、又は入力形状と比較することができる。誤差に含まれる点は、３Ｄメッシュから切り取って外すことができる。
【０２１２】
一部の例示的実施形態では、これに代えて又はこれに加えて、テクスチャ投影３６０１３４を作成されたメッシュ３６０１３３と共に任意の段階として使用して、３Ｄメッシュに特定の外見を与えることができる。例えば、本発明のシステムは、家の３Ｄメッシュを作成してカメラ画像を使用してその写真を家に投影する。換言すると、メッシュは、そのテクスチャとして対応するキーフレーム３６０１１２を有することができる。異なるオプションがテクスチャ投影３６０１３４に与えられ、単一テクスチャを投影する及び１つのメッシュに複数のテクスチャを組み合わせる。単一テクスチャ投影３６０１３４は、最新のキーフレーム画像を３Ｄメッシュに投影することができる。一部の事例では、メッシュの最大部分がキーフレームによって覆われていないのでテクスチャ化されないまま残る。そのような例では、マルチテクスチャ投影３６０１３４が加えられた時に、複数のキーフレーム画像を３Ｄメッシュに投影３６０１３４することができ、キーフレームを重ねた区域で異なるキーフレームを単一テクスチャに統合することができる。複数のキーフレームを単一テクスチャに統合することは、メッシュ面にキーフレームの距離及びメッシュ面に対してキーフレームの角度を重み付けすることによって行われる。この処理は、テクスチャ化されたメッシュ３６０１３８のより良い品質を提供し、テクスチャメッシュのテクスチャ化されていない領域を低減することができる。複数のキーフレームがテクスチャを発生させるのに使用された時に、メッシュのテクスチャの各部分に対する最適なキーフレームを使用して全体的なテクスチャ品質を改善することができる。結果は、メッシュのテクスチャの各部分に最適なキーフレームを使用するだけでなく、代わりにメッシュのテクスチャのこの部分のテクスチャを発生させるためにキーフレームの組合せを使用することによって更に強化することができる。
【０２１３】
それらの例では、ユーザは、このテクスチャ化されたメッシュ３６０１３８を３Ｄモデル及び限定されないが図３０ａに示すデバイスを含むデバイス上の対応するキーフレーム３６０１１２に保存するか又はメッシュを廃棄３６０１３５することができる。キーフレーム３６０１１２を使用して、物理的シーンの上の拡張現実オーバーレイとして使用された時の仮想シーン内の追跡処理に必要とされるキーポイントを抽出することができる。
【０２１４】
ある一定の例では、ブラウザ３６０１４０で、作成されたテクスチャメッシュ３６０１３８を仮想シーンの通常の３Ｄモデルとして又は物理的シーンの上の拡張現実オーバーレイとして使用される時の仮想シーンの３Ｄマーカ３６０１４４として使用することができる。ユーザの視点から、仮想シーンに対して３Ｄマーカ３６０１４４としてテクスチャメッシュ３６０１３８に注釈を付ける３６０１４２ことは、注釈処理に対して点クラウド３６０１２４を使用するよりも効率的かつユーザに対して使い易い方法とすることができる。
【０２１５】
図２７ａは、限定されないが４００１０６を含むコンピュータデバイスで実行することができるリアルタイムでのメッシュ発生の例示的使用を示している。単眼追跡例３７０１０２中に、新しいキーフレーム３７０１０３が見出される度に、新しいキーフレームの深度情報が、走行距離計測システムによって推定３７０１０４され、この深度推定３７０１０４から深度マップを再構成してメモリ４００１１４に格納することができる。深度マップ３７０１０５を点クラウド作成処理３７０１０６の入力として使用することができ、対応する点クラウド３７０１０７を発生させることができる。この点クラウド３７０１０７を最終段階と幾何学メッシュ発生段階３７０１０８とに使用することができ、それによって３Ｄメッシュ３７０１０９を点クラウド入力３７０１０７に基づいて再構成することができる。
【０２１６】
作成されたメッシュ３７０１０８は、ユーザがシーンを移動している間にシーンの高速又はリアルタイム構築を要求することが多い異なる使用シナリオに使用することができる。物理的シーンの仮想オブジェクトの現実的拡張に対して、３Ｄメッシュ３７０１０９を以下の方式のあらゆる組合せに使用することができる。
【０２１７】
３Ｄメッシュ３７０１０９を例えば幾何学メッシュ３７０１０９の面の上部で仮想オブジェクトを移動する物理的シミュレーション３７０１１０の追跡中に見えない層として使用することができる。
【０２１８】
リアルタイムに作成された３Ｄメッシュ３７０１０９を物理的オブジェクトの後ろの仮想オブジェクトの補正閉塞３７０１１２に使用することができる。ユーザの視点から、この作成された３Ｄメッシュは既存の物理的オブジェクトと同じ形状及び場所を有する。３Ｄメッシュは、ユーザがメッシュを見ないことになることを意味する不可視とすることができるが、他の仮想オブジェクトを個別に表示するのに使用することができる。ユーザの視点から不可視である３Ｄメッシュの背後にある仮想オブジェクトの全部又は一部はレンダリングされない。ユーザの視点から、これは、物理的オブジェクトが仮想オブジェクトを閉塞するように見える。例えば、物理壁の背後に仮想オブジェクトを置くと、それによってユーザが物理的シーンの周りを移動した時に、物理壁がこれを閉塞しない場合に仮想オブジェクトだけが目に見える。
【０２１９】
仮想オブジェクトへの照明を物理シーンに正しく加え、他方では物理シーンの状態を仮想オブジェクトに加えなければならないので、３Ｄメッシュ３７０１０９を照明３７０１１４に使用することができる。例えば、物理的テーブルの下に配置される仮想オブジェクトは、テーブルの上部に配置されたオブジェクトとは個別に照らしなければならない。
【０２２０】
３Ｄメッシュ３７０１０９は、物理的オブジェクト上の仮想オブジェクトの影付け３７０１１６及び仮想オブジェクト上の物理的オブジェクトの影付けに使用することができる。仮想オブジェクトは、他の仮想オブジェクトと対話するだけでなく物理シーンの表現として再構成済み３Ｄメッシュ３７０１０９を要求する物理的シーンと対話しなければならない影を現実的に受け入れて影付けすべきである。
【０２２１】
濾過の例
【０２２２】
図２８ａは、コンピュータデバイス４００１０６を使用した３６０°画像融合の抽象概念を示している。３６０°画像は、球面カメラ３９０１０２によって発生させることができ、融合は、コンピュータデバイス４００１０６で実行することができる。フィルタを使用することによって複数の３６０°画像３８０１０２を１つの改良された画像３８０１０４に統合することができる。それらの画像３８０１０２は、１つのトライポッドで例えば３６０°カメラによって達成することができる同じ位置から撮影することができる。そのような例では、最小限度の２つの３６０°画像を使用することができ、使用される入力画像が多い程、結果の濾過画像の品質も良くなる。画像を統合するのに使用されるフィルタは中間又は高ダイナミックレンジフィルタとすることができるが、追加のフィルタも可能である。メジアンフィルタを使用して、劣悪な照明状態から人間のような動くオブジェクトを取り除き、画像ノイズを低減することができる。高ダイナミックレンジフィルタは、複数の３６０°画像から１つのＨＤＲ３６０°画像を発生させる。
【０２２３】
図２８ｂは、メジアンフィルタを使用した複数の３６０°画像の融合を示している。３６０°画像は、球面カメラ３９０１０２によって発生させることができ、融合は、コンピュータデバイス４００１０６で実行することができる。表示された３６０°画像３８０２２１はシーンを移動した人３８０２０６を含有し、画像が撮影され、劣悪な照明状態からノイズ３８０２０８を変化させる。ドット３８０２０４は、図示の２つの３６０度画像よりも多くが同じ位置から撮影され、フィルタの入力として使用されたことを示している。メジアンフィルタは、各画像の個々のピクセルを比較して、繰返し同じに留まる区域を認識することができ、同時に画像に応答して変化する区域を除去する。結果の３６０°画像３８０２１０は、ノイズなしの静的背景だけを含有する。この例が人を使用する場合に、他の移動するオブジェクトも除去することができる。
【０２２４】
図２８ｃは、高ダイナミックレンジフィルタを使用した複数の３６０°画像の例示的融合を示している。３６０°画像は球面カメラ３９０１０２によって作成され、融合は、コンピュータデバイス４００１０６で実行されたものである。上部の行は、詳細であるが少ないハイライト情報３８０２０２を有する３６０°画像及びハイライト詳細であるが少ない影情報３８０３０４を有する３６０°画像を含むオリジナル３６０°画像を示している。ドット３８０３０６は、図示の２つの３６０°画像よりも多くが変化する露出で同じ位置から撮影され、フィルタの入力として使用されることを示している。高ダイナミックレンジフィルタは、異なる３６０°画像の露出データを使用して、それらを全ダイナミックレンジ３８０３０８を含有する新しい３６０°画像に組み合わせる。
【０２２５】
図２９ａは、３６０°又はそれ未満の広い視野３９０１０６を有する画像を撮影するための球面又はパノラマカメラ３９０１００を示している。図２９ａは、説明したカメラの表現として使用される球面又はパノラマカメラ３９０１００の１つの例示的な図である。球面又はパノラマカメラ３９０１００は少なくとも２つのレンズ３９０１０４を有し、各々が合計の可能な３６０°の異なる視野を覆う。最終パノラマ又は球面画像を得るために、各レンズ３９０１０４の各画像３９００８は、デバイス３９０１０２のソフトウエア内で自動的に縫合することができる。
【０２２６】
図２９ｂは、移動アーキテクチャ３９０２０６に取り付けられた１又は２以上のレンズ３９０２０４を有する１つよりも多いカメラ３９０２０２を有するリグ構成３９０２００の例を示している。図２９ｂは、３６０°又はそれ未満の視野３９０２０８を有する広範囲球面又はパノラマ画像を撮影するためのリグアーキテクチャ３９０２００の１つの例示的な図である。この例の各カメラ３９０２０２は、画像３９０２１０を同時に撮影する。各カメラの画像３９０２１０は、他のカメラ３９０２０２の対応する画像３９０２１０と共に縫合されて全視野３９０２０８を覆うことができる。
【０２２７】
図２９ｃは、１又は２以上のカメラレンズ３９０３０６及び／又は１又は２以上の他のセンサ３９０３０４を含むある一定の実施形態によるコンテンツ作成のための３Ｄスキャナ３９０３０２を示している。他のセンサ３９０３０４は、限定されないが、赤外線センサ、レーザ、音、レーダー、カメラ、ＧＰＳ、又は他の測距システムのいずれの組合せも含むことができる。スキャナ３９０３０２によって覆われる範囲３９０３０８は、レンズ３９０３０６及びセンサ３９０３０４がデバイス３９０３０２に配置される場所に応答していずれの方向にも変えることができる。これは、限定されないが、３Ｄスキャナを取り囲む完全な部屋の３Ｄ走査及び単一個別オブジェクト走査を含む。対応するデバイス３９０３０２を使用した３Ｄ走査処理の結果は、３Ｄ空間における点のセット、並びに異なる幾何学的エンティティ及び／又は色のようなそれらの点に関連付けられた潜在的な追加情報を含むモデルとすることができる。対応するデバイス３９０３０２を使用した３Ｄ走査処理から発生するモデルは、本明細書のシステム及び方法への入力リソースとして作用することができ、それによってそれらは使用、処理、及び／又は強化される。
【０２２８】
図２９ｄは、物理的面３９０４０８、並びに１又は２以上の物理的入力デバイス３９０４０４  ３９０４０６を含む本明細書のシステム及び方法に従ってコンテンツ作成に使用されるデジタル描画３９０４０２のための例示的グラフィックタブレットを示している。物理的面３９０４０８は、物理的入力デバイス３９０４０４  ３９０４０６によって作成された入力を検出し、これをプロセッサ、ランダムアクセスメモリ、及び演算のための潜在的な追加の構成要素を使用してデジタルグラフィカル情報に翻訳するか、又は検出された入力情報をデジタルグラフィカル情報の作成のための別のコンピュータデバイスに送信することができる。物理的面３９０４０８で入力情報を発生させるための物理的入力デバイスは、限定されないが、ユーザの手３９０４０６及びスタイラス３９０４０４、すなわち、ペン式の描画装置を含むことができる。
【０２２９】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、様々なコンピュータデバイスを使用することができる。図３０ａは、限定されないがスマートフォン及びタブレットを含む移動デバイス４００１０２、又は限定されないがパーソナルコンピュータ４００１２２を含む固定デバイスのあらゆるタイプとすることができるコンピュータデバイス４００１０６を示している。移動デバイス４００１０２は、持ち運び可能４００１０４であるように十分軽くて小さい。コンピュータデバイス４００１０６はいくつかの構成要素を含むことができる。それらの構成要素は、単一オールインデバイスに含むか、又は一緒に機能する複数のデバイスにわたって分散させることができる。コンピュータデバイス４００１０６は、エネルギソース４００１２０の機能を必要とする技術デバイスである。演算に関して、いくつかのハードウエア構成要素、計算を実行するためのＣＰＵ４００１１２及びＲＡＭ４００１１４、及びソフトウエア及び他のファイルを格納するためのある種類のデータストア４００１１６を使用することができる。ＧＰＵ４００１１８を使用して視覚処理を実行することができる。ディスプレイ４００１１０は情報及び他の任意の事柄をユーザに表示することができる。一部のディスプレイ４００１１０を使用して、限定されないがタッチ入力を含むコンピュータデバイス４００１０６と対話することができる。カメラ４００１０８を使用して周囲を取り込むことができる。
【０２３０】
これに加えて又はこれに代えて、本明細書のシステム及び方法は、様々な表示デバイスを使用することができる。図３０ｂは、ユーザの眼のための２つのレンズ４００２０２、スマートフォン又は類似のコンピュータ／表示デバイスが配置される場所及び次に位置４００１０６に運ばれる区域又は装置４００２０８を含む非制限的な例示的ヘッド装着式表示デバイス４００２００を示し、それによってデバイスのディスプレイがレンズ４００２０２の前にきてユーザが２つのディスプレイで半分ずつ明確に見える。更に、ヘッド装着式デバイス４００２００の後ろ側４００２０４に適切に取り除かれた区域４００２０８を存在させることができ、それによってスマートデバイスのカメラがヘッド装着式デバイス４００２００に配置されたままにしてライブストリームビューを送信することができる。取りわけヘッド装着式デバイス４００２００に含有することができる一体型構成要素が図３０ａに詳しく示されている。
【０２３１】
図３０ｃは、２つのレンズ４００３０４（図３０ｂの４００２０２と比較）及びレンズ４００３０４に対して配置されるディスプレイ４００３０２を含むヘッド装着式デバイス４００３００を示し、それによってデバイス４００３００がユーザの頭部上に装着された時にユーザに見えるようなる。デバイスの画面４００３０２に表示されたコンテンツは、限定されないが、仮想シーンをレンダリングするための演算パワーを提供する図３０ａに示すデスクトップコンピュータを含む外部ソースに接続４００３０６を通じて提供される。取りわけ、ヘッド装着式デバイス４００３００に含有することができる追加の構成要素が図３０ａに示されている。
【０２３２】
図３０ｄは、移動電話のようなスマートデバイス４００４０４を配置することができる装着システム４００４０２を含む例示的ヘッド装着式デバイス４００４００を示している。この例は、これをユーザの眼４００４０６に反射させることによって画面４００４０４に表示されたコンテンツを示すパッシブディスプレイ４００４０８を含む。一部の例では、このパッシブディスプレイを半透明にして、拡張現実オーバーレイとして物理的世界と組み合わせた仮想コンテンツを表示することができる。取りわけ、ヘッド装着式デバイス４００４００に含有することができる追加の構成要素を図３０ａに詳しく示している。
【０２３３】
図３０ｅは、外部のコンピュータシステムを必要とすることなくヘッド装着式デバイス４００５００に行われる全ての必要な計算及びレンダリングを可能にするユーザの頭部上に装着された投影器４００５０２及びオンボード処理ユニット４００５０４を含む例示的ヘッド装着式デバイス４００５００を示している。この例における投影器は、ユーザの眼４００５０６に直接に又は半透明とすることができる面４００５０８を通じて表示画像を投影し、拡張現実オーバーレイとして物理的世界と組み合わせた仮想コンテンツを表示することができる。ヘッド装着式デバイス４００５００に含有することができる追加の構成要素を図３０ａに詳しく示している。
【０２３４】
図３０ｆは、外部コンピュータシステムを必要とすることなくヘッド装着式デバイス４００５００に行われる全ての必要な計算及びレンダリングを可能にする投影器４００５０４及びオンボード処理ユニット４００５０２を含む例示的ヘッド装着式デバイス４００６００を示している。この例における投影器４００５０４を使用してデジタルコンテンツを物理的シーン４００５０６に投影することができ、それによってユーザ及び他のユーザは、ユーザの眼に直接にコンテンツを投影する必要なく仮想コンテンツを見ることができる。取りわけ、ヘッド装着式デバイスに含有することができる追加の構成要素を図３０ａに詳しく示している。
【０２３５】
これに加えて又はこれに代えて、図３１ａは、限定されないが、スマートフォン又はタブレットを含むスマートデバイス４１０１０１、スマートデバイス４１０１０１に取り付けられたセンサ構成要素４１０１０２、及び投影器システム４１０１０６を含むスマートデバイスを含み、このスマートデバイス４１０１０１で作成された画像を受信し、これをターゲット投影面４１０１０４に投影する拡張システム４１０１００を示している。そのような面４１０１０４は、スマートデバイス１４０１０１からのデジタルコンテンツに重ねられる。センサ４１０１０２は、限定されないが、加速度計、ジャイロスコープ、コンパス、ＧＰＳ、及び／又はカメラを含むことができる。センサ４１０１０２は、スマートデバイス４１０１０１によって使用され、面区域４１０１４に正確に位置合わせされた仮想コンテンツを投影することができる。ユーザの視野４１０１０３に、投影器の視野４１０１０５の一部を重ねることができ、それによってユーザは、現実の環境４１０１０４の上部に拡張コンテンツを見ることができる。そのような拡張コンテンツは、取りわけ、取り込まれた球面３６０°画像又は過去に記録されたビデオコンテンツとすることができ、オリジナル記録が生じてから物理的位置に生じた変化をユーザに表示するために取り込まれた場所と同じ物理的位置に投影される。球面画像の正確な部分が、組み込みセンサ４１０１０２を使用して位置合わせされ、又はユーザによる手動位置合わせも可能である。
【０２３６】
図３１ｂは、投影器４１０２０１、センサ、及びコンピュータユニット４１０２０２を含むヘッド装着式デバイス４１０２０６を使用する拡張システム４１０２００を示している。センサ４１０２０２は、限定されないが、加速度計、ジャイロスコープ、コンパス、ＧＰＳ、及び／又はカメラを含むことができる。ヘッド装着式デバイス４１０２０６は、物理的シーン４１０２０４に仮想画像を投影する。この物理的面４１０２０４に、投影器の視野４１０２０５及びヘッド装着式デバイス４１０２０６のセンサ４１０２０２によって計算された物理的シーンの投影器ポーズに基づいて投影器４１０２０１から位置合わせされた仮想コンテンツが重ねられる。図３１ａに示す拡張システム４１０１００の代わりに図３１ｂに示すヘッド装着式デバイス４１０２０６を使用することは、限定されないが、ユーザがヘッド装着式デバイス４１０２０６を装着するのでユーザの頭部に対するヘッド装着式デバイス４１０２０６の場所が変化せず、投影器は常にユーザが環境４１０２０４を見る方向にユーザの画像を投影するようにヘッド装着式システム４１０２０６を位置合わせすることができ、ユーザはヘッド装着式デバイス４１０２０６を使用しながら両手を自由に使えるにも関わらず、ユーザが使用したい時は何時でもヘッド装着式デバイス４１０２０６を使用することができることを含む利益を有する。ユーザの視野４１０２０３は、投影器の視野４１０２０５に重なっている。ユーザの眼に対する投影器４１０２０１の場所を知ることで、ヘッド装着式デバイス４１０２０６が正しい視野で拡張コンテンツを投影することを可能にする。拡張コンテンツは、現実の環境４１０２０４の上部に投影される。拡張コンテンツは、限定されないが過去に記録された３６０°画像又は映像を含む。この例示的使用事例に対して、拡張コンテンツは、拡張コンテンツが記録されて以降に物理的位置に生じた変化をユーザに表示するために元来撮影された環境４１０２０４の同じ物理的位置に投影される。拡張コンテンツは、埋め込み式センサ４１０２０２を使用して自動的に又はユーザによって手動で現実の環境４１０２０４に位置合わせすることができる。
【０２３７】
図３１ｃは、ユーザ４１０３０１が取り付けられたセンサ４１０１０２  ４１０２０２及び投影器４１０３０３を有するコンピュータデバイス４１０３０２を使用して、仮想コンテンツ４１０３０７を物理的面４１０３０６にどのように投影するかを示す処理の詳細を表している。
【０２３８】
限定されないが、物理的環境４１０３０６を拡張するために仮想コンテンツとして後に使用すべきである３６０°画像及びビデオを含むコンテンツを取り込んだ時に、このコンテンツは追加のメタ情報によって強化することができる。この追加のメタ情報は、限定されないが位置及び方位を含むことができる。センサ４１０１０２  ４１０２０２が利用可能である時に、それらを使用してこの情報を取得することができる。そうでなければ又はセンサの使用に加えて、メタ情報を手動で設定することができる。このメタ情報は、コンテンツと共に保存するか又は別々に格納することができる。コンテンツを物理的環境４１０３０６の上部に投影しなければならない時にこのメタ情報を自動位置合わせに使用することができる。
【０２３９】
コンピュータデバイス４１０３０２は、物理的面４１０３０６に投影器４１０３０３によって投影される全体的仮想シーン４１０３０４から投影器４１０３０３によって投影される仮想シーン４１０３０７の部分を計算することができる。デバイス４１０３０２の物理的位置及び方位は、仮想シーン４１０３０４の仮想カメラに適用することができ、それによってこの仮想カメラは物理的投影器４１０３０３が物理的シーン４１０３０６を移動するのと同様に仮想シーン４１０３０４を動く。仮想カメラの視野は、物理的投影器の視野４１０３０５と同一の値を使用して、それによって投影された画像４１０３０７は、物理的面４１０３０６の上部に一致する。
【０２４０】
デバイスの方位及び位置は、限定されないがコンピュータデバイス４１０３０１の視覚追跡システムを含むセンサを使用して自動的に計算することができる。３５０１００に示すような視覚追跡システムは、他のデバイスセンサと組み合わせて物理的シーン４１０３０６の特徴を使用して絶対大域的場所を計算し、限定されないがＧＰＳ及び方位データを含む仮想シーン４１０３０７のメタデータを使用することによって物理的シーン４１０３０６に仮想オーバーレイ４１０３０７を位置合わせすることができる。
【０２４１】
仮想シーン４１０３０７のセクションの手動位置合わせは、全体仮想シーン４１０３０６の示されたセクション４１０３０７をユーザ４１０３０１が調節することを可能にするためにコンピュータデバイス４１０３０２の入力を使用してユーザ４１０３０１によって実行することができる。手動位置合わせは、自動位置合わせで置換され、従って、センサ４１０１０２  ４１０２０２なしにコンピュータデバイス４１０３０２をサポートすることができる。手動位置合わせは、仮想コンテンツ４１０３０４のメタデータが利用可能でないか又は間違っている場合にユーザ４１０３０１によって使用される。これに代えて、手動位置合わせを自動位置合わせに加えて使用することができる。自動位置合わせの後の手動位置合わせの利益は、限定されないが、物理的シーンによる歪みを補正し、コンピュータデバイス４１０３０２のセンサ４１０１０２  ４１０２０２の追跡誤差を補正することを含む。
【０２４２】
限定されないが３６０°画像及びビデオを含む示された仮想コンテンツ４１０３０４は、データが取り込まれた時にカメラの北の方位４１０３０９を含む必要なメタ情報を格納している。このメタ情報は、仮想シーン４１０３０４の方位を調節するのに使用され、それによって仮想シーン４１０３０４の北の方位４１０３０９は、ユーザ４１０３０１が立っている物理的シーン４１０３０９の北の方位４１０３０８に位置合わせされる。
【０２４３】
この仮想コンテンツ４１０３０４が北の方位４１０３０９のような必要なメタ情報を欠く場合に、物理的シーン４１０３０６に位置合わせされるようにユーザ４１０３０１によって手動で回転される。
【０２４４】
結論
【０２４５】
本明細書に開示するように、この実施形態に一致する特徴は、コンピュータハードウエア、ソフトウエア、及び／又はファームウエアを通じて実施することができる。例えば、本明細書に開示するシステム及び方法は、例えば、データベース、デジタル電子回路、ファームウエア、ソフトウエア、コンピュータネットワーク、サーバ、又はその組合せを含むコンピュータのようなデータプロセッサを含む様々な形態を用いて実施することができる。開示する実施の一部は特定のハードウエア構成要素を説明するが、本明細書の革新に一致するシステム及び方法は、ハードウエア、ソフトウエア、及び／又はファームウエアのあらゆる組合せによって実施することができる。上述の特徴及び他の態様及び本明細書の革新的原理は、異なる環境を用いて実施することができる。そのような環境及び関連の用途は、実施形態に従って異なるルーチン、処理、及び／又は作動を実行するように特別に構成することができ、又は必要な機能を提供するためにコードによって選択的に起動又は再構成される汎用コンピュータ又はコンピュータプラットフォームを含むことができる。本明細書に開示する処理は、あらゆる特定のコンピュータ、ネットワーク、アーキテクチャ、環境、又は他の装置に独自に関連付けられることなく、ハードウエア、ソフトウエア、及び／又はファームウエアの適切な組合せによって実施することができる。例えば、様々な汎用機械を実施形態の教示に従って書かれたプログラムと共に使用することができ、又は望ましい方法及び技術を実行するために専用装置又はシステムを構成することが有益である場合もある。
【０２４６】
論理部のような本明細書に説明する方法及びシステムの態様は、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）、プログラマブルアレイ論理（「ＰＡＬ」）デバイス、電子的プログラマブル論理及びメモリデバイス及び標準的セルベースのデバイス、並びに特定用途向け集積回路を含む様々な回路のいずれかにプログラムされた機能として実施することができる。態様を実施するための一部の他の可能性は、メモリデバイス、メモリを有するマイクロコントローラ（ＥＥＰＲＯＭなど）、埋め込み式マイクロプロセッサ、ファームウエア、ソフトウエアなどを含む。更に、態様は、ソフトウエアベースの回路エミュレーション、離散的論理部（順次及び組合せ）、カスタムデバイス、ファジー（神経）論理、量子デバイス、及び上述のデバイスタイプのいずれかのハイブリッドを有するマイクロプロセッサを用いて実施することができる。基礎となるデバイス技術は、様々な構成要素タイプ、例えば、相補型金属酸化膜半導体（「ＣＭＯＳ」）のような金属酸化膜半導体電界効果トランジスタ（「ＭＯＳＦＥＴ」）技術、エミッタ結合型論理（「ＥＣＬ」）のようなバイポーラ技術、高分子技術（例えば、シリコン共役ポリマー及び金属共役ポリマー金属構造）、アナログ及びデジタル混合のような様々な構成要素タイプで提供することができる。
【０２４７】
本明細書に開示する異なる論理及び／又は機能は、その挙動、レジスタ転送、論理構成要素、及び／又は他の特性の点から様々な機械可読又はコンピュータ可読媒体を用いて実施されるハードウエア、ファームウエアの組合せのあらゆる数を使用して及び／又はデータ及び／又は命令として使用することを可能にすることができることに注意しなければならない。そのようなフォーマット済みデータ及び／又は命令を実施することができるコンピュータ可読媒体は、限定されないが、異なる形態の不揮発性ストレージ媒体（例えば、光学、磁気、又は個体ストレージ媒体）及びそのようなフォーマット済みデータ及び／又は命令を無線、光学、又は有線信号伝達媒体又はこのあらゆる組合せを通じて転送するのに使用することができる搬送波を含む。搬送波によるそのようなフォーマット済みデータ及び／又は命令の転送の例は、限定されないが、１又は２以上のデータ転送プロトコル（例えば、ＨＴＴＰ、ＦＴＰ、ＳＭＴＰなど）を通じたインターネット及び／又は他のコンピュータネットワーク上の転送（アップロード、ダウンロード、電子メールなど）を含む。
【０２４８】
文脈が他に明確に要求しない限り、本説明及び特許請求の範囲を通じて「ｃｏｍｐｒｉｓｅ」、「ｃｏｍｐｒｉｓｉｎｇ」などは、限定的又は網羅的な意味とは対照的に包含的な意味で解釈しなければならず、すなわち、「限定されないが含む」の意味である。単数又は複数を使用する語は、それぞれ複数又は単数を含む。更に、「ｈｅｒｅｉｎ」、「ｈｅｒｅｕｎｄｅｒ」、「ａｂｏｖｅ」、「ｂｅｌｏｗ」、及び類似の意味の語は、全体としてこの出願を指し、この出願のあらゆる特定の部分を指すものではない。「ｏｒ」という語が２又は３以上の項目のリストに関して使用される時は、この語は、語の次の解釈の全て、すなわち、リストの項目のいずれか、リストの項目の全て、及びリストの項目のいずれの組合せも網羅する。
【０２４９】
本説明のある一定の現在好ましい実施を本明細書に具体的に説明したが、本明細書に図示及び説明した様々な実施の変形及び修正を実施形態の精神及び範囲から逸脱することなく実行することができることは本説明が関わる当業技術の当業者には明らかであろう。従って、実施形態は、適用可能な法律の原則によって望ましい程度にのみ制限されるものとする。
【０２５０】
本発明の実施形態は、それらの方法を実施する方法及び装置の形態を用いて実施することができる。この実施形態は、フロッピーディスケット、ＣＤ−ＲＯＭ、ハードドライブ、又はあらゆる他の機械可読ストレージ媒体のような有形媒体に組み込まれたプログラムコードの形態を用いて実施することができ、プログラムコードがコンピュータのような機械にロードされて実行された時に、この機械は実施形態を実施するための装置になる。この実施形態は、プログラムコードの形態とすることができ、例えば、ストレージ媒体に格納され、機械にロードされ、及び／又は機械によって実行され、又は電気配線又はケーブルを通じて、光ファイバを通じて、又は電磁放射を通じてのようなある送信媒体を通じて送信され、プログラムコードがコンピュータのような機械にロードされて機械によって実行された時にこの機械は実施形態を実施するための装置になる。汎用プロセッサを用いて実施された時に、プログラムコードセグメントはプロセッサと組み合わされて特定の論理回路と同様に作動する独自のデバイスを提供する。
【０２５１】
ソフトウエアは、限定されないが、有形ストレージ媒体、搬送波媒体、又は物理的送信媒体を含む多くの形態を取ることができる機械可読媒体に格納される。不揮発性ストレージ媒体は、例えば、いずれかのコンピュータ等におけるストレージデバイスのようなあらゆる光学又は磁気ディスクを含む。揮発性ストレージ媒体は、そのようなコンピュータプラットフォームの主メモリのような動的メモリを含む。有形送信媒体は、同軸ケーブル、コンピュータシステム内のバスを含む電線を含む銅線及び光ファイバを含む。搬送波送信媒体は、電気又は電磁信号の形態、又は無線周波数（ＲＦ）及び赤外線（ＩＲ）データ通信中に作成されるような音響又は光波の形態を取ることができる。従って、コンピュータ可読媒体の共通形態は、例えば、ディスク（例えば、ハード、フロッピー、可撓性）又はあらゆる他の磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤ又はＤＶＤ−ＲＯＭ、あらゆる他の光学媒体、あらゆる他の物理的ストレージ媒体、ＲＡＭ、ＰＲＯＭ及びＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、あらゆる他のメモリチップ、データ又は命令を搬送する搬送波、そのような搬送波を搬送するケーブル又はリンク、又はコンピュータがプログラミングコード及び／又はデータを読み取ることができるあらゆる他の媒体を含む。コンピュータ可読媒体のそれらの形態の多くは、実行のためにプロセッサに１又は２以上の命令の１又は２以上のシーケンスを運ぶ段階に含有されている。
【０２５２】
解説の目的での以上の説明は、特定の実施形態に関して説明したものである。しかし、上述の例示的な説明は、網羅的なものではなく、実施形態を開示する形態に制限するものでもない。多くの修正及び変形が上述の教示の点から可能である。実施形態は、実施形態の原理及びその実際の応用を解説するために選択及び説明され、それによって当業者は、考えられる特定の使用に適合するような様々な修正を有する様々な実施形態を使用することができる。
【０２５３】
様々な例を以下の番号を付けた段落に列挙する。
【０２５４】
ＮＰ１．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階と、画像データに位置をマップする段階と、画像データにマーカをマップする段階と、オブジェクトを画像データ内のマーキングされた位置に挿入する段階とを含む仮想現実シーンを作成する方法。
【０２５５】
ＮＰ２．オブジェクトの挿入が、事前定義されたリストからオブジェクトを選択することによるものであるＮＰ１の方法。
【０２５６】
ＮＰ３．オブジェクトの挿入が、新しく作成されたリストからオブジェクトを選択することによるものであるＮＰ１又はＮＰ２の方法。
【０２５７】
ＮＰ４．コンピュータにより、事象を引き起こすためにオブジェクトにトリガを指定する段階を含むＮＰ１−ＮＰ３のいずれか１つの方法。
【０２５８】
ＮＰ５．トリガがクリック又はモーション検出であるＮＰ４の方法。
【０２５９】
ＮＰ６．事象が、電話番号をダイヤルする、ウェブページを開く、異なるシーンに移る、テキストボックスを表示する、電子メールを送信する、及び音を再生することのうちの少なくとも１つであるＮＰ４又はＮＰ５の方法。
【０２６０】
ＮＰ７．事象が、新しいオブジェクトの表示を引き起こす又は不可視のオブジェクトでオブジェクトを目立たなくすることのうちの少なくとも１つであるＮＰ４−ＮＰ６のいずれか１つの方法。
【０２６１】
ＮＰ８．コンピュータにより、第２の３Ｄ画像データを受信する段階と、第２の画像データに位置をマップする段階と、第２の画像データにマーカをマップする段階と、マップした画像データ及び第２のマップした画像データをデータストレージに格納する段階と、画像データ及び第２の画像データの関係をリンクされたシーンとして示す段階とを更に含むＮＰ１−ＮＰ７のいずれか１つの方法。
【０２６２】
ＮＰ９．オブジェクトが動画化オブジェクトであるＮＰ１−ＮＰ８のいずれか１つの方法。
【０２６３】
ＮＰ１０．オブジェクトがネットワーク上で受信されるＮＰ１−ＮＰ９のいずれか１つの方法。
【０２６４】
ＮＰ１１．オブジェクトが、事前に定義されたオブジェクトのセットから選択されるＮＰ１−ＮＰ１０のいずれか１つの方法。
【０２６５】
ＮＰ１２．画像データが３６０度画像であるＮＰ１−ＮＰ１１のいずれか１つの方法。
【０２６６】
ＮＰ１３  プロセッサとメモリとを有するコンピュータにより、ネットワーク上で画像データを受信する段階と、受信画像データのキーフレームの深度マップをキーフレーム内のピクセルの推定された深度値を使用して推定する段階と、キーフレームの推定深度マップを使用して点クラウドを発生させる段階と、発生された点クラウドを使用して３Ｄメッシュを発生させる段階とを含む仮想現実シーンを作成する方法。
【０２６７】
ＮＰ１４．コンピュータにより、ネットワーク上で第２の画像データを受信する段階と、第２の画像データに対する第２の追跡マーカを受信する段階と、第２の画像データに対する第２のオブジェクトを受信する段階と、第２の追跡マーカを使用して画像、第２の画像データ、及び受信した第２のオブジェクトの表示を引き起こす段階とを更に含むＮＰ１３の方法。
【０２６８】
ＮＰ１５．受信画像データが２又は３次元画像データであるＮＰ１３又はＮＰ１４の方法。
【０２６９】
ＮＰ１６．コンピュータにより、表示のために発生３Ｄメッシュ上にテクスチャを投影する段階を更に含むＮＰ１３−ＮＰ１５のいずれか１つの方法。
【０２７０】
ＮＰ１７．コンピュータにより、オブジェクト閉塞を画像データ内に挿入する段階を更に含むＮＰ１３−ＮＰ１６のいずれか１つの方法。
【０２７１】
ＮＰ１８．画像データが間取図にマップされるＮＰ１３−ＮＰ１７のいずれか１つの方法。
【０２７２】
ＮＰ１９．画像データが時系列に含まれるＮＰ１３−ＮＰ１８のいずれか１つの方法。
【０２７３】
ＮＰ２０．コンピュータにより、テキスト、描画、及び３Ｄ画像のうちの少なくとも１つを含む注釈を追加する段階を更に含むＮＰ１３−ＮＰ１９のいずれか１つの方法。
【０２７４】
ＮＰ２１．コンピュータにより、ネットワーク上で画像データのライブストリーミング表示を引き起こす段階を更に含むＮＰ１３−ＮＰ２０のいずれか１つの方法。
【０２７５】
ＮＰ２２．コンピュータにより、複数のユーザディスプレイ上に画像の表示を引き起こす段階を更に含むＮＰ１４の方法。
【０２７６】
ＮＰ２３．コンピュータにより、画像の顔特徴を検出する段階を更に含むＮＰ１４又はＮＰ２２の方法。
【０２７７】
ＮＰ２４．コンピュータにより、新しい画像シーンの追加を可能にするために画像シーン及び特徴のリストの表示を引き起こす段階を更に含むＮＰ１４、ＮＰ２２、及びＮＰ２３のいずれか１つの方法。
【０２７８】
ＮＰ２５．コンピュータにより、現在選択されているシーンのための編集区域の表示を引き起こす段階を更に含むＮＰ１４及びＮＰ２２−ＮＰ２４のいずれか１つの方法。
【０２７９】
ＮＰ２６．コンピュータにより、マーキングされた場所での画像データ内にオブジェクトを挿入する段階を更に含むＮＰ１４及びＮＰ２２−ＮＰ２５のいずれか１つの方法。
【０２８０】
ＮＰ２７．コンピュータにより、挿入されたオブジェクトの動画を引き起こす段階を更に含むＮＰ２６の方法。
【０２８１】
ＮＰ２８．コンピュータにより、対話によって画像シーン内のユーザによって起動されるトリガ可能な指令を挿入されたオブジェクトに関連付ける段階を更に含むＮＰ２６又はＮＰ２７の方法。
【０２８２】
ＮＰ２９．トリガ可能な指令が、ウェブページを開く又は異なるシーンに移ることであるＮＰ２８の方法。
【０２８３】
ＮＰ３０．トリガ可能な指令が、テキストボックスの表示を引き起こす又はサウンドを再生することであるＮＰ２８の方法。
【０２８４】
ＮＰ３１．トリガ可能な指令が、電子メールを送信することであるＮＰ２８の方法。
【０２８５】
ＮＰ３２．対話がクリックであるＮＰ２８−ＮＰ３１のいずれか１つの方法。
【０２８６】
ＮＰ３３．システムが、プロセッサとメモリとを有するサーバコンピュータにより、第１のタイムスタンプを含む第１の３Ｄ画像データを受信する段階と、画像データに位置をマップする段階と、画像データにマーカをマップする段階と、画像データ内のマーキングされた位置にオブジェクトを挿入する段階と、第２のタイムスタンプを含む第２の３Ｄ画像データを受信する段階と、第１及び第２のタイムスタンプに従って第１の３Ｄ画像及び第２の３Ｄ画像の表示を引き起こす段階とを含む仮想現実シーンを作成する方法。
【０２８７】
ＮＰ３４．第１の３Ｄ画像シーンが親シーンであり、第２の３Ｄ画像シーンが下位の子シーンであるＮＰ３３の方法。
【０２８８】
ＮＰ３５．第１のタイムスタンプが、第１の３Ｄ画像データに含まれたメタデータであるＮＰ３３又はＮＰ３４の方法。
【０２８９】
ＮＰ３６．第１の３Ｄ画像データが３６０度画像であり、コンピュータが、表示のために球面オブジェクトにテクスチャとして第１の３Ｄ画像を付加するように更に構成されるＮＰ３３−ＮＰ３５のいずれか１つの方法。
【０２９０】
ＮＰ３７．第１の３Ｄ画像の方位が表示のために調節される場合があるＮＰ３６の方法。
【０２９１】
ＮＰ３８．コンピュータにより、表示のために独立してロードするために３Ｄ画像データを各部分にスライスする段階を更に含むＮＰ３６又はＮＰ３７の方法。
【０２９２】
ＮＰ３９．第１の３Ｄ画像がビデオであるＮＰ３３−ＮＰ３８のいずれか１つの方法。
【０２９３】
ＮＰ４０．コンピュータにより、ユーザが画像シーンを閲覧、プレビュー、編集、及び配置するための編集レイアウトの表示を引き起こす段階を更に含むＮＰ３３−ＮＰ３９のいずれか１つの方法。
【０２９４】
ＮＰ４１．編集レイアウトが、画像シーンの画像キャプション及びタイムスタンプを含むＮＰ４０の方法。
【０２９５】
ＮＰ４２．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階と、画像データに位置をマップする段階と、マーカを画像データにマップする段階と、オブジェクトを画像データ内のマーキングされた位置に挿入する段階と、画像データのための間取図を受信する段階と、間取図内の位置の上への受信３Ｄ画像の配置を受信する段階とを含む仮想現実シーンを作成する方法。
【０２９６】
ＮＰ４３．コンピュータにより、３Ｄ画像データのための画像フィルタを受信する段階と、画像フィルタを受信間取図に適用する段階とを更に含むＮＰ４２の方法。
【０２９７】
ＮＰ４４．間取図が、コンピュータ支援設計ファイル、ｐｄｆファイル、又はオンラインマップのうちの少なくとも１つであるＮＰ４２又はＮＰ４３の方法。
【０２９８】
ＮＰ４５．間取図内の位置の上への受信３Ｄ画像の配置が、プラグインを通したものであるＮＰ４４の方法。
【０２９９】
ＮＰ４６．コンピュータにより、間取図上のホットスポットの表示を受信する段階と、間取図上のホットスポットのアイコンの表示を引き起こす段階とを更に含むＮＰ４２−ＮＰ４５のいずれか１つの方法。
【０３００】
ＮＰ４７．コンピュータにより、第２の間取図を受信する段階と、第２の間取図を積み重ねる段階とを更に含むＮＰ４２−ＮＰ４６のいずれか１つの方法。
【０３０１】
ＮＰ４８．コンピュータにより、対話によって画像シーン内のユーザによって起動されるトリガ可能な指令をホットスポットに関連付ける段階を更に含むＮＰ４６又はＮＰ４７の方法。
【０３０２】
ＮＰ４９．コンピュータにより、ユーザからのクリック−アンド−ドラッグ作動によって間取図上のホットスポットを移動する段階を更に含むＮＰ４６−ＮＰ４８のいずれか１つの方法。
【０３０３】
ＮＰ５０．トリガ可能な指令が、別の画像シーンへのナビゲーションであるＮＰ４８又はＮＰ４９の方法。
【０３０４】
ＮＰ５１．システムが、プロセッサとメモリとを有するサーバコンピュータにより、第１の３Ｄ画像データを受信する段階であって、第１の３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして第１の３Ｄ画像データを付加するように更に構成され、第１の３Ｄ画像データが、画像が元来撮影された方向に対応する第１の方向インジケータを含む上記受信する段階と、第１の３Ｄ画像データに位置をマップする段階と、第１の３Ｄ画像データにマーカをマップする段階と、画像が元来撮影された方向に対応する第２の方向インジケータを含む第２の３Ｄ画像データを受信する段階と、第１及び第２のデータに対する第１及び第２の方向インジケータを使用して表示のために第１及び第２のデータを方位付けする段階とを含む仮想現実シーンを作成する方法。
【０３０５】
ＮＰ５２．第１及び第２のデータに対する第１及び第２の方向インジケータを使用して表示のために第１及び第２のデータを方位付けする段階が、仮想カメラと仮想カメラ及び方向インジケータ間の角度とを使用する段階を含むＮＰ５１の方法。
【０３０６】
ＮＰ５３．第１の３Ｄ画像データがタイムスタンプを含むＮＰ５１又はＮＰ５２の方法。
【０３０７】
ＮＰ５４．第１の３Ｄ画像データが中間地点場所識別子を含むＮＰ５３の方法。
【０３０８】
ＮＰ５５．第２の３Ｄ画像データが、中間地点及びタイムスタンプを含み、第１の３Ｄ画像データのタイムスタンプ及び中間地点を使用して第２の３Ｄ画像データの中間地点とタイムスタンプを相関付けるＮＰ５４の方法。
【０３０９】
ＮＰ５６．コンピュータにより、第１の３Ｄ画像データに対する注釈情報を受信する段階と、受信した注釈情報を表示のために第１の３Ｄ画像データに相関付ける段階とを更に含むＮＰ５５の方法。
【０３１０】
ＮＰ５７．コンピュータにより、第１の３Ｄ画像データの音声情報を受信する段階と、受信した音声情報を表示及び再生のために第１の３Ｄ画像データに相関付ける段階とを更に含むＮＰ５５又はＮＰ５６の方法。
【０３１１】
ＮＰ５８．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、第１及び第２の位置を３Ｄ画像データにマップする段階と、３Ｄ画像データの表示内の第１及び第２の位置間の距離を計算する段階とを含む仮想現実シーンを作成する方法。
【０３１２】
ＮＰ５９．コンピュータにより、３Ｄ画像データの表示内にオブジェクトをマップする段階と、３Ｄ画像データの表示内のオブジェクトの角度を計算する段階とを更に含むＮＰ５８の方法。
【０３１３】
ＮＰ６０．コンピュータにより、画像データのための間取図を受信する段階と、間取図内の位置の上への受信３Ｄ画像データの配置を受信する段階と、間取図の第１及び第２の位置間の距離を計算する段階とを更に含むＮＰ５８又はＮＰ５９の方法。
【０３１４】
ＮＰ６１．コンピュータにより、キャンバスオブジェクトのボーダーを含むキャンバスオブジェクトの境界を３Ｄ画像データに追加する段階を更に含むＮＰ５８−ＮＰ６０のいずれか１つの方法。
【０３１５】
ＮＰ６２．コンピュータにより、第２のキャンバスオブジェクトのボーダーを含む第２のキャンバスオブジェクトの境界を３Ｄ画像データに追加する段階と、キャンバスオブジェクト及び第２のキャンバスオブジェクト上の第１及び第２の位置間の距離を計算する段階とを更に含むＮＰ６１の方法。
【０３１６】
ＮＰ６３．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、ウェブページを含むオーバーレイの表示を３Ｄ画像データにわたって引き起こす段階とを含む仮想現実シーンを作成する方法。
【０３１７】
ＮＰ６４．コンピュータにより、移動デバイス上の表示のためにテクスチャのサイズを変更する段階を更に含むＮＰ６３の方法。
【０３１８】
ＮＰ６５．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、ある位置で３Ｄ画像データにマーカをマップする段階と、オブジェクトを画像データ内のマーキングされた位置に挿入する段階と、注釈をオブジェクトに追加する段階とを含む仮想現実シーンを作成する方法。
【０３１９】
ＮＰ６６．コンピュータにより、注釈のリストから追加注釈の選択を受信する段階と、対応する追加注釈を有する３Ｄ画像データの表示を引き起こす段階とを更に含むＮＰ６５の方法。
【０３２０】
ＮＰ６７．対応する追加注釈を有する３Ｄ画像データの表示が、注釈付きオブジェクトにフォーカスするＮＰ６６の方法。
【０３２１】
ＮＰ６８．注釈付きオブジェクトが、ユーザによって対話することができるＮＰ６６又はＮＰ６７の方法。
【０３２２】
ＮＰ６９．注釈のリストが、注釈付きオブジェクトがユーザによって対話された後のステータス更新を含むＮＰ６８の方法。
【０３２３】
ＮＰ７０．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、３Ｄ画像データへのグラフィック追加のための塗装ツールを提供する段階とを含む仮想現実シーンを作成する方法。
【０３２４】
ＮＰ７１．塗装ツールが、ハードウエアユーザインタフェースからの入力を含むＮＰ７０の方法。
【０３２５】
ＮＰ７２．ハードウエアユーザインタフェースが、コンピュータマウス、手持ち式ポインタ、ジョイスティック、又はタッチ画面のうちの少なくとも１つであるＮＰ７１の方法。
【０３２６】
ＮＰ７３．塗装ツールが、自由形状塗装ツールを含むＮＰ７０−ＮＰ７２のいずれか１つの方法。
【０３２７】
ＮＰ７４．塗装ツールが、事前定義された幾何学形状を含むＮＰ７０ＮＰ７３のいずれか１つの方法。
【０３２８】
ＮＰ７５．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、３Ｄ画像データの表示内に複数のユーザの入力を提供する段階とを含む仮想現実シーンを作成する方法。
【０３２９】
ＮＰ７６．表示が、複数のユーザのアバターを含むＮＰ７５の方法。
【０３３０】
ＮＰ７７．表示内のアバターが、コンピュータにより、方位を示すそれらの対応するユーザハードウエアから受信したデータに従って３Ｄ画像データ内で方位付けられるＮＰ７６の方法。
【０３３１】
ＮＰ７８．複数のユーザが、互いに遠隔に位置付けられ、かつネットワーク上でサーバコンピュータと対話するＮＰ７５−ＮＰ７７のいずれか１つの方法。
【０３３２】
ＮＰ７９．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、３Ｄ画像データに音声ソースを位置決めする段階であって、３Ｄ画像データに位置付けられた音声ソースが、複数のチャネルを使用してユーザのために再生される上記位置決めする段階とを含む仮想現実シーンを作成する方法。
【０３３３】
ＮＰ８０．音声ソースの位置が、３Ｄ画像データに対して移動することができるＮＰ７９の方法。
【０３３４】
ＮＰ８１．音声ソースが、ユーザ対話によってトリガされるＮＰ７９又はＮＰ８０の方法。
【０３３５】
ＮＰ８２．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、ネットワーク上のデータストリーム内でユーザに対して３Ｄ画像データの表示を引き起こす段階とを含む仮想現実シーンを作成する方法。
【０３３６】
ＮＰ８３．３Ｄ画像データが、３６０度カメラからのものであるＮＰ８２の方法。
【０３３７】
ＮＰ８４．コンピュータにより、データストリームが中断される場合にプレースホルダ画像の表示を引き起こす段階を更に含むＮＰ８２又はＮＰ８３の方法。
【０３３８】
ＮＰ８５．コンピュータにより、ユーザによる対話時に３Ｄ画像のズーム部分の表示を引き起こす段階を更に含むＮＰ８２−ＮＰ８４のいずれか１つの方法。
【０３３９】
ＮＰ８６．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階と、画像データに位置をマップする段階と、画像データにマーカをマップする段階と、オブジェクトを画像データ内のマーキングされた位置に挿入する段階と、ユーザによる選択時に３Ｄ画像の歪みを引き起こす段階とを含む仮想現実シーンを作成する方法。
【０３４０】
ＮＰ８７．歪みが、３Ｄ画像内のオブジェクトにユーザがフォーカスすることができるように構成された魚眼歪みであるＮＰ８６の方法。
【０３４１】
ＮＰ８８．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階と、画像データに位置をマップする段階と、画像データにマーカをマップする段階と、顔特徴を３Ｄ画像データで分析及び識別する段階とを含む仮想現実シーンを作成する方法。
【０３４２】
ＮＰ８９．コンピュータにより、３Ｄ画像データの表示内の識別された顔特徴を目立たなくする段階を更に含むＮＰ８８の方法。
【０３４３】
ＮＰ９０．システムが、プロセッサとメモリとを有するサーバコンピュータにより、第１の解像度の３Ｄ画像データを受信する段階と、第２の解像度の３Ｄ画像データを受信する段階と、第１及び第２の３Ｄ画像データをセグメントにセグメント化する段階と、第１の解像度の３Ｄ画像データからのセグメントと第２の解像度の３Ｄ画像データからのセグメントの両方を使用して画像の表示を引き起こす段階とを含む仮想現実シーンを作成する方法。
【０３４４】
ＮＰ９１．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像データを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像データを付加するように更に構成される上記受信する段階と、表示のために３Ｄ画像データに回転を適用する段階とを含む仮想現実シーンを作成する方法。
【０３４５】
ＮＰ９２．システムが、プロセッサとメモリとを有するサーバコンピュータにより、第１の３Ｄ画像データを受信する段階であって、第１の３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして第１の３Ｄ画像データを付加するように更に構成される上記受信する段階と、第２の３Ｄ画像データを受信する段階と、第１の３Ｄ画像データ及び第２の３Ｄ画像データを比較して両方に共通の特徴を相関付ける段階と、第１及び第２の３Ｄ画像の相関付けられた特徴の深度を計算する段階と、相関付けられた特徴の計算された深度を使用して立体画像表示をレンダリングする段階とを含む仮想現実シーンを作成する方法。
【０３４６】
ＮＰ９３．コンピュータにより、フィルタを第１の３Ｄ画像データ及び第２の３Ｄ画像データに適用する段階と、表示のために第１及び第２の濾過３Ｄ画像データを融合する段階とを更に含むＮＰ９２の方法。
【０３４７】
ＮＰ９４．フィルタが、移動するオブジェクトを除去するＮＰ９３の方法。
【０３４８】
ＮＰ９５．フィルタが、変化する光条件を除去するＮＰ９３の方法。
【０３４９】
ＮＰ９６．システムが、プロセッサとメモリとを有するサーバコンピュータにより、３Ｄ画像ビデオデータを受信する段階であって、３Ｄ画像データが３６０度画像データであり、コンピュータが、表示のための球面オブジェクトにテクスチャとして３Ｄ画像ビデオデータを付加するように更に構成される上記受信する段階と、３Ｄ画像ビデオを分析してオブジェクトを識別する段階と、３Ｄ画像ビデオ内で識別されたオブジェクトを追跡する段階とを含む仮想現実シーンを作成する方法。
【０３５０】
ＮＰ９７．コンピュータにより、受信３Ｄ画像ビデオデータを取り込むのに使用されるカメラの位置を決定する段階と、カメラの決定された位置及び識別されたオブジェクトを使用して識別したオブジェクトを追跡する段階とを更に含むＮＰ９６の方法。
【０３５１】
ＮＰ９８．３Ｄ画像ビデオの分析が、視覚検索エンジンによるものであるＮＰ９６又はＮＰ９７の方法。
【０３５２】
ＮＰ９９．コンピュータにより、オブジェクトの絶対ポーズを更新する段階を更に含むＮＰ９７又はＮＰ９８の方法。
【０３５３】
ＮＰ１００．コンピュータにより、キーフレーム内のピクセルの推定された深度値を使用して受信３Ｄ画像ビデオデータのキーフレームの深度マップを推定する段階と、キーフレームの推定された深度マップを使用して点クラウドを発生させる段階と、発生された点クラウドを使用して３Ｄメッシュを発生させる段階とを更に含むＮＰ９６−ＮＰ９９のいずれか１つの方法。
【０３５４】
ＮＰ１０１．コンピュータにより、キーフレームからキーポイントを抽出する段階と、識別されたオブジェクトの追跡に抽出キーポイントを使用する段階とを更に含むＮＰ１００の方法。
【０３５５】
ＮＰ１０２．コンピュータにより、テクスチャ化メッシュに注釈を付けるためのツールを提供する段階を更に含むＮＰ１００又はＮＰ１０１の方法。
【０３５６】
ＮＰ１０３．テクスチャ化メッシュが、３Ｄ画像ビデオデータ内の影付けに使用されるＮＰ１０１又はＮＰ１０２の方法。
【符号の説明】
【０３５７】
１１０１０２  ユーザ
１１０１１０  埋め込み式３Ｄエンジン
１１０１１２  通信ネットワーク
１１０１１６  データストア
１１０１１７  ２Ｄ／３Ｄオブジェクト
【図１ａ】
2019526133.tif 000002
【図１ｂ】
2019526133.tif 000003
【図１ｃ】
2019526133.tif 000004
【図１ｄ】
2019526133.tif 000005
【図１ｅ】
2019526133.tif 000006
【図１ｆ】
2019526133.tif 000007
【図１ｇ】
2019526133.tif 000008
【図１ｈ】
2019526133.tif 000009
【図１ｉ】
2019526133.tif 000010
【図１ｊ】
2019526133.tif 000011
【図１ｋ】
2019526133.tif 000012
【図１ｌ】
2019526133.tif 000013
【図１ｍ】
2019526133.tif 000014
【図１ｎ】
2019526133.tif 000015
【図１ｏ】
2019526133.tif 000016
【図１ｐ】
2019526133.tif 000017
【図１ｑ】
2019526133.tif 000018
【図１ｒ】
2019526133.tif 000019
【図１ｓ】
2019526133.tif 000020
【図１ｔ】
2019526133.tif 000021
【図２ａ】
2019526133.tif 000022
【図２ｂ】
2019526133.tif 000023
【図２ｃ】
2019526133.tif 000024
【図２ｄ】
2019526133.tif 000025
【図２ｅ】
2019526133.tif 000026
【図２ｆ】
2019526133.tif 000027
【図２ｇ】
2019526133.tif 000028
【図２ｈ】
2019526133.tif 000029
【図２ｉ】
2019526133.tif 000030
【図２ｊ】
2019526133.tif 000031
【図２ｋ】
2019526133.tif 000032
【図２ｌ】
2019526133.tif 000033
【図２ｍ】
2019526133.tif 000034
【図２ｎ】
2019526133.tif 000035
【図２ｏ】
2019526133.tif 000036
【図２ｐ】
2019526133.tif 000037
【図２ｑ】
2019526133.tif 000038
【図２ｒ】
2019526133.tif 000039
【図２ｓ】
2019526133.tif 000040
【図２ｔ】
2019526133.tif 000041
【図２ｕ】
2019526133.tif 000042
【図２ｖ】
2019526133.tif 000043
【図２ｗ】
2019526133.tif 000044
【図２ｘ】
2019526133.tif 000045
【図２ｙ】
2019526133.tif 000046
【図３ａ】
2019526133.tif 000047
【図３ｂ】
2019526133.tif 000048
【図３ｃ】
2019526133.tif 000049
【図３ｄ】
2019526133.tif 000050
【図３ｅ】
2019526133.tif 000051
【図３ｆ】
2019526133.tif 000052
【図３ｇ】
2019526133.tif 000053
【図３ｈ】
2019526133.tif 000054
【図４ａ】
2019526133.tif 000055
【図５ａ】
2019526133.tif 000056
【図５ｂ】
2019526133.tif 000057
【図５ｃ】
2019526133.tif 000058
【図５ｄ】
2019526133.tif 000059
【図６ａ】
2019526133.tif 000060
【図７ａ】
2019526133.tif 000061
【図８ａ】
2019526133.tif 000062
【図８ｂ】
2019526133.tif 000063
【図８ｃ】
2019526133.tif 000064
【図８ｄ】
2019526133.tif 000065
【図８ｅ】
2019526133.tif 000066
【図８ｆ】
2019526133.tif 000067
【図８ｇ】
2019526133.tif 000068
【図９ａ】
2019526133.tif 000069
【図９ｂ】
2019526133.tif 000070
【図１０ａ】
2019526133.tif 000071
【図１０ｂ】
2019526133.tif 000072
【図１１ａ】
2019526133.tif 000073
【図１１ｂ】
2019526133.tif 000074
【図１２ａ】
2019526133.tif 000075
【図１３ａ】
2019526133.tif 000076
【図１３ｂ】
2019526133.tif 000077
【図１３ｃ】
2019526133.tif 000078
【図１３ｄ】
2019526133.tif 000079
【図１４ａ】
2019526133.tif 000080
【図１５ａ】
2019526133.tif 000081
【図１６ａ】
2019526133.tif 000082
【図１７ａ】
2019526133.tif 000083
【図１７ｂ】
2019526133.tif 000084
【図１７ｃ】
2019526133.tif 000085
【図１７ｄ】
2019526133.tif 000086
【図１７ｅ】
2019526133.tif 000087
【図１８ａ】
2019526133.tif 000088
【図１８ｂ】
2019526133.tif 000089
【図１９ａ】
2019526133.tif 000090
【図２０ａ】
2019526133.tif 000091
【図２１ａ】
2019526133.tif 000092
【図２１ｂ】
2019526133.tif 000093
【図２１ｃ】
2019526133.tif 000094
【図２１ｄ】
2019526133.tif 000095
【図２２ａ】
2019526133.tif 000096
【図２３ａ】
2019526133.tif 000097
【図２４ａ】
2019526133.tif 000098
【図２４ｂ】
2019526133.tif 000099
【図２４ｃ】
2019526133.tif 000100
【図２５ａ】
2019526133.tif 000101
【図２５ｂ】
2019526133.tif 000102
【図２５ｃ】
2019526133.tif 000103
【図２６ａ】
2019526133.tif 000104
【図２７ａ】
2019526133.tif 000105
【図２８ａ】
2019526133.tif 000106
【図２８ｂ】
2019526133.tif 000107
【図２８ｃ】
2019526133.tif 000108
【図２９ａ】
2019526133.tif 000109
【図２９ｂ】
2019526133.tif 000110
【図２９ｃ】
2019526133.tif 000111
【図２９ｄ】
2019526133.tif 000112
【図３０ａ】
2019526133.tif 000113
【図３０ｂ】
2019526133.tif 000114
【図３０ｃ】
2019526133.tif 000115
【図３０ｄ】
2019526133.tif 000116
【図３０ｅ】
2019526133.tif 000117
【図３０ｆ】
2019526133.tif 000118
【図３１ａ】
2019526133.tif 000119
【図３１ｂ】
2019526133.tif 000120
【図３１ｃ】
2019526133.tif 000121
【国際調査報告】
2019526133.tif 000122
2019526133.tif 000123
2019526133.tif 000124
2019526133.tif 000125
2019526133.tif 000126