object-existence-based approach
5.5 Optimal track update cycle
5.5.4 Multi-object tracking data association
⎩
1− PDPG, i = 0, PDPG pk(i)
ρk(i) , i > 0. (5.81) Equations (5.79)–(5.81) are denoted by the pseudo-function
p(χk|Yk), {βk(i)}mi=0k
= ISTDA
p(χk|Yk−1), {pk(i)}mi=1k
. (5.82) Equations (5.79), (5.80) and (5.81) are universal in the sense that they do not depend on the shape of the prior object measurement pdf p(y|χk, Yk−1). These equations are valid for p(y|χk, Yk−1) being a single Gaussian pdf, Gaussian mix-ture, as well as for some non-linear pdf represented by a particle filter or other non-linear estimator.
5.5.4 Multi-object tracking data association
A multi-object situation arises when tracks share measurements, i.e., when some measurements are selected (gated) by more than one track. If the objects (tracks) are sufficiently separated so that they do not share measurements, the multi-object tracking reverts to the single-object tracking.
For computational reasons, in each scan k tracks are separated in clusters of tracks which share selected measurements. The tracks and their selected mea-surements belong to the cluster. Multi-object data association operations are per-formed on each cluster of tracks simultaneously, and can not be parallelized.
The operations on separate clusters, however, are independent, and may be par-allelized on this level. To distinguish between tracks, we use track superscripts τ and η.
In this section we present the data association operations on one cluster and all tracks and measurements are assumed to belong to the cluster. The multi-object data association is derived in Section 5.4.5, here we present the final results.
The inputs to the multi-object data association operation at time k are:
r the a priori probability of object τ existence, p(χkτ|Yk−1); and
r the measurement likelihoods with respect to track τ, pkτ(i)= p(yk(i) |χkτ, Yk−1) for each track τ and each selected measurement yk(i).
5.5 Optimal track update cycle 179 The outputs of the data association operation at time k are, for each trackτ:
r the a posteriori probability of object τ existence p(χkτ|Yk); and
r the a posteriori data association probabilities conditioned on object existence, βkτ(i)= p(θ kτ(i)|χkτ, Yk), i = 0, . . . , mk, where θkτ(0) denotes the event that none of the selected measurements is the detection of object τ at time k, and θkτ(i > 0) denotes the event that selected measurement yk(i) is the detection of objectτ at time k.
A joint event is an allocation of all measurements to all tracks. A feasible joint event is a joint event which satisfies the following:
r each track is assigned zero or one measurement; and r each measurement is allocated to zero or one track.
All feasible joint measurement to track allocations are enumerated and their a pos-teriori probabilities evaluated. They are used to calculate the a pospos-teriori data asso-ciation probabilities and the a posteriori probability of object existence for each track individually.
Two feasible joint events are different if assignment of at least one measurement is different. Different feasible joint events are mutually exclusive. For each joint eventε define:
r T0(ε): set of tracks allocated no measurement;
r T1(ε): set of tracks allocated one measurement;
r i(τ, ε): index of measurement allocated to track τ.
The a posteriori probability of joint events is given by p(ε|Yk) = c−1k *
τ∈T0(ε)
1− PDτPGτP{χkτ|Yk−1}
× *
τ∈T1(ε)
PDτPGτP{χkτ|Yk−1}pkτ(i(τ, ε)) ρk(i(τ, ε))
,
(5.83)
where the normalization constant ckis calculated by utilizing the fact that feasible joint events are mutually exclusive and that they form an exhaustive set
ε
p ε|Yk
= 1.
Please note that product operation on an empty set equals one.
Track-based data association probabilities
Once the a posteriori probabilities of feasible joint events are known, they are used to obtain the a posteriori probability of object existence and data association probabilities for each track.
The first step is to calculate the a posteriori probabilities of allocating a measure-ment i , i ≥ 0, to track τ. Denote by (τ, i) the set of feasible joint events which allocate measurement i to trackτ. The event that no measurement in a cluster is trackτ detection is the union of all (mutually exclusive) feasible joint events which allocate no measurement to trackτ and, as the events ε are mutually exclusive,
p
In the same manner, the probability that measurement i , i > 0, in a cluster is object τ detection (object τ detection also implies object τ existence) is
p
χkτ, θkτ(i)|Yk
=
ε∈(τ,i)
p(ε|Yk).
The probability that no measurement in cluster is trackτ detection and that object τ exists is object existence event. Therefore, the a posteriori probability of object existence is
p
The data association probabilities are then given by βkτ(i)= p Equations (5.83)–(5.86) are denoted by the pseudo-function
2p(χkτ|Yk),2 As can be easily verified, for single-track clusters (T = 1), the multi-object data association reverts to the single-object data association.
5.5 Optimal track update cycle 181
5.5.5 Track trajectory update
The track trajectory update as presented here is identical to both single- and multi-object tracking. These operations are performed on each track independently, and may be parallelized. The derivations are presented in Section 5.4.6, and only the results are repeated here.
The track trajectory update operation has two stages. In the first stage, the a pos-teriori trajectory state pdf is found with the maximum precision available (under the assumptions). This stage is called here the “component update,” and is the sub-ject of this section. The component update stage increases the number of track components by a factor of 1+ mk. Track components created at this stage are termed the “tentative track components.”
To prevent the saturation of computational resources, the set of tentative track components is subjected to the component control which produces a final set of a posteriori track components at time k. The component control procedures result in sub-optimal object tracking algorithms, and are detailed separately in Section 5.6.
The component update operation at time k is independently performed for each track, and in this section we describe the component update operation on one track and (again) omit the track superscripts.
The inputs to the component update operation at time k are:
r the set of measurements ykused to update track at time k, and for each selected measurement yk(i):
– the a priori pdf of selected measurement yk(i) – measurement likeli-hoods with respect to track pk(i)= p(y k(i) |χk, Yk−1), with respect to track components pk(i, ck−1)= p(y k(i) |ck−1, χk, Yk−1) and with respect to trajectory models of individual track components pk(i, ck−1, σ)=
p(yk(i) |ck−1, σ, χk, Yk−1);
– the a posteriori data association probabilities conditioned on object existence, βk(i)= p(θ k(i)|χk, Yk), i = 0, . . . , mk, whereθk(0) denotes the event that none of the selected measurements is the object detection, and θk(i), i > 0 denotes the event that measurement yk(i) is the object detection; and
r the a priori pdf of object trajectory state at time k, p(xk|χk, Yk−1), parameter-ized by:
– the set of track components indexed by ck−1; and for each component ck−1, – the relative component probability p(ck−1);
– the a priori IMM estimator pdf parameterized by probabilities μk|k−1(ck−1, σ ), mean values ˆxk|k−1(ck−1, σ) and covariances Pk|k−1(ck−1, σ) for all object trajectory models σ.
The output of the component update operation at time k is:
r the a posteriori pdf of object trajectory state at time k − 1, p(xk|χk, Yk), which is parameterized by:
– the set of tentative track components indexed by ˜ck; and for each ˜ck, – the relative probability p(˜ck)= p(˜ξ k(˜ck)|χk, Yk);
– the a posteriori IMM estimator pdf parameterized by model probabilities μk|k(˜ck, σ ), mean values ˆxk|k(˜ck, σ) and covariances Pk|k(˜ck, σ) for all mod-elsσ.
Each pair of one a priori track component ck−1and one selected measurement yk(i) (including the “null” measurement i = 0) creates a new tentative track com-ponent ˜ξk(˜ck),
˜ξk(˜ck) = {ξk−1(ck−1), θk(i)} . (5.88) For reasons of space, ˜ck is usually used instead of ˜ξk(˜ck). Thus p(˜ck)=
p(˜ξk(˜ck)|χk, Yk).
The number of tentative track components equals
˜Ck = Ck−1(1 + mk).
The a posteriori trajectory state pdf at time k is a mixture of tentative track component a posteriori state pdfs,
p(xk|χk, Yk) =
˜Ck
˜ck=1
p(˜ck)p(xk|˜ck, χk, Yk) (5.89)
with the posterior probabilities of individual tentative components given by
p(˜ck)= p(˜ξ k(˜ck)|χk, Yk) = βk(i)p(ck−1) ·
⎧⎨
⎩
1, i= 0,
pk(i, ck−1)
pk(i) , i> 0. (5.90) Each tentative track component ˜cka posteriori object trajectory state pdf is a mix-ture of the individual pdfs of the object trajectory states conditioned on the indi-vidual object trajectory modelσ:
p(xk|˜ck, χk, Yk) =
M σ=1
μk|k(˜ck, σ )p(xk|˜ck, σ, χk, Yk),
5.5 Optimal track update cycle 183 where the a posteriori object trajectory model probabilities of the individual tenta-tive components are given by and the a posteriori trajectory state pdf of the individual object trajectory models of the individual components at time k have Gaussian pdfs
p(xk|˜ck, σ, χk, Yk) = N (xk; ˆxk|k(˜ck, σ), Pk|k(˜ck, σ)), defined by its mean and covariance
[ˆxk|k(˜ck, σ) , Pk|k(˜ck, σ)] where KFEis the Kalman filter estimate, as defined in Section 2.2.1. If the tentative track component is formed by combining an a priori track component ck−1with a null measurement i = 0, this operation will not change the object trajectory model mean and covariance. If the tentative track component is formed by combining an a priori track component ck−1with measurement yk(i), the Kalman filter estimation operation is used to calculate the object trajectory model mean and covariance.
Given that
it is straightforward to verify that
˜Ck
Track output is (usually) needed for confirmed tracks only, and most often con-sists of the estimated object trajectory state position. Particularly for multi-scan (multi-component) object trackers, this usually boils down to a choice of whether this estimate is represented by the most likely track component (akin to the max-imum a posteriori estimation (MAP) and usually used by MHT), or the mean