Next Article in Journal
Evaluation of Aboveground Nitrogen Content of Winter Wheat Using Digital Imagery of Unmanned Aerial Vehicles
Next Article in Special Issue
Optimal Target Assignment with Seamless Handovers for Networked Radars
Previous Article in Journal
Terrain Feature Estimation Method for a Lower Limb Exoskeleton Using Kinematic Analysis and Center of Pressure
Previous Article in Special Issue
DOA Tracking Based on Unscented Transform Multi-Bernoulli Filter in Impulse Noise Environment
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

GLMB Tracker with Partial Smoothing

by
Tran Thien Dat Nguyen
1,* and
Du Yong Kim
2
1
School of Electrical Engineering, Computing and Mathematical Sciences, Curtin University, Bentley 6102, Australia
2
School of Engineering, RMIT University, Melbourne 3000, Australia
*
Author to whom correspondence should be addressed.
Sensors 2019, 19(20), 4419; https://doi.org/10.3390/s19204419
Submission received: 9 August 2019 / Revised: 9 October 2019 / Accepted: 10 October 2019 / Published: 12 October 2019

Abstract

:
In this paper, we introduce a tracking algorithm based on labeled Random Finite Sets (RFS) and Rauch–Tung–Striebel (RTS) smoother via a Generalized Labeled Multi-Bernoulli (GLMB) multi-scan estimator to track multiple objects in a wide range of tracking scenarios. In the forward filtering stage, we use the GLMB filter to generate a set of labels and the association history between labels and the measurements. In the trajectory-estimating stage, we apply a track management strategy to eliminate tracks with short lifespan compared to a threshold value. Subsequently, we apply the information of trajectories captured from the forward GLMB filtering stage to carry out standard forward filtering and RTS backward smoothing on each estimated trajectory. For the experiment, we implement the tracker with standard GLMB filter, the hybrid track-before-detect (TBD) GLMB filter, and the GLMB filter with objects spawning. The results show improvements in tracking performance for all implemented trackers given negligible extra computational effort compared to standard GLMB filters.

1. Introduction

While single-object tracking algorithms have been studied extensively for more than half a century, multi-object tracking is currently a trending topic in signal processing society due to its extensive applications. The challenges of the multi-object tracking problem arise in the context of miss-detection, false alarms, object thinning, and appearing processes. To tackle these problems, several frameworks have been put forward in the literature such as the Joint Probabilistic Data Association (JPDA) [1], multiple hypotheses tracking [2], and recently, Random Finite Sets (RFS) [2]. In particular, RFS forms the mathematical basis of many modern multi-object filters such as Probability Hypothesis Density (PHD) filter [3,4,5,6,7], cardinalized PHD (CPHD) filter [8,9,10], multi-Bernoulli filter [11,12], the Generalized Labeled Multi-Bernoulli (GLMB) filter [13,14,15,16,17,18,19], and its approximation the Labeled Multi-Bernoulli (LMB) filter [20,21]. In many applications, tracking algorithms rely on the standard point measurements to update the object states; in contrast, TBD [22,23,24,25] is an alternative approach that bypasses the detection module to directly exploit the observed spatial data. This technique is introduced under the RFS framework in Reference [26] with the development of the so-called separable likelihood model and, recently, in a hybrid (combination of standard observation and separable observation models) approach in Reference [27]. In terms of system modelling, in many multi-object tracking scenarios, it is sufficient to consider object thinning and appearing processes via survivals, deaths, and instantaneous birth models. However, in many practical applications, new objects are also generated from a set or a subset of existing objects. In the context of RFS-based filtering techniques, such spawning models have been proposed for CPHD filter in References [28,29] and for GLMB filter in Reference [30]. Because these spawning models correctly reflect the physical state of the systems with spawning objects, the accuracy of the estimate is improved.
The early works on practical smoothing algorithms for single-object tracking were introduced by Bryson and Frazier [31]; by Rauch, Tung, and Striebel [32]; and subsequently by Fraser and Potter [33]. Later on, many alternative smoothing algorithms for a nonlinear dynamic model were proposed in References [34,35,36,37,38,39]. Recently, the closed-form solution for the Gaussian Mixture (GM) forward-backward smoother was derived in Reference [3]. Furthermore, the smoother for the multi-sensor tracking problem is addressed in Reference [40], while the smoothing solution for maneuvering-object tracking is presented in Reference [41]. In Reference [42], a method for joint tracking smoothing of object trajectory based on function fitting is also proposed. In a multi-object tracking context, several smoothing techniques have been put forward in the literature despite the challenge of the large smoothing state space. In particular, smoothing for PHD filter is introduced in References [43,44,45], while smoothing for CPHD filter and Multi-Bernoulli filter are given respectively in References [46,47]. Multiple objects can also be tracked with a fixed-lag smoother via Interacting Multiple Model (IMM) in Reference [48]. Closed-form solution for forward-backward smoothing based on GLMB RFS is introduced in Reference [49], and recently, multi-scan smoothing technique was proposed in Reference [50] with an efficient implementation based on Gibbs sampling, which can easily handle 100 scans. This is an unprecedented advance over traditional multi-scan solutions, which can only handle about 10 scans.
The labeled RFS approach has several theoretical and practical advantages over unlabeled approaches. The first is that labeled RFS filters can provide trajectory estimates naturally without heuristics, whereas this is not possible with unlabeled RFS filters; see Reference [51]. The second is that labeled RFS can provide ancestry information in a principled manner, whereas unlabeled RFS does not have the mechanism to do this (even with smoothing) [30]. The third is that labeled RFS admits analytical solutions such as the GLMB densities that are still valid RFS densities after any truncation, whereas unlabeled RFS cannot; see [51]. The fourth is that the truncation error (or error bound) for labeled RFS, such as GLMB, is available analytically, whereas this is not available for unlabeled RFS [13]. Consequently, truncation-based unlabeled RFS algorithms are heuristics [51]. Numerically, labeled RFS filters such as the GLMB have been demonstrated to be scalable in the number of objects [52], number of scans [50], and number of sensors [53]. Hence, the GLMB is a versatile class of models for multi-sensor multi-object problems.
In this paper, we introduce a tracker based on the GLMB filters and a modification of the multi-scan estimator proposed in Reference [50]. After the forward GLMB filtering stage, a pre-smooth stage is implemented to eliminate short-term tracks, which are usually initiated by false births or spawns. The threshold to prune these tracks varies depending on the tracking scenario. Subsequently, a multi-scan estimator which consists of a standard single-object filter and an Rauch–Tung–Striebel (RTS) smoother is applied on each estimated trajectory to produce smoothed estimates. As the proposed multi-scan estimator operates only on the estimated trajectories, the complexity is much lower than the full smoothing solution proposed in Reference [50]. Especially, this proposed tracker can completely eliminate track fragmentation as the multi-scan estimator estimates the entire trajectories but not single-scan multi-object states as in standard GLMB filters [13,15,16]. We demonstrate the application of the proposed tracker on both a standard measurement model and a TBD measurement model as well as tracking scenario with object spawning.
The structure of this paper is as follows. In Section 2, we provide background information on labeled RFSs, the multi-object transition kernel, the observation models, and the single-object RTS smoother for linear and nonlinear dynamic models. In Section 3, we propose the tracker based on the GLMB filters and the multi-scan estimator. In Section 4, we first show the experimental results for tracking with the standard observation model in linear and nonlinear tracking scenarios. We then show the tracking results of the proposed algorithm with a hybrid observation model. Finally, we demonstrate the performance of the algorithm on tracking biological cells in an image sequence where spawning process occurs.

2. Background

2.1. The Labeled RFS

Throughout this article, we adhere to the following notations. The set exponential is denoted as [ h ( · ) ] X = x X h ( x ) while the inner product notation is denoted as f , g = f ( x ) g ( x ) d x . The generalization of the Kronecker delta is denoted as follows:
δ Y ( X ) = 1 X = Y 0 X Y
The set inclusion function is written as follows:
1 Y ( X ) = 1 X Y 0 o t h e r w i s e
X denotes the labeled set of objects, while x = ( x , l ) denotes a single labeled object, specifically, x X and l L , where X and L are respectively the kinematic state space and the discrete labels space at the current time step. L is a label extraction function, i.e.,  L ( x ) = l and F ( X ) denote sets of finite subsets of X . The “+” sign is used to indicate the next time step when applicable.
The Finite-Set Statistics (FISST) integration is defined as follows [54]:
f ( X ) δ X = i = 0 1 i ! X i f ( { x 1 , , x i } ) d ( x 1 , , x i )
In multi-object tracking problem, the cardinality of object sets varies when objects enter or leave the surveillance region. As RFS is a random set of points in the sense that the number of points in the set is random and the points themselves are also random and unordered [54], a set of random objects can be naturally characterized as a RFS. Being introduced systematically for the first time in Reference [13], the labeled RFS incorporates the identities of elements into the unlabeled counterpart. Precisely, with the state space X and marks space L , the labeled RFS is a marked simple point process whereas each realization has a distinct label [13,15]. The distinct label property is satisfied when X has the same cardinality as its labels L ( X ) . Given this, the distinct label indicator can be written as follows [16]:
Δ ( X ) = δ | X | ( | L ( X ) | )
The introduction of labeled RFS to the multi-object tracking problem allows direct estimation of trajectories which cannot be done previously with conventional RFS without a separate labeling scheme.

2.2. The Multi-Object Transition Kernel

In standard tracking scenario, an existing object can either survive or die in the next time step. The surviving objects are modeled as an LMB RFS with a survival probability of p S ( x , l ) , a disappearance probability of q S ( x , l ) = 1 p S ( x , l ) , and a spatial distribution of f S + ( x + | x , l ) . The model for such surviving objects is given as follows [13,15,16]:
f S + ( X S + | X ) = Δ ( X ) Δ ( X S + ) 1 L ( X ) ( L ( X S + ) ) [ Φ S + ( X S + | · ) ] X
where
Φ S + ( X S + | x , l ) = ( x + , l + ) X S + δ l ( l + ) p S ( x , l ) f S + ( x + | x , l ) + [ 1 1 L ( X S + ) ( l ) ] q S ( x , l )
In addition, the new birth objects can instantaneously appear at each time steps and they are modeled with LMB RFS as follows [13,15,16]:
f B + ( X B + ) = Δ ( X B + ) w B ( L ( X B + ) ) [ p B + ] X B +
w B ( L ( X B + ) ) = 1 B + ( L ( X B + ) ) [ 1 r B + ] B + L ( X B + ) [ r B + ] L ( X B + )
Furthermore, in certain scenarios, new objects can also be generated from existing objects, which leads to the need of a spawning model in order to correctly predict the state of the system at the next time step. Recently, a spawning model for GLMB filter has been proposed in Reference [30]; we introduce this model again here as follows for the sake of completeness.
For spawned objects, the naming convention is given as follows: if at time step k the label of an object is l, then the spawned labels from l at the next time step is l s p a w n = ( l , k + 1 , i ) , where i is the index to distinguish between different spawned objects from the same parent. Following this convention, the set of all spawned labels in the next time step is S + = L × { k + 1 } × N , where N is the set of positive natural numbers [30].
For each spawned object with the label l s p a w n S + ( L ( x ) ) , it will either exist with the probability p T ( x ; l s p a w n ) and a spatial distribution f T + ( x + | x ; l s p a w n ) or not with the probability q T ( x ; l s p a w n ) = 1 p T ( x ; l s p a w n ) .
The density of the set P of new spawned objects from x is formulated as follows [30]:
f T + ( P | x , l s p a w n ) = Δ ( P ) 1 S + ( L ( x ) ) ( L ( P ) ) [ Φ T + ( P | x ; · ) ] S + ( L ( x ) )
where
Φ T + ( P | x ; l s p a w n ) = ( x + , l + ) δ l s p a w n ( l + ) p T ( x , l s p a w n ) f T + ( x + | x , l s p a w n ) + [ 1 1 L ( P ) ( l s p a w n ) ] q T ( x , l s p a w n )
Let Q be a labeled set of objects spawned from X with L ( Q ) S + ( L ( X ) ) . As all labels sets are disjoint, the FISST convolution theorem [54] can be applied.
f T + ( Q | X ) = Δ ( Q ) 1 S + ( L ( X ) ) ( L ( Q ) ) [ Φ T + ( Q | · ) ] X
where
Φ T + ( Q | x ) = [ Φ T + ( Q ( X × S + ( L ( x ) ) | x ; · ) ] S + ( L ( x ) )
As new birth objects (given in Equation (3)) are independent of the previous time step objects, the overall transition model is given as follows:
f ( X + | X ) = f S + ( X S + | X ) f T + ( Q | X ) f B + ( X B + )
As the spawned objects depend upon the objects from previous time steps, the prediction step of the filtering stage needs to be done in a joint manner to capture the objects’ dependency. As a result, approximation is needed to convert the joint object distribution to a standard GLMB density for each time step in order to keep the algorithm tractable.
In the scenario where the spawning process is not present, the multi-object transition kernel is reduced to the following:
f ( X + | X ) = f S + ( X S + | X ) f B + ( X B + )

2.3. The Multi-Object Observation Models

In the RFS multi-object tracking framework, given a set of measurements Z = { z 1 : | Z | } , we have a standard observation model of the following form: [54]
g ( Z | X ) θ Θ ( L ( X ) ) ( x , l ) X ψ Z ( θ ( l ) ) ( x , l )
where
ψ Z ( θ ( l ) ) ( x , l ) = δ 0 ( θ ( l ) ) q D ( x , l ) + ( 1 δ 0 ( θ ( l ) ) ) p D ( x , l ) g ( z θ ( l ) | x , l ) κ ( z θ ( l ) )
κ ( · ) is the clutter intensity, p D ( · ) and q D ( · ) are respectively the detection and miss-detection probabilities, g ( z | x , l ) is the likelihood that ( x , l ) generates measurement z, θ : L { 0 : | Z | } is a positive 1-1 map, and  Θ is the entire set of such mappings.
For image observation, with the assumption that object template T ( · ) is not overlapped, i.e.,  T ( x 1 ) T ( x 2 ) given x 1 x 2 , the separable likelihood is given by the following [26]:
g ( y | X ) = f B ( y ) x X g y ( x )
where y denotes the observed image, f B denotes the likelihood of the entire set of X , and  g y ( x ) denotes the likelihood of a single object in the observed image. The designs of f B and g y vary according to the applications, characteristics of observed image, and object appearances.
First introduced in Reference [27], the concept of a hybrid TBD observation model takes advantage of both standard and separable likelihood models. Intuitively, while detected objects can be updated by the associated point measurements, the miss-detected objects can be updated directly from the image observation. This intuition can be described mathematically by defining the following:
σ T ( T ( y ) | x , l ) g T ( T ( y ) | x , l ) g T ( T ( y ) | )
The hybrid likelihood can then be written as follows [27]:
g ( y | X ) θ Θ ( L ( X ) ) ( x , l ) X φ y ( θ ( l ) ) ( x , l )
where
φ y ( θ ( l ) ) ( x , l ) = ψ ( θ ( l ) ) ( x , l | Z ) [ σ T ( T ( y ) | x , l ) ] δ 0 θ ( l )

2.4. The Single Object RTS Smoother

Given a set single object observation { z 1 : N } , where N K with K is the total number of tracking time steps, the smoothed density of an object state at time k N , p ( x k | z 1 : N ) , is obtained as follows [36].
Initially, let the joint distribution of x k and x k + 1 be rewritten as follows:
p ( x k , x k + 1 | z 1 : k ) = p ( x k + 1 | x k ) p ( x k | z 1 : k )
Then, the distribution of x k given x k + 1 and z 1 : k is given as follows:
p ( x k | x k + 1 , z 1 : k ) = p ( x k , x k + 1 | z 1 : k ) p ( x k + 1 | z 1 : k )
where p ( x k + 1 | z 1 : k ) = p ( x k + 1 | x k ) p ( x k | z 1 : k ) d x k
From the Markov state-space model, we have the following property: p ( x k | x k + 1 , z 1 : N ) = p ( x k | x k + 1 , z 1 : k ) . Hence, we have the following:
p ( x k | x k + 1 , z 1 : N ) = p ( x k , x k + 1 | z 1 : k ) p ( x k + 1 | z 1 : k )
Then, the joint distribution of x k and x k + 1 given the measurements set z 1 : N is given as follows:
p ( x k , x k + 1 | z 1 : N ) = p ( x k | x k + 1 , z 1 : N ) p ( x k + 1 | z 1 : N )
Finally, the smoothed density of state x k can then be obtained via the marginalization step as follows:
p ( x k | z 1 : N ) = p ( x k | x k + 1 , z 1 : N ) p ( x k + 1 | z 1 : N ) d x k + 1

3. The Proposed Tracker

3.1. The Filtering Stage

For this tracker, we assume Gaussian distribution for the dynamic state of each object. At this first stage, the tracker carries out a standard multi-object filtering process to obtain the forward estimated labels and the measurements to label association history. In this subsection, we provide the forward filtering steps for both the GLMB filter (with standard measurements and hybrid measurements observations) and GLMB filter with object spawning.

3.1.1. GLMB Filter without Objects Spawning

The procedure to estimate the state of a set of objects with the standard GLMB filter without including the spawning model in the transition kernel is given as follows.
Given a GLMB prior [16]
π ( X ) = Δ ( X ) ( I , ξ ) F ( L ) × Ξ ω ( I , ξ ) δ I ( L ( X ) ) [ p ( ξ ) ] X
and the standard observation model as in Equation (8), the filtering density in the next time step is given by the following [16]:
π Z + ( X ) Δ ( X ) I , ξ , I + , θ + ω ( I , ξ ) ω Z + ( I , ξ , I + , θ + ) δ I + ( L ( X ) ) [ p Z + ( ξ , θ + ) ] X
where I F ( L ) , ξ Ξ , I + F ( L + ) , θ + Θ + where ξ is the tracks to measurement association history and Ξ is the entire space of ξ .
ω Z + ( I , ξ , I + , θ + ) = 1 Θ + ( I + ) ( θ + ) [ 1 P ¯ S ( ξ ) ] I I + [ P ¯ S ( ξ ) ] I I + [ 1 r B + ] B + I + [ r B + ] B + I + [ ψ ¯ Z + ( ξ , θ + ) ] I +
P ¯ S ( ξ ) ( l ) = p ( ξ ) ( · , l ) , p S ( · , l )
ψ ¯ Z + ( ξ , θ + ) ( l + ) = p ¯ + ( ξ ) ( · , l + ) , ψ Z + ( θ + ( l + ) ) ( · , l + )
p Z + ( ξ , θ + ) ( x + , l + ) = p ¯ + ( ξ ) ( x + , l + ) ψ Z + ( θ + ( l + ) ) ( x + , l + ) ψ ¯ Z + ( ξ , θ + ) ( l + )
p ¯ + ( ξ ) ( x + , l + ) = 1 L ( { l + } ) p S ( · , l + ) f S + ( x + | · , l + ) , p ( ξ ) ( · , l + ) P ¯ S ( ξ ) ( l + ) + 1 B + ( { l + } ) p B + ( x + , l + )
In tracking scenarios where raw spatial detection are also available, the hybrid model in Equation (11) can be used to replace the standard observation model with the probability of miss-detection being scaled by the spatial observation likelihood, i.e., given the GLMB prior as in Equation (17). The filtering density is then given as follows [27]:
π y + ( X ) Δ ( X ) I , ξ , I + , θ + ω ( I , ξ ) ω y + ( I , ξ , I + , θ + ) δ I + ( L ( X ) ) [ p y + ( ξ , θ + ) ] X
where
ω y + ( I , ξ , I + , θ + ) = 1 Θ + ( I + ) ( θ + ) [ 1 P ¯ S ( ξ ) ] I I + [ P ¯ S ( ξ ) ] I I + [ 1 r B + ] B + I + [ r B + ] B + I + [ φ ¯ y + ( ξ , θ + ) ] I +
φ ¯ y + ( ξ , θ + ) ( l + ) = p ¯ + ( ξ ) ( · , l + ) , φ y + ( θ + ( l + ) ) ( · , l + )
p y + ( ξ , θ + ) ( x + , l + ) = p ¯ + ( ξ ) ( x + , l + ) φ y + ( θ + ( l + ) ) ( x + , l + ) φ ¯ y + ( ξ , θ + ) ( l + )

3.1.2. GLMB Filter with Objects Spawning

For the prior density which is a GLMB density as in Equation (17) and the transition kernel defined in Equation (6), by applying the joint predict–update approach, a proposal density can be written as follows [30]:
π ˜ + ( X + | Z + ) Δ ( X + ) I , ξ , I + , θ + ω ( I , ξ ) ω ˜ Z + ( I , ξ , I + , θ + ) δ I + ( L ( X + ) ) [ p ˜ Z + ( ξ , θ + ) ] X +
ω ˜ Z + ( I , ξ , I + , θ + ) = [ r B + ] B + I + [ 1 r B + ] B + I + [ p ¯ S ] I I + [ 1 p ¯ S ] I I + [ p ¯ T ] S + I + [ 1 p ¯ T ] S + I + ,
p ˜ Z + ( ξ , θ + ) ( x + , l + ) = p ˜ + ( ξ ) ( x + , l + ) ψ Z + ( θ + ( l + ) ) ( x + , l + ) ψ ˜ Z + ( ξ , θ + ) ( l + ) ,
p ˜ + ( ξ ) ( x + , l + ) = 1 B + ( { l + } ) p B + ( x + , l + ) + 1 L ( { l + } ) p ˜ S ( ξ ) ( x + , l + ) + 1 S ( { l + } ) p ˜ T ( ξ ) ( x + , l + ) ,
p ˜ S ( ξ ) = p S ( · , l + ) f S + ( x + | · , l ) , p ( ξ ) ( · , l + ) p ¯ S ( ξ ) ( l + ) ,
p ˜ T ( ξ ) = p T ( l + ) f T + ( x + | · , l ) , p ( ξ ) ( · , l ) p ¯ T ( ξ ) ( l + )
p ¯ S ( ξ ) = p ( ξ ) ( · , l ) , p S ( l + ) ,
p ¯ T ( ξ ) = p ( ξ ) ( · , l ) , p T ( l + ) ,
ψ ˜ Z + ( ξ , θ + ) ( l + ) = p ˜ + ( ξ ) ( · , l + ) , ψ Z + ( θ + ( l + ) ) ( · , l + ) .
From this proposal density, Gibbs’ sampler is applied to select high weight hypotheses. These hypotheses are subsequently used to form a standard GLMB density [30]:
π ^ ( X + | Z + ) = Δ ( X + ) I , ξ , I + , θ + δ I + ( L ( X + ) ) ω ^ + ( I , ξ , I + , θ + ) ( Z + ) [ p B + ψ + ( θ + ) ( · | Z + ) ] X B + [ p ^ + ( I , ξ , I + , θ + ) ( · | Z + ) ] X S + X T + [ p ¯ + ( I , ξ , I + , θ + ) ( · | Z + ) ] I +
ω ^ + ( I , ξ , I + , θ + ) ( Z + ) = ω + ( I , ξ ) ( I + ) [ p ¯ + ( I , ξ , I + , θ + ) ( · | Z + ) ] I + I , ξ , I + , θ + ω + ( I , ξ ) ( I + ) [ p ¯ + ( I , ξ , I + , θ + ) ( · | Z + ) ] I +
p ^ ( I , ξ , I + , θ + ) ( x + , l + | Z + ) 1 I + ( { l + } ) p + ( I , ξ , θ + ) ( { ( x + , l + ) , ( x 1 , + , l 1 , + ) , , ( x n , + , l n , + ) } | Z + ) d ( x 1 , + , , x n , + )
p ¯ ( I , ξ , I + , θ + ) ( x + , l + | Z + ) 1 B + ( { l + } ) p B + ( · , l + ) , ψ + ( θ + ) ( · | Z + ) + ( 1 1 B + ( { l + } ) ) p ^ Z + ( I , ξ , I + , θ + ) ( x + , l + ) , 1

3.2. GLMB Multi-Scan Estimator

The concept of a multi-scan estimator is introduced in Reference [50]. Given a multi-scan GLMB from time step j to k, the cardinality distribution of the number of trajectories is given as follows:
Pr ( | L ( X j : k ) | = n ) = ξ , I j : k δ n [ | I j : k | ] w j : k ( ξ ) ( I j : k )
One possible form of a multi-scan estimator is to determine the component with the highest weight w j : k ( ξ ) ( I j : k ) given that it has the most probable cardinality by maximizing Equation (22). The expected trajectory estimate can then be computed from p j : k ( ξ ) ( · , l ) for each l I j : k .
In this work, we proposed modifications to the multi-scan estimator in Reference [50], which can eliminate track fragmentation and improve localization performance. The set of all estimated trajectories is updated at each time step via the most significant hypothesis with the most probable cardinality in the GLMB density. At the time step when state estimation is required, the information of estimated trajectories is passed into the estimator. At this stage, trajectories pruning is applied to eliminate short-term tracks. Subsequently, standard filtering and RTS smoothing techniques are applied on each trajectory to produce smoothed state estimates. The significance of this estimator is that it allows the application of smoothing techniques to improve the tracking accuracy while completely eliminates track fragmentation as the entire trajectory is estimated as a whole. In addition, as the complexity of the estimator depends only on the number of estimated tracks, the additional computational effort of the estimator is negligible compared to GLMB filtering. The detailed implementation of the estimator is given as in following subsections.

3.2.1. Estimating the Trajectories

Given the GLMB density at the end of each filtering cycle, the GLMB filter estimate is the result of the maximum posteriori estimate of the cardinality with the means of the object states being conditioned on the estimated cardinality [15]. Given that the possible highest number of tracked objects is N m a x , the cardinality distribution of the the objects set over a finite set of hypotheses { ( I , ξ ) h } h = 1 : H is written as follows:
ρ ( n ) | n = 0 : N m a x = H { ( I , ξ ) h } h = 1 : H ω ( H ) δ n ( | I ( H ) | )
The estimated cardinality is given as follows:
N ^ = a r g m a x ( ρ )
The estimated hypothesis is as follows:
H ^ = a r g m a x ( H ) ω ( H ) δ N ^ ( | I ( H ) | )
The information from the filtering stage needs to be captured to facilitate the multi-scan estimator. At this stage, we represent a set of estimated trajectories at time k with a set of tuples defined as T ^ k { ( l ^ 1 k , b ^ l ^ 1 k , ξ ^ l ^ 1 k ) , , ( l ^ N ^ k , b ^ l ^ N ^ k , ξ ^ l ^ N ^ k ) } , where l ^ n ^ k is the label of estimated trajectory n at time k, b ^ l ^ n ^ k is its corresponding initial birth state (including the time of birth and initial kinematic state), and  ξ ^ l ^ n ^ k is the corresponding association history. In addition, we also have set of tuples for all estimated trajectories T ^ from time step 1 to current time step k. This set of tuples is updated at the end of each filtering time step via updating the association history and initial birth state of existing trajectories and adding new tuples to the set if the trajectories are new. The procedure to update the tuples set is given in Algorithm 1.
Algorithm 1 Updating trajectories tuples
  • Input: T ^ k = { ( l ^ 1 k , b ^ l ^ 1 k , ξ ^ l ^ 1 k ) , , ( l ^ N ^ k , b ^ l ^ N ^ k , ξ ^ l ^ N ^ k ) } , T ^ = { ( l ^ 1 , b ^ l ^ 1 , ξ ^ l ^ 1 ) , , ( l ^ N , b ^ l ^ N , ξ ^ l ^ N ) }
  • Output: The updated trajectories tuples set T ^
  •  
  • for n = 1 to N ^
  •   if l ^ n k { l ^ 1 , , l ^ N }
  •     Replace the tuple of label l ^ n k in T ^ with ( l ^ n k , b ^ l ^ n k , ξ ^ l ^ n k )
  •   else
  •      T ^ = T ^ ( l ^ n k , b ^ l ^ n k , ξ ^ l ^ n k )
  •   end
  • end

3.2.2. Trajectories Pruning

For a set of estimated trajectories tuples from filtering stage T ^ = { ( l ^ 1 , b ^ l ^ 1 , ξ ^ l ^ 1 ) , , ( l ^ N , b ^ l ^ N , ξ ^ l ^ N ) } the lifetime of a trajectory with label l ^ n is the length of the corresponding association history, which is given as follows:
τ ( l n ) = f l e n g t h ( ξ ^ l ^ n )
where f l e n g t h ( · ) is the function that determines the length of the vector in its argument. If the length of a track is shorter than the threshold value τ t , i.e., τ ( l n ) < τ t , this trajectory will be removed from the set of estimated trajectories.

3.2.3. Numerical Implementation of Single-Object Smoother

For completeness, we outline here the detailed numerical implementation of the single-object RTS smoother for both linear and nonlinear dynamic models with Gaussian assumption on the distribution of the states.
Given a linear dynamic model of the form
x + = F x + q , z = H x + r
where x is the system state, F is the linear transformation matrix, H is the linear observation matrix, q and r are respectively the process and observation Gaussian noise, and z is the current time step measurement, the backward smoothing step over an interval N K (where K is the total number of tracking time steps) can be implemented with the standard RTS Smoother [32]. The details of the RTS smoother is given in Algorithm 2, where the superscript s denotes the smoothed results.
Algorithm 2 Single-object Rauch–Tung–Striebel (RTS) smoother
  • Input: The filtered mean and covariance { x k , P k } k = 1 : N , F, Q
  • Output: The smoothed mean and covariance { x k s , P k s } k = 1 : N
  •  
  • Initialization: x N s = x N and P N s = P N
  • for k = N 1 down to 1
  •    x ¯ k + 1 = F x k
  •    P ¯ k + 1 = F P k F T + Q
  •    D = P k + 1 F ( P ¯ k + 1 ) 1
  •    x k s = x k + D ( x k + 1 s x ¯ k + 1 )
  •    P k s = P k + D ( P k + 1 s P ¯ k + 1 ) D T
  • end
For a nonlinear dynamic model, the RTS smoother can also be applied via the unscented transformation [39]. Given the dynamic model
x + = f ( x , q ) , y = h ( x , r )
where f is the nonlinear state transition function and h is the nonlinear observation function, other variables are interpreted the same as in the linear model; the smoothed results can be inferred via the Unscented RTS (URTS) smoother [36]. The smoothing procedure is presented in Algorithm 3, and the readers are referred to Reference [39] for the detailed implementation of the unscented transform. Compared to the Sequential Monte Carlo method, unscented transform is less computationally expensive as the number of sigma points to approximate a Gaussian distribution is much lower than the number of particles to represent the entire density.

3.2.4. Forward Filtering-Backward Smoothing of Trajectories

In this step, by using the measurement association history, the initial birth information (the state and the time at birth) in the estimated trajectories tuples set, and the measurements set, we apply standard single-object filtering and backward RTS smoothing techniques to produce a set of smoothed distributions of the trajectories. In this work, spatial distributions of tracks are assumed to be Gaussian distributed; hence, the estimated spatial distribution of track labeled l at time k is represented by the mean m k l and the covariance P k l . The details of the procedure to produce the tracks distributions are given in Algorithm 4. The SingleObjectPrediction and SingleObjectUpdate functions are chosen according to the dynamic model, which can be Kalman prediction and Kalman update or their nonlinear variances. The linearity of the system also determines the SingleObjectSmoothing function, which takes the form of either Algorithm 2 or Algorithm 3 to smooth each individual trajectory. The output of the algorithm is the smoothed spatial distributions of all estimated trajectories, which is { m k l ^ n , P k l ^ n } k i l ^ n : k e l ^ n . From this set of distributions, the mean values can be extracted to be used as the estimated states of the trajectories.
Algorithm 3 Single-object Unscented RTS (URTS) smoother
  • Input: The filtered mean and covariance { x k , P k } k = 1 : N , f ( x + | x ) , Q
  • Output: The smoothed mean and covariance { x k s , P k s } k = 1 : N
  •  
  • Initialization: x N s = x N and P N s = P N
  • for k = N 1 down to 1
  •    { W i 1 ( m ) , W i 1 ( c ) , [ X i x ˜ ; X i q ˜ ] } = UnscentedTransform ( x k , P k , Q )
  •    X i ˜ + = f ( X i x ˜ , X i q ˜ )
  •    x ¯ k + 1 = i W i 1 ( m ) X i ˜ +
  •    P ¯ k + 1 = i W i 1 ( c ) ( X i ˜ + x ¯ k + 1 ) ( X i ˜ + x ¯ k + 1 ) T
  •    C ¯ k + 1 = i W i 1 ( c ) ( X i x ˜ x k ) ( X i ˜ + x ¯ k + 1 ) T
  •    D = C ¯ k + 1 P ¯ k + 1 1
  •    x k s = x k + D x k + 1 s x ¯ k + 1
  •    P k s = P k + D P k + 1 s P ¯ k + 1 D T
  • end
While the advantages are mentioned previously, this estimator is also subjected to certain drawbacks in challenging tracking scenarios. First, depending on the nature of the problem, the user needs to set an appropriate pruning threshold τ l to prevent the estimator from deleting correct trajectories, especially when track identity switching is severe. Second, as the estimator relies on the latest hypothesis to produce estimates, the more this hypothesis deviates from the truth, the more inaccurate the entire estimation. In addition, in the case that wrong new tracks keep appearing in the set of trajectory estimates, overestimating of the number of tracks is also possible. However, the benefit from track fragmentation reduction and improvement of tracking accuracy given negligible computational effort is much more than the risk of incorrectly estimating the number of tracks, and the following simulation results are a strong demonstration of the benefits of our proposed tracker.
Algorithm 4 Trajectory forward filtering-backward smoothing
  • Input: T ^ = { ( l ^ 1 , b ^ l ^ 1 , ξ ^ l ^ 1 ) , , ( l ^ N , b ^ l ^ N , ξ ^ l ^ N ) } , { Z 1 , , Z K }
  • Output: The estimated trajectories { { m k l ^ 1 , P k l ^ 1 } k i l ^ 1 : k e l ^ 1 , , { m k l ^ N , P k l ^ N } k i l ^ N : k e l ^ N }
  •  
  • for n = 1 to N
  •   Initialize { m ¯ k i l ^ n l n , P ¯ k i l ^ n l n } from the initial birth b ^ l ^ n
  •    { m ˜ k i l ^ n l n , P ˜ k i l ^ n l n } = SingleObjectUpdate ( m ¯ k i l ^ n l n , P ¯ k i l ^ n l n , z ξ ^ l ^ n k i l ^ n k i l ^ n )
  •   for k from k i l ^ n + 1 to k e l ^ n
  •      { m ¯ k l n , P ¯ k l n } = SingleObjectPrediction ( m ˜ k 1 l n , P ˜ k 1 l n )
  •     if ξ ^ l ^ n k = 0
  •        { m ˜ k l n , P ˜ k l n } = { m ¯ k l n , P ¯ k l n }
  •     else
  •        { m ˜ k l n , P ˜ k l n } = SingleObjectUpdate ( m ¯ k l n , P ¯ k l n , z ξ ^ l ^ n k k )
  •     end
  •   end
  •    { m k l ^ n , P k l ^ n } k i l ^ n : k e l ^ n = SingleObjectSmoothing ( { m ˜ k l ^ n , P ˜ k l ^ n } k i l ^ n : k e l ^ n )
  • end

4. Experimental Results

4.1. Simulation Results

4.1.1. Linear Dynamic Model

In this experiment, we use a constant velocity model for the dynamic of the system. The state vector consists of information regarding the planar position and the velocity of the objects, which is x k = p x , p y , p ˙ x , p ˙ y T ; while the measurement vector contains the position of the object, which is z k = [ z x , z y ] T . The transition and observation models are given respectively as follows:
f + ( x + | x ) = N ( x + ; F x , Q )
h ( z | x ) = N ( z ; H x , R )
where F = I 2 Δ I 2 0 2 I 2 , Q = σ v 2 Δ 4 4 I 2 Δ 3 2 I 2 Δ 3 2 I 2 Δ 2 I 2 , H = I 2 0 2 , R = σ ϵ 2 I 2 . Particularly, in this experiment, we set σ v = 5 m/s and σ ϵ = 15 m.
The surveillance region is the [ 1000 , 1000 ] m × [ 1000 , 1000 ] m area, the total time step is K = 100 , and Δ = 1 . The ground truth plot for this experiment is given in Figure 1. The surviving probability is set to p S = 0.99 , and the detection probability is p D = 0.95 . Clutter rate is set to 66 false alarms per scan. The birth probability is set to r B = 0.03 . The states of expected births are m B ( 1 ) = [ 0.1 , 0 , 0.1 , 0 ] T , m B ( 2 ) = [ 400 , 0 , 600 , 0 ] T , m B ( 3 ) = [ 800 , 0 , 200 , 0 ] T , and m B ( 4 ) = [ 200 , 0 , 800 , 0 ] T . The covariance matrix at birth is P B = d i a g ( [ 10 , 10 , 10 , 10 ] ) . The number of hypotheses for GLMB filter is capped at 20,000 components. In this experiment, we smooth the entire tracking interval from k = 1 to k = K . The threshold for the smoother to prune the track is set to τ t = 3 time steps.
We conduct the experiment over 100 Monte Carlo runs. The means of the estimated Optimal Subpattern Assignment (OSPA) error [55] and OSPA2 error [52,56] are given respectively in Figure 2 and Figure 3. Figure 4 shows the GLMB filter and proposed tracker-estimated cardinality of objects set for each time step along with the true values.

4.1.2. Nonlinear Dynamic Model

For the demonstration of the nonlinear tracking scenario, we use a constant turn model with 5-D state vector x k = p x , p y , p ˙ x , p ˙ y , ω T , where ω is the object’s turn rate. The transition density is given as follows:
f + ( x + | x ) = N ( x + ; F ( ω ) x , Q )
where F p x p x ˙ p y p y ˙ ω = 1 sin ( ω Δ ) ω 0 1 cos ( ω Δ ) ω 0 0 cos ( ω Δ ) 0 sin ( ω Δ ) 0 0 1 cos ( ω Δ ) ω 1 sin ( ω Δ ) ω 0 0 sin ( ω Δ ) 0 cos ( ω Δ ) 0 0 0 0 0 1 , Q ζ = σ ω 2 G G T 0 0 σ v 2 and G = Δ 2 / 2 0 Δ 0 0 Δ 2 / 2 0 Δ .
In this experiment, we set σ ω = π / 180 rad/s and σ v = 5 m/s. The observation model is given as the bearing and range detection of the 2D vector z k = [ θ , r ] T with σ θ = π / 90 rad and σ r = 5 m.
The surveillance region is the half disc of the radius 2000 m with K = 100 time steps and Δ = 1 . The ground truth for this experiment is given in Figure 5. The surviving probability is set to p S = 0.99 and the detection probability is p D = 0.95 . Clutter rate is set to 66 false alarms per scan. The expected birth states are m B ( 1 ) = [ 1500 , 0 , 250 , 0 , π / 180 ] T , m B ( 2 ) = [ 250 , 0 , 1000 , 0 , π / 180 ] T , m B ( 3 ) = [ 250 , 0 , 750 , 0 , π / 180 ] T , and m B ( 4 ) = [ 1000 , 0 , 1500 , 0 , π / 180 ] T with r B = 0.02 , and the birth covariance is P B = d i a g ( [ 50 , 50 , 50 , 50 , π / 30 ] ) . The number of hypotheses is also capped at 20,000 components. The smoothing interval is the entire tracking sequence from k = 1 to k = K . We also set the track pruning threshold for the smoother to 3 time steps in this experiment.
For this scenario, we also test the performance of the tracker over 100 Monte Carlo runs. The means of OSPA error and OSPA2 error of the estimates are plotted in Figure 6 and Figure 7, respectively, while the set cardinality is shown in Figure 8.

4.1.3. Hybrid TBD Observation Model

In this simulation, we use the hybrid measurement model to track objects following a linear dynamic motion model. The surveillance region is 100 × 100 pixels with image cell size of 1, total time step of K = 100 , and Δ = 1 . The observation are the raw images, which are arrays of pixels. In particular, for a pixel i at the image coordinate ( a ( i ) , b ( i ) ) , the array value is given as follows [26,27]:
y ( i ) = x X I k 2 π σ h exp ( a ( i ) p x ) 2 + ( b ( i ) p y ) 2 2 σ h 2 + w ( i )
where w ( i ) N ( 0 , σ y ) is Gaussian noise. In this experiment, we set σ h = 4 and σ y = 1 . We choose the value of I k such that the signal to noise ratio (SNR) varies over the range 7 to 10 dB. For the observation model from the perspective of the filter, we fix its SNR value to 10 dB. From the raw images, we then use hard-shareholding to extract the points measurements at each frame.
The dynamic model and standard observation model are similar to the ones in Section 4.1.1 with σ v = 1 pixel/s, p S = 0.98 , and σ ϵ = 4 pixels with a clutter rate of 10. The expected new births states are m B ( 1 ) = [ 5 , 0 , 25 , 0 ] T , m B ( 2 ) = [ 5 , 0 , 90 , 0 ] T , m B ( 3 ) = [ 80 , 0 , 90 , 0 ] T , m B ( 4 ) = [ 5 , 0 , 5 , 0 ] T , and m B ( 5 ) = [ 90 , 0 , 30 , 0 ] T with the covariance of P B = d i a g ( [ 3 , 2 , 3 , 2 ] ) and the probability r B of 0.03 . The ground truth location of objects is shown in Figure 9 while Figure 10 shows samples of raw image observation along with points detection. The implementation of the filtering phase is as the same as in Reference [27]. The smoothing interval is set to the entire tracking time with the track pruning threshold of the smoother set to 3 time steps.
This experiment is run over 100 Monte Carlo trials. The means of OSPA error and OSPA2 error are shown respectively in Figure 11 and Figure 12. The estimated cardinality is plotted in Figure 13.

4.1.4. Discussion on the Simulation Results

For all simulated experiments, we observe lower OSPA and OSPA2 errors for the proposed tracker compared to the GLMB filter results. In the first two experiments with the standard observation model, as the clutter rate is high, the filtered-only trajectories jiggle around the true paths due to false measurements. In Figure 2 and Figure 6 as well as in Figure 3 and Figure 7, the overall errors of the GLMB filter estimates are higher than of the proposed tracker estimates. The reduction of localization error contribute mainly to the improvement of the tracking performance. From the cardinality plots in Figure 4 and Figure 8, on average, the proposed tracker slightly improves estimate cardinality performance as it is able to eliminate track fragmentation while eliminating incorrect tracks at some time steps.
In the hybrid TBD tracking experiment, as tracks are miss-detected due to low SNR, the proposed tracker improves tracking performance by eliminating track fragmentation. Not much localization error is reduced by the smoother step as the GLMB filter produces relatively good tracking results. The OSPA and OSPA2 results presented in Figure 11 and Figure 12 show slight improvement of the proposed tracker results compared to GLMB filter tracking results. However, the cardinality plot in Figure 13 clearly indicates that the proposed tracker is able to improve the estimated cardinality between time step 30 and 40.
The run time for all simulated scenario is given in Figure 14 in terms of the percentage of extra computational time of the proposed tracker over the computational time of the filtering step only. It is shown that the extra computational time is negligible in all three tracking scenarios with the extra computational time of the proposed tracker less than 0.5% of the filtering computational time. However, the main disadvantage is that the tracker needs to wait until the end of the smoothing interval to be able to produce tracking results.

4.2. Application to Cell Microscopy

In this experiment, we attempt to track biological cells from a sequence of images containing 90 frames by using the proposed tracker. A snapshot of the sequence is shown in Figure 15. In this application, we use the constant turn rate for the dynamic model as in Section 4.1.2 and the standard observation model as in Section 4.1.1. We also implement the measurement driven model as described in Reference [20]. For the first time step, the birth rate is set to a very high value (≈1) to initialize objects. Subsequently, the birth rate is capped at 10−7. The standard deviation of the turn rate noise is π / 90 rad/s, and the standard deviation of the velocity noise is 5 pixels/frame. The number of hypotheses is capped at 10,000. The detection rate is set to 0.88, and the surviving rate and the spawning rate are 0.999 and 0.035, respectively. The clutter rate is set to 0.05. The cell spawning model is the same as described in Reference [57] with the covariance of the spawning model given as Q T = 40 0 0 0 0 0 5 0 0 0 0 0 40 0 0 0 0 0 5 0 0 0 0 0 π / 90 and the smoothing interval set to the entire image sequence. In this application, we set the track pruning threshold of the estimator to 3 time steps.
From the tracking results, significant improvement is observed as the proposed tracker is able to eliminate incorrect spawned tracks. While the OSPA error in Figure 16 shows similar performance for the GLMB filter and the proposed tracker, the improvement is clearly reflected in the OSPA2 cardinality error plots in Figure 17. From the cardinality plot in Figure 18, the estimated cardinality from our tracker is much closer to the true values as fewer incorrect spawned tracks are estimated. In this experiment, there is not much difference between the GLMB filter and the proposed tracker estimates localization error due to the mismatch between the dynamic model and actual motion of the cells. Finally, in Figure 19, we illustrate the improved tracking results in terms of tracking sequence for several time steps at a selected region where the cell splitting process occurs.

5. Conclusions

In this paper, we detailed the implementation of a new tracker based on GLMB filter and a modified multi-scan estimator. In addition to lowering the localization error by performing RTS smoother on each individual estimated trajectory, the proposed tracker can also reduce cardinality errors by deleting the short-term tracks via track management and by completely eliminating track fragmentation. The computation time is shown to contribute to less than 0.5% of the total tracking time, although a fixed delay time is needed before the tracker can produce the estimate. Therefore, in applications when real-time updates are not required, the proposed tracker can be used to improve the tracking results given negligible extra computation time. However, as the smoothing results strongly depend on the quality of the estimates obtained from the forward filtering step, if the filtered estimate experiences strong distortion, the performance of the proposed tracker degrades significantly.

Author Contributions

Methodology, T.T.D.N. and D.Y.K.; visualization, T.T.D.N.; writing—original draft, T.T.D.N.; writing—review and editing, T.T.D.N. and D.Y.K.

Funding

This work was funded by the Australian Research Council grant number DP160104662.

Acknowledgments

The authors acknowledge the administrative and technical support from Curtin University and RMIT University.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Fortmann, T.; Bar-Shalom, Y.; Scheffe, M. Sonar tracking of multiple targets using joint probabilistic data association. IEEE J. Ocean. Eng. 1983, 8, 173–184. [Google Scholar] [CrossRef]
  2. Reid, D. An algorithm for tracking multiple targets. IEEE Trans. Autom. Control 1979, 24, 843–854. [Google Scholar] [CrossRef]
  3. Vo, B.N.; Vo, B.T.; Mahler, R.P.S. Closed form solutions to forward-backward smoothing. IEEE Trans. Signal Process. 2012, 60, 2–17. [Google Scholar] [CrossRef]
  4. Vo, B.N.; Ma, W.K. The Gaussian Mixture Probability Hypothesis Density Filter. IEEE Trans. Signal Process. 2006, 54, 4091–4104. [Google Scholar] [CrossRef]
  5. Gao, Y.; Jiang, D.; Liu, M. Particle-Gating SMC-PHD filter. Signal Process. 2017, 130, 64–73. [Google Scholar] [CrossRef]
  6. Wang, S.; Bao, Q.; Chen, Z. Refined PHD Filter for Multi-Target Tracking under Low Detection Probability. Sensors 2019, 19, 2842. [Google Scholar] [CrossRef] [PubMed]
  7. Zheng, J.; Gao, M. Tracking Ground Targets with a Road Constraint Using a GMPHD Filter. Sensors 2018, 18, 2723. [Google Scholar] [CrossRef]
  8. Vo, B.T.; Vo, B.N.; Cantoni, A. Analytic Implementations of the Cardinalized Probability Hypothesis Density Filter. IEEE Trans. Signal Process. 2007, 55, 3553–3567. [Google Scholar] [CrossRef]
  9. Zhang, H.; Jing, Z.; Hu, S. Gaussian mixture CPHD filter with gating technique. Signal Process. 2009, 89, 1521–1530. [Google Scholar] [CrossRef]
  10. Si, W.; Wang, L.; Qu, Z. Multi-Target Tracking Using an Improved Gaussian Mixture CPHD Filter. Sensors 2016, 16, 1964. [Google Scholar] [CrossRef]
  11. Vo, B.T.; Vo, B.N.; Cantoni, A. The Cardinality Balanced Multi-Target Multi-Bernoulli Filter and Its Implementations. IEEE Trans. Signal Process. 2009, 57, 409–423. [Google Scholar] [CrossRef]
  12. Hu, X.; Ji, H.; Liu, L. Adaptive Target Birth Intensity Multi-Bernoulli Filter with Noise-Based Threshold. Sensors 2019, 19, 1120. [Google Scholar] [CrossRef] [PubMed]
  13. Vo, B.T.; Vo, B.N. Labeled Random Finite Sets and Multi-Object Conjugate Priors. IEEE Trans. Signal Process. 2013, 61, 3460–3475. [Google Scholar] [CrossRef]
  14. Yang, B.; Wang, J.; Wang, W. An efficient approximate implementation for labeled random finite set filtering. Signal Process. 2018, 150, 215–227. [Google Scholar] [CrossRef]
  15. Vo, B.N.; Vo, B.T.; Phung, D. Labeled Random Finite Sets and the Bayes Multi-Target Tracking Filter. IEEE Trans. Signal Process. 2014, 62, 6554–6567. [Google Scholar] [CrossRef] [Green Version]
  16. Vo, B.N.; Vo, B.T.; Hoang, H.G. An Efficient Implementation of the Generalized Labeled Multi-Bernoulli Filter. IEEE Trans. Signal Process. 2017, 65, 1975–1987. [Google Scholar] [CrossRef]
  17. Moratuwage, D.; Adams, M.; Inostroza, F. δ-Generalized Labeled Multi-Bernoulli Simultaneous Localization and Mapping with an Optimal Kernel-Based Particle Filtering Approach. Sensors 2019, 19, 2290. [Google Scholar] [CrossRef] [PubMed]
  18. Liu, C.; Sun, J.; Lei, P.; Qi, Y. δ-Generalized Labeled Multi-Bernoulli Filter Using Amplitude Information of Neighboring Cells. Sensors 2018, 18, 1153. [Google Scholar] [CrossRef]
  19. Do, C.T.; Van Nguyen, H. Tracking Multiple Targets from Multistatic Doppler Radar with Unknown Probability of Detection. Sensors 2019, 19, 1672. [Google Scholar] [CrossRef]
  20. Reuter, S.; Vo, B.T.; Vo, B.N.; Dietmayer, K. The Labeled Multi-Bernoulli Filter. IEEE Trans. Signal Process. 2014, 62, 3246–3260. [Google Scholar] [CrossRef]
  21. Xie, Y.; Song, T.L. Bearings-only multi-target tracking using an improved labeled multi-Bernoulli filter. Signal Process. 2018, 151, 32–44. [Google Scholar] [CrossRef]
  22. Amrouche, N.; Khenchaf, A.; Berkani, D. Multiple target tracking using track before detect algorithm. In Proceedings of the 2017 International Conference on Electromagnetics in Advanced Applications (ICEAA), Verona, Italy, 11–15 September 2017; pp. 692–695. [Google Scholar] [CrossRef]
  23. Grossi, E.; Lops, M.; Venturino, L. A Track-Before-Detect Algorithm with Thresholded Observations and Closely-Spaced Targets. IEEE Signal Process. Lett. 2013, 20, 1171–1174. [Google Scholar] [CrossRef]
  24. Yi, W.; Morelande, M.R.; Kong, L.; Yang, J. An Efficient Multi-Frame Track-before-Detect Algorithm for Multi-Target Tracking. IEEE J. Sel. Top. Signal Process. 2013, 7, 421–434. [Google Scholar] [CrossRef]
  25. Rathnayake, T.; Tennakoon, R.; Khodadadian Gostar, A.; Bab-Hadiashar, A.; Hoseinnezhad, R. Information Fusion for Industrial Mobile Platform Safety via Track-before-Detect Labeled Multi-Bernoulli Filter. Sensors 2019, 19, 2016. [Google Scholar] [CrossRef] [PubMed]
  26. Vo, B.N.; Vo, B.T.; Pham, N.T.; Suter, D. Joint Detection and Estimation of Multiple Objects from Image Observations. IEEE Trans. Signal Process. 2010, 58, 5129–5141. [Google Scholar] [CrossRef]
  27. Kim, D.Y.; Vo, B.N.; Vo, B.T.; Jeon, M. A labeled random finite set online multi-object tracker for video data. Pattern Recognit. 2019, 90, 377–389. [Google Scholar] [CrossRef]
  28. Bryant, D.S.; Delande, E.D.; Gehly, S.; Houssineau, J.; Clark, D.E.; Jones, B.A. The CPHD Filter with Target Spawning. IEEE Trans. Signal Process. 2017, 65, 13124–13138. [Google Scholar] [CrossRef]
  29. Lundgren, M.; Svensson, L.; Hammarstrand, L. A CPHD Filter for Tracking with Spawning Models. IEEE J. Sel. Top. Signal Process. 2013, 7, 496–507. [Google Scholar] [CrossRef]
  30. Bryant, D.S.; Vo, B.; Vo, B.; Jones, B.A. A Generalized Labeled Multi-Bernoulli Filter with Object Spawning. IEEE Trans. Signal Process. 2018, 66, 6177–6189. [Google Scholar] [CrossRef]
  31. Bryson, A.; Frazier, M. Smoothing for Linear and Nonlinear Dynamic Systems; Tech. Rep. TDR-63-119; Aeronautical Systems Division Wright Patterson AFB: Dayton, OH, USA, 1962. [Google Scholar]
  32. Rauch, H.E.; Striebel, C.T.; Tung, F. Maximum likelihood estimates of linear dynamic systems. AIAA J. 1965, 3, 1445–1450. [Google Scholar] [CrossRef]
  33. Fraser, D.; Potter, J. The optimum linear smoother as a combination of two optimum linear filters. IEEE Trans. Autom. Control 1969, 14, 387–390. [Google Scholar] [CrossRef]
  34. Briers, M.; Doucet, A.; Maskell, S. Smoothing algorithms for state-space models. Ann. Inst. Stat. Math. 2009, 62, 61–89. [Google Scholar] [CrossRef]
  35. Fearnhead, P.; Wyncoll, D.; Tawn, J. A sequential smoothing algorithm with linear computational cost. Biometrika 2010, 97, 447–464. [Google Scholar] [CrossRef]
  36. Särkkä, S. Unscented Rauch–Tung–Striebel Smoother. IEEE Trans. Autom. Control 2008, 53, 845–849. [Google Scholar] [CrossRef]
  37. Särkkä, S. Continuous-time and continuous–discrete-time unscented Rauch–Tung–Striebel smoothers. Signal Process. 2010, 90, 225–235. [Google Scholar] [CrossRef]
  38. Kitagawa, G. Monte Carlo Filter and Smoother for Non-Gaussian Nonlinear State Space Models. J. Comput. Graph. Stat. 1996, 5, 1–25. [Google Scholar] [CrossRef]
  39. Simon, J.; Julier, J.K.U. New extension of the Kalman filter to nonlinear systems. In Proceedings of the Signal Processing, Sensor Fusion, and Target Recognition VI, Orlando, FL, USA, 21–24 April 1997; Volume 3068. [Google Scholar] [CrossRef]
  40. Chen, B.; Tugnait, J. Multisensor tracking of a maneuvering target in clutter using IMMPDA fixed-lag smoothing. IEEE Trans. Aerosp. Electron. Syst. 2000, 36, 983–991. [Google Scholar] [CrossRef]
  41. Helmick, R.; Blair, W.; Hoffman, S. One-step fixed-lag smoothers for Markovian switching systems. IEEE Trans. Autom. Control 1996, 41, 1051–1056. [Google Scholar] [CrossRef]
  42. Li, T.; Chen, H.; Sun, S.; Corchado, J.M. Joint Smoothing and Tracking Based on Continuous-Time Target Trajectory Function Fitting. IEEE Trans. Autom. Sci. Eng. 2019, 16, 1476–1483. [Google Scholar] [CrossRef]
  43. Mahler, R.P.S.; Vo, B.T.; Vo, B.N. Forward-Backward Probability Hypothesis Density Smoothing. IEEE Trans. Aerosp. Electron. Syst. 2012, 48, 707–728. [Google Scholar] [CrossRef]
  44. He, X.; Liu, G. Improved Gaussian mixture probability hypothesis density smoother. Signal Process. 2016, 120, 56–63. [Google Scholar] [CrossRef]
  45. Nadarajah, N.; Kirubarajan, T.; Lang, T.; Mcdonald, M.; Punithakumar, K. Multitarget Tracking Using Probability Hypothesis Density Smoothing. IEEE Trans. Aerosp. Electron. Syst. 2011, 47, 2344–2360. [Google Scholar] [CrossRef]
  46. Nagappa, S.; Delande, E.D.; Clark, D.E.; Houssineau, J. A Tractable Forward-Backward CPHD Smoother. IEEE Trans. Aerosp. Electron. Syst. 2017, 53, 201–217. [Google Scholar] [CrossRef]
  47. Li, D.; Hou, C.; Yi, D. Multi-Bernoulli smoother for multi-target tracking. Aerosp. Sci. Technol. 2016, 48, 234–245. [Google Scholar] [CrossRef]
  48. Koch, W. Fixed-interval retrodiction approach to Bayesian IMM-MHT for maneuvering multiple targets. IEEE Trans. Aerosp. Electron. Syst. 2000, 36, 2–14. [Google Scholar] [CrossRef]
  49. Beard, M.; Vo, B.T.; Vo, B.N. Generalised labeled multi-Bernoulli forward-backward smoothing. In Proceedings of the 2016 19th International Conference on Information Fusion (FUSION), Heidelberg, Germany, 5–8 July 2016; pp. 688–694. [Google Scholar]
  50. Vo, B.N.; Vo, B.T. A Multi-Scan Labeled Random Finite Set Model for Multi-Object State Estimation. IEEE Trans. Signal Process. 2019, 67, 4948–4963. [Google Scholar] [CrossRef] [Green Version]
  51. Mahler, R. Exact Closed-Form Multitarget Bayes Filters. Sensors 2019, 19, 2818. [Google Scholar] [CrossRef]
  52. Beard, M.; Vo, B.T.; Vo, B.N. A Solution for Large-Scale Multi-Object Tracking. arXiv 2018, arXiv:1804.06622. [Google Scholar]
  53. Vo, B.N.; Vo, B.T.; Beard, M. Multi-Sensor Multi-Object Tracking with the Generalized Labeled Multi-Bernoulli Filter. IEEE Trans. Signal Process. 2019. [Google Scholar] [CrossRef]
  54. Mahler, R.P.S. Statistical Multisource-Multitarget Information Fusion; Artech House: Norwood, MA, USA, 2007. [Google Scholar]
  55. Schuhmacher, D.; Vo, B.T.; Vo, B.N. A Consistent Metric for Performance Evaluation of Multi-Object Filters. IEEE Trans. Signal Process. 2008, 56, 3447–3457. [Google Scholar] [CrossRef] [Green Version]
  56. Beard, M.; Vo, B.T.; Vo, B.N. OSPA(2): Using the OSPA metric to evaluate multi-target tracking performance. In Proceedings of the 2017 International Conference on Control, Automation and Information Sciences (ICCAIS), Chiang Mai, Thailand, 31 October–1 November 2017; pp. 86–91. [Google Scholar] [CrossRef]
  57. Nguyen, T.T.D.; Kim, D.Y. On-line Tracking of Cells and Their Lineage from Time Lapse Video Data. In Proceedings of the 2018 International Conference on Control, Automation and Information Sciences (ICCAIS), Hangzhou, China, 24–27 October 2018; pp. 291–296. [Google Scholar] [CrossRef]
Figure 1. Ground truth for linear dynamic scenario (circle: track start position, triangle: track end position).
Figure 1. Ground truth for linear dynamic scenario (circle: track start position, triangle: track end position).
Sensors 19 04419 g001
Figure 2. OSPA error for linear dynamic scenario.
Figure 2. OSPA error for linear dynamic scenario.
Sensors 19 04419 g002
Figure 3. OSPA2 error for linear dynamic scenario.
Figure 3. OSPA2 error for linear dynamic scenario.
Sensors 19 04419 g003
Figure 4. Estimated cardinality for linear dynamic scenario.
Figure 4. Estimated cardinality for linear dynamic scenario.
Sensors 19 04419 g004
Figure 5. Ground truth for nonlinear dynamic scenario (circle: track start position, triangle: track end position).
Figure 5. Ground truth for nonlinear dynamic scenario (circle: track start position, triangle: track end position).
Sensors 19 04419 g005
Figure 6. OSPA error for nonlinear dynamic scenario.
Figure 6. OSPA error for nonlinear dynamic scenario.
Sensors 19 04419 g006
Figure 7. OSPA2 error for nonlinear dynamic scenario.
Figure 7. OSPA2 error for nonlinear dynamic scenario.
Sensors 19 04419 g007
Figure 8. Estimated cardinality for nonlinear dynamic scenario.
Figure 8. Estimated cardinality for nonlinear dynamic scenario.
Sensors 19 04419 g008
Figure 9. Ground truth for a hybrid track-before-detect (TBD) scenario (circle: track start position, triangle: track end position).
Figure 9. Ground truth for a hybrid track-before-detect (TBD) scenario (circle: track start position, triangle: track end position).
Sensors 19 04419 g009
Figure 10. Samples of raw images and point observations for a hybrid TBD scenario (red asterisk: ground truth position, green circle: point detection).
Figure 10. Samples of raw images and point observations for a hybrid TBD scenario (red asterisk: ground truth position, green circle: point detection).
Sensors 19 04419 g010
Figure 11. OSPA error for a hybrid TBD scenario.
Figure 11. OSPA error for a hybrid TBD scenario.
Sensors 19 04419 g011
Figure 12. OSPA2 error for a hybrid TBD scenario.
Figure 12. OSPA2 error for a hybrid TBD scenario.
Sensors 19 04419 g012
Figure 13. Estimated cardinality for a hybrid TBD scenario.
Figure 13. Estimated cardinality for a hybrid TBD scenario.
Sensors 19 04419 g013
Figure 14. Percentage of smoothing time over filtering time.
Figure 14. Percentage of smoothing time over filtering time.
Sensors 19 04419 g014
Figure 15. Snapshot of biological cell sequence.
Figure 15. Snapshot of biological cell sequence.
Sensors 19 04419 g015
Figure 16. OSPA error for tracking biological cells.
Figure 16. OSPA error for tracking biological cells.
Sensors 19 04419 g016
Figure 17. OSPA2 error for tracking biological cells.
Figure 17. OSPA2 error for tracking biological cells.
Sensors 19 04419 g017
Figure 18. Estimated cardinality for tracking biological cells.
Figure 18. Estimated cardinality for tracking biological cells.
Sensors 19 04419 g018
Figure 19. The tracked image sequences of biological cells with blue asterisks denoting points detection. Top row: Generalized Labeled Multi-Bernoulli (GLMB) filter tracking results. Bottom: Proposed tracker tracking results.
Figure 19. The tracked image sequences of biological cells with blue asterisks denoting points detection. Top row: Generalized Labeled Multi-Bernoulli (GLMB) filter tracking results. Bottom: Proposed tracker tracking results.
Sensors 19 04419 g019

Share and Cite

MDPI and ACS Style

Nguyen, T.T.D.; Kim, D.Y. GLMB Tracker with Partial Smoothing. Sensors 2019, 19, 4419. https://doi.org/10.3390/s19204419

AMA Style

Nguyen TTD, Kim DY. GLMB Tracker with Partial Smoothing. Sensors. 2019; 19(20):4419. https://doi.org/10.3390/s19204419

Chicago/Turabian Style

Nguyen, Tran Thien Dat, and Du Yong Kim. 2019. "GLMB Tracker with Partial Smoothing" Sensors 19, no. 20: 4419. https://doi.org/10.3390/s19204419

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop