[SLAMペーパー]ディープラーニングの実現可能性/方向性+ビジュアルSLAM

に視覚的SLAMの方向での深層学習の実現可能性/方向性を参照し私自身の理解の一部を追加します


背景:この記事では、2018年以前の関連する理論をカウントし、2019年の論文は含まれていません。

参考資料:
[1]ディープラーニング+ SLAMの概要(ブログ、2018.08)
[2] GSLAM-一般的なクロスプラットフォームの完全にオープンソースのSLAMインタラクティブプログラム
[3] WeChatパブリックアカウント「コンピュータービジョンライフ」コンテンツコレクション
[4] VisualSLAM-自動運転実践コース
[5] ICRA 2019 Paper Quick Facts | SLAM Fall in Love with Deep Learning(これはシリーズであり、まだ更新されていません、07.11)
[6]この記事には大きな価値があります。まとめ非常に多くの論文

1.ディープラーニング+ SLAMの実現可能性

  • 長期的には、ディープラーニングが現在のSLAMテクノロジーの一部のモジュールに取って代わる可能性がありますが、SLAMをエンドツーエンドで完全に置き換えることはほとんどありません。
  • 短期(3〜5年)では、ディープラーニングは従来のSLAMテクノロジーに大きな影響を与えません。

2.ディープラーニング+ SLAMの5つの主な研究の方向性

  • 1)単眼SLAM学習スケール/深さ
  • 2)カメラの再配置/閉ループの検出
  • 3)フロントエンドの特徴抽出とマッチング
  • 4)カメラポーズのエンドツーエンド学習
  • 5)セマンティックSLAM

3.単眼SLAM学習スケール/深さ

特徴:

  • 単眼の純粋な視覚SLAMの最大の問題はスケール情報の欠如であるため、最も直感的なアイデアは、画像のスケール/深度情報を補完する深層学習を脳に導入することです。

例1:CNN-SLAM

  • TUMがCVPR17で公開したようにCNN-SLAM、LSD-SLAMの深度推定と画像マッチングがCNNベースの方法に置き換えられ、より堅牢な結果が得られます。
  • 実際、関連する作業の精度は実際には高くありません。部屋のCNN-SLAMの各ピクセルの平均誤差は約50cmです。屋外で最大7メートル従来の三角測量の深さと比較すると、精度に一定のギャップがありますが、堅牢であるという利点があります。従来の三角測量の面が大きすぎたり小さすぎたりする視差の問題があり、ここにはDLがありません。
    ここに画像の説明を挿入

例2:GEN-SLAM

  • GEN-SLAM:単眼SLAMの深層学習生成モデル。フォードの無人運転研究者は、単眼RGBセンサーによる姿勢推定と深度推定を実現できる深層学習に基づくシステムを提案しました。システム全体は、従来の幾何学的SLAMの結果に基づいてトレーニングされているため、1台のカメラでその環境のトポロジ姿勢と周囲の障害物の深度マップを出力できます。
  • この記事で提案したソリューションに基づいて、深度センサーと従来の幾何学的SLAM法を使用して事前にマップを作成し、そのマップをこの記事のモデルと組み合わせてトレーニング用に事前に使用できます。そうすれば、これらの移動ロボットは低コストの単眼カメラを装備するだけでよく、訓練されたモデルを使用して、複雑な工場環境での知覚とナビゲーションを実現できます。
  • トポロジカルマップの生成。作者はORB-SLAM2アルゴリズムを使用してカメラのモーション軌跡を取得します。パスが再現可能であることを確認するために、作者は最初にORB-SLAM2を使用してマップを作成して保存します。その後の実験では、マップを使用して位置決めを実現します。機能し、ロボットは同じパスに従って移動するように計画されています。
    ここに画像の説明を挿入

例3:単眼深度推定と視覚オドメトリの教師なし学習

この論文の目的は、教師なし学習におけるスケールの不確実性の問題を解決し、両眼データを使用して深度推定と視覚オドメトリネットワークを共同でトレーニングすることです。深度推定と単眼カメラを取得するには、アプリケーション中に単眼画像入力のみが必要です。転送マトリックス(視覚オドメーターの機能を実現できます。)著者は、フレーム間視覚オドメーターを設計しました。これは、同様の教師なし学習方法よりも大幅に優れたパフォーマンスを持ち、基本的な幾何学的方法に匹敵します。
ここに画像の説明を挿入

管理文章:
[1] CNN-SLAM:学習された深度予測を備えたリアルタイムの高密度単眼SLAM(2017)
[2] GEN-SLAM:単眼同時ローカリゼーションおよびマッピングのための生成モデリング(2019)
[3]単眼深度推定の教師なし学習および深部特徴再構成を伴う視覚オドメトリ(2018)、https://github.com/Huangying-Zhan/ Depth-VO-Feat

4.カメラの再配置/閉ループの検出

特徴:

  • カメラの再配置/閉ループ検出では、通常、現時点でのさまざまなセンサーの情報の特徴抽出が必要です。損失後の初期位置を取得するために、以前に取得した履歴データを検索して照合します==特定の歴史的な場所に到達しました。==このプロセスは、従来の画像マッチングと一定の類似性があり、深層学習によって完了するタイプのタスクにより適しています。

例1:PoseNet DL + SLAM

  • DL + SLAMの先駆的な仕事などの代表的な仕事-ケンブリッジ紙:ICCV15のPoseNetは、GoogleNetを使用して6自由度のカメラポーズ回帰モデルを実行し、取得したポーズを再配置に使用します。
    ここに画像の説明を挿入
    ここに画像の説明を挿入
    評価:
  • その結果は当時(15年)非常に画期的でしたが、その主な重要性は、実用性と精度が従来の移転ソリューションほど信頼できない新しいアイデアを作成することでした。

参考記事:
[1] PoseNet:リアルタイム6-DOFカメラ再ローカリゼーションのための畳み込みネットワーク(2015)、https://github.com/alexgkendall/caffe-posenet
[2]ビジュアルSLAMベースの閉ループ検出のパフォーマンスディープラーニング評価(2018)について。この記事の主な貢献は、PCANet、CaffeNet、AlexNet、GoogleNet、従来のワードバンドモデル(BoW)やグローバル機能情報(GIST)などの現在の主流のディープニューラルネットワークのパフォーマンスです。閉ループ検出。比較分析。

5.フロントエンドの特徴抽出とマッチング

特徴:

  • DLは、特徴抽出と画像マッチングの有望な方向性です。これは、従来の特徴抽出と記述マッチングスキームが数学的にあまり優れていないためです。明確で完全な説明、そして現在、数学を使って明確に説明するのは難しいようです。ふるいにかける、速いさまざまな特徴点による画像の理解は、非常に限られた点情報に限定されます。オプティカルフロートレースには、完全な数学的フレームワークがありませんでした。ここでDLを使用して高レベルの回帰を実行すると、予期しない結果が生じる可能性があります。
  • 同時に、特徴抽出と記述は常にSLAMアルゴリズムの主要な時間のかかるユーザーであり、比較的堅牢で正確な結果を得るには多くの計算が必要であり、それらの多くは必然的に最適化が困難です。次に、DLを使用して機能を直接生成することは、試す価値のあるアイデアです。結局のところ、DLには無数の最適化方法があります。

例1:幾何学的な深いSLAMに向けて

17年にリリースされたMagicLeapの記事TowardGeometric Deep SLAMは、2つのネットワークを含むCNNベースの特徴抽出とマッチング方法を提案しました。1つ目は2次元の特徴点を抽出するために使用され、2つ目は2次元の特徴を出力するために使用されます。ポイントの行列。記述子、複雑な画像前処理、オブジェクトの各コーナーの正確な配置、高速かつ軽量、シングルコアCPUで最大30 fpsが不要ですが、コードはオープンソースではありません
ここに画像の説明を挿入
ここに画像の説明を挿入

例2:完全な機能処理パイプライン

ECCV16で公開されたLIFTは、検出、方向推定、特徴の説明など、完全な特徴処理パイプラインを実装する新しいタイプのディープネットワークを提案しています。SIFTよりも密度の高い特徴点を抽出でき、エンドツーエンドのアーキテクチャの解釈性が向上します。実験結果から、いくつかのデータセットのパフォーマンスは、現在のすべての従来のDLベースの機能スキーム(SIFTを含む)を上回っているように見えますが、実行時間のデータは示されていません。速度は心配する必要があると推定されます。

ここに画像の説明を挿入
ここに画像の説明を挿入

例3:GCNv2

この記事はに基づく方法を提案しますディープラーニングのキーワードと記述子3D投影ジオメトリ用にトレーニングされたGCNに基づくネットワークGCNv2を生成します。GCNv2は、ORB-slamなどのシステムでORBを簡単に置き換えるためのORB機能としてバイナリ記述子ベクトルを設計しました。GitHubアドレス:GCNv2

ここに画像の説明を挿入

優先文章:
[1]幾何学的深層SLAMに向けて(2017)
[2] LIFT:学習した不変特徴変換(2016)、http://t.cn/RiepX4E
[3] GCNv2:リアルタイムSLAMの効率的な対応予測(2019 )、https://github.com/jiexiong2016/GCNv2_SLAM

6.カメラのポーズをエンドツーエンドで学ぶ

特徴:

  • エンドツーエンドSLAMの最大の利点は、「エンドツーエンド」です。フロントエンドポイントトラッキングとバックエンド最適化ソリューションの一連のプロセスを完全に破棄し、画像を直接入力してポーズ(またはポーズ+深度)を指定します
  • 実際にはエンドツーエンドSLAMの問題ではありませんはい、SLAMは同期ポジショニングとマップ構築、エンドツーエンドの入力画像出力アクションであり、ポジショニングとマップ構築はありません。

例1:SfM-Learner

  • Google CVPR17のSfM-Learner、この記事の中心的なアイデアはLSD-SLAMと同じです。本質は測光誤差を最適化することであり、測光の一貫性の原理を使用して各フレームの奥行きとポーズを推定します。測光の一貫性とは、同じオブジェクトのポイントについて、2つの異なるフレームの画像にポイントを投影する場合、画像のグレーレベルが同じである必要があることを意味します。2つのネットワークは、1つの単眼ビデオのみでトレーニングでき、それぞれポーズと深度を出力します。KITTIデータセットへの影響は、閉ループ再配置のないORB-SLAMよりも優れていますが、閉ループ再配置のあるORB-SLAMよりもわずかに劣っています。

ここに画像の説明を挿入
ここに画像の説明を挿入

例2:SfM-Net

  • GoogleのSfM-Netは、SfM-Learnerのアップグレード版と言えます。ポーズや深度の計算に加えて、オプティカルフロー、シーンフロー、3次元点群なども計算し、シーンモーションに使用できます。ターゲットセグメンテーション。要するに、それはの非常に強力なネットワークです。

例3:DeMoN

CVPR17のDeMoN:単眼ステレオを学習するための深度およびモーションネットワークは、以前のSfM-Learnerと同様に、ポーズと深度を監視情報として使用して、ポーズと深度を推定します。
ここに画像の説明を挿入

例4:UnDeepVO

ICRA18のUnDeepVOは、ネットワークの教師なしトレーニングに両眼画像情報を使用してスケールを取得し、単眼SLAMに使用します。単眼カメラの6-DOFポーズを推定し、ディープニューラルネットワークを使用して単眼視点の深さを推定できます。 。UnDeepVOには、2つの注目すべき機能があります。1つは教師なし深層学習法であり、もう1つは絶対スケール回復です。KITTIデータセットへの影響は、ループを開閉しない以前のSfM-LearnerおよびORB-SLAMよりも高くなっています。
ここに画像の説明を挿入
ここに画像の説明を挿入

評価:

  • DLを使用してエンドツーエンドのSLAMを実行することは非常に単純で失礼です。フロントエンドとバックエンドでの多くの厄介な問題を回避しながら、外部パラメーターの調整やタイムスタンプの同期など、従来のSLAMフレームワークでの多くの非常に厄介な手順を回避できます。アルゴリズム。まったく新しいアイデアとして、ある意味があります。
  • しかし、同じエンドツーエンドのSLAM問題も非常に明白です。前述の深度推定と同様に、多くの幾何学的モデルを含む非常に数学的な問題であるSLAMは、ディープラーニングによってエンドツーエンドで解決されます。原則として根拠は全くなく、高精度な解を得る理由はありません。
  • もう一つの大きな問題はモデルです一般化を保証することは困難です現在のSLAMシステム(視覚オドメトリ)は通常、非常に複雑なフレームワークを持っており、フロントエンドからバックエンドまでの各ステップには明確な目的があり、完全な数学的理論によってサポートされており、強力な説明的性質があります。ただし、データに大きく依存するDLを使用してSLAMシステムを大まかに概算すると、一部のデータセットでは適切に機能し、別のシナリオでは追跡できない場合があります。
  • 実際、現在のエンドツーエンドのディープラーニングSLAMは、従来の最先端の方法ほど正確ではなく、ほとんどの作業をビデオで直接トレーニングすることはできません。トレーニングプロセスはもっと面倒です

簡単に言うと、真ん中のすべてのステップは単純化されていますが、特定のデータに依存するブラックボックスです。

支配定義:
[1] SfM-Learner:ビデオからの深さと自我の動きの教師なし学習(2017)、https://github.com/tinghuiz/SfMLearner
[2] SfM-Net:ビデオからの構造と動きの学習( 2017)、非官方的TensorFlow代码:https://github.com/waxz/sfm_net、https://github.com/augustelalande/sfm
[3] DeMoN:単眼ステレオを学習するための深さとモーションネットワーク(2017)、https ://github.com/lmb-freiburg/demon
[4] UnDeepVO:教師なし深層学習による単眼視覚オドメトリ(2018)

7.セマンティックSLAM

特徴:

  • セマンティックSLAMは、SLAMの将来の開発にとって重要な方向性です。従来のSLAMが解決する主な問題は、ロボットがどこにあり、ロボットがどのように進んでいるかです。画像の理解は通常、低レベルの限定されたポイント機能に限定されます。しかし、答えはありません。ロボットの周囲の環境にあるオブジェクトとその特徴は何ですか?理想的には、人間のような高レベルのセマンティックレベルで画像を理解できる必要があります。これは、ビジネスの観点から見た大きな想像力とビジネスチャンスであるだけでなく、エンドユーザーにとってより実用的で意味のあるものです。
  • 仮定するとスパースSLAMのスパースマップポイントは、追跡と再配置用です密なSLAMの密な点群またはメッシュはシーンの再構築用です、その後セマンティックSLAMは、真のオールラウンドな「環境再構築」です。

例1:CNN-SLAM

== CNN-SLAM ==前述のように、CNNを使用して深度を推定するだけでなく、画像のセマンティックセグメンテーションにCNNを使用し、ジオメトリとセマンティックを組み合わせてセマンティック情報を含むマップを生成します。

例2:セマンティックマップの作成

フレームワークとして== LSD-SLAM ==を使用し、フレームワークとして== LSD-SLAM ==を使用し、セマンティックマップ構築用のDLを導入し、セマンティックセグメンテーションを実現するための深層学習用のキーフレームを選択し、隣接するフレームを選択する、単眼SLAMからの2016年のセミデンス3Dセマンティックマッピングで作業します。 。基本的に、2次元のセマンティックセグメンテーションを実行し、SLAMを使用して3次元空間に投影します。屋内および屋外環境で作業できます。
ここに画像の説明を挿入

表現例3:オブジェクト指向セマンティックマッピングによる意味のあるマップ

オブジェクト指向セマンティックマッピングを備えた意味のあるマップ、インポートRGB-D画像-> ORB-SLAM2すべてのフレームに適用され、SSD(シングルショットマルチボックス検出器)は、各キーフレームのターゲット検出に使用されます。3D教師なしセグメンテーション方法は、検出結果ごとに3D点群セグメンテーションを生成します->使用ICPに似ていますマッチング値メソッドは、データの関連付けを実行して、マップに新しいオブジェクトを作成するか、既存のオブジェクトとの検出の関連付けを確立するかを決定するために使用されます->マップオブジェクトの3Dモデル(3Dポイントクラウドセグメンテーション、ポーズマップを指すORB-SLAM2ポインター、各カテゴリーの累積信頼度)
ここに画像の説明を挿入

表現例4:セマンティックSLAMの確率的データ関連付け

ICRA17ベストペーパーのセマンティックSLAMの確率的データ関連付けは、SLAMの幾何学的状態(センサー状態)とセマンティックランドマーク(セマンティックランドマーク)の最適化問題を数学的に解決します。ORB-SLAM2セマンティックSLAMでのデータ関連付け、オブジェクトのセマンティック認識を実行するためのDLの導入に基づいて、ターゲット検出結果はSLAMフロントエンドの入力として使用され、従来の機能を補完してポジショニングの堅牢性を向上させます。難しいのは、検出結果のデータの関連付けをポジショニングと組み合わせて最適化する、つまり密結合の最適化を構築するのが最善であるということですが、前者は離散的な問題です。この記事では、EMアルゴリズムを使用して、セマンティック情報を初めて組み込んだSLAM問題の解決策を示します。著者は全体を通して公式です、ネットワークフレームワークが指定されておらず、ソースコードが見つかりません
ここに画像の説明を挿入

例5:セマンティックビジュアルオドメーター

  • 記事「VSO:ビジュアルセマンティックオドメトリ」は引き続きEM推定を使用します。前の記事に基づいて、距離変換を使用してセグメンテーション結果のエッジを制約し、投影エラーを使用して制約を作成します。ORB SLAM2とPhotoBundleでの検証により、特定の結果が得られました。この記事で距離変換を紹介するというアイデアは比較的直感的であり、多くの人がそれを考えることができるかもしれませんが、それでも仕事をして多くの詳細を試すことができるのは非常に困難です。ただし、セグメント化されたエッジがオブジェクトの幾何学的エッジを表していないという問題があります。セグメント化されたエッジもさまざまな観点から絶えず変化しているため、この仮定はあまり合理的ではありません。
  • 本論文では、意味情報を用いた中期連続点追跡を実現する方法を提案した。これは、既存の直接または間接の視覚オドメトリフレームワークに簡単に統合できます。自動運転でのこの方法の適用は、大幅な改善を達成しました。

ここに画像の説明を挿入

例6:3Dターゲットの検出と追跡、測位

SLAMは、マルチセンサーフュージョンのフレームワークです。RGB、レーザー、セマンティクス、IMU、コードディスクなどはすべて異なる観測値であり、ポジショニングの問題を解決する限り、SLAMフレームワークも同様に適用できます。この記事では、さまざまなオブジェクトをさまざまなマップとして扱い、再構築中にそれらを追跡します。使用される追跡方法は依然として従来のローカル機能であり、VIOは世界座標系の動き推定として使用されます。セマンティックフュージョンに関しては、4つの最適化項目を構築し、最終的に良好な結果を達成しました。((大きな統合)。
ここに画像の説明を挿入

例7:自動運転におけるセマンティックセグメンテーションに基づくポジショニング

「意味的にセグメント化された画像を使用した長期的な視覚的ローカリゼーション」、この論文はより興味深いものです。これは完全なSLAMシステムではなく、マッピングの問題を解決することはできません。それが解決する問題は、私が良い3Dマップを持っているとき、どのようにこのマップを使用して見つけるかです。従来の方法では、測位もフィーチャマッチングに基づいており、ローカルフィーチャのマッチング、またはラインやエッジなどの幾何学的フィーチャのマッチングのいずれかです。そして、ポジショニングの際の人々の考えを見ると、実際にはそのような詳細な特徴は見えません。人々は通常、オブジェクトレベルから位置を特定します。たとえば、私の場所は、東の特定の建物、西の学校、バスです。目の前、このようにバス停の隣にいます。このようにあなたの現在地を説明するとき、地図上でこれらのものの場所を知っていれば、基本的にあなたがどこにいるかを判断することができます。この記事にはこの意味が少しありますが、観測結果をセグメンテーションとして使用し、使用される測位方法は粒子フィルタリングです。そのマップは、3次元の点群であり、点群上の各点のオブジェクト分類です。このようなセマンティックレベルの制約を使用しても、優れたポジショニング効果が得られます。この方法には、ローカル機能よりもセマンティックの安定性など、特定の利点があると考えられます。もちろん、デメリットもあります。観測のセマンティック情報は豊富である必要があります。1つまたは2つのオブジェクトをたまにしかセグメント化できない場合シーン、そして働く方法はありません。

ここに画像の説明を挿入

優先定義:
[1]単眼SLAMからの半高密度3Dセマンティックマッピング(2016)
[2]オブジェクト指向セマンティックマッピングを使用した意味のあるマップ(2017)
[2]セマンティックSLAMの確率的データ関連付け(2017)
[3] VSO:ビジュアルセマンティックオドメトリ(2018)
[5]自動運転のためのステレオビジョンベースのセマンティック3Dオブジェクトと自我運動追跡(2018)
[6]意味的にセグメント化された画像を使用した長期視覚ローカリゼーション(2018)

おすすめ

転載: blog.csdn.net/weixin_44456692/article/details/107865789