原创 VINS-Mono之後端非線性優化 (目標函數中視覺殘差和IMU殘差,及其對狀態量的雅克比矩陣、協方差遞推方程的推導)

文章目錄1. 前言2. 非線性最小二乘2.1 Guass-Newton 和 Levenberg-Marquardt2.2 魯棒核函數下狀態量增量方程的構建3. 局部Bundle Adjustment代價函數的構建4. IMU測量殘

原创 WGAN (Wasserstein GAN)

Paper: https://arxiv.org/abs/1701.07875 Github: https://github.com/eriklindernoren/PyTorch-GAN https://github.com/m

原创 VSLAM之邊緣化 Marginalization 和 FEJ (First Estimated Jocobian)

文章目錄1. 前言2. 舒爾補 (Schur complement) 實現邊緣化 (Marginalization)2.1 舒爾補操作及矩陣快速求逆2.2 多元高斯分佈下的舒爾補分解:邊際分佈 (marginal distribu

原创 Ubuntu16.04下安裝AutoWare

平臺: Ubuntu-16.04 ROS-Kinetic 安裝依賴: sudo apt-get install ros-kinetic-desktop-full ros-kinetic-nmea-msgs ros-kinetic-

原创 C++11 之emplace_back 與 push_back的區別

C++ 開發中我們會經常用到插入操作對STL的各種容器進行操作,比如vector,map,set等。在引入右值引用,移動構造函數,移動賦值運算符之前,通常使用push_back()向容器中加入一個右值元素(臨時對象)時,首先會調用

原创 C++11多線程併發中的std::thread、std::mutex和std::future

C++11 新標準中引入了五個頭文件來支持多線程編程:<atomic>,<thread>,<mutex>,<condition_variable> 和 <future> <atomic>: 該文件主要申明瞭倆個類,std::ato

原创 在文件夾內查找某行代碼

進入要查找的文件夾,其中 **** 爲要查找的內容 grep -rn * -ie "****"

原创 二叉搜索樹、平衡二叉搜索樹和紅黑樹

文章目錄一. 二叉搜索樹(Binary Sort Tree)二. 二叉平衡搜索樹(AVL)三. 紅黑樹 一. 二叉搜索樹(Binary Sort Tree) 二叉搜索樹,又稱爲二叉排序樹(二叉查找樹),它或許是一棵空樹,或許是具有

原创 VINS-Mono之IMU預積分,預積分誤差、協方差及誤差對狀態量雅克比矩陣的遞推方程的推導

文章目錄1. 前言2. IMU模型3. 基於世界座標系下的IMU運動模型3.1 連續形式下的IMU運動模型3.2 離散形式下的IMU運動模型3.2.1 歐拉法離散形式3.2.2 中值法離散形式4.IMU預積分 (基於第K幀IMU

原创 VINS-Mono之外參標定和視覺IMU聯合初始化

文章目錄1.前言2. 外參標定 (利用旋轉約束估計外參數旋轉qcb)q^{b}_{c})qcb​)3. 視覺IMU聯合初始化3.1 陀螺儀偏置的估計 (利用旋轉約束估計bwb_{w}bw​)3.2 速度、重力和尺度初始化 (利用預

原创 解方程AX=b與矩陣分解:奇異值分解(SVD分解) 特徵值分解 QR分解 三角分解 LLT分解

文章目錄1. 前言2. LU三角分解3. Cholesky分解 — LDLT分解4. Cholesky分解 — LLT分解5. QR分解6. 奇異值分解7. 特徵值分解 1. 前言 本博客主要介紹在SLAM問題中常常出現的一些線性

原创 VINS-Mono之邊緣化 Marginalization 和 FEJ (First Estimated Jocobian)

文章目錄1. 前言2. 舒爾補 (Schur complement) 的應用:邊界概率,條件概率 1. 前言 本博客主要介紹了VINS-Mono中邊緣化的相關知識,由於VINS-Mono中只是提及了邊緣化的策略並沒有提及邊緣化信息

原创 平衡二叉搜索樹和紅黑樹

原文鏈接:https://blog.csdn.net/tanrui519521/article/details/80935348 一. 二叉搜索樹(Binary Sort Tree) 二

原创 容器(vector)、數組、new創建的動態數組,哪個執行效率更高些?

原文鏈接:https://www.cnblogs.com/chhuach2005/p/3627011.html 一.理論分析 1.1堆和棧的區別 棧區(stack)— 由編譯器自動分配

原创 C++11多線程併發中的std::thread和std::mutex

C++11 新標準中引入了五個頭文件來支持多線程編程:<atomic>,<thread>,<mutex>,<condition_variable> 和 <future> <atomic>: 該文件主要申明瞭倆個類,std::ato