Multi-target Tracking of Dependent Targets
3.6 Construction and update of target trees
3.6.2 Predicted target trees
When the filter is already maintaining target trees, predicted target trees must be built to account for dependencies that may have appeared at the current time step. The term predicted target tree is proper as the tree is used as input to compute marginal association probabilities and differs from the posterior target tree that incorporates posterior component probabilities.
The method is presented for a single predicted tree because targets from distinct previous trees4 that share possible assignments are grouped together, along with their trees5, into a single cluster, and each cluster is treated separately to originate one predicted tree. For clarity of exposition, we describe the method referring to one previous (posterior) tree, but the procedure is exactly the same in case more than one previous tree become dependent and take part in the same cluster. Given a target tree GT ,k−1 = (VT ,k−1, ET ,k−1) from time step k − 1, and a set of predicted targets indexed by In,k|k−1 = Ic,k|k−1∪ Iu,k|k−1, a new target tree, GT ,k|k−1 = (VT ,k|k−1, ET ,k|k−1), will be built before applying the EHM 3. The following guidelines are used to build a predicted tree:
• A predicted target tree must keep probabilistic information from previous posterior trees.
• Information from previous trees is considered only for confirmed targets.
• New dependencies among targets of a previous tree, and between targets of the previous tree and other targets are considered through new shared assignments.
• A predicted target tree is a Chow-Liu tree [31], which minimizes the overall loss of infor-mation that would follow representing pairs of targets as independent.
• A predicted target tree is constrained to obey the EHM rule, that is, distinct branches have mutually exclusive possible assignments.
4Note that a target not pertaining to any previous tree is a single-node tree in itself.
5Two distinct target trees are merged in a single cluster if elements of both trees start sharing possible assignments.
170
We define the set of predicted targets of a previous tree as IT ,k|k−1 , In,k|k−1 ∩ VT ,k−1, the set of predicted targets not in the previous tree as IT ,k|k−1¯ , In,k|k−1\ IT ,k|k−1, the set of confirmed targets of the previous tree as IT(c),k|k−1 , Ic,k|k−1∩ VT ,k−1, and the set of possible assignments for target i shared only with targets in the previous tree as Mi,T , S
`∈VT ,k−1M`∩ Mi. We also declare a symmetric matrix of possible relations between distinct targets in the predicted tree as Rk : In,k|k−1× In,k|k−1 → {0, 1}, where Rk(i, j) = 1 means that a pair (i, j) ∈ In,k|k−1× In,k|k−1 is probabilistically related, and Rk(i, j) = 0 if (i, j) are not dependent or if i = j. Following the guidelines, the relation matrix is a logical composition of three relation matrices as Rk = RT(c),k|k−1∨ RT(a),k∨ RT − ¯T ,k, where RT(c),k|k−1accounts for probabilistic relations between confirmed targets inherited from the previous tree, RT(a),k
accounts for relations among targets of the previous tree due to new shared assignments, and RT − ¯T ,k accounts for relations between targets of the previous tree and other targets (not in the previous tree). The algorithm for updating the target tree then follows 6 steps:
1. Construction of relation matrices RT(c),k|k−1, RT(a),k, RT − ¯T ,k, to obtain Rk.
2. Calculation of joint factors, p(c(i),(j)k−1 |Y1:k−1) ≡ p(c(i),(j)k−1 |Y1:k−1), for every possibly related pair (i, j) as Rk(i, j) = 1, by marginalizating out components on previous tree(s) or initializing new appearing targets.
3. Prediction of marginal association distributions p(c(i)k−1, a(i)k |Ek(i), Y1:k−1) and pairwise joint association distributions p(c(i)k−1, a(i)k , c(j)k−1, a(j)k |E(i),(j)k , Y1:k−1)for every possibly re-lated pair (i, j) as Rk(i, j) = 1.
4. Computation of information loss that would follow representing the joint state distribution of two targets, p(x(i)k , x(j)k |Ek(i),(j), Y1:k−1), as if they are independent, for every possibly related pair (i, j) as Rk(i, j) = 1. The information gain of each pair (i, j), arranged in a matrix Dk : In,k|k−1× In,k|k−1 → R, is evaluated as the Kullback–Leibler divergence between the pairwise joint state distribution and the product of marginal single-target distributions for targets i and j.
5. Construction of the predicted target tree GT ,k|k−1 by the Chow-Liu method [31], based on the information gain matrix Dk, under the EHM constraint.
6. Selection of marginal factors, p(c(i)k−1|Y1:k−1), and recalculation of conditional factors, p(c(i)k−1|cpa(i)k−1, Y1:k−1), for the predicted tree based on the joint factors calculated in Step 2.
Step 1
The relation matrix RT(c),k|k−1describes the probabilistic relations between confirmed targets inherited from a previous tree, and is constituted as
RT(c),k|k−1(i, j) = RT(c),k|k−1(j, i) ,
1, i ∈ ch(j)or j ∈ ch(i) and i, j ∈ IT(c),k|k−1,
0, otherwise. (3.78)
This matrix can be built by sweeping a previous tree from each leaf to the root, and setting RT(c),k|k−1(pa(i), i) = 1 every time i, pa(i) ∈ IT(c),k|k−1. If more than one previous tree are
CHAPTER 3. MULTI-TARGET TRACKING OF DEPENDENT TARGETS
in the cluster under analysis, one such matrix R(`)T(c),k|k−1is obtained per previous tree G(`)T ,k−1 and the final matrix is composed as RT(c),k|k−1=W
`R(`)T(c),k|k−1.
The relation matrix RT(a),k describes relations among targets of a previous tree due to new shared assignments and is composed as
RT(a),k(i, j) = RT(a),k(j, i) ,
1, Mi∩ Mj6= ∅ and i, j ∈ IT ,k|k−1,
0, otherwise. (3.79)
Again, if more than one previous tree are in the cluster under analysis, one such matrix R(`)T(a),k
is obtained per previous tree G(`)T ,k−1 and the final matrix is composed as RT(a),k=W
`R(`)T(a),k. The relation matrix RT − ¯T ,kaccounts for relations between targets of a previous tree and other targets not in the same tree, and is constituted as
RT − ¯T ,k(i, j) = RT − ¯T ,k(j, i) ,
1, Mi∩ Mj 6= ∅and i ∈ IT ,k|k−1, j ∈ IT ,k|k−1¯ ,
0, otherwise. (3.80)
In fact, given a target i ∈ IT ,k|k−1, a composite matrix RT(a),T − ¯T ,k(i, j) , RT(a),k(i, j) ∨ RT − ¯T ,k(i, j) can be constructed at once by verifying the assignments for a target j ∈ IT ,k|k−1¯
that are shared only with targets of the previous tree: if Mi∩Mj,T 6= ∅then RT(a),T − ¯T ,k(i, j) = RT(a),T − ¯T ,k(j, i) = 1. The same reasoning regarding multiple previous trees applies for this matrix, where one such matrix R(`)T(a),T − ¯T ,kper previous tree G(`)T ,k−1 can be built and the final matrix is composed as RT(a),T − ¯T ,k =W
`R(`)T(a),T − ¯T ,k. The complete relation matrix is given by Rk = RT(c),k|k−1∨ RT(a),T − ¯T ,k.
Step 2
For every possibly related pair (i, j) ∈ In,k|k−1× In,k|k−1, as marked by Rk(i, j) = 1, joint factors p(c(i),(j)k−1 |Y1:k−1)must be calculated by marginalizing out components on previous tree(s) or initializing new appearing targets. These joint factors are required by Step 3 to compute predicted marginal association distributions, and by Step 5 to attribute probability factors to the predicted tree. For any two targets in a previous tree, i, j ∈ GT ,k−1, we can define a path of nodes between them as
P]i,j[, {` ∈ VT ,k−1|` ∈ de(i) ∩ an(j)or ` ∈ an(i) ∩ de(j)}. (3.81) Thus, the joint probability distribution on the extremal nodes of path P]i,j[ is given by
p(c(i),(j)k−1 |Y1:k−1) ∝ X
cP]i,j[k−1
Y
`∈P]i,j[
p(c(`)k−1|cpa(`)k−1 , Y1:k−1), i, j ∈ VT ,k−1. (3.82)
If at least one of the targets i or j does not pertain to the previous tree GT ,k−1, then
p(c(i),(j)k−1 |Y1:k−1) ∝ p(c(i)k−1|Y1:k−1)p(c(j)k−1|Y1:k−1), i or j /∈ VT ,k−1, (3.83) where each marginal factor p(c(i)k−1|Y1:k−1)is retrieved from the structure of a previous tree, a previously isolated node (single-node “tree”), or a newborn target (not in a tree). These
172
marginal factors are stored with the structure of previous trees, and can be identified as
p(c(i)k−1|Y1:k−1)
=
P
cVTs,k−1k−1 \c(i)k−1
Q
`∈VTs,k−1p(c(`)k−1|cpa(`)k−1 , Y1:k−1), i ∈ VTs,k−1 (any previous tree s),
1, i /∈ VTs,k−1 (none of trees).
(3.84)
If both i, j /∈ VTs,k−1(none of previous trees), then p(c(i),(j)k−1 |Y1:k−1) := (1), where (1) should be understood as the matrix form of a joint probability table. If more than one previous tree are in the cluster under analysis, the same rules apply, where (3.82) is used if two targets pertain to the same previous tree, and (3.83) is used otherwise. Each previously “isolated target”, not pertaining to any previous tree, is characterized as a single-node tree with component probability distribution p(c(i)k−1|Y1:k−1).
Step 3
For every possibly related pair (i, j), marginal association distributions p(c(i)k−1, a(i)k |Ek(i), Y1:k−1) and pairwise joint association distributions p(c(i),(j)k−1 , a(i),(j)k |Ek(i),(j), Y1:k−1)must be computed.
These association distributions are required by Step 4 to compute the estimated gain of infor-mation. The predicted marginal association distributions are computed based on the factors obtained in Step 2 as
p(c(i)k−1, a(i)k |Ek(i), Y1:k−1) ∝ αId,k¯ ∩{i}p(c(i)k−1|Y1:k−1)ψ(a(i)k , Ek(i)|c(i)k−1) p(Ek(i)|Y1:k−1)
, (3.85)
p(c(i),(j)k−1 , a(i),(j)k |Ek(i),(j), Y1:k−1) ∝ αId,k¯ ∩{i,j}
×p(c(i),(j)k−1 |Y1:k−1)ψ(a(i)k , Ek(i)|c(i)k−1)ψ(a(j)k , Ek(j)|c(j)k−1) p(Ek(i)|Y1:k−1)p(Ek(j)|Y1:k−1)
, (3.86)
for all targets i, j ∈ In,k|k−1involved in possibly related pairs (i, j) marked by Rk(i, j) = 1.
Step 4
For every possibly related pair of targets (i, j), marked by Rk(i, j) = 1, the loss of information that would follow representing the pairwise joint state distribution, p(x(i),(j)k |Ek(i),(j), Y1:k−1), as if targets are independent, must be evaluated. The information gain by representing each pair (i, j)as dependent is arranged in a matrix Dk : In,k|k−1× In,k|k−1→ R, where each element is defined as
Dk(i, j) = Dk(j, i)
,
DKL(p(x(i),(j)k |Ek(i),(j), Y1:k−1)||q(x(i),(j)k |Ek(i),(j), Y1:k−1)), Rk(i, j) = 1,
0, otherwise, (3.87)
CHAPTER 3. MULTI-TARGET TRACKING OF DEPENDENT TARGETS
where DKL(P||Q) is the Kullback–Leibler divergence of distribution P with respect to distri-bution Q, and Note that the Kullback–Leibler divergence is a measure of the amount of information lost when q(independent targets) is used to approximate p (dependent targets) in (3.87). Thus, the most informative tree maximizes Dkover the connected nodes (minimizes the information loss). Since pand q are mixtures possibly involving many terms, an approximated calculation of the KL-divergence must be used in favor of computational efficiency. We advocate the method proposed in [81] to compute KL-divergences between mixtures by means of the bound
DKL
which is very fast to compute.
Step 5
Based on the information gain matrix, Dk, the predicted target tree GT ,k|k−1 is built by the Chow-Liu algorithm [31], except that choices of connections between nodes are constrained by the EHM structure, that is, targets in distinct branches have mutually exclusive sets of possible assignments. The relation matrix Rk indicates which targets in the new tree could be connected. The following steps are taken to build the Chow-Liu tree:
1. The root is started at the root of (one of) the previous tree(s), rt = rtT ,k−1, with pa(rt) :=
∅. Let Cr,k, {s ∈ In,k|k−1|Rk(r, s) = 1}be the set of all targets that can be connected to a target r. A target i1∈ Crt,ksatisfying i1=argmax`∈Crt,kDk(rt, `) such that Mi1∩Mrt 6=
∅is chosen as the first child, i.e., ch(rt) := {i1}, pa(i1) := {rt}, ch(i1) := ∅, and the current set of nodes is updated as VT ,k|k−1= {rt, i1}.
2. Next, each node already added in the tree is verified in turn. For each node r ∈ 174
VT ,k|k−1, the potential children Cr,k \ ch(r) are verified. If a target s satisfying s = argmax`∈Cr,k\ch(r)Dk(r, `)such that Ms∩ Mr6= ∅and Ms∩ Mch(r)= ∅is found, then it is kept as a tentative child of r, i.e. ˘pa(s) = {r}( ˘padenoting “potential parent”). Once all nodes in VT ,k|k−1 were iterated and each has a tentative child, the child that would give the maximum information gain, that is, s = argmaxr∈VT ,k|k−1,`∈Cr,k\ch(r)Dk(r, `), is added as ch( ˘pa(s)) ← ch( ˘pa(s)) ∪ {s}, pa(s) := ˘pa(s), ch(s) := ∅, and the current set of nodes is updated as VT ,k|k−1← VT ,k|k−1∪ {s}.
3. When all targets in the cluster have been used in the new tree6, that is, VT ,k|k−1 = In,k|k−1, the tree is complete.
Step 6
The marginal factors p(c(i)k−1|Y1:k−1)are selected (from previous trees) for i ∈ GT ,k|k−1, and the conditional factors p(c(i)k−1|cpa(i)k−1, Y1:k−1)are recalculated for the predicted tree based on the joint factors computed in Step 2. The conditional component distributions are evaluated by
p(c(i)k−1|cpa(i)k−1, Y1:k−1) = p(c(i),pa(i)k−1 |Y1:k−1) p(cpa(i)k−1|Y1:k−1)
,s.t. i, pa(i) ∈ GT ,k|k−1. (3.92)
The selected and recomputed factors, p(c(i)k−1|Y1:k−1)and p(c(i)k−1|cpa(i)k−1, Y1:k−1), are attributed to the predicted tree.