(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2020-514880(P2020-514880A)
(43)【公表日】2020年5月21日
(54)【発明の名称】デジタルで物理的な時間的又は空間的ディスカバリ・サービスを使用した共有複合現実体験のためのシステム及び方法
(51)【国際特許分類】
G06F 13/00 20060101AFI20200424BHJP
【FI】
G06F13/00 510A
【審査請求】未請求
【予備審査請求】未請求
【全頁数】30
(21)【出願番号】特願2019-542665(P2019-542665)
(86)(22)【出願日】2018年2月9日
(85)【翻訳文提出日】2019年10月2日
(86)【国際出願番号】US2018017662
(87)【国際公開番号】WO2018148571
(87)【国際公開日】20180816
(31)【優先権主張番号】62/457,107
(32)【優先日】2017年2月9日
(33)【優先権主張国】US
(81)【指定国】
AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JO,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
(71)【出願人】
【識別番号】518327707
【氏名又は名称】ソルファイス リサーチ、インコーポレイテッド
(74)【代理人】
【識別番号】110000855
【氏名又は名称】特許業務法人浅村特許事務所
(72)【発明者】
【氏名】プッタグンタ、シャンムカー
(72)【発明者】
【氏名】クレイム、ファビアン
【テーマコード(参考)】
5B084
【Fターム(参考)】
5B084AA03
5B084AA11
5B084BA09
5B084BB01
5B084DA12
(57)【要約】
システム及び方法は、車両内に搭載された知覚システム及び複合現実コンテンツ消費システムなどのデバイス110、120による互いの発見、多次元現実感の共有、複合現実コンテンツのための文脈の継承、及び/又は調整を可能にし、その一方で複合現実ユーザ経験を提供する。ディスカバリ・サービス100は、複数のデバイス110、120から情報を受け取ることができ、また、そのデジタル及び物理的特性を相関して、デバイス110、120による互いの発見を可能にすることができる。ペアにするために使用することができるデバイスの特性は、その物理的配向、デバイスの観察可能現実感、デバイスの状態マシン、自律的に、又は外部の補助の下で動作している間のデバイスの意図、デバイスの位置、多次元現実感における、時間に対するデバイスの運動を記述している時間的/空間的情報、又はデバイス内に含まれている、或いはデバイスによって生成された任意の一意の識別子を含むことができる。
【特許請求の範囲】
【請求項1】
複合現実体験をペアリングし、共有するための装置であって、
第1のデジタル通信ネットワークに接続されたコンピュータを備えたディスカバリ・サーバと、
1つ又は複数の複合現実サービス提供デバイスであって、それぞれ、複合現実コンテンツ・ソース、前記第1のデジタル通信ネットワークに接続された第1の通信インタフェース、デジタル・メモリ及びマイクロプロセッサを備え、前記マイクロプロセッサが、(a)前記複合現実コンテンツ・ソースの可用性を前記ディスカバリ・サーバに通知し、(b)複合現実コンテンツを前記複合現実コンテンツ・ソースからサービス探索デバイスへ伝送するように構成される、1つ又は複数の複合現実サービス提供デバイスと、
1つ又は複数の複合現実サービス探索デバイスであって、それぞれマイクロプロセッサ及びデジタル・メモリを備え、前記マイクロプロセッサが複合現実コンテンツ消費コンポーネントを実現するように構成され、前記マイクロプロセッサが、(a)前記1つ又は複数の複合現実サービス提供デバイスのうちの選択されたサブセットとのペアリングを前記ディスカバリ・サーバに照会し、(b)複合現実サービス提供デバイスの前記選択されたサブセットのうちの1つ又は複数から複合現実コンテンツを受け取るようにさらに構成される、1つ又は複数の複合現実サービス探索デバイスと
を備える装置。
【請求項2】
前記複合現実コンテンツ・ソースが、前記サービス提供デバイスが位置している局所環境を特徴付けるように構成された1つ又は複数のセンサを備える、請求項1に記載の装置。
【請求項3】
前記1つ又は複数のセンサが機械ビジョン・システムを備える、請求項2に記載の装置。
【請求項4】
前記サービス探索デバイスが、マイクロプロセッサ、デジタル・メモリ及びディスプレイ・スクリーンを備えたパーソナル電子デバイスを備え、前記パーソナル電子デバイスが、前記サービス提供デバイスのうちの少なくとも1つとペアになって機械ビジョン複合現実コンテンツを受け取るように構成される、請求項3に記載の装置。
【請求項5】
マイクロプロセッサ及びデジタル・メモリを備えたネットワーク接続中継サーバをさらに備え、前記中継サーバが、第1のサービス提供デバイスから選択複合現実コンテンツを受け取り、前記選択複合現実コンテンツを前記第1のサービス提供デバイスとペアになった複数のサービス探索デバイスに伝送するように構成される、請求項1に記載の装置。
【請求項6】
前記中継サーバが、前記選択複合現実コンテンツを前記選択複合現実コンテンツに署名した複数のサービス提供デバイスに伝送するようにさらに構成される、請求項5に記載の装置。
【請求項7】
前記1つ又は複数の複合現実サービス提供デバイスが第1の車両内に搭載され、前記第1の車両複合現実コンテンツ・ソースが機械ビジョン・システムを備え、前記複合現実コンテンツが機械ビジョン・データを含み、
前記1つ又は複数の複合現実サービス探索デバイスが1つ又は複数の他の車両内に搭載され、
それにより前記第1の車両が前記機械ビジョン複合現実コンテンツを前記他の車両と共有することができる、請求項1に記載の装置。
【請求項8】
前記1つ又は複数の複合現実サービス提供デバイスが第1の車両内に搭載され、前記第1の車両複合現実コンテンツ・ソースが機械ビジョン・システムを備え、前記複合現実コンテンツが機械ビジョン・データを含み、
前記1つ又は複数の複合現実サービス探索デバイスが、マイクロプロセッサ、デジタル・メモリ、ディスプレイ・スクリーン及びデジタル・カメラを備えた携帯型パーソナル電子デバイスを備え、前記携帯型パーソナル電子デバイスが、前記サービス提供デバイスから受け取った機械ビジョン複合現実コンテンツを前記パーソナル電子デバイス・デジタル・カメラによって捕捉されたビデオ・コンテンツの上に重ね書きして表示するように構成される、
請求項1に記載の装置。
【請求項9】
複数の車両間における複合現実サービスの共有を容易にするネットワーク接続サーバのための方法であって、個々の車両が、共通デジタル通信ネットワークを介して通信する、1つ又は複数の複合現実サービス提供デバイス及び/又は1つ又は複数の複合現実サービス探索デバイスを含み、前記方法が
前記デジタル通信ネットワークを介して、1つ又は複数のサービス提供デバイスの各々から、前記サービス提供デバイスによって提供されるサービス及び前記サービス提供デバイスに関連付けられた位置の識別を含む1つ又は複数の通知を受け取るステップと、
前記デジタル通信ネットワークを介して、サービス探索デバイスからサービスの要求を受け取るステップと、
前記サービス探索デバイスに、1つ又は複数のサービス提供デバイス及び前記1つ又は複数のサービス提供デバイスによって提供されるサービスの識別を発行するステップであって、前記サービス探索デバイスが前記サービス提供デバイスのうちの1つ又は複数とペアになることができ、前記サービス提供デバイスのうちの1つ又は複数から複合現実サービスを受け取ることができる、ステップと
を含む方法。
【請求項10】
前記サービス探索デバイスが第1の車両内に搭載され、前記サービス提供デバイスが1つ又は複数の他の車両内に搭載される、請求項9に記載の方法。
【請求項11】
1つ又は複数のサービス提供デバイス及び前記1つ又は複数のサービス提供デバイスによって提供されるサービスの識別を発行する前記ステップが、サービス提供デバイスがコンタクトすることができるネットワーク通信アドレスを伝送するステップを含む、請求項9に記載の方法。
【請求項12】
1つ又は複数のサービス提供デバイス及び前記1つ又は複数のサービス提供デバイスによって提供されるサービスの識別を発行する前記ステップが、
前記サービス提供デバイスの各々毎に1つ又は複数の特徴を抽出するステップと、
少なくとも部分的に前記1つ又は複数の特徴に基づいて前記サービス提供デバイスを1つ又は複数のグループにグループ化するステップと、
前記サービス探索デバイスをサービス提供デバイスの前記1つ又は複数のグループのうちの少なくとも1つとマッチングさせるステップと、
前記サービス探索デバイスに、前記マッチングされたグループ内の1つ又は複数のサービス提供デバイスの識別を伝送するステップと
を含む、請求項9に記載の方法。
【請求項13】
前記1つ又は複数の特徴がセンサ能力を含む、請求項12に記載の方法。
【請求項14】
前記1つ又は複数の特徴が意図した走行経路を含む、請求項12に記載の方法。
【請求項15】
前記1つ又は複数の特徴が前記意図した走行経路に関連付けられた時間フレームをさらに含む、請求項14に記載の方法。
【請求項16】
前記1つ又は複数の特徴が前記サービス提供デバイスが搭載される車両の特性を含む、請求項12に記載の方法。
【請求項17】
前記ディスカバリ・サーバとデバイスの間の通信が広域デジタル通信ネットワークを介してなされ、
前記サービス探索デバイスに、1つ又は複数のサービス提供デバイス及び前記1つ又は複数のサービス提供デバイスによって提供されるサービスの識別を発行する前記ステップが、前記サービス提供デバイスのうちの1つ又は複数のために第2のデジタル通信ネットワーク上のネットワーク特性を発行するステップをさらに含み、ペアリングされたデバイスが前記第2のデジタル通信ネットワークを介して互いに直接通信することができる、請求項9に記載の方法。
【請求項18】
前記サービス探索デバイスとサービス提供デバイスの間の直接通信のためにそれらをペアリングするステップをさらに含む、請求項9に記載の方法。
【請求項19】
前記サービス探索デバイスによって、前記サービス提供デバイスのうちの1つ又は複数からの通知に署名するステップと、
前記サービス探索デバイスによって、前記サービス提供デバイスによって前記サービス探索デバイスに直接伝送された1つ又は複数の通知を受け取るステップと
をさらに含む、請求項18に記載の方法。
【請求項20】
複合現実コンテンツを前記サービス提供デバイスから前記サービス探索デバイスへストリーミングするステップをさらに含む、請求項18に記載の方法。
【請求項21】
複合現実コンテンツをプロキシ・サーバを介して前記サービス提供デバイスから前記サービス探索デバイスへ伝送するステップをさらに含む、請求項18に記載の方法。
【請求項22】
前記サービス提供デバイスの第1のサービス提供デバイスから前記サービス探索デバイスへの複合現実コンテンツを共有するステップと、
前記サービス探索デバイスによる前記共有複合現実コンテンツの使用に先立って、前記共有複合現実コンテンツに空間的変換を適用するステップと
をさらに含む、請求項18に記載の方法。
【請求項23】
前記共有複合現実コンテンツに空間的変換を適用する前記ステップが、前記サービス提供デバイスと前記サービス探索デバイスの間の並進及び/又は回転の変化を補償するステップを含む、請求項22に記載の方法。
【請求項24】
前記共有複合現実コンテンツ及び局所出所複合現実コンテンツを共通の時空間にマップするために、前記サービス探索デバイスによる前記共有複合現実コンテンツの使用に先立って、前記共有複合現実コンテンツに時間的変換を適用するステップをさらに含む、請求項23に記載の方法。
【請求項25】
前記共有複合現実コンテンツを前記局所出所複合現実コンテンツと時間的に整列させるために、前記共有複合現実コンテンツに時間的変換を適用する前記ステップが、前記サービス探索デバイスによって、前記共有複合現実コンテンツ及び/又は局所出所複合現実コンテンツに遅延を適用するステップを含む、請求項24に記載の方法。
【請求項26】
前記サーバによって、前記サービス提供デバイスのうちの1つ又は複数から1つ又は複数の複合現実コンテンツ・データ・ストリームを受け取るステップと、
前記サーバによって、前記1つ又は複数の複合現実コンテンツ・データ・ストリームにパターン解析モジュールを適用するステップであって、それにより前記1つ又は複数の複合現実コンテンツ・データ・ストリーム中の1つ又は複数のパターンを認識し、前記パターンを前記サービス提供デバイスのうちの前記1つ又は複数から獲得される一意の識別子と相関する、ステップと、
前記パターン解析モジュールからの出力をアプリケーション・プログラミング・インタフェースを介して発行するステップと
をさらに含み、それにより集合体複合現実コンテンツを複数の車両上の複数のサービス提供デバイスによって獲得された複合現実コンテンツ・データから導出し、外部計算アプリケーションに利用することができるようにすることができる、請求項9に記載の方法。
【請求項27】
前記パターン解析モジュールからの出力をアプリケーション・プログラミング・インタフェースを介して発行する前記ステップが、照会デバイスに関連付けられたサーバによって記憶されている情報に対するサービス提供デバイス及び/又はサービス探索デバイスからの照会に応答するステップを含み、サービス提供デバイス及び/又はサービス探索デバイスが前記サーバによって記憶されている前記サービス提供デバイス及び/又は前記はサービス探索デバイスに関連付けられた情報を監査することができる、請求項26に記載の方法。
【請求項28】
複合現実コンテンツを前記サービス提供デバイスのうちの1つ又は複数から複合現実集約サーバへ伝送するステップと、
前記複合現実集約サーバによって、前記サービス提供デバイスのうちの前記1つ又は複数から受け取った前記複合現実コンテンツから導出される集合体複合現実コンテンツを生成するステップと
をさらに含む、請求項9に記載の方法。
【請求項29】
前記データ通信ネットワークを介して、前記集合体複合現実コンテンツを前記複合現実集約サーバから1つ又は複数のサービス探索デバイスへ伝送するステップをさらに含む、請求項28に記載の方法。
【請求項30】
集合体複合現実コンテンツを生成する前記ステップが、前記複合現実集約サーバによって、前記サービス提供デバイスに関連付けられた信頼のレベルに少なくとも部分的に基づいて、各々のサービス提供デバイスからの複合現実コンテンツ寄与に重みを付けるステップを含む、請求項28に記載の方法。
【請求項31】
前記サービス提供デバイスに関連付けられた信頼の前記レベルが、前記サービス提供デバイスに関連付けられたセンサ能力レベルに少なくとも部分的に基づく、請求項30に記載の方法。
【請求項32】
前記複合現実集約サーバによって、先行する観察における集合体確信レベルが閾値未満であることを判定するステップと、
前記先行する観察を再現することができる知覚システムを有する選択サービス提供デバイスを識別するステップと、
前記サーバから前記選択サービス提供デバイスへ、前記先行する観察を再現する要求を伝送するステップと、
前記選択サービス提供デバイスから、前記先行する観察の測値を受け取るステップと、
選択サービス提供デバイスからの前記測値に少なくとも部分的に基づいて前記先行する観察を更新するステップと
をさらに含む、請求項28に記載の方法。
【請求項33】
複合現実コンテンツを前記サービス提供デバイスから前記サービス探索デバイスへ伝送するステップと、
前記サービス探索デバイスによって前記複合現実コンテンツを消費するステップと
をさらに含む、請求項18に記載の方法。
【請求項34】
前記複合現実コンテンツが地図情報を含み、前記サービス探索デバイスによって前記複合現実コンテンツを消費する前記ステップが、前記サービス探索デバイスと共同配置されたビデオ・カメラによって捕捉されたビデオ・コンテンツの上に視覚オーバレイでレンダリングされた前記地図情報を含む表示を生成するステップを含む、請求項33に記載の方法。
【請求項35】
サービス提供デバイスによって完了されるタスクの待ち行列を維持するステップと、
タスクの前記待ち行列におけるタスク毎に、(a)タスク固有基準を充足する1つ又は複数の認定されたサービス提供デバイスを識別するステップ、及び(b)前記デジタル通信ネットワークを介して前記タスクを前記認定されたサービス提供デバイスにディスパッチングするステップと
をさらに含む、請求項9に記載の方法。
【請求項36】
タスク固有基準を充足する1つ又は複数の認定されたサービス提供デバイスを識別する前記サブステップが、タスク・センサ要求事項に対する、前記サービス提供デバイスに関連付けられたセンサ能力を評価するステップを含む、請求項35に記載の方法。
【請求項37】
前記サーバによって、タスクに対する応答を複数の認定されたサービス提供デバイスから収集するステップと、
前記応答を集約して前記タスクに応答する共有モデルを展開するステップと
をさらに含む、請求項35に記載の方法。
【請求項38】
前記タスクが道路走行車線センターラインの観察を含み、前記共有モデルが前記サーバによって受け取られた複数のタスク応答に基づいて形成された前記道路走行車線センターラインのモデルを含む、請求項37に記載の方法。
【請求項39】
前記認定されたサービス提供デバイスのうちの1つによって前記タスクを受け取るステップと、
前記認定されたサービス提供デバイスのうちの前記1つの上に1つ又は複数のセンサを動的に構成して前記タスクの完了におけるセンサ性能を最適化する、ステップと
をさらに含む、請求項35に記載の方法。
【請求項40】
前記認定されたサービス提供デバイスのうちの1つによって前記タスクを受け取るステップと、
前記タスクに応答して、前記認定されたサービス提供デバイス上で利用可能なセンサを介してタスク・データを収集するステップと、
前記認定されたサービス提供デバイスによって前記収集されたタスク・データを局所的にフィルタリングするステップと、
前記フィルタリングされた、収集されたタスク・データを前記認定されたサービス提供デバイスから前記サーバへ伝送するステップと
をさらに含む、請求項35に記載の方法。
【請求項41】
前記複合現実集約サーバへの前記複合現実コンテンツの伝送に先立って、前記サービス提供デバイスによって、前記複合現実コンテンツをサービス提供デバイス固有基準フレームから標準基準フレームに変換するステップをさらに含む、請求項28に記載の方法。
【請求項42】
前記複合現実集約サーバへの前記複合現実コンテンツの伝送に先立って、前記サービス提供デバイスによって前記複合現実コンテンツの次元性を削減するステップをさらに含む、請求項41に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は一般にネットワーク接続電子デバイスに関し、詳細にはこのようなデバイスのためのディスカバリ・サービスに関する。
【背景技術】
【0002】
ディスカバリ・サービスは、ネットワークにおける機能性又はアプリケーション・サービスの存在を明らかにするためにソフトウェア・システム内で展開される。これらのディスカバリ・サービスは、利用可能な機能性をローカル・ネットワーク内の他のデバイスから発見するためのソフトウェア・プロセスによってしばしば使用される。
【0003】
複合現実システムは、実世界即ち実空間と仮想世界即ち仮想空間の両方の知覚経験を統合している。複合現実システムは、実世界視覚ディスプレイ上の仮想若しくは電子コンテンツの上に重ね書きされている視覚プラットフォームにしばしば関連付けられる。いくつかのアプリケーションでは、近傍の他のデバイスを識別し、該デバイスと通信するための、信頼性が高く、柔軟なディスカバリ能力を複合現実デバイスが備えることは重要であり得る。
【発明の概要】
【発明が解決しようとする課題】
【0004】
自律運転が可能であるか、或いは運転者強化機能性を有する車両内のセンサ及びシステムなどの、複合現実コンテンツを提供し、及び/又は探索するデバイスが、集中化されたネットワーク接続サーバ上で実現された他のデバイス及び/又はサービスを発見し、且つ、対話することができ、それによりコンテンツを共有し、且つ、改善された複合現実体験を実現することができる方法及び装置が提供される。
【課題を解決するための手段】
【0005】
いくつかの実施例では、ネットワーク接続サーバは、複数の車両間における複合現実サービスの共有を容易にすることができ、個々の車両は、共通デジタル通信ネットワークを介して通信する、1つ又は複数の複合現実サービス提供デバイス及び/又は1つ又は複数の複合現実サービス探索デバイスを含む。関連する方法は、デジタル通信ネットワークを介して、1つ又は複数のサービス提供デバイスの各々から1つ又は複数の通知を受け取るステップを含む。通知は、サービス提供デバイスによって提供されるサービス及び該サービス提供デバイスに関連付けられた位置の識別を含むことができる。サーバは、サービス探索デバイスに対するサービスの要求を同じく受け取ることができる。サーバは、次に、サービス探索デバイスがサービス提供デバイスのうちの1つ又は複数とペアとなって、その1つ又は複数のサービス提供デバイスから複合現実サービスを受け取ることができるよう、1つ又は複数のサービス提供デバイス(例えばサービス提供デバイスとコンタクトすることができるネットワーク・アドレスなど)及び該1つ又は複数のサービス提供デバイスによって提供されるサービスの仕様の識別をサービス探索デバイスに発行するように動作する。ペアになったデバイスは、サーバとのディスカバリ通信のために使用される同じデータ通信ネットワーク(例えば広域ネットワーク)を介して、或いはサービス提供デバイスとサービス探索デバイスの両方にアクセスすることができる第2の通信ネットワーク(ローカル・エリア・ネットワークなど)を介して通信することができる。
【0006】
このようなサービス提供デバイス及びサービス探索デバイスは、それらを搭載することができる1つ又は複数の車両にわたって分散させることができる。サービス提供デバイスは、センサ能力、意図された走行経路、及び/又は意図された走行経路に関連付けられた時間フレームなどの1つ又は複数の特徴に基づいてグループ化することができる。コンテンツは、データ・ストリーミング及びプロキシ・サーバを介した伝送を含む様々な技法を介してデバイス間で共有することができる。
【0007】
いくつかの実施例では、例えばこのようなコンテンツを共有しているサービス提供デバイスと、そのコンテンツを消費するサービス探索デバイスとの間の並進、回転及び/又はタイミングの変化、及び/又は集中化されたデータ集約サーバが利用することができるような標準化された共通基準フレームを補償するために、空間的及び/又は時間的変換を共有複合現実コンテンツに適用することができる。このような変換は、サービス提供デバイス上で局所的に、サービス探索デバイス上で局所的に、及び/又はディスカバリ・サーバ又はデータ集約サーバを介して遠隔的に適用することができる。
【0008】
共有複合現実コンテンツを受け取るサーバは、パターン解析モジュールを実現して、1つ又は複数の複合現実コンテンツ・データ・ストリームにデータ・ストリーム内の1つ又は複数のパターンを認識させ、且つ、これらのパターンと、サービス提供デバイスから獲得される一意の識別子とを相関させることができる。パターン解析モジュール出力は、APIを介して発行して、車両内で実現されようが、或いは遠隔的に実現されようが、例えば集約された複合現実コンテンツを外部計算アプリケーションが利用することができるようにすることができる。
【0009】
ネットワーク接続複合現実集約サーバは、1つ又は複数のサービス提供デバイスから複合現実コンテンツを受け取って集合体複合現実コンテンツを生成することができる。例えば現実感集約サーバは、複数のデバイスから受け取った複合現実コンテンツを比較して、アウトライアー観察を排除し、また、基礎をなしている真実を確立することができる。集合体複合現実コンテンツを生成する場合、例えばセンサ能力仕様及び/又はコンテンツを受け取ったサービス提供デバイスに関連付けられた他のレベルの信頼に基づいて、個々のサービス提供デバイスからのコンテンツに重みを付けることができる。次に、集合体複合現実コンテンツをサービス探索デバイス及び/又は他のネットワーク接続システムと共有することができる。
【0010】
いくつかの実施例では、集合体複合現実サーバは、要求された観察を実施することができるサービス提供デバイスに観察の要求を伝送することにより、集合体複合現実コンテンツにおける確信レベルを改善するように動作することができる。任意選択で、タスクを受け取ったサービス提供デバイスは、オンボード知覚システムを動的に構成してタスクの性能を最適化することができ、及び/又は収集された複合現実データをフィルタリングして、通信ネットワークを介してデータを返す前に、タスクに無関係のデータを少なくすることができる。いずれの場合においても、次にこのような要求に対する応答を利用して、共有複合現実モデルを生成することなどによって集合体複合現実コンテンツを更新し、及び/又は最適化することができる。これら及び他のタイプの要求は、タスクとして待ち行列にすることができ、それらの各々は、1つ又は複数の認定されたサービス提供デバイスにディスパッチングすることができる。サービス提供デバイスは、それらに限定されないが、デバイス・センサ能力及びデバイス位置のうちの1つ又は複数を含む多くの要因によって、あるタスクに対して認定することができる。
【0011】
本明細書において説明されているシステム及び方法のこれら及び他の態様は、本明細書において提供されるさらなる説明に照らして明らかになるであろう。
【図面の簡単な説明】
【0012】
【
図1】ネットワーク化デバイス間の共有複合現実サービスのためのフレームワークの概略ブロック図である。
【
図2】共有複合現実サービスのためのフレームワークにおけるデバイス・ディスカバリのためのプロセスを示す図である。
【
図3】ディスカバリ・サービス・バックエンドの概略ブロック図である。
【
図4】サービスを提供するために構成された初期ネットワーク化デバイスの概略ブロック図である。
【
図5】サービスを探索するために構成された追加デバイスの概略ブロック図である。
【
図6】サービス提供デバイスをグループ化するためのプロセスを示す図である。
【
図7】サービス探索デバイスによって受け取られる複合現実コンテンツを変換するためのプロセスを示す図である。
【
図8】分散化されたサービス提供デバイスを利用して、複合現実コンテンツを収集するための集中化されたタスク待ち行列を実現するためのプロセスを示す図である。
【
図9】複合現実コンテンツを発見し、且つ、共有するための配置の概略ブロック図である。
【
図10】複合現実コンテンツを発見し、且つ、共有するための他の配置の概略ブロック図である。
【発明を実施するための形態】
【0013】
本発明は、多くの異なる形態の実施例が可能であるが、図面にはいくつかの特定の実施例が示されており、また、本明細書においては、そのいくつかの特定の実施例について詳細に説明されるが、本開示は、すべての当業者による本発明の構築及び使用を可能にするための本発明の原理の例示と見なすべきであり、本発明を例証されている実施例に限定することは意図されていないことを理解されたい。
【0014】
本明細書において説明されるいくつかの実施例は、ネットワーク接続デバイスが使用して複合現実コンテンツの可用性を通知し、且つ、発見することができるディスカバリ・フレームワークを提供する。ディスカバリ・フレームワークは、通常、媒体又は他のコンテンツを受け取り、或いは紹介可能な他の追加ネットワーク化デバイス上に転送する初期ネットワーク化デバイスを含む。このような概念は、本明細書において説明されているように適用して、複数の関係者が様々な運用コンテキスト(operational context)で共有することができる複合現実環境を提供することができる。複合現実サービスがとりわけ有益であり得る1つのこのような文脈は、自律走行を有する車両に関しては、複合現実コンテンツを利用している半自律運転及び/又は運転者補助機能である。このような実施例では、車両は、空間内の対象及び空間の特性をより良好に知覚するために、所与の地理空間を横断している他の車両と対話することができる。例えばある地理空間を横断している第1の車両は、第1の車両の知覚領域外ではあるが、第2の車両の知覚領域内に位置している特定の道路状態の存在を通知するべき近傍の他の車両を発見し、且つ、対話することができる。
【0015】
図1及び
図2は、複合現実ディスカバリ・フレームワークの例示的実施例を図示したものである。複合現実ディスカバリ・フレームワークは、ディスカバリ・サービス・バックエンド・サーバ100を含む。ディスカバリ・サービス・バックエンド・サーバ100は、本明細書においてさらに説明されるように動作するように構成されたネットワーク接続計算サーバを介して実現することができる。詳細にはサーバ100は、1つ又は複数のマイクロプロセッサ及び命令を記憶するデジタル・メモリを含むことができ、命令は、マイクロプロセッサによって実行されると、本明細書において説明されている特定の操作をサーバに実施させることになる。同様に、本明細書において説明されている他のネットワーク接続デバイスも、同じく、マイクロプロセッサ及び命令を記憶するデジタル・メモリを含むシステムを介して実現することができ、命令は、マイクロプロセッサによって実行されると、本明細書において説明されている特定の操作をシステムに(直接又は他のコンポーネントとの対話を介して)実施させることになる。
【0016】
1つ又は複数の初期複合現実デバイス110はサーバ100と通信することができ、また、地理空間内の様々な位置に存在することができる。初期複合現実デバイス110は、それぞれ1つ又は複数の複合現実サービスを他のデバイスに提供することができ、また、ネットワーク上及び地理空間内における互いの存在を互いに気付いている。初期複合現実デバイス110が
図1において複数のデバイスとして図示されているが、いくつかの文脈では、単一の初期複合現実デバイス110を特定の地理空間内に存在させることができることが企図されており、また、理解される。
【0017】
地理空間内には同じく追加複合現実デバイス120が存在し、他のデバイス110を発見するべく探索しており、また、それらから複合現実サービスを受け取っている。初期デバイス110及び追加デバイス120は、すべて、インターネット又は専用広域ネットワークなどのデータ通信ネットワークを介してディスカバリ・サービス・バックエンド・サーバ100と通信している。いくつかの実施例では、デバイス110及び120がペアにされると、それらは互いに直接通信することができる。他の実施例では、プロキシ・サーバ130を提供して、本明細書において以下でさらに説明されるように、デバイス110と120の間の特定の通信を容易にすることができる。さらに他の実施例では、サービス提供デバイス110及びサービス探索デバイス120は、機器(例えば車両内の複数のシステム)の共通アイテム内で実現することができ、さらには単一の計算デバイス(例えば共通マイクロプロセッサによって実行される、可能性としてループ・バック・インタフェースを介して互いに対話している個別のソフトウェア実現モジュール)で実現することも可能である。
【0018】
図3は、一実施例によるディスカバリ・サーバ100の概略ブロック図である。ディスカバリ・サーバ100は、サービス提供デバイス110とネットワーク通信するための通知インタフェース103を含む。ディスカバリ・インタフェース104は、サービス探索デバイス120との通信を可能にする。インタフェース103及び104を介した通信は、デバイス監視及び突合せモジュール102へ、また、デバイス監視及び突合せモジュール102から伝えることができ、以下でさらに説明されるように動作する。ディスカバリ・サーバ100は、本明細書において以下でさらに説明されるパターン解析モジュール105を実現することも可能である。データ記憶コンポーネント101は、同じく以下でさらに説明される、1つ又は複数のデータベース並びに様々な他の構造化及び非構造化データ記憶機構を含むことができる様々なタイプのデータの記憶及び検索を可能にする。APIモジュール106は、第三者サービスとの様々な他の統合を可能にするアプリケーション・プログラミング・インタフェースを実現することができ、第三者サービスのいくつかは本明細書の別のところで説明される。
【0019】
デバイス110及び120は、それぞれ、知られているネットワーク化プロトコル及びネットワーク化インタフェースを利用している計算デバイスを備えたネットワーク化デバイスであってもよい。ネットワーク化プロトコルは、それらに限定されないが、UDP、TCP、HTTP、Sockets、WebSockets、非同期イベント駆動メッセージ発信又は他のネットワーク化プロトコルを含むことができる。ネットワーク化インタフェースは、それらに限定されないが、USB、Ethernet(登録商標)、CANバス、Fiber Optics、WiFi又は他のネットワーク化インタフェースを含むことができる。
【0020】
図4は、初期デバイス110の例示的実施例の概略ブロック図である。
図4及び
図5の実施例では、デバイス110、初期デバイス(即ち予めディスカバリ・サーバ100に積極的に登録されたデバイス)並びにサービス提供デバイス(即ち他のデバイスに複合現実コンテンツを提供するデバイス)として図示されている。デバイス120は、追加デバイス(即ち他のデバイスとペアにされることになるデバイスなどの、ディスカバリ・サーバ100への登録を求めているデバイス)及び同じくサービス探索デバイス(即ち別のデバイスによって共有される複合現実コンテンツの獲得を求めるデバイス)として図示されている。しかしながら他の実施例では、初期デバイスは、サービス提供デバイス及びサービス探索デバイスのうちのいずれか、又は両方を含むことができることが企図されており、また、理解される。同様に、サーバ100への登録を求めている追加デバイスは、サービス提供デバイス又はサービス探索デバイスのいずれかであってもよい。さらに他の実施例では、特定のデバイスはサービス探索及びサービス提供の両方であってもよく、このようなデバイスは、
図4及び
図5の両方のコンポーネントを含むことができる。サービス提供デバイスは、サービング・デバイス又は複合現実コンテンツ・サービング・デバイスと呼ぶことも時には可能である。同様に、サービス探索デバイスは、クライアント・デバイス及び/又は複合現実コンテンツ消費デバイスと呼ぶことも時には可能である。
【0021】
図4を参照すると、初期デバイス110は、局所使用のため、及び可能性として他のデバイスと共有するための複合現実コンテンツを生成するマイクロプロセッサ実装複合現実コンテンツ生成器113を含むことができる。コンテンツ生成器113は知覚システム112からデータを受け取る。例えば例示的自律車両実施例では、知覚システム112は慣性測定ユニットを含むことができる。慣性測定ユニットから複合現実コンテンツ生成器113へ中継される情報は、加速度計、磁力計、ジャイロスコープ、気圧計及びGPSレシーバのうちの1つ又は複数からのデータを含むことができる。知覚システム112は、デバイス110の近傍の物理的環境を記述する空間データを複合現実コンテンツ生成器113に提供する、光センサ、無線センサ及び/又はレーザ・ベース・センサの何らかの組合せを同じく含むことができる。このような光センサは、光学及び/又は赤外線カメラを含むことができる。無線センサは、レーダ又は地中レーダを含むことができる。レーザ・ベース・センサはLiDARセンサを含むことができる。これら及び他のセンサ112は、デバイス110が局所的に使用するための、また、他のデバイス110と共有するための複合現実コンテンツを生成するためにコンテンツ生成器113によって利用されるデータを提供することができる。
【0022】
デバイス110は、キャッシュ・データ構造又は照会可能データベースなどのデータ記憶装置115を同じく含むことができる。例えば例示的自律車両実施例では、データ記憶装置115は、とりわけ、車両が横断する地理環境に位置する、知られているアセットのための位置データを含む意味マップを含むことができる。データ記憶装置115は、コンテンツ生成器113を含むシステムにデータを提供することができる。データ記憶装置115内の情報は、様々な使用法の中でもとりわけ知覚システム112内の位置決めモジュールが照会して、他の対象に対するネットワーク化デバイスの位置及び姿勢を決定することができ、その車両位置及び姿勢は、複合現実コンテンツのジオロケーションのために複合現実コンテンツ生成器113に提供することができる。当然、位置及び/又は姿勢データを複合現実コンテンツ生成器113に提供するために、他の位置決め技法及び機構(例えばGPS、IMU)を上で説明した位置決めシステムと組み合わせて、或いはその代わりに使用することも可能である。
【0023】
個々の初期デバイス110は、ディスカバリ・サービス通信インタフェース111及び追加デバイス通信インタフェース114をさらに含む。ディスカバリ・サービス通信インタフェース111は、デバイス110とディスカバリ・サービス・バックエンド100の間のデジタル通信を容易にするネットワーク通信インタフェースである。追加デバイス通信インタフェース114は、デバイス110と、他のデバイス110又は新しいデバイス120などの他のデバイスとの間の通信を容易にするネットワーク通信インタフェースであり、これらの他のデバイスへの、又はこれらの他のデバイスからの複合現実コンテンツを共有することができる。
【0024】
図5は、デバイス110の発見を求め、且つ、それらと対話して複合現実コンテンツを受け取り、及び/又は提供する追加デバイス120の概略ブロック図である。新しいデバイス120は、本明細書においては、その新しいデバイス120が他のデバイス110によって提供されるサービスの発見を求め、且つ、利用する範囲内でサービス探索デバイスと呼ぶことも時には可能であるが、デバイス120(及び任意の他のデバイス)は、いくつかの実施例では、サービス探索デバイス及びサービス提供デバイスの両方として作用し得ることが企図されており、また、理解される。サービス探索デバイスとしてのその役割の文脈では、新しいデバイス120は複合現実コンテンツ消費コンポーネント121を含み、デバイス120は、その複合現実コンテンツ消費コンポーネント121のために複合現実コンテンツの受取りを求める。例示的自律車両アプリケーションでは、複合現実コンテンツ消費コンポーネント121は、例えばデバイス120が直接知覚することができない状態(デバイス120上に局所的に搭載されているセンサ(図示せず)の知覚範囲を越えた前方の交通状態など)に関する情報を探索する局所環境マッピング及び/又はナビゲーション制御モジュールであってもよい。複合現実コンテンツ消費コンポーネント121は、他のソースから局所的に提供される複合現実コンテンツを利用するために、典型的にはマイクロプロセッサ・アクセス・デジタル・メモリを使用して実現することができる。デバイス110と同様、デバイス120も、複合現実ディスカバリ・フレームワーク内の他のデバイスと通信するための通信インタフェースを含み、この通信インタフェースは、ネットワーク通信における他のデバイス110との係合のためのデバイス通信インタフェース122、並びに通信におけるディスカバリ・サービス・バックエンド100との係合のためのディスカバリ・サービス・バックエンド通信インタフェース123を含む。デバイス120は、デバイス110における知覚システム112と同様の様々な知覚システムを含むことができるが、デバイス120は、デバイス120の位置及び姿勢に関するデータを他のシステムに提供するために、最小限、複合現実コンテンツ消費コンポーネント121を含む、位置決めモジュール124を含むことが好ましい。
【0025】
いくつかの実施例では、車両は、複合現実コンテンツを提供又は探索する単一のデバイスを含むことができる。他の実施例では、個々の車両は、複合現実コンテンツを提供及び/又は探索する複数のデバイスを含むことができる。いくつかの実施例では、所与の車両上の複数のデバイスは、オンボード通信インタフェースを介して互いに対話し、サービス探索デバイスを有する他の車両と共有するための複合現実サービスを共同して提供することができる。他の実施例では、所与の車両上の複数のデバイスは、ディスカバリ・サーバ100及びサービス探索デバイスと独立して対話することができる(別の車両内に位置していても、或いは同じ車両内に位置していても)。
【0026】
図2に戻ると、複合現実サービス・ディスカバリを実現するために
図1のデバイスが利用することができるプロセスが提供される。ステップS200で、サービス提供デバイス110は、ネットワーク化通信においてディスカバリ・サービス・バックエンド100と係合して、例えばそれらの地理位置及び他のデバイスに提供するために利用することができるサービスを通知する。ステップS210で、他のデバイスからの複合現実サービスを探索しているサービス探索デバイス120がディスカバリ・サービス・バックエンド100にサービス要求を送る。ステップS210のサービス要求は、デバイス120の地理位置(例えば位置決めモジュール124によって決定される位置及び/又は姿勢)、及び任意選択で、探索されているサービスの仕様を含むことができる。ステップS220で、バックエンド100は、利用可能なサービスをデバイス120に発行することによってステップS210の照会に応答する。ステップS220における発行は、とりわけ、サービス提供デバイス110のうちの1つ又は複数との通信に到達することができるネットワーク・アドレス、及びデバイス110から利用することができる1つ又は複数のサービスの識別を含むことができる。
【0027】
ステップS220における発行は、サービス提供デバイス110のサブセットに関連する情報の発行を含むことができる。このサブセットは、ディスカバリ・サービス・バックエンド100が1つ又は複数のデジタル又は物理的特性に基づく基準を使用して決定することができる。例えばいくつかの実施例では、ディスカバリ・サービス・バックエンド100は、多次元現実感を介したネットワーク化デバイスの運動の解析に基づいて、空間データ・ストリームをまとめてグループにするアルゴリズムを実現することができる。ディスカバリ・サービス・バックエンド100は、次に、デバイスのグループ化に基づいてネットワーク化デバイスを互いに紹介することができる。したがって例えば個々のサービス提供デバイス110の位置などの空間メタデータ(絶対的及び/又はサービス探索デバイス120の位置に対する)は、ディスカバリ・サービス・バックエンド100が使用してデバイス110のサブセットを選択し、それによりデバイス120とのペアリングを提供することができる。
【0028】
いくつかの実施例では、ディスカバリ・フレームワークはネットワーク化デバイス110及び120を含み、これらは、それらの位置及びタイムスタンプをディスカバリ・サービス・バックエンド・サーバ100に報告する。サーバ100は、時間的及び空間的多次元現実感を介したネットワーク化デバイス110及び120の運動の解析に基づいて、空間及び一時データ・ストリームをまとめてグループにするアルゴリズムを実現する。サーバ100は、次に、デバイスのグループ化に基づいてネットワーク化デバイス110及び120を互いに紹介することができる。
【0029】
いくつかの実施例では、ディスカバリ・フレームワークは、初期及び追加ネットワーク化デバイスからの多数のセンサ・ストリームからの多次元特徴を利用したグループ化及び突合せアルゴリズムの収集を含むことができる。このアルゴリズムは、一致する特性を有するデバイスを適切にグループ化するために、入力センサ・データ及び追加デバイス・メタデータを利用して特徴を抽出する。
【0030】
図6は、
図2のステップS220で実施することができるような、サーバ100が利用してサービス探索デバイスをサービス提供デバイスのグループとマッチングさせることができるプロセスを図示したものである。ステップS600で、1つ又は複数のデバイス特徴が抽出される(例えばセンサ・ストリームから、或いはデバイス110によってサーバ100に報告された他のデータから)。ステップS610で、サーバ100が抽出された特徴に基づいてデバイス110をグループ化する。ステップS620で、サービス探索デバイスが、それらに限定されないが、抽出された特徴、ジオロケーション又は他の空間的メタデータ、時間的メタデータ、デバイス採択及び機器能力記述子(例えばセンサ又は他の機器仕様)のうちの1つ又は複数を含むことができる対メタデータを使用してサービス提供デバイスのグループのうちの1つ又は複数とマッチングされる。ステップS630で、サーバ100がステップS620で選択されたグループ・メンバーの識別(例えばネットワーク・アドレス及びサービス説明)をサービス探索デバイス120に伝送する。
【0031】
例えばデバイスが車両である実施例の場合、グループ化及び突合せ操作を実現して、同じセンサ・ハードウェア又は同様の能力を有するセンサ・ハードウェアを運んでいる車両(例えばLIDARを運んでいるすべての車両、又はフレーム・レートの高い(high−frames−per−second)ステレオ・カメラ・システムを装備したすべての車両)をグループ化することができる。他のアプリケーションでは、このような車両は、それらが観察している対象に基づいてグループ化することができる(例えば道路の共通長さに沿った共通走行経路上のすべての道路標識を観察しているデバイスを備えた車両をグループ化して、利用可能な従来の高品質マップ・データを有していない地域で、高い信頼性で標識を検出することができる)。
【0032】
これら及び他のグループ化又は選択機構を使用して、所望のシステム挙動を達成することができる。例示的実施例では、ディスカバリ・フレームワークは、特定の時間フレーム内に道路の同じ長さに沿って移動している車両の集団をまとめてグループ化することができ、個々の車両は、初期デバイス及び複数の追加デバイスを運んでいる。車両の集団は、初期デバイス(例えば視覚センサ、慣性センサ、4G通信及びコンピュータからなるデバイス)、及び初期デバイスからのデータを使用することによって道路状態を表示する1つの追加デバイスを運んでいる車両を含むことができる。次に、このグループ化を使用して、個々の車両において観察された現実感を共有し、また、すべてを1つの共通現実感に併合することになる。
【0033】
最後に、ステップS230で、デバイス120は、デバイス110のうちの1つ又は複数と通信してペアとなり、複合現実コンテンツ即ちサービスを共有することができる。ネットワーク化デバイス110及び120は、直接ネットワーク通信インタフェースを実現して、それらの間で直接通信するためのハンドシェークを確立することができる。別のネットワーク通信インタフェースを提供して、デジタル・ネットワーク通信の分野で知られていると思われるが、ネットワーク化デバイス110及び120による、プロキシを介した、或いは遠隔手順呼出し又はロング・ポーリングを利用した通信を可能にすることができる。
【0034】
いくつかの実施例では、デバイスをペアリングする前に初期通信プロトコルを使用することができ、また、デバイスをペアリングした後は異なる通信プロトコルを使用することができる。例えば物理的に互いに近接している2つのデバイスは、直接通信の場合であっても、ペアになる前は、最初は広域ネットワーク(例えばセルラー・インターネット・サービス)を介した通信を利用することができ、ペアになった後、同じデバイスは、Bluetooth(登録商標)、DSRC、NFC又は別の短距離プロトコルなどの第2の通信プロトコルを介して通信することができる。このような実施例は、広域ネットワークを介したトラフィックの低減を可能にし、及び/又は共有されるサービスの性質に合わせて個々に最適化される様々な通信プロトコル間のデバイスの移行を可能にするのに場合によっては有利であり得る。
【0035】
いくつかの実施例は、初期ネットワーク化デバイスと追加ネットワーク化デバイスの間の認証のためのプロトコルを実現して、通信の安全なチャネルを確立することができる。このチャネルは、暗号化、解読、符号化、復号化、圧縮、圧縮解除、ハッシング及び様々な他の技法を利用して、一方向通信、二方向通信、ユニキャスト通信又はマルチキャスト通信を安全にすることができ、延いてはより有効な通信が得られる。通信チャネルを安全にするための暗号化及び解読は、対称、公開かぎ、メッセージ検証又は他の形態の暗号化/暗号手法などの様々な技法を実現することができる。デバイス間通信プロトコルは、初期ネットワーク化デバイスによる、ネットワーク・スタックにおける強制に基づいて交渉することができ、また、利用可能な通信スタイルのアレイから選ぶことができる追加ネットワーク化デバイスとの通信を可能にするための、非同期、同期、遠隔手順呼出し(remote procedure calls:RPC)、ピア・ツー・ピア通信スタイルを含むことができる。ネットワーク・スタックにおける強制のいくつかの実例は、ファイアウォール強制、プロキシ強制、トンネリング強制、帯域幅強制を含むことができる。
【0036】
サービス探索デバイスがステップS230でサービス提供デバイスとペアにされると、サービス探索デバイスは、他のネットワーク化デバイスからの通知に署名することができる。様々なメッセージ発信技法を利用して、1つのデバイスから別のデバイスへ通知を引き渡すことができる。メッセージ発信技法は、それらに限定されないが、イベント・トリガ、ロング・ポーリング、確率過程又はランダム・インターバル、環境に関連付けられたMarkov確率分布関数、デバイスの視野及び構成の使用を含むことができる。
【0037】
初期ネットワーク化デバイス又は追加ネットワーク化デバイスは、IPv4、IPv6、Private IPアドレス、IP Subnetworks、Hostnamesなどの様々なアドレス指定、又はユニキャスト・アドレス指定、ブロードキャスト・アドレス指定、マルチキャスト・アドレス指定、任意のキャスト・アドレス指定又はネットワーク・アドレス・トランスレータなどの他の方法を利用して、単一の受信者又は複数の受信者にアドレス指定された情報を送ることができる。
【0038】
ディスカバリ・フレームワークは、複数のデバイスによる調整、意図の共有及びイベント・ディスパッチに対する反応を許容する共有多次元現実感を含むことができ、共有の又はデバイス固有の多次元現実感内の知覚、配向及び駆動を改善することができる。本発明の特定の実施例では、ディスカバリ・フレームワークは、1つのデバイス固有多次元現実感から別のデバイス固有多次元現実感への空間的変換を計算するために、デジタルであれ、或いは物理的であれ、追加ネットワーク化デバイスと文脈を共有している初期ネットワーク化デバイスにサービスする。空間的変換は、個々のデバイスの多次元現実感空間の間の並進変化及び回転変化の両方を定義することができる。並進は、横方向、縦方向又は垂直方向の軸におけるカプセル化運動であってもよい。回転は、初期ネットワーク化デバイスの横揺れ、縦揺れ及び偏揺れに関するカプセル化運動であってもよい。操作の多次元性質は、ネットワーク化デバイス間の同期化のための時間の修正を同じく許容する。
【0039】
例えば自動車内に搭載され、また、サービス探索デバイスとペアにされた(例えばステップS230で)初期デバイスは、車の屋根に置かれたLIDARデバイスを使用して自転車走行車線を検出することができる。この自転車走行車線はLIDARの基準フレーム内で検出される(LIDARは原点に位置していることを意味している)。オートバイ走行車線は、車両のダッシュボードの上に取り付けられたスマートフォン(二次デバイス)の画面に緑色の走行車線として表示することができる(即ち電話カメラを使用してビデオが生成され、また、電話画面を使用して、LIDARによって検出されたオートバイ走行車線境界が補足されたそのビデオが表示される)。ネットワーク化デバイスのビデオ・フィードに重ねてオートバイ走行車線を表示する場合、オートバイ走行車線の境界を画定している緑色の走行車線は、スマートフォン・カメラが原点に位置している基準フレーム内に置く必要がある。したがってサービス探索デバイスによって消費される複合現実コンテンツに変換を適用することができるよう、LIDARセンサからカメラ・センサへの変換(並進及び回転)を知ることは有利であり得る。
【0040】
いくつかの実施例では、ディスカバリ・フレームワークは初期ネットワーク化デバイスを含み、この初期ネットワーク化デバイスは、その位置、タイムスタンプ、及び描画データ、テキスト・データ、音響データ、ビデオ・データ又は他の形態のメタデータのうちのいくつかの組合せを含むことができる任意のペイロードを、ディスカバリ・サーバ(例えばサーバ100)によって実現されたバックエンド・ディスカバリ・サービスに報告する。追加ネットワーク化デバイスも同じくそれらの位置及びタイムスタンプをバックエンド・ディスカバリ・サーバに報告する。サーバ100によって実現されるアルゴリズムは、時間的及び空間的多次元現実感を介したネットワーク化デバイスの運動の解析に基づいて、ネットワーク化デバイスから任意のペイロードと共に、空間的及び時間的データ・ストリームをまとめてグループ化するように作用することができる。例えば前の段落の、LIDARによって検出された自転車走行車線がスマートフォン・カメラ・ビデオ・フィードに重ね書きされるシナリオでは、ビデオ・フィードが遅延の原因になり得る(例えば約1秒の遅延)。このような状況の場合、最適変換は、補償のためのLIDARフィードにおける遅延の追加などの時間的変換コンポーネントをさらに含むことができ、それにより表示される現実感が違和感なく見えるようにするべく補助することができる。他の状況では、共有複合現実コンテンツを局所複合現実コンテンツに対して遅延させることができ、このような状況では、局所複合現実コンテンツと共有複合現実コンテンツとを時間的に整列させるために、局所複合現実コンテンツに遅延を適用することが望ましい場合があり得る。さらに他の状況では、複合現実コンテンツは、3つ以上のソースをその出所にすることができ(局所複合現実コンテンツであれ、或いは共有複合現実コンテンツであれ)、また、それらを時間的に整列させるために、複合現実コンテンツを消費するデバイスによってソースの各々に可変タイミング・オフセットを適用することができる。
【0041】
図7は、前の段落で詳細に説明した原理による、複合現実コンテンツを消費するための例示的方法を図示したものであり、
図2のプロセスのステップS230に適用することができる。ステップS700で、サービス探索デバイス120は、サービス提供デバイス110によって共有されている複合現実コンテンツを受け取る。ステップS700で受け取られる複合現実コンテンツはコンテンツ・コンテキストを含む。コンテンツ・コンテキストは、それらに限定されないが、物理的並進の記述子、物理的回転の記述子及びタイムスタンプ、又は他の時間的記述子を含むことができる。ステップS710で、サービス探索デバイス120は、サービス探索デバイス120を記述している並進及び回転情報と共に、共有複合現実コンテンツ物理的並進及び回転記述子を利用して空間的変換を共有複合現実コンテンツに適用し、それにより共有複合現実コンテンツをサービス探索デバイス120に適用することができるデバイス固有次元空間にマッピングする。ステップS720で、サービス探索デバイス120は、共有複合現実コンテンツの時間的記述子を利用して時間的変換を共有複合現実コンテンツ及び/又は局所出所複合現実コンテンツに適用し、それにより共有複合現実コンテンツ及び局所出所複合現実コンテンツを一貫性のある時空間にマッピングする。ステップS730で、ステップS710及びS720で空間的に及び時間的に変換された共有複合現実コンテンツがサービス探索デバイス120によって消費される。
【0042】
上で説明したように、バックエンド・サーバ100は、デバイスのグループ化に基づいてネットワーク化デバイスを互いに紹介するためのコンポーネントを実現することができる。デバイスがグループ化され、また、二次デバイスがその近傍における利用可能なサービスの発見を要求したと仮定すると、このコンポーネントは、二次デバイスが利用することができるすべてのサービスの数を、関連する数又はデバイスが消費することができる数のみに低減するアルゴリズムを実現する。例えば二次デバイスが音響出力を有していない場合、場合によっては音響出力をサービス提供音響複合現実に導入する必要はない。アルゴリズムの出力は、要求したデバイスに対する応答であり、利用可能なサービス、及び可能性として、これらのサービスを提供する初期(即ちサービス提供)デバイスにこのデバイスを紹介することを知らせる応答である。ネットワーク化デバイスは、次に、それら自体の間で直接通信するためのハンドシェークを確立することができる。
【0043】
サービス探索デバイス及びサービス共有デバイスがペアにされると(例えばステップS230で)、複数の通信機構のうちの任意の通信機構を介して複合現実コンテンツを共有することができる(例えばプロセス・ステップS700で起こり得るような通信などの、複合現実コンテンツ生成器113及び他のデバイス通信インタフェース114によって、サービス探索デバイス120及びその通信インタフェース122並びに複合現実コンテンツ消費モジュール121に対して通信される)。いくつかの実施例では、コンテンツ共有要求が開始されると、複合現実コンテンツをコンテンツ共有デバイス110からコンテンツ探索デバイス120へストリーミングすることができ、デバイス110は、追加要求を待機することなくデータをデバイス120に送り続ける。他の実施例では、デバイス通信モジュール(例えば通信インタフェース114及び122)は、ネットワーク化デバイスによる、プロキシを介した、或いは遠隔手順呼出し又はロング・ポーリングを利用した後続する通信を許容することができる。共有複合現実環境への参加を求めている新しいデバイス120は、プロキシ・サーバ(即ちリレー)(例えば
図1に示されているプロキシ・サーバ130)を使用することができ、プロキシ・サーバは、次に初期デバイス110からデータを受け取り、そのデータをサービス探索デバイス120へ転送する。プロキシ・サーバ130は、複合現実コンテンツをサービス提供デバイス110から多数のサービス探索デバイス120に分配するように作用することができ、それにより可能性として、多くの利点の中でもとりわけ、調整し、且つ、サービス探索デバイスに分配するサービス提供デバイス110の負担を軽減することができる。ロング・ポーリングの場合、サービス探索デバイス120は、サービス提供デバイス110へのサービスデータの要求を開始することができ、また、サービス提供デバイス110は、個々の要求に応答してサービスデータを伝送する。異なるアプリケーション及び異なるタイプのデータに対しては、場合によっては異なるデバイス−デバイス通信機構が望ましい。
【0044】
いくつかの実施例では、ディスカバリ・サーバ100は、パターン解析モジュール105を実現することができる。好ましくはパターン解析モジュール105は、機械学習を利用して、様々なネットワーク化デバイス110内の多次元現実感から出てくるデータ・ストリーム中のパターンを認識し、これらのパターンをネットワーク化デバイス110から獲得される一意の識別子(例えばサービス提供デバイスの環境内で観察される特定のアセットに関連付けられた一意の識別子)に相関する。データ記憶モジュール101内に実現されるデータベースは、パターン及び一意の識別子を後で利用することができる照会可能なフォーマットで記憶することができる。APIサービス106は、とりわけ第三者サービスと一体化して、要求に応じてデータ・ストリーム中のパターンを通信することができ、したがってAPI106は、可能性として複数の車両上に展開される、複数のサービス提供デバイスによって獲得された複合現実コンテンツ・データから導出される複合現実コンテンツを集約し、且つ、その集約された複合現実コンテンツを外部計算アプリケーションに利用することができるようにするべくサービスすることができる。いくつかの使用事例では、API106によってサービスされるこのような外部計算アプリケーションは車両内で実現することができる(例えばオンボード意味マッピング・モジュール)。他の使用事例では、API106によってサービスされるこのような外部計算アプリケーションは、何らかの特定の車両に無関係に実現することができる(例えばクラウドベース意味マッピング・サービス)。さらに別の使用事例では、API106は、ネットワーク化デバイス110に関してサーバ100によって記憶されている情報を精査し、且つ、解析するために、ダッシュボードをネットワーク化デバイス110のために利用することができるようにするように動作することができる。通知サービス(いくつかの実施例ではAPIモジュール106によって実現することができる)は、次に、トリガに基づいてイベントをディスパッチングするために、ネットワーク化デバイス間のメッセージ発信を処理することができる。
【0045】
いくつかの実施例では、パターン解析モジュール105は、さらに、ネットワーク化デバイスからの複合現実コンテンツ寄与の遠隔集約及び照合のために実現された複合現実集約フレームワークを提供することができる。このフレームワークを利用して様々なデバイスからの観察を記録し、また、異なる次元(空間的、時間的、等々)におけるより完全で、且つ、辻褄の合った複合現実理解を生成し、且つ、宣伝する目的で観察を比較することができる。パターン解析モジュール105は、
図3の実施例ではサーバ100によって実現されたコンポーネントとして図示されているが、他の実施例では、パターン解析モジュール105(及びパターン解析モジュール105によって実現された遠隔集約フレームワーク)は、デバイス発見、監視及び突合せには無関係であり得るサービスとして個別のネットワーク接続計算サーバ上で実現することも可能であることが企図されており、また、理解される。例えばいくつかの実施例では、プロキシ・サーバ130は、サービス提供デバイスとサービス探索デバイスの間の通信のためのコンジットとしてのサービスに加えて、或いはコンジットとしてのサービスの代わりに、本明細書において説明されている複合現実集約サービスを実現することができる。
【0046】
複合現実集約フレームワークは、ネットワーク化デバイスからの複数の観察の直交性を利用して観察の独立性を保証することができる。このフレームワークは、例えばディスカバリ・サーバ100を介して、信頼に基づく異なる観察及びデバイスのランク付けにより、観察間の不一致を管理するためのアルゴリズムを実現することができる。信頼は、デバイスが運ぶセンサ・ペイロードのタイプを示すネットワーク化デバイス・メタデータに基づいて決定することができ、例えばセンサが正確であればあるほど、信頼のレベルが高くなる。信頼関係を築く他の形態は、一定の時間期間にわたってネットワーク化デバイスの観察の真のポジティブ・レートを測定して、特定のデバイスが信頼に値するかどうかを決定することを含むことができる。バックエンド・サーバ100は、他のサンプル及び観察をデバイスに要求して、複合現実地上較正を交渉することも可能である。例えばバックエンド・サーバ100は、観察の要求を選択されたデバイスに積極的に伝送することができ、これは、特定の観察の確信レベルが閾値レベル未満などの低すぎる場合に、場合によっては望ましい。確信は、観察デバイスの信頼及び/又は先行する観察間の変動などの要因によって測定することができる。独立した多次元観察の増加した数をてこ入れすることにより、観察可能な現実感に到達することができ、誤ったポジティブ・レートが指数的に減少する。
【0047】
いくつかの実施例では、デバイス110及び120は、複合現実コンテンツ消費システムを含むことができる。消費は、とりわけ、複合現実コンテンツの可聴、触覚及び視覚フィードバック、観察可能現実感中の動的情報、疑似静的情報及び静的情報の間を差別するための方法、仮想現実感と物理的現実感の間を差別するための方法、時間窓を使用した単一の観察可能現実感の再生機能性、時間窓を使用した、複数のデバイスからの共有観察可能現実感の再生機能性の形態を取ることができる。
【0048】
例示的実施例では、複合現実コンテンツ消費は、都市地域を移動している車両のカメラ・フィード上の地図情報の視覚再生と呼ぶことができる。フィードは、実際の路面の道路名の仮想重書きを含むことができ、道路名標識が植物の入来又は道路上の他の車両によってよく見えない場合にとりわけ有用である。別の例示的実施例では、走行車線を表す通例の印が路面になくてもよく、複合現実体験のみが車両のための安全な移動地域を表す必要な印を提供することができる。このような特徴は、その日の時間帯に基づいて交通渋滞を緩和するために使用することができる。
【0049】
ディスカバリ・フレームワークは、バックエンド・サーバ上に展開された、初期ネットワーク化デバイス及び追加ネットワーク化デバイスのためのタスクのスケジューラを含むことができる。いくつかの実施例では、スケジューラは、例えばパターン解析モジュール105によって実現することができ、他の実施例では、スケジューラは、サーバ100内の個別のコンポーネントによって、或いは外部のネットワーク接続サーバによって実現することができる。スケジューラは、必要な特徴を所有しているデバイス(例えば所望の基準を満たしているサービスを提供するデバイス)によって完了されるタスクの待ち行列にアクセスすることができる。スケジューラは、タスクを特定のデバイス又はデバイスのグループにディスパッチングすることができる。これは、ブートローディング又は無線プログラミングなどの方法の展開によって達成することができる。ソフトウェア・アプリケーション、アプリケーションの特定のバージョン又はそれらの構成パラメータは、ディスカバリ・フレームワークを実現するサーバからサービス提供デバイスへ伝送することができる。ソフトウェア・バージョンを検証するための、md5sumsからの二進シグネチャなどの様々な方法を利用することができる。
【0050】
ディスカバリ・フレームワークは、タスクを有する初期ネットワーク化デバイスと追加ネットワーク化デバイスをペアリングするための一組のアルゴリズムを利用することができる。これらのアルゴリズムは、個々のデバイスからの特定のメタデータ、特定の生センサ・データ、観察された現実感から抽出された特徴、等々を利用することができる。タスクにおける個々のデバイスの有効性のランク付けを生成することができる。次に、最適化方法を適用して、異なるデバイス、それらの特性及び制限(例えば物理的位置及び行先、利用可能な知覚及び計算資源)を考慮し、それにより複合現実情報カバレージ及び精度を最大化することができる。例えば一組のデバイスに、特定の道路交差点の状態を観察するタスクを割り当てることができる。デバイスのサブセットのみが前方カメラを運び、一方、すべての他のデバイスが後方カメラを有している(或いはカメラを全く有していない)と仮定すると、バックエンドのこの特徴を使用して、適切なセンサ・ペイロードを運んでいるデバイスのみにタスクをディスパッチングすることができる(この情報は、例えばデバイス・メタデータに利用することができる)。
【0051】
ディスカバリ・フレームワークは、典型的にはディスカバリ・サービス・バックエンド・サーバ100内で実現されるモジュールであって、スケジュールされた様々なタスクが初期ネットワーク化デバイス及び追加ネットワーク化デバイスによって実施されると、それらのタスクの出力の結果を収集するためのモジュールを含むことも可能である。例示的実施例では、ネットワーク化デバイスは、デバイスが道路上を移動している際に観察されたマップ・ベクトル寄与を報告することができる。収集モジュールは、次に、寄与をキャッシュにアセンブルし、引き続いて、寄与の適切性に関して様々な仮説を試験することができる。このような実施例の一実例では、高速道路上の新たに追加された走行車線のセンターラインを表す仮想特徴を創造するタスクを多くのデバイスに割り当てることができる。個々のデバイスは、このセンターラインのその独自のバージョンを報告することができ、この独自のバージョンは、デバイスにおいて遭遇するあらゆる位置決め誤差、又は走行車線の一部をブロックする大型トラックによってもたらされる障害物を継承している。バックエンドは、次に、これらの異なる観察を仮説として収集し、次に、確率比検定、隠れマルコフ・モデル、等々を使用して仮想センターラインを抽出することができる。同様の操作をネットワーク化デバイス自体の上で実施することも可能であり、マップ・キャッシュの局所コピーを観察された環境に対して比較し、また、妥当性又は非妥当性を検証することができる。
【0052】
ネットワーク化デバイスは、センサ・データ及びセンサ実時間構成のための局所処理能力を提供することができる。初期ネットワーク化デバイスは、能動知覚能力(LiDAR)又は受動知覚能力(カメラ)へのアクセスを有することができる。いずれの場合においても、デバイスは、センサ・フレーム毎により大量の情報を生成するために、センサ光学系に中心窩を設ける(foveating)ことなどによってセンサを動的に構成するために選定することができる。この中心窩又は他の動的センサ構成は、観察された現実感、生センサ・ストリームから抽出された特徴、ディスカバリ・バックエンドからの要求、等々を含む様々な要因によって決定することができる。同様に、デバイスは、生センサ・データからの情報を動的にカプセル化するか、又は省略することができる。これは、デバイスのセンサ・データから移動対象を除去し、観察可能な現実感からの疑似静的情報及び静的情報のみが保持されていることを保証するために使用することができる。このような動的センサ構成は、タスクに応答して返されるデータを最適化するために、サービス提供デバイスに割り当てられたタスクに応答して実施することができる。追加又は別法として、局所データ処理を実施して、観察された情報をタスクに応答して抽出することも可能であり、それにより不必要な、及び/又はタスクに無関係のデータのリターン伝送を回避することができる。したがって例えばLiDARを介して対象を観察するタスクをサーバ100から受け取ったサービス提供デバイスは、そのタスクに関連付けられた観察能力を高くするために、そのタスクのために必要な方向での観察に優先順位を付けるようにそのLiDARセンサを構成することによって応答することができる。タスクを実施するサービス提供デバイスは、次に、そのタスクに応答して観察されている対象に関連付けられた観察データを抽出するために、そのタスクに関連したLiDAR観察に対する局所データ処理を適用し、それによりタスク関連データの品質を最良化し、その一方でそのタスクに応答して観察を返すために必要な通信ネットワーク帯域幅の消費を最小化することができる。
【0053】
図8は、上で説明した特定のシステム及び方法の実施例による、サービス提供デバイスの分散母集団全体にわたるタスク待ち行列を管理するための例示的プロセスを図示したものである。ステップS800で、サーバ100は、サービス提供デバイス110に割り振るために1つ又は複数のタスクを待ち行列にする。ステップS810で、サーバ100は、待ち行列にされたタスク毎にタスクを1つ又は複数のサービス提供デバイス110に割り振る。ステップS820で、サーバ100は、そのタスクが割り振られたサービス提供デバイスに個々のタスクを運ぶ。ステップS830で、タスクを受け取るサービス提供デバイスは、デバイスのそのタスクの性能を最適化するために、知覚システム112を動的に構成する。ステップS840で、サービス提供デバイスは、知覚システム112を使用して応答データを入手することによってタスクを実施する。ステップS850で、サービス提供デバイスは、ステップS840で入手したデータをフィルタリングし、タスクに関連付けられたデータを抽出する。ステップS860で、サービス提供デバイスは、抽出したデータを伝送してサーバ100に返す。したがってサーバ100は、分散されたサービス提供デバイスの母集団全体にわたる複合現実コンテンツのグループ収集を達成することができ、その一方でコンテンツ品質を最適化し、且つ、データ伝送負荷を最小化することができる。
【0054】
いくつかの実施例では、ネットワーク化デバイスは、局所データ変換及び次元性削減(dimensionality reduction)を実現することができる。詳細には、ネットワーク化デバイスは、局所センサ・フレーム(デバイスによって画定される)と広域地理基準フレーム(global geo−referenced frame)の間のメタデータ及びセンサ・データの二方向位置決めを実現することができる。デバイスは、追加又は別法として、センサ・ストリーム中の次元性を削減し、それによりデータからの特徴の抽出を容易にするためのアルゴリズムを実現することができる。例えばLiDARセンサから生成される空間点クラウド・データの配向は、デバイスによって観察された地平面と整列している基準のフレーム中に回転させることができ、それによりデバイスによるそのデータの標準化された使用を可能にしており、その標準化された使用により、点クラウド・データが次に共有される。一方、その点クラウド・データの次元性削減は、データ量の削減及び伝送帯域幅要求事項の削減を促進することができる。特定のフレーム内の1つ又は複数の軸に沿った(例えば移動の方向又は時間軸に沿った)センサ・データの圧縮などの、次元性削減のための異なる戦略を実現することができる。したがってデバイスによって観察された現実感は、次に、同じくその方式で、削減された次元性中に投影し、記憶し、且つ、伝送することができる。
【0055】
ネットワーク化デバイスは、GPS及び慣性センサの不正確性に関連する位置決め誤差の修正及び円滑化を目標とした位置洗練アルゴリズムを実現することができる。例示的実施例では、初期デバイスは、そのセンサ・データを利用してその位置を洗練することができる。これは、センサ・データからシグネチャを抽出し、且つ、このようなシグネチャを既存の局所化マップ中でマッチングさせ、地理基準位置を様々なシグネチャに割り当てることによって達成することができる。粒子フィルタを利用して、雑音が多い慣性及び位置測値を局所化シグネチャ・テーブル中の探索機能性から提供される修正値と結合することにより、デバイスのための状態予測を生成することができる。局所化方法をデータ中の環閉合(loop closures)に適用して、記録されたセンサ・データに対する変動の影響を防止することができる。
【0056】
初期ネットワーク化デバイスと追加ネットワーク化デバイスの間のネットワーク通信のための、デバイスがそれらの現在の状態マシン及びその前の状態マシン、又はそれらの将来の意図を共有することができるプロトコルを提供することも場合によって同じく望ましい。例えばいくつかの実施例では、初期デバイスは、車両が道路施設上を移動する際のその位置を追跡することができる。自動車両の場合、初期デバイスは、車両の進路変更毎の、及び走行車線変更毎の意図と共に、車両の出発点及び行先を知ることができる。別の車両内サービス提供デバイスから車両位置データを受け取る二次サービス探索デバイスとして作用するタブレット・コンピュータを車両内に提供することができ、それによりタブレット・コンピュータは、次に、車両の正確な位置を3Dマップ内で表示することができる。この特徴により、初期(サービス提供)デバイスは、車両の将来の意図を送ることができ、また、これらの意図を二次(サービス探索)デバイス上に表示することができる。二次デバイス(タブレット・コンピュータ)ディスプレイを見ている車両占有者に関しては、この特徴は、車両の走行がその占有者にとって予期しないものになる可能性が低くなるよう、車両がどこへ行こうとしているのかをその占有者が知り得る範囲内で、その占有者の自動車両における信頼を増すことになる。本明細書の別のところで説明されているプロトコルを利用してこのような機能性を実現することができる。
【0057】
初期ネットワーク化デバイス又は追加ネットワーク化デバイスは、媒体コンテンツ、静的コンテンツ、非静的コンテンツ及び投影可能コンテンツを含む広範囲にわたる様々なコンテンツを利用することができる。媒体コンテンツは、描画データ、多重媒体データ、音響データ、テキスト・データ、地理空間データ、ASCIIメタデータ、二進メタデータ、実行可能プログラム、構成、機械学習特徴及びモデル、デバイスからの状態マシン、デバッグ情報又は何らかの他の任意のペイロードを含むことができる。媒体コンテンツは、初期ネットワーク化デバイスの配向を物理的に考慮するパラメータ、初期ネットワーク化デバイスの観察可能現実感、初期ネットワーク化デバイスの状態マシン、自律的に、或いは外部の補助を使用して運転している間の初期ネットワーク化デバイスの意図、初期ネットワーク化デバイスの位置、多次元現実感における、時間に対する初期ネットワーク化デバイスの運動を記述している時間的/空間的情報、又は初期ネットワーク化デバイス内に含まれている、或いは初期ネットワーク化デバイスによって生成される任意の一意の識別子によって操作することができる。
【0058】
デバイス間で共有することができる静的コンテンツは、それらに限定されないが、画像、ビデオ、ウェブ・ページ、Java(登録商標)Scriptコード、カスケーディング・スタイル・シート、JSON中の構成ファイル、XML中の構成ファイル、JSON中のGeoJSONファイル、Shapefiles、又は任意のペイロードとして表された他の情報の使用を含む。ネットワーク化デバイスが利用することができる非静的コンテンツは、それらに限定されないが、RESTFUL API、非同期イベント駆動データ・ストリーム、データベース照会及び応答、雑マイクロ−サービス、メモリ内キャッシュ、コールバック、プロセス間通信(IPC)又はシリアル・インタフェースを含む。
【0059】
投影可能コンテンツは、それらに限定されないが、観察可能な物理対象を表すマップ・ベクトル情報、投影される仮想対象を表すマップ・ベクトル情報、マップ内に含まれている物理及び仮想特徴を表すマップ通知を含むことができる。コンテンツは、対応するビデオ・フィードと併合することができ、或いはヘッド・マウンテド・ディスプレイを介したユーザのビューと直接併合することができ、それにより地図情報の複合現実遠近法を提供することができる。
【0060】
デバイスは、時間的メタデータを利用して、それらに限定されないが、UTCタイムスタンプ、GPS時間、特定のイベントからの相対時間、離散イベントシミュレータによってトリガされる非同期イベント駆動メッセージ発信、又は任意のペイロードを有する他の形態の包括的通知の使用を含むことができるイベントを起動することができる。
【0061】
ネットワーク化デバイスは、ジオフェンスを使用して、それらに限定されないが、センサ基準フレーム内の境界、楕円座標系における境界、直交座標系における境界又は球座標系における境界の使用を含むことができる、様々な座標系における空間境界を画定することができる。ジオフェンスを使用して、複合現実コンテンツを利用することができる地域、或いは共有のためにより多くのコンテンツを利用することができる地域の範囲を定めることができる。
【0062】
イベント・トリガを使用して、例えば複合現実コンテンツの特定のバージョンを開始することができ、或いは現在のコンテンツを変更することができる。イベント・トリガの実例は、それらに限定されないが、強力な加速信号が1つの次元又は複数の次元で記録される加速度計イベント・トリガ、受信した信号の特定の状態が、伝送された、或いは消費された複合現実コンテンツを判定するGPSイベント・トリガ、生ビジョン・センサ入力、又はセンサ・データから抽出された何らかの特徴の存在が複合現実体験の変化をトリガすることができるビジョンイベント・トリガ、期待される複合現実及び現在の複合現実の変化を1つ又は複数のデバイスに報告することができ、また、ディスカバリ・サービス・バックエンドにアップロードすることができる仮説試験イベント・トリガを含む。
【0063】
1つ又は複数のネットワーク化デバイスを運んでいる移動プラットフォームは、プラットフォーム構成ファイルを利用して、センサ及びデバイスがプラットフォーム上に取り付けられている場所を記述することができる。例えば車両は、様々な配向で(例えば前向き、後ろ向き、横方向に角度をなして、及び車両に対して異なる位置を有して)配置される、1つ又は複数の異なるタイプの複数のセンサ(例えばLiDAR、光学カメラ、レーダ)を取り付けるセンサ・フレームを含むことができる。いくつかの実施例では、構成は、剛直ボディ・プラットフォーム・フレームの原点からのx、y、z方向の相対位置オフセットを記述するように選択することができる。位置オフセットに加えて、剛直ボディ・プラットフォーム・フレームの原点からの回転を表す回転角度を記述することも同じく可能である。プラットフォーム構成ファイルは、1つ又は複数の関連するサービス提供デバイスによって伝送することができ、また、コンテンツを受け取る他のデバイスによって、或いはLIDARが検出した自転車走行車線境界を異なる位置及び配向から取られたカメラ・ビデオ上に翻訳するスマートフォンの実施例に関連して上で説明したように、受け取ったデータを解釈するためにディスカバリ・サービス・バックエンドによって利用することができる。
【0064】
初期ネットワーク化デバイス又は追加ネットワーク化デバイスを運んでいる移動プラットフォームは、異なる特性を有する多彩なハードウェアを利用することができる。特性の説明は、ハードウェア構成ファイルにも同じく提供することができる。ハードウェア構成は、解像度、視野、サンプリング・レート、精度、範囲、計算容量、尤度、サイズ、環境頑丈性、データ転送速度、又はハードウェアに適用することができる様々な他の特性を記述するように選択することができる。ハードウェア構成ファイルは、プラットフォーム構成ファイルと協同して、ハードウェアがプラットフォームによって取り付けられ、また、利用される様子を記述するように働くことができる。このようなハードウェア特性データは、それらに限定されないが、複合現実コンテンツの解釈、異なる次元空間への複合現実コンテンツの変換、サービス提供デバイスのグループ化、複合現実コンテンツの品質の評価、及び複合現実コンテンツに与えられる信頼の評価を含む任意の複数の目的に利用することができる。
【0065】
図9は、本明細書において説明されている特徴及び能力の他の組合せを実現する他の実施例を図示したものである。
図9の実施例では、サービング・デバイス900は複合現実コンテンツ提供デバイスとして作用する。サービング・デバイス900はセンサ901から生データを受け取り、この生データを処理して動作複合現実コンテンツを生成することができる。サービング・デバイス900によって生成される複合現実コンテンツは、タイムスタンプ、配向記述子及び位置記述子を含む空間的及び時間的メタデータを含む。サービング・デバイス900は、他のデバイスとのペアリングを調整するために、インターネットなどのデジタル通信ネットワークを介してディスカバリ・サーバ910と通信する。サービング・デバイス900は、複合現実コンテンツ集約サーバ920と通信することも可能である。サーバ920は、それにより、サービング・デバイス900(並びに他のコンテンツ提供デバイス)によって提供される複合現実コンテンツ、及びそこから導出される情報データを獲得し、記憶し、処理し、及び/又は再分配することができる。
【0066】
クライアント・デバイス930は、複合現実コンテンツのソースを識別するためにディスカバリ・サーバ910と対話することができる。クライアント・デバイス930は、空間的及び/又は時間的メタデータ(タイムスタンプ、配向及び位置など)と結合することも可能であり、このメタデータは、ディスカバリ・サーバ910がクライアント・デバイス930とサービング・デバイス900などのコンテンツの1つ又は複数のソースとをペアリングするために、ディスカバリ・サーバ910によって利用することができる(単独で、或いは好ましくはサービング・デバイス900などの複合現実コンテンツ・サービング・デバイスからのメタデータと組み合わせて)。サービング・デバイス900とペアにされると、クライアント・デバイス930及びサービング・デバイス900は直接通信することができ、それによりサービング・デバイス900は複合現実コンテンツをクライアント・デバイス930に提供する。いくつかの使用事例では、クライアント・デバイス930は、追加又は別法として、ディスカバリ・サーバ910によって編成される同様の発見及びペアリング・プロセスを介したものであれ、或いはクライアント・デバイス930と集約器920の間の直接照会を介したものであれ、複合現実コンテンツ集約器920からの複合現実コンテンツの獲得を求める。何らかのイベントにおいて、クライアント・デバイス930は、次に、複合現実コンテンツの何らかのこのようなソースを消費することができる。クライアント・デバイス・センサ931を利用して、それらに限定されないが、局所的に獲得されたコンテンツを共有複合現実コンテンツと統合するためのカメラ入力及びマイクロホン入力を含む、複合現実消費のための他の入力を提供することも可能であり、また、配向センサを同じく利用して、他のソースから獲得された複合現実コンテンツに適切な空間的変換を適用することも可能である。
【0067】
図10は、
図9の実施例と同様のさらに別の実施例を図示したものであるが、サービング・デバイスとクライアント・デバイスの間の複合現実コンテンツの転送を容易にするためのプロキシ・サーバをさらに提供している。具体的には、クライアント・デバイス1030は、ディスカバリ・サーバ1010との対話を介してディスカバリ・サービング・デバイス1000と通信することができる。しかしながらペアにされると、サービング・デバイス1000及びクライアント・デバイス1030は複合現実コンテンツを直接交換するのではなく、サービング・デバイス1000は、複合現実コンテンツをプロキシ・サーバ1040に提供する。プロキシ・サーバ1040は、次に、そのコンテンツをクライアント・デバイス1030が利用できるようにすることができる。複合現実コンテンツは、サービング・デバイス・センサ1001によって獲得することができ、或いはサービング・デバイス・センサ1001によって提供されたデータから導出することができ、また、タイムスタンプ、配向及び位置などの時間的及び空間的メタデータと結合することができる。同様に、クライアント・デバイス1030は、プロキシ・サーバ1040を介して遠隔的に獲得された、又は複合現実コンテンツ集合器1020から獲得された、或いは他のソースから獲得された複合現実コンテンツのその消費に関連してセンサ1031を利用することができる。
【0068】
ネットワーク化デバイスは、様々な通信チャネルを利用して様々なメッセージを互いに渡すことができる。メッセージ又は通知を同報通信するための技法は、それらに限定されないが、クラウド中に名前空間を有する遠隔手順呼出し、メッセージを署名したクライアントに中継し、また、広域メッセージをブラストするすべてのメッセージをすべての接続されたクライアントに送る名前空間の使用を含むことができる。通信チャネルは、暗号化又は圧縮技法をてこ入れしてデータ・サイズを縮小し、また、通信チャネルをスニッフィングから保護することができる。
【0069】
初期ネットワーク化デバイス又は追加ネットワーク化デバイスは、空間の概念を利用してクライアントによる名前空間への署名を可能にすることができる。クライアント・サーバ・アーキテクチャでは、クライアントは空間に署名することができ、また、それらに限定されないが、RESTFUL APIサービス、ソケット通信、ウェブ・ソケット、遠隔手順呼出し、TCPソケット、UDPソケット、RTSP、又は空間内の1つのクライアントから空間内の1つ又は複数のクライアントへメッセージを中継することができる他の形態のプロトコルの使用を含むことができる様々なプロトコルを使用してメッセージを送ることができる。空間は、現在署名されているクライアントに関する情報を検索するための機能性、クライアント間の直接メッセージ又は私用メッセージの使用を含むことができる。空間に対するインタフェースは、それらに限定されないが、ウェブ・ブラウザ、固有デスクトップ・ユーザ・インタフェース、コンテナ(例えばDockerコンテナ又はLinuxコンテナ)中のターミナル・コマンド・ライン、ホスト・オペレーティング・システム中のターミナル・コマンド・ライン、RESTFUL APIサービスを介したヘッドレス・プログラマチック・アクセス、ソケット通信、ウェブ・ソケット、遠隔手順呼出し、TCPソケット、UDPソケット、RTSP又は他の形態のプロトコルの使用を含むことができる。
【0070】
初期ネットワーク化デバイス又は追加ネットワーク化デバイス或いは集中化されたバックエンド・インフラストラクチャは、それらに限定されないが、RESTFUL APIサービス、ソケット通信、ウェブ・ソケット、遠隔手順呼出し、TCPソケット、UDPソケット、RTSP又は他の形態のプロトコルの使用を含むことができる様々な通信チャネルを使用してメッセージを同報通信するように選択することができる。初期ネットワーク化デバイス又は追加ネットワーク化デバイスは、バックエンド・インフラストラクチャ、初期ネットワーク化デバイス又は追加ネットワーク化デバイス内に記憶されているペアリング情報に基づいて相互に発見することができる。構成は、初期ネットワーク化デバイス又は追加ネットワーク化デバイス或いはバックエンド・インフラストラクチャがメッセージ及び通知をピア・ツー・ピア同報通信又はプロキシ・ベース同報通信することができるように提供することができる。
【0071】
初期ネットワーク化デバイス又は追加ネットワーク化デバイス或いは集中化されたサービスは、それらに限定されないが、パブリックIP、プライベートIP、MACアドレス、ポート・アドレス、ショート・コード又は任意のペイロードなどのメタデータを使用して、イネーブルされたデバイスを相互に発見させ、また、共通バックエンドを使用して、直接ノード・ツー・ノード通信又は遠隔手順呼出しのいずれかを介して対話させることができる。
【0072】
初期ネットワーク化デバイス又は追加ネットワーク化デバイス或いは集中化されたサービスは、異なるフレーム間でメタデータを投影することができる。フレームのいくつかの実例は、それらに限定されないが、地理基準フレーム、プラットフォーム基準フレーム、カメラ・データの局所センサ基準フレーム、LiDARデータの局所センサ基準フレーム、レーダ・データの局所センサ基準フレーム、任意のデータ・ストリームの任意の局所センサ基準フレームの使用を含むことができる。基準フレーム間を移動している間に投影を較正するために、フィルタを使用して変換を導入するか、又は逆変換することができ、フィルタは、それらに限定されないが、基準フレームを較正するためのひずみフィルタ、画像安定化、確率的サンプリング又は他のフィルタの使用を含むことができる。
【0073】
初期ネットワーク化デバイス又は追加ネットワーク化デバイス或いは集中化されたサービスは、3D復元技法、2D重ね合わせ技法、及び移動プラットフォームと同じ基準フレームを共有している周辺デバイスからの任意のメッセージの統合などの技法を利用して複合現実コンテンツを投影することができる。
【0074】
以上、本明細書において、本発明の特定の実施例について、本発明を明確にし、且つ、理解する目的で詳細に説明したが、以上の説明及び図は、単に本発明を説明し、例証したものにすぎず、本発明はそれらに限定されない。本発明又は添付の特許請求の範囲を逸脱することなく、本明細書において開示された本発明に修正及び変更を加えることができることは、本開示を得た当業者には認識されよう。
【国際調査報告】