(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-12
(45)【発行日】2024-04-22
(54)【発明の名称】同時に位置特定およびマッピングを実行するためのデバイスおよび方法
(51)【国際特許分類】
G06T 7/70 20170101AFI20240415BHJP
G06T 7/00 20170101ALI20240415BHJP
G01C 21/28 20060101ALI20240415BHJP
【FI】
G06T7/70 Z
G06T7/00 650B
G01C21/28
【外国語出願】
(21)【出願番号】P 2022177535
(22)【出願日】2022-11-04
(62)【分割の表示】P 2020534243の分割
【原出願日】2018-09-07
【審査請求日】2022-11-17
(73)【特許権者】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133569
【氏名又は名称】野村 進
(72)【発明者】
【氏名】ミゲル・クリストバル
(72)【発明者】
【氏名】パンジ・セティアワン
【審査官】佐藤 実
(56)【参考文献】
【文献】特表2016-540186(JP,A)
【文献】Dong Wang, et al.,SLAM-based cooperative calibration for optical sensors array with GPS/IMU aided,2016 International Conference on Unmanned Aircraft Systems (ICUAS),IEEE,2016年,https://ieeexplore.ieee.org/document/7502643
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/70
G06T 7/00
G01C 21/28
(57)【特許請求の範囲】
【請求項1】
同
時位置特定およびマッピング(SLAM)を実行するためのデバイス(100)であって、
前記デバイス(100)は、
-第1の処理段階(102)において、フレームシーケンス(103)を取得するために、カメラによって記録された複数の画像および複数のセンサ(501)からのセンサ読み取り値を含む受信
されたデータシーケンス(101)を前処理し、
各フレームは、決定された時間インスタンスでの前記画像の1つに関連する視覚特徴セットと、その時間インスタンスからのセンサ読み取り値(502)と、を含み、
-第2の処理段階(104)において、シーケンスマッピンググラフ(105)を生成するために、前記視覚特徴セットおよび
前記フレームに含まれる前記センサ読み取り値(502)に基づいて前記フレームシーケンス(103)の各フレームを順次処理し、
-第3の処理段階(106)において、完全グラフ(107)を生成または更新するために、前記シーケンスマッピンググラフ(105)を少なくとも1つの他のグラフ(400)とマージし、前記複数のセンサ(501)からのセンサ読み取り値
は全地球測位システム(GPS)からの読み取り値を含み、前記GPSからの読み取り値が修正される、
ように構成される少なくとも1つのプロセッサを含む、デバイス(100)。
【請求項2】
視覚特徴セットは、前記
画像の関連画像から抽出された1つまたは複数の2Dキーポイント、前記2Dキーポイントに対応する記述子、ならびに前記2Dキーポイントの視差および/または奥行き情報を含む画像特徴セットを含む、
請求項1に記載のデバイス(100)。
【請求項3】
前記少なくとも1つのプロセッサは、前記第1の処理段階(102)において、
-前記データシーケンス(101)から画像を抽出し(200)、
-前記画像を修正し(201)、
-前記修正された画像から2Dキーポイントを抽出し(204)、
-前記抽出された2Dキーポイントに基づいて画像特徴セットを生成する(206)、
ように構成される、請求項2に記載のデバイス(100)。
【請求項4】
前記少なくとも1つのプロセッサは、前記第1の処理段階(102)において、
-前記修正された画像のピクセルに1つまたは複数の意味論的ラベルを割り当て(203)、
-動的オブジェクトとしてラベル付けされたオブジェクトに関連する前記画像特徴セットから2Dキーポイントを除去するように、前記意味論的ラベルに基づいて前記画像特徴セットをフィルタリングする(205)、
ように構成される、請求項3に記載のデバイス(100)。
【請求項5】
前記少なくとも1つのプロセッサは、前記第1の処理段階(102)において、
-前記フィルタリングされた画像特徴セットにバッグオブワード記述子を追加することにより、視覚特徴セットを、および任意選択で前記2Dキーポイントを検索するためのハッシュテーブルを生成し(206)、
-前記視覚特徴セットを前記画像の同じ時間インスタンスからのセンサ読み取り値(502)と組み合わせることによりフレームを生成する(207)、
ようにさらに構成される、請求項4に記載のデバイス(100)。
【請求項6】
前記少なくとも1つのプロセッサは、前記第2の処理段階(104)において、
-フレームに関連付けられたカメラポーズを取得するために、視覚特徴セットの2Dキーポイントを局所的に保存された3Dキーポイントにマッチングさせることにより、前記フレームに含まれる前記視覚特徴セットに基づいてカメラ追跡を実行する(301)、
ように構成される、請求項1から5のいずれか一項に記載のデバイス(100)。
【請求項7】
前記少なくとも1つのプロセッサは、
-いくつかのマッチングされた2Dキーポイントに基づいて、前記フレームがキーフレームであるかどうかを判定する、
ように構成される、請求項6に記載のデバイス(100)。
【請求項8】
前記少なくとも1つのプロセッサは、前記第2の処理段階(104)において、前記フレームがキーフレームであると判定された場合には、
-視覚オドメトリ情報およびLBAグラフを取得するために、前記カメラポーズに基づいて第1のローカルバンドル調整
(LBA
)を実行し(303)、
-前記視覚オドメトリ情報、および前記フレームに含まれる前記センサ読み取り値(502)に基づいて融合カメラポーズを計算し(304)、
-前記シーケンスマッピンググラフ(105)を取得するために、前記融合カメラポーズおよび前記LBAグラフに基づいて第2のLBAを実行する(305)、
ようにさらに構成される、請求項7に記載のデバイス(100)。
【請求項9】
前記少なくとも1つのプロセッサは、前記第3の処理段階(106)において、
-前記シーケンスマッピンググラフ(105)と前記少なくとも1つのさらなるグラフ(400)との間で共有される1つまたは複数のループおよび/または重複領域の存在を検出し(400)、
-中間グラフを取得するために、前記シーケンスマッピンググラフ(105)と前記少なくとも1つのさらなるグラフ(400)をマージし(400)、
-前記完全グラフ(107)を取得するために、前記検出されたループおよび/または重複領域に基づいて前記中間グラフに対してグラフ最適化を実行する(401)、
ようにさらに構成される、請求項1から8のいずれか一項に記載のデバイス(100)。
【請求項10】
3つの
前記処理段階(102、104、106)のうち
の少なくとも2つは、異なるプロセッサで実行される、
請求項1から9のいずれか一項に記載のデバイス(100)。
【請求項11】
前記デバイス(100)は分散デバイスであり、少なくとも1つの端末デバイス(500)と、少なくとも1つのネットワークデバイス(510)と、を含み、
前記端末デバイス(500)のプロセッサは、前記第1の処理段階(102)を実行し、前記取得されたフレームシーケンス(103)を前記ネットワークデバイス(510)に送信するように構成され、
前記ネットワークデバイス(510)のプロセッサは、前記第2および第3の処理段階(104、106)を実行するように構成される、
請求項1から10のいずれか一項に記載のデバイス(100)。
【請求項12】
前記端末デバイス(500)の前記プロセッサは、
-前記第1の処理段階(102)で取得された前記フレームシーケンス(103)に基づいてリアルタイム位置特定を実行する(503)
ようにさらに構成される、請求項11に記載のデバイス(100)。
【請求項13】
前記端末デバイス(500)の前記プロセッサは、
前記リアルタイム位置特定として実行される前記第2の処理段階(104)において、前記フレームがキーフレームであると判定された場合には、
-視覚オドメトリ情報およびLBAグラフを取得するために、カメラポーズに基づいて第1のローカルバンドル調整(LBA)を実行し(303)、
-前記視覚オドメトリ情報、および前記フレームに含まれる前記センサ読み取り値(502)に基づいて融合カメラポーズを計算し(304)、
-現在のカメラポーズを取得するために、前記融合カメラポーズ、前記LBAグラフ、および現在の完全グラフに基づいて、融合追跡手順を実行する、
ようにさらに構成される、請求項12に記載のデバイス(100)。
【請求項14】
前記端末デバイス(500)は車両内に配置され、前記車両は前記少なくとも1つのカメラおよび複数のセンサ(501)を含む、
請求項11から13のいずれか一項に記載のデバイス(100)。
【請求項15】
同
時位置特定
およびマッピング(SLAM)を実行するためのコンピュータ実装方法(700)であって、前記方法は、
-第1の処理段階(102)において、フレームシーケンス(103)を取得するために、カメラによって記録された複数の画像および複数のセンサ(501)からのセンサ読み取り値を含む受信
されたデータシーケンス(101)を前処理するステップ(701)であって、
各フレームは、決定された時間インスタンスでの前記画像の1つに関連する視覚特徴セットと、その時間インスタンスからのセンサ読み取り値(502)と、を含む、ステップ(701)と、
-第2の処理段階(104)において、シーケンスマッピンググラフ(105)を生成するために、前記視覚特徴セットおよび
前記フレームに含まれる前記センサ読み取り値(502)に基づいて前記フレームシーケンス(103)の各フレームを順次処理するステップ(702)と、
-第3の処理段階(106)において、完全グラフ(107)を生成または更新するために、前記シーケンスマッピンググラフ(105)を少なくとも1つの他のグラフ(400)とマージするステップ(703)
であって、前記複数のセンサ(501)からのセンサ読み取り値は全地球測位システム(GPS)からの読み取り値を含み、前記GPSからの読み取り値が修正される、ステップ(703)と、
を含む、コンピュータ実装方法(700)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、同時位置特定およびマッピング(SLAM)の技術分野に関する。特に、本発明は、SLAMを実行するためのデバイスおよび方法を提供する。それにより、デバイスおよび方法は、カメラ画像を、SLAMを実行するための複数のセンサ読み取り値と組み合わせることができる。
【背景技術】
【0002】
次世代の安全性と車両の自動化は、正確な測位または位置特定に依存するが、通常の運転状況においても、全地球測位システム(GPS)ベースの測位はGPS信号の頻繁な妨害によって妨げられる。測位が直面する主な技術的問題の1つは、マップの作成であり、マッピングとしても知られている。マッピングを成功させるには、測位または位置特定が必要である。したがって、いわゆるSLAMを実行する必要がある。
【0003】
ステレオカメラを使用する従来のSLAM方法は、例えば、ORB-SLAM2とステレオLSD-SLAMであり、それぞれ特徴ベースの方法および直接方法に属している(https://medium.com/@j.zijlmans/lsd-slam-vs-orb-slam2-a-literature-based-comparison-20732df431d)。本発明は、特徴ベースの方法に関する。
【0004】
センサを組み合わせたSLAMの拡張は、まだ未解決の研究トピックである。例えば、第1の手法(R.Mur-Artal and J.D.Tardos,「Visual-Inertial Monocular SLAM With Map Reuse」,IEEE Robotics and Automation Letters,vol.2,no.2,pp.796-803,April 2017)では、単眼ORB-SLAMが慣性測定ユニット(IMU)と組み合わされた。第2の手法(M.Lhuillier,「Incremental Fusion of Structure-from-Motion and GPS Using Constrained Bundle Adjustments」,IEEE Transactions on Pattern Analysis and Machine Intelligence,vol.34,no.12,pp.2489-2495,Dec.2012)では、ORB-SLAMと類似の、バンドル調整(BA)技法がGPSと組み合わされた。
【0005】
上記の第1の手法では、ORB-SLAMアーキテクチャが変更され、追跡、ローカルバンドル調整(LBA)、およびフルバンドル調整にIMUの読み取り値が含まれる。結果は、既知のスケールを有する単眼ORB-SLAMが視覚慣性単眼ORB-SLAMよりも優れた性能を発揮することを示している。
【0006】
上記の第2の手法では、2つのBA、すなわち標準BAと融合BAがある。標準BAは、3Dポイント特徴の再投影誤差を最小限に抑え、このBAの結果は、GPSが組み込まれている融合BAで使用される。この手法には3つの提案された方法が含まれ、それぞれ独自の重点がある。第1の方法は、再投影誤差とGPS誤差の両方を二乗差の合計として最小化することであり、他の2つの方法は、再投影誤差またはGPS誤差のいずれかにバリア項最適化を使用している。結果は、バリア項最適化が第1の方法よりも良好に機能することを示している。
【0007】
しかし、これまでのところ、複数のセンサ(例えばGPSおよびIMU)をSLAMと組み合わせる問題は解決されていない。さらに、SLAMの分散処理アーキテクチャはまだ利用されていない。したがって、これまでのところ、いわゆるクラウドソーシングアルゴリズムの利点はない。
【先行技術文献】
【非特許文献】
【0008】
【文献】R.Mur-Artal and J.D.Tardos,「Visual-Inertial Monocular SLAM With Map Reuse」,IEEE Robotics and Automation Letters,vol.2,no.2,pp.796-803,April 2017
【文献】M.Lhuillier,「Incremental Fusion of Structure-from-Motion and GPS Using Constrained Bundle Adjustments」,IEEE Transactions on Pattern Analysis and Machine Intelligence,vol.34,no.12,pp.2489-2495,Dec.2012
【発明の概要】
【0009】
上記の問題を考慮して、本発明の実施形態は、従来のSLAM手法を改善することを目的とする。目的は、モジュール性の観点から特徴ベースのマッピングプロセスを改善し、複数のセンサを含めるように拡張すること、特にGPSとIMUの両方を含めることである。さらなる目標は、リアルタイム分散動作である。特に、クラウドソーシングアルゴリズムを利用する必要があり、そこでは、例えば、複数のデバイス(例えば車両)がそれぞれのセンサ読み取り値を例えばクラウドにアップロードすることにより、マップ作成に寄与する。
【課題を解決するための手段】
【0010】
この目的は、添付の独立請求項で提供される本発明の実施形態によって達成される。本発明の実施形態の有利な実施態様は、従属請求項でさらに定義される。
【0011】
本発明の第1の態様は、SLAMを実行するためのデバイスを提供し、デバイスは、第1の処理段階において、フレームシーケンスを取得するために、カメラによって記録された複数の画像および複数のセンサからのセンサ読み取り値を含む受信データシーケンスを前処理し、各フレームは、決定された時間インスタンスでの画像の1つに関連する視覚特徴セットと、その時間インスタンスからのセンサ読み取り値と、を含み、第2の処理段階において、シーケンスマッピンググラフを生成するために、視覚特徴セットおよびそのフレームに含まれるセンサ読み取り値に基づいてフレームシーケンスの各フレームを順次処理し、第3の処理段階において、完全グラフを生成または更新するために、シーケンスマッピンググラフを少なくとも1つの他のグラフとマージする、ように構成される少なくとも1つのプロセッサを含む。
【0012】
「時間インスタンス」は、決定された時点または時間間隔であってもよく、またはある開始時点に対する時点または時間間隔であってもよい。例えば、「時間インスタンス」は、データシーケンス内の連続する画像間の時間間隔であってもよい。すなわち、データシーケンスの第1の画像は、第1の時点で取得されてもよく、データシーケンスの第2の画像は、第2の時点で取得されてもよく、第3の画像は、第3の時点で取得されてもよい。この場合、第2の画像の「時間インスタンス」は、第1の時点と第2の時点との間の時間間隔であってもよい。この「時間インスタンス」からのセンサ読み取り値、すなわち第2の画像の同じ「時間インスタンス」からのセンサ読み取り値は、この場合、第1の時点と第2の時点の間のすべてのセンサ読み取り値を含む。特に、例えば、センサが画像を撮影するカメラよりも遅い周波数で動作する場合には、「時間インスタンス」中にセンサ読み取り値がない可能性がある。さらに、第3の画像の「時間インスタンス」は第2の時点から始まる。
【0013】
デバイスのモジュール性、すなわち3つの処理段階への分離により、リアルタイムの分散SLAMを実施することができる。特に第2と第3の処理段階の分離により、複数のデータシーケンスから情報を取得することができる。第3の処理段階では、センサ読み取り値を修正することができ、例えば(例えば、異なるデバイスからの)複数の重複するデータシーケンスが利用可能であれば、GPSバイアスを修正することができる。センサ読み取り値は、例えば、GPSおよびIMUの読み取り値を1つまたは複数のカメラで取得した視覚情報と融合させることを可能にする。フレームの構造はさらに、(画像全体を渡す場合と比較して)次の処理段階に渡す必要があるデータを少なくする。
【0014】
第1の態様の実施形式では、視覚特徴セットは、関連画像から抽出された1つまたは複数の2Dキーポイント、2Dキーポイントに対応する記述子、ならびに2Dキーポイントの視差および/または奥行き情報を含む画像特徴セットを含む。
【0015】
したがって、フレームは画像全体よりも少ない情報を含むが、シーケンスマッピングを実行することができる十分な特徴的な視覚情報を含む。利点は、第2の処理段階で使用される前処理されたフレームが保存され得ることであり、これは例えば、プロセスのデバッグを容易にする。また、例えば、1つのプロセッサから別のプロセッサへの分散デバイスにおいて、送信される必要のある情報が少なくなる。視差および/または奥行き情報は、それぞれの2Dキーポイントに基づいて3Dキーポイントの計算を可能にする。
【0016】
第1の態様のさらなる実施形式では、少なくとも1つのプロセッサは、第1の処理段階において、データシーケンスから画像を抽出し、画像を修正し、修正された画像から2Dキーポイントを抽出し、抽出された2Dキーポイントに基づいて画像特徴セットを生成するように構成される。
【0017】
第1の態様のさらなる実施形式では、少なくとも1つのプロセッサは、第1の処理段階において、修正された画像のピクセルに1つまたは複数の意味論的ラベルを割り当て、動的オブジェクトとしてラベル付けされたオブジェクトに関連する画像特徴セットから2Dキーポイントを除去するように、意味論的ラベルに基づいて画像特徴セットをフィルタリングするように構成される。
【0018】
これは不要な2Dキーポイントを除去して、結果的に処理負荷の軽減に役立つ。
【0019】
第1の態様のさらなる実施形式では、少なくとも1つのプロセッサは、第1の処理段階において、フィルタリングされた画像特徴セットにバッグオブワード記述子を追加することにより、視覚特徴セットを、および任意選択で2Dキーポイントを検索するためのハッシュテーブルを生成し、視覚特徴セットを画像の同じ時間インスタンスからのセンサ読み取り値と組み合わせることによりフレームを生成するようにさらに構成される。
【0020】
これは、視覚特徴セットにさらに多くの情報を追加する。ハッシュテーブルは、プロセスの速度と堅牢性をさらに向上させることができる。センサ情報は、この方法によってさらに実施され得る。
【0021】
第1の態様のさらなる実施形式では、少なくとも1つのプロセッサは、第2の処理段階において、フレームに関連付けられたカメラポーズを取得するために、視覚特徴セットの2Dキーポイントを局所的に保存された3Dキーポイントにマッチングさせることにより、フレームに含まれる視覚特徴セットに基づいてカメラ追跡を実行するように構成される。
【0022】
第1の態様のさらなる実施形式では、少なくとも1つのプロセッサは、いくつかのマッチングされた2Dキーポイントに基づいて、フレームがキーフレームであるかどうかを判定するように構成される。
【0023】
第1の態様のさらなる実施形式では、少なくとも1つのプロセッサは、第2の処理段階において、フレームがキーフレームであると判定された場合には、視覚オドメトリ情報およびLBAグラフを取得するために、カメラポーズに基づいて第1のローカルバンドル調整LBAを実行し、視覚オドメトリ情報、およびフレームに含まれるセンサ読み取り値に基づいて融合カメラポーズを計算し、シーケンスマッピンググラフを取得するために、融合カメラポーズおよびLBAグラフに基づいて第2のLBAを実行するようにさらに構成される。
【0024】
したがって、第1のLBAの特徴マッチングプロセスは、例えばノイズの多いセンサ読み取り値によって影響されず、これはインライア損失と追跡の失敗を防止する。第2のLBAは、例えばGPSおよび/またはIMUと視覚オドメトリデータとを融合させることを可能にする。
【0025】
第1の態様のさらなる実施形式では、少なくとも1つのプロセッサは、第3の処理段階において、シーケンスマッピンググラフと少なくとも1つのさらなるグラフとの間で共有される1つまたは複数のループおよび/または重複領域の存在を検出し、中間グラフを取得するために、シーケンスマッピンググラフと少なくとも1つのさらなるグラフをマージし、完全グラフを取得するために、検出されたループおよび/または重複領域に基づいて中間グラフに対してグラフ最適化を実行する、ようにさらに構成される。
【0026】
例えば、ループまたは重複領域が利用可能な場合には、GPSバイアスは修正され得る。
【0027】
第1の態様のさらなる実施形式では、3つの処理段階のうちの少なくとも2つは、異なるプロセッサで実行される。
【0028】
これにより、SLAMの分散処理が可能になる。
【0029】
第1の態様のさらなる実施形式では、デバイスは分散デバイスであり、少なくとも1つの端末デバイスと、少なくとも1つのネットワークデバイスと、を含み、端末デバイスのプロセッサは、第1の処理段階を実行し、取得されたフレームシーケンスをネットワークデバイスに送信するように構成され、ネットワークデバイスのプロセッサは、第2および第3の処理段階を実行するように構成される。
【0030】
これにより、例えば車両自動化システムを実施することが可能になる。前処理は、車両内でリアルタイムで行われ得る。
【0031】
第1の態様のさらなる実施形式では、端末デバイスのプロセッサは、第1の処理段階で取得されたフレームシーケンスに基づいてリアルタイム位置特定を実行するようにさらに構成される。
【0032】
したがって、リアルタイム位置特定は、グラフ(マップ)の更新から分離される。特に、(カメラが車に取り付けられている場合)カメラポーズと車ポーズとの間には通常、厳密な変換があるので、簡単にするために、どちらのポーズも他のポーズを指定すると厳密な変換によって直接取得することができるので、両方の用語を交換可能に使用することができる。
【0033】
第1の態様のさらなる実施形式では、端末デバイスのプロセッサは、上述の第2の処理段階に従ってリアルタイム位置特定を実行し、第2のLBAは、現在のカメラポーズを取得するために、融合カメラポーズ、LBAグラフ、および現在の完全グラフに基づいて、融合追跡手順に置き換えられるようにさらに構成される。
【0034】
第1の態様のさらなる実施形式では、端末デバイスは車両内に配置され、車両は少なくとも1つのカメラおよび複数のセンサを含む。
【0035】
本発明の第2の態様は、SLAMを実行する方法を提供し、方法は、第1の処理段階において、フレームシーケンスを取得するために、カメラによって記録された複数の画像および複数のセンサからのセンサ読み取り値を含む受信データシーケンスを前処理するステップであって、各フレームは、決定された時間インスタンスでの画像の1つに関連する視覚特徴セットと、その時間インスタンスからのセンサ読み取り値と、を含む、ステップと、第2の処理段階において、シーケンスマッピンググラフを生成するために、視覚特徴セットおよびそのフレームに含まれるセンサ読み取り値に基づいてフレームシーケンスの各フレームを順次処理するステップと、第3の処理段階において、完全グラフを生成または更新するために、シーケンスマッピンググラフを少なくとも1つの他のグラフとマージするステップと、を含む。
【0036】
第2の態様の実施形式では、視覚特徴セットは、関連画像から抽出された1つまたは複数の2Dキーポイント、2Dキーポイントに対応する記述子、ならびに2Dキーポイントの視差および/または奥行き情報を含む画像特徴セットを含む。
【0037】
第2の態様のさらなる実施形式では、方法は、第1の処理段階において、データシーケンスから画像を抽出するステップと、画像を修正するステップと、修正された画像から2Dキーポイントを抽出するステップと、抽出された2Dキーポイントに基づいて画像特徴セットを生成するステップと、を含む。
【0038】
第2の態様のさらなる実施形式では、方法は、第1の処理段階において、修正された画像のピクセルに1つまたは複数の意味論的ラベルを割り当てるステップと、動的オブジェクトとしてラベル付けされたオブジェクトに関連する画像特徴セットから2Dキーポイントを除去するように、意味論的ラベルに基づいて画像特徴セットをフィルタリングするステップと、を含む。
【0039】
第2の態様のさらなる実施形式では、方法は、第1の処理段階において、フィルタリングされた画像特徴セットにバッグオブワード記述子を追加することにより、視覚特徴セットを、および任意選択で2Dキーポイントを検索するためのハッシュテーブルを生成するステップと、視覚特徴セットを画像の同じ時間インスタンスからのセンサ読み取り値と組み合わせることによりフレームを生成するステップと、をさらに含む。
【0040】
第2の態様のさらなる実施形式では、方法は、第2の処理段階において、フレームに関連付けられたカメラポーズを取得するために、視覚特徴セットの2Dキーポイントを局所的に保存された3Dキーポイントにマッチングさせることにより、フレームに含まれる視覚特徴セットに基づいてカメラ追跡を実行するステップを含む。
【0041】
第2の態様のさらなる実施形式では、方法は、いくつかのマッチングされた2Dキーポイントに基づいて、フレームがキーフレームであるかどうかを判定するステップを含む。
【0042】
第2の態様のさらなる実施形式では、方法は、第2の処理段階において、フレームがキーフレームであると判定された場合には、視覚オドメトリ情報およびLBAグラフを取得するために、カメラポーズに基づいて第1のLBAを実行するステップと、視覚オドメトリ情報、およびフレームに含まれるセンサ読み取り値に基づいて融合カメラポーズを計算するステップと、シーケンスマッピンググラフを取得するために、融合カメラポーズおよびLBAグラフに基づいて第2のLBAを実行するステップと、をさらに含む。
【0043】
第2の態様のさらなる実施形式では、方法は、第3の処理段階において、シーケンスマッピンググラフと少なくとも1つのさらなるグラフとの間で共有される1つまたは複数のループおよび/または重複領域の存在を検出するステップと、中間グラフを取得するために、シーケンスマッピンググラフと少なくとも1つのさらなるグラフをマージするステップと、完全グラフを取得するために、検出されたループおよび/または重複領域に基づいて中間グラフに対してグラフ最適化を実行するステップと、をさらに含む。
【0044】
第2の態様のさらなる実施形式では、3つの処理段階のうちの少なくとも2つは、異なるプロセッサで実行される。
【0045】
第2の態様のさらなる実施形式では、方法は、少なくとも1つの端末デバイスおよび少なくとも1つのネットワークデバイスを含む分散デバイスで実行され、端末デバイスは、第1の処理段階を実行し、取得されたフレームシーケンスをネットワークデバイスに送信し、ネットワークデバイスは、第2および第3の処理段階を実行する。
【0046】
第2の態様のさらなる実施形式では、端末デバイスは、第1の処理段階で取得されたフレームシーケンスに基づいてリアルタイム位置特定をさらに実行する。
【0047】
第2の態様のさらなる実施形式では、端末は、上述の第2の処理段階に従ってリアルタイム位置特定をさらに実行し、第2のLBAは、現在のカメラポーズを取得するために、融合カメラポーズ、LBAグラフおよび現在の完全グラフに基づいて融合追跡手順に置き換えられる。
【0048】
第2の態様のさらなる実施形式では、端末デバイスは車両内に配置され、車両は少なくとも1つのカメラおよび複数のセンサを含む。
【0049】
第2の態様の方法およびその実施形式により、第1の態様のデバイスおよびそのそれぞれの実施形式について上述した利点および効果が達成される。
【0050】
要約すると、本発明の実施形態は、以下に説明するように、いくつかの改善に基づいている。
・ソフトウェアアーキテクチャ:デバイスの処理アーキテクチャ(3つの処理段階への分離)により、リアルタイム分散SLAMに使用され得るモジュラー手法が可能になる。このようにして、位置特定中に完全グラフ(グローバルマップ)が常に更新され得、画像全体ではなく、抽出された特徴のみを送信する必要がある(データレートが低くなる)。
【0051】
・シーケンスマッピングと最終的なグラフの最適化の分離:シーケンスをマッピングするプロセスは、視覚情報に基づいて正確な出力を得ることに重点を置いており、完全グラフ(グローバルマップ)の更新から分離され、複数の重複するシーケンスの利用可能性を考慮して、最終的な全体的な最適化を実行する。このようにして、グラフの更新を実行するときに単一のプロセスを使用する代わりに、プロセスの分離により、すべてのシーケンスからのすべての情報を適切に使用され得る。さらに、グラフの更新により、GPSバイアスを修正することができ、これは、複数の重複するシーケンスの利用可能性により観測可能であるためである。
【0052】
・複数センサの融合:シーケンスマッピング中に2つのバンドル調整が使用され、第1のLBAは標準LBAと呼ばれ、第2のLBAは第1のLBAの出力と、例えばGPS、IMU読み取り値、および視覚オドメトリ情報に基づく融合カメラポーズと、を融合する。目的は、再投影誤差の最適化(第1のLBAで行われる)と、第2のLBAで別の最適化の前にGPS/IMU融合の2つの分離した独立したプロセスを保証することである。このように、第1のLBAでの特徴マッチングプロセスは、ノイズの多いGPS/IMUの読み取り値の影響を受けない。上記の第2の手法とは対照的に、IMUの読み取り値も融合される。
【0053】
本出願に記載されているすべてのデバイス、要素、ユニット、および手段は、ソフトウェアまたはハードウェア要素、またはそれらの任意の種類の組み合わせで実施され得ることに留意されたい。本出願に記載されている様々なエンティティによって実行されるすべてのステップ、ならびに様々なエンティティによって実行されるように説明されている機能は、それぞれのエンティティがそれぞれのステップおよび機能を実行するように適合または構成されることを意味するものとする。特定の実施形態の以下の説明において、外部エンティティによって実行される特定の機能またはステップが、その特定のステップまたは機能を実行するそのエンティティの特定の詳細な要素の説明に反映されていない場合であっても、これらの方法および機能は、それぞれのソフトウェアまたはハードウェア要素、またはそれらの任意の種類の組み合わせで実施され得ることは、当業者には明らかなはずである。
【0054】
本発明の上記の態様および実施形式は、添付の図面に関連して、特定の実施形態の以下の説明で説明される。
【図面の簡単な説明】
【0055】
【
図1】本発明の一実施形態によるデバイスを示す図である。
【
図2】本発明の一実施形態によるデバイスの第1の処理段階を示す図である。
【
図3】本発明の一実施形態によるデバイスの第2の処理段階を示す図である。
【
図4】本発明の一実施形態によるデバイスの第3の処理段階を示す図である。
【
図5】本発明の一実施形態による分散処理のためのデバイスを示す図である。
【
図6】本発明の一実施形態による、分散処理のためのデバイスにおけるリアルタイム位置特定を示す図である。
【
図7】本発明の一実施形態による方法を示す図である。
【発明を実施するための形態】
【0056】
図1は、本発明の一実施形態によるデバイス100を示す。デバイス100は、SLAM、特に特徴ベースのSLAM方法を実行するように構成される。
図1は、オフラインのマッピングプロセスで実行され得る、このSLAM方法のモジュール性を示している。処理の記録のいくつかのシーケンスが利用可能であると想定されている。デバイス100によって実行される特徴ベースのSLAM方法は、具体的には3つの処理段階、すなわち第1の処理段階102(「前処理」)、第2の処理段階104(「シーケンスマッピング」)および第3の処理状態106(「グローバルマップ更新」とも呼ばれる「グラフ更新」)に分けられる。
【0057】
デバイス100は、それぞれ処理段階102、104および106を実行するように構成された少なくとも1つのプロセッサを含む。3つの処理段階102、104および106のうちの少なくとも2つは、デバイス100の異なるプロセッサで実行され得る。デバイス100は、この場合、配信デバイス(例えば、端末デバイスおよびネットワークデバイス)であってもよい。各処理段階102、104、106が異なるプロセッサで実行されることも可能である。
【0058】
第1の処理段階102では、受信されたデータシーケンス101が前処理される。データシーケンス101は、フレームシーケンス103を取得するために、カメラによって記録された(または複数のカメラによって記録された)少なくとも複数の画像と、複数のセンサ501(例えば
図5を参照)からのセンサ読み取り値と、を含む。複数のセンサは、GPSとIMUを含むことができる。フレームシーケンス103は、シーケンスに配置された1つまたは複数のフレームを含む。フレームシーケンス103の各フレームは、データシーケンス101内の画像の1つに関連する視覚特徴セット、すなわち、決定された時間インスタンスで得られた画像を含み、その時間インスタンスからのセンサ読み取り値502(例えば
図5を参照)をさらに含む。すなわち、データシーケンス101は、センサ読み取り値502と時間相関している画像を含む。時間インスタンスは、それによって、決定された時点または時間間隔であってもよく、またはある開始時点に対する時点または時間間隔であってもよい。
【0059】
第2の処理段階104では、シーケンスマッピンググラフ105を生成するために、フレームシーケンス103の各フレームが、そのフレームに含まれる視覚特徴セットおよびセンサ読み取り値502に基づいて順次処理される。視覚特徴セットは、関連画像から抽出された1つまたは複数の2Dキーポイント、2Dキーポイントに対応する記述子、ならびに2Dキーポイントの視差および/または奥行き情報を含む画像特徴セットを含んでもよい。
【0060】
第3の処理段階106では、完全グラフ107(「フルマップ」または「グローバルマップ」とも呼ばれる)を生成または更新するために、シーケンスマッピンググラフ105が少なくとも1つの他のグラフ400(例えば、
図4を参照し、「初期グラフ」とマージされる)とマージされる。
【0061】
図2は、第1の「前処理」段階102の一例をより詳細に示す。この処理段階102は、特定の記録されたデータシーケンス101(データシーケンスi)を処理してフレームシーケンス103を出力することを目的とする。これにより、例えば、各離散時刻tにおいて、フレームは、時刻tにおけるデータシーケンス101内の画像に対応する視覚特徴セットと、例えば、データシーケンス101に含まれる時間(t-1、t]の間のセンサ読み取り値502(例えば、GPSおよびIMU読み取り値)と、からなる。データシーケンス101がステレオ画像を含むと仮定することができる。視覚特徴セットは、画像特徴セット(例えば、ステレオ画像の場合はステレオ特徴セット)と、動的オブジェクトに対応するポイントを除去した後のバッグオブワード(BoW)記述子と、で構成されてもよい。さらに、ハッシュテーブルを作成して、画像の特定の領域でキーポイントを検索することができる。ステレオ特徴セットは、ステレオ2Dキーポイントと、ORBなどの特徴抽出方法によってステレオ画像から抽出されたそれらの対応する記述子を含むことができ、3Dキーポイントを形成する各ステレオマッチの視差と奥行きをさらに含むことができる。その利点は、次の処理段階104で使用されるフレームシーケンス103の前処理されたフレームを格納することができることである。これにより、デバッグプロセスが容易になり、画像全体ではなく関連情報のみを保存することができる。
【0062】
第1の処理段階102におけるプロセスは、画像抽出器ユニット200を用いて、記録されたデータシーケンス101から画像(ここでは例示的にステレオ画像)を抽出することにより開始する。次に、ステレオ画像は、画像を共通の画像平面に変換して、ここで修正されたステレオ画像を生成するために、修正ユニット201によって処理される。1つの処理ブランチでは、次に、修正されたステレオ画像が特徴抽出器ユニット204に供給されて、各画像(すなわち、左および右)の2Dキーポイントを抽出する。これらの2Dキーポイントは、ステレオマッチング手順によってさらに処理され、ステレオ対応関係を有する2Dキーポイントを見いだす。最後に、ステレオマッチングから得られた視差/奥行き情報に基づいて、これらの2Dキーポイントを3D座標系に配置するために、3D再構成手順が実行される。ステレオ対応関係を有さない2Dキーポイントは保持され得る。注目すべきは、2Dキーポイントを抽出するときに、対応する特徴記述子も抽出されてもよく、出力に、すなわちステレオ特徴セットに含まれてもよいということである。
【0063】
他の処理ブランチでは、従来の概念を使用して、修正された画像が分類器ユニット203に供給され、修正された画像の画像ピクセルに割り当てられた意味論的ラベルのセットを出力する。より高速な処理を可能にするために、入力補正画像のダウンサンプリングを実行することが役立つ場合がある。
【0064】
さらに、動的オブジェクトフィルタリングユニット205は、次に、自動車、自転車、オートバイなどの動的オブジェクトに属する意味論的ラベルに対応する2Dキーポイントを除去することにより、入力ステレオ特徴セットを処理する。さらに、外観記述子ユニット206は、特にBoW記述子および任意選択でハッシュテーブルを追加することによって、入力フィルタリングされたステレオ特徴セットにさらに情報を追加するために使用され、ハッシュテーブルは、速度とロバスト性をさらに向上させ、最終的に視覚特徴セットのコンテンツを完成させるために構築されている。出力フレームシーケンスのデータサイズに制約がある場合には、外観記述子はオプションの処理ユニットであってもよい。実際の処理は、単に、情報を必要とするユニットで直接行うことができ、例えば、ハッシュテーブルは、
図3のカメラ追跡301と、
図4のループ検出およびマージ401のBoW記述子で行うことができる。
【0065】
最後のステップとして、GPS/IMUパーサ202によって処理された2つの連続した画像間の抽出されたセンサ読み取り値(ここでは、例としてGPSとIMUからの読み取り値)が、コンテナユニット207によって視覚特徴セットに追加され、出力フレームを形成する。オフライン処理は、上記の処理ユニットの一部またはすべてにおけるマルチスレッド処理の使用を含むことができるので、出力シーケンスは、タイムスタンプに基づいて順序付けられたフレームシーケンス103を形成することが保証される。
【0066】
図3は、第2の処理段階104、すなわち「シーケンスマッピング」の例をより詳細に示しており、フレームシーケンス103のフレームが順次処理される。この処理段階104の目的は、入力フレームシーケンス103から「部分グラフ」(または「部分マップ」)または「シーケンスマッピンググラフ」を作成することである。グラフは通常、頂点と辺で構成され、シーケンスマッピンググラフには2つのタイプの頂点、すなわち、対応するキーフレームと3Dキーポイントを有するカメラポーズ、がある。キーフレームは、グラフの一部として選択されたフレームを単に参照する。辺は、これら2つのタイプの頂点間の関係を単に示している。技術的には、各辺は、特定のカメラポーズのポイントの再投影誤差を計算することにより、3Dキーポイントをカメラポーズに関連付ける。再投影誤差が特定のしきい値を下回る場合には、辺が確立される。
【0067】
第2の処理段階104の1つの処理ブランチでは、時刻tにおけるフレームの視覚特徴セットが視覚特徴パーサユニット300によって抽出され、その視覚特徴セットは次にカメラ追跡301によって局所的に処理される。ここで、現在のフレームの2Dキーポイントと保存されているローカルマップ3Dキーポイントとの間のマッチングは、ローカルマップ3Dキーポイントを現在の画像2D平面に再投影することによって行われる。これを可能にするために、(例えば、過去のカメラポーズにモーションモデルを使用することにより)現在の画像のカメラポーズが予測され、反復アルゴリズムが実行され、初期予測されたポーズからカメラポーズをゆっくりと変更して、再投影誤差を最小限に抑える。外れ値のフィルタリングは、例えば、特定の再投影誤差しきい値を超える最小の再投影誤差を有するポイントを拒否することにより、この反復中に行うこともできる。これは、最終的な出力を、フィルタリングされた視覚特徴セットと最適化されたカメラポーズにする。フィルタリングされた視覚特徴セットは、フレームの2Dキーポイントとローカルマップ3Dキーポイントとの間の対応関係であり得る追加情報を含んでもよい。
【0068】
最適化されたカメラポーズが取得されると、追跡されたポイントと追跡されていないポイントの数を考慮して、標準LBAグラフにフレームを挿入する決定を行うことができる。特定の条件が満たされると、フレームがグラフに挿入されてキーフレームと呼ばれ、これは対応するカメラポーズを有する。フレーム内の2Dキーポイントは、ローカルマップ3Dキーポイントとの対応関係を有していないため、新しいローカルマップ3Dキーポイントとしてグラフに挿入され、それらの3D位置はフレームの3Dキーポイントから取得される。特に、3Dキーポイント(ステレオ対応関係)を有さないフレームの2Dキーポイントは破棄される場合がある。対応する最適化されたカメラポーズは、標準ローカルバンドル調整303によってグラフが局所的に最適化される次のステップの初期ポーズ推定を形成している。ここでの「局所的」とは、過去まで延長された時間的な観測ウィンドウがあることを意味し、「標準」とは、カメラセンサのみの使用を意味し、BAは、最適化されたカメラポーズと3Dキーポイントの位置を見つける方法であり、これにより、フィルタリングされた視覚特徴セット情報が与えられると、再投影誤差が最小限に抑えられる。
【0069】
最終的な出力は局所的に最適化されたグラフであり、新しいキーフレームの最適化されたカメラポーズは、視覚オドメトリ(相対カメラポーズの変更)情報として拡張カルマンフィルター(EKF)ユニット305に送信される。次に、視覚オドメトリ情報がセンサ読み取り値と融合され(ここでは、GPS/IMUパーサユニット302によってフレームシーケンス103から取得されたGPSおよびIMUから)、センサ読み取り値は、融合カメラポーズを出力するために、EKFユニット305によって過去の画像と現在の画像との間で取得される。
【0070】
フレームがキーフレームと見なされない場合、プロセスは標準LBAユニット303をバイパスして続行され、最適化されたカメラポーズを視覚オドメトリ情報としてEKFユニット304に転送する。EKFユニット304は、この情報を使用して内部状態を更新し、さらなるプロセスは必要ない(同様に融合LBA305も不要)。シーケンスマッピングプロセス104全体は、次のフレームt+1の処理を続行する。
【0071】
次に、融合カメラポーズと以前に取得した標準LBAグラフが融合LBA305に送られ、最適化された融合LBAグラフまたはシーケンスマッピンググラフ105が出力される。このグラフ105は、ORB-SLAMグラフや上記の標準LBAグラフとは異なり、これは、3Dキーポイント情報を維持しながら、センサ読み取り値を考慮した後に、キーフレームがカメラポーズではなく最適化されたカメラポーズに対応するためである。次に、上記の第2の手法と同様に、再投影誤差に対してバリア項が使用される。これにより、システムが例えばGPSおよびIMUデータにオーバーフィットして、インライアの損失と追跡の失敗が起こりやすくなるのを防止する。第2の手法とは対照的に、EKFユニット304は、複数のセンサ読み取り値、すなわち、ここでは例示的に、GPSのみではなく、GPSとIMUの両方の読み取り値を処理する。
【0072】
ユニット305における提案された融合LBA(FLBA)最適化は、次式のようになり得る。
【数1】
ここで、
【数2】
は最適化されたパラメータ、すなわちローカルカメラポーズとローカル3Dキーポイントであり、γは定数変数であり、e
tはバリアしきい値の項であって、標準LBAの残差誤差e
r(x
LBA)よりわずかに大きく、e
r(x)は全体の再投影誤差項であり、e
EKF(x)はEKF誤差項である。
【0073】
【数3】
ここで、G
Lはローカルキーフレームの集合であり、G
Fは可視のキーフレーム(ローカルキーポイントも監視しているキーフレーム)の集合であり、M
kはキーフレームkから観測された3Dキーポイントの集合であり、p()はHuberノルムであり、Δz
i(x)はキーポイントiの個々の再投影誤差項であり、Λはピクセル誤差の共分散の逆数であり、
【数4】
は転置演算を示し、
e
t=λe
r(x
LBA),λ≧1
【数5】
ここで、log
SE(3)は、ライ代数表現を6次元ベクトルとして返す3D標準ユークリッド群の対数であり、T
EKF,kは、キーフレームkに対してEKFによって推定された、マップの原点とカメラポーズとの間の変換行列であり、T
WC(x
k)は、マップの原点とx
kに応じて予測されるカメラポーズとの間の変換行列であり、ΣはEKF誤差の共分散であり、
【数6】
である。
【0074】
一実施形態では、単純化された第2の処理段階104は、標準LBAユニット303を除外することによって得られてもよく、したがって、EKFユニット304への視覚オドメトリ入力は不要である。さらに、カメラ追跡ユニット301の出力、すなわち、フィルタリングされた視覚特徴セットおよび最適化カメラポーズは、次式のようにバリア項なしで最適化を実行する融合LBAユニット305に直接進む。
【数7】
【0075】
融合LBAユニット305は、カメラ追跡ユニット301に供給されるローカルマップ3Dキーポイントをさらに出力する。この単純化された処理は、処理が本来の損失や追跡の失敗を起こしやすくするという欠点と引き換えに、計算上の利点をもたらす可能性がある。
【0076】
複数のシーケンスマッピンググラフ105を統合された完全グラフ107(「グローバルマップ」とも呼ばれる)にマージできるようにする目的で、最終処理段階106の例、すなわち「グラフ更新」または「グローバルマップ更新」を
図4にさらに詳しく示す。この処理段階106の主なタスクは、ループ検出およびマージユニット401で複数の入力シーケンスマッピンググラフ105間で共有されるループまたは重複領域の存在を検出し、検出された領域に対して完全グラフ最適化ユニット402で最適化を実行することである。BoW記述子とセンサ読み取り値を使用して、候補キーフレームを抽出し、ループ検出を有効にする。中間グラフは、3Dキーポイントを別のグラフ400(ここでは「初期グラフ」)とシーケンスマッピンググラフ105にマージした結果としての、単に最適化されていないグラフである。複数の重複するシーケンスの利用可能性は、例えばGPSバイアスの修正を容易にする。
【0077】
提案されている完全グラフ最適化方程式は次のようになり得る。
【数8】
ここで、bはバイアス項であり、βは定数であり、
【数9】
ここで、G
LOOPは拡張された重複グラフ領域のキーフレームの集合であり、
【数10】
ここで、T
EKF(b
k)は、キーフレームkのバイアスを考慮した後に、EKFによって推定されたマップの原点とカメラポーズとの間の変換行列であり、α
1とα
2は定数であり、nは現在のキーフレームと前のキーフレームとの間でスキップされたフレームの数である。
【0078】
グラフの複雑さが大幅に増加するのを回避するために、冗長なキーフレームを除去することが望ましい。特に、計算の複雑さの理由により、この最適化にはバリア項は使用されていないが、許可されている場合は融合LBAのように簡単に導入することができる。
【0079】
オフラインマッピングプロセスが説明されたので、提案されたリアルタイム分散SLAMが
図5に示すように導出され得る。デバイス100によって実行される提案されたSLAM方法のリアルタイム動作を容易にするために、オフラインマッピング(すなわち、処理段階102、104、106)に使用可能な前述のアーキテクチャは、以下のアーキテクチャに再構成され得る。
【0080】
最初に、第1の処理段階102(「前処理」)は、センサ501(例えば、ステレオカメラ、GPS、およびIMU)から直接入力を受け取り、リアルタイム(「リアルタイム前処理」)で処理を実行するように変更されてもよい。第1の処理段階102は、例えば、車両の端末デバイス500において実行されてもよい。
【0081】
一定期間後に得られた出力フレームシーケンス103は、次に、端末デバイス500によってネットワークを介してネットワークデバイス510、例えばクラウドサーバに送信され、第2の処理段階104および第3の処理段階106(「シーケンスマッピング」および「グローバルグラフの更新」)を実行することができる。異なる端末デバイス500からネットワークデバイス510によって同時に収集されるいくつかの入力が存在する可能性があるという事実(すなわち、分散処理およびクラウドソーシング方法)が存在する場合、インテリジェントプロセスが開始され、これは、新しい情報を含むシーケンスに優先度の高いプロセスを割り当てることができる。次に、第3の処理段階106によって出力された更新された完全グラフ107(グローバルマップ)は、マップサーバ511に格納されてもよく、例えば位置特定を実行したい任意の端末デバイス510、クライアントまたは車両によってダウンロードされるように利用可能であってもよい。
【0082】
図6に示すように、リアルタイム位置特定処理段階503では、「前処理」102が、時刻tに対応するセンサ読み取り値502を処理した結果としてフレームシーケンス103のフレームtを出力するとすぐに、データ解析は、第2の処理段階104と同様に、すなわちGPS/IMUおよび視覚特徴パーサユニット300によって実行され得る。第1の処理段階102が直接データを直接出力する場合には、このデータ解析はまたスキップされ得る。(第2の処理段階104と比較して)リアルタイム位置特定処理段階503における主な変更は、融合LBA305(
図3を参照)の代わりに融合追跡600(
図6を参照)が存在することである。融合追跡600は、すべての入力、すなわち融合カメラポーズ、「グローバルマップ」(または完全グラフ)、およびローカル標準LBAグラフを考慮して、最適化されたカメラポーズを出力する。融合追跡600は、入力フレームごとに、フレームがキーフレームと見なされるかどうかに関係なく、常に推定カメラポーズを出力する。
【0083】
実際には、位置特定を実行するためにグローバルマップの全領域を使用する必要はなく、特定の関心領域、例えば現在のセンサ読み取り値(例えば、GPS読み取り値)内の領域で十分である。マップサーバ511から特定の関心領域に対応する最新の完全グラフ107(グローバルマップとも呼ばれる)を取得することは、最新の更新または変更を端末デバイス500に十分に知らせて、渋滞、事故、道路工事などの状況で役立つことができる。
【0084】
この場合、現在のGPSバイアスも位置特定中に修正され得る。融合追跡600は次のように記述することができる。
【数11】
ここで、ξ
*は最適化されたカメラポーズであり、
【数12】
【数13】
ここで、b
-1は前のバイアス項である。
e
t=λe
r(ξ
LBA),λ≧1
別の可能性は、バリア項なしで最適化を実行することである。
【数14】
【0085】
図7は、本発明の一実施形態による方法700を示す。方法700は、SLAMを実行するためのものであり、デバイス100によって実行されるSLAM方法であってもよい。したがって、この方法は以下を含む。第1の処理段階102として、フレームシーケンス103を取得するために、カメラによって記録された複数の画像および複数のセンサ501からのセンサ読み取り値を含む受信されたデータシーケンス101を前処理するステップ701であって、各フレームは、決定された時間インスタンスにおける画像のうちの1つに関連する視覚特徴セットと、その時間インスタンスからのセンサ読み取り値502と、を含む、ステップ701。第2の処理段階104として、シーケンスマッピンググラフ105を生成するために、視覚特徴セットおよびそのフレームに含まれるセンサ読み取り値502に基づいてフレームシーケンスの各フレームを順次処理する、ステップ702。第3の処理段階106として、完全グラフ107を生成または更新するために、シーケンスマッピンググラフ105を少なくとも1つの他のグラフ400とマージする、ステップ703。
【0086】
本発明は、実施態様と同様に例として様々な実施形態に関連して説明された。しかしながら、図面、本開示および独立請求項の研究から、請求された発明を実施する当業者によって、他の変形が理解され実施され得る。特許請求の範囲および説明では、「含む」という用語は他の要素またはステップを除外せず、不定冠詞「a」または「an」は複数を除外しない。単一の要素または他のユニットが、特許請求の範囲に記載されているいくつかのエンティティまたはアイテムの機能を果たすことができる。特定の手段が相互に異なる従属請求項に記載されているという単なる事実は、これらの手段の組み合わせが有利な実施に使用できないことを示していない。
【符号の説明】
【0087】
100 デバイス
101 データシーケンス
102 第1の処理段階
103 フレームシーケンス
104 第2の処理段階、シーケンスマッピングプロセス
105 シーケンスマッピンググラフ
106 第3の処理段階、最終処理段階
107 完全グラフ
200 画像抽出器ユニット
201 修正ユニット
202 GPS/IMUパーサ
203 分類器ユニット
204 特徴抽出器ユニット
205 動的オブジェクトフィルタリングユニット
206 外観記述子ユニット
207 コンテナユニット
300 視覚特徴パーサユニット
301 カメラ追跡、カメラ追跡ユニット
302 GPS/IMUパーサユニット
303 標準ローカルバンドル調整、標準LBAユニット
304 拡張カルマンフィルター(EKF)ユニット
305 EKFユニット、融合LBAユニット
400 グラフ
401 ループ検出およびマージ、ループ検出およびマージユニット
402 完全グラフ最適化ユニット
500 端末デバイス
501 センサ
502 センサ読み取り値
503 リアルタイム位置特定処理段階
510 ネットワークデバイス
511 マップサーバ
600 融合追跡
700 方法