私たちの社会は常に変化し続けています。都市を想像してみてください。歩行者、自転車、車、バスなどすべてが常に予測不可能な動きをしています。自律移動ロボット (AMR) がこの環境で本当に成功するには、周囲をインテリジェントに観察し、解釈できる必要があります。この記事では、RTABマップとToFセンサーを使用してロボットの真の自律ナビゲーションを実現する効果的な方法について説明します。
導入
探索はロボット工学における自律ナビゲーションの重要な側面です。同時位置推定およびマッピング (SLAM) は、ロボットが未知の環境をナビゲートしてマッピングできるようにする基本的な技術です。Visual Simultaneous Localization and Mapping (VSLAM) は、ロボットがカメラからの視覚入力を使用して周囲の地図を作成し、自身の位置 (オドメトリ) をリアルタイムで推定できるようにする特定のタイプのSLAMです。この技術は、火星探査車、火星ヘリコプター、地上ロボット、水中ロボット、掃除機ロボットなど、さまざまな用途に広く使用されています。深度画像のみを使用して自律移動ロボット (AMR) の自律ナビゲーションを行うために、Time-of-Flight (ToF) カメラがRTAB-Mapと連携してどの程度機能するかを調べる調査が行われました。ToFカメラは赤外線 (IR) 画像と深度画像の両方をキャプチャします。深度画像を利用して3Dポイント クラウドを作成します。RTAB-Mapは、3Dポイント クラウドとホイール オドメトリを使用して、AMRの自律ナビゲーション用の補正オドメトリと2D占有グリッド マップを出力します。
Time of Flight (ToF) カメラとは何ですか?
ToFカメラは、ADSD3100 TOF信号プロセッサをベースにしたAnalog Devicesの深度カメラです。ホスト コンピュータへのUSB、イーサネット、またはWi-Fi接続に加えて、組み込みプロセッサ プラットフォームでのデータ処理もサポートします。ToFカメラは、産業、自動車、民生用アプリケーションでの使用向けに設計されています。飛行時間方式を使用してシーン内のオブジェクトまでの距離を計算し、正確な深度マップを作成できます。ToFカメラは赤外線 (IR) 画像と深度画像の両方を提供し、 図1 に示されています。

RTABマップのアーキテクチャ
リアルタイム アピアランス ベース マッピング (RTAB-Map) は、グラフベースのSLAM技術です。RTAB-Mapは、大規模かつ長期的なオンライン マッピングを処理するために、外観ベースのループ閉鎖検出器アプローチとメモリ管理アプローチを組み込んでいます。オドメトリ、つまりAMRの姿勢は、RTAB-Mapへの外部入力です。したがって、ホイール オドメトリ、ビジュアル オドメトリ、ICPオドメトリなど、特定のアプリケーションに適した任意のタイプのオドメトリを使用できます。RTAB-Mapでは4つの異なる入力構成を利用できます。
- RGB画像、深度画像、オドメトリ
- ステレオ画像とオドメトリ
- 3Dポイントクラウドとオドメトリ
- 2Dレーザースキャンとオドメトリ
図2 はRTABマップのさまざまなブロックを示しています。3Dポイント クラウドとオドメトリは、RTAB-Mapがユース ケースで使用する入力です。さらに、odomからbase_linkへの変換とbase_linkからcamera_linkへの変換の2つの入力変換が必要です。RTAB-Mapは、マップからodom変換、2D占有グリッド マップ、および修正されたオドメトリを出力します。RTABマップ ノードは、同期、短期記憶 (STM)、長期記憶 (LTM)、ループ閉鎖と近接検出、グラフ最適化、およびグローバル マップのアセンブルの各ブロックで構成されます。

ToFカメラを使用したRTAB-MapおよびNav2スタック パイプラインのワークフロー
rtabmap、ToFカメラ、ホイールIMU融合オドメトリを使用してAMRの自律ナビゲーションを実行するためのパイプライン全体は、 図3。ホイール-IMU融合オドメトリは、拡張カルマン フィルタを使用してホイール エンコーダ データとIMUデータを融合し、堅牢なオドメトリを取得することによって取得されます。ご覧のとおり、ToFカメラ ノード、image_procノード、ポイント クラウド ノード、rtabmapノード、ホイールIMU融合オドメトリ ノード、Nav2ノード、Rvizノードの7つのノードがあります。次の段落では、これらのノードの機能について説明します。

パイプラインの最初のノードは、IR画像と深度画像の両方をキャプチャするToFカメラ ノードです。キャプチャされた画像はimage_procノードによって補正され、接線方向と放射状の歪みが除去されます。補正されたIR画像はRvizでの視覚化に使用されます。ポイント クラウド ノードは、補正された深度画像から3Dポイント クラウドを生成します。ホイール-IMU融合オドメトリ ノードは、ホイール エンコーダとIMUデータを使用してAMRのオドメトリを推定します。rtabmapノードは、ホイールとIMUを融合したオドメトリと生成されたポイント クラウドを使用して、2D占有グリッド マップと修正されたオドメトリ (つまり、ポーズ) を生成します。Nav2ノードは、生成された占有グリッド マップとオドメトリを使用して、AMRのパス計画と自律ナビゲーションに使用されるコストマップを生成します。最後に、Rvizノードは、IR画像、オドメトリ、占有グリッド マップを表示するための視覚化ツールとして使用されます。また、AMRの目標ポーズの設定も可能になります。全体として、パイプラインはさまざまなセンサーとノードを組み合わせて、AMRの自律ナビゲーションを可能にします。
実験結果の考察
図3 は、AMR、それに搭載されたリアルセンス カメラを通して見たもの、およびメッシュとして生成された3Dポイント クラウド マップを示しています。図4 は、指定された目標状態、計画されたパス、および計画されたパスに従ってAMRが安全に到着する、作成されたマップを示しています。


さらに、ToFカメラの補正深度画像を使用して生成されたポイント クラウドは、現実世界の平面をポイント クラウド内の曲面として表示します。したがって、この問題を解決するには後処理が必要です。図6 は、ポイントクラウドフィルタリング前とポイントクラウドフィルタリング後の占有グリッドマップを示しています。このウィンドウの青い線は、AMRの推定オドメトリを示しています。

図7 は、自律航行プロセスのさまざまな段階を示しています。最初の左側の図は、AMRの現在のポーズで生成されたマップを示しています。マップは、ホイールとIMUを融合したオドメトリとポイント クラウドを使用して、rtabmapノードによって生成されます。中央の2番目の図は、計画されたパスでの目標位置を示しています。Rvizで目標位置が設定されると、Nav2ノードは占有グリッド マップとオドメトリ ポーズから生成されたコスト マップを使用してパスを計画します。計画されたパスは視覚化のためにRvizに表示されます。最後に、右側の3番目の図は、AMRが目標状態に到達したことを示しています。パスが計画されると、AMRは修正されたオドメトリ ポーズとコスト マップを使用して目標位置に向かって移動します。AMRは、ホイールとIMUを融合したオドメトリと占有グリッド マップを使用して位置を継続的に更新し、計画された経路に沿って軌道を調整します。AMRが目標位置に到達すると停止し、ナビゲーション プロセスが完了します。

結論
ToFカメラはRTAB-MapおよびNav2スタックに統合されており、ラボ環境でAMRを自律的にナビゲートします。AMRの自律ナビゲーションにRTAB-Mapを備えたToFを使用する際には、さまざまな課題に直面しました。ToFが提供するIR画像と深度画像は、深度画像が補正されていないと不正確なマップになる可能性があるため、補正する必要があります。平らな物体が点群では湾曲して見えることが観察されましたが、これは点群の後処理によって解決されました。RTAB-Mapに渡す前に、ポイント クラウドをフィルタリングする必要があります。並行して、AMRはToFからの深度画像とRTAB-Mapアルゴリズムを使用して地図を構築し、安全なナビゲーションのために地図内での位置を特定していました。また、ToFカメラとRTABマップを使用したAMRの自律ナビゲーションの成功も確認しました。私たちの実験の結果により、さまざまな商用ロボット システムへのToFの導入が加速されるものと考えています。