A Random Finite Set Approach for Dynamic

A Random Finite Set Approach
for Dynamic Occupancy Grid Maps
Dominik Nuß
Band 20
Schriftenreihe des Instituts für Mess-, Regel- und Mikrotechnik
Dominik Stefan Nuß
A Random Finite Set Approach for
Dynamic Occupancy Grid Maps
Schriftenreihe des
Instituts für Mess-, Regel- und Mikrotechnik
Universität Ulm
Herausgeber:
Prof. Dr.-Ing. Klaus Dietmayer
Band 20
Dominik Stefan Nuß
A Random Finite Set Approach for
Dynamic Occupancy Grid Maps
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der
Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind
im Internet über http://dnb.dnb.de abrufbar.
Dissertation, Universität Ulm,
Fakultät für Ingenieurwissenschaften, Informatik und Psychologie, 2016
Impressum
Universität Ulm
Institut für Mess-, Regel- und Mikrotechnik
Prof. Dr.-Ing. Klaus Dietmayer
Albert-Einstein-Allee 41
89081 Ulm
http://www.uni-ulm.de/mrm
Eine Übersicht über alle Bände der Schriftenreihe finden Sie unter
http://www.uni-ulm.de/mrmschriften.
Diese Veröffentlichung ist im Internet auf dem Ulmer Volltextserver (http://vts.uni-ulm.de) verfügbar
und dort unter der Lizenz “B - Standard (ohne Print-On-Demand)” publiziert.
Details zur Lizenz sind unter http://www.uni-ulm.de/index.php?id=50392 zu finden.
Institut für Mess-, Regel- und Mikrotechnik der Universität Ulm 2017
Print on Demand
ISBN 978-3-941543-28-7
e-ISBN 978-3-941543-29-4
A Random Finite Set Approach for
Dynamic Occupancy Grid Maps
DISSERTATION
zur Erlangung des akademischen Grades eines
DOKTOR-INGENIEURS
(Dr.-Ing.)
der Fakultät für Ingenieurwissenschaften, Informatik
und Psychologie der Universität Ulm
von
Dominik Stefan Nuß
aus Balingen
Gutachter:
Prof. Dr.-Ing. Klaus Dietmayer
Priv.-Doz. Dr. Wolfgang Koch
Amtierender Dekan:
Prof. Dr. rer. nat. Frank Kargl
Ulm, 16.12.2016
The acknowledgments were removed in the online version for privacy reasons.
Preamble
A short version of the thesis has been submitted for publication in The International
Journal of Robotics Research and has been made available to the public via arXiv:
Nuss, Dominik; Reuter, Stephan; Thom, Markus; Yuan, Ting; Krehl, Gunther; Maile,
Michael; Gern, Axel; Dietmayer, Klaus: A random finite set approach for dynamic
occupancy grid maps with real-time application. In: ArXiv e-prints, 2016. Available
online at http://arxiv.org/abs/1605.02406.
Abstract
Reliable vehicle environment perception is a basic prerequisite for advanced driver
assistant systems and autonomously driving cars. A common environment representation form is an occupancy grid map. It divides the environment into single grid
cells and estimates for each cell whether the space it represents is occupied or free,
assuming grid cells are independent of each other. The mathematical framework is
based on the binary Bayes filter (BBF), which combines sensor measurements from
different sensors and potentially from different points in time. Since an occupancy
grid map does not employ a concept of individual objects, it is able to represent
arbitrarily shaped obstacles.
A classical occupancy grid map is not eligible for estimating dynamic environments,
because it does not apply a process model. A much-noticed extension to a static
occupancy grid map is the Bayesian occupancy filter (BOF). In contrast to a classical
occupancy grid, the BOF estimates a velocity distribution for the occupancy of each
grid cell based on a histogram filter. Since the BOF is computationally extremely
demanding, recent publications suggest to represent the dynamic state of grid cells
with particles. This allows to calculate dynamic grid maps in real-time applications
with increased grid cell size and resolution. Today, dynamic occupancy grid maps are
still a younger research area and not as well-studied as object-tracking approaches
are. Up to now, the BOF has been addressed as a research field with little connection
to other tracking methods.
This work presents a new concept of dynamic grid mapping as an approximation
of a random finite set (RFS) filter. A random finite set is a general, probabilistic
representation of a random but limited number of objects and their states. The finite
set statistics (FISST) describe Bayesian filtering of random finite sets and are basis
for a number of multi-object tracking approaches like the probability hypothesis
density (PHD) filter. Describing the grid as a random finite set allows transferring
advanced concepts from the well-established field of random finite set filtering to
the field of dynamic grid mapping. The thesis derives a filter called probability
hypothesis density / multi-instance Bernoulli (PHD/MIB) filter, which represents
and propagates the dynamic grid map in alternating forms as a PHD and as multiple
instances of Bernoulli filters.
Additionally, the thesis presents a sequential Monte Carlo (SMC) realization of
the PHD/MIB filter and an approximation in the Dempster-Shafer domain called
Dempster-Shafer PHD/MIB (DS-PHD/MIB) filter, which requires a smaller number
of particles than the original PHD/MIB filter. The thesis describes in detail an
efficient, massively parallel implementation of the DS-PHD/MIB filter and outlines
the algorithm in pseudo code.
Finally, the thesis describes characteristics of the DS-PHD/MIB filter and discusses
its advantages and disadvantages compared to object-based tracking approaches
using practical application examples. A quantitative evaluation with real-world data
shows that the DS-PHD/MIB filter provides consistent state estimation results and
that it appropriately models the stochastic multi-object transition process and the
stochastic multi-object observation process. Furthermore, the evaluation confirms
the real-time capability of the parallelized implementation of the DS-PHD/MIB
filter and its usefulness for state estimation of a dynamic vehicle environment.
Kurzfassung
Die zuverlässige Wahrnehmung des Fahrzeugumfelds ist eine Grundvoraussetzung
für fortgeschrittene Fahrerassistenzsysteme und autonom fahrende Fahrzeuge. Eine
weit verbreitete Repräsentation der Fahrzeugumgebung ist eine Belegungskarte,
welche die Umgebung in einzelne Rasterzellen unterteilt und für jede Zelle die
Belegungswahrscheinlichkeit schätzt. Dies erfolgt meist unter der Annahme, dass
Rasterzellen untereinander statistisch unabhängig sind. Die Basis hierfür bildet das
binary Bayes filter (BBF), welches Sensordaten kombiniert, die von unterschiedlichen
Sensoren und unterschiedlichen Zeitpunkten stammen können. Da Rasterkarten auf
Objektkonzeptionen verzichten, sind sie in der Lage beliebig geformte Hindernisse
abzubilden.
Klassische Rasterkarten sind nicht geeignet, den Zustand dynamischer Umgebungen zu schätzen, da sie keine dynamischen Prozessmodelle berücksichtigen. Eine
viel beachtete Erweiterung statischer Rasterkarten ist das Bayesian occupancy filter (BOF). Im Gegensatz zu klassischen Belegungskarten schätzt das BOF eine
Geschwindigkeitsverteilung für jede Rasterzelle auf Basis eines Histogrammfilters.
Da das BOF rechentechnisch aufwändig ist, empfehlen jüngste Veröffentlichungen, den dynamischen Zustand der Rasterzellen durch Partikel abzubilden, was
die Echtzeit-Anwendung von Belegungskarten für einen größeren Bereich und mit
höherer Auflösung ermöglicht. Nach wie vor sind dynamische Rasterkarten ein junges
Forschungsfeld und weniger ausgereift als objektbasierte Zustandsschätzer. Bislang
wurden in diesem Forschungsfeld kaum Verbindungen zu anderen Bereichen der
Zustandsschätzung untersucht.
Diese Arbeit legt ein Konzept vor, welches die dynamische Zustandsschätzung mit
Rasterkarten als Approximation eines random finite set (RFS) Filters beschreibt.
Ein random finite set beschreibt eine Menge von Objekten und deren dynamischen
Zustand. Die Anzahl der Objekte ist hierbei probabilistisch verteilt aber limitiert.
Die sogenannten finite set statistics (FISST) behandeln Bayes’sche Filter für random
finite sets und bilden die Grundlage für viele Multi-Objekt-Zustandsschätzer wie das
probability hypothesis density (PHD) Filter.
Die Belegungskarte als random finite set auszudrücken erlaubt es, fortgeschrittene
und bewährte Konzepte aus dem umfangreich untersuchten Forschungsfeld der
random finite set Filter auf dynamische Rasterkarten zu übertragen. Die Arbeit
leitet daraus ein Filter ab, genannt probability hypothesis density / multi-instance
Bernoulli (PHD/MIB) Filter, welches den Zustand dynamischer Rasterkarten schätzt
und dabei in wechselnder Form als PHD und durch mehrere Instanzen von Bernoulli
random finite sets abbildet.
Zudem schlägt die Arbeit eine sequential Monte Carlo (SMC) Realisierung vor
und eine Approximation auf Basis der Dempster-Shafer Evidenztheorie, die als
Dempster-Shafer PHD/MIB (DS-PHD/MIB) Filter bezeichnet wird. Diese erlaubt die Anwendung mit einer reduzierten Anzahl an Partikeln gegenüber des
ursprünglichen PHD/MIB Filters. Die Arbeit beschreibt eine effiziente, stark parallelisierte Implementierung des DS-PHD/MIB Filters und erläutert diese anhand von
Pseudo-Quellcode.
Abschließend beschreibt die Arbeit charakteristische Eigenschaften des DS-PHD/MIB
Filters und diskutiert dessen Vor- und Nachteile gegenüber objektbasierten Zustandsschätzern anhand praktischer Bespiele. Eine quantitative Evaluation zeigt,
dass das DS-PHD/MIB Filter einen konsistenten Zustandsschätzer darstellt, der
den stochastischen Multi-Objekt-Zustand der Umgebung und dessen stochastischen
Multi-Objekt-Beobachtungsprozess berücksichtigt. Die Evaluierung bestätigt außerdem die Echtzeit-Fähigkeit der parallelen Implementierung und die Eignung des
DS-PHD/MIB Filters für die Zustandsschätzung des dynamischen Fahrzeugumfelds.
Contents
1 Introduction
1
2 Object Tracking
2.1 Single-Object Tracking . . . . . . . . . . . . . . . . . . .
2.1.1 Bayesian Filter . . . . . . . . . . . . . . . . . . .
2.1.2 Kalman Filter . . . . . . . . . . . . . . . . . . . .
2.1.3 Particle Filter . . . . . . . . . . . . . . . . . . . .
2.2 Multi-Object Tracking and Random Finite Set Statistics
2.2.1 Random Finite Set Statistics . . . . . . . . . . .
2.2.2 Multi-Object Probability Distributions . . . . . .
2.2.3 Multi-Object Filtering . . . . . . . . . . . . . . .
2.2.4 Bernoulli Filter . . . . . . . . . . . . . . . . . . .
2.2.5 Probability Hypothesis Density Filter . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
5
7
9
11
12
14
16
19
20
3 Grid Mapping
3.1 Static Grid Mapping . . . . . . . . . . . . . . . . . . . .
3.1.1 Ego Motion Compensation with Dead Reckoning
3.1.2 Measurement Grid Calculation . . . . . . . . . .
3.1.3 Grid Map Update . . . . . . . . . . . . . . . . .
3.2 Dynamic Grid Mapping . . . . . . . . . . . . . . . . . .
3.2.1 State of the Art in Dynamic Grid Mapping using
3.2.2 Discussion . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
Particles .
. . . . . .
.
.
.
.
.
.
.
25
25
26
28
30
32
33
35
.
.
.
.
.
.
.
.
37
37
38
39
40
40
43
52
55
5 Particle Realization and Dempster-Shafer Approximation
5.1 Particle Realization of the PHD/MIB Filter . . . . . . . . . . . . . .
5.1.1 Particle Prediction Step . . . . . . . . . . . . . . . . . . . . .
57
57
58
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4 Dynamic Grid Mapping as a Random Finite Set Problem
4.1 Problem Setting . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1 Environment Definition . . . . . . . . . . . . . . . . . . .
4.1.2 Filter Recursion Outline . . . . . . . . . . . . . . . . . . .
4.2 Probability Hypothesis Density / Multi-Instance Bernoulli Filter
4.2.1 Prediction Step of the MIB/PHD Filter . . . . . . . . . .
4.2.2 Update Step of the PHD/MIB Filter . . . . . . . . . . . .
4.3 Relation between PHD/MIB Filter and Binary Bayes Filter . . .
4.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
xvi
Contents
5.1.2 Particle Update Step . . . . . . . . . . . . . . . . . . . . . . .
5.1.3 Resampling . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Real-time Approximation using Dempster-Shafer Theory of Evidence
5.2.1 Dempster-Shafer Theory of Evidence . . . . . . . . . . . . . .
5.2.2 State Representation with Dempster-Shafer Approximation .
5.2.3 Prediction Step with Dempster-Shafer Approximation . . . .
5.2.4 Update Step with Dempster-Shafer Approximation . . . . . .
5.2.5 Practical Example: Radar Doppler Measurements . . . . . .
Summary of Approximations . . . . . . . . . . . . . . . . . . . . . .
60
62
63
63
71
72
72
77
79
6 Parallel Implementation
6.1 Parallelization Challenges . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Parallel Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
83
84
7 Evaluation
7.1 Experiment Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.1 Test Vehicle . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.2 Filter configuration . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Qualitative Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.1 Free-form Obstacle Representation in Dynamic Environments
7.2.2 Heterogeneous Sensor Data Fusion . . . . . . . . . . . . . . .
7.2.3 Systemic Limitations of Dynamic Grid Maps . . . . . . . . .
7.2.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3 Quantitative Evaluation . . . . . . . . . . . . . . . . . . . . . . . . .
7.3.1 Velocity Estimation of a Moving Object . . . . . . . . . . . .
7.3.2 Consistency of the DS-PHD/MIB filter . . . . . . . . . . . .
7.3.3 Separation of Moving and Stationary Obstacles . . . . . . . .
7.3.4 Computation Time . . . . . . . . . . . . . . . . . . . . . . . .
93
93
93
95
96
96
100
101
103
104
105
106
108
111
8 Conclusion and Outlook
113
Acronyms
115
List of Symbols
117
Bibliography
121
Publications
127
Supervised Theses
129
5.2
5.3
Chapter 1
Introduction
Self-driving cars are a technical revolution that will change our everyday life. One
of the most challenging problems in this field is the reliable perception of the vehicle
environment. Autonomous vehicles need to be able to detect arbitrarily shaped
static and dynamic obstacles and to distinguish between free space and occluded
areas. A basic approach investigated in the robotics domain are occupancy grid
maps [Elf89; TBF05]. A classic occupancy grid map divides the environment into
single grid cells and estimates the occupancy probability for each cell. Since several
measurements occur over time, the grid map combines these measurements with a
Bayesian filter. A commonly used filter for this application is the binary Bayes filter
(BBF), which combines measurements to estimate the binary state of a grid cell: free
or occupied [DRN15]. A restrictive assumption of the common BBF application is
that the environment is stationary. Furthermore, a common assumption of grid maps
is the independence of individual grid cells which facilitates a fast implementation
at the cost of approximation errors.
Today, grid maps are used in many automated vehicles [KNW+ 15; NWW+ 13;
Urm+ 08]. Due to their explicit free-space estimation and their ability to represent
arbitrarily shaped objects, grid maps are an important tool for collision avoidance.
Moreover, the spatial grid structure provides a convenient fusion layer for data
from different range finding sensors [LPP+ 11; NTDD14]. In vehicle environment
perception, the assumption of a stationary environment is obviously not fulfilled due
to moving road users like vehicles or pedestrians.
Recently, several approaches have been presented to combine grid mapping and
multi-object tracking. A well-known example is an approach called simultaneous
localization, mapping and moving object tracking (SLAMMOT) [WTT+ 07], which
retains a grid map and multiple object tracks at the same time and assigns object
detections either to the grid map or to a tracked object. Other publications suggest
associating grid cells directly to object tracks [BH10] or detecting object movement
2
Introduction
in multiple time frames of grid maps with a data driven Markov chain Monte Carlo
(DDMCMC) approach [VA09]. Further approaches combine grid mapping and object
tracking in a modular way [NSD14; VDN15].
However, some of these approaches imply complicated environment perception
architectures and are therefore not an appropriate choice for many applications.
In 2006, Coué et al. proposed the Bayesian occupancy filter (BOF) [CPL+ 06] as
an alternative architecture, which uses a four-dimensional grid to estimate a twodimensional environment. Here, two grid dimensions represent the spatial position
and two grid dimensions represent the two-dimensional velocity of the obstacles.
Thus, the BOF estimates object movement and explicitly considers it in its process
model. Although the BOF motivated further ideas [GBSD09; LPP+ 11], its area of
application is limited by its high computational load. This is caused by the large
number of grid cells necessary to represent the environment appropriately.
An important improvement by Danescu et al. [DON11] suggested to represent the
dynamic state of a grid cell with particles resulting in a significant reduction of
the computational load. In subsequent publications, Nègre et al. [NRL14] and
Tanzmeister et al. [TTWB14] independently proposed to represent only the dynamic
part of a grid map with particles instead of all occupied grid cells. In 2015, the
author of this thesis suggested to use the dynamic grid map as a fusion layer for laser
and radar measurements [NYK+ 15], which improves the overall performance of the
dynamic grid map, especially the separation between moving and static obstacles.
In summary, previous work on dynamic grid maps based on particles shows promising
results. Unfortunately, the proposed filters lack a stochastically rigorous definition
of the multi-object state estimation problem. As such, they describe evolutionary
algorithms (survival of the fittest) rather than Bayesian filters.
This thesis models the dynamic state estimation of grid cells as a random finite
set (RFS) problem. Finite set statistics (FISST) [Mah07a] provide a mathematical
framework for the state estimation of multiple dynamic objects in a Bayesian sense.
Well-established techniques from the field of FISST like the probability hypothesis
density (PHD) filter [Mah03] and the Bernoulli filter [Ris13] are applied to estimate
the dynamic state of grid cells. The resulting filter is called probability hypothesis
density / multi-instance Bernoulli (PHD/MIB) filter. Modeling the estimation
problem of a dynamic grid map in the random finite set domain yields substantial
advantages. It gives every filter parameter a physical meaning and allows a generic
and stochastically rigorous filter design for various estimation problems.
1 Introduction
3
The key contributions of the thesis are:
1. The definition of the dynamic state estimation of grid cells as an RFS problem
and the derivation of the PHD/MIB filter, which takes into account the special
form of measurement grids as they are common for grid mapping approaches.
2. The realization of the PHD/MIB filter with particles and an approximation in
the Dempster-Shafer domain.
3. A detailed pseudo code description of a massively parallel, real-time capable
approximation of PHD/MIB filter.
4. Results of experiments with real-world data and evaluation of estimation error
and consistency of the approximated PHD/MIB filter.
The remainder of the thesis is structured as follows. Chapter 2 gives an introduction
to object tracking and random finite set statistics. Chapter 3 outlines basics of
static grid maps and compares dynamic grid mapping techniques as presented by
Danescu et al. [DON11], Nègre et al. [NRL14], Tanzmeister et al. [TTWB14] and
the author [NYK+ 15]. The PHD/MIB filter is derived in Chapter 4. A particle-based
realization and an approximation in the Dempster-Shafer domain is presented in
Chapter 5. Chapter 6 provides a detailed description of a highly-efficient parallel
implementation, followed by the evaluation in Chapter 7. Chapter 8 presents the
conclusion of the thesis.
Chapter 2
Object Tracking
The goal of object tracking is the state estimation of dynamic objects based on
sensor measurements. A core approach is the Bayesian filter, which will be outlined
in Section 2.1.1. The Kalman filter [Kal60] is an optimal solution of the Bayes
filter applicable under certain conditions, as introduced in 2.1.2. An important
approximation for non-linear systems and multimodal state distributions is the
particle filter [RAG04; TBF05]. This sequential Monte Carlo (SMC) approach is
described in Section 2.1.3.
A further challenge is tracking multiple objects as outlined in Section 2.2. Finite set
statistics (FISST) [Mah07a] offer a fundamental framework for multi-object tracking
and are introduced in Section 2.2.1. Section 2.2.2 presents relevant examples of
multi-object distributions and Section 2.2.3 outlines the multi-object Bayes filter. A
special case is the Bernoulli filter [Ris13], presented in Section 2.2.4. Finally, Section
2.2.5 introduces the probability hypothesis density (PHD) filter [Mah03; Ris13],
which is a well-known, real-time capable approximation of the multi-object Bayes
filter.
2.1 Single-Object Tracking
2.1.1 Bayesian Filter
The state vector xk ∈ X describes the nx -dimensional state of an object at time
step k in the state space X = Rnx . The Bayesian filter considers nz -dimensional
observations zk ∈ Z in the measurement space Z = Rnz . All observations up to time
6
Object Tracking
step k are denoted by z1:k = {z1 , ..., zk }. The posterior density
pk (xk |z1:k )
(2.1)
is the probability density function (PDF) of the state xk at time step k given all
observations z1:k . For a shorter notation, the conditioning on the measurements will
be omitted and the posterior state density will be denoted pk (xk ). Note that this
notation does not distinguish between a random variable and its realization.
The model of a Markov process defines the transition density
f+ (xk+1 |xk ) = f+ (xk+1 |xk , z1:k ).
(2.2)
A Markov transition density is the probability density of a transition to the state
xk+1 given the former state xk . Due to the Markov assumption, all information
about the estimated process at time step k is contained in its current state xk . For
a shorter notation, the index "+" expresses a prediction step from time step k to
time step k + 1, often noted as k + 1|k.
The likelihood function
gk+1 (zk+1 |xk+1 )
(2.3)
is the probability density of the observation zk+1 at time step k + 1 given the state
xk+1 .
The Bayesian filter can be divided into two steps: prediction and update. The
first step predicts the state at time step k + 1 based on the process model and the
posterior density from time step k. The solution for the prediction is provided by
the Chapman-Kolmogorov equation:
Z
p+ (xk+1 ) = f+ (xk+1 |xk )pk (xk )dxk .
(2.4)
The second step updates the estimation with the observation at time step k + 1:
pk+1 (xk+1 ) = R
gk+1 (zk+1 |xk+1 )p+ (xk+1 )
gk+1 (zk+1 |xk+1 )p+ (xk+1 )dxk+1 .
(2.5)
With these two steps the Bayesian filter recursively estimates the dynamic state of
an object assuming the initial probability density p0 (x0 ) is known.
2.1 Single-Object Tracking
7
The Bayesian filter is the foundation of state estimators used in a variety of applications and will also be basis for all state estimators in this thesis.
2.1.2 Kalman Filter
The Kalman filter [Kal60] is the exact, explicit solution of the Bayes filter under
certain conditions, which are outlined below. The result of these conditions is that
the predicted as well as the posterior state distribution are analytically represented
by a Gaussian distribution [HL64]. It is therefore possible to directly calculate
the first and second statistical moment of the state distribution (mean vector and
covariance matrix) in both steps of the Bayes filter, which uniquely define the state
distribution.
The first condition is that the initial state estimation is given by a Gaussian distribution
1
1
p0 (x0 ) = N (x0 ; x̂0 , P0 ) := p
exp − (x0 − x̂0 )T P0−1 (x0 − x̂0 ) , (2.6)
2
det(2πP0 )
with mean x̂0 and covariance matrix P0 .
The process model is given by
xk+1 = F xk + ξk ,
(2.7)
with the state transition matrix F and the process noise ξk . The process noise is
white and follows a Gaussian distribution with zero mean. Equation (2.7) represents
a linear process model with additive process noise.
The measurement model is given by
zk+1 = Hxk+1 + ζk ,
(2.8)
with the observation matrix H and the observation noise ζk . The observation noise
is also white and follows a Gaussian distribution with zero mean. Equation (2.8)
represent a linear measurement model with additive measurement noise. Finally, the
last condition is that process noise and measurement noise are uncorrelated.
8
Object Tracking
From (2.6) and (2.7) it follows that the predicted state PDF p+ (xk+1 ) is a Gaussian
distribution with mean x̂+ and covariance matrix P+ given by
x̂+ = F x̂,
(2.9)
T
P+ = F Pk F + Qk ,
(2.10)
where Qk is the covariance matrix of the process noise: Qk = E{ξk ξkT }. Equations
(2.9) and (2.10) represent the Kalman filter prediction step.
The Kalman filer update step considers the measurement zk+1 . The measurement
residual γ k+1 is the difference between the measurement zk+1 and the predicted
measurement ẑ+ = H x̂+ :
γ k+1 = zk+1 − ẑ+ .
(2.11)
From the given conditions it follows that the PDF of the measurement residual γ k+1
is Gaussian with zero mean and covariance matrix Sk+1 given by
Sk+1 = HP+ H T + Rk ,
(2.12)
where Rk is the covariance matrix of the measurement noise: Rk = E{ζk ζkT }.
Finally, the PDF of the posterior state pk+1 (xk+1 ) is also a Gaussian distribution.
Therefore, the update step is complete by calculating mean x̂k+1 and covariance
matrix Pk+1 of the posterior state distribution with
x̂k+1 = x̂+ + Kγ k+1 ,
(2.13)
T
Pk+1 = P+ − Kk+1 Sk+1 Kk+1 ,
(2.14)
where Kk+1 is the Kalman gain, given by
Kk+1 = P+ H T Sk+1 .
(2.15)
With the update step, one recursion of the Kalman filter is complete.
In practice, process models and measurement models are often not linear. The two
most important approximations of the Kalman filter for non-linear systems are the
extended Kalman filter (EKF) [SSM62] and the unscented Kalman filter (UKF)
[JUD95].
2.1 Single-Object Tracking
9
2.1.3 Particle Filter
The particle filter [RAG04; TBF05] is a non-parametric realization of the Bayes
filter and therefore suitable for modeling non-linear systems and non-Gaussian state
distributions. It is also called sequential Monte Carlo (SMC) method.
The particle filter represents the posterior PDF pk (xk ) with a set of ν particles and
(i)
(i)
their weights {xk , wk }νi=1 by
pk (xk ) =
ν
X
(i)
(i)
wk δ(xk − xk ),
(2.16)
i=1
(i)
(i)
where xk are particle states and wk are particle weights. Here, δ is the Dirac delta
function which satisfies
Z∞
f (x)δ(x)dx = f (0)
(2.17)
−∞
for any test function f : X → R.
The goal of the particle filter as a Bayesian filter is to evolve the particle set to
represent the posterior state distribution of the next time step pk+1 (xk+1 ) considering
the process model, the measurement model and the observation zk+1 .
Importance Sampling
A prerequisite for the realization and also for the derivation of the particle filter is
the ability to represent arbitrary PDFs with particles and weights. This is possible
with the importance sampling method.
The goal is to represent a PDF p : Rnx → R with particles and weights according to
equation (2.16), even if is not possible to directly draw particles from p. Assume it
is possible to draw particles from the PDF q : Rnx → R which is similar to p:
p(x) > 0 ⇒ q(x) > 0 ∀ x ∈ Rnx .
(2.18)
The PDF q is called proposal density function. Usually, a uniform or Gaussian
distribution is chosen for q. If a number of ν particles are being drawn from q, their
weights have to be adapted to represent p.
10
Object Tracking
The unnormalized importance weights are calculated by
w
e(i) =
p(x(i) )
,
q(x(i) )
(2.19)
and the normalized weights are given by
w
e(i)
w(i) = Pν
.
e(j)
j=1 w
(2.20)
Sequential Importance Sampling
The general implementation of the particle filter is realized by the sequential importance sampling approach. Assume the posterior state distribution pk (xk ) of time
(i)
(i)
step k is represented by the particle set {xk , wk }νi=1 according to equation (2.16).
An observation zk+1 at time step k + 1 occurs. Also given is the state transition
probability f+ (xk+1 |xk ) and the measurement likelihood gk+1 (zk+1 |xk+1 ), known as
process model and measurement model. The first step of the particle filter draws ν
(i)
new particles. Each new particle xk+1 is drawn by sampling the proposition function
(i)
(i)
qk+1 (xk+1 |xk , zk+1 )
(2.21)
(i)
conditioning on the corresponding particle state of the last time step xk and the
measurement zk+1 .
One can show that the posterior state pk+1 (xk+1 ) at time step k + 1 is represented
by the newly drawn particles if the corresponding updated unnormalized weights
satisfy
(i)
(i)
(i)
(i)
(i) gk+1 (zk+1 |xk+1 )f+ (xk+1 |xk )
,
(i)
(i)
qk+1 (xk+1 |xk , zk+1 )
w
ek+1 = wk
(2.22)
and the normalized particle weights are
(i)
w
e
(i)
wk+1 = Pν k+1(j) .
ek+1
j=1 w
The derivation can be found in [RAG04] or [TBF05].
(2.23)
2.2 Multi-Object Tracking and Random Finite Set Statistics
11
Resampling
If the sequential importance sampling method is carried out several times, the
particles will degenerate. This means, the weight will concentrate on a small number
of particles, while most particles carry weights near zero. This can be avoided by a
resampling step. The resampling step draws ν particles from a set of ν particles. A
particle can be drawn several times or not at all, so duplicates are possible in the
new particle set. The probability of a particle to be chosen is proportional to its
weight. After the resampling step, all particles are assigned the same weight ν1 .
Sequential Importance Resampling
Different implementations of the particle filter can be distinguished by the applied
(i)
(i)
proposition density qk+1 (xk+1 |xk , zk+1 ). One of the most common approaches is
the sequential importance resampling (SIR) method. In this case, the proposition
density is chosen as
(i)
(i)
(i)
(i)
qk+1 (xk+1 |xk , zk+1 ) = f+ (xk+1 |xk ).
(2.24)
This is not the optimal choice in terms of the variance of particle weights, but it
is advantageous for practical reasons. From (2.22) and (2.23) it follows, that the
update step of the particle filter is carried out by recalculating the unnormalized
particle weights with
(i)
(i)
(i)
w
ek+1 = wk gk+1 (zk+1 |xk+1 )
(2.25)
and normalization afterwards. The SIR can carry out the resampling step only after
the update step.
2.2 Multi-Object Tracking and Random Finite Set
Statistics
The Bayes filter discussed so far always assumes an observation z can unambiguously
be associated with an object and its state x. For many object tracking problems
this is not the case. In a vehicle environment, a number of traffic participants like
pedestrians, trucks or cars generate a number of measurements. Further, missed
detections, clutter measurements or occluded objects make the association problem
even more challenging.
12
Object Tracking
Generally, two major groups of multi-object tracking approaches can be distinguished.
One group describes tracking of multiple objects with multiple instances of singleobject Bayes filters. This can be seen as bottom-up modeling. One of the main
challenges here is the association between measurements and objects, also referred to
as data association problem. Exemplary approaches to the problem are probabilistic
data association (PDA) [BF88; BT75], integrated probabilistic data association
(IPDA) [MES94], joint probabilistic data association (JPDA) [BWT11; FBS83],
joint integrated probabilistic data association (JIPDA) [ME04], or multi-hypothesis
tracking (MHT) [Rei79].
The other group uses a top-down modeling approach based on random finite sets
(RFS) [Mah07a]. Finite set statistics (FISST) provide a mathematical framework
for a Bayesian filter estimating the state of an RFS. An RFS inherently describes
the existence and the state of a random but limited set of objects on a probabilistic
basis. Section 2.2 summarizes the introduction to RFSs presented in [Ris13] and
follows its notation system.
2.2.1 Random Finite Set Statistics
With finite set statistics (FISST), it is possible to formally express the Bayes filter
for a random finite set (RFS). An RFS X represents a random but limited number
of n unordered elements and their random states x ∈ X = Rnx :
X = {x(1) , . . . , x(n) }.
(2.26)
It is also possible that the number of elements is zero, in which case X = ∅.
The cardinality distribution of an RFS is given by the discrete distribution ρ(n),
n ∈ N0 . This means that with a probability of ρ(n), the RFS consists of n elements.
The distribution of an RFS is uniquely defined by the cardinality distribution ρ(n)
and a set of PDFs
{fn (x(1) , . . . , x(n) ), n ∈ N | ρ(n) > 0}.
(2.27)
Each PDF is the joint distribution of the states of n objects
fn : Rnx ·n → R.
(2.28)
Since the order of the objects is irrelevant, fn is symmetric, i.e. it is equal for all n!
possible permutations of the objects {x(1) , . . . , x(n) }.
2.2 Multi-Object Tracking and Random Finite Set Statistics
All functions fn are standard PDFs in a sense that
Z
fn (x(1) , . . . , x(n) )dx(1) . . . dx(n) = 1.
13
(2.29)
Rn·nx
These functions represent the probability density of all joint object states under the
assumption of a certain cardinality.
Within the framework of FISST, the PDF π(X) of an RFS X is defined as [Mah07a]
(
ρ(0)
if X = ∅,
(1)
(n)
π(X = {x , . . . , x }) =
(2.30)
(1)
(n)
n! · ρ(n) · fn (x , . . . , x ) else.
The function π is also called multi-object probability density function (MPDF)
[Mah13]. The set integral of an MPDF is defined as
Z
π(X)δX = π(∅) +
Z
∞
X
1
π(x(1) , . . . , x(n) )dx(1) . . . dx(n) .
n!
n=1
(2.31)
It follows from (2.30) that the cardinality distribution ρ(n) can be expressed as
Z
1
π(x(1) , . . . , x(n) )dx(1) . . . dx(n) .
(2.32)
ρ(n) =
n!
The first statistical moment of an RFS is
(
) Z
X
X
D(x) = E
δ(x − w) =
δ(x − w)π(X)δX.
w∈X
(2.33)
w∈X
It is called probability hypothesis density (PHD). The integral over a PHD equals
the expected number of objects N̂ of an RFS:
Z
N̂ = D(x)dx.
(2.34)
14
Object Tracking
2.2.2 Multi-Object Probability Distributions
Depending on the application, different kinds of RFSs are suited to represent the
multi-object environment to be estimated. This section introduces RFSs with
important properties and which will be used in the course of this thesis.
Bernoulli Random Finite Set
A Bernoulli RFS is empty with probability 1 − r or occupied by one object with
probability r [Mah07a; Ris13]. Consequently, r is referred to as existence probability.
If the Bernoulli RFS is occupied, the spatial distribution of the object is given by
the PDF p(x). Accordingly, the MPDF of a Bernoulli RFS is defined by
(
1−r
if X = ∅,
π(X) =
(2.35)
r · p(x) if X = {x}.
The PHD D of the given Bernoulli RFS is
D(x) = r · p(x).
(2.36)
Independent Identically Distributed Cluster Random Finite Set
The MPDF of an independent identically distributed (i.i.d.) cluster RFS with
X = {x(1) , . . . , x(n) } is given by [Mah07a; Ris13]
π(X) = n! · ρ(n) · p(x(1) ) . . . p(x(n) ),
(2.37)
with the cardinality probability distribution ρ(n), n ≥ 0 and the PDF p(x(i) ), which
represents the spatial distribution of the ith object.
Poisson Random Finite Set
A Poisson RFS is an i.i.d. cluster RFS with Poisson distributed cardinality distribution [Mah07a]
ρ(n) = e−λ ·
λn
,
n!
(2.38)
2.2 Multi-Object Tracking and Random Finite Set Statistics
15
where λ is the expected cardinality. The Poisson RFS is commonly used to model
multi-object birth processes or multi-object clutter measurements as will be shown
in Section 2.2.3.
Multi-Bernoulli Random Finite Set
A multi-Bernoulli RFS X describes a set of objects which are independent of each
other [Mah07a]. It is uniquely defined by the parameter set {(r(i) , p(i) )}M
i=1 , where r
is the existence probability of an object and p is the PDF of its dynamic state, also
called spatial distribution. The parameter M is the maximum possible number of
objects in the multi-Bernoulli RFS.
The MPDF π(X) is defined as follows. The probability π(∅) for the special case that
no object exists is
π(∅) =
M
Y
(1 − r(i) ).
(2.39)
i=1
The MPDF π for the RFS {x(1) , . . . , x(n) } is given by [Mah07a]
π({x(1) , . . . , x(n) }) =
M Y
1 − r(j)
X
1≤i1 6=...6=in
j=1
n
Y
r(ij ) p(ij ) (x(j) )
.
1 − r(ij )
≤M j=1
(2.40)
Here, n ∈ {1, . . . , M } is the cardinality of the the specific RFS {x(1) , . . . , x(n) }, while
M describes the maximum possible number of objects.
The cardinality distribution ρ(n) is given by
ρ(n) =
M Y
j=1
1 − r(j)
X
1≤i1 6=...6=in
n
Y
r(ij )
1 − r(ij )
≤M j=1
(2.41)
for n ∈ {1, . . . , M }, while the probability for the cardinality zero is given by (2.39).
The sum in equation (2.41) considers every possible combination of n out of M
objects. The probability that a specific set of n objects exist is calculated by multiplying their existence probabilities, since the objects are independent of each other.
The probability that none of the other possible objects exists is calculated by multiplying their non-existence probabilities, which is achieved by the combination of the
denominator and the first product in equation (2.41). Equation (2.40) additionally
considers the spatial PDFs of the existing objects.
16
Object Tracking
The PHD of a multi-Bernoulli RFS is defined by [Mah07a]
D(x) =
M
X
r(i) p(i) (x)
(2.42)
i=1
and the expected cardinality of a multi-Bernoulli RFS is given by
N̂ =
M
X
r(i) .
(2.43)
i=1
2.2.3 Multi-Object Filtering
The multi-object Bayes filter represents the dynamic state of multiple objects at
time step k with the RFS
(1)
(n)
Xk = {xk , . . . , xk }.
(2.44)
Note, that both the number of objects nk and the object states xk at time step k
are random and vary over time. The underlying Markov process is defined by the
initial MPDF π0 (X0 ) and the multi-object state transition f+ (Xk+1 |Xk ).
Standard Multi-Object Markov Density
The standard multi-object transition was proposed in [Mah07a]. It is valid under
the following assumptions. Transitions of objects are independent of each other
and are defined by single-object Markov transition densities f+ (xk+1 |xk ). Further,
each object survives independently of all other objects with the state dependent
persistence probability pS (x). The birth model is a Poisson process with the spatial
distribution pb (x) and an expected number λB of new-born objects. The birth
process is independent of the persistent objects. Then, the multi-object transition
density is given by
(i)
f+ (Xk+1 |Xk ) = πb (Xk+1 )πk+1 (∅|Xk )
X Y
(i)
θ
i:θ(i)>0
(θ(i))
(i)
pS (xk )f+ (xk+1 |xk )
(θ(i))
(1 − pS (xk )) · λB pb (xk+1 )
.
(2.45)
2.2 Multi-Object Tracking and Random Finite Set Statistics
17
All possible associations from the set Xk to the set Xk+1 are represented by
θ : {1, . . . , |Xk |} → {0, . . . , |Xk+1 |}. The association θ(i) = 0 stands for the disappearance of an object, whereas θ(i) > 0 means that an object survives.
The MPDF of the birth process is
|Xk+1 |
λB pb (xk ).
(i)
(2.46)
(1 − pS (xk )).
(i)
(2.47)
Y
πb (Xk+1 ) = e−λB
i=1
The probability that no object survives is
|Xk |
πk+1 (∅|Xk ) =
Y
i=1
Standard Multi-Object Likelihood Function
Analogously, [Mah07a] defines the standard multi-object likelihood function. It is
valid under the following assumptions. An object generates an observation at time
step k with the state dependent detection probability pD (xk+1 ). This event is called
a true positive event. For the case of a true positive event, the single-object spatial
likelihood function is denoted gk+1 (zk+1 |xk+1 ). One object can generate at most
one observation. The clutter model is a Poisson process with the spatial distribution
pcl (zk+1 ) and an expected number λcl of clutter observations. The clutter process is
independent of the persistent objects. Then, the standard multi-object likelihood
function is given by
(i)
γk+1 (Zk+1 |Xk+1 ) = πcl (Zk+1 )π(∅|Xk+1 )
X Y
(θ(i))
(i)
θ
i:θ(i)>0
(i)
pD (xk+1 )gk+1 (zk+1 |xk+1 )
(θ(i))
(1 − pD (xk+1 )) · λcl pcl (zk+1 )
.
(2.48)
All possible associations from the set Xk+1 to the set Zk+1 are represented by
θ : {1, . . . , |Xk+1 |} → {0, . . . , |Zk+1 |}. The association θ(i) = 0 represents a missed
detection, whereas θ(i) > 0 characterizes a true positive case.
The MPDF of the clutter process is
|Zk+1 |
−λcl
πcl (Zk+1 ) = e
Y
i=1
(i)
λcl pcl (zk+1 ).
(2.49)
18
Object Tracking
The probability, that none of the objects generates an observation is
|Xk+1 |
π(∅|Xk+1 ) =
Y
(i)
(1 − pD (xk+1 )).
(2.50)
i=1
Multi-Object Bayes Filter
Assume the multi-object density at time step k is given by πk (Xk ). Then, it follows
with the Chapman-Kolmogorov equation that [Mah07a]
Z
π+ (Xk+1 ) = f+ (Xk+1 |Xk )πk (Xk )δXk .
(2.51)
The multi-object transition density f+ (Xk+1 |Xk ) considers possible cardinality
changes as well as the dynamic process of objects. Recall that the short notation index "+" expresses a prediction step from time step k to time step k + 1, often
noted as k + 1|k.
Analogously to the single-object case, applying Bayes’ rule to update the state
estimation with the set of measurements Zk+1 leads to
πk+1 (Xk+1 |Zk+1 ) = R
γk+1 (Zk+1 |Xk+1 )π+ (Xk+1 )
,
γk+1 (Zk+1 |Xk+1 )π+ (Xk+1 )δXk+1
(2.52)
R
considering definition (2.31) of the set integral π(X)δX. The multi-object likelihood
function γk+1 (Zk+1 |Xk+1 ) models the spatial uncertainty of measurements as well
as possible missed detections and false alarms.
Several realizations of the multi-object Bayes filter have been presented in literature,
e.g. SMC methods [Mah07a; RWW+ 13; VSD05] or approaches based on parametric
state representation forms [RVVD14; VV13; VVP14].
Two forms of multi-object Bayes filters will be used in the thesis, which are the
Bernoulli filter [Ris13] and the probability hypothesis density (PHD) filter [Mah03;
Ris13; VM06]. Both will be outlined in the following section.
2.2 Multi-Object Tracking and Random Finite Set Statistics
19
2.2.4 Bernoulli Filter
The Bernoulli filter is the exact solution of the estimation of a Markov process
switching between occupied and free as described by the Bernoulli RFS (2.35)
[Ris13]. It propagates the existence probability rk and the spatial distribution pk (xk )
over discrete time steps k.
The transition MPDF is


if Xk+1 = ∅,
1 − pB
f+ (Xk+1 |Xk = ∅) = pB · pb (xk+1 ) if Xk+1 = {xk },


0
if |Xk+1 | ≥ 2,
(2.53)


if Xk+1 = ∅,
1 − pS
f+ (Xk+1 |Xk = {xk }) = pS · f+ (xk+1 |xk ) if Xk+1 = {xk },


0
if |Xk+1 | ≥ 2.
(2.54)
and
Here, pB is the probability for a new-born object, given no object existed in the
previous time step. The PDF pb (x) describes the spatial distribution of a new-born
object. The survival probability is pS and f+ (xk+1 |xk ) is the single-object Markov
transition density. The transition MPDF of the Bernoulli filter differs slightly from
the standard multi-object Markov density (2.45) since the Bernoulli filter does not
assume a Poisson birth process. The predicted Bernoulli RFS at time step k + 1
results in
r+ = pB · (1 − rk ) + pS · rk ,
(2.55)
R
pB (1 − rk ) · pb (xk+1 ) + pS · rk · f+ (xk+1 |xk )p(xk )dxk
.
p+ (xk+1 ) =
pB · (1 − rk ) + pS · rk
(2.56)
If pS = 1 and rk = 1, (2.56) degenerates to the standard Chapman-Kolmogorov
equation (2.4). The likelihood function of the Bernoulli filter can be directly derived
as a special case of the standard multi-object likelihood function (2.48):

πcl (Zk+1 ) if Xk+1 = ∅,
(i)
P|Zk+1 | gk+1 (zk+1
γk+1 (Zk+1 |Xk+1 ) =
|xk+1 )
πcl (Zk+1 ) 1−pD +pD i=1
if Xk+1 = {x}.
(i)
λcl pcl (zk+1 )
(2.57)
20
Object Tracking
Inserting (2.57) into (2.52) leads to
rk+1 =
1 − δk
r+
1 − δk · r+
(2.58)
1 − pD + pD
(i)
gk+1 (zk+1 |xk+1 )
P|Zk+1 |
pk+1 (xk+1 ) =
i=1
(i)
λcl pcl (zk+1 )
1 − δk
p+ (xk+1 |xk ),
(2.59)
where

δk = pD 1 −
|Zk+1 |
X
i=1
R

(i)
gk+1 (zk+1 |xk+1 )p+ (xk+1 )dxk+1
.
(i)
λcl pcl (zk+1 )
(2.60)
Again, if pD = 1 and the expected number of false alarms is zero, (2.59) reduces to
the standard single-object Bayes update (2.5).
2.2.5 Probability Hypothesis Density Filter
The PHD filter is an approximation of the general RFS multi-object Bayes filter
[Ris13; VM06]. It propagates the first order statistical moment Dk of an RFS.
The prediction step is
Z
D+ (xk+1 ) = γb (xk+1 ) + pS
f+ (xk+1 |xk )Dk (xk )dxk ,
(2.61)
where γb (xk+1 ) is the object birth PHD, pS is the survival probability and f+ (xk+1 |xk )
is the single-object Markov transition density.
The update step is
Dk+1 (xk+1 ) = (1 − pD (xk+1 ))D+ (xk+1 )
X
pD (xk+1 )gk+1 (zk+1 |xk+1 )D+ (xk+1 )
R
+
,
κk+1 (zk+1 ) + pD (xk+1 )gk+1 (zk+1 |xk+1 )D+ (xk+1 )dxk+1
zk+1 ∈Zk+1
(2.62)
where κk+1 (zk+1 ) is the clutter PHD at time step k + 1 and pD (xk+1 ) is the detection
probability.
2.2 Multi-Object Tracking and Random Finite Set Statistics
21
Probability Hypothesis Density Filter with Adaptive Birth Intensity
In practice, it is computationally demanding to model object birth PHDs over the
entire state space X. A helpful assumption proposed by [RCVV12] is that newly
born objects are always detected, which is equivalent to assuming pD (xk+1 ) = 1 for
new-born objects. Therefore, the PHD must be separated into two parts.
One part represents the predicted PHD of persistent objects Dp,+ and the other part
represents the predicted PHD of new-born objects Db,+ . The prediction step is then
Db,+ (xk+1 ) = γb (xk+1 ),
Z
Dp,+ (xk+1 ) = pS f+ (xk+1 |xk )Dk (xk )dxk ,
(2.64)
D+ = Db,+ + Dp,+ .
(2.65)
(2.63)
The update step can be divided into two parts analogously: Dk+1 = Db,k+1 + Dp,k+1 .
It is given by
Dp,k+1 (xk+1 ) = (1 − pD (xk+1 )) Dp,+ (xk+1 )
X
pD (xk+1 )gk+1 (zk+1 |xk+1 ) Dp,+ (xk+1 )
+
,
Q(zk+1 )
(2.66)
zk+1 ∈Zk+1
Db,k+1 (xk+1 ) =
X
zk+1 ∈Zk+1
gk+1 (zk+1 |xk+1 ) γb (xk+1 )
,
Q(zk+1 )
(2.67)
where
Z
Q(zk+1 ) = κk+1 (zk+1 ) + gk+1 (zk+1 |xk+1 )γb (xk+1 )dxk+1
Z
+ pD (xk+1 ) gk+1 (zk+1 |xk+1 ) Dp,+ (xk+1 )dxk+1 .
(2.68)
SMC Realization of the Probability Hypothesis Density Filter with
Adaptive Birth Intensity
A common realization of the PHD filter is the sequential Monte Carlo probability
hypothesis density (SMC-PHD) filter [Ris13; Sid03; VSD05]. It represents the
22
Object Tracking
(i)
(i)
k
by
posterior PHD Dk with a set of νk particles and their weights {xk , wk }νi=1
Dk =
νk
X
(i)
(i)
wk δ(xk − xk ).
(2.69)
i=1
Inserting (2.69) into (2.34) shows that the sum of particle weights equals the expected
number of objects N̂ of the estimated RFS:
νk
X
(i)
wk = N̂ .
(2.70)
i=1
Prediction
The sequential Monte Carlo probability hypothesis density (SMC-PHD) filter first
predicts the state of persistent objects at time step k + 1 by sampling a number
of νk particles based on the posterior particle set of the former time step k. The
particle set representing predicted persistent objects at time step k + 1 is denoted
(i)
(i)
k
{xp,+ , wp,+ }νi=1
.
(2.71)
The samples are drawn from the proposition density q. The following assumes it
is possible to sample from the single-object Markov transition density f+ (xk+1 |xk ),
which is chosen as proposition density here:
(i)
(i)
(i)
(i)
qk+1 (xk+1 |xk , zk+1 ) = f+ (xk+1 |xk ).
(2.72)
This corresponds to the prediction step of the SIR method of a particle filter in the
single-object case. In contrast to the single-object particle filter, the SMC-PHD
filter considers the persistence probability of objects in the prediction step, which is
carried out by adapting weights of the predicted particle set:
(i)
(i)
(i)
wp,+ = pS (xk )wk .
(2.73)
The SMC-PHD filter represents new-born objects with the particle set
(i)
(i)
ν
b,k+1
{xb,+ , wb,+ }i=1
.
(2.74)
This particle set is calculated taking the observation set Zk+1 into account. In order
to draw particles representing a new-born object, the SMC-PHD filter calculates
the object state distribution pb,zk+1 conditioned on a single-object observation
zk+1 ∈ Zk+1 , which is denoted pb,zk+1 (xk+1 |zk+1 ). Usually, assumptions about prior
2.2 Multi-Object Tracking and Random Finite Set Statistics
23
distributions are necessary in order to model pb,zk+1 (xk+1 |zk+1 ), especially if the
observation zk+1 is independent of at least some object state elements of xk+1 . For
further information, refer to [Ris13], p. 38.
When a measurement set Zk+1 arrives, the SMC-PHD filter draws the number of Mb
samples for each measurement zk+1 from the PDF pb,zk+1 (xk+1 |zk+1 ). This leads to
a total number of
νb,k+1 = Mb · |Zk+1 |
(2.75)
particles representing new-born objects. In order to weight these particles, the
SMC-PHD filter applies the design parameter N̂b,k+1 , which is the expected number
of object births at time step k + 1. The weights are then equally normalized to
(i)
wb,+ =
N̂b,k+1
.
νb,k+1
(2.76)
As a conclusion, the prediction step of the SMC-PHD filter creates two particle sets.
One represents persistent objects, the other represents new-born objects.
Update
The update step is carried out by recalculating the individual weights of both particle
sets. Resulting from (2.66), the updated weights of the particles representing the
persistent objects are given by
(i)
(i)
(i)
wp,k+1 = (1 − pD (xp,+ )) wp,+
(i)
+
X
zk+1 ∈Zk+1
(i)
(i)
pD (xp,+ )gk+1 (zk+1 |xp,+ ) wp,+
.
Q(zk+1 )
According to (2.67), the updated weights of the particles representing the new-born
objects are
(i)
(i)
wb,k+1 =
X
zk+1 ∈Zk+1
wb,+
Q(zk+1 )
,
24
Object Tracking
where (2.68) leads to
νb,k+1
Q(zk+1 ) = κk+1 (zk+1 ) +
X
(i)
wb,+
i=1
+
νk
X
(i)
(i)
(i)
pD (xp,+ )gk+1 (zk+1 |xp,+ ) wp,+ .
(2.77)
i=1
Resampling
The SMC-PHD filter resamples the particle set representing the persistent objects.
The estimated number of persistent objects at time step k + 1 is
N̂p,k+1 =
νk
X
(i)
wp,k+1 .
(2.78)
i=1
Let Mp be the design parameter for the number of particles the SMC-PHD filter
uses per persistent object. Then the SMC-PHD filter resamples a number of
νp,k+1 = bMp · N̂p,k+1 e
(2.79)
particles from the posterior persistent particle set. The operator b·e provides the
nearest integer. There is no need to resample the particle set representing new-born
objects.
Finally, both particle sets can be joined to one set, because in the transition from
time step k + 1 to k + 2 it will not make a difference, if an object was born at time
step k + 1 or persistent from time step k to k + 1. The joint set then holds a number
of νk+1 = νp,k+1 + νb,k+1 particles.
Chapter 3
Grid Mapping
An important ability of mobile robots is distinguishing between free space and
occupied areas. Occupancy grid maps separate the robot environment into single
grid cells and estimate the occupancy probability of each grid cell individually based
on sensor measurements [Elf89; TBF05]. Grid maps play an important role in vehicle
environment perception and for autonomous driving [DRN15; KNW+ 15; NWW+ 13;
Urm+ 08]. Classical grid maps assume a static environment, which simplifies the
estimation problem but leads to estimation errors in dynamic traffic scenarios.
During recent years, new grid mapping techniques emerged which consider a dynamic
environment [CPL+ 06; DON11; NRL14; NYK+ 15; TTWB14]. However, due to
a more complex process model, the approaches are also computationally more
demanding. This chapter gives an introduction to classical, static grid mapping
approaches in the first part (3.1) and to the state of the art in dynamic grid mapping
techniques in the second part (3.2).
3.1 Static Grid Mapping
Classical grid maps discretize space by dividing the surrounding area into single grid
cells. Generally, it is possible to store any collected information about a grid cell
like semantic information [NTDD14] or elevation [DN13]. Original occupancy grid
maps estimate the occupancy probability of each grid cell. Two strong assumptions
play an important role: the first assumption is that the environment is static, the
second assumption is that the state of a grid cell is independent of all other grid
cell states. Both assumptions are not met in most applications, but lead to strong
simplifications of the state estimation problem. A detailed introduction to static
grid mapping is given in [DRN15].
26
Grid Mapping
The process of generating a static grid map can be separated into three steps:
• ego motion compensation,
• measurement grid calculation,
• grid map update.
In the first step, the movement of the robot or vehicle over ground is compensated.
The second step extracts information about each individual grid cell based on sensor
measurements and the third step updates the state of each grid cell. All three steps
are outlined in the following sections.
3.1.1 Ego Motion Compensation with Dead Reckoning
Grid maps can relate to different coordinate systems, e.g. a vehicle coordinate
system (related to the ego vehicle), a global coordinate system (related to common,
global coordinates) or a local, stationary coordinate system. The introduced method
defines a local, stationary coordinate system as a basis for the grid map. It considers
a two-dimensional environment, but the approach is easily extendable to a threedimensional coordinate system. The method estimates the position of the vehicle in
the local, stationary coordinate system by dead reckoning. In the exemplary case
this means integrating the velocity and yaw rate of the vehicle as described in the
following.
Assume the vehicle pose p1 at time t1 is given by [x1 y1 ψ1 ]T as an arbitrary pose
in the local, stationary coordinate system. Here, x and y are the two-dimensional
coordinates and ψ is the heading orientation of the vehicle in a specific vehicle
reference point, e.g. the center of the rear axle as depicted in Figure 3.1. Assume
further that the vehicle’s heading direction and yaw angle are identical in the vehicle
reference point, which is equivalent to assuming the slip angle is zero in the vehicle
reference point. A sensor measurement is taken at time t2 . The system measures
the speed v and the yaw rate ψ̇.
Then the change of the vehicle pose is given by
  

ẋ
v · cos(ψ)
 ẏ  =  v · sin(ψ)  ,
ψ̇
ψ̇
(3.1)
3.1 Static Grid Mapping
27
y
ψ2
y2
ψ1
y1
x1
x2
x
Figure 3.1: Vehicle pose p1 at time t1 and vehicle pose p2 at time t2 [DRN15],
c 2015 Springer.
so the vehicle pose p2 at time t2 calculates to


Zt2 ẋ(t)
p2 = p1 +  ẏ(t)  dt.
ψ̇(t)
t1
(3.2)
If the vehicle travels on a circular path during the time interval ∆t = t2 − t1 > 0
6 0, then the integral (3.2) is
with constant velocity v and constant yaw rate ψ̇ =
solved by
 v

sin(ψ1 + ψ̇∆t) − sin(ψ1 )
ψ̇


p2 = p1 +  ψ̇v − cos(ψ1 + ψ̇∆t) + cos(ψ1 )  .
(3.3)
ψ̇∆t
If the vehicle moves straight with ψ̇ = 0, then the integral (3.2) is solved by


v∆t cos(ψ1 )
p2 = p1 +  v∆t sin(ψ1 )  .
(3.4)
0
Applying the dead reckoning equations (3.3) and (3.4) allows to estimate the vehicle
position in the grid map based on measurements of vehicle speed and yaw rate.
28
Grid Mapping
Depending on the application, dead reckoning is not necessarily a good choice for ego
motion compensation. Over the time, small measurement errors and the vehicle drift
integrate to a constantly growing error in the pose estimation. For map generation
of huge areas, the use of external positioning systems like global navigation satellite
system (GNSS) might be a better choice.
However, dead reckoning offers the advantage that the resulting position estimation
is smooth or in other words: free of position skips. For the estimation of the current
vehicle environment in a short range (usually smaller than 250 m), smoothness is
more important than avoiding drift effects. Therefore, dead reckoning is a common
choice for ego motion compensation.
3.1.2 Measurement Grid Calculation
Generally, two streams of grid mapping can be distinguished: grid mapping with
forward sensor models and grid mapping with inverse sensor models [Thr03]. The
following section first describes the use of a forward sensor model for occupancy grid
maps and outlines the difference to the inverse sensor model in the second part.
Forward Sensor Model for Occupancy Grid Maps
In a classical occupancy grid map, the binary grid cell state ok at time k is considered
either occupied or free: ok ∈ {O, F }. The forward sensor model estimates for each
grid cell the occupancy likelihood density gk+1 (zk+1 |ok+1 ) for the two feasible occupancy events ok+1 ∈ {O, F } [Thr03]. The occupancy and the free space likelihood
are density functions in regard to the measurement zk+1 , their physical unit is a
density in the measurement space. Modeling likelihoods is more complicated than
designing inverse sensor models and usually also computationally more expensive.
However, the forward sensor model directly leads to the common Bayesian update
step as will be outlined in Section 3.1.3.
Inverse Sensor Model for Occupancy Grid Maps
An inverse sensor model assigns each grid cell an individual, discrete binary occupancy
probability pzk+1 (ok+1 |zk+1 ) based on the measurement zk+1 at time k + 1. The
result is called a measurement grid.
3.1 Static Grid Mapping
29
Figure 3.2: Occupancy probabilities of two-dimensional grid cells reasoning
on a multi-beam laser range measurement. Grid cells with a
high probability of being occupied are colored black, free grid
cells are marked white. Grid cells with an unknown state (same
probability for both occupied and free) are displayed in gray
c 2015 Springer.
[DRN15], To give a practical example, consider a laser range measurement consisting of
several laser beams and the resulting measurement grid as depicted in Figure 3.2.
Grid cells between the sensor and a reflection are assigned a reduced occupancy
probability pzk+1 (ok+1 |zk+1 ) < 0.5, whereas grid cells near the reflection are assigned
an increased occupancy probability pzk+1 (ok+1 |zk+1 ) > 0.5. The state of grid
cells which are occluded or outside the field of view is considered unknown with
pzk+1 (ok+1 |zk+1 ) = 0.5.
Generally, inverse sensor models are much more complicated than the given example
depicted in Figure 3.2. Usually, they assign varying probability values to grid cells,
which depend on different factors. Figure 3.3 shows an example of an inverse sensor
model for a single laser beam, where the assigned occupancy probabilities depend
on the distance of the measurement. The inverse sensor model can be a heuristic
model or the result of a machine learning process [TBF05].
The measurement grid calculation step combines information from individual laser
beams of time step k + 1 and creates a joint measurement grid for time step k + 1.
Furthermore, the update step combines measurement grids from different time steps
to accumulate the gathered information about individual grid cells. A way to combine
information in grid cells is the binary Bayes filter (BBF), which will be outlined in
the next section.
30
Grid Mapping
p(o)
1
p(o)
1
0,5
r
0
0
Figure 3.3: Inverse sensor model for a single laser beam. The uncertainty of
the state estimation increases with the distance of the measurec 2015 Springer.
ment [DRN15], 3.1.3 Grid Map Update
Due to the assumption of a static environment, classical grid mapping does not
include an explicit prediction step. The predicted occupancy probability at time
k + 1 simply equals the last posterior occupancy probability po,k (ok ) at time k.
Some approaches consider the possibility that a grid cell switches its state [NWW+ 13],
sometimes referred to as fading memory. In this case, the prediction step discounts
the information in a grid cell depending on the time difference.
Basis for the update step of grid maps is the binary Bayes filter (BBF). It is the
special case of the Bayes filter where the state space consists of only two discrete
states. In case of an occupancy grid cell, these states are occupied and free. A basic
principle is that each grid cell applies the BBF individually, based on the assumption
that its state is independent of other grid cell states. Thus, the following update
equations relate to one individual grid cell.
The BBF differs slightly when applied to forward sensor models or inverse sensor
models. However, both cases can be expressed jointly with the generalized BBF,
which is a contribution of this thesis. The three variants of the BBF will be outlined
in the following sections.
3.1 Static Grid Mapping
31
Binary Bayes Filter for Forward Sensor Models
In case of a forward sensor model, the BBF can directly be expressed as a special
case of the Bayes update (2.5) with a discrete, binary state. The posterior occupancy
probability po,k+1 (ok+1 ) at time k + 1 of a grid cell results from its last posterior
occupancy probability po,k (ok ) at time k and its likelihood density gk+1 (zk+1 |ok+1 )
through
po,k+1 (ok+1 ) =
gk+1 (zk+1 |ok+1 ) · po,k (ok )
,
gk+1 (zk+1 |ok+1 ) · po,k (ok ) + gk+1 (zk+1 |ok+1 ) · po,k (ok )
(3.5)
where o denotes the counter event of the occupancy state o.
Binary Bayes Filter for Inverse Sensor Models
In case of an inverse sensor model, the update step combines two independent state
estimations instead of combining a state estimation with a measurement likelihood.
Then the occupancy probability po,k+1 (ok+1 ) at time k + 1 of a grid cell results from
its last posterior occupancy probability po,k (ok ) at time k and its measurement-based
estimate pzk+1 (ok+1 |zk+1 ) through [TBF05]
po,k+1 (ok+1 ) =
pzk+1 (ok+1 |zk+1 ) · po,k (ok )
.
pzk+1 (ok+1 |zk+1 ) · po,k (ok ) + pzk+1 (ok+1 |zk+1 ) · po,k (ok )
(3.6)
Equation (3.6) holds if the prior probabilities for occupied and free are equal,
measurements from different time steps are independent of each other, and the grid
cell state does not change over time.
Generalized Binary Bayes Filter
Equations (3.5) and (3.6) can be generalized to
po,k+1 (ok+1 ) =
αzk+1 · po,k (ok )
,
αzk+1 · po,k (ok ) + po,k (ok )
(3.7)
32
Grid Mapping
where αzk+1 is the single measurement-based occupancy probability ratio
αzk+1 =
pzk+1 (ok+1 |zk+1 )
, pzk+1 (ok+1 |zk+1 ) > 0,
pzk+1 (ok+1 |zk+1 )
(3.8)
gk+1 (zk+1 |ok+1 )
, gk+1 (zk+1 |ok+1 ) > 0,
gk+1 (zk+1 |ok+1 )
(3.9)
or the likelihood ratio
αzk+1 =
respectively. As a conclusion, the binary Bayes filter requires either a likelihood ratio
or a probability ratio for the update step. It will be shown later in Section 4.3 that
the binary Bayes filter (3.7) is a special case of the presented probability hypothesis
density / multi-instance Bernoulli (PHD/MIB) filter, namely for the assumption of
zero velocity in a deterministic process model.
3.2 Dynamic Grid Mapping
The assumption of a stationary environment is not realistic for typical traffic scenarios.
Therefore, Coué et al. proposed the Bayesian occupancy filter (BOF) [CPL+ 06] for
dynamic environments. The BOF considers a four-dimensional space, consisting of a
two-dimensional position and a two-dimensional velocity and separates this space
into grid cells. One grid cell represents a certain area and a certain velocity interval.
Consequently, the BOF estimates the dynamic state of the vehicle surrounding by
propagating the occupancy probability of every grid cell.
Since the BOF is computationally demanding, Gindele et al. suggested to propagate
the dynamic state of grid cells using a Gaussian mixture representation [GBSD09]. As
another alternative, Danescu et al. presented a particle-based approach for dynamic
grid maps [DON11]. Particles offer the advantage of a highly efficient parallel
implementation, as will be outlined in detail in Chapter 6. In 2014 and 2015, three
contributions of Tanzmeister et al. [TTWB14], Nègre et al. [NRL14] and the author
et al. [NYK+ 15] adopted Danescu’s approach and suggested variations. This section
gives an introduction to the state of the art and summarizes and compares all four
publications on particle-based dynamic grid maps.
3.2 Dynamic Grid Mapping
33
3.2.1 State of the Art in Dynamic Grid Mapping using
Particles
All mentioned publications on particle-based dynamic grid maps estimate the occupancy probability and the dynamic state of grid cells in the vehicle environment.
Further, all publications describe an algorithm consisting of a prediction and an
update step as depicted in Figure 3.4 and apply a resampling step to avoid degeneration.
State Representation
All mentioned publications represent the dynamic state of grid cells with particles,
but the interpretation of a particle differs: [DON11] and [NYK+ 15] directly use the
number of particles or the sum of particle weights in a grid cell as a measure for the
occupancy probability of the grid cell. In contrast, [NRL14] propagates an additional
discrete probability distribution for the events free, static occupancy and dynamic
occupancy for each grid cell. The particles then represent a velocity distribution for
the dynamic case. The same events are used in [TTWB14] within a Dempster-Shafer
framework [Dem68]. Details about the Dempster-Shafer theory of evidence (DST)
will be outlined in Section 5.2.1. To avoid aliasing problems, particles represent
velocity and position of an occupancy in a grid cell in all mentioned publications, so
the dynamic state of a grid cell is four-dimensional.
Prediction Step
All mentioned publications assume a process model with constant velocity and
constant direction and propagate each single particle accordingly. All particles that
are predicted into a certain grid cell represent the predicted dynamic state of the
grid cell. However, the exact quantitative reasoning about the resulting predicted
occupancy probability varies. Intuitively, the higher the number of particles or
particle weights predicted into a grid cell, the higher is the predicted occupancy
probability. An example is depicted in Figure 3.4b.
Update Step
Updating the occupancy probability of a grid cell with a measurement grid is
generally a binary Bayes problem and solved either by equation (3.6) or (3.5) or by
34
Grid Mapping
(a) Posterior at k
(b) Prediction for k + 1
(c) Measurement grid at k + 1
(d) Posterior at k + 1
Figure 3.4: Different states of the dynamic grid map estimation recursion.
equivalent update steps in the Dempster-Shafer framework [TTWB14], [NYK+ 15].
The estimated occupancy probability of a grid cell is used as a basis to normalize
the sum of weights of particles in one grid cell. This means that weights of particles
in one grid cell are all updated by the same normalization factor during one update
step.
An exception is [NYK+ 15], which suggests to fuse radar and laser measurements.
Radar Doppler measurements provide an individual likelihood density depending on
the velocity of a particle state. Consequently, [NYK+ 15] extends the update step by
individually updating particle weights even inside one grid cell. After the individual
particle weight update, [NYK+ 15] also normalizes the overall particle weight in one
grid cell represent the posterior occupancy probability of the cell.
3.2 Dynamic Grid Mapping
35
Resampling
All mentioned publications apply a resampling step to avoid degeneration. Similar
to classical particle filters, the resampling step chooses to eliminate some particles
and reproduce others instead, based on their weight. After the resampling step, all
particles are assigned the same weight.
Initialization
If a measurement grid cell provides a high occupancy probability (or occupancy
likelihood, in the forward case), but no particles were predicted into the corresponding
grid cell, new particles must be initialized to represent the dynamic state of the grid
cell. The initial distribution depends on the environment setting, but usually the
velocity of objects is limited, e.g. by the maximum speed of a vehicle.
Neither [DON11] nor [TTWB14] describe the initialization step to any further detail
than mentioned here. In a realistic scenario, a grid cell is not either empty or fully
populated, but mostly something in-between. Then, the question arises how to
divide the weight between predicted and initialized particles. Intuitively, the weight
for newly initialized particles should rise with increasing measurement occupancy
and decreasing predicted occupancy. Heuristic examples are provided by [NRL14]
and [NYK+ 15].
Occluded Areas
In practical applications, a grid map contains a high ratio of occluded and therefore
unobserved grid cells. Populating unknown areas of the grid map with particles
would result in a huge computational load. To avoid this, all mentioned publications
only initialize particles in grid cells with a certain measured occupancy probability.
3.2.2 Discussion
The discussed particle-based dynamic grid maps show promising results. However,
from a theoretical point of view many open questions remain. A prerequisite for
Bayesian state estimation is the definition of a state space, a stochastic process
describing the state transition and a stochastic observation process. All mentioned
papers directly describe the propagation of particles without defining the estimation
36
Grid Mapping
problem first. As a result, it is unclear what a particle represents. All mentioned
publications explain that a particle represents a hypothesis for the dynamic state
of an individual grid cell. However, during the prediction step, particles from
various cells are predicted into another grid cell and jointly represent the state of
the destination cell. The particles are not assigned to a specific object, instead they
represent a hypothesis for the existence and state of a whole group of objects.
In other words, the particles jointly represent a set of occupied grid cells, where
the number of occupied grid cells is a random process itself and must be estimated
too. This cannot be explained with single-object Bayesian estimation theory. As
a consequence, previous work cannot motivate prediction or update equations for
a well-defined estimation problem. Especially the initialization of new particles
remains unclear.
From a theoretical point of view, an environment containing a random but limited
number of objects is a random finite set (RFS). The next chapter presents a concept
which uses finite set statistics (FISST) to describe a grid map for state estimation in
dynamic environments.
Chapter 4
Dynamic Grid Mapping as a
Random Finite Set Problem
The chapter presents a new method which describes dynamic grid mapping as a
random finite set problem. The finite set theory facilitates the combination of the
Bernoulli filter [Ris13] and the PHD filter [Ris13; VM06] in order to recursively
estimate the state of dynamic grid cells. These filters cover fundamental problems
like object initialization or modeling of heterogeneous measurements in an elegant
way. The result is a recursion called probability hypothesis density / multi-instance
Bernoulli (PHD/MIB) filter.
The first part of the chapter defines the problem setting and outlines the PHD/MIB
filter recursion. The second part derives the filter equations and the third part
explains the relation to the classical binary Bayes filter (BBF) for static grid mapping.
A discussion at the end of the chapter summarizes the most important contributions.
4.1 Problem Setting
Intuitively, an object in a vehicle environment is a traffic participant, e.g. a pedestrian
or another vehicle. For static obstacles, it is unclear how one object is separated from
another. Static grid maps don’t facilitate a concept of objects. However, in order to
model the environment as a random finite set, an object definition is required. The
next section defines the multi-object state of a vehicle or robot environment as it is
estimated by the PHD/MIB filter.
38
Dynamic Grid Mapping as a Random Finite Set Problem
Occupied Grid Cell
Point Object
Free Grid Cell
Traffic Participants
c
c
c
Stationary Obstacle
c
c
c
Figure 4.1: Exemplary visualization of point objects. Left: Real-world
objects and corresponding point objects. Right: The number of
point objects per real-world object equals the number of grid
cells occupied by the real-world object.
4.1.1 Environment Definition
The PHD/MIB filter estimates a random finite set consisting of so-called point
objects. The relation between point objects and real-world objects depends on
an underlying grid map and is shown in Figure 4.1. A real-world object consists
of at least one but possibly several point objects. The number of corresponding
point objects per real-world object equals the number of grid cells occupied by the
real-world object.
To provide an example for the state x of a point object, let x be a two-dimensional
position and a two-dimensional velocity:
x = [px py vx vy ]T .
(4.1)
However, the object state can be arbitrarily extended and can include additional
attributes such as object height, color, semantic class, etc.
4.1 Problem Setting
39
PHD Representation of Joint
RFS of Point Objects
PHD Prediction Step for
Persistent Point Objects
Approximation as Bernoulli
RFS for Grid Cell 1
…
Approximation as Bernoulli
RFS for Grid Cell C
Bernoulli Prediction Step for
New-Born Object
…
Bernoulli Prediction Step for
New-Born Object
Bernoulli Update Step
…
Bernoulli Update Step
Transformation to PHD
Representation of Joint RFS
of Point Objects
Figure 4.2: Processing scheme of the PHD/MIB filter. Here, C is the overall
number of grid cells.
4.1.2 Filter Recursion Outline
The goal of the PHD/MIB filter is to estimate the multi-object state of the point
objects in a vehicle environment, which includes an estimate of the occupancy state
of grid cells, as will be explained below. In the course of the filter recursion, the
PHD/MIB filter represents the random finite set of point objects in different forms.
An overview of the filter recursion is depicted in Figure 4.2.
The filter represents the posterior multi-object state by its PHD. Thus, the prediction
step simply applies the standard PHD filter prediction. In order to update the
predicted RFS state with a measurement grid, the PHD/MIB filter approximates the
point object state in each grid cell as a Bernoulli RFS and carries out the update step
independently for each grid cell. Finally, the PHD/MIB filter transfers all instances
of Bernoulli sets to a joint PHD to represent the posterior state. The individual
filter steps are detailed in the following section.
40
Dynamic Grid Mapping as a Random Finite Set Problem
Point Object
Traffic Participants
Stationary Obstacle
Figure 4.3: Exemplary PHD of a traffic situation. Here, only the subspace
of the two-dimensional position is visualized.
4.2 Probability Hypothesis Density /
Multi-Instance Bernoulli Filter
The following sections derive the prediction and update equations of the PHD/MIB
filter.
4.2.1 Prediction Step of the MIB/PHD Filter
The PHD/MIB filter expresses the posterior multi-object state of time step k by its
PHD
Dk (xk ) : R4 → R.
(4.2)
In practical applications, PHDs are commonly represented by particles or Gaussian
mixtures. However, the following derivation is independent of its practical realization.
Figure 4.3 shows contour lines of an exemplary PHD of point objects in a typical
traffic situation.
4.2 Probability Hypothesis Density / Multi-Instance Bernoulli Filter
41
Multi-Object State Transition in PHD Representation Form
The birth process of point objects is defined by the birth PHD γb (xk+1 ). The
persistence probability of each point object is denoted by pS . The standard prediction
step of a PHD filter is then given by [Mah03]
Z
D+ (xk+1 ) = γb (xk+1 ) + pS f+ (xk+1 |xk )Dk (xk )dxk ,
(4.3)
where f+ (xk+1 |xk ) is the single-object transition density. An example for a process
model which defines a transition density is the constant velocity, constant orientation
(CVCO) model given by


1 0 T 0
0 1 0 T 

xk+1 = 
(4.4)
0 0 1 0  xk + ξk ,
0 0 0 1
where ξk is the process noise and T is the time interval between k and k + 1.
Since new-born objects will be handled in Bernoulli form, the prediction step of the
PHD/MIB filter is only required to consider persisting objects and consequently
simplifies to
Z
Dp,+ (xk+1 ) = pS f+ (xk+1 |xk )Dk (xk )dxk .
(4.5)
Here, the lower index p symbolizes the affiliation to persistent objects.
Approximation as Bernoulli Distributions
The PHD/MIB filter approximates the predicted PHD Dp,+ (xk+1 ) of persisting
objects by multiple instances of independent Bernoulli RFSs, one for each grid cell.
The interpretation is that each grid cell can either be occupied (a point object exists
in the grid cell) or free (no point object exists in the grid cell). Each Bernoulli RFS
instance models the possibility of object birth and the observation process including
clutter. The birth process model is identical to the standard Bernoulli filter. The
clutter process is different and will be derived for the special form of a measurement
grid. The following part describes the Bernoulli filter steps for a single grid cell
denoted by c.
42
Dynamic Grid Mapping as a Random Finite Set Problem
The predicted Bernoulli RFS for a persistent point object in grid cell c is given by

r(c)
if Xk+1 = ∅,
p,+
(c)
πp,+ (Xk+1 ) =
(4.6)
r(c) · p(c) (x
p,+
p,+ k+1 ) if Xk+1 = {xk+1 },
(c)
where rp,+ is the predicted existence probability of a persistent point object with
(c)
(c)
the counter event probability rp,+ = 1 − rp,+ . The predicted PDF of the point
(c)
object’s state is pp,+ (xk+1 ). The upper index (c) denotes values which are different
for individual cells.
(c)
From the relation between the existence probability rp,+ of a Bernoulli RFS and its
PHD (2.36) it follows that


Z


(c)
rp,+ = min 
Dp,+ (xk+1 )dxk+1 , pS  ,
(4.7)
xk+1 ∈c
where xk+1 ∈ c stands short for the set {xk+1 |(xk+1 ∈ c)}. It is the subset of R4
associated to grid cell c. Here, the limitation to a maximum value of the persistence
probability pS is a required approximation since the PHD prediction does not consider
that each grid cell cannot be entered by more than one point object.
Further, the spatial distribution of the predicted potential point object within the
grid cell can also directly be derived from (2.36) and results in
(c)
pp,+ (xk+1 ) =
Dp,+ (xk+1 )
(c)
rp,+
(c)
for all xk+1 ∈ c and rp,+ > 0.
(4.8)
Bernoulli RFS Birth Model
The standard Bernoulli filter defines the following birth model [Ris13]: If no object
exists at time step k, the existence probability of a new-born object at time step
k + 1 is given by the prior birth probability pB . If an object exists at time step k,
the existence probability of a new-born object at time k + 1 is zero, independent of
the survival of the old object. In the case of a new-born object, the single-object
spatial birth PDF is given by pb (xk+1 ). The choice of an appropriate birth model
depends of the environment to be estimated. The velocity variance of the spatial
birth distribution pb (xk+1 ) will typically be smaller for indoor applications than for
applications on a highway.
4.2 Probability Hypothesis Density / Multi-Instance Bernoulli Filter
43
The PHD/MIB filter assumes the same birth process as the standard Bernoulli filter.
(c)
This results in the predicted existence probability rb,+ of a new-born object with 1
(c)
(c)
rb,+ = pB · 1 − rp,+ .
(4.9)
Considering both cases of a persistent or new-born object leads to the predicted
Bernoulli RFS
(
(c)
(c)
1 − rb,+ − rp,+
if Xk+1 = ∅,
(c)
(4.10)
π+ (Xk+1 ) =
(c)
(c)
(c)
rb,+ · pb (xk+1 ) + rp,+ · pp,+ (xk+1 ) if Xk+1 = {xk+1 }.
(c)
Note that the predicted Bernoulli RFS π+ (Xk+1 ) represents both the predicted
dynamic distribution and the predicted occupancy probability of the corresponding
grid cell.
(c)
The predicted occupancy probability po,+ (Ok+1 ) equals the combined predicted
(c)
existence probability r+ of a persistent or a new-born point object in the grid cell,
so by definition of the Bernoulli RFS it follows:
(c)
(c)
(c)
(c)
po,+ (Ok+1 ) = r+ = rb,+ + rp,+ .
(4.11)
As a result of the prediction step, each grid cell contains the predicted Bernoulli
(c)
RFS π+ (Xk+1 ), describing both the existence probability of a potential point object
in the cell and the predicted distribution of its dynamic state.
4.2.2 Update Step of the PHD/MIB Filter
The goal of the update step is to combine the information contained in the predicted
Bernoulli RFS at time step k + 1 with the information contained in a sensor
measurement at time step k + 1. As a basic principle, static occupancy grid maps
estimate individual grid cell states independently of each other. The PHD/MIB
filter follows this principle as well. The following section recalls the processing chain
of sensor data in static occupancy grid maps.
1 Formally,
the probability of a birth event in time step k + 1 depends on the existence probability
of an object at time step k for the Bernoulli filter [Ris13]. For simplicity, equation (4.9) neglects
that fact and directly relates to the predicted existence probability for time step k + 1. This is
appropriate for process models with a high persistence probability (pS ≈ 1).
44
Dynamic Grid Mapping as a Random Finite Set Problem
Measurement Data Preprocessing in Static Occupancy Grid Maps
Figure 4.4 visualizes a common sensor data processing scheme of static occupancy
grid maps. Assume a certain group of measurements provides information about
the environment at time step k + 1. In this example the group consists of three
laser reflections, shown as red beams in Figure 4.4. Each of the three laser beams is
assumed to be an independent measurement zi,k+1 , i ∈ {1, 2, 3}. The inverse laser
measurement model processes one laser beam at a time as introduced in Section 3.1.2.
(c)
It assigns to each grid cell c the individual occupancy probability pzi,k+1 (Ok+1 |zi,k+1 ),
reasoning on the laser beam i. This step produces three different measurement grids,
one for each laser beam as shown in the left column in Figure 4.4. The numbers in
the grid cells state the individual occupancy probabilities.
As a next step, the processing scheme combines the three measurement grids to one
joint measurement grid. Based on the independence assumption of the laser beams, it
(c)
combines the three occupancy probabilities pzi,k+1 (Ok+1 |zi,k+1 ), i ∈ {1, 2, 3} applying
the binary Bayes filter (BBF) for inverse sensor models (3.6) individually in every
(c)
grid cell c. The result is the joint occupancy probability pzk+1 (Ok+1 |zk+1 ), as shown
in the middle row in Figure 4.4. The interpretation of the joint measurement grid
is the following: It holds for every grid cell c the estimated occupancy probability,
reasoning on all measurements at time step k + 1.
Finally, the processing scheme combines the joint measurement grid and the predicted
occupancy grid. It applies the BBF filter again in every grid cell c to combine the
(c)
predicted occupancy probability po,+ (Ok+1 ) with the measurement-based occupancy
(c)
probability pzk+1 (Ok+1 |zk+1 ). The result is the posterior occupancy probability
(c)
po,k+1 (Ok+1 ) as shown in the right column in Figure 4.4.
Measurement Data Preprocessing in the PHD/MIB Filter
In the same manner as the static occupancy grid map, the PHD/MIB filter processes
input in form of a joint measurement grid. Figure 4.5 shows the data processing
scheme of the PHD/MIB filter for the example of three measured laser reflections.
In this example, the measurement grid contains the same information as for the
static occupancy grid map. Again, the goal is to combine individually for each grid
cell c its predicted state at time k + 1 with the information provided for the specific
cell by the measurement grid.
4.2 Probability Hypothesis Density / Multi-Instance Bernoulli Filter
0.5
0.9
0.7
0.5
0.3
0.5
0.5
0.5
0.3
0.5
0.5
0.5
n
ai
m
n
ai
Do
n
om
io
tD
ict
en
ed
m
0.5
Pr
0.5
re
su
ea
0.7
M
0.5
Measurement Grid 1 at k+1
BBF
BBF
0.7
0.6
0.5
0.5
0.5
0.7
0.6
0.5
0.3
0.5
0.7
0.6
0.3
0.3
0.5
0.7
Predicted Grid at k+1
0.5
0.7
0.5
0.5
0.5
0.84
0.5
0.5
0.7
0.9
0.5
0.5
0.5
0.9
0.7
0.5
0.5
0.99
0.93
0.5
0.5
0.99
0.95
0.5
0.3
0.5
0.5
0.5
0.16
0.5
0.9
0.7
0.07
0.5
0.95
0.78
0.3
0.5
0.5
0.5
0.07
0.3
0.5
0.5
0.03
0.16
0.5
0.7
Measurement Grid 2 at k+1
0.5
0.5
0.5
0.5
0.5
0.5
0.7
0.5
0.5
0.5
0.9
0.7
0.3
0.3
0.5
0.5
BBF
Combined Meas. Grid at k+1
45
Updated Grid at k+1
Posterior
Measurement Grid 3 at k+1
Figure 4.4: Data preprocessing in static occupancy grid maps. Left column: Measurement grids for individual laser reflections. Middle
column: Joint measurement grid. Right column: Predicted
occupancy grid and updated occupancy grid.
In case of the PHD/MIB filter, the predicted state in each grid cell c is not defined
(c)
by its occupancy probability alone, but by the Bernoulli distribution π+ (Xk+1 ) as
shown in Figure 4.5. Accordingly, the innovation for each grid cell is carried out in
form of a Bernoulli filter update step.
Intuitively, the Bernoulli filter is an extension of the BBF because the object
existence probability (or occupancy probability) is part of the estimation problem in
the Bernoulli filter. However, in the RFS domain, the observation model is defined
by a multi-object likelihood function γk+1 (Zk+1 |Xk+1 ). This is a prerequisite for
applying the general multi-object Bayes update (2.52).
46
Dynamic Grid Mapping as a Random Finite Set Problem
0.5
0.9
0.7
0.5
0.3
0.5
0.5
0.5
0.3
0.5
0.5
0.5
n
ai
n
m
ai
Do
om
n
io
tD
ict
en
ed
m
0.5
re
su
ea
0.5
Pr
0.7
M
0.5
Measurement Grid 1 at k+1
MIB
π+
π+
π+
π+
π+
π+
π+
π+
π+
π+
π+
π+
π+
π+
π+
π+
Predicted Grid at k+1
0.5
0.7
0.5
0.5
0.5
0.84
0.5
0.5
πk+1 πk+1 πk+1 πk+1
0.5
0.9
0.7
0.5
0.5
0.99
0.93
0.5
πk+1 πk+1 πk+1 πk+1
0.16
0.5
0.9
0.7
πk+1 πk+1 πk+1 πk+1
0.07
0.3
0.5
0.5
πk+1 πk+1 πk+1 πk+1
0.3
0.5
0.5
0.5
0.3
0.5
0.5
0.5
Measurement Grid 2 at k+1
0.5
0.5
0.5
0.5
0.5
0.5
0.7
0.5
0.5
0.5
0.9
0.7
0.3
0.3
0.5
0.5
BBF
Combined Meas. Grid at k+1
Updated Grid at k+1
Posterior
Measurement Grid 3 at k+1
Figure 4.5: Data preprocessing in the PHD/MIB filter. Left column: Measurement grids for individual laser reflections. Middle column:
Joint measurement grid. Right column: Predicted Bernoulli
RFS in every grid cell and updated Bernoulli RFS in every grid
cell.
It is at this stage unclear, how the individual, measurement-based occupancy proba(c)
bility pzk+1 (Ok+1 |zk+1 ) for the grid cell c can be expressed in form a measurement
(c)
(c)
(c)
event Zk+1 and a multi-object likelihood function γk+1 (Zk+1 |Xk+1 ), while analytically providing the same information.
This question will be answered in the remaining part of this chapter. First, the next
section will define the Bernoulli observation model of the PHD/MIB filter. Later,
Section 4.3 will show the formal relation between the Bernoulli observation model
(c)
and the measurement-based occupancy probability pzk+1 (Ok+1 |zk+1 ).
4.2 Probability Hypothesis Density / Multi-Instance Bernoulli Filter
47
Bernoulli Observation Model
The standard Bernoulli filter expects Poisson distributed clutter detections [Ris13].
The PHD/MIB defines the following Bernoulli RFS observation process instead: A
measurement grid map provides an observation for each grid cell based on sensor data
at time step k + 1. The observation process of one grid cell is assumed independent
of other grid cells.
(c)
In each grid cell either one measurement zk+1 or no measurement occurs. The
probability that a measurement occurs in the occupied grid cell c is the cell-specific
(c)
and time-dependent true positive probability pTP,k+1 ∈ (0, 1). The probability
that a measurement occurs in the empty cell c is the false positive probability
(c)
pFP,k+1 ∈ (0, 1).
(c)
With the ratio between the true positive probability pTP,k+1 and the false positive
probability
(c)
pFP,k+1 ,
it is possible to express the same information as with the
(c)
measurement-based occupancy probability pzk+1 (Ok+1 |zk+1 ), as will be shown in
Section 4.3.
The PDF of a false positive measurement is given by the clutter density pcl (z). A
true positive measurement is associated to the point object in the grid cell with the
(c)
association probability pA,k+1 . In this case its distribution is defined by the single(c)
object likelihood function gk+1 (zk+1 |xk+1 ). If the measurement is not associated to
the point object, its PDF is also defined by the clutter density pcl (z).
(c)
The likelihood function gk+1 (zk+1 |xk+1 ) models a measurement process which is
dependent on the state xk+1 of the point object in the grid cell c. With the laser
measurements described in Figure 4.5, this is not the case. The laser measurements
are assumed to only depend on the object existence, not on the object state. An
example for an observation which is dependent on the dynamic object state is the
(c)
Doppler measurement of a radar reflection. With the association probability pA,k+1 ,
it is possible to express that a radar measurement in the vicinity of grid cell c is not
necessarily related to the point object in the grid cell. The association probability
(c)
pA,k+1 decreases with the distance between the measurement and the grid cell. Details
(c)
including the calculation of an exemplary likelihood function gk+1 (zk+1 |xk+1 ) and
its association probability
in Section 5.2.5.
(c)
pA,k+1
for radar Doppler measurements will be provided
48
Dynamic Grid Mapping as a Random Finite Set Problem
Conclusively, each measurement grid cell c contains the individual, time-dependent
(c)
(c)
true positive and false positive probabilities pTP,k+1 and pFP,k+1 , and in case a
measurement occurred in the cell, it additionally provides the single-object likelihood
(c)
(c)
function gk+1 (zk+1 |xk+1 ) and the corresponding association probability pA,k+1 .
(c)
The resulting multi-object likelihood γk+1 (Zk+1 |Xk+1 ) for the measurement grid cell
c considers all four possible cases of measurement and object existence.
Case 1: Zk+1 = ∅, Xk+1 = ∅,
i.e. no measurement occurs in grid cell c and no object exists in grid cell c.
Case 2: Zk+1 = ∅, Xk+1 = {xk+1 },
i.e. no measurement occurs in grid cell c and an object exists in grid cell c.
Case 3: Zk+1 = {zk+1 }, Xk+1 = ∅,
i.e. a measurement occurs in grid cell c and no object exists in grid cell c.
Case 4: Zk+1 = {zk+1 }, Xk+1 = {xk+1 },
i.e. a measurement occurs in grid cell c and an object exists in grid cell c.
The observation process as described above leads to the following multi-object
(c)
likelihood γk+1 (Zk+1 |Xk+1 ):
(c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 = ∅) = pFP,k+1 ,
(c)
(c)
(c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 = {xk+1 }) = pTP,k+1 ,
γk+1 (Zk+1 = {zk+1 }|Xk+1 = ∅) = pFP,k+1 · pcl (zk+1 ),
(c)
γk+1 (Zk+1 = {zk+1 }|Xk+1 = {xk+1 }) =
i
h
(c)
(c)
(c)
(c)
pTP,k+1 pA,k+1 · gk+1 (zk+1 |xk+1 ) + pA,k+1 · pcl (zk+1 ) .
|
{z
}
(c)
:=gA,k+1 (zk+1 |xk+1 )
(4.12)
4.2 Probability Hypothesis Density / Multi-Instance Bernoulli Filter
49
Multi-Object Bayes Update Step
Together, the predicted Bernoulli state (4.10) and the Bernoulli observation process
(4.12) define the multi-object state estimation problem for the individual grid cell
c. The exact solution is obtained by inserting (4.10) and (4.12) into the general
multi-object Bayes update (2.52). This leads to the posterior multi-object PDF
(c)
πk+1 (Xk+1 |Zk+1 ), which again considers all four possible existence cases.
Case 1: Zk+1 = ∅, Xk+1 = ∅,
i.e. no measurement occurs in grid cell c and no object exists in grid cell c results in
(2.52)
(c)
πk+1 (Xk+1 = ∅|Zk+1 = ∅) =
(c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 = ∅) · π+ (Xk+1 = ∅)
R (c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 ) · π+ (Xk+1 )δXk+1
(c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 )
(c)
(c)
pFP,k+1 · r+
(c)
(c)
(c)
pFP,k+1 · r+ + pTP,k+1
=
(c)
pFP,k+1 · r+
R
(4.10),(4.12)
·
(2.31)
(c)
π+ (Xk+1 )δXk+1
(c)
· r+
=
.
(4.13)
Case 2: Zk+1 = ∅, Xk+1 = {xk+1 },
i.e. no measurement occurs in grid cell c and an object exists in grid cell c results in
(2.52)
(c)
πk+1 (Xk+1 = {xk+1 }|Zk+1 = ∅) =
(c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 = {xk+1 }) · π+ (Xk+1 = {xk+1 })
R (c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 ) · π+ (Xk+1 )δXk+1
i
h
(c)
(c)
(c)
(c)
pTP,k+1 · rb,+ · pb (xk+1 ) + rp,+ · pp,+ (xk+1 ) (2.31)
=
R (c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 ) · π+ (Xk+1 )δXk+1
i
h
(c)
(c)
(c)
(c)
pTP,k+1 · rb,+ · pb (xk+1 ) + rp,+ · pp,+ (xk+1 )
.
(c)
(c)
(c)
(c)
pTP,k+1 · r+ + pFP,k+1 · r+
(4.10),(4.12)
=
(4.14)
50
Dynamic Grid Mapping as a Random Finite Set Problem
Case 3: Zk+1 = {zk+1 }, Xk+1 = ∅,
i.e. a measurement occurs in grid cell c and no object exists in grid cell c results in
(2.52)
(c)
πk+1 (Xk+1 = ∅|Zk+1 = {zk+1 }) =
(c)
(c)
γk+1 (Zk+1 = {zk+1 }|Xk+1 = ∅) · π+ (Xk+1 = ∅)
R (c)
(c)
γk+1 (Zk+1 = {zk+1 }|Xk+1 ) · π+ (Xk+1 )δXk+1
(c)
γk+1 (Zk+1
=
(c)
(c)
pFP,k+1 · pcl (zk+1 ) · r+
R
(4.10),(4.12)
= ∅|Xk+1 ) ·
(2.31)
(c)
π+ (Xk+1 )δXk+1
(c)
=
(c)
pFP,k+1 · pcl (zk+1 ) · r+
.
R (c)
(c)
(c)
(c)
(c)
pFP,k+1 · pcl (zk+1 ) · r+ + pTP,k+1 gA,k+1 (zk+1 |xk+1 ) · π+ ({xk+1 })dxk+1
(4.15)
Case 4: Zk+1 = {zk+1 }, Xk+1 = {xk+1 },
i.e. a measurement occurs in grid cell c and an object exists in grid cell c results in
(2.52)
(c)
πk+1 (Xk+1 = {xk+1 }|Zk+1 = {zk+1 }) =
(c)
(c)
γk+1 (Zk+1 = {zk+1 }|Xk+1 = {xk+1 }) · π+ (Xk+1 = {xk+1 }) (4.10),(4.12)
=
R (c)
(c)
γk+1 (Zk+1 = {zk+1 }|Xk+1 ) · π+ (Xk+1 )δXk+1
h
i
(c)
(c)
(c)
(c)
(c)
pTP,k+1 · gA,k+1 (zk+1 |xk+1 ) · rb,+ · pb (xk+1 ) + rp,+ · pp,+ (xk+1 ) (2.31)
=
R (c)
(c)
γk+1 (Zk+1 = ∅|Xk+1 ) · π+ (Xk+1 )δXk+1
h
i
(c)
(c)
(c)
(c)
(c)
pTP,k+1 · gA,k+1 (zk+1 |xk+1 ) · rb,+ · pb (xk+1 ) + rp,+ · pp,+ (xk+1 )
.
R (c)
(c)
(c)
(c)
(c)
pTP,k+1 gA,k+1 (zk+1 |xk+1 ) · π+ ({xk+1 })dxk+1 + pFP,k+1 · pcl (zk+1 ) · r+
(4.16)
4.2 Probability Hypothesis Density / Multi-Instance Bernoulli Filter
51
The update equations (4.13) to (4.16) can be expressed more compact by defining normalization constants. Then the shorter form of the multi-object PDF
(c)
πk+1 (Xk+1 |Zk+1 ) can be written as:
1
(c)
πk+1 (Xk+1 = ∅|Zk+1 = ∅) =
(c)
(c)
µ{∅}
(c)
· pFP,k+1 · r+ ,
1
(c)
πk+1 (Xk+1 = {xk+1 }|Zk+1 = ∅) =
(c)
(c)
· pTP,k+1 · π+ ({xk+1 }),
(c)
µ{∅}
(c)
(c)
πk+1 (Xk+1
= ∅|Zk+1 = {zk+1 }) =
pFP,k+1
(c)
µ{z}
(c)
· pcl (zk+1 ) · r+ ,
(c)
(c)
πk+1 (Xk+1 = {xk+1 }|Zk+1 = {zk+1 }) =
pTP,k+1
(c)
µ{z}
(c)
(c)
· gA,k+1 (zk+1 |xk+1 ) · π+ ({xk+1 }),
(4.17)
with normalization constants
(c)
(c)
(c)
(c)
(c)
µ{∅} = pFP,k+1 · r+ + pTP,k+1 · r+
(4.18)
and
(c)
(c)
(c)
µ{z} = pFP,k+1 · pcl (zk+1 ) · r+
Z
(c)
(c)
(c)
+ pTP,k+1 gA,k+1 (zk+1 |xk+1 ) · π+ ({xk+1 })dxk+1 .
(4.19)
(c)
The posterior πk+1 (Xk+1 ) is a Bernoulli RFS and represents both the dynamic state
and the occupancy probability of the corresponding grid cell. According to the
definition of a Bernoulli RFS, the posterior occupancy probability of grid cell c is
Z
(c)
(c)
(c)
po,k+1 (Ok+1 ) = rk+1 =
πk+1 ({xk+1 }) dxk+1 .
(4.20)
xk+1 ∈c
After the update step, the PHD/MIB filter transforms all Bernoulli RFS instances
into a joint PHD again. The joint PHD is the sum of all Bernoulli RFS instances:
Dk+1 (xk+1 ) =
C
X
c=1
(c)
πk+1 (Xk+1 = {xk+1 }),
(4.21)
52
Dynamic Grid Mapping as a Random Finite Set Problem
where c denotes the index of the corresponding grid cell of each Bernoulli RFS
instance and C is the total number of grid cells. This closes the recursion as
introduced in Figure 4.2.
4.3 Relation between PHD/MIB Filter and Binary
Bayes Filter
The proposed PHD/MIB filter is a generalization of the binary Bayes filter which
does not rely on the assumption of a static environment. Consequently, the filter
equations should simplify to the well-known equations of the binary Bayes filter for
a static process model. Recall, that the generalized BBF as defined by (3.7) states
(c)
(c)
αzk+1 (Ok+1 ) · po,k (Ok )
(c)
po,k+1 (Ok+1 ) =
(c)
(c)
(c)
αzk+1 (Ok+1 ) · po,k (Ok ) + po,k (Fk+1 )
.
(4.22)
(c)
Here, O is the occupancy event and F is the free event. Further, po,k (Ok ) is the
posterior occupancy probability of the former time step k, which equals the prediction
(c)
in a static environment, and po,k+1 (Ok+1 ) is the updated occupancy probability
(c)
at time step k + 1. Most importantly, αzk+1 is the measurement-based occupancy
probability ratio
(c)
αz(c)
=
k+1
pzk+1 (Ok+1 |zk+1 )
(c)
pzk+1 (Fk+1 |zk+1 )
, p(c)
zk+1 (Fk+1 |zk+1 ) > 0,
(4.23)
or the likelihood ratio
(c)
αz(c)
=
k+1
gk+1 (zk+1 |Ok+1 )
(c)
gk+1 (zk+1 |Fk+1 )
(c)
, gk+1 (zk+1 |Fk+1 ) > 0,
(4.24)
depending if the measurement grid cell expresses the information in form of an
occupancy probability or in form of a likelihood density. The motivation to define
the generalized BBF was to show that the information in an occupancy measurement
(c)
grid cell can uniquely be expressed by the ratio αzk+1 , independently of the absolute
(c)
(c)
likelihood values gk+1 (zk+1 |Ok+1 ) and gk+1 (zk+1 |Fk+1 ). A closer look at the update
equations of the PHD/MIB filter (4.16) and (4.16) reveals, that there exists an
(c)
analogy for the true positive probability pTP,k+1 and the false positive probability
(c)
pFP,k+1 .
4.3 Relation between PHD/MIB Filter and Binary Bayes Filter
(c)
53
(c)
Again, the absolute values of pTP,k+1 and pFP,k+1 are irrelevant and only the true
positive to false positive ratio
(c)
αz(c)
=
k+1
pTP,k+1
(c)
pFP,k+1
(c)
, pFP,k+1 > 0
(4.25)
is informative for the update step.
(c)
Of course, additional information is contained in the association probability pA,k+1 ,
(c)
the likelihood function gk+1 (zk+1 |xk+1 ), and the clutter density pcl (z), but this kind
of information relates to the extended part of the PHD/MIB filter, which does not
exist in the original BBF.
In order to reduce the PHD/MIB to the special case of a BBF filter, the following
(c)
proof will define a non-informative likelihood function gk+1 (zk+1 |xk+1 ) and a noninformative clutter density pcl (z). In this case, all information contained in a
(c)
measurement grid cell is given by its true positive to false positive ratio αzk+1 .
Proposition: Assume a deterministic, static process model in the PHD/MIB filter,
so that the predicted intensity distribution for time step k + 1 is equivalent to the
posterior distribution at time k, i.e.
D+ (xk+1 ) = Dk (xk ) ∀ xk+1 = xk ∈ X, k ∈ N.
(4.26)
(c)
Further, assume the measurement likelihood gk+1 (zk+1 |xk+1 ) and the clutter density
pcl (zk+1 ) are equal uniform distributions in a limited subset Zs of the measurement
space, i.e.
(
θ if zk+1 ∈ Zs ,
(c)
gk+1 (zk+1 |xk+1 ) = pcl (zk+1 ) =
(4.27)
0 otherwise,
where θ > 0 is constant. Then the propagation of the posterior occupancy probability
(c)
(c)
(c)
rk = po,k (ok = Ok ) at time k to the posterior occupancy probability rk+1 =
(c)
po,k+1 (ok+1 = Ok+1 ) at time k + 1 of the PHD/MIB filter reduces to the generalized
binary Bayes update (3.7)
(c)
(c)
αzk+1 (Ok+1 ) · po,k (Ok )
(c)
po,k+1 (Ok+1 ) =
(c)
(c)
(c)
αzk+1 (Ok+1 ) · po,k (Ok ) + po,k (Fk+1 )
,
(4.28)
54
Dynamic Grid Mapping as a Random Finite Set Problem
with
αz(c)
(Ok+1 ) =
k+1
 (c)
p

 TP,k+1
if Zk+1 = ∅,
(c)

pFP,k+1
(4.29)
(c)

p

 TP,k+1
if Zk+1 = {zk+1 }.
(c)
pFP,k+1
Proof: Due to the static process model (4.26), the Bernoulli distribution for each
grid cell does not change during the prediction step:
(c)
(c)
π+ = πk .
(4.30)
In case of no measurement in grid cell c, i.e. Zk+1 = ∅, the posterior existence
probability of an object in grid cell c is given by
Z
(c) (4.20)
(c)
rk+1 =
πk+1 ({xk+1 }|∅) dxk+1
xk+1 ∈c
Z
(4.17),(4.30)
=
1
(c)
(c)
µ{∅}
xk+1 ∈c
(c)
· pTP,k+1 · πk ({xk+1 }) dxk+1
(c)
=
(c)
pTP,k+1 · rk
(4.18),(4.30)
(c)
(c)
(c)
(4.31)
(c)
pFP,k+1 · rk + pTP,k+1 · rk
and for Zk+1 = {zk+1 } it follows
Z
(c) (4.20)
(c)
rk+1 =
πk+1 ({xk+1 }|{zk+1 }) dxk+1
xk+1 ∈c
(4.17),(4.30)
Z
=
(c)
pTP,k+1
(c)
xk+1 ∈c
µ{z}
(c)
(c)
· gA,k+1 · πk ({xk+1 }) dxk+1
(c)
=
(c)
(c)
(c)
(c)
(c)
(c)
pFP,k+1 · pcl · rk + pTP,k+1 · gA,k+1 · rk
(c)
(c)
pTP,k+1 · rk
(4.27)
=
(c)
pTP,k+1 · gA,k+1 · rk
(4.19),(4.27),(4.30)
(c)
(c)
(c)
(c)
pFP,k+1 · rk + pTP,k+1 · rk
.
(4.32)
4.4 Discussion
55
4.4 Discussion
This chapter introduced point objects as a representation for the vehicle environment
and described how the existence probability and the dynamic state of a point object
defines the occupancy probability and the dynamic state of a grid cell. Further,
the chapter outlined the connection between the research field of dynamic grid
maps and the random finite set theory. In contrast to former work on dynamic
grid maps [DON11; NRL14; NYK+ 15; TTWB14], random finite set theory allows
a stochastically rigorous definition of the multi-object state estimation problem.
Furthermore, modeling the problem in the random finite set domain offers the
possibility to apply well-established random finite set filters. The chapter suggested
a combination of a PHD filter and multiple instances of Bernoulli filters to estimate
the dynamic multi-object state of point objects.
The motivation for choosing the PHD representation in the prediction step is the
following: All mentioned papers [DON11; NRL14; NYK+ 15; TTWB14] represent
and propagate the dynamic state of grid cells with particles. The prediction step
does not distinguish between particles of different grid cells in all four publications.
In other words: particles are not associated to specific objects. A disadvantage is
that it is not possible to model object interactions, an advantage is that it leads to a
simple prediction step, since every particle can be processed independently of other
particles. The PHD filter shows the same characteristics: By reducing a random
finite set to its PHD, any information on object interdependency gets lost, but the
practical realization of the prediction step is easy to implement, since it considers
only single-object state transition densities (see (2.61)). This analogy between the
PHD filter and the prediction step of dynamic grid maps presented in literature was
the motivation in this thesis to represent the joint posterior of point objects by its
PHD and to apply the prediction step of the PHD filter. Of course, the RFS domain
is not limited to the PHD filter and offers many more options as will be discussed
below in this section.
Further, all mentioned papers [DON11; NRL14; NYK+ 15; TTWB14] carry out the
update step individually for each grid cell. The goal of this step is to estimate the
occupancy probability of the grid cell as well as its dynamic state. The direct analogy
of this estimation problem in the random finite set domain can be modeled with a
Bernoulli random finite set and can be solved with the Bernoulli filter. As outlined
in Chapter 3, classical occupancy grid maps assume a static world and estimate
only the occupancy state of a grid cell, applying the binary Bayes filter. Both the
binary Bayes filter and the Bernoulli filter solve an estimation problem in a discrete,
binary state space. The Bernoulli filter additionally estimates the dynamic state of
a potentially existing object. Intuitively, the Bernoulli filter is an extension of the
binary Bayes filter. The connection between these filters is formally confirmed by
56
Dynamic Grid Mapping as a Random Finite Set Problem
the proof presented at the end of this chapter. The proof shows that the existence
probability of a point object in a grid cell estimated by the Bernoulli filter is identical
to the occupancy probability of the grid cell estimated by the binary Bayes filter.
Conclusively, the combination of a PHD filter and multiple instances of Bernoulli
filters was chosen in this thesis because it is able to explain common approaches
in the research field of dynamic grid maps from the perspective of random finite
sets. However, the random finite set domain offers further well-studied approaches
which might be suitable for propagating the multi-object state of point objects or
dynamic grid maps in general. An example is the labeled multi-Bernoulli (LMB)
filter [RVVD14], which received much attention recently. Among other things, the
LMB filter is able to consider the interdependency of the existence of objects. This
could be a potential improvement in comparison to the PHD/MIB filter and the
application of the LMB filter for dynamic grid maps should be investigated in future
research.
As mentioned above, the advantage of neglecting interdependencies between point
objects is a simplified implementation in comparison to approaches which do consider
these object interdependencies. More specifically, if the PHD/MIB filter is realized
with particles, the filter can process particles and grid cells in parallel to a great
part. This is interesting for practical applications, since parallel processing chip
technology is on the upgrade today.
The remaining part of this thesis focuses on the challenge of realizing and implementing the PHD/MIB filter as a real-time application for self-driving cars. The following
chapter describes the particle realization of the PHD/MIB filter and Chapter 6
outlines in detail a highly efficient parallelized implementation.
Chapter 5
Particle Realization and
Dempster-Shafer Approximation
The PHD/MIB filter can be realized in different ways. A main character of the
realization is the representation form of the state probability hypothesis density
(PHD). Widely used realizations of the original PHD filter are the Gaussian mixture
probability hypothesis density (GM-PHD) filter [VM06] and the SMC-PHD filter
as introduced in Section 2.2.5, also referred to as particle realization [Ris13; Sid03;
VSD05]. Particle realizations are particularly well-suited for parallel implementation
as will be outlined in Chapter 6. This chapter presents in the first part the particle
realization of the PHD/MIB filter.
A remaining challenge for practical applications are huge unobserved areas in the
robot or vehicle environment. As these areas could potentially contain objects,
the original particle implementation of the PHD/MIB filter populates these areas
with particles. The second part of this chapter presents an approximation of the
PHD/MIB filter using the Dempster-Shafer theory of evidence (DST) [Dem68; Sha76;
Sme90], which significantly reduces the number of required particles. In the third
part, the chapter summarizes the assumptions and approximations in the PHD/MIB
filter and the additional approximations introduced by the Dempster-Shafer-based
approach.
5.1 Particle Realization of the PHD/MIB Filter
The section presents the particle realization of the PHD/MIB filter, separated into
prediction and update step.
58
Particle Realization and Dempster-Shafer Approximation
5.1.1 Particle Prediction Step
The prediction step is similar to the prediction step of the original SMC-PHD filter
as presented in Section 2.2.5. Particles are random samples of the posterior PHD at
(i)
(i)
time step k. A particle set consists of ν particles and their weights {xk , wk }νi=1 .
Together they represent the posterior as
Dk (xk ) =
ν
X
(i)
(i)
wk δ(xk − xk ).
(5.1)
i=1
Here, δ is the Dirac delta function as defined in (2.17). Recall that the posterior
PHD Dk (xk ) represents the set of all point objects in the vehicle environment.
Prediction of Persistent Objects
To represent predicted persistent objects, the prediction draws particles by sampling
the proposal density qk+1 :
(i)
(i)
xp,+ ∼ qk+1 (·|xk , Zk+1 ).
(5.2)
The index p depicts that these particles represent a persistent point object. The
remaining part of the section assumes it is possible to sample from the transition
density f+ , which is used as proposal density:
(i)
(i)
qk+1 (xk+1 |xk , Zk+1 ) = f+ (xk+1 |xk ).
(i)
(5.3)
(i)
The sampling provides the predicted particle set {xp,+ , wp,+ }νi=1 for time step k + 1,
where the particle weights are multiplied with the persistence probability:
(i)
(i)
wp,+ = pS · wk .
(5.4)
The set represents the predicted PHD of persistent point objects:
Dp,+ (xk+1 ) =
ν
X
i=1
(i)
(i)
wp,+ δ(xk+1 − xp,+ ).
(5.5)
5.1 Particle Realization of the PHD/MIB Filter
59
Transition from a PHD to Multiple Instances of Bernoulli RFSs
As depicted in Figure 4.2, the PHD/MIB filter now transforms the representation
form from the joint PHD to individual, independent Bernoulli RFSs for each grid
cell. Accordingly, the following steps are carried out for each grid cell c individually.
Let
(i,c)
(i,c) ν
(c)
p,+
{xp,+ , wp,+ }i=1
(5.6)
be the set of particles predicted into grid cell c at time step k + 1 according to (5.2)
(c)
and (5.4). The symbol νp,+ represents the number of particles predicted into grid
cell c at time step k + 1.
To keep the notation simple, consider the set (5.6) already truncated, i.e., the sum
of weights does not exceed the persistence probability pS . Recall that the PHD
filter prediction step neglects any object interaction. It doesn’t consider the fact
that a grid cell cannot be entered by more than one point object. Consequently, it
is possible that the sum of predicted particle weights in one grid cell exceeds the
persistence probability pS . As stated by (4.7) and (4.8), if and only if the the sum
of predicted particle weights in cell c exceeds pS , the particle weights in cell c have
to normalized to sum up to pS .
According to (4.7), the sum of predicted particle weights in grid cell c then equals
(c)
the predicted existence probability rp,+ of a persistent object in cell c:
(c)
νp,+
(c)
rp,+ =
X
(i,c)
wp,+ ∈ (0, pS ].
(5.7)
i=1
Prediction of New-Born Objects
(c)
According to (4.10), the predicted existence probability rb,+ of a new-born object in
grid cell c is given by
(c)
(c)
rb,+ = pB · 1 − rp,+ ,
(5.8)
60
Particle Realization and Dempster-Shafer Approximation
where the birth probability pB is the probability for a birth event in an empty cell.
Predicted new-born objects in grid cell c are represented by the particle set
(i,c) ν
(i,c)
(c)
b,+
.
{xb,+ , wb,+ }i=1
(5.9)
The particles of this set are sampled from the spatial birth PDF pb :
(i,c)
xb,+ ∼ pb (·).
(5.10)
(c)
The number of new-born particles νb,+ for each grid cell c is a design parameter of
the system.
Since the new-born particle weights sum up to the predicted existence probability
(c)
rb,+ (4.9) of a new-born object in grid cell c, the weight of each new-born particle is
given by
(c)
(i,c)
wb,+ =
rb,+
(c)
.
(5.11)
νb,+
Predicted Bernoulli RFS
Together, the persistent and the new-born particle sets represent the predicted
(c)
Bernoulli RFS π+ (Xk+1 ) in grid cell c:
(c)
(c)
νb,+
νp,+
(c)
π+ ({xk+1 })
=
X
(i,c)
wp,+ δ(xk+1
−
(i,c)
xp,+ )
+
i=1
X
(i,c)
(i,c)
wb,+ δ(xk+1 − xb,+ )
(5.12)
i=1
and
(c)
(c)
(c)
π+ (∅) = 1 − rp,+ − rb,+ .
(5.13)
5.1.2 Particle Update Step
Assume a measurement grid map taken at time step k + 1 provides for each grid cell
an observation as stated above in Section 4.2.2. The update step adapts the weights
of the particle set (5.12).
5.1 Particle Realization of the PHD/MIB Filter
61
The update rules for persistent and new-born particles are identical. The notation
system uses the weight symbol w∗ with ∗ ∈ {p,b} in equations that are identical for
both persistent particle weights wp and new-born particle weights wb .
In case a measurement occurred in measurement grid cell c, unnormalized adapted
(i,c)
particle weights w
e∗,k+1 are calculated according to (4.17):
(i,c)
(c)
(c)
(i,c)
(i,c)
w
e∗,k+1 = pTP,k+1 · gA,k+1 (zk+1 |x∗,+ ) · w∗,+ .
(5.14)
The normalized weights are given by
(i,c)
(i,c)
w∗,k+1 =
w
e∗,k+1
(5.15)
(c)
µ{z}
with (4.19)
(c)
(c)
νb,+
νp,+
(c)
µ{z}
=
(c)
pFP,k+1
· pcl (zk+1 ) ·
(c)
r+
+
X
(i,c)
w
ep,k+1
+
X
i=1
(i,c)
w
eb,k+1 .
(5.16)
i=1
In case no measurement occurred in measurement grid cell c, the update rule for
(i,c)
both the persistent and new-born particles to calculate adapted weights w∗,k+1 is
according to (4.17):
(c)
pTP,k+1
(i,c)
w∗,k+1 =
(c)
(c)
(i,c)
(c)
(c)
pTP,k+1 · r+ + pFP,k+1 · r+
w∗,+ .
(5.17)
Notice that for multi-object distributions, normalization does not mean all particle
weights sum up to 1. Instead, the sum of updated particle weights equals the
(c)
posterior existence probability rk+1 of a point object in grid cell c at time step k + 1,
(c)
which is also the posterior occupancy probability po,k+1 (Ok+1 ) of the grid cell:
(c)
(c)
νp,k+1
(c)
rk+1
=
(c)
po,k+1 (Ok+1 )
=
X
i=1
νb,k+1
(i,c)
wp,k+1
+
X
i=1
(i,c)
wb,k+1 .
(5.18)
62
Particle Realization and Dempster-Shafer Approximation
(c)
The posterior Bernoulli RFS πk+1 (Xk+1 ) of grid cell c is given by:
(c)
(c)
νp,k+1
(c)
πk+1 ({xk+1 }) =
X
νb,k+1
(i,c)
(i,c)
wp,k+1 δ(xk+1 − xp,k+1 ) +
i=1
X
(i,c)
(i,c)
wb,k+1 δ(xk+1 − xb,k+1 )
i=1
(5.19)
and
(c)
(c)
(c)
πk+1 (∅) = rk+1 = 1 − rk+1 .
(5.20)
Joint PHD Representation
The PHD/MIB represents the posterior multi-object state of all point objects in the
environment by its PHD. The transformation from multiple instances of Bernoulli
RFSs to a joint PHD is given by (4.21)
X
(i,c)
(i,c)
Dk+1 (xk+1 ) =
wp,k+1 δ(xk+1 − xp,k+1 )
(c)
i∈[1,νp,k+1 ],c∈[1,C]
+
X
(i,c)
(i,c)
wb,k+1 δ(xk+1 − xb,k+1 ),
(5.21)
(c)
i∈[1,νb,k+1 ],c∈[1,C]
where C ist the overall number of grid cells. Usually, particle filter realizations
of a PHD filter provide only the persistent part of the posterior PHD as output
[Ris13]. Depending on the application, new-born particles considerably increase the
uncertainty of the estimated state of objects. So it is often beneficial to consider
their influence on the state estimation only after another recursion.
5.1.3 Resampling
For many applications it is important to keep the overall number of used particles
constant. Therefore, the PHD/MIB filter resamples the constant number of ν
particles from the joint posterior particle set. For each particle the probability to be
drawn is proportional to its weight.
(i)
(i)
Let {xk+1 , wk+1 }νi=1 be the set of resampled particles and their weights. The new
weights of the particles are all equal and normalized to sum up to the same value as
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
63
the posterior weights of the persistent and the new-born particles together:
X (i)
X
(i,c)
wk+1 =
wp,k+1
i∈[1,ν]
(c)
i∈[1,νp,k+1 ],c∈[1,C]
+
X
(i,c)
wb,k+1 .
(5.22)
(c)
i∈[1,νb,k+1 ],c∈[1,C]
5.2 Real-time Approximation using
Dempster-Shafer Theory of Evidence
For some application scenarios, the presented particle realization of the PHD/MIB
filter might not be real-time capable. A possible reason are huge unobserved areas in
grid maps. Since the presented particle realization of the PHD/MIB filter represents
potential point objects in unobserved areas with particles, it requires a large number
of them to cover the multi-object state space.
All mentioned publications of particle-based dynamic grid maps [DON11; NRL14;
NYK+ 15; TTWB14] use particles only for occupied grid cells, not for unobserved
grid cells. One possibility to distinguish between unobserved and occupied cells is to
use Dempster-Shafer masses [Dem68; Sha76; Sme90; YFE94] instead of occupancy
probabilities. The approach is commonly applied to classical grid maps [NTDD14;
NWW+ 13; YHCZ00] and to particle based dynamic grid maps [NYK+ 15; TTWB14].
The approach presented in this section is a coarse approximation of the particlebased PHD/MIB filter applying the Dempster-Shafer theory of evidence (DST).
The resulting approximation will be referred to as Dempster-Shafer PHD/MIB (DSPHD/MIB) filter. The DS-PHD/MIB filter represents the multi-object state with a
substantially reduced number of particles compared to the original PHD/MIB filter
and is also easier to implement. An efficient, massively parallelized implementation
of the DS-PHD/MIB filter will be presented in Chapter 6.
5.2.1 Dempster-Shafer Theory of Evidence
In the previous part of the thesis, Bayesian inference has served as the basic mathematical framework for information fusion. This section introduces the DST as an
alternative approach.
64
Particle Realization and Dempster-Shafer Approximation
Formal Definition
The frame of discernment in DST is the set of elementary hypothesis Ω. Elementary
hypotheses are disjoint events. The power set 2Ω is the set of all subsets of Ω
including the empty set. An element of the power set 2Ω is called a proposition.
The function m : 2Ω → [0, 1] is called a basic belief assignment (BBA) or mass if
X
m(∅) = 0,
(5.23)
m(A) = 1.
(5.24)
A∈2Ω
A mass value m(A) > 0 expresses a certain belief in proposition A without further
distinction between the elements of A.
Analogy to Kolmogorov’s Probability Theory
To understand the Dempster-Shafer theory of evidence (DST), it is important to
recall Kolmogorov’s probablity theory [Kol50]. Let ΩK be a non-empty set called
universal set and let F be a sigma-algebra1 on ΩK . The function p : F → [0, 1] is
called a probability function and assigns a probability to the event E ∈ F if it fulfills
the following three axioms:
p(E) ≥ 0 for all E ∈ F,
(5.25)
p(ΩK ) = 1,
(5.26)
p(D ∪ E) = p(D) + p(E) for all D, E ∈ F and D ∩ E = ∅.
(5.27)
The axioms are often referred to as probability axioms or Kolmogorov’s three
axioms. The triple consisting of the universal set ΩK , a sigma-algebra on ΩK and
the probability function p is called a probability space. Analogously, the DST
defines a triple consisting the frame of discernment Ω, its power set 2Ω and the
BBA m. However, a probability function p and a BBA m describe uncertainty in
fundamentally different ways. Table 5.1 summarizes the analogy between the DST
and Kolmogorov’s probability theory.
1F
⊆ 2ΩK is a sigma-algebra on ΩK if the following three conditions hold:
ΩK ∈ F ,
ΩK \ A ∈ F for all A ∈ F ,
A1 ∪ A2 ∪ A3 , ∪... ∈ F for all A1 , A2 , A3 , ... ∈ F .
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
65
Table 5.1: Analogies of DST to Kolmogorov’s probablity theory.
Kolmogorov
DST
Set of elementary
hypothesis
Universal set ΩK
Frame of discernment Ω
Function Domain
Event space F ,
is a sigma-algebra on ΩK
Power set 2Ω
Function
Probability function
p : F → [0, 1]
Basic belief assignment
m : 2Ω → [0, 1]
Axioms
p(E) ≥ 0 for all E ∈ F ,
p(ΩK ) = 1,
p(D∪E) = p(D)+p(E) ∀ D, E ∈ F |D∩E = ∅.
Pm(∅) = 0,
m(A) = 1.
A∈2Ω
Example: Wheel of Fortune
The following scenario gives an example for the difference between the two domains
DST and Kolmogorov’s probability theory. Regard a wheel of fortune which is known
to be either green or red but is partly covered as shown in Figure 5.1. Assume the
uncovered area is half green and half red. The result of a wheel turn can either
be green (G) or red (R), therefore both the universal set ΩK and the frame of
discernment Ω are given by
ΩK = Ω = {G, R}.
(5.28)
This example considers the power set of the universal set ΩK as event space F :
F = 2ΩK = {∅, {G}, {R}, ΩK } .
(5.29)
The probability for the events green or red as an outcome of a wheel spin is unknown
since a part of the wheel is covered. A commonly applied approach in such cases is
to assume a uniform distribution for the covered area. This results in the following
probability function p:
p(∅) = 0,
p(G) = 0.5,
p(R) = 0.5,
p(ΩK ) = 1.
(5.30)
Note that with this approach, the probability function p is independent of how much
of the wheel is covered, as long as the uncovered area is half green and half red. In
contrast, the BBA m distinguishes between uncertainty in a statistical sense and
lack of knowledge. The latter is also called epistemic uncertainty. A covered part of
the wheel is an example for epistemic uncertainty. The BBA m : 2{G,R} → [0, 1] of a
wheel spin result depends on how much of the wheel is covered. Assume again that
the visible area of the wheel is always half green and half red, but it is unknown how
66
Particle Realization and Dempster-Shafer Approximation
Figure 5.1: Wheel of fortune as an example for a BBA m : 2{G,R} → [0, 1]
with elementary hypothesis green (G) and red (R). It is known
that the wheel is either green or red, but it is unknown how the
covered area (grey) is divided into green and red.
the colors are distributed behind the cover. If the wheel is completely uncovered, m
is given by
m(∅) = 0,
m(G) = 0.5,
m(R) = 0.5,
m(ΩK ) = 0.
(5.31)
m(ΩK ) = 0.5.
(5.32)
If the wheel is half covered, m is given by
m(∅) = 0,
m(G) = 0.25,
m(R) = 0.25,
If the wheel is completely covered, m is given by
m(∅) = 0,
m(G) = 0,
m(R) = 0,
m(ΩK ) = 1.
(5.33)
Note that mass assigned to the frame of discernment Ω is not necessarily 1. Instead,
the mass assigned to Ω expresses epistemic uncertainty.
Pignistic Transformation
Important properties of a BBA with regard to a specific proposition are belief,
plausibility and uncertainty.
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
67
Figure 5.2: Belief, uncertainty and plausibility of the BBA m for the event
green (G).
The belief Belm (A) of the BBA m for the proposition A is defined
X
Belm (A) =
m(B).
(5.34)
B⊆A,B6=∅
The plausibility Plm (A) of the BBA m for a proposition A is given by
X
Plm (A) =
m(B),
(5.35)
B∩A6=∅
The uncertainty Um (A) of the BBA m for the proposition A calculates to
Um (A) = Plm (A) − Belm (A).
(5.36)
The belief represents a pessimistic guess, whereas the plausibility represents an
optimistic guess. Figure 5.2 visualizes belief, plausibility and uncertainty for the
example of the wheel of fortune. One possibility to transform the BBA m into a
probability function Pigm is the pignistic transformation [Sme90]:
Pigm (A) =
X |A ∩ B|
m(B),
|B|
(5.37)
B⊆Ω
where the number of elementary hypotheses in the proposition · are denoted |·|.
68
Particle Realization and Dempster-Shafer Approximation
For the binary example of the wheel fortune, the pignistic transformation distributes
the mass for the covered area m(Ω) equally to the probability for green and red.
As a result, the pignistic transformations of the BBAs (5.31), (5.32) and (5.33) all
result in the probability function (5.30).
Generally, the pignistic transformation Pigm fulfills
Belm (A) ≤ Pigm (A) ≤ Plm (A).
(5.38)
A BBA which is only valid with a certain probability α is considered a discounted
BBA mα (A). It is defined as
(
αm(A)
for A =
6 ∅,
α
m (A) =
(5.39)
1 − α + αm(Ω) for A = Ω.
The symbol α is also referred to as discount factor.
Dempster-Shafer Rule of Combination and Relation to Binary Bayes
Filter
The Dempster-Shafer rule of combination combines two independent BBAs m1 and
m2 and is defined
m1⊕2 (A) = m1 (A) ⊕ m2 (A)
P
m1 (X)m2 (Y )
=A
= X∩Y P
∀A ∈ 2Ω .
1−
m1 (X)m2 (Y )
(5.40)
X∩Y =∅
The BBA given by m(Ω) = 1 does not provide any information. Accordingly, it
has no effect when combined with another BBA according to (5.40). Therefore,
m(Ω) = 1 is also called neutral BBA.
In the remaining part of this theses, BBAs describe the state of a grid cell with the
frame of discernment containing the elements occupied and free: Ω = {O, F }. The
combination rule (5.40) then combines two independent BBAs m1 and m2 when
they reason about the state of the same grid cell c.
In contrast, grid maps in the probability domain combine two independent binary
occupancy probability functions p1 and p2 reasoning about the state of grid cell c
with the binary Bayes filter (3.6).
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
69
The Dempster-Shafer rule of combination (5.40) relates to the binary Bayes filter
(3.6) as follows: Proposition: Let Ω = {O, F } be the frame of discernment for two
independent BBAs m1 and m2 with
m1 (Ω) = m2 (Ω) = 0
(5.41)
mi (A) > 0 for all i ∈ {1, 2}, A ∈ {O, F }.
(5.42)
and
Further, let p1 and p2 be the probability functions resulting from the pignistic
transformation (5.37) of m1 and m2 , respectively and let pBBF be the probability
function resulting from combining p1 and p2 with the binary Bayes filter (3.6).
Describing the other processing path, let m1⊕2 be the BBA resulting from combining
m1 and m2 with the Dempster-Shafer rule of combination (5.40) and let p1⊕2 be the
probability function resulting from the pignistic transformation (5.37) of m1⊕2 .
Then pBBF equals p1⊕2 . This means: applying the pignistic transformation (5.37)
on m1 and m2 and combining the resulting probability functions p1 and p2 with the
binary Bayes filter (3.6) is equivalent to combining m1 and m2 with the DempsterShafer rule of combination (5.40) to m1⊕2 and applying the pignistic transformation
(5.37) on m1⊕2 if conditions (5.41) and (5.42) hold.
Proof: From (5.41) it follows with axiom (5.24) that
mi (A)
(5.24)(5.41)
=
1 − mi (B) for all i ∈ {1, 2}, A, B ∈ {O, F }, A 6= B.
(5.43)
Therefor the pignistic transformation (5.37) of m1 and m2 leads to
pi (A)
(5.37),(5.43)
=
mi (A) for all i ∈ {1, 2}, A ∈ {O, F }.
(5.44)
Inserting (5.44) into the binary Bayes filter (3.6) leads to
pBBF (A)
for all A ∈ {O, F }.
m1 (A) · m2 (A)
m1 (A) · m2 (A) + (1 − m1 (A)) (1 − m2 (A))
m1 (A) · m2 (A)
=
.
2 · m1 (A) · m2 (A) − m1 (A) − m2 (A) + 1
(3.6),(5.44)
=
(5.45)
70
Particle Realization and Dempster-Shafer Approximation
Combining m1 and m2 with the Dempster-Shafer rule of combination (5.40) considering (5.41) provides
m1⊕2 (A) = m1 (A) ⊕ m2 (A)
m1 (A) · m2 (A)
1 − m1 (A) · m2 (B) − m1 (B) · m2 (A)
m1 (A) · m2 (A)
(5.43)
=
1 − m1 (A) · (1 − m2 (A)) − m2 (A) · (1 − m1 (A))
m1 (A) · m2 (A)
=
2 · m1 (A) · m2 (A) − m1 (A) − m2 (A) + 1
(5.40),(5.41)
=
(5.46)
for all A, B ∈ {O, F }, A 6= B and
m1⊕2 (A)
(5.41),(5.42)
=
0
(5.47)
for all A ∈ {∅, Ω}.
Finally, applying the pignistic transformation (5.37) on m1⊕2 considering (5.47)
leads to
p1⊕2 (A)
(5.37),(5.47)
=
for all A ∈ {O, F }.
m1⊕2 (A)
(5.46)
=
m1 (A) · m2 (A)
2 · m1 (A) · m2 (A) − m1 (A) − m2 (A) + 1
(5.48)
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
71
5.2.2 State Representation with Dempster-Shafer
Approximation
The DS-PHD/MIB filter represents the occupancy state of a grid cell with a BBA
m : 2Ω → [0, 1]. The frame of discernment Ω contains the events occupied and free:
Ω = {O, F }. Thus, each grid cell stores a mass for occupied m(O) and a mass for
free m(F ). Further information about the application of DST to grid maps can be
found in [KD11; MCB11; NWW+ 13].
The DS-PHD/MIB filter represents the posterior state of an individual grid cell c at
(i,c) ν
(i,c)
(c)
(c)
k
time k with the particle set {xk , wk }i=1
and the mass for free mk (Fk ). Here,
the sum of particle weights represents the mass for occupied:
(c)
(c)
mk (Ok ) =
νk
X
(i,c)
wk
.
(5.49)
i=1
(c)
The occupancy probability po,k (O) in a grid cell is given by the pignistic transformation (5.37), which in this case results in
(c)
(c)
(c)
(c)
po,k (Ok ) = mk (Ok ) + 0.5 · (1 − mk (Ok ) − mk (Fk )).
(5.50)
(c)
The distribution of the particles represents the spatial PDF pk (xk ) of a point object
in grid cell c:
(c)
(c)
pk (xk )
=
1
νk
X
(c)
mk (Ok ) i=1
(i,c)
wk
(i,c)
δ(xk − xk
).
(c)
(5.51)
(c)
Note that the prior BBA of unobserved grid cells is given by mk (Ok ) = mk (Fk ) = 0.
Considering definition (5.49), no particles are present in unobserved areas. Particles
are only present in grid cell with an occupancy mass greater zero. The DS-PHD/MIB
filter concentrates particles in areas where obstacles have been detected and thus
increases the particle density in occupied areas. This is an advantage in comparison
to the original PHD/MIB filter because in practical applications, the number of
particles is limited.
This comes with the disadvantage that the absence of particles does not represent
free space. In contrast, free space has to be modeled independently with the explicit
mass for free space. The problem of explicit free space representation is revealed in
the prediction step as will be outlined in the next section.
72
Particle Realization and Dempster-Shafer Approximation
5.2.3 Prediction Step with Dempster-Shafer Approximation
The DS-PHD/MIB filter applies (4.4) and (5.4) to predict particles to the next time
(i,c)
(i,c) ν
(c)
p,+
step. In analogy to the PHD/MIB filter (5.6), let {xp,+ , wp,+ }i=1
be the set of
particles predicted into cell c at time step k + 1. Again, the predicted weights are
truncated, so the sum of predicted weights in one grid cell is limited to 1.
The DS-PHD/MIB filter estimates the predicted occupancy mass of grid cell c by
(c)
νp,+
(c)
mp,+ (Ok+1 )
=
X
(i,c)
wp,+ .
(5.52)
i=1
The predicted mass for free is modeled as in a static grid map and given by
h
i
(c)
(c)
(c)
mp,+ (Fk+1 ) = min α(T )mk (Fk ) , 1 − mp,+ (Ok+1 ) ,
(5.53)
α(T ) ∈ [0, 1].
Here, the discount factor α(T ) models the decreasing prediction reliability, depending
on the time interval T between two update steps. Since the sum of masses cannot
exceed 1, the predicted free space evidence is limited accordingly.
5.2.4 Update Step with Dempster-Shafer Approximation
The PHD/MIB filter considers both the existence probability and the spatial distribution of point objects in a joint Bayesian innovation step, formally derived as
a Bernoulli filter. In contrast, the DS-PHD/MIB filter does not formally derive
the update step, but applies a simplified update step with the goal of modeling the
probabilistic update equations of the PHD/MIB filter as close as possible in the
Dempster-Shafer domain.
The DS-PHD/MIB approximation updates the existence probability of a point object
in grid cell c independently of its spatial distribution. Accordingly, the DS-PHD/MIB
filter expects the following information in each measurement grid cell:
(c)
• The observed occupancy BBA mzk+1 : 2{O,F } → [0, 1],
(c)
• the spatial likelihood function gk+1 (zk+1 |xk+1 ), and
(c)
(c)
• the association probability pA,k+1 between the likelihood function gk+1 (zk+1 |xk+1 )
and the point object.
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
73
Figure 5.3: A simple occupancy measurement grid originated by a laser
measurement with multiple beams. The red lines represent laser
beams that hit obstacles at their ends. The grid on the left-hand
side provides an occupancy probability pzk+1 (ok+1 |zk+1 ) for each
grid cell. The middle figure and the figure on the right-hand
side show the same occupancy measurement grid represented
by evidences for occupied mzk+1 (Ok+1 |zk+1 ) (middle) and free
mzk+1 (Fk+1 |zk+1 ) (right), respectively. The pignistic transformation of the Dempster-Shafer grid results in the classical grid
on the left-hand side. The DS-PHD/MIB filter initializes new
c 2015 IEEE.
particles only in green grid cells [NYK+ 15], Figure 5.3 shows an example for a measurement grid with occupancy BBAs. An
(c)
example for a likelihood function gk+1 (zk+1 |xk+1 ) and the association probability
(c)
pA,k+1 in measurement grid cells will be given in Section 5.2.5.
Existence Update
The DS-PHD/MIB filter approximates the existence update by simply combining the
(c)
(c)
predicted BBA mp,+ and the observed BBA mzk+1 of the corresponding measurement
grid cell with the Dempster-Shafer rule of combination (5.40):
(c)
(c)
mk+1 = mp,+ ⊕ m(c)
zk+1 .
(5.54)
74
Particle Realization and Dempster-Shafer Approximation
Birth Model
The DS-PHD/MIB filter splits the mass for occupied into two parts: occupied by a
persistent object and occupied by a new-born object:
(c)
(c)
(c)
mk+1 (Ok+1 ) = %p,k+1 + %b,k+1 .
(5.55)
Assume the PHD/MIB filter updates the state of a point object with a uniformly
(c)
distributed likelihood gk+1 (zk+1 |xk+1 ) and a uniformly distributed clutter density
pcl (zk+1 ) as defined in (4.27). Then the relation between the updated existence
(c)
(c)
probability rb,k+1 of a new-born object and the updated existence probability rp,k+1
of a persistent object results in
h
i
(c)
(c)
(c)
rb,k+1 (4.16) rb,+ (4.9) pB 1 − rp,+
=
=
.
(5.56)
(c)
(c)
(c)
rp,k+1
rp,+
rp,+
Analogously, the DS-PHD/MIB models the relation between masses for a new-born
and a persistent object as
h
i
(c)
(c)
p
1
−
m
B
%b,k+1
p,+
=
.
(5.57)
(c)
(c)
%p,k+1
mp,+
Equation (5.57) is an approximation of the original PHD/MIB relation (5.56). It
neglects the fact that point objects of neighboring, occluded grid cells might enter grid
cell c. The approximation is a consequence of representing only the dynamic state of
occupied grid cells (with an occupancy mass greater zero) with particles and ignoring
the dynamic state of unobserved grid cells. The impact of this approximation on
the estimation result will be discussed further in Section 5.3 and in Section 7.2.3.
Combining (5.55) and (5.57) delivers the resulting posterior masses for a new-born
and a persistent object at time step k + 1:
h
i
(c)
(c)
mk+1 (Ok+1 ) · pB 1 − mp,+ (Ok+1 )
(c)
h
i,
(5.58)
%b,k+1 =
(c)
(c)
mp,+ (Ok+1 ) + pB 1 − mp,+ (Ok+1 )
(c)
(c)
(c)
%p,k+1 = mk+1 (Ok+1 ) − %b,k+1 .
(5.59)
The existence update as outlined so far takes only the observed occupancy BBA
(c)
mzk+1 in a measurement grid cell into account.
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
75
The next section outlines how the DS-PHD/MIB considers the spatial likelihood
(c)
(c)
function gk+1 (zk+1 |xk+1 ) and the association probability pA,k+1 in a measurement
grid cell.
Spatial Update
The DS-PHD/MIB filter provides three particle sets to approximate the posterior
(c)
spatial distribution pk+1 (xk+1 ).
The first particle set represents a persistent object and results from the set predicted
(i,c) ν
(i,c)
(c)
p,+
into grid cell c, denoted as {xp,+ , wp,+ }i=1
. It is updated by multiplying the
(c)
weights with the spatial measurement likelihood gk+1 (zk+1 |xk+1 ). This leads to the
unnormalized updated weights
(i,c)
(c)
(i,c)
(i,c)
w
ep,k+1 = gk+1 (zk+1 |xp,+ ) · wp,+ .
(5.60)
The particle states remain unchanged:
(i,c)
(i,c)
xp,k+1 = xp,+ .
(5.61)
The normalized particle weights are given by
(i,c)
(c)
(c)
(i,c)
(c)
(c)
(i,c)
wp,k+1 = pA,k+1 · µA · w
ep,k+1 + 1 − pA,k+1 · µA · wp,+ ,
(5.62)
with
−1
(c)
X

(i,c) 
(c)
=
w
ep,k+1  · %p,k+1

νp,+
(c)
µA
(5.63)
i=1
and
−1
(c)
X

(c)
(i,c) 
=
wp,+  · %p,k+1 =

νp,+
(c)
µA
i=1
(c)
%p,k+1
.
(c)
(5.64)
mp,+ (Ok+1 )
(c)
Equation (5.62) considers that with a probability of (1 − pA,k+1 ), the likelihood
(c)
(i,c)
function gk+1 (zk+1 |xp,+ ) is not associated with the point object in the grid cell. In
76
Particle Realization and Dempster-Shafer Approximation
this case, the weight update and normalization step serves solely to normalize the
predicted particle weights in such a way that they sum up to the posterior persistent
(c)
occupancy mass %p,k+1 .
The second and third particle sets represent new-born objects. For computational
efficiency reasons, they are only created in grid cells where the corresponding
(c)
measurement grid cell reports a mass for occupied: mzk+1 (Ok+1 ) > 0.
This is analogous to the adaptive birth intensity of the standard PHD filter, presented
in Section 2.2.5.
(i,c)
ν
(i,c)
(c)
A,k+1
The second particle set {xA,k+1 , wA,k+1 }i=1
represents a new-born object under
(c)
the assumption that the spatial measurement zk+1 in grid cell c is associated to the
point object in grid cell c. The particles are sampled from the probability density
(c)
(c)
(c)
function pb,zk+1 (xk+1 |zk+1 ) of the state xk+1 given the measurement zk+1 in grid
cell c:
(i,c)
(c)
(c)
xA,k+1 ∼ pb,zk+1 (·|zk+1 ).
(5.65)
The weight of each particle in the second set can directly be calculated to
(c)
(i,c)
wA,k+1 =
(c)
pA,k+1 · %b,k+1
(c)
.
(5.66)
νA,k+1
(c)
(c)
Details about creating a probability density function pb,zk+1 (xk+1 |zk+1 ) of the state
(c)
xk+1 given the measurement zk+1 can be found in [Ris13], p. 38.
(i,c)
(i,c)
ν
(c)
A,k+1
The third particle set {xA,k+1 , wA,k+1 }i=1
represents a new-born object under
(c)
the assumption that the spatial measurement zk+1 in grid cell c is not associated to
the point object in grid cell c. The particles of this set are sampled from the prior
birth distribution pb (xk+1 ):
(i,c)
xA,k+1 ∼ pb (·)
The weight of each particle in the third set can directly be calculated to
(c)
(c)
1 − pA,k+1 · %b,k+1
(i,c)
wA,k+1 =
.
(c)
νA,k+1
(5.67)
(5.68)
5.2 Real-time Approximation using Dempster-Shafer Theory of Evidence
(c)
77
(c)
An example how to choose the individual particle numbers νA,k+1 and νA,k+1 in
each grid cell will be presented in Section 6.2.
Finally, the posterior spatial state distribution of the point object in grid cell c at
time k + 1 is given by
(c)
(c)
pk+1 (xk+1 )
(i,c)
=
(i,c) ν
1
νk+1
X
(c)
mk+1 (Ok+1 ) i=1
(i,c)
(i,c)
wk+1 δ(xk+1 − xk+1 ),
(5.69)
(c)
k+1
where the set {xk+1 , wk+1 }i=1
is the union of all three particle sets created in the
spatial update step. The grid cell additionally stores the posterior mass for free
(c)
mk+1 (Fk+1 ) as calculated in (5.54), which completes the posterior state together
with the particle set.
The resampling step is identical to the resampling step of the original PHD/MIB
filter.
5.2.5 Practical Example: Radar Doppler Measurements
This section gives an example for calculating measurement grids from radar Doppler
(c)
measurements including likelihood functions gk+1 (zk+1 |xk+1 ) in individual grid cells
+
as suggested by the author in [NYK 15].
Radar sensors generally provide a lower angular resolution than laser scanners
[WHLS15]. However, radar occupancy measurement grids containing masses for
(c)
(c)
occupied mzk+1 (Ok+1 |zk+1 ) and masses for free mzk+1 (Ok+1 |zk+1 ) in individual grid
cells can be generated in a similar way as suggested in Figure 5.3. Radar sensors
are able to provide additional information with the Doppler measurement, resulting
from the radial velocity component of objects with respect to the radar sensor.
Assume the ego movement of a radar sensor over ground is compensated and the
(c)
remaining two-dimensional Doppler measurement vz,k+1 occurs in grid cell c at time
(c)
step k + 1 as shown by the red vector in Figure 5.4. The orientation of vz,k+1 results
from the azimuth value of the radar reflection and the magnitude is provided as
Doppler information by the radar sensor. An example for real-world radar reflections
of a Delphi single beam monopulse (SBMP) radar is shown as part of the evaluation
in Chapter 7, Figure 7.2.
78
Particle Realization and Dempster-Shafer Approximation
(c)
Figure 5.4: A Doppler measurement vector vz,k+1 (red) and possible orig(i,c)
c 2015
inating velocity hypotheses vk+1 (blue) [NYK+ 15], IEEE.
(i,c)
Figure 5.5: The measurement residual γk+1 (green) between a Doppler mea(c)
surement vector vz,k+1 (red) and a particle’s predicted velocity
(i,c)
c 2015 IEEE.
vector vk+1 (blue) [NYK+ 15], (i,c)
(c)
Possible velocity hypotheses vk+1 leading to the Doppler measurement vz,k+1 are
depicted in blue in Figure 5.4.
(i,c)
(c)
(i,c)
(i,c)
The goal is to calculate the likelihood Λ(xp,+ ) = gk+1 (zk+1 |xp,+ ) of the state xp,+
of the particle i with velocity
(i,c)
vk+1 .
The projection of the two-dimensional particle
(i,c)
(c)
(i,c)
velocity vk+1 on the two-dimensional Doppler measurement vz,k+1 is denoted vk+1||z
(i,c)
(see Figure 5.5). The measurement residual γk+1 is the absolute distance between
(i,c)
the projected particle velocity vk+1||z and the Doppler measurement:
(i,c)
(i,c)
(c)
γk+1 = vk+1||z − vz,k+1 .
(5.70)
5.3 Summary of Approximations
79
Assume the radial velocity measurement uncertainty is given by an unbiased, Gaussian
(i,c)
PDF with standard deviation σr . Then the likelihood Λ(xp,+ ) for particle i is given
by
!
(i,c)
γ 2 k+1
1
(i,c)
(c)
(i,c)
Λ(xp,+ ) = gk+1 (zk+1 |xp,+ ) = p
,
(5.71)
exp −
2σr2
2πσr2
if the orientation uncertainty of the two-dimensional Doppler measurement is neglected.
If Doppler measurements are sparse in comparison to the grid cell size, it is beneficial
to consider the closest Doppler measurement for grid cell c, even if it did not occur
exactly inside the cell. In this case, it is unclear if the measurement is associated with
the point object in grid cell c. This can be modeled by decreasing the association
(c)
probability pA,k+1 with increasing distance of the closest Doppler measurement to
the grid cell. In case of dense radar reflections and if several radar measurements
might overlap with one grid cell, the Doppler likelihood functions can be combined
to a function of weighted Gaussian mixtures.
5.3 Summary of Approximations
The chapter presented the particle realization of the PHD/MIB filter and an approximation called DS-PHD/MIB filter using the Dempster-Shafer theory of evidence.
Throughout Chapters 4 and 5, several assumptions and approximations have been
introduced for both the PHD/MIB filter and the DS-PHD/MIB filter. An advantage of deriving the PHD/MIB filter in the RFS domain is that the assumptions
and approximations can be clearly stated. Furthermore, even the potential effects
of those approximations can be estimated. As an example, the PHD filter has
been vastly investigated in literature and its behaviour in practical applications
is well-understood [MRSD14; Ris13; VSD05]. Table 5.2 summarizes the essential
assumptions and approximations in the PHD/MIB filter.
Additional assumptions in the PHD/MIB filter to those listed in Table 5.2 are that
the process noise is uncorrelated over time, the measurement noise is uncorrelated
over time and that process noise and measurement noise are independent. These
noise properties are commonly assumed by Bayesian filters.
The Bernoulli filter update step for an individual grid cell as given by (4.17) is the
exact solution of the multi-object state estimation problem defined by the predicted
Bernoulli state (4.10) and the Bernoulli observation process (4.12).
80
Particle Realization and Dempster-Shafer Approximation
The particle realization of the PHD/MIB filter as presented in Chapter 2.1.3 is
again an approximation, as all particle realizations are. With an infinite number of
particles, the particle realization converges to the general PHD/MIB filter.
A problem in the online application of the PHD/MIB filter is the huge number of
particles required to model potential objects in unobserved areas. To mitigate this
effect, the Dempster-Shafer PHD/MIB (DS-PHD/MIB) filter splits the occupancy
information in one grid cell into an evidence mass for occupied and an evidence
mass for free. Unobserved grid cells contain zero evidence for occupied or free. The
DS-PHD/MIB filter then only initializes particles in grid cells with an occupancy
mass greater zero and not in unobserved areas. Because the dynamic behavior of
potential objects in unobserved areas is no longer considered, the DS-PHD/MIB
is a simplification of the original PHD/MIB filter. The additional approximations
introduced by the DS-PHD/MIB filter are summarized in Table 5.3.
5.3 Summary of Approximations
81
Table 5.2: Approximations and assumptions in the PHD/MIB filter.
Estimation step
Assumption/ Approximation
Impact on estimation result
Environment Definition
The world consists of independent point objects in the size
of grid cells as defined in Section 4.1.1.
Point objects are correlated,
because groups of them build
rigid entities like traffic participants. The environment
model does not consider this
fact.
As an effect, the
PHD/MIB filter might estimate inconsistent velocities
for a group of point objects
representing one vehicle. The
effect will be further investigated in the evaluation in Section 7.2.3.
Posterior multi-object state
representation and prediction
The PHD/MIB filter represents the posterior multiobject state distribution of
point objects by its PHD and
applies the PHD filter prediction step as outlined in Section 4.2.1.
The PHD filter prediction
step is unable to consider any
object interdependency. As
an effect, point objects can
cross through each other or
collide into each other during
the prediction step, which is
an unrealistic behavior. Furthermore, a well-studied characteristic of the PHD filter
is that the estimated object
cardinality is heavily fluctuating and objects quickly dissolve after few missed detection. This behavior motivated
an extension called CPHD filter [Ris13].
Transformation from PHD
representation into multiple
instances of Bernoulli RFSs
The PHD/MIB filter transforms the predicted PHD
into multiple instances of
Bernoulli RFSs, one for each
grid cell. This is outlined in
Section 4.2.1.
The assumption behind this
transformation is that not
more than one point object
can enter and occupy one grid
cell during one time step. For
the most cases, this is a realistic assumption. However, depending on the size of the grid
cells, two small traffic participants like pedestrians might
be able to enter the same grid
cell in the real world. The effect of the assumption in this
case is a wrong cardinality estimation of one point object
instead of two in the grid cell.
82
Particle Realization and Dempster-Shafer Approximation
Table 5.3: Additional approximations and assumptions introduced by the
DS-PHD/MIB filter.
Estimation step
Assumption/ Approximation
Impact on estimation result
Prediction step
The DS-PHD/MIB filter
omits the prediction of
potential dynamic objects in
unobserved areas.
The DS-PHD/MIB filter represents the dynamic state of
a grid cell with particles only
if it holds a Dempster-Shafer
mass greater zero for the event
"occupied" as stated in (5.52).
Unobserved grid cells contain
no particles. As a result, the
filter does not model that potential objects in unobserved
areas might enter the free
space during the prediction
step.
Birth model
The DS-PHD/MIB birth
model (5.57) only considers
the predicted mass for "occupied" in a grid cell but does
not distinguish between free
cells and unobserved cells.
The DS-PHD/MIB filter neglects that point objects predicted into unobserved areas
compete with other, potentially existing point objects.
This is problematic if particles
move along stationary, elongated objects, appearing in
the visible field in a consistent pattern. Due to the lack
of competing particles in the
unobserved areas, the particles have a higher chance to
survive, causing false positive
motion estimations. This issue will be discussed in detail
in Section 7.2.3 and is visualized in Figure 7.7.
Observation model
The DS-PHD/MIB neglects
clutter distributions of measurements as stated in (5.60)
and (5.62).
The original PHD/MIB filter
takes the clutter PDF of measurements into account. Since
clutter distributions are often
unknown in practice, the DSPHD/MIB filter only considers the association probability between a grid cell and a
measurement, instead. Consequently, measurement outliers
have a potentially higher impact in the DS-PHD/MIB filter in comparison to the original PHD/MIB filter, which
puts the likelihood function
into relation to the clutter
density, as defined by (4.17).
Chapter 6
Parallel Implementation
This chapter describes an implementation of the particle-based DS-PHD/MIB filter
with a focus on massively parallel processing systems such as graphics processing
units.
6.1 Parallelization Challenges
Particles can naturally be processed in parallel, but a challenge is to assign each
particle to its corresponding grid cell in an efficient way. The assignment is necessary
to predict the grid cell occupancy mass (5.49) and to calculate the normalization
factor during the update step (5.62). Another challenge is to calculate statistical
moments of grid cells like mean and variance of the velocity in a balanced way: the
calculation time should be independent of the number of particles assigned to a grid
cell.
The proposed solution sorts the particles after the prediction step according to
the grid cell index they have been predicted into. The time complexity of sorting
is O(n log n) in regard to the number of particles n. Although the parallelization
potential of sorting is somewhat limited, there are sophisticated sorting algorithms
capable of achieving a high throughput especially on massively parallel architectures
[SHG09]. The availability of a sorted particle array has several advantages: First,
the assignment of sorted particles to grid cells is straightforward as will be detailed
below. Furthermore, particle state values can be efficiently accumulated in separate
arrays, similar to an integral image data structure [VJ01]. This facilitates calculation
of a grid cell’s statistical moments with a computational complexity independent of
the number of particles assigned to the cell.
84
Parallel Implementation
Another advantage of sorting particles is a simple overall implementation since all
remaining advanced problems can then be solved with standard routines. Highly efficient parallel implementations of these routines are available for graphics processing
units, where for the parallel implementation of the particle-based DS-PHD/MIB filter
sampling of random numbers [NVI16], sorting [HB16] and accumulation [HB16]have
been employed.
6.2 Parallel Algorithm
In the following, implementation details of the proposed parallel algorithm are
described. The auxiliary data structures rendering the algorithm particularly efficient
are given as follows. All particles and grid cells are stored in the arrays particle_array
and grid_cell_array, respectively. Assume a measurement grid map with the same
dimensions as the grid map is already available and measurement grid cells are stored
in the array meas_cell_array. An example for efficiently parallelized measurement
grid calculation can be found in [HKOB10]. For modeling noise processes, a sufficient
amount of random numbers is sampled beforehand during idle times and stored in
extra arrays. The parallel DS-PHD/MIB recursion is summarized in Figure 6.1 and
outlined in the following sections.
Particle Prediction
Algorithm 6.1 provides pseudo code for the particle prediction. The algorithm
predicts all particles in parallel applying equations (4.4) and (5.4). This includes
calculating the new grid cell index of each particle after prediction. The appropriate
amount of random numbers should be sampled in a separate step in advance, so the
prediction step just needs to look them up.
Assignment of Particles to Grid Cells
Pseudo code for the particle assignment is given in Algorithm 6.2. First, the algorithm
sorts all particles according to the grid cell index they have been predicted into.
Each grid cell can store two particle indices. They represent the first and last index
of the particle group that has been predicted into the grid cell. For the assignment,
each particle checks if it is the first or the last particle of a group with the same
index. This is true if the right or left neighbor particle holds a grid cell index which
differs from the particle’s own grid cell index. If so, it writes its index into the
6.2 Parallel Algorithm
85
1 Particle Prediction
2 Assignment of Particles to Grid Cells
3 Grid Cell Occupancy Prediction and Update
4 Update of Persistent Particles
5 Initialization of New Particles
6 Statistical Moments of Grid Cells
7 Resampling
Figure 6.1: Overview of the PHD/MIB implementation, broken down into
seven steps.
according grid cell. Since there can only be at most one first or last particle per grid
cell, the assignment can run in parallel without any writing conflicts.
Grid Cell Occupancy Prediction and Update
Algorithm 6.3 details the occupancy update. The goal of this step is to calculate
for each grid cell the predicted and updated occupancy BBA. First, the algorithm accumulates in parallel all particle weights and stores the result in the array
weight_array_accum. The remaining part of the algorithm is carried out in parallel
for all grid cells. Each cell reads two values from weight_array_accum. The first
value is the accumulated particle weight of all preceding grid cells excluding its own
particles, the second value is the accumulated particle weight of all preceding grid
cells including its own particles. The cell simply subtracts the first value from the
(c)
second value to calculate its predicted occupancy mass mp,+ (Ok+1 ) according to
(5.52). Consider that this operation is independent of the number of particles in
one grid cell, so its time complexity is constant. This is optimal with respect to
(c)
load balancing between threads. The predicted free mass mp,+ (Fk+1 ) is calculated
according to (5.53).
particle_array
. This array stores particles including weight and corresponding grid cell index (constant size ν)
grid_cell_array
. This array stores the grid cells (constant size C)
p_S
. Persistence probability of point objects, is a design parameter of the process model
for i ∈ {0, . . . , length(particle_array) − 1} do
. Parallel for loop over all particles
predict(particle_array, i, p_S)
. Applies (4.4) and (5.4), calculates new grid cell index and stores it inside the particle
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
meas_cell_array
. This array stores the measurement grid cells (constant size C)
born_masses_array
. This array will store the mass for a new-born object per grid cell (constant size C)
p_B
. Birth probability of point objects, is a design parameter of the process model
weight_array_accum ← accumulate(weight_array)
. Inclusively accumulates all particle weights to weight_array_accum
for j ∈ {0, . . . , length(grid_cell_array) − 1} do
. Parallel for loop over all grid cells
start_idx ← get_particle_start_idx(grid_cell_array[j])
. Gets start index in particle_array of cell j
end_idx ← get_particle_end_idx(grid_cell_array[j])
. Gets end index in particle_array of cell j
m_occ_pred ← subtract(weight_array_accum, start_idx, end_idx)
. Calculates predicted occupancy mass of cell j (5.52)
m_free_pred ← predict_free_mass(grid_cell_array[j])
. Predicts free mass of cell j (5.53)
m_occ_up ← update_o(m_occ_pred, m_free_pred, meas_cell_array[j])
. Combination to posterior occ. mass (5.54)
m_free_up ← update_f(m_occ_pred, m_free_pred, meas_cell_array[j])
. Combination to posterior free mass (5.54)
rho_b ← separate_newborn_part(m_occ_pred, m_occ_up, p_B)
. Calculate new-born part of posterior occupancy mass (5.58)
rho_p ← m_occ_up − rho_b
. Calculates remaining persistent part of posterior occupancy mass (5.59)
born_masses_array[j] ← rho_b
. Stores new-born part of posterior occupancy mass of cell j in born_masses_array
store_values(rho_b, rho_p, m_free_up, grid_cell_array, j)
. Stores updated BBA in grid cell j
Algorithm 6.3 Grid Cell Occupancy Prediction and Update
1: weight_array
. This array will be an additional storage for the particle weights (constant size ν)
2: sort(particle_array)
. Sorts by the grid cell index the particle has been predicted into
3: for i ∈ {0, . . . , length(particle_array) − 1} do
. Parallel for loop over all particles
4:
j ← get_grid_cell_idx(particle_array[i])
. Reads the grid cell index of the predicted particle
5:
if is_first_particle(particle_array, i) then
. Checks if i is the first particle of a group with same grid cell index
6:
set_particle_start_idx(grid_cell_array, j, i)
. Sets i as particle start index of grid cell j in grid_cell_array
7:
if is_last_particle(particle_array, i) then
. Checks if i is the last particle of a group with same grid cell index
8:
set_particle_end_index(grid_cell_array, j, i)
. Sets i as particle end index of grid cell j in grid_cell_array
9:
weight_array[i] ← get_particle_weight(particle_array[i])
. Copies weight of particle i to weight_array at index i
Algorithm 6.2 Assignment of Particles to Grid Cells
1:
2:
3:
4:
5:
Algorithm 6.1 Particle Prediction
86
Parallel Implementation
for i ∈ {0, . . . , length(particle_array) − 1} do
. Parallel for loop over all persistent particles
weight_array[i] ← update_unnorm(particle_array, i, meas_cell_array)
. Calculates unnormalized weight update (5.60)
weight_array_accum ← accumulate(weight_array)
. Accumulates unnormalized weights of persistent particles
for j ∈ {0, . . . , length(grid_cell_array) − 1} do
. Parallel for loop over all grid cells
start_idx ← get_particle_start_idx(grid_cell_array[j])
. Gets start index in particle_array of cell j
end_idx ← get_particle_end_idx(grid_cell_array[j])
. Gets end index in particle_array of cell j
m_occ_accum ← subtract(weight_array_accum, start_idx, end_idx)
. Accumulated unnormalized updated particle weight of cell j
rho_p ← get_pers_occ_mass(grid_cell_array[j])
. Gets persistent part of posterior occupancy mass of cell j
mu_A ← calc_norm_assoc(m_occ_accum, rho_p)
. Calculates normalization component for an associated measurement (5.63)
mu_UA ← calc_norm_unassoc(grid_cell_array[j])
. Calculates normalization component for an unassociated measurement (5.64)
set_normalization_components(grid_cell_array, j, mu_A, mu_UA)
. Stores components mu_A and mu_UA in grid cell j
for i ∈ {0, . . . , length(particle_array) − 1} do
. Parallel for loop over all persistent particles
weight_array[i] ← normalize(particle_array[i], grid_cell_array)
. Normalizes particle weights (5.62)
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
birth_particle_array
. This array will be the storage for new-born particles for this recursion (constant size νb )
particle_orders_array_accum ← accumulate(born_masses_array)
. Accumulates mass part of new-born object of each cell
normalize_particle_orders(particle_orders_array_accum, νb )
. Normalizes the particle orders to a total number of νb
for j ∈ {0, . . . , length(grid_cell_array) − 1} do
. Parallel for loop over all grid cells
start_idx ← calc_start_idx(particle_orders_array_accum, j)
. Calculates first index in birth_particle_array of cell j
end_idx ← calc_end_idx(particle_orders_array_accum, j)
. Calculates last index in birth_particle_array of cell j
num_new_particles ← end_idx − start_idx + 1
. Stores number of new particles for cell j
p_A ← get_assoc_probability(meas_cell_array[j])
. Reads association probability to spatial measurement of cell j
nu_A ← calc_num_assoc(num_new_particles, p_A)
. Calculates number of new associated particles (6.1) and (6.2)
nu_UA ← num_new_particles − nu_A
. Calculates number of new unassociated particles
w_A ← calc_weight_assoc(nu_A,p_A, born_masses_array[j])
. Calculates weight of an associated new particle (5.66)
w_UA ← calc_weight_unassoc(nu_UA,p_A, born_masses_array[j])
. Calculates weight of an unassociated new particle (5.68)
store_weights(w_A, w_UA, grid_cell_array, j)
. Stores weights for new particles in cell j
for i ∈ {start_idx . . . start_idx + nu_A} do
. For loop over new associated particles of cell j
set_cell_idx_A(birth_particle_array, i, j)
. Sets j as grid cell index of new particle i with flag for associated
for i ∈ {start_idx + nu_A + 1 . . . end_idx} do
. For loop over new unassociated particles of cell j
set_cell_idx_UA(birth_particle_array, i, j)
. Sets j as grid cell index of new particle i with flag for unassociated
for i ∈ {0, . . . , length(birth_particle_array) − 1} do
. Parallel for loop over all new-born particles
initialize_new_particle(birth_particle_array, i, grid_cell_array)
. Initializes new-born particle i according to (5.65) or (5.67)
Algorithm 6.5 Initialization of New Particles
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
Algorithm 6.4 Update of Persistent Particles
6.2 Parallel Algorithm
87
vel_x_array
. Separate storage for the velocity in x-direction of particles (constant size ν)
vel_y_array
. Separate storage for the velocity in y-direction of particles (constant size ν)
vel_x_squared_array
. Separate storage for the squared velocity in x-direction of particles (constant size ν)
vel_y_squared_array
. Separate storage for the squared velocity in y-direction of particles (constant size ν)
vel_xy_array
. Separate storage for the multiplied velocities in both directions of particles (constant size ν)
for i ∈ {0, . . . , length(particle_array) − 1} do
. Parallel for loop over all persistent particles
w ← weight_array[i]
. Stores the updated, normalized weight of the persistent particle i
vel_x ← get_vel_x(particle_array[i])
. Stores x-velocity of particle i
vel_y ← get_vel_y(particle_array[i])
. Stores y-velocity of particle i
vel_x_array[i] ← w ∗ vel_x
. Stores weighted x-velocity of particle i
vel_y_array[i] ← w ∗ vel_y
. Stores weighted y-velocity of particle i
vel_x_squared_array[i] ← w ∗ vel_x ∗ vel_x
. Stores weighted squared x-velocity of particle i
vel_y_squared_array[i] ← w ∗ vel_y ∗ vel_y
. Stores weighted squared y-velocity of particle i
vel_xy_array[i] ← w ∗ vel_x ∗ vel_y
. Stores weighted product of x- and y-velocity of particle i
vel_x_array_accum ← accumulate(vel_x_array)
. Accumulates velocities in x-direction
vel_y_array_accum ← accumulate(vel_y_array)
. Accumulates velocities in y-direction
vel_x_squared_array_accum ← accumulate(vel_x_squared_array)
. Accumulates squared velocities in x-direction
vel_y_squared_array_accum ← accumulate(vel_y_squared_array)
. Accumulates squared velocities in y-direction
vel_xy_array_accum ← accumulate(vel_xy_array)
. Accumulates product of velocities in x- and y-direction
for j ∈ {0, . . . , length(grid_cell_array) − 1} do
. Parallel for loop over all grid cells
rho_p ← get_pers_occ_mass(grid_cell_array, j)
. Gets persistent part of posterior occupancy mass in grid cell j
start_idx ← get_particle_start_idx(grid_cell_array[j])
. Gets start index in particle_array of cell j
end_idx ← get_particle_end_idx(grid_cell_array[j])
. Gets end index in particle_array of cell j
mean_x_vel ← calc_mean(vel_x_array_accum, start_idx, end_idx, rho_p)
. Applies (6.3)
mean_y_vel ← calc_mean(vel_y_array_accum, start_idx, end_idx, rho_p)
. Applies (6.3)
var_x_vel ← calc_variance(vel_x_squared_array_accum, start_idx, end_idx, rho_p, mean_x_vel)
. Applies (6.5)
var_y_vel ← calc_variance(vel_y_squared_array_accum, start_idx, end_idx, rho_p, mean_y_vel)
. Applies (6.5)
covar_xy_vel ← calc_covariance(vel_xy_array_accum, start_idx, end_idx, rho_p, mean_x_vel, mean_y_vel)
. Applies (6.6)
store(grid_cell_array, j, mean_x_vel, mean_y_vel, var_x_vel, var_y_vel, covar_xy_vel)
. Store stochastic moments in grid cell j
1:
2:
3:
4:
5:
6:
7:
rand_array
. Array with sorted, equally distributed random numbers (constant size ν)
idx_array_resampled
. Array with indices of resampled particles (constant size ν)
particle_array_next
. Particle array for the next time step (constant size ν)
joint_weight_array_accum ← accumulate(weight_array, birth_weight_array)
. Accumulates normalized particle weights
idx_array_resampled ← calc_resampled_indeces(joint_weight_array_accum, rand_array)
. Calculates resampled particle indices
for i ∈ {0, . . . , length(particle_array) − 1} do
. Parallel for loop over all persistent particles of the next time step
particle_array_next[i] ← copy_particle(particle_array, birth_particle_array, idx_array_resampled[i])
. Copy resampled particle
Algorithm 6.7 Resampling
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
Algorithm 6.6 Statistical Moments of Grid Cells
88
Parallel Implementation
6.2 Parallel Algorithm
89
(c)
Each cell reads the observed occupancy BBA mzk+1 from the corresponding measure(c)
ment grid cell and combines it with its predicted occupancy BBA mp,+ according
(c)
to (5.54) to calculate its updated occupancy BBA mk+1 . This enables the grid cell
to separate the posterior occupancy mass
(c)
mk+1 (Ok+1 )
(c)
into the part %p,k+1 for a
(c)
persistent object and the part %b,k+1 for a new-born object according to (5.58) and
(c)
(5.59). Each cell stores the part %b,k+1 for a new-born object in a separate array,
which will be used later to calculate the number of newly drawn particles for this
cell.
Update of Persistent Particles
The update of persistent particles is described in Algorithm 6.4. Each particle has
stored its corresponding grid cell index during the prediction step, which is assumed
the same as the corresponding measurement grid cell index. All persistent particles
calculate in parallel their unnormalized updated weight according to (5.60). These
weights are then accumulated in the array weight_array_accum. Recall that each
grid cell has already stored the index range of its corresponding particles in Algorithm
6.2. Consequently, in a parallel for loop, each grid cell can look up the accumulated
weight of its updated, unnormalized particles in weight_array_accum analogously to
Algorithm 6.3. Each grid cell uses the result to calculate its normalization component
(c)
(c)
µA (5.63) and stores it. The other normalization component µA as given by (5.64)
can directly be calculated and stored in the grid cell. In the next parallel for loop over
all particles, each particle uses the grid map as a lookup table for its normalization
(c)
(c)
components µA and µA and normalizes itself (5.62).
Initialization of New Particles
Algorithm 6.5 depicts pseudo code for the particle initialization. New particles are
stored in the array birth_particle_array. The total number of new particles for
all grid cells νb remains constant over time, which is feasible for many real-time
applications. The goal of this algorithm is to initialize for each grid cell a certain
number of new particles, which is proportional to the new-born part of its updated
(c)
occupancy mass %b,k+1 . Therefore, the algorithm accumulates new-born occupancy
masses of all grid cells in the array particle_orders_array. Then it normalizes each
value of the array to sum up to the discrete number νb .
90
Parallel Implementation
The normalized array then serves as a lookup table to be used by each grid cell to
find out its first and last corresponding index in the array birth_particle_array, as
(c)
well as the individual number of new particles νb,k+1 assigned to grid cell c in this
(c)
time step. Each grid cell splits this number into the number νA,k+1 of new particles
(c)
which are associated to the spatial measurement gk+1 (zk+1 |xk+1 ) and the number
(c)
νA,k+1 of new particles which are not associated. The relation is given by
(c)
νA,k+1
(c)
(c)
=
νA,k+1
pA,k+1
(c)
1 − pA,k+1
,
(6.1)
and
(c)
(c)
(c)
νA,k+1 + νA,k+1 = νb,k+1 .
(6.2)
Each grid cell also calculates and stores the weights for associated (5.66) and
unassociated (5.68) new particles. As a next step, each grid cell iterates over all
its assigned new particles and defines it as an associated or unassociated particle,
respectively, and sets the particle grid cell index. Finally, each particle initializes
itself with a random initial state within its grid cell. Again, enough random numbers
should be sampled in a separate step in advance so the initialization step just needs
to look them up. This time, each particle uses the grid map as a lookup table for its
initial position and weight.
Statistical Moments of Grid Cells
Algorithm 6.6 calculates the first two statistical moments of the two-dimensional
velocity [vx vy ]T in a grid cell, considering all updated, normalized, persistent particles.
Assuming grid cell c contains a certain number of particles, the mean velocity
(c)
component in x-direction v x is given by
(c)
v (c)
x =
1
(c)
%p,k+1
νp,k+1
X
(i,c)
(i,c)
wp,k+1 · vx,p,k+1 ,
(6.3)
i=1
(i,c)
and analogously for the component in y-direction. The symbol vx,p,k+1 denotes the
(i,c)
velocity x-component of a posterior persistent particle xp,k+1 in grid cell c.
6.2 Parallel Algorithm
91
(c)
Recall that %p,k+1 is the persistent part of the posterior occupancy mass, which
(i,c)
equals the sum of updated, normalized weights wp,k+1 of persistent particles in grid
cell c:
(c)
νp,k+1
(c)
%p,k+1 =
X
(i,c)
wp,k+1 .
(6.4)
i=1
(c)
The algorithm estimates the variance of the velocity component in x-direction σ 2 vx
through 1
(c)
(c)
σ 2 vx
=
νp,k+1
1
X
(c)
%p,k+1
2
(i,c)
(i,c)
wp,k+1 · vx,p,k+1 − v (c)
x
i=1
(c)
=
νp,k+1
1
wp,k+1 ·
(c)
%p,k+1
=
(i,c)
X
1
(i,c)
vx,p,k+1
2
(i,c)
− 2 · vx,p,k+1 · v (c)
x
+
v (c)
x
2
i=1
(c)
νp,k+1
X
(c)
%p,k+1
2
2
(i,c)
(i,c)
wp,k+1 · vx,p,k+1
− v (c)
.
x
(6.5)
i=1
(c)
The estimation for the variance of the velocity component in y-direction σ 2 vy follows
analogously.
(c)
The covariance between the velocity x- and y-components σvx vy is estimated by
(c)
σv(c)
x vy
=
1
X
(c)
%p,k+1
=
νp,k+1
1
(c)
%p,k+1
(i,c)
(i,c)
(i,c)
(c)
wp,k+1 · vx,p,k+1 − v (c)
·
v
−
v
x
y
y,p,k+1
i=1
(c)
νp,k+1
X
(i,c)
(i,c)
(i,c)
(i,c)
(i,c)
(i,c)
(c)
(c)
wp,k+1 · vx,p,k+1 · vy,p,k+1 − 2 · v (c)
+ v (c)
x · vy
x · vy
i=1
(c)
=
1 It
1
(c)
%p,k+1
νp,k+1
X
(c)
wp,k+1 · vx,p,k+1 · vy,p,k+1 − v (c)
x · vy .
(6.6)
i=1
should be mentioned that (6.5) provides a biased variance and (6.6) provides a biased covariance
of the weighted particle samples. The bias increases with a decreasing number of particles
in both cases. However, the calculation of the unbiased variance and unbiased covariance of
weighted particle samples is computationally more expensive. In practical applications only the
statistical moments of grid cell with a certain number of particles are accepted as valid results,
which is why Algorithm 6.6 applies the presented approximation.
92
Parallel Implementation
Since particles are sorted by their grid cell index, the calculation of all sums in
equations (6.3), (6.4), (6.5), and (6.6) can be realized by parallel accumulation of
the according values. A parallel for loop over all grid cells then only subtracts the
corresponding accumulated values. Again, the time complexity is constant for each
cell, independent of the individual number of particles in the cell at time step k + 1.
Consequently, threads executing this calculation in parallel for all grid cells are
perfectly balanced.
Resampling
Particles are resampled according to Algorithm 6.7 to avoid degeneration. The
resampling step accumulates the normalized weights of persistent and new-born
particles in the array joint_weight_array_accum. It draws ν sorted random numbers
which are equally distributed between 0 and the sum of all particles and stores the
random numbers in the array rand_array. Each random number falls into a certain
interval of accumulated weights, which corresponds to a certain particle index. For
each random number in rand_array, the corresponding particle is chosen and copied
into the particle array for the next time step particle_array_next.
Chapter 7
Evaluation
The chapter evaluates the Dempster-Shafer approximation of the PHD/MIB filter
with real-world sensor data and investigates if the DS-PHD/MIB filter performs as
expected in different scenarios. The first part of the chapter describes the test vehicle,
which is used for sensor data recording. The second part qualitatively evaluates and
discusses characteristic properties of dynamic grid mapping as a general approach
for state estimation of dynamic vehicle environments in comparison to object-based
tracking methods. The third part quantitatively evaluates the velocity estimation
performance and consistency of the DS-PHD/MIB filter, its ability to separate static
and dynamic obstacles and its computation time in dependence of the number of
particles used.
7.1 Experiment Setup
A test vehicle records sensor data for the qualitative and quantitative evaluation.
All experiments on the DS-PHD/MIB filter use a fixed parameter set as described
below if not explicitly stated otherwise.
7.1.1 Test Vehicle
The test vehicle is equipped with a Valeo four-layer laser scanner with a horizontal
field of view of 145 degrees and a horizontal resolution of 0.25 degrees in the front
bumper as shown in Figure 7.1. Further sensor properties of the laser scanner are
depicted in Table 7.1.
94
Evaluation
Figure 7.1: Sensor setup, not true to scale. The image shows the opening
angles of the Delphi SBMP in the front left bumper (red) and
the front right bumper (blue) and the Valeo laser scanner in the
front center bumper (yellow).
Table 7.1: Ibeo ScaLa sensor features.
Parameter
Horizontal field-of-view
Horizontal resolution
Vertical field-of-view
Number of vertical layers
Distance resolution
Typical range passenger car
Value
145 deg
0.25 deg
3.2 deg
4
< 0.1 ms
150 m
The grid map in the experiments will be limited to a radius of 60 m. Within this
range, vehicles are expected to reflect several laser points. Exemplary laser sensor
data is depicted in Figure 7.2.
Additionally, two short range Delphi SBMP radars are attached to the front left and
front right sides. One radar provides up to 64 targets within a limited range of 40 m
and a horizontal field of view of 75 degrees. The radar provides the two-dimensional
position of a target and its radial velocity relative to the radar sensor. The vehicle
speed and yaw rate are available via CAN messages, so the ego movement of a radar
sensor can be compensated. Further sensor properties of the radar scanners are
depicted in Table 7.2. The target list of the Delphi radar is sparser than the laser
point cloud as shown in Figure 7.2.
7.1 Experiment Setup
95
Figure 7.2: Sensor data from Delphi SBMP in front left bumper (red) and
front right bumper (blue) and Valeo laser scanner in front center
bumper (yellow).
Here, the two-dimensional position of a radar target is shown as a dot and the radial
velocity is drawn as a line. The length of the line is proportional to the absolute
value of the radial velocity.
7.1.2 Filter configuration
The parameter set of the DS-PHD/MIB filter is designed for a typical urban vehicle
environment scenario consisting of static obstacles, pedestrians, bikes, cars, trucks
and other traffic participants. The grid map covers an area of 120 m by 120 m with
the test vehicle in the center. Each grid cell measures 10 cm by 10 cm.
Table 7.3 shows the parameter set of the DS-PHD/MIB filter. The parallel implementation is tested on an Nvidia GTX980 GPU, supported by a single core of an
Intel i7 processor.
96
Evaluation
Table 7.2: Delphi SBMP sensor features.
Parameter
Frequency band
Horizontal field-of-view
Range
Range rate
Accuracy range
Accuracy range rate
Accuracy angle
Distance resolution
Value
76 to 77 GHz
75 deg
0.15 to 40 m
−55 to 50 m/s
±0.1 m
±0.07 m/s
±1 deg
< 0.1 ms
Table 7.3: Overview of the experimental parameters of the DS-PHD/MIB
filter.
Parameter
Grid map edge size
Grid cell edge size
Number of consistent particles
Number of new-born particles
Persistence probability
Standard deviation velocity new-born particles
Standard deviation process noise position
Symbol
ν
νb
pS
σB,v
σp
Standard deviation process noise velocity
σv
Birth probability
pB
Value
120 m
0.1 m
2 · 106
2 · 105
0.99
4 m/s
m
0.02 T/
s
0.8
m/s
T/s
0.02
7.2 Qualitative Evaluation
Representing the environment as a grid map offers some advantages and some
disadvantages in comparison to object-based representations [DRN15]. This section
presents and discusses characteristics of dynamic grid maps in general and of the
DS-PHD/MIB filter in particular in a qualitative manner.
7.2.1 Free-form Obstacle Representation in Dynamic
Environments
The remaining part of the thesis visualizes the estimation result of the DS-PHD/MIB
filter for a specific time step k as presented in Figure 7.3. In this traffic scenario, the
test vehicle waits at an intersection and observes a cyclist (1) and three cars (2-4).
7.2 Qualitative Evaluation
97
The visualization determines the brightness of a grid cell based on its occupancy
probability. Occupied grid cells are black, free grid cells are white and unknown
grid cells are grey. Figure 7.3 reveals the assumed opening angle of the laser scanner
with the bright free space area. The radar sensors don’t estimate free space but
only occupancy in this application. The reason is that realistic free space models for
radars are much more complicated than free space models for lasers. Furthermore,
the main advantage of radars lies in the Doppler measurement as will be outlined
later.
The estimated, two-dimensional mean velocity v in each grid cell as calculated by
(6.3) is represented by a thin, black vector if the occupancy probability of the grid
cell exceeds a certain threshold. The cyclist in Figure 7.3 is slower than the cars,
identifiable by its shorter velocity vectors. The static obstacles all show small velocity
vectors without dominant orientation. The quantitative evaluation will examine
the velocity estimation of the DS-PHD/MIB filter in detail in Section 7.3.1. The
velocity vectors don’t reveal their corresponding variance. This is to a certain degree
visualized with the color saturation of a grid cell. The visualization calculates the
Mahalanobis distance m0 between the estimated two-dimensional probability density
p(v) : R2 → R of the velocity distribution in a cell and the velocity v0 = 0. The
density is approximated from the particle representation as a Gaussian distribution
with mean v and covariance matrix P as calculated in (6.3), (6.5), (6.6). Then the
Mahalanobis distance m0 is given by
m0 = vP −1 v T .
(7.1)
The color saturation increases with the Mahalanobis distance m0 . Any grid cell with
a Mahalonobis distance greater than the limit mS draws itself with full saturation.
This thesis visualizes grid maps with mS = 4 because experiments showed this value
helps the human eye distinguish dynamic and stationary obstacles.
The grid representation shows some advantages and some disadvantages in comparison to object-based representations [DRN15]. One advantage is that the grid
map unifies the representation of occupied, free and occluded areas. For many
applications it is important to distinguish between free space and unobserved areas.
Many multi-object tracking approaches cluster sensor data like laser reflections in
a preprocessing step, especially approaches based on multiple instances of Kalman
filters [MDM10; WTT+ 07]. This involves the risk that reflections from one object
are separated, or reflections from different objects are combined to one cluster, which
can affect the tracking performance. In contrast, the dynamic grid does not cluster
sensor data in a preprocessing step but simply reasons on the state of grid cells
based on measurements.
98
Evaluation
Figure 7.3: Exemplary dynamic vehicle environment with bike (1) and cars
(2-4).
Some multi-object tracking approaches also don’t cluster data, e.g. particle based
approaches [Pet11] or optimization methods like data driven Markov chain Monte
Carlo [VA09]. However, these approaches still rely on predefined models for object
shapes. Common types of predefined object shapes are cuboids [Pet11; VA09] or
ellipsoids [Koc08]. If the appearance of traffic participants differs from the shape
model, it might impair the tracking result. Especially static obstacles in the vehicle
environment show all kind of shapes, which is why many object tracking approaches
only focus on dynamic objects and rely on an additional grid map for representing
static obstacles [NSD14], [WTT+ 07].
However, also dynamic objects can appear in various shapes. An example for a
complex outline of a dynamic obstacle is shown in Figure (7.4). In this scenario, the
test vehicle is waiting at a red traffic light. A truck (1) is turning left, showing a
complex outline of its front part as seen from the laser scanner perspective. The
grid map does not rely on any predefined object shape models. Consequently, the
grid map is able to represent the front part of the truck, unaffected by the complex
shape.
7.2 Qualitative Evaluation
99
Figure 7.4: Exemplary dynamic vehicle environment with truck (1) and cars
(2-3).
In this case, the medium part of the truck is too high above ground to be detected
by the laser scanner, which might be problematic for some applications, but this is a
general problem of the used sensor setup.
Both Figure 7.3 and Figure 7.4 give examples for complex traffic scenarios with
dynamic and static obstacles. A dynamic grid map represents the environment and
its dynamic state in a unified form representing dynamic and static objects, free
space and occluded areas. An advantage of object-based representations is that many
approaches assign a unique ID to every object [MD11; RVVD14], which remains
constant over time. Also, many applications rely on an object-based representation
for situation interpretation [KNW+ 15; Urm+ 08]. In order to provide an objectbased representation, post-processing steps like clustering would be necessary as an
extension to the presented dynamic grid mapping approach.
100
Evaluation
It is worth mentioning that emerging object tracking methods estimate free-form
shapes with polygons to avoid the discussed problems with predefined object shapes
[HSRD16; VDN15]. Up to this day it is extremely challenging to use these methods in
practical applications due to their high computational load. However, the approaches
are potentially powerful and might become applicable in the future when availability
of computational power increases.
7.2.2 Heterogeneous Sensor Data Fusion
A further, specific advantage of grid-based environment representations is its simple
solution to association problems. For many multi-object tracking approaches, data
association is a core challenge [Mah07b; ML08]. The grid map indirectly addresses
the problem by simply associating measurements to grid cells based on spatial
relations.
The dynamic grid map in particular benefits from heterogeneous sensor data. The
test vehicle is equipped with laser and radar sensors. The spatial precision of the grid
maps depicted in Figure 7.3 and Figure 7.4 is a result of the low spatial measurement
uncertainty of the laser scanner. Figure 7.5 gives an example on how the Doppler
measurements of the radar sensors contribute to the overall performance of the
dynamic grid map.
In this situation, the test vehicle waits at a crossing behind a leading vehicle, which
changes its dynamic state from standing to moving. The time line increases from left
to right in Figure 7.5 as can be seen in the video image. The upper grid map time line
row shows the result of the dynamic grid map based on laser-only measurements. The
lower grid map time line row shows the result of fusing laser and radar measurements
in the grid map.
In the second time step, the leading vehicle just started moving. The laser-only
grid map indicates almost no movement, since there is a great overlap of occupied
grid cells between the first time step and the second time step. In contrast, the
radar Doppler measurement instantaneously detects the motion as clearly visible
in the second time step in the lower grid map row. The quantitative evaluation in
Section 7.3.1 examines in detail the influence of the radar Doppler measurement on
the speed estimation convergence rate.
7.2 Qualitative Evaluation
101
Figure 7.5: The time line shows four time steps with a leading vehicle starting
to move with increasing time from left to right. The upper grid
row shows the laser-only grid map, the lower grid row shows
the fusion result of laser and radar sensor data in the grid map.
Fusion with radar improves the convergence rate.
7.2.3 Systemic Limitations of Dynamic Grid Maps
The previous sections outlined advantages of grid-based representations in comparison
to object-based representations for dynamic state estimation of a vehicle environment.
This sections describes disadvantages and systemic limitations of dynamic grid maps.
As outlined above, clustering data and assuming object shapes which don’t represent
the actual object appearance is problematic. However, if the clustering is successful
and the assumed object shape is suitable, object-based approaches potentially
outperform grid-based approaches due to additional information contained in the
process model. Additional information is, e.g., that an object usually does not
divide into several objects and all parts of an object perform a consistent movement.
Since a grid map does not comprehend the concept of objects, it can not consider
these object-related elementary rules in its process model. An example for resulting
impairments is shown in Figure 7.6. The test vehicle follows two leading vehicles in
a turn. Figure 7.6 depicts a time line with increasing time from left to right. The
two middle grid maps show that the average orientation estimation is delayed and
does not face exactly into the direction of the corresponding vehicle.
102
Evaluation
Figure 7.6: The time line shows four time steps with two leading vehicles
driving through a turn with increasing time from left to right.
The two middle grid maps show that the orientation estimation
of the DS-PHD/MIB filter is delayed.
This is partly caused by the simple state model of constant velocity and constant
orientation (4.4), of course. But even more complex process models can not entirely
solve the problem since the dynamic grid map internally represents the leading cars
as a congregation of point objects, which all move independently of each other and
not in a consistent pattern. In contrast, object-based filters have been presented,
which are able to successfully estimate the turn rate of vehicles without any delay,
especially with help of radar doppler measurements [KBK+ 14].
A related problem is depicted in Figure 7.7. In this scenario, the test vehicle follows
a Segway on a parking lot. A parked car on the right hand side of the driveway is
partly occluded. The car is marked with a black arrow in Figure 7.7. Due to the
forward motion of the test vehicle, the occlusion situation changes and a growing
part of the parked car becomes visible.
An object-based perception system, which is focusing on the visible stationary corner
of the parked car has the potential to correctly estimate a static object in this case.
In contrast, the DS-PHD/MIB filter can not distinguish increasing object visibility
from motion. As a result, a false positive motion estimation of the dynamic grid map
appears in all four time steps. The reason is again the independence assumption of
dynamic point objects in grid cells.
7.2 Qualitative Evaluation
103
Figure 7.7: The time line shows four time steps with the test vehicle driving
in a parking area with increasing time from left to right. The
dynamic grid map estimates a false positive movement where
a parked car becomes increasingly visible. The false positive
movement estimation is marked with a black arrow in all time
steps.
This effect is even intensified by the Dempster-Shafer approximation. In contrast to
the original PHD/MIB filter, the Dempster-Shafer approximation does not consider
if a grid cell has been visible or occluded in the previous time step when calculating
the relation between a persistent and a new-born object existence probability (5.58).
The original PHD/MIB filter considers the fact that occluded areas might potentially
be already occupied by point objects and therefore calculates a lower existence
probability for point objects predicted from occupied into occluded grid cells. Since
none of the discussed publications on particle-based dynamic grid maps [DON11;
NRL14; NYK+ 15; TTWB14] populates occluded areas with particles, this effect can
be expected to occur in all corresponding realizations.
7.2.4 Discussion
The previous sections qualitatively outlined potential advantages and disadvantages
of dynamic grid maps in comparison to object-based state estimation of dynamic
vehicle environments. In summary, grid maps rely neither on clustering methods
nor on predefined object shape models, which is advantageous when expected object
104
Evaluation
Figure 7.8: Velocity estimation test scenario: A Segway approaches the
test vehicle. The estimated mean velocity of every grid cell is
visualized as a blue vector.
shapes are various and complex and when a robust, unified representation for dynamic
and static obstacles is desired. However, if it is possible to represent expected objects
with predefined shape models and if the precision of the state estimation of dynamic
objects has a priority, object-based tracking approaches potentially outperform
dynamic grid maps, which are not able to consider elementary, object-related rules.
7.3 Quantitative Evaluation
The quantitative evaluation examines the performance of the DS-PHD/MIB filter. A
focus lies on the effect of the birth probability, which will be varied in all experiments.
In a first experiment, an object approaches the ego vehicle with varying speed.
The evaluation examines the speed estimation performance and consistency of the
DS-PHD/MIB filter. In a second experiment, the ego vehicle follows a dynamic
7.3 Quantitative Evaluation
105
object and the evaluation investigates the ability of the DS-PHD/MIB filter to
separate dynamic and static obstacles in the vehicle’s environment. The evaluation
also determines the effect of fusing radar and laser data in comparison to using laser
data only. Finally, the computation time of the parallel implementation with varying
numbers of particles is analyzed.
7.3.1 Velocity Estimation of a Moving Object
In this test scenario, a Segway approaches the test vehicle starting from a distance of
ca. 50 m, see Figure 7.8. The Segway accelerates slowly, drives with almost constant
speed and then decelerates strongly. The set of grid cells representing the Segway is
(S)
denoted S. The experiment evaluates the mean velocity v x of these grid cells:
v (S)
=
x
X 1
v (c) .
|S| x
(7.2)
c∈S
The x-component of the estimated velocity is aligned to the longitudinal axis of the
test vehicle.
Figure 7.9 shows the results of the experiment. In the beginning, the Segway
accelerates slowly. Since the process model assumes constant velocity, the estimated
velocity is delayed during the acceleration phase. During the constant velocity phase,
the estimation converges closely to the real velocity for birth probabilities pB = 0.005
and pB = 0.02.
Choosing a process model with a higher birth probability of pB = 0.1 results in a
persistent bias of the estimated velocity. The reason is that the mean of the birth
distribution is zero, so new-born particles generally distort the velocity estimation
towards zero. The results show that choosing an appropriate birth probability is
important for the velocity estimation performance of the filter.
Fusion of radar data which contains Doppler measurements further improves the
velocity estimation. In this realization, the Segway reaches the radar field of view
at a time of ca. 4 s. Before that point in time, the Segway is outside the radar
range and only rarely detected by radar. Radar Doppler measurements reduce even
small remaining bias effects and lead to a much faster convergence during the strong
deceleration phase in the end. The small peak after 12 s is assumed to be caused by a
movement of the person riding the Segway, commonly referred to as micro-Doppler.
106
Evaluation
Laser and radar, pB = 0.02
Laser only, pB = 0.02
Laser only, pB = 0.005
Laser only, pB = 0.1
Ground truth
−1
Velocity x-component v x
(S)
in m/s
0
−2
−3
−4
−5
0
2
4
6
8
10
12
14
Time in s
Figure 7.9: Velocity estimation results under variation of the birth probability pB . The Segway reaches the short range radar field of view
after a time of ca. 5 s. Fusion with radar further improves the
velocity estimation.
7.3.2 Consistency of the DS-PHD/MIB filter
This section evaluates the consistency of the DS-PHD/MIB filter in dependency
of the birth probability pB , focusing on the x-component of the estimated velocity.
(c)
The DS-PHD/MIB filter provides for each grid cell the estimation variance σ 2 vx .
The experiment considers the combined distribution of the set S of all grid cells
(S)
representing the Segway as a Gaussian mixture. Hence the combined variance σ 2 vx
of the Segway is given by
X 1 (c)
(S)
(c)
(S)
σ 2 vx =
σ 2 vx + v 2 x − v 2 x .
(7.3)
|S|
c∈S
This corresponds to the variance of all particles representing the Segway.
(S)
Figure 7.10 shows the standard deviation σvx of the velocity x-component of the
Segway provided by the DS-PHD/MIB filter. The test scenario is the same as used
for the velocity estimation. The uncertainty increases with the birth probability pB
due to the high number of new-born particles in the dynamic object.
107
Laser
Laser
Laser
Laser
6
(S)
Standard deviation σvx in m/s
7.3 Quantitative Evaluation
and radar, pB = 0.02
only, pB = 0.02
only, pB = 0.005
only, pB = 0.1
4
2
0
0
2
4
6
8
10
12
14
Time in s
(S)
Figure 7.10: Estimation standard deviation σvx of the Segway’s velocity xcomponent provided by the DS-PHD/MIB filter under variation
of the birth probability pB .
To evaluate the consistency of the DS-PHD/MIB filter, the experiment calculates
the normalized estimation error squared (NEES) , given by [BLK01]:
=
(S)
where vx
(S)
vx
(S)
− vx
σ 2 (S)
vx
2
,
(7.4)
is the true velocity x-component of the Segway.
Figure 7.11 shows the result of the consistency test and compares the NEES to
the 95% level [BLK01]. The applied process model (4.4) assumes constant velocity
and does not model acceleration maneuvers. To compensate this, the filter designer
can choose a higher velocity process noise than expected during constant velocity
maneuvers as a trade-off between both modes.
The consistency check shows why the birth probability pB should not be chosen too
small. Especially during acceleration maneuvers, the result can become inconsistent,
because the filter underestimates the uncertainty of the estimation result, which
happens during the deceleration phase with a birth probability of pB = 0.005.
108
Evaluation
12
Laser and radar, pB = 0.02
Laser only, pB = 0.02
Laser only, pB = 0.005
Laser only, pB = 0.1
NEES 95%
10
NEES 8
6
4
2
0
0
2
4
6
8
10
12
14
Time in s
Figure 7.11: Normalized estimation error squared (NEES) of the estimated
velocity x-component under variation of the birth probability
pB .
7.3.3 Separation of Moving and Stationary Obstacles
In the second test scenario, the Segway drives along between parked vehicles with
the ego vehicle following behind. Except for the Segway, the environment is static.
In a manual post-processing step, all grid cells were labeled as dynamic or static.
An example situation of the test is depicted in Figure 7.7.
The evaluation uses the DS-PHD/MIB filter as a classifier to separate grid cells into
dynamic or static. The criterion for the assignment is the Mahalanobis distance m0
between the estimated two-dimensional probability density p(v) : R2 → R of the
velocity distribution in a cell and the velocity v = 0 as defined in equation (7.1).
Applying different threshold values τm , the evaluation classifies grid cells as a static
detection if m0 < τm or as a dynamic detection if m0 ≥ τm .
Figure 7.12 shows the receiver operating characteristics (ROC) curve of the assignment. It shows that the DS-PHD/MIB filter is able to achieve a true positive rate
of 99% (ratio of correctly detected dynamic cells to total number of dynamic cells)
at a false positive rate of 1% (ratio of falsely detected dynamic cells to total number
of static cells) in the test scenario.
7.3 Quantitative Evaluation
109
1
True positive rate
0.98
0.96
0.94
Laser
Laser
Laser
Laser
0.92
0.9
0
0.02
and radar, pB = 0.02
only, pB = 0.02
only, pB = 0.005
only, pB = 0.1
0.04
0.06
0.08
0.1
False positive rate
Figure 7.12: Detection of dynamic grid cells with the DS-PHD/MIB filter
under variation of the birth probability pB .
The birth probability pB of the process model has an important influence on the
estimation result. Best classification performance is achieved with a birth probability
value of pB = 0.02, which also delivered consistent estimation results in the previous
experiment. Again, fusion with radar data further improves the overall result. As
described in details in [NYK+ 15], Doppler measurements help reduce false positive
movement estimation in grid cells. An exemplary visualization of the dynamic grid
map with and without radar is given in Figure 7.13.
110
Evaluation
Figure 7.13: Left: Laser only, false positive movements occur on both sides.
Right: Fusion of laser and radar, false positive movements are
reduced. The color code represents the direction of movement.
7.3 Quantitative Evaluation
111
150
Time in ms
Complete recursion
Sort and assign particles
100
50
0
0.2
0.4
0.6
Number of particles
0.8
1
·10
7
Figure 7.14: Parallel implementation of the DS-PHD/MIB filter: Computation time with varying number of particles and 1.44 · 106 grid
cells.
7.3.4 Computation Time
The parallel implementation presented in Chapter 6 allows to run the DS-PHD/MIB
filter in real-time applications. Figure 7.14 shows the computation time of one
recursion of the DS-PHD/MIB filter in dependence on the number of persistent
particles ν, running on an Nvidia GTX980 GPU. The number of new-born particles
νb is chosen to be 10% of the number of persistent particles in this experiment.
As discussed in Chapter 6, the time complexity of the sorting step is above linear.
However, in the range between 1 · 106 and 10 · 106 particles, the absolute computation
time relates approximately linear to the number of particles. A typical environment
perception application with a refresh time of ca. 50 ms can process more then 2 · 106
particles and 1.44 · 106 grid cells in each update step, which are also the numbers
that have been used during the experiments.
Chapter 8
Conclusion and Outlook
This thesis presented a mathematically rigorous approach for the dynamic state
estimation of occupancy grid cells in the domain of the random finite set (RFS)
theory.
The new state estimator is called the PHD/MIB filter. It estimates the occupancy
state and the dynamic state of grid cells based on heterogeneous sensor data measurements. It models the dynamic environment with point objects and defines a
stochastic multi-object process model and a stochastic multi-object observation
model. A grid cell is occupied if and only if it contains a point object and the
dynamic state of an occupied grid cell equals the dynamic state of its contained
point object.
The filter represents the posterior multi-object state of point objects by its PHD
and applies the prediction step of the common PHD filter. For the update step, it
approximates the multi-object state with multiple instances of Bernoulli random
finite sets, one for each grid cell. Finally, the filter updates each grid cell individually
applying the update step of the Bernoulli filter.
In contrast to former approaches, the top-down derivation of the proposed PHD/MIB
filter allows to clearly state the introduced approximations and assumptions. A
formal proof showed that the assumption of a deterministic, static process model
reduces the PHD/MIB filter to the well-established binary Bayes filter (BBF) for
static occupancy grid maps.
The thesis outlined a sequential Monte Carlo realization of the PHD/MIB filter
propagating particles to represent the multi-object state of grid cells. An approximation in the Dempster-Shafer domain called DS-PHD/MIB filter was proposed, which
requires a significantly smaller number of particles. A massively parallelized algorithm suitable for a GPU implementation of the DS-PHD/MIB filter was presented
114
Conclusion and Outlook
as pseudo code and outlined in detail. One of the main challenges for the parallel
implementation was the assignment of particles to grid cells, which was solved by a
sorting step.
The qualitative evaluation discussed and explained the behavior and the performance
of the DS-PHD/MIB filter in comparison to tracking approaches on object level.
An advantage of the grid-based representation is that neither a clustering step nor
any predefined object shape model is required for the dynamic state estimation.
Therefore, DS-PHD/MIB filter is a robust choice for estimating environments containing dynamic and static objects with complex shapes. However, if it is possible to
correctly model the outline of obstacles with predefined shapes, object-based tracking
approaches have the potential to estimate the object state more precisely than the
DS-PHD/MIB filter, relying on the additional information they gain through the
shape model.
The quantitative evaluation with real-world sensor data showed that appropriate
stochastic models for the system process and for the observation process lead
to consistent estimation results of the DS-PHD/MIB filter. In particular, the
birth probability of the Bernoulli filter must be chosen adequately for the velocity
estimation to converge. The experiments confirmed that the DS-PHD/MIB filter
provides useful results in regard to velocity estimation of dynamic obstacles and
separation of dynamic and static obstacles. They further showed that the presented
parallel implementation can be calculated in real-time on a standard GPU, suitable
for practical applications in vehicle environment perception like autonomous driving.
Further research should investigate possibilities of explicitly modeling the dynamic
behavior of free space, which is bound to a naive model in the DS-PHD/MIB
approximation. Theoretically, the original PHD/MIB filter is able to model potential
dynamic objects in occluded areas which could lead to useful applications. A
main enabler of the massively parallel, real-time capable implementation of the
DS-PHD/MIB filter is based on the fact that the PHD prediction step does not
consider object interaction. As a result, particles perform chaotic movement inside an
object, which is not possible in reality, of course. A challenging, however promising
approach is to consider interaction between point objects.
Some common sensors for vehicle or robotic environment perception take measurements continuously over time, e.g. rotating laser or radar scanners. In this thesis,
measurements have been represented in form of a measurement grid taken at a
specific time. In case of continuous sensing, a measurement grid represents a time
interval instead of a single point in time. Considering the exact measurement time in
the DS-PHD/MIB filter potentially improves estimation results especially in highly
dynamic environments. Finally, an extension to a three-dimensional model promises
better handling of conflicts occurring in the two-dimensional representation.
Acronyms
BBA
BBF
BOF
basic belief assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
binary Bayes filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Bayesian occupancy filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
CVCO
constant velocity, constant orientation . . . . . . . . . . . . . . . . . . . . . . . . . 41
DDMCMC
data driven Markov chain Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . . . 2
DS-PHD/MIB Dempster-Shafer PHD/MIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
DST
Dempster-Shafer theory of evidence . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
FISST
finite set statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
GM-PHD
Gaussian mixture probability hypothesis density . . . . . . . . . . . . . . 57
i.i.d.
IPDA
independent identically distributed . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
integrated probabilistic data association . . . . . . . . . . . . . . . . . . . . . . . 12
JIPDA
JPDA
joint integrated probabilistic data association . . . . . . . . . . . . . . . . . 12
joint probabilistic data association . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
LMB
labeled multi-Bernoulli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
MHT
MPDF
multi-hypothesis tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
multi-object probability density function . . . . . . . . . . . . . . . . . . . . . . 13
PDA
PDF
PHD
PHD/MIB
probabilistic data association . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
probability density function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
probability hypothesis density . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
probability hypothesis density / multi-instance Bernoulli . . . . . . 37
RFS
ROC
random finite set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
receiver operating characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
116
SBMP
SIR
SLAMMOT
SMC
SMC-PHD
Acronyms
single beam monopulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
sequential importance resampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
simultaneous localization, mapping and moving object tracking . 1
sequential Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
sequential Monte Carlo probability hypothesis density . . . . . . . . . 22
List of Symbols
Subscripts
k
+
p
b
B
∗
cl
A
A
time step k
predicted value of a variable or density, short for k + 1|k
indicator for persistent object for a probability density function
indicator for new-born object for a probability density function
indicator for new-born object for a discrete probability function
indicator for either new-born or persistent object
indicator for a clutter event
indicates an object is associated to a measurement
indicates an object is not associated to a measurement
Superscripts
c
i
grid cell index c
particle index i
Vectors, scalars and states
x
x̂
x
z
ξ
ζ
E{·}
v
va||b
(S)
vx
σv2x
σ vx vy
state vector
expected value of random state vector x
mean value of random state vector x
measurement vector
process noise vector
measurement noise vector
expected value of a random variable
velocity vector
projection of vector va on vector vb
mean velocity x-component of cluster S
variance of velocity x-component
covariance between velocity x- and y-component
118
w
w
e
ν
N
N̂
M
λ
λB
λcl
o ∈ {O, F }
o
List of Symbols
weight of a particle
unnormalized weight of a particle
number of particles
number of objects
expected number of objects
maximum possible number of objects in a random finite set
expected cardinality
expected number of new-born objects
expected number of clutter detections
occupancy state with possible realizations occupied O and free F
counter event of o
Matrices
F
H
I
K
P
Q
R
S
state transition matrix
measurement matrix
identity matrix
Kalman gain
estimation error covariance matrix
process noise covariance matrix
measurement noise covariance matrix
innovation covariance matrix
Sets
Ω
X
Z
universal set
random finite set of objects
random finite set of measurements
Spaces
R
X
Z
space of real numbers
state space
measurement space
Distributions
N (x; µ, P )
p
f+
pb
normal distribution over x with mean µ and covariance matrix P
probability density function
state transition probability density function
birth probability density function
List of Symbols
pcl
q
D
γb
κ
π
πb
πcl
ρ
m
119
clutter probability density function
proposal probability density function
probability hypothesis density
birth probability hypothesis density
clutter probability hypothesis density
multi-object probability density function
multi-object probability density function of birth process
multi-object probability density function of clutter process
cardinality distribution
Dempster-Shafer binary belief assignment
Specific probabilities and masses
r
pS (x)
pB
pD (x)
pTP (z)
pFP (z)
po (o)
pz (o)
mz
%p
%b
existence probability
persistence probability of an object with state x
discrete birth probability
detection probability of an object with state x
true positive probability of measurement z
false positive probability of measurement z
probability of occupancy state o
probability of occupancy state o reasoning on measurement z
Dempster-Shafer binary belief assignment reasoning on measurement z
Dempster-Shafer occupancy mass, persistent part
Dempster-Shafer occupancy mass, new-born part
Measurement likelihoods
g(z|x)
γ(Z|X)
likelihood function of measurement z given state x
multi-object likelihood of measurement set Z given multi-object state X
Notation
A
AT
A−1
δ(·)
x
y
matrix
transpose of a matrix
inverse of a matrix
Dirac delta function
abscissa of a Cartesian coordinate system
ordinate of a Cartesian coordinate system
Bibliography
[BF88]
Bar-Shalom, Y. and Fortmann, T.: Tracking and Data Association.
Academic Press, Inc., 1988.
[BH10]
Bouzouraa, M. and Hofmann, U.: Fusion of occupancy grid mapping and model based object tracking for driver assistance systems
using laser and radar sensors. In: Proceedings of the IEEE Intelligent
Vehicles Symposium, pages 294–300, 2010.
[BLK01]
Bar-Shalom, Y.; Li, X.-R.; and Kirubarajan, T.: Estimation with
Applications To Tracking and Naviation. John Wiley & Sons, Inc.,
New York, 2001.
[BT75]
Bar-Shalom, Y. and Tse, E.: Tracking in a cluttered environment
with probabilistic data association. In: Automatica, volume 11, no. 5,
pages 451–460, 1975.
[BWT11]
Bar-Shalom, Y.; Willett, P. K.; and Tian, X.: Tracking and Data
Fusion. YBS Publishing, Storrs, CT, USA, 2011.
[CPL+ 06]
Coué, C.; Pradalier, C.; Laugier, C.; Fraichard, T.; and Bessiere, P.:
Bayesian occupancy filtering for multitarget tracking: an automotive
application. In: International Journal of Robotics Research, volume 25,
no. 1, pages 19–30, 2006.
[Dem68]
Dempster, A. P.: A generalization of Bayesian inference. In: Journal
of the Royal Statistical Society. Series B (Methodological), volume 30,
no. 2, pages 205–247, 1968.
[DN13]
Danescu, R. and Nedevschi, S.: Flexible solution for modeling and
tracking generic dynamic 3d environments. In: Proceedings of the IEEE
Conference on Intelligent Transportation Systems, pages 1686–1692.
IEEE, 2013.
[DON11]
Danescu, R.; Oniga, F.; and Nedevschi, S.: Modeling and tracking the
driving environment with a particle-based occupancy grid. In: IEEE
Transactions on Intelligent Transportation Systems, volume 12, no. 4,
pages 1331–1342, 2011.
122
Bibliography
[DRN15]
Dietmayer, K.; Reuter, S.; and Nuss, D.: Representation of fused
environment data. In: Winner, H.; Hakuli, S.; Lotz, F.; and Singer, C.
(editors): Handbook of Driver Assistance Systems, Springer International Publishing, Cham, 2015.
[Elf89]
Elfes, A.: Using occupancy grids for mobile robot perception and navigation. In: Computer, volume 22, no. 6, pages 46–57, 1989.
[FBS83]
Fortmann, T.; Bar-Shalom, Y.; and Scheffe, M.: Sonar tracking of
multiple targets using joint probabilistic data association. In: IEEE
Journal of Oceanic Engineering, volume 8, no. 3, pages 173–184, 1983.
[GBSD09]
Gindele, T.; Brechtel, S.; Schroder, J.; and Dillmann, R.: Bayesian
occupancy grid filter for dynamic environments using prior map knowledge. In: Proceedings of the IEEE Intelligent Vehicles Symposium,
pages 669–676, 2009.
[HB16]
Hoberock, J. and Bell, N.: Thrust: A Parallel Template Library. Version 1.8.1. 2016.
[HKOB10]
Homm, F.; Kaempchen, N.; Ota, J.; and Burschka, D.: Efficient
occupancy grid computation on the GPU with lidar and radar for road
boundary detection. In: Proceedings of the IEEE Intelligent Vehicles
Symposium, pages 1006–1013, 2010.
[HL64]
Ho, Y.-C. and Lee, R.: A Bayesian approach to problems in stochastic
estimation and control. In: IEEE Transactions on Automatic Control,
volume 9, no. 4, pages 333–339, 1964.
[HSRD16]
Hirscher, T.; Scheel, A.; Reuter, S.; and Dietmayer, K.: Multiple
extended object tracking using Gaussian processes. In: Proceedings of
the International Conference on Information Fusion, pages 868–875.
IEEE, 2016.
[JUD95]
Julier, S.; Uhlmann, J.; and Durrant-Whyte, H.: A new approach
for filtering nonlinear systems. In: Proceedings of the 1995 American
Control Conference. Volume 3, pages 1628–1632, 1995.
[Kal60]
Kalman, R.: A new approach to linear filtering and prediction problems.
In: Journal of Basic Engineering, volume 82, no. 1, pages 35–45, 1960.
[KBK+ 14]
Kellner, D.; Barjenbruch, M.; Klappstein, J.; Dickmann, J.; and Dietmayer, K.: Instantaneous full-motion estimation of arbitrary objects
using dual doppler radar. In: Proceedings of the IEEE Intelligent
Vehicles Symposium, pages 324–329, 2014.
[KD11]
Konrad, M. and Dietmayer, K.: Occupancy grid mapping using the
Dempster-Shafer-theory. In: Proceedings of the International Workshop
on Intelligent Transportation (WIT), pages 167–172, 2011.
Bibliography
123
[KNW+ 15]
Kunz, F.; Nuss, D.; Wiest, J.; et al.: Autonomous driving at ulm
university: a modular, robust, and sensor-independent fusion approach.
In: Proceedings of the IEEE Intelligent Vehicles Symposium, pages 666–
673, 2015.
[Koc08]
Koch, J. W.: Bayesian approach to extended object and cluster tracking
using random matrices. In: IEEE Transactions on Aerospace and
Electronic Systems, volume 44, no. 3, pages 1042–1059, 2008.
[Kol50]
Kolmogorov, A.: Foundations of the Theory of Probability. Chelsea
Pub. Co., 1950.
[LPP+ 11]
Laugier, C.; Paromtchik, I.; Perrollaz, M.; et al.: Probabilistic analysis
of dynamic scenes and collision risks assessment to improve driving safety. In: IEEE Intelligent Transportation Systems Magazine,
volume 3, no. 4, pages 4–19, 2011.
[Mah03]
Mahler, R.: Multitarget Bayes filtering via first-order multitarget moments. In: IEEE Transactions on Aerospace and Electronic Systems,
volume 39, no. 4, pages 1152–1178, 2003.
[Mah07a]
Mahler, R.: Statistical Multisource-Multitarget Information Fusion.
Artech House, Norwood, 2007.
[Mah07b]
Mahler, R.: PHD filters of higher order in target number. In: IEEE
Transactions on Aerospace and Electronic Systems, volume 43, no. 4,
pages 1523–1543, 2007.
[Mah13]
Mahler, R.: ’’Statistics 102” for multisource-multitarget detection and
tracking. In: IEEE Journal of Selected Topics in Signal Processing,
volume 7, no. 3, pages 376–389, 2013.
[MCB11]
Moras, J.; Cherfaoui, V.; and Bonnifait, P.: Moving objects detection
by conflict analysis in evidential grids. In: Proceedings of the IEEE
Intelligent Vehicles Symposium, pages 1122–1127, 2011.
[MD11]
Munz, M. and Dietmayer, K.: Using Dempster-Shafer-based modeling
of object existence evidence in sensor fusion systems for advanced
driver assistance systems. In: Proceedings of the IEEE Intelligent
Vehicles Symposium, pages 776–781, 2011.
[MDM10]
Munz, M.; Dietmayer, K.; and Mählisch, M.: Generalized fusion of
heterogeneous sensor measurements for multi target tracking. In: Proceedings of the International Conference on Information Fusion, 2010.
[ME04]
Musicki, D. and Evans, R.: Joint integrated probabilistic data association: JIPDA. In: IEEE Transactions on Aerospace and Electronic
Systems, volume 40, no. 3, pages 1093–1099, 2004.
[MES94]
Musicki, D.; Evans, R.; and Stankovic, S.: Integrated probabilistic data
association. In: IEEE Transactions on Automatic Control, volume 39,
no. 6, pages 1237–1241, 1994.
124
Bibliography
[ML08]
Musicki, D. and La Scala, B.: Multi-target tracking in clutter without
measurement assignment. In: IEEE Transactions on Aerospace and
Electronic Systems, volume 44, no. 3, pages 877–896, 2008.
[MRSD14]
Meissner, D.; Reuter, S.; Strigel, E.; and Dietmayer, K.: Intersectionbased road user tracking using a classifying multiple-model PHD filter.
In: IEEE Intelligent Transportation Systems Magazine, volume 6,
no. 2, pages 21–33, 2014.
[NRL14]
Nègre, A.; Rummelhard, L.; and Laugier, C.: Hybrid sampling Bayesian
occupancy filter. In: Proceedings of the IEEE Intelligent Vehicles Symposium, pages 1307–1312, 2014.
[NSD14]
Nuss, D.; Stübler, M.; and Dietmayer, K.: Consistent environmental modeling by use of occupancy grid maps, digital road maps, and
multi-object tracking. In: Proceedings of the IEEE Intelligent Vehicles
Symposium, pages 1371–1377, 2014.
[NTDD14]
Nuss, D.; Thom, M.; Danzer, A.; and Dietmayer, K.: Fusion of laser
and monocular camera data in object grid maps for vehicle environment perception. In: Proceedings of the International Conference on
Information Fusion, 2014.
[NVI16]
NVIDIA: CUDA CURAND Library. NVIDIA Corporation, Santa
Clara, CA, USA, 2016. url: http : / / docs . nvidia . com / cuda /
curand.
[NWW+ 13]
Nuss, D.; Wilking, B.; Wiest, J.; et al.: Decision-free true positive
estimation with grid maps for multi-object tracking. In: Proceedings of
the IEEE Conference on Intelligent Transportation Systems, pages 28–
34, 2013.
[NYK+ 15]
Nuss, D.; Yuan, T.; Krehl, G.; et al.: Fusion of laser and radar sensor
data with a sequential Monte Carlo Bayesian occupancy filter. In:
Proceedings of the IEEE Intelligent Vehicles Symposium, pages 1074–
1081, 2015.
[Pet11]
Petrovskaya, A.: Towards Dependable Robotic Perception. PhD thesis,
Computer Science Department, Stanford University, 2011.
[RAG04]
Ristic, B.; Arulampalam, S.; and Gordon, N.: Beyond the Kalman
Filter: Particle Filters for Tracking Applications. Artech House Inc.,
2004.
[RCVV12]
Ristic, B.; Clark, D.; Vo, B.-N.; and Vo, B.-T.: Adaptive target birth
intensity for PHD and CPHD filters. In: IEEE Transactions on
Aerospace and Electronic Systems, volume 48, no. 2, pages 1656–1668,
2012.
[Rei79]
Reid, D.: An algorithm for tracking multiple targets. In: IEEE Transactions on Automatic Control, volume 24, no. 6, pages 843–854, 1979.
Bibliography
125
[Ris13]
Ristic, B.: Particle Filters for Random Set Models. Springer, New
York, 2013.
[RVVD14]
Reuter, S.; Vo, B.-T.; Vo, B.-N.; and Dietmayer, K.: The labeled
multi-Bernoulli filter. In: IEEE Transactions on Signal Processing,
volume 62, no. 12, pages 3246–3260, 2014.
[RWW+ 13]
Reuter, S.; Wilking, B.; Wiest, J.; Munz, M.; and Dietmayer, K.:
Real-time multi-object tracking using random finite sets. In: IEEE
Transactions on Aerospace and Electronic Systems, volume 49, no. 4,
pages 2666–2678, 2013.
[Sha76]
Shafer, G.: A Mathematical Theory of Evidence. Princeton University
Press, Princeton, 1976.
[SHG09]
Satish, N.; Harris, M.; and Garland, M.: Designing efficient sorting
algorithms for manycore GPUs. In: Proceedings of the IEEE International Symposium on Parallel & Distributed Processing, 2009.
[Sid03]
Sidenbladh, H.: Multi-target particle filtering for the probability hypothesis density. In: Proceedings of the International Conference on
Information Fusion. Volume 2, pages 800–806, 2003.
[Sme90]
Smets, P.: The combination of evidence in the transferable belief model.
In: IEEE Transactions on Pattern Analysis and Machine Intelligence,
volume 12, no. 5, pages 447–458, 1990.
[SSM62]
Smith, G. L.; Schmidt, S. F.; and Mc Gee, L. A.: Application of
statistical filter theory to the optimal estimation of position and velocity
on board a circumlunar vehicle. Tech. rep. NASA Ames Research
Center, Tech. Rep. TR R-135, 1962.
[TBF05]
Thrun, S.; Burgard, W.; and Fox, D.: Probabilistic Robotics (Intelligent
Robotics and Autonomous Agents). The MIT Press, Cambridge, 2005.
[Thr03]
Thrun, S.: Learning occupancy grid maps with forward sensor models.
In: Auton. Robots, volume 15, no. 2, pages 111–127, 2003.
[TTWB14]
Tanzmeister, G.; Thomas, J.; Wollherr, D.; and Buss, M.: Grid-based
mapping and tracking in dynamic environments using a uniform evidential environment representation. In: Proceedings of the IEEE International Conference on Robotics and Automation, pages 6090–6095,
2014.
[Urm+ 08]
Urmson, C. et al.: Autonomous driving in urban environments: boss
and the urban challenge. In: Journal of Field Robotics, Special Issue on
the 2007 DARPA Urban Challenge, Part I, volume 25, no. 8, Martin
Buehler Karl Lagnemma, S. S. (editor), pages 425–466, 2008.
126
Bibliography
[VA09]
Vu, T.-D. and Aycard, O.: Laser-based detection and tracking moving
objects using data-driven markov chain Monte Carlo. In: Proceedings
of the IEEE International Conference on Robotics and Automation,
pages 3800–3806, 2009.
[VDN15]
Vatavu, A.; Danescu, R.; and Nedevschi, S.: Stereovision-based multiple
object tracking in traffic scenarios using free-form obstacle delimiters
and particle filters. In: IEEE Transactions on Intelligent Transportation Systems, volume 16, no. 1, pages 498–511, 2015.
[VJ01]
Viola, P. and Jones, M.: Rapid object detection using a boosted cascade of simple features. In: Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition, pages 511–518, 2001.
[VM06]
Vo, B.-N. and Ma, W.-K.: The Gaussian mixture probability hypothesis
density filter. In: IEEE Transactions on Signal Processing, volume 54,
no. 11, pages 4091–4104, 2006.
[VSD05]
Vo, B.-N.; Singh, S.; and Doucet, A.: Sequential Monte Carlo methods
for multitarget filtering wit random finite sets. In: IEEE Transactions
on Aerospace and Electronic Systems, volume 41, no. 4, pages 1224–
1245, 2005.
[VV13]
Vo, B.-T. and Vo, B.-N.: Labeled random finite sets and multi-object
conjugate priors. In: IEEE Transactions on Signal Processing, volume 61, no. 13, pages 3460–3475, 2013.
[VVP14]
Vo, B.-N.; Vo, B.-T.; and Phung, D.: Labeled random finite sets and
the Bayes multi-target tracking filter. In: IEEE Transactions on Signal
Processing, volume 62, no. 24, pages 6554–6567, 2014.
[WHLS15]
Handbook of driver assistance systems. Basic information, components
and systems for active safety and comfort. In: Winner, H.; Hakuli, S.;
Lotz, F.; and Singer, C. (editors), Springer International Publishing,
Cham, 2015.
[WTT+ 07]
Wang, C.-C.; Thorpe, C.; Thrun, S.; Hebert, M.; and Durrant-Whyte,
H.: Simultaneous localization, mapping and moving object tracking.
In: International Journal of Robotics Research, volume 26, no. 9,
pages 889–916, 2007.
[YFE94]
Yager, R.; Fedrizzi, M.; and Eds, J. K.: Advances in the DempsterShafer Theory of Evidence. New York: Wiley, 1994.
[YHCZ00]
Yi, Z.; Ho, Y. K.; Chua, C. S.; and Zhou, X. W.: Multi-ultrasonic
sensor fusion for autonomous mobile robots. In: AeroSense, pages 314–
321. International Society for Optics and Photonics, 2000.
Publications
Parts of this thesis were pre-released in author’s publications.
Nuss, D.; Reuter, S.; Konrad, M.; Munz, M.; and Dietmayer, K.: Using grid maps
to reduce the number of false positive measurements in advanced driver assistance
systems. In: Proceedings of the 15th International IEEE Conference on Intelligent
Transportation Systems, pages 1509–1514, 2012.
Nuss, D.; Reuter, S.; Thom, M.; et al.: A random finite set approach for dynamic
occupancy grid maps with real-time application. In: ArXiv e-prints, 2016.
Nuss, D.; Stübler, M.; and Dietmayer, K.: Consistent environmental modeling by use
of occupancy grid maps, digital road maps, and multi-object tracking. In: Proceedings
of the IEEE Intelligent Vehicles Symposium, pages 1371–1377, 2014.
Nuss, D.; Thom, M.; Danzer, A.; and Dietmayer, K.: Fusion of laser and monocular
camera data in object grid maps for vehicle environment perception. In: Proceedings
of the International Conference on Information Fusion, 2014.
Nuss, D.; Wilking, B.; Wiest, J.; et al.: Decision-free true positive estimation with
grid maps for multi-object tracking. In: Proceedings of the IEEE Conference on
Intelligent Transportation Systems, pages 28–34, 2013.
Nuss, D.; Yuan, T.; Krehl, G.; et al.: Fusion of laser and radar sensor data with
a sequential Monte Carlo Bayesian occupancy filter. In: Proceedings of the IEEE
Intelligent Vehicles Symposium, pages 1074–1081, 2015.
128
Publications
Deusch, H.; Nuss, D.; Konrad, P.; et al.: Improving localization in digital maps with
grid maps. In: 16th International IEEE Conference on Intelligent Transportation
Systems (ITSC), pages 1522–1527, 2013.
Dietmayer, K.; Nuss, D.; and Reuter, S.: Handbuch fahrerassistenzsysteme: grundlagen, komponenten und systeme für aktive sicherheit und komfort. In: ed. by Winner,
H.; Hakuli, S.; Lotz, F.; and Singer, C. Springer Fachmedien Wiesbaden, Wiesbaden,
2015. Chap. Repräsentation fusionierter Umfelddaten, pages 453–480.
Dietmayer, K.; Reuter, S.; and Nuss, D.: Representation of fused environment data.
In: Winner, H.; Hakuli, S.; Lotz, F.; and Singer, C. (editors): Handbook of Driver
Assistance Systems, Springer International Publishing, Cham, 2015.
Deusch, H.; Wiest, J.; Reuter, S.; et al.: Multi-sensor self-localization based on maximally stable extremal regions. In: IEEE Intelligent Vehicles Symposium, pages 555–
560, 2014.
Konrad, M.; Nuss, D.; and Dietmayer, K.: Localization in digital maps for road
course estimation using grid maps. In: Proceedings of the IEEE Intelligent Vehicles
Symposium, pages 87–92, 2012.
Kunz, F.; Nuss, D.; Wiest, J.; et al.: Autonomous driving at ulm university: a
modular, robust, and sensor-independent fusion approach. In: Proceedings of the
IEEE Intelligent Vehicles Symposium, pages 666–673, 2015.
Wiest, J.; Deusch, H.; Nuss, D.; et al.: Localization based on region descriptors in
grid maps. In: Proceedings of the IEEE Intelligent Vehicles Symposium, 2014.
Yuan, T.; Nuss, D.; Krehl, G.; Maile, M.; and Gern, A.: Fundamental properties of
dynamic occupancy grid systems for vehicle environment perception. In: IEEE Workshop on Computational Advances in Multi-Sensor Adaptive Processing (CAMSAP),
pages 153–156, 2015.
Supervised Theses
Danzer, A.: Einbringung von Videodaten in Belegtheitskarten für Fahrerassistenzsysteme. Bachelor Thesis, Universität Ulm, 2014.
Hatzelmann, P.: Online-Erstellung digitaler Straßenkarten auf Basis von Kamerabildern und Odometriemessungen mit Loop-Closing. Bachelor Thesis, Universität
Ulm, 2012.
Hörmann, S.: Head-pose-estimation für Videobrillen-Anwendungen. Diploma Thesis,
Universität Ulm, 2012.
Konrad, P.: Spline-basierte Segmentierung von Fahrspurmarkierungen zur Erstellung
digitaler Karten. Bachelor Thesis, Universität Ulm, 2012.
Lukaseder, T.: A strategy to resolve inconsistencies between grid mapping and object
tracking in vehicular environmental perception. Master Thesis, Universität Ulm, 2014.
Peukert, J.: Object generation from a dynamic occupancy gridmap considering autocorrelation. Master Thesis, Universität Karlsruhe, 2015.
Stübler, M.: Konsistente Modellierung des Fahrzeugumfelds basierend auf digitalen
Straßenkarten, Occupancy-Grids und Multi-Objekt-Tracking. Master Thesis, Universität Ulm, 2014.
Weiss, F.: Fusion von Lagesensorik und Kamera zur Kopfposenschätzung. Diploma
Thesis, Universität Ulm, 2012.
ISBN 978-3-941543-28-7
e-ISBN 978-3-941543-29-4