JP5881743B2 - 奥行きマップを使用したモバイルカメラの自己位置推定 - Google Patents

奥行きマップを使用したモバイルカメラの自己位置推定 Download PDF

Info

Publication number
JP5881743B2
JP5881743B2 JP2013552530A JP2013552530A JP5881743B2 JP 5881743 B2 JP5881743 B2 JP 5881743B2 JP 2013552530 A JP2013552530 A JP 2013552530A JP 2013552530 A JP2013552530 A JP 2013552530A JP 5881743 B2 JP5881743 B2 JP 5881743B2
Authority
JP
Japan
Prior art keywords
camera
depth
mobile
depth map
depth camera
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.)
Active
Application number
JP2013552530A
Other languages
English (en)
Other versions
JP2014511591A (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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2014511591A publication Critical patent/JP2014511591A/ja
Application granted granted Critical
Publication of JP5881743B2 publication Critical patent/JP5881743B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B35/00Stereoscopic photography
    • 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
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Processing Or Creating Images (AREA)
  • Studio Devices (AREA)

Description

本発明は、奥行きマップを使用したモバイルカメラの自己位置推定に関する。
[0001]モバイルカメラの自己位置推定は、その環境内を移動するカメラの位置および姿勢を見出すことを必要とし、ロボット、没入型ゲーム、拡張現実感、アーキテクチャ、立案、ロボット、エンジニアリングプロトタイピング(engineering prototyping)、車両ナビゲーション、医学用途、およびその他の問題領域など、多くの用途に有用である。既存の手法は、精度、頑強さ、および速度の点で限定されている。多くの用途にとって、例えば、ロボットがその環境内で成功裏に動き回ることができるように、正確なカメラの自己位置推定がリアルタイムで必要とされる。
[0002]モバイルカメラの自己位置推定のための多くの以前の手法は、デプスカメラ(depth camera)ではなく、カラービデオカメラを使用した。通常、カラービデオカメラは、高い解像度と精度とを提示し、豊かなカラー情報はビデオ画像内で視覚的な特徴が検出されるのを可能にする。デプスカメラから利用可能な情報は、環境のタイプと、使用されるデプスカメラのタイプとに応じて、ノイズが多く、不正確な場合がある。デプスカメラは、本明細書で奥行きマップ(depth map)と呼ばれる画像を捕捉し、この場合、それぞれの画素はデプスカメラからカメラの環境内のある点までの絶対距離または相対距離に関係する。利用可能な情報の差異により、カラー画像と比較して、奥行きマップ内の特徴を検出することがより困難な場合がある。
[0003]モバイルカメラの自己位置推定のためのいくつかの以前の手法は、モバイルカメラの環境のマップに対するそのモバイルカメラの位置および姿勢を追跡するのと同時に、そのモバイルカメラの環境のマップを作成することを必要とした。これは、同時位置決め地図作成(simultaneous localization and mapping)(SLAM)として知られている。
[0004]以下で説明される実施形態は、知られているモバイルカメラの自己位置推定システムの欠点のうちのいくつかまたはすべてを解決する実装形態に限定されない。
奥行きマップを使用したモバイルカメラの自己位置推定を提供する。
[0005]以下の説明は、読者に基本的な理解をもたらすために、本開示の簡素化された概要を提示する。この概要は、本開示の広範囲に及ぶ概要ではなく、また、この概要は、本発明の主な要素/重要な要素を識別せず、または本発明の範囲を描写しない。その唯一の目的は、後で提示されるより詳細な説明の前置きとして、本明細書で開示される概念の選定を簡素化された形で提示することである。
[0006]ロボット、没入型ゲーム、拡張現実感、およびその他の用途に関する、奥行きマップを使用したモバイルカメラの自己位置推定が説明される。ある実施形態では、感知された奥行きデータを使用してある環境の3Dモデルが形成されると同時に、モバイルデプスカメラは、その環境内で追跡される。ある実施形態では、カメラ追跡が失敗したとき、これが検出されて、カメラは、以前に収集されたキーフレームを使用することによって、またはその他の方法で、自己位置が再推定される。ある実施形態では、現在の奥行きマップの特徴を3Dモデルとリアルタイムで比較することによって、モバイルカメラがある位置に再度戻るループ閉鎖が検出される。実施形態では、その環境の3Dモデルの一貫性と精度とを改善するために、検出されたループ閉鎖が使用される。
[0007]付随する特徴の多くは、添付の図面と共に以下の詳細な説明を参照することによって、それらの特徴がより良好に理解されるにつれてより容易に理解されよう。
[0008]添付の図面に照らして以下の詳細な説明を読むことから、本説明をより良好に理解されよう。
リアルタイムカメラ追跡に関して使用されることが可能であり、またオプションで、部屋の高密度3Dモデルまたは高密度3Dマップを生成するためにも使用され得るモバイルデプスカメラを室内で構えている人物の概略図である。 モバイルデプスカメラを構えている人物によって探索される建物の床の平面図である。 リアルタイムカメラ追跡システムと、高密度3Dモデル形成システムと、ゲームシステムとに接続されたモバイルデプスカメラの概略図である。 リアルタイムトラッカーにおけるある方法の流れ図である。 自己位置再推定エンジンの概略図である。 キーフレームなしの自己位置再推定のある方法の流れ図である。 キーフレームを用いた自己位置再推定のある方法の流れ図である。 ループ閉鎖のある方法の流れ図である。 ある例示的なフレーム整列エンジン(frame alignment engine)の概略図である。 カメラ追跡に関するある反復プロセスの流れ図である。 対応する点の対を演算するための、図5の反復プロセスの一部のさらなる詳細の流れ図である。 高密度3Dモデルからの予測を使用して、対応する点の対を演算するためのあるプロセスの流れ図である。 図10の反復プロセスで使用するための点平面エラー基準(point−to−plane error metric)を演算および最小化するためのあるプロセスの流れ図である。 カメラの自己位置推定システムの実施形態が実施され得る、ある例示的な演算ベースのデバイスを示す図である。
添付の図面内の類似の部分を示すために類似の参照番号が使用される。
[0009]添付の図面に関して下で提供される詳細な説明は、本例の説明として意図され、本例が構築または利用され得る形態だけを表すことが意図されない。本説明は、その例の機能とその例を構築し動作させるためのステップの順序とを説明する。しかし、異なる例によって、同じまたは均等の機能および順序が達成され得る。
[0010]本例は、本明細書で赤外線を放射および捕捉するモバイルデプスカメラから取得された奥行き画像を使用したリアルタイムカメラ追跡システムの形で実施されているとして説明および例示されるが、説明されるシステムは、限定ではなく、ある例として提供される。本例は、ステレオカメラから取得された奥行き情報を使用するシステム、ならびに他のタイプの電磁放射線を放射および捕捉することによって取得された奥行き情報を使用するシステムを含むが、これらに限定されない、様々な異なるタイプのリアルタイムカメラ追跡システム内の用途に適している点を当業者は理解されよう。
[0011]「画像要素」という用語は、本書で、画像の画素、画素のグループ、ボクセル、またはその他のより高いレベルの成分を指すために使用される。
[0012]「高密度3Dモデル」という用語は、本書で、オブジェクトおよび表面を含む三次元シーンの表現を示すために使用され、この場合、その表現はそのシーンの画像要素に関する詳細を含む。対照的に、低密度3Dモデルは、オブジェクトのフレームベースの表現を含むことが可能である。高密度3Dモデルは、ポリゴンメッシュ表現、または3Dモデルを記憶するために必要とされる冗長性とメモリとを削減する様式でのその他の表現などの低密度3Dモデルに変換されることが可能である。ある例示的な高密度3Dモデルは、その環境内の表面を説明するために、入射奥行きマップからのすべての点または多くの点が使用されるモデルであり得る。低密度モデルは、それらの点のサブセットを利用して、計算を加速し、メモリフットプリントを削減することになる。
[0013]図1は、この例では、猫108の画像を室内に投影しているプロジェクターをやはり組み込んだモバイルデプスカメラ102を室内で構えて立っている人物100の概略図である。部屋は、椅子、扉、窓、植物、電灯、およびもう1人の人物104など、様々なオブジェクト106を含む。オブジェクト106の多くは静的であるが、人物104など、オブジェクトの一部は移動することが可能である。人物が部屋を移動するにつれて、モバイルデプスカメラは画像を捕捉し、これらの画像は、室内のカメラの位置および姿勢を監視するために、リアルタイムカメラ追跡システム112によって使用される。リアルタイムカメラ追跡システム112は、モバイルデプスカメラ102と一体であってよく、またはモバイルデプスカメラ102から直接的または間接的に通信を受信することが可能であることを条件に、別の位置にあってもよい。例えば、リアルタイムカメラ追跡システム112は、室内のパーソナルコンピュータ、専用コンピュータゲーム装置、またはその他のコンピューティングデバイスに提供され、モバイルデプスカメラ102と無線通信することが可能である。他の例では、リアルタイムカメラ追跡システム112は、建物内の他の場所にあってよく、または任意の適切なタイプの通信ネットワークを使用してモバイルデプスカメラ102と通信する別の遠隔位置にあってもよい。モバイルデプスカメラ102は、環境の高密度3Dモデル110(この場合、部屋の3Dモデル)または環境の別のタイプのマップとも通信する。例えば、モバイルデプスカメラ102によって捕捉された画像は、人物が部屋を動き回るにつれて、環境の高密度3Dモデルを形成および構築するために使用される。リアルタイムカメラ追跡システム112は、環境110の3Dモデルまたは3Dマップに対するカメラの位置を追跡することができる。リアルタイムカメラ追跡システム112および高密度3Dモデルまたは高密度3Dマップ110の出力は、ゲームシステムまたは他の用途によって使用されることが可能であるが、これは必須ではない。例えば、モバイルデプスカメラ102のプロジェクターは、リアルタイムカメラ追跡システム112および3Dモデル110の出力に応じて、画像を投影するように構成されることが可能である。
[0014]図2は、建物の床200の平面図である。モバイルデプスカメラ204を構えている人物202は、点線の矢印208によって示されるように、床面を動き回る。その人物は廊下206に沿って歩き、部屋と家具210とを通り過ぎる。リアルタイムカメラ追跡システム112は、モバイルデプスカメラ204が動き、床面の3Dモデルまたは3Dマップが形成されるにつれて、モバイルデプスカメラ204の位置を追跡することができる。人物202がモバイルデプスカメラ204を持ち運ぶことは必須でない。他の例では、モバイルデプスカメラ204はロボットまたは車両の上に取り付けられる。これは図1の例にも適用される。
[0015]図3は、リアルタイムカメラトラッカー316、高密度モデル形成システム324、およびオプションで、ゲームシステム332と共に使用するためのモバイル環境センサー300の概略図である。モバイル環境センサー300は、シーンの奥行き画像のシーケンスを捕捉するように構成されたデプスカメラ302を備える。それぞれの奥行き画像または奥行きマップフレーム314は二次元画像を含み、その二次元画像内で、それぞれの画像要素は、カメラから、その画像要素を生じさせた、捕捉されたシーン内のオブジェクトまでの長さ、すなわち、距離など、奥行き値を含む。この奥行き値は、メートル、もしくはセンチメートルなど、指定された測定単位で提供された絶対値であってよく、または相対的な奥行き値であってもよい。それぞれの捕捉された奥行き画像内に、それぞれが奥行き値を有する、およそ300,000以上の画像要素が存在する可能性がある。フレームレートは、それらの奥行き画像が作業ロボット、コンピュータゲーム、またはその他の用途に関して使用されることを可能にするのに十分高い。例えば、毎秒少なくとも20フレームである。
[0016]奥行き情報は、タイムオブフライト(time of flight)、立体照明、ステレオ画像を含むが、これらに限定されない任意の適切な技法を使用して取得され得る。いくつかの例では、デプスカメラは、奥行き情報をデプスカメラの見通し線に沿って伸びるZ軸に対して直角なZ個の層に組織化することが可能である。
[0017]モバイル環境センサー300は、奥行き情報がデプスカメラ302によって確認され得るような方法でシーンを照明するように構成されたエミッター304を備えることも可能である。例えば、デプスカメラ302が赤外線(IR)タイムオブフライトカメラである場合、エミッター304はIR線をシーン上に放射し、デプスカメラ302は、そのシーン内の1つまたは複数のオブジェクトの表面から後方散乱された光を検出するように構成される。いくつかの例では、出射光パルスと対応する入射光パルスとの間の時間がデプスカメラによって検出され、測定されて、環境センサー300からそのシーン内のオブジェクト上の位置までの物理的距離を判断するために使用され得るように、パルス赤外線がエミッター304から放射される場合がある。加えて、いくつかの例では、位相偏移を判断するために、エミッター304からの出射光波の位相がデプスカメラ302における入射光波の位相と比較されることが可能である。位相偏移は、次いで、例えば、シャッター光パルス結像(shuttered light pulse imaging)を含む様々な技法によって経時的に光の反射ビームの強度を解析することによって、モバイル環境センサー300からオブジェクト上の位置までの物理的な距離を判断するために使用されることが可能である。
[0018]別の例では、モバイル環境センサー300は、奥行き情報を捕捉するために立体照明を使用することができる。そのような技法では、エミッター304を使用して、パターン化された光(例えば、グリッドパターンまたはストライプパターンなど、知られているパターンとして表示された光)がシーン上に投影され得る。シーン内のオブジェクトの表面を照らすとすぐに、そのパターンは変形する。パターンのそのような変形がデプスカメラ302によって捕捉され、解析されて、デプスカメラ302からそのシーン内のオブジェクトまでの絶対距離または相対距離を判断することが可能である。
[0019]別の例では、デプスカメラ302は、視覚的なステレオデータが取得されて、分解されて、相対的な奥行き情報を生成するように、ステレオカメラの対を備える。この場合、シーンを照明するためにエミッター304が使用されてよく、またはエミッター304は省略されてもよい。
[0020]いくつかの例では、デプスカメラ302に加えて、モバイル環境センサー300は、RGBカメラ306と呼ばれるカラービデオカメラを備える。RGBカメラ306は、可視光周波数でそのシーンの画像のシーケンスを捕捉するように構成される。
[0021]モバイル環境センサー300は、慣性計測装置(IMU)、加速度計、ジャイロスコープ、コンパス、またはその他の姿勢センサー308など、姿勢センサー308を備えることが可能である。しかし、姿勢センサーを使用することは必須ではない。モバイル環境センサー300は、GPSなどの位置追跡デバイスを備えることが可能であるが、これは必須ではない。
[0022]モバイル環境センサーは、図1を参照して上で述べたようにプロジェクター312を備えることが可能であるが、これは必須ではない。
[0023]モバイル環境センサーは、下でより詳細に説明されるように、1つまたは複数のプロセッサー、メモリ、および通信基盤も備える。
[0024]モバイル環境センサーは、ユーザーによって携帯されるか、またはユーザーによって装着されるような形状およびサイズのハウジング内に提供され得る。他の例では、モバイル環境センサーは、車両、玩具、もしくはその他の可動装置の上に組み込むか、または取り付けられるようなサイズおよび形状である。
[0025]モバイル環境センサー300は、リアルタイムトラッカー316に接続される。この接続は、物理的に配線された接続であってよく、または無線通信を使用することも可能である。いくつかの例では、モバイル環境センサー300は、インターネットなど、1つまたは複数の通信ネットワークを介して、リアルタイムトラッカーと間接的に接続される。
[0026]リアルタイムトラッカー316は、グラフィックス処理装置(GPU)、ベクターマシン、マルチコアプロセッサー、またはその他の並列コンピューティングデバイスなど、1つもしくは複数の並列演算装置を制御する汎用マイクロプロセッサーを使用して実施されるコンピュータである。リアルタイムトラッカー316は、フレーム整列エンジン318と、オプションで、ループ閉鎖エンジン320と自己位置再推定エンジン322とを備える。リアルタイムトラッカー316はデプスカメラ302からの奥行きマップフレーム314を利用し、オプションで、モバイル環境センサー300からの入力、オプションのマップデータ334およびゲームシステム332からのオプションのデータも利用する。リアルタイムトラッカーは、デプスカメラ302の6自由度姿勢推定のリアルタイムシリーズ328を生み出すために、奥行きマップフレームを整列させるように動作する。リアルタイムトラッカーは、奥行きマップフレームの対同士の間の変換に関する(登録パラメータとも呼ばれる)変換パラメータを生み出すことも可能である。いくつかの例では、リアルタイムトラッカーは、デプスカメラからの奥行きマップフレーム314の対に関して動作する。その他の例では、リアルタイムトラッカー216は、単一の奥行きマップフレーム314を利用して、その単一の奥行きマップフレーム314を別の奥行きマップフレーム314とではなくシーンの高密度3Dモデル326と整列させる。
[0027]例えば、いくつかの実施形態では、リアルタイムトラッカー316は、出力を高密度3Dモデル形成システム324に提供し、高密度3Dモデル形成システム324は奥行きマップフレーム314と共にその情報を使用して、そのシーンまたはモバイル環境センサー300が移動している環境の高密度3Dモデルを形成および記憶する。例えば、図1の場合、3Dモデルは、室内の表面およびオブジェトの3Dモデルであろう。図2の場合、3Dモデルは、建物の床面の3Dモデルであろう。高密度3Dモデル326は、GPUメモリ内に記憶されてよく、またはその他の方法で記憶されてもよい。
[0028]モバイル環境センサー300は、ディスプレイ330に接続されたゲームシステム332と共に使用されることが可能である。例えば、ゲームは、ゴルフゲーム、ボクシングゲーム、自動車レーシングゲーム、またはその他のタイプのコンピュータゲームであってよい。ゲーム状態など、ゲームシステム332からのデータ、またはゲームに関するメタデータがリアルタイムトラッカー316に提供され得る。また、ゲームがどのように進行するかに影響を及ぼすために、リアルタイムトラッカーからの情報がゲームシステム332によって使用され得る。ゲームがどのように進行するかに影響を及ぼすために、3Dモデルからの情報もゲームシステム332によって使用され得る。
[0029]マップデータ334は、オプションで、リアルタイムトラッカー316にとって利用可能である。例えば、これは、アーキテクトの環境図面(例えば、建物の部屋または床面)、その環境内で知られているランドマークの位置、別のソースから利用可能なその環境のマップであってよい。
[0030]リアルタイムトラッカーのフレーム整列エンジン318は、奥行きマップフレームの対またはある奥行きマップフレームと高密度3Dモデルからの奥行きマップフレームの推定を整列させるように構成される。フレーム整列エンジン318は、フレーム整列エンジンがリアルタイムで動作するために、1つまたは複数のグラフィックス処理装置を使用して実施される反復プロセスを使用する。フレーム整列エンジンに関するさらなる詳細は図9を参照して下で提示される。
[0031]リアルタイムトラッカー316および/または高密度3Dモデル形成システム324によって実行される処理は、一例では、モバイル環境捕捉デバイス300の位置から遠隔で実行されることが可能である。例えば、モバイル環境捕捉デバイス300は、比較的低い処理能力を有し、通信ネットワークを介して奥行き画像をサーバに流すコンピューティングデバイスに接続されること(または、当該コンピューティングデバイスを備えること)が可能である。サーバは、比較的高い処理能力を有し、リアルタイムトラッカー316および/または高密度3Dモデル形成システム324の演算的に複雑なタスクを実行する。サーバは、フレームごとに高密度の再構成のレンダリングされた画像を戻して、双方向体験をユーザーに提供することが可能であり、(例えば、ゲームでの)後の局所使用のために、モデルの完了時に最終的な高密度3D再構成を戻すことも可能である。そのような構成は、ユーザーが高出力のローカルコンピューティングデバイスを所有する必要を回避する。
[0032]ループ閉鎖エンジンは、現在の奥行きフレーム内に描写されたシーンが、直前の奥行きフレームではない、以前の奥行きフレームのシーンと少なくとも部分的に重複するように、モバイル環境センサーがループ内でいつ移動したかを検出するように構成される。ループが閉鎖されるとき、モバイル環境センサーは、そのモバイル環境センサーが前にいたある場所に再度戻る。例えば、図2でユーザーが建物の床面全体を歩き回り、開始点に再度達したときに、これが発生する可能性がある。これは、ユーザーが室内である家具の後ろを歩き回り、元の開始位置、または、その元の開始位置近くに再度出てきたときに発生する可能性もある。したがって、ループのサイズは、モバイル環境センサーが存在する環境と用途領域とに応じて変化することになる。例えば、(図2にあるように)ある人物が建物の床面を歩き回っている場合、ループは数十メートルの長さであり得る。(図1にあるように)ある人物が単一の部屋のあちこちにカメラを移動させる場合、ループは、10メートル未満の長さであり得る。玩具の自動車上のロボットが子どもの玩具のレーシングトラック上を走り回っている場合、ループは1メートル未満の長さであり得る。ループ閉鎖がいつ発生するかを検出することは3Dモデル内に蓄積されたエラーが識別されるのを可能にするため、それは有用である。例えば、モバイル環境センサーは、ループの開始点と終了点にいるとして識別された奥行き画像および/またはカラービデオ画像を捕捉した可能性があるが、それらの画像のそれぞれに関して計算されたカメラの位置および姿勢は一貫しない場合がある。これらのエラーが識別されると、これらのエラーは削減され、それにより、環境の3Dモデルまたは3Dマップの精度と一貫性とを改善することができる。また、カメラ追跡の総誤差または姿勢喪失が回復され得る。ループ閉鎖エラーは、自己位置推定されたエラーとグローバルエラーの両方を含むと考えることができる。(ドリフトとも呼ばれる)グローバルループ閉鎖エラーは、経時的なカメラの結合された6自由度姿勢推定内のエラーを含む。自己位置推定されたエラーは、個々のフレームからのカメラの6自由度姿勢推定または大きく重複するフレームのシーケンスにおいて発生する可能性がある。ループ閉鎖がリアルタイムでいつ発生するかを正確に検出することは簡単ではない。ループ閉鎖が検出されると、何らかのループ閉鎖エラーが識別および削減され、高品質の結果を達成しながらこれをリアルタイムで達成するのは困難である。加えて、グローバルループ閉鎖エラーは、ローカルループ閉鎖エラーとは異なる方法で相殺または処理されることが可能である。
[0033]自己位置再推定エンジン322は、リアルタイムトラッカーがモバイル環境センサー300の現在の位置を失い、現在の位置を再推定するかまたは再度見出す状況に対処するように構成される。リアルタイムトラッカーは、多くの理由で、モバイル環境センサー300の現在の位置を失う場合がある。例えば、迅速なカメラの動き、閉鎖、および動きのぶれ。奥行きマップがリアルタイム追跡に関して使用される場合、環境が密な詳細をほとんど有さず、主に平面状表面を含む場合に追跡失敗が発生する可能性もある。立体照明エミッターを使用するデプスカメラの場合、環境が、コンピュータスクリーンおよび不良な奥行き情報を生み出すその他の反射面など、非常に反射する表面を有する場合、追跡失敗が発生する可能性がある。追跡失敗が検出されない場合、誤った追跡情報が潜在的に使用されて、環境の3Dモデルまたは3Dマップを増分する可能性がある。これは3Dモデルまたはマップの汚染につながる場合がある。追跡失敗の迅速かつ正確な検出は、3Dモデルの汚染を防止するほかに、追跡回復プロセスをトリガする目的で使用され得るため、それは有益である。
[0034]図4は、図3のリアルタイムトラッカー316のあるプロセスの流れ図である。リアルタイムカメラ追跡は、下で図9から図13を参照して説明されるように、フレーム整列エンジン318を使用して確立される400。モバイル環境センサー300が移動している環境の高密度3Dモデル326を精緻化するために、奥行きマップフレーム314とフレーム整列エンジンからの出力(登録パラメータならびにカメラの姿勢および位置)とが使用される402。追跡失敗が検出された場合404、モバイル環境センサー300の自己位置再推定406が発生し、より多くの奥行きマップフレームが捕捉されるにつれて高密度3Dモデルを増分して、プロセスはステップ402に進む。このようにして、追跡失敗が検出されると、自己位置再推定が成功するまで、進行中のカメラ追跡および3Dモデルの進行中の精緻化が休止される。ループ閉鎖エラーが検出された場合408、そのエラーを考慮に入れるように高密度3Dモデル自体が修正される。ループ閉鎖エラーに対処した後で、高密度3Dモデルを増分して、プロセスはステップ402に進む。このようにして、追跡失敗が発生するとき環境の高密度3Dモデルは保存され、ループ閉鎖を検出した結果、その精度と一貫性とが改善される。
[0035]図5は、図3の自己位置再推定エンジン322のさらなる詳細を提示する概略図である。自己位置再推定エンジン322は、リアルタイムで動作する追跡失敗検出器500を備える。追跡失敗検出器500は、関係する用途領域に応じて事前構成された閾値502を含む。例えば、フレーム整列エンジンによって出力された登録パラメータが閾値量を超えて変化するとき、追跡失敗が発生する可能性がある。別の例では、フレーム整列エンジンによって出力されたSE3行列が連続する出力間の閾値量を超えて変化するとき、追跡失敗が発生する可能性がある。モバイルデプスカメラの位置および姿勢を追跡するために使用された反復プロセスの収束において失敗が発生するとき、追跡失敗が検出される可能性がある。追跡失敗検出器500は、1つもしくは複数の規則、基準、閾値、またはその他の条件として記憶されたモーションヒューリスティック(motion heuristic)504を含むことが可能である。例えば、モーションヒューリスティックは、モバイル環境センサー300がホワイトノイズ加速度で、一定速度で移動しているという規則であってよい。このモーションヒューリスティックと一致しないフレーム整列エンジンからのいずれの出力も追跡失敗をトリガする可能性がある。別の例では、モーションヒューリスティックは、モバイル環境センサー300が、(モバイル環境センサーがユーザーによって装着される場合)平均的な人間の歩行速度に設定された最大線速度を用いて、かつ無作為に高回転速度を用いて、ランダムウォークで移動することであってよい。このモーションヒューリスティックと一致しないフレーム整列エンジンからのいずれの出力も追跡失敗をトリガする可能性がある。これらの追跡失敗検出方法のうちの1つまたは複数の任意の組合せが使用されてよい。ある例では、モーションヒューリスティックの違反による追跡失敗、回転閾値の違反による追跡失敗、および/または収束障害もしくはあまりにも多くの残余誤差を伴う収束により、モバイルデプスカメラの位置および姿勢を追跡するために使用される反復プロセスの失敗が発生したときの追跡失敗を検出するために、これらの3つの違反状況の組合せが使用される。
[0036]追跡失敗検出器500は、フレーム整列エンジンが縮退を検出するとき506、追跡失敗を検出するように構成された構成要素を備えることが可能である。例えば、下で説明されるように、フレーム整列エンジンは、エラー基準の最適化を含む反復プロセスを使用することによって、奥行きマップの対同士の間に対応する点の対を見出す。そのエラー基準の最適化の間、最適化プロセスが何の解決策も提示できないとき、縮退が検出される可能性がある。例えば、この失敗は、環境内の反射面により奥行き値を有さない、奥行きマップ内の画素要素が原因である場合があり、球状表面または円柱状表面が存在する場合、環境が非常に平面であることが原因である場合があり、またはその他の理由による場合もある。
[0037]自己位置再推定エンジンは、キーフレームを使用することが可能であるか、またはキーフレームなしに動作することも可能な自己位置再推定プロセス508も含む。キーフレームは、リアルタイムトラッカーによって以前に収集されたか、または人工的に生成された奥行きマップフレームまたはカラービデオフレームである。追跡は現在のカメラビューに良好に整合するキーフレームを見出すことによって回復され、これは、そこから追跡を再開できる初期姿勢推定を提供する。場合によっては、キーフレームは、SE3行列内にマージされ(marginalized)、これはメモリ要件を削減する。必要な場合、キーフレーム点はレイキャスティングによって高密度3Dモデルから回復されることが可能である。
[0038]自己位置再推定プロセス508がキーフレームなしで動作するある例が、次に、図6を参照して提示される。例えば、モバイル環境センサーに関する動きモデルを使用して、カメラ姿勢の追跡分布が演算される600。この動きモデルは、モバイル環境センサーが、その最後に知られている位置をおよそ中心として任意の姿勢に着実に拡大する範囲内にあることを予測することができる。追跡分布から無作為にまたは任意のその他の方法で例示的なカメラ姿勢が選択される602。次いで、フレーム整列エンジンがサンプリングされたカメラ姿勢と共に使用され604、現在の奥行きマップと以前の奥行きマップを整列させて、下でより詳細に説明されるように、登録パラメータを取得する。収束に達した場合606、すなわち、登録パラメータが最後に知られている位置と一致する場合、カメラは成功裏に自己位置推定されている608。そうでない場合、別のサンプルが取られ602、プロセスが繰り返す。
[0039]自己位置再推定プロセス508がキーフレームなしで動作する別の例が次に提示される。
[0040]現在の奥行きマップのパッチに対して、かつ環境の3Dモデルから取得された複数の以前の奥行きマップのパッチに対して、ランダム決定フォレスト(random decision forest)など、高速クラスタリングアルゴリズムが適用される。レイキャスティング技法を使用して、3Dモデルから奥行きマップをレンダリングすることによって、または任意のその他の方法で、以前の奥行きマップが環境の3Dモデルから取得され得る。ランダム決定フォレスト内のそれぞれの葉ノードは構造的特徴要素(texton)を表す。構造的特徴要素はカラー画像のテクスチャ特徴であるが、この例では、奥行きマップが使用され、したがって、構造的特徴要素は奥行きマップのテクスチャ特徴である。現在の奥行きマップの複数のパッチが無作為に、または任意のその他の方法で選択される。それぞれのパッチは、複数の隣接する画像要素である。パッチは複数の以前の奥行きマップのそれぞれからも選択される。それぞれのパッチは、そのパッチに関する構造的特徴要素を識別するために、ランダム決定フォレストの葉に処理される。次いで、画像内に見出されたすべての構造的特徴要素のヒストグラムが構築される。
[0041]自己位置再推定プロセスは、ランダム決定フォレスト分類器によって出力された構造的特徴要素のヒストグラムの点で現在の奥行きマップに類似する以前の奥行きマップを選ぶ。次いで、選択された奥行きマップに関連するカメラ姿勢が現在のカメラ姿勢として使用され、カメラが自己位置を再推定される。ランダム決定フォレストクラスタリングアルゴリズムは、オフラインで、またはリアルタイムトラッカーを使用する間にバックグラウンド処理を使用してトレーニングされる。
[0042]図7は、自己位置再推定に関するキーフレームを使用するある方法の流れ図である。リアルタイム追跡の間にキーフレームが収集され702、3Dモデルに関連して記憶される。例えば、キーフレームはモバイル環境センサー300においてRGBカメラ306によって捕捉されたカラービデオフレームである。別の例では、キーフレームは、デプスカメラ302によって捕捉された奥行きマップフレーム314である。それぞれのキーフレームは、リアルタイム追跡の間にフレーム整列エンジン318によって計算された、関連するカメラ姿勢を有する。それぞれのキーフレームは、カメラ姿勢にしたがって、3Dモデル326内の位置と関連付けられる。キーフレームは、例えば、キーフレームに関するカメラ姿勢によって指定された位置において3Dモデル内に基準を含めることによって、3Dモデルに関連して記憶される。いくつかの例では、3Dモデルは、GPUメモリのキューブ内に記憶され、キーフレームは、キーフレームに関するカメラ姿勢によって指定された位置にしたがって、メモリのこのキューブ内に残される。場合によっては、キーフレームはその関連するSE3行列として記憶され、これはメモリ要件を削減する。キーフレーム奥行き点は、必要な場合、レイキャスティングによって高密度3Dモデルから回復され得る。
[0043]収集されるキーフレームの数は、利用可能なメモリおよび処理能力、ならびに用途領域に依存する。しかし、何万ものキーフレームが記憶されることが可能である。キーフレームとして維持するためのフレームの選択は、ランダム選択を使用して、n個おきにフレームを選択することによって、以前に見られなかった視覚的特徴を含むフレームを選択することによって、これらの手法の組合せを使用して、または任意のその他の方法で達成される。ある例では、システムは、キーフレーム同士の間の最低数のフレームを待ち、移動および回転の点で既存のキーフレームのうちのいずれかから少なくとも指定された量だけ離れているフレームが、カメラ姿勢に対応する場合、その新しいキーフレームを記録する。
[0044]追跡失敗が検出されたとき702、自己位置再推定エンジンは、現在のカメラビュー(奥行きマップまたはRGB画像)に類似する、キーフレームのうちの1つを選択する704。キーフレームと現在のカメラビューとの間の類似性の測定は、任意の適切なタイプのものであってよい。例えば、縁、角、ブロブ(blobs)、線などの特徴が比較され得る。キーフレームに適用されたオブジェクトセグメント化プロセスの結果と現在のカメラビューとを比較することなど、他の類似性測定が使用されてもよい。キーフレームが奥行きマップである場合、キーフレームに人体姿勢検出器が適用され、現在のビューと結果とが比較され得る。現在のフレームならびに以前のフレームに(機械学習分類器など)形状推定および/または意味的画像ラベル付けプロセスが適用され得る。次いで、現在のフレームと比較して類似の形状(垂直表面および水平表面の構成ならびに位置)および/または意味的ラベル付け(オブジェクトの構成)を有するフレームを選択することによって、自己位置の再推定をすることが可能である。
[0045]くまなく検索すべきキーフレームがあまりにも多く存在するため、キーフレームを選択することは、複雑かつ時間がかかるタスクである。いくつかの例では、最後の知られているカメラ位置周辺に位置するキーフレームの検索が行われ、次いで、良好な整合が見出されるまで、検索空間が徐々に拡大され得る。
[0046]キーフレームが選択されると、そこから追跡を再開することができる初期姿勢推定を提供するために、そのキーフレームが使用される706。
[0047]次に、図3のループ閉鎖エンジン320でのある方法が図8を参照して説明される。ループ閉鎖検出プロセス804は、環境の現在の奥行きマップ800および3Dモデル802からの入力を利用する。場合によっては、ループ閉鎖検出プロセス804はRGBカメラ306によって捕捉された現在のカラー画像からの入力を利用するが、これは必須ではない。ループ閉鎖検出プロセス804は、特徴整合プロセス806、語の袋(bag of words)プロセス808、またはその他のループ閉鎖検出プロセスなど、任意の適切なループ閉鎖検出方法を使用する。上で述べたように、モバイル環境センサーがある位置に再度戻るとき、ループ閉鎖が発生する。語の袋プロセスは、2つの画像がいつ同じシーンを示すかを効率的に認識し、それによりループ閉鎖を検出することができる。語の袋プロセスは、特徴記述子(例えば、線、縁、角、ブロブ、SIFT特徴、SURF特徴)の(動的またはオフライン)辞書を生成し、その辞書を使用して、画像内で見出された特徴にラベル付けする。次いで、これらの画像は非常に迅速に比較されて、これらの画像が多くの共通する特徴を有するかどうか、したがって、同じオブジェクトまたは位置のものであり得るかを確認することができる。特徴整合プロセスは、辞書を使用せずに、2つの画像内で同じである特徴を識別する任意のプロセスである。
[0048]ループ閉鎖が検出されると、任意のループ閉鎖エラーが見出されて、明らかにされることが可能である。例えば、ループ閉鎖は、3Dモデルのその部分と現在の奥行きマップとが同じカメラ位置を有することを識別する。しかし、追跡エラーにより、これは事実と異なる場合がある。加えて、ループ閉鎖エラーのタイプが識別され得る。例えば、ループ閉鎖が、カメラの結合された6自由度姿勢推定内のドリフトの結果であるなど、グローバルのループ閉鎖であるかどうかどうか、またはエラーが、個々のフレームもしくは大きく重複するフレームのシーケンスからの不良な6自由度姿勢推定の結果である、ローカルのエラーであるかどうか。ループ閉鎖エラーは、グローバルループ閉鎖エラーとローカルループ閉鎖エラーの組合せであってよい。ループ閉鎖手順812に従って、このエラーを削減し、3Dモデルの一貫性と精度とを改善する。エネルギー関数を最適化するなど、任意の適切なループ閉鎖手順が使用されてよい。
[0049]図9は、図3のフレーム整列エンジン318のより詳細な概略図である。フレーム整列エンジン908は、少なくとも1つのCPUと1つまたは複数のGPUとを有するコンピューティングデバイスにおいて実施されるコンピュータである。フレーム整列エンジン908は、オプションである平面抽出構成要素910と反復最近傍点プロセス(iterative closest point process)912とを備える。反復最近傍点プロセスは、下でより詳細に説明されるように、投影データ関連付けと点平面エラー基準とを使用する。フレーム整列エンジンは、デプスカメラから現在の奥行きマップ900を受信する。これは、移動先(destination)奥行きマップとも呼ばれる。いくつかの例では、フレーム整列エンジンは、デプスカメラからの以前の奥行きマップフレームである移動元(source)奥行きマップ902も受信する。他の例では、フレーム整列エンジンは、移動元奥行きマップの高密度表面モデル推定906を利用する。フレーム整列エンジンの出力は、現在のフレームと移動元フレームとを整列させるための変換の登録パラメータのセット(すなわち、フレーム推定)である。いくつかの例では、これらの登録パラメータは、実世界座標に相対的なデプスカメラ302の回転および移動を記述するSE行列の形で6自由度(6DOF)姿勢推定として提供される。より形式的には、この変換行列は以下のように表現され得る:
Figure 0005881743
[0050]式中、Tは奥行き画像フレームkに関する変換行列であり、Rはフレームkに関するカメラ回転であり、tはフレームkにおけるカメラ移動であり、ユークリッド群
Figure 0005881743
である。カメラ空間内の(すなわち、カメラの視点からの)座標は、この変換行列で乗算することによって、実世界座標にマッピングされることが可能である。しかし、登録パラメータは任意の適切な形態で提供され得る。これらの登録パラメータは、デプスカメラの6自由度姿勢推定のリアルタイムシリーズを生み出すために、リアルタイムトラッカー316によって使用される。
[0051]図10は、フレーム整列エンジンにおけるある例示的な反復プロセスの流れ図である。登録パラメータの初期推定が形成される1000。これらの登録パラメータは、現在のフレームと移動元フレームとを整列させるための変換の登録パラメータである。この初期推定は、任意の適切な方法で形成される。例えば、初期推定を形成するために、情報の以下のソースのうちの1つまたは複数が使用され得る。すなわち、ゲーム状態、ゲームメタデータ、マップデータ、RGBカメラ出力、姿勢センサー出力、GPSデータである。別の例では、カメラがそのカメラの以前のモーションパス(motion path)に関する情報をどこで使用しているかを予測することによって、初期推定が形成される。例えば、カメラは、一定速度または一定の加速度を有すると仮定することができる。カメラが時間tにいることになる場所を推定し、それにより、登録パラメータの推定を取得するために、時間0から時間t−1までのカメラのモーションパスが使用され得る。
[0052]初期推定を使用して、現在のフレームと移動元フレーム(奥行きマップまたは推定される奥行きマップ)との間の対応する点の対が演算される1002。対応する点の対は、ある奥行きマップからの点およびもう1つの奥行きマップからの点であり、この場合、それらの点はシーン内の同じ実世界の点から発生したと推定される。「点」という用語は、ここで、画素、または近接する画素のグループもしくはパッチを指すために使用される。点の可能な組合せの数が膨大であるため、この対応問題は非常に困難である。カラー画像またはグレースケール画像を使用する以前の手法は、それぞれの画像内の線、縁、角などの形状を識別し、次いで、画像の対同士の間でそれらの形状を整合させることを試みることによって、この問題に対処した。対照的に、本明細書で説明される実施形態は、奥行きマップ内の形状を見出す必要なしに、対応する点を識別する。対応する点がどのように演算されるかに関するさらなる詳細が図11を参照して下で提示される。演算された対応する点に適用されるエラー基準を最適化する、登録パラメータの更新された推定が計算される1004。
[0053]収束に達しているかどうかを評価するための検査が行われる1006。達している場合、更新された推定内には変化がわずかに存在するか、またはまったく存在せず、登録パラメータが出力される1008。達していない場合、図10に示される反復プロセスが繰り返す。
[0054]図11を参照して、次に、対応する点の対がどのように計算されるかに関するさらなる詳細が提示される。いくつかの実施形態では、現在の奥行きマップおよび移動元奥行きマップのうちのいずれかまたは両方からのサンプル点が利用され1100、それらのサンプル点はそこから対応する点の対を見出すための候補として使用される。サンプリングは、指定された割合の点を無作為に選択することによって達成され得る。別の実施形態では、サンプリングはそれらの点の表面法線を考慮に入れる形で達成される。例えば、(下でより詳細に説明されるように)それぞれの点に関して表面法線が計算され、異なる範囲の表面法線値に関する複数のビンを用いてヒストグラムが生み出される。ビンを通して均一のサンプリングが達成されるように、サンプリングが実行される。
[0055]サンプリングを使用することによって、演算コストが削減される利益が達成される。しかし、リスクは、サンプリングが使用されるとき、このプロセスの精度および頑強さが削減されることである。これは、サンプル点がそこからそれらのサンプルが取られた奥行きマップの良好な表示を提供しない可能性があるためである。例えば、これらのサンプルは、そのプロセスが、そのプロセスが解決策として識別するが、実際には、全世界的に最適な解決策ではなく局所的に最適な解決策であることを表す対応する点のセットを見出すのを可能にする場合がある。
[0056]とはいえ、何らかのサンプリングを使用することは必須ではない。このプロセスも実行可能であり、すべての利用可能な点が使用されるとき、良好な結果を提示する。この場合、本明細書で説明されるGPU実装形態は、このプロセスが、300,000以上もの数であり得る、それぞれの奥行きマップ内のすべての点に関してリアルタイムで動作することを可能にする。図11を参照して下で説明される例では、サンプリングを使用するプロセスが説明される。しかし、図11のプロセスは、サンプリングが実行されない場合にも適用可能である。
[0057]図11に示されるように、サンプル点(または、サンプリングが行われない場合、それぞれの利用可能な点)の表面法線が演算される1102。例えば、これは、奥行きマップ内の4つの(以上の)最近傍の近接点を見出し、それら近隣と点自体とを組み込む表面パッチを演算することによって、所与の点に関して達成される。次いで、その点の位置においてその表面パッチに対する法線が計算される。
[0058]点の対応する対を見出すプロセス1104に従う。これは、次に、高密度3Dモデルを使用せずに移動元奥行きマップと現在の奥行きマップとが利用可能な事例で説明される。移動元奥行きマップからのそれぞれのサンプリングされた移動元点に関して、その移動元奥行きマップに関連するカメラ位置から、サンプリングされた移動元点を介して、移動先奥行きマップ内の移動先点上に光線が投影される1106。場合によっては、移動先点は、投影された光線に沿ってサンプリングされた移動元点の前方にある場合がある。この投影プロセスは、「投影データ関連付け」と呼ばれる場合がある。次いで、移動先点周囲の、移動先点を含む候補の対応する点に関して検索が行われる1108。例えば、この検索は、サンプリングされた移動元点の表面法線に適合する表面法線を有する点に関する。表面法線が互いの指定された範囲内にあり、移動先点の指定されたユークリッド距離内にある場合、表面法線は適合すると言える。例えば、この指定された範囲はユーザー構成可能である。
[0059]この検索の結果として、1つまたは複数の候補の対応する点が見出される。それらの候補の対応する点から、移動元点の対を形成するために、単一の点が選択される1110。この選択は、距離基準に基づいて行われる。例えば、移動元点と候補の対応する点のそれぞれとの間のユークリッド距離が計算される。次いで、最小のユークリッド距離を提示する対が選択される。次いで、サンプリングされた移動元点のそれぞれに関して、または、サンプリングが行われない場合、移動元奥行きマップの利用可能な点のそれぞれに関して、囲みのプロセス1104が繰り返される。
[0060]いくつかの実施形態では、対応する点の対のそれぞれに重みが割り当てられる1112。例えば、重みは、RGBカメラまたはその他のセンサーなど、他の移動元からの情報を使用して割り当てられることが可能である。ある例では、デプスカメラの測定特性に関する重みが演算され、対応する点の対のそれぞれと共に記憶される。これらの重みは、結果の品質を改善するために、エラー基準を適用するプロセスの間に使用され得る。
[0061]いくつかの実施形態では、奥行きマップ境界上または奥行きマップ境界近くの点を含む対は拒絶される1114。これは2つの奥行きマップ同士の間の重複が単に部分的であるエラーを回避するのに役立つ。対を拒絶するために他の基準が使用されてもよい。例えば、いくつかの実施形態では、図9の構成要素910を参照して上で説明されたような平面抽出が実行される。その場合、平面上にある対は拒絶され得る。
[0062]いくつかの実施形態では、デプスカメラによって捕捉されているシーンの高密度3Dモデルから移動元奥行きマップが推定または予測される。この場合、図12の方法に従う。シーンの高密度3DモデルはGPUメモリ内に記憶されたシーンの3D表面表現を含む。3Dモデルを記憶するその他の方法が使用されてよい。例えば、高密度3Dモデルは、スライスおよび行があるメモリブロックサイズで整列するように、オプションで、何らかのパディング(padding)を用いて、スライス・行・列順序(slice−row−column order)で線形アレイとして記憶されることが可能である(この点に関するさらなる詳細は下で提示される)。八分木、粗・微表現、ポリゴンメッシュなどのメッシュベースの表現など、3Dモデルを記憶するその他の方法が使用されてよい。
[0063]次に、高密度3DモデルがGPU上に「スライス・行・列」順序で記憶される事例に関するさらなる詳細が提示される。この場合、モデルは、3D体積を表すために使用されるメモリの位置の線形アレイとして記憶され得る。これは、GPUメモリ上に記憶されたデータに対する高速な並列アクセスを提供する線形ピッチメモリ(linear pitched memory)を使用して、それぞれのボクセルをメモリアレイインデックス(memory aray index)にマッピングすることによって達成される。
[0064]サンプルポイントに対して近接ポイントを評価することによって、上で述べたように、現在の奥行きマップのサンプル点の表面法線が演算される1200。予測された移動元奥行きマップに関して、それぞれの予測されたサンプル点に関する高密度3Dモデルから表面法線予測と表面位置予測とが演算される1202。予測されたサンプル点は、現在の奥行きマップからのサンプル点と同じ画素位置にある、高密度3Dモデルからの点である。これは、高密度表面モデルの体積内に光線を投影することによって行われる。光線は、現在の奥行きマップ内のサンプル点に対応する、3Dモデルの面上の点を通して、現在の奥行きマップに関連して推定されたカメラ位置およびカメラ姿勢からその3Dモデル内に投影される。これは、3Dモデルが体積表現として記憶される状況に当てはまる。メッシュベースの表現を使用して3Dモデルが記憶される状況では、仮想奥行き画像表現を形成するために、この表現がまず投影される。次いで、光線はその仮想奥行き画像表現内に投影され得る。その光線に沿って進み、表面密度関数を評価して、第1の正から負へのゼロ交差を見出すことによって、その光線に沿って第1の可視表面が見出される。光線に沿った表面密度関数の交差点の推定から、関連する副画素世界点(sub pixel world point)が見出される。一例では、ゼロが生じる副画素世界点を見出すために、検出されたゼロ交差点の両側で3重線形サンプリングされた点(trilinearly sampled points)を仮定すると、光線に沿った表面交差点は簡単な直線補間を使用して演算され得る。この副画素世界点は、予測される表面位置として利用される。この位置において予測される表面法線を見出すために、三線補間を使用して、表面密度関数勾配の有限差分が見出される。表面法線予測および表面位置予測を計算するプロセスは、それぞれの光線を並行して処理して、GPUで実施され得る。
[0065](高密度3Dモデルから取得された)それぞれの予測されたサンプル点に関して、プロセス1204に従い、現在の奥行きマップ内の対応する点を識別する。これは図11のプロセス1104に類似している。予測されたサンプル点は移動先奥行きマップ(現在の奥行きマップ)内の移動先点上に投影される1206。次いで、その移動先点と適合する表面法線を有する、移動先点周囲の候補の対応する点に関して検索1208が行われる。それらの候補の対応する点から、距離基準に従って点が選択される1110。例えば、それらの点が互いの指定されたユークリッド距離e1内にあり、その対の表面法線同士の間のドット積が指定された閾値e2より大きい場合、点の対は適合性がある。パラメータe1およびe2は、ユーザー構成可能であってよく、または製造段階で設定されてもよく、それによって、デバイスは特定の設定で使用するために経験的に較正される。
[0066]場合によっては、対応する点の対に重みが割り当てられる1212。いくつかの実施形態では、対が奥行きマップ境界上または奥行きマップ境界近くの少なくとも1つの点を含む場合、対は拒絶される1214。ある例では、デプスカメラの測定特性に関する重みが対応する点の対のそれぞれと共に記憶される。これらの重みは、結果の品質を改善するために、エラー基準を適用するプロセスの間に使用され得る。
[0067]例えば、図11または図12のプロセスを使用して、対応する点の対が識別されると、エラー基準が演算され、最小化されて、図10の反復プロセスが繰り返す。
[0068]ある例では、対応する点の対に関して点平面エラー基準が演算され1300、この基準が最適化されて、更新された登録パラメータを取得する。次に、このプロセスのある例が図13を参照して説明される。このプロセスは、次に説明されるような、リアルタイム処理を取得するために、GPUなど、少なくとも1つの並列演算装置を使用して実施されるように設計される。
[0069]点平面エラー基準を演算することは、それぞれの移動元点から、移動先点を含み、かつ移動先点の近似表面法線と直角に方向付けられた平面までの平方距離の和を演算すること1302であると考えることができる。このプロセスは、この基準を最適化して、登録パラメータの更新されたセットを見出すことを求める。このタイプの最適化問題を解くことは簡単ではなく、通常、かなりの演算リソースを必要とし、したがって、リアルタイム用途に関してこのタイプのプロセスを実施することを困難にする。GPUなど、リアルタイム処理を可能にする並行処理装置を使用する、ある例示的な実装形態が次に説明される。
[0070]対応する点の対がスケーリングおよび移動されることが可能である1304。これは、最適化プロセスの安定性を改善することができるが、必須ではない。
[0071]対応する点のそれぞれの対に関して、数値的な最小二乗最適化を使用してエラー基準を最適化するために、複数の連立方程式を含む線形システムが並列演算装置上で形成される1306。それぞれの線形システムは、6×6行列の形であってよい。複数の行列は並行演算装置上で単一の6×6行列に削減され得る。フレームレートが高い(例えば、毎秒20フレーム以上)ため、任意の2つの連続的なフレーム同士の間の角度に関して微小角近似(カメラ姿勢の変化)を行うことが可能である。すなわち、フレームレートはあまりにも高いため、カメラはフレーム間で少量だけ移動したことになる。この近似を行うことによって、システムのリアルタイム動作が円滑にされる。
[0072]単一の6×6行列はCPUに渡され1308、解かれて、更新された登録パラメータを見出す。この解はスケーリングおよび移動されて1310、1304のスケーリングおよび移動ステップを反転させる。この解の安定性が検査され1312、更新された登録パラメータ1314がこのプロセスによって出力される。
[0073]ある例では、以下の点平面エラー基準が使用されるが、これは必須ではない。その他のエラー基準が使用されてもよい:
Figure 0005881743
[0074]新しい変換Tを取得するために、このエラー基準が使用され得る。使用されるシンボルに関するさらなる詳細が次に提示される。デプスカメラDの現在のフレームkは、画像ドメインu∈U内の画像画素u=(x,y)で較正された奥行き測定値d=D(u)を提供する。これらの測定値は、(同次座標を使用して)v(u)=(xd,yd,d,1)としてカメラの世界空間内に再投影されることが可能である。奥行きセンサーからのそれぞれのフレームは正規グリッド上の表面測定であるため、システムは、近接する再投影されたグリッド点同士の間の有限差分によって推定された、対応する法線ベクトルn(u)を演算することも可能である。SE3変換行列は、時間kにおけるカメラ座標フレームを、
Figure 0005881743
としてグローバルフレームgにマッピングする。(法線ベクトルの同等マッピングは
Figure 0005881743
である。)時間kにおけるグローバル座標系内の3Dモデルの推定はMとして示され、これは、本明細書で説明される体積表現の形で記憶され得る。入射奥行きフレームDは、以前のフレームのカメラ姿勢Tk−1内にレイキャスティングすることによって、完全な3D再構成モデルMk−1の以前のフレームの推定に対して登録される。これは、予測される画像
Figure 0005881743
または、同等に、グローバルモデル点
Figure 0005881743
とモデル法線
Figure 0005881743
のセットをもたらし、式中、i∈Sは対応するインデックスセットである。点平面エラー基準に関する上記の方程式内のシンボルρkは、時間tにおけるカメラとモデル点との間の保護データ関連付けマッピングを表す。
[0075]ある例では、フレーム整列エンジン908によって識別された、対応する点のそれぞれの対は、GPUなど、並列演算装置で並列に処理されることが可能である。したがって、対応する点のそれぞれの対に関して、点平面制約システム(point−to−plane constraint system)の演算式を提示する線形システムが演算される。微小角推定を行うことによって、変換Tは、3要素移動ベクトルtと共に、歪対称行列
Figure 0005881743
によって増分回転の3ベクトルを使用してパラメータ化されることが可能である。線形システムは、線形化されたエラー基準の一次導関数をゼロに設定することによって取得される。この点平面制約システムは、上で述べられた点平面エラー基準の最適化を表す。この演算は、並行演算装置において、対応する点のそれぞれの対に関して並行して発生する。このように、このエラー基準は識別された対応する点のそれぞれに並行して適用される。木縮約(tree reduction)プロセスまたはその他の適切な演算式評価方法を使用して、点のそれぞれの対に関する演算式が評価される。木縮約プロセスは、それによって、木のノードが算術演算を表し、木の葉ノードが値を表す木構図として演算式が表される評価戦略である。この表現は、評価の結果を木の分岐に沿って渡すことによって、木構造に従った順序で評価される。一緒に、並行プロセスからのエラー基準最適化プロセスの結果は単一の6×6行列が出力されるのを可能にする。
[0076]図14は、任意の形態のコンピューティングデバイスおよび/または電子デバイスとして実施されることが可能であり、かつその中でリアルタイムカメラトラッカーの実施形態が実施され得るある例示的な演算ベースのデバイス1404の様々な構成要素を例示する。
[0077]演算ベースのデバイス1404は、ユーザー入力デバイス(例えば、捕捉デバイス1406、ゲームコントローラー1405、キーボード1407、マウス1409)など、1つまたは複数のデバイスから入力を受信および処理するように構成された1つまたは複数の入力インターフェイス1402を備える。このユーザー入力は、ソフトウェアアプリケーションまたはリアルタイムカメラ追跡を制御するために使用されることが可能である。例えば、捕捉デバイス1406は、シーンの奥行きマップを捕捉するように構成されたモバイルデプスカメラであってよい。演算ベースのデバイス1404は、その捕捉デバイス1406のリアルタイム追跡を提供するように構成されることが可能である。
[0078]演算ベースのデバイス1404は、コンピューティングデバイス1404とは分離されてよく、またはコンピューティングデバイス1404と統合されてもよいディスプレイデバイス1408にディスプレイ情報を出力するように構成された出力インターフェイス1410も備える。ディスプレイ情報は、グラフィカルユーザーインターフェイスを提供することができる。ある例では、ディスプレイデバイス1408は、それがタッチ感応ディスプレイデバイスである場合、ユーザー入力デバイスとして機能することも可能である。出力インターフェイス1410は、ディスプレイデバイス以外のデバイス、例えば、局所的に接続された印刷デバイスにデータを出力することもできる。
[0079]コンピュータ実行可能命令は、演算ベースのデバイス1404によってアクセス可能な任意のコンピュータ可読媒体を使用して提供されることが可能である。コンピュータ可読媒体は、例えば、メモリ1412などのコンピュータ記憶媒体と通信媒体とを含むことが可能である。メモリ1412などのコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュールもしくはその他のデータなど、情報を記憶するための任意の方法または技術で実施される揮発性媒体および不揮発性媒体、取外し可能媒体および取外し不可能媒体を含む。コンピュータ記憶媒体は、コンピューティングデバイスによるアクセスのための情報を記憶するために使用されることが可能なRAM、ROM、EPROM、EEPROM、フラッシュメモリもしくはその他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)もしくはその他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくはその他の磁気記憶装置、または任意のその他の非送信式媒体(non−transmission medium)を含むが、これらに限定されない。
[0080]対照的に、通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを、搬送波、もしくはその他の移送媒体など、変調データ信号の形で実施することが可能である。本明細書で定義されるように、コンピュータ記憶媒体は通信媒体を含まない。コンピュータ記憶媒体(メモリ1412)は演算ベースのデバイス1404内に示されているが、記憶媒体は、分散されてよく、または遠隔に配置され、かつネットワークもしくは(例えば、通信インターフェイス1413を使用する)その他の通信リンクを経由してアクセスされてもよい点を理解されよう。
[0081]演算ベースのデバイス1404は、リアルタイムカメラ追跡を提供する目的でデバイスの動作を制御するためにコンピューティング実行可能命令を処理するためのマイクロプロセッサー、グラフィックス処理装置(GPU)、コントローラー、または任意のその他の適切なタイプのプロセッサーであってよい、1つもしくは複数のプロセッサー1400も備える。いくつかの例では、例えば、チップアーキテクチャ上のシステムが使用される場合、プロセッサー1400は、リアルタイムカメラ追跡の方法の一部を(ソフトウェアまたはファームウェアではなく)ハードウェア内で実施する、1つまたは複数の(加速器とも呼ばれる)固定機能ブロックを含むことが可能である。
[0082]アプリケーションソフトウェア1416がデバイス上で実行されるのを可能にするために、オペレーティングシステム1414または任意のその他の適切なプラットフォームソフトウェアを備えたプラットフォームソフトウェアが演算ベースのデバイスに提供されることが可能である。コンピューティングデバイス1404上で実行され得る他のソフトウェアは、フレーム整列エンジン1418(例えば、図9から図13、および上の説明を参照されたい)、ループ閉鎖エンジン1420、自己位置再推定エンジン1422を含む。データストア1424は、以前に受信された奥行きマップ、登録パラメータ、ユーザー構成可能パラメータ、その他のパラメータ、シーンの3Dモデル、ゲーム状態情報、ゲームメタデータ、マップデータ、およびその他のデータなど、データを記憶するために提供される。
[0083]「コンピュータ」という用語は、本明細書で、任意のデバイスが命令を実行することができるような処理機能を備えた任意のデバイスを指すために使用される。そのような処理機能は多くの異なるデバイス内に組み込まれ、したがって、「コンピュータ」という用語は、PC、サーバ、モバイル電話、携帯情報端末、および多くのその他のデバイスを含むことを当業者は理解されよう。
[0084]本明細書で説明された方法は、有形記憶媒体上で、機械可読形態で、例えば、プログラムがコンピュータ上で実行されるとき、本明細書で説明された方法のうちのいずれかのすべてのステップを実行するように適合されたコンピュータプログラムコード手段を備えたコンピュータプログラムの形でソフトウェアによって実行されることが可能であり、この場合、コンピュータプログラムは、コンピュータ可読媒体上で実行され得る。有形(すなわち、一時的でない)記憶媒体の例は、ディスク、サムドライブ、メモリなどを含むが、伝搬信号は含まない。ソフトウェアは、方法ステップが任意の適切な順序で、または同時に実行され得るように、並列プロセッサー上または直列プロセッサー上で実行するのに適している場合がある。
[0085]これは、ソフトウェアが有益、かつ別個で取引可能な商品になり得ることを確認する。ソフトウェアは、「ダム」ハードウェア、すなわち標準ハードウェア上で実行するか、またはそのハードウェアを制御して、所望される機能を実行するソフトウェアを包含することが意図される。ソフトウェアは、所望される機能を実行する目的で、シリコンチップを設計するため、またはユニバーサルプログラマブルチップを構成するために使用されるHDL(ハードウェア記述言語)ソフトウェアなど、ハードウェアの構成を「説明」または定義するソフトウェアを包含することも意図される。
[0086]プログラム命令を記憶するために利用される記憶デバイスはネットワークを通して分散され得ることを当業者は理解されよう。例えば、遠隔コンピュータは、ソフトウェアとして説明されたプロセスのある例を記憶することができる。ローカルコンピュータまたは端末コンピュータは、遠隔コンピュータにアクセスし、ソフトフェアの一部またはすべてをダウンロードして、プログラムを実行することができる。あるいは、ローカルコンピュータは、必要に応じて、ソフトウェアの一部をダウンロードすること、または一部のソフトウェア命令をローカル端末で実行して、一部のソフトウェア命令を遠隔コンピュータ(または、コンピュータネットワーク)で実行することが可能である。当業者に知られている従来技法を利用することによって、ソフトウェア命令のすべてまたは一部が、DSP、プログラマブル論理アレイなど、専用回路によって、実行され得ることを当業者はやはり理解されよう。
[0087]当業者に明らかになるように、本明細書で提示された任意の範囲またはデバイスは、求められる効果を失わずに、拡張または変更されることが可能である。
[0088]本主題は構造的特徴および/または方法論的活動に特定の言語で記述されているが、添付の請求項で定義される主題は、上で説明された特定の機能または活動に限定されるとは限らない点を理解されたい。むしろ、上で説明された特定の特徴および活動は、請求項を実施する例示的な形態として開示される。
[0089]上で説明された利益および利点は、一実施形態に関係する場合があり、またはいくつかの実施形態に関係する場合もあることを理解されよう。これらの実施形態は、述べられた問題のうちのいくつかもしくはすべてを解決する実施形態または述べられた利益および利点のうちのいくつかもしくはすべてを有する実施形態に限定されない。「ある」項目の参照は、それらの項目のうちの1つまたは複数を指すことをさらに理解されよう。
[0090]本明細書で説明された方法のステップは、任意の適切な順序で、または適切な場合、同時に実行されることが可能である。加えて、個々のブロックは、本明細書で説明された主題の趣旨および範囲から逸脱せずに、これらの方法のうちのいずれかから削除されることが可能である。上で説明された例のうちのいずれかの態様は、求められる効果を失わずに、さらなる例を形成するために、説明されたその他の例のうちのいくつかの態様と組み合わされることが可能である。
[0091]「備える」という用語は、本明細書で、識別された方法ブロックまたは方法要素を含むことを意味するために使用されるが、そのようなブロックまたは要素は排他的なリストを含まず、方法または装置は追加のブロックもしくは要素を含むことが可能である。
[0092]好ましい実施形態の上の説明は単なる例として提示され、様々な修正が当業者によって行われることが可能なことを理解されよう。上記の仕様、例、およびデータは、本発明の例示的な実施形態の構造および使用の完全な説明を提供する。本発明の様々な実施形態は上である程度の特殊性を用いて、または1つもしくは複数の個々の実施形態を参照して説明されているが、当業者は、本発明の趣旨または範囲から逸脱せずに、開示された実施形態に多数の変更を行うことが可能である。

Claims (9)

  1. リアルタイムカメラの自己位置再推定の方法であって、
    移動しているモバイルデプスカメラから奥行きマップフレームのシーケンスを受信するステップであって、それぞれの奥行きマップフレームが、それぞれが前記モバイルデプスカメラから前記モバイルデプスカメラによって捕捉されたシーン内の表面までの距離に関係している奥行き値を有する複数の画像要素を備えた、受信するステップと、
    前記奥行きマップフレームを使用して、前記モバイルデプスカメラの位置および姿勢を追跡し、前記奥行きマップフレームを使用して、前記モバイルデプスカメラが移動している環境の3Dモデルを同時に形成するステップと、
    前記モバイルデプスカメラの位置および姿勢の追跡における失敗を検出するステップと、
    前記モバイルデプスカメラによって捕捉された現在の奥行きマップを使用して、前記モバイルデプスカメラの位置および姿勢を再演算することによって、前記モバイルデプスカメラの自己位置を再推定するステップとを含む方法。
  2. 前記追跡における失敗を検出するステップが、前記モバイルデプスカメラの現在の追跡された位置内および以前に追跡された位置内の変化を閾値と比較するステップ、前記モバイルデプスカメラの位置および姿勢を追跡するために使用された反復プロセスの収束の失敗を検出するステップ、ならびに前記モバイルデプスカメラの現在の追跡された位置および姿勢を前記モバイルデプスカメラの動きのモデルを使用して予測された位置および姿勢と比較するステップのうちのいずれかを含む、請求項1に記載の方法。
  3. 前記モバイルデプスカメラの自己位置を再推定するステップが、それぞれが関連するカメラの位置および姿勢を有する、前記モバイルデプスカメラによって以前に収集された奥行きマップフレームである複数のキーフレームから前記現在の奥行きマップに類似するキーフレームを見出すステップを含み、キーフレームを見出すステップが、現在のフレームと類似する垂直表面および水平表面の構成および位置を有するキーフレームを選択するための形状推定プロセスを使用するステップ、ならびに前記モバイルデプスカメラの最後に知られている位置に関係する順序で前記複数のキーフレームを検索するステップのうちのいずれかを含む、請求項1または2に記載の方法。
  4. 前記モバイルデプスカメラの自己位置を再推定するステップが、前記モバイルデプスカメラの知られている以前の動きを前提として、予測される姿勢の分布である、前記モバイルデプスカメラの姿勢の追跡分布を演算するステップと、前記追跡分布から姿勢をサンプリングして、そのサンプリングされた姿勢を使用して、前記現在の奥行きマップおよび以前の奥行きマップを整列させるステップとを含む、請求項1に記載の方法。
  5. 前記モバイルデプスカメラの自己位置を再推定するステップが、前記現在の奥行きマップからのパッチおよび前記環境の前記3Dモデルから取得された複数の以前の奥行きマップからのパッチにランダム決定フォレストを適用して、奥行きマップのテクスチャ特徴である構造的特徴要素のヒストグラムを取得するステップと、前記ヒストグラムの点で前記現在の奥行きマップに類似する以前の奥行きマップを選択するステップとを含む、請求項1に記載の方法。
  6. 移動しているモバイルデプスカメラから奥行きマップフレームのシーケンスを受信するように構成された入力部であって、それぞれの奥行きマップフレームが、それぞれが前記モバイルデプスカメラから前記モバイルデプスカメラによって捕捉されたシーン内の表面までの距離に関係している奥行き値を有する複数の画像要素を備えた、入力部と、
    前記奥行きマップフレームを使用して、前記モバイルデプスカメラの位置および姿勢を追跡するように構成されたフレーム整列エンジンと、
    前記奥行きマップフレームを使用して、前記モバイルデプスカメラが移動している環境内の3Dモデルを形成するように構成された3Dモデル形成システムと、
    前記モバイルデプスカメラの位置および姿勢の追跡における失敗を検出し、かつ、前記モバイルデプスカメラによって捕捉された現在の奥行きマップと、前記3Dモデルから取得された少なくとも1つの以前の奥行きマップとを使用して、前記モバイルデプスカメラの位置および姿勢を再演算することによって、前記モバイルデプスカメラの自己位置を再推定するように構成された自己位置再推定エンジンと
    を備えるリアルタイムカメラの自己位置再推定システム。
  7. 前記自己位置再推定エンジンが、前記現在の奥行きマップからのパッチおよび前記環境の前記3Dモデルから取得された複数の以前の奥行きマップからのパッチにランダム決定フォレストを適用して、奥行きマップのテクスチャ特徴である構造的特徴要素のヒストグラムを取得し、かつ、前記ヒストグラムの点で前記現在の奥行きマップに類似する以前の奥行きマップを選択するように構成される、請求項6に記載のシステム。
  8. 前記自己位置再推定エンジンが、それぞれが関連するカメラの位置および姿勢を有する、前記モバイルデプスカメラによって以前に収集された奥行きマップフレームである複数のキーフレームから前記現在の奥行きマップに類似するキーフレームを見出すように構成される、請求項6に記載のシステム。
  9. 前記自己位置再推定エンジンが、現在のフレームと類似する垂直表面および水平表面の構成および位置を有するキーフレームを選択するための形状推定プロセスを使用するステップ、ならびに前記モバイルデプスカメラの最後に知られている位置に関係する順序で前記複数のキーフレームを検索するステップのうちのいずれかによってキーフレームを見出すように構成される、請求項8に記載のシステム。
JP2013552530A 2011-01-31 2012-01-09 奥行きマップを使用したモバイルカメラの自己位置推定 Active JP5881743B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/017,474 2011-01-31
US13/017,474 US8711206B2 (en) 2011-01-31 2011-01-31 Mobile camera localization using depth maps
PCT/US2012/020681 WO2012106068A2 (en) 2011-01-31 2012-01-09 Mobile camera localization using depth maps

Publications (2)

Publication Number Publication Date
JP2014511591A JP2014511591A (ja) 2014-05-15
JP5881743B2 true JP5881743B2 (ja) 2016-03-09

Family

ID=46527288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013552530A Active JP5881743B2 (ja) 2011-01-31 2012-01-09 奥行きマップを使用したモバイルカメラの自己位置推定

Country Status (9)

Country Link
US (1) US8711206B2 (ja)
EP (1) EP2671384B1 (ja)
JP (1) JP5881743B2 (ja)
KR (1) KR101896131B1 (ja)
CN (1) CN102609942B (ja)
AR (1) AR084952A1 (ja)
HK (1) HK1171853A1 (ja)
TW (1) TWI467494B (ja)
WO (1) WO2012106068A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10529076B2 (en) 2015-05-14 2020-01-07 Sony Corporation Image processing apparatus and image processing method

Families Citing this family (230)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8506404B2 (en) * 2007-05-07 2013-08-13 Samsung Electronics Co., Ltd. Wireless gaming method and wireless gaming-enabled mobile terminal
US8503720B2 (en) 2009-05-01 2013-08-06 Microsoft Corporation Human body pose estimation
US9772394B2 (en) 2010-04-21 2017-09-26 Faro Technologies, Inc. Method and apparatus for following an operator and locking onto a retroreflector with a laser tracker
US8942917B2 (en) 2011-02-14 2015-01-27 Microsoft Corporation Change invariant scene recognition by an agent
US10972680B2 (en) * 2011-03-10 2021-04-06 Microsoft Technology Licensing, Llc Theme-based augmentation of photorepresentative view
WO2012141868A1 (en) 2011-04-15 2012-10-18 Faro Technologies, Inc. Enhanced position detector in laser tracker
US9686532B2 (en) 2011-04-15 2017-06-20 Faro Technologies, Inc. System and method of acquiring three-dimensional coordinates using multiple coordinate measurement devices
US9482529B2 (en) 2011-04-15 2016-11-01 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
US8760499B2 (en) * 2011-04-29 2014-06-24 Austin Russell Three-dimensional imager and projection device
US20120293613A1 (en) * 2011-05-17 2012-11-22 Occipital, Inc. System and method for capturing and editing panoramic images
KR101366860B1 (ko) * 2011-09-20 2014-02-21 엘지전자 주식회사 이동 로봇 및 이의 제어 방법
US8831336B2 (en) * 2011-11-11 2014-09-09 Texas Instruments Incorporated Method, system and computer program product for detecting an object in response to depth information
US20130155048A1 (en) * 2011-12-14 2013-06-20 Advanced Micro Devices, Inc. Three-dimensional graphics construction and user interface
DE102012201193B3 (de) * 2012-01-27 2013-06-13 Sirona Dental Systems Gmbh Verfahren und Referenzmodell zur Überprüfung eines Vermessungssystems
US10600235B2 (en) * 2012-02-23 2020-03-24 Charles D. Huston System and method for capturing and sharing a location based experience
US9536338B2 (en) * 2012-07-31 2017-01-03 Microsoft Technology Licensing, Llc Animating objects using the human body
KR101893788B1 (ko) * 2012-08-27 2018-08-31 삼성전자주식회사 다시점 카메라간 정합 장치 및 방법
US8633970B1 (en) * 2012-08-30 2014-01-21 Google Inc. Augmented reality with earth data
US9161019B2 (en) 2012-09-10 2015-10-13 Aemass, Inc. Multi-dimensional data capture of an environment using plural devices
US9332243B2 (en) 2012-10-17 2016-05-03 DotProduct LLC Handheld portable optical scanner and method of using
US10674135B2 (en) * 2012-10-17 2020-06-02 DotProduct LLC Handheld portable optical scanner and method of using
DE202012104890U1 (de) 2012-12-14 2013-03-05 Faro Technologies, Inc. Vorrichtung zum optischen Abtasten und Vermessen einer Umgebung
DE102012112321B4 (de) 2012-12-14 2015-03-05 Faro Technologies, Inc. Vorrichtung zum optischen Abtasten und Vermessen einer Umgebung
DE102012112322B4 (de) * 2012-12-14 2015-11-05 Faro Technologies, Inc. Verfahren zum optischen Abtasten und Vermessen einer Umgebung
CN103903219A (zh) * 2012-12-26 2014-07-02 联想(北京)有限公司 一种信息处理方法及系统
US9857470B2 (en) 2012-12-28 2018-01-02 Microsoft Technology Licensing, Llc Using photometric stereo for 3D environment modeling
US9251590B2 (en) * 2013-01-24 2016-02-02 Microsoft Technology Licensing, Llc Camera pose estimation for 3D reconstruction
US9083960B2 (en) * 2013-01-30 2015-07-14 Qualcomm Incorporated Real-time 3D reconstruction with power efficient depth sensor usage
US9940553B2 (en) 2013-02-22 2018-04-10 Microsoft Technology Licensing, Llc Camera/object pose from predicted coordinates
US20140240469A1 (en) * 2013-02-28 2014-08-28 Motorola Mobility Llc Electronic Device with Multiview Image Capture and Depth Sensing
US9407837B2 (en) 2013-02-28 2016-08-02 Google Inc. Depth sensor using modulated light projector and image sensor with color and IR sensing
US20150002734A1 (en) 2013-07-01 2015-01-01 Motorola Mobility Llc Electronic Device with Modulated Light Flash Operation for Rolling Shutter Image Sensor
US9142019B2 (en) * 2013-02-28 2015-09-22 Google Technology Holdings LLC System for 2D/3D spatial feature processing
US9398287B2 (en) * 2013-02-28 2016-07-19 Google Technology Holdings LLC Context-based depth sensor control
US9025823B2 (en) 2013-03-12 2015-05-05 Qualcomm Incorporated Tracking texture rich objects using rank order filtering
US9041914B2 (en) 2013-03-15 2015-05-26 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
CN104103062A (zh) * 2013-04-08 2014-10-15 富士通株式会社 图像处理设备和图像处理方法
WO2014169238A1 (en) 2013-04-11 2014-10-16 Digimarc Corporation Methods for object recognition and related arrangements
EP2800055A1 (en) * 2013-04-30 2014-11-05 3DDynamics Bvba Method and system for generating a 3D model
US9674507B2 (en) * 2013-04-30 2017-06-06 Qualcomm Incorporated Monocular visual SLAM with general and panorama camera movements
US20140324400A1 (en) * 2013-04-30 2014-10-30 Marquette University Gesture-Based Visualization System for Biomedical Imaging and Scientific Datasets
US9367960B2 (en) * 2013-05-22 2016-06-14 Microsoft Technology Licensing, Llc Body-locked placement of augmented reality objects
WO2014204330A1 (en) * 2013-06-17 2014-12-24 3Divi Company Methods and systems for determining 6dof location and orientation of head-mounted display and associated user movements
DE112014002943T5 (de) * 2013-06-19 2016-03-10 Mitsubishi Electric Corporation Verfahren zur Registrierung von Daten unter Verwendung eines Satzes von Grundelementen
US9965893B2 (en) * 2013-06-25 2018-05-08 Google Llc. Curvature-driven normal interpolation for shading applications
KR102137264B1 (ko) * 2013-07-09 2020-07-24 삼성전자주식회사 카메라 포즈 추정 장치 및 방법
US9286717B2 (en) * 2013-07-30 2016-03-15 Hewlett-Packard Development Company, L.P. 3D modeling motion parameters
US9646384B2 (en) 2013-09-11 2017-05-09 Google Technology Holdings LLC 3D feature descriptors with camera pose information
CN106304842A (zh) * 2013-10-03 2017-01-04 舒朗科技公司 用于定位和地图创建的增强现实系统和方法
CN104574349B (zh) * 2013-11-14 2017-04-12 广东朗呈医疗器械科技有限公司 恢复相机位置的方法
US9489765B2 (en) * 2013-11-18 2016-11-08 Nant Holdings Ip, Llc Silhouette-based object and texture alignment, systems and methods
US9336440B2 (en) * 2013-11-25 2016-05-10 Qualcomm Incorporated Power efficient use of a depth sensor on a mobile device
US9432636B2 (en) * 2013-11-26 2016-08-30 Microsoft Technology Licensing, Llc Large-scale surface reconstruction that is robust against tracking and mapping errors
US9747680B2 (en) 2013-11-27 2017-08-29 Industrial Technology Research Institute Inspection apparatus, method, and computer program product for machine vision inspection
CN103677211B (zh) * 2013-12-09 2016-07-06 华为软件技术有限公司 实现增强现实应用的装置及方法
WO2015085483A1 (en) 2013-12-10 2015-06-18 SZ DJI Technology Co., Ltd. Sensor fusion
US9303999B2 (en) * 2013-12-30 2016-04-05 Google Technology Holdings LLC Methods and systems for determining estimation of motion of a device
TWI530909B (zh) 2013-12-31 2016-04-21 財團法人工業技術研究院 影像合成系統及方法
CN106105192B (zh) 2014-01-03 2021-05-18 英特尔公司 通过深度相机的实时3d重建
CN103745498B (zh) * 2014-01-16 2017-01-04 中国科学院自动化研究所 一种基于图像的快速定位方法
KR102209008B1 (ko) 2014-02-17 2021-01-28 삼성전자주식회사 카메라 포즈 추정 장치 및 카메라 포즈 추정 방법
US9626766B2 (en) * 2014-02-28 2017-04-18 Microsoft Technology Licensing, Llc Depth sensing using an RGB camera
US9158971B2 (en) * 2014-03-03 2015-10-13 Xerox Corporation Self-learning object detectors for unlabeled videos using multi-task learning
US20150332464A1 (en) * 2014-05-19 2015-11-19 Occipital, Inc. Methods for automatic registration of 3d image data
US9613298B2 (en) 2014-06-02 2017-04-04 Microsoft Technology Licensing, Llc Tracking using sensor data
US9311565B2 (en) * 2014-06-16 2016-04-12 Sony Corporation 3D scanning with depth cameras using mesh sculpting
US9373190B2 (en) 2014-07-09 2016-06-21 Google Inc. High-quality stereo reconstruction featuring depth map alignment and outlier identification
CN105447886A (zh) * 2014-08-26 2016-03-30 上海云罡同汇视觉艺术设计有限公司 动感影院播放控制方法
JP2016045874A (ja) * 2014-08-26 2016-04-04 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
JP6220323B2 (ja) * 2014-09-05 2017-10-25 株式会社東芝 オブジェクト検索装置およびその検索方法
JP6278539B2 (ja) 2014-09-05 2018-02-14 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 状況に基づく飛行モード選択
JP6181300B2 (ja) 2014-09-05 2017-08-16 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 無人航空機の速度を制御するシステム
EP3428766B1 (en) 2014-09-05 2021-04-07 SZ DJI Technology Co., Ltd. Multi-sensor environmental mapping
US9773155B2 (en) * 2014-10-14 2017-09-26 Microsoft Technology Licensing, Llc Depth from time of flight camera
TWI552597B (zh) * 2014-11-12 2016-10-01 觸動創意股份有限公司 行動無線環物攝影之系統及其方法
US9792521B2 (en) * 2014-12-26 2017-10-17 Here Global B.V. Extracting feature geometries for localization of a device
EP3040941B1 (en) * 2014-12-29 2017-08-02 Dassault Systèmes Method for calibrating a depth camera
EP3248029A4 (en) 2015-01-19 2018-10-03 The Regents of the University of Michigan Visual localization within lidar maps
CN107209565B (zh) * 2015-01-20 2020-05-05 微软技术许可有限责任公司 用于显示固定大小的增强现实对象的方法和系统
US9779512B2 (en) * 2015-01-29 2017-10-03 Microsoft Technology Licensing, Llc Automatic generation of virtual materials from real-world materials
US9684831B2 (en) * 2015-02-18 2017-06-20 Qualcomm Incorporated Adaptive edge-like feature selection during object detection
US9852543B2 (en) 2015-03-27 2017-12-26 Snap Inc. Automated three dimensional model generation
WO2016154869A1 (en) * 2015-03-31 2016-10-06 SZ DJI Technology Co., Ltd. System and method for mobile platform operation
US9984519B2 (en) * 2015-04-10 2018-05-29 Google Llc Method and system for optical user recognition
EP3078935A1 (en) * 2015-04-10 2016-10-12 The European Atomic Energy Community (EURATOM), represented by the European Commission Method and device for real-time mapping and localization
US9964402B2 (en) * 2015-04-24 2018-05-08 Faro Technologies, Inc. Two-camera triangulation scanner with detachable coupling mechanism
GB2538751A (en) * 2015-05-27 2016-11-30 Imp College Of Science Tech And Medicine Modelling a three-dimensional space
JP6570327B2 (ja) 2015-06-05 2019-09-04 キヤノン株式会社 制御装置、撮像装置、制御方法、プログラム、および、記憶媒体
KR102114969B1 (ko) * 2015-06-08 2020-06-08 삼성전자주식회사 광학 장치 및 깊이 정보 생성 방법
EP3106912A1 (en) * 2015-06-17 2016-12-21 Thomson Licensing An apparatus and a method for obtaining a registration error map representing a level of fuzziness of an image
US20160379405A1 (en) * 2015-06-26 2016-12-29 Jim S Baca Technologies for generating computer models, devices, systems, and methods utilizing the same
KR101835434B1 (ko) 2015-07-08 2018-03-09 고려대학교 산학협력단 투영 이미지 생성 방법 및 그 장치, 이미지 픽셀과 깊이값간의 매핑 방법
WO2017007166A1 (ko) * 2015-07-08 2017-01-12 고려대학교 산학협력단 투영 이미지 생성 방법 및 그 장치, 이미지 픽셀과 깊이값간의 매핑 방법
US9738399B2 (en) * 2015-07-29 2017-08-22 Hon Hai Precision Industry Co., Ltd. Unmanned aerial vehicle control method and unmanned aerial vehicle using same
EP3332217B1 (en) * 2015-08-03 2021-11-10 TomTom Global Content B.V. Methods and systems for generating and using localisation reference data
CN106528398B (zh) * 2015-09-15 2019-09-06 网易(杭州)网络有限公司 游戏软件性能的可视分析方法
CN105204808B (zh) * 2015-09-25 2018-09-04 小米科技有限责任公司 图片的投射方法、装置及终端设备
CN105352508A (zh) * 2015-10-22 2016-02-24 深圳创想未来机器人有限公司 机器人定位导航方法及装置
US10580198B2 (en) * 2015-11-16 2020-03-03 Nvidia Corporation System and method for optimized sparse volume rendering
US10341633B2 (en) * 2015-11-20 2019-07-02 Qualcomm Incorporated Systems and methods for correcting erroneous depth information
US10220172B2 (en) 2015-11-25 2019-03-05 Resmed Limited Methods and systems for providing interface components for respiratory therapy
US11010956B2 (en) * 2015-12-09 2021-05-18 Imagination Technologies Limited Foveated rendering
US20170171525A1 (en) 2015-12-14 2017-06-15 Sony Corporation Electronic system including image processing unit for reconstructing 3d surfaces and iterative triangulation method
US9996933B2 (en) 2015-12-22 2018-06-12 Qualcomm Incorporated Methods and apparatus for outlier detection and correction of structured light depth maps
US10372968B2 (en) 2016-01-22 2019-08-06 Qualcomm Incorporated Object-focused active three-dimensional reconstruction
CN106997582A (zh) * 2016-01-22 2017-08-01 北京三星通信技术研究有限公司 飞行时间三维传感器的运动模糊消除方法和设备
US10229502B2 (en) 2016-02-03 2019-03-12 Microsoft Technology Licensing, Llc Temporal time-of-flight
US10257505B2 (en) 2016-02-08 2019-04-09 Microsoft Technology Licensing, Llc Optimized object scanning using sensor fusion
US10482681B2 (en) 2016-02-09 2019-11-19 Intel Corporation Recognition-based object segmentation of a 3-dimensional image
US10373380B2 (en) 2016-02-18 2019-08-06 Intel Corporation 3-dimensional scene analysis for augmented reality operations
US11232583B2 (en) * 2016-03-25 2022-01-25 Samsung Electronics Co., Ltd. Device for and method of determining a pose of a camera
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
CN106095773B (zh) * 2016-05-19 2019-04-23 西安电子科技大学 基于最短联合路径的深度图上采样方法
US10129523B2 (en) 2016-06-22 2018-11-13 Microsoft Technology Licensing, Llc Depth-aware reprojection
US10237531B2 (en) 2016-06-22 2019-03-19 Microsoft Technology Licensing, Llc Discontinuity-aware reprojection
US10573018B2 (en) * 2016-07-13 2020-02-25 Intel Corporation Three dimensional scene reconstruction based on contextual analysis
KR102529120B1 (ko) * 2016-07-15 2023-05-08 삼성전자주식회사 영상을 획득하는 방법, 디바이스 및 기록매체
JP2018014579A (ja) * 2016-07-20 2018-01-25 株式会社日立製作所 カメラトラッキング装置および方法
EP3943888A1 (en) 2016-08-04 2022-01-26 Reification Inc. Methods for simultaneous localization and mapping (slam) and related apparatus and systems
KR102420857B1 (ko) * 2016-08-30 2022-07-15 스냅 인코포레이티드 동시 로컬화 및 매핑을 위한 시스템 및 방법
US10447998B2 (en) 2016-09-30 2019-10-15 Intel Corporation Power efficient long range depth sensing
US11195132B2 (en) * 2016-10-31 2021-12-07 International Business Machines Corporation System, method and computer program product for characterizing object status and determining a maintenance schedule
US11042161B2 (en) 2016-11-16 2021-06-22 Symbol Technologies, Llc Navigation control method and apparatus in a mobile automation system
EP3343502B1 (en) * 2016-12-28 2019-02-20 Dassault Systèmes Depth sensor noise
US10552981B2 (en) 2017-01-16 2020-02-04 Shapetrace Inc. Depth camera 3D pose estimation using 3D CAD models
US10843068B2 (en) * 2017-01-18 2020-11-24 Xvisio Technology Corp. 6DoF inside-out tracking game controller
US10535156B2 (en) * 2017-02-03 2020-01-14 Microsoft Technology Licensing, Llc Scene reconstruction from bursts of image data
CN106940186B (zh) * 2017-02-16 2019-09-24 华中科技大学 一种机器人自主定位与导航方法及系统
KR102309297B1 (ko) * 2017-03-31 2021-10-06 엘지전자 주식회사 단말기 및 그 제어 방법
CN107440712A (zh) * 2017-04-13 2017-12-08 浙江工业大学 一种基于深度感应器的脑电信号电极采集方法
US11367092B2 (en) * 2017-05-01 2022-06-21 Symbol Technologies, Llc Method and apparatus for extracting and processing price text from an image set
US11093896B2 (en) 2017-05-01 2021-08-17 Symbol Technologies, Llc Product status detection system
US10949798B2 (en) 2017-05-01 2021-03-16 Symbol Technologies, Llc Multimodal localization and mapping for a mobile automation apparatus
DE112018002314T5 (de) 2017-05-01 2020-01-23 Symbol Technologies, Llc Verfahren und vorrichtung zur erkennung eines objektstatus
US10726273B2 (en) 2017-05-01 2020-07-28 Symbol Technologies, Llc Method and apparatus for shelf feature and object placement detection from shelf images
US11449059B2 (en) 2017-05-01 2022-09-20 Symbol Technologies, Llc Obstacle detection for a mobile automation apparatus
EP3619683A1 (en) * 2017-05-04 2020-03-11 MIM Software, Inc. System and method for predictive fusion
WO2018201423A1 (en) 2017-05-05 2018-11-08 Symbol Technologies, Llc Method and apparatus for detecting and interpreting price label text
CN107123142B (zh) * 2017-05-09 2020-05-01 北京京东尚科信息技术有限公司 位姿估计方法和装置
US10325409B2 (en) 2017-06-16 2019-06-18 Microsoft Technology Licensing, Llc Object holographic augmentation
EP3646583A4 (en) 2017-06-29 2021-07-14 Open Space Labs, Inc. AUTOMATED SPATIAL INDEXING OF IMAGES ON THE BASIS OF FLOOR PLAN FEATURES
US11364637B2 (en) 2017-07-18 2022-06-21 Hangzhou Taro Positioning Technology Co., Ltd. Intelligent object tracking
JP6856914B2 (ja) * 2017-07-18 2021-04-14 ハンジョウ タロ ポジショニング テクノロジー カンパニー リミテッドHangzhou Taro Positioning Technology Co.,Ltd. インテリジェントな物体追跡
CN109308678B (zh) * 2017-07-28 2023-10-27 株式会社理光 利用全景图像进行重定位的方法、装置及设备
US20200218279A1 (en) * 2017-08-30 2020-07-09 Qualcomm Incorporated Robust Navigation of a Robotic Vehicle
CN107767417B (zh) * 2017-09-11 2021-06-25 广州慧玥文化传播有限公司 基于特征点确定mr头显设备输出的虚拟景象的方法及系统
US10296798B2 (en) * 2017-09-14 2019-05-21 Ncku Research And Development Foundation System and method of selecting a keyframe for iterative closest point
KR102671902B1 (ko) * 2017-09-22 2024-06-03 에스케이텔레콤 주식회사 지도 생성 장치 및 방법
US10839547B2 (en) * 2017-09-28 2020-11-17 Samsung Electronics Co., Ltd. Camera pose determination and tracking
WO2019068222A1 (en) * 2017-10-06 2019-04-11 Qualcomm Incorporated SIMULTANEOUS RELOCATION AND RESETTING OF VSLAM
US10921127B2 (en) 2017-11-02 2021-02-16 Sony Corporation Augmented reality based electronic device to provide location tagging assistance in an indoor or outdoor area
CN107886129B (zh) * 2017-11-13 2021-06-08 湖南大学 一种基于视觉词袋的移动机器人地图闭环检测方法
WO2019108748A1 (en) * 2017-11-29 2019-06-06 Tactacam LLC Camera mount system
CN109328456B (zh) * 2017-11-30 2020-10-16 深圳配天智能技术研究院有限公司 一种拍摄装置及拍摄位置寻优的方法
CN111801708B (zh) 2017-12-22 2022-04-29 奇跃公司 使用光线投射和实时深度进行遮挡渲染的方法
US10698413B2 (en) 2017-12-28 2020-06-30 Savioke Inc. Apparatus, system, and method for mobile robot relocalization
US10885659B2 (en) 2018-01-15 2021-01-05 Samsung Electronics Co., Ltd. Object pose estimating method and apparatus
CN108537876B (zh) * 2018-03-05 2020-10-16 清华-伯克利深圳学院筹备办公室 三维重建方法、装置、设备及存储介质
US10528133B2 (en) 2018-03-13 2020-01-07 Facebook Technologies, Llc Bracelet in a distributed artificial reality system
US10572002B2 (en) * 2018-03-13 2020-02-25 Facebook Technologies, Llc Distributed artificial reality system with contextualized hand tracking
CN108398787B (zh) * 2018-03-20 2023-05-16 京东方科技集团股份有限公司 增强现实显示设备、方法和增强现实眼镜
CN110314377B (zh) * 2018-03-28 2022-10-28 苏宁易购集团股份有限公司 三维空间中物体移动路径随机生成方法和装置
US11327504B2 (en) 2018-04-05 2022-05-10 Symbol Technologies, Llc Method, system and apparatus for mobile automation apparatus localization
US10740911B2 (en) * 2018-04-05 2020-08-11 Symbol Technologies, Llc Method, system and apparatus for correcting translucency artifacts in data representing a support structure
US10809078B2 (en) 2018-04-05 2020-10-20 Symbol Technologies, Llc Method, system and apparatus for dynamic path generation
US10832436B2 (en) 2018-04-05 2020-11-10 Symbol Technologies, Llc Method, system and apparatus for recovering label positions
US10823572B2 (en) 2018-04-05 2020-11-03 Symbol Technologies, Llc Method, system and apparatus for generating navigational data
CN110415329B (zh) 2018-04-26 2023-10-13 财团法人工业技术研究院 三维建模装置及应用于其的校准方法
CN109272021B (zh) * 2018-08-22 2022-03-04 广东工业大学 一种基于宽度学习的智能移动机器人导航方法
KR102682524B1 (ko) 2018-09-11 2024-07-08 삼성전자주식회사 증강 현실에서 가상 객체를 표시하기 위한 측위 방법 및 장치
US11010920B2 (en) 2018-10-05 2021-05-18 Zebra Technologies Corporation Method, system and apparatus for object detection in point clouds
US11506483B2 (en) 2018-10-05 2022-11-22 Zebra Technologies Corporation Method, system and apparatus for support structure depth determination
WO2020102107A1 (en) 2018-11-12 2020-05-22 Open Space Labs, Inc. Automated spatial indexing of images to video
US11090811B2 (en) 2018-11-13 2021-08-17 Zebra Technologies Corporation Method and apparatus for labeling of support structures
US11003188B2 (en) 2018-11-13 2021-05-11 Zebra Technologies Corporation Method, system and apparatus for obstacle handling in navigational path generation
US11079240B2 (en) 2018-12-07 2021-08-03 Zebra Technologies Corporation Method, system and apparatus for adaptive particle filter localization
US11416000B2 (en) 2018-12-07 2022-08-16 Zebra Technologies Corporation Method and apparatus for navigational ray tracing
US11100303B2 (en) 2018-12-10 2021-08-24 Zebra Technologies Corporation Method, system and apparatus for auxiliary label detection and association
US11015938B2 (en) 2018-12-12 2021-05-25 Zebra Technologies Corporation Method, system and apparatus for navigational assistance
US10731970B2 (en) 2018-12-13 2020-08-04 Zebra Technologies Corporation Method, system and apparatus for support structure detection
CN111368860B (zh) * 2018-12-25 2024-04-26 深圳市优必选科技有限公司 重定位方法及终端设备
CA3028708A1 (en) 2018-12-28 2020-06-28 Zih Corp. Method, system and apparatus for dynamic loop closure in mapping trajectories
CN112105893B (zh) 2019-01-30 2023-08-22 百度时代网络技术(北京)有限公司 用于自动驾驶车辆的实时地图生成系统
CN112105890B (zh) * 2019-01-30 2023-11-17 百度时代网络技术(北京)有限公司 用于自动驾驶车辆的基于rgb点云的地图生成系统
US11238604B1 (en) 2019-03-05 2022-02-01 Apple Inc. Densifying sparse depth maps
WO2020202164A2 (en) * 2019-04-02 2020-10-08 Buildots Ltd. Construction project tracking
CN110188809B (zh) * 2019-05-22 2021-04-06 浙江大学 一种基于图像分块的回环检测方法
US11151743B2 (en) 2019-06-03 2021-10-19 Zebra Technologies Corporation Method, system and apparatus for end of aisle detection
US11341663B2 (en) 2019-06-03 2022-05-24 Zebra Technologies Corporation Method, system and apparatus for detecting support structure obstructions
US11200677B2 (en) 2019-06-03 2021-12-14 Zebra Technologies Corporation Method, system and apparatus for shelf edge detection
US11080566B2 (en) 2019-06-03 2021-08-03 Zebra Technologies Corporation Method, system and apparatus for gap detection in support structures with peg regions
US11402846B2 (en) 2019-06-03 2022-08-02 Zebra Technologies Corporation Method, system and apparatus for mitigating data capture light leakage
US11662739B2 (en) 2019-06-03 2023-05-30 Zebra Technologies Corporation Method, system and apparatus for adaptive ceiling-based localization
US11960286B2 (en) 2019-06-03 2024-04-16 Zebra Technologies Corporation Method, system and apparatus for dynamic task sequencing
US11958183B2 (en) 2019-09-19 2024-04-16 The Research Foundation For The State University Of New York Negotiation-based human-robot collaboration via augmented reality
EP3795798B1 (en) * 2019-09-20 2023-11-22 Sandvik Mining and Construction Oy Positioning of mobile device in underground worksite
US11275453B1 (en) 2019-09-30 2022-03-15 Snap Inc. Smart ring for manipulating virtual objects displayed by a wearable device
CN111724439B (zh) * 2019-11-29 2024-05-17 中国科学院上海微系统与信息技术研究所 一种动态场景下的视觉定位方法及装置
US11507103B2 (en) 2019-12-04 2022-11-22 Zebra Technologies Corporation Method, system and apparatus for localization-based historical obstacle handling
US11107238B2 (en) 2019-12-13 2021-08-31 Zebra Technologies Corporation Method, system and apparatus for detecting item facings
US11501489B2 (en) 2020-02-27 2022-11-15 Magic Leap, Inc. Cross reality system for large scale environment reconstruction
CN111340707B (zh) * 2020-02-27 2023-07-14 创新奇智(重庆)科技有限公司 基于关键帧的图像拼接系统及拼接方法
US11822333B2 (en) 2020-03-30 2023-11-21 Zebra Technologies Corporation Method, system and apparatus for data capture illumination control
US11798429B1 (en) 2020-05-04 2023-10-24 Snap Inc. Virtual tutorials for musical instruments with finger tracking in augmented reality
US11520399B2 (en) 2020-05-26 2022-12-06 Snap Inc. Interactive augmented reality experiences using positional tracking
US11436812B2 (en) 2020-05-29 2022-09-06 Open Space Labs, Inc. Machine learning based object identification using scaled diagram and three-dimensional model
KR102298098B1 (ko) * 2020-05-29 2021-09-03 이화여자대학교 산학협력단 Rgb-d 카메라의 트래킹을 통한 3d 모델의 생성 방법 및 장치
US11450024B2 (en) 2020-07-17 2022-09-20 Zebra Technologies Corporation Mixed depth object detection
US11321862B2 (en) 2020-09-15 2022-05-03 Toyota Research Institute, Inc. Systems and methods for multi-camera modeling with neural camera networks
US11508080B2 (en) 2020-09-15 2022-11-22 Toyota Research Institute, Inc. Systems and methods for generic visual odometry using learned features via neural camera models
US11615544B2 (en) 2020-09-15 2023-03-28 Toyota Research Institute, Inc. Systems and methods for end-to-end map building from a video sequence using neural camera models
US11494927B2 (en) 2020-09-15 2022-11-08 Toyota Research Institute, Inc. Systems and methods for self-supervised depth estimation
US11925863B2 (en) 2020-09-18 2024-03-12 Snap Inc. Tracking hand gestures for interactive game control in augmented reality
KR102472568B1 (ko) * 2020-10-15 2022-12-01 한국전자기술연구원 포즈 정보와 뎁스 정보를 기초로 증강 현실을 제공하기 위한 3차원 맵을 구성하기 위한 장치 및 이를 위한 방법
KR102392606B1 (ko) 2020-10-20 2022-04-29 (주)심스리얼리티 실내 혼합현실 매칭 시스템
US11593915B2 (en) 2020-10-21 2023-02-28 Zebra Technologies Corporation Parallax-tolerant panoramic image generation
US11392891B2 (en) 2020-11-03 2022-07-19 Zebra Technologies Corporation Item placement detection and optimization in material handling systems
US11847832B2 (en) 2020-11-11 2023-12-19 Zebra Technologies Corporation Object classification for autonomous navigation systems
US12086324B2 (en) 2020-12-29 2024-09-10 Snap Inc. Micro hand gestures for controlling virtual and graphical elements
WO2022146673A1 (en) 2020-12-30 2022-07-07 Snap Inc. Augmented reality precision tracking and display
US11740313B2 (en) * 2020-12-30 2023-08-29 Snap Inc. Augmented reality precision tracking and display
US11710272B2 (en) * 2021-03-24 2023-07-25 Disney Enterprises, Inc. Volumetric representation of digital objects from depth renderings
CN115147536B (zh) * 2021-03-31 2024-07-12 四川大学 基于层级位姿图优化的实时室内三维重建方法
US11861070B2 (en) 2021-04-19 2024-01-02 Snap Inc. Hand gestures for animating and controlling virtual and graphical elements
US11954882B2 (en) 2021-06-17 2024-04-09 Zebra Technologies Corporation Feature-based georegistration for mobile computing devices
WO2024063589A1 (en) * 2022-09-23 2024-03-28 Samsung Electronics Co., Ltd. System and method for intelligent user localization in metaverse
US20240169673A1 (en) * 2022-11-21 2024-05-23 Samsung Electronics Co., Ltd. Mesh transformation with efficient depth reconstruction and filtering in passthrough augmented reality (ar) systems
KR102663992B1 (ko) * 2024-01-22 2024-05-10 주식회사 딥핑소스 비디오 분석을 통해 사람의 행동을 검출하는 딥러닝 기반의 행동 검출 모델을 학습하는 방법 및 테스트하는 방법, 그리고, 이를 이용한 학습 장치 및 테스트 장치

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5696591A (en) 1996-01-05 1997-12-09 Eastman Kodak Company Apparatus and method for detecting longitudinally oriented flaws in a moving web
US6504569B1 (en) 1998-04-22 2003-01-07 Grass Valley (U.S.), Inc. 2-D extended image generation from 3-D data extracted from a video sequence
US20010008561A1 (en) 1999-08-10 2001-07-19 Paul George V. Real-time object tracking system
JP3593466B2 (ja) 1999-01-21 2004-11-24 日本電信電話株式会社 仮想視点画像生成方法およびその装置
US20040075738A1 (en) 1999-05-12 2004-04-22 Sean Burke Spherical surveillance system architecture
US6587783B2 (en) 2000-10-05 2003-07-01 Siemens Corporate Research, Inc. Method and system for computer assisted localization, site navigation, and data navigation
US6735387B1 (en) 2001-01-10 2004-05-11 Tim Schnell Motion detector camera
US6940538B2 (en) 2001-08-29 2005-09-06 Sony Corporation Extracting a depth map from known camera and model tracking data
US7023432B2 (en) 2001-09-24 2006-04-04 Geomagic, Inc. Methods, apparatus and computer program products that reconstruct surfaces from data point sets
US7272467B2 (en) 2002-12-17 2007-09-18 Evolution Robotics, Inc. Systems and methods for filtering potentially unreliable visual data for visual simultaneous localization and mapping
US7620218B2 (en) * 2006-08-11 2009-11-17 Fotonation Ireland Limited Real-time face tracking with reference images
US7366325B2 (en) 2003-10-09 2008-04-29 Honda Motor Co., Ltd. Moving object detection using low illumination depth capable computer vision
US8134637B2 (en) 2004-01-28 2012-03-13 Microsoft Corporation Method and system to increase X-Y resolution in a depth (Z) camera using red, blue, green (RGB) sensing
US7831094B2 (en) 2004-04-27 2010-11-09 Honda Motor Co., Ltd. Simultaneous localization and mapping using multiple view feature descriptors
US7697748B2 (en) 2004-07-06 2010-04-13 Dimsdale Engineering, Llc Method and apparatus for high resolution 3D imaging as a function of camera position, camera trajectory and range
US7944454B2 (en) 2005-09-07 2011-05-17 Fuji Xerox Co., Ltd. System and method for user monitoring interface of 3-D video streams from multiple cameras
WO2007050707A2 (en) 2005-10-27 2007-05-03 Nec Laboratories America, Inc. Video foreground segmentation method
US8094928B2 (en) * 2005-11-14 2012-01-10 Microsoft Corporation Stereo video for gaming
US8577538B2 (en) * 2006-07-14 2013-11-05 Irobot Corporation Method and system for controlling a remote vehicle
WO2008013568A2 (en) 2005-12-30 2008-01-31 Irobot Corporation Autonomous mobile robot
US20070188501A1 (en) * 2006-01-30 2007-08-16 Yee Yangli H Graphical computer simulation system and method
US9348463B2 (en) 2006-08-03 2016-05-24 New York University Retroreflection based multitouch sensor, method and program
US8351646B2 (en) 2006-12-21 2013-01-08 Honda Motor Co., Ltd. Human pose estimation and tracking using label assignment
US7627447B2 (en) 2007-01-23 2009-12-01 The Boeing Company Method and apparatus for localizing and mapping the position of a set of points on a digital model
JP5380789B2 (ja) 2007-06-06 2014-01-08 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8368753B2 (en) * 2008-03-17 2013-02-05 Sony Computer Entertainment America Llc Controller with an integrated depth camera
AU2009281762A1 (en) 2008-08-15 2010-02-18 Brown University Method and apparatus for estimating body shape
JP5094663B2 (ja) * 2008-09-24 2012-12-12 キヤノン株式会社 位置姿勢推定用モデル生成装置、位置姿勢算出装置、画像処理装置及びそれらの方法
US8610706B2 (en) 2008-10-04 2013-12-17 Microsoft Corporation Parallel surface reconstruction
US9245382B2 (en) 2008-10-04 2016-01-26 Microsoft Technology Licensing, Llc User-guided surface reconstruction
US8855819B2 (en) 2008-10-09 2014-10-07 Samsung Electronics Co., Ltd. Method and apparatus for simultaneous localization and mapping of robot
US9600067B2 (en) 2008-10-27 2017-03-21 Sri International System and method for generating a mixed reality environment
KR101030317B1 (ko) * 2008-12-10 2011-04-19 재단법인대구경북과학기술원 스테레오 비전을 이용하여 장애물을 추적하는 장치 및 방법
ES2578022T3 (es) * 2009-02-17 2016-07-20 Koninklijke Philips N.V. Combinación de datos de imágenes 3D y gráficos
JP5388932B2 (ja) * 2009-04-30 2014-01-15 キヤノン株式会社 情報処理装置およびその制御方法
US9377857B2 (en) 2009-05-01 2016-06-28 Microsoft Technology Licensing, Llc Show body position
US8503720B2 (en) 2009-05-01 2013-08-06 Microsoft Corporation Human body pose estimation
US8379101B2 (en) 2009-05-29 2013-02-19 Microsoft Corporation Environment and/or target segmentation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10529076B2 (en) 2015-05-14 2020-01-07 Sony Corporation Image processing apparatus and image processing method

Also Published As

Publication number Publication date
JP2014511591A (ja) 2014-05-15
CN102609942A (zh) 2012-07-25
EP2671384A4 (en) 2014-07-30
HK1171853A1 (zh) 2013-04-05
EP2671384B1 (en) 2018-07-18
AR084952A1 (es) 2013-07-10
US8711206B2 (en) 2014-04-29
KR101896131B1 (ko) 2018-09-07
US20120194644A1 (en) 2012-08-02
CN102609942B (zh) 2015-12-02
EP2671384A2 (en) 2013-12-11
WO2012106068A3 (en) 2012-10-18
TW201234278A (en) 2012-08-16
TWI467494B (zh) 2015-01-01
KR20140000315A (ko) 2014-01-02
WO2012106068A2 (en) 2012-08-09

Similar Documents

Publication Publication Date Title
JP5881743B2 (ja) 奥行きマップを使用したモバイルカメラの自己位置推定
US9242171B2 (en) Real-time camera tracking using depth maps
KR102427921B1 (ko) 실시간 맵핑 및 로컬리제이션을 위한 장치 및 방법
US8401225B2 (en) Moving object segmentation using depth images
US9053571B2 (en) Generating computer models of 3D objects
US9251590B2 (en) Camera pose estimation for 3D reconstruction
JP6001562B2 (ja) ゲーム・プレイにおける三次元環境モデルの使用
US8971612B2 (en) Learning image processing tasks from scene reconstructions
KR20140007367A (ko) 삼차원 환경 재구성
US11595568B2 (en) System for generating a three-dimensional scene of a physical environment
Sizintsev et al. Long-range augmented reality with dynamic occlusion rendering
Li-Chee-Ming et al. Augmenting visp’s 3d model-based tracker with rgb-d slam for 3d pose estimation in indoor environments
Wibowo et al. Position Data Estimation System Based on Recognized Field Landmark Using Deep Neural Network for ERSOW Soccer Robot.
Pereira High precision monocular visual odometry

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150106

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151207

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: 20160104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160202

R150 Certificate of patent or registration of utility model

Ref document number: 5881743

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250