问题标签 [kalman-filter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1969 浏览

iphone - 用于数值分析的 iOS5 Objective-C 库或 GNU Octave 包装类?

我正在使用卡尔曼滤波器进行一些数值估计和校正,并希望更好地估计我的 Q 和 R 参数,最好是动态的。 http://en.wikipedia.org/wiki/Kalman_filter#Estimation_of_the_noise_covariances_Qk_and_Rk

那篇文章提到GNU Octave是目前从数据中确定这些参数的最佳方式: http ://en.wikipedia.org/wiki/GNU_Octave#C.2B.2B_integration 不幸的是,它是为 Matlab 编写的,据说有一个 C++ 实现. 我在 C++ 方面非常薄弱,甚至不知道如何导入 C++ 库并在 XCode 中正确链接它。迄今为止,我所有的 C++ 库都包含在第 3 方 Objective-C 类中。

有没有人在 iPhone 上将 C++ 实现用于科学计算或工程应用程序?我将不胜感激有关如何使用 Objective-C 进行此类分析的任何指针或教程。

附加关键字:从数据中估计协方差

自协方差最小二乘 (ALS) 技术

噪声协方差

谢谢!

0 投票
1 回答
3278 浏览

signal-processing - PID 上的卡尔曼滤波器

我不确定这是否在这里,但我在理解卡尔曼滤波器时遇到了一些麻烦。我想要做的是调节带有 PID 补偿器的传感器,以找到 PID 滤波器的最佳增益。这是一种视频极点平衡问题。我想知道是否有人可以很好地解释卡尔曼滤波器的基础知识。

提前致谢!

0 投票
1 回答
5863 浏览

matlab - 使用卡尔曼滤波器估计位置

我正在做一个关于室内定位的项目。我使用 NS2 和一个名为 Senelex 的 matlab GUI 来查找节点的原始位置和估计位置。现在我想使用卡尔曼滤波器来估计节点/目标的位置。

例如:

如果我认为目标的速度是恒定的,我如何使用节点的估计或原始位置的确定值作为卡尔曼滤波器的输入。

以下是节点的估计位置和原始位置。

如何将这些用作卡尔曼滤波器的输入并使用卡尔曼滤波器估计目标?

0 投票
2 回答
3259 浏览

r - 如何为扩展卡尔曼滤波器估计 R 中的参数

任何人都知道如何为扩展 KF 估计 R 中的参数?请教育我,谢谢。我之前尝试过 KF,但没有为延长 KF 工作?有现成的包吗?

具体来说,我的问题是:Y(t) = F(X(t)) + w1, X(t) = alpha + beta * X(t-1) + w2,

其中 F 是一个非线性函数,假设 w1 和 w2 是独立同分布的,那么我们如何估计参数 alpha、beta 以及函数 F() 中的几个参数。

非常感谢。

0 投票
1 回答
615 浏览

r - 固定滞后平滑状态空间模型

我想计算状态空间模型中状态变量的固定滞后平滑估计。这些是在给定未来几个时期的信息的某个时间点对状态变量的估计,但不是整个样本。

将其置于方程中,在状态空间模型中,通常计算状态变量 S、S t / T 的平滑估计。这是给定整个样本 T 在时间 t 的状态估计。使用卡尔曼滤波器,也可以计算滤波估计 S t /t。

我想计算 S t / t+N,其中 N 是固定数量的周期,并且 t+N < T。

有人知道卡尔曼滤波软件中这种固定滞后平滑器的实现吗?

0 投票
2 回答
2391 浏览

java - 卡尔曼滤波器和内部状态变量的质量

我正在尝试为 Android 开发运动检测应用程序。应用程序应该能够跟踪手机在空间中的运动并将其映射到计算机屏幕上的运动。我正在使用 3 轴加速度计,由于数据非常嘈杂,我正在使用卡尔曼滤波器。

内部状态是 6 个分量向量 [speed-x, speed-y, speed-z, accel-x, accel-y, accel-z] 测量状态是 3 个分量向量 [accel-x, accel-y, accel-z ]。

过滤器在测量值上效果很好,但速度仍然很吵。

绘制值

现在我想知道这是正常行为还是我做错了什么,因为我对卡尔曼滤波器的理解非常基础。我正在使用 JKalman 库并遵循状态转换矩阵(dt 是 1/15,这是近似的传感器刷新率)

双[][] A = { { 1, 0, 0, dt, 0, 0 }, { 0, 1, 0, 0, dt, 0 }, { 0, 0, 1, 0, 0, dt }, {0,0,0,1,0,0},{0,0,0,0,1,0},{0,0,0,0,0,1}};

我还建立了我自己的协方差矩阵,协方差是从测试数据中计算出来的。这稍微改善了加速度信号,但对速度没有影响。

目前我能够实现stdvar

[0,0632041857 0,0607274545 0,0886326602] 用于速度 [x, y, z]

[0,0041689678 0,004423822 0,0074808552] 用于加速度 [x, y, z]。

我对加速度信号很满意,我想我不能再改进它了,但我很想提高速度信号的质量。

0 投票
2 回答
8928 浏览

android - 用于 GPS android 的卡尔曼滤波器

为了从 GPS 获得更准确的数据,建议使用卡尔曼滤波器。但我找不到任何教程如何为 GPS、android 实现卡尔曼滤波器。

0 投票
1 回答
451 浏览

matlab - 卡尔曼滤波器可以降低传感器网络中的节点密度吗?

我研究了卡尔曼滤波器可以抑制室内环境中存在的噪声,并可用于预测目标的未来位置。但是我想知道是否在卡尔曼滤波器的帮助下,我们可以用更少的节点使定位误差最小吗?

例如 :

我最初有一个包含 10 个节点的传感器网络。如果没有卡尔曼滤波器,我会从目标的估计位置和原始位置得到一些定位误差(比如 5)。

然后我将节点密度增加到 20 并再次得到定位错误.. 这次它(比如 2)

现在我想知道我是否使用卡尔曼滤波器,是否有可能获得更接近具有 20 个节点的传感器网络的定位误差(3 或 4)?

请帮助我。

问候, 里亚斯

0 投票
1 回答
9964 浏览

accelerometer - 学习传感器融合的最佳书籍,特别是关于 IMU 和 GPS 集成

我需要从以下传感器构建惯性测量单元 (IMU):

  • 加速度计
  • 陀螺仪
  • 磁力计

我必须整合这些数据以得出传感器平台的姿态和所涉及的外力(例如,从线性加速度中减去倾斜)。

然后,我必须使用这些信息来补充标准 GPS 单元,以提供比 GPS 单独提供的更高一致性测量。

我确实了解此问题的基本要求:

  • 集成传感器。(要消除噪音,请减去加速度)。
  • 去除噪音。(卡尔曼滤波器)
  • 将 IMU 测量集成到 GPS 中。

虽然目前周围有各种图书馆可以为我做这件事(http://code.google.com/p/sf9domahrs/),但我需要了解所涉及的机制,使其能够向其他人解释这些技术在我实施了解决方案之后。

我一直在查看以下资源,但我不确定我应该选择哪一个……我需要一些涵盖传感器融合、过滤、IMU、集成的东西。

多传感器融合集成智能系统

定位系统惯性导航集成

机电一体化-智能系统-越野车

自主飞行机器人无人驾驶车辆

我希望有这方面经验的人可以提供任何建议。

非常感谢。

0 投票
2 回答
476 浏览

c++ - 卡尔曼,最小二乘,或

为了帮助人们理解我的问题是我在问什么,我选择完全改写它。我希望这能解决问题。

我正在以 1 秒的速度收集 GPS 数据(纬度/经度)。了解这些数据可能不是 100% 准确,并且偶尔有一个(1 个或多个)数据点偏离标准,为了确定相当准确的路线,去除异常点的最合适方法是什么?车辆的速度?这辆车可以以每小时 0-60 英里的速度行驶,通常是直线,但也容易突然转弯(加权值?)。

对于造成的混乱,以及未能理解已经提出的建议,我深表歉意。