国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ORB-SLAM3配置及安裝教程(2023.3)

這篇具有很好參考價值的文章主要介紹了ORB-SLAM3配置及安裝教程(2023.3)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

實驗簡介

配置了好多次ORB-SLAM3,看了一些博客,都寫的不是很完整,這次根據(jù)自己的經(jīng)驗以及從一個新系統(tǒng)開始

的實際的安裝過程,記錄一下詳細的步驟。

ps.我是用的虛擬機安裝的,并且是在一個新系統(tǒng)上開始配置的

所以我的操作步驟是在一個全新的Ubuntu上做的,參考博客的同學(xué)注意一下(如果你已經(jīng)在系統(tǒng)上安裝過了一

些包,則有些步驟可以省去)

1 實驗環(huán)境

我用的是虛擬機VMware運行的

Ubuntu版本是18.04

ORB-SLAM3源碼: https://github.com/UZ-SLAMLab/ORB_SLAM3

2 準備工作(安裝依賴)

ps:整個安裝的大致流程我參考的是這篇博客

https://blog.csdn.net/holly_Z_P_F/article/details/118031317

但是中間遇到了一些問題

2.1 github clone

最好創(chuàng)建一個文件夾,將要下載的文件都放在這個文件夾中

2.1.1 ORB-SLAM3源碼

打開終端,輸入下面這個指令

git clone https://github.com/UZ-SLAMLab/ORB_SLAM3.git

如果 git 拒絕連接可以直接去這個網(wǎng)址下載壓縮包解壓

ORB-SLAM3

注意,如果是新系統(tǒng),沒有安裝git,則需要先裝git

sudo apt-get install git

另外,如果是新系統(tǒng)的話,預(yù)裝的vi編輯器不完整,用不了。

執(zhí)行如下命令安裝vi編輯器。

sudo apt-get remove vim-common
sudo apt-get install vim

2.1.2 Pangolin

git clone https://github.com/stevenlovegrove/Pangolin.git

或者去下面這個網(wǎng)址下載壓縮包

Pangolin

2.1.3 Eigen3

# github 有個mirror,版本3.3.4 from 2017
git clone https://github.com/eigenteam/eigen-git-mirror

在我安裝的過程中這一步經(jīng)常出錯,換個網(wǎng)絡(luò)多試幾次就出來了,或者也可以去下面這個網(wǎng)址下載壓縮包

Eigen3

注意!??!

不要采用下面這個指令安裝eigen3

sudo apt-get install libeigen3-dev

如果采用這個指令安裝,默認是安裝到了/usr/include/eigen3,ORB-SLAM3檢測不到,導(dǎo)致編譯會報錯。利用源碼安裝,安裝好的路徑是 /usr/local/include/eigen3/

2.2 Eigen3安裝

在參考博客中博主是先安裝Pangolin再安裝Eigen3的,但我實際安裝的過程中發(fā)現(xiàn)Pangolin是依賴Eigen3的,因此應(yīng)該先安裝Eigen3

#安裝
cd eigen-git-mirror
mkdir build
cd build
cmake ..
sudo make install
 
#安裝后,頭文件安裝在/usr/local/include/eigen3/

2.3 Pangolin安裝

2.3.1 安裝依賴

sudo apt install libgl1-mesa-dev
sudo apt install libglew-dev
sudo apt install cmake
sudo apt install libpython2.7-dev
sudo apt install pkg-config
sudo apt install libegl1-mesa-dev libwayland-dev libxkbcommon-dev wayland-protocols

2.3.2 編譯安裝

cd Pangolin
mkdir build
cd build
cmake ..
cmake --build .

2.4 Opencv安裝

最新的ORB-SLAM3要求OpenCV 4.4及以上
但是最好不要安裝OpenCV4以上(參考博主的解釋是:4默認不會生成.pc文件,最后查看版本的時候查看不到,找不到包)。具體原因不太理解,最后也選擇安裝3.4.3版本
首先,到官網(wǎng)下載源碼:https://opencv.org/releases/page/5/
ps.下載其他OpenCV3版本的理論上也可以,為了避免其他錯誤,選擇參考博主的版本,實驗可行。

ORB-SLAM3配置及安裝教程(2023.3)

下載之后放在最開始創(chuàng)建的文件夾,解壓

unzip opencv-3.4.3.zip

ps. 也可以直接右鍵提取文件

更新一下,準備安裝OpenCV依賴庫

sudo apt-get update

使用一條指令安裝所有依賴庫

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libtiff5-dev libswscale-dev libjasper-dev

# 原博客安裝的是libtiff4-dev,運行過程報錯,改成libtiff5-dev

注意:在運行的時候可能會出現(xiàn)以下報錯信息

error: unable to locate libjasper-dev 無法定位這個包libjasper-dev

解決方法是:執(zhí)行以下指令

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev

其中l(wèi)ibjasper1是libjasper-dev的依賴包

運行完這個,再安裝下面這個指令就沒錯了

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev

安裝好依賴,開始編譯OpenCV

cd opencv-3.4.3
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

注意:執(zhí)行上面指令后,終端會自動下載一個必需的ippicv加速庫。
如果終端卡住并顯示正在下載,只需要等一會兒不用進行任何操作。
否則,終端會顯示報錯,提示ippicv_2017u3_lnx_intel64_general_20170822.tgz的加速庫下載失敗。報錯如下:

ORB-SLAM3配置及安裝教程(2023.3)
解決方法是下載離線的ippicv庫

下載鏈接為:https://github.com/opencv/opencv_3rdparty/tree/ippicv/master_20170822

下載好之后,把這個ippicv文件夾單獨拷貝出來,放到自己的文件夾中

ORB-SLAM3配置及安裝教程(2023.3)
然后把OpenCV源文件中 /3rdparty/ippicv 文件夾下的 ippicv.cmake 中,

第47行"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/" 改成你新下載的ippicv文件路徑

這樣,就改成了離線編譯的ippicv文件

再次執(zhí)行cmake指令,完成編譯

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

PS. 這一步驟在參考博客中說需要科學(xué)上網(wǎng)才能正常下載,否則需要自己下載離線庫編譯。但經(jīng)過我多次嘗試,不需要科學(xué)上網(wǎng)也能正常下載ippicv庫,可以多嘗試幾次(下載離線庫相對比較麻煩)

cmake完成之后使用make編譯

ps. j4表示4核,可以根據(jù)虛擬機分配的核數(shù)進行調(diào)整,也可以不用,直接make,速度稍微慢點,但不容易出錯

make -j4

這個過程時間可能稍微長一點,完成之后,不要忘了安裝

sudo make install

到此,OpenCV安裝結(jié)束,然后配置一下環(huán)境

1)添加庫路徑

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'

2)更新系統(tǒng)庫

sudo ldconfig

3)配置bash

sudo gedit /etc/bash.bashrc

在末尾添加如下兩行代碼

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH 

4)保存,執(zhí)行如下指令使得配置生效

source /etc/bash.bashrc 

5)更新

sudo updatedb  

如果該指令報錯,那么可能是沒有安裝mlocate

先執(zhí)行安裝命令

apt-get install mlocate

然后再sudo updatedb

6)版本檢測

pkg-config --modversion opencv

注意:如果執(zhí)行后,顯示找不到包。那么注意下載的OpenCV版本是不是3.版本的,OpenCV版本4以上的,默認不生成.pc文件,會出現(xiàn)找不到包的問題

輸出如下,表示OpenCV完成了安裝

ORB-SLAM3配置及安裝教程(2023.3)

2.5 DBoW2 and g2o

DBoW2主要用于回環(huán)檢測,g2o(General Graph Optimization)主要用于圖優(yōu)化。
ORB-SLAM3的源碼包自帶DBoW2 and g2o,編譯時會自動安裝,不用管。

2.6 安裝boost庫

由此鏈接進入boost官網(wǎng):https://www.boost.org/

我下載的是1.77.0

ORB-SLAM3配置及安裝教程(2023.3)

ORB-SLAM3配置及安裝教程(2023.3)
下載之后解壓

tar -xzvf boost_1_77_0.tar.gz

解壓之后進入解壓出來的文件夾

執(zhí)行下面這個腳本

sudo ./bootstrap.sh

執(zhí)行完畢之后,會發(fā)現(xiàn)又多了些文件

再執(zhí)行下面這個腳本

sudo ./b2 install

需要一段時間,耐心等待即可

2.7 安裝libssl-dev

執(zhí)行下面這個指令

sudo apt-get install libssl-dev

3 ORB-SLAM3編譯和安裝

源碼編譯

進入源碼文件夾,執(zhí)行下述指令

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

注意:這個build.sh是官方給的安裝腳本,執(zhí)行即可編譯,但是實際操作經(jīng)常會出錯,太吃內(nèi)存,最好不要直接運行腳本

我選擇打開build.sh腳本,依次執(zhí)行如下每條指令,并根據(jù)自己虛擬機分配的核數(shù)選擇make后面的核數(shù)進行編譯

注意:在這之前先打開ORB-SLAM3對應(yīng)的CMakeLists.txt
找到 find_package(OpenCV 4.4)這行代碼,將OpenCV版本號改為find_package(OpenCV 3.4)
因為我們之前安裝的就是3.4版本的,而在最新的ORB-SLAM3中要求是4.4及以上版本,改成3.4不影響實驗

echo "Configuring and building Thirdparty/DBoW2 ..."
 
cd Thirdparty/DBoW2
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j
 
cd ../../g2o
 
echo "Configuring and building Thirdparty/g2o ..."
 
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j
 
cd ../../../
 
echo "Uncompress vocabulary ..."
 
cd Vocabulary
tar -xf ORBvoc.txt.tar.gz
 
 
echo "Configuring and building ORB_SLAM3 ..."
 
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j

運行最后一條指令時,出現(xiàn)報錯如下:
ORB-SLAM3配置及安裝教程(2023.3)
解決方法是打開對應(yīng)的文件,如Tracking.cc,LoopClosing.cc

再include后面添加以下代碼

namespace cv
{
template<typename _Tp, int m, int n> static inline
Matx<_Tp, m, n> operator / (const Matx<_Tp, m, n> &a, float alpha)
{
return Matx<_Tp, m, n>(a, 1.f / alpha, Matx_ScaleOp());
}
}

ps. 這里發(fā)生了一個很玄學(xué)的情況

最后一條指令我使用make -j4,即使在對應(yīng)的文件中加入了上述代碼也仍然會報錯。

然后我改成make之后就成功編譯了(離譜~

但同時,改成make之后編譯速度大大降低,需要等很久

數(shù)據(jù)集測試

EuRoc數(shù)據(jù)集下載地址:

https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets#downloads

下載比較慢,有百度網(wǎng)盤的可以用下面這個地址,我將所有EuRoc數(shù)據(jù)集(包括bag格式和ASL格式)都下載下來放里面了,鏈接永久有效

鏈接:https://pan.baidu.com/s/1-48M4G-CJ-j_AFSeLr8XDw?pwd=wd0s
提取碼:wd0s

要下載ASL格式的,我下載了V102V203兩個
ORB-SLAM3配置及安裝教程(2023.3)

這個壓縮包下好之后,解壓打開之后,里面是一個mav0的文件夾(有些打開會還有一個_MACOSX 文件加,可以直接刪掉,只留mav0文件夾)

具體原因是這個其實是在MAC操作系統(tǒng)壓縮時產(chǎn)生的緩存垃圾,在Windows系統(tǒng)、Linux系統(tǒng)就會顯示出來(大概是這意思)

然后在ORB-SLAM3文件夾下創(chuàng)建一個文件夾dataset,

dataset文件夾下將解壓的數(shù)據(jù)集文件夾放進來

eg. /ORB-SLAM3/dataset/V102/mav0

然后,在ORB-SLAM3的源碼中,有一個Examples文件夾

里面有一個腳本euroc_examples.sh,打開這個腳本

PS. 最新的ORB-SLAM3版本已經(jīng)找不到了,可以去下面這個鏈接拷貝過來

https://github.com/electech6/ORB_SLAM3_detailed_comments

并且里面還有ORB-SLAM3的詳細注釋

打開這個腳本,里面有ORB-SLAM3各種運行模式針對各個數(shù)據(jù)集的運行指令,選擇下載數(shù)據(jù)集對應(yīng)模式下的指令,提取出來(以V102、單目+IMU為例):

./Examples/Monocular-Inertial/mono_inertial_euroc ./Vocabulary/ORBvoc.txt ./Examples/Monocular-Inertial/EuRoC.yaml “$pathDatasetEuroc”/V102 ./Examples/Monocular-Inertial/EuRoC_TimeStamps/V102.txt dataset-V102_monoi

我加粗的地方需要改

**“$pathDatasetEuroc”**改為 ./dataset,表示數(shù)據(jù)集所在的路徑

即得到下面這條指令

./Examples/Monocular-Inertial/mono_inertial_euroc ./Vocabulary/ORBvoc.txt ./Examples/Monocular-Inertial/EuRoC.yaml ./dataset/V102 ./Examples/Monocular-Inertial/EuRoC_TimeStamps/V102.txt dataset-V102_monoi

在ORB-SLAM3文件夾下打開終端執(zhí)行這條指令

ORB-SLAM3成功運行

運行截圖

ORB-SLAM3配置及安裝教程(2023.3)

ORB-SLAM3配置及安裝教程(2023.3)
運行結(jié)束,終端顯示

ORB-SLAM3配置及安裝教程(2023.3)
ps.這里好像出了一點小錯誤,存儲軌跡出錯了

但神奇的是,仍然能看見存儲的軌跡文件,奇怪

ORB-SLAM3配置及安裝教程(2023.3)
整個過程大概就是這樣,簡單記錄一下

如有不足,歡迎指正!

ps. 第一次寫博客,感覺操作還比較生疏,但當寫到結(jié)尾,翻看全部內(nèi)容的時候,卻產(chǎn)生了一種滿滿的成就感。

但這只是一個開始,以后也要繼續(xù)加油!

因為是第一次寫,所以大部分內(nèi)容甚至格式都參考了這篇博客,并且第一次復(fù)現(xiàn)成功也是參考這篇博客

https://blog.csdn.net/holly_Z_P_F/article/details/118031317

非常感謝這位博主?。?!文章來源地址http://www.zghlxwxcb.cn/news/detail-413365.html

到了這里,關(guān)于ORB-SLAM3配置及安裝教程(2023.3)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • ORB-SLAM2的布置(一)Pangolin的安裝

    ORB-SLAM2的布置(一)Pangolin的安裝

    ORB SLAM 2在github的官方流程 https://github.com/raulmur/ORB_SLAM2 然后就是安裝Pangolin 在 ORB SLAM 2 中那些很炫酷的實時建圖畫面是通過 Pangolin 實現(xiàn)的。 Pangolin 是一個輕量級的開發(fā)庫,控制 OpenGL 的顯示、交互等。 Pangolin 的核心依賴是 OpenGL 和 GLEW。 ? ? OpenCV3.2 版本 DBoW2 和 g2o,這兩個

    2023年04月18日
    瀏覽(26)
  • 自學(xué)SLAM(2)---保姆教程教你如何使用自己的視頻運行ORB-SLAM2

    自學(xué)SLAM(2)---保姆教程教你如何使用自己的視頻運行ORB-SLAM2

    如果你是新手入門,僅僅只會Linux的基本操作,并看了高翔老師視覺SLAM視屏的第一講,那么你需要準備一整天的時間,可能還不一定能運行出來!運行ORB-SLAM2將會安裝很多很多東西。那么,我們準備開始?。?我是默認你已經(jīng)裝了虛擬機和Ubuntu系統(tǒng)的?。?首先先展示一下成果

    2024年02月08日
    瀏覽(30)
  • ubuntu18.04配置ORB-SLAM3并跑EuRoC數(shù)據(jù)集(單目)

    ubuntu18.04配置ORB-SLAM3并跑EuRoC數(shù)據(jù)集(單目)

    1.1??C++11 or C++0x Compiler?安裝 新建一個終端(新建終端的快捷鍵是Ctrl+Alt+T) 輸入以下代碼 sudo apt-get install gcc sudo apt-get install g++ sudo apt-get install build-essential sudo apt-get install cmake 1.2??Pangolin?安裝 Pangolin的官方教程地址:https://github.com/stevenlovegrove/Pangolin 安裝Pangolin 1.2.1下載

    2023年04月20日
    瀏覽(32)
  • Ubuntu20.04的ROS環(huán)境安裝ORB-SLAM3詳解

    Ubuntu20.04的ROS環(huán)境安裝ORB-SLAM3詳解

    視覺SLAM實驗要在Ubuntu20.04系統(tǒng)上使用ROS跑ORB-SLAM3,熟悉一下特征點法的SLAM,把安裝過程總結(jié)記錄下來。 系統(tǒng) 版本 ubuntu 20.04 Pangolin 0.6 Eigen 3 Opencv 4.2 usb_cam 執(zhí)行命令更新源 1、ROS簡介 ROS全稱Robot Operating System(機器人操作系統(tǒng)) ROS是適用于機器人的開源元操作系統(tǒng) ROS集成了大

    2023年04月21日
    瀏覽(24)
  • Ubuntu18.04版本下配置ORB-SLAM3和數(shù)據(jù)集測試方法

    Ubuntu18.04版本下配置ORB-SLAM3和數(shù)據(jù)集測試方法

    使用:VMware Workstation Pro 虛擬機系統(tǒng)版本是:Ubuntu 18.04.06 虛擬機內(nèi)存:8g(若為4g大小,很容易出現(xiàn)后文中ORB-SLAM3編譯時會出現(xiàn)的內(nèi)存問題) 虛擬機存儲:50g 若是配置完發(fā)現(xiàn)存儲空間不足,可以參考這篇博客進行清理: 下載配置技巧:Ubuntu18.04安裝vmware-tools解決無法復(fù)制粘貼

    2024年02月09日
    瀏覽(23)
  • ORB-SLAM2的布置(四)ORB-SLAM2構(gòu)建點云

    ORB-SLAM2的布置(四)ORB-SLAM2構(gòu)建點云

    高博的工作是對基本 ORB SLAM2 的擴展,基本思想是為每個關(guān)鍵幀構(gòu)造相應(yīng)的點云,然后依據(jù)從 ORB SLAM2 中獲取的關(guān)鍵幀位置信息將所有的點云拼接起來,形成一個全局點云地圖。 https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map 具體的依賴包括: OpenCV (推薦 3.2 版本) DBoW2 和 g2o(源

    2024年02月05日
    瀏覽(22)
  • 【視覺SLAM】ORB-SLAM2S: A Fast ORB-SLAM2 System with Sparse Optical Flow Tracking

    【視覺SLAM】ORB-SLAM2S: A Fast ORB-SLAM2 System with Sparse Optical Flow Tracking

    Citations: Y. Diao, R. Cen, F. Xue.ORB-SLAM2S: A Fast ORB-SLAM2 System with Sparse Optical Flow Tracking[C].2021 13th International Conference on Advanced Computational Intelligence (ICACI). Wanzhou,China.2021:160-165. Keywords: Visualization,Simultaneous localization and mapping,Cameras,Real-time systems,Aircraft navigation,Central Processing Unit,Traje

    2023年04月08日
    瀏覽(23)
  • 【SLAM實戰(zhàn)篇】Ubuntu 20.04版本(OpenCV版本4.5.3)對于ORB-SLAM2安裝運行,代碼編譯,自己的數(shù)據(jù)集構(gòu)造

    【SLAM實戰(zhàn)篇】Ubuntu 20.04版本(OpenCV版本4.5.3)對于ORB-SLAM2安裝運行,代碼編譯,自己的數(shù)據(jù)集構(gòu)造

    學(xué)完SLAM十四講 心血來潮想跑一下ORB-SLAM2的代碼,純新手小白,自己的踩坑經(jīng)歷進行整理: 本文章主要對ORB-SLAM2進行編譯運行。以及自己構(gòu)建數(shù)據(jù)集。 源碼github地址:https://github.com/raulmur/ORB_SLAM2 終端克隆代碼: 查看源代碼,其重要的代碼庫僅為三個文件夾: Example include s

    2024年03月13日
    瀏覽(34)
  • ORB-SLAM 論文閱讀

    ORB-SLAM 論文閱讀

    論文鏈接 ORB-SLAM 0. Abstract 本文提出了 ORB-SLAM,一種基于特征的單目同步定位和建圖 (SLAM) 系統(tǒng) 該系統(tǒng)對嚴重的運動雜波具有魯棒性,允許寬基線環(huán)路閉合和重新定位,并包括全自動初始化 選擇重建的點和關(guān)鍵幀的適者生存策略具有出色的魯棒性,并生成緊湊且可跟蹤的地圖

    2024年01月22日
    瀏覽(24)
  • 基于ORB-SLAM3庫搭建SLAM系統(tǒng)

    基于ORB-SLAM3庫搭建SLAM系統(tǒng)

    博客地址:https://www.cnblogs.com/zylyehuo/ ORB-SLAM3配置及安裝教程 ORB-SLAM3配置安裝及運行 Win 11pro VMware 17Pro Ubuntu 18.04 Eigen3 Pangolin Opencv3.4.3 ORB-SLAM3源碼: https://github.com/UZ-SLAMLab/ORB_SLAM3 安裝 Pangolin 需要的依賴工具 安裝 Pangolin 官網(wǎng)下載地址:https://opencv.org/releases/page/5/ 下載之后放在

    2024年02月03日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包