This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

\newdateformat

monthyeardate\monthname[\THEMONTH] \THEDAY, \THEYEAR

Scalable Detection and Tracking
of Geometric Extended Objects

Florian Meyer,  and Jason L. Williams,  This work was supported in part by the University of California San Diego and in part by the Office of Naval Research under Grant N00014-21-1-2267. This work was presented at the IEEE ICASSP-20, Barcelona, Spain, May 2020.Florian Meyer is with the Scripps Institution of Oceanography and the Department of Electrical and Computer Engineering, University of California San Diego, La Jolla, CA, USA (e-mail: [email protected]).Jason L. Williams is with Data61, Commonwealth Scientific and Industrial Research Organisation, Brisbane, Australia (e-mail: jason.[email protected]).
Abstract

Multiobject tracking provides situational awareness that enables new applications for modern convenience, public safety, and homeland security. This paper presents a factor graph formulation and a particle-based sum-product algorithm (SPA) for scalable detection and tracking of extended objects. The proposed method dynamically introduces states of newly detected objects, efficiently performs probabilistic multiple-measurement to object association, and jointly infers the geometric shapes of objects. Scalable extended object tracking (EOT) is enabled by modeling association uncertainty by measurement-oriented association variables and newly detected objects by a Poisson birth process. Contrary to conventional EOT methods, a fully particle-based approach makes it possible to describe different geometric object shapes. The proposed method can reliably detect, localize, and track a large number of closely-spaced extended objects without gating and clustering of measurements. We demonstrate significant performance advantages of our approach compared to the recently introduced Poisson multi-Bernoulli mixture filter. In particular, we consider a simulated scenarios with up to twenty closely-spaced objects and a real autonomous driving application where measurements are captured by a lidar sensor.

Index Terms:
Extended object tracking, data association, factor graphs, sum-product algorithm, random matrix theory

I Introduction

Emerging sensing technologies and innovative signal processing methods will lead to new capabilities for autonomous operation in a wide range of problems such as applied ocean sciences and ground navigation. A technology that enables new capabilities in this context is EOT. EOT methods make it possible to detect and track an unknown number of objects with unknown shapes by using modern sensors such as high-resolution radar, sonar, and lidar [1].

Due to the high resolution of these sensors, the point object assumption used in conventional multiobject tracking algorithms [2, 3, 4] is no longer valid. Objects have an unknown shape that must be inferred together with their kinematic state. In addition, data association is particularly challenging due to the overwhelmingly large number of possible association events [5]. Even if only a single extended object is considered, the number of possible measurement-to-object association events scales combinatorially in the number of measurements. In the more realistic case of multiple extended objects, this “combinatorial explosion” of possible events is further exacerbated.

I-A State of the Art

An important aspect of EOT is the modeling and inference of object shapes. The shape of an object determines how the measurements that originate from the object are spatially distributed around its center. An important and widely used model [6, 7, 8, 5, 9] based on random matrix theory has been introduced in [10]. This model considers elliptically shaped objects. Here, unknown reflection points of measurements on extended objects are modeled by a random matrix that acts as the covariance matrix in the measurement model. This random extent state is estimated sequentially together with the kinematic state. The approach proposed in [10] introduces a closed-form update step for linear dynamics. It exploits that the Gaussian inverse Wishart distribution is a conjugate prior for linear Gaussian measurement models.

A major drawback of the original random matrix-based tracking method is that the driving noise variance in the state transition function of the kinematic state must be proportional to the extent of the object [10]. Furthermore, the orientation of the random matrix is constant. These limitations have been addressed by improved and refined random matrix-based extent models introduced in [11, 12, 13] and particle-based methods [14]. A significant number of additional application-dependent object extent models have been proposed recently (see [1] and references therein). The state-of-the-art algorithm for tracking an unknown number of objects with elliptical shape is the Poisson multi-Bernoulli mixture (PMBM) filter [5]. The PMBM filter is based on a model [15] where objects that have produced a measurement are described by a multi-Bernoulli probability distribution and objects that exist but have not yet produced a measurement yet are described by a Poisson distribution. This PMBM model is a conjugate prior with respect to the prediction and update steps of the extended object tracking problem [5].

Important methods for the tracking of point objects include joint probabilistic data association (JPDA) [2], multi-hypothesis tracking (MHT) [16, 17, 18], and approaches based on random finite sets (RFS) [3, 19, 20, 21, 15]. Many of these point object tracking methods have been adapted for extended object tracking. In [22], a probabilistic data association algorithm for the tracking of a single object that can produce more than one measurement has been introduced. A multiple-measurement JPDA filter for the tracking of multiple objects has been independently developed in [23] and [24]. The method in [6] combines a random matrix extent model with multisensor JPDA for the tracking of multiple extended objects. The computational complexity of these methods scales combinatorially in the number of objects and the number of measurements. They rely on gating, a suboptimal preprocessing technique that excludes unlikely data association events. Thus, these methods are only suitable in scenarios where objects produce few measurements and no more than four objects come into close proximity at any time [25].

Another widely used approach to limit computational complexity for data association with extended objects is to perform clustering of spatially close measurements. Here, based on the assumption that all measurements in a cluster correspond to the same object, the majority of possible data association events is discarded in a suboptimal preprocessing step. Based on this approach, tracking methods for objects that produce multiple measurements have been developed in the MHT [26] and the JPDA [27, 28] frameworks. Practical implementations of the update step of RFS-based methods for EOT [7, 8, 5, 9] including the one of the PMBM filter [5] also rely on gating and clustering and suffer from a reduced performance if objects are in close proximity. An alternative approach is to perform data association with extended objects using sampling methods [29, 30]. Here, in scenarios with objects that are in proximity, a better estimation performance can be achieved compared to methods based on clustering. These methods based on sampling, however, also discard the majority of possible data association events, and thus eventually fail if the number of relevant events becomes too large [31].

An innovative approach to high-dimensional estimation problems is the framework probabilistic graphical models [32]. In particular, the SPA [33, 34, 32] can provide scalable solutions to high-dimensional estimation problems. The SPA performs local operations through “messages” passed along the edges of a factor graph. Many traditional sequential estimation methods such as the Kalman filter, the particle filter, and JPDA can be interpreted as instances of SPA. In addition, SPA has led to a variety of new estimation methods in a wide range of applications [35, 36, 37]. For probabilistic data association (PDA) with point objects, an SPA-based method referred to as the sum-product algorithm for data association (SPADA) is obtained by executing the SPA on a bipartite factor graph and simplifying the resulting SPA messages [38, 4, 31]. The computational complexity of this algorithm scales as the product of the number of measurements and the number of objects. Sequential estimation methods that embed the SPADA to reduce computational complexity have been introduced for multiobject tracking (MOT) [15, 39, 40, 41, 42, 43], indoor localization [44, 45, 46, 47], as well as simultaneous localization and tracking [48, 49, 50].

SPA methods for probabilistic data association based on a bipartite factor graph have recently been investigated for the tracking of extended objects [51, 25, 52]. Here, the number of measurements produced by each object is modeled by an arbitrary truncated probability mass function (PMF). An SPA for data association with extended objects with a computational complexity that scales as the product of the number of measurements and the number of objects has been introduced [51, 25]. This method can track multiple objects that potentially generate a large number of measurements but was found unable to reliably determine the probability of existence of objects detected for the first time. An alternative method for scalable data association with extended objects has been developed independently and has been presented in [53, 54]. These methods however either assume that the number of objects are known, or that a certain prior information of new object locations is available. They are thus unsuitable for scenarios with spontaneous object birth.

I-B Contributions and Notations

In this paper, we introduce a Bayesian particle-based SPA for scalable detection and tracking of an unknown number of extended objects. Object birth and the number of measurements generated by an object are described by a Poisson PMF. The proposed method is derived on a factor graph that depicts the statistical model of the extended object tracking problem and is based on a representation of data association uncertainty by means of measurement-oriented association variables. Contrary to the factor graph used in [51], it makes it possible to reliably determine the existence of objects by means of the SPA. In our statistical model, the object extent is modeled as a basic geometric shape that is represented by a positive semidefinite extent state. Contrary to conventional EOT algorithms with a random-matrix model, the proposed fully particle-based method is not limited to elliptical object shapes. A fully particle-based approach also makes it possible to consider a uniform distribution of measurements on the object extent. Furthermore, our method has a computational complexity that scales only quadratically in the number of objects and the number of measurements. It can thus accurately detect, localize, and track multiple closely-spaced extended objects that generate a large number of measurements. The contributions of this paper are as follows.

  • We derive a new factor graph for the problem of detection and tracking of multiple extended objects and introduce the corresponding message passing equations.

  • We establish a particle-based scalable message passing algorithm for the detection and tracking of an unknown number of extended objects.

  • We demonstrate performance advantages in a challenging simulated scenario and by using real lidar measurements acquired by an autonomous vehicle.

This paper advances over the preliminary account of our method provided in the conference publication [55] by (i) simplifying the representation of data association uncertainty, (ii) including object extents in the statistical model, (iii) presenting a detailed derivation of the factor graph, (iv) establishing a particle-based implementation of the proposed method, (v) discussing scaling properties, (vi) demonstrating performance advantages compared to the recently proposed Poisson multi-Bernoulli mixture filter [5] using synthetic and real measurements.

The probabilistic model established in this paper is closely related to the probabilistic model employed by the PMBM filter (cf. [4]). Our focus is on obtaining a factor graph formulation for which the SPA scales well, and on exploiting the accuracy and flexibility of a particle-based implementation.

Notation: Random variables are displayed in sans serif, upright fonts, while their realizations are in serif, italic fonts. Vectors and matrices are denoted by bold lowercase and uppercase letters, respectively. For example, a random variable and its realization are denoted by 𝗑\mathsfbr{x} and xx; a random vector and its realization by 𝘅\bm{\mathsfbr{x}} and 𝒙\bm{x}; and a random matrix and its realization are denoted by 𝗫\bm{\mathsfbr{X}} and 𝑿\bm{X}. Furthermore, 𝒙T{\bm{x}}^{\text{T}} denotes the transpose of vector 𝒙\bm{x}; \propto indicates equality up to a normalization factor; f(𝒙)f(\bm{x}) denotes the probability density function (PDF) of random vector 𝘅\bm{\mathsfbr{x}}. 𝒩(𝒙;𝝁,𝚺){\cal{N}}(\bm{x};\bm{\mu},\bm{\varSigma}) denotes the Gaussian PDF (of random vector 𝘅\bm{\mathsfbr{x}}) with mean 𝝁\bm{\mu} and covariance matrix 𝚺\bm{\varSigma}, 𝒰(𝒚;𝒮){\cal{U}}(\bm{y};{\cal{S}}) denotes the uniform PDF (of random vector 𝘆\bm{\mathsfbr{y}}) with support 𝒮{\cal{S}}, and 𝒲(𝑿;q,𝑸){\cal{W}}\big{(}\bm{X};q,\bm{Q}\big{)} denotes the Wishart distribution (of random matrix 𝗫\bm{\mathsfbr{X}}) with degrees of freedom qq and mean q𝑸q\hskip 0.85358pt\bm{Q}. The determinant of matrix 𝑸\bm{Q} is denoted |𝑸||\bm{Q}|. Finally, bdiag(𝑴1,,𝑴I)\mathrm{bdiag}(\bm{M}_{1},\dots,\bm{M}_{I}) denotes the block diagonal matrix that consists of submatrices 𝑴1,,𝑴I\bm{M}_{1},\dots,\bm{M}_{I}.

II System Model

At time nn, object kk is described by a kinematic state and an extent state. The kinematic state 𝘅k,n[𝗽k,nT𝗺k,nT]T\bm{\mathsfbr{x}}_{k,n}\triangleq\big{[}\bm{\mathsfbr{p}}^{\text{T}}_{k,n}\hskip 0.85358pt\bm{\mathsfbr{m}}^{\text{T}}_{k,n}\big{]}^{\text{T}} consists of the object’s position 𝗽k,nd𝒑\bm{\mathsfbr{p}}_{k,n}\in\mathbb{R}^{d_{\bm{p}}} and possibly further parameters 𝗺k,nd𝒎\bm{\mathsfbr{m}}_{k,n}\in\mathbb{R}^{d_{\bm{m}}} such as velocity or turn rate. The extent state 𝗘k,nd𝒑×d𝒑\bm{\mathsfbr{E}}_{k,n}\in\mathbb{R}^{d_{\bm{p}}\times d_{\bm{p}}} is a symmetric, positive semidefinite random matrix that can either model an ellipsoid or a cube. Example realizations of 𝗘k,n\bm{\mathsfbr{E}}_{k,n} and corresponding object shapes are shown in Fig. 1. Formally, we also introduce the vector notation 𝗲k,n\bm{\mathsfbr{e}}_{k,n} of extent state 𝗘k,n\bm{\mathsfbr{E}}_{k,n}, which is the concatenation of diagonal and unique off-diagonal elements of 𝗘k,n\bm{\mathsfbr{E}}_{k,n}, e.g., in a 2-D tracking scenario the vector notation of extent matrix 𝗘k,n=[[𝖾𝗄,𝗇(𝟣𝟣)𝖾𝗄,𝗇(𝟤𝟣)]T[𝖾𝗄,𝗇(𝟣𝟤)𝖾𝗄,𝗇(𝟤𝟤)]T]\bm{\mathsfbr{E}}_{k,n}=\big{[}\hskip 0.85358pt[\mathsfbr{e}^{(11)}_{k,n}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\mathsfbr{e}^{(21)}_{k,n}]^{\text{T}}\hskip 0.85358pt\hskip 0.85358pt[\mathsfbr{e}^{(12)}_{k,n}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\mathsfbr{e}^{(22)}_{k,n}]^{\text{T}}\big{]} is given by 𝗲k,n=[𝖾𝗄,𝗇(𝟣𝟣)𝖾𝗄,𝗇(𝟤𝟣)𝖾𝗄,𝗇(𝟤𝟤)]T\bm{\mathsfbr{e}}_{k,n}=\big{[}\mathsfbr{e}^{(11)}_{k,n}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\mathsfbr{e}^{(21)}_{k,n}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\mathsfbr{e}^{(22)}_{k,n}\big{]}^{\text{T}}. Note that the support of 𝗲k,n\bm{\mathsfbr{e}}_{k,n} corresponds to all positive-semidefinite matrices in d𝐩×d𝐩\mathbb{R}^{d_{\mathbf{p}}\times d_{\mathbf{p}}}. In what follows, we will use extent matrix 𝗘k,n\bm{\mathsfbr{E}}_{k,n} and its vector notation 𝗲k,n\bm{\mathsfbr{e}}_{k,n} interchangeably.

As in [40, 50, 4], we account for the time-varying and unknown number of extended objects by introducing potential objects k{1,,Kn}k\in\{1,\dots,K_{n}\}. The number of POs KnK_{n} is the maximum possible number of actual objects that have produced a measurement so far [4]. (Note that KnK_{n} increases with time nn.) The existence/non-existence of PO kk is modeled by the binary existence variable 𝗋𝗄,𝗇{𝟢,𝟣}\mathsfbr{r}_{k,n}\in\{0,1\} in the sense that PO kk represents an actual object if and only if rk,n=1r_{k,n}\!=\!1. Augmented PO states are denoted as 𝘆k,n=[𝘅k,nT𝗲k,nT𝗋𝗄,𝗇]T\bm{\mathsfbr{y}}_{k,n}=[\bm{\mathsfbr{x}}^{\text{T}}_{k,n}\;\bm{\mathsfbr{e}}^{\text{T}}_{k,n}\;\mathsfbr{r}_{k,n}]^{\text{T}}.

Formally, PO kk is also considered if it is non-existent, i.e., if rk,n=0r_{k,n}\!=0. The states 𝘅k,n\bm{\mathsfbr{x}}_{k,n} of non-existent POs are obviously irrelevant and have no impact on the estimation solution. Therefore, all hybrid continuous/discrete PDFs defined on augmented PO states, f(𝒚k,n)=f(𝒙k,n,𝒆k,n,rk,n)f(\bm{y}_{k,n})=f(\bm{x}_{k,n},\bm{e}_{k,n},r_{k,n}), are of the form f(𝒙k,n,𝒆k,n,0)f(\bm{x}_{k,n},\bm{e}_{k,n},0) =fk,nfd(𝒙k,n,𝒆k,n)=f_{k,n}f_{\mathrm{d}}(\bm{x}_{k,n},\bm{e}_{k,n}), where fd(𝒙k,n,𝒆k,n)f_{\mathrm{d}}(\bm{x}_{k,n},\bm{e}_{k,n}) is an arbitrary “dummy PDF” and fk,n[0,1]f_{k,n}\!\in[0,1] is the probability that the PO does not exist.111Note that representing objects states and existence variables by this type of PDFs is analogous to a multi-Bernoulli formulation in the RFS framework [15, 4, 5]. For every PO state at previous times, there is one “legacy” PO state 𝘆¯k,n\underline{\bm{\mathsfbr{y}}}_{k,n} at current time nn. The number of legacy objects and the joint legacy PO state at time nn are introduced as K¯n=Kn1\underline{K}_{n}=K_{n-1} and 𝘆¯n[𝘆¯1,nT𝘆¯K¯n,nT]T\underline{\bm{\mathsfbr{y}}}_{n}\triangleq\big{[}\underline{\bm{\mathsfbr{y}}}^{\text{T}}_{1,n}\cdots\hskip 0.85358pt\underline{\bm{\mathsfbr{y}}}^{T}_{\underline{K}_{n},n}\big{]}^{\text{T}}, respectively.

II-A State-Transition Model

The state-transition pdf for legacy PO state 𝘆¯n\underline{\bm{\mathsfbr{y}}}_{n} factorizes as

f(𝒚¯n|𝒚n1)=k=1K¯nf(𝒚¯k,n|𝒚k,n1)f(\underline{\bm{y}}_{n}|\bm{y}_{n-1})=\prod^{\underline{K}_{n}}_{k=1}f\big{(}\underline{\bm{y}}_{k,n}\big{|}\bm{y}_{k,n-1}\big{)} (1)

where the single-object augmented state-transition pdf f(𝒚¯k,n|𝒚k,n1)=f(𝒙¯k,n,𝒆¯k,n,r¯k,n|𝒙k,n1,𝒆k,n1,rk,n1)f\big{(}\underline{\bm{y}}_{k,n}\big{|}\bm{y}_{k,n-1}\big{)}=f\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n},\underline{r}_{k,n}\big{|}\bm{x}_{k,n-1},\bm{e}_{k,n-1},r_{k,n-1}\big{)} is given as follows. If PO kk does not exist at time n1n-1, i.e., 𝗋𝗄,𝗇𝟣=𝟢\mathsfbr{r}_{k,n-1}\!=0, then it does not exist at time nn either, i.e., 𝗋¯k,n=0\underline{\mathsfbr{r}}_{k,n}\!=\!0, and thus its state pdf is fd(𝒙¯k,n,𝒆¯k,n)f_{\mathrm{d}}\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n}\big{)}. This means that

f(𝒙¯k,n,𝒆¯k,n,r¯k,n|𝒙k,n1,𝒆k,n1,rk,n1=0)\displaystyle f\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n},\underline{r}_{k,n}\big{|}\bm{x}_{k,n-1},\bm{e}_{k,n-1},r_{k,n-1}\!=\!0\big{)}
={fd(𝒙¯k,n,𝒆¯k,n),r¯k,n=00,r¯k,n=1.\displaystyle\hskip 11.38109pt=\begin{cases}f_{\mathrm{d}}\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n}\big{)}\hskip 0.85358pt,&\!\!\underline{r}_{k,n}\!=\!0\\[2.84526pt] 0\hskip 0.85358pt,&\!\!\underline{r}_{k,n}\!=\!1.\end{cases} (2)

On the other hand, if PO kk exists at time n1n-1, i.e., 𝗋𝗄,𝗇𝟣=𝟣\mathsfbr{r}_{k,n-1}\!=\!1, then the probability that it still exists at time nn, i.e., 𝗋¯k,n=1\underline{\mathsfbr{r}}_{k,n}\!=\!1, is given by the survival probability psp_{\mathrm{s}}, and if it still exists at time nn, its state 𝘅¯k,n\underline{\bm{\mathsfbr{x}}}_{k,n} is distributed according to a single-object state-transition pdf f(𝒙¯k,n,𝒆¯k,n|𝒙k,n1,𝒆k,n1)f\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n}\big{|}\bm{x}_{k,n-1},\bm{e}_{k,n-1}\big{)}. Thus,

f(𝒙¯k,n,𝒆¯k,n,r¯k,n|𝒙k,n1,𝒆k,n1,rk,n1=1)\displaystyle f\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n},\underline{r}_{k,n}\big{|}\bm{x}_{k,n-1},\bm{e}_{k,n-1},r_{k,n-1}\!=\!1\big{)}
={(1ps)fd(𝒙¯k,n,𝒆¯k,n),r¯k,n=0psf(𝒙¯k,n,𝒆¯k,n|𝒙k,n1,𝒆k,n1),r¯k,n=1.\displaystyle=\begin{cases}\big{(}1\!-p_{\mathrm{s}}\big{)}\hskip 0.85358ptf_{\mathrm{d}}\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n}\big{)}\hskip 0.85358pt,&\!\!\underline{r}_{k,n}\!=\!0\\[4.2679pt] p_{\mathrm{s}}\hskip 0.85358ptf\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n}\big{|}\bm{x}_{k,n-1},\bm{e}_{k,n-1}\big{)}\hskip 0.85358pt,&\!\!\underline{r}_{k,n}\!=\!1.\end{cases} (3)

It is assumed that at time n=0n=0, the prior distributions f(𝒚k,0)f(\bm{y}_{k,0}) are statistically independent across POs kk. If no prior information is available, we have K0=0K_{0}=0.

A single-object state-transition pdf f(𝒙¯k,n,𝒆¯k,n|𝒙k,n1,f\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n}\big{|}\bm{x}_{k,n-1}, 𝒆k,n1)\bm{e}_{k,n-1}\big{)} that was found useful in many extended object tracking scenarios is given by [12]

f(𝒙¯k,n,𝒆¯k,n|𝒙k,n1,𝒆k,n1)\displaystyle f\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n}\big{|}\bm{x}_{k,n-1},\bm{e}_{k,n-1}\big{)}
=𝒩(𝒙¯k,n;𝒻(x𝓀,𝓃1),Σ𝓀,𝓃)\displaystyle={\cal{N}}\big{(}\underline{\bm{x}}_{k,n};\mathpzc{f}(\bm{x}_{k,n-1}),\bm{\varSigma}_{k,n}\big{)}\hskip 0.85358pt
×𝒲(𝑬¯k,n;qk,n,𝑽(𝒎k,n1)𝑬k,n1𝑽(𝒎k,n1)Tqk,n)\displaystyle\times{\cal{W}}\Big{(}\underline{\bm{E}}_{k,n};q_{k,n},\frac{\bm{V}(\bm{m}_{k,n-1})\hskip 0.85358pt\bm{E}_{k,n-1}\hskip 0.85358pt\bm{V}(\bm{m}_{k,n-1})^{\text{T}}}{q_{k,n}}\Big{)} (4)

where 𝒻(x𝓀1,𝓃)\mathpzc{f}(\bm{x}_{k-1,n}) is the state transition function of the kinematic state 𝘅k1,n\bm{\mathsfbr{x}}_{k-1,n}, 𝚺k,n\bm{\varSigma}_{k,n} is the kinematic driving noise covariance matrix, and 𝑽(𝒎k,n)\bm{V}(\bm{m}_{k,n}) is a rotation matrix. The degrees of freedom of the Wishart distribution determine the uncertainty of object extent prediction. A small qk,nq_{k,n} implies a large state-transition uncertainty.

Refer to caption
(a)
Refer to caption
(b)
Figure 1: Object shapes represented by extent state 𝑬k,n\bm{E}_{k,n} in a 3-D scenario. An ellipsoid (a) or cube (b) is defined by the eigenvalues λ1,𝑬k,n>λ2,𝑬k,n>λ3,𝑬k,n0\lambda_{1,\bm{E}_{k,n}}>\lambda_{2,\bm{E}_{k,n}}>\lambda_{3,\bm{E}_{k,n}}\geqslant 0 of the 3×33\times 3 symmetric, positive-semidefinite matrix 𝑬k,n\bm{E}_{k,n}. The local reference frame and thus the orientation of the object is defined by the eigenvectors 𝝀1,𝑬k,n\bm{\lambda}_{1,\bm{E}_{k,n}}, 𝝀2,𝑬k,n\bm{\lambda}_{2,\bm{E}_{k,n}}, and 𝝀3,𝑬k,n\bm{\lambda}_{3,\bm{E}_{k,n}} of 𝑬k,n\bm{E}_{k,n}.

II-B Measurement Model

At time nn, a sensor produces measurements 𝘇l,nd𝒛\bm{\mathsfbr{z}}_{l,n}\in\mathbb{R}^{d_{\bm{z}}}, l{1,l\in\{1, ,𝖬n}\dots,\mathsf{M}_{n}\}. The joint measurement vector is denoted as 𝘇n[𝘇1,nT\bm{\mathsfbr{z}}_{n}\triangleq[\bm{\mathsfbr{z}}^{\text{T}}_{1,n} 𝘇𝖬n,nT]T\cdots\hskip 0.85358pt\bm{\mathsfbr{z}}^{\text{T}}_{{\mathsf{M}_{n},n}}]^{\text{T}}. (Note that the total number of measurements 𝖬n\mathsf{M}_{n} is random.) Each measurement is either generated by a single object or is a false alarm.

Let 𝘇l,n\bm{\mathsfbr{z}}_{l,n} be a measurement generated by the kkth PO.222The fact that the PO with index kk generates a measurement implies rk,n=1r_{k,n}\!=\!1. In particular, let 𝘃k,n(l)\bm{\mathsfbr{v}}^{(l)}_{k,n} be the relative position (with respect to 𝗽k,n\bm{\mathsfbr{p}}_{k,n}) of the reflection point that generated 𝘇l,n\bm{\mathsfbr{z}}_{l,n}. The considered general nonlinear measurement model is now given by

𝘇l,n=𝒅(𝗽k,n+𝘃k,n(l))+𝘂l,n\bm{\mathsfbr{z}}_{l,n}=\bm{d}\big{(}\bm{\mathsfbr{p}}_{k,n}+\bm{\mathsfbr{v}}^{(l)}_{k,n}\hskip 0.85358pt\big{)}+\bm{\mathsfbr{u}}_{l,n}\vspace{.4mm} (5)

where 𝒅()\bm{d}(\cdot) is an arbitrary nonlinear function and 𝘂l,n𝒩(𝒖l,n;𝟎,𝚺𝒖l,n)\bm{\mathsfbr{u}}_{l,n}\sim\mathcal{N}(\bm{u}_{l,n};\bm{0},\bm{\varSigma}_{\bm{u}_{l,n}}) is the measurement noise. (Note that the subspace 𝗺k,n\bm{\mathsfbr{m}}_{k,n} remains unobserved.) This measurement model directly determines the conditional PDF f(𝒛l,n|𝒙k,n,𝒗k,n(l))f\big{(}\bm{z}_{l,n}|\bm{x}_{k,n},\bm{v}^{(l)}_{k,n}\big{)}.

We consider three geometric object shape models. The extent state 𝗘k,n=𝑬k,n\bm{\mathsfbr{E}}_{k,n}=\bm{E}_{k,n} either defines (i) the covariance matrix of a Gaussian PDF, i.e., 𝘃k,n(l)𝒩(𝒗k,n(l);𝟎,𝑬k,n2)\bm{\mathsfbr{v}}_{k,n}^{(l)}\sim\mathcal{N}\big{(}\bm{v}^{(l)}_{k,n};\bm{0},\bm{E}^{2}_{k,n}\big{)}; (ii) the elliptical support 𝒮e(𝑬k,n){\cal{S}}_{\mathrm{e}}(\bm{E}_{k,n}) of a uniform PDF, i.e., 𝘃k,n(l)𝒰(𝒗k,n(l);𝒮e(𝑬k,n))\bm{\mathsfbr{v}}_{k,n}^{(l)}\sim\mathcal{U}\big{(}\bm{v}_{k,n}^{(l)};{\cal{S}}_{\mathrm{e}}(\bm{E}_{k,n})\big{)}; or (iii) the cubical support 𝒮c(𝑬k,n){\cal{S}}_{\mathrm{c}}(\bm{E}_{k,n}) of a uniform PDF, i.e., 𝘃k,n(l)𝒰(𝒗k,n(l);𝒮c(𝑬k,n))\bm{\mathsfbr{v}}_{k,n}^{(l)}\sim\mathcal{U}\big{(}\bm{v}_{k,n}^{(l)};{\cal{S}}_{\mathrm{c}}(\bm{E}_{k,n})\big{)}.333The cubical support 𝒮c(𝑬k,n){\cal{S}}_{\mathrm{c}}(\bm{E}_{k,n}) and the elliptical support 𝒮e(𝑬k,n){\cal{S}}_{\mathrm{e}}(\bm{E}_{k,n}) are defined by the eigenvalues and eigenvectors of 𝑬k,n\bm{E}_{k,n} as shown in Fig 1. For example, let us consider a 3-D scenario and let λ1,𝑬k,n>λ2,𝑬k,n>λ3,𝑬k,n0\lambda_{1,\bm{E}_{k,n}}>\lambda_{2,\bm{E}_{k,n}}>\lambda_{3,\bm{E}_{k,n}}\geqslant 0 be the eigenvalues of the 3×33\times 3 symmetric, positive-semidefinite matrix 𝑬k,n\bm{E}_{k,n}. Length, width, and height of the cube 𝒮c(𝑬k,n){\cal{S}}_{\mathrm{c}}(\bm{E}_{k,n}) are given by λ1,𝑬k,n\lambda_{1,\bm{E}_{k,n}}, λ2,𝑬k,n\lambda_{2,\bm{E}_{k,n}}, and λ3,𝑬k,n\lambda_{3,\bm{E}_{k,n}}, respectively. Similarly, the lengths of the three principal semi-axes of the ellipsoid 𝒮e(𝑬k,n){\cal{S}}_{\mathrm{e}}(\bm{E}_{k,n}), are given by λ1,𝑬k,n\lambda_{1,\bm{E}_{k,n}}, λ2,𝑬k,n\lambda_{2,\bm{E}_{k,n}}, and λ3,𝑬k,n.\lambda_{3,\bm{E}_{k,n}}. The orientation of 𝒮c(𝑬k,n){\cal{S}}_{\mathrm{c}}(\bm{E}_{k,n}) and 𝒮e(𝑬k,n){\cal{S}}_{\mathrm{e}}(\bm{E}_{k,n}) is determined by the eigenvectors 𝝀1,𝑬k,n\bm{\lambda}_{1,\bm{E}_{k,n}},𝝀2,𝑬k,n\bm{\lambda}_{2,\bm{E}_{k,n}}, and 𝝀3,𝑬k,n\bm{\lambda}_{3,\bm{E}_{k,n}}. The eigenvalues λ1,𝑬k,n\lambda_{1,\bm{E}_{k,n}}, λ2,𝑬k,n\lambda_{2,\bm{E}_{k,n}}, and λ3,𝑬k,n\lambda_{3,\bm{E}_{k,n}} are assumed distinct. This assumption is always valid for real sensor data and objects of practical interest. The considered object shape model directly determines the conditional PDF f(𝒗k,n(l)|𝒆k,n)f\big{(}\bm{v}^{(l)}_{k,n}|\bm{e}_{k,n}\big{)}. The PDF of measurement vector 𝘇l,n\bm{\mathsfbr{z}}_{l,n} conditioned on 𝘅k,n\bm{\mathsfbr{x}}_{k,n} and 𝗲k,n\bm{\mathsfbr{e}}_{k,n} can now be obtained as

f(𝒛l,n|𝒙k,n,𝒆k,n)\displaystyle f(\bm{z}_{l,n}|\bm{x}_{k,n},\bm{e}_{k,n})
=f(𝒛l,n|𝒙k,n,𝒗k,n(l))f(𝒗k,n(l)|𝒆k,n)d𝒗k,n(l).\displaystyle\hskip 22.76219pt=\int f\big{(}\bm{z}_{l,n}|\bm{x}_{k,n},\bm{v}^{(l)}_{k,n}\big{)}\hskip 0.85358ptf\big{(}\bm{v}^{(l)}_{k,n}|\bm{e}_{k,n}\big{)}\hskip 0.85358pt\mathrm{d}\bm{v}^{(l)}_{k,n}. (6)

An important special case of this model is the additive-Gaussian case, i.e.,

𝘇l,n=𝗽k,n+𝘃k,n(l)+𝘂l,n.\bm{\mathsfbr{z}}_{l,n}=\bm{\mathsfbr{p}}_{k,n}+\bm{\mathsfbr{v}}^{(l)}_{k,n}+\bm{\mathsfbr{u}}_{l,n}.\vspace{.8mm} (7)

For extent model (i), in this case, there exist closed-form expressions for (6). In particular, the likelihood function f(𝒛l,n|𝒙k,n,𝒆k,n)f(\bm{z}_{l,n}|\bm{x}_{k,n},\bm{e}_{k,n}) can be expressed as 𝒩(𝒛l,n;𝒑k,n,𝑬k,n2+𝚺𝒖l,n)\mathcal{N}\big{(}\bm{z}_{l,n};\bm{p}_{k,n},\bm{E}^{2}_{k,n}+\bm{\varSigma}_{\bm{u}_{l,n}}\big{)}. Similarly, for models (ii) and (iii), there exists a simple approximation discussed in [56, Section 2], that also results in a closed-form of (6).

If PO kk exists (𝗋𝗄,𝗇=𝟣\mathsfbr{r}_{k,n}=1) it generates a random number of object-originated measurements 𝘇l,n\bm{\mathsfbr{z}}_{l,n}, which are distributed according to the conditional PDF f(𝒛l,n|𝒙k,n,𝒆k,n)f(\bm{z}_{l,n}|\bm{x}_{k,n},\bm{e}_{k,n}) discussed above. The number of measurements it generates is Poisson distributed with mean μm(𝘅k,n,𝗲k,n)\mu_{\mathrm{m}}(\bm{\mathsfbr{x}}_{k,n},\bm{\mathsfbr{e}}_{k,n}). For example, this Poisson distribution can be determined by a spatial measurement density ρ\rho related to the sensor resolution and by the volume or surface area of the object extent, i.e., μm(𝘅k,n,𝗲k,n)=ρ|𝗘k,n|\mu_{\mathrm{m}}(\bm{\mathsfbr{x}}_{k,n},\bm{\mathsfbr{e}}_{k,n})=\rho\hskip 0.85358pt|\bm{\mathsfbr{E}}_{k,n}|. False alarm measurements are modeled by a Poisson point process with mean μfa\mu_{\mathrm{fa}} and strictly positive PDF ffa(𝒛l,n)f_{\mathrm{fa}}(\bm{z}_{l,n}).

II-C New POs

Newly detected objects, i.e., actual objects that generated a measurement for the first time, are modeled by a Poisson point process with mean μn\mu_{\mathrm{n}} and PDF fn(𝒙¯k,n,𝒆¯k,n)f_{\mathrm{n}}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n}). Following [15, 4, 5], newly detected objects are represented by new PO states 𝘆¯k,n\overline{\bm{\mathsfbr{y}}}_{k,n}, k{1,,𝖬n}k\in\{1,\dots,\mathsf{M}_{n}\}. Each new PO state corresponds to a measurement 𝘇k,n\bm{\mathsfbr{z}}_{k,n}; 𝗋¯k,n=1\overline{\mathsfbr{r}}_{k,n}\!=\!1 means that measurement 𝘇k,n\bm{\mathsfbr{z}}_{k,n} was generated by a newly detected object. Since newly detected objects can produce more than one measurement, we define a mapping from measurements to new POs by the following rule.444A detailed derivation and discussion is provided in the supplementary material [56]. At time nn, if multiple measurements l1,,lLl_{1},\dots,l_{L} with LMnL\leqslant M_{n} are generated by the same newly detected object, we have 𝗋¯kmin,n=1\overline{\mathsfbr{r}}_{k_{\mathrm{min}},n}=1 for kmin=min(l1,,lL)k_{\mathrm{min}}=\mathrm{min}(l_{1},\dots,l_{L}) and 𝗋¯k,n=0\overline{\mathsfbr{r}}_{k,n}=0 for all k{l1,,lL}\{kmin}k\in\big{\{}l_{1},\dots,l_{L}\big{\}}\backslash\big{\{}k_{\mathrm{min}}\big{\}}. As will be further discussed in Section II-D, with this mapping every association event related to newly detected objects can be represented by exactly one configuration of new existence variables 𝗋¯k,n\overline{\mathsfbr{r}}_{k,n}, k{1,,𝖬n}k\in\{1,\dots,\mathsf{M}_{n}\}. We also introduce 𝘆¯n[𝘆¯1,nT𝘆¯𝖬nT]T\overline{\bm{\mathsfbr{y}}}_{n}\triangleq[\overline{\bm{\mathsfbr{y}}}^{\text{T}}_{1,n}\cdots\hskip 0.85358pt\overline{\bm{\mathsfbr{y}}}^{\text{T}}_{\mathsf{M}_{n}}]^{\text{T}} representing the joint vector of all new PO states. Note that at time nn, the total number of POs is given by 𝖪n=K¯n+𝖬n\mathsf{K}_{n}\!=\underline{K}_{n}\!+\mathsf{M}_{n}.

Since new POs are introduced as new measurements are incorporated, the number of PO states would grow indefinitely. Thus, for the development of a feasible method, a suboptimal pruning step is employed. This pruning step removes unlikely POs and will be further discussed in Section III-A.

II-D Data Association Uncertainty

Tracking of multiple extended objects is complicated by the data association uncertainty: it is unknown which measurement 𝘇l,n\bm{\mathsfbr{z}}_{l,n} originated from which object kk. To reduce computational complexity, following [38, 40, 4] we use measurement-oriented association variables

𝖻𝗅,𝗇{𝗄{𝟣,,𝖪¯𝗇+𝗅},if measurement l is generated by PO k𝟢,if measurement l is not generated by a PO\mathsfbr{b}_{l,n}\hskip 0.85358pt\triangleq\begin{cases}k\in\{1,\dots,\underline{K}_{n}+l\}\hskip 0.85358pt,&\begin{minipage}[t]{113.81102pt}if measurement $l$ is generated by \acs{po} $k$\end{minipage}\\[11.38109pt] 0\hskip 0.85358pt,&\begin{minipage}[t]{113.81102pt}if measurement $l$ is not generated by a \acs{po}\end{minipage}\end{cases}\vspace{.5mm}

and define the measurement-oriented association vector as 𝗯n=[𝖻𝟣,𝗇𝖻𝖬𝗇,𝗇]T\bm{\mathsfbr{b}}_{n}=[\mathsfbr{b}_{1,n}\hskip 0.85358pt\cdots\hskip 0.85358pt\mathsfbr{b}_{\mathsf{M}_{n},n}]^{\mathrm{T}}. This representation of data association makes it possible to develop scalable SPAs for object detection and tracking. Note that the maximum value in the support of 𝖻𝗅,𝗇\mathsfbr{b}_{l,n} is K¯n+l\underline{K}_{n}+l. (As discussed above, a measurement with index ll cannot be associated to a new PO with index l>ll^{\prime}>l, i.e., the event in which measurements ll^{\prime} and ll are generated by the same newly detected object is represented through the new PO ll.) This is a direct result of the mapping introduced in Section II-C. In what follows, we write 𝖻𝗅,𝗇𝗄\mathsfbr{b}_{l,n}\neq k short for 𝖻𝗅,𝗇{𝟢,𝟣,,𝖪¯𝗇+𝗅}\{𝗄}\mathsfbr{b}_{l,n}\in\{0,1,\dots,\underline{K}_{n}+l\}\backslash\{k\}.

For a better understanding of new POs and measurement-oriented association vectors, we consider simple examples for fixed Mn=3M_{n}=3 and K¯n=0\underline{K}_{n}=0. The event where all three measurements are generated by the same newly detected object, is represented by r¯1,n=1\overline{r}_{1,n}=1, r¯2,n=0\overline{r}_{2,n}=0, r¯3,n=0\overline{r}_{3,n}=0, and 𝒃n=[b1,nb2,nb3,n]T=[111]T\bm{b}_{n}=\big{[}\hskip 0.85358ptb_{1,n}\hskip 0.85358pt\hskip 0.85358ptb_{2,n}\hskip 0.85358pt\hskip 0.85358ptb_{3,n}\big{]}^{\mathrm{T}}=[1\hskip 0.85358pt\hskip 0.85358pt1\hskip 0.85358pt\hskip 0.85358pt1]^{\mathrm{T}}. Furthermore, the event where all three measurements are generated by three different newly detected objects, is represented by r¯1,n=1\overline{r}_{1,n}=1, r¯2,n=1\overline{r}_{2,n}=1, r¯3,n=1\overline{r}_{3,n}=1, and 𝒃n=[123]T\bm{b}_{n}=[1\hskip 0.85358pt\hskip 0.85358pt2\hskip 0.85358pt\hskip 0.85358pt3]^{\mathrm{T}}. Finally, the event where measurements m{2,3}m\in\{2,3\} are generated by the same newly detected object and measurement m=1m=1 is a false alarm, is represented by r¯1,n=0\overline{r}_{1,n}=0, r¯2,n=1\overline{r}_{2,n}=1, r¯3,n=0\overline{r}_{3,n}=0, and 𝒃n=[022]T\bm{b}_{n}=[0\hskip 0.85358pt\hskip 0.85358pt2\hskip 0.85358pt\hskip 0.85358pt2]^{\mathrm{T}}. Note how every event related to newly detected objects is represented by exactly one configuration of new existence variables 𝗋¯n,k\overline{\mathsfbr{r}}_{n,k}, k{1,2,3}k\in\{1,2,3\} and association vector 𝒃n\bm{b}_{n}.

Refer to caption
Figure 2: Factor graphs for EOT corresponding to the factorization (11). Factor nodes and variable nodes are depicted as boxes and circles, respectively. Messages in blue are calculated only once and messages in red are calculated multiple times due to iterative message passing. The time index nn is omitted. The following short notations are used for the messages: α¯kα¯(𝒚¯k)\underline{\alpha}_{k}\triangleq\underline{\alpha}(\underline{\bm{y}}_{k}), q¯kq¯(𝒚¯k)\overline{q}_{k}\triangleq\overline{q}(\overline{\bm{y}}_{k}), γ¯lkγ¯lk(p)(𝒚¯k)\underline{\gamma}_{lk}\triangleq\underline{\gamma}^{(p)}_{lk}(\underline{\bm{y}}_{k}), γ¯lkγ¯lk(p)(𝒚¯k)\overline{\gamma}_{lk}\triangleq\overline{\gamma}^{(p)}_{lk}(\overline{\bm{y}}_{k}), ς¯kkς¯kk(p)(𝒚¯k)\overline{\varsigma}_{kk}\triangleq\overline{\varsigma}^{(p)}_{kk}(\overline{\bm{y}}_{k}), β¯klβ¯kl(p)(bl)\underline{\beta}_{kl}\triangleq\underline{\beta}_{kl}^{(p)}(b_{l}), β¯klβ¯kl(p)(bl)\overline{\beta}_{kl}\triangleq\overline{\beta}_{kl}^{(p)}(b_{l}), ν¯lkν¯lk(p)(bl)\underline{\nu}_{lk}\triangleq\underline{\nu}^{(p)}_{lk}(b_{l}), ν¯lkν¯lk(p)(bl)\overline{\nu}_{lk}\triangleq\overline{\nu}^{(p)}_{lk}(b_{l}), α¯kl=α¯kl(p)(𝒚¯k)\overline{\alpha}_{kl}=\overline{\alpha}_{kl}^{(p)}\big{(}\overline{\bm{y}}_{k}\big{)}, and α¯kl=α¯kl(p)(𝒚¯k)\underline{\alpha}_{kl}=\underline{\alpha}_{kl}^{(p)}\big{(}\underline{\bm{y}}_{k}\big{)}.

III Problem Formulation and Factor Graph

In this section, we formulate the detection and estimation problem of interest and present the joint posterior pdf and factor graph underlying the proposed EOT method.

III-A Object Detection and State Estimation

We consider the problem of detecting legacy and new POs k{1,,K¯n+Mn}k\!\in\!\{1,\dots,\underline{K}_{n}+M_{n}\} based on the binary existence variables rk,nr_{k,n}, as well as estimation of the object states 𝘅k,n\bm{\mathsfbr{x}}_{k,n} and extents 𝗲k,n\bm{\mathsfbr{e}}_{k,n} from the observed measurement history vector 𝒛1:n=[𝒛1T𝒛nT]T\bm{z}_{1:n}=\big{[}\bm{z}_{1}^{\text{T}}\cdots\hskip 0.85358pt\bm{z}^{\text{T}}_{n}\big{]}^{\text{T}}\!. Our Bayesian approach aims to calculate the marginal posterior existence probabilities p(rk,n=1|𝒛1:n)p(r_{k,n}\!=\!1|\bm{z}_{1:n}) and the marginal posterior pdfs f(𝒙k,n,𝒆k,n|rk,n=1,𝒛1:n)f(\bm{x}_{k,n},\bm{e}_{k,n}|r_{k,n}\!=\!1,\bm{z}_{1:n}). We perform detection by comparing p(rk,n=1|𝒛1:n)p(r_{k,n}\!=\!1|\bm{z}_{1:n}) with a threshold PthP_{\text{th}}, i.e., if p(rk,n=1|𝒛1:n)>Pthp(r_{k,n}\!=\!1|\bm{z}_{1:n})>P_{\text{th}} [57, Ch. 2], PO kk is considered to exist. Estimates of 𝘅k,n\bm{\mathsfbr{x}}_{k,n} and 𝗲k,n\bm{\mathsfbr{e}}_{k,n} are then obtained for the detected objects kk by the minimum mean-square error (MMSE) estimator [57, Ch. 4]. In particular, an MMSE estimate of the kinematic state is obtained as

𝒙^k,nMMSE\displaystyle\hat{\bm{x}}^{\text{MMSE}}_{k,n} 𝒙k,nf(𝒙k,n,𝒆k,n|rk,n=1,𝒛1:n)d𝒆k,nd𝒙k,n.\displaystyle\triangleq\int\bm{x}_{k,n}\int f(\bm{x}_{k,n},\bm{e}_{k,n}|r_{k,n}\!=\!1,\bm{z}_{1:n})\mathrm{d}\bm{e}_{k,n}\hskip 0.85358pt\mathrm{d}\bm{x}_{k,n}.

Similarly, an MMSE estimate 𝒆^k,nMMSE\hat{\bm{e}}^{\text{MMSE}}_{k,n} of the extent state is obtained by replacing 𝒙k,n\bm{x}_{k,n} with 𝒆k,n\bm{e}_{k,n} in (LABEL:eq:mmse).

We can compute the marginal posterior existence probability p(rk,n=1|𝒛1:n)p(r_{k,n}\!=\!1\hskip 0.85358pt|\hskip 0.85358pt\bm{z}_{1:n}) needed for object detection as discussed above, from the marginal posterior pdf, f(𝒚k,n|𝒛1:n)=f(𝒙k,n,𝒆k,n,rk,n|𝒛1:n)f(\bm{y}_{k,n}|\bm{z}_{1:n})=f(\bm{x}_{k,n},\bm{e}_{k,n},r_{k,n}|\bm{z}_{1:n}), as

p(rk,n=1|𝒛1:n)\displaystyle p(r_{k,n}\!=\!1|\bm{z}_{1:n})
=f(𝒙k,n,𝒆k,n,rk,n=1|𝒛1:n)d𝒙k,nd𝒆k,n.\displaystyle\hskip 14.22636pt=\int\int f(\bm{x}_{k,n},\bm{e}_{k,n},r_{k,n}\!=\!1|\bm{z}_{1:n})\hskip 0.85358pt\mathrm{d}\bm{x}_{k,n}\mathrm{d}\bm{e}_{k,n}. (9)

Note that p(rk,n=1|𝒛1:n)p(r_{k,n}\!=\!1|\bm{z}_{1:n}) is also needed for the suboptimal pruning step discussed in Section V-D.

Similarly, we can calculate the marginal posterior pdf f(𝒙k,n,𝒆k,n|rk,n=1,𝒛1:n)f(\bm{x}_{k,n},\bm{e}_{k,n}|r_{k,n}\!=\!1,\bm{z}_{1:n}) underlying MMSE state estimation (see (LABEL:eq:mmse)) from f(𝒙k,n,𝒆k,n,rk,n|𝒛1:n)f(\bm{x}_{k,n},\bm{e}_{k,n},r_{k,n}|\bm{z}_{1:n}) according to

f(𝒙k,n,𝒆k,n|rk,n=1,𝒛1:n)=f(𝒙k,n,𝒆k,n,rk,n=1|𝒛1:n)p(rk,n=1|𝒛1:n).\displaystyle f(\bm{x}_{k,n},\bm{e}_{k,n}\hskip 0.85358pt|\hskip 0.85358ptr_{k,n}\!=\!1,\bm{z}_{1:n})=\frac{f(\bm{x}_{k,n},\bm{e}_{k,n},r_{k,n}\!=\!1|\bm{z}_{1:n})}{p(r_{k,n}\!=\!1|\bm{z}_{1:n})}\,.

For this reason, the fundamental task is to compute the pdf f(𝒚k,n|𝒛1:n)=f(𝒙k,n,𝒆k,n,rk,n|𝒛1:n)f(\bm{y}_{k,n}|\bm{z}_{1:n})=f(\bm{x}_{k,n},\bm{e}_{k,n},r_{k,n}|\bm{z}_{1:n}). This pdf is a marginal density of f(𝒚0:n,𝒃1:n|𝒛1:n)f(\bm{y}_{0:n},\bm{b}_{1:n}|\bm{z}_{1:n}), which involves all the augmented states and measurement-oriented association variables up to the current time nn.

The main problem to be solved is to find a computationally feasible recursive (sequential) calculation of marginal posterior PDFs f(𝒚k,n|𝒛1:n)f(\bm{y}_{k,n}|\bm{z}_{1:n}). By performing message passing by means of the SPA rules [33] on the factor graph that represents our statistical model discussed in Section II, approximations (“beliefs”) f~(𝒚k,n)\tilde{f}(\bm{y}_{k,n}) of this marginal posterior pdfs can be obtained in an efficient way for all legacy and new POs.

III-B The Factor Graph

We now assume that the measurements 𝒛1:n\bm{z}_{1:n} are observed and thus fixed. By using common assumptions [2, 3, 4, 5, 1], the joint posterior PDF of 𝘆0:n\bm{\mathsfbr{y}}_{0:n} and 𝗯1:n\bm{\mathsfbr{b}}_{1:n}, conditioned on 𝒛1:n\bm{z}_{1:n} is given by555A detailed derivation of this joint posterior PDF is provided in [56, Section 1].

f(𝒚0:n,𝒃1:n|𝒛1:n)\displaystyle f(\bm{y}_{0:n},\bm{b}_{1:n}|\bm{z}_{1:n})
(=1K0f(𝒚,0))n=1n(k=1Mnq¯(𝒚¯k,n)gk(𝒚¯k,n,bk,n;𝒛k,n)\displaystyle\hskip 2.84526pt\propto\bigg{(}\prod^{K_{0}}_{\ell=1}f(\bm{y}_{\ell,0})\bigg{)}\prod^{n}_{n^{\prime}=1}\bigg{(}\prod^{M_{n^{\prime}}}_{k=1}\overline{q}(\overline{\bm{y}}_{k,n^{\prime}})\hskip 0.85358pt\hskip 0.85358ptg_{k}\big{(}\overline{\bm{y}}_{k,n^{\prime}},b_{k,n^{\prime}};\bm{z}_{k,n^{\prime}}\big{)}
×l=k+1MnhK¯n+k(𝒚¯k,n,bl,n;𝒛l,n))\displaystyle\hskip 12.23468pt\times\prod^{M_{n^{\prime}}}_{l=k+1}\hskip 0.85358pth_{\underline{K}_{n^{\prime}}+k}\big{(}\overline{\bm{y}}_{k,n^{\prime}},b_{l,n^{\prime}};\bm{z}_{l,n^{\prime}}\big{)}\bigg{)}
×k=1K¯nq¯(𝒚¯k,n|𝒚k,n1)l=1Mnhk(𝒚¯k,n,bl,n;𝒛l,n)\displaystyle\hskip 12.23468pt\times\prod^{\underline{K}_{n^{\prime}}}_{k^{\prime}=1}\underline{q}\big{(}\underline{\bm{y}}_{k^{\prime},n^{\prime}}|\bm{y}_{k^{\prime},n^{\prime}-1}\big{)}\prod^{M_{n^{\prime}}}_{l^{\prime}=1}h_{k^{\prime}}\big{(}\underline{\bm{y}}_{k^{\prime},n^{\prime}},b_{l^{\prime},n^{\prime}};\bm{z}_{l^{\prime},n^{\prime}}\big{)} (11)

where we introduced the functions hk(𝒚k,n,bl,n;𝒛l,n)h_{k}\big{(}\bm{y}_{k,n},b_{l,n};\bm{z}_{l,n}\big{)}, gk(𝒚¯k,n,bk,n;𝒛k,n)g_{k}\big{(}\overline{\bm{y}}_{k,n},b_{k,n};\bm{z}_{k,n}\big{)}, q¯(𝒚¯k,n|𝒚k,n1)\underline{q}\big{(}\underline{\bm{y}}_{k,n}|\bm{y}_{k,n-1}\big{)}, and q¯(𝒚¯k,n)\overline{q}\big{(}\overline{\bm{y}}_{k,n}\big{)} that will be discussed next.

The pseudo likelihood functions hk(𝒚k,n,bl,n;𝒛l,n)=hk(𝒙k,n,𝒆k,n,rk,n,bl,n;𝒛l,n)h_{k}\big{(}\bm{y}_{k,n},b_{l,n};\bm{z}_{l,n}\big{)}=h_{k}\big{(}\bm{x}_{k,n},\bm{e}_{k,n},r_{k,n},b_{l,n};\bm{z}_{l,n}\big{)} and gk(𝒚¯k,n,bk,n;𝒛k,n)=gk(𝒙¯k,n,𝒆¯k,n,r¯k,n,bk,n;𝒛k,n)g_{k}\big{(}\overline{\bm{y}}_{k,n},b_{k,n};\bm{z}_{k,n}\big{)}=g_{k}\big{(}\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n},\overline{r}_{k,n},b_{k,n};\bm{z}_{k,n}\big{)} are given by

hk(𝒙k,n,𝒆k,n,1,bl,n;𝒛l,n)\displaystyle h_{k}\big{(}\bm{x}_{k,n},\bm{e}_{k,n},1,b_{l,n};\bm{z}_{l,n}\big{)}
{μm(𝒙k,n,𝒆k,n)f(𝒛l,n|𝒙k,n,𝒆k,n)μfaffa(𝒛l,n),bl,n=k1,bl,nk\displaystyle\hskip 36.98857pt\triangleq\begin{cases}\frac{\mu_{\mathrm{m}}(\bm{x}_{k,n},\bm{e}_{k,n})f(\bm{z}_{l,n}|\bm{x}_{k,n},\bm{e}_{k,n})}{\mu_{\mathrm{fa}}f_{\mathrm{fa}}(\bm{z}_{l,n})}\hskip 0.85358pt,&b_{l,n}=k\\[2.84526pt] 1\hskip 0.85358pt,&b_{l,n}\neq k\end{cases} (12)

and hk(𝒙k,n,𝒆k,n,0,bl,n;𝒛l,n)1δ(bl,nk)h_{k}\big{(}\bm{x}_{k,n},\bm{e}_{k,n},0,b_{l,n};\bm{z}_{l,n}\big{)}\triangleq 1-\delta\big{(}b_{l,n}-k\big{)} as well as

gk(𝒙¯k,n,𝒆¯k,n,1,bk,n;𝒛k,n)\displaystyle g_{k}\big{(}\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n},1,b_{k,n};\bm{z}_{k,n}\big{)}
{μm(𝒙¯k,n,𝒆¯k,n)f(𝒛k,n|𝒙¯k,n,𝒆¯k,n)μfaffa(𝒛k,n),bk,n=K¯n+k0,bk,nK¯n+k\displaystyle\triangleq\begin{cases}\frac{\mu_{\mathrm{m}}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n})\hskip 0.85358ptf(\bm{z}_{k,n}|\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n})}{\mu_{\mathrm{fa}}f_{\mathrm{fa}}(\bm{z}_{k,n})}\hskip 0.85358pt,&b_{k,n}=\underline{K}_{n}+k\\[2.84526pt] 0\hskip 0.85358pt,&b_{k,n}\neq\underline{K}_{n}+k\end{cases} (13)

and gk(𝒙¯k,n,𝒆¯k,n,0,bk,n;𝒛k,n)1δ(bk,n(K¯n+k))g_{k}\big{(}\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n},0,b_{k,n};\bm{z}_{k,n}\big{)}\triangleq 1-\delta\big{(}b_{k,n}-(\underline{K}_{n}+k)\big{)}. Note that the second line in (13) is zero because, as discussed in Section II-D, the new PO with index kk exists (r¯k,n=1\overline{r}_{k,n}=1) if and only if it produced measurement kk.

Furthermore, the factors containing prior distributions for new POs q¯(𝒚¯k,n)=q¯(𝒙¯k,n,𝒆¯k,n,r¯k,n)\overline{q}(\overline{\bm{y}}_{k,n})=\overline{q}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n},\overline{r}_{k,n}), k{1,,Mn}k\in\{1,\dots,M_{n}\} are given by

q¯(𝒙¯k,n,𝒆¯k,n,r¯k,n)\displaystyle\overline{q}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n},\overline{r}_{k,n})
{μnfn(𝒙¯k,n,𝒆¯k,n)μm(x¯𝓀,𝓃,e¯𝓀,𝓃)1μm(x¯𝓀,𝓃,e¯𝓀,𝓃),r¯k,n=1fd(𝒙¯k,n,𝒆¯k,n),r¯k,n=0\displaystyle\hskip 17.07164pt\,\triangleq\begin{cases}\mu_{\mathrm{n}}f_{\mathrm{n}}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n})\frac{\mathpzc{e}^{-\mu_{\mathrm{m}}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n})}}{1-\mathpzc{e}^{-\mu_{\mathrm{m}}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n})}}\hskip 0.85358pt,&\overline{r}_{k,n}=1\\[2.84526pt] f_{\mathrm{d}}\big{(}\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n}\big{)}\hskip 0.85358pt,&\overline{r}_{k,n}=0\end{cases}

and the pseudo transition functions (cf. (2) and (3)) for legacy POs q¯(𝒚¯k,n|𝒚k,n1)q¯(𝒙¯k,n,𝒆¯k,n,r¯k,n|𝒙k,n1,𝒆k,n1,\underline{q}\big{(}\underline{\bm{y}}_{k,n}|\bm{y}_{k,n-1}\big{)}\triangleq\underline{q}\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n},\underline{r}_{k,n}|\bm{x}_{k,n-1},\bm{e}_{k,n-1}, rk,n1)r_{k,n-1}\big{)} are given by q¯(𝒙¯k,n,𝒆¯k,n,r¯k,n=1|𝒙k,n1,𝒆k,n1,\underline{q}\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n},\underline{r}_{k,n}=1|\bm{x}_{k,n-1},\bm{e}_{k,n-1}, rk,n1)=μm(x¯𝓀,𝓃,e¯𝓀,𝓃)𝒻(x¯𝓀,𝓃,e¯𝓀,𝓃,𝓇¯𝓀,𝓃=1|x𝓀,𝓃1,r_{k,n-1}\big{)}=\mathpzc{e}^{-\mu_{\mathrm{m}}(\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n})}f\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n},\underline{r}_{k,n}=1|\bm{x}_{k,n-1}, 𝒆k,n1,rk,n1)\bm{e}_{k,n-1},r_{k,n-1}\big{)} and q¯(𝒙¯k,n,𝒆¯k,n,r¯k,n=0|𝒙k,n1,𝒆k,n1,\underline{q}\big{(}\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n},\underline{r}_{k,n}=0|\bm{x}_{k,n-1},\bm{e}_{k,n-1}, rk,n1)=f(𝒙¯k,n,r_{k,n-1}\big{)}=f\big{(}\underline{\bm{x}}_{k,n}, 𝒆¯k,n,\underline{\bm{e}}_{k,n}, r¯k,n=0|𝒙k,n1,𝒆k,n1,rk,n1)\underline{r}_{k,n}=0\hskip 0.85358pt|\hskip 0.85358pt\bm{x}_{k,n-1},\bm{e}_{k,n-1},r_{k,n-1}\big{)}.

A detailed derivation of this factor graph is provided in the supplementary material [56]. The factor graph representing factorization (11) is shown in Fig. 2. An interesting observation is that this factor graph has the same structure as a conventional multi-scan tracking problem [4, 58] with MM scans. (Here, every measurement is considered an individual scan.) In what follows, we consider a single time step and remove the time index nn for the sake of readability.

IV The Proposed Sum-Product Algorithm

Since our factor graph in Fig. 2 has cycles, we have to decide on a specific order of message computation [33]. We choose this order according to the following rules: (i) messages are not sent backward in time666This is equivalent to a joint filtering approach with the assumption that the PO states are conditionally independent given the past measurements. [40, 4]; and (ii) at each time step messages are computed and processed in parallel. With these rules, the generic message passing equations of the SPA [33] yield the following operations at each time step. The corresponding messages are shown in Fig. 2.

IV-A Prediction Step

First, a prediction step is performed for all legacy POs kK¯k\in\underline{K}. Based on SPA rule [33, Eq. (6)], we obtain

α¯(𝒙¯k,𝒆¯k,r¯k)\displaystyle\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}) =rk{0,1}q¯(𝒙¯k,𝒆¯k,r¯k|𝒙k,𝒆k,rk)\displaystyle=\sum_{r^{-}_{k}\in\{0,1\}}\int\int\underline{q}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}\hskip 0.85358pt|\hskip 0.85358pt\bm{x}^{-}_{k},\bm{e}^{-}_{k},r^{-}_{k})
×f~(𝒙k,𝒆k,rk)d𝒙kd𝒆k\displaystyle\hskip 42.67912pt\times\tilde{f}(\bm{x}^{-}_{k},\bm{e}^{-}_{k},r^{-}_{k})\hskip 0.85358pt\mathrm{d}\bm{x}^{-}_{k}\hskip 0.85358pt\mathrm{d}\bm{e}^{-}_{k} (14)

where f~(𝒙k,𝒆k,rk)\tilde{f}(\bm{x}^{-}_{k},\bm{e}^{-}_{k},r^{-}_{k}) is the belief that was calculated at the previous time step. Recall that the integration d𝒆k\int\mathrm{d}\bm{e}^{-}_{k} in (14) is performed over the support of 𝒆k,\bm{e}^{-}_{k}, which corresponds to all positive-semidefinite matrices 𝑬k\bm{E}^{-}_{k}.

Next, we use the expression for q¯(𝒙¯k,𝒆¯k,r¯k|\underline{q}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}\hskip 0.85358pt| 𝒙k,𝒆k,rk)\bm{x}^{-}_{k},\bm{e}^{-}_{k},r^{-}_{k}) as introduced in Section III-B and in turn (2) and (3) for f(𝒙¯k,𝒆¯k,r¯k|𝒙k,𝒆k,rk)f(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}\hskip 0.85358pt|\bm{x}^{-}_{k},\bm{e}^{-}_{k},r^{-}_{k}). In this way, we obtain the following expressions for (14)

α¯(𝒙¯k,𝒆¯k,r¯k=1)\displaystyle\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1) =psμm(x¯𝓀,𝓃,e¯𝓀,𝓃)𝒻(x¯𝓀,e¯𝓀|x𝓀,e𝓀)\displaystyle=p_{\hskip 0.85358pt\mathrm{s}}\hskip 0.85358pt\hskip 0.85358pt\mathpzc{e}^{-\mu_{\mathrm{m}}(\underline{\bm{x}}_{k,n},\underline{\bm{e}}_{k,n})}\int\int f(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k}|\bm{x}^{-}_{k},\bm{e}^{-}_{k})
×f~(𝒙k,𝒆k,1)d𝒙kd𝒆k\displaystyle\hskip 28.45274pt\times\tilde{f}(\bm{x}^{-}_{k},\bm{e}^{-}_{k},1)\hskip 0.85358pt\mathrm{d}\bm{x}^{-}_{k}\hskip 0.85358pt\mathrm{d}\bm{e}^{-}_{k} (15)

and α¯(𝒙¯k,𝒆¯k,r¯k=0)=α¯knfd(𝒙¯k,𝒆¯k)\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=0)=\underline{\alpha}^{\mathrm{n}}_{k}f_{\mathrm{d}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k}) with

α¯kn\displaystyle\underline{\alpha}^{\mathrm{n}}_{k} f~k+(1ps)f~(𝒙k,𝒆k,1)d𝒙kd𝒆k\displaystyle\triangleq\hskip 0.85358pt\tilde{f}^{-}_{k}+\big{(}1\!-p_{\hskip 0.85358pt\mathrm{s}}\big{)}\int\int\!\tilde{f}(\bm{x}^{-}_{k},\bm{e}^{-}_{k},1)\,\mathrm{d}\bm{x}^{-}_{k}\mathrm{d}\bm{e}^{-}_{k}
=f~k+(1ps)(1f~k).\displaystyle=\hskip 0.85358pt\tilde{f}^{-}_{k}+\big{(}1\!-p_{\hskip 0.85358pt\mathrm{s}}\big{)}\big{(}1-\tilde{f}^{-}_{k}\big{)}. (16)

We note that f~k=f~(𝒙k,𝒆k,0)d𝒙kd𝒆k\tilde{f}^{-}_{k}=\int\int\tilde{f}(\bm{x}^{-}_{k},\bm{e}^{-}_{k},0)\hskip 0.85358pt\mathrm{d}\bm{x}^{-}_{k}\mathrm{d}\bm{e}^{-}_{k} approximates the probability of non-existence of legacy PO kk at the previous time step. After the prediction step, the iterative message passing is performed. For future reference, we also introduce α¯kα¯k(𝒙¯k,𝒆¯k,r¯k=1)d𝒙¯kd𝒆¯k+α¯kn\underline{\alpha}_{k}\triangleq\int\int\underline{\alpha}_{k}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1)\hskip 0.85358pt\mathrm{d}\underline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\underline{\bm{e}}_{k}+\underline{\alpha}^{\mathrm{n}}_{k}.

IV-B Iterative Message Passing

At iteration p{1,,P}p\in\{1,\dots,P\}, the following operations are computed for all legacy and new POs.

IV-B1 Measurement Evaluation

The messages βkl(p)(bl)\beta^{(p)}_{kl}(b_{l}), k{1,,K¯}k\in\{1,\dots,\underline{K}\}, l{1,,M}l\in\{1,\dots,M\} sent from factor nodes hk(𝒚¯k,bl;𝒛l)=hk(𝒙¯k,𝒆¯k,r¯k,bl;𝒛l)h_{k}\big{(}\underline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)}=h_{k}\big{(}\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k},b_{l};\bm{z}_{l}\big{)} to variable nodes blb_{l} can be calculated as discussed next. First, by using the SPA rule [33, Eq. (6)], we obtain

B¯kl(p)(bl)\displaystyle\underline{B}_{kl}^{(p)}(b_{l}) =r¯k{0,1}hk(𝒙¯k,𝒆¯k,r¯k,bl;𝒛l)\displaystyle=\sum_{\underline{r}_{k}\in\{0,1\}}\int\int h_{k}\big{(}\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k},b_{l};\bm{z}_{l}\big{)}
×α¯kl(p)(𝒙¯k,𝒆¯k,r¯k)d𝒙¯kd𝒆¯k.\displaystyle\hskip 32.72066pt\times\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k})\hskip 0.85358pt\mathrm{d}\underline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\underline{\bm{e}}_{k}. (17)

Note that for p=1p=1, we set α¯kl(1)(𝒙¯k,𝒆¯k,r¯k)α¯(𝒙¯k,𝒆¯k,r¯k)\underline{\alpha}_{kl}^{(1)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k})\triangleq\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}), and for p>1p>1 we use α¯kl(p)(𝒙¯k,𝒆¯k,r¯k)\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}) (represented by α¯kl(p)\underline{\alpha}_{kl}^{(p)} (𝒙¯k,𝒆¯k,r¯k=1)(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1) and α¯kln(p)\underline{\alpha}^{\mathrm{n}(p)}_{kl}) calculated in Section IV-B4. By using the expressions for hk(𝒙¯k,𝒆¯k,r¯k,bl;𝒛l)h_{k}\big{(}\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k},b_{l};\bm{z}_{l}\big{)} introduced in Section III-B, (17) can be further simplified, i.e.,

B¯kl(p)(bl=k)\displaystyle\underline{B}_{kl}^{(p)}(b_{l}=k) =1μfaffa(𝒛l)μm(𝒙¯k,𝒆¯k)f(𝒛l|𝒙¯k,𝒆¯k)\displaystyle=\frac{1}{\mu_{\mathrm{fa}}\hskip 0.85358ptf_{\mathrm{fa}}(\bm{z}_{l})}\int\int\mu_{\mathrm{m}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})f(\bm{z}_{l}|\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})
×α¯kl(p)(𝒙¯k,𝒆¯k,r¯k=1)d𝒙¯kd𝒆¯k\displaystyle\hskip 11.38109pt\times\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1)\hskip 0.85358pt\mathrm{d}\underline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\underline{\bm{e}}_{k} (18)

and B¯kl(p)(blk)=α¯kl(p)\underline{B}_{kl}^{(p)}(b_{l}\neq k)=\underline{\alpha}_{kl}^{(p)} with α¯kl(p)α¯kl(p)(𝒙¯k,𝒆¯k,r¯k=1)d𝒙¯kd𝒆¯k+α¯kln(p)\underline{\alpha}_{kl}^{(p)}\triangleq\int\int\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1)\hskip 0.85358pt\mathrm{d}\underline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\underline{\bm{e}}_{k}+\underline{\alpha}^{\mathrm{n}(p)}_{kl}. After multiplying these two expressions by 1/α¯kl(p)1/\underline{\alpha}_{kl}^{(p)}, the message β¯kl(p)(bl)\underline{\beta}_{kl}^{(p)}(b_{l}) is given by777Multiplying SPA messages by a constant factor does not alter the resulting approximate marginal posterior PDFs [33].

β¯kl(p)(bl=k)\displaystyle\underline{\beta}_{kl}^{(p)}(b_{l}=k) =1μfaffa(𝒛l)α¯kl(p)μm(𝒙¯k,𝒆¯k)f(𝒛l|𝒙¯k,𝒆¯k)\displaystyle=\frac{1}{\mu_{\mathrm{fa}}\hskip 0.85358ptf_{\mathrm{fa}}(\bm{z}_{l})\hskip 0.85358pt\underline{\alpha}_{kl}^{(p)}}\int\int\mu_{\mathrm{m}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})f(\bm{z}_{l}|\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})
×α¯kl(p)(𝒙¯k,𝒆¯k,r¯k=1)d𝒙¯kd𝒆¯k\displaystyle\hskip 21.33955pt\times\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1)\hskip 0.85358pt\mathrm{d}\underline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\underline{\bm{e}}_{k} (19)

and β¯kl(p)(blk)=1\underline{\beta}_{kl}^{(p)}(b_{l}\neq k)=1. This final normalization step makes it possible to perform data association and measurement update discussed in the next two sections more efficiently. For future reference, we introduce the short notation β¯kl(p)β¯kl(p)(bl=k)\underline{\beta}_{kl}^{(p)}\triangleq\underline{\beta}_{kl}^{(p)}(b_{l}=k) for all k{1,,K¯}k\in\{1,\dots,\underline{K}\}, l{1,,M}l\in\{1,\dots,M\}.

The messages β¯kl(p)(bl)\overline{\beta}_{kl}^{(p)}(b_{l}), k{1,,M1}k\in\{1,\dots,M-1\}, l{k+1,l\in\{k+1, ,M}\dots,M\} sent from factor nodes hk(𝒚¯k,bl;𝒛l)h_{k}\big{(}\overline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)} to variable nodes blb_{l} can be obtained similarly. In particular, by replacing α¯kl(p)(𝒙¯k,𝒆¯k,r¯k=1)\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1) and α¯kl(p)\underline{\alpha}_{kl}^{(p)} in (19) by α¯kl(p)(𝒙¯k,𝒆¯k,r¯k=1)\overline{\alpha}_{kl}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}=1) and α¯kl(p)\overline{\alpha}_{kl}^{(p)}, respectively, we obtain β¯kl(p)(bl=K¯+k)\overline{\beta}_{kl}^{(p)}(b_{l}=\underline{K}+k). Furthermore, we have β¯kl(p)(blK¯+k)=1\overline{\beta}_{kl}^{(p)}(b_{l}\neq\underline{K}+k)=1. Note that for p=1p=1 we set α¯kl(1)(𝒙¯k,𝒆¯k,r¯k)q(𝒙¯k,𝒆¯k,r¯k)\overline{\alpha}_{kl}^{(1)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k})\triangleq q(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}) and for p>1p>1 we again calculate α¯kl(p)(𝒙¯k,𝒆¯k,r¯k)\overline{\alpha}_{kl}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}) as discussed in Section IV-B4.

Finally, the messages β¯kk(p)(bk)\overline{\beta}_{kk}^{(p)}(b_{k}), k{1,,M}k\in\{1,\dots,M\} sent from factor nodes gk(𝒚¯k,bk;𝒛k)=gk(𝒙¯k,𝒆¯k,𝒓¯k,bk;𝒛k)g_{k}\big{(}\overline{\bm{y}}_{k},b_{k};\bm{z}_{k}\big{)}=g_{k}\big{(}\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{\bm{r}}_{k},b_{k};\bm{z}_{k}\big{)} to variable nodes bkb_{k} are calculated by also replacing hk(𝒙¯k,𝒆¯k,r¯k,bl;𝒛l)h_{k}\big{(}\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k},b_{l};\bm{z}_{l}\big{)} in (17) by gk(𝒙¯k,𝒆¯k,r¯k,bk;𝒛k)g_{k}\big{(}\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k},b_{k};\bm{z}_{k}\big{)} and performing similar simplification steps. In particular, we get α¯kkn(p)α¯kk(p)(𝒙¯k,𝒆¯k,r¯k=0)d𝒙¯kd𝒆¯k\overline{\alpha}_{kk}^{\hskip 0.85358pt\mathrm{n}(p)}\triangleq\int\int\overline{\alpha}_{kk}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}=0)\hskip 0.85358pt\mathrm{d}\overline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\overline{\bm{e}}_{k} for bkK¯+kb_{k}\neq\underline{K}+k and a result equal to (18) (with ll replaced by kk and α¯kl(p)(𝒙¯k,𝒆¯k,r¯k)\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}) replaced by α¯kk(p)(𝒙¯k,𝒆¯k,r¯k)\overline{\alpha}_{kk}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k})) for bkkb_{k}\neq k. After multiplying both expressions by 1/α¯kkn(p)1/\overline{\alpha}_{kk}^{\hskip 0.85358pt\mathrm{n}(p)}, the message β¯kk(p)(bk)\overline{\beta}_{kk}^{(p)}(b_{k}) finally reads

β¯kk(p)(bk=K¯+k)\displaystyle\overline{\beta}_{kk}^{(p)}(b_{k}=\underline{K}+k) =1μfaffa(𝒛k)α¯kkn(p)f(𝒛k|𝒙¯k,𝒆¯k)\displaystyle=\frac{1}{\mu_{\mathrm{fa}}\hskip 0.85358ptf_{\mathrm{fa}}(\bm{z}_{k})\hskip 0.85358pt\overline{\alpha}_{kk}^{\hskip 0.85358pt\mathrm{n}(p)}}\int\int f(\bm{z}_{k}|\overline{\bm{x}}_{k},\overline{\bm{e}}_{k})
×μm(𝒙¯k,𝒆¯k)α¯kk(p)(𝒙¯k,𝒆¯k,r¯k=1)d𝒙¯kd𝒆¯k\displaystyle\times\mu_{\mathrm{m}}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k})\hskip 0.85358pt\overline{\alpha}_{kk}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}=1)\hskip 0.85358pt\mathrm{d}\overline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\overline{\bm{e}}_{k}

and β¯kk(p)(bkK¯+k)=1\overline{\beta}_{kk}^{(p)}(b_{k}\neq\underline{K}+k)=1. For future reference, we again introduce the short notation β¯kl(p)β¯kl(p)(bl=K¯+k)\overline{\beta}_{kl}^{(p)}\triangleq\overline{\beta}_{kl}^{(p)}(b_{l}=\underline{K}+k) for all k{1,,M}k\in\{1,\dots,M\}, l{k,,M}l\in\{k,\dots,M\}

IV-B2 Data Association

The messages ν¯lk(p)(bl)\underline{\nu}^{(p)}_{lk}(b_{l}) sent from variable nodes blb_{l}, l{1,,M}l\in\{1,\dots,M\} to factor nodes hk(𝒚k,bl;𝒛l)h_{k}\big{(}\bm{y}_{k},b_{l};\bm{z}_{l}\big{)}, k{1,,K¯}k\in\{1,\dots,\underline{K}\}, can be expressed as [33, Eq. (5)]

ν¯lk(p)(bl)=(k=1kkK¯β¯kl(p)(bl))=1lβ¯l(p)(bl).\displaystyle\underline{\nu}^{(p)}_{lk}(b_{l})=\Bigg{(}\hskip 0.85358pt\prod^{\underline{K}}_{\begin{subarray}{c}k^{\prime}=1\\ k^{\prime}\neq k\end{subarray}}\underline{\beta}^{(p)}_{k^{\prime}l}\big{(}b_{l}\big{)}\Bigg{)}\hskip 0.85358pt\prod^{l}_{\ell=1}\hskip 0.85358pt\hskip 0.85358pt\overline{\beta}^{(p)}_{\ell l}\big{(}b_{l}\big{)}. (21)

By using (19) and (LABEL:eq:Beta1d) in (21), we obtain ν¯lk(p)(bl=0)=ν¯lk(p)(bl=k)=1\underline{\nu}^{(p)}_{lk}(b_{l}=0)=\underline{\nu}^{(p)}_{lk}(b_{l}=k)=1, ν¯lk(p)(bl=k)=β¯kl(p)\underline{\nu}^{(p)}_{lk}(b_{l}=k^{\prime})=\underline{\beta}^{(p)}_{k^{\prime}l}, k{1,,K¯}\{k}k^{\prime}\in\{1,\dots,\underline{K}\}\backslash\{k\}, and ν¯lk(p)(bl=K¯+)=β¯l(p)\underline{\nu}^{(p)}_{lk}(b_{l}=\underline{K}+\ell)=\overline{\beta}^{(p)}_{\ell l}, {1,,l}\ell\in\{1,\dots,l\}.

A similar expression is obtained for the messages ν¯lk(p)(bl)\overline{\nu}^{(p)}_{lk}(b_{l}) sent from variable nodes blb_{l}, l{1,,M}l\in\{1,\dots,M\} to factor nodes hK¯+k(𝒚k,bl;𝒛l)h_{\underline{K}+k}\big{(}\bm{y}_{k},b_{l};\bm{z}_{l}\big{)}, k{1,,l1}k\in\big{\{}1,\dots,l-1\big{\}} and factor node gk(𝒚¯k,g_{k}\big{(}\underline{\bm{y}}_{k}, bl;𝒛k)b_{l};\bm{z}_{k}\big{)}, k=lk=l, i.e.,

ν¯lk(p)(bl)=(=1K¯β¯l(p)(bl))k=1kklβ¯kl(p)(bl).\displaystyle\overline{\nu}^{(p)}_{lk}(b_{l})=\Bigg{(}\hskip 0.85358pt\prod^{\underline{K}}_{\begin{subarray}{c}\ell=1\end{subarray}}\hskip 0.85358pt\hskip 0.85358pt\underline{\beta}^{(p)}_{\ell l}\big{(}b_{l}\big{)}\Bigg{)}\hskip 0.85358pt\prod^{l}_{\begin{subarray}{c}k^{\prime}=1\\ k^{\prime}\neq k\end{subarray}}\hskip 0.85358pt\hskip 0.85358pt\overline{\beta}^{(p)}_{k^{\prime}l}\big{(}b_{l}\big{)}. (22)

By again using (19) and (LABEL:eq:Beta1d) in (22), we obtain ν¯lk(p)(bl=0)=ν¯lk(p)(bl=K¯+k)=1\overline{\nu}^{(p)}_{lk}(b_{l}=0)=\overline{\nu}^{(p)}_{lk}(b_{l}=\underline{K}+k)=1, ν¯lk(p)(bl=k)=β¯kl(p)\overline{\nu}^{(p)}_{lk}(b_{l}=k^{\prime})=\underline{\beta}^{(p)}_{k^{\prime}l}, k{1,,K¯}k^{\prime}\in\{1,\dots,\underline{K}\}, and ν¯lk(p)(bl=K¯+)=β¯l(p)\overline{\nu}^{(p)}_{lk}(b_{l}=\underline{K}+\ell)=\overline{\beta}^{(p)}_{\ell l}, {1,,l}\{k}\ell\in\{1,\dots,l\}\backslash\{k\}.

IV-B3 Measurement Update

Next, the messages sent from factor nodes h(𝒚¯k,bl;𝒛l)h\big{(}\underline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)}, k{1,,K¯}k\in\{1,\dots,\underline{K}\}, l{1,l\in\{1, ,M}\dots,M\} to variable nodes 𝒚¯k\underline{\bm{y}}_{k} are calculated as [33, Eq. (6)]

γ¯lk(p)(𝒚¯k)\displaystyle\underline{\gamma}^{(p)}_{lk}(\underline{\bm{y}}_{k}) =bl=0K¯+lh(𝒚¯k,bl;𝒛l)ν¯lk(p)(bl).\displaystyle=\sum^{\underline{K}+l}_{b_{l}=0}h\big{(}\underline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)}\hskip 0.85358pt\hskip 0.85358pt\underline{\nu}_{lk}^{(p)}(b_{l}). (23)

By using again the expression for h(𝒚¯k,bl;𝒛l)h\big{(}\underline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)} introduced in Section III-B, these messages γ¯lk(p)(𝒚¯k)γ¯lk(p)(𝒙¯k,𝒆¯k,r¯k)\underline{\gamma}^{(p)}_{lk}(\underline{\bm{y}}_{k})\triangleq\underline{\gamma}^{(p)}_{lk}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}) can be further simplified as

γ¯lk(p)(𝒙¯k,𝒆¯k,r¯k=0)\displaystyle\underline{\gamma}^{(p)}_{lk}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=0) =bl=0blkK¯+lν¯lk(p)(bl)\displaystyle=\sum^{\underline{K}+l}_{\begin{subarray}{c}b_{l}=0\\ b_{l}\neq k\end{subarray}}\hskip 0.85358pt\underline{\nu}_{lk}^{(p)}(b_{l})
γ¯lk(p)(𝒙¯k,𝒆¯k,r¯k=1)\displaystyle\underline{\gamma}^{(p)}_{lk}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1) =μm(𝒙¯k,𝒆¯k)f(𝒛l|𝒙¯k,𝒆¯k)μfaffa(𝒛l)ν¯lk(p)(bl=k)\displaystyle=\frac{\mu_{\mathrm{m}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})f(\bm{z}_{l}|\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})}{\mu_{\mathrm{fa}}f_{\mathrm{fa}}(\bm{z}_{l})}\hskip 0.85358pt\underline{\nu}_{lk}^{(p)}(b_{l}=k)
+bl=0blkK¯+lν¯lk(p)(bl).\displaystyle\hskip 14.22636pt+\sum^{\underline{K}+l}_{\begin{subarray}{c}b_{l}=0\\ b_{l}\neq k\end{subarray}}\underline{\nu}_{lk}^{(p)}(b_{l}). (24)

By using the simplification of (21) discussed in the previous Section IV-B2, we can rewrite (24) as

γ¯lk(p)(𝒙¯k,𝒆¯k,r¯k=0)\displaystyle\underline{\gamma}^{(p)}_{lk}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=0) =ξ¯kl(p)\displaystyle=\underline{\xi}_{kl}^{(p)}
γ¯lk(p)(𝒙¯k,𝒆¯k,r¯k=1)\displaystyle\underline{\gamma}^{(p)}_{lk}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1) =μm(𝒙¯k,𝒆¯k)f(𝒛l|𝒙¯k,𝒆¯k)μfaffa(𝒛l)+ξ¯kl(p)\displaystyle=\frac{\mu_{\mathrm{m}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})f(\bm{z}_{l}|\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})}{\mu_{\mathrm{fa}}f_{\mathrm{fa}}(\bm{z}_{l})}+\underline{\xi}_{kl}^{(p)} (25)

where we introduced the sum

ξ¯kl(p)k=1kkK¯β¯kl(p)+=1lβ¯l(p)+1.\underline{\xi}_{kl}^{(p)}\triangleq\sum^{\underline{K}}_{\begin{subarray}{c}k^{\prime}=1\\ k^{\prime}\neq k\end{subarray}}\hskip 0.85358pt\underline{\beta}_{k^{\prime}l}^{(p)}+\sum^{l}_{\begin{subarray}{c}\ell=1\end{subarray}}\hskip 0.85358pt\overline{\beta}_{\ell l}^{(p)}+1. (26)

A similar result can be obtained for the messages γ¯lk(p)(𝒚¯k)\overline{\gamma}^{(p)}_{lk}(\overline{\bm{y}}_{k}) sent from factor nodes h(𝒚¯k,bl;𝒛l)h\big{(}\overline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)}, k{1,,M1}k\in\{1,\dots,M-1\}, l{k+1,,M}l\in\{k+1,\dots,M\} to variable nodes 𝒚¯k\overline{\bm{y}}_{k}. In particular, these messages are obtained by replacing in (23) the functions hk(𝒚¯k,bl;𝒛l)h_{k}\big{(}\underline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)} and ν¯lk(p)(bl)\underline{\nu}_{lk}^{(p)}(b_{l}) by hk(𝒚¯k,bl;𝒛l)h_{k}\big{(}\overline{\bm{y}}_{k},b_{l};\bm{z}_{l}\big{)} and ν¯lk(p)(bl)\overline{\nu}_{lk}^{(p)}(b_{l}) as well as by performing the same simplification step discussed above.

By performing similar steps, we can then also obtain the messages ςkk(p)(𝒚¯k)ςkk(p)(𝒙¯k,𝒆¯k,r¯k)\varsigma_{kk}^{(p)}(\overline{\bm{y}}_{k})\triangleq\varsigma_{kk}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}), k{1,,M}k\in\{1,\dots,M\} sent from gk(𝒙¯k,𝒆¯k,g_{k}\big{(}\overline{\bm{x}}_{k},\overline{\bm{e}}_{k}, r¯k,bk;𝒛k)\overline{r}_{k},b_{k};\bm{z}_{k}\big{)} to new PO state 𝒚¯k\overline{\bm{y}}_{k} as

ςkk(p)(𝒙¯k,𝒆¯k,r¯k=0)\displaystyle\varsigma_{kk}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}=0) =ξ¯kk(p)\displaystyle=\overline{\xi}_{kk}^{(p)}
ςkk(p)(𝒙¯k,𝒆¯k,r¯k=1)\displaystyle\varsigma_{kk}^{(p)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}=1) =μm(𝒙¯k,𝒆¯k)f(𝒛k|𝒙¯k,𝒆¯k)μfaffa(𝒛k).\displaystyle=\frac{\mu_{\mathrm{m}}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k})f(\bm{z}_{k}\hskip 0.85358pt|\hskip 0.85358pt\overline{\bm{x}}_{k},\overline{\bm{e}}_{k})}{\mu_{\mathrm{fa}}f_{\mathrm{fa}}(\bm{z}_{k})}. (27)

The calculation of γ¯lk(p)(𝒚¯k)\overline{\gamma}^{(p)}_{lk}(\overline{\bm{y}}_{k}), k{1,,M1}k\in\{1,\dots,M-1\}, l{k+1,,M}l\in\{k+1,\dots,M\} and ςkk(p)(𝒚¯k)\varsigma_{kk}^{(p)}(\overline{\bm{y}}_{k}), k{1,,M}k\in\{1,\dots,M\} is based on the sum

ξ¯kl(p)k=1K¯β¯kl(p)+=1klβ¯l(p)+1.\overline{\xi}_{kl}^{(p)}\triangleq\sum^{\underline{K}}_{\begin{subarray}{c}k^{\prime}=1\end{subarray}}\hskip 0.85358pt\underline{\beta}_{k^{\prime}l}^{(p)}+\sum^{l}_{\begin{subarray}{c}\ell=1\\[1.42262pt] \ell\neq k\end{subarray}}\hskip 0.85358pt\overline{\beta}_{\ell l}^{(p)}+1.\vspace{1mm}

IV-B4 Extrinsic Information

Finally, updated messages used in the next message passing iteration p+1p+1 for legacy POs k{1,,K¯}k\in\{1,\dots,\underline{K}\} are obtained as [33, Eq. (5)]

α¯kl(p+1)(𝒚¯k)=α¯(𝒚¯k)l=1llMγ¯lk(p)(𝒚¯k).\underline{\alpha}_{kl}^{(p+1)}\big{(}\underline{\bm{y}}_{k}\big{)}\hskip 0.85358pt=\hskip 0.85358pt\underline{\alpha}\big{(}\underline{\bm{y}}_{k}\big{)}\prod^{M}_{\begin{subarray}{c}l^{\prime}=1\\ l^{\prime}\neq l\end{subarray}}\underline{\gamma}^{(p)}_{l^{\prime}k}(\underline{\bm{y}}_{k}). (28)

Note that for non-existent objects, i.e., r¯k=0\underline{r}_{k}=0, the messages α¯kl(p+1)(𝒙¯k,𝒆¯k,r¯k)α¯kl(p+1)(𝒚¯k)\underline{\alpha}_{kl}^{(p+1)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k})\triangleq\underline{\alpha}_{kl}^{(p+1)}\big{(}\underline{\bm{y}}_{k}\big{)} have the form α¯kl(p+1)(𝒙¯k,\underline{\alpha}_{kl}^{(p+1)}(\underline{\bm{x}}_{k}, 𝒆¯k,r¯k=0)=α¯n(p+1)klfd(𝒙¯k,𝒆¯k)\underline{\bm{e}}_{k},\underline{r}_{k}=0)=\underline{\alpha}^{\mathrm{n}(p+1)}_{kl}f_{\mathrm{d}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k}).

Similarly for new POs k{1,,M}k\in\{1,\dots,M\}, we obtain

α¯kl(p+1)(𝒚¯k)=q¯(𝒚¯k)ςkk(p)(𝒚¯k)l=k+1llMγ¯lk(p)(𝒚¯k)\overline{\alpha}_{kl}^{(p+1)}\big{(}\overline{\bm{y}}_{k}\big{)}\hskip 0.85358pt=\hskip 0.85358pt\overline{q}\big{(}\overline{\bm{y}}_{k}\big{)}\hskip 0.85358pt\varsigma_{kk}^{(p)}(\overline{\bm{y}}_{k})\prod^{M}_{\begin{subarray}{c}l^{\prime}=k+1\\ l^{\prime}\neq l\end{subarray}}\overline{\gamma}^{(p)}_{l^{\prime}k}(\overline{\bm{y}}_{k})\vspace{.1mm} (29)

for l{k+1,,M}l\in\{k+1,\dots,M\} and α¯kl(p+1)(𝒚¯k)=q¯(𝒚¯k)l=k+1M\overline{\alpha}_{kl}^{(p+1)}\big{(}\overline{\bm{y}}_{k}\big{)}\hskip 0.85358pt=\hskip 0.85358pt\overline{q}\big{(}\overline{\bm{y}}_{k}\big{)}\prod^{M}_{l^{\prime}=k+1} γ¯lk(p)(𝒚¯k)\overline{\gamma}^{(p)}_{l^{\prime}k}(\overline{\bm{y}}_{k}) for l=kl=k. Again, for r¯k=0\overline{r}_{k}=0, the messages α¯kl(p+1)(\overline{\alpha}_{kl}^{(p+1)}( 𝒙¯k,𝒆¯k,r¯k)α¯kl(p+1)(𝒚¯k)\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k})\triangleq\overline{\alpha}_{kl}^{(p+1)}\big{(}\overline{\bm{y}}_{k}\big{)} have the form α¯kl(p+1)(𝒙¯k,𝒆¯k,r¯k=0)=α¯kln(p+1)fd(𝒙¯k,𝒆¯k)\overline{\alpha}_{kl}^{(p+1)}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}=0)=\overline{\alpha}^{\hskip 0.42677pt\mathrm{n}(p+1)}_{kl}f_{\mathrm{d}}(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k}).

IV-C Belief Calculation

After the last iteration p=Pp=P, the belief f~(𝒚¯k)f~(𝒙¯k,\tilde{f}(\underline{\bm{y}}_{k})\triangleq\tilde{f}(\underline{\bm{x}}_{k}, 𝒆¯k,r¯k)\underline{\bm{e}}_{k},\underline{r}_{k}) of legacy PO state k{1,,K¯}k\in\{1,\dots,\underline{K}\} can be calculated as the normalized product of all incoming messages [33], i.e.,

f~(𝒚¯k)=C¯kα¯(𝒚¯k)l=1Mγ¯lk(P)(𝒚¯k)\tilde{f}(\underline{\bm{y}}_{k})=\underline{C}_{k}\hskip 0.85358pt\hskip 0.85358pt\underline{\alpha}(\underline{\bm{y}}_{k})\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\prod^{M}_{l=1}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\underline{\gamma}^{(P)}_{lk}(\underline{\bm{y}}_{k})\vspace{0.2mm} (30)

where the normalization constant (cf. (16) and (25)) reads

C¯k\displaystyle\hskip 2.84526pt\underline{C}_{k} =(α¯(𝒙¯k,𝒆¯k,r¯k=1)l=1Mγ¯lk(P)(𝒙¯k,𝒆¯k,r¯k=1)d𝒙¯kd𝒆¯k\displaystyle=\bigg{(}\int\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1)\prod^{M}_{l=1}\underline{\gamma}^{(P)}_{lk}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1)\mathrm{d}\underline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\underline{\bm{e}}_{k}
+α¯knl=1Mξ¯kl(P))1.\displaystyle+\underline{\alpha}^{\mathrm{n}}_{k}\hskip 0.85358pt\prod^{M}_{l=1}\hskip 0.85358pt\hskip 0.85358pt\underline{\xi}_{kl}^{(P)}\bigg{)}^{-1}.\vspace{.8mm} (31)

Similarly, the belief b(𝒚¯k)b(𝒙¯k,𝒆¯k,r¯k)b(\overline{\bm{y}}_{k})\triangleq b(\overline{\bm{x}}_{k},\overline{\bm{e}}_{k},\overline{r}_{k}) of augmented new PO state k={1,,M}k=\{1,\dots,M\}, is given by

f~(𝒚¯k)=C¯kq¯(𝒚¯k)ςkk(P)(𝒚¯k)l=k+1Mγ¯lk(P)(𝒚¯k).\tilde{f}(\overline{\bm{y}}_{k})=\overline{C}_{k}\hskip 0.85358pt\hskip 0.85358pt\overline{q}(\overline{\bm{y}}_{k})\hskip 0.85358pt\hskip 0.85358pt\varsigma_{kk}^{(P)}(\overline{\bm{y}}_{k})\hskip 0.85358pt\prod^{M}_{l=k+1}\hskip 0.85358pt\overline{\gamma}^{(P)}_{lk}(\overline{\bm{y}}_{k}). (32)

Here, C¯k\overline{C}_{k} is again the normalization constant that guarantees that (32) is a valid probability distribution.

Note that a message passing order where messages are calculated sequentially and for each measurement individually is discussed in [55]. As demonstrated in [55, Section V], parallel processing leads to improved performance compared to sequential processing.

IV-D Computational Complexity and Scalability

In the prediction step, (18) has to be performed K¯\underline{K} times. Thus, its computational complexity scales as 𝒪(K¯){\cal{O}}(\underline{K}). The computational complexity related to each message passing iteration p{1,,P}p\in\{1,\dots,P\} is discussed next. In the measurement evaluation step, for legacy PO k{1,,K¯}k\in\{1,\dots,\underline{K}\}, a total of MM messages β¯kl(p)(bl)\underline{\beta}_{kl}^{(p)}(b_{l}) have to be calculated. Similarly, for every new PO k{1,,M}k\in\{1,\dots,M\}, a total of l{k,,M}l\in\{k,\dots,M\} messages β¯kl(p)(bl)\overline{\beta}_{kl}^{(p)}(b_{l}) has to be obtained. Thus, the total number of messages is K¯M+1/2M2\underline{K}M+1/2M^{2}. The computational complexity related to calculating each individual message is constant in K¯\underline{K} and MM. Also in the data association, measurement update, and extrinsic information steps, a total of K¯M+1/2M2\underline{K}M+1/2\hskip 0.85358ptM^{2} messages have to be calculated at each of the three steps. The computational complexity related to the calculation of the individual messages is again constant in K¯\underline{K} and MM. For the data association and measurement update steps, this constant computational complexity is obtained by precomputing the sums k=1K¯β¯kl(p)(k)+=1lβ¯l(p)(K¯+)+1\sum^{\underline{K}}_{k=1}\hskip 0.85358pt\underline{\beta}_{kl}^{(p)}(k)+\sum^{l}_{\begin{subarray}{c}\ell=1\end{subarray}}\hskip 0.85358pt\overline{\beta}_{\ell l}^{(p)}(\underline{K}+\ell)+1 for each l{1,,M}l\in\{1,\dots,M\}. Similarly, for the extrinsic information step, this constant computational complexity is obtained by precomputing the products l=1Mγ¯lk(p)(𝒚¯k)\prod^{M}_{l=1}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\underline{\gamma}^{(p)}_{lk}(\underline{\bm{y}}_{k}), k{1,,K¯}k\in\{1,\dots,\underline{K}\} and l=k+1Mγ¯lk(p)(𝒚¯k)\prod^{M}_{l=k+1}\hskip 0.85358pt\hskip 0.85358pt\overline{\gamma}^{(p)}_{lk}(\overline{\bm{y}}_{k}), k{1,,M}k\in\{1,\dots,M\}.

For PP fixed, it thus has been verified that the overall computational complexity only scales as 𝒪(K¯M+M2){\cal{O}}(\underline{K}M+M^{2}). (Here we have omitted 1/21/2 since the 𝒪(){\cal{O}}(\cdot) notation does not track constants.) Recalling that K=K¯+MK=\underline{K}+M is the total number of legacy and new POs, we can equivalently write 𝒪(KM){\cal{O}}(KM). Conservatively, we consider this to be quadratic in the number of measurements and objects, since existing objects are also expected to contribute measurements. We observed that increasing the number of message passing iterations beyond P=3P=3, does not significantly improve performance in typical EOT scenarios. Note that the computational complexity can be further reduced by preclustering of measurements (see, e.g., [7, Section IV]) and censoring of messages (see, e.g., [55, Section IV]). Preclustering combines the MM measurements to a smaller number M<MM^{\prime}<M of joint “hyper measurements” and replaces the single measurement ratios in (12) and (13) by the corresponding product of ratios. Censoring aims to omit messages related to new POs that are unlikely to represent an actual object.

V Particle-Based Implementation

For general state evolution and measurement models, the integrals in (15)–(18) as well as the message products in (28)–(32) typically cannot be evaluated in closed form. Therefore, we next present an approximate particle-based implementation of these operations that can be seen as a generalization of the particle-based implementation introduced in [40] to EOT. Pseudocode for the presented particle-based implementation is provided in [56, Section 3]. Each belief f~(𝒚k)f~(𝒙k,𝒆k,rk)\tilde{f}(\bm{y}_{k})\triangleq\tilde{f}(\bm{x}_{k},\bm{e}_{k},r_{k}) is represented by a set of particles and corresponding weights {(𝒙k(j),𝒆k(j),wk(j))}j=1J\big{\{}\big{(}\bm{x}^{(j)}_{k}\hskip 0.85358pt,\bm{e}^{(j)}_{k}\hskip 0.85358pt,w^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J}. More specifically, f~(𝒙k,𝒆k,1)\tilde{f}(\bm{x}_{k},\bm{e}_{k},1) is represented by {(𝒙k(j),𝒆k(j),wk(j))}j=1J\big{\{}\big{(}\bm{x}^{(j)}_{k}\hskip 0.85358pt,\bm{e}^{(j)}_{k}\hskip 0.85358pt,w^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J}, and f~(𝒙k,𝒆k,0)\tilde{f}(\bm{x}_{k},\bm{e}_{k},0) is given implicitly by the normalization property of f~(𝒙k,𝒆k,rk)\tilde{f}(\bm{x}_{k},\bm{e}_{k},r_{k}), i.e., f~(𝒙k,𝒆k,0)=1f~(𝒙k,𝒆k,1)d𝒙kd𝒆k\tilde{f}(\bm{x}_{k},\bm{e}_{k},0)=1-\int\int\tilde{f}(\bm{x}_{k},\bm{e}_{k},1)\hskip 0.85358pt\mathrm{d}\bm{x}_{k}\mathrm{d}\bm{e}_{k}. Contrary to conventional particle filtering [59, 60] and as in [40], the particle weights wk(j)w^{(j)}_{k}, j{1,,J}j\in\{1,\dots,J\} do not sum to one; instead,

pkej=1Jwk(j)f~(𝒙k,𝒆k,1)d𝒙kd𝒆k.p^{\hskip 0.42677pt\text{e}}_{k}\hskip 0.85358pt\triangleq\hskip 0.85358pt\sum^{J}_{j=1}w^{(j)}_{k}\hskip 0.85358pt\approx\int\int\tilde{f}(\bm{x}_{k},\bm{e}_{k},1)\hskip 0.85358pt\mathrm{d}\bm{x}_{k}\mathrm{d}\bm{e}_{k}\hskip 0.85358pt. (33)

Note that since f~(𝒙k,𝒆k,1)d𝒙kd𝒆k\int\int\tilde{f}(\bm{x}_{k},\bm{e}_{k},1)\hskip 0.85358pt\mathrm{d}\bm{x}_{k}\mathrm{d}\bm{e}_{k} approximates the posterior probability of existence for the object, it follows that the sum of weights pkep^{\hskip 0.42677pt\text{e}}_{k} is approximately equal to the posterior probability of existence.

V-A Prediction

The particle operations discussed in this section are performed for all legacy POs k{1,,K¯}k\!\in\!\{1,\dots,\underline{K}\} in parallel. For each legacy PO kk, JJ particles and weights {(𝒙k(j),𝒆k(j),wk(j))}j=1J\big{\{}\big{(}\bm{x}^{-(j)}_{k},\bm{e}^{-(j)}_{k},w^{-(j)}_{k}\big{)}\big{\}}_{j=1}^{J} representing the previous belief f~(𝒙k,𝒆k,rk)\tilde{f}(\bm{x}^{-}_{k},\bm{e}^{-}_{k},r^{-}_{k}) were calculated at the previous time n1n-\!1 as described further below. Weighted particles {(𝒙¯k(j),𝒆¯k(j),w¯k(1,j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k},\underline{w}^{(1,j)}_{k}\big{)}\big{\}}_{j=1}^{J} representing the message α¯(𝒙¯k,𝒆¯k,1)\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},1) in (15) are now obtained as follows. First, for each particle (𝒙k(j),𝒆k(j))\big{(}\bm{x}^{-(j)}_{k},\bm{e}^{-(j)}_{k}\big{)}\hskip 0.85358pt, j{1,,J}j\in\{1,\dots,J\}, one particle (𝒙¯k(j),𝒆¯k(j))(\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}) is drawn from f(𝒙k,𝒆k|𝒙k(j),𝒆k(j))f\big{(}\bm{x}_{k},\bm{e}_{k}\big{|}\bm{x}^{-(j)}_{k},\bm{e}^{-(j)}_{k}\big{)}. Next, corresponding weights wk(1,j)w^{(1,j)}_{k}, j{1,,J}j\in\{1,\dots,J\} are obtained as

w¯k(1,j)=psμm(x¯𝓀(𝒿),e¯𝓀(𝒿))𝓌𝓀(𝒿),𝒿{1,,𝒥}.\displaystyle\underline{w}^{(1,j)}_{k}=p_{\hskip 0.85358pt\mathrm{s}}\hskip 0.85358pt\hskip 0.85358pt\mathpzc{e}^{-\mu_{\mathrm{m}}\big{(}\underline{\bm{x}}^{(j)}_{k},\hskip 0.85358pt\underline{\bm{e}}^{(j)}_{k}\big{)}}\hskip 0.85358ptw^{-(j)}_{k},\hskip 2.84526ptj\in\{1,\dots,J\}. (34)

Note that the proposal distribution [59, 60] underlying (34) is f(𝒙k,𝒆k|𝒙k(j),𝒆k(j))f\big{(}\bm{x}_{k},\bm{e}_{k}\big{|}\bm{x}^{-(j)}_{k},\bm{e}^{-(j)}_{k}) for j{1,,J}j\in\{1,\dots,J\}. A particle-based approximation α¯~kn\tilde{\underline{\alpha}}^{\mathrm{n}}_{k} of α¯kn\underline{\alpha}^{\mathrm{n}}_{k} in (16) is now obtained as

α¯~kn=(1pke)+(1ps)pke\displaystyle\tilde{\underline{\alpha}}^{\mathrm{n}}_{k}=\big{(}1-p^{-\text{e}}_{k}\big{)}+\big{(}1\!-p_{\hskip 0.85358pt\mathrm{s}}\big{)}p^{-\text{e}}_{k} (35)

where pkej=1Jwk(j)p^{-\text{e}}_{k}\triangleq\sum^{J}_{j=1}w^{-(j)}_{k}. Finally, a particle approximation α¯~k\tilde{\underline{\alpha}}_{k} of α¯k\underline{\alpha}_{k} introduced in Section IV-A is given by

α¯~k=j=1Jw¯k(1,j)+α¯~kn.\displaystyle\tilde{\underline{\alpha}}_{k}=\sum^{J}_{j=1}\underline{w}^{(1,j)}_{k}+\tilde{\underline{\alpha}}^{\mathrm{n}}_{k}.

V-B Measurement Evaluation

Let the weighted particles {(𝒙¯k(j),𝒆¯k(j),w¯kl(p,j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k},\underline{w}^{(p,j)}_{kl}\big{)}\big{\}}_{j=1}^{J} and the scalar α¯~kl(p)\tilde{\underline{\alpha}}^{(p)}_{kl} be a particle-based representation of α¯kl(p)(𝒙¯k,e¯k,r¯k)\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{e}_{k},\underline{r}_{k}). For p=1p=1, we set {(𝒙¯k(j),𝒆¯k(j),\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}, w¯kl(1,j))}j=1J{(𝒙¯k(j),𝒆¯k(j),\underline{w}^{(1,j)}_{kl}\big{)}\big{\}}_{j=1}^{J}\triangleq\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}, w¯k(1,j))}j=1J\underline{w}^{(1,j)}_{k}\big{)}\big{\}}_{j=1}^{J} and α¯~kl(p)α¯~k\tilde{\underline{\alpha}}^{(p)}_{kl}\triangleq\tilde{\underline{\alpha}}_{k}; for p>1p>1 this representation is calculated as discussed in Section V-C. An approximation β¯~kl(p)\tilde{\underline{\beta}}_{kl}^{(p)} of the message value β¯kl(p)β¯kl(p)(bl=k)\underline{\beta}_{kl}^{(p)}\triangleq\underline{\beta}_{kl}^{(p)}(b_{l}=k) in (19), can now be obtained as

β¯~kl(p)=1μfaffa(𝒛l)α¯~kl(p)j=1Jw¯kl(p,j)μm(𝒙¯k(j),𝒆¯k(j))f(𝒛l|𝒙¯k(j),𝒆¯k(j)).\displaystyle\tilde{\underline{\beta}}_{kl}^{(p)}=\frac{1}{\mu_{\mathrm{fa}}\hskip 0.85358ptf_{\mathrm{fa}}(\bm{z}_{l})\hskip 0.85358pt\tilde{\underline{\alpha}}_{kl}^{(p)}}\sum^{J}_{j=1}\underline{w}^{(p,j)}_{kl}\mu_{\mathrm{m}}(\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k})f(\bm{z}_{l}|\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}).

Here, j=1Jw¯kl(p,j)μm(𝒙¯k(j),𝒆¯k(j))f(𝒛l|𝒙¯k(j),𝒆¯k(j))\sum^{J}_{j=1}\hskip 0.85358pt\underline{w}^{(p,j)}_{kl}\hskip 0.85358pt\mu_{\mathrm{m}}(\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k})\hskip 0.85358ptf(\bm{z}_{l}|\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}) is the Monte Carlo integration [60] of μm(𝒙¯k,𝒆¯k)f(𝒛l|𝒙¯k,𝒆¯k)\int\int\mu_{\mathrm{m}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})f(\bm{z}_{l}|\underline{\bm{x}}_{k},\underline{\bm{e}}_{k}) α¯kl(p)(𝒙¯k,𝒆¯k,r¯k=1)d𝒙¯kd𝒆¯k\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}=1)\hskip 0.85358pt\mathrm{d}\underline{\bm{x}}_{k}\hskip 0.85358pt\mathrm{d}\underline{\bm{e}}_{k} in (17). This Monte Carlo integration is based on the proposal distribution α¯kl(p)(𝒙¯k,𝒆¯k,\underline{\alpha}_{kl}^{(p)}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k}, r¯k=1)\underline{r}_{k}=1). Similarly, an approximation β¯~kl(p)\tilde{\overline{\beta}}_{kl}^{(p)} of the message values β¯kl(p)\overline{\beta}_{kl}^{(p)} related to new POs can be obtained. Here, for Monte Carlo integration and further particle-based processing, it was found useful to use a proposal distribution fp(𝒙¯k,𝒆¯k;𝒛k)f_{\mathrm{p}}\big{(}\overline{\bm{x}}_{k},\overline{\bm{e}}_{k};\bm{z}_{k}\big{)} that is calculated from the measurement 𝒛k\bm{z}_{k} and its uncertainty characterization, e.g., by means of the unscented transformation [61].

Note that calculation of these messages relies on the likelihood function f(𝒛l|𝒙k,𝒆k)f(\bm{z}_{l}\hskip 0.85358pt|\hskip 0.85358pt\bm{x}_{k},\bm{e}_{k}) introduced in (6), which involves the integration d𝒗k,n(l)\int\mathrm{d}\bm{v}^{(l)}_{k,n}. For general nonlinear and non-Gaussian measurement models, evaluation of the likelihood function f(𝒛l|𝒙k,𝒆k)f(\bm{z}_{l}|\bm{x}_{k},\bm{e}_{k}) can potentially also be performed by means of Monte Carlo integration [60]. Alternatively, if the measurement model 𝒅()\bm{d}(\cdot) is invertible in the sense that we can reformulate (5) as

𝒅1(𝘇l+𝘂l)=𝗽k+𝘃k(l)\bm{d}^{-1}\big{(}\bm{\mathsfbr{z}}_{l}+\bm{\mathsfbr{u}}_{l})=\bm{\mathsfbr{p}}_{k}+\bm{\mathsfbr{v}}^{(l)}_{k}\vspace{.4mm} (36)

then an approximated linear-Gaussian measurement model (7) can be obtained. In particular, the PDF of 𝒅1(𝒛l+𝘂l)\bm{d}^{-1}\big{(}\bm{z}_{l}+\bm{\mathsfbr{u}}_{l}) (for observed 𝒛l\bm{z}_{l}) is approximated by a Gaussian with mean 𝒛~l=𝒅1(𝒛l+𝝁𝒖l)\tilde{\bm{z}}_{l}=\bm{d}^{-1}\big{(}\bm{z}_{l}+\bm{\mu}_{\bm{u}_{l}}) and covariance matrix 𝚺𝒛~l\bm{\varSigma}_{\tilde{\bm{z}}_{l}}. This approximation can be obtained, e.g., by linearizing 𝒅1()\bm{d}^{-1}\big{(}\cdot) or by applying the unscented transformation [61]. As a result, closed-form expressions for f(𝒛l|𝒙k,𝒆k)f(\bm{z}_{l}|\bm{x}_{k},\bm{e}_{k}) discussed in Section II-B and [56, Section. 2] can be used.

V-C Measurement Update, Belief Calculation, and Extrinsic Informations

The approximate measurement evaluation messages discussed in Section V-B are used for the subsequent approximation of ξ¯kl(p)\underline{\xi}_{kl}^{(p)} and ξ¯kl(p)\overline{\xi}_{kl}^{(p)} (cf. (26)) required in the measurement update step (cf. (25) and (27)). The calculation of the weighted particles {(𝒙¯k(j),𝒆¯k(j),w¯k(j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k}\hskip 0.85358pt,\underline{\bm{e}}^{(j)}_{k}\hskip 0.85358pt,\underline{w}^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J} that represent the legacy PO belief in (30) is discussed next. Weighted particles representing new PO beliefs (32) and extrinsic information messages in (28) and (29) can be obtained by performing similar steps.

The measurement update step (25) and the belief calculation step (30) are implemented by means of importance sampling [59, 60]. To that end, we first rewrite the belief f~(𝒚¯k)=f~(𝒙¯k,𝒆¯k,r¯k)\tilde{f}(\underline{\bm{y}}_{k})=\tilde{f}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}) in (30) by using (15), (16), and (25), i.e.,

f¯~k\displaystyle\underline{\tilde{f}}_{k} α¯knl=1Mξ¯~kl(P)\displaystyle\hskip 0.85358pt\propto\hskip 0.85358pt\underline{\alpha}^{\mathrm{n}}_{k}\hskip 0.85358pt\hskip 0.85358pt\prod^{M}_{l=1}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\tilde{\underline{\xi}}_{kl}^{(P)}
f~(𝒙¯k,𝒆¯k,1)\displaystyle\tilde{f}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},1) α¯(𝒙¯k,𝒆¯k,1)\displaystyle\hskip 0.85358pt\propto\hskip 0.85358pt\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},1) (37)
×l=1M(μm(𝒙¯k,𝒆¯k)f(𝒛l|𝒙¯k,𝒆¯k)μfaffa(𝒛l)+ξ¯~kl(P)).\displaystyle\hskip 9.95845pt\times\prod^{M}_{l=1}\bigg{(}\frac{\mu_{\mathrm{m}}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})f(\bm{z}_{l}|\underline{\bm{x}}_{k},\underline{\bm{e}}_{k})}{\mu_{\mathrm{fa}}f_{\mathrm{fa}}(\bm{z}_{l})}\hskip 0.85358pt+\hskip 0.85358pt\tilde{\underline{\xi}}_{kl}^{(P)}\bigg{)}.

Here, we also replaced ξ¯kl(P)\underline{\xi}_{kl}^{(P)} introduced in (26) by its particle-based approximation ξ¯~kl(P)\tilde{\underline{\xi}}_{kl}^{(P)} (cf. Section V-B), even though we do not indicate this additional approximation in our notation f~(𝒙¯k,𝒆¯k,r¯k)\tilde{f}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},\underline{r}_{k}).

We now calculate nonnormalized weights corresponding to (37) for each particle j{1,,J}j\in\{1,\dots,J\} as

w¯kA(j)\displaystyle\underline{w}^{\text{A}(j)}_{k} =w¯k(1,j)l=1M(μm(𝒙¯k(j),𝒆¯k(j))f(𝒛l|𝒙¯k(j),𝒆¯k(j))μfaffa(𝒛l)+ξ¯~kl(P)).\displaystyle=\hskip 0.85358pt\underline{w}^{(1,j)}_{k}\prod^{M}_{l=1}\bigg{(}\frac{\mu_{\mathrm{m}}(\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k})f(\bm{z}_{l}|\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k})}{\mu_{\mathrm{fa}}f_{\mathrm{fa}}(\bm{z}_{l})}\hskip 0.85358pt+\hskip 0.85358pt\tilde{\underline{\xi}}_{kl}^{(P)}\bigg{)}. (38)

Note that here we perform importance sampling with proposal density α¯(𝒙¯k,𝒆¯k,1)\underline{\alpha}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},1). This proposal density is represented by the weighted particles {(𝒙¯k(j),𝒆¯k(j),w¯k(1,j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k},\underline{w}^{(1,j)}_{k}\big{)}\big{\}}_{j=1}^{J}. Similarly, we calculate a single nonnormalized weight corresponding to (37) as

w¯kB=α¯~knl=1Mξ¯~kl(P)\underline{w}^{\text{B}}_{k}=\hskip 0.85358pt\tilde{\underline{\alpha}}^{\mathrm{n}}_{k}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\prod^{M}_{l=1}\hskip 0.85358pt\hskip 0.85358pt\hskip 0.85358pt\tilde{\underline{\xi}}_{kl}^{(P)}\vspace{-1.5mm} (39)

in which α¯~kn\tilde{\underline{\alpha}}^{\mathrm{n}}_{k} has been calculated in (35).

Next, weighted particles {(𝒙¯k(j),𝒆¯k(j),w¯k(j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k},\underline{w}^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J} representing the belief f~(𝒙¯k,𝒆¯k,rk)\tilde{f}(\underline{\bm{x}}_{k},\underline{\bm{e}}_{k},r_{k}) are obtained by reusing the particles {(𝒙¯k(j),𝒆¯k(j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J} and calculating the corresponding new weights as

w¯k(j)=w¯kA(j)w¯kB+j=1Jw¯kA(j).\underline{w}^{(j)}_{k}\hskip 0.85358pt=\hskip 0.85358pt\frac{\underline{w}^{\text{A}(j)}_{k}}{\underline{w}^{\text{B}}_{k}+\sum^{J}_{j^{\prime}=1}\hskip 0.85358pt\underline{w}^{\text{A}(j^{\prime})}_{k}}\hskip 0.85358pt.\vspace{0mm} (40)

Here, w¯kB+j=1Jw¯kA(j)\underline{w}^{\text{B}}_{k}+\sum^{J}_{j=1}\underline{w}^{\text{A}(j)}_{k} is a particle-based approximation of the normalization constant C¯k\underline{C}_{k} in (31). We recall that pke=j=1Jw¯k(j)p^{\hskip 0.42677pt\text{e}}_{k}\hskip 0.85358pt=\sum^{J}_{j=1}\underline{w}^{(j)}_{k}.

Next, we discuss the calculation of the particle representations of the extrinsic information messages in (28) and (29). For example, weighted particles {(𝒙¯k(j),𝒆¯k(j),w¯kl(p+1,j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k},\underline{w}^{(p+1,j)}_{kl^{\prime}}\big{)}\big{\}}_{j=1}^{J} representing α¯kl(p+1)(𝒚¯k)\underline{\alpha}_{kl^{\prime}}^{(p+1)}\big{(}\underline{\bm{y}}_{k}\big{)} can be obtained as follows. The particle locations and extents {(𝒙¯k(j),𝒆¯k(j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J} are again reused and the corresponding new weights w¯kl(p+1,j)\underline{w}^{(p+1,j)}_{kl^{\prime}} are obtained by replacing in (38) l=1M\prod^{M}_{l=1} with l=1llM\prod^{M}_{\begin{subarray}{c}l=1\\ l\neq l^{\prime}\end{subarray}} and ξ¯~kl(P)\tilde{\underline{\xi}}_{kl}^{(P)} with ξ¯~kl(p)\tilde{\underline{\xi}}_{kl}^{(p)}. This is equal to plugging (25) into (28) and evaluating (28) at the particles {(𝒙¯k(j),𝒆¯k(j))}j=1J\big{\{}\big{(}\underline{\bm{x}}^{(j)}_{k},\underline{\bm{e}}^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J}. Here, normalization of the weights in (40) can be avoided and the constant α¯~kl(p+1)\tilde{\underline{\alpha}}_{kl^{\prime}}^{(p+1)} is obtained as α¯~kl(p+1)=α¯~kl=1llMξ¯~kl(p)\tilde{\underline{\alpha}}_{kl^{\prime}}^{(p+1)}=\tilde{\underline{\alpha}}_{k}\prod^{M}_{\begin{subarray}{c}l=1\\ l\neq l^{\prime}\end{subarray}}\hskip 0.85358pt\tilde{\underline{\xi}}_{kl}^{(p)} (cf. (39)).

V-D Detection, Estimation, Pruning, and Resampling

The weighted particles {(𝒙k(j),𝒆k(j),wk(j))}j=1J\big{\{}\big{(}\bm{x}^{(j)}_{k}\hskip 0.85358pt,\bm{e}^{(j)}_{k}\hskip 0.85358pt,w^{(j)}_{k}\big{)}\big{\}}_{j=1}^{J} can now be used for object detection and estimation. First, for each (legacy or new) PO kk, an approximation pkep^{\hskip 0.42677pt\text{e}}_{k} of the existence probability p(rk=1|𝒛)p(r_{k}\!=\!1|\bm{z}) is calculated from the particle weights {wk(j)}j=1J\big{\{}w^{(j)}_{k}\big{\}}_{j=1}^{J} as in (33). PO kk is then detected (i.e., considered to exist) if pkep^{\hskip 0.42677pt\text{e}}_{k} is above a threshold PthP_{\text{th}} (cf. Section III-A). For the detected objects kk, an approximation of the MMSE estimate 𝒙^kMMSE\hat{\bm{x}}^{\text{MMSE}}_{k} of the kinematic state in (LABEL:eq:mmse) is calculated according to

𝒙^k=1pkej=1Jwk(j)𝒙k(j).\hat{\bm{x}}_{k}\hskip 0.85358pt=\hskip 0.85358pt\frac{1}{p^{\hskip 0.42677pt\text{e}}_{k}}\sum_{j=1}^{J}w_{k}^{(j)}\hskip 0.85358pt\bm{x}_{k}^{(j)}\hskip 0.85358pt.\vspace{.5mm} (41)

Similarly, an MMSE estimate 𝒆^k\hat{\bm{e}}_{k} of the extent state can be obtained by replacing 𝒙k(j)\bm{x}_{k}^{(j)} in (41) by 𝒆k(j)\bm{e}_{k}^{(j)}.

As discussed in Section II-C, the number of POs would grow with time kk. Therefore, legacy and new POs whose approximate existence probabilities pkep^{\hskip 0.42677pt\text{e}}_{k} are below a threshold PprP_{\text{pr}} are pruned [4, 15] from the state space. In addition, a resampling step may be performed to avoid particle degeneracy [60, 59].

VI Numerical Results

Next, we report simulation results evaluating the performance of our method and comparing it with that of the PMBM filter implementation in [1]. Note that a performance comparison with other data association algorithms based on the SPA has been presented in [55].

VI-A Simulation Scenario

We simulated ten extended objects whose states consist of two-dimensional (2-D) position and velocity, i.e., 𝘅k,n=[𝗉𝗄,𝗇(𝟣)𝗉𝗄,𝗇(𝟤)𝗉˙𝗄,𝗇(𝟣)𝗉˙𝗇,𝗄(𝟤)]T\bm{\mathsfbr{x}}_{k,n}=[\mathsfbr{p}^{(1)}_{k,n}\;\hskip 0.85358pt\mathsfbr{p}^{(2)}_{k,n}\;\hskip 0.85358pt\dot{\mathsfbr{p}}^{(1)}_{k,n}\;\hskip 0.85358pt\dot{\mathsfbr{p}}^{(2)}_{n,k}]^{\text{T}}. The objects move in a region of interest (ROI) defined as [150m,150m]×[150m,150m][-150\hskip 0.85358pt\text{m},\hskip 0.85358pt150\hskip 0.85358pt\text{m}]\times[-150\hskip 0.85358pt\text{m},\hskip 0.85358pt150\hskip 0.85358pt\text{m}] and according to the nearly constant-velocity motion model, i.e., 𝘅k,n=𝑨𝘅k,n1+𝑾𝗰k,n\bm{\mathsfbr{x}}_{k,n}=\bm{A}\hskip 0.85358pt\bm{\mathsfbr{x}}_{k,n-1}+\bm{W}\bm{\mathsfbr{c}}_{k,n}, where 𝑨4×4\bm{A}\in\mathbb{R}^{4\times 4} and 𝑾4×2\bm{W}\in\mathbb{R}^{4\times 2} are chosen as in [62, Section 6.3.2] with T=0.2T\!=\!0.2\hskip 0.85358pts, and 𝗰k,n𝒩(𝒄k,n;𝟎,σ𝖼2𝑰2)\bm{\mathsfbr{c}}_{k,n}\sim{\cal{N}}(\bm{c}_{k,n};\bm{0},\sigma^{2}_{\mathsfbr{c}}\hskip 0.85358pt\bm{I}_{2}) with σ𝖼=1m/s2\sigma_{\mathsfbr{c}}\!=1\hskip 0.85358pt\hskip 0.85358pt\text{m}/\text{s}^{2} is an independent and identically distributed (iid) sequence of 2-D Gaussian random vectors.

Refer to caption
(a)
Refer to caption
(b)
Refer to caption
(c)
Figure 3: Example realization of true object tracks are depicted in (a). Estimation results of the proposed SPA and the PMBM-FR are depicted in (b) and (c), respectively. True and estimated object shapes at the last time step of an object’s existence are also shown. In (a), track estimates provided by the proposed SPA method are shown as red line. In (b), state estimates provided by PMBM-FR are shown as blue dots.

We considered a challenging scenario where the ten object tracks intersect at the ROI center. The object tracks were generated by first assuming that the ten objects start moving toward the ROI center from positions uniformly placed on a circle of radius 7575 m about the ROI center, with an initial speed of 1010 m/s, and then letting the objects start to exist (i.e., generate measurements) in pairs at times n{3,6,9,12,15}n\in\{3,6,9,12,15\}. Object tracks intersect at the ROI center at around time 40 and disappear in pairs at times n{83,86,89,92,95}n\in\{83,86,89,92,95\}. The extent of each object is obtained by drawing a sample from the inverse Wishart distribution with mean matrix 3𝑰23\bm{I}_{2} and 100100 degrees of freedom. The extent state of objects does not evolve in time, i.e., it remains unchanged for all time steps. The survival probability is ps=0.99p_{\mathrm{s}}=0.99. Example realizations of object tracks and extents are shown in Fig. 3(a).

Refer to caption
(a)
Refer to caption
(b)
Refer to caption
(c)
Figure 4: Mean total OSPA (a) mean state error (b) and mean cardinality error (c) versus time of the proposed SPA method compared to the PMBM filter in a scenario with 10 closely-spaced extended objects.

Since the PMBM filter is based on the Gaussian inverse Wishart model [5], we consider elliptical object shapes and a linear-Gaussian measurement model. In particular, a measurement ll that was originated by object kk, is modeled as

𝘇l,n=𝗽k,n+𝘃k,n(l)+𝘂l,n\bm{\mathsfbr{z}}_{l,n}=\bm{\mathsfbr{p}}_{k,n}+\bm{\mathsfbr{v}}^{(l)}_{k,n}+\bm{\mathsfbr{u}}_{l,n}\vspace{.8mm} (42)

where 𝘂l,n𝒩(𝒖l,n;𝟎,σ𝗎2𝑰2)\bm{\mathsfbr{u}}_{l,n}\sim\mathcal{N}(\bm{u}_{l,n};\bm{0},\sigma^{2}_{\mathsfbr{u}}\bm{I}_{2}) is the measurement noise with σ𝗎=1\sigma_{\mathsfbr{u}}=1m. In addition, 𝘃k,n(l)𝒩(𝒗k,n(l);𝟎,𝚺𝗏)\bm{\mathsfbr{v}}_{k,n}^{(l)}\sim\mathcal{N}\big{(}\bm{v}^{(l)}_{k,n};\bm{0},\bm{\varSigma}_{\mathsfbr{v}}\big{)} is the random relative position of the reflection point with 𝚺𝗏\bm{\varSigma}_{\mathsfbr{v}} determined by the extent state. The mean of the number of measurements 𝖫𝗄,𝗇\mathsfbr{L}_{k,n} is μm=8\mu_{\mathrm{m}}=8 for all objects and the mean number of false alarm measurements is μfa=10\mu_{\mathrm{fa}}\!=\!10. The false alarm PDF ffa(𝒛l,n)f_{\mathrm{fa}}(\bm{z}_{l,n}) is uniform on the ROI.

The performance of all simulated methods is measured by the optimal subpattern assignment (OSPA) [63] and the generalized OSPA (GOSPA) [64] metrics. Both metrics are based on the Gaussian-Wasserstein distance with parameters p=1p=1 and c=20c=20. The threshold for object declaration is Pth=0.5P_{\text{th}}=0.5 and the threshold for pruning POs is Pth=103P_{\text{th}}=10^{-3}. These parameters are used for all simulated methods.

VI-B Performance Comparison with the PMBM Filter

For the proposed SPA-based method we use the following settings. Newly detected objects are modeled as fn(𝒙¯k,n,𝒆¯k,n)=fn(𝒑¯k,n)fn(𝒎¯k,n)fn(𝒆¯k,n)f_{\mathrm{n}}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n})=f_{\mathrm{n}}(\overline{\bm{p}}_{k,n})f_{\mathrm{n}}(\overline{\bm{m}}_{k,n})f_{\mathrm{n}}(\overline{\bm{e}}_{k,n}), with fn(𝒑¯k,n)f_{\mathrm{n}}(\overline{\bm{p}}_{k,n}) uniformly distributed on the ROI, fn(𝒎¯k,n)f_{\mathrm{n}}(\overline{\bm{m}}_{k,n}) following a zero-mean Gaussian PDF with covariance matrix 102m2/s2𝑰210^{2}\hskip 0.85358pt\text{m}^{2}/\text{s}^{2}\hskip 0.85358pt\bm{I}_{2}, and fn(𝒆¯k,n)f_{\mathrm{n}}(\overline{\bm{e}}_{k,n}) distributed according to an inverse Wishart distribution with mean matrix 3𝑰23\hskip 0.85358pt\bm{I}_{2} and 100100 degrees of freedom. The proposed method uses the state transition model in (4) with 𝑽(𝒎k,n1)\bm{V}(\bm{m}_{k,n-1}) given by 𝑰2\bm{I}_{2} and qk,n=20000q_{k,n}=20000. The mean number of newly detected objects is set to μn=102\mu_{\mathrm{n}}=10^{-2}. To facilitate track initialization, we perform message censoring and ordering of measurements as discussed in [55]. The number of SPA iterations was set to P{2,3}P\in\{2,3\} and the number of particles was set to J={1000,10000}J=\{1000,10000\}. The resulting parameter combinations are denoted as “SPA-2-1000”, “SPA-3-1000”, “SPA-2-10000”, and “SPA-3-10000”, respectively.

For the PMBM filter, we set the Poisson point process that represents object birth consistent with the newly detected object representation introduced above. Furthermore, the probability of detection is set to 11. The Gamma distribution has an a priori mean of μm=8\mu_{\mathrm{m}}=8 and a variance of 10410^{-4}. Its parameters remain unchanged at all time steps. The transformation matrix and maneuvering correlation constant (see [5, Table III]) used for extent prediction are set to 𝑰2\bm{I}_{2} and 10510^{5}, respectively. The PMBM implementation described in [1] relies on measurement gating and clustering as well as pruning of global association events [5]. The gate threshold is chosen such that the probability that an object-oriented measurement is in the gate is 0.9990.999.

Clusters of measurements and likely association events are obtained by using the density-based spatial clustering (DBSCAN) and Murthy’s algorithm, respectively. We simulated two different settings for measurement clustering and event pruning. Coarse clustering “PMBM-C” calculates measurement partitions by using the 5050 different distance values equally spaced between 0.10.1 and 55 as well as a maximum number of 2020 assignments for each partition of measurements. Fine clustering “PMBM-F” clusters with 20002000 different distance values equally spaced between 0.010.01 and 2020 as well as uses a maximum number of 200200 assignments for each partition of measurements. Clustering is performed for each distance value individually. All resulting clusters are then combined into one joint set of clusters. In this way, a diverse set of overlapping clusters is obtained. We also simulated variants of the PMBM that perform recycling of pruned Bernoulli components [65]. These variants are denoted as “PMBM-CR” and “PMBM-FR”.

Fig. 3(b) and (c) shows estimation results of SPA-10000 and PMBM-FR. By comparing Fig. 3(c) with Fig. 3(a), it can be seen that PMBM-FR is unable to accurately estimate the state of objects that are in close proximity. Fig. 4 shows the mean OSPA error and its state and cardinality error contributions—averaged over 1200 simulation runs—of four simulated methods versus time. It can be seen that the proposed SPA-based methods outperform the PMBM at those time steps where objects are in close proximity. This can be explained by the fact that, due to its excellent scalability, the proposed SPA-based method can avoid clustering as performed by the PMBM filter implementations. In Fig. 4(c), it is shown that the main reason for the increased OSPA error of PMBM is an increased cardinality error. This is because large clusters that consist of measurements generated by multiple objects are associated to a single object. Thus, to certain other objects, no measurements are assigned, their probability of existence is reduced, and they are declared to be non-existent. The reduced state error of the PMBM methods compared to the proposed SPA method around time step 40 in Fig. 4(b) can be explained as follows. Since in this scenario PMBM methods tend to underestimate the number of objects, the optimum assignment step performed for OSPA calculation tends to find a solution with a lower state error. Table I shows the mean GOSPA error and corresponding individual error contributions as well as runtimes per time step for MATLAB implementations on a single core of an Intel Xeon Gold 5222 CPU. Notably, despite not using gating, measurement clustering, and pruning of association events, the proposed SPA method has a runtime that is comparable with the PMBM filter.

Method Total State Missed False Runtime
SPA-2-1000 13.313.3 11.411.4 1.91.9 0.050.05 1.051.05
SPA-2-10000 8.78.7 8.08.0 0.70.7 0.040.04 8.398.39
SPA-3-1000 11.411.4 10.310.3 1.11.1 0.070.07 1.361.36
SPA-3-10000 7.5¯\underline{7.5} 7.3¯\underline{7.3} 0.1¯\underline{0.1} 0.03¯\underline{0.03} 11.6711.67
PMBM-FR 22.522.5 10.310.3 11.811.8 0.410.41 50.5950.59
PMBM-F 22.722.7 10.110.1 12.312.3 0.370.37 52.7152.71
PMBM-CR 25.325.3 11.111.1 10.210.2 4.014.01 3.753.75
PMBM-C 25.225.2 10.810.8 10.810.8 3.553.55 4.294.29
TABLE I: Mean GOSPA and runtime per time step in seconds for the considered simulation. The total GOSPA error as well as individual error contributions are shown.

VI-C Size, Orientation, and Scalability

To investigate the capability of the methods to estimate size and orientation, we considered a scenario similar to that discussed in Section VI-A, changing the prior distribution of object extent to an inverse Wishart distribution with mean diag(3m,1.5m)\mathrm{diag}\big{(}3\text{m},1.5\text{m}\big{)}. Estimated object sizes are calculated from estimated extent states 𝑬^k,n\hat{\bm{E}}_{k,n} as the area of the represented ellipses, i.e., as πλ^1,𝑬k,nλ^2,𝑬k,n\pi\hat{\lambda}_{1,\bm{E}_{k,n}}\hat{\lambda}_{2,\bm{E}_{k,n}}. Similarly, orientation is obtained by restricting the larger of the two eigenvectors 𝝀^1,𝑬k,n\hat{\bm{\lambda}}_{1,\bm{E}_{k,n}} of 𝑬^k,n\hat{\bm{E}}_{k,n} to the upper half plane and calculating its angle. To compute mean size errors and mean orientation errors, we use the optimum assignments of the OSPA [63] metric calculated as discussed in Section VI-A for each time steps and each of the 120 simulation runs. Then, we use these optimum assignments to calculate mean size errors and mean orientation errors. Fig. 5 shows the resulting mean errors of the four simulated methods versus time. It can be seen that the proposed particle-based SPA method can estimate size and orientation more reliably than the PMBM filter when objects are in close proximity

To demonstrate scalability, we furthermore simulated the same scenario discussed in Section VI-A but with the number of objects increased to 20. Fig. 6 shows the mean OSPA error—averaged over 120 simulation runs—of four simulated methods versus time. Also in this larger scenario the performance advantages of the SPA methods over the PMBM methods are comparable to the smaller scenario with 10 objects. Plots for individual error contributions are similar to the ones for the scenario with 10 objects and are thus omitted. The average runtimes per time step for MATLAB implementations on a single core of an Intel Xeon Gold 5222 CPU were measured as 48.1s for SPA-2-10000, 76.0s for SPA-3-10000, 6.7s for PMBM-CR, and 171.4s for PMBM-FR. We emphasize that this simulation is an extreme case, where all 20 objects come into close proximity at the mid-point in time. As previously discussed, additional, well-known techniques can be utilized to limit the growth in complexity for well-spaced objects to linear by decoupling the joint EOT problem into smaller separate ones. The unique benefit of the proposed method is its ability to scale in problems where object proximity precludes trivial decoupling.

Refer to caption
(a)
Refer to caption
(b)
Figure 5: Mean size error (a) and mean orientation error (b) of the proposed SPA method compared to the PMBM filter in a scenario with 10 closely-spaced extended objects.

VII Real-Data Processing

To validate our method, we present results in an urban autonomous driving scenario. The observations are part of the nuScenes datasets [66] and were collected by a lidar sensor mounted on the roof of an autonomous vehicle. The dataset consists of 850 scenes. Every scene has a duration of 2020s and consists of approximately 400 sets of lidar observations (or “point clouds”) and corresponding ground truth annotations for vehicles and pedestrians. A single lidar measurement is given by the 3-D Cartesian coordinates of a reflecting obstacle in the environment. Annotations are 3-D cubes defined by a position, dimensions, and heading.

Refer to caption
Figure 6: Mean total OSPA of the proposed SPA method compared to the PMBM filter in a scenario with 20 closely-spaced extended objects.

We focused on tracking of vehicles in the environment. To extract measurement points related to reflections on vehicles, we used the supervised learning method presented in [67]. In particular, we employed the point clouds and annotations of 700 scenes for the training of the deep neural network (see [67] for details). After training, measurement extraction provides cubes that indicate vehicle locations and corresponding confidence scores on (0,1](0,1]. We only used lidar observations inside vehicle-related detected cubes that have a confidence score larger than 0.250.25 as measurements for the EOT methods. Measurements and ground truth annotations are converted to a global reference frame. The ROI covers an area of 62,50062,500m2. The four scenes S1–S4888 These four scenes can be identified by their tokens 8b31aa5cac3846a6 a197c507523926f9, 9e79971671284ff482c63a1f658e703d, ee 4979d9ef9e417f9337d09d62072692, and 06b1e705b90641ce83 500b71c0dbf037, respectively (see [66] for details). considered for performance evaluation, have not been used for the training.

We represent the extent state of vehicles by using the 2-D version of the cubical model introduced in Section II-B and [56, Section 2]. The kinematic states of vehicles is modeled by their 2-D position and velocity, as well as their turn rate 𝗍𝗄,𝗇\mathsfbr{t}_{k,n} and their mean number of generated measurements 𝗌𝗄,𝗇\mathsfbr{s}_{k,n}, i.e., 𝘅k,n=[𝗉𝗄,𝗇(𝟣)𝗉𝗄,𝗇(𝟤)𝗉˙𝗄,𝗇(𝟣)𝗉˙𝗇,𝗄(𝟤)𝗍𝗄,𝗇𝗌𝗄,𝗇]T\bm{\mathsfbr{x}}_{k,n}=[\mathsfbr{p}^{(1)}_{k,n}\;\hskip 0.85358pt\mathsfbr{p}^{(2)}_{k,n}\;\hskip 0.85358pt\dot{\mathsfbr{p}}^{(1)}_{k,n}\;\hskip 0.85358pt\dot{\mathsfbr{p}}^{(2)}_{n,k}\;\hskip 0.85358pt\mathsfbr{t}_{k,n}\;\hskip 0.85358pt\mathsfbr{s}_{k,n}]^{\text{T}}. Since the number of measurements that a vehicle generates strongly depends on its distance to the lidar sensor, the mean number of measurements is part of the random vehicle state, i.e., μm(𝘅k,n,𝗲k,n)=𝗌𝗄,𝗇\mu_{\mathrm{m}}(\bm{\mathsfbr{x}}_{k,n},\bm{\mathsfbr{e}}_{k,n})=\mathsfbr{s}_{k,n}. The mean number of measurements 𝗌𝗄,𝗇\mathsfbr{s}_{k,n} follows the state transition model in [5, Table III] with parameter η=10\eta=10. The kinematic vehicle state and the extent state follow the state transition model in (4) with 𝒻()\mathpzc{f}(\cdot) and 𝑽()\bm{V}(\cdot) as given in [12]. The parameters of the state transition model are q=2000q=2000, σ𝖼=10m/s2\sigma_{\mathsfbr{c}}\!=10\hskip 0.85358pt\hskip 0.85358pt\text{m}/\text{s}^{2}, and σ𝗍=0.003rad/s2\sigma_{\mathsfbr{t}}\!=0.003\hskip 0.85358pt\hskip 0.85358pt\text{rad}/\text{s}^{2}. The survival probability is ps=0.999p_{\mathrm{s}}=0.999. In addition, the linear-Gaussian measurement model in (42) with σ𝗎=5103\sigma_{\mathsfbr{u}}=5\cdot 10^{-3}\hskip 0.85358ptm was used. Extracted lidar observations are voxelized with a resolution of 0.50.5m and their z-coordinate is ignored. We model newly detected vehicles as fn(𝒙¯k,n,𝒆¯k,n)=fn(𝒑¯k,n)fn(𝒆¯k,n)fn(𝒎¯k,n)f_{\mathrm{n}}(\overline{\bm{x}}_{k,n},\overline{\bm{e}}_{k,n})=f_{\mathrm{n}}(\overline{\bm{p}}_{k,n})f_{\mathrm{n}}(\overline{\bm{e}}_{k,n})f_{\mathrm{n}}(\overline{\bm{m}}_{k,n}), with fn(𝒑¯k,n)f_{\mathrm{n}}(\overline{\bm{p}}_{k,n}) uniformly distributed on the ROI and fn(𝒆¯k,n)f_{\mathrm{n}}(\overline{\bm{e}}_{k,n}) following an inverse Wishart distribution with mean matrix 3𝑰23\hskip 0.85358pt\bm{I}_{2} and 3030 degrees of freedom. In addition, we set fn(𝒎¯k,n)=fn(𝒑¯˙k,n,t¯k,n)fn(s¯k,n)f_{\mathrm{n}}(\overline{\bm{m}}_{k,n})=f_{\mathrm{n}}(\dot{\overline{\bm{p}}}_{k,n},\overline{t}_{k,n})f_{\mathrm{n}}(\overline{s}_{k,n}) where fn(𝒑¯˙k,n,t¯k,n)f_{\mathrm{n}}(\dot{\overline{\bm{p}}}_{k,n},\overline{t}_{k,n}) is zero-mean Gaussian distributed with covariance matrix diag(52m2/s2,52m2/s2,0.012rad2/s2)\mathrm{diag}\big{(}5^{2}\text{m}^{2}/\text{s}^{2},5^{2}\hskip 0.85358pt\text{m}^{2}/\text{s}^{2},\hskip 0.85358pt\hskip 0.85358pt0.01^{2}\hskip 0.85358pt\text{rad}^{2}/\text{s}^{2}\big{)} and fn(s¯k,n)f_{\mathrm{n}}(\overline{s}_{k,n}) follows a Gamma distribution with mean 3030 and variance 55. The number of SPA iterations is P=3P=3 and the number of particles was again either set to J=1000J=1000 or to J=10000J=10000 (denoted as SPA-1000 and SPA-10000, respectively). All the other parameters are set as described in Section VI-B.

Refer to caption
Figure 7: Time step n=105n=105 of scene S4 in the nuScenes urban autonomous driving dataset. Lidar observations, ground truth, and estimation results are shown.

Fig. 7 shows the lidar observations, true vehicle positions, true vehicle extents, true vehicle tracks, estimated vehicle positions, estimated vehicle extents, and estimated vehicle tracks for time step n=105n=105 of scene S4. It can seen that all five actual vehicles are detected and tracked reliably. Videos of estimation results are available on fmeyer.ucsd.edu.

We use the PMBM filter based on the same system model described in Section VI-A as a reference method. The driving noise standard deviation of the PMBM was set to σ𝖼=30m/s2\sigma_{\mathsfbr{c}}\!=30\hskip 0.85358pt\hskip 0.85358pt\text{m}/\text{s}^{2}. Furthermore, the transformation matrix and maneuvering correlation constant (see [5, Table III]) used for extent prediction were set to 𝑰2\bm{I}_{2} and 2020 respectively. All other model parameters were chosen as for the proposed method. The parameters for measurement clustering, event pruning, and recycling were set as discussed in Section VI-B (denoted as PMBM-C, PMBM-F, PMBM-CR, and PMBM-FR).

As performance metric we use the generalized OSPA (GOSPA) [64] based on the 2-norm with parameters p=1p=1 and c=5c=5. Only the kinematic state was used for the evaluation of the GOSPA. The mean GOSPA for the individual methods—averaged over the four considered scenes and all time steps—as well as runtimes per time step on a single core of an Intel Xeon Gold 5222 CPU are summarized in Table II. It can again be seen that the proposed SPA-based method outperforms the PMBM in terms of mean GOSPA and mean individual error contributions. These performance advantages of the proposed SPA-based method are related to its more accurate system model as well as its particle-based implementation. Interestingly, all PMBM variants perform very similarly.

Method Total State Missed False Runtime
SPA-1000 7.637.63 4.334.33 1.401.40 1.891.89 0.070.07
SPA-10000 7.21¯\underline{7.21} 4.13¯\underline{4.13} 1.37¯\underline{1.37} 1.71¯\underline{1.71} 0.430.43
PMBM-FR 8.608.60 4.994.99 1.821.82 1.801.80 2.932.93
PMBM-F 8.608.60 4.984.98 1.821.82 1.811.81 2.342.34
PMBM-CR 8.578.57 5.035.03 1.761.76 1.781.78 0.160.16
PMBM-C 8.618.61 5.075.07 1.761.76 1.771.77 0.140.14
TABLE II: Mean GOSPA and runtime per time step in seconds for the considered vehicle tracking scenario. The total GOSPA error as well as individual error contributions are shown.

VIII Conclusion

Detection, localization, and tracking of multiple objects is a key task in a variety of applications including autonomous navigation and applied ocean sciences. This paper introduced a scalable method for EOT. The proposed method is based on a factor graph formulation and the SPA. It dynamically introduces states of newly detected objects, and efficiently performs probabilistic data association, allowing for multiple measurements per object. Scalable inference of object tracks and their geometric shape is enabled by modeling association uncertainty by measurement-oriented association variables and newly detected objects by a Poisson birth process. The fully particle-based approach can represent the extent of objects by different geometric shapes. In addition, it yields a computational complexity that only scales quadratically in the number of objects and the number of measurements. This excellent scalability translates to an improved EOT performance compared to existing methods because it makes it possible to (i) generate and maintain a very large number of POs and (ii) avoid clustering of measurements, allowing problems with closely-spaced extended objects to be addressed.

Simulation results in a challenging scenario with intersecting object tracks showed that the proposed method can outperform the recently introduced Poisson multi-Bernoulli (PMBM) filter despite yielding a reduced computational complexity. The application of the proposed method to real measurement data captured by a lidar sensor in an urban autonomous driving scenario also demonstrated performance advantages compared to the PMBM filter. For the extraction of vehicle-related lidar measurements, supervised learning based on a deep neural network was used. This motivates future research on multiobject tracking methods that closely integrate neural networks and iterative message passing. Other promising directions for future research are the development of highly parallelized variants of the proposed method that exploit particle flow [68] and are suitable for real-time implementations on graphical processing units (GPUs).

Acknowledgment

The authors would like to thank Dr. E. Leitinger and W. Zhang for carefully reading the manuscript.

[Uncaptioned image] Florian Meyer (S’12–M’15) received the Dipl.-Ing. (M.Sc.) and Ph.D. degrees (with highest honors) in electrical engineering from TU Wien, Vienna, Austria in 2011 and 2015, respectively. He is an Assistant Professor with the University of California San Diego, La Jolla, CA, jointly between the Scripps Institution of Oceanography and the Electrical and Computer Engineering Department. From 2017 to 2019 he was a Postdoctoral Fellow and Associate with Laboratory for Information & Decision Systems at Massachusetts Institute of Technology, Cambridge, MA, and from 2016 to 2017 he was a Research Scientist with NATO Centre for Maritime Research and Experimentation, La Spezia, Italy. Dr. Meyer was a keynote speaker at the IEEE Aerospace Conference in 2020. He served on the technical program committees of several IEEE conferences and as a co-chair of the IEEE Workshop on Advances in Network Localization and Navigation at the IEEE International Conference on Communications in 2018, 2019, and 2020. He is an Associate Editor for the IEEE Transactions on Aerospace and Electronic Systems and the ISIF Journal of Advances in Information Fusion as well as an Erwin Schrödinger Fellow.
[Uncaptioned image] Jason L. Williams (S’01–M’07–SM’16) received degrees of BE(Electronics)/BInfTech from Queensland University of Technology, MSEE from the United States Air Force Institute of Technology, and PhD from Massachusetts Institute of Technology. He is currently a Senior Research Scientist in Robotic Perception at the Robotics and Autonomous Systems Group of Commonwealth Scientific and Industrial Research Organisation, Brisbane, Australia. His research interests include SLAM, computer vision, multiple object tracking and motion planning. He previously worked in sensor fusion and resource management as a Senior Research Scientist at the Defence Science and Technology Group, Australia, and in electronic warfare as an engineering officer in the Royal Australian Air Force.

References

  • [1] K. Granström, M. Baum, and S. Reuter, “Extended object tracking: Introduction, overview and applications,” J. Adv. Inf. Fusion, vol. 12, no. 2, pp. 139–174, Dec. 2017.
  • [2] Y. Bar-Shalom, P. K. Willett, and X. Tian, Tracking and Data Fusion: A Handbook of Algorithms.   Storrs, CT: Yaakov Bar-Shalom, 2011.
  • [3] R. Mahler, Statistical Multisource-Multitarget Information Fusion.   Norwood, MA: Artech House, 2007.
  • [4] F. Meyer, T. Kropfreiter, J. L. Williams, R. A. Lau, F. Hlawatsch, P. Braca, and M. Z. Win, “Message passing algorithms for scalable multitarget tracking,” Proc. IEEE, vol. 106, no. 2, pp. 221–259, Feb. 2018.
  • [5] K. Granström, M. Fatemi, and L. Svensson, “Poisson multi-Bernoulli mixture conjugate prior for multiple extended target filtering,” IEEE Trans. Aerosp. Electron. Syst., vol. 56, no. 1, pp. 208–225, Feb. 2020.
  • [6] M. Schuster, J. Reuter, and G. Wanielik, “Probabilistic data association for tracking extended targets under clutter using random matrices,” in Proc. FUSION-15, Washington DC, Jul. 2015, pp. 961–968.
  • [7] K. Granström, C. Lundquist, and U. Orguner, “Extended target tracking using a Gaussian-mixture PHD filter,” IEEE Trans. Aerosp. Electron. Syst., vol. 48, no. 4, pp. 3268–3285, Oct. 2012.
  • [8] M. Beard, S. Reuter, K. Granström, B. Vo, B. Vo, and A. Scheel, “Multiple extended target tracking with labeled random finite sets,” IEEE Trans. Signal Process., vol. 64, no. 7, pp. 1638–1653, Apr. 2016.
  • [9] Y. Xia, K. Granström, L. Svensson, Ángel F. García-Fernández, and J. L. Williams, “Extended target Poisson multi-Bernoulli mixture trackers based on sets of trajectories,” in Proc. FUSION-19, Ottawa, Canada, Jul. 2019.
  • [10] J. W. Koch, “Bayesian approach to extended object and cluster tracking using random matrices,” IEEE Trans. Aerosp. Electron. Syst., vol. 44, no. 3, pp. 1042–1059, Jul. 2008.
  • [11] C.-Y. Feldmann, D. Fränken, and J. W. Koch, “Tracking of extended objects and group targets using random matrices,” IEEE Trans. Signal Process., vol. 59, no. 4, pp. 1409–1420, Apr. 2011.
  • [12] K. Granström and U. Orguner, “New prediction for extended targets with random matrices,” IEEE Trans. Aerosp. Electron. Syst., vol. 50, no. 2, pp. 1577–1589, 2014.
  • [13] S. Yang and M. Baum, “Tracking the orientation and axes lengths of an elliptical extended object,” IEEE Trans. Signal Process., vol. 67, no. 18, pp. 4720–4729, Sep. 2019.
  • [14] G. Vivone, K. Granström, P. Braca, and P. Willett, “Multiple sensor measurement updates for the extended target tracking random matrix model,” IEEE Trans. Aerosp. Electron. Syst., vol. 53, no. 5, pp. 2544–2558, 2017.
  • [15] J. L. Williams, “Marginal multi-Bernoulli filters: RFS derivation of MHT, JIPDA and association-based MeMBer,” IEEE Trans. Aerosp. Electron. Syst., vol. 51, no. 3, pp. 1664–1687, Jul. 2015.
  • [16] D. B. Reid, “An algorithm for tracking multiple targets,” IEEE Trans. Autom. Control, vol. 24, no. 6, pp. 843–854, Dec. 1979.
  • [17] T. Kurien, “Issues in the design of practical multitarget tracking algorithms,” in Multitarget-Multisensor Tracking: Advanced Applications, Y. Bar-Shalom, Ed.   Norwood, MA: Artech-House, 1990, pp. 43–83.
  • [18] S. Coraluppi and C. Carthel, “Distributed tracking in multistatic sonar,” IEEE Trans. Aerosp. Electron. Syst., vol. 41, no. 3, pp. 1138–1147, Jul. 2005.
  • [19] B.-N. Vo, S. Singh, and A. Doucet, “Sequential Monte Carlo methods for multitarget filtering with random finite sets,” IEEE Trans. Aerosp. Electron. Syst., vol. 41, no. 4, pp. 1224–1245, Oct. 2005.
  • [20] B.-T. Vo, B.-N. Vo, and A. Cantoni, “Analytic implementations of the cardinalized probability hypothesis density filter,” IEEE Trans. Signal Process., vol. 55, no. 7, pp. 3553–3567, Jul. 2007.
  • [21] B.-N. Vo, B.-T. Vo, and D. Phung, “Labeled random finite sets and the Bayes multi-target tracking filter,” IEEE Trans. Signal Process., vol. 62, no. 24, pp. 6554–6567, Dec. 2014.
  • [22] B. K. Habtemariam, R. Tharmarasa, T. Kirubarajan, D. Grimmett, and C. Wakayama, “Multiple detection probabilistic data association filter for multistatic target tracking,” in Proc. FUSION-11, Jul. 2011.
  • [23] L. Hammarstrand, L. Svensson, F. Sandblom, and J. Sorstedt, “Extended object tracking using a radar resolution model,” IEEE Trans. Aerosp. Electron. Syst., vol. 48, no. 3, pp. 2371–2386, Jul. 2012.
  • [24] B. Habtemariam, R. Tharmarasa, T. Thayaparan, M. Mallick, and T. Kirubarajan, “A multiple-detection joint probabilistic data association filter,” IEEE J. Sel. Topics Signal Process., vol. 7, no. 3, pp. 461–471, Jun. 2013.
  • [25] F. Meyer and M. Z. Win, “Scalable data association for extended object tracking,” IEEE Trans. Signal Inf. Process. Netw., vol. 6, pp. 491–507, May 2020.
  • [26] S. P. Coraluppi and C. A. Carthel, “Multiple-hypothesis tracking for targets producing multiple measurements,” IEEE Trans. Aerosp. Electron. Syst., vol. 54, no. 3, pp. 1485–1498, Jun. 2018.
  • [27] G. Gennarelli, G. Vivone, P. Braca, F. Soldovieri, and M. G. Amin, “Multiple extended target tracking for through-wall radars,” IEEE Trans. Geosci. Remote Sens., vol. 53, no. 12, pp. 6482–6494, Dec. 2015.
  • [28] G. Vivone and P. Braca, “Joint probabilistic data association tracker for extended target tracking applied to X-band marine radar data,” IEEE J. Ocean. Eng., vol. 41, no. 4, pp. 1007–1019, Oct. 2016.
  • [29] K. Granström, L. Svensson, S. Reuter, Y. Xia, and M. Fatemi, “Likelihood-based data association for extended object tracking using sampling methods,” IEEE Trans. Intell. Veh., vol. 3, no. 1, pp. 30–45, 2018.
  • [30] J. Böhler, T. Baur, S. Wirtensohn, and J. Reuter, “Stochastic partitioning for extended object probability hypothesis density filters,” in Proc. SDF-19, Bonn, Germany, 2019.
  • [31] T. Kropfreiter, F. Meyer, and F. Hlawatsch, “A fast labeled multi-Bernoulli filter using belief propagation,” IEEE Trans. Aerosp. Electron. Syst., vol. 56, no. 3, pp. 2478–2488, Jun. 2020.
  • [32] D. Koller and N. Friedman, Probabilistic Graphical Models: Principles and Techniques.   Cambridge, MA: MIT Press, 2009.
  • [33] F. R. Kschischang, B. J. Frey, and H.-A. Loeliger, “Factor graphs and the sum-product algorithm,” IEEE Trans. Inf. Theory, vol. 47, no. 2, pp. 498–519, Feb. 2001.
  • [34] J. Yedidia, W. Freemand, and Y. Weiss, “Constructing free-energy approximations and generalized belief propagation algorithms,” IEEE Trans. Inf. Theory, vol. 51, no. 7, pp. 2282–2312, July 2005.
  • [35] M. P. C. Fossorier, M. Mihaljevic, and H. Imai, “Reduced complexity iterative decoding of low-density parity check codes based on belief propagation,” IEEE Trans. Commun., vol. 47, no. 5, pp. 673–680, May 1999.
  • [36] T. J. Richardson and R. L. Urbanke, “The capacity of low-density parity-check codes under message-passing decoding,” IEEE Trans. Inf. Theory, vol. 47, no. 2, pp. 599–618, Feb. 2001.
  • [37] F. Meyer, B. Etzlinger, Z. Liu, F. Hlawatsch, and M. Z. Win, “A scalable algorithm for network localization and synchronization,” IEEE Internet Things J., vol. 5, no. 6, pp. 4714–4727, Dec. 2018.
  • [38] J. L. Williams and R. Lau, “Approximate evaluation of marginal association probabilities with belief propagation,” IEEE Trans. Aerosp. Electron. Syst., vol. 50, no. 4, pp. 2942–2959, Oct. 2014.
  • [39] T. Kropfreiter, F. Meyer, and F. Hlawatsch, “Sequential Monte Carlo implementation of the track-oriented marginal multi-Bernoulli/Poisson filter,” in Proc. FUSION-16, Jul. 2016, pp. 972–979.
  • [40] F. Meyer, P. Braca, P. Willett, and F. Hlawatsch, “A scalable algorithm for tracking an unknown number of targets using multiple sensors,” IEEE Trans. Signal Process., vol. 65, no. 13, pp. 3478–3493, Jul. 2017.
  • [41] G. Soldi, F. Meyer, P. Braca, and F. Hlawatsch, “Self-tuning algorithms for multisensor-multitarget tracking using belief propagation,” IEEE Trans. Signal Process., vol. 67, no. 15, pp. 3922–3937, Aug. 2019.
  • [42] R. A. Lau and J. L. Williams, “A structured mean field approach for existence-based multiple target tracking,” in Proc. FUSION-16, Heidelberg, Germany, Jul. 2016, pp. 1111–1118.
  • [43] W. Zhang and F. Meyer, “Graph-based multiobject tracking with embedded particle flow,” in Proc. IEEE RadarConf-21, Atlanta, GA, USA, May 2021.
  • [44] E. Leitinger, F. Meyer, P. Meissner, K. Witrisal, and F. Hlawatsch, “Belief propagation based joint probabilistic data association for multipath-assisted indoor navigation and tracking,” in Proc. ICL-GNSS-16, Barcelona, Spain, Jun. 2016.
  • [45] E. Leitinger, F. Meyer, F. Hlawatsch, K. Witrisal, F. Tufvesson, and M. Z. Win, “A belief propagation algorithm for multipath-based SLAM,” IEEE Trans. Wireless Commun., vol. 18, no. 11, pp. 5613–5629, Nov. 2019.
  • [46] R. Mendrzik, F. Meyer, G. Bauch, and M. Z. Win, “Enabling situational awareness in millimeter wave massive MIMO systems,” IEEE J. Sel. Topics Signal Process., vol. 13, no. 5, pp. 1196–1211, Sep. 2019.
  • [47] X. Li, E. Leitinger, A. Venus, and F. Tufvesson, “Sequential detection and estimation of multipath channel parameters using belief propagation,” 2021.
  • [48] F. Meyer and M. Z. Win, “Joint navigation and multitarget tracking in networks,” in Proc. IEEE ICC-18, Kansas City, MO, May 2018.
  • [49] F. Meyer, O. Hlinka, H. Wymeersch, E. Riegler, and F. Hlawatsch, “Distributed localization and tracking of mobile networks including noncooperative objects,” IEEE Trans. Signal Inf. Process. Netw., vol. 2, no. 1, pp. 57–71, Mar. 2016.
  • [50] F. Meyer, Z. Liu, and M. Z. Win, “Network localization and navigation using measurements with uncertain origin,” in Proc. FUSION-18, Cambridge, UK, Jul. 2018, pp. 2237–2243.
  • [51] ——, “Scalable probabilistic data association with extended objects,” in Proc. IEEE ICC-19, Shanghai, China, May 2019.
  • [52] Y. Li, P. Wei, Y. Chen, Y. Wei, and H. Zhang, “Message passing based extended objects tracking with measurement rate and extension estimation,” in Proc. IEEE RadarConf-21, Atlanta, GA, USA, May 2021.
  • [53] S. Yang, K. Thormann, and M. Baum, “Linear-time joint probabilistic data association for multiple extended object tracking,” in Proc. IEEE SAM-18, Sheffield, UK, Feb. 2018, pp. 6–10.
  • [54] S. Yang, L. M. Wolf, and M. Baum, “Marginal association probabilities for multiple extended objects without enumeration of measurement partitions,” in Proc. FUSION-20, Pretoria, South Africa, Jul. 2020.
  • [55] F. Meyer and J. L. Williams, “Scalable detection and tracking of extended objects,” in Proc. ICASSP-20, Barcelona, Spain, May 2020, pp. 8916–8920.
  • [56] F. Meyer and J. L. Williams, “Scalable detection and tracking of geometric extended objects: Supplementary material,” 2021, arXiv:2103.11279.
  • [57] H. V. Poor, An Introduction to Signal Detection and Estimation, 2nd ed.   New York: Springer-Verlag, 1994.
  • [58] J. L. Williams and R. A. Lau, “Multiple scan data association by convex variational inference,” IEEE Trans. Signal Process., vol. 66, no. 8, pp. 2112–2127, Apr. 2018.
  • [59] M. S. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, “A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking,” IEEE Trans. Signal Process., vol. 50, no. 2, pp. 174–188, Feb. 2002.
  • [60] A. Doucet, N. de Freitas, and N. Gordon, Sequential Monte Carlo Methods in Practice.   Springer, 2001.
  • [61] S. J. Julier and J. K. Uhlmann, “Unscented filtering and nonlinear estimation,” Proc. IEEE, vol. 92, no. 3, pp. 401–422, Mar. 2004.
  • [62] Y. Bar-Shalom, T. Kirubarajan, and X.-R. Li, Estimation with Applications to Tracking and Navigation.   New York, NY, USA: Wiley, 2002.
  • [63] D. Schuhmacher, B.-T. Vo, and B.-N. Vo, “A consistent metric for performance evaluation of multi-object filters,” IEEE Trans. Signal Process., vol. 56, no. 8, pp. 3447–3457, Aug. 2008.
  • [64] A. S. Rahmathullah, A. F. Garcia-Fernandez, and L. Svensson, “Generalized optimal sub-pattern assignment metric,” in Proc. FUSION-17, Xi’an, China, Jul. 2017.
  • [65] J. L. Williams, “Hybrid Poisson and multi-Bernoulli filters,” in Proc. FUSION-12, Singapore, Jul. 2012, pp. 1103–1110.
  • [66] The nuScenes Dataset. [Online]. Available: https://www.nuscenes.org/
  • [67] B. Zhu, Z. Jiang, X. Zhou, Z. Li, and G. Yu, “Class-balanced grouping and sampling for point cloud 3D object detection,” arXiv:1908.09492, 2019.
  • [68] Y. Li and M. Coates, “Particle filtering with invertible particle flow,” IEEE Trans. Signal Process., vol. 65, no. 15, pp. 4102–4116, Aug. 2017.