《視覺SLAM14講》第二版中學c 第一天

2021-10-01 17:31:24 字數 1153 閱讀 2417

p29

建立名為helloslam.cpp的檔案

#include

//標準的標頭檔案

using

namespace std;

//namespace乙個命名空間,用來把單個識別符號下的大量有邏輯聯絡的程式實體組合到一起。

//std標準程式庫中的所有識別符號都被定義於乙個名為std的namespace中。

上面的語句不嚴謹,容易出錯,應用下面的語句

using std::cout;

//使用命名空間std中的cout函式,對其他函式的使用不會構成影響,

//::是命名空間解析符

using std::endl;

//endl是乙個操縱符(manipulator),它不但實現了換行操作,而且還對輸出緩衝區進行重新整理。

int

main

(int argc,

char

**ar**)

{

argc命令列輸入引數的個數 (以空白符為分隔)

ar**儲存了所有命令列引數,以null結束

第乙個引數,int型的argc,為整型,用來統計程式執行時傳送給main函式的命令列引數的個數,在vs中預設值為1。

第二個引數,char*型的ar**,為字串陣列,用來存放指向的字串引數的指標陣列,每乙個元素指向乙個引數。各成員含義如下:

ar**[0]指向程式執行的全路徑名

ar**[1]指向在dos命令列中執行程式名後的第乙個字串

ar**[2]指向執行程式名後的第二個字串

ar**[3]指向執行程式名後的第三個字串

ar**[argc]為null

cout <<

"hello slam!"

<『\n』 只是乙個換行符

在終端輸入:

g++ helloslam.cpp
這條命令把helloslam.cpp文字檔案變異成了乙個可執行程式,這個程式為a.out檔案

g++ helloslam.cpp -o helloslam.out
g++ (源**) -o (程式名字)就可以指定生成程式的名字了

視覺slam14講 第1234講總結

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

視覺slam14講之後端優化

前端視覺里程計能給出乙個短時間內的軌跡和地圖,但不可避免的誤差累積,這個地圖在長時間內是不準確的。要想構建乙個尺度,規模更大的優化問題,以考慮長時間內的最優軌跡和地圖,這時後端優化就出現了。slam中的運動方程和觀測方程通常是非線性函式,尤其是視覺slam中的相機模型,需要使用相機內參模型及李代數表...

視覺slam14講之相機與框架

以下粗略介紹 1.視覺里程計 visual odometry 視覺里程計的任務是估算相鄰影象間相機的運動,以及區域性地圖的樣子。vo通過相鄰幀間的影象估計相機運動,並恢復場景的空間結構。它只計算相鄰時刻的運動,而和之前的資訊沒有關聯。但硬體計算肯定是有誤差的,也就是說把相鄰時刻的運動 串 起來,構成...