蓝牙定位-高斯滤波、卡尔曼滤波、滑动平均滤波( matlab)

本文介绍了在蓝牙定位中,如何使用MATLAB实现高斯滤波、卡尔曼滤波和滑动平均滤波对RSSI信号进行处理。作者在毕设中遇到相关资料稀缺的问题,决定分享自己的代码,旨在帮助进行同类定位研究的科研人员。
摘要由CSDN通过智能技术生成

自己在做毕设的时候,发现网上很少有关于蓝牙定位过程中对rssi滤波处理的matlab代码,要不就是收费(誓死不花一分钱)要不就是对于图像处理的一系列滤波算法,所以小陈把自己写的滤波算法分享出来,希望能够对做同样定位的研友们有所帮助!

滑动平均滤波(详细算法自行搜索哦)

function res = MovingAverage(input,N)
%% input为平滑前序列(列向量和行向量均可);N为平滑点数(奇数);res返回平滑后的序列(默认行向量)。
sz = max(size(input));
n = (N-1)/2;
res = [];
for i = 1:length(input)
    if i <= n
        res(i) = sum(input(1:2*i-1))/(2*i-1);
    elseif i < length(input)-n+1
        res(i) = sum(input(i-n:i+n))/(2*n+1);
    else
        temp = length(input)-i+1;
        res(i) = sum(input(end-(2*temp-1)+1:end))/(2*temp-1);
    end
end
end
卡尔曼滤波

% kalman_filter.m
%获取传过来的RSSI值
function X = kalman_filter(data,Q,R,x0,P0)

N = length(data);
K = zeros(N,1);
X = zeros(N,1);
P = zeros(N,1);
 
X(1) = x0;
P(1) = P0;
 
for i &#
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值