51uwb.cn

 找回密码
 立即注册
查看: 58074|回复: 131
打印 上一主题 下一主题

【源码参考】kalman 滤波调试

  [复制链接]

73

主题

249

帖子

7256

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
7256
跳转到指定楼层
#
发表于 2020-4-18 19:56:18 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
资料包有一个kalman文件夹,里面的程序是从拷贝过来的,没有验证,加上测距效果较好,用均值滤波已经达到我的预期,
kalman滤波一直没有提上日程。
直到前两天一坛友发帖说到这个事,我才有开始琢磨

http://51uwb.cn/forum.php?mod=viewthread&tid=209&extra=page%3D1

进过一番苦苦寻找和调试,终于调通了,特此分享给各位坛友。
先看结果(linux下调试结果)
蓝色数据为原始值,红色是原始值加一个随机噪声,绿色为kalman滤波后结果。

从仿真结果上看,kalman滤波后数据波动变小,更加稳定,更接近真实值。

附件源码使用:
linux gcc编译:gcc -o kalman main.c kalman.c matrix.c -lm
然后执行./kalman即可

*目前与资料包代码不一致,后期更新资料包kalman 滤波算法





kalman_test.rar

11.74 KB, 下载次数: 387

售价: 5 金钱  [记录]

回复

使用道具 举报

0

主题

5

帖子

10

积分

新手上路

Rank: 1

积分
10
131#
发表于 2025-4-25 14:18:58 | 只看该作者
其实单纯想要点金钱
回复

使用道具 举报

0

主题

5

帖子

10

积分

新手上路

Rank: 1

积分
10
130#
发表于 2025-4-25 14:18:04 | 只看该作者
一维卡尔曼滤波demo

clc;clear;close all
t = 1 : 1000;
nsig = 5 * sin(0.01 * t) + rand(1, length(t)) + randn(1, length(t)) + 5 * cos(0.05 * t + pi/1.5);
kf = zeros(size(nsig));

x = 0; % state, x(k) = a * x(k-1) + b * u(k)
a = 1; % state transfer matrix
b = 0; % control matrix
h = 1; % observer matrix
p = 0; % estimate cov
q = 0.002; % process cov
r = 0.05; % observer cov
g = 0; % kalman gain

gain =zeros(size(nsig));

for i = 1 : length(nsig)
    x = a * x + b * nsig(i);
    p = a * p * a + q;

    g = p * h /(h * p * h + r);
    x = x + g * (nsig(i) - h * x);
    p = (1 - g * h) * p;

    kf(i) = x;
    gain(i) = g;
end

plot(t, nsig, t, kf, t, gain);
legend("noise", "filtered", "kalman gain");
grid minor;
回复

使用道具 举报

0

主题

3

帖子

5

积分

新手上路

Rank: 1

积分
5
129#
发表于 2025-3-4 18:23:52 | 只看该作者
回复

使用道具 举报

0

主题

3

帖子

5

积分

新手上路

Rank: 1

积分
5
128#
发表于 2025-3-4 18:23:33 | 只看该作者
如何获得金钱
回复

使用道具 举报

0

主题

3

帖子

5

积分

新手上路

Rank: 1

积分
5
127#
发表于 2025-3-4 18:22:55 | 只看该作者
回复

使用道具 举报

0

主题

13

帖子

13

积分

新手上路

Rank: 1

积分
13
126#
发表于 2025-2-7 17:24:33 | 只看该作者
多谢分享!!
回复

使用道具 举报

0

主题

3

帖子

3

积分

新手上路

Rank: 1

积分
3
125#
发表于 2024-10-10 11:58:21 | 只看该作者
感谢楼主分享
回复

使用道具 举报

0

主题

4

帖子

9

积分

新手上路

Rank: 1

积分
9
124#
发表于 2024-6-8 16:35:30 | 只看该作者
tuzhuke 发表于 2020-4-18 21:49
测距实际结果,+-5cm到+-2.5cm,稳定度好很多!

感谢分享!!!!!!!!!!!!
回复

使用道具 举报

1

主题

17

帖子

17

积分

新手上路

Rank: 1

积分
17
123#
发表于 2024-6-7 21:19:36 | 只看该作者



谢谢分享!
回复

使用道具 举报

1

主题

17

帖子

17

积分

新手上路

Rank: 1

积分
17
122#
发表于 2024-6-7 21:19:20 | 只看该作者



谢谢分享!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

bphero Inc.  

GMT+8, 2025-5-20 15:25 , Processed in 0.027291 second(s), 8 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

快速回复 返回顶部 返回列表