在传感器感知这块,主要集中在两大部分:状态估计和数据关联。
状态估计算法主要在线性卡尔曼,非线性的扩展卡尔曼、无迹卡尔曼、粒子滤波。
数据关联主要在最近邻、航迹分裂、PDA, JPDA等。
其实这些算法都产生在20世纪60年代之后,最开始使用在军事、航空、航天上面,现在开始往民用智能驾驶上发展,但是真正理解起来也是比较困难的。
在经典的目标数据管理中,使用了后处理的形式对其他模块输出目标进行跟踪
其他模块可能是:
- 其他传感器
- 其他深度学习模型
- 其他目标检测算法
输出的数据一般就是:位置,速度等
如果由传感器传回来的观测数据是真实目标的状态,那么我们是不需要数据关联的,前提是:没有漏检,没有误检,无观测噪声。但是在现实环境中是无法满足如此条件的,甚至,还会出现多目标的情况,为了在这众多不确定性中找到最像目标的那个,我们不得不使用数据关联。
误检(本来没目标,但是却产生了假的观测数据)
漏检(本来有目标,但是却没有检测到应有的观测数据)
那么,数据关联到底是什么呢?
数据关联(data association)是将不确定性观测与轨迹进行关联的过程。
数据关联的目的就是把来源于单个或多个传感器的量测数据Zi(i=1,2,…,N)与j个已知或已经确定的航迹进行相互配对的过程。简单来说,就是使所有的量测数据分为j个集合,并且保证每个集合中所包含的量测数据以接近于1的概率都来自同一个目标。数据关联是多传感器信息融合的关键技术,应用于航迹起始、集中式目标跟踪和分布式目标跟踪。
主要有以下几种:
a、观测与观测、或观测与点迹的关联:用于航迹起始或估计目标位置
b、观测与航迹关联:用于目标状态的更新
c、航迹与航迹关联:用于航迹融合,局部航迹形成全局航迹
1.数据关联与多目标跟踪
多目标跟踪的基本原理图如下所示。多目标跟踪主要包含以下几个基本要素:跟踪起始与终结、跟踪门的形成、数据关联、跟踪维持等。
多目标跟踪的基本原理
目标跟踪系统中数据关联是必不可少的关键步骤。原因在于传感器所获得的观测数据的不确定性和多目标跟踪环境的复杂性。实际中的传感器系统总是不可避免的存在着测量的误差再加上缺乏多目标跟踪环境的先验知识,目标的跟踪个数往往也不是先验知道的,观测数据到底是来自真实目标还是虚假目标这也不能先验知道。这就使得观测数据与真实目标之间的对应配对关系很难确定,因此数据关联是多目标系统中最关键的一步。
2. 数据关联的一般过程
例:有两个实体A_{1}和A_{2},三个测量Z_{1}、Z_{2}和Z_{3},对测量与实体进行关联
1、 建立关联门,确定关联门限:椭圆关联门
2、 门限过滤:将测量Z_{1}过滤掉
3、 确定相似性度量方法:几何向量距离
S
i
j
=
(
Z
i
−
A
j
)
2
=
(
Z
i
−
A
j
)
T
(
Z
i
−
A
j
)
S_{ij}=\sqrt{\left ( Z_{i} -A_{j}\right )^{2}}=\sqrt{\left ( Z_{i} -A_{j}\right )^{T}\left ( Z_{i}-A_{j} \right )}
Sij=(Zi−Aj)2=(Zi−Aj)T(Zi−Aj)
4、建立关联矩阵
[
S
21
S
22
S
31
S
32
]
=
[
1
6
7
2
]
\begin{bmatrix} S_{21} &S_{22} \\ S_{31} & S_{32} \end{bmatrix}=\begin{bmatrix} 1 &6 \\ 7& 2 \end{bmatrix}
[S21S31S22S32]=[1762]
5、确定关联判定准则:最近邻方法
6、形成关联对
Z
2
→
A
1
Z_{2}\rightarrow A_{1}
Z2→A1
Z
3
→
A
2
Z_{3}\rightarrow A_{2}
Z3→A2
3. 确定关联判定准则
1.最近邻
2.联合概率数据互联
3.多假设跟踪
4. 航迹分裂