JP6609640B2 - 電子デバイス上における環境マッピング用のフィーチャ・データの管理 - Google Patents

電子デバイス上における環境マッピング用のフィーチャ・データの管理 Download PDF

Info

Publication number
JP6609640B2
JP6609640B2 JP2017556874A JP2017556874A JP6609640B2 JP 6609640 B2 JP6609640 B2 JP 6609640B2 JP 2017556874 A JP2017556874 A JP 2017556874A JP 2017556874 A JP2017556874 A JP 2017556874A JP 6609640 B2 JP6609640 B2 JP 6609640B2
Authority
JP
Japan
Prior art keywords
features
electronic device
feature
data
localization data
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.)
Expired - Fee Related
Application number
JP2017556874A
Other languages
English (en)
Other versions
JP2018524657A (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 JP2018524657A publication Critical patent/JP2018524657A/ja
Application granted granted Critical
Publication of JP6609640B2 publication Critical patent/JP6609640B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • 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/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/758Involving statistics of pixels or of feature values, e.g. histogram matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Library & Information Science (AREA)
  • Optics & Photonics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Generation (AREA)
  • Complex Calculations (AREA)

Description

本開示は、一般に視像キャプチャおよび処理に関し、より詳細には、電子デバイスにおけるローカライゼーション・データの管理に関する。
モバイル・デバイスにおけるマシン・ビジョンの実装は、同時ローカライゼーション・マッピング(SLAM)を実現する様々なアプリケーションをサポートし、これは、デバイスによってキャプチャされるローカル環境の視像の分析を通じて、および、モバイル・デバイスの姿勢情報を識別されたオブジェクトに関連付けることを通じてデバイスのローカル環境内におけるオブジェクトの識別を可能にすることによって、様々なアプリケーション(拡張現実(AR)アプリケーションおよび仮想現実(VR)アプリケーション)をサポートすることができる。これらのフィーチャをサポートするために、モバイル・デバイスは、1以上の画像センサにおいて視像をキャプチャすることによって、および、様々な非視覚センサ(たとえば、加速度計やジャイロスコープ)からデータを受信することによって、多種多様なデータを収集することができる。しかしながら、収集された情報の密度とサイズとによって、モバイル・デバイスのストレージ・リソースに悪影響が与えられるだけでなく、オブジェクトの識別が低速化する可能性がある。
本開示の少なくとも一実施形態に係る、データから識別されるフィーチャの特徴に基づいてローカライゼーション・データを削減するよう構成されている電子デバイスを示す図。 本開示の少なくとも一実施形態に係る、データから識別されるフィーチャの特徴に基づいてローカライゼーション・データを削減する図1の電子デバイスの一部を示す図。 本開示の少なくとも一実施形態に係る図2のデータ削減部の図。 本開示の少なくとも一実施形態に係る、関連付けられているフィーチャの品質を識別するために図3のデータ削減部によって活用されるフィーチャ記述子を示す図。 本開示の少なくとも一実施形態に係る、図3のデータ削減部における幾何学的圧縮モジュールの例を示す図。 本開示の少なくとも一実施形態に係る、電子デバイスの処理システムを示すブロック図。 本開示の少なくとも一実施形態に係る、フィーチャ品質に基づいてローカライゼーション・データを削減する電子デバイスの動作を示すフロー図。
本開示は、添付の図面を参照することによって、当業者によってよりよく理解され得るし、その多くの特徴および利点も当業者に明らかになり得る。異なる図面における同じ参照符号の使用は、類似または同一の項目を示す。
以下の説明は、電子デバイスのローカル環境内にあるオブジェクトの画像を基にした識別に基づいて電子デバイスの相対位置または相対配向を判定することに関する多くの具体的な実施形態および詳細を提供することによって、本開示の完全な理解を伝達することを意図している。しかしながら、本開示は、単なる例示でありこれらの特定の実施形態および詳細に限定されるものではなく、本開示の範囲は、したがって、特許請求の範囲およびその均等物によってのみ限定されることが意図される、ということが理解される。既知のシステムおよび方法に照らして、当業者は、特定の設計および他の必要性に応じて、任意の数の代替実施形態における意図された目的および利益のための開示の使用が理解されるであろう、ということがさらに理解される。
図1〜図7は、データから識別されるフィーチャの特徴に基づいて電子デバイスにおいてローカライゼーション・データを削減するための様々な手法を示す。フィーチャの特徴に基づいて、品質値がそれぞれ識別されたフィーチャに割り当てられる。このことは、フィーチャに関連付けられているデータが電子デバイスのローカル環境をマッピングする際に有用である可能性を示す。ローカライゼーション・データは、低品質値を有するフィーチャに関連付けられているデータを除去することによって削減され、削減されたローカライゼーション・データは、電子デバイスの基準系において、削減されたローカライゼーション・データから識別されたフィーチャを設置することによって、電子デバイスのローカル環境をマッピングするために用いられる。このようにローカライゼーション・データを削減することによって、ローカライゼーション・データの全体の品質を維持しつつ、ローカライゼーション・データを記憶している1以上のデータ・ファイルのサイズが縮小される。したがって、削減されたローカライゼーション・データによって、ストレージ・スペースと処理リソースとを含む電子デバイスのリソース上でのマッピングの影響を低減しつつ、ローカル環境の高品質マッピングをサポートする。
フィーチャの品質値は、任意の様々な因子(キャプチャされた互いに異なる画像でのフィーチャの観察数、フィーチャが互いに異なる画像でキャプチャされた異なる角度の数、キャプチャされた互いに異なる画像でのフィーチャの一貫性、フィーチャの動的特徴(たとえば、フィーチャが頻繁に消えるか、マッピングされている環境外へ移動するかどうかを示す)、1以上のキャプチャされた画像における電子デバイスからのフィーチャの距離など)、またはそれらの任意の組み合わせに基づいて識別される。低品質値に関連付けられているそれらの特徴をローカライゼーション・データから識別および除去するよりも前または後に、電子デバイスは、ローカライゼーション・データのサイズを縮小する更なる工程を行い得る。そのような工程の例は、ローカライゼーション・データから非視覚センサ・データを除去すること、ローカライゼーション・データからキーフレームを識別してキーフレームに関連付けられていないデータを除去すること、複数のフィーチャをより小さなサブセットのフィーチャに幾何学的に圧縮することなどを含む。電子デバイスはそれによって、ローカライゼーション・データのサイズを実質的に縮小し、ローカライゼーション・データによってサポートされるマッピング工程の効率性を改善することができる。
図1は、本開示の少なくとも一実施形態に係る、画像および非視覚センサ・データを用いて位置情報機能(たとえば、SLAM、VR、またはAR)をサポートするよう構成されている電子デバイス100を示す。電子デバイス100は、ユーザ携帯型のモバイル・デバイス(たとえば、タブレット・コンピュータ、コンピュータ使用可能の携帯電話(たとえば、「スマートフォン」)、ノート型パソコン、携帯情報端末(PDA)、ゲーム機のリモコン、テレビのリモコンなど)を含み得る。他の実施形態において、電子デバイス100は、他のタイプのモバイル・デバイス(たとえば、自動車、遠隔操作型ドローン、また他の機上装置など)を含み得る。説明を容易にするために、電子デバイス100は本明細書においてモバイル・デバイス(たとえば、タブレット・コンピュータまたはスマートフォン)の例示的文脈内で一般的に説明される。しかしながら、電子デバイス100はこれらの例示的実施形態に限定されない。
図示される例において、電子デバイス100は、他の表面106とは反対の表面104を有するハウジング102を備える。例において、図示される例示的な薄型長方形ブロックのフォーム・ファクタにおいて、表面104および106は略並行であり、ハウジング102は表面104および106の間において4つの側面(上、下、左、および右)をさらに含む。ハウジング102は、多くの他のフォーム・ファクタにおいて実装され得る。表面104および106は非並行配向を有し得る。図示されるタブレットの実施形態について、電子デバイス100は、ユーザ110に対して視覚情報を提供するための表面106に配置されるディスプレイ108を備える。したがって、容易に参照できるように、ユーザ110に対する電子デバイス100の本例示的配向の反射として、表面106は本明細書において「前向き表面」と称され、表面104は本明細書において「ユーザ向き表面」と称される。ただし、これらの表面の配向は、これらの相関的な指定に限定されない。
電子デバイス100は、電子デバイス100のローカル環境112に関する情報を取得するための複数のセンサを備える。電子デバイス100は、前向き表面106に配置される撮像センサ114ならびに116と深度センサ120、および、ユーザ向き表面104に配置される撮像センサ118を介して、ローカル環境112の視覚情報(視像)を取得する。一実施形態において、撮像センサ114は、表面106の方を向くローカル環境112のより広い画角を提供するための魚眼レンズまたは他の広角レンズを有する広角撮像センサとして実装される。撮像センサ116は、表面106の方を向くローカル環境112のより狭い画角を提供するための典型的な画角レンズを有する狭角撮像センサとして実装される。したがって、撮像センサ114および撮像センサ116は、それぞれ本明細書において、「広角撮像センサ114」および「狭角撮像センサ116」とも称される。以下でより詳細に説明されるように、広角撮像センサ114と狭角撮像センサ116とは、前向き表面106に配置および配向されることによって、電子デバイス100からの規定の距離において始まるそれらの視野が重複する。それにより、画像分析を介して重複する視野の領域に配置されるローカル環境112内のオブジェクトの深度感知を行うことが可能になる。撮像センサ118は、表面104の方を向くローカル環境112の画像データをキャプチャするために用いられる。さらに、いくつかの実施形態において、撮像センサ118は、頭部122の動きのトラッキングまたは顔認識用に構成される。これによって、ディスプレイ108を介して提示される視像の視点を調整するために用いられ得るヘッド・トラッキング情報を提供する。
深度センサ120は、一実施形態において、変調光プロジェクタ119を用いて前向き表面106からの変調光パターンをローカル環境内に投影し、撮像センサ114および116の一方または両方を用いて、ローカル環境112内のオブジェクトから反射される際の変調光パターンの反射をキャプチャする。これらの変調光パターンは、空間的変調光パターンまたは一時的変調光パターンのどちらであってもよい。変調光パターンのキャプチャされた反射は、本明細書において「深度視像」と称される。深度センサ120はその後、深度視像の分析に基づいて、オブジェクトの深度、すなわち、電子デバイス100からのオブジェクトの距離を算出し得る。結果的に深度センサ120から得られた深度データは、撮像センサ114および116によってキャプチャされた画像データの画像分析(たとえば、立体分析)から得られる深度情報を較正、もしそうでない場合は、拡張する。それに代えて、画像分析から得られた深度情報の代わりに、深度センサ120からの深度データが用いられ得る。たとえば、多視点分析は典型的には、明るい照明条件およびオブジェクトが比較的遠い際に、より適している。一方で、変調光に基づく深度感知は、より暗い照明条件または観察されるオブジェクトが比較的近い(たとえば、4〜5メートル以内である)際に、より適している。したがって、電子デバイス100は、オブジェクトが屋外にあるとき、もしそうでない場合は、比較的良い照明条件にあることを感知すると、電子デバイス100は多視点分析を用いることを選択し、オブジェクト進度を判定し得る。一方で、電子デバイス100は、オブジェクトが屋内にあるとき、もしそうでない場合は、比較的悪い照明条件にあることを感知すると、電子デバイス100は深度センサ120を介して変調光に基づく深度感知を使用することに切り替え得る。
電子デバイス100はさらに、姿勢検出のための非視覚姿勢情報に依拠し得る。この非視覚姿勢情報は、1以上の非視覚センサ(図1に示されない)(たとえば、1以上のジャイロスコープ、磁力計、および加速度計を含む慣性計測装置(IMU))を介して電子デバイス100によって取得される。少なくとも一実施形態において、IMUは、電子デバイス100の基準系のX軸、Y軸、およびZ軸と称される並進軸と、電子デバイス100の基準系のロール軸、ピッチ軸、およびヨー軸と称される回転軸とを含む複数の運動軸に沿って姿勢情報を生成するために活用される。非視覚情報は、電子デバイス100の位置を識別するために用いられる定常光センサならびに位置センサ(たとえば、GPS(登録商標)センサ)または他のセンサ(たとえば、1以上の無線通信、セル無線)をさらに含み得る。
電子デバイス100は動作中、画像センサ・データと非視覚センサ・データとを用いて、電子デバイス100の姿勢を推定する。少なくとも一実施形態において、電子デバイス100はリセット後、地理位置情報データ、他の非視覚センサ・データ、以下に詳述される視覚データ、またはそれらの組み合わせに基づいて、初期姿勢を判定する。電子デバイス100の姿勢が変化すると、非視覚センサは、比較的高い割合で、デバイス姿勢の変化を反映する非視覚姿勢情報を生成する。同時に、視覚センサは、デバイスの姿勢変化も反映する画像をキャプチャする。この非視覚および視覚姿勢情報に基づいて、電子デバイス100は初期姿勢を更新して、デバイスの現在の姿勢を反映される。
電子デバイス100は、1以上の撮像センサ114、116、および118によってキャプチャされる画像データにおける空間的フィーチャの検出に基づいて、視覚姿勢情報を生成する。たとえば、図示される図1において、ローカル環境112は、3つの隅124、126、および128と、幅木130と、電気コンセント132とを有するオフィス・ビルの廊下を含む。ユーザ110は、電子デバイス100の配置および配向を行うことによって、前向き撮像センサ114と116とがそれぞれ、廊下のこれらの空間的フィーチャを含む広角撮像センサ画像データ134と狭角撮像センサ画像データ136とをキャプチャする。この例において、深度センサ120はさらに、電子デバイス100の現在の姿勢に対するこれらの空間的フィーチャの相対距離を反映する深度データ138をキャプチャする。さらに、ユーザ向き撮像センサ118は、ユーザ110の頭部122の現在の姿勢のヘッド・トラッキング・データ140を表す画像データをキャプチャする。また、非視覚センサ・データ142(たとえば、IMUからの示度)が、現在の姿勢である電子デバイス100によって収集される。
この入力データから、電子デバイス100は、外部ソースからの明示的絶対的ローカライゼーション情報がない状態での相対的姿勢の推定を判定することができる。たとえば、電子デバイス100は、広角撮像センサ画像データ134と狭角撮像センサ画像データ136とを分析することによって、電子デバイス100と隅124、126、および128との間の距離を判定することができる。それに代えて、深度センサ120から取得される深度データ138は、空間的フィーチャの距離を判定するために用いられる。これらの距離から、電子デバイス100は、ローカル環境112によって表されるオフィス内の相対位置を三角測量、もしそうでない場合は、推量することができる。別の例として、電子デバイス100は、画像データ134および136のキャプチャされた画像の1セット内に存在する空間的フィーチャを識別し、これらの空間的フィーチャに対する初期距離を判定し、その後、後続のキャプチャされた視像のこれらの空間的フィーチャにおける位置の変化と距離をトラッキングすることによって、自由な基準系における電子デバイス100の姿勢の変化を判定することができる。この方法において、一定の非視覚センサ・データ(たとえば、ジャイロ・データと加速度データ)は、1つの画像において観察される空間的フィーチャを、後続の画像において観察される空間的フィーチャに関連付けるために用いられる。
少なくとも一実施形態において、電子デバイス100は、画像データと非視覚データとを用いて、キャプチャされた視像において識別される空間的フィーチャのフィーチャ記述子を生成する。生成されたフィーチャ記述子はそれぞれ、1以上の識別された空間的フィーチャの配向、重力方向、尺度、および他の態様を記述する。以前に識別された空間的フィーチャとそれらに対応する姿勢とをそれぞれ識別する生成されたフィーチャ記述子(記述の目的として「既知フィーチャ記述子」と称される)は、記憶された記述子のセットと比較される。少なくとも一実施形態において、各既知フィーチャ記述子は以前に生成された記述子であって、その姿勢は、電子デバイス100または別の電子デバイスのいずれかによって明確に構築される。既知フィーチャ記述子は、電子デバイス100において、リモート・サーバもしくは他のストレージ・デバイスにおいて、または、それらの組み合わせにおいて、記憶される。したがって、生成されたフィーチャ記述子の比較は、電子デバイス100において、リモート・サーバもしくは他のストレージ・デバイスにおいて、または、それらの組み合わせにおいて、行われる。
少なくとも一実施形態において、生成されたフィーチャ記述子の各態様(たとえば、対応するフィーチャの配向、対応するフィーチャの尺度など)を既知フィーチャ記述子の対応する態様と比較し、比較されたフィーチャ間での変動を示すエラー値を判定することによって、生成されたフィーチャ記述子は既知フィーチャ記述子と比較される。したがって、たとえば、生成されたフィーチャ記述子におけるフィーチャの配向がベクトルAによって識別され、既知フィーチャ記述子におけるフィーチャの配向がベクトルBによって識別される場合、電子デバイス100は、ベクトルAおよびBの間における差異を算出することによって、フィーチャ記述子の配向態様のエラー値を識別することができる。エラー値が特定の統計手法(たとえば、最小二乗法)に従って組み合わせられることによって、比較されている各既知フィーチャ記述子の組み合わせられたエラー値を識別することができる。そして、一致している既知フィーチャ記述子は、組み合わされた最小エラー値を有する既知フィーチャ記述子として識別される。
各既知フィーチャ記述子は、対応する空間的フィーチャの姿勢(たとえば、配向または視点)を識別する1以上のフィールドを含む。したがって、既知フィーチャ記述子は、特定の解像度(たとえば、1cm)内の特定の座標系(たとえば、地球を表す地理的座標系)内における空間的フィーチャの位置、空間的フィーチャの視点の配向、フィーチャからの視点の距離などを示す姿勢情報を含み得る。生成されたフィーチャ記述子は、1以上の一致した既知フィーチャ記述子を識別するために、既知フィーチャ記述子と比較される。一致した既知フィーチャ記述子は、その後、電子デバイス100の姿勢の識別と電子デバイス100のローカル環境のマッピングとの両方を行うために用いられるローカライゼーション・データとして非視覚姿勢情報とともに記憶される。
いくつかの状況において、一致処理は、対応する生成されたフィーチャ記述子と一致する複数の既知フィーチャ記述子を識別する。それによって、以前に識別された電子デバイス100のローカル環境における複数のフィーチャが存在することを示す。一致している既知フィーチャ記述子の対応する姿勢は変動する可能性があり、電子デバイス100が、一致している既知フィーチャ記述子によって示される姿勢のうち特定の1つにはないことを示す。したがって、電子デバイス100は、その推定された姿勢を、従来の挿入手法を用いて一致している既知フィーチャ記述子によって示される姿勢との間に挿入することによって、改良し得る。
少なくとも一実施形態において、電子デバイス100は、データ内で識別された反映されたフィーチャの品質に基づいて、ローカライゼーション・データを削減する。本明細書において詳述される通り、電子デバイス100は、様々な因子(複数の画像でのフィーチャの観察数、互いに異なる画像におけるフィーチャの一貫性、1以上の関連付けられている画像がキャプチャされた際の電子デバイス100からのフィーチャの距離など、または、それらの組み合わせを含む)に基づいて各識別されたフィーチャの品質値を生成することができる。電子デバイス100はさらに、品質値閾値(QVT)を識別する。少なくとも一実施形態において、QVTは、電子デバイス100のユーザ、設計者、または製造業者によって供給される固定された記憶値である。別の実施形態において、QVTは、フィーチャの生成された品質値の組み合わせから派生する。たとえば、QVTは、品質値の平均値、品質値の中央値、または、QVTを超える品質値の数に基づく値であり得る。電子デバイス100は、QVT未満の品質値を有するフィーチャに関連付けられているデータを除去することによって、ローカライゼーション・データを削減する。これによって、それらのより高い品質のフィーチャ、すなわち、ローカル環境の効果的かつ正確なマッピングをサポートする可能性がより高いそれらのフィーチャは、ローカライゼーション・データのサイズを縮小しつつ保存されることが確実になる。
フィーチャ特徴と関連付けられている品質値とに基づいてローカライゼーション・データを削減することに加えて、電子デバイス100は、たとえば、ローカライゼーション・データから任意の非視覚センサ情報を除去することによって、ローカライゼーション・データを削減することができる。これは、そのような情報がローカル環境のマッピングをサポートする可能性がないためである。さらに、電子デバイス100は、キーフレームを識別することによって、および、キーフレーム以外のフレームに関連付けられているデータを除去することによって、ローカライゼーション・データを削減することができる。たとえば、電子デバイス100は、選択されたキャプチャされた画像をキーフレームとして識別し得る。キーフレーム画像は、画像の識別された品質、画像から識別されたフィーチャの数、画像が撮られた時間、画像が撮られた測定照明状況などに基づいて選択される。電子デバイス100はその後、それらのフィーチャと、キーフレーム画像ではない画像から識別された、関連付けられているフィーチャ記述子とを識別し、識別されたフィーチャに対応するデータ(フィーチャ記述子を含む)データを除去することができる。
さらに、少なくとも一実施形態において、電子デバイス100は、全ての個々の点ではなく、幾何学的形状の個々の点に関連付けられているフィーチャのセットについてのデータを、その幾何学的形状を識別する記述子のより小さいサブセットに幾何学的に圧縮することによって、ローカライゼーション・データを削減することができる。たとえば、電子デバイス100は、同一平面(たとえば、テーブルの上面)における異なる点をそれぞれ示すフィーチャ記述子のセットを識別し、そのフィーチャ記述子のセットを、その平面の境界を識別する単一のフィーチャ記述子に圧縮することができる。それによって、より少ないデータで、環境の同一フィーチャを表す。
ローカライゼーション・データを削減した後、電子デバイス100は、そのローカライゼーション・データを用いてローカル環境をマッピングすることができる。たとえば、電子デバイス100は、ローカライゼーション・データを用いて、電子デバイス100の基準系においてローカライゼーション・データ内に含まれる各フィーチャの位置を示すマップ・ファイルを生成することができる。マップ・ファイルは、任意の様々な位置情報サービスをサポートするために用いられる。たとえば、一実施形態において、マップ・ファイルは、電子デバイス100のローカル環境を表す仮想現実環境またはその一部を生成するために用いられる。
図2は、本開示の少なくとも一実施形態に係る、データから識別されるフィーチャの特徴に基づいてローカライゼーション・データを削減する電子デバイス100の一部のブロック図である。図示される箇所は、フィーチャ識別モジュール225と、データ削減部232と、環境マッピング部235とを備える。これらのモジュールはそれぞれ、本明細書において記載される動作を実行するよう構成されているハードウェア、ソフトウェア、またはそれらの組み合わせを表す。特に、フィーチャ識別モジュール225は、撮像センサ114、116および118と非視覚センサ・データ142とによってキャプチャされる画像を表す視像220を受信するよう構成される。この受信されたデータに基づいて、フィーチャ識別モジュール225は、フィーチャ記述子を生成することによって、および、そのフィーチャ識別を、図1を参照して上述された既知フィーチャ記述子と比較することによって、視像220内のフィーチャを識別する。フィーチャ識別モジュールは、フィーチャ記述子を、任意の関連付けられている非視覚データとともに、ローカライゼーション・データ230として記憶する。少なくとも一実施形態において、ローカライゼーション・データ230は、電子デバイス100によって用いられ、ローカル環境における異なる位置と配向とを通じて動かされた際の電子デバイス100の1以上の姿勢を識別する。これらの識別された姿勢は、ローカル環境の以前に生成および記憶されたマップ情報に併せて用いられ、電子デバイス100の位置情報サービスをサポートまたは向上する。
データ削減部232は、ローカライゼーション・データ230内に含まれるフィーチャの特徴に基づいて、ローカライゼーション・データ230を削減するよう構成されている。少なくとも一実施形態において、データ削減部232は、図4を参照して以下で詳述されるように、対応するフィーチャ記述子内に示されるフィーチャの1以上の特徴に基づいて各フィーチャの品質値を識別することによって、データを削減する。データ削減部232はその後、フィーチャのQVTを識別し、ローカライゼーション・データ230から、QVT未満の品質値を有するフィーチャのフィーチャ記述子を除去する。データ削減部232はその後さらに、非視覚センサ・データを除去することによって、および、残りのフィーチャ記述子に対して幾何学的圧縮を行うことによって、ローカライゼーション・データ230を削減する。データ削減部232は、削減されたローカライゼーション・データを、環境マッピング部235に提供する。
環境マッピング部235は、削減されたローカライゼーション・データに基づいて、電子デバイス100のローカル環境のマップを生成または修正するよう構成されている。すなわち、環境マッピング部235は、削減されたローカライゼーション・データ内のフィーチャ記述子を分析して、電子デバイス100の基準系におけるフィーチャの位置を識別する。たとえば、各フィーチャ記述子は、電子デバイス100から対応するフィーチャの関連位置を示す位置データを含み得る。環境マッピング部235は、様々なフィーチャの関連位置を調整することで基準系における各フィーチャの位置を識別することができ、これらの位置を1以上のマップ・ファイルに記憶することができる。マップ・ファイルは、電子デバイス100の位置情報サービスによって用いられ、たとえば、ローカル環境の仮想現実表示を生成することができる。
図3は、本開示の少なくとも一実施形態に係る図2のデータ削減部232のブロック図である。図示される例において、データ削減部232は、非視覚データ・フィルタ340と、キーフレーム識別子342と、フィーチャ品質分析モジュール(FQM)343と、幾何学的圧縮モジュール344と、を備える。非視覚データ・フィルタ340は、一般的に、ローカライゼーション・データ230から識別および除去を行うよう構成されている。たとえば、少なくとも一実施形態において、非視覚データ・フィルタは、データ識別子値に基づいて、非視覚データのフォーマットに基づいて、非視覚データがどこに記憶されているかに基づいて、あるいは他の標識に基づいて、またはそれらの組み合わせに基づいて、ローカライゼーション・データ230において非視覚データを識別し、その後、識別された非視覚データをローカライゼーション・データ230から除去(たとえば、削除)する。
非視覚データがフィルタリングされたあと、キーフレーム識別子342はローカライゼーション・データ230のキーフレームを識別する。たとえば、ローカライゼーション・データの各フィーチャ記述子は、フィーチャが識別された1以上の画像を識別する情報を含み得る。ローカライゼーション・データ230はさらに、各画像の品質を示す情報(たとえば、照明状況)を含み得る。この情報に基づいて、キーフレーム識別子342は、環境をマッピングするために用いられるキーフレームとして、選択される画像を識別することができる。たとえば、少なくとも一実施形態において、キーフレーム識別子342は、フィーチャの閾値数よりも多く関連付けられているそれらの画像を、キーフレームとして識別する。キーフレーム識別後、キーフレーム識別子342は、どのキーフレームとも対応しないフィーチャの任意のフィーチャ記述子および関連付けられているデータを、ローカライゼーション・データ230から除去することができる。それによって、ローカライゼーション・データ230を削減する。
FQM343は、残りのフィーチャ記述子を分析して、識別子内に示されるフィーチャ特徴に基づいて各フィーチャの品質値を識別する。たとえば、少なくとも一実施形態において、フィーチャ記述子は、フィーチャ記述子の数(たとえば、互いに異なる画像におけるフィーチャの観察数、互いに異なる画像におけるフィーチャの位置の変動性、フィーチャの動的スコアなど)を示す。FQM343は、たとえば、各特徴の値を加えることによって、品質値を生成することができ、該品質値は全特徴の合計と等しい。少なくとも一実施形態において、品質値は異なる特徴の値の加重合計であり、各特徴の重量は動的またはヒューリスティック的にFQM343によって識別される。品質値を識別するこれらの方法は例に過ぎないことと、他の特徴および式が各特徴の品質値を識別するのに活用されることと、が理解されるであろう。
FQM343は、固定閾値、所望の性能を得るために電子デバイス100のユーザによって設定された閾値、ローカライゼーション・データ230自体から識別された動的閾値などに基づいて、ローカライゼーション・データ230のQVTを識別する。FQM343は、各特徴の品質値をQVTと比較して、QVT未満の品質値を有するそれらのフィーチャ記述子をローカライゼーション・データ230から除去する。
幾何学的圧縮モジュール344は、ローカライゼーション・データ230の残りの記述子を識別して、同一の幾何学的形状(たとえば、線、平面、多角形、三次元形状など)に関連付けられている個々のフィーチャのセットを識別する。図5の例に関して以下に記載されるように、幾何学的圧縮モジュール344は、個々のフィーチャのフィーチャ記述子を、幾何学的形状を記述するより少数の記述子(たとえば、1つの記述子)に置き換える。これによって、ローカライゼーション・データ230によって記憶される識別子の数が減り、環境マッピング部235による分析の準備を行うためにデータがさらに削減される。
図4は、ローカライゼーション・データ230において記憶されるフィーチャ記述子450を示す。フィーチャ記述子450は、フィールド451〜458を含み、各フィールドは対応するフィーチャのフィーチャ特徴を示す。これらのフィーチャ特徴はFQM343によって活用され、対応するフィーチャの品質値を識別する。たとえば、フィーチャ名称フィールド451は、フィーチャの名称または他の識別子を示す。該名称または該他の識別子は、該フィーチャと他のフィーチャとを区別するために用いられる。フィーチャ・タイプ・フィールド452は、フィーチャのタイプ(たとえば、オブジェクトの形状のタイプ)を示す。したがって、フィーチャ・タイプ・フィールド452は、対応するフィーチャが点、隅、平面、多角形などであることを示し得る。
フィーチャ位置フィールド453は、対応するフィーチャの位置データ(たとえば、電子デバイス100の姿勢に対しての基準系におけるフィーチャの位置を示す座標データ)を示す。少なくとも一実施形態において、FQM343は、フィーチャ位置フィールド453内の情報を用いて、フィーチャの品質値を修正することができる。たとえば、いくつかの状況において、電子デバイス100は、特定の位置または位置の範囲におけるフィーチャ(たとえば、電子デバイス100の視界の端の近く)がより不確かに識別されることを判定し得る。したがって、FQM343は、そのような位置における、または、そのような位置範囲内におけるフィーチャの品質値を下げることができる。
フィーチャ観察数フィールド454は、フィーチャが識別された互いに異なる画像の数を示す。たとえば、電子デバイス100は、デバイスが異なる姿勢を通じて動かされる際の所与のフィーチャの複数の画像をキャプチャし得る。フィーチャ識別モジュール225(図2)がフィーチャのフィーチャ記述子を生成すると、フィーチャ識別モジュール225は、フィーチャを含む互いに異なる画像の数と、フィーチャの画像が撮られた互いに異なる角度の数とを識別することができる。少なくとも一実施形態において、より多数の画像数、または、フィーチャが観察されたより多数の異なる角度によって、フィーチャ識別モジュール225によってフィーチャが正しく識別された可能性が高められる。したがって、フィーチャ観察数フィールド454の値が上がると、FQM343は対応するフィーチャの品質値を上げる。
フィーチャ距離フィールド455は、フィーチャが1以上の画像においてキャプチャされた際の電子デバイス100からの対応するフィーチャの距離を示す。フィーチャが複数の画像においてキャプチャされた場合、フィーチャ距離フィールド455は、対応する距離の平均値、対応する距離の最大値、対応する距離の最小値、もしくは対応する距離の他の選択または組み合わせであり得る。いくつかの状況において、フィーチャに対してのより長い距離は、フィーチャのより不確かな識別に対応する。したがって、フィーチャ距離フィールド455の値がより大きくなると、FQM343は対応するフィーチャの品質値を上げる。
フィーチャ位置変動性フィールド456は、フィーチャが識別された互いに異なる画像での対応するフィーチャの位置の変動量を示す値を記憶する。たとえば、電子デバイス100は、デバイスが異なる姿勢を通じて動かされる際の所与のフィーチャの複数の画像をキャプチャし得る。フィーチャ識別モジュール225(図2)がフィーチャのフィーチャ記述子を生成すると、フィーチャ識別モジュール225は、各画像について、基準系におけるフィーチャの位置を識別し、その後、識別された位置の間における変動性を識別することができる。たとえば、その変動性は、識別された位置の標準偏差を識別することによって、示され得る。少なくとも一実施形態において、変動性が高ければ高いほど、対応するフィーチャの特徴をフィーチャ記述子が正しく識別する可能性が低くなる。したがって、フィーチャ位置変動性フィールド456の値が上がると、FQM343は対応するフィーチャの品質値を下げる。
フィーチャ動的スコア・フィールド457は、対応するフィーチャの動的特徴を示す。動的特徴は、フィーチャがどれほどの期間において電子デバイス100に対する所与の位置にあり続けることが見込まれるかを示すものである。フィーチャ動的スコア・フィールド457のより高い値は、対応するフィーチャが高度に動的であるため、位置を変更する可能性がより高いことを示す。高度に動的であるフィーチャの例は、人物、動物、移動中の車両などに対応する、または関連付けられているフィーチャを含み得る。少なくとも一実施形態において、電子デバイス100は、複数の因子(複数の画像でのフィーチャの位置の変化、フィーチャの既知フィーチャ記述子内に提供される情報などを識別することを含む)に基づいてフィーチャの動的スコアを識別することができる。少なくとも一実施形態において、動的スコア・フィールドの値が高ければ高いほど、フィーチャ記述子がローカル環境をマッピングするのに有用である可能性がより低くなる。これは、ローカル環境のマップが生成される際、フィーチャが位置を変更しているか、ローカル環境から退出している可能性がより高いためである。したがって、フィーチャ位置変動性フィールド456の値が上がると、FQM343は対応するフィーチャの品質値を下げる。
フィーチャ・シーン変動性フィールド458は、フィーチャ記述子450に対応するフィーチャと同一の画像内で識別される複数のフィーチャの変動性を示す。少なくとも一実施形態において、電子デバイス100は、それぞれキャプチャされた画像から識別される互いに異なるフィーチャの数を識別し、所与のフィーチャが識別される画像に関してこの数の変動を判定することによって、シーン変動性を識別することができる。少なくとも一実施形態において、フィーチャ・シーン変動性フィールド458の値が高ければ高いほど、フィーチャ記述子がローカル環境をマッピングするのに有用である可能性がより低くなる。これは、該フィーチャが急速に変動する環境の一部である可能性がより高いためである。したがって、フィーチャ位置変動性フィールド456の値が上がると、FQM343は対応するフィーチャの品質値を下げる。
図5は、本開示の少なくとも一実施形態に係る、図3の幾何学的圧縮モジュール344の例示的動作を示す図である。図示される例において、フィーチャ501、502、503、504、および506は、電子デバイス100のローカル環境における同一線上に並置されている。したがって、たとえば、フィーチャ501〜506は、ローカル環境内のテーブル、ドア、または他のオブジェクトの端を集合的に示し得る。電子デバイス100は、ローカル環境を通じて、またはローカル環境の周囲において動かされると、フィーチャ501〜506を含む視像をキャプチャする。この視像に基づいて、フィーチャ識別モジュール225はフィーチャ記述子511、512、523、514、516を生成する。フィーチャ記述子はそれぞれ、別の対応するフィーチャを記述する(すなわち、記述子511はフィーチャ501を記述する、記述子512はフィーチャ502を記述する、など)。図示される例において、フィーチャ記述子501〜506はそれぞれ、電子デバイス100の基準系における対応するフィーチャの座標を含む。幾何学的圧縮モジュール344は、ローカライゼーション・データ230に記憶されるものとして、フィーチャ記述子501〜506を分析する。そして、幾何学的圧縮モジュール344は、各フィーチャの座標と、各フィーチャが点フィーチャであるという示唆とに基づいて、フィーチャ記述子501〜506が1つの線上に沿ったセットの点を表すことを判定する。それに応じて、幾何学的圧縮モジュール344は、フィーチャ記述子501〜506を、フィーチャ記述子501〜506に対応する端点を有する線を記述するフィーチャ記述子520に置き換える。幾何学的圧縮モジュール344は、したがって、幾何学的形状の異なる態様を集合的に記述する複数のフィーチャ記述子を、該幾何学的形状の単一のフィーチャ記述子に置き換える。少なくとも一実施形態において、該単一のフィーチャ記述子は、メモリ・ストレージの観点からすれば、複数のフィーチャ記述子の全体よりも小さい。したがって、フィーチャ記述子520は、フィーチャ記述子501〜506の全体よりも小さいストレージ・スペースを占める。したがって、フィーチャ記述子501および506をフィーチャ記述子520に置き換えることによって、幾何学的圧縮モジュールはローカライゼーション・データ230を削減する。図5が幾何学的圧縮の単なる一例を示していることと、いくつかの実施形態においては幾何学的圧縮モジュールがより複雑な形状(多角形および三次元形状を含む)のフィーチャ記述子を識別および圧縮することが可能であることと、が理解されるであろう。
図6は、本開示の少なくとも一実施形態に係る、電子デバイス100によって実装される例示的処理システム600を示す。処理システム600は、広角撮像センサ114と、狭角撮像センサ116と、ユーザ向き撮像センサ118と、深度センサ120とを備える。処理システム600は、二次元プロセッサ602と、アプリケーション・プロセッサ604と、表示コントローラ606と、非視覚センサのセット610と、ユーザ・インターフェース612とをさらに備える。
ユーザ・インターフェース612は、電子デバイス100に対してユーザ入力を提供するためにユーザによって操作される1または複数のコンポーネント(たとえば、タッチスクリーン614、マウス、キーボード、マイクロフォン616、様々なボタンまたはスイッチ、様々な触覚アクチュエータ618)を含む。非視覚センサのセット610は、電子デバイス100の非視覚コンテキストまたは状態を提供するために用いられる任意の様々なセンサを含み得る。そのようなセンサの例は、ジャイロスコープ620、磁力計622、加速度計624を有するIMU621と、定常光センサ626とを含む。非視覚センサはさらに、様々な無線送受信に基づくセンサ(たとえば、GPS受信部628、無線ローカル・エリア・ネットワーク(WLAN)インターフェース630、セルラ・インターフェース632、ピア・トゥ・ピア(P2P)無線インターフェース634、近距離通信(NFC)インターフェース636)を含み得る。
電子デバイス100はさらに、画像処理、位置マッピング、および位置活用処理と併せて用いられる情報またはメタデータを記憶する様々なデータストアに対するアクセスを有する。これらのデータストアは、電子デバイス100の撮像センサによってキャプチャされる視像から識別される二次元空間的フィーチャのメタデータを記憶するための二次元フィーチャ・データストア638と、分析または変調光に基づく深度感知を用いて二次元空間的フィーチャの深度感知から三次元フィーチャのメタデータを記憶するための三次元フィーチャ・データストア640と、を含む。二次元および三次元フィーチャ用に記憶されるメタデータは、たとえば、同期目的のタイムスタンプ、空間的フィーチャが識別された画像の画像識別子、使用されたキャプチャ・デバイスの識別子、較正情報などを含み得る。このメタデータはさらに、識別された空間的フィーチャを含む画像と同時期に存在していた非視覚センサ・データ(たとえば、GPS、Wi−Fi(登録商標)、または他の無線情報、時刻情報、気候条件情報(照明に影響を与える)など)を含み得る。データストアはさらに、SLAMに基づく情報(たとえば、電子デバイス100によって既に探索されたローカル環境112(図1)の領域に関するマッピング情報)、または、AR情報(たとえば、ローカル環境112内の注目オブジェクトの相対位置のCADに基づく表示)を記憶するSLAM/ARデータストア642を含み得る。データストア638および640はさらに、既知フィーチャ記述子と、電子デバイス100においてキャプチャされた視像に基づいて生成されるフィーチャ記述子とを記憶する。データストアは電子デバイス100(たとえば、ハード・ドライブ、ソリッド・ステート・メモリ、または取り外し可能な記憶媒体(図示しない)上にある)に対してローカルであってもよいし、データストアは遠くに位置し、たとえば、電子デバイス100の1以上の無線インターフェースを介してアクセス可能であってもよく、または、データストアはローカルおよびリモート・データ・ストレージの組み合わせとして実装されてもよい。
図示される実施形態において、処理システム600は2つのプロセッサを活用する。その2つのプロセッサとは、電子デバイス100の撮像センサによってキャプチャされる可視光視像と深度センサ視像とから二次元空間的フィーチャを効率的に識別するよう構成されている二次元プロセッサ602、および、二次元空間的フィーチャから三次元空間的フィーチャを効率的に識別し、位置情報機能(たとえば、視覚的オドメトリ、または、SLAM機能、AR機能など)を効率的に提供するよう構成されているアプリケーション・プロセッサ604である。しかしながら、他の実施形態において、二次元プロセッサ602とアプリケーション・プロセッサ604との記載された機能は、単一のプロセッサ内に実装されてもよいし、3つ以上のプロセッサ全体が該記載された機能を実装してもよい。二次元プロセッサ602は、たとえば、シングル・コアまたはマルチ・コア・グラフィックス処理装置(GPU)として実装され、アプリケーション・プロセッサ604は、たとえば、GPUまたはシングル・コアまたはマルチ・コア中央処理装置(CPU)として実装される。
二次元プロセッサ602は、1以上の画素行バッファ644内の撮像センサによってキャプチャされる画像データを受信するように、広角撮像センサ114と、狭角撮像センサ116と、ユーザ向き撮像センサ118とに連結される。一実施形態において、二次元プロセッサ602は、各撮像センサから並行して画像データを受信することができるよう、各撮像センサのインターフェースと画素行バッファ644とを含む。別の実施形態において、二次元プロセッサ602は単一のインターフェースと画素行バッファ644とを含むので、二次元プロセッサ602は撮像センサ間で多重送信を行う。
二次元プロセッサ602は、撮像センサからキャプチャされた画像データを処理し、画像データ内に存在する二次元空間的フィーチャを識別するよう構成されている。いくつかの実施形態において、二次元プロセッサ602は、このタスク用に特化したハードウェア構成を実装する。他の実施形態において、二次元プロセッサ602は、二次元空間的フィーチャ検出工程を実装するよう構成されているソフトウェア・プログラムの実行を通じて二次元空間的フィーチャ検出を提供する、より一般的なプロセッサ・アーキテクチャを含む。二次元プロセッサ602はさらに、この目的用の特化ハードウェアおよび特化ソフトウェアとの組み合わせを実装し得る。上述された通り、任意の様々な周知の二次元空間的フィーチャ検出または抽出アルゴリズムが、二次元プロセッサ602によって実装され得る。二次元プロセッサ602は、二次元フィーチャ・データストア638に、識別された二次元空間的フィーチャに関連するメタデータと他の情報とを記憶する。
二次元プロセッサ602は、一実施形態において、任意の様々な周知のヘッド・トラッキング・アルゴリズムを用いて、ユーザの頭部の現在の姿勢(たとえば、現在位置)をトラッキングするためにユーザ向き撮像センサ118によってキャプチャされる視像を分析するよう構成されている。図示される例において、二次元プロセッサ602は、ヘッド・トラッキング情報を表示コントローラ606に提供し、表示コントローラ606は表示される視像を調整して、ユーザの視野内の変化に対して、ユーザ頭部の姿勢の変化に反映されたものとして反応するよう構成されている。別の実施形態において、二次元プロセッサ602は、ヘッド・トラッキング情報をアプリケーション・プロセッサ604に提供し、アプリケーション・プロセッサ604は表示データが表示コントローラ606に提供される前に、更新された視野を反映するために表示データを修正する。
二次元プロセッサ602はさらに、ローカル環境112のキャプチャされた視像内で識別される空間的フィーチャの深度データを判定する際に、使用中の変調光プロジェクタ119を操作するコントローラとしても作動する。ある状況(たとえば、比較的明るい設定(定常光センサ626を用いて感知される))において、二次元プロセッサ602は、広角撮像センサ114と狭角撮像センサ116とによって同時にキャプチャされた視像の画像分析を用いて、キャプチャされた視像内に存在する空間的フィーチャの深度データを判定し得る。他の状況(比較的暗い照明状況)において、二次元プロセッサ602は、深度センサ120(図1)の使用に切り替えて、この深度データを判定し得る。他の実施形態において、処理システム600は、変調光プロジェクタ119の動作を制御するための、二次元プロセッサ602とは別体のコントローラ(図示せず)を実装する。
上述された通り、深度センサ120は、ローカル環境内への変調光プロジェクタ119による変調光パターンの投影と、そこからの1以上の撮像センサによる変調光パターンの反映のキャプチャとに依拠する。したがって、二次元プロセッサ602は、前向き撮像センサ114および116の一方または両方を用いて、反映された変調光パターンに表される対応する空間的フィーチャの深度を判定するために、変調光パターンの投影の反映をキャプチャしてもよいし、反映された変調光パターンの結果として生じる視像を処理してもよい。深度示度を対応する二次元空間的フィーチャに一致させるために、二次元プロセッサ602は、深度視像に対して二次元空間的フィーチャ分析を実行し、二次元空間的フィーチャとその相対深度とを判定することができる、その後、二次元空間的フィーチャを、反映された変調光画像がキャプチャされたのと同一の時間において、または、その時間近辺でキャプチャされた可視光視像内で識別された対応する空間的フィーチャに一致させるよう試みることができる。別の実施形態において、二次元プロセッサ602は、可視光画像をキャプチャすることができ、その後すぐに、変調光パターンを投影して反映された変調光視像をキャプチャするために、変調光プロジェクタ119を制御することができる。二次元プロセッサ602はその後、反映された変調光画像からの可視光画像の深度マップを発展させることができ、可視光画像と反映された変調光画像との同時期のキャプチャによって同一座標における同一空間的フィーチャを伴う同一シーンを効果的に表す。
アプリケーション・プロセッサ604は、フィーチャ識別モジュール225(図2)を実装し、二次元フィーチャ・データストア638内に表される二次元的空間的フィーチャを用いて、および、非視覚センサのセット610からの非視覚センサ情報を用いて、キャプチャされた視像に表される空間的フィーチャを識別するよう構成されている。二次元プロセッサ602と同様に、アプリケーション・プロセッサ604は、特化ハードウェアを通じて、この工程用に構成されたソフトウェアの実行を通じて、または特化ハードウェア構成およびソフトウェアの組み合わせによって、この工程を行うよう構成され得る。識別された三次元空間的フィーチャのメタデータおよび他の情報は、三次元フィーチャ・データストア640に記憶される。少なくとも一実施形態において、アプリケーション・プロセッサ604は、データ削減部232(図2)を実装する(たとえば、実行時に、データ削減部232の動作を行うようアプリケーション・プロセッサ604を操作する命令を実行する)。したがって、アプリケーション・プロセッサ604は、識別されたフィーチャの特徴を識別し、上述のこれらの特徴に基づいてローカライゼーション・データ230を削減することができる。
アプリケーション・プロセッサ604はさらに、三次元フィーチャ・データストア640内に表される三次元空間的フィーチャを用いて、および、非視覚センサ・データによって表される電子デバイス100の現在のコンテキストを用いて、SLAM、AR、VR、および他の位置情報機能を提供するよう構成されている。現在のコンテキストは、たとえば、ユーザ・インターフェース612から、または、ユーザ対話の分析を介して取得される明示的または暗示的ユーザ入力を含み得る。同様に、アプリケーション・プロセッサ604は、電子デバイス100の位置/配向の履歴と、それらの位置/配向内で観察される空間的フィーチャの履歴とを用いて、削減されたローカライゼーション・データに基づいてローカル環境112のマップを生成することができる。
アプリケーション・プロセッサ604によって提供される位置判定機能はさらに、アプリケーション・プロセッサ604によって判定される現在の姿勢に基づいてディスプレイ108のグラフィカル・オーバーレイとして提供されるグラフィカル情報をSLAM/ARデータストア642から識別、および該情報にSLAM/ARデータストア642からアクセスすることを含むAR関連またはVR関連の機能を含み得る。このグラフィカル・オーバーレイは、表示コントローラ606を介するディスプレイ108における表示の現在の姿勢である撮像センサによってキャプチャされる視像に関連付けられて提供される。表示コントローラ606は、ディスプレイ108(図1)を制御するよう動作することで、アプリケーション・プロセッサ604から受信される表示データによって表される視像を表示する。さらに、いくつかの実施形態において、表示コントローラ606は、二次元プロセッサ602からヘッド・トラッキング情報を受信して、受信されたヘッド・トラッキング情報に表されるユーザの頭部の位置または目の位置に基づいて、表示されている視像の視野を調整することができる。
図7は、本開示の少なくとも一実施形態に係る、電子デバイス100においてローカライゼーションを削減する方法700のフロー図を示す。方法700は、ブロック702において開始される。ブロック702において、電子デバイス100は、ローカル環境内での異なる姿勢を通じてユーザによって動かされる際の視像と非視覚データとをキャプチャする。ブロック704において、フィーチャ識別モジュール225は、視像と非視覚データとに基づいてローカル環境のフィーチャを識別し、ローカライゼーション・データ230において識別されたフィーチャのフィーチャ記述子を記憶する。ブロック706において、電子デバイス100はローカライゼーション・データ230を用いて、ローカル環境内における電子デバイス100の1以上の姿勢を識別する。識別された姿勢は、電子デバイス100の位置情報機能をサポートするために用いられる。たとえば、識別された姿勢は、電子デバイス100によって実行される仮想現実または拡張現実アプリケーション内における電子デバイス100のユーザを配向させるために用いられる。
ブロック708において、データ削減部232は、電子デバイス100の非視覚センサから収集されるデータを除去するための非視覚データ・フィルタ340を活用することによって、ローカライゼーション・データ230の削減を開始する。キーフレーム識別子342は、ブロック710において、ローカライゼーション・データ230のキーフレームを識別し、ブロック712において、ローカライゼーション・データ230から、キーフレームに関連付けられていないフィーチャのフィーチャ記述子を除去する。ブロック714に進んで、フィーチャ品質分析モジュール343は、ローカライゼーション・データ230の残りのフィーチャ記述子を分析し、各フィーチャの品質値を生成する。ブロック716において、フィーチャ品質分析モジュールは、ローカライゼーション・データ230から、QVT未満の品質値を有するそれらのフィーチャのフィーチャ記述子を除去する。ブロック714に進んで、幾何学的圧縮モジュール344は、ローカライゼーション・データ230の残りのフィーチャ記述子を分析し、その分析に基づいて、上述のフィーチャ記述子のセットを幾何学的に圧縮する。それによって、さらにローカライゼーション・データ230を削減する。ブロック720において、環境マッピング部235は削減されたローカライゼーション・データ230を用いて、デバイスの位置情報サービスによって用いられる電子デバイス100のローカル環境のマップを生成および記憶する。
本発明の機能の多くおよび上記の本発明の原理の多くは、ソフトウェア・プログラムまたは命令および特定用途向けIC(ASIC)などの集積回路(IC)を用いる実装、またはそれらの中における実装によく適している。本明細書に開示された概念および原理によって導かれる場合、例えば、利用可能な時間、現在の技術、および経済的考慮事項によって動機付けられた多大な努力および多くの設計選択にもかかわらず、当業者は、最小限の実験によって、そのようなソフトウェア命令、プログラム、およびICを容易に生成することができるであろう。したがって、本開示に係る原理および概念を不明瞭にするリスクを最小限にするために、そのようなソフトウェアおよびICの更なる説明は、もし存在するならば、好ましい実施形態内における原則および概念に関する本質的事項に限定されるであろう。
本明細書では、第1および第2などの関係用語は、そのような実体または動作の間における任意の実際の関係または順序を必ずしも要求または暗示することなく、ある実体または動作を別の実体または動作と区別するためにのみ使用され得る。用語「含む(comprises)」、「含む(comprising)」、またはその任意の他の変形は、非排他的な包含を対象とすることを意図し、要素の一覧を含むプロセス、方法、物品、または装置が、それらの要素のみを含むのではなく、そのようなプロセス、方法、物品、または装置に明示的に列挙されていないか固有ではない他の要素を含むことができる。「〜を備える(comprises…a)」で始まる要素は、更なる制限なく、要素を含むプロセス、方法、項目、または装置内における追加の同一要素の存在を排除するものではない。本明細書で使用する「別の(another)」という用語は、少なくとも第2またはそれ以上のものとして定義される。本明細書で使用される「含む(including)」および/または「有する(having)」という用語は、備えるものとして定義される。電気光学技術に関して本明細書で使用される用語「結合された(coupled)」は、接続されるものとして定義されるが、必ずしも直接的ではないし、必ずしも機械的ではない。本明細書で使用する「プログラム(program)」という用語は、コンピュータ・システム上で実行するように設計された一連の命令として定義される。「プログラム(program)」または「コンピュータ・プログラム(computer program)」は、サブルーチン、関数、プロシージャ、オブジェクト方法、オブジェクト実装、実行可能アプリケーション、アプレット、サーブレット、ソース符号、オブジェクト符号、共有ライブラリ/動的ロード・ライブラリ、および/またはコンピュータ・システム上での実行のために設計された他の命令シーケンスを含み得る。
明細書および図面は、単なる例として考えるべきであり、したがって、本開示の範囲は、以下の特許請求の範囲およびその均等物によってのみ限定されることが意図される。なお、一般的な記述の中で上述した活動または要素のすべてが必要であるとは限らないし、特定の活動または装置の一部が必要でなくてもよいし、1または複数の更なる活動が、記載されているそれらの要素に加えて、実行され得る。さらに、活動が列挙される順序は、必ずしも、それらが実施される順序ではない。上記フローチャートの工程は、別段の指定がない限り、任意の順序で行うことができ、実装に応じてステップを削除、反復、および/または追加することができる。また、これらの概念は、特定の実施形態を参照して説明されている。しかし、当業者であれば、以下の特許請求の範囲に記載された本開示の範囲から逸脱することなく、様々な修正および変更を行うことができることを理解する。したがって、明細書および図は、限定的な意味ではなく例示的な意味で考慮されるべきであり、そのような変更のすべては、本開示の範囲内に含まれることが意図される。
利点、他の利点、および問題に対する解決策は、特定の実施形態に関して上述されている。しかしながら、利益、利点、ならびに問題の解決策、および、利益、利点、または解決策が発生または顕在化させ得る1または複数の特徴は、任意または全ての特許請求の範囲の重要な、必須な、または不可欠な特徴と解釈されるべきではない。

Claims (18)

  1. 電子デバイス[100]において、前記電子デバイスのローカライゼーション・データ[230]を、前記電子デバイスにおいてキャプチャされた視像[220]に基づいて、および、非視覚センサから取得された受信された非視覚姿勢情報[142]に基づいて生成する工程と、
    キャプチャされた前記視像に基づいて前記電子デバイスの環境の複数のフィーチャを識別[225]、前記ローカライゼーション・データ[230]において識別される複数のフィーチャの特徴に基づいて、識別されたフィーチャの各々に対し対応する品質値を割り当てる割り当て工程と、
    品質値閾値を識別する工程であって、前記品質値閾値は、前記品質値の平均値と、前記品質値の中央値と、前記品質値閾値を超える品質値の数に基づく値と、のうちの1つ以上に基づいている、工程と、
    前記品質値閾値未満の品質値を有するフィーチャに関連付けられているデータを除去することによって、前記複数のフィーチャの特徴に基づいて前記ローカライゼーション・データを削減する削減工程[232]と、
    削減された前記ローカライゼーション・データに基づいて前記電子デバイスの前記環境をマッピングする工程[235]と、を備える、
    方法。
  2. 前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャのそれぞれの観察数[454]を含む、
    請求項1に記載の方法。
  3. 前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャのそれぞれの位置の一貫性[456]を含む、
    請求項1に記載の方法。
  4. 電子デバイス[100]において、前記電子デバイスのローカライゼーション・データ[230]を、前記電子デバイスにおいてキャプチャされた視像[220]に基づいて、および、非視覚センサから取得された受信された非視覚姿勢情報[142]に基づいて生成する工程と、
    キャプチャされた前記視像に基づいて前記電子デバイスの環境の複数のフィーチャを識別する工程[225]と、
    前記複数のフィーチャの特徴に基づいて前記ローカライゼーション・データを削減する削減工程[232]と、
    削減された前記ローカライゼーション・データに基づいて前記電子デバイスの前記環境をマッピングする工程[235]と、を備え、
    前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャのそれぞれの前記電子デバイスからの距離[455]を含む、
    法。
  5. 前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャの変動性[458]を含む、
    請求項1に記載の方法。
  6. 電子デバイス[100]において、前記電子デバイスのローカライゼーション・データ[230]を、前記電子デバイスにおいてキャプチャされた視像[220]に基づいて、および、非視覚センサから取得された受信された非視覚姿勢情報[142]に基づいて生成する工程と、
    キャプチャされた前記視像に基づいて前記電子デバイスの環境の複数のフィーチャを識別する工程[225]と、
    前記複数のフィーチャの特徴に基づいて前記ローカライゼーション・データを削減する削減工程[232]と、
    削減された前記ローカライゼーション・データに基づいて前記電子デバイスの前記環境をマッピングする工程[235]と、を備え、
    前記削減工程は、前記データから前記非視覚姿勢情報を除去する工程[340]を含む、
    法。
  7. 前記削減工程は、前記ローカライゼーション・データを幾何学的に圧縮する工程[344]を含む、
    請求項1に記載の方法。
  8. 前記削減工程は、
    前記ローカライゼーション・データのキーフレームを識別する工程[342]と、
    前記ローカライゼーション・データのキーフレームに対応しないデータを除去する工程と、を含む、
    請求項1に記載の方法。
  9. 前記割り当て工程は、前記品質値を、複数の画像でのフィーチャの位置の一貫性[456]と、フィーチャの観察数[454]と、前記フィーチャの距離[455]と、複数の画像でのフィーチャの互いに異なる位置の数[458]とのうち1以上に基づいて識別する工程を含む、
    請求項に記載の方法。
  10. 前記マッピングする工程は、
    削減された前記ローカライゼーション・データからのフィーチャをフィーチャ記述子のデータベース[638,640]のフィーチャ記述子[450]と一致させる一致工程と、
    前記一致工程に基づいてローカルの前記環境をマッピングする工程と、を含む、
    請求項に記載の方法。
  11. 視像をキャプチャする撮像センサ[114,118]と、
    複数の非視覚センサと、
    プロセッサ[602,604]と、を備える電子デバイスであって、前記プロセッサは、
    電子デバイスにおいて、前記電子デバイスのローカライゼーション・データ[230]を、前記電子デバイスにおいてキャプチャされた視像[220]に基づいて、および、非視覚センサから取得された受信された非視覚姿勢情報[142]に基づいて生成し、
    キャプチャされた前記視像に基づいて前記電子デバイスの環境の複数のフィーチャを識別し[225]、前記ローカライゼーション・データ[230]において識別される複数のフィーチャの特徴に基づいて、識別されたフィーチャの各々に対し対応する品質値を割り当て
    品質値閾値を識別することであって、前記品質値閾値は、前記品質値の平均値と、前記品質値の中央値と、前記品質値閾値を超える品質値の数に基づく値と、のうちの1つ以上に基づいている、識別することを行い、
    前記品質値閾値未満の品質値を有するフィーチャに関連付けられているデータを除去することによって、前記複数のフィーチャの特徴に基づいて前記ローカライゼーション・データを削減し[232]、
    削減された前記ローカライゼーション・データに基づいて前記電子デバイスの前記環境をマッピングする[235]、
    電子デバイス。
  12. 前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャのそれぞれの観察数[454]を含む、
    請求項11に記載の電子デバイス。
  13. 前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャのそれぞれの位置の一貫性[456]を含む、
    請求項11に記載の電子デバイス。
  14. 視像をキャプチャする撮像センサ[114,118]と、
    複数の非視覚センサと、
    プロセッサ[602,604]と、を備える電子デバイスであって、前記プロセッサは、
    電子デバイスにおいて、前記電子デバイスのローカライゼーション・データ[230]を、前記電子デバイスにおいてキャプチャされた視像[220]に基づいて、および、非視覚センサから取得された受信された非視覚姿勢情報[142]に基づいて生成し、
    キャプチャされた前記視像に基づいて前記電子デバイスの環境の複数のフィーチャを識別し[225]、
    前記複数のフィーチャの特徴に基づいて前記ローカライゼーション・データを削減し[232]、
    削減された前記ローカライゼーション・データに基づいて前記電子デバイスの前記環境をマッピングし[235]、
    前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャのそれぞれの前記電子デバイスからの距離[455]を含む、
    子デバイス。
  15. 前記複数のフィーチャの前記特徴は、キャプチャされた前記視像の互いに異なる画像における前記複数のフィーチャの変動性[458]を含む、
    請求項11に記載の電子デバイス。
  16. 視像をキャプチャする撮像センサ[114,118]と、
    複数の非視覚センサと、
    プロセッサ[602,604]と、を備える電子デバイスであって、前記プロセッサは、
    電子デバイスにおいて、前記電子デバイスのローカライゼーション・データ[230]を、前記電子デバイスにおいてキャプチャされた視像[220]に基づいて、および、非視覚センサから取得された受信された非視覚姿勢情報[142]に基づいて生成し、
    キャプチャされた前記視像に基づいて前記電子デバイスの環境の複数のフィーチャを識別し[225]、
    前記複数のフィーチャの特徴に基づいて前記ローカライゼーション・データを削減し[232]、
    削減された前記ローカライゼーション・データに基づいて前記電子デバイスの前記環境をマッピングし[235]、
    前記プロセッサは、前記データから前記非視覚姿勢情報を除去すること[340]によって前記ローカライゼーション・データを削減する、
    子デバイス。
  17. 前記プロセッサは、さらに前記ローカライゼーション・データを幾何学的に圧縮すること[344]によって前記ローカライゼーション・データを削減する、
    請求項11に記載の電子デバイス。
  18. 前記プロセッサは、
    前記ローカライゼーション・データのキーフレームを識別すること[342]と、
    前記ローカライゼーション・データのキーフレームに対応しないデータを除去することと、によって前記ローカライゼーション・データを削減する、
    請求項11に記載の電子デバイス。
JP2017556874A 2015-08-11 2016-08-10 電子デバイス上における環境マッピング用のフィーチャ・データの管理 Expired - Fee Related JP6609640B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/823,283 2015-08-11
US14/823,283 US9940542B2 (en) 2015-08-11 2015-08-11 Managing feature data for environment mapping on an electronic device
PCT/US2016/046294 WO2017027562A1 (en) 2015-08-11 2016-08-10 Managing feature data for environment mapping on an electronic device

Publications (2)

Publication Number Publication Date
JP2018524657A JP2018524657A (ja) 2018-08-30
JP6609640B2 true JP6609640B2 (ja) 2019-11-20

Family

ID=56801795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017556874A Expired - Fee Related JP6609640B2 (ja) 2015-08-11 2016-08-10 電子デバイス上における環境マッピング用のフィーチャ・データの管理

Country Status (8)

Country Link
US (1) US9940542B2 (ja)
EP (1) EP3335153B1 (ja)
JP (1) JP6609640B2 (ja)
KR (1) KR102398478B1 (ja)
CN (1) CN107646109B (ja)
DE (1) DE112016002022T5 (ja)
GB (1) GB2553965B (ja)
WO (1) WO2017027562A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10572441B2 (en) * 2015-08-19 2020-02-25 Global Engineering Research and Technologies, LLC Applications of peridynamic differential operator
US11017610B2 (en) 2016-05-18 2021-05-25 Google Llc System and method for fault detection and recovery for concurrent odometry and mapping
US10890600B2 (en) 2016-05-18 2021-01-12 Google Llc Real-time visual-inertial motion tracking fault detection
US10802147B2 (en) 2016-05-18 2020-10-13 Google Llc System and method for concurrent odometry and mapping
US10339708B2 (en) * 2016-11-01 2019-07-02 Google Inc. Map summarization and localization
US10375374B2 (en) 2017-03-29 2019-08-06 Plethron Inc. Dimension extractable object comprising spatial metadata for a captured image or video
US10921825B2 (en) * 2017-11-04 2021-02-16 Automodality, Inc. System and method for perceptive navigation of automated vehicles
US11189054B2 (en) * 2018-09-28 2021-11-30 Apple Inc. Localization and mapping using images from multiple devices
TWI736188B (zh) * 2019-03-22 2021-08-11 宏達國際電子股份有限公司 擴增實境資訊傳遞系統及方法
US11769258B2 (en) * 2021-02-03 2023-09-26 Qualcomm Incorporated Feature processing in extended reality systems

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69712481T2 (de) 1996-06-28 2002-12-19 T. Eric Hopkins Bilderfassungssystem und verfahren
US7145478B2 (en) * 2002-12-17 2006-12-05 Evolution Robotics, Inc. Systems and methods for controlling a density of visual landmarks in a visual simultaneous localization and mapping system
US6871409B2 (en) 2002-12-18 2005-03-29 Snap-On Incorporated Gradient calculating camera board
US7557935B2 (en) 2003-05-19 2009-07-07 Itzhak Baruch Optical coordinate input device comprising few elements
KR100843085B1 (ko) * 2006-06-20 2008-07-02 삼성전자주식회사 이동 로봇의 격자지도 작성 방법 및 장치와 이를 이용한영역 분리 방법 및 장치
KR100816269B1 (ko) * 2006-09-22 2008-03-25 학교법인 포항공과대학교 언센티드 필터를 적용한 강인한 동시 위치 추정 및 지도작성 방법
JP5324240B2 (ja) * 2009-01-29 2013-10-23 株式会社ゼンリン 路面標示地図生成方法及び路面標示地図生成装置
JP2011043419A (ja) * 2009-08-21 2011-03-03 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
WO2011052826A1 (ko) * 2009-10-30 2011-05-05 주식회사 유진로봇 이동 로봇의 위치 인식을 위한 지도 생성 및 갱신 방법
KR20120070291A (ko) * 2010-12-21 2012-06-29 삼성전자주식회사 보행 로봇 및 그의 동시 위치 인식 및 지도 작성 방법
US8798840B2 (en) * 2011-09-30 2014-08-05 Irobot Corporation Adaptive mapping with spatial summaries of sensor data
CN103247225B (zh) * 2012-02-13 2015-04-29 联想(北京)有限公司 即时定位与地图构建方法和设备
EP4140414A1 (en) 2012-03-07 2023-03-01 Ziteo, Inc. Methods and systems for tracking and guiding sensors and instruments
US9177404B2 (en) * 2012-10-31 2015-11-03 Qualcomm Incorporated Systems and methods of merging multiple maps for computer vision based tracking
US20140341465A1 (en) 2013-05-16 2014-11-20 The Regents Of The University Of California Real-time pose estimation system using inertial and feature measurements
WO2015023634A2 (en) 2013-08-12 2015-02-19 Flyby Media, Inc. Visual-based inertial navigation
US9384402B1 (en) * 2014-04-10 2016-07-05 Google Inc. Image and video compression for remote vehicle assistance
CN103926927A (zh) * 2014-05-05 2014-07-16 重庆大学 一种室内移动机器人双目视觉定位与三维建图方法
US9483879B2 (en) * 2014-09-18 2016-11-01 Microsoft Technology Licensing, Llc Using free-form deformations in surface reconstruction

Also Published As

Publication number Publication date
GB201716681D0 (en) 2017-11-29
CN107646109A (zh) 2018-01-30
EP3335153B1 (en) 2022-10-05
US20170046594A1 (en) 2017-02-16
GB2553965B (en) 2021-11-24
WO2017027562A1 (en) 2017-02-16
CN107646109B (zh) 2021-10-01
JP2018524657A (ja) 2018-08-30
DE112016002022T5 (de) 2018-01-18
KR102398478B1 (ko) 2022-05-13
EP3335153A1 (en) 2018-06-20
KR20180039013A (ko) 2018-04-17
GB2553965A (en) 2018-03-21
US9940542B2 (en) 2018-04-10

Similar Documents

Publication Publication Date Title
JP6609640B2 (ja) 電子デバイス上における環境マッピング用のフィーチャ・データの管理
CN108028871B (zh) 移动设备上的无标记的多用户多对象增强现实
CN109791608B (zh) 映射摘要和本地化
CN108283018B (zh) 电子设备和用于电子设备的姿态识别的方法
EP3134870B1 (en) Electronic device localization based on imagery
WO2019205851A1 (zh) 位姿确定方法、装置、智能设备及存储介质
EP2915140B1 (en) Fast initialization for monocular visual slam
EP2880627B1 (en) Localisation and mapping
US9646384B2 (en) 3D feature descriptors with camera pose information
US10154190B2 (en) Balancing exposure and gain at an electronic device based on device motion and scene distance
Yeh et al. 3D reconstruction and visual SLAM of indoor scenes for augmented reality application
US11758100B2 (en) Portable projection mapping device and projection mapping system
US11935286B2 (en) Method and device for detecting a vertical planar surface

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190419

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191028

R150 Certificate of patent or registration of utility model

Ref document number: 6609640

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees