• 【滤波跟踪】基于matlab最近邻算法多目标航迹关联【含Matlab源码 2093期】


    ✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
    🍎个人主页:海神之光
    🏆代码获取方式:
    海神之光Matlab王者学习之路—代码获取方式
    ⛳️座右铭:行百里者,半于九十。

    更多Matlab仿真内容点击👇
    Matlab图像处理(进阶版)
    路径规划(Matlab)
    神经网络预测与分类(Matlab)
    优化求解(Matlab)
    语音处理(Matlab)
    信号处理(Matlab)
    车间调度(Matlab)

    ⛄一、最近邻算法多目标航迹关联简介

    1 引言
    多传感器的航迹关联是多传感器信息融合系统中的关键技术之一,现有的航迹关联技术大多是在没有系统偏差情况下进行的。存在系统偏差会造成这些关联算法性能急剧下降。而有系统偏差的图像配准方法和基于目标参照拓扑的航迹关联方法,是基于航迹历史信息的航迹关联算法,实时性不高。提出的全局最近邻算法在无系统偏差情况下具有很好的关联效果,但在有系统偏差情况下,该算法会随着系统偏差的增加其关联性能急剧的下降。基于此,全局最近邻算法的基础上,采用了一种修正全局最近邻的航迹关联算法。

    文中利用航迹位置偏差和航迹距离偏差进行航迹预关联,继而为全局最近邻的航迹关联算法提供可靠的先验信息,

    2 系统模型
    在笛卡尔坐标系中, 分布于(XA,YB)处的雷达A和(XB,YB)处的雷达B。雷达的量测值为(Rs,θs),其中s表示雷达A和雷达B,Rs表示量测距离,θs表示量测方位角。雷达s的量测模型是:
    在这里插入图片描述
    雷达s的本地极坐标系转换到公共笛卡尔坐标系中的坐标值是:
    在这里插入图片描述
    其中,(Xs,Ys)表示雷达s的量测值转换到公共笛卡尔坐标系中的值。

    3 基于全局最近邻法的航迹关联
    若雷达A中的航迹和雷达B的航迹预关联成功,则定义两航迹距离为:
    在这里插入图片描述
    对预关联失败的两航迹间的距离定义为:

    D(i,j)=+∞ (22)

    对同一时刻雷达A和雷达B的所有航迹都进行预关联可得到关联距离矩阵DnA×nB。得到关联距离矩阵后,可以将航迹关联视为一个最优分配问题,分配原则应满足:1)每一行只能分配一个元素;2)每一列只能分配一个元素;3)所有分配元素值的总和要最小。航迹关联问题可描述为:
    在这里插入图片描述
    其中,a(i,j)=1两航迹关联成功,a(i,j)=0表示两航迹关联失败。

    ⛄二、部分源代码

    clc;
    clear all;
    close all;
    T=4; %采样间隔
    spoint=40;%控制采样数据点
    strack=30;%控制航迹对数
    num=1; %仿真次数

    deltrou1=170; %%% 信息源1的参数
    deltsita1=0.3*pi/180;
    deltv1=12;

    deltrou2=180; %%% 信息源2的参数
    deltsita2=0.3*pi/180;
    deltv2=20;
    coordinate1=[125e3,125e3]; %%% 信息源1的坐标
    coordinate2=[235e3,130e3]; %%% 信息源2的坐标

    Ect=zeros(num,spoint); %各次仿真的正确关联率
    Eet=zeros(num,spoint); %各次仿真的错误关联率
    Ec=zeros(1,spoint); %平均正确关联率
    Ee=zeros(1,spoint); %平均错误关联率

    for z=1:num %蒙特卡洛仿真次数
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %%%%%%%%%%%%%%% 变量的设置 %%%%%%%%%%%%%%%%%%%%%%%%%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    X1G=zeros(2,spoint,strack);%存储站1估计值
    X2G=zeros(2,spoint,strack);%存储站2估计值
    XY1=zeros(4,1,strack); %存储站1预测值
    XY2=zeros(4,1,strack); %存储站2预测值

    Z1L=zeros(4,spoint,strack);%存储理论值
    Z2L=zeros(4,spoint,strack);%存储理论值
    Z1G=zeros(4,spoint,strack);%存储站1观测值
    Z2G=zeros(4,spoint,strack);%存储站2观测值
    
    Z1LL=zeros(4,spoint,strack);%存储理论值
    Z2LL=zeros(4,spoint,strack);%存储理论值
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %%%%%%%%%%%%%%% 参数的设置 %%%%%%%%%%%%%%%%%%%%%%%%%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    A=[1,T,0,0;...
        0,1,0,0;...
        0,0,1,T;...
        0,0,0,1];
    H=[1 0 0 0;...
        0 0 1 0];    %观测矩阵
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %%% 设置航迹,初始点在(0,0),(380000,0),(380000,270000),(0,270000)区域内正态分布,
    %%% 初始速度和初始航向分别在4—1200m/s和0—2π之间均匀分布
    centerpointx=380e3/2;
    centerpointy=270e3/2;
    for j=1:strack
        pointx=centerpointx+centerpointx*randn(1)/5;
        pointy=centerpointy+centerpointy*randn(1)/5;
        sita=2*pi*rand(1);
        vx=(4+(1200-4)*rand(1))*cos(sita);
        vy=(4+(1200-4)*rand(1))*sin(sita);
        Z1L(:,1,j)=[pointx,vx,pointy,vy]';         %%% 先设定每对航迹第一个点的 x,y 值
        Z2L(:,1,j)=[pointx,vx,pointy,vy]';
    end
    for j=1:strack
        for k=1:spoint-1
            Z1L(:,k+1,j)=A*Z1L(:,k,j);                    %存储理论值     站1,2
            Z2L(:,k+1,j)=A*Z2L(:,k,j);
        end
    end
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %%%%% 转换到各自的 rou-sita坐标下加上噪声---这才是模拟的雷达直接测得的数据:距离,角度,速度
    Drousita1=zeros(3,spoint,strack);
    Drousita2=zeros(3,spoint,strack);
    for j=1:strack
        for i=1:spoint
            Drousita1(1,i,j)=sqrt((Z1L(1,i,j)-coordinate1(1))^2+(Z1L(3,i,j)-coordinate1(2))^2)+deltrou1*randn(1);
            if (Z1L(3,i,j)-coordinate1(2))>0 &&(Z1L(1,i,j)-coordinate1(1))>0
                Drousita1(2,i,j)=atan((Z1L(3,i,j)-coordinate1(2))/(Z1L(1,i,j)-coordinate1(1)))+deltsita1*randn(1);
            elseif (Z1L(3,i,j)-coordinate1(2))>0 &&(Z1L(1,i,j)-coordinate1(1))<0
                Drousita1(2,i,j)=pi+atan((Z1L(3,i,j)-coordinate1(2))/(Z1L(1,i,j)-coordinate1(1)))+deltsita1*randn(1);
            elseif (Z1L(3,i,j)-coordinate1(2))<0 &&(Z1L(1,i,j)-coordinate1(1))<0
                Drousita1(2,i,j)=pi+atan((Z1L(3,i,j)-coordinate1(2))/(Z1L(1,i,j)-coordinate1(1)))+deltsita1*randn(1);
            else
                Drousita1(2,i,j)=atan((Z1L(3,i,j)-coordinate1(2))/(Z1L(1,i,j)-coordinate1(1)))+deltsita1*randn(1);
            end
            Drousita1(3,i,j)=sqrt(Z1L(2,i,j)^2+Z1L(4,i,j)^2)+deltv1*randn(1);
        end
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55

    ⛄三、运行结果

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    ⛄四、matlab版本及参考文献

    1 matlab版本
    2014a

    2 参考文献
    [1] 陈中华,王国宏,关成斌,谭顺成.基于修正全局最近邻的有系统偏差的航迹关联算法[J].弹箭与制导学报. 2012,32(01)

    3 备注
    简介此部分摘自互联网,仅供参考,若侵权,联系删除

    🍅 仿真咨询
    1 各类智能优化算法改进及应用

    生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

    2 机器学习和深度学习方面
    卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

    3 图像处理方面
    图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

    4 路径规划方面
    旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

    5 无人机应用方面
    无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

    6 无线传感器定位及布局方面
    传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

    7 信号处理方面
    信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

    8 电力系统方面
    微电网优化、无功优化、配电网重构、储能配置

    9 元胞自动机方面
    交通流 人群疏散 病毒扩散 晶体生长

    10 雷达方面
    卡尔曼滤波跟踪、航迹关联、航迹融合

  • 相关阅读:
    Camera开发-图像的常用数储存格式
    数字化仪的超声波应用
    6 个最佳 Windows 免费磁盘分区管理器
    利用epoll创建自己的后台服务,实现对各个客户端网络通信(含示例代码)
    动态新增、修改Logback的Appender(可实现动态调整日志级别,Appender参数)
    学生用什么台灯对眼睛最好?精选最好的学生护眼灯品牌排行
    PDF转HTML格式不会弄?PDF转HTML在线教学快来看
    lv3 嵌入式开发-4 linux shell命令(文件搜索、文件处理、压缩)
    【Android】-- 关于文本和视图的基本操作(设置内容、大小、颜色、宽高、间距、对齐方式)
    [基础01]基础控件(上)-TextView-Button-EditText-ImageView
  • 原文地址:https://blog.csdn.net/TIQCmatlab/article/details/126734132