視覺SLAM學習第一講 學習心得

2021-09-07 23:27:59 字數 2243 閱讀 7200

前傳:研一小猿乙隻,第一次在部落格上寫文章,之前都是記錄有道雲。在部落格上寫一來為了鞏固知識,二來也為了結交更多志同道合的小夥伴。話不多說,現在進入正題。

今天主要談談個人對vslam的一點小見解,並班門弄斧引入大牛們的學習經驗。小猿是跟著高博的《視覺slam十四講》學習的,說錯地方還望大家多多指教!

下附高博十四講課程目錄:

手持裝置定位

自動駕駛定位建圖

ar室內機械人——掃地機械人

無人機等等都會用到定位與建圖。

3、預備知識

預備知識與課程使用的環境

數學:高等數學、線性代數(矩陣論)、概率論

程式設計:c++、linux,了解語法和基本命令即可

英語:文獻、文件閱讀能力

環境:ubuntu 16.04

4、資源

教材:視覺slam十四講:從理論到實踐

參考書:多檢視幾何 狀態估計

部落格:視覺slam/

資料orb_slam2:

例程:5、cmake練習

cmake 是⼀種常⽤、⽅便的,⽤於組織 linux 下 c++ 程式的⼯具。有許多庫,例如 opencv、 g2o、

ceres 等,都⽤ cmake 組織它們的⼯程。所以,不管是使⽤別⼈的庫,還是編寫⾃⼰的庫,都需要掌握

⼀些 cmake 的基本知識。

書寫⼀個由 cmake 組織的 c++ ⼯程,要求如下:

include/hello.h 和 src/hello.c 構成了 libhello.so 庫。 hello.c 中提供⼀個函式 sayhello(),調⽤此函

數時往螢幕輸出⼀⾏「hello slam」。我們已經為你準備了 hello.h 和 hello.c 這兩個⽂件,見「code/」

⽬錄下。

⽂件 usehello.c 中含有⼀個 main 函式,它可以編譯成⼀個可執⾏⽂件,名為「sayhello」。

預設⽤ release 模式編譯這個⼯程。

如果⽤戶使⽤ sudo make install,那麼將 hello.h 放⾄/usr/local/include/下,將 libhello.so 放

⾄/usr/local/lib/下。

操作如下:

建立目錄ch1_lib,目錄中含有一下檔案,libhello存放庫函式hello.h和hello,c,src為主函式,build儲存cmake編譯生成的中間檔案。

src的usehello.cpp主檔案

#include "hello.h"

int main( int argc, char** ar** )

libhello中

hello.h

#pragma once

void sayhello();

hello.c

#include "hello.h"

#include void sayhello() )

set(library_output_path $/lib)

set_target_properties(libhello properties output_name "sayhello")

install(targets libhello library destination /usr/local/lib)

install(files "hello.h" destination /usr/loacl/include)

~

src的cmakelists.txt

link_directories($)

include_directories($/libhello)

set(executable_output_path $/bin)

target_link_libraries(sayhello libhello)

進入build目錄,執行結果如下:

make一般適用於應用程式,應用程式一般使用一些系統資源,而不修改系統的資源;

sudo make install 用於將庫安裝到檔案中,針對的是庫檔案。

注:sudo make install在後期李群李代數的學習中經常應用,需掌握。

SLAM十四講 學習

最近在看高翔博士的 視覺slam十四講,這本書對於入門來卻是非常的直接,有著很多可以學習借鑑的知識。但是只是看一遍並沒有多大的收穫,因此在這裡稍微的記錄,方便自己之後的回顧學習。首先是對自己學到的東西進行的反思,除了基本的概念之外,我還逐個把書上的 寫了一遍,並在ubuntu 18.04之上執行。這...

《視覺SLAM十四講》學習日誌 一 預備知識

slam簡介 我們眼中的世界在計算機中是乙個個由數字排列而成的矩陣 matrix 就像電影 黑客帝國 中的場景。我們要解決的就是讓計算機通過這種方式 理解 我們現在的世界。第一講習題 1.有線性方程ax b,若已知a,b,需要求解x,該如何求解?這對a和b有哪些要求?解 首先考慮非齊次線性方程的情況...

視覺slam14講 學習筆記 Ubuntu環境配置

sophus庫的安裝問題 一些庫以及軟體的入門教程 tips 將ubuntu安裝到行動硬碟上 thinkpad x395 amd ryzen 7 pro 3700u w radeon vega mobile gfx 8 ubuntu 18.04.03 kdevelop 4 5.2.1 1ubuntu...