原创 VINS-Mono 代碼詳細解讀——初始化1:視覺SFM詳解 processImage()+initialStructure()

Estimator類 目錄  processImage()函數 initialStructure()初始化函數 SFM初始化 relativePose()函數 getCorresponding()函數返回兩幀匹配特徵點3D座標 solve

原创 多傳感器融合定位2(封裝KF和EKF)

有了上一節分別對激光雷達做KF、對毫米波雷達做EKF兩種流程之後,我們合併KF和EKF的跟蹤算法的代碼,將他們封裝在一個名爲KalmanFilter的類中,方便後續調用。下面做一個多傳感器融合定位實驗,採集到的數據爲兩種交替出現的

原创 Endnote連接Word自動插入畢業論文參考文獻

目錄 一、Wod中自動插入參考文獻 1、在百度學術中導出endnote格式 2、導入到word中 二、調整格式 1、下載GB/T 7714 2、調整 一、Wod中自動插入參考文獻 1、在百度學術中導出endnote格式 找到後點擊“引用”

原创 《wiki官網教程》2 編寫簡單的服務器service和客戶端 client(C++)

服務(services)是節點之間通訊的另一種方式。服務允許節點發送請求(request) 並獲得一個響應(response)。 之前講的是兩個節點如果要通信需要經過話題topic,一個節點需要訂閱話題並sub消息,另一個節點訂閱

原创 VINS-Mono 代碼詳細解讀——基於滑動窗口的緊耦合後端非線性優化 optimization()+滑動窗slideWindow()

上一篇文章是基於滑動窗的緊耦合後端非線性優化的理論部分,主要分爲以下部分: VIO殘差函數構建 視覺約束:視覺重投影誤差residual、殘差對狀態量的Jacobian、協方差 IMU約束:residual、Jacobian、Covar

原创 C++知識點目錄(都有答案)

LZ發現每天吸收的知識很多了,可是C++知識點還只是零散的,所以非常需要這樣一個思維導圖來給自己一個C++學習的宏觀框架。希望以後可以不斷補充各板塊內容 目錄 C++ Tips 關鍵字:const、static、explcit、overr

原创 進程和線程主要區別與定義

抽象理解 直接上圖,CPU是工廠、電力資源是cpu 時間片、進程是車間、線程是車間工人。 操作系統的資源分配與調度邏輯 以多進程形式,允許多個任務同時運行; 以多線程形式,允許單個任務分成不同的部分運行; 提供協調機制,一方面

原创 粒子濾波定位

理論知識 除了線性狀態估計的KF和非線性狀態估計的EKF,還有一種可以解決非線性、非高斯問題的粒子濾波算法,粒子濾波主要基於蒙特卡洛方法,使用粒子集來表示概率。 粒子濾波主要分爲四部分:初始化、預測、粒子權重更新、重採樣,之後在重

原创 VINS-Mono 代碼詳細解讀——IMU預積分的殘差、Jacobian和協方差 processIMU()+intergrationBase類+imu_factor.h

前言: 對第k幀和第k+1幀之間所有的IMU進行積分,可得到第K+1幀的PVQ(位置、速度、旋轉),作爲視覺估計的初始值。 每次qwbt優化更新後,都要重新進行積分,運算量較大。將積分模型轉爲預積分模型: PVQ積分公式中的積分項變爲相對

原创 VINS-Mono 理論詳細解讀——緊耦合後端非線性優化 IMU+視覺的殘差residual、Jacobian、協方差、基於舒爾補的邊緣化

本講是VINS最核心部分了,前面經歷了  1)視覺跟蹤feature_tracker、IMU預積分integrationBase類; 2)初始化中SFM純視覺估計滑動窗中所有幀的位姿和3D路標點深度、SFM與IMU預積分松耦合對齊求解初始

原创 Ubuntu18.04配置VS Code+CMake的C++開發環境

2020-06-14 首先,介紹自己電腦:Ubuntu18.04、VS Code 1.46版 本文目的:爲VS Code配置好C++ 開發環境,以及VS Code +CMake的配置 對於C++ 工程,有四個必要的json配置文件

原创 VS Code創建、調試ROS項目

前言: 在vs code下配置ROS項目開發的環境 包括catkin創建編譯工作空間,創建ROS項目,調試ROS節點 一、創建工作空間 首先創建一個cMake工作空間,用到了catkin_make其實就是 cmake … make

原创 從頭到尾配置最好用的Ubuntu18.04

​​ 一、重裝Ubuntu系統 ubuntu18.04鏡像 直接上圖 接下來到了分區界面 我的120G固態硬盤模板爲:選擇點擊“+ - Change”中的“+”: /boot:主分區,300M /:主分區,20G swap:

原创 多傳感器融合定位1(激光雷達+毫米波雷達)

前言 LZ最近在看Udacity的無人駕駛課程,該課程主要分爲三部分,第一部分的課程主要使用Python實現的車道線識別、車牌識別等計算機視覺項目。由於我對定位、建圖等方面有些知識儲備,所以先從第二部分課程開始。 本節將用最簡潔的

原创 一文掌握百度Apollo Udacity自動駕駛課程筆記

LZ第一次使用幕布完成了對Apollo課程的課後筆記,歡迎大家觀看。 自動駕駛的六大模塊:高精地圖、定位、感知、預測、規劃、控制,本次課程都有涉及。畢竟是入門課程,作爲了解自動駕駛機制是很不錯的課程。LZ今天用一天時間,從早晨起牀開始2倍