ORB-SLAM2のレイアウト (3) ORB-SLAM2のテスト使用

目標

前のセクションでは、ORB-SLAM2 のコンパイルとテストを完了しました。このセクションでは、テストに完全なデータ セットを使用します。

ノーマルモード

ここでの通常モードは、コンパイルされた実行可能ファイルを直接実行します。

単眼カメラ

1 つ目は単眼カメラです。
ここではオフライン テストに TUM データセットを使用します。TUM
データセットが保存されている場所に移動します。

https://vision.in.tum.de/data/datasets/rgbd-dataset/download

ここでは最初のデータセット fr1/xyz を使用し、圧縮パッケージをダウンロードします。
ここに画像の説明を挿入

ダウンロードが完了したら、 に移動し/home/heying/ORB_SLAM2/Examples/datasetsて解凍します。
ここに画像の説明を挿入

それからテストします

 ./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml Examples/datasets/rgbd_dataset_freiburg1_xyz

ここに画像の説明を挿入
端末のディスプレイ入力センサーが次のように設定されていることがわかります。 単眼
しばらくすると、次の内容が表示されます
ここに画像の説明を挿入
。この図では、端末プログラムが 2 つのウィンドウを呼び出していることを除いて、右側のウィンドウには 1 つの写真が表示されています。緑色の四角と丸は、画像から抽出された ORB 特徴点を示します。左側のウィンドウは、カメラのポーズ (つまりキー フレーム) とマップ ポイント (各マップ ポイントは画像内の特徴点と対応関係にあります) を表示するために使用されます。
このうち、緑色は現在のカメラの表示、青色は過去のカメラポーズの表示です。ウィンドウをズームアウトすると、カメラの軌跡が確認できます


使用したデータセットが再生されるとテストは完了です
ここに画像の説明を挿入

双眼カメラ

KITTI データセットを使用します
https://www.cvlibs.net/datasets/kitti/eval_odometry.php

Download odometry data set (grayscale, 22 GB)このデータセットはここで使用されています
https://www.cvlibs.net/download.php?file=data_odometry_gray.zip
ここに画像の説明を挿入

ただし、ダウンロードには電子メールが必要です

ダウンロードが完了したら、テストのために解凍し、KITTI データセットを使用します。シーケンス 00 は、
フォルダー 00 のみを解凍することを意味します。これは、すべてを解凍するには少しスペースが必要であり、テスト段階では他に何も必要ありません。 , ただし、他のフォルダは解凍できます テストを実行します
ここに画像の説明を挿入

すると、00 フォルダ内に、双眼カメラの左右のカメラのデータセットに対応して、写真を保存するためのフォルダが 2 つあります 解凍が完了したら、テストを実行し
ここに画像の説明を挿入

ます

./Examples/Stereo/stereo_kitti Vocabulary/ORBvoc.txt Examples/Stereo/KITTI00-02.yaml Examples/datasets/KITTI/00

ここに画像の説明を挿入
端末に表示される入力センサーの設定が次のようになっていることがわかります。

プログラムが呼び出すウィンドウが表示されます
ここに画像の説明を挿入

RGB-D

以前の TUM データセットを引き続き使用し、今回は深度情報を追加します。
ここでは、rgb 画像と深度画像を一致させる必要があります。公式スクリプト プログラム assign.py
https://svncvpr.in.tum.de/cvpr-ros-pkg/trunk/rgbd_benchmark/rgbd_benchmark_tools/src/rgbd_benchmark_tools/associate。パイ

assign.py ファイルをダウンロードします。
ここに画像の説明を挿入

次に、Python を使用して assign.py を実行すると、指定したパスに associations.txt ファイルが生成されることがわかります。

python associate.py Examples/datasets/rgbd_dataset_freiburg1_xyz/rgb.txt Examples/datasets/rgbd_dataset_freiburg1_xyz/depth.txt > Examples/datasets/rgbd_dataset_freiburg1_xyz/associations.txt

ここに画像の説明を挿入

指定したパスに associations.txt ファイルが生成されていることがわかります。

それからテストします

./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml Examples/datasets/rgbd_dataset_freiburg1_xyz Examples/datasets/rgbd_dataset_freiburg1_xyz/associations.txt

ターミナルでは、入力センサーが RGB-D に設定されていることがわかります。

ここに画像の説明を挿入

エフェクトビュー
ここに画像の説明を挿入

ROSモード

次に、ROS オペレーティング システムでの使用をテストします。次に、rosbag からデータを公開する必要があるため、対応する rosbag データ パッケージをダウンロードする必要があります。

単眼カメラ

ここでテストした TUM データセットのダウンロードを続けますが、rosbag パッケージhttps://vision.in.tum.de/rgbd/dataset/freiburg1/rgbd_dataset_freiburg1_xyz.bagの形式で行います。

ここに画像の説明を挿入

それではこのバッグパッケージの情報は
ここに画像の説明を挿入

使用するトピックは で/camera/rgb/image_color、rosnode ORB_SLAM2/Mono が受け取るトピック名は です/camera/image_raw
rosbag を再生するときに、/camera/rgb/image_colorrosbag のものを に変換できます/camera/image_raw

テストを実施する

roscore
rosrun ORB_SLAM2 Mono Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml

ここに画像の説明を挿入


プログラムのウィンドウが呼び出され、カメラのトピックを待っていることがわかります。
ここに画像の説明を挿入


プレイバッグパッケージ

rosbag play --pause  Examples/datasets/rgbd_dataset_freiburg1_xyz.bag /camera/rgb/image_color:=/camera/image_raw

ここに画像の説明を挿入


スペースを押して再生すると、通常の操作が表示されます
ここに画像の説明を挿入

単眼AR

上記と同様に、次ORB_SLAM2 MonoAのように変更するだけで済みます。ORB_SLAM2 MonoAR

roscore
rosrun ORB_SLAM2 MonoAR Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml

ここに画像の説明を挿入

プレイバッグパッケージ

 rosbag play --pause  Examples/datasets/rgbd_dataset_freiburg1_xyz.bag /camera/rgb/image_color:=/camera/image_raw


プログラムが視覚化ウィンドウから飛び出します。左上隅をクリックしてInsert Cube立方体を追加すると、カメラの変化に応じてこれらの立方体がしっかりと配置されることがわかります。
ここに画像の説明を挿入

それ以来、ORB_SLAM2 のインストールとテストが完了しました。

おすすめ

転載: blog.csdn.net/Xiong2840/article/details/128373223