slam14講 跑第四講例程遇到的問題

2021-10-12 02:22:55 字數 1222 閱讀 8752

相關報錯及解決方法:

1. 報錯: target "usesophus" links to target "sophus::sophus" but the target was not found.

解決方法:  cmakelists.txt檔案中將 ''target_link_libraries(usesophus sophus::sophus)'' 語句改為"target_link_libraries(usesophus $)";

2. 找不到se3.hpp檔案

解決方法: 將#include "sophus/se3.hpp"改為 #include "sophus/so3.h" 和 #include "sophus/se3.h" ,

mkdir build

cd build

cmake ..

make

sudo make install

輸出結果清楚表明了執行sudo make install後,標頭檔案的安裝路徑" /usr/local/include/sophus", 

之後在執行諸如slambook2/ch4中**時就不會出現找不到標頭檔案的錯誤了

3. 第三個會報錯的就是 cmakelists中沒有使用c++11標準, 在cmakelists.cpp開始部分加上

add_compile_options(-std=c++11)
4. 報錯: cmakefiles/trajectoryerror.dir/trajectoryerror.cpp.o: in function `main':

trajectoryerror.cpp:(.text+0x130): undefined reference to `sophus::se3::se3(sophus::se3 const&)'

解決方法: trajectoryerror.cpp檔案中使用了sophus庫, 但是在cmakelists.cpp檔案中沒有關聯sophus庫, 所以, 需要自己在example/cmakelists.cpp檔案中新增:

好啦,我遇到的就是這些問題, 解決之後程式能夠正常編譯執行.

視覺SLAM十四講第四講

主要目標 理解李群與李代數的概念,掌握 so 3 se 3 與對應李代數的表示方式。理解 bch 近似的意義。學會在李代數上的擾動模型。使用 sophus 對李代數進行運算。旋轉矩陣自身是帶有約束的 正交且行列式為 1 它們作為優化變數時,會引入額外的約束,使優化變得困難。通過李群 李代數間的轉換關...

slam14講 slam的環境搭建

一.物理機的環境 win10 虛擬機器的版本 vm 14 sudo apt get install cmake cmake gui安裝好之後可檢視版本 cmake version3 pcl的安裝 因為pcl的庫比較複雜,所以先安裝pcl,安裝之前請拍攝快照備份。1 安裝依賴庫 sudo apt ge...

視覺slam14講 第1234講總結

slam主要完成的兩個問題是 完成slam依賴sensor 機械人本體上的sensor 主流方向,限制少 完整的乙個slam流程圖 slam中的數學描述包括兩個方程 描述剛體在空間中的旋轉有如下幾種方式 可以使用eigen庫進行相互轉換 對於描述剛體的運動我們已經可以使用李群 lie group 來...