原创 C++——《高質量C/C++編程》讀書筆記

溫故而知新 參考: 林銳 《高質量C/C++編程》 極小部分規範是自己根據個人經驗自行修改或添加的 文章目錄頭文件.h中包含源文件.c/.cpp內容代碼行類的版式命名規則表達式和基本語句運算符的優先級與零值比較的注意事項指針變量與

原创 非線性濾波——基於EKF的INS/GPS松組合算法的研究(直接法|EKF|歐拉角)

題外話:雖然導航與控制領域在現代工業中應用廣泛,但近些年火熱的多旋翼無人機無疑是推動這一領域進一步發展的最重要的推手,如日中天的汽車智能駕駛行業也將使導航和控制領域充分融合計算機視覺(SLAM)、機器學習(道路及障礙物識別)、高端

原创 非線性濾波——INS/GPS組合導航仿真數據的生成

INS與其他傳感器組合導航領域內,經常需要一些真實的理論數據作爲參考,同時也需要帶有自定義噪聲的傳感器測量數據,用以驗證我們所設計或實現的算法是否合理有效。 本文使用MATLAB軟件,基於真實的時間、北向位移、東向位移、海拔高度、

原创 非線性濾波——基於EKF的INS/GPS松組合算法的研究(間接法|EKF|歐拉角)

在之前的博文《非線性濾波——基於EKF的INS/GPS松組合算法的研究(直接法|EKF|歐拉角)》中,我們記錄了直接形式的EKF實現INS/GPS松組合算法,並在《卡爾曼濾波——直接法VS間接法》中對比說明了直接法與間接法的優劣。

原创 卡爾曼濾波——直接法VS間接法

本文以簡單的例子(正弦波跟蹤)來實現並對比直接法和間接法在卡爾曼濾波中的應用,實驗結果表明:相同條件下,間接法反饋校正形式的卡爾曼濾波器比直接法形式的卡爾曼濾波器估計精度一致。 狀態和量測的選取——直接法和間接法 注意:文字理論部

原创 輪子——matlab中的隨機數矩陣(rand randn randi 種子 normrnd randperm 對稱)

在matlab中進行仿真時,經常需要對真實數據添加隨機數噪聲。本文內容參考內容見文末,對其進行適當總結並不定期再補充。 文章目錄randrandnrandi設定種子1設定種子2normrndrandperm隨機數對稱矩陣 rand

原创 slam開發常用輪子

slam開發常用輪子ubuntu 進入高性能模式拼音輸入法遠程桌面及ssh修改ubuntu swap分區大小(臨時,重啓失效)EigenSophusvtkOpencvboostpclROSyaml-cppanaconda 虛擬環境

原创 輪子——基於ROS的匿名地面站驅動(ubuntu 20.04 & ROS Noetic)

匿名地面站方便查看動態數據,而且便於調試系統參數,多用於基於單片機的系統調試。 由於項目需要基於ROS開發,考慮到系統參數調試工作量不小,便寫了一個基於ROS的匿名地面站驅動。 文章目錄安裝串口驅動匿名地面站驅動源碼ROS發送數據

原创 輪子——ubuntu串口名稱綁定

課題中需要使用一臺迷你PC作爲主控,通過串口與DJI SDK、UWB模塊和無線數傳電臺通信。三個設備都需要一個USB轉串口與電腦相連,但是不同的拔插順序會造成他們在/dev下的名字不同。 爲了減小設備開機後的準備工作量,決定將串口

原创 輪子——C++高斯分佈隨機數生成

在仿真的時候,經常需要用到高斯分佈的隨機噪聲數據,可以簡單的使用C++11及以上版本的C++標準庫實現。 輪子代碼如下: #include <iostream> #include <random> #include <vector

原创 輪子——代碼的運行耗時記錄

在設計並實現算法時,往往需要對比下不同算法的運行耗時情況,本文記錄了不同編程語言實現代碼運行耗時檢測的方式,不定時維護補充。 matlab代碼耗時檢測 模式: tic operations;%操作 toc 例: tic paus

原创 SLAM開發之雙目標定(MATLAB)

文章目錄軟件準備雙目攝像頭視頻流獲取圖片標定板及拍照運行標定工具箱標定結果資源傳送門 雙目攝像頭在SLAM中很常見,良好的標定結果能進一步提高SLAM的性能。本文基於MATLAB雙目標定工具箱和普通的USB雙目攝像頭,進行了雙目標

原创 SLAM開發之雙目圖像獲取及畸變校正輸出

文章目錄坑的備忘重新標定及參數畸變校正輸出 在對雙目相機進行標定之後,將在ubuntu系統中進行開發。首先要做的是編寫基礎程序從雙目相機中實時的獲取原始圖像並對其進行矯正。 坑的備忘 神坑出現: 在之前的博客《SLAM開發之雙目標

原创 樹莓派自駕儀的開發備忘錄——(GPS)UBLOX NEO-M8N UBX格式數據驅動初實現

樹莓派自駕儀的開發備忘錄——(GPS)UBLOX NEO-M8N UBX格式數據驅動初實現 中心:本文主要記錄基於STM32的ublox m8n ubx協議串口驅動的編寫。 :):):):)愉快的搬磚開始:):):):) ~~開場

原创 Linux環境下使用V4L2+opencv以MJPEG格式讀取USB攝像頭並實時顯示

轉眼間,V4L2已經搞了很長時間,從最開始的一竅不通,到後來的漸漸熟悉,從最開始照貓畫虎的使用YUYV格式之間轉換,到後來使用MJPEG格式讀取,中間頗有周折。趁任務完成間隙,來簡單總結下V4L2的使用。(文章只主要寫了過程,完整程序已