基于协方差交叉(CI)的多传感器融合算法matlab仿真,对比单传感器和SCC融合

1.程序功能描述

      基于协方差交叉(CI)的多传感器融合算法matlab仿真,对比单传感器和SCC融合。对比速度估计误差RMSE指标,位置估计误差RMSE指标,等概率密度椭圆。

2.测试软件版本以及运行结果展示

MATLAB2022A版本运行


3.核心程序

STEPS=1;

figure;

plot(xy1(1:STEPS:end,1),xy1(1:STEPS:end,2),'-g',...

    'LineWidth',2);

hold on

plot(xy2(1:STEPS:end,1),xy2(1:STEPS:end,2),'-m',...

    'LineWidth',2);

hold on

plot(xy3(1:STEPS:end,1),xy3(1:STEPS:end,2),'-b',...

    'LineWidth',2);

hold on

plot(xy4(1:STEPS:end,1),xy4(1:STEPS:end,2),'-r',...

    'LineWidth',2);

hold on

legend('传感器1','传感器2','SCC','CI');

STEPS=2;

figure

k=1:nums;

% 绘制位置估计误差的均方根误差图

plot(k(1:STEPS:end),Perr1(1:STEPS:end),'-bs',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.9,0.0,0.0]);

hold on

plot(k(1:STEPS:end),Perr2(1:STEPS:end),'-mo',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.5,0.9,0.0]);

hold on

plot(k(1:STEPS:end),Perr_scc(1:STEPS:end),'-b^',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.2,0.9,0.5]);

hold on

plot(k(1:STEPS:end),Perr_ci(1:STEPS:end),'-r>',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.9,0.9,0.0]);

hold on

legend('传感器1','传感器2','SCC','CI');

ylabel({'位置 RMSE'} );

title('位置 RMSE');

figure

k=1:nums;

% 绘制速度估计误差的均方根误差图

plot(k(1:STEPS:end),Verr1(1:STEPS:end),'-bs',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.9,0.0,0.0]);

hold on

plot(k(1:STEPS:end),Verr2(1:STEPS:end),'-mo',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.5,0.9,0.0]);

hold on

plot(k(1:STEPS:end),Verr_scc(1:STEPS:end),'-b^',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.2,0.9,0.5]);

hold on

plot(k(1:STEPS:end),Verr_ci(1:STEPS:end),'-r>',...

    'LineWidth',1,...

    'MarkerSize',6,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor',[0.9,0.9,0.0]);

hold on

legend('传感器1','传感器2','SCC','CI');

ylabel({'速度 RMSE'} )

title('速度 RMSE');

4.本算法原理

      在多源信息处理领域,为获取更精确可靠的估计结果,常需融合多个传感器数据。协方差交叉(CI)算法作为一种重要的融合方法,在无需精确知晓传感器间相关性信息时,就能有效融合多传感器估计值,具备良好的鲁棒性。


CI算法基于这样的理念,即融合后的估计协方差应小于等于各传感器估计协方差的加权和。


在多传感器数据融合中,每个传感器的观测数据可看作位于某个子空间内。SCC 算法旨在找到不同传感器数据子空间之间的一致性关系。

单传感器:由于信息来源单一,其估计的准确性和可靠性受传感器自身性能限制。在面对复杂环境或存在噪声干扰时,估计误差较大。例如,在多径效应严重的环境中,基于单一雷达传感器的目标定位误差会显著增大。

CI 融合:CI 算法能够有效融合多个传感器信息,在一定程度上减小估计误差。由于其对传感器间相关性要求不高,在实际应用中具有较强的鲁棒性。但当传感器数量过多或传感器数据存在较大冲突时,融合效果可能会受到影响。

SCC 融合:SCC 融合通过挖掘传感器数据子空间的一致性,在处理具有相似特征的数据时表现较好。然而,其性能高度依赖于特征提取和聚类算法的准确性。如果特征提取不准确或聚类参数设置不当,可能导致错误的融合结果。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容