JP2018526698A - ローカライゼーション・エリア記述ファイルのプライバシ機密クエリ - Google Patents

ローカライゼーション・エリア記述ファイルのプライバシ機密クエリ Download PDF

Info

Publication number
JP2018526698A
JP2018526698A JP2017556927A JP2017556927A JP2018526698A JP 2018526698 A JP2018526698 A JP 2018526698A JP 2017556927 A JP2017556927 A JP 2017556927A JP 2017556927 A JP2017556927 A JP 2017556927A JP 2018526698 A JP2018526698 A JP 2018526698A
Authority
JP
Japan
Prior art keywords
area description
localization area
request
description file
spatial features
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017556927A
Other languages
English (en)
Other versions
JP2018526698A5 (ja
Inventor
パトリック ウィリアムズ、ブライアン
パトリック ウィリアムズ、ブライアン
トゥ、ローレント
ネルーカー、エシャ
リネン、サイモン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2018526698A publication Critical patent/JP2018526698A/ja
Publication of JP2018526698A5 publication Critical patent/JP2018526698A5/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0252Radio frequency fingerprinting
    • G01S5/02521Radio frequency fingerprinting using a radio-map
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/16Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • G06F16/432Query formulation
    • G06F16/433Query formulation using audio data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/69Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for evaluating synthetic or decoded voice signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L25/87Detection of discrete points within a voice signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/024Guidance services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/026Services making use of location information using location based information parameters using orientation information, e.g. compass

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Electromagnetism (AREA)
  • Library & Information Science (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

コンピューティング・システムは、データストアと、ネットワーク・インターフェースと、クエリ・モジュールとを備える。前記データストアは複数のローカライゼーション・エリア記述ファイルを記憶する。前記ネットワーク・インターフェースは、モバイル・デバイスからローカライゼーション・エリア記述ファイルのリクエストを受信する。前記リクエストは空間的フィーチャのセットと1以上の非画像位置インジケータとを含む。前記クエリ・モジュールは、前記リクエストの前記空間的フィーチャのセットと前記リクエストの前記1以上の位置インジケータとのうち一方に基づいて1以上の候補ローカライゼーション・エリア記述ファイルを識別するクエリ・インターフェースと、前記リクエストの前記空間的フィーチャのセットと前記1以上の位置インジケータとのうち他方に基づいて候補ローカライゼーション・エリア記述ファイルのからローカライゼーション・エリア記述ファイルを選択する選択モジュールと、を含む。前記クエリ・モジュールは選択された前記ローカライゼーション・エリア記述ファイルを前記モバイル・デバイスに対して提供する。

Description

本開示は一般的には、視覚的マッピング・システムに関し、より詳細には、視覚的情報を用いたモバイル・デバイスのローカライゼーションに関する。
視覚的マッピング・システムは、慣性情報だけでなく、モバイル・デバイスによってキャプチャされた視像において検出された空間的フィーチャ(「視覚的フィーチャ」とも称される)に依拠して、三次元(3D)空間内のモバイル・デバイスの現在位置および配向を判定する。典型的には、既知の固定参照フレームに対しての同期を必要とする様々な機能(たとえば、仮想現実(VR)機能、拡張現実(AR)機能、または、複数のモバイル・デバイス間においてゲーム機あるいは他のデバイスを使用可能にする対話)を促進するように、規定された座標フレームのコンテキストにおいて位置および配向が判定される。同時ローカライゼーション・マッピング(SLAM)手法によって、モバイル・デバイスは、以前にマッピングされていないエリアを、該エリア内の位置および配向を同時に学習しつつマッピングできるようになる。したがって、モバイル・デバイスは、同一エリアに戻ると、「ローカライゼーション」として知られている工程において以前に観察された空間的フィーチャを検出することによって、該エリア内の現在位置および配向をすぐに判定し得る。しかしながら、モバイル・デバイスは、あるエリアに初めて進入するとき、これらの以前に検出されたローカライゼーション・キューを欠いている。従来の視覚的マッピング・システムにおいて、モバイル・デバイスは、相当な時間とリソースとを要する視覚的マッピング工程を実装することでエリアを「学習」しなければならない。以前にマッピングされていないエリアについて視覚的マッピング工程を実行することに関わる遅延を避けるために、従来の視覚的マッピング・システムは、その代わりに、非視覚的配向入力(たとえば、慣性センサ・フィードバックを介したグローバル・ポジショニング・システム(GPS(登録商標))情報または位置マッピング)に基づいてモバイル・デバイスの配向または位置の検出に戻り得る。しかしながら、これらの非視覚的マッピング・ソリューションは、センサおよび計測の変位によって、信頼性を欠き(たとえば、屋内、または、高い障害物によって囲まれるエリア内においてGPS受信状態が悪い)、精密でなく、エラーを起こしやすい可能性がある。
本開示の少なくとも一実施形態によるローカライゼーション用にモバイル・デバイスに対して提供されるエリア記述ファイルをクラウド・ソーシングによって生成および更新するためのクラウド・ベースでの視覚的マッピング・システムを示す図。 本開示の少なくとも一実施形態による図1の視覚的マッピング・システムのエリア記述ファイル・サーバを示すブロック図。 本開示の少なくとも一実施形態による図1の視覚的マッピング・システムのモバイル・デバイスを示すブロック図。 本開示の少なくとも一実施形態による以前にマッピングされたローカライゼーション工程または以前にマッピングされていないローカライゼーション工程のうちの1つを選択するための方法を示すフロー図。 本開示の少なくとも一実施形態によるローカライゼーション・エリア記述ファイルをクラウド・ソーシングによって生成するための方法を示すフロー図。 本開示の少なくとも一実施形態によるリモート・エリア記述ファイル・サーバから得られるローカライゼーション・エリア記述ファイルを用いてモバイル・デバイスに対してローカライゼーションを行うための方法を示すフロー図。 本開示の少なくとも一実施形態によるローカライゼーション・エリア記述ファイルをクラウド・ソーシングによって更新するための方法を示すフロー図。 本開示の少なくとも一実施形態によるローカライゼーション・エリア記述ファイルに含めるための候補空間的フィーチャを評価するための方法を示すフロー図。 本開示の少なくとも一実施形態によるローカライゼーション・エリア記述ファイルから除外するための空間的フィーチャを評価するための方法を示すフロー図。 本開示の少なくとも一実施形態によるローカライゼーション・エリア記述ファイル・クエリを実行するためのエリア記述ファイル・サーバのLADFデータベースのための二段階クエリ・インターフェースを示す図。 本開示の少なくとも一実施形態によるローカライゼーション・エリア記述ファイルのための二段階クエリのための方法を示すフロー図。 本開示の少なくとも一実施形態によるローカライゼーション・エリア記述ファイル・クエリを実行するためのエリア記述ファイル・サーバのLADFデータベースのための別の二段階クエリ・インターフェースを示す図。
本開示は、添付の図面を参照することによって、当業者によってよりよく理解され得るし、その多くの特徴および利点も当業者に明らかになり得る。異なる図面における同じ参照符号の使用は、類似または同一の項目を示す。
以下の説明は、視覚的マッピング・システムに関する多くの具体的な実施形態および詳細を提供することによって、本開示の完全な理解を伝達することを意図している。しかしながら、本開示は、単なる例示でありこれらの特定の実施形態および詳細に限定されるものではなく、本開示の範囲は、したがって、特許請求の範囲およびその均等物によってのみ限定されることが意図される、ということが理解される。既知のシステムおよび方法に照らして、当業者は、特定の設計および他の必要性に応じて、任意の数の代替実施形態における意図された目的および利益のための開示の使用が理解されるであろう、ということがさらに理解される。
図1〜図12は、クラウド・ベースでローカライゼーション・エリア・データをモバイル・デバイスに対して生成、改良、および提供するための例示的なシステムと手法とを示す。少なくとも一実施形態において、視覚的マッピング・システムは、1以上の有線または無線ネットワークを介して複数のモバイル・デバイスに通信可能に接続されるエリア記述ファイル(ADF)サーバを備える。モバイル・デバイスは、以前にマッピングされていないエリアに進入すると、エリア学習工程を開始し、それによってモバイル・デバイスは、該エリアの視像をキャプチャし、キャプチャされた視像を用いて空間的フィーチャを検出し、空間的フィーチャの表現と、それらの相対形状と、関連付けられている統計データと、同時にキャプチャされたADF内のセンサ・データとをADFサーバに対して送信する。ADFサーバはこのADFを用いて、ローカライゼーションADF(LADF)を生成する。LADFは、該エリアの空間的フィーチャの粗いポイント・クラウドを表す。なお、用語「ファイル」(たとえば、「エリア記述ファイル」の中で用いられるか、本明細書において他の箇所で用いられる)は、データと他の情報フィールドとを関連付けるために用いられる任意のデータ構造、または、そのようなデータ構造の任意の組み合わせを指す。そして、LADFは、LADFによってカバーされるエリア内の他のモバイル・デバイス104へダウンロードされ得る。LADFを受信するモバイル・デバイスは、該エリアの視像をキャプチャしてもよく、その中にある空間的フィーチャを検出してもよく、検出された空間的フィーチャおよび相対形状を、LADFによって表される検出された空間的フィーチャおよび相対形状と比較してもよく、それによって、LADFによって提示される参照座標フレームを用いて該エリア内のモバイル・デバイスをローカライズする。このように、以前にマッピングされていないエリアのエリア発見およびマッピングは、モバイル・デバイスによるデータの受動的な収集およびアップロードを通じて、効率的にクラウド・ソーシングされ得る。
いくつかの実施形態において、ADFサーバは複数のモバイル・デバイスから同一エリアに関して、すなわち、隣接エリアに関してADFファイルを受信し、ADFサーバはこれらの複数のADFファイルをマージされたADFファイル(またはADFファイルのマージされたクラスタ)にマージするよう動作する。マージされたADFファイルは、該エリアの、すなわち、それらのサブ・エリアの1以上のLADFを生成するために使用され得る。さらに、該エリアにおいて変化が生じる可能性が高い場合、ADFサーバは、あるエリアに生成されるLADFのクラウド・ソーシングによる更新を、モバイル・デバイスからのフィードバックに基づいて、該エリアにおけるローカライゼーション用のLADFを用いて、活用し得る。たとえば、LADF内のいくつかの空間的フィーチャがモバイル・デバイスによって確実に観察されていないことを示すフィードバックに応じて、ADFサーバは該LADFからこれらの空間的フィーチャを除去し得る。一方、LADFに含まれない空間的フィーチャが該エリア内のモバイル・デバイスによって確実に観察されていることを示すフィードバックに応じて、ADFサーバはこれらの空間的フィーチャを該LADFに付加し得る。
ADFおよびLADFによって表されるポイント・クラウドと関連付けられているデータとはあるエリアの視覚的表現をある程度提供するので、モバイル・デバイスからADFを収集することとLADFをモバイル・デバイスに対して分配することとは、プライバシ含意を有し得る。したがって、いくつかの実施形態において、視覚的マッピング・システムは一定のプライバシ制御を実装する。そのようなプライバシ制御の1つは、ADFがADFサーバにアップロードされる前に該ADFのデータ上で1以上のプライバシ・フィルタ工程をモバイル・デバイスが実装するよう構成することを含んでもよく、したがって、該エリアの有用な視覚的コンテンツを再生成する目的のためには有用でない該ADFのアップロードされたバージョンによって表される情報をレンダリングすることを含んでもよい。そのようなプライバシ制御のもう1つは、モバイル・デバイスに対して分配するためのLADFにアクセスするための二段階LADFクエリを含み得る。モバイル・デバイスは、利用可能なLADFを有さないエリアに進入すると、視像をキャプチャし、キャプチャされた視像から空間的フィーチャを検出し、LADFリクエストをADFサーバに提出し、それによって、LADFリクエストは、検出された空間的フィーチャのセットとモバイル・デバイスの位置のインジケータと(たとえば、GPS座標または1以上の無線基地局識別子)を含む。ADFサーバはその後、第1クエリ段階を実施することで、検出された空間的フィーチャのセットまたはモバイル・デバイスの位置のインジケータのうち一方に合致する候補LADFのセットを識別してもよく、ADFサーバはさらに、検出された空間的フィーチャのセットまたはモバイル・デバイスの位置のインジケータのうち他方に基づいて候補LADFのセットからLADFを選択し得る。このように、モバイル・デバイスによって提出される空間的フィーチャのセットは、モバイル・デバイスが識別されたエリア内にあるか、該識別されたエリアへのアクセスを有することの証明として機能する。したがって、LADFをリクエスト中のモバイル・デバイスに供給するときのプライバシ侵害のリスクが大幅に低減される。
図1は、本開示の少なくとも一実施形態による視覚的マッピング・システム100を示す。図示される例において、視覚的マッピング・システム100は、1以上のモバイル・デバイス104に通信可能に接続されるADFサーバ102を備える。クラウド106によって表されるように、ADFサーバ102は、モバイル・デバイスにとってリモートであるコンピューティング・システムを備え、1以上の有線または無線ネットワークを介して(たとえば、無線ローカル・エリア・ネットワーク(WLAN)、セルラ・データ・ネットワーク、インターネット、または、それらの組み合わせを介して)モバイル・デバイス104に接続される。ADFサーバ102は、本明細書内では単一のサーバの例示的コンテキストにおいて記載されているが、他の実施形態において、サーバのクラスタを備えるコンピューティング・システムとして実装され得る。ADFサーバ102の例示的実施形態は、以下で図2を参照して、より詳細に説明される。
モバイル・デバイス104は、1以上のユーザ110によって操作される任意の様々な持ち運び可能な電子デバイス(たとえば、ヘッド・マウント・ディスプレイ(HMD)、タブレット・コンピュータ、コンピュータ使用可能の携帯電話(たとえば、「スマートフォン」)、ノート型パソコン、携帯情報端末(PDA)、ゲーム機システム、ドローンなど)を含み得る。図示される例において、モバイル・デバイス104は、他の表面116に対向する表面114を有するハウジング112を含む。それによって、ハウジング112は典型的にはユーザ110に対して配向され、ユーザがハウジング112の表面114の方を向くようにする。さらに、図示される実施形態において、モバイル・デバイス104は、ユーザ110に対して視覚的情報を提示するための表面116に配置されるディスプレイ118を含む。したがって、容易に参照できるように、本例示的配向の反射として、表面116は本明細書において「前向き」表面と称され、表面114は本明細書において「ユーザ向き」表面と称される。ただし、これらの表面の配向は、これらの相関的な表示に限定されない。
モバイル・デバイス104はさらに、現在モバイル・デバイス104が位置しているエリア122に関する情報を取得するための複数のセンサを含む。モバイル・デバイス104は、1以上の撮像センサ(たとえば前向き表面116に配置される撮像センサ124および126など)を介して、エリア122の視覚的情報(視像)を取得する。撮像センサ124および126は前向き表面116上に配置および配向されることで、モバイル・デバイス104からの特定の距離において始まるそれらの視野が重複する。それによって、多視点分析を介して、重複している視野の領域に位置するエリア122内のオブジェクトの深度感知を可能とする。それに代えて、表面116に配置される深度センサ130が、エリア内のオブジェクトの深度情報を提供するために用いられ得る。
深度センサ130は、一実施形態において、変調光プロジェクタを用いて前向き表面116からの変調光パターンをエリア122内に投影し、撮像センサ124および126の一方または両方を用いて、エリア122内のオブジェクトから反射されるときの変調光パターンの反射をキャプチャする。これらの変調光パターンは、空間的変調光パターンまたは一時的変調光パターンのどちらであってもよい。変調光パターンのキャプチャされた反射は、本明細書において「深度画像」または「深度視像」と称される。深度センサ120はその後、深度視像の分析に基づいて、オブジェクトの深度、すなわち、モバイル・デバイス104からのオブジェクトの距離を算出し得る。結果的に深度センサ130から得られた深度データは、撮像センサ124および126によってキャプチャされた画像データの多視点分析(たとえば、立体分析)から得られる深度情報を較正、もしそうでない場合は、拡張するために用いられ得る。それに代えて、画像分析から得られた深度情報の代わりに、深度センサ130からの深度データが用いられ得る。モバイル・デバイス104の電子システムの更なる詳細な例が、以下で図3を参照して、より詳細に説明される。
モバイル・デバイス104は動作中、撮像センサ124および126の一方または両方を介してエリア122の視像をキャプチャし、キャプチャされた視像を修正、もしそうでない場合は処理し、処理されたキャプチャされた視像を表示デバイス108上に表示されるように提供する。キャプチャされた視像の処理は、たとえば、空間的または色彩的フィルタリング、拡張現実(AR)オーバーレイの追加、視像の実コンテンツの対応する仮想現実(VR)への転換、などを含む。このARまたはVR機能の提供のために、モバイル・デバイス104は、特定の座標フレームに対する現在の6自由度(6DOF)配向および位置(本明細書において、集合的に「姿勢」と称される)の正確な判定に依拠する。したがって、いくつかの実施形態において、モバイル・デバイス104は、撮像センサ124および126によってキャプチャされた視像と非画像センサ・データ(たとえば、慣性センサ・データ)とを使用し、モバイル・デバイス104の相対位置/配向、すなわち、エリア122に対する位置/配向を、1以上の同時ローカライゼーション・マッピング(SLAM)工程、視覚的オドメトリ工程、または他の視覚的マッピング工程を用いて、判定する。
従来、モバイル・デバイスは、新しいエリア(すなわち、特定のモバイル・デバイスが以前に進入したことのないエリア)に進入すると、その新しいエリアを学習するためのエリア学習工程(たとえば、SLAM工程)を完了させるか、または、座標フレームに対するモバイル・デバイスの現在の姿勢を示唆するものを提供するための非視覚的キュー(たとえば、GPS座標)に依拠しなくてはならない。その一方、視覚的マッピング・システム100は、エリア内における他のモバイル・デバイスによる以前の探索を通じて提供されるクラウド・ソーシングを活用することで、該エリアにとって新しいモバイル・デバイスが、該エリアを広範囲において視覚的にマッピングすることなく、座標フレームに即座にローカライズできるようにする。この目的を達成するために、ADFサーバ102に接続されたモバイル・デバイス104は、モバイル・デバイス104がエリア122の周りを移動するときに、ADF132を収集して、そのADF132をADFサーバ102にアップロードするよう動作する。以下でさらに詳細に説明されるように、ADF132は、空間的フィーチャに関連付けられている視像のキャプチャ時に慣性計測装置(IMU)または他の非画像センサから収集されるセンサ・データだけでなく、モバイル・デバイス104によって検出される空間的フィーチャのセット、空間的フィーチャの相対形状、モバイル・デバイスの姿勢から実質的に独立した方法で空間的フィーチャを記述する空間的フィーチャに関する様々な統計的メタデータ、照明条件、もしくは、他の一時的な環境条件またはデバイス特有の条件を含む。ADFサーバ102は、ADF132に含まれる情報に基づいて同一エリア(または隣接エリア)の複数のモバイル・デバイス104からのADFをフィルタリングおよびマージし、結果として生じたマージされたADFから1以上のLADF134を生成する。各LADF134は、該エリアの、または、その対応するサブ・エリアの空間的フィーチャの粗いポイント・クラウドを表す。
したがって、他のモバイル・デバイス104は、次に新しいエリアに進入すると、該エリアに関連付けられているLADFについてADFサーバ102に対してクエリを行い得る。このクエリに応答して、ADFサーバ102は、リクエスト中のモバイル・デバイス104に対してLADF134を提供する。モバイル・デバイス104は、エリア122の視像をキャプチャしてもよく、それに含まれる一定の空間的フィーチャを検出してもよく、検出された空間的フィーチャとそれらの相対形状とを、LADF134によって表される空間的フィーチャと関連付けられている相対形状とに比較してもよく、空間的フィーチャの比較に基づいて(たとえば、ループ閉じ込みアルゴリズムの適用を通じて)現在の姿勢をローカライズ(すなわち、現在の姿勢を判定、または、以前に判定された変位した姿勢を修正)してもよい。モバイル・デバイス104はさらに、モバイル・デバイス104がLADF134を使用することに基づいて、フィードバック(たとえば、LADF134の空間的フィーチャがモバイル・デバイス104によって観察されなかったことを示すフィードバック・データ、または、LADF134に含まれない空間的フィーチャがモバイル・デバイス104によって観察されたことを示すフィードバック・データ)をADFサーバ102に対して提供し得る。
クラウド・ソーシングされた、および、クラウド・ベースでの、LADF134の生成、改良、および配分によって、モバイル・デバイス104は、新しいエリアに進入するとき、即座かつ効率的にローカライズを行うことができ、したがって、時間のかかるエリア学習工程を実行する必要、または、GPSセンサもしくは慣性センサからのより精密でなく大抵は信頼できない計測値を使用する必要をなくすことができる。さらに、LADF134の空間的フィーチャが特定の座標フレームに参照され得ると、複数のモバイル・デバイス104はLADF134を用いて、現在の姿勢を共通座標フレームに対してローカライズし得る。これによって、デバイスの姿勢情報(たとえば、多人数プレイゲーム、共有されたARまたはVR機能など)に依拠する機能についての複数のモバイル・デバイス104間における、より効率的で正確な対話を容易にする。
図2は、本開示の少なくとも一実施形態による図1のADFサーバ102の例示的実施形態を示す。図示された例において、ADFサーバ102はネットワーク・インターフェース202、ADFデータストア204、LADFデータストア206、フィーチャ・スコア・データストア208、ジオリファレンス・データストア210、マージ・モジュール212、ジオリファレンス・モジュール214、空間的フィーチャ・フィルタ・モジュール216、ローカライゼーション生成モジュール218、およびクエリ・モジュール220を有するコンピューティング・システムを備える。1以上のデータストア204、206、208、および210は、別体のデータストアとして図示されているが、単一のデータストアとして共に実装され得る。
モジュール212、214、216、218、および220は、ハード・コーディングされたロジック(たとえば、特定用途向け集積回路またはプログラマブル・ロジック)、メモリ226もしくは他のストレージ・デバイス内に記憶されたソフトウェア命令224を実行する1以上のプロセッサ222、または、それらの組み合わせとして実装され得る。さらに、ADFサーバ102は、説明を容易にすべく単一のサーバとして示されているが、その代わりに、複数のサーバを備えるコンピューティング・システムとして実装され得る。たとえば、モジュール212、214、216および218の機能は1つのサーバにおいて実装されてもよいし、クエリ・モジュール220およびLADFデータストア206の機能は別のサーバにおいて実装されてもよい。
概観すると、マージ・モジュール212は、ネットワーク・インターフェース202を介して、LADFが未だにコンパイルされていないエリアに進入した1以上のモバイル・デバイス232(図1のモバイル・デバイス104の一実施形態)からADF132を受信するよう動作する。マージ・モジュール212は、モバイル・デバイス232からの1以上のADF132をマージすることで、マージされたADFデータをADFデータストア204に記憶用に生成する。ジオリファレンス・モジュール214は、ジオリファレンス・データストア210からのジオリファレンス情報(たとえば、グーグル社によって提供されるストリート・ビュー・ツールからの視像および関連付けられているジオリファレンス位置を含み得る)を活用することによって、マージされたADFに対する地理的参照を提供する。ローカライゼーション生成モジュール218は、結果としてマージされたADFデータから1以上のLADFを生成することで、あとで取り出せるようLADFデータストア206内の1以上のLADFにインデックスを付け、該LADFを記憶する。クエリ・モジュール220は、ネットワーク・インターフェース202を介してモバイル・デバイス234(モバイル・デバイス104の一実施形態)からLADFリクエスト236を受信し、LADFリクエスト236に対応するLADF134を求めてLADFデータストア206をサーチし、LADF134をモバイル・デバイス234に提供する。モバイル・デバイス234は、モバイル・デバイス234のローカライゼーションのためにLADF134を使用する。このローカライゼーション工程中、モバイル・デバイス234は、ネットワーク・インターフェース202を介してLADF134に対するLADFフィードバック238をADFサーバ102に提供し得る。ADFサーバ102はLADFフィードバック238を用いて、フィーチャ・スコア・データストア208において、LADFフィードバック238内で表される空間的フィーチャのフィーチャ・スコアを調整してもよく、フィーチャ・スコアに基づいて、空間的フィーチャを追加または除去することによってLADF134を改良してもよい。これらの動作は、図4〜図12を参照して、以下でより詳細に説明される。
前述の通り、モバイル・デバイス232および234は、モバイル・デバイス104の実施形態を表す。それぞれの動作上の必要条件のために、LADFを用いてローカライゼーション工程を実行するモバイル・デバイス232は、ADFアップロード工程を実行するモバイル・デバイス234と同一の機能を必要としない可能性がある。たとえば、モバイル・デバイス234は、深度センサ120またはステレオ・カメラ構成を活用して、ADFを生成およびアップロードする工程に関連付けられているSLAM動作を容易にし得る。一方で、モバイル・デバイス232は、典型的には、ローカライゼーション工程を容易にするために、深度センサ120は必要とせず、単眼カメラ構成のみを必要としている。
図3は、本開示の少なくとも一実施形態によるモバイル・デバイス104によって実装される例示的処理システム300を示す。処理システム300は、ディスプレイ118と、撮像センサ124および126と、深度センサ130とを備える。プロセッシング・システム300はさらに、グラフィックス処理装置(GPU)302と、フレーム・バッファ303および305と、アプリケーション・プロセッサ304と、表示コントローラ306と、システム・メモリ308と、非画像センサのセット310と、ユーザ・インターフェース312とを備える。ユーザ・インターフェース312は、モバイル・デバイス104に対してユーザ入力を提供するためにユーザによって操作される1または複数のコンポーネント(たとえば、タッチスクリーン314、マウス、キーボード、マイクロフォン316、様々なボタンまたはスイッチ、様々な触覚アクチュエータ318)を備える。非画像センサのセット310は、モバイル・デバイス104の非画像コンテキストまたは状態を提供するために用いられる任意の様々なセンサを含み得る。そのようなセンサの例は、1以上のジャイロスコープ321、磁力計322、および加速度計323を備える慣性測定装置(IMU)320を含む。非画像センサはさらに、様々な無線送受信に基づくセンサ(たとえば、GPSセンサ328、無線ローカル・エリア・ネットワーク(WLAN)インターフェース330、セルラ・インターフェース332、ピア・トゥ・ピア(P2P)無線インターフェース334、および近距離通信(NFC)インターフェース336)だけでなく、環境光センサ326を含み得る。非画像センサはさらに、ユーザ・インターフェース312のユーザ入力コンポーネント(たとえば、タッチスクリーン314またはマイクロフォン316)を含み得る。
モバイル・デバイス104はさらに、画像処理、位置マッピング、および位置活用工程に連動して用いられる情報またはメタデータを記憶する様々なデータストア338へのアクセスを有する。データストア338は、モバイル・デバイス104の撮像センサによってキャプチャされた視像から識別される二次元または三次元のメタデータを記憶するための空間的フィーチャ・データストアと、SLAMを基にした情報(たとえば、モバイル・デバイス104によって既に探索されたエリア122(図1)のサブ・エリアのマッピング情報)を記憶するSLAMデータストアと、ARオーバーレイ情報またはVR情報(たとえば、エリア122内の注目オブジェクトの相対位置のCADに基づく表示)を記憶するARデータストアとを含み得る。データストア338は、モバイル・デバイス104の1以上のストレージ・コンポーネント(たとえば、ハード・ドライブ、ソリッド・ステート・メモリ、または取り外し可能な記憶媒体(図示しない)上にある)において実装され得る。
撮像センサ124および126は動作中、エリアの視像をキャプチャし、キャプチャされた視像をフレーム・バッファ303および305においてバッファリングする。視像が原形もしくは変形で表示されるように、GPU302はキャプチャされた視像を表示用に処理し(たとえば、ARオーバーレイをレンダリングすることによって)、表示コントローラ306はディスプレイ118を制御して、処理された視像を表示する。さらに、本明細書において説明されるように、モバイル・デバイス104は、以前にマッピングされた位置のLADFをダウンロードし、ダウンロードされたLADFを使用するだけでなく、以前にマッピングされていない位置のADF134をアップロードするよう動作することで、モバイル・デバイス104のローカライゼーションを容易にする。この目的を達成するために、1以上のソフトウェア・プログラムは、システム・メモリ308または他の非一過性のコンピュータ読取可能媒体内に記憶され、アプリケーション・プロセッサ304とGPU302との一方または両方によって実行されることによって、このADF生成およびLADF活用機能を提供してもよい。説明を簡単にするために、該1以上のソフトウェア・プログラムは、図3においてADF生成プログラム342およびLADF処理プログラム344として示される。これらのプログラムは、処理システム300によって実行されるオペレーティング・システム(OS)内のスレッドまたは他の工程として、同一のソフトウェア・アプリケーションのスレッド、工程、もしくはサブルーチンとして、または、個々に実行されるソフトウェア・アプリケーションとして実装され得る。さらに、いくつかの実施形態において、本明細書において説明されるプログラム342および344の機能のいくつかまたは全てが、ASIC、プログラマブル・ロジック、または他のハード・コーディングされたロジックを介して実装され得る。
ADF生成プログラム342は、たとえば、プライバシ・フィルタ・モジュール346、空間的フィーチャ検出モジュール348、およびADFアセンブリ・モジュール350を含み得る。図3に示すように、プライバシ・フィルタ・モジュール346は、1以上の画像コンテンツ・フィルタ(たとえば、ダウンサンプラ・モジュール356だけでなく、テキスト・フィルタ・モジュール352および顔フィルタ・モジュール)を備え得る。LADF処理プログラム344は、たとえば、空間的フィーチャ検出モジュール358(空間的フィーチャ検出モジュール348であってもよい)、リクエスト・モジュール360、ローカライゼーション・モジュール362、およびフィードバック・モジュール364を含み得る。処理システム300の動作は、ADF生成プログラム342とLADF処理プログラム344との動作を含め、以下に詳述される。
上述の通り、モバイル・デバイス104は、マッピングされていないエリア(すなわち、ADFサーバ102が利用可能なLADFを有さないエリア)内にあるとき、ADF生成モードで動作し得る。それによって、モバイル・デバイス104は、マッピングされていないエリア内で検出された空間的フィーチャを表すADFを生成し、該ADFをADFサーバ102にアップロードする。しかしながら、該エリアが既にマッピングされており、ADFサーバ102が該エリアのLADFを有している場合、モバイル・デバイス104は代わりにLADFローカライゼーション・モードで動作し得る。それによって、モバイル・デバイス104は、ADFサーバ102から該エリアのLADFを取得し、LADFによって表される粗いポイント・クラウドを使用する。そうすることで、該エリアに対してモバイル・デバイス104をローカライズさせるように、ローカライゼーション工程を実行する。
図4は、本開示の少なくとも一実施形態によるこれらの動作モード間の選択のための例示的方法400を示す。説明を容易にするために、方法400は、図3の処理システム300の例示的コンテキストにおいて説明される。方法400は、ブロック402において開始される。それによって、モバイル・デバイス104がモバイル・デバイス104によって以前にマッピングされていないエリアに進入したことを、モバイル・デバイス104は判定する。それに応じて、モバイル・デバイス104は、ローカライゼーション工程またはモーション・トラッキング工程を開始する。
ブロック404において、モバイル・デバイス104はADFサーバ102に対してクエリを行い、LADFが該エリアにとって利用可能であるかどうかを判定する。図10〜図12を参照して以下で説明されるように、ADFサーバ102は二段階クエリ工程を実装してもよく、それによって、モバイル・デバイス104は該エリア内のモバイル・デバイスによってキャプチャされた視像からの空間的フィーチャのセットと、1以上の位置インジケータ(たとえば、モバイル・デバイス104によって検出されるGPS座標およびWLANまたはセル・タワー基地局の基地局識別子)との両方を提供し、ADFサーバ102はLADFデータストア206に対してクエリを行い対応するLADFを識別する。
LADFがADFサーバ102から利用可能でない場合、該エリアはマッピングされていない位置とみなされる。したがって、ブロック406において、モバイル・デバイス104とADFサーバ102とが連動して、マッピングされていない位置に対してADF/LADF生成工程を実行する。この工程は、以下で図5を参照して、より詳細に説明される。LADFがADFサーバ102から利用可能である場合、該エリアはマッピングされた位置とみなされる。したがって、ブロック408において、モバイル・デバイス104とADFサーバ102とが連動して、LADFローカライゼーションおよび更新工程を実行する。この工程は、以下で図6を参照して、より詳細に説明される。
図5は、本開示の少なくとも一実施形態によるADF/LADF生成工程を実装するための例示的方法500を示す。上述の通り、ADF/LADF生成工程は、LADFがモバイル・デバイス104によって新たに遭遇されたエリアにとって利用可能でないという判定に応答して、実行される。したがって、エリア記述データの受動的収集に対するユーザの同意の受信後、方法500がブロック502において開始され、モバイル・デバイス104のセンサを用いてエリア学習工程が開始される。エリア学習工程を実行するために、モバイル・デバイス104は、モバイル・デバイス104が該エリアを通るとき、撮像センサ124および126を介して視像372(図3)をキャプチャし、深度センサ130を介して対応する深度情報373をキャプチャする。モバイル・デバイス104は、たとえば、双方向型ゲームを用いて、モバイル・デバイス104のユーザに対して、視像372と深度情報373とがモバイル・デバイス104によってキャプチャされるとき該エリアを探索するよう促し得る。
同時に、ADFアセンブリ・モジュール350は、セット310の1以上の非画像センサから非画像センサ・データ374(図3参照)をキャプチャする。たとえば、ADFアセンブリ・モジュール350は、視像372のキャプチャの間に加速度計323からセンサ・データをキャプチャしてもよく、したがって、視像キャプチャ時に重力に対するモバイル・デバイス104の配向を表してもよい。同様に、ジャイロスコープ321からキャプチャされるセンサ・データは、キャプチャされた視像内に表される視覚的フィーチャに対するモバイル・デバイス104の移動方向を判定するために用いられ得る。さらに、非画像センサ・データ374は、モバイル・デバイス104の複数の位置インジケータとして作用し得るセンサ・データを含み得る。これらの位置インジケータは、ジオリファレンスされた位置インジケータ(たとえば、GPSセンサ328によって提供されるセンサ・データ内に表される緯度/経度座標)であり得る。それに代えて、これらの位置インジケータは、推定位置インジケータであり得る。たとえば、WLAN基地局とセル・タワー基地局とが固定されたと推測されると、WLAN基地局またはセル・タワー基地局の検出は、モバイル・デバイスが検出された基地局に近接している示唆として機能する。したがって、基地局識別子(BSID)、メディア・アクセス・コントロール(MAC)アドレス、または、基地局の他の識別子が、モバイル・デバイスの推定位置インジケータとして機能し得る。
以下で説明されるように、キャプチャされた視像372と深度情報373とは、最終的にADFサーバ102にアップロードされる空間的フィーチャのポイント・クラウドを判定するために用いられる。このポイント・クラウドは画像データそのものではないが、ポイント・クラウドの密度と他の条件とによって、無修正ポイント・クラウドがキャプチャされた視像372に当初は存在していた一定の視覚的コンテンツを再構築するために用いられた可能性がある。たとえば、モバイル・デバイス104が特にドキュメントの近くに設置された場合、該ドキュメントのキャプチャされた視像から判定されるポイント・クラウドが該ドキュメントのテキストを再生成するために用いられた可能性がある。したがって、意図されていない視覚的コンテンツの開示を防ぐため、プライバシ・フィルタ・モジュール346は少なくとも2つのプライバシ制御を実装し得る。
第1のプライバシ制御は、ブロック504において実装される。ブロック504において、プライバシ・フィルタ・モジュール346は、キャプチャされた視像372に対して1以上のコンテンツ・フィルタ工程を実行し、プライバシ含意を有し得る領域から画像コンテンツを除去する、たとえば、ブロック504において、テキスト・フィルタ・モジュール352は、テキスト・フィルタ工程を行ってもよく、それによって、1以上の周知のテキスト認識アルゴリズムを用いてブロック502においてキャプチャされた各画像がスキャンされ、テキスト・コンテンツを表す可能性のある画像内に任意の領域が存在するかどうかを判定する。テキストの可能性がある領域として検出された各領域に関して、テキスト・フィルタ・モジュール352は、たとえば、該領域または複数の隣接領域においてピクセルとの混合動作を実行することによって、該領域内のピクセル値を同一のデフォルト・ピクセル領域に置き換えることによって、または、もしそうでない場合、該領域内のピクセル値を削除することによって、該領域を曖昧にするか、削除し得る。同様に、ブロック504において、顔フィルタ・モジュール354は顔フィルタ工程を実装してもよく、それによって、1以上の周知の顔認識アルゴリズムを用いて各キャプチャされた画像がスキャンされ、人間の顔を表す可能性のある画像内に任意の領域が存在するかどうかを判定し、画像をフィルタリングすることで、そのように識別された各領域から画像コンテンツを除去する。こうして、視像が事前にフィルタリングされることで、機密の可能性がある視覚的コンテンツを空間的フィーチャ検出よりも前に除去し、したがって、結果として生じる空間的フィーチャのポイント・クラウドは、機密の可能性がある視覚的コンテンツを再構築するために用いられ得ない。
ブロック506において、空間的フィーチャ検出モジュール348は、フィルタリングされた視像を分析し、そこに含まれる空間的フィーチャを検出する。任意の様々な空間的フィーチャ抽出アルゴリズム(たとえば、スケール不変フィーチャ変換(SIFT)アルゴリズム、高速化ロバスト・フィーチャ(SURF)アルゴリズム、グレー・レベル・パッチ・アルゴリズム、勾配位置配向ヒストグラム(GLOH)アルゴリズム、ゼルニケ・モーメント・アルゴリズム、バイナリ・ロバスト独立基本フィーチャ(BREIF)アルゴリズム、指向性BRISK(ORB)アルゴリズム、バイナリ・ロバスト不変拡張可能キーポイント(BRISK)アルゴリズム、ガウス差分(DOG)アルゴリズム、高速レティナ・キーポイント(FREAK)アルゴリズム、など)が用いられ得る。空間的フィーチャ検出モジュール348は、これらの検出された空間的フィーチャを、空間的フィーチャ・データ376として提供する。たとえば、FREAKアルゴリズムは、イメージ・パッチ内のピクセルの組の比較を提供し、各比較の出力は該組中でどのピクセルがより明るいかまたは暗いかに基づいて「0」か「1」となる。FREAKアルゴリズムにおいて、このような比較はイメージ・パッチ上で計算され、その結果は、三次元参照フレーム内の空間的フィーチャの位置を識別する(x,y,z)ベクトルだけでなく、イメージ・パッチを表す対応する空間的フィーチャの長さ512のバイナリ文字列である空間的フィーチャ記述子である。
さらに、空間的フィーチャ検出モジュール348は、各々検出された点についての統計的メタデータ378を判定する。統計的メタデータ378は、モバイル・デバイス104の特定の視野角または対応する視像がキャプチャされたときの定常照明から実質的に独立した方法で、対応する空間的フィーチャを記述する。たとえば、統計的メタデータ378は、空間的フィーチャを表すピクセルの輝度の平均および標準偏差を表す値、1以上の方向における輝度勾配(または他の視覚的特徴勾配)などを備える。
プライバシ・フィルタ・モジュール346が検出されたテキストおよび顔コンテンツの視像を除去したので、空間的フィーチャ・データ376によって表される空間的フィーチャの当初のポイント・クラウドにはテキストおよび顔コンテンツが実質的に存在しないが、当初のポイント・クラウドは依然として、当初のポイント・クラウドからエリアの外観をある程度再構築できる程度に十分な空間的フィーチャ濃度を有し得る。したがって、第2のプライバシ制御として、ブロック508において、プライバシ・フィルタ・モジュール346のダウンサンプラ・モジュール356は、当初のポイント・クラウドをダウンサンプリングして、当初のポイント・クラウドの空間的フィーチャの選択されたサブセットのみを含む空間的フィーチャのフィルタリング済みポイント・クラウド380(図3)を生成するようにする。このことは、結果として生じるフィルタリング済みポイント・クラウド380を表すために必要であるデータ量を削減することだけでなく、結果として生じるポイント・クラウドからあるエリアの外観が再構築される可能性を低下させること、の両方の利点を有する。ダウンサンプリング工程は、1以上のダウンサンプリング基準によって制御され得る。たとえば、いくつかの実施形態において、ダウンサンプリング工程は、フィルタリングされたポイント・クラウドから除外するために空間的フィーチャを無作為に選択すること、各X番目の空間的フィーチャを除去すること(Xは2よりも大きい整数)、または、フィルタリング済みポイント・クラウドに含めるために空間的フィーチャの最大数未満を選択することを含み得る。他の例として、ダウンサンプリング工程は、立方体毎(すなわち、単位体積)の空間的フィーチャの最大数を特定する最大空間的フィーチャ密度基準によって制御され得る。たとえば、最大空間的フィーチャ密度基準は、フィルタリング済みポイント・クラウド380が立方フィート毎で最大1つの空間的フィーチャを含むことを特定し得るので、当初のポイント・クラウドをダウンサンプリングして、立方フィート毎でわずか1つの空間的フィーチャが結果として生じるフィルタリング済みポイント・クラウド内で表されるようにする。
ブロック510において、ADFアセンブリ・モジュール350は、フィルタリング済みポイント・クラウド380、統計的メタデータ378、および非画像センサ・データ374を用いて、ADF132を生成する。一実施形態において、ADF132は、多次元座標の一覧または他のセットとしてフィルタリング済みポイント・クラウド380を表すファイルまたは他のデータ構造を、表された空間的フィーチャに関する統計的メタデータ378を記憶するための各多次元座標のフィールドと共に備える。たとえば、各多次元座標は、モバイル・デバイス104の(X,Y,Z)座標内の対応する空間的フィーチャの三次元位置を表す浮動小数点ベクトル(x,y,z)を備え得る。データ構造はさらに、以下に説明されるように、ADFサーバ102によってADF132に割り当てられる一意識別子(UID)を記憶するためのフィールドだけでなく、非画像センサ・データ374を記憶するための1以上のフィールドを含み得る。
ブロック512において、ADFアセンブリ・モジュール350はADF132を適切なネットワーク・インターフェース(たとえば、セルラ・インターフェース332またはWLANインターフェース330)に対してADFサーバ102への送信用に提供する。いくつかの実施形態において、ADFアセンブリ・モジュール350はADFをADFサーバ102にアップロードするためのリクエストを送り、ADFサーバ102は該ADFに割り当てられたUIDによって反応する。該ADFは、アップロードされる前に、ADFアセンブリ・モジュール350がADF132における適切なフィールド内に挿入するものである。さらに、ADF132がアップロードされる前に完了されるようにブロック502〜512の工程は順次工程として説明されたが、いくつかの実施形態において、ADF132は反復工程において生成およびアップロードされ、それによって、ADF132は一連のADFブロックとして生成される。各ADFブロックは、キャプチャされた視像の一部から生成されたポイント・クラウドのサブセットを含む。また、各ADFブロックは、ADF132が生成されるときにADFに割り当てられてADFサーバ102にアップロードされるUIDによってマーキングされる。ADFサーバ102は、したがって、これらのADFブロックを個々に記憶してもよいし、同一のUIDによって示されるADFブロックを単一のADF132に結合してもよい。
モバイル・デバイス104によってアップロードされるADF132は、モバイル・デバイス104が位置するエリアに存在する一定の視覚的フィーチャを表す。しかしながら、ブロック504および508を参照して上述されたモバイル・デバイス104によって実装されるプライバシ制御を通じて、ADFサーバ102に対して提供されるADF132内に含まれる情報は、プライバシ含意を有し得る任意のコンテンツが実質的に存在しなくなる。むしろ、結果として生じるADF132は、これらの視覚的フィーチャに基づいて他のモバイル・デバイスが以降にローカライズできるようになる程度に該エリアの様々な縁、隅、および他の視覚的フィーチャを記述し得る粗いポイント・クラウドを含むが、粗いポイント・クラウドは、人間の知覚にとって重要である方法で該エリアの外観の複製をサポートするのには不十分な情報を含む。したがって、ADFサーバ102は、マッピングされたエリアに関して機密の可能性がある情報を公開する可能性が高いモバイル・デバイス104からの情報を有するべきではない。
ADF/LADF生成工程におけるADFサーバ102の役割は、ブロック514において開始され、マージ・モジュール212がネットワーク・インターフェース202を介してモバイル・デバイス104からADFサーバ102を受信することを伴う。ADF132を受信すると、マージ・モジュール212は、一時的にADF132にインデックスを付け、該ADF132をADFデータストア204内に記憶する。ADF132は、たとえば、ADF132に割り当てられたUIDに基づいて、ADF132によって表されたポイント・クラウド内に表された空間的フィーチャに基づいて、ADF132と共に含まれる1または複数の位置インジケータに基づいて、一時記憶のためにインデックスが付けられる。少なくとも一実施形態において、以下で図10〜図12を参照して説明される二層クエリ・アプローチを用いて、各ADF132はADFデータストア204内で記憶され、インデックスが付けられる。
いくつかの例において、複数のモバイル・デバイスは、あるエリアまたは複数の隣接エリアの対応するADFをアップロードしていた可能性がある。ADFサーバ102は、したがって、ブロック516において、これらの場所が同じであるADFをマージするよう動作してから、結果として生じるマージされたADFを処理して1以上のLADFにする。ブロック516のマージ工程は、任意の様々なトリガに応えて開始され得る。たとえば、マージ工程は、規定時間の経過によって、モバイル・デバイスからの規定数のADFの受信によって、モバイル・デバイスからのLADFのリクエストによって、トリガされ得る。そのようなトリガに応えて、ブロック518において、マージ・モジュール212は、クエリ・モジュール220に、ADFデータストア204に対してクエリを行うよう信号を送り、「近接」ADF(すなわち、同一エリアまたは隣接エリアをカバーするADF)が存在するかどうかを識別する。いくつかの実施形態において、近接ADFは、ADFデータストア240内のADFに関連付けられている位置インジケータの比較に基づいて、識別され得る。たとえば、モバイル・デバイス104からADF132をアップロードすることによってマージ工程がトリガされ、アップロードされたADF132が位置インジケータとして1以上のWLAN MACアドレスを含むと仮定すると、アップロードされたADFに供給されたか、アップロードされたADFによって識別されたWLAN基地局によってカバーされたエリアに隣接すると知られているWLAN基地局のWLAN MACアドレスに供給されたものと同一のWLAN MACアドレスを有するものとしてクエリ・モジュール220によって識別されたADFデータストア240内のそれらのADFが、近接ADFとして識別される。他の例として、アップロードされたADFには位置インジケータとしてGPS座標が提供されてもよく、クエリ・モジュール220はADFデータストア240内のADFを、対応するGPS座標に基づいて近接していると識別し得る。他の実施形態において、近接ADFは、アップロードされたADF内に表される空間的フィーチャとADFデータストア240内のADFに表される空間的フィーチャとの比較に基づいて、識別され得る。空間的フィーチャの十分に重複しているセットを有するそれらのADFは、したがって、同一エリアまたは近接エリアを表すと識別され得るため、近接ADFとして識別され得る。さらに、図10〜図12を参照して以下に説明されるように、ADFサーバ102は、ADFデータストア204とLADFデータストア206との一方または両方に対して二層クエリを実装してもよく、その結果、各々記憶されたADF/LADHにはその空間的フィーチャのセットと1以上の位置インジケータとの両方に基づいて記憶用にインデックスが付けられる。そして、アップロードされたADFの1以上の位置インジケータだけでなくアップロードされたADFの空間的フィーチャのセットを用いて二層インデックス付け工程を実行することによって、近接ADFが識別される。
クエリ・モジュール220によって識別される1以上の近接している、すなわち、場所が同じであるADFのセットは、本明細書において「ADFクラスタ」と称される。識別されたADFクラスタによって、ブロック520において、マージ・モジュール212は1以上の重複排除工程を実行するよう動作し、ADFクラスタのADF内に表される重複した空間的フィーチャを除去する。さらに、ADFクラスタが過度に大きいエリアを表しているか、過度に多い数の空間的フィーチャを含む場合、マージ・モジュール212はADFクラスタを1以上のより小さいADFに分割し得る。本明細書において説明される通りに該1以上のより小さいADFは各々処理され得る。ブロック522において、マージ・モジュール212は1以上の周知のループ閉じ込みアルゴリズムを用いて、ADFクラスタのADF間における相対アライメントを判定する。ブロック524において、マージ・モジュール212はADFクラスタを分析し、1以上の安定性基準を用いて識別された、ADFクラスタのほとんどまたは全てのADF内で確実には観察されない空間的フィーチャを(したがって、ローカライゼーション用の信頼できないソースも)選択的に除去する。これは、ADFクラスタによって表される組み合わされたポイント・クラウドにおける空間的フィーチャの総数を減らす目的だけでなく、該エリアの永続的な視覚的フィーチャを表す可能性がない空間的フィーチャを除去する目的を果たす。除去する空間的フィーチャを選択するとき、マージ・モジュール212は安全性基準に基づいてスコアリング・システムを活用し得る(たとえば、空間的フィーチャがADFクラスタのADF内で観察される頻度に基づき空間的フィーチャに対してスコアを与えることによって)。さらに、より新しいADFが該エリアの現在の状態を表す可能性がより高いので、マージ・モジュール212はより新しいADFにおける空間的フィーチャに対して含有嗜好を与え得る。
いくつかの例において、ADFが供給される非画像センサ・データ374は、ADFがジオリファレンスされることを許可し得る。たとえば、非画像センサ・データ374は、ADF内での空間的フィーチャの検出時におけるGPS座標とモバイル・デバイス104のジオリファレンスされた姿勢のインジケータとを含み得る。ブロック522において判定されるADFクラスタのADFの相対アライメントによって、ADFクラスタ内の1つのADFがジオリファレンスされる場合、ブロック526において、ADFクラスタ内の他のADFは、ジオリファレンスされたADFの相対アライメントおよびジオロケーション情報を用いて、座標フレームのトランスレーションの適用に基づいてジオリファレンスされ得る。さらに、ジオリファレンスされた視覚的参照データが利用可能である場合(たとえば、グーグル社によって提供されるストリート・ビュー・ツールを介して)、ADFクラスタのADFは、このジオリファレンスされた視覚的参照データを用いてジオリファレンスされ得る。
マージされたADFクラスタのADFによって、ブロック528において、ローカライゼーション生成モジュール218はマージされたADFを用いて、マージされたADFによって表されるエリアの1以上のLADFを生成する。マージされたADFのデータ・サイズが十分に小さいか、十分に小さいエリアをカバーする場合、マージされたADFは単一のLADFとして記憶され、インデックスが付けられる。しかしながら、マージされたADFのデータ・サイズが閾値を超えている場合、マージされたADFがあまりにも大きいエリアをカバーしている場合、または、該エリアが複数の別々のサブ・エリア(ADFのポイント・クラウド内の壁、パーティション、ドア、およびウインドウを介して識別される)を含む場合、ローカライゼーション生成モジュール218はマージされたADFを空間的に仕切り、複数のLADFを生成し得る。各LADFは、異なるサブ・エリアをカバーする。そのような例において、ローカライゼーション生成モジュール218は、論理的な仕切り線を識別することを試みて(たとえば、マージされたADFによって表されるポイント・クラウド内における壁または他の空間仕切りの検出に基づいて、エリア内の複数の空間を識別することによって)、各々識別された空間の別々のLADFを生成し得る。このことは、LADFの範囲を単一の空間に限定するプライバシの観点からの更なる利点を有する。
各生成されたLADFについて、ブロック530において、ローカライゼーション生成モジュール218は該LADFをインデックス付けおよび記憶用にLADFデータストア206に対して提供する。上述のように、および、以下で詳述されるように、いくつかの実施形態において、LADFデータストア206は各LADFに対して二層インデックスを活用し、それにより、各LADFは1以上の位置表示とLADFによって表される空間的フィーチャとの両方によってインデックスが付けられる。したがって、LADFデータストア206内にLADFを記憶するとき、LADFデータストア206は、1または複数の位置インジケータまたは空間的フィーチャのセット(およびその中にある関連形状)のうちの一方によってインデックスが付けられたデータストア・エントリ内に、LADFを記憶する。そして、1または複数の位置インジケータあるいは空間的フィーチャのセットのうちの他方は、同様にインデックスが付けられた複数のLADF間における選択のために用いられる。
方法500のブロック530における工程が終了することで、ADFサーバ102は、以前にマッピングされていないエリアの1以上のLADFを、該エリアを探索する機会を有していた1以上のモバイル・デバイス104からアップロードされた1以上のADFを用いて生成した。したがって、以下に図6を用いて説明されるように、ADFサーバ102は、初めてこのエリアに遭遇した任意の他のモバイル・デバイスに対してLADFを提供する準備ができている。
図6は、本開示の少なくとも一実施形態による図4のブロック408によって表されるLADFローカライゼーションおよび更新工程を実行するための例示的方法600を示す。方法600は、ブロック602において、モバイル・デバイス104が以前に遭遇およびマッピングしなかったエリアに進入すると、開始される。この判定に応じて、モバイル・デバイスは該エリアに対して空間的フィーチャ検出工程を開始する。この目的を達成するために、モバイル・デバイス104は撮像センサ124および126をトリガして該エリアの視像382(図3)のキャプチャを開始させ、深度センサ130をトリガして該エリアの深度情報のキャプチャを開始させ、空間的フィーチャ検出モジュール358は視像382と深度情報とから該エリアを表す空間的フィーチャの初期セットを検出する。ブロック604において、リクエスト・モジュール360は、該エリアにおける空間的フィーチャ検出時に、モバイル・デバイス104の位置の1以上の位置インジケータを判定する。上述の通り、これらの位置インジケータは、特定の位置インジケータ(たとえば、GPSセンサ328から取得されるGPS座標)、推定位置インジケータ(たとえば、WLAN MACアドレス、WLAN BSID、もしくは、セル・タワーBSID)、または、それらの組み合わせであり得る。ブロック606において、リクエスト・モジュール360は、初期空間的フィーチャ・セットと該1以上の位置インジケータとを用いて、LADFリクエスト236の生成およびLADFリクエスト236の送信を行い、該エリアのLADFの利用可能性についての問い合わせを開始する。
ADFサーバ102のクエリ・モジュール220におけるネットワーク・インターフェース202を介するLADFリクエスト236の受信に応じて、ブロック608において、クエリ・モジュール220はLADFデータストア206に対してクエリを行い、モバイル・デバイス104による使用のための該エリアの適切なLADFを識別する。少なくとも一実施形態において、クエリ・モジュール220とLADFデータストア206とは二層インデックス付けスキームを活用して、以下で図10〜図12を参照して詳述されるように、初期空間的フィーチャ・セットと位置インジケータとの両方に基づいて、適切なLADFを識別する。適切なLADFが識別されると仮定すると、ブロック610において、クエリ・モジュール220は選択されたLADF(LADF134)をリクエスト中のモバイル・デバイス104に送信する。
LADFリクエスト236に応じてLADF134を受信すると、リクエスト・モジュール360はLADF134をローカライゼーション・モジュール362とフィードバック・モジュール364との両方に対して提供する。ブロック612において、ローカライゼーション・モジュール362は周知のループ閉じ込みアルゴリズムを用いて、空間的フィーチャ検出モジュール358によって検出されるエリアからの空間的フィーチャをLADF134内に表される空間的フィーチャの粗いポイント・クラウドと比較することに基づいて、LADF134内に表される座標フレームに対してモバイル・デバイス104をローカライズする。その結果は、識別された座標フレーム内のモバイル・デバイス104の判定姿勢384(図3)である。さらに、LADFがジオリファレンス可能であった場合、判定姿勢384も同様に適切なトランスレーションを通じてジオリファレンスされ得る。ローカライズされたモバイル・デバイス104および判定された姿勢384によって、ブロック614において、モバイル・デバイス104の1以上のコンポーネントは、正確な姿勢情報に依拠する様々な機能(たとえば、ARまたはVRコンテンツ、複数プレイヤーのゲーム、ナビゲーション・ツールなどの実装)を提供し得る。
LADF134の生成は、1以上のモバイル・デバイス104によって該エリア内で観察される空間的フィーチャの検出および選択に依拠する。しかしながら、該エリアが観察された空間的フィーチャ内に含まれる一時的オブジェクトを有し得ると、または、該エリアの構成が経時的に変化し得ると、LADF134は有用性がより低くなり得る、すなわち、「新鮮」ではなくなり得る。したがって、いくつかの実施形態において、ユーザ許可によって、モバイル・デバイス104はLADFに対するフィードバックを提供し得る。そのフィードバックは、あとで他のモバイル・デバイスによって使用されるようにLADFを改良する、すなわち「リフレッシュ」させるようADFサーバ102によって用いられ得る。この目的を達成するために、ブロック616において、フィードバック・モジュール364は、該エリア内において空間的フィーチャ検出モジュール358によって識別された空間的フィーチャをLADF134によって表される粗いポイント・クラウドの空間的フィーチャと比較してもよく、空間的フィーチャ検出モジュール358によって観察もされたLADF134の空間的フィーチャと、空間的フィーチャ検出モジュール358によって観察されなかったLADF134の空間的フィーチャと、空間的フィーチャ検出モジュール358によって観察されたがLADF134内に存在していなかった空間的フィーチャとのうち1以上を表すLADFフィードバック238を生成してもよい。LADFフィードバック238は、ADFサーバ102に対してアップロードされる。ブロック618において、空間的フィーチャ・フィルタ・モジュール216は、LADFフィードバック238を受信して、それに応じてフィーチャ・スコア・データストア208内の空間的フィーチャのフィーチャ・スコアを更新して、その後、更新されたフィーチャ・スコアに基づいて、LADFを更新することで新たな空間的フィーチャを含むか、以前に含まれていた空間的フィーチャを除去し得る。
図7〜図9は共に、少なくとも一実施形態によるLADFフィードバック238に基づくLADF134を改良する工程の例を示す。まず、LADF134内に表されている全ての空間的フィーチャには初期フィーチャ・スコアが提供される。初期フィーチャ・スコアは、LADF134内の全ての空間的フィーチャにおいて同一であってもよく、空間的フィーチャの1以上の特性に基づくものであってもよい。たとえば、空間的フィーチャには、LADF134が生成されたADFクラスタのADF内に空間的フィーチャが現れた回数に基づいて初期フィーチャ・スコアが割り当てられ得る。以下の説明において、より高いフィーチャ・スコアはより信頼できる空間的フィーチャを反映し、逆に、より低いフィーチャ・スコアはより信頼できない空間的フィーチャを反映していると仮定する。モバイル・デバイス104によって供給されるLADFフィードバック238は、1以上のエントリを含み得る。各エントリは、LADF134内に存在する空間的フィーチャのモバイル・デバイス104による観察を確認する、LADF134内に存在する空間的フィーチャのモバイル・デバイス104による観察を否定する、または、モバイル・デバイス104によって観察されたがLADF134内に存在しない新しい空間的フィーチャを示唆する。空間的フィーチャのフィーチャ・スコアは、したがって、エントリと該エントリが表すフィードバック・タイプとに基づいて調整され得る。
図7の方法700は、ADFサーバ102によってLADFフィードバック238の各エントリに対して実装される処理を表す。ブロック702において、空間的フィーチャ・フィルタ・モジュール216は、LADFフィードバック238の選択されたエントリにアクセスして、該エントリによって表されるフィードバックのタイプを判定する。モバイル・デバイス104がLADF134の対応する空間的フィーチャを観察したことをフィードバック・エントリが確認する場合、ブロック704において、空間的フィーチャ・フィルタ・モジュール216は、フィードバック・エントリ内に表される空間的フィーチャの識別に関連する1以上のパラメータ(たとえば、モバイル・デバイス104による空間的フィーチャの観察時刻を示すタイム・スタンプ)を抽出し、抽出したパラメータをフィーチャ・スコア・データストア208に記録する。さらに、ブロック706において、空間的フィーチャ・フィルタ・モジュール216は、対応する空間的フィーチャのフィーチャ・スコアを上昇させて、最新の観察を反映する。
ブロック702に戻って、モバイル・デバイス104がLADF134内に表される空間的フィーチャを観察しなかったことをフィードバック・エントリが示す場合、ブロック708において、空間的フィーチャ・フィルタ・モジュール216は、フィードバック・エントリ内に表される空間的フィーチャの識別に関連する1以上のパラメータ(たとえば、空間的フィーチャが観察されるべきであったものの実際には観察されなかった領域の視像をキャプチャしていた時刻を示すタイム・スタンプ)を抽出し、抽出したパラメータをフィーチャ・スコア・データストア208に記録する。さらに、ブロック710において、空間的フィーチャ・フィルタ・モジュール216は、対応する空間的フィーチャのフィーチャ・スコアを低下させて、見逃した観察を反映する。
再度ブロック702に戻って、モバイル・デバイス104がLADF134内に表されていない空間的フィーチャを確実に観察したことをフィードバック・エントリが示す場合、ブロック712において、空間的フィーチャ・フィルタ・モジュール216はフィードバック・エントリ内に表されている以前に観察されなかった空間的フィーチャの識別に関連する1以上のパラメータ(たとえば、モバイル・デバイス104が最初または最後に空間的フィーチャを観察した時刻を示すタイム・スタンプ、空間的フィーチャの観察の頻度(たとえば、モバイル・デバイス104が空間的フィーチャを含む領域の方向に配向されたときに空間的フィーチャが観察された回数の割合)など)を抽出し、抽出したパラメータをフィーチャ・スコア・データストア208に記録する。さらに、ブロック714において、空間的フィーチャ・フィルタ・モジュール216は、対応する空間的フィーチャのフィーチャ・スコアをフィーチャ・スコア・データストア208において生成し、空間的フィーチャが既にフィーチャ・スコア・データストア208に表されていない場合、初期値をフィーチャ・スコアに割り当てる。もしそうでない場合、フィーチャ・スコアが新しく観察される空間的フィーチャに対して存在する場合(すなわち、空間的フィーチャが以前に別のモバイル・デバイス104によっても観察された場合)、空間的フィーチャ・フィルタ・モジュール216は空間的フィーチャのフィーチャ・スコアを上昇させる。その後、方法700はブロック702に戻り、LADFフィードバック238内の次のエントリに関する工程を繰り返す。
図8は、少なくとも一実施形態によるLADF134に含めるための候補空間的フィーチャを評価するための例示的方法800を示す。上述の通り、モバイル・デバイス104は、あるエリアのLADF134に含めるための候補であり得る、該エリア内で新しく観察される空間的フィーチャを識別するLADFフィードバック238を提供し得る。そして、空間的フィーチャ・フィルタ・モジュール216は空間的フィーチャが最初に検出されるときにフィーチャ・スコアを生成してもよく、他のモバイル・デバイス104によって同一の空間的フィーチャが観察されるたびにフィーチャ・スコアを上昇させてもよい。したがって、これらの空間的フィーチャのフィーチャ・スコアの各々は、LADF134に含めるための空間的フィーチャの候補の可能性(すなわち、ローカライゼーションのために空間的フィーチャがどれだけ「信頼」できるか)のインジケータとして機能する。したがって、トリガ条件(たとえば、一定の閾値を超えるLADF134のエイジング)に応じて、または、LADF134の変更が認められるであろうことを示すモバイル・デバイス104からの十分なフィードバックに応じて、ブロック802において、空間的フィーチャ・フィルタ・モジュール216は、フィーチャ・スコア・データストア208からLADF134に含めることを検討中である複数の候補空間的フィーチャのうちの1つを選択する。そして、ブロック804において、空間的フィーチャ・フィルタ・モジュール216は、選択された候補空間的フィーチャのフィーチャ・スコアを「THRESH_H」として指定された特定の閾値と比較する。この閾値は、固定閾値であってもよいし、1以上の現在の条件に基づいてもよい。たとえば、一実施形態において、閾値THRESH_Hは、LADF134に現在含まれている空間的フィーチャの平均の現在のフィーチャ・スコアに設定され得る。
候補空間的フィーチャのフィーチャ・スコアが閾値THRESH_Hを超えない場合、空間的フィーチャ・フィルタ・モジュール216は(今回の評価において)候補空間的フィーチャのそれ以上の検討を中止する。そして、方法800は次の候補空間的フィーチャの選択のためにブロック802に戻る。もしそうでない場合は、フィーチャ・スコアが閾値THRESH_Hを超えると、ブロック806において、空間的フィーチャ・フィルタ・モジュール216はローカライゼーション生成モジュール218に信号を送り、選択された候補空間的フィーチャをLADF134内に組み込む。いくつかの実施形態において、新しい空間的フィーチャをLADF134内に組み込むことは、LADF134から他の空間的フィーチャを除去することを必要とし得る。そのような場合、空間的フィーチャ・フィルタ・モジュール216は、たとえば、LADF134に現在含まれる全ての空間的フィーチャのうちの最も低いフィーチャ・スコアを有する空間的フィーチャを選択し得る。候補空間的フィーチャをLADF134内に組み込んだあと、方法800は次の候補空間的フィーチャの選択および評価のためにブロック802に戻る。
図9は、少なくとも一実施形態によるLADF134から除外するための空間的フィーチャを評価するための例示的方法900を示す。上述の通り、モバイル・デバイス104は、LADF134の空間的フィーチャがモバイル・デバイス104によって観察されたかどうかを確認するLADFフィードバック238を提供してもよく、空間的フィーチャ・フィルタ・モジュール216はそれに応じて空間的フィーチャのフィーチャ・スコアを調整してもよい。したがって、これらの空間的フィーチャの各々のフィーチャ・スコアは、ローカライゼーションのための空間的フィーチャの現在の信頼性のインジケータとして機能する。したがって、トリガ条件に応じて、ブロック902において、空間的フィーチャ・フィルタ・モジュール216はLADF134に現在含まれる空間的フィーチャを選択し、ブロック904において、空間的フィーチャ・フィルタ・モジュール216は選択された空間的フィーチャのフィーチャ・スコアを「THRESH_L」として指定された特定の閾値と比較する。この閾値は、固定閾値であってもよいし、1以上の現在の条件に基づいてもよい。たとえば、一実施形態において、閾値THRESH_Lは、LADF134に現在含まれていない候補空間的フィーチャの平均の現在のフィーチャ・スコアに設定され得る。
候補空間的フィーチャのフィーチャ・スコアが閾値THRESH_Lを超える場合、空間的フィーチャ・フィルタ・モジュール216は(今回の評価において)選択された空間的フィーチャのそれ以上の検討を中止する。そして、方法900はLADF134における次の空間的フィーチャの選択のためにブロック902に戻る。もしそうでない場合は、フィーチャ・スコアが閾値THRESH_Lより低くなると、ブロック906において、空間的フィーチャ・フィルタ・モジュール216はローカライゼーション生成モジュール218に信号を送り、選択された空間的フィーチャをLADF134から除去する。いくつかの実施形態において、LADF134から空間的フィーチャを除去することは、他の空間的フィーチャを選択し除去された空間的フィーチャを置き換えることを必要としてもよく、したがって、図8の方法800の候補空間的フィーチャ評価工程を開始するためのトリガ条件として機能してもよい。選択された空間的フィーチャをLADF134から除去したあと、方法900はLADF134における次の空間的フィーチャの選択および評価のためにブロック902に戻る。
ADFサーバ102によって維持されるLADFは、世界のエリアの視覚的フィーチャと幾何学的情報との表現を含む。この情報は機密の可能性があるため、ADFサーバ102は、LADFデータストア206内に記憶されるLADFコンテンツとADFデータストア204(いくつかの実施形態において、同一のデータストアを含み得る)に記憶されるADFコンテンツとに対しての権限のないアクセスまたは意図しないアクセスを防ぐよう注意する。この目的を達成するため、ADFサーバ102は、LADFデータストア206のLADFコンテンツの二層インデックス付けスキームの形式であるプライバシ保護措置を活用する。図10〜図12は、クエリ・モジュール220およびLADFデータストア206の例示的構成と、この二層インデックス付けスキームに従うそれらの動作とを示す。ADFデータストア204は、以下で示す方法と同様に構成され得る。
図10は、クエリ・モジュール220とLADFデータストア206とによって実装される例示的二層クエリ・インターフェース1000を示す。図示されるように、LADFデータストア206によって記憶される各LADF(たとえば、LADF134)は、LADFデータストア206に実装されるLADFデータベース1004の対応するLADFエントリ1002内に記憶される。各LADFエントリ1002は、複数のフィールド(UIDフィールド1006に記憶されるLADFに関連付けられているUIDを記憶するUIDフィールド1006と、LADFによって現在表されている空間的フィーチャのセットを記憶する空間的フィーチャ・フィールド1008と、LADFに関連付けられている位置インジケータまたは他の位置データを記憶する位置フィールド1010とを含む)を含む。
十分な保護措置がなければ、権限のない第三者はLADFデータストア206からLADF134を取得できる可能性があり、したがって、機密の可能性がある情報を晒すリスクがあり得る。二層クエリ・インターフェース1000は、リクエスト中のモバイル・デバイス104または他のリクエスタが、LADFデータがリクエストされたLADFに関連付けられているエリアに存在する(または存在してきた)と証明することを必要とすることによって、LADFデータストア206のLADFデータをより十分に確保し得る。いくつかの位置インジケータ(たとえば、GPS座標)は、容易になりすまされ得るか、もしそうでない場合、偽造され得る。さらに、他のタイプの位置インジケータ(たとえば、WLAN MACアドレスまたはセル・タワーBSID)は、関心領域よりもはるかに大きい領域をカバーする可能性があるので、十分な粒度が不足している可能性がある。したがって、位置インジケータ単独では、リクエスト中のモバイル・デバイスが実際に特定のエリア内に存在することの十分な証明になり得ない可能性がある。したがって、クエリ・インターフェース1000は代わりに、リクエスト中のモバイル・デバイスが実際に特定のエリア内に存在することの証明を、モバイル・デバイス104が特定のエリア内でモバイル・デバイス104によって観察された空間的フィーチャのセットを提出することを必要とすることによって、必要とし得る。クエリ・インターフェース1000はその後、空間的フィーチャのこのセットをLADFエントリの空間的フィーチャと比較して、合致するLADFを識別する。しかしながら、多くのエリアが類似する構造上の配置(たとえば、オフィス・ビル内での類似する空間)を有するので、複数のLADFが空間的フィーチャの提出されたセットに十分に合致し得るリスクがある。したがって、正しくないLADFがリクエスト中のモバイル・デバイス104に供給され得る。このことは、該正しくないLADFがモバイル・デバイス104にローカライゼーションに関する正しくない参照を提供するだけでなく、プライバシ侵害の可能性を表すので、二重の問題である。
したがって、モバイル・デバイスが表される該エリア内に実際に存在することを確実にするため、および、正しいLADFがモバイル・デバイスに供給されることの両方を確実にするため、クエリ・インターフェース1000は、モバイル・デバイスによって提出される空間的フィーチャのセットと1以上の位置インジケータとの両方を用いて、LADFデータベース1004から正しいLADFを識別する。この方法において、モバイル・デバイスまたは他のリクエスタが、識別されたエリア内で観察された空間的フィーチャを提出することによって、リクエスタが識別されたエリア内にあることを証明する、ということが理解されるであろう。したがって、識別されたエリアのLADFを除去することは、リクエスタは単に示されたエリアを見回して供給されるLADFによって表される視覚的情報よりも数段詳細である視覚的情報を取得するときに、機密の可能性がある情報が意図せず公開されるリスクが低い。
この目的を達成するために、クエリ・モジュール220は空間的フィーチャ・クエリ・インターフェース1012と位置選択モジュール1014とを含む。空間的フィーチャ・クエリ・インターフェース1012は、モバイル・デバイス104によって提出されたLADFリクエスト236内の空間的フィーチャ・セット1016を用いて、LADFデータベース1004のLADFエントリ1002の空間的フィーチャ・フィールド1008のサーチに基づいて、候補LADFの最初のクエリを実行する。このサーチは、LADFデータベース1004内の空間的フィーチャに対しての一貫性を確認するために、LADFリクエスト236によって表される画像に投影されるときの空間的フィーチャの相対形状を考慮に入れる。位置選択モジュール1014はその後、LADFリクエスト236と共に提出された1以上の位置インジケータ1018を候補LADFの位置フィールド1010内の各LADFの位置情報と比較することに基づいて、識別された候補LADFからの選択を行う。
さらに、空間的フィーチャのセットに加えて位置インジケータまたは他のキーを用いてLADFエントリ1002のサーチまたは他のアクセスを防ぐために、いくつかの実施形態において、LADFデータストア206は空間的フィーチャ・フィールド1008によってLADFエントリ1002にインデックスを付けるよう構成され、さらに、位置フィールド1010によるLADFエントリ1002へのインデックス付けを避けるよう構成されている。この構成において、LADFのLADFエントリ1002はLADFデータベース1004の空間的フィーチャ・セットを介してサーチ可能であるが、当初は位置によってサーチすることができない。このように、位置インジケータ単体を提出することによって、LADFデータベース1004から任意のLADF134を識別または生成することにはならない。
図11は、本開示の少なくとも一実施形態による図10の二層クエリ・インターフェース1000の動作の例示的方法1100を示す。方法1100はブロック1102において開始され、示されたエリアのLADFリクエスト236をモバイル・デバイスまたは他のリクエスタから提出することを伴う。少なくとも一実施形態において、処理されるLADFリクエスト236を承認するために、ADFサーバ102は、LADFリクエスト236が少なくとも該示されたエリア内で観察された空間的フィーチャ・セット1016と、モバイル・デバイスによって該示されたエリア内で取得または判定された1以上の位置インジケータ1018とを含むことを必要とする。
ブロック1104において、空間的フィーチャ・クエリ・インターフェース1012は、LADFデータベース1004のLADFエントリ1002をサーチして、LADFリクエスト236の空間的フィーチャ・セット1016と十分に重なる空間的フィーチャ・フィールド1008内の空間的フィーチャ・セットを有し、空間的フィーチャ・セット1016の投影された空間的フィーチャの形状と一致している相対形状を有するLADFエントリ1002を求める。一実施形態において、分析された各LADFエントリ1002について、空間的フィーチャ・クエリ・インターフェース1012は、空間的フィーチャ・セット1016とLADFエントリ1002の空間的フィーチャ・フィールド1008との間において合致している空間的フィーチャのカウントを判定し得る。空間的フィーチャ・クエリ・インターフェース1012はその後、LADFエントリ1002に関して判定されたカウント値に基づいてN個の候補LADF(たとえば、図10の候補LADF1021、1022、および1023)を選択し得る。たとえば、いくつかの例において、特定の閾値よりも大きいカウントを有する各LADFは、候補LADFとして選択され得る。他の例において、空間的フィーチャ・クエリ・インターフェース1012は、最も高いカウント値を有するN個のLADFをN個の候補LADFとして選択し得る。
ブロック1106において、空間的フィーチャ・クエリ・インターフェース1012は、少なくとも1つの候補LADFがLADFデータベース1004から識別されたことを確認する。もし識別されない場合、ブロック1108において、クエリ・モジュール220は実行中のモバイル・デバイスに対して信号を送り、示されていたエリアにとってLADFが利用不可能であると伝える。もしそうでない場合、1以上の識別された候補LADFは位置選択モジュール1014に供給される(たとえば、候補LADFのUIDを識別することによって)。そして、ブロック1110において、位置選択モジュール1014はLADFリクエスト236の1以上の位置インジケータ1018を、候補LADFの位置フィールド1010によって示される位置と比較し、各候補LADFと1以上の位置インジケータ1018との間における合致をスコア化する。ブロック1112において、位置選択モジュール1014は、1以上の位置インジケータ1018と候補LADFのうちの1つの位置情報との間において十分な合致があるかどうかを確認する。もし十分な合致がない場合、ブロック1114において、クエリ・モジュール220は実行中のモバイル・デバイスに対して信号を送り、示されていたエリアにとってLADFが利用不可能であると伝える。もしそうでない場合、ブロック1116において、位置選択モジュール1014は、識別されたエリアと場所が同じであるLADFとして最も良い位置合致スコアを有する候補LADFを選択し、この選択されたLADFを該エリアのLADF134として、LADFリクエスト236に応じてモバイル・デバイスに提供する。
LADFデータベース1004のLADFへの権限のないまたは意図しないアクセスを防ぐことに加えて、モバイル・デバイスによって検出される空間的フィーチャとそれらの形状とを用いてLADFクエリを実行することで、二段階クエリ工程を通じて最終的に選択されたLADFによってモバイル・デバイスが合致しているLADFを用いてローカライズを行うことを成功させることを確実にする。これは、LADF内の観察された空間的フィーチャとそれらの画像形状とを用いてLADFに対するモバイル・デバイスの姿勢を探すモバイルにおいて実行されたローカライゼーション工程として、LADFクエリ工程の第一段階で同一または類似の「ローカライゼーション」工程を実行して候補LADFを識別するためである。
図12は、少なくとも一実施形態による二層クエリ・インターフェース1000の別の構成を示す。図10に示される実施形態と同様、LADFデータストア206は、複数のLADFエントリ1202を備えるLADFデータベース1204を実装し、各LADFエントリ1202はUIDフィールド1006と、空間的フィーチャ・フィールド1008と、位置フィールド1010とを有する。しかしながら、図10の実施形態とは対照的に、LADFデータベース1204は代わりに、位置フィールド1010に基づいてLADFエントリ1202にインデックスを付ける。さらに、この実施形態において、クエリ・モジュール220は、LADFデータベース1204に対する位置クエリ・インターフェース1212と、空間的フィーチャ選択モジュール1214とを備える。
図示される実施形態において、LADFの二層クエリは、LADFリクエスト236の1以上の位置インジケータ1018に十分に合致する位置情報を有するLADFの位置クエリ・インターフェース1212によってLADFエントリ1202の第1層サーチとして実装され、1以上の候補LADFのセットを識別する。空間的フィーチャ選択モジュール1214はその後、LADFリクエスト236の空間的フィーチャ・セット1016を比較し、LADFリクエスト236に応じてリクエスト中のモバイル・デバイスに供給されるLADF134として空間的フィーチャ・セット1016と最も合致する候補LADFを選択する。
本発明の機能の多くおよび上記の本発明の原理の多くは、特定用途向けIC(ASIC)などの集積回路(IC)を用いる実装、またはそれらの中における実装によく適している。本明細書に開示された概念および原理によって導かれる場合、例えば、利用可能な時間、現在の技術、および経済的考慮事項によって動機付けられた多大な努力および多くの設計選択にもかかわらず、当業者は、最小限の実験によって、そのようなICを容易に生成することができるであろう。したがって、本開示に係る原理および概念を不明瞭にするリスクを最小限にするために、そのようなソフトウェアおよびICの更なる説明は、もし存在するならば、好ましい実施形態内における原則および概念に関する本質的事項に限定されるであろう。
本明細書では、第1および第2などの関係用語は、そのような実体または動作の間における任意の実際の関係または順序を必ずしも要求または暗示することなく、ある実体または動作を別の実体または動作と区別するためにのみ使用され得る。用語「含む(comprises)」、「含む(comprising)」、またはその任意の他の変形は、非排他的な包含を対象とすることを意図し、要素の一覧を含むプロセス、方法、物品、または装置が、それらの要素のみを含むのではなく、そのようなプロセス、方法、物品、または装置に明示的に列挙されていないか固有ではない他の要素を含むことができる。「〜を備える(comprises…a)」で始まる要素は、更なる制限なく、要素を含むプロセス、方法、項目、または装置内における追加の同一要素の存在を排除するものではない。本明細書で使用する「別の(another)」という用語は、少なくとも第2またはそれ以上のものとして定義される。本明細書で使用される「含む(including)」および/または「有する(having)」という用語は、備えるものとして定義される。電気光学技術に関して本明細書で使用される用語「結合された(coupled)」は、接続されるものとして定義されるが、必ずしも直接的ではないし、必ずしも機械的ではない。本明細書で使用する「プログラム(program)」という用語は、コンピュータ・システム上で実行するように設計された一連の命令として定義される。「プログラム(program)」または「コンピュータ・プログラム(computer program)」は、サブルーチン、関数、プロシージャ、オブジェクト方法、オブジェクト実装、実行可能アプリケーション、アプレット、サーブレット、ソース符号、オブジェクト符号、共有ライブラリ/動的ロード・ライブラリ、および/またはコンピュータ・システム上での実行のために設計された他の命令シーケンスを含み得る。
明細書および図面は、単なる例として考えるべきであり、したがって、本開示の範囲は、以下の特許請求の範囲およびその均等物によってのみ限定されることが意図される。なお、一般的な記述の中で上述した活動または要素の全てが必要であるとは限らないし、特定の活動または装置の一部が必要でなくてもよいし、1または複数の更なる活動が、記載されているそれらの要素に加えて、実行され得る。さらに、活動が列挙される順序は、必ずしも、それらが実施される順序ではない。上記フローチャートの工程は、別段の指定がない限り、任意の順序で行うことができ、実装に応じてステップを削除、反復、および/または追加することができる。また、これらの概念は、特定の実施形態を参照して説明されている。しかし、当業者であれば、以下の特許請求の範囲に記載された本開示の範囲から逸脱することなく、様々な修正および変更を行うことができることを理解する。したがって、明細書および図は、限定的な意味ではなく例示的な意味で考慮されるべきであり、そのような変更の全ては、本開示の範囲内に含まれることが意図される。
利点、他の利点、および問題に対する解決策は、特定の実施形態に関して上述されている。しかしながら、利益、利点、ならびに問題の解決策、および、利益、利点、または解決策が発生または顕在化させ得る1または複数の特徴は、任意または全ての特許請求の範囲の重要な、必須な、または不可欠な特徴と解釈されるべきではない。

Claims (22)

  1. コンピューティング・システムのデータストアにおいて複数のローカライゼーション・エリア記述ファイルを記憶する工程であって、各ローカライゼーション・エリア記述ファイルは、対応する空間的フィーチャのセットと、前記空間的フィーチャのセットが識別されて、前記空間的フィーチャのセットに関連付けられている位置情報と、を表す工程と、
    前記コンピューティング・システムにおいてモバイル・デバイスからローカライゼーション・エリア記述ファイルのリクエストを受信する工程であって、前記リクエストは空間的フィーチャのセットと1以上の非画像位置インジケータとを含む工程と、
    前記リクエストの前記空間的フィーチャのセットと前記リクエストの前記1以上の位置インジケータとのうち一方に基づいて、前記データストアから1以上の候補ローカライゼーション・エリア記述ファイルからなる候補ローカライゼーション・エリア記述ファイルのセットを識別する工程と、
    前記リクエストの前記空間的フィーチャのセットと前記リクエストの前記1以上の位置インジケータとのうち他方に基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットからローカライゼーション・エリア記述ファイルを選択する工程と、
    選択された前記ローカライゼーション・エリア記述ファイルを前記リクエストに応じて前記モバイル・デバイスに対して提供する工程と
    を備える方法。
  2. 前記1以上の位置インジケータは前記モバイル・デバイスの地理的位置のインジケータを含む、
    請求項1に記載の方法。
  3. 前記1以上のインジケータは無線基地局に関連付けられている識別子を含む、
    請求項2に記載の方法。
  4. 前記候補ローカライゼーション・エリア記述ファイルのセットを識別する工程は、前記リクエストの前記空間的フィーチャのセットに基づいて前記候補ローカライゼーション・エリア記述ファイルのセットを識別する工程を含み、
    前記ローカライゼーション・エリア記述ファイルを選択する工程は、前記リクエストの前記1以上の位置インジケータに基づいて前記ローカライゼーション・エリア記述ファイルを選択する工程を含む、
    請求項1に記載の方法。
  5. 前記リクエストの前記空間的フィーチャのセットに基づいて前記候補ローカライゼーション・エリア記述ファイルのセットを識別する工程は、
    前記複数のローカライゼーション・エリア記述の各ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記空間的フィーチャのセットのうちの空間的フィーチャと合致する前記ローカライゼーション・エリア記述ファイルの空間的フィーチャの数に基づいて第1スコアを判定する工程と、
    前記複数のローカライゼーション・エリア記述ファイルの各ローカライゼーション・エリア記述ファイルに関して判定された前記第1スコアに基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットを選択する工程と、を含む、
    請求項4に記載の方法。
  6. ローカライゼーション・エリア記述ファイルの前記第1スコアを判定する工程は、ループ閉じ込みアルゴリズムを用いて前記第1スコアを判定する工程を含む、
    請求項5に記載の方法。
  7. 前記1以上の位置インジケータに基づいて前記ローカライゼーション・エリア記述ファイルを選択する工程は、
    各候補ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記1以上の位置インジケータのうちの位置インジケータに対応する前記ローカライゼーション・エリア記述ファイルの前記位置情報によって表される位置インジケータの数に基づいて第2スコアを判定する工程と、
    各候補ローカライゼーション・エリア記述ファイルに関して判定された前記第2スコアに基づいて、前記ローカライゼーション・エリア記述ファイルを選択する工程と、を含む、
    請求項5に記載の方法。
  8. 前記候補ローカライゼーション・エリア記述ファイルのセットを識別する工程は、前記リクエストの前記1以上の位置インジケータに基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットを識別する工程を含み、
    前記ローカライゼーション・エリア記述ファイルを選択する工程は、前記リクエストの前記空間的フィーチャのセットに基づいて、前記ローカライゼーション・エリア記述ファイルを選択する工程を含む、
    請求項1に記載の方法。
  9. 前記リクエストの前記1以上の位置インジケータに基づいて前記候補ローカライゼーション・エリア記述ファイルのセットを識別する工程は、
    前記複数のローカライゼーション・エリア記述ファイルの各ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記1以上の位置インジケータのうちの位置インジケータに対応する前記ローカライゼーション・エリア記述ファイルの前記位置情報によって表される位置インジケータの数に基づいて第1スコアを判定する工程と、
    前記複数のローカライゼーション・エリア記述ファイルの各ローカライゼーション・エリア記述ファイルに関して判定された前記第1スコアに基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットを選択する工程と、を含む、
    請求項8に記載の方法。
  10. 前記リクエストの前記空間的フィーチャのセットに基づいて前記ローカライゼーション・エリア記述ファイルを選択する工程は、
    各候補ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記空間的フィーチャのセットの空間的フィーチャと合致する前記候補ローカライゼーション・エリア記述ファイルの空間的フィーチャの数に基づいて第2スコアを判定する工程と、
    各候補ローカライゼーション・エリア記述ファイルに関して判定された前記第2スコアに基づいて、前記ローカライゼーション・エリア記述ファイルを選択する工程と、を含む、
    請求項9に記載の方法。
  11. 複数のローカライゼーション・エリア記述ファイルを記憶するデータストアであって、各ローカライゼーション・エリア記述ファイルは、対応する空間的フィーチャのセットと、前記空間的フィーチャのセットが識別されて、前記空間的フィーチャのセットに関連付けられている位置情報とを表す前記データストアと、
    モバイル・デバイスからローカライゼーション・エリア記述ファイルのリクエストを受信するネットワーク・インターフェースであって、前記リクエストは空間的フィーチャのセットと1以上の非画像位置インジケータとを含む前記ネットワーク・インターフェースと、
    前記データストアと前記ネットワーク・インターフェースとに接続されるクエリ・モジュールと、を備えるコンピューティング・システムであって、
    前記クエリ・モジュールは、
    前記リクエストの前記空間的フィーチャのセットと前記リクエストの前記1以上の位置インジケータとのうち一方に基づいて、前記データストアから1以上の候補ローカライゼーション・エリア記述ファイルからなる候補ローカライゼーション・エリア記述ファイルのセットを識別するクエリ・インターフェースと、
    前記リクエストの前記空間的フィーチャのセットと前記リクエストの前記1以上の位置インジケータとのうち他方に基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットからローカライゼーション・エリア記述ファイルを選択する選択モジュールと、を含み、
    前記クエリ・モジュールは、選択された前記ローカライゼーション・エリア記述ファイルを前記リクエストに応じて前記ネットワーク・インターフェースを介して前記モバイル・デバイスに対して提供する、
    コンピューティング・システム。
  12. 前記1以上の位置インジケータは、前記モバイル・デバイスの地理的位置のインジケータと、無線基地局に関連付けられている識別子とのうち少なくとも1つを含む、
    請求項11に記載のコンピューティング・システム。
  13. 前記クエリ・インターフェースは、前記リクエストの前記空間的フィーチャのセットに基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットを識別し、
    前記選択モジュールは、前記リクエストの前記1以上の位置インジケータに基づいて、前記ローカライゼーション・エリア記述ファイルを選択する、
    請求項11に記載のコンピューティング・システム。
  14. 前記データストアは、前記ローカライゼーション・エリア記述ファイルの前記位置情報に基づいて各ローカライゼーション・エリア記述ファイルにインデックス付けするのではなく、前記ローカライゼーション・エリア記述ファイルの前記空間的フィーチャのセットに基づいて前記ローカライゼーション・エリア記述ファイルにインデックス付けする、
    請求項13に記載のコンピューティング・システム。
  15. 前記クエリ・インターフェースは、
    前記複数のローカライゼーション・エリア記述の各ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記空間的フィーチャのセットのうちの空間的フィーチャと合致する前記ローカライゼーション・エリア記述ファイルの空間的フィーチャの数に基づいて第1スコアを判定することと、
    前記複数のローカライゼーション・エリア記述ファイルの各ローカライゼーション・エリア記述ファイルに関して判定された前記第1スコアに基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットを選択することと、によって、
    前記候補ローカライゼーション・エリア記述ファイルのセットを識別する、
    請求項13に記載のコンピューティング・システム。
  16. 前記選択モジュールは、ループ閉じ込みアルゴリズムを用いてローカライゼーション・エリア記述ファイルの前記第1スコアを判定する、
    請求項15に記載のコンピューティング・システム。
  17. 前記選択モジュールは、
    各候補ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記1以上の位置インジケータのうちの位置インジケータに対応する前記ローカライゼーション・エリア記述ファイルの前記位置情報によって表される位置インジケータの数に基づいて第2スコアを判定することと、
    各候補ローカライゼーション・エリア記述ファイルに関して判定された前記第2スコアに基づいて、前記ローカライゼーション・エリア記述ファイルを選択することと、によって、
    前記ローカライゼーション・エリア記述ファイルを選択する、
    請求項15に記載のコンピューティング・システム。
  18. 前記クエリ・インターフェースは、前記リクエストの前記1以上の位置インジケータに基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットを識別し、
    前記選択モジュールは、前記リクエストの前記空間的フィーチャのセットに基づいて、前記ローカライゼーション・エリア記述ファイルを選択する、
    請求項11に記載のコンピューティング・システム。
  19. 前記クエリ・インターフェースは、
    前記複数のローカライゼーション・エリア記述の各ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記1以上の位置インジケータのうちの位置インジケータに対応する前記ローカライゼーション・エリア記述ファイルの前記位置情報によって表される位置インジケータの数に基づいて第1スコアを判定することと、
    前記複数のローカライゼーション・エリア記述ファイルの各ローカライゼーション・エリア記述ファイルに関して判定された前記第1スコアに基づいて、前記候補ローカライゼーション・エリア記述ファイルのセットを選択することと、によって、
    前記候補ローカライゼーション・エリア記述ファイルのセットを識別する、
    請求項18に記載のコンピューティング・システム。
  20. 前記選択モジュールは、
    各候補ローカライゼーション・エリア記述ファイルに関して、前記リクエストの前記空間的フィーチャのセットの空間的フィーチャと合致する前記候補ローカライゼーション・エリア記述ファイルの空間的フィーチャの数に基づいて第2スコアを判定することと、
    各候補ローカライゼーション・エリア記述ファイルに関して判定された前記第2スコアに基づいて、前記ローカライゼーション・エリア記述ファイルを選択することと、によって
    前記ローカライゼーション・エリア記述ファイルを選択する、
    請求項19に記載のコンピューティング・システム。
  21. モバイル・デバイスが配置されているエリアの視像をキャプチャする1以上の撮像センサと、
    前記1以上の撮像センサに接続されている空間的フィーチャ検出モジュールであって、キャプチャされた前記視像において空間的フィーチャのセットを判定する前記空間的フィーチャ検出モジュールと、
    前記空間的フィーチャ検出モジュールに接続されているリクエスト・モジュールであって、前記リクエスト・モジュールは前記エリアのローカライゼーション・エリア記述ファイルのリクエストを生成し、前記ローカライゼーション・エリア記述ファイルは前記空間的フィーチャのセットと前記エリアに関連付けられている1以上の位置インジケータとを含む、前記リクエスト・モジュールと、
    前記リクエスト・モジュールに接続されているネットワーク・インターフェースであって、リモート・コンピューティング・システムに前記リクエストを送信する前記ネットワーク・インターフェースと
    を備えるモバイル・デバイス。
  22. 前記ネットワーク・インターフェースと、前記空間的フィーチャ検出モジュールと、前記リクエスト・モジュールとに接続されているローカライゼーション・モジュールであって、前記空間的フィーチャ検出モジュールによって検出される空間的フィーチャと、前記リクエストに応じて前記リモート・コンピューティング・システムから受信されるローカライゼーション・エリア記述ファイルとを用いてローカライゼーション工程を実行する前記ローカライゼーション・モジュールをさらに備える、
    請求項21に記載のモバイル・デバイス。
JP2017556927A 2015-05-11 2016-05-05 ローカライゼーション・エリア記述ファイルのプライバシ機密クエリ Pending JP2018526698A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/708,970 2015-05-11
US14/708,970 US20160335275A1 (en) 2015-05-11 2015-05-11 Privacy-sensitive query for localization area description file
PCT/US2016/030956 WO2016182846A1 (en) 2015-05-11 2016-05-05 Privacy-sensitive query for localization area description file

Publications (2)

Publication Number Publication Date
JP2018526698A true JP2018526698A (ja) 2018-09-13
JP2018526698A5 JP2018526698A5 (ja) 2019-05-23

Family

ID=56116521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017556927A Pending JP2018526698A (ja) 2015-05-11 2016-05-05 ローカライゼーション・エリア記述ファイルのプライバシ機密クエリ

Country Status (6)

Country Link
US (1) US20160335275A1 (ja)
EP (1) EP3295730A1 (ja)
JP (1) JP2018526698A (ja)
KR (1) KR102149374B1 (ja)
CN (1) CN107438841A (ja)
WO (1) WO2016182846A1 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9754419B2 (en) 2014-11-16 2017-09-05 Eonite Perception Inc. Systems and methods for augmented reality preparation, processing, and application
US10043319B2 (en) 2014-11-16 2018-08-07 Eonite Perception Inc. Optimizing head mounted displays for augmented reality
US9916002B2 (en) 2014-11-16 2018-03-13 Eonite Perception Inc. Social applications for augmented reality technologies
US11017712B2 (en) 2016-08-12 2021-05-25 Intel Corporation Optimized display image rendering
US9928660B1 (en) 2016-09-12 2018-03-27 Intel Corporation Hybrid rendering for a wearable display attached to a tethered computer
US10346223B1 (en) * 2016-11-23 2019-07-09 Google Llc Selective obfuscation of notifications
GB201705767D0 (en) * 2017-04-10 2017-05-24 Blue Vision Labs Uk Ltd Co-localisation
KR102006245B1 (ko) * 2017-09-15 2019-08-06 주식회사 인사이너리 바이너리 파일에 기초하여 오픈소스 소프트웨어 패키지를 식별하는 방법 및 시스템
CN109579765B (zh) * 2017-09-29 2020-09-18 上海时元互联网科技有限公司 基于伺服电机的三维点云数据匹配方法及系统、控制器
US10692289B2 (en) 2017-11-22 2020-06-23 Google Llc Positional recognition for augmented reality environment
US11227435B2 (en) 2018-08-13 2022-01-18 Magic Leap, Inc. Cross reality system
JP7503542B2 (ja) 2018-10-05 2024-06-20 マジック リープ, インコーポレイテッド 任意の場所における場所特有の仮想コンテンツのレンダリング
US11151792B2 (en) 2019-04-26 2021-10-19 Google Llc System and method for creating persistent mappings in augmented reality
US11163997B2 (en) 2019-05-05 2021-11-02 Google Llc Methods and apparatus for venue based augmented reality
JP2022551735A (ja) 2019-10-15 2022-12-13 マジック リープ, インコーポレイテッド 無線フィンガプリントを用いたクロスリアリティシステム
WO2021076754A1 (en) 2019-10-15 2021-04-22 Magic Leap, Inc. Cross reality system with localization service
EP4052086A4 (en) 2019-10-31 2023-11-15 Magic Leap, Inc. EXTENDED REALITY SYSTEM PROVIDING QUALITY INFORMATION ABOUT PERSISTENT COORDINATE FRAMES
WO2021096931A1 (en) 2019-11-12 2021-05-20 Magic Leap, Inc. Cross reality system with localization service and shared location-based content
JP2023504570A (ja) 2019-12-09 2023-02-03 マジック リープ, インコーポレイテッド 仮想コンテンツの簡略化されたプログラミングを伴うクロスリアリティシステム
WO2021142600A1 (zh) * 2020-01-14 2021-07-22 华为技术有限公司 一种图像识别方法及相关设备
WO2021163300A1 (en) 2020-02-13 2021-08-19 Magic Leap, Inc. Cross reality system with map processing using multi-resolution frame descriptors
CN115427758A (zh) 2020-02-13 2022-12-02 奇跃公司 具有精确共享地图的交叉现实系统
CN115398484A (zh) 2020-02-13 2022-11-25 奇跃公司 具有用于定位的地理定位信息优先级的交叉现实系统
CN115461787A (zh) * 2020-02-26 2022-12-09 奇跃公司 具有快速定位的交叉现实系统
CN112513854B (zh) * 2020-07-08 2023-02-28 华为技术有限公司 一种高精度地图、高精度地图生成方法和使用方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108873A (ja) * 2000-09-25 2002-04-12 Internatl Business Mach Corp <Ibm> 空間情報利用システム、情報取得装置、およびサーバシステム
JP2004177330A (ja) * 2002-11-28 2004-06-24 Hitachi Ltd 空間情報提供システム
WO2012090890A1 (ja) * 2010-12-27 2012-07-05 日本電気株式会社 情報処理システム,情報処理方法及び情報処理プログラム
US20120299702A1 (en) * 2011-05-26 2012-11-29 Caterpillar Inc. Hybrid positioning system
WO2013029674A1 (en) * 2011-08-31 2013-03-07 Metaio Gmbh Method of matching image features with reference features
US20140240492A1 (en) * 2013-02-28 2014-08-28 Google Inc. Depth sensor using modulated light projector and image sensor with color and ir sensing
US20140323148A1 (en) * 2013-04-30 2014-10-30 Qualcomm Incorporated Wide area localization from slam maps

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1767959A1 (en) * 2005-09-23 2007-03-28 Fortuna Electronic Corp. Global positioning system and method
US8824833B2 (en) * 2008-02-01 2014-09-02 Omnivision Technologies, Inc. Image data fusion systems and methods
US20100287178A1 (en) * 2009-05-08 2010-11-11 Google Inc. Refining location estimates and reverse geocoding based on a user profile
US20110161792A1 (en) * 2009-12-31 2011-06-30 Edward Florence Producing interactive documents
US8965447B1 (en) * 2010-08-24 2015-02-24 Cellco Partnership Location based network selection
US20120084118A1 (en) * 2010-09-30 2012-04-05 International Business Machines Corporation Sales predication for a new store based on on-site market survey data and high resolution geographical information
CN102194007B (zh) * 2011-05-31 2014-12-10 中国电信股份有限公司 获取移动增强现实信息的系统和方法
US9239849B2 (en) * 2011-06-08 2016-01-19 Qualcomm Incorporated Mobile device access of location specific images from a remote database
US20130101163A1 (en) * 2011-09-30 2013-04-25 Rajarshi Gupta Method and/or apparatus for location context identifier disambiguation
EP2817785B1 (en) * 2012-02-23 2019-05-15 Charles D. Huston System and method for creating an environment and for sharing a location based experience in an environment
US9323785B2 (en) * 2013-03-06 2016-04-26 Streamoid Technologies Private Limited Method and system for mobile visual search using metadata and segmentation
US20140357290A1 (en) * 2013-05-31 2014-12-04 Michael Grabner Device localization using camera and wireless signal
CN103984037B (zh) * 2014-04-30 2017-07-28 深圳市墨克瑞光电子研究院 基于视觉的移动机器人障碍物检测方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108873A (ja) * 2000-09-25 2002-04-12 Internatl Business Mach Corp <Ibm> 空間情報利用システム、情報取得装置、およびサーバシステム
JP2004177330A (ja) * 2002-11-28 2004-06-24 Hitachi Ltd 空間情報提供システム
WO2012090890A1 (ja) * 2010-12-27 2012-07-05 日本電気株式会社 情報処理システム,情報処理方法及び情報処理プログラム
US20120299702A1 (en) * 2011-05-26 2012-11-29 Caterpillar Inc. Hybrid positioning system
WO2013029674A1 (en) * 2011-08-31 2013-03-07 Metaio Gmbh Method of matching image features with reference features
US20140240492A1 (en) * 2013-02-28 2014-08-28 Google Inc. Depth sensor using modulated light projector and image sensor with color and ir sensing
US20140323148A1 (en) * 2013-04-30 2014-10-30 Qualcomm Incorporated Wide area localization from slam maps

Also Published As

Publication number Publication date
US20160335275A1 (en) 2016-11-17
KR20180005168A (ko) 2018-01-15
CN107438841A (zh) 2017-12-05
KR102149374B1 (ko) 2020-08-31
EP3295730A1 (en) 2018-03-21
WO2016182846A1 (en) 2016-11-17

Similar Documents

Publication Publication Date Title
JP6602889B2 (ja) 移動体装置ローカリゼーションのためのエリア記述ファイルのクラウドソーシングによる作成および更新
JP2018526698A (ja) ローカライゼーション・エリア記述ファイルのプライバシ機密クエリ
EP3295129B1 (en) Privacy filtering of area description file prior to upload
US11830149B2 (en) Cross reality system with prioritization of geolocation information for localization
JP7504212B2 (ja) Wifi/gpsベースのマップマージを伴うクロスリアリティシステム
WO2021222371A1 (en) Cross reality system for large scale environments
JP6609640B2 (ja) 電子デバイス上における環境マッピング用のフィーチャ・データの管理
EP3746869A1 (en) Systems and methods for anchoring virtual objects to physical locations
US11694394B2 (en) Cross reality system for large scale environment reconstruction

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190412

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190412

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20191206

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20191223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200623

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200918

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201119

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210518