卡爾曼濾波數據融合

  • 狀態向量:位置和速度 [x, y, vx, vy]

  • 預測階段:用加速度估算速度和位置(IMU數據)

  • 更新階段:用 GPS 位置修正漂移(每隔一定時間才來一次)

import numpy as np# 時間步長(秒)
dt = 0.1# 狀態向量: [x, y, vx, vy]
x = np.array([[0], [0], [0], [0]])# 狀態協方差矩陣
P = np.eye(4) * 1.0# 狀態轉移矩陣 F
F = np.array([[1, 0, dt, 0],[0, 1, 0, dt],[0, 0, 1,  0],[0, 0, 0,  1]
])# 控制輸入矩陣 B(加速度影響速度和位置)
B = np.array([[0.5 * dt**2, 0],[0, 0.5 * dt**2],[dt, 0],[0, dt]
])# 觀測矩陣 H(GPS 只能測位置)
H = np.array([[1, 0, 0, 0],[0, 1, 0, 0]
])# 過程噪聲協方差 Q(IMU 不準)
Q = np.eye(4) * 0.2# 觀測噪聲協方差 R(GPS 有噪聲)
R = np.eye(2) * 2.0# 單位矩陣 I
I = np.eye(4)# 模擬數據:IMU 每次有,GPS 每10次有
imu_acc = [0.1, 0.0]  # 恒定 x 方向加速度
for step in range(50):# === 1. 預測階段 ===u = np.array([[imu_acc[0]], [imu_acc[1]]])  # IMU 加速度輸入x = F @ x + B @ uP = F @ P @ F.T + Q# === 2. 更新階段(GPS 每10步更新一次)===if step % 10 == 0:gps_pos = np.array([[x[0, 0] + np.random.normal(0, 1)],[x[1, 0] + np.random.normal(0, 1)]])  # 模擬GPS測量y = gps_pos - H @ xS = H @ P @ H.T + RK = P @ H.T @ np.linalg.inv(S)x = x + K @ yP = (I - K @ H) @ Pprint(f"Step {step:02d} -> Position: ({x[0,0]:.2f}, {x[1,0]:.2f})  Velocity: ({x[2,0]:.2f}, {x[3,0]:.2f})")

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

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

相關文章

Qwen3-8B 的 TTFT 性能分析:16K 與 32K 輸入 Prompt 的推算公式與底層原理詳解

一、模型概述與上下文支持能力Qwen3-8B 是通義實驗室推出的 80 億參數大語言模型,支持 32,768 token 的上下文長度 。其核心優化點包括:FP8 量化技術:通過將權重從 32-bit 壓縮至 8-bit,顯著降低顯存占用并提升推理效率&#xff0…

【Spring Cloud Gateway 實戰系列】基礎篇:路由、斷言、過濾器、負載均衡深度解析

一、引言在微服務架構中,API網關是流量的統一入口,承擔著路由轉發、流量管控、安全防護等核心職責。Spring Cloud Gateway作為Spring官方推薦的第二代網關,基于Spring 5.0、Spring Boot 2.0和Project Reactor構建,提供了高性能的響…

基于springboot的鄉村旅游在線服務系統/鄉村旅游網站

管理員:登錄,個人中心,用戶管理,景點類型管理,旅游景點管理, 酒店信息管理,旅游線路管理,門票預訂管理,酒店預訂管理,旅游攻略管理,社區互動&…

JavaWeb筆記12

登錄的問題:用戶兩次登錄后會生成新舊兩個令牌,此時舊的不應該生效要使舊的失效:令牌主動失效機制 登錄成功后,給瀏覽器響應令牌的同時,把該令牌存儲到redis中 LoginInterceptor攔截器中,需要驗證瀏覽器攜帶…

算法牢籠與思想飛地:在人工智能時代守衛靈魂的疆域

當手指在鍵盤上敲下“幫我寫一篇關于XX的文章”,當屏幕上的“智能助手”瞬間輸出結構完整、引經據典的文字,當算法為我們精準推送“你可能感興趣”的一切——我們正被一種前所未有的認知便利所包圍。然而,在這層包裹著效率與舒適的華麗外衣之…

WebAssembly瀏覽器指紋識別技術——實驗評估與應用展望(下篇)

引言 在上篇文章中,我們詳細闡述了基于WebAssembly的瀏覽器指紋識別技術的理論基礎和核心方法。本文將進一步展示該技術在實際應用中的表現,通過大規模的實驗驗證其有效性,并深入探討相應的防護策略。同時,我們也將客觀分析該技術的應用前景與潛在風險,為相關領域的研究和…

kafka--基礎知識點--5.4--max.in.flight.requests.per.connection

一、參數定義 max.in.flight.requests.per.connection 是 Kafka 生產者客戶端配置參數,用于控制生產者與單個 Broker 連接中未確認請求的最大數量。簡單來說,它限制了生產者在等待之前發送的消息確認(ACK)時,可以同時向…

【Spring AI 0基礎教程】1、基礎篇 環境搭建 - 智能天氣預報助手

基礎篇 | 環境搭建 - 智能天氣預報助手 一、什么是 Spring AI Spring AI (https://spring.io/projects/spring-ai)]是 Spring 官方于 2023 年推出的 AI 應用開發框架,它如同 AI 世界的"Spring 生態連接器",致力于簡化開發集成了 AI 功能的應…

深入淺出MyBatis緩存:如何讓數據庫交互飛起來

深入淺出MyBatis緩存:如何讓數據庫交互飛起來你是否遇到過這樣的場景:系統在高并發下響應緩慢,數據庫監控顯示CPU飆升,日志里充斥著大量重復SQL?作為開發者,我曾親眼目睹一個簡單的配置查詢拖垮整個系統。今…

【計算機考研(408)- 數據結構】緒論

緒論 基本概念(理解即可) 數據是信息的載體,是描述客觀事物屬性的數、字符及所有能輸入到計算機中并被計算機程序識別 和處理的符號的集合。數據是計算機程序加工的原料。(For Example : 聲音/圖像/字符串等) 數據元…

嵌入式學習-土堆PyTorch(9)-day25

進入尾聲,一個完整的模型訓練 ,點亮的第一個led#自己注釋版 import torch import torchvision.datasets from torch import nn from torch.utils.tensorboard import SummaryWriter import time # from model import * from torch.utils.data import Dat…

Java變量詳解:局部變量、成員變量、類變量區別及使用場景

作為Java開發者,深入理解不同變量的特性是寫出高質量代碼的基礎。本文將為你全面解析三種核心變量類型,并通過實戰案例展示它們的正確使用方式。一、變量類型概覽 1. 局部變量(Local Variable) 定義:在方法、構造方法或…

【收集電腦信息】collect_info.sh

收集電腦信息 collect_info.sh #!/bin/bashoutput"info.txt" > "$output"# 1. OS Version echo " 操作系統名稱及版本 " >> "$output" lsb_release -d | cut -f2- >> "$output" echo -e "\n" >…

服務器清理空間--主要是conda環境清理和刪除

1.查看空間情況 (base) zhouy24RL-DSlab:~/zhouy24Files$ df -h Filesystem Size Used Avail Use% Mounted on udev 252G 0 252G 0% /dev tmpfs 51G 4.9M 51G 1% /run /dev/nvme0n1p3 1.9T 1.7T 42G 98% / tmpfs 252G …

UE5多人MOBA+GAS 26、為角色添加每秒回血回藍(番外:添加到UI上)

文章目錄添加生命值和藍量的狀態標簽創建無限GE并應用監聽添加和去除標簽每秒回復配上UI添加生命值和藍量的狀態標簽 添加新的標簽 CRUNCH_API UE_DECLARE_GAMEPLAY_TAG_EXTERN(Stats_Health_Full)CRUNCH_API UE_DECLARE_GAMEPLAY_TAG_EXTERN(Stats_Health_Empty)CRUNCH_API U…

MetaGPT源碼剖析(三):多智能體系統的 “智能角色“ 核心實現——Role類

每一篇文章都短小精悍,不啰嗦。今天我們來深入剖析Role類的代碼實現。在多智能體協作系統中,Role(角色)就像現實世界中的 "員工",是執行具體任務、參與協作的基本單位。這段代碼是 MetaGPT 框架的核心&#…

【項目經驗】小智ai MCP學習筆記

理論 1、什么是MCP MCP(Model Context Protocol,模型上下文協議)是一種開放式協議,它實現了LLM與各種工具的調用。使LLM從對話、生成式AI變成了擁有調用三方工具的AI。用官方的比喻,MCP就是USB-C接口,只要實現了這個接口&#x…

Matlab學習筆記:矩陣基礎

MATLAB學習筆記:矩陣基礎 作為MATLAB的核心,矩陣是處理數據的基礎工具。矩陣本質上是一個二維數組,由行和列組成,用于存儲和操作數值數據。在本節中,我將詳細講解矩陣的所有知識點,包括創建、索引、運算、函數等,確保內容通俗易懂。我會在關鍵地方添加MATLAB代碼示例,…

技術演進中的開發沉思-38 MFC系列:關于打印

打印程序也是MFC開發中不能忽視的一個環節,現在做打印開發so easy。但當年做打印開發還是挺麻煩。在當年的桌面程序里就像拼圖的最后一塊,看著簡單,實則要把屏幕上的像素世界,準確映射到打印機的物理紙張上。而MFC 的打印機制就像…

Apache Ignite 長事務終止機制

這段內容講的是 Apache Ignite 中長事務終止機制(Long Running Transactions Termination),特別是關于分區映射交換(Partition Map Exchange)與事務超時設置(Transaction Timeout)之間的關系。下…