机动目标跟踪——匀加速运动模型(一维)
机动目标跟踪——目标模型概述(一维)
原创不易,路过的各位大佬请点个赞
WX: ZB823618313
机动目标跟踪——目标模型概述
- 机动目标跟踪——目标模型概述(一维)
- 1. 对机动目标跟踪的理解
- 2. 目标模型概述
- 4. 连续匀加速运动CA模型
- 5. 离散匀加速运动CA模型
- 6. 匀加速运动CA模型Matlab实现
- 7. 卡尔曼和扩展卡尔曼滤波实现一维目标跟踪
- 8. 其它模型见另一个博客
1. 对机动目标跟踪的理解
机动目标跟踪一直是目标跟踪领域研究的难点和重点问题。建立目标运动模型和滤波算法是目标跟踪的两个重要因素。由于目标的机动具有不可预测性,使得我们很难建立精确的目标运动模型。如何建立一种有效的模型来反映目标真实的运动轨迹是高机动目标跟踪系统急需解决的问题。经过近三十年的研究,该领域取得了许多重要成果。
个人理解:机动目标跟踪拥有三要素:
被跟踪目标建模(也是本博客重点)
传感器测量(另一个博客介绍)
滤波器设计(见目标跟踪专栏)
从算法层面,在目标跟踪系统中,常用的滤波算法是以卡尔曼滤波器为基本框架的估计算法。卡尔曼滤波器是一种线性、无偏、以误差均方差最小为准则的最优估计算法,它有精确的数学形式和优良的使用效能。卡尔曼滤波方法实质上是一种数据处理方法,它采用递推滤波方法,根据获取的量测数据由递推方程递推给出新的状态估计。由于计算量和存储量小,比较容易满足实时计算的要求,在工程实践中得到广泛应用。
除此之外,非线性滤波也广泛应用与机动目标跟踪,比如:
扩展卡尔曼滤波EKF
无迹卡尔曼滤波UKF
容积卡尔曼滤波CKF
求积卡尔曼滤波QKF
中心差分卡尔曼滤波CDKF
Divided difference filter DDF
高斯混合滤波GSF
强跟踪滤波STF
粒子滤波PF
… …
2. 目标模型概述
机动目标模型描述了目标状态随着时间变化的过程。一个好的模型抵得上大量的数据。当前几乎所有的目标跟踪算法都是基于模型进行状态估计的。在卡尔曼滤波器被引入目标跟踪领域后,基于状态空间的机动目标建模成为主要研究对象之一。
目标的空间运动基于不同的运动轨迹和坐标系
一维运动
二维运动
三维运动根据不同方向的运动是否相关
坐标间不耦合模型
坐标间耦合模型
坐标间不耦合模型: 这类模型假设三维空间三个正交方向上的目标机动过程不耦合。目标机动是飞行器受到外力作用而使得加速度变化所致,所以对机动建模的难点在于对目标加速度的描述。对于无机动目标,常速(Constant Velocity,CV〉模型常用于描述这类目标的运动,而常加速度(Constant Acceleration,CA)模型则常用于描述加速度趋近常数的机动目标的运动。
坐标间耦合模型: 坐标间耦合模型绝大多数情况下指的是转弯运动模型。由于此类模型与坐标密切相关,所以可以分为两类:二维转弯模型和三维转弯模型。二维转弯模型又称为平面转弯模型,即CT模型。
下面讲机动目标不同的模型:
4. 连续匀加速运动CA模型
匀加速(CA)模型用来匹配目标做匀加速直线运动时的清况,加速度的变化率为0。同上面的CV模型中所述一样,加速度绝不可能是精确的常数,它的轻微变化可以用均值为零,方差为q的高斯白噪声来建模:
d X ¨ ( t ) = W ( t ) d\ddot{X}(t)=W(t) dX¨(t)=W(t)
一维匀加速运动模型(连续):
目标状态为:位置和速度和加速度、即 X = [ x , x ˙ , x ¨ ] T {X}=[x, \dot{x}, \ddot{x}]^T X=[x,x˙,x¨]T
CA模型为
X ˙ ( t ) = [ 0 1 0 0 0 1 0 0 0 ] X ( t ) + [ 0 0 1 ] W ( t ) \dot{X}(t)=\begin{bmatrix}0&1&0\\0&0&1\\0&0&0\end{bmatrix}X(t) + \begin{bmatrix}0\\0\\1\end{bmatrix}W(t) X˙(t)=⎣⎡000100010⎦⎤X(t)+⎣⎡001⎦⎤W(t)
5. 离散匀加速运动CA模型
同CV模型一样,对其进行间隔为T的离散采样,转化为离散时间状态方程为:
一维匀加速运动模型(离散):
X k + 1 = [ 1 T T 2 / 2 0 1 T 0 0 1 ] X k + [ T 2 / 2 T 1 ] W k X_{k+1}=\begin{bmatrix}1&T&T^2/2\\0&1&T\\0&0&1\end{bmatrix}X_{k} + \begin{bmatrix}T^2/2\\T\\1\end{bmatrix}W_k Xk+1=⎣⎡100T10T2/2T1⎦⎤Xk+⎣⎡T2/2T1⎦⎤Wk
T T T为采样时间。
为了方便,定义如下矩阵;
A = [ 0 1 0 0 0 1 0 0 0 ] , B = [ 0 0 1 ] A=\begin{bmatrix}0&1&0\\0&0&1\\0&0&0\end{bmatrix}, B= \begin{bmatrix}0\\0\\1\end{bmatrix} A=⎣⎡000100010⎦⎤,B=⎣⎡001⎦⎤
F = [ 1 T T 2 / 2 0 1 T 0 0 1 ] , G = [ T 2 / 2 T 1 ] F=\begin{bmatrix}1&T&T^2/2\\0&1&T\\0&0&1\end{bmatrix}, G= \begin{bmatrix}T^2/2\\T\\1\end{bmatrix} F=⎣⎡100T10T2/2T1⎦⎤,G=⎣⎡T2/2T1⎦⎤
6. 匀加速运动CA模型Matlab实现
位置轨迹: 图1
速度轨迹: 图2
加速度轨迹: 图3
代码:
%% 一维匀加速CA运动目标轨迹
clc;
clear all;
close all;
n=3; % state dimension : 3
T=1; % sample time.
N=100; %the runs atime,跟踪总时长
w_mu=[0]';
%% target model
q=3; % 目标运动学标准差,过程噪声
Qk=q^2*eye(1);% cov. of process noise
% state matrix
Fk= [1 T T^2/2 0 1 T 0 0 1]; %Gk= [ T^2/2 T 1]; %%
%% define parameter
sV=zeros(n,N,1,1); % state
x=[1000,200,10]';
P_0=diag([1e5,10^2, 10^1]); x0=mvnrnd(x,P_0); % 初始状态
%x0=(x+normrnd(0,0.001)')';
x=x0';
for k=1:N%% %%%%%%% target model %%%%%%%%%%%%%%%%%%%%%% 目标运动学模型(被跟踪目标建模),匀速运动CV模型w=mvnrnd(w_mu',Qk)';%过程噪声方差x=Fk*x+Gk*w;sV(:,k,1,1)=x;end
% 一维匀速CV运动目标轨迹
ii=1:N;
%
figure
plot(ii,sV(1,:,1,1),'-*r','LineWidth',1)
grid on
xlabel('时间(s)');ylabel('m');
legend('真实轨迹')
title('一维维匀速运动目标轨迹(位置)')
figure
plot(ii,sV(2,:,1,1),'-*b','LineWidth',1)
grid on
xlabel('时间(s)');ylabel('m/s');
legend('真实轨迹')
title('一维维匀速运动目标轨迹(速度)')figure
plot(ii,sV(3,:,1,1),'-*g','LineWidth',1)
grid on
xlabel('时间(s)');ylabel('m/s^2');
legend('真实轨迹')
title('一维维匀速运动目标轨迹(加速度)')
7. 卡尔曼和扩展卡尔曼滤波实现一维目标跟踪
算法:卡尔曼滤波、扩展卡尔曼滤波
传感器:雷达
跟踪轨迹图下图所示:
8. 其它模型见另一个博客
原创不易,路过的各位大佬请点个赞
机动目标跟踪——匀加速运动模型(一维)相关推荐
- 机动目标跟踪——匀加速运动模型(三维)
机动目标跟踪--匀加速运动模型(三维) 原创不易,路过的各位大佬请点个赞 WX: ZB823618313 机动目标跟踪--目标模型概述 机动目标跟踪--匀加速运动模型(三维) 1. 对机动目标跟踪的理 ...
- 机动目标跟踪——匀加速运动CA模型(二维)
机动目标跟踪--匀加速运动CA模型(二维) 原创不易,路过的各位大佬请点个赞 WX: ZB823618313 机动目标跟踪--目标模型概述 机动目标跟踪--匀加速运动CA模型(二维) 1. 对机动目标 ...
- 机动目标跟踪——Jerk模型
机动目标跟踪--Jerk模型 原创不易,路过的各位大佬请点个赞 针对机动目标跟踪的探讨.技术支持欢迎联系,也可以站内私信 WX: ZB823618313 机动目标跟踪--Jerk模型 机动目标跟踪-- ...
- 机动目标跟踪—匀速转弯CT模型/匀速圆周运动
机动目标跟踪-匀速转弯CT模型/匀速圆周运动 原创不易,路过的各位大佬请点个赞 针对机动目标跟踪的探讨.技术支持欢迎联系,也可以站内私信 WX: ZB823618313 机动目标跟踪-匀速转弯CT模型 ...
- 机动目标跟踪——目标模型概述(匀速运动CV模型)
机动目标跟踪--目标模型概述 原创不易,路过的各位大佬请点个赞 WX: ZB823618313 机动目标跟踪--目标模型概述 机动目标跟踪--目标模型概述 1. 对机动目标跟踪的理解 2. 目标模型概 ...
- 机动目标跟踪——匀速运动CV模型
机动目标跟踪--匀速运动CV模型 原创不易,路过的各位大佬请点个赞 WX: ZB823618313 机动目标跟踪--目标模型概述 机动目标跟踪--匀速运动CV模型 1. 对机动目标跟踪的理解 2. 目 ...
- 交互式多模型算法IMM——机动目标跟踪中的应用
机动目标跟踪--交互式多模型算法IMM 原创不易,路过的各位大佬请点个赞 WX: ZB823618313 机动目标跟踪--交互式多模型算法IMM 机动目标跟踪--交互式多模型算法IMM 1. 对机动目 ...
- 交互式多模型-粒子滤波IMM-PF—在机动目标跟踪中的应用/matlab实现
交互式多模型-粒子滤波IMM-PF-在机动目标跟踪中的应用/matlab实现 原创不易,路过的各位大佬请点个赞 WX: ZB823618313 交互式多模型-粒子滤波IMM-PF-在机动目标跟踪中的应 ...
- 交互式多模型-扩展卡尔曼滤波IMM-EKF——机动目标跟踪中的应用
交互式多模型-扩展卡尔曼滤波IMM-EKF--机动目标跟踪中的应用 原创不易,路过的各位大佬请点个赞 针对机动目标跟踪的探讨.技术支持欢迎联系,也可以站内私信 WX: ZB823618313 机动目标 ...
最新文章
- 基于SAAS的IT运维管理方案
- java json 去重_js操作两个json数组合并、去重,以及删除某一项元素
- JavaScript——定时器(setTimeout/setInterval)
- python 发邮件_Python发邮件告别smtplib,迎接zmail
- 自定义依赖注解无效_关于Apt注解实践与总结【包含20篇博客】
- Mac 下iterm2配色方案(高亮)及显示分支
- 从环境搭建到回归神经网络案例,带你掌握Keras
- c#读取图片成rgb二维数组
- 苹果电脑如何使用Tuxera NTFS for mac抹掉NTFS格式
- java的程序控制关键字_Java编程的关键字有哪些
- VS注释和取消注释快捷键自定义
- CATIA二次开发—漫谈开发环境
- 初识小熊派——小熊派硬件分析
- 关于华为设备远程登录telnet和ssh的配置
- 学习英语02——词汇——01
- Vue Element table表格实现表头自定义多类型动态筛选 , 目前10种筛选类型,复制即用
- 有一种程序员的浪漫叫做,有程序为你宕过机
- 张正友相机标定算法详解
- ubuntu卡在Started gnome...上的问题
- 消防给水及消火栓系统技术规范_《消防给水及消火栓系统技术规范 》GB50974-2014关于稳压泵理解...
热门文章
- 计算机windons考试题目,计算机一级考试Windows理论练习题(有答案)
- mkfs.minix.c之minix_super_block.s_ninodes获取解析
- mysql报错max_prepared_stmt_count的解决过程
- 基于微信小程序的手游租号系统-毕业设计作品
- 使用Java与QuantLib 进行雪球结构产品的评价
- Git 底层数据存储结构与工作原理介绍
- 最新彩虹易支付搭建教程
- 1951年-2019年重庆天气分析
- 阿里蚂蚁金服五面,血与泪的总结(附面试题)
- 朋友圈功能合集来咯!定时发朋友圈,查看朋友圈,朋友圈跟圈,一键转发朋友圈,延迟评论