In the previous chapters we discussed the necessary theory and operation of the various com- ponents of the developed PGM. Because of the dynamic nature of the MOT graph and the fact that new detections will be received continuously, inference in this PGM is somewhat different from how PGMs are typically used. With the developed model the graph will change constantly and the process will involve iterative graph expansion, inference and graph structure refinement steps. We therefore need an algorithm to clearly define how these steps should be performed. This algorithm is presented below.
6
Gaussian distributions with weights equal to zero.
7These messages will have a vacuous Gaussian form, which is equivalent to an unnormalisable uniform distri-
MOT PGM Inference Algorithm
ta1 : Cartesian detection threshold (for measurement gating)
ta2 : Association hypothesis threshold (for association potential approximation)
tr : Real target probability threshold (for clutter classification)
tt : Clutter track time threshold (for clutter classification)
cj : Cartesian space detection corresponding to yj (for measurement gating)
if detection set (with size m) is received at time-step t then 1. Extend the graph with Xt clusters for each Xt−1 cluster.
Add m new Xt clusters, with prior distributions. Add m new Ytclusters and 1 new A cluster 2. Send all δX,X messages to the new state clusters
3. Eliminate association hypotheses if P (Xit= cj)/max(P (Xit)) < ta1
4. Connect the clusters as per the remaining hypotheses 5. Send all δX,Y and δY,A messages
6. Approximate the A cluster distribution by setting: P (A = α) = 0, if P (A = α)/max(P (A)) < ta2
7. Pass all δA,Y and δY,X messages
8. Remove any edges over which vacuous messages were sent. Remove any X clusters which has no connected edges. 9. Add and connect the clutter classification sub-graph. 10. Perform message passing in the added sub-graph
(including messages to Ri clusters)
11. If, for any object i P (Ri = 1) < tr and it has been for t > tt,
Note that the above algorithm is implicitly iterative in the sense that the entire algorithm will be performed whenever new detections are received. When the first detections are received (at the first time-step), a number of state priors equal to the number of detections are used as the state cluster potentials. The state clusters are each connected to a single unique measurement cluster. This can be done because the exact labels of the targets are arbitrary and there is therefore no data association problem with the first set of detections. If previous detections have been received and the graph is not empty, the graph needs to be extended with new state clusters for each previous state cluster. The messages that will be sent between the new and previous state clusters will correspond to the state prediction step (step 2).
To allow for the possibility that some or all of the m detections are from new targets, m additional state clusters (with appropriate prior potentials) are added to the graph. The m measurement (Y ) clusters and single association (A) cluster is also added to the graph (step 1). Any unlikely hypotheses are then ruled out (step 3) using the method described in Section 7.2. The graph is then connected according to the remaining plausible hypotheses (step 4). Once the messages from the previous state clusters to the new state clusters have been sent (step 2), the messages in the new cluster-slice can be passed (step 5). When all messages have been received by the association cluster, the cluster belief can be approximated by setting low probabilities to zero (step 6). This will result in vacuous messages being sent to state clusters that are unlikely to be associated with the corresponding measurements. These messages essentially mean that the measurements are not dependent on the specific object (or its state) and we can therefore remove the edge over which the message was sent (step 8). After this step, if a state cluster has no edges connected to it, it can be removed from the graph. This is the mechanism that allows the new target state clusters added in step 1 to be removed again if the detections do not indicate the existence of previously untracked targets.
The clutter classification inference process for the new cluster slice is done in steps 9 and 10. In step 11 the probabilities of each track being real are evaluated. If this probability is lower than the specified threshold tr for longer than a specified time tt, the track can be terminated. We
found that completely removing clutter tracks sometimes resulted in real tracks being removed. This could happen when an object is lost (due to occlusions or unlikely target dynamics) and the target does not generate any further detections when it is expected. The track that once corresponded to a real target in such a scenario will be classified, after a certain period of time, as a clutter track. It is therefore advisable to only remove the part of a specific track in which its probability of being a clutter track is high. Removing a part of a track corresponds to removing all clusters (Xi, ri, gi and ei clusters) relating to object i in each applicable cluster-slice. After
such a removal, the real track probabilities are also recalculated.
The threshold parameters (t’s), which are required to be specified by this model, can be used as a means of adjusting the trade-off between computational requirements and tracking accuracy. Setting the parameters to [ta1, ta2, tr, tt] = [0, 0, 0, tT] (where tT is the total tracking
time) will result in the most accurate tracking performance and also the highest computational requirements. Allowing the [ta1, ta2, tr] thresholds to be closer to one and the tt threshold to
computational requirements. Because the measurement gating step is somewhat ad-hoc, it is suggested that the ta1 threshold is set to a relatively small value. Typical values that have been
found to work well (and have been used as the settings for the model that was evaluated in Section 10.3) are as follows: [ta1, ta2, tr, tt] = [10−10, 0.2, 0.5, 8tS] (where tS is the radar scan
period). These values can, however, be adjusted to either ensure more accurate tracking or to reduce computational requirements in order to meet the requirements of a specific application. When more accurate estimates of past states are required, state messages can be passed backwards through the graph. This step will typically be performed after the filtering process, but can be performed at any time, or multiple times as the graph is extended. The smoothed estimates can then be retrieved from the updated state cluster beliefs. As a final, post processing step (after tracking is finished), any tracks that still have a low probability of being real can be removed.
Note that each message in the graph is not sent more than once. Although message passing in this graph should in theory be iterative (since the graph can contain loops), it was found that passing each message only once yields very good results8 and that additional passes very rarely have an effect on the tracking accuracy. Sending every message twice would of course also double the required computation.
7.4
Conclusion
In this chapter we showed how the model selection problem can be interpreted exactly as message passing in a single graph with discrete association variables to represent the various hypotheses. We also discussed how the number of hypotheses can be reduced trough an initial ad-hoc step and with a more principled association belief approximation step. Compared to the classical model selection implementation, the incorporation of the alternative model selection and the hypothesis reduction methods significantly increase the efficiency of the developed PGM. In the following chapter we will investigate if the performance of the model can be increased through more accurate approximations of the Gaussian mixtures that arise during message passing.
Chapter 8
Gaussian Mixture Utilisation in the
LBU Algorithm
In Section 6.2 we discussed how Gaussian mixtures arise during message passing in the devel- oped PGM and how they can be approximated as single Gaussians. We also gave theoretical justifications for why this approximation should be accurate in the majority of cases that will arise in multiple object tracking. It is, however, suspected that there could be scenarios in which this approximation can adversely affect tracking accuracy. In this chapter, we will investigate the possibility of using Gaussian mixtures with less extreme approximations.
8.1
Gaussian Mixture Operations
Most Gaussian mixture (GM) operations that are required for performing inference in hybrid Bayesian networks have closed-form solutions. Marginalisation and conditioning are carried out by performing the relevant operation on the individual Gaussian components. These opera- tions therefore result in GMs and meet the closed-form requirement for parametric inference. Similarly, multiplication can be done by performing multiple Gaussian multiplications and this results in another GM. Because of the exponential increase in the number of components, these products often need to be approximated by a GM with fewer components in practice. Unlike the approximation in Section 6.1, this approximation does not have to be a single Gaussian.
Various approaches can be taken in order to reduce the number of components in a GM. Typically, after GM multiplication, especially in an MOT application, most of the components have a very low weight1. These components do not contribute significantly to the shape of the
distribution and can be discarded in order to obtain an approximation of the true distribution.
1Relative to the largest weights.
A method that has been found to work well in practice is to keep a certain percentage (typically around 90%) of the GM’s mass by discarding the smallest components. The types of methods where components are discarded are known as pruning methods. Other types of methods focus on the merging of similar components. This can be done through moment matching, as discussed in Section 6.1. For merging operations, a method for determining the similarity between two Gaussian components is required. Typically, the Kullback-Leibler (KL) divergence [39, p. 55] is used for this purpose [40, p. 4]. Combinations of merging and pruning methods can of course also be used and thus there are many conceivable and established algorithms for GM reduction. Some of these methods are discussed in [40, p. 4].
In contrast with the multiplication, marginalisation and conditioning operations, the division operation with GMs, does not, in general, result in a function with a GM form. In the following section we will discuss a possible solution to this problem.