原创 VSLAM::[手寫VIO_課堂筆記]第四講(下)_基於滑動窗口算法的VIO系統原理

1. 第四講(下)_基於滑動窗口算法的VIO系統 1.1. 滑動窗口算法 1.1.1. 圖的表示 解釋: (假設矩陣左上角元素索引(1,1)) Λ1\Lambda_1Λ1​: (1,2)元素不爲空, 表示第1個頂點與

原创 Eigen::關於旋轉(旋轉向量\旋轉矩陣\四元數\歐拉角)的初始化和轉換以及應用

Eigen::關於旋轉(旋轉向量\旋轉矩陣\四元數\歐拉角)的初始化和轉換以及應用  code: #include <iostream> #include <eigen3/Eigen/Core> #include <eigen3/Eig

原创 VSLAM::[手寫VIO_課堂筆記]第四講(上)_基於滑動窗口算法的VIO系統原理

1. 第四講(上)_基於滑動窗口算法的VIO系統原理 1.1. 高斯分佈到信息矩陣 1.1.1. SLAM問題的模型 1.1.2. 舉例 上面省略了一些步驟 ∑11=Conv(x1,x1)=E([x1−E(x1)]2

原创 VSLAM::[手寫VIO_課堂筆記]第二講_IMU測量模型+誤差模型+運動模型&&歐拉角微分推導

1. 第二講_IMU相關內容 1.1. 旋轉運動學 1.1.1. 運動半徑rrr對θ\thetaθ的求導,再寫成矩陣形式 下圖中:半徑a和高度h固定\color{red}{下圖中:半徑a和高度h固定}下圖中:半徑a和高度h固定

原创 nodelet學習::編寫nodelet節點(一)

Nodelet Nodelet旨在提供一種在單機器單進程運行多個算法而不會在進程中傳遞消息時產生複製成本的方法。   爲什麼需要Nodelet 1、ROS是一種基於分佈式網絡通訊的操作系統,整個機器人控制系統是由一個Master主節點和

原创 IMU&GPS融合定位::加速度計基本原理

加速度計基本原理 核心:牛頓第二定律  一、mems加速度計基本原理  加速度計基本結構如上圖,由上電容、中電容板(可移動)、下電容板等組成;當加速度達到一定值後,中電容板會移動,與上、下電容板的距離就會變化,上、下電容因此變化。電

原创 Qt5學習::快捷鍵

快捷鍵 F2 代碼跳轉 ctrl+I 格式化代碼 ctrl+f 字符串查找/替換 ctrl+/ 批量註釋 crtl+r 運行程序 ctrl+m 添加書籤(方便跳轉) ctrl+,  或 ctrl+. 書籤之間跳轉 ctrl+shift+r

原创 2D激光SLAM::AMCL發佈的odom----map座標TF變換解讀

AMCL發佈的odom----map座標TF變換解讀 一、背景 1、AMCL的作用是什麼? 答:AMCL是基於蒙特卡洛定位方法的一種定位方法實現,集成於ROS操作系統的navigation導航包裏面,簡單來說,AMCL就是得到一個相對準

原创 SLAM::g2o學習例程(一)曲線擬合

SLAM::g2o學習例程(一)曲線擬合 使用g2o庫對曲線 進行擬合 g2o庫使用的是截至2019年7月10日github上的最新版本  直接上代碼,帶註釋  #include <iostream> #include <iostr

原创 2D激光SLAM::ROS-AMCL包源碼閱讀(三)從main()開始

2D激光SLAM::ROS-AMCL包源碼閱讀(三)從main()開始 一、初始化主體部分 int main(): 最主要的作用是創建了 AmclNode對象 int main(int argc, char** argv) {

原创 2D激光SLAM::ROS-AMCL包源碼閱讀(二)關於map地圖的數據結構

ROS-AMCL包源碼閱讀(二)關於map地圖的數據結構 map.h的內容描述如下  map_t:地圖結構體 // Description for a map typedef struct { // Map origin;

原创 2D激光SLAM::ROS-AMCL包源碼閱讀(一)關於pf粒子的數據結構

結構體:單個粒子 // Information for a single sample typedef struct { // Pose represented by this sample pf_vector_t pose

原创 【emotion | experience】消失的四年

mark from: 我的助理辭職了!——給不聽話的下屬看看  1,當時公司招了大批應屆本科和研究生畢業的新新人類。平均年齡25歲。那個新的助理,是經過多次面試後,我親自招回來的一個女孩。名牌大學本科畢業,聰明,性格活潑。私下裏我得承認,

原创 QT5學習::ubuntu16.04下打包發佈Qt編譯的程序

ubuntu16.04下打包發佈Qt編譯的程序 關於如何打包在利用qt編譯的程序,一般都建議使用linuxdeployqt ,但是個人感覺這個東西不可靠,有幾點: 庫找不齊 如果你在此之前使用了apt-get install 安裝qma