您现在的位置:首页 >> 技术文章 >> MATLAB技术 >> 内容

对室内的行人定位跟踪算法进行研究:包括基于RSS的KNN室内定位算法、基于RSS的卡尔曼滤波算法、融

时间:2019-7-12 3:44:57 点击:

  核心提示:对室内的行人定位跟踪算法进行研究:包括基于RSS的KNN室内定位算法、基于RSS的卡尔曼滤波算法、融合RSS和DR的粒子滤波算法...
function [xk,wk]=pf(xk,wk,N,A,V,yobs)

%B=[0.5,0;0,0.5;1,0;0,1];
for n=1:N
    xk(:,n)=A*xk(:,n)+V(:,n);%按照重要密度函数采样
end
xk;
yobs=repmat(yobs,1,N);
%========================================================
%更新权值
diff=(xk(1:2,:)-yobs).^2;
wk(1,:)=(1/(sqrt(2*pi)*5)).*exp(-diff(1,:)-diff(2,:))./(2*25);
wk(2,:)=(1/(sqrt(2*pi)*5)).*exp(-diff(1,:)-diff(2,:))./(2*25);
wk(3,:)=(1/(sqrt(2*pi)*5)).*exp(-diff(1,:)-diff(2,:))./(2*25);
wk(4,:)=(1/(sqrt(2*pi)*5)).*exp(-diff(1,:)-diff(2,:))./(2*25);

%========================================================
%归一化权值
rowsum=sum(wk,2);
Neff=zeros(4,1);
for n=1:size(xk,1)
    if (rowsum(n)>realmin)||(rowsum(n)<-realmin)
        wk(n,:)=wk(n,:).^2;
    else
        continue;
    end
end
 for n=1:size(xk,1)
     if Neff(n==0)
         index=1;
         mindiff=diff(1,1);
         for k=1:(N-1)
             if mindiff>diff(1,k+1)
                 index=k+1;
                 mindiff=diff(1,k+1);
             end
         end
         xk(n,:)=rempat(xk(n,index),1,N);
         wk(n,:)=1/N;
     elseif sum(Neff(n)<N)
         [xk(n,:),wk(n,:)]=resample(xk(n,:),wk(n,:),N);
     end
 end
 联系:highspeedlogic

QQ :1224848052

微信:HuangL1121

邮箱:1224848052@qq.com

网站:http://www.mat7lab.com/

网站:http://www.hslogic.com/

微信扫一扫:

作者:融合RSS和DR的粒子滤波算法 来源:融合RSS和DR的粒子滤波算法
  • 您是如何找到本站的?
  • 百度搜索
  • Google搜索
  • 查阅资料过程中
  • 论坛发现
  • 百度贴吧发现
  • 朋友介绍
本站最新成功开发工程项目案例
相关文章
  • 没有相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
  • matlab代做|matlab专业代做|matlab淘宝代做(www.hslogic.com) © 2019 版权所有 All Rights Reserved.
  • Email:highspeed_logic@163.com 站长QQ: 1224848052

    专业代做/代写/承接、MATLAB、SIMULINK、FPGA项目、博士/硕士/本科毕业设计、课题设计、论文,毕业论文,Coursework、Eassy、Assignment