原创 《視覺SLAM十四講》第二版第三講源碼解讀之visualizeGeometry.cpp

#include <iostream> #include <iomanip> using namespace std; #include <Eigen/Core> #include <Eigen/Geometry>

原创 《視覺SLAM十四講》第二版第四講源碼解讀之trajectoryError.cpp

#include <iostream> #include <fstream> #include <unistd.h> #include <pangolin/pangolin.h> #include <sophus/se3.hpp>

原创 plotTrajectory.cpp

將座標從一個座標系轉換到另一個座標系,需要用到模型(Model)、視圖(View)、投影(Projection)三個矩陣。 首先,頂點座標開始於局部空間(Local Space),稱爲局部座標(Local Coordinate),

原创 《視覺SLAM十四講》第二版第三講源碼coordinateTransform.cpp詳細註釋

設有小蘿蔔一號和小蘿蔔二號位於世界座標系中。 小蘿蔔一號的位姿爲: q 1 = [0.55, 0.3, 0.2, 0.2], t 1 =[0.7, 1.1, 0.2] T 小蘿蔔二號的位姿爲 q 2 = [−0.1, 0.3, −

原创 《視覺SLAM十四講課後作業》第一講 詳細解答

文章目錄一、關於ubuntu系統的一些問題1. 如何在 Ubuntu 中安裝軟件(命令⾏界⾯)?它們通常被安裝在什麼地⽅?安裝命令卸載命令安裝的地方2. linux 的環境變量是什麼?我如何定義新的環境變量?3. linux 根⽬

原创 《視覺SLAM十四講》第四講超級詳細解讀-useSophus.cpp

#include <iostream> #include <cmath> using namespace std; #include <Eigen/Core> #include <Eigen/Geometry> #inclu

原创 《視覺SLAM十四講》第五講超級詳細解讀-imageBasics.cpp

一、爲什麼圖像是波? 我們知道,圖像由像素組成。下圖是一張 400 x 400 的圖片,一共包含了 16 萬個像素點。 每個像素的顏色,可以用紅、綠、藍、透明度四個值描述,大小範圍都是0 ~ 255, 比如黑色是[0, 0,

原创 《視覺SLAM十四講》第一版第九講 設計前端0.3版本代碼詳細註釋

今天開始學習設計前端第三個版本代碼的學習,先來運行一下程序,然後出錯了! /home/q/projects/slambook/project/0.3/src/visual_odometry.cpp:194:49: error: n

原创 《視覺SLAM十四講》第一版第九講 設計前端0.4版本代碼詳細註釋

只是運行起來的動圖。 Cmara類可以看做是相機的模型,用來存儲相機的內參,並提供完成相機座標系、像素座標系和世界座標系之間的座標轉換的方法。 Frame類是基本的數據單元,用來存儲圖像幀,每獲取一張圖片就會有一個Frame實例

原创 《視覺SLAM十四講》第一版第九講 設計前端0.2版本代碼詳細註釋

兩兩幀之間的特徵匹配流程: 1.對新來的當前幀,提取關鍵點和描述子; 2.如果系統沒有初始化,那麼就以該幀爲參考幀,根據深度圖計算關鍵點的3D位置,然後返回第一步; 3.估計參考幀和當前幀的運動; 4.判斷上述估計是否成功; 5

原创 linux製作gif動圖超詳細教程

kazam 製作視頻 6幀每秒先轉換爲圖片 ffmpeg -i input.mp4 -r 3 gif/out%04d.png Imagemagick的convert工具轉換爲gif convert out*.png out.gif

原创 小白學習大型C++源碼項目系列之日誌記錄

好的日誌記錄 可以輔助調試 8個級別的log(除去OFF和ALL,可以說分爲6個級別),優先級從高到低依次爲:OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、 ALL。 ALL 最低等級的,用於打開所有

原创 小白學習大型C++源碼項目系列之基礎準備階段

學校課程總是從理論出發,作業項目都看不出有什麼實際作用,不如從工作中的需求出發。 基礎的東西經過很長時間積累而且還會在未來至少10年通用。 一定要動手,例子不管多麼簡單,建議至少自己手敲一遍看看是否理解了裏頭的細枝末節。 一定要學

原创 視覺SLAM十四講第一版第九講超詳細源碼註釋-viz

創建一個可視化窗口 cv::viz::Viz3d vis("Visual Odometry"); vis.spin(); 運行後結果 VIZ 使用CoordinateSystemWidget在窗口中顯示座標軸 cv::viz

原创 視覺SLAM十四講第一版第八講代碼實戰-camera.cpp

就是這張圖,理解它,問題就都解決了!下面我們來詳細說說。 根據三角形相似原理得出下面的公式: Zf\frac{Z}{f}