多传感器融合--MATLAB跟踪器介绍

MATLAB通过多目标跟踪器可以融合多传感器检测到的目标信息,常用到的多目标跟踪器有trackerGNN、trackerJPDA、trackerTOMHT 、trackerPHD等。trackerGNN通过假设一个跟踪的目标只能与一个测量目标匹配。trackerJDPA对每一个跟踪的目标可能匹配多个测量到的目标。trackerPHD通过概率假设密度(PHD)函数来跟踪目标。trackerTOMHT认为跟踪的目标存多个假设的目标与之匹配。

1、跟踪器的使用步骤

MATLAB中使用跟踪器的主要步骤有(1)设定跟踪器的参数,(2)获得检测目标的信息,调用跟踪器,(3)提取跟踪成功的目标的位置及速度信息。

(1)设定跟踪器的参数,如下所示

tracker = trackerGNN('FilterInitializationFcn', @initcvkf,'AssignmentThreshold',10, ...

'ConfirmationThreshold', [3 5], 'TrackLogic', 'History', ...

'DeletionThreshold', 10);

(2)获得检测目标的信息,调用跟踪器,如下所示

[confirmed,tentative,alltracks,info] = tracker(detection,time);

(3)提取跟踪成功的目标的位置及速度信息,如下所示

[pos,cov] = getTrackPositions(confirmed,positionSelector);

vel = getTrackVelocities(confirmed,velocitySelector);

2、测量目标的创建

表1 测量目标的属性表

序号

符号

描述

1

Time

目标的时间戳

2

Measurement

测量目标的结果

3

MeasurementNoise

测量目标的结果噪声

4

SensorIndex

测量的传感器的类型

5

ObjectClassID

测量目标的类型

6

MeasurementParameters

非线性卡尔曼滤波器初始化参数

7

ObjectAttributes

跟踪器的其它附加信息

测量目标属性表通过detection = objectDetection(time,measurement) 函数获得,输入是时间和测量的目标的结果。

通过如下两个例子可以建立测量目标

例1:detection = objectDetection(1,[100;250;10])

例2:detection = objectDetection(1,[100;250;10],'MeasurementNoise',10, ...

'SensorIndex',1,'ObjectAttributes',{'Example object',5})

3、跟踪目标的获得

表2 跟踪目标的属性表

序号

符号

描述

1

TrackID

跟踪目标ID(唯一)

2

Time

跟踪目标的更新时间

3

Age

跟踪目标的从首次初始化后的更新次数

4

State

跟踪目标的状态矩阵

5

StateCovariance

跟踪目标的状态协方差矩阵

6

IsConfirmed

目标是否被证实的状态,它为真表示目标为真实目标。

7

IsCoasted

滑行状态,它为真表示跟踪的目标在没有检测到的情况进行的更新

8

ObjectClassID

表示目标的分类,0表示目标类型未知

9

ObjectAttributes

包含传感器检测到目标的属性元胞数组

通过[confirmed,tentative,alltracks,info] = tracker(detection,time)可获得confirmed和tentative,它们分别指的是跟踪器返回的已经证实的真目标和假设的目标。Confirmed tracks 和Tentative tracks 两类目标都包含有表2的目标属性。

4、跟踪及测量目标的图形化

Matlab通过创建theater 绘图来展现虚拟化的跟踪目标和测量目标。Matlab 中的trackPlotter 函数与detectionPlotter 函数分别用于在theater 中绘制跟踪目标和测量目标的结果。具体例子如下所示:

(1)初始化跟踪目标和测量目标的结果

tp = theaterPlot('XLimits',[-1 1200],'YLimits',[-600 600]);  %%确定绘制区域X轴,Y轴的范围

trackP = trackPlotter(tp,'DisplayName','Tracks','MarkerFaceColor','g', ... 'HistoryDepth',0);  %% 绘制跟踪目标

detectionP = detectionPlotter(tp,'DisplayName','Detections','MarkerFaceColor', ... 'r');  %% 绘制测量到的目标

(2)更新跟踪目标和测量目标的结果

trackP.plotTrack(pos,vel,cov,labels); %%更新跟踪目标

detectionP.plotDetection(meas',measCov);%%更新测量目标

5、其它

在使用matlab的跟踪器时遇到的问题汇总如下:

  1. matlab的跟踪器默认采用的扩展卡尔曼滤波器(EKF),其函数要求测量的结果为三维的(X,Y,Z),如果是二维的则会报错误。

解决方法:将跟踪器的滤波方法设置为卡尔曼滤波(KF),或者将二维数据扩充为三维,第3维的测量数据一直为0。

  1. MATLAB的plotTrack(trPlotter,pos,vel,cov) 函数要求pos、vel、cov为三维信息,如果只有2维信息直接调用该函数会报维度不匹配的错误。

解决方法:在调用plotTrack函数之前将二维的位置、速度、协方差信息扩展成三维之后再调用plotTrack函数绘制跟踪结果。对于plotDetection函数同样可采用该方法进行处理。

clc;
clear;
close all
load('MarCE_Radar_Detections_01_005_patched.mat');
load('dtGroundTruthAIS.mat')figure(1);
for i = 1:numel(data)TR = extractfield(data{i},'TR');TR = reshape(TR,2,[]);Azimuth = TR(1,:);Range = TR(2,:);[X,Y] = pol2cart(Azimuth, Range);plot(X,Y,'.b');axis([-7000 7000 -7000 7000]);hold on;A = gt{i};scatter(A(:,1),A(:,2),'r.');%     pause(.01);
end
grid on;
xlabel('X')
ylabel('Y')
title('Radar Data with AIS Ground Truth')legend('Radar Data','AIS Data')

【数据融合】基于AIS和雷达的多传感器航迹融合matlab源码相关推荐

  1. 【数据融合】基于AIS和雷达的多传感器航迹融合matlab代码

    1 简介 AIS船舶自动识别系统能提供精确的船舶位置与属性信息,通过信息融合技术能有效弥补雷达测向精度不高的影响.为了对更大范围内的海域进行监视,本文对升空AIS与雷达信息融合技术进行了研究,以提高平 ...

  2. 【数据融合】基于AIS和雷达的多传感器航迹融合附matlab代码

    1 简介 AIS船舶自动识别系统能提供精确的船舶位置与属性信息,通过信息融合技术能有效弥补雷达测向精度不高的影响.为了对更大范围内的海域进行监视,本文对升空AIS与雷达信息融合技术进行了研究,以提高平 ...

  3. Matlab基于AIS和雷达的多传感器航迹融合

    多传感器融合--MATLAB跟踪器介绍 MATLAB通过多目标跟踪器可以融合多传感器检测到的目标信息,常用到的多目标跟踪器有trackerGNN.trackerJPDA.trackerTOMHT .t ...

  4. 【雷达图像】SAR合成孔径雷达成像及处理【含Matlab源码 307期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[雷达图像]SAR合成孔径雷达成像及处理[含Matlab源码 307期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2: 付费专 ...

  5. 【优化求解】基于粒子群算法求解多目标优化问题matlab源码

    [优化求解]基于粒子群算法求解多目标优化问题matlab源码 1 算法介绍 1.1 关于速度和位置 粒子群算法通过设计一种无质量的粒子来模拟鸟群中的鸟,粒子仅具有两个属性:速度和位置,速度代表移动的快 ...

  6. 信号检测:基于双稳随机共振的微弱信号检测含Matlab源码

    信号检测:基于双稳随机共振的微弱信号检测含Matlab源码 双稳随机共振是一种有效的微弱信号检测方法,广泛应用于各个领域.本文将介绍如何使用Matlab实现基于双稳随机共振的微弱信号检测,并提供相应的 ...

  7. 【雷达通信】 基于卡尔曼滤波实现GPS和INS联合导航含Matlab源码

    1 简介 ITS(智能交通系统)是一个开放的复杂巨系统,是新兴的交叉学科研究领域.ITS是将先进的信息处理技术.数据通信技术.电子控制技术以及计算机处理技术等有效的综合运用于整个运输管理体系,从而建立 ...

  8. 【表情识别】基于Gabor特征实现微表情识别系统含Matlab源码

    1 简介 表情识别的研究目标是让计算机能够自动识别出人的表情信息,从而更进一步地增强人机交互的友好性及智能性.但是由于人脸表情识别涉及图像处理,计算机视觉,应用数学等学科的融合,正是由于这种多学科交叉 ...

  9. 【指纹识别】基于模板匹配算法指纹识别匹配门禁系统matlab源码

    一.简介 1 指纹识别的引入和原理 1.1 指纹的基本知识 指纹,由于其具有终身不变性.唯一性和方便性,已几乎成为生物特征识别的代名词.指纹是指人的手指末端正面皮肤上凸凹不平产生的纹线.纹线有规律的排 ...

最新文章

  1. matlab fir工具箱,用MATLAB信號處理工具箱進行FIR濾波器設計的三種方法
  2. 就是肝!计算机基础知识总结与操作系统 PDF 下载
  3. MySQL中my.cnf解析
  4. 蓝奏云批量下载v0.3修复版
  5. sql去某几个字段重复的记录
  6. .NET 获取类型中的属性
  7. 可以在python3下面用的pyh
  8. SAP B1 VS女士的Navision ERP的比较 - 知道如何选择软件
  9. FAT文件系统与文件恢复
  10. 求二元一次方程 的解 C语言
  11. JS初学者使用jQuery开发一款弹幕射击游戏
  12. 推荐一个美中不失优雅的博客网主页(素材参考---麋鹿鲁哟)
  13. 父母生命末期,是在医院昂贵痛苦地治疗,还是接老人回家亲情陪伴
  14. mysql 百分比两位小数_SQL中如何让百分比后面保留2位小数?
  15. CFE的刷写与修改教程
  16. Django搭建简单网站
  17. 矩阵线性无关的特征向量个数与矩阵的秩的关系
  18. 议程速递 | 7月27日分论坛议程一览
  19. android手机的扩容教程,解决手机系统空间不足
  20. 计算机网络 王道考研2021 第六章:应用层 -- 文件传输协议FTP、电子邮件SMTP、POP3

热门文章

  1. Day39:MySQL数据库综合复习整理
  2. 【解决方案】AI+ 云时代 打造智慧港口安防视频云服务平台
  3. wireguard服务器配置
  4. MySQL 8.0.16安装教程
  5. 计算机基础知识填空题及答案,计算机基础知识习题与答案(填空)
  6. CGB2105第二阶段-day06前端网页技术HTML
  7. 三方SDK——mob短信验证
  8. 信用卡不良资产委外催收前景
  9. 登录密码规则复杂度:8-20位,必须包含大写字母,小写字母,数字组合,必须包含下面一位特殊字符(#@$%*~)
  10. 化妆品的网站策划分析