SLAM(七)-卡爾曼濾波

SLAM(七)-卡爾曼濾波

  • 一、卡爾曼濾波(KF)
  • 二、擴展卡爾曼濾波(EKF)
  • 三、誤差狀態卡爾曼濾波(ESKF)

參考《概率機器人》、《Principles of GNSS,lnertial and Multisensor lntegrated Navigation Systems
(Second Edition)》

一、卡爾曼濾波(KF)

卡爾曼濾波(KF,kalman filter)是一種線性濾波方法。
狀態方程:噪聲為Rt
在這里插入圖片描述
觀測方程:
在這里插入圖片描述
預測更新:
在這里插入圖片描述

1、如果 P/R小,相應的卡爾曼增益會很小并且狀態估計收斂到真值的速度會更慢 對應到
系統的變化,狀態估計過程會變慢 相反,如果 P/R 太大,卡爾曼增益會非常
大,這將使濾波更側重于最近的觀測值,從而會因為觀測噪聲對狀態估計產生了
太大的影響而導致濾波不穩,或產生估計偏差。有時,通過系統模型狀態估計與
觀測噪聲會形成正反饋,并最終導致濾波器的迅速發散,遠離真值。這里假設觀測是比較準的,預測步方差P過大/觀測噪聲過小,類似于比例因子K比較大,超調量會比較大,容易振蕩;預測步方差P過小/觀測噪聲過大,K較小,收斂速度比較慢

在這里插入圖片描述

二、擴展卡爾曼濾波(EKF)

《概率機器人》P40
擴展卡爾曼濾波(EKF,extend kalman filter)是一種非線性濾波方法。先將非線性狀態轉移和觀測方程使用一階泰勒展開線性化,然后使用卡爾曼方法預測和更新即可。
非線性方程:
在這里插入圖片描述
線性化后:
在這里插入圖片描述

預測:
在這里插入圖片描述

三、誤差狀態卡爾曼濾波(ESKF)

誤差傳播
1)慣性傳感器誤差,即陀 螺和加速度計的噪聲、零偏、比例因子誤差和交軸耦合等各類誤差。
2)導航初始化誤差,包括位置、速度和姿態等參數的初值誤差。
3)重力誤差,主要是重力模型誤差和位置誤差帶來的重力計算誤差等
4)算法和計算誤差
基于擾動方法推導誤差狀態方程和觀測方程
狀態方程推導
1)首先將有誤差的變量建模為誤差狀態δx=x_true - x,x_true為真值,x為估計值,姿態誤差需要單獨定義,在計算或得到變量 x 的過程中是否引入含有誤差的變量,或者誤差幅度是否可以小到忽略不計。
2)求解誤差狀態δx導數,得到連續狀態的狀態轉移函數,其導數與x_true 和x導數差相等,根據x導數解析解,x_true誤差變量加上擾動δx,x導數不變,再將兩者相減得到誤差狀態轉移方程;姿態根據q_true導數解析解和擾動方差2種不同的求導方式,然后取等號進行求解
3)離散化:δx導數=(δx_k-δx_k-1)/δt,根據中值法、歐拉法不同方法離散化,如VINS推導;或采用如下圖牛小驥團隊《組合導航》課程方式離散化。注意一般給定的是連續狀態的噪聲,需要轉為離散化誤差狀態噪聲再套卡爾曼公式,噪聲為一段時間的累積

在這里插入圖片描述
觀測方程:
4)觀測誤差更新方程不需要求導,將觀測減去估計值構建,需要把觀測噪聲轉為誤差觀測狀態噪聲,得到誤差狀態協方差更新方程與狀態協方差不同,噪聲是某個時刻的
在這里插入圖片描述
5)狀態反饋:使用誤差狀態δx_k更新當前狀態

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/76664.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/76664.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/76664.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Electron 應用太重?試試 PakePlus 輕裝上陣

Electron 作為將 Web 技術帶入桌面應用領域的先驅框架,讓無數開發者能夠使用熟悉的 HTML、CSS 和 JavaScript 構建跨平臺應用。然而,隨著應用規模的擴大,Electron 應用的性能問題逐漸顯現——內存占用高、啟動速度慢、安裝包體積龐大&#xf…

Vue.js組件安全工程化演進:從防御體系構建到安全性能融合

——百萬級流量場景下的安全組件架構與源碼級解決方案 文章目錄 總起:安全工程化的組件革命 分論: 一、現存組件架構的七宗罪與安全改造路徑   1.1 組件生態安全赤字現狀   1.2 架構級安全缺陷深度剖析   1.3 性能與安全的死亡螺旋 二、百萬級…

MCP+cursor使用嘴操作數據庫(不用編寫SQL語句實現CURD)

文章目錄 1.如何進行相關配置2.如何添加MCP server3.如何進行相關的操作3.0數據的查詢3.1數據的插入3.2數據的修改3.3多表連接查詢 1.如何進行相關配置 這個跟昨天的高德地圖的配置非常的相似,因此這個地方我就不進行過多的這個說明了,就是新加一個全聚…

效率工具- git rebase 全解

一、前言 對于git rebase 一直不太了解,這幾天想著提高下git提交質量,就發現了這個好用的指令,順便記錄一下,好加深記憶 貼出官方文檔以便大家進一步學習 Git 二、rebase是作用 rebase 官方解釋為變基,可以理解為移動你的分支根節點,維護一個更好的提交記錄。rebase把你當前…

小愛音箱接入大模型DeepSeek及TTS

簡介 相信看過鋼鐵俠的朋友們,都夢想擁有一個像賈維斯這樣全能的人工智能管家。而現在隨著AI的發展,這個愿景將隨我們越來越近。現階段,我們可以將小愛音箱接入DeepSeek,將其從“人工智障”進化成上知天文,下懂地理的半…

軟件架構評估利器:質量效用樹全解析

質量效用樹是軟件架構評估中的一種重要工具,它有助于系統地分析和評估軟件架構在滿足各種質量屬性方面的表現。以下是關于質量效用樹的詳細介紹: 一、定義與作用 質量效用樹是一種以樹形結構來表示軟件質量屬性及其相關效用的模型。它將軟件的質量目標…

[IEEE TIP 2024](cv即插即用模塊分享)IdeNet信息增強模塊 性能提升必備!

論文地址:https://ieeexplore.ieee.org/document/10661228 代碼地址:https://github.com/whyandbecause/IdeNet 什么是偽裝目標檢測(COD)? 偽裝目標檢測(Camouflaged Object Detection, COD)是…

biblatex 的 Biber 警告??:tex文件運行無法生成參考文獻和目錄

原因??:使用了 biblatex 管理參考文獻,但未運行 biber 生成參考文獻數據。 ??解決??:更新 LaTeX Workshop 配置 修改你的 settings.json,添加 biber 工具并更新編譯流程: {"latex-workshop.latex.tools&…

thingsboard3.9.1編譯問題處理

問題1: [ERROR] Failed to execute goal org.thingsboard:gradle-maven-plugin:1.0.12:invoke (default) on project http: Execution default of goal org.thingsboard:gradle-maven-plugin:1.0.12:invoke failed: Plugin org.thingsboard:gradle-maven-plugin:1.…

深入淺出Redis 緩存使用問題 | 長文分享

目錄 數據一致性 先更新緩存,后更新數據庫【一般不考慮】 先更新數據庫,再更新緩存【一般不考慮】 先刪除緩存,后更新數據庫 先更新數據庫,后刪除緩存【推薦】 怎么選擇這些方案?采用哪種合適? 緩存…

Express中間件(Middleware)詳解:從零開始掌握(2)

1. 請求耗時中間件的增強版 問題:原版只能記錄到控制臺,如何記錄到文件? 改進點: 使用process.hrtime()是什么?獲取更高精度的時間支持將日志寫入文件記錄更多信息(IP地址、狀態碼)工廠函數模式使中間件可配置 con…

如何設置Ubuntu服務器版防火墻

在Ubuntu服務器中,默認使用 ufw(Uncomplicated Firewall)作為防火墻管理工具。它是對iptables的簡化封裝,適合快速配置防火墻規則。以下是設置防火墻的詳細步驟: 1. 安裝與啟用 ufw 安裝(通常已預裝&…

暢游Diffusion數字人(23):字節最新表情+動作模仿視頻生成DreamActor-M1

暢游Diffusion數字人(0):專欄文章導航 前言:之前有很多動作模仿或者表情模仿的工作,但是如果要在實際使用中進行電影級的復刻工作,僅僅表情或動作模仿還不夠,需要表情和動作一起模仿。最近字節跳動提出了一個表情+動作模仿視頻生成DreamActor-M1。 目錄 貢獻概述 核心動…

模型開發中的微調是干什么

在模型開發中,微調(Fine-tuning) 是指利用預訓練模型(Pre-trained Model)的參數作為初始值,在特定任務或數據集上進一步調整模型參數的過程。它是遷移學習(Transfer Learning)的核心…

vue3中,element-plus中el-select隱藏下拉箭頭

需求&#xff1a;el-select需要隱藏下拉箭頭 <el-select v-model"apply.dataType" readonly><el-option :key"1" label"樣品檢相同項目" :value"1" /><el-option :key"2" label"樣品檢不同項目" :…

英語學習4.9

cordial 形容詞&#xff1a; 熱情友好的&#xff0c;誠懇的 表示一個人態度溫和、親切&#xff0c;給人溫暖和善的感覺。 令人愉快的&#xff0c;和睦的 形容關系融洽、氛圍和諧。 例句??&#xff1a; The two leaders had a ??cordial?? but formal discussion. &am…

類似東郊到家的上門按摩預約服務系統小程序APP源碼全開源

&#x1f525; 為什么上門按摩正在席卷全國&#xff1f; 萬億藍海市場爆發 2024年中國按摩市場規模突破8000億&#xff0c;上門服務增速達65% 90后成消費主力&#xff0c;**72%**白領每月至少使用1次上門按摩&#xff08;數據來源&#xff1a;艾媒咨詢&#xff09; 傳統痛點…

驅動學習專欄--寫在前面

此專欄基于正點原子的文檔【正點原子】I.MX6U嵌入式Linux驅動開發指南V1.81 開發板為luckfox的rv1106開發板&#xff0c;之前參加過一個CM1相機的開源項目&#xff0c;與其吃灰不如作為一個學習的工具來發揮余熱 所以文檔中的一些東西需要對應的在rv1106平臺上做修改&#xff…

第二篇:Python函數與模塊化編程深度教程

第一章:函數定義與調用 1.1 函數基礎架構 1.1.1 函數定義規范 函數定義采用def關鍵字,遵循PEP8命名規范(小寫字母+下劃線) def calculate_circle_area(radius):"""計算圓的面積""" # 文檔字符串PI = 3.14159return PI * radius ?**? …

3.1.3.3 Spring Boot使用Filter組件

在Spring Boot中使用Filter組件&#xff0c;可以通過創建一個類實現Filter接口&#xff0c;并使用Component注解將其標記為Spring組件。通過Order注解可以指定過濾器的執行順序&#xff0c;數字越小優先級越高。在LoggingFilter類中&#xff0c;重寫init、doFilter和destroy方法…