ORB_SLAM2 EuRoC データセットをダウンロード、コンパイル、実行します

        スラムを学ぶには、古典的なフレームワークである orbslam2 について言及する必要があり、その動作を理解することが最初のステップです。

        このチュートリアルは、orbslam2 のダウンロードおよびインストール プロセス中の操作をまとめたものです。

目次

1.Orbslam2のダウンロード

エラー: 「usleep」はこのスコープで宣言されていませんでした

2. EuRoCデータセットのダウンロードと使用

1. データセットをダウンロードする

2. データセットを実行する

3. 走行結果


1.Orbslam2のダウンロード

        公式サイト:GitHub - raulmur/ORB_SLAM2: ループ検出および再局在化機能を備えた、単眼カメラ、ステレオカメラ、および RGB-D カメラ用のリアルタイム SLAM

        他の人が書いた紹介文があります: EuRoC Dataset の紹介_Keji's Blog-CSDN Blog_euroc Dataset

        コマンド ラインを使用して、事前に用意されたフォルダーを入力し、/home/username/slam/ フォルダーに配置しました。

cd /home/用户名/slam

        ソースコードをダウンロード:

git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2

        フォルダー名が間違っている場合は、ORB_SLAM2 に変更できます。このようにして、ソース コードが /home/username/slam/ORB_SLAM2 フォルダーにダウンロードされます。

        その後は公式サイトの手順に従ってください。コンパイル:

cd ORB_SLAM2
chmod +x build.sh
./build.sh

        途中で遭遇した問題は次のとおりです。

エラー: 「usleep」はこのスコープで宣言されていませんでした

        解決策は、対応する .cc ファイルに参照行を追加することです。

#include <unistd.h>

        多くのファイルでエラーが報告されるため、基本的な src フォルダーと Examples フォルダーにある .cc ファイルのほとんどは、このライブラリ関数で参照する必要があります。引用後の間違いは基本的に報告されません。実行結果は次のとおりです。

         この時点で、インストールとコンパイルは完了です。後で、検証のためにデータセットをダウンロードする必要があります。

2. EuRoCデータセットのダウンロードと使用

ここでは主に、ORB-SLAM と ORB-SLAM2 の実行、EuRoC データ セットの実行、および EVO を使用した評価について        言及します。Huan Shao のブログ - CSDN ブログと呼んでください。

orb-slam2を使用して EuRoC データセットを実行し、evo で評価します (詳細)_Zhazha の Xiao Wang のブログ-CSDN ブログ_orbslam2 データセット

記事が 2 つあります。主なアイデアは、データ セットをダウンロードして実行することです。実行コードのアドレスを少し変更する必要があります。その他の基本的なインストールは orbslam2 公式 Web サイトと同じです。公式サイトでの注文は以下の通りです。

./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml PATH_TO_SEQUENCE_FOLDER/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/SEQUENCE.txt 

        重要な点は、最後から 2 番目のデータのパスを独自のパスに変更する必要があるということです。

1. データセットをダウンロードする

        データセットの公式 Web サイトのアドレスは次のとおりです。

kmavvisualinertialdatasets – ASL データセット

        そのダウンロードインターフェイスは次のとおりです。

        どちらかを選択してダウンロードしてください。私は Machine Hall 05 と 04 をダウンロードしました。ダウンロード後に解凍されたファイルはすべて mav0 フォルダーにあります。簡単に識別できるように、EuRoC フォルダーを作成してその中に置くことができます。データ パスは次のとおりです:/home/username/slam/EuRoC

        注: ダウンロードは ASL データセット形式です (後で ros を使用する場合は、ros バッグ形式が必要になる場合があります)。

        これに応じて、私のパスは次のとおりです。

/home/qianmengyu11/slam/EuRoC/mav0

2. データセットを実行する

        前述したように、公式 Web サイトのコマンドは次のとおりです。

./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml PATH_TO_SEQUENCE_FOLDER/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/SEQUENCE.txt 

        変更する必要があるのは最後の 2 つの項目で、最後から 2 番目の項目にはデータ アドレスを入力する必要があります。

/home/qianmengyu11/slam/EuRoC/mav0/cam0/data

        ダウンロードするデータ パッケージに応じて、最後から 2 番目の項目を次のように変更します。

Examples/Monocular/EuRoC_TimeStamps/MH05.txt

        マシンホール05の場合はMH05.txt、マシンホール04の場合はMH04.txtを書き込みます。

        要約すると、ターミナルで実行するコマンドは次のとおりです (まだ /home/username/slam にあります)。

 ./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml /home/qianmengyu11/slam/EuRoC/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/MH05.txt 

3. 走行結果

        実行結果は次のとおりです。

 

おすすめ

転載: blog.csdn.net/weixin_43907136/article/details/129070057